Properties
| Name | Type | Description |
|---|---|---|
| jobId | string | |
| status | string | `queued` for pull mode; `awaiting_upload` for upload mode (the job queues when your PUT completes). |
| statusUrl | string | Free, token-gated status endpoint for this job. Keep it: the token is the only proof of ownership and is not recoverable. |
| fundingSource | string | What paid for this acceptance: `x402` (the on-chain payment you signed), `credits` (your account's balance, when you sent a Bearer token) or `voucher` (a free retry). Stated back to you so a caller ho |
| uploadUrl | string | Upload mode only: PUT the raw bytes here before `uploadExpiresAt`. Keep it - this response is the ONLY place the upload token is handed out (the status route never repeats it), and it is not recoverab |
| uploadExpiresAt | string | Upload mode only: deadline for the PUT. Past it the job becomes a terminal `error` with no refund. |
JSON Schema
{
"$schema": "https://json-schema.org/draft/2020-12/schema",
"$id": "https://artifacts.apis.io/ffpipe-dev/json-schema/ffpipe-dev-job-accepted-schema.json",
"title": "JobAccepted",
"x-generated": "2026-11-07",
"x-method": "derived",
"x-generator": "derive-json-schema.py",
"x-source": "openapi/ffpipe-dev-openapi.json#/components/schemas/JobAccepted",
"type": "object",
"required": [
"jobId",
"status",
"statusUrl"
],
"properties": {
"jobId": {
"type": "string",
"format": "uuid"
},
"status": {
"type": "string",
"enum": [
"queued",
"awaiting_upload"
],
"description": "`queued` for pull mode; `awaiting_upload` for upload mode (the job queues when your PUT completes)."
},
"statusUrl": {
"type": "string",
"format": "uri",
"description": "Free, token-gated status endpoint for this job. Keep it: the token is the only proof of ownership and is not recoverable."
},
"fundingSource": {
"type": "string",
"enum": [
"x402",
"credits",
"voucher"
],
"description": "What paid for this acceptance: `x402` (the on-chain payment you signed), `credits` (your account's balance, when you sent a Bearer token) or `voucher` (a free retry). Stated back to you so a caller holding both a token and a wallet never has to guess which one it just spent."
},
"uploadUrl": {
"type": "string",
"format": "uri",
"description": "Upload mode only: PUT the raw bytes here before `uploadExpiresAt`. Keep it - this response is the ONLY place the upload token is handed out (the status route never repeats it), and it is not recoverable."
},
"uploadExpiresAt": {
"type": "string",
"format": "date-time",
"description": "Upload mode only: deadline for the PUT. Past it the job becomes a terminal `error` with no refund."
}
}
}
Work with this as data
Every JSON Schema here is available over the APIs.io API and to AI agents over MCP.
MCP server
One button, every client — Claude, Cursor, VS Code and the rest.
https://apis.io/mcp
Tools for schemas
4 MCP tools reach this
find_json_schemasBrowse and filter every JSON Schema in the catalog.apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.resolveTurn a domain, URL or GitHub org into the provider it belongs to.find_cohortsEvery scored population of providers in the catalog.
Call it yourself
curl for this page
This JSON Schema
curl "https://apis.io/api/v1/json-schemas/ffpipe-dev-job-accepted"
All schemas
curl "https://apis.io/api/v1/json-schemas?limit=25"
Calls without X-API-Key need no key. Calls with it need a paid plan — get a key.
Get an API key
Free tier, no form to fill in. Signing in shares your email address with us — we store it to create your key and to recognise you if you sign in with another provider. See our Privacy Policy and Terms.
A second provider on the same verified email joins the account you already have.