openapi: 3.1.0 info: title: OpenStack Identity (Keystone) API v3 Domains Roles API description: Keystone is the OpenStack Identity service that provides authentication, authorization, and a service catalog for an OpenStack cloud. Tokens issued by Keystone are required to call any other OpenStack service API. The v3 API exposes endpoints for tokens, users, groups, projects, domains, roles, role assignments, services, endpoints, and the service catalog. version: '3' contact: name: OpenStack Identity (Keystone) url: https://docs.openstack.org/keystone/ license: name: Apache 2.0 url: https://www.apache.org/licenses/LICENSE-2.0 servers: - url: https://{keystone-host}:5000/v3 description: Keystone Identity API v3 endpoint (deployment specific) variables: keystone-host: default: keystone.example.com security: - TokenAuth: [] tags: - name: Roles description: Role definitions and assignments. paths: /roles: get: operationId: listRoles summary: List roles tags: - Roles responses: '200': description: List of roles. post: operationId: createRole summary: Create role tags: - Roles requestBody: required: true content: application/json: schema: type: object responses: '201': description: Role created. /role_assignments: get: operationId: listRoleAssignments summary: List role assignments tags: - Roles parameters: - name: scope.project.id in: query schema: type: string - name: scope.domain.id in: query schema: type: string - name: user.id in: query schema: type: string - name: group.id in: query schema: type: string responses: '200': description: Role assignments. components: securitySchemes: TokenAuth: type: apiKey in: header name: X-Auth-Token externalDocs: description: Keystone v3 API reference url: https://docs.openstack.org/api-ref/identity/v3/