{
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "$id": "https://artifacts.apis.io/aiven/json-schema/aiven-permissions-update-request-body-schema.json",
  "title": "PermissionsUpdateRequestBody",
  "description": "PermissionsUpdateRequestBody",
  "x-generated": "2026-11-10",
  "x-method": "derived",
  "x-generator": "derive-json-schema.py",
  "x-source": "openapi/aiven-permissions-api-openapi.yml#/components/schemas/PermissionsUpdateRequestBody",
  "type": "object",
  "properties": {
    "operation": {
      "type": "string",
      "description": "An enumeration.",
      "title": "Operation to perform",
      "default": "set",
      "enum": [
        "grant",
        "set",
        "revoke"
      ]
    },
    "permissions": {
      "type": "array",
      "description": "List of roles to adjust",
      "items": {
        "type": "object",
        "properties": {
          "permissions": {
            "type": "array",
            "description": "List of roles",
            "items": {
              "type": "string"
            }
          },
          "principal_id": {
            "type": "string",
            "description": "ID of the principal"
          },
          "principal_type": {
            "type": "string",
            "description": "An enumeration.",
            "title": "Type of the principal",
            "enum": [
              "user",
              "user_group"
            ]
          }
        },
        "required": [
          "permissions",
          "principal_id",
          "principal_type"
        ]
      }
    }
  },
  "required": [
    "permissions"
  ]
}