Base URL
All API requests are made to the following base URL:Request format
All requests must include theContent-Type: application/json header and send a JSON request body.
Response envelope
Every response uses a consistent JSON envelope. Successful responses return adata object. Failed responses return an error object.
HTTP status codes
| Status | Meaning |
|---|---|
200 | Request succeeded. |
400 | The request was malformed or contained invalid data. Check the error.code and error.message fields for details. |
401 | Authentication failed. The API key is missing or invalid. |
404 | The requested resource was not found (e.g., contact not found when updateOnly is true). |
500 | An unexpected server error occurred. Retry with exponential backoff. |
Error codes
When a request fails, theerror.code field contains a machine-readable error code. Use these codes for programmatic error handling.
| Code | Description |
|---|---|
missing_identifier | Neither email nor cnvContactId was provided. At least one is required. |
invalid_email | The provided email address is malformed. |
invalid_subscription_status | The subscription status value is not one of the allowed values (SUBSCRIBED, UNSUBSCRIBED, NO_STATUS). |
invalid_field | A field key in fields or companyFields does not exist or refers to a read-only field. |
contact_not_found | No existing contact matched the provided identifier. Returned when updateOnly is true. |
upsert_failed | The upsert operation failed for a contact in a batch request. |
internal_error | An unexpected server-side failure. Retry with exponential backoff. |