Buttondown Documentation
This endpoint is for creating a new subscriber via the API. If you're looking to just do this via the UI, this doc is for you.
By default, newly created subscribers are subject to double opt-in — they will receive an email asking them to confirm their subscription, and have a state of unactivated
until they do so.
You can't disable this behavior globally, but you can disable it on a per-subscriber basis by providing a type
of regular
in the request body.
By default, Buttondown tries to preserve existing subscriber data, even when you create a new subscriber with the same email address.
Consider the following example (of a pseudocode request), where we attempt to create the same subscriber twice, with different tags:
Here, Buttondown intentionally rejects the second request, because it would overwrite the existing subscriber's data.
Similarly, imagine that you create a subscriber with a type
of regular
. Time passes — the subscriber unsubscribes — and then they decide they want to re-subscribe.
Again, Buttondown intentionally rejects the second request, because it would overwrite the existing subscriber's data and any history (such as emails they engaged with, surveys they completed, etc.).
The right way to model both of these scenarios would be to update the existing subscriber, rather than creating a new one altogether.
However, updating a subscriber is not necessarily feasible for all integrations. If you're looking for behavior more akin to an upsert, you can provide a X-Buttondown-Collision-Behavior
header of overwrite
or add
in the request header:
These sample requests are autogenerated by the OpenAPI spec.
The IDs and values referenced in these responses are fake; please only rely on these responses for overall structure.
All parameters are optional unless explicitly specified.
"telemachus@buttondown.email"