REST API 2025-09-18 migration guide

This guide describes the breaking changes between 2024-02-08 and 2025-09-18 and explains why each one was made.

Interface changes

Model Sync: list syncs

The list endpoint now returns paginated results and a lighter response shape:

  • Results are paginated.
  • The response does not include every sync property. For example (non-exhaustive):
    • The target connection is not loaded. Polytomic returns target_connection_id and target ID fields instead.
    • Field mappings, overrides, and filters are not included.

If you need these details, fetch them from the Model Sync Get Sync endpoint. Use list to discover syncs in an account; use get to retrieve the full configuration of a single sync.

Bulk Sync: list, create, and update

The list, create, and update endpoints have changed in the same way:

  • The schedule parameter has been removed.
  • default_schedule and additional_schedules parameters have been added, with a new schema.

Bulk Syncs now support multiple schedules. The single schedule object has been split into one required default_schedule (which applies to all schemas unless overridden) and an optional additional_schedules array (each entry can target specific schemas via selective_mode and schemas). The multi schedule type is deprecated — every Bulk Sync operates in multi-schedule mode by default.

Example: schedule becomes default_schedule and additional_schedules

The schedule parameter on Bulk Sync create, update, list, and get endpoints has been replaced by default_schedule and additional_schedules.

Old update payload, using schedule:

1{
2 "name": "my bulk sync",
3 "schedule": {
4 "frequency": "multi",
5 "multi": {
6 "schedules": [
7 {
8 "item": "incrementalFields",
9 "schedule": {
10 "frequency": "continuous"
11 }
12 },
13 {
14 "item": "nonincrementalFields",
15 "schedule": {
16 "frequency": "daily",
17 "hour": "05",
18 "minute": "00"
19 }
20 }
21 ]
22 }
23 }
24}

New update payload, using default_schedule and additional_schedules:

1{
2 "name": "my bulk sync",
3 "default_schedule": {
4 "frequency": "continuous"
5 },
6 "additional_schedules": [
7 {
8 "selective_mode": "nonincrementalFields",
9 "frequency": "daily",
10 "hour": "05",
11 "minute": "00"
12 }
13 ]
14}