in src/basket/base.py [0:0]
def subscribe(email, newsletters, **kwargs):
"""Subscribe an email through basket to `newsletters`, which can
be string or an array of newsletter names. Additional parameters
should be passed as keyword arguments."""
kwargs.update(email=email, newsletters=newsletters)
headers = {}
if kwargs.get("sync", "N") == "Y":
api_key = kwargs.pop("api_key", BASKET_API_KEY)
if not api_key:
raise BasketException("API key required for email lookup.", code=errors.BASKET_AUTH_ERROR)
headers["x-api-key"] = api_key
source_ip = kwargs.pop("source_ip", None)
if source_ip:
headers["x-source-ip"] = source_ip
return request("post", "subscribe", data=kwargs, headers=headers)