Poll an Async Job
resultFetch the status + output of an async job started by use (e.g. a video render). Pass the job_id that use returned with { async: true }. Returns { status, result?, progress?, charged_cents }: running (still working — when the job reports it, progress carries { phase, percent, rendered_frames, total_frames, eta_sec } and hint is a one-line summary like "rendering 42% (380/900 frames, ~120s left)", so you can tell real progress from a hang; wait a bit and call again), succeeded (result holds the output, e.g. the video URL; the call is charged now), or failed/cancelled (no charge; on failed, read error AND hint — hint carries the service's usage notes, which usually explain how to fix the call). Safe to call repeatedly — it never starts new work or double-charges. ALWAYS use this to retrieve an async result instead of re-running use (re-running starts a new paid job).
Tool call template
Replace each placeholder with a value matching the input schema. Only required parameters are included; add optional parameters as needed.
{
"id": 1,
"jsonrpc": "2.0",
"method": "tools/call",
"params": {
"arguments": {
"job_id": "<job_id>"
},
"name": "result"
}
}Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| job_id | Yes | The job_id returned by an async `use` call. |
Output Schema
| Name | Required | Description | Default |
|---|---|---|---|
| ok | No | True when the call succeeded. | |
| hint | No | Human-readable progress summary. | |
| error | No | Error code/message when ok=false. | |
| job_id | No | The polled job id. | |
| result | No | Final output when succeeded. | |
| status | No | Job state. | |
| progress | No | Progress detail (e.g. percent) while running. | |
| charged_cents | No | Amount billed for this call, in cents. | |
| balance_remaining_cents | No | Wallet balance remaining, in cents. |