Subscriptions

Introduction

Subscriptions, a core feature of the APSIS One platform, provide ways to manage the communication preferences of your Profiles. This Help Center article describes the Subscriptions in more details.

📘

Subscriptions is the same as Consents

In APSIS One API the Subscriptions feature is called Consents feature. Subscription in APSIS One UI is the same as topic in APSIS One API.

Use cases

If you just want a profile to receive communication then add an opt-in consent to a specific topic over a specific channel to that profile.

This section elaborates on APSIS One API use cases related to Subscriptions.

Getting a list of available topics

Call Get topics (version 2) to get all topics available in your section (across all consent lists).

📘

Consent lists no longer exposed in APSIS One API

While consent lists still remain a UI concept, they are no longer a consideration in the API. Folder in APSIS One UI is the same as consent list in APSIS One API.

Identifying topics with the same names across folders

If your folder (formerly consent list) and topic (subscription) structure is such that your topic names are not unique within your section then you may run into a problem identifying them using just Get topics (version 2) endpoint. In such case there are two solutions:

  • Go to APSIS One and edit your subscriptions to change the names of the topics. This way the information provided by Get topics (version 2) should be sufficient to uniquely identify the topics.
  • You my have reasons not to rename your topics. The model returned by Get topics (version 2) contains folder_discriminator. Use it with Get all topic folders to identify the folders to which your topics belong.

Providing consent

Call Create a consent (version 2) to provide a consent for a profile over a specific channel. This can be an opt-in or opt-out consent to a specific topic.

📘

Consent is given on a profile level

Consents are created on a profile level. In APSIS One profiles are identified by a keyspace and profile key. For example, [email protected] can be a profile key in com.apsis1.keyspaces.email keyspace.

Checking existing consents

Call Get consents (version 2) to get topics with consents of specific types for a profile.

Changing profile email or phone number

The APSIS One platform enables your profiles to provide consent to receive communication from you. Consent is created using a selected communication channel: email, SMS or both. Each of these channels has a corresponding profile attribute: email and mobile, respectively. So when a profile consents to receive information from you over the email channel, the platform will use their primary email address attribute when sending emails.

Call Set attributes on a profile (version 2) to change their email or phone number (we will refer to them as addresses from now on). Set attributes on a profile (version 2) automatically moves consent from the original address to the new one.

Importing profiles

The consent_list_discriminator and address_field_selector parameters are deprecated for all of the import endpoints and are now ignored by the API. Your integrations should not provide these parameters in the requests anymore.

Profile import (version 1) is deprecated, we suggest switching to new Profile import (version 2) endpoint.

Exporting profiles

The consent_list_discriminator parameter is deprecated for all of the export endpoints and is now ignored by the API. Your integrations should not provide this parameter in the requests anymore.

Common errors

No address to consent

If you get the following error message from Create a consent (version 2) then your profile does not have a value for the attribute corresponding to the channel over which you want to create a consent. Ensure your profile has an Email (or Mobile) attribute set before attempting to create consent over the Email (or SMS) channel.

{
  "status": 400,
  "title": "No address to consent",
  "type": "https://developer.apsis.com/page/error-codes#aud-1601",
  "status_code": 400
}

👍

Have questions?

Contact [email protected] to learn more