Update identifiers on preference records
Batch update identifiers on preference records.
This endpoint updates identifiers on preference records and does not trigger DSR workflows.
Use mergeRecordsOnConflict to control merging behavior and returnIdentifiers to include 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 theanchorIdentifierto locate a preference record. - You cannot update the
transcendidentifier value — doing so fails with: "The transcend identifier cannot be added, changed, or removed through this request; it is system-managed."
Transcend_API_Key Modify User Stored PreferencesAuthorizationBearer <token>authorization: Bearer <>
Scope: Modify User Stored Preferences
partition*stringThe ID of the partition in the Preference Store.
content-type*stringSpecify content-type: application/json for a JSON response from the Transcend API.
application-jsonapplication/json- body
records*array<>List of identifier update operations to apply in a single batch. Max 10 records.
items <= 10The response includes the result of each update operation in the records array, along with any partial failures in failures and batch failures in errors. 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- 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 request.
curl -X POST 'https://multi-tenant.sombra.transcend.io/v1/preferences/string/update-identifiers' \ -H 'authorization: string' \ -H 'content-type: string' \ -H 'Content-Type: application/json' \ -d '{ "records": [ { "anchorIdentifier": { "name": "email", "value": "xyz@foo.com" }, "update": { "name": "phone", "oldValue": "+1231231234", "newValue": "+1231231235" }, "timestamp": "2025-11-26T17:33:13.515Z" } ]}'{ "records": [ { "success": true }, { "success": true } ], "failures": [], "errors": []}