`GET /v1/orgs/{org}/proposals/{proposal_id}/jobs`.
const url = 'https://api.updawg.net/v1/orgs/example/proposals/example/jobs';const options = {method: 'GET'};
try { const response = await fetch(url, options); const data = await response.json(); console.log(data);} catch (error) { console.error(error);}curl --request GET \ --url https://api.updawg.net/v1/orgs/example/proposals/example/jobsParameters
Section titled “Parameters”Path Parameters
Section titled “Path Parameters”Organization slug.
The prp_… id.
Responses
Section titled “Responses”Every job the proposal became, by hostname. Empty until it is approved and dispatched.
object
object
What the host reported changed. Empty until it reports.
object
The host’s error, when it ran the job and it failed.
object
object
apply_updates, reboot, … or unknown for a document this build
cannot read.
The exact versions the job was signed to install. Empty for a kind that installs nothing named.
object
null until the host reports.
Why the host refused it, when it did. A refusal is normal: the host’s own configuration always wins.
There is a report and this build cannot read it. Never true alongside any of the fields above.
Set when a person resumed past this job’s failure, and its host was sent a new job, which is listed too (DAWG-110).
queued, delivered, running, succeeded, failed,
rejected_by_host, cancelled or expired. Anything else is passed
through as stored.
Examplegenerated
{ "jobs": [ { "changes": [ { "arch": "example", "from": "example", "name": "example", "to": "example" } ], "created_at": "2026-04-15T12:00:00Z", "delivered_at": "2026-04-15T12:00:00Z", "error": "example", "expires_at": "2026-04-15T12:00:00Z", "finished_at": "2026-04-15T12:00:00Z", "health_checks": [ { "detail": "example", "duration_ms": 1, "name": "example", "passed": true } ], "host": { "display_name": "example", "hostname": "example", "id": "example" }, "id": "example", "kind": "example", "pinned": [ { "arch": "example", "from": "example", "name": "example", "to": "example" } ], "reboot_required": true, "rejection_reason": "example", "report_unreadable": true, "retried_at": "2026-04-15T12:00:00Z", "started_at": "2026-04-15T12:00:00Z", "status": "example" } ]}No session.
object
Examplegenerated
{ "detail": "example", "status": 1, "title": "example", "type": "example"}No such proposal here.
object
Examplegenerated
{ "detail": "example", "status": 1, "title": "example", "type": "example"}Over the organization’s request limit. Retry-After says when to try again; RateLimit-Limit is the burst.
object
Examplegenerated
{ "detail": "example", "status": 1, "title": "example", "type": "example"}