Posit · Schema
Job
A job record representing a content execution.
CompanyData ScienceAnalyticsDeveloper ToolsRPythonPublishingMachine LearningEnterpriseReproducibility
Properties
| Name | Type | Description |
|---|---|---|
| id | string | The job identifier. |
| ppid | stringnull | The job's parent process identifier. |
| pid | string | The job's process identifier. |
| key | string | The job's unique key identifier. |
| remote_id | stringnull | The job's identifier for off-host execution configurations. |
| app_id | string | This field is deprecated and has been renamed to `content_id`. |
| content_id | string | The identifier for this job's parent content. |
| content_guid | string | The unique identifier for this job's content. |
| variant_id | string | The identifier of the variant owning this job. |
| variant_key | string | The key of the variant owning this job. May be empty if the variant is no longer available. |
| bundle_id | string | The identifier of a content bundle linked to this job. |
| start_time | string | The timestamp (RFC3339) indicating when this job started. |
| end_time | stringnull | The timestamp (RFC3339) indicating when this job finished. |
| last_heartbeat_time | stringnull | The timestamp (RFC3339) indicating the last time this job was observed to be running. |
| queued_time | stringnull | The timestamp (RFC3339) indicating when this job was added to the queue to be processed. Only scheduled reports will present a value for this field. |
| queue_name | stringnull | The name of the queue which processes the job. Only scheduled reports will present a value for this field. |
| tag | string | A tag to identify the nature of the job. It can be one of `unknown`, `build_report`, `build_site`, `build_jupyter`, `packrat_restore`, `python_restore`, `configure_report`, `run_app`, `run_api`, `run_ |
| exit_code | integernull | The job's exit code. Present only when job is finished. |
| error | stringnull | The error message if the job failed due to an unexpected server error. |
| status | integer | The current status of the job. It can be one of Active: `0`, Finished: `1`, Finalized: `2`, Skipped: `3`. |
| hostname | stringnull | The name of the node which processes the job. |
| cluster | stringnull | The location where this content runs. Content running on the same server as Connect will have either a `null` value or the string `Local`. Gives the name of the cluster when run external to the Connec |
| image | stringnull | The location where this content runs. Content running on the same server as Connect will have either a `null` value or the string `Local`. References the name of the target image when content runs in |
| run_as | stringnull | The UNIX user that executed this job. |
| skip_reason | stringnull | The reason why this job was skipped. Only present for jobs with a skipped status (e.g., when a duplicate job was already queued). |
JSON Schema
{
"$schema": "https://json-schema.org/draft/2020-12/schema",
"$id": "https://raw.githubusercontent.com/api-evangelist/posit/main/json-schema/posit-job-schema.json",
"title": "Job",
"description": "A job record representing a content execution.",
"x-generated": "2026-10-03",
"x-method": "derived",
"x-generator": "derive-json-schema.py",
"x-source": "openapi/posit-jobs-api-openapi.yml#/components/schemas/Job",
"additionalProperties": false,
"properties": {
"id": {
"description": "The job identifier.",
"type": "string"
},
"ppid": {
"description": "The job's parent process identifier.",
"type": [
"string",
"null"
]
},
"pid": {
"description": "The job's process identifier.",
"type": "string"
},
"key": {
"description": "The job's unique key identifier.",
"type": "string"
},
"remote_id": {
"description": "The job's identifier for off-host execution configurations.",
"type": [
"string",
"null"
]
},
"app_id": {
"description": "This field is deprecated and has been renamed to `content_id`.",
"type": "string"
},
"content_id": {
"description": "The identifier for this job's parent content.",
"type": "string"
},
"content_guid": {
"description": "The unique identifier for this job's content.",
"type": "string"
},
"variant_id": {
"description": "The identifier of the variant owning this job.",
"type": "string"
},
"variant_key": {
"description": "The key of the variant owning this job. May be empty\nif the variant is no longer available.",
"type": "string"
},
"bundle_id": {
"description": "The identifier of a content bundle linked to this job.",
"type": "string"
},
"start_time": {
"description": "The timestamp (RFC3339) indicating when this job started.",
"format": "date-time",
"type": "string"
},
"end_time": {
"description": "The timestamp (RFC3339) indicating when this job finished.",
"format": "date-time",
"type": [
"string",
"null"
]
},
"last_heartbeat_time": {
"description": "The timestamp (RFC3339) indicating the last time\nthis job was observed to be running.",
"format": "date-time",
"type": [
"string",
"null"
]
},
"queued_time": {
"description": "The timestamp (RFC3339) indicating when this job was added to the queue\nto be processed. Only scheduled reports will present a value for this field.",
"format": "date-time",
"type": [
"string",
"null"
]
},
"queue_name": {
"description": "The name of the queue which processes the job. Only scheduled reports\nwill present a value for this field.",
"type": [
"string",
"null"
]
},
"tag": {
"description": "A tag to identify the nature of the job. It can be one of `unknown`,\n`build_report`, `build_site`, `build_jupyter`, `packrat_restore`,\n`python_restore`, `configure_report`, `run_app`, `run_api`,\n`run_tensorflow`, `run_python_api`, `run_dash_app`,\n`run_streamlit`, `run_bokeh_app`, `run_panel_app`, `run_fastapi_app`,\n`run_gradio_app`,\n`run_pyshiny_app`, `render_shiny`, `run_voila_app`, `testing`,\n`git`, `val_py_ext_pkg`, `val_r_ext_pkg`, `val_r_install`.",
"type": "string"
},
"exit_code": {
"description": "The job's exit code. Present only when job is finished.",
"format": "int64",
"type": [
"integer",
"null"
]
},
"error": {
"description": "The error message if the job failed due to an unexpected server error.",
"type": [
"string",
"null"
]
},
"status": {
"description": "The current status of the job. It can be one of Active: `0`, Finished: `1`,\nFinalized: `2`, Skipped: `3`.",
"type": "integer"
},
"hostname": {
"description": "The name of the node which processes the job.",
"type": [
"string",
"null"
]
},
"cluster": {
"description": "The location where this content runs. Content running on the same\nserver as Connect will have either a `null` value or the string\n`Local`. Gives the name of the cluster when run external to the\nConnect host.",
"type": [
"string",
"null"
]
},
"image": {
"description": "The location where this content runs. Content running on the\nsame server as Connect will have either a `null` value or the string\n`Local`. References the name of the target image when content runs\nin a clustered environment such as Kubernetes.",
"type": [
"string",
"null"
]
},
"run_as": {
"description": "The UNIX user that executed this job.",
"type": [
"string",
"null"
]
},
"skip_reason": {
"description": "The reason why this job was skipped. Only present for jobs with a\nskipped status (e.g., when a duplicate job was already queued).",
"type": [
"string",
"null"
]
}
},
"type": "object"
}
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/posit-job"
All schemas
curl "https://apis.io/api/v1/json-schemas?limit=25"
Discovery needs no key. Ratings and market analysis are Pro.
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.