Ansible Playbooks · Schema

PlaybookJob

An Ansible playbook job representing a single execution of a job template, including status, output, and configuration details.

AnsibleAutomationConfiguration ManagementDevOpsInfrastructure As CodeOrchestrationPlaybooks

Properties

Name Type Description
id integer Unique numeric identifier for the job.
name string Name of the job template that spawned this job.
status string Current job status.
playbook string Playbook file executed by this job.
started string Timestamp when the job started executing.
finished string Timestamp when the job finished.
elapsed number Job duration in seconds.
job_type string Type of Ansible job.
launch_type string How the job was launched.
verbosity integer Ansible verbosity level (0-5).
limit string Host pattern limit applied to this job run.
extra_vars string Extra variables passed to the playbook as a JSON string.
inventory integer ID of the inventory used by this job.
project integer ID of the project containing the playbook.
result_traceback string Error traceback if the job failed.
created string Timestamp when the job record was created.
modified string Timestamp when the job record was last modified.
View JSON Schema on GitHub

JSON Schema

ansible-playbooks-playbook-job-schema.json Raw ↑
{
  "$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"]
}