Transcend Docs
API referencePreference record identifiers

Delete identifiers from preference records

POST
/v1/preferences/{partition}/delete-identifiers

Batch delete identifier values from preference records. This endpoint deletes identifiers from preference records and does not trigger DSR workflows. Set returnIdentifiers to include remaining identifiers in the response.

Rate Limits

  • 100 requests per organization per minute (default).
  • This limit can be increased upon request.

Rate Limiting Headers

  • X-RateLimit-Limit: The maximum number of requests allowed in the current window.
  • X-RateLimit-Remaining: The number of requests remaining in the current window.
  • X-RateLimit-Reset: The time at which the current rate limit window resets in ISO 8601 format.
  • Retry-After: (on 429) The number of seconds to wait before making a new request.

Transcend ID Restrictions

  • Use { "name": "transcend", "value": "<uuid>" } as the anchorIdentifier to locate a preference record.
  • You cannot delete the transcend identifier itself — doing so fails with: "The transcend identifier cannot be added, changed, or removed through this request; it is system-managed."

Authorization

Transcend_API_Key Modify User Stored Preferences
headerAuthorizationBearer <token>

authorization: Bearer <>

Scope: Modify User Stored Preferences

Path Parameters

partition*string

The ID of the partition in the Preference Store .

Header Parameters

authorization*string

An API key generated from the Transcend dashboard: https://app.transcend.io/infrastructure/api-keys.

x-sombra-authorization?string

The Sombra internal key. This header is only needed for self-hosted Sombra gateways. See https://docs.transcend.io/docs/dsr-automation/api-integration/authentication#authenticating-to-sombra

content-type*string

Specify content-type: application/json for a JSON response from the Transcend API.

Matchapplication-json

Request Body

application/json
  1. body
records*array<>

List of identifier delete operations to apply in a single batch. Max 10 records.

Itemsitems <= 10

Response Body

The response payload contains the results of the batch delete identifiers operation. Each record in the records array corresponds to an input record and indicates whether the delete operation succeeded or failed, along with any relevant error messages or remaining identifiers. Note: When the response includes failures, clients can only retry the failed items from the original request after addressing the reported errors. When the response includes errors, clients should retry the entire batch after addressing the reported errors.

application/json
  1. response
records?array<>

Per-record results for each input operation. Order matches the input records array.

failures?array<>

List of failed operations within the batch. Use index to map back to the input record.

errors?array<string>

Top-level errors that caused the entire batch to fail. If present, clients should retry the entire request.

curl -X POST 'https://multi-tenant.sombra.transcend.io/v1/preferences/string/delete-identifiers' \  -H 'authorization: string' \  -H 'content-type: string' \  -H 'Content-Type: application/json' \  -d '{  "records": [    {      "anchorIdentifier": {        "name": "email",        "value": "xyz@foo.com"      },      "delete": {        "name": "phone",        "value": "+1231231234"      },      "timestamp": "2025-11-26T17:33:13.515Z"    }  ]}'
Example Response
{  "records": [    {      "success": true    },    {      "success": true    }  ],  "failures": [    {      "index": 1,      "error": "The deleteValue identifier \"+1231231234\" for identifier name \"phone\" is not linked to the preference record"    }  ],  "errors": []}