Ansible Roles · JSON Structure

Ansible Roles Role Structure

An Ansible role published on Galaxy, containing tasks, handlers, defaults, templates, and metadata for reuse across playbooks.

Type: object Properties: 15 Required: 3
AnsibleAutomationCollectionsConfiguration ManagementDevOpsInfrastructure As CodeRoles

Role is a JSON Structure definition published by Ansible Roles, describing 15 properties, of which 3 are required. It conforms to the https://json-structure.org/meta/core/v0/# meta-schema.

Properties

id name namespace description github_user github_repo github_branch download_count stargazers_count forks_count open_issues_count min_ansible_version license created modified

Meta-schema: https://json-structure.org/meta/core/v0/#

JSON Structure

ansible-roles-role-structure.json Raw ↑
{
  "$schema": "https://json-structure.org/meta/core/v0/#",
  "$id": "https://raw.githubusercontent.com/api-evangelist/ansible-roles/refs/heads/main/json-structure/ansible-roles-role-structure.json",
  "description": "An Ansible role published on Galaxy, containing tasks, handlers, defaults, templates, and metadata for reuse across playbooks.",
  "type": "object",
  "properties": {
    "id": {
      "type": "int32",
      "description": "Unique numeric identifier for the role.",
      "example": 500123
    },
    "name": {
      "type": "string",
      "description": "Name of the role.",
      "example": "nginx"
    },
    "namespace": {
      "type": "string",
      "description": "Galaxy namespace (usually GitHub username) of the role author.",
      "example": "geerlingguy"
    },
    "description": {
      "type": "string",
      "description": "Short description of what the role does.",
      "example": "Installs and configures Nginx web server."
    },
    "github_user": {
      "type": "string",
      "description": "GitHub username of the role author.",
      "example": "geerlingguy"
    },
    "github_repo": {
      "type": "string",
      "description": "GitHub repository name for this role.",
      "example": "ansible-role-nginx"
    },
    "github_branch": {
      "type": "string",
      "description": "Default branch for this role's repository.",
      "example": "master"
    },
    "download_count": {
      "type": "int32",
      "description": "Total number of times this role has been downloaded.",
      "example": 1250000
    },
    "stargazers_count": {
      "type": "int32",
      "description": "Number of GitHub stars for this role.",
      "example": 1800
    },
    "forks_count": {
      "type": "int32",
      "description": "Number of GitHub forks for this role.",
      "example": 750
    },
    "open_issues_count": {
      "type": "int32",
      "description": "Number of open GitHub issues for this role.",
      "example": 12
    },
    "min_ansible_version": {
      "type": "string",
      "description": "Minimum Ansible version required by this role.",
      "example": "2.8"
    },
    "license": {
      "type": "string",
      "description": "Software license for this role.",
      "example": "MIT"
    },
    "created": {
      "type": "datetime",
      "description": "When this role was first published to Galaxy.",
      "example": "2015-01-01T00:00:00Z"
    },
    "modified": {
      "type": "datetime",
      "description": "When this role was last updated.",
      "example": "2026-04-01T00:00:00Z"
    }
  },
  "required": [
    "id",
    "name",
    "namespace"
  ],
  "name": "Role"
}