Add or update a subscription

Adds a new notification subscription when one does not exist or replaces the existing one if it exists.
Only one is allowed per group.

Notification Callback Example

When a consent event occurs, the system will POST a notification to the configured callbackUrl.
The notification object sent to the callback URL contains the following fields:

[
  {
    "url": "https://01k20e3cavd42anqjebpay672m00-6e93043ee858c487ce1c.requestinspector.com",
    "request_method": "POST",
    "request_header": "Content-Type=application/json",
    "request_body": "{\"eventType\":\"CONSENT_REVOKED\",\"channel\":\"text\",\"address\":\"+15559110000\",\"groupId\":\"di5h-Rg0QdGlGFd1bCAmxA\",\"reason\":\"Sample comment 1\",\"timestamp\":\"2025-08-06T19:39:15.806780100Z\"}",
    "req_origin_time": "2025-08-06T19:39:15.92161Z",
    "source": "10",
    "handler_class": "UMPNotifyHandler",
    "txn_log_level": 2,
    "trans_id": "153dfa6a-91dd-4a81-9fc1-89037d15b171",
    "app_id": "1234",
    "is_authorization_enabled": 1, //If authorization is disabled, this field will be 0
    "authorization_id": 1234, //If authorization is disabled, this field will be 0
    "clientId": "12345"
  }
]

Fields of the Main Notification Object

FieldTypeDescription
urlStringThe third party's callback URL.
request_methodStringThe HTTP method used for the callback (e.g., POST).
request_headerStringThe HTTP request headers, typically as a key-value string.
request_bodyStringThe request body sent to the third party, usually an escaped JSON string. This contains the specific event details.
req_origin_timeInstantThe time the request originated.
sourceStringThe source of the notification.
handler_classStringThe handler class name for processing the notification.
txn_log_levelintTransaction log level for auditing.
trans_idStringTransaction ID for tracking the request.
app_idStringApplication ID associated with the request.
is_authorization_enabledintFlag indicating if authorization is enabled (1 for true, 0 for false). This field is enabled only if 'authId' is specified in the API.
authorization_idintAuthorization ID is populated only if 'authId' is specified in the API.
clientIdIntegerClient/tenant identifier.

Fields within the request_body (Callback Request Body)

The request_body field in the main notification object is a stringified JSON, which contains the following fields with details about the specific consent event:


Note: The maximum length allowed for a phone number-type address is 15 characters, excluding the '+' sign. There is no length restriction for other address types such as email and other fields like reason, keyword, campaign, and source.
| Field | Type | Description |
|------------|------------------------|-----------------------------------------------------------------------------|
| eventType | NotificationEventType | Type of consent event (e.g., CONSENT_PROVIDED, CONSENT_REVOKED, CONSENT_DELETED). |
| channel | String | Communication channel (e.g., text, email). |
| address | Address | Consumer's address (e.g., phone number, email address). |
| groupId | String | Identifier for the group associated with the consent. |
| reason | String | Reason for the consent change. |
| keyword | String | Keyword associated with the consent (optional, from metadata). |
| campaign | String | Campaign identifier (optional, from metadata). |
| source | String | Source of the consent change (optional, from metadata). |
| timestamp | Instant | Time when the consent change occurred. |

Language
Credentials
Click Try It! to start a request and see the response here!