POST /client/subscriptions

Creates a subscription and consent record for email and/or SMS channels based on the provided email and phone_number attributes, respectively. One of either email or phone_number must be provided.

This endpoint is specifically designed to be called from publicly-browseable, client-side environments only and requires a public API key (site ID). Never use a private API key with our client-side endpoints.

Do not use this endpoint from server-side applications. To subscribe profiles from server-side applications, instead use POST /api/profile-subscription-bulk-create-jobs.

Profiles can be opted into multiple channels: email marketing, SMS marketing, and SMS transactional. You can specify the channel(s) to subscribe the profile to by providing a subscriptions object in the profile attributes.

If you include a subscriptions object, only channels in that object will be subscribed. You can use this to update email or phone on the profile without subscribing them, for example, by setting the profile property but omitting that channel in the subscriptions object. If a subscriptions object is not provided, subscriptions are defaulted to MARKETING.

Rate limits:
Burst: 100/s
Steady: 700/m

Scopes: subscriptions:write

Servers

Request headers

Name Type Required Description
revision String Yes

API endpoint revision (format: YYYY-MM-DD[.suffix])

Default value: "2025-04-15"

Query parameters

Name Type Required Description
company_id String Yes

Your Public API Key / Site ID. See this article for more details.

How to start integrating

  1. Add HTTP Task to your workflow definition.
  2. Search for the API you want to integrate with and click on the name.
    • This loads the API reference documentation and prepares the Http request settings.
  3. Click Test request to test run your request to the API and see the API's response.