Skip to content
Console

Create a job

Create or replace a named job. Submitting again with the same name updates a running job (hot-update) when the change is allowed.

Terminal window
curl -X POST "https://api.avflow.dev/v1/jobs" \
-H "Authorization: Bearer ${AVFLOW_API_KEY}" \
-H "Content-Type: application/json" \
-d @job.json

Pass your API key as a Bearer token:

Authorization: Bearer <api-key>

A full Job object. The name field identifies the job for later GET/DELETE calls.

202 with the job including server fields (id, status: submitted, …). The control plane accepts the job immediately and dispatches it to the runtime asynchronously. Poll GET /v1/jobs/:name or watch webhooks for job.startingjob.started. See Job status.

On update (same name as a running job):

  • metadata is immutable — placement is fixed at first submit.
  • You may add or remove sources, nodes, and sinks, and change node/sink inputs to rewire the DAG (sink rewires use make-before-break switching).
  • See Job structure — Updating a running job for config and other fields.
HTTPMeaning
400Invalid JSON, DAG violation, unknown component type, or immutable field changed on update (metadata)
401Missing or invalid API key
429Rate or quota limit

See Mix LiveKit to RTMP for a complete walkthrough.