{ "name": "RBAC Role", "description": "Structure documentation for an RBAC role object — a named collection of permissions assignable to principals.", "fields": [ { "name": "id", "type": "string", "required": true, "description": "Unique identifier for the role." }, { "name": "name", "type": "string", "required": true, "description": "Human-readable name of the role (e.g., admin, editor, viewer)." }, { "name": "description", "type": "string", "required": false, "description": "Description of the role's purpose and scope." }, { "name": "permissions", "type": "array", "required": false, "description": "List of permission identifiers granted by this role." }, { "name": "parents", "type": "array", "required": false, "description": "Parent role identifiers this role inherits permissions from (role hierarchy)." }, { "name": "scope", "type": "string", "required": false, "description": "Scope of the role — global, organization, project, or resource." }, { "name": "created", "type": "string (date-time)", "required": false, "description": "ISO 8601 timestamp when the role was created." }, { "name": "modified", "type": "string (date-time)", "required": false, "description": "ISO 8601 timestamp when the role was last modified." } ] }