CDS API

Content Delta Service (CDS) API

Overview

The CDS API returns property IDs that have changed (activated/added, deactivated, or modified) since a given date, enabling efficient incremental refresh without re-fetching your entire catalog.

  • Method: GET
  • Endpoint: https://example-server.com/api/v2/content/properties/changes
  • Authentication: Required (Use OAuth 2.0)
  • Rate Limited: Yes

Content refresh/sync steps

  1. Call the CDS API with your last successful sync timestamp.
  2. Receive a list of changed property IDs and change types (activated, deactivated, modified).
  3. For the activated properties, fetch the full content via the Properties API.
  4. For deactivated properties, mark as inactive/removed in your data store.
  5. Record the new sync timestamp for the next cycle.

Request example

curl -X GET \
  'https://example-server.com/api/v2/content/properties/changes?timeStamp=20261020'
-H 'Authorization: Bearer YOUR_ACCESS_TOKEN'

Request parameters

ParameterTypeRequiredDescription
timeStampDateYesRequest properties updated on or after this date/time. The limit is the past 7 days, including the current date.

Response sample

{
  "data": {
    "changes": {
      "active": {
        "propertyIds": [
          49183,
          50617,
          50883
        ]
      },
      "inactive": {
        "propertyIds": [
          2222,
          5055,
          6819
        ]
      },
      "contentUpdated": {
        "propertyIds": [
          282592,
          165114,
          42890
        ]
      }
    }
  },
  "errors": []
}

Response schema

FieldTypeDescription
data.changes.activeArray of IntegersUnique property IDs that have been activated since the date.
data.changes.inactiveArray of IntegersUnique property IDs that were deactivated since the date.
data.changes.contentUpdatedArray of IntegersUnique property IDs for which the content has been modified since the date.
errorsObjectError object in response.

CDS API refresh failure handling

ScenarioAction
Daily job fails (or retry same day fails)Re-run CDS with the last successful sync timestamp. Idempotent — safe to repeat.
Job missed for a few daysRe-run CDS with the last successful sync timestamp — CDS accepts any past timestamp. Expect a larger changed data set.
Job missed for 7+ daysConsider a scoped full refresh rather than processing a very large changed data set.
❗️

Always preserve your sync timestamp after successfully processing all changes. This ensures you don't miss updates if a job fails mid-processing.


Did this page help you?