Skip to main content
Publish an API request workflow for the agent before using these endpoints. Its published Start API request node defines the JSON fields the POST accepts: up to 50 flat text, number, boolean, timestamp, or URL values. Field names use lower camelCase or snake_case, start with a lowercase letter, contain at most 64 characters, and must be unique regardless of case. Use your organization’s API key in the x-api-key header on all three routes. HMAC signing headers are not required.

Start a run

POST https://julian.11x.ai/api/v1/workflows/{agentId}/run
A successful 201 returns { "workflowRunId": "wf-run.…" }. Save that ID to read the run. Sending the same body and idempotency key again returns the same ID; reusing the key with a different body returns 422. Without a key, each POST can start a new run. Invalid input returns 400; an agent with no enabled published API workflow returns 404. A 429 response includes Retry-After.

Get one run

GET https://julian.11x.ai/api/v1/workflows/{agentId}/run?runId={workflowRunId}
The 200 response includes workflowRunId, status, startedAt, finishedAt, and terminalNodes. Status is queued, in_progress, completed, or failed. startedAt is null until execution begins; finishedAt is null until it ends. Each terminal node includes its name and succeeded or failed status. A failed run still returns HTTP 200; an unknown or inaccessible run returns 404.

List runs

GET https://julian.11x.ai/api/v1/workflows/{agentId}/runs
The response contains up to 50 newest-first summaries in runs and a nextCursor. Each summary includes the run ID, status, start time, and finish time. Pass a non-null nextCursor as ?cursor=<nextCursor> for the next page; stop when it is null. History includes older API workflow bindings and excludes builder test runs.