Skip to navigation

Retrieve a knowledge upload job

View as Markdown

Returns the status of an upload queued with POST /api/agents/{agentId}/knowledge?async=true. status moves from pending to processing and ends in completed, with the document in result (the same object as the synchronous 201), or failed, with the reason in error. Poll every few seconds until the job ends.

A job is kept for one hour after its last update. After that, and for an id that never existed or belongs to another workspace, the answer is 404 Job not found. Background uploads are attempted once: a failed job is not retried, so upload the file again.

The job is looked up by id within the workspace; the agentId in the path is neither validated nor checked against the job.

Idempotency. A read with no side effects. Safe to retry.

Access

  • Required scope: read (or write). Any workspace role.
  • Rate limit: General API — 120 requests/min per workspace on Starter or with no active plan, 200 on Growth, 300 on Business, 600 on Enterprise. See Rate limits.
  • Plan: Available on every plan.

Authentication

AuthorizationBearer

Workspace API key: jl_ followed by 64 lowercase hex characters, created by the workspace owner in the dashboard (Settings → API Keys) and sent as Authorization: Bearer jl_.... The plaintext is shown once, at creation; Jelliu stores only a SHA-256 hash. A workspace can hold up to 25 active keys.

ScopeGET / HEADPOST / PUT / PATCH / DELETEAdmin-only routes
readYesNoNo
writeYesYesNo
fullYesYesYes

Operations restricted to admins or owners reject keys without the full scope with 403, and say so in their description. No key, whatever its scope, can mint or revoke API keys or rotate a webhook secret — that requires a signed-in owner session. A revoked key stops authenticating within about 10 seconds. See Authentication.

Path parameters

agentIdstringRequiredformat: "uuid"

UUID of the agent. It must belong to the authenticated workspace; an id from another workspace answers 404, exactly like an unknown one. Returned as id by GET /api/agents.

jobIdstringRequiredformat: "uuid"

The jobId returned by the 202 upload response. A value that is not a UUID returns 400.

Response

The job.
dataobject

A queued knowledge upload, as returned by GET /api/agents/{agentId}/knowledge/jobs/{jobId}. Kept for one hour after its last update.

Errors

400
Bad Request Error
401
Unauthorized Error
403
Forbidden Error
404
Not Found Error
429
Too Many Requests Error