Update Bulk Sync

Updates an existing bulk sync's top-level configuration. Updating a bulk sync is a **full replacement** of the sync's top-level configuration. Every field in the request body is written to the sync; any field you omit is cleared or reset to its default value. To make a partial change — for example, toggling `active` or swapping a schedule — fetch the current sync with [`GET /api/bulk/syncs/{id}`](../../../../api-reference/bulk-sync/get), modify the fields you want to change, and send the complete object back in the update request. Updates to `active`, `schedules`, and `policies` take effect immediately. Changes to source or destination configuration take effect on the sync's next execution. Because omitted fields are reset to their defaults, the discovery and naming options behave the same as on create when left out: - `automatically_add_new_objects` resets to not enabling newly discovered source objects automatically. - `automatically_add_new_fields` resets to enabling newly discovered fields on already selected objects. - `normalize_names` resets to enabled. Send the existing values explicitly if you want to preserve a non-default or non-empty setting, including schema and field selections. > 📘 Updating schemas > > Schema updates are not performed through this endpoint. Use the > [Update Bulk Sync Schemas](../../../../api-reference/bulk-sync/schemas/patch) > endpoint to change a subset of schemas, or > [Update Bulk Sync Schema](../../../../api-reference/bulk-sync/schemas/update) > to replace a single schema's configuration.

Authentication

AuthorizationBearer
Bearer user API key
OR
AuthorizationBasic

Basic organization-scoped API key

Path parameters

idstringRequiredformat: "uuid"
Unique identifier of the bulk sync to update.

Headers

X-Polytomic-VersionstringRequired

Request

This endpoint expects an object.
default_scheduleobjectRequired
destination_configurationmap from strings to anyRequired

Destination-specific bulk sync configuration (e.g. output schema name, file format). The accepted keys depend on the destination connection type.

destination_connection_idstringRequiredformat: "uuid"
Unique identifier of the connection rows are written to.
modeenumRequired
Allowed values:
namestringRequired

Human-readable name for the bulk sync.

source_connection_idstringRequiredformat: "uuid"
Unique identifier of the connection rows are read from.
activeboolean or nullOptional
Whether the sync is active. Inactive syncs do not run on their schedule but can still be triggered manually.
additional_scheduleslist of objects or nullOptional
Additional bulk sync schedules. Schedule times are interpreted in UTC.
automatically_add_new_fieldsenumOptional
Allowed values:
automatically_add_new_objectsenumOptional
Allowed values:
concurrency_limitinteger or nullOptional
Override the default concurrency limit for this sync.
data_cutoff_timestampstring or nullOptionalformat: "date-time"
Global cutoff applied across schemas. Source records older than this timestamp are excluded from sync runs.
disable_record_timestampsboolean or nullOptionalDefaults to false
When true, Polytomic will not add its own timestamp columns to destination rows.
normalize_namesenumOptional
Allowed values:
organization_idstring or nullOptionalformat: "uuid"

Organization the sync belongs to. Only used by partner callers; normal callers are always scoped to their own organization.

policieslist of strings or nullOptional
Identifiers of permissions policies applied to the bulk sync.
resync_concurrency_limitinteger or nullOptional
Override the default resync concurrency limit for this sync.
schemaslist of strings or objects or nullOptional

List of schemas to sync; if omitted, all schemas will be selected for syncing.

source_configurationmap from strings to any or nullOptional

Source-specific bulk sync configuration (e.g. replication slot name, sync lookback). The accepted keys depend on the source connection type.

Response

OK
dataobject

Errors

400
Bad Request Error
403
Forbidden Error
404
Not Found Error
500
Internal Server Error