Skip to main content
POST
/
api
/
v1
/
sync
Trigger Sync
curl --request POST \
  --url https://www.catchthegoodones.com/api/v1/sync
{
  "syncRunId": 42
}
Queues a discovery sync for a tracked X account. Returns immediately with a syncRunId that you can poll via the sync status endpoint.

Headers

HeaderRequiredDescription
AuthorizationYesBearer ctgo_your_api_key_here
Content-TypeYesapplication/json

Body

FieldTypeRequiredDescription
accountIdintegerYesThe tracked account ID to sync
overrideScheduledbooleanNoIf true and daily limit is reached, skip the next scheduled sync instead of returning an error
syncSlotsintegerNoNumber of sync slots to use (1-4). Pro tier only. Default: 1
daysToUseintegerNoNumber of days of budget to consume in one sync (1-7). Pro tier only - “boost sync” feature

Example

# Basic sync
curl -X POST https://www.catchthegoodones.com/api/v1/sync \
  -H "Authorization: Bearer ctgo_your_api_key_here" \
  -H "Content-Type: application/json" \
  -d '{"accountId": 1}'

# Pro boost sync - use 3 days of budget
curl -X POST https://www.catchthegoodones.com/api/v1/sync \
  -H "Authorization: Bearer ctgo_your_api_key_here" \
  -H "Content-Type: application/json" \
  -d '{"accountId": 1, "syncSlots": 2, "daysToUse": 3}'

Response

{
  "syncRunId": 42
}

Notes

  • The sync runs asynchronously. Poll the sync status endpoint using the returned syncRunId.
  • Each account has a daily sync limit that depends on its tier. The limit resets at midnight in your configured timezone.
  • Pro accounts can use syncSlots to process more data in a single sync, and daysToUse to pull future budget forward (which pauses syncs until that budget period elapses).
  • You must have at least one saved search configured before you can trigger a sync.