Skip to content

Changelog

Information on the latest updates and additions to the Selligent API. Also checkout the Selligent What's new for more information.

Added

Business key management endpoint

A new endpoint enables centralized management of business keys for lists. You can now define or update a business key (1–3 fields) via the API. When no compatible unique index already exists on the list table, the platform automatically creates one. Existing DBA-managed unique indexes are left untouched.

View documentation →

Gradually rolling out

Per-list concurrency limit on bulk data endpoints

We are gradually rolling out a per-list concurrency limit on bulk data load and delete endpoints. This limit ensures that only **one bulk operation per list** runs at a time, protecting data consistency and preventing resource contention under concurrent load. When a bulk operation is already in progress on a list and a second request arrives for the same list, the second request is rejected immediately with `429 Too Many Requests`. Callers should retry once the in-flight operation has completed. Applies to: `POST {list}/data/load`, `DELETE {list}/data`, `POST {list}/segments/{seg}/data/load`, `DELETE {list}/segments/{seg}/data`.

View data load documentation →

Gradually rolling out

Key-field index guard on bulk data endpoints

We are gradually rolling out a key-field index guard on bulk data load and delete endpoints. This guard protects platform performance by verifying that the destination list table has a unique index whose key columns cover all specified keyFields before processing large payloads. **What to do now:** Ensure your list tables have a unique index on the fields you use as `keyFields` in bulk imports. Use `PUT /organizations/{organization}/lists/{api_name}/businesskey` to provision a unique index via the API, or create a DBA-managed unique index directly on the underlying table. Once your tables are ready, the guard will have no impact on your integrations. Once fully enforced, when no compatible unique index exists: - Requests against tables with **5,000,000 or more rows** will be rejected immediately with `400 ValidationFailed` and business code `LOAD_RECORDS_FAILED_BY_MISSING_INDEX`. - Requests against smaller tables will be allowed but aborted once **100,000 records** have been processed. Applies to: `POST {list}/data/load`, `DELETE {list}/data`, `POST {list}/segments/{seg}/data/load`, `DELETE {list}/segments/{seg}/data`.

View data load documentation →

Added

data_import_option added to single record data load

The "data_import_option" parameter has been added to the endpoint to add a single record to a list. The behaviour of bulk and single record inserts have been aligned.

View documentation →

Fixed

Tasks now return proper execution status result

When retreiving the status of a task, the execution_status was always 'Failed', and exection details where not returned. Proper information is now returned.

View documentation →

added

AB Journey endpoints

You can now create AB and AB Subject line test journeys via the API. Please reach out if you would like to activate this.

View documentation for AB journeys →
View documentation for AB subject line journeys →

Added

RCS API endpoints

You can now create RCS (Rich Communication Services) message content via the API.

View documentation →

Added

Dynamic Segment API endpoints

You can now create and update constraints for dynamic segments.

View documentation →
View guide →

Added

Selligent API - verion 1.0

Then engage API documentation is now live!

View documentation →