Create a sync
Creates a sync with both sides declared inline. API-key connectors can take their credentials in auth, validated live against the connected service; base resolves by remote id or exact display name. Any side declared by connector alone — an OAuth side always, an API-key side whenever credentials should not pass through the caller — is left for a person, who connects it in the app via the returned pending action. A 201 means everything sent was validated — on any error, nothing is kept.
Request
- Base URL: https://api.whalesync.com
- URL: https://api.whalesync.com/v1/sync/syncs
- Auth: HTTP bearer
Headers
Makes retries safe: the same key replays the original response instead of creating twice.
Request body
Example request
{
"name": "CRM sync",
"left": {
"connector": "postgres",
"auth": {
"connectionString": "postgres://…"
},
"base": "appXk3ePqW9zHt5Lm"
},
"right": {
"connector": "postgres",
"auth": {
"connectionString": "postgres://…"
},
"base": "appXk3ePqW9zHt5Lm"
}
}Response
The new sync, in draft. A side left for a person — OAuth, or API-key without auth — comes back null with a user_authorization entry in pending_actions.
Example response
{
"id": "sync_1d0b06b0-6f5e-4a3e-9d15-3a7b0e2f9a41",
"name": "CRM sync",
"left": {
"connector": "airtable",
"base": {
"remote_id": "appXk3ePqW9zHt5Lm",
"name": "CRM"
}
},
"right": {
"connector": "airtable",
"base": {
"remote_id": "appXk3ePqW9zHt5Lm",
"name": "CRM"
}
},
"pending_actions": [
{
"connector": "airtable"
}
]
}Changes
No recorded changes to this operation across all 1 revision of this API.