https://api.planasonix.com
If your workspace uses a versioned base path (for example
/v1), prepend it before /api. See API reference.List syncs
Returns all reverse ETL sync definitions.GET /api/reverse-etl/syncs
Request parameters
string
Filter syncs targeting a given destination connection.
boolean
Filter by active/paused syncs.
integer
default:"50"
Page size.
string
Pagination cursor.
Example response
Create sync
Creates a new sync from a SQL or semantic query to a destination object.POST /api/reverse-etl/syncs
Request body
string
required
Display name for the sync.
string
required
Warehouse query (SQL) or documented semantic reference that resolves to a row set.
string
required
Connection ID for the destination (Salesforce, HubSpot, Iterable, and so on).
string
required
Destination object or resource name (API name for CRM entities, stream name for events APIs).
array
required
Array of mapping objects: source column or expression → destination field (see example).
string
required
One of
upsert, insert, update, delete, or connector-specific modes.object
Optional schedule: for example
{ "type": "cron", "expression": "0 * * * *", "timezone": "UTC" } or { "type": "manual" }.Example response
Get sync
GET /api/reverse-etl/syncs/{id}
Request parameters
string
required
Sync ID.
Example response
Update sync
PUT /api/reverse-etl/syncs/{id}
Request parameters
string
required
Sync ID.
Request body
Same fields as create, all optional except where the server requires a full replacement for certain connectors.Example response
Delete sync
DELETE /api/reverse-etl/syncs/{id}
Request parameters
string
required
Sync ID.
Example response
Trigger sync run
Starts a run for one or more syncs (batch semantics depend on your deployment).POST /api/reverse-etl/sync/run
Request body
string
Run a single sync by ID.
array
Run multiple syncs in one request.
boolean
default:"false"
When supported, ignores incremental watermark and reprocesses the full query result set.
Example response
Toggle sync
Enables or disables a sync without deleting its definition.POST /api/reverse-etl/sync/toggle
Request body
string
required
Sync ID.
boolean
required
Target state.
Example response
List destinations
Lists destination connections available for reverse ETL in the workspace.GET /api/reverse-etl/destinations
Request parameters
string
Filter by connector type (for example
salesforce, hubspot).Example response
List destination objects
Returns objects (entities, streams) you can target for a given destination.GET /api/reverse-etl/objects
Request parameters
string
required
Destination connection ID.
string
Case-insensitive filter on object label or API name.
Example response
List object fields
Returns fields for a destination object, including types and write constraints.GET /api/reverse-etl/fields
Request parameters
string
required
Destination connection ID.
string
required
Object API name.
Example response
List sync runs
Returns historical reverse ETL run records across syncs.GET /api/reverse-etl/runs
Request parameters
string
Restrict to one sync.
string
Filter by run status.
integer
default:"50"
Page size.
string
Pagination cursor.
Example response
List dead letter queue entries
Returns rows or batches that failed after retries and require manual review.GET /api/reverse-etl/dlq
Request parameters
string
Filter by sync.
boolean
false (default) for open failures; true for history.integer
default:"50"
Page size.
string
Pagination cursor.
Example response
DLQ statistics
Aggregate counts for monitoring and alerting.GET /api/reverse-etl/dlq/stats
Request parameters
string
Scope stats to one sync; omit for workspace totals.
string
ISO 8601 timestamp; only count entries at or after this time.
Example response
Resolve DLQ entries
Marks entries resolved after you fix data or choose to skip them; optional replay may enqueue new writes.POST /api/reverse-etl/dlq/resolve
Request body
array
required
DLQ entry IDs to resolve.
string
required
Short reason code:
fixed_upstream, skipped, manual_push, and so on.boolean
default:"false"
When true and supported, re-attempts the affected records in a new run.