Skip to main content

Triggering runs from outside

Every object that can run has a Copy API trigger URL icon that opens a popover with a ready-made call: method, URL, headers, body and Copy as cURL. The header X-API-Key carries the environment's API key (see Api keys); the URL is the same in every environment, and the key decides which environment the call reaches.

ObjectCallBody
DatasetPOST /api/connector/enqueue{"dataset_id": "…", "load_type": "full" | "incremental"}
Instance or source systemPOST /api/connector/enqueue-all{"source_system_id": "…", "load_type": "full"} (plus the instance id)
JobPOST /api/connector/jobs/run{"job_id": "…"}
SchedulePOST /api/connector/schedules/run{"schedule_id": "…"}

Job and schedule trigger URLs need the Standard or Enterprise plan. A trigger from outside respects the enabled switches: a disabled dataset, instance or source system is not loaded.

Job options. The job body may add variable_overrides, an object of job variable names to values, for variables whose value comes from an action's output (the producer is then not run); a value typed on the job is fixed for every run and an override of it is ignored. It may add start_from: {"step": "pre-actions" | "source-data" | "post-actions", "activity": <0-based index>}. A schedule body may add start_from: {"jobIndex": <0-based>, "step": …, "activity": …}, where step and activity apply to the starting job only. A step or index the job does not have refuses the call before anything runs.

Follow a run. A job or schedule trigger answers {"status": "ok", "run_id": "…", "status_url": "…"}; poll GET /api/connector/runs/<run_id>/status until the answer says the run is terminal. A dataset trigger answers with the load log id; poll GET /api/loadlogs/<id>/status. GET /api/connector/queue-status shows how many loads are queued and running.

Actions also carry a trigger URL (POST /api/connector/actions/run), which works with a signed-in token; see External api reference.