jobs
Flow execution history and control — inspect past runs, monitor what's running now, download produced files, and pull errors for a specific run.
REST API: Jobs
OpenAPI spec: dist/job.yml
celigo jobs <subcommand> [args] [flags]Supports all global flags.
Subcommands
get <id>
Fetch one job; parent jobs auto-expand to the full family (parent + child jobs).
list
Last resort: list historical jobs with strict, index-backed filters.
current
List currently-running jobs.
cancel <id>
Cancel a running job.
diagnostics <id>
Fetch diagnostics for a job.
download-files <id>
List signed download URLs, or fetch a file's bytes (--file-id, -o).
purge-files <id>
Delete stored files for a job.
errors <id>
Open errors attributable to one job (walks the family to resolve scope).
resolved-errors <id>
Resolved errors attributable to one job (same resolution as errors).
run-stats
Flow run statistics.
celigo jobs get
Get a job by ID. Top-level run jobs (type=flow, retry, or bulk_retry) auto-expand to the full family — the run record with its child jobs inlined under children — because a run only carries aggregate counters and the per-step detail lives on the children. Child step jobs (type=export/import) return just the single record.
Signature
Arguments
<id>
string
Yes
Job _id.
Example
Corresponds to: GET /v1/jobs/{_id} — and, for parent jobs, GET /v1/jobs/{_id}/family.
celigo jobs list
Last resort: list historical jobs via the generic jobs endpoint with strict, index-backed filters. Prefer jobs current for running/active jobs, jobs get <id> for one run (children inlined), and jobs run-stats for aggregate history.
jobs listwas restricted in celigo-cli 2026.8.4, at the platform team's request — free-formGET /v1/jobsqueries were degrading the shared database for every account.--typeis now required, only two filter shapes are supported, and the--export/--importflags were removed (child export/import jobs are not indexed by step ID — scope them by the parent run's job ID with--flow-job/--parent-job, or usejobs get <runId>, which inlines the child jobs). Every rejected combination fails client-side, before any network call, with the supported alternative named.
The two supported filter shapes:
--type
Required scope
flow or retry
--integration <id> or --flow <id>
export or import
--flow-job <id> or --parent-job <id> (the parent run's job ID)
Signature
Flags
--type <type>
flow|retry|export|import
—
Required. Job type to list. (The long-defunct bulk_retry type is deliberately not accepted.)
--integration <id>
string
—
Scope --type flow/retry by _integrationId.
--flow <id>
string
—
Scope --type flow/retry by _flowId.
--flow-job <id>
string
—
Scope --type export/import by _flowJobId (the parent run's job ID).
--parent-job <id>
string
—
Scope --type export/import by _parentJobId.
--status <status>
completed|failed|queued|canceled|…
—
Filter by one status (the API has no multi-status filtering).
--created-gte <iso>
ISO 8601
—
createdAt >= lower bound. Additional narrowing only — not sufficient scope on its own.
--created-lte <iso>
ISO 8601
—
createdAt <= upper bound.
--started-gte <iso>
ISO 8601
—
startedAt >= lower bound.
--started-lte <iso>
ISO 8601
—
startedAt <= upper bound.
--limit <n>
integer
—
Stop after collecting this many rows (client-side early-stop).
Example
Corresponds to: GET /v1/jobs?... (filters are mapped to type, _integrationId, _flowId, _flowJobId, _parentJobId, status, createdAt_gte/lte, startedAt_gte/lte).
celigo jobs current
List currently-running jobs. Uses the POST /v1/jobs/current body-paginated endpoint.
Signature
Flags
--integration <id>
string
—
Filter by integration ID (sent as _integrationIds).
--flow <id>
string
—
Filter by flow ID (sent as _flowIds).
--status <status>
comma-separated
—
One or more of queued, running, retrying, canceling.
--sandboxwas removed in celigo-cli 2026.8.1. The environment comes from the profile's token, so a flag could contradict it. To query another environment, use a profile whose token targets it. See Profiles & regions.
Example
Corresponds to: POST /v1/jobs/current
celigo jobs cancel
Cancel a running job. Prompts for confirmation unless -y is passed.
⚠️ Canceling a running job cannot be undone. The job stops where it is; records already processed are kept, and the run does not resume.
Signature
Arguments
<id>
string
Yes
Job _id.
Flags
-y, --yes
boolean
false
Skip the confirmation prompt.
Example
Corresponds to: PUT /v1/jobs/{_id}/cancel
celigo jobs diagnostics
Fetch diagnostics for a job (performance breakdown, retry metadata, etc.).
Signature
Arguments
<id>
string
Yes
Job _id.
Example
Corresponds to: GET /v1/jobs/{_id}/diagnostics
celigo jobs download-files
List the signed download URLs for a job's files, or fetch a file's bytes to disk.
No flags — prints the signed download URLs for every file the job produced (it does not fetch the bytes).
--file-id— narrows to one file (e.g., an EDI transaction'ss3Key).-o— fetches the file's bytes and writes them to the given path.
Where do file ids come from? jobs get <id> returns a files[] array; each entry has an id (the storage file id), host (s3 or netsuite), and name. Pass that id to --file-id. For EDI specifically, the s3Key on an edi-transactions record is the file id.
Signature
Arguments
<id>
string
Yes
Job _id.
Flags
--file-id <fileId>
string
—
Specific file id (from jobs get → files[].id, or an EDI s3Key).
-o, --output <path>
path
—
Fetch the file's bytes and write them to this path instead of stdout.
Example
Corresponds to: POST /v1/jobs/{_id}/files/signedURL — called with an empty body to list URLs, or { "fileIds": [...] } when --file-id is set. With -o, the CLI then GETs the returned signed URL to fetch the bytes.
celigo jobs purge-files
Delete stored files for a job. The job record itself is not removed. Prompts for confirmation unless -y is passed.
⚠️ Purging files is irreversible. The stored file artifacts are deleted permanently; the job record, diagnostics, and errors remain queryable.
Signature
Arguments
<id>
string
Yes
Job _id.
Flags
-y, --yes
boolean
false
Skip the confirmation prompt.
Example
Corresponds to: DELETE /v1/jobs/{_id}/files
celigo jobs errors
Return open errors attributable to one job. The CLI resolves the job's flow and export/import steps from its family, then queries the flow-scoped error endpoint filtered by _flowJobId plus the job's run window. For resolved errors, use jobs resolved-errors.
Signature
Arguments
<id>
string
Yes
Job _id. Parent flow jobs fan out across their children; child jobs walk up to the parent to resolve _flowId.
Example
Corresponds to: GET /v1/flows/{_flowId}/{exportOrImportId}/errors filtered by _flowJobId and an occurredAt window — see the flow errors section of the REST API. Returns up to 1000 rows.
celigo jobs resolved-errors
Return resolved errors attributable to one job. Identical flow + step resolution as jobs errors, but queries the resolved-error endpoint with a resolvedAt window.
Signature
Arguments
<id>
string
Yes
Job _id. Resolved the same way as jobs errors (parent fan-out / child walk-up).
Example
Corresponds to: GET /v1/flows/{_flowId}/{exportOrImportId}/resolved filtered by _flowJobId and a resolvedAt window. Returns up to 1000 rows.
celigo jobs run-stats
Flow run statistics, grouped by flow/integration.
Signature
Flags
--integration <id>
string
—
Filter by integration ID (sent as _integrationIds).
--flow <id>
string
—
Filter by flow ID (sent as _flowIds).
--status <status>
comma-separated
—
One or more of completed, failed.
--sandboxwas removed in celigo-cli 2026.8.1. Use a profile whose token targets the environment you want instead.
Example
Corresponds to: POST /v1/flows/runs/stats
Gotchas
jobs listis the last resort, and it enforces its own scope.--typeis required,--type flow/retrymust be scoped by integration or flow, and--type export/importby the parent run's job ID. AcreatedAtbound alone is not sufficient scope, and--statustakes a single value. Prefercurrent,get, andrun-stats— they answer most questions without the generic endpoint.Child jobs have no
_flowId. Export/import-type jobs carry_parentJobId(or_flowJobId) instead — which is also whyjobs listscopes them by--flow-job/--parent-jobrather than the removed--export/--importflags.jobs errorswalks up to the parent automatically; if you query the flow errors API yourself, do the same walk first.jobs errorsrequires a time window. The flow error endpoint rejects queries that lackoccurredAt_gte/lte(orresolvedAt_gte/lteforjobs resolved-errors). The CLI derives this fromstartedAt/endedAton the job — jobs that haven't ended yet fall back to "now" on the upper bound.jobs currentandjobs run-statsare POST body endpoints, not GET with a query string. Aread-mode profile blocks them, because the client gates on the HTTP verb. Use anoperate-mode profile for these two.Environment comes from the profile, not a flag.
--sandboxwas removed in celigo-cli 2026.8.1. Every job command reads the environment that the profile's token targets. Add a second profile to query another environment.jobs download-fileswithout-odoes not fetch bytes. It prints the signed URLs and returns — writing content to disk requires-o(optionally with--file-idto pick one file).purge-filesis not the same as cancelling or deleting a job. It removes the stored file artifacts only; the job record, diagnostics, and errors remain queryable.
Related
audit — who changed a resource (complement to
jobsfor runtime events).flows —
flows errors/flows resolve-errorsoperate on the step-level scope thatjobs errorsresolves into.integrations — use
jobs list --type flow --integration <id>to sweep runs across every flow in one integration.
Last updated
Was this helpful?