STACKIT Roles API

The Roles API from STACKIT — 2 operation(s) for roles.

Operations 5

GET /v2/{resourceType}/{resourceId}/roles Get roles and permissions of a resource #
POST /v2/{resourceType}/{resourceId}/roles Add a new role #
DELETE /v2/{resourceType}/{resourceId}/roles/{roleId} Delete an existing role #
GET /v2/{resourceType}/{resourceId}/roles/{roleId} Get an existing role #
PUT /v2/{resourceType}/{resourceId}/roles/{roleId} Update an existing role #

Specifications

Schemas & Data

📊
JSONSchema
https://artifacts.apis.io/stackit/json-schema/stackit-create-load-balancer-payload-schema.json
📊
JSONSchema
https://artifacts.apis.io/stackit/json-schema/stackit-load-balancer-schema.json
📊
JSONSchema
https://artifacts.apis.io/stackit/json-schema/stackit-update-load-balancer-payload-schema.json
📊
JSONSchema
https://artifacts.apis.io/stackit/json-schema/stackit-get-quota-response-schema.json
📊
JSONSchema
https://artifacts.apis.io/stackit/json-schema/stackit-target-pool-schema.json
📊
JSONSchema
https://artifacts.apis.io/stackit/json-schema/stackit-update-target-pool-payload-schema.json
📊
JSONSchema
https://artifacts.apis.io/stackit/json-schema/stackit-update-wafpayload-schema.json
📊
JSONSchema
https://artifacts.apis.io/stackit/json-schema/stackit-create-wafpayload-schema.json
📊
JSONSchema
https://artifacts.apis.io/stackit/json-schema/stackit-get-wafresponse-schema.json
📊
JSONSchema
https://artifacts.apis.io/stackit/json-schema/stackit-patch-managed-rule-set-payload-schema.json
📊
JSONSchema
https://artifacts.apis.io/stackit/json-schema/stackit-get-managed-rule-set-response-schema.json
📊
JSONSchema
https://artifacts.apis.io/stackit/json-schema/stackit-update-custom-rule-group-payload-schema.json
📊
JSONSchema
https://artifacts.apis.io/stackit/json-schema/stackit-members-response-schema.json
📊
JSONSchema
https://artifacts.apis.io/stackit/json-schema/stackit-list-members-response-schema.json
📊
JSONSchema
https://artifacts.apis.io/stackit/json-schema/stackit-update-role-payload-schema.json
📊
JSONSchema
https://artifacts.apis.io/stackit/json-schema/stackit-add-role-payload-schema.json
📊
JSONSchema
https://artifacts.apis.io/stackit/json-schema/stackit-add-custom-role-response-schema.json
📊
JSONSchema
https://artifacts.apis.io/stackit/json-schema/stackit-roles-response-schema.json
📊
JSONSchema
https://artifacts.apis.io/stackit/json-schema/stackit-volume-automation-schema.json
📊
JSONSchema
https://artifacts.apis.io/stackit/json-schema/stackit-volume-execution-response-schema.json
📊
JSONSchema
https://artifacts.apis.io/stackit/json-schema/stackit-get-volume-template-response-schema.json
📊
JSONSchema
https://artifacts.apis.io/stackit/json-schema/stackit-partial-update-volume-automation-payload-schema.json
📊
JSONSchema
https://artifacts.apis.io/stackit/json-schema/stackit-list-automations-response-schema.json
📊
JSONSchema
https://artifacts.apis.io/stackit/json-schema/stackit-list-executions-response-schema.json
📊
JSONSchema
https://artifacts.apis.io/stackit/json-schema/stackit-create-distribution-payload-schema.json
📊
JSONSchema
https://artifacts.apis.io/stackit/json-schema/stackit-get-logs-search-filters-response-schema.json
📊
JSONSchema
https://artifacts.apis.io/stackit/json-schema/stackit-put-custom-domain-payload-schema.json
📊
JSONSchema
https://artifacts.apis.io/stackit/json-schema/stackit-put-custom-domain-response-schema.json
📊
JSONSchema
https://artifacts.apis.io/stackit/json-schema/stackit-get-custom-domain-response-schema.json
📊
JSONSchema
https://artifacts.apis.io/stackit/json-schema/stackit-get-cache-info-response-schema.json
📊
JSONSchema
https://artifacts.apis.io/stackit/json-schema/stackit-create-certificate-payload-schema.json
📊
JSONSchema
https://artifacts.apis.io/stackit/json-schema/stackit-get-certificate-response-schema.json
📊
JSONSchema
https://artifacts.apis.io/stackit/json-schema/stackit-list-certificates-response-schema.json
📊
JSONSchema
https://artifacts.apis.io/stackit/json-schema/stackit-delete-certificate-response-schema.json
📊
JSONSchema
https://artifacts.apis.io/stackit/json-schema/stackit-project-cost-schema.json
📊
JSONSchema
https://artifacts.apis.io/stackit/json-schema/stackit-create-zone-payload-schema.json
📊
JSONSchema
https://artifacts.apis.io/stackit/json-schema/stackit-partial-update-zone-payload-schema.json
📊
JSONSchema
https://artifacts.apis.io/stackit/json-schema/stackit-create-record-set-payload-schema.json
📊
JSONSchema
https://artifacts.apis.io/stackit/json-schema/stackit-clone-zone-payload-schema.json
📊
JSONSchema
https://artifacts.apis.io/stackit/json-schema/stackit-partial-update-record-set-payload-schema.json
📊
JSONSchema
https://artifacts.apis.io/stackit/json-schema/stackit-move-zone-payload-schema.json
📊
JSONSchema
https://artifacts.apis.io/stackit/json-schema/stackit-dremio-user-response-schema.json
📊
JSONSchema
https://artifacts.apis.io/stackit/json-schema/stackit-dremio-response-schema.json
📊
JSONSchema
https://artifacts.apis.io/stackit/json-schema/stackit-create-dremio-user-payload-schema.json
📊
JSONSchema
https://artifacts.apis.io/stackit/json-schema/stackit-create-dremio-instance-payload-schema.json
📊
JSONSchema
https://artifacts.apis.io/stackit/json-schema/stackit-update-dremio-instance-payload-schema.json
📊
JSONSchema
https://artifacts.apis.io/stackit/json-schema/stackit-list-dremio-users-response-schema.json
📊
JSONSchema
https://artifacts.apis.io/stackit/json-schema/stackit-instance-schema.json
📊
JSONSchema
https://artifacts.apis.io/stackit/json-schema/stackit-create-instance-payload-schema.json
📊
JSONSchema
https://artifacts.apis.io/stackit/json-schema/stackit-kubernetes-release-list-schema.json
📊
JSONSchema
https://artifacts.apis.io/stackit/json-schema/stackit-update-instance-by-name-payload-schema.json
📊
JSONSchema
https://artifacts.apis.io/stackit/json-schema/stackit-update-instance-payload-schema.json
📊
JSONSchema
https://artifacts.apis.io/stackit/json-schema/stackit-instance-list-schema.json
📊
JSONSchema
https://artifacts.apis.io/stackit/json-schema/stackit-revision-schema.json
📊
JSONSchema
https://artifacts.apis.io/stackit/json-schema/stackit-create-function-revision-payload-schema.json
📊
JSONSchema
https://artifacts.apis.io/stackit/json-schema/stackit-create-function-payload-schema.json
📊
JSONSchema
https://artifacts.apis.io/stackit/json-schema/stackit-function-schema.json
📊
JSONSchema
https://artifacts.apis.io/stackit/json-schema/stackit-create-pull-credential-payload-schema.json
📊
JSONSchema
https://artifacts.apis.io/stackit/json-schema/stackit-pull-credential-schema.json
📊
JSONSchema
https://artifacts.apis.io/stackit/json-schema/stackit-authentication-schema.json
📊
JSONSchema
https://artifacts.apis.io/stackit/json-schema/stackit-server-schema.json
📊
JSONSchema
https://artifacts.apis.io/stackit/json-schema/stackit-route-schema.json
📊
JSONSchema
https://artifacts.apis.io/stackit/json-schema/stackit-create-nic-payload-schema.json
📊
JSONSchema
https://artifacts.apis.io/stackit/json-schema/stackit-nic-schema.json
📊
JSONSchema
https://artifacts.apis.io/stackit/json-schema/stackit-create-image-payload-schema.json
📊
JSONSchema
https://artifacts.apis.io/stackit/json-schema/stackit-image-schema.json
📊
JSONSchema
https://artifacts.apis.io/stackit/json-schema/stackit-intake-response-schema.json
📊
JSONSchema
https://artifacts.apis.io/stackit/json-schema/stackit-intake-runner-response-schema.json
📊
JSONSchema
https://artifacts.apis.io/stackit/json-schema/stackit-intake-user-response-schema.json
📊
JSONSchema
https://artifacts.apis.io/stackit/json-schema/stackit-update-intake-payload-schema.json
📊
JSONSchema
https://artifacts.apis.io/stackit/json-schema/stackit-update-intake-runner-payload-schema.json
📊
JSONSchema
https://artifacts.apis.io/stackit/json-schema/stackit-create-intake-user-payload-schema.json
📊
JSONSchema
https://artifacts.apis.io/stackit/json-schema/stackit-key-schema.json
📊
JSONSchema
https://artifacts.apis.io/stackit/json-schema/stackit-wrapping-key-schema.json
📊
JSONSchema
https://artifacts.apis.io/stackit/json-schema/stackit-version-schema.json
📊
JSONSchema
https://artifacts.apis.io/stackit/json-schema/stackit-create-key-payload-schema.json
📊
JSONSchema
https://artifacts.apis.io/stackit/json-schema/stackit-key-ring-schema.json
📊
JSONSchema
https://artifacts.apis.io/stackit/json-schema/stackit-create-wrapping-key-payload-schema.json
📊
JSONSchema
https://artifacts.apis.io/stackit/json-schema/stackit-upload-iplist-payload-schema.json
📊
JSONSchema
https://artifacts.apis.io/stackit/json-schema/stackit-get-iplist-response-schema.json
📊
JSONSchema
https://artifacts.apis.io/stackit/json-schema/stackit-list-iplists-response-schema.json
📊
JSONSchema
https://artifacts.apis.io/stackit/json-schema/stackit-delete-iplist-response-schema.json
📊
JSONSchema
https://artifacts.apis.io/stackit/json-schema/stackit-get-metrics-response-schema.json
📊
JSONSchema
https://artifacts.apis.io/stackit/json-schema/stackit-get-updates-response-schema.json
📊
JSONSchema
https://artifacts.apis.io/stackit/json-schema/stackit-update-updates-settings-payload-schema.json
📊
JSONSchema
https://artifacts.apis.io/stackit/json-schema/stackit-update-updates-settings-response-schema.json
📊
JSONSchema
https://artifacts.apis.io/stackit/json-schema/stackit-logs-instance-schema.json
📊
JSONSchema
https://artifacts.apis.io/stackit/json-schema/stackit-access-token-schema.json
📊
JSONSchema
https://artifacts.apis.io/stackit/json-schema/stackit-create-logs-instance-payload-schema.json
📊
JSONSchema
https://artifacts.apis.io/stackit/json-schema/stackit-update-logs-instance-payload-schema.json
📊
JSONSchema
https://artifacts.apis.io/stackit/json-schema/stackit-create-access-token-payload-schema.json
📊
JSONSchema
https://artifacts.apis.io/stackit/json-schema/stackit-access-policy-schema.json
📊
JSONSchema
https://artifacts.apis.io/stackit/json-schema/stackit-create-instance-token-payload-schema.json
📊
JSONSchema
https://artifacts.apis.io/stackit/json-schema/stackit-partial-update-instance-payload-schema.json
📊
JSONSchema
https://artifacts.apis.io/stackit/json-schema/stackit-partial-update-instance-token-payload-schema.json
📊
JSONSchema
https://artifacts.apis.io/stackit/json-schema/stackit-list-instance-tokens-response-schema.json
📊
JSONSchema
https://artifacts.apis.io/stackit/json-schema/stackit-list-instances-response-schema.json
📊
JSONSchema
https://artifacts.apis.io/stackit/json-schema/stackit-create-token-payload-schema.json
📊
JSONSchema
https://artifacts.apis.io/stackit/json-schema/stackit-partial-update-token-payload-schema.json
📊
JSONSchema
https://artifacts.apis.io/stackit/json-schema/stackit-list-models-response-schema.json
📊
JSONSchema
https://artifacts.apis.io/stackit/json-schema/stackit-list-token-resp-schema.json
📊
JSONSchema
https://artifacts.apis.io/stackit/json-schema/stackit-get-embeddings-model-resp-schema.json
📊
JSONSchema
https://artifacts.apis.io/stackit/json-schema/stackit-get-chat-model-response-schema.json
📊
JSONSchema
https://artifacts.apis.io/stackit/json-schema/stackit-create-user-payload-schema.json
📊
JSONSchema
https://artifacts.apis.io/stackit/json-schema/stackit-user-schema.json
📊
JSONSchema
https://artifacts.apis.io/stackit/json-schema/stackit-update-user-payload-schema.json
📊
JSONSchema
https://artifacts.apis.io/stackit/json-schema/stackit-create-access-key-response-schema.json
📊
JSONSchema
https://artifacts.apis.io/stackit/json-schema/stackit-project-status-schema.json
📊
JSONSchema
https://artifacts.apis.io/stackit/json-schema/stackit-default-retention-response-schema.json
📊
JSONSchema
https://artifacts.apis.io/stackit/json-schema/stackit-delete-credentials-group-response-schema.json
📊
JSONSchema
https://artifacts.apis.io/stackit/json-schema/stackit-delete-access-key-response-schema.json
📊
JSONSchema
https://artifacts.apis.io/stackit/json-schema/stackit-update-alert-configs-payload-schema.json
📊
JSONSchema
https://artifacts.apis.io/stackit/json-schema/stackit-create-scrape-config-payload-schema.json
📊
JSONSchema
https://artifacts.apis.io/stackit/json-schema/stackit-update-scrape-config-payload-schema.json
📊
JSONSchema
https://artifacts.apis.io/stackit/json-schema/stackit-create-alert-config-route-payload-schema.json
📊
JSONSchema
https://artifacts.apis.io/stackit/json-schema/stackit-update-alert-config-route-payload-schema.json
📊
JSONSchema
https://artifacts.apis.io/stackit/json-schema/stackit-create-alert-config-receiver-payload-schema.json
📊
JSONSchema
https://artifacts.apis.io/stackit/json-schema/stackit-search-skus-payload-schema.json
📊
JSONSchema
https://artifacts.apis.io/stackit/json-schema/stackit-public-sku-schema.json
📊
JSONSchema
https://artifacts.apis.io/stackit/json-schema/stackit-public-marketing-data-schema.json
📊
JSONSchema
https://artifacts.apis.io/stackit/json-schema/stackit-public-product-schema.json
📊
JSONSchema
https://artifacts.apis.io/stackit/json-schema/stackit-public-category-schema.json
📊
JSONSchema
https://artifacts.apis.io/stackit/json-schema/stackit-meta-information-schema.json
📊
JSONSchema
https://artifacts.apis.io/stackit/json-schema/stackit-get-instance-response-schema.json
📊
JSONSchema
https://artifacts.apis.io/stackit/json-schema/stackit-topic-response-schema.json
📊
JSONSchema
https://artifacts.apis.io/stackit/json-schema/stackit-subscription-response-schema.json
📊
JSONSchema
https://artifacts.apis.io/stackit/json-schema/stackit-create-subscription-payload-schema.json
📊
JSONSchema
https://artifacts.apis.io/stackit/json-schema/stackit-create-topic-payload-schema.json
📊
JSONSchema
https://artifacts.apis.io/stackit/json-schema/stackit-update-subscription-payload-schema.json
📊
JSONSchema
https://artifacts.apis.io/stackit/json-schema/stackit-update-topic-payload-schema.json
📊
JSONSchema
https://artifacts.apis.io/stackit/json-schema/stackit-artifactory-schema.json
📊
JSONSchema
https://artifacts.apis.io/stackit/json-schema/stackit-create-artifactory-payload-schema.json
📊
JSONSchema
https://artifacts.apis.io/stackit/json-schema/stackit-replication-adapter-list-schema.json
📊
JSONSchema
https://artifacts.apis.io/stackit/json-schema/stackit-artifactory-list-schema.json
📊
JSONSchema
https://artifacts.apis.io/stackit/json-schema/stackit-patch-artifactory-payload-schema.json
📊
JSONSchema
https://artifacts.apis.io/stackit/json-schema/stackit-list-organizations-response-schema.json
📊
JSONSchema
https://artifacts.apis.io/stackit/json-schema/stackit-list-folders-response-schema.json
📊
JSONSchema
https://artifacts.apis.io/stackit/json-schema/stackit-get-project-response-schema.json
📊
JSONSchema
https://artifacts.apis.io/stackit/json-schema/stackit-project-schema.json
📊
JSONSchema
https://artifacts.apis.io/stackit/json-schema/stackit-organization-response-schema.json
📊
JSONSchema
https://artifacts.apis.io/stackit/json-schema/stackit-get-folder-details-response-schema.json
📊
JSONSchema
https://artifacts.apis.io/stackit/json-schema/stackit-command-details-schema.json
📊
JSONSchema
https://artifacts.apis.io/stackit/json-schema/stackit-command-template-schema-schema.json
📊
JSONSchema
https://artifacts.apis.io/stackit/json-schema/stackit-create-command-payload-schema.json
📊
JSONSchema
https://artifacts.apis.io/stackit/json-schema/stackit-command-template-response-schema.json
📊
JSONSchema
https://artifacts.apis.io/stackit/json-schema/stackit-get-commands-response-schema.json
📊
JSONSchema
https://artifacts.apis.io/stackit/json-schema/stackit-new-command-response-schema.json
📊
JSONSchema
https://artifacts.apis.io/stackit/json-schema/stackit-application-schema.json
📊
JSONSchema
https://artifacts.apis.io/stackit/json-schema/stackit-create-application-payload-schema.json
📊
JSONSchema
https://artifacts.apis.io/stackit/json-schema/stackit-update-application-payload-schema.json
📊
JSONSchema
https://artifacts.apis.io/stackit/json-schema/stackit-create-environment-payload-schema.json
📊
JSONSchema
https://artifacts.apis.io/stackit/json-schema/stackit-environment-schema.json
📊
JSONSchema
https://artifacts.apis.io/stackit/json-schema/stackit-list-applications-response-schema.json
📊
JSONSchema
https://artifacts.apis.io/stackit/json-schema/stackit-quota-schema.json
📊
JSONSchema
https://artifacts.apis.io/stackit/json-schema/stackit-organization-schema.json
📊
JSONSchema
https://artifacts.apis.io/stackit/json-schema/stackit-org-manager-response-schema.json
📊
JSONSchema
https://artifacts.apis.io/stackit/json-schema/stackit-org-manager-schema.json
📊
JSONSchema
https://artifacts.apis.io/stackit/json-schema/stackit-space-schema.json
📊
JSONSchema
https://artifacts.apis.io/stackit/json-schema/stackit-platforms-schema.json
📊
JSONSchema
https://artifacts.apis.io/stackit/json-schema/stackit-approle-schema.json

Work with this as data

Every API here is available over the APIs.io API and to AI agents over MCP.

MCP server

One button, every client — Claude, Cursor, VS Code and the rest.

https://apis.io/mcp

Tools for apis

7 MCP tools reach this
  • find_apisBrowse and filter every API in the catalog.
  • get_api_artifactsOne API's artifacts, grouped by type.
  • get_openapiThe primary OpenAPI for this API.
  • find_similar_apisAPIs that look like this one.
  • apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.
  • resolveTurn a domain, URL or GitHub org into the provider it belongs to.
  • find_cohortsEvery scored population of providers in the catalog.
All 92 tools →

Call it yourself

curl for this page
This API
curl "https://apis.io/api/v1/apis/stackit:stackit-roles-api"
All apis
curl "https://apis.io/api/v1/apis?limit=25"

Discovery needs no key. Ratings and market analysis are Pro.

Get an API key

Free tier, no form to fill in. Signing in shares your email address with us — we store it to create your key and to recognise you if you sign in with another provider. See our Privacy Policy and Terms.

A second provider on the same verified email joins the account you already have.

OpenAPI Specification

stackit-roles-api-openapi.yml Raw ↑
openapi: 3.2.0
info:
  title: Stackit Roles API
  version: '2.0'
  x-refined-note:
  - x-source differs across the merged source definitions and was not carried
  description: 'Operations tagged Roles across 2 of this provider''s published API definitions: stackit-authorization-v2.json, stackit-authorization-openapi.yml. Each path carries the servers of the definition it was published in.'
servers:
- url: https://authorization.api.stackit.cloud
  variables:
    region:
      default: global
tags:
- name: Roles
paths:
  /v2/{resourceType}/{resourceId}/roles:
    get:
      operationId: ListRoles
      parameters:
      - in: path
        name: resourceType
        required: true
        schema:
          type: string
      - in: path
        name: resourceId
        required: true
        schema:
          type: string
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/RolesResponse'
          description: OK
        '400':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
          description: Malformed input
        '401':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
          description: Unauthorized
        '403':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
          description: Forbidden
      summary: Get roles and permissions of a resource
      x-stackit-authorization:
        disabled: true
        implicit-actions:
        - iam.role.get
      tags:
      - Roles
    post:
      description: Add new, user specified roles to a resource, and bind permissions to them. Permissions are predefined.
      operationId: AddRole
      parameters:
      - in: path
        name: resourceType
        required: true
        schema:
          type: string
      - in: path
        name: resourceId
        required: true
        schema:
          type: string
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/AddRolePayload'
        required: true
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/AddCustomRoleResponse'
          description: OK
        '400':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
          description: Malformed input
        '401':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
          description: Unauthorized
        '403':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
          description: Forbidden
      summary: Add a new role
      x-stackit-authorization:
        disabled: true
        implicit-actions:
        - iam.role.add
      tags:
      - Roles
    servers:
    - url: https://authorization.api.stackit.cloud
      variables:
        region:
          default: global
  /v2/{resourceType}/{resourceId}/roles/{roleId}:
    delete:
      description: Delete a custom role by ID.
      operationId: DeleteRole
      parameters:
      - in: path
        name: resourceType
        required: true
        schema:
          type: string
      - in: path
        name: resourceId
        required: true
        schema:
          type: string
      - in: path
        name: roleId
        required: true
        schema:
          type: string
      - in: query
        name: etag
        schema:
          type: string
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/DeleteRoleResponse'
          description: OK
        '400':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
          description: Malformed input
        '401':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
          description: Unauthorized
        '403':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
          description: Forbidden
      summary: Delete an existing role
      x-stackit-authorization:
        disabled: true
        implicit-actions:
        - iam.role.remove
      tags:
      - Roles
    get:
      description: Get a custom role by ID.
      operationId: GetRole
      parameters:
      - in: path
        name: resourceType
        required: true
        schema:
          type: string
      - in: path
        name: resourceId
        required: true
        schema:
          type: string
      - in: path
        name: roleId
        required: true
        schema:
          type: string
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/GetRoleResponse'
          description: OK
        '400':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
          description: Malformed input
        '401':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
          description: Unauthorized
        '403':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
          description: Forbidden
      summary: Get an existing role
      x-stackit-authorization:
        disabled: true
        implicit-actions:
        - iam.role.get
      tags:
      - Roles
    put:
      description: Update a custom role by ID.
      operationId: UpdateRole
      parameters:
      - in: path
        name: resourceType
        required: true
        schema:
          type: string
      - in: path
        name: resourceId
        required: true
        schema:
          type: string
      - in: path
        name: roleId
        required: true
        schema:
          type: string
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/UpdateRolePayload'
        required: true
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UpdateRoleResponse'
          description: OK
        '400':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
          description: Malformed input
        '401':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
          description: Unauthorized
        '403':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
          description: Forbidden
      summary: Update an existing role
      x-stackit-authorization:
        disabled: true
        implicit-actions:
        - iam.role.edit
      tags:
      - Roles
    servers:
    - url: https://authorization.api.stackit.cloud
      variables:
        region:
          default: global
components:
  schemas:
    Permission:
      properties:
        description:
          example: Can create projects in an organization
          maxLength: 255
          minLength: 1
          title: A human readable description of the permission
          type: string
        name:
          example: iam.member.read
          maxLength: 255
          pattern: ^[a-z](?:[-.]?[a-z]){1,63}$
          title: Permission name
          type: string
      required:
      - name
      - description
      type: object
    ErrorResponse:
      example:
        error: Bad Request
        message: Some information about what caused the Error
        path: /v1/path/which/returned/error
        status: 400
        timeStamp: '2019-08-24T14:15:22Z'
      properties:
        error:
          type: string
        message:
          type: string
        path:
          type: string
        status:
          type: integer
        timeStamp:
          format: date-time
          type: string
      required:
      - timeStamp
      - path
      - status
      - error
      - message
      type: object
    RolesResponse:
      properties:
        resourceId:
          example: schwarz-it-kg-WJACUK1
          pattern: ^([a-zA-Z0-9/_|\-=+@.]{1,})$
          title: The ID of the resource, where the members should be updated
          type: string
        resourceType:
          example: organization
          pattern: ^[a-z](?:-?[a-z]){1,63}$
          title: Resource type
          type: string
        roles:
          items:
            $ref: '#/components/schemas/Role'
          title: Roles
          type: array
      required:
      - resourceId
      - resourceType
      - roles
      type: object
    UpdateRoleResponse:
      properties:
        resourceId:
          example: schwarz-it-kg-WJACUK1
          pattern: ^([a-zA-Z0-9/_|\-=+@.]{1,})$
          title: The ID of the resource in which the role was updated.
          type: string
        resourceType:
          example: organization
          pattern: ^[a-z](?:-?[a-z]){1,63}$
          title: Resource type of the resource in which the role was updated.
          type: string
        role:
          $ref: '#/components/schemas/Role'
      required:
      - resourceId
      - resourceType
      - role
      type: object
    GetRoleResponse:
      properties:
        resourceId:
          example: schwarz-it-kg-WJACUK1
          pattern: ^([a-zA-Z0-9/_|\-=+@.]{1,})$
          title: The ID of the resource from which the role was fetched.
          type: string
        resourceType:
          example: organization
          pattern: ^[a-z](?:-?[a-z]){1,63}$
          title: Resource type of the resource from which the role was fetched.
          type: string
        role:
          $ref: '#/components/schemas/Role'
      required:
      - resourceId
      - resourceType
      - role
      type: object
    PermissionRequest:
      properties:
        name:
          example: iam.member.read
          maxLength: 255
          pattern: ^[a-z](?:[-.]?[a-z]){1,63}$
          title: Existing permission
          type: string
      required:
      - name
      type: object
    UpdateRolePayload:
      properties:
        description:
          example: Role for the development team.
          maxLength: 255
          minLength: 1
          title: A human readable description of the role
          type: string
        etag:
          type: string
        name:
          example: dev-team
          pattern: ^[a-z](?:[-.]?[a-z]){1,63}$
          title: Name and of the role.
          type: string
        permissions:
          items:
            $ref: '#/components/schemas/PermissionRequest'
          title: Permissions for the role.
          type: array
      required:
      - name
      - description
      - permissions
      type: object
    AddCustomRoleResponse:
      properties:
        resourceId:
          example: schwarz-it-kg-WJACUK1
          pattern: ^([a-zA-Z0-9/_|\-=+@.]{1,})$
          title: ID of the resource to which the new role has been added.
          type: string
        resourceType:
          example: organization
          pattern: ^[a-z](?:-?[a-z]){1,63}$
          title: Resource type of the resource to which the new role has been added.
          type: string
        role:
          $ref: '#/components/schemas/Role'
      required:
      - resourceId
      - resourceType
      - role
      type: object
    DeleteRoleResponse:
      properties:
        writtenAt:
          $ref: '#/components/schemas/Zookie'
      required:
      - writtenAt
      type: object
    Role:
      properties:
        description:
          example: An owner of the project
          maxLength: 255
          title: A human readable description of the role
          type: string
        etag:
          type: string
        id:
          example: 029527b4-a8c0-4f0b-8a70-516a24cd23001
          pattern: ^([a-zA-Z0-9/_|\-=+]{1,})$
          title: The ID of the role.
          type: string
        name:
          example: my-owner
          pattern: ^[a-z](?:[-.]?[a-z]){1,63}$
          title: Name and identifier of the role.
          type: string
        permissions:
          items:
            $ref: '#/components/schemas/Permission'
          title: Permissions for the role
          type: array
      required:
      - name
      - description
      - permissions
      type: object
    Zookie:
      properties:
        zookie:
          type: string
      type: object
    AddRolePayload:
      properties:
        description:
          example: Role for the development team.
          maxLength: 255
          minLength: 1
          title: A human readable description of the role
          type: string
        name:
          example: dev-team
          pattern: ^[a-z](?:[-.]?[a-z]){1,63}$
          title: Name of the role.
          type: string
        permissions:
          items:
            $ref: '#/components/schemas/PermissionRequest'
          title: Permissions for the role.
          type: array
      required:
      - name
      - description
      - permissions
      type: object
x-refined-from:
- stackit-authorization-v2.json
- stackit-authorization-openapi.yml