{ "$schema": "https://json-schema.org/draft/2020-12/schema", "$id": "https://raw.githubusercontent.com/api-evangelist/ansible-playbooks/refs/heads/main/json-schema/ansible-playbooks-playbook-job-schema.json", "title": "PlaybookJob", "description": "An Ansible playbook job representing a single execution of a job template, including status, output, and configuration details.", "type": "object", "properties": { "id": {"type": "integer", "description": "Unique numeric identifier for the job.", "example": 500123}, "name": {"type": "string", "description": "Name of the job template that spawned this job.", "example": "Deploy Web Application"}, "status": {"type": "string", "enum": ["new", "pending", "waiting", "running", "successful", "failed", "error", "canceled"], "description": "Current job status.", "example": "successful"}, "playbook": {"type": "string", "description": "Playbook file executed by this job.", "example": "site.yml"}, "started": {"type": "string", "format": "date-time", "description": "Timestamp when the job started executing.", "example": "2026-04-19T14:00:00Z"}, "finished": {"type": "string", "format": "date-time", "description": "Timestamp when the job finished.", "example": "2026-04-19T14:05:00Z"}, "elapsed": {"type": "number", "description": "Job duration in seconds.", "example": 300.5}, "job_type": {"type": "string", "enum": ["run", "check", "scan"], "description": "Type of Ansible job.", "example": "run"}, "launch_type": {"type": "string", "enum": ["manual", "relaunch", "callback", "scheduled", "dependency", "workflow", "sync", "scm"], "description": "How the job was launched.", "example": "manual"}, "verbosity": {"type": "integer", "minimum": 0, "maximum": 5, "description": "Ansible verbosity level (0-5).", "example": 0}, "limit": {"type": "string", "description": "Host pattern limit applied to this job run.", "example": "web-servers"}, "extra_vars": {"type": "string", "description": "Extra variables passed to the playbook as a JSON string.", "example": "{\"env\": \"production\"}"}, "inventory": {"type": "integer", "description": "ID of the inventory used by this job.", "example": 42}, "project": {"type": "integer", "description": "ID of the project containing the playbook.", "example": 7}, "result_traceback": {"type": "string", "description": "Error traceback if the job failed.", "example": ""}, "created": {"type": "string", "format": "date-time", "description": "Timestamp when the job record was created.", "example": "2026-04-19T13:59:00Z"}, "modified": {"type": "string", "format": "date-time", "description": "Timestamp when the job record was last modified.", "example": "2026-04-19T14:05:00Z"} }, "required": ["id", "name", "status", "playbook", "job_type"] }