| Scenario | Code | Response message |
|---|
| When database ID is accessible to user. | 200 | { “eventType”: { “name”: “String”, “uri”: “String”, “code”: “String” }}
|
| When database ID is not accessible to user. | 500 | Internal server error |
PATCH /databases/{databaseId}/contacts/{contactId}
| Scenario | Code/level | Message |
|---|
| Invalid value provided for {databaseId} | 404 not found – general errors | Database not found |
| Invalid value provided for {contactId} | 404 – general errors | No contact found |
| Value provided for Email was not formatted correctly | 400 bad request – general errors | Argument was not a valid email |
| Local value provided for Email is on the system blocked list. | 500 internal server error – general errors | An unexpected error occurred. If the problem continues, please contact your system administrator. |
| Field does not exist in the database. | 422 unprocessable entity – field errors | {columnName}: {columnName} does not exist. |
| Invalid value for a Yes/No column was provided. | 422 – field errors | {columnName}: {columnValue} is not a valid boolean; it must be Yes or No. |
| Invalid value for a date column was provided. | 422 – field errors | {columnName}: {columnValue} is not in a valid date format; it must be formatted as yyyy-MM-dd. |
| Invalid value for a numeric column was provided. | 422 – field errors | {columnName}: {columnValue} is not a valid number. |
| Invalid value for a country column was provided. | 422 – field errors | {columnName}: {columnValue} is not a valid country name. |
| Invalid value for a single selection column was provided. | 422 – field errors | {columnName}: {columnValue} is not one of the valid selections for this field. |
| Value provided for email was not a valid value. | 422 – field errors | {columnName}: the given email is not valid. |
| Invalid value for a phone number column was provided. | 422 – field errors | {columnName}: {columnValue} is not a valid phone number. |
| Invalid value for a segmenting column was provided. | 422 – field errors | {columnName}: {columnValue} must be an integer. |
| Value for a column marked as required not provided in request. | 422 – field errors | {columnName}: could not validate recipient; required column {columnName} has no value. |
| Invalid value for a multiselection column was provided, or valid values were provided but were not semi-colon delimited. | 422 – field errors | {columnName}: the following selections are not valid for this field: [columnValue}. |
| Invalid value for a STO column was provided. | 422 – field errors | {columnName}: {columnValue} must be an integer that is between 0 and 168. |
| Value exceeding 4000 characters for a text column was provided. | 422 – field errors | {columnName}: {columnValue} exceeds the maximum length of 4000 characters. |
| Invalid value for a time column was provided. | 422 – field errors | {columnName}: {columnValue} is not a valid time; it must be in the format HH:mm:ss or HH:mm. |
| Invalid value for a timestamp column was provided. | 422 – field errors | {columnName}: {columnValue} is not in a valid timestamp format; it must be formatted as yyyy-MM-ddTHH:mm:ss.SSSZ. |
PATCH /databases/{databaseId}/contactbylookupkey
| Scenario | Code / level | Message |
|---|
| Invalid value provided for {databaseId} | 404 not found – general errors | Database not found |
| Lookup key not provided | 400 bad request – general errors | Invalid request |
| Lookup key provided but is non existent column | 422 unprocessable entity – general errors | Column not found |
| Lookup key provided but is not a designated lookup key | 422 – general errors | Lookup key not found |
| Invalid value for channel was provided | 422 – general errors | Channel not found |
GET /databases/{databaseId}/contactbychannel/{channel}
PATCH /databases/{databaseId}/contactbychannel
When you use the GET method for the contactychannel Rest API call, you can retrieve the contact for a given database, channel, qualifier, and destination regardless of bad data.
When you use the Patch method for the contactychannel Rest API call, you will get a 422 error for bad data. Since the PATCH method is used to add or update a contact with the given contact data using channel information, the validation process will run for this call.
The error could be generated for bad data in ANY of the data fields for the record and not just for the fields that they are specifying in the Rest API call.
| Scenario | Code | Message |
|---|
| Input field (Program ID) is empty. | 405 | Unsupported operation. |
| Input field (Program ID) is empty. | 404 | Failed to load resource. |
| User does not have permission. | 403 | Forbidden |
| Code | Message |
|---|
| 400 | Program start date format is invalid. |
| 400 | Program end date format is invalid. |
| 400 | Last allowed entry date format is invalid. |
| 403 | Forbidden – User does not have permission. |
| 409 | Program is active and cannot be updated. |
| Code | Message |
|---|
| 400 | The program notes field must be 0 - 100 characters in length. |
| 400 | The program name field must be 1 - 100 characters in length. |
| 400 | The program name field is required and cannot be empty. |
| 400 | The program name can contain letters, numbers, spaces, and the following characters: #. - _ " ( ). |
| 400 | Program end date must be on or after the program start date. |
| 400 | Last allowed entry date must be on or after the program start date. |
| 400 | Last allowed entry date must be on or before the program end date. |
| 400 | The program start date format is invalid. |
| 400 | The program end date format is invalid. |
| 400 | The last allowed entry date format is invalid. |
| 403 | Forbidden – The user does not have permission. |
| 400 | The program name that you entered is already in use. Enter a new program name. |
| Scenario | Code | Message |
|---|
| Various | 200 | Success |
| Bcc not on for a database, contact list, or query specified in the call. | 403 | Bcc is not enabled. |
| Bcc is not set with a custom email value. | 403 | Bcc is not configured for custom email address. |
| User does not have access to the Organization, database, contact list, or query. | 404 | Not found. |
| Invalid email address. | 400 | Invalid email address. |
| Scenario | Code | Message |
|---|
| Event type code is not mapped to any database. | 201 | Success |
| Code is already mapped to a different database. | 409 | Conflict |
| Code is invalid/auto provisioned. | 400 | Bad request |
| Code | Message |
|---|
| 200 | OK |
| 400 | Bad request |
| Category | Scenario | Code | Message |
|---|
| Contact source ID | Contact source is not push enabled. | 400 | Contact source is not enabled for this channel. |
| Contact source ID | User calling the API is not push enabled. | 403 | Forbidden |
| Contact source ID | Contact source does not exist. | 500 | An unexpected error occurred. If the problem continues, contact your system administrator. |
| Contact source ID | Contact source is not in this org. | 400 | Contact source access denied. |
| User | User calling the API is not on a push enabled org. | 403 | Forbidden |
| Content ID | No ID provided | 404 | n/a |
| Content ID | Provided ID does not exist. | 400 | Unable to find published DeliveryDraft with contentId <contentID goes here>. |
| Content ID | Provided ID is not in this org. | 403 | Forbidden |
| Content ID | Provided ID existed but was deleted. | 400 | Unable to find published DeliveryDraft with contentId <contentID goes here>. |
| Campaign name | Campaign name is too long. | 500 | An unexpected error occurred. If the problem continues, contact your system administrator. |
| Message name | Contains characters that are NOT whitelisted for use in UI | 201 | Success |
| Message name | Contains all spaces | 201 | Success |
| Message name | Has leading or trailing spaces | 201 | Success |
| Message name | Message name is not unique. | 400 | A Push with the name: <provided message name goes here> exists |
| Folder path | n/a | 400 | Folder path must start with a slash ( / ). |
| Code | Message |
|---|
| 202 | Accepted |
| 400 | Appkeys or ChannelQualifiers cannot be empty. |
| 400 | Contacts must contain at least one contact and cannot exceed more than 1000 contacts. |
| 400 | The length of appKey is not equal to the required length of 10. |
| 400 | Content cannot be empty. |
| 400 | {platform} content size limit exceeded. Size {contentSize}. Limit {platform specific limit}, Platform: {platform}. |
| 400 | Not all appkeys that is specified in the payload envelope is contained in the published content with contentId: {appKeys} |
| 400 | Expiration date for rich content should not be empty. |
| 400 | Rich content with contentId: {richContentId} has not been published. |
| 400 | Cannot provide both contentId and simple/inboxMessage for content. |
| 401 | Unauthorized – No access token was provided. |
| 403 | Forbidden – User does not have permission. |
| Category | Scenario | Code | Message |
|---|
| Contact source ID | Contact source is not SMS enabled. | 400 | Contact source is not enabled for this channel. |
| Contact source ID | User calling the API is not SMS enabled. | 403 | Forbidden |
| Contact source ID | Contact source does not exist. | 500 | An unexpected error occurred. If the problem continues, contact your system administrator. |
| Contact source ID | Contact source is not in this org. | 400 | Contact source access denied |
| User | User calling the API is not on an SMS enabled org. | 403 | Forbidden |
| Draft ID | No ID provided | 404 | n/a |
| Draft ID | Provided ID does not exist. | 400 | Unable to find published DeliveryDraft with contentId <contentID goes here>. |
| Draft ID | Provided ID is not in this org. | 403 | Forbidden |
| Draft ID | Provided ID existed but was deleted. | 400 | Unable to find published DeliveryDraft with contentId <contentID goes here>. |
| Folder path | General error message | 400 | Folder path must start with a slash ( / ). |
| SMS name | Contains characters that are NOT whitelisted for use in UI. | 200 | Success |
| SMS name | Contains all spaces | 404 | n/a |
| SMS name | Has leading or trailing spaces | 200 | Success |
| SMS name | Message name is not unique. | 400 | An SMS with the name: <provided message name goes here> exists |
| Scenario | Code | Message |
|---|
| Success | 201 | Accepted |
| Failure | 400 | Failure |
| User is not on an SMS-enabled org | 403 | Forbidden |
| User calling the API is not SMS enabled | 403 | Forbidden |
| Scenario | Code | Message |
|---|
| Success | 200 | Success |
| User is not on an SMS-enabled org | 403 | Forbidden |
| User calling the API is not SMS enabled | 403 | Forbidden |
| Scenario | Code | Message |
|---|
| Success | 200 | OK |
| Status is not yet available | 400 | Bad request |
📘PUT / PATCH / DELETE SMS Program APIs are only supported for organizations that have the SMS UBX Sender feature provisioned.
Status Code: 405
Message: Unsupported operation