{
  "openapi": "3.1.1",
  "info": {
    "title": "MonoCloud Management API",
    "description": "The MonoCloud Management API provides endpoints for configuring and managing identity infrastructure, including clients, protected resources, users, groups, security controls, cryptographic keys, mTLS configuration, and platform settings within the MonoCloud platform.",
    "termsOfService": "https://www.monocloud.com/terms",
    "contact": {
      "name": "Support",
      "url": "https://www.monocloud.com/contact",
      "email": "support@monocloud.com"
    },
    "license": {
      "name": "MIT License",
      "identifier": "MIT"
    },
    "version": "0.0.1"
  },
  "servers": [
    {
      "url": "https://{tenant}.{region}.monocloud.com/api",
      "variables": {
        "tenant": {
          "default": "your-domain",
          "description": "Your MonoCloud tenant subdomain"
        },
        "region": {
          "default": "us",
          "description": "Your MonoCloud tenant's region",
          "enum": [
            "us",
            "eu",
            "in"
          ]
        }
      }
    }
  ],
  "paths": {
    "/applications": {
      "get": {
        "tags": [
          "Clients"
        ],
        "summary": "List applications",
        "description": "Retrieves a paginated list of applications. Optional query parameters allow searching, filtering, and sorting the results.",
        "operationId": "GetAllApplications",
        "parameters": [
          {
            "name": "page",
            "in": "query",
            "description": "The page number to retrieve.",
            "schema": {
              "minimum": 1,
              "type": "integer",
              "format": "int32",
              "default": 1
            },
            "example": 1
          },
          {
            "name": "size",
            "in": "query",
            "description": "The number of client applications to return per page.",
            "schema": {
              "maximum": 50,
              "minimum": 1,
              "type": "integer",
              "format": "int32",
              "default": 10
            },
            "example": 10
          },
          {
            "name": "filter",
            "in": "query",
            "description": "Optional Lucene-style filter expression used to search by attributes.",
            "schema": {
              "type": "string"
            },
            "example": "home"
          },
          {
            "name": "sort",
            "in": "query",
            "description": "Sort expression in the format `field:direction`, where direction is `1` for ascending or `-1` for descending. Supported fields include - `client_name` and `creation_time`",
            "schema": {
              "type": "string"
            },
            "example": "client_name:1"
          }
        ],
        "responses": {
          "200": {
            "description": "The applications were retrieved successfully",
            "headers": {
              "x-Pagination": {
                "description": "Returns the x-Pagination header",
                "schema": {
                  "$ref": "#/components/schemas/PaginationHeader"
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "type": "array",
                  "items": {
                    "$ref": "#/components/schemas/Application"
                  }
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized"
          },
          "403": {
            "description": "Forbidden"
          }
        },
        "security": [
          {
            "API-Key": [ ]
          }
        ],
        "x-codeSamples": [
          {
            "lang": "csharp",
            "label": "MonoCloud .NET SDK",
            "source": "using MonoCloud.Management;\nusing MonoCloud.Management.Core.Base;\n\nvar apiClient = new MonoCloudManagementClient(new MonoCloudConfig(\"<your-domain>\", \"[[API-Key]]\"));\n\n\nvar page = 1;\n\nvar size = 10;\n\nvar filter = \"home\";\n\nvar sort = \"client_name:1\";\n\n\nvar result = await apiClient.Clients.GetAllApplicationsAsync(page, size, filter, sort);"
          },
          {
            "lang": "javascript",
            "label": "MonoCloud Javascript SDK",
            "source": "import { MonoCloudManagementClient } from '@monocloud/management';\n\nconst apiClient = MonoCloudManagementClient.init({ domain: '<your-domain>', apiKey: '[[API-Key]]' });\n\nconst page = 1;\n\nconst size = 10;\n\nconst filter = 'home';\n\nconst sort = 'client_name:1';\n\nconst result = apiClient.clients.getAllApplications(page, size, filter, sort);"
          }
        ]
      },
      "post": {
        "tags": [
          "Clients"
        ],
        "summary": "Create a application",
        "description": "Creates a new application with the specified configuration, including\nredirect URIs, authentication flows, and access settings.",
        "operationId": "CreateApplication",
        "requestBody": {
          "description": "The request payload used to create a application.",
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/CreateApplicationRequest"
              }
            }
          },
          "required": true
        },
        "responses": {
          "201": {
            "description": "The application was created successfully",
            "headers": {
              "location": {
                "description": "Returns the location header",
                "schema": {
                  "type": "string",
                  "format": "uri"
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Application"
                }
              }
            }
          },
          "400": {
            "description": "Bad Request",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                },
                "examples": {
                  "BadRequest": {
                    "$ref": "#/components/examples/BadRequest"
                  }
                }
              }
            }
          },
          "402": {
            "description": "Payment Required",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                },
                "examples": {
                  "PaymentRequired": {
                    "$ref": "#/components/examples/PaymentRequired"
                  }
                }
              }
            }
          },
          "422": {
            "description": "Unprocessable Entity",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/KeyValidationProblemDetails"
                },
                "examples": {
                  "KeyValidationError": {
                    "$ref": "#/components/examples/KeyValidationError"
                  }
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized"
          },
          "403": {
            "description": "Forbidden"
          }
        },
        "security": [
          {
            "API-Key": [ ]
          }
        ],
        "x-codeSamples": [
          {
            "lang": "csharp",
            "label": "MonoCloud .NET SDK",
            "source": "using MonoCloud.Management;\nusing MonoCloud.Management.Models;\nusing MonoCloud.Management.Core.Base;\n\nvar apiClient = new MonoCloudManagementClient(new MonoCloudConfig(\"<your-domain>\", \"[[API-Key]]\"));\n\n\nvar requestBody = new CreateApplicationRequest\n  {\n    Enabled = true,\n    AppType = ApplicationTypes.Spa,\n    TechType = TechTypes.Javascript,\n    RequireClientSecret = true,\n    ClientName = \"Accounting Dashboard\",\n    Description = \"Handles financial reporting, general ledger maintenance, and related operations.\",\n    ClientUri = \"https://www.organization/accounting\",\n    LogoUri = \"https://www.organization/accounting_logo.png\",\n    EnableConsent = false,\n    RequireConsent = false,\n    AlwaysRequireConsentForOfflineAccess = false,\n    RememberConsent = RememberConsentTypes.UserSelected,\n    ShowConsentScopeSelection = true,\n    AlwaysIncludeUserClaimsInIdToken = false,\n    AllowedGrantTypes = new List<GrantTypes>\n    {\n      GrantTypes.Hybrid,\n      GrantTypes.DeviceCode,\n    },\n    RequirePkce = true,\n    AllowPlainTextPkce = false,\n    RequireRequestObject = false,\n    RequirePushedAuthorizationRequests = false,\n    AllowAnyPushedAuthorizationRedirectUri = false,\n    AuthorizationRequestLifetime = 600,\n    AllowAccessTokensViaBrowser = false,\n    RedirectUris = new List<string>\n    {\n      \"https://www.organization/accounting/redirect1\",\n      \"https://www.organization/hr/redirect\",\n    },\n    PostLogoutRedirectUris = new List<string>\n    {\n      \"https://www.organization/accounting/loggedout\",\n      \"https://www.organization/hr/loggedout\",\n    },\n    FrontChannelLogoutUri = \"https://www.organization/accounting/frontLogout\",\n    FrontChannelLogoutSessionRequired = true,\n    BackChannelLogoutUri = \"https://www.organization/accounting/backLogout\",\n    BackChannelLogoutSessionRequired = true,\n    BindRefreshTokensToSession = true,\n    AllowOfflineAccess = false,\n    AllowedIdentityScopes = new List<string>\n    {\n      \"openid\",\n      \"profile\",\n      \"email\",\n    },\n    IdentityTokenLifetime = 300,\n    AccessTokenLifetime = 3600,\n    AuthorizationCodeLifetime = 300,\n    ConsentLifetime = 604800,\n    AbsoluteRefreshTokenLifetime = 2592000,\n    SlidingRefreshTokenLifetime = 1296000,\n    RefreshTokenUsage = RefreshTokenUsageTypes.OneTimeOnly,\n    UpdateAccessTokenClaimsOnRefresh = false,\n    EmitOfflineAccessScopeInAccessToken = false,\n    RefreshTokenExpiration = RefreshTokenExpirationTypes.Absolute,\n    AccessTokenType = AccessTokenTypes.Jwt,\n    AuthenticatorRestrictions = new List<string>\n    {\n      \"email\",\n      \"google\",\n    },\n    Claims = new Dictionary<string, object>(),\n    AlwaysSendClientClaims = false,\n    ClientClaimsPrefix = \"client_\",\n    AllowedCorsOrigins = new List<string>\n    {\n      \"https://accounting.organization\",\n      \"https://hr.organization\",\n    },\n    UserSsoLifetime = 604800,\n    DeviceCodeLength = 6,\n    DeviceCodeLifetime = 180,\n    AutoGenerateSecret = false,\n  };\n\n\nvar result = await apiClient.Clients.CreateApplicationAsync(requestBody);"
          },
          {
            "lang": "javascript",
            "label": "MonoCloud Javascript SDK",
            "source": "import { MonoCloudManagementClient } from '@monocloud/management';\n\nconst apiClient = MonoCloudManagementClient.init({ domain: '<your-domain>', apiKey: '[[API-Key]]' });\n\nconst requestBody = {\n  enabled: true,\n  app_type: 'spa',\n  tech_type: 'javascript',\n  require_client_secret: true,\n  client_name: 'Accounting Dashboard',\n  description: 'Handles financial reporting, general ledger maintenance, and related operations.',\n  client_uri: 'https://www.organization/accounting',\n  logo_uri: 'https://www.organization/accounting_logo.png',\n  enable_consent: false,\n  require_consent: false,\n  always_require_consent_for_offline_access: false,\n  remember_consent: 'user_selected',\n  show_consent_scope_selection: true,\n  always_include_user_claims_in_id_token: false,\n  allowed_grant_types: [\n    'hybrid',\n    'device_code'\n  ],\n  require_pkce: true,\n  allow_plain_text_pkce: false,\n  require_request_object: false,\n  require_pushed_authorization_requests: false,\n  allow_any_pushed_authorization_redirect_uri: false,\n  authorization_request_lifetime: 600,\n  allow_access_tokens_via_browser: false,\n  redirect_uris: [\n    'https://www.organization/accounting/redirect1',\n    'https://www.organization/hr/redirect'\n  ],\n  post_logout_redirect_uris: [\n    'https://www.organization/accounting/loggedout',\n    'https://www.organization/hr/loggedout'\n  ],\n  front_channel_logout_uri: 'https://www.organization/accounting/frontLogout',\n  front_channel_logout_session_required: true,\n  back_channel_logout_uri: 'https://www.organization/accounting/backLogout',\n  back_channel_logout_session_required: true,\n  bind_refresh_tokens_to_session: true,\n  allow_offline_access: false,\n  allowed_identity_scopes: [\n    'openid',\n    'profile',\n    'email'\n  ],\n  identity_token_lifetime: 300,\n  access_token_lifetime: 3600,\n  authorization_code_lifetime: 300,\n  consent_lifetime: 604800,\n  absolute_refresh_token_lifetime: 2592000,\n  sliding_refresh_token_lifetime: 1296000,\n  refresh_token_usage: 'one_time_only',\n  update_access_token_claims_on_refresh: false,\n  emit_offline_access_scope_in_access_token: false,\n  refresh_token_expiration: 'absolute',\n  access_token_type: 'jwt',\n  authenticator_restrictions: [\n    'email',\n    'google'\n  ],\n  claims: {\n  },\n  always_send_client_claims: false,\n  client_claims_prefix: 'client_',\n  allowed_cors_origins: [\n    'https://accounting.organization',\n    'https://hr.organization'\n  ],\n  user_sso_lifetime: 604800,\n  device_code_length: 6,\n  device_code_lifetime: 180,\n  auto_generate_secret: false\n};\n\nconst result = apiClient.clients.createApplication(requestBody);"
          }
        ]
      }
    },
    "/applications/{client_id}": {
      "get": {
        "tags": [
          "Clients"
        ],
        "summary": "Retrieve a application",
        "description": "Retrieves detailed information for the specified application.",
        "operationId": "FindApplicationById",
        "parameters": [
          {
            "name": "client_id",
            "in": "path",
            "description": "The unique identifier of the application.",
            "required": true,
            "schema": {
              "type": "string"
            },
            "example": "eCOGRJYpnNwwAAuCeReEW"
          }
        ],
        "responses": {
          "200": {
            "description": "The application was retrieved successfully",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Application"
                }
              }
            }
          },
          "404": {
            "description": "Not Found",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                },
                "examples": {
                  "NotFound": {
                    "$ref": "#/components/examples/NotFound"
                  }
                }
              }
            }
          },
          "422": {
            "description": "Unprocessable Entity",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/KeyValidationProblemDetails"
                },
                "examples": {
                  "KeyValidationError": {
                    "$ref": "#/components/examples/KeyValidationError"
                  }
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized"
          },
          "403": {
            "description": "Forbidden"
          }
        },
        "security": [
          {
            "API-Key": [ ]
          }
        ],
        "x-codeSamples": [
          {
            "lang": "csharp",
            "label": "MonoCloud .NET SDK",
            "source": "using MonoCloud.Management;\nusing MonoCloud.Management.Core.Base;\n\nvar apiClient = new MonoCloudManagementClient(new MonoCloudConfig(\"<your-domain>\", \"[[API-Key]]\"));\n\n\nvar clientId = \"eCOGRJYpnNwwAAuCeReEW\";\n\n\nvar result = await apiClient.Clients.FindApplicationByIdAsync(clientId);"
          },
          {
            "lang": "javascript",
            "label": "MonoCloud Javascript SDK",
            "source": "import { MonoCloudManagementClient } from '@monocloud/management';\n\nconst apiClient = MonoCloudManagementClient.init({ domain: '<your-domain>', apiKey: '[[API-Key]]' });\n\nconst clientId = 'eCOGRJYpnNwwAAuCeReEW';\n\nconst result = apiClient.clients.findApplicationById(clientId);"
          }
        ]
      },
      "patch": {
        "tags": [
          "Clients"
        ],
        "summary": "Update a application",
        "description": "Applies a partial update to the specified application. Only fields included in the request are updated.",
        "operationId": "PatchApplication",
        "parameters": [
          {
            "name": "client_id",
            "in": "path",
            "description": "The unique identifier of the application.",
            "required": true,
            "schema": {
              "type": "string"
            },
            "example": "eCOGRJYpnNwwAAuCeReEW"
          }
        ],
        "requestBody": {
          "description": "The request payload used to update a application.",
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/PatchApplicationRequest"
              }
            }
          },
          "required": true
        },
        "responses": {
          "200": {
            "description": "The application was updated successfully",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Application"
                }
              }
            }
          },
          "400": {
            "description": "Bad Request",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                },
                "examples": {
                  "BadRequest": {
                    "$ref": "#/components/examples/BadRequest"
                  }
                }
              }
            }
          },
          "404": {
            "description": "Not Found",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                },
                "examples": {
                  "NotFound": {
                    "$ref": "#/components/examples/NotFound"
                  }
                }
              }
            }
          },
          "402": {
            "description": "Payment Required",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                },
                "examples": {
                  "PaymentRequired": {
                    "$ref": "#/components/examples/PaymentRequired"
                  }
                }
              }
            }
          },
          "422": {
            "description": "Unprocessable Entity",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/KeyValidationProblemDetails"
                },
                "examples": {
                  "KeyValidationError": {
                    "$ref": "#/components/examples/KeyValidationError"
                  }
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized"
          },
          "403": {
            "description": "Forbidden"
          }
        },
        "security": [
          {
            "API-Key": [ ]
          }
        ],
        "x-codeSamples": [
          {
            "lang": "csharp",
            "label": "MonoCloud .NET SDK",
            "source": "using MonoCloud.Management;\nusing MonoCloud.Management.Models;\nusing MonoCloud.Management.Core.Base;\n\nvar apiClient = new MonoCloudManagementClient(new MonoCloudConfig(\"<your-domain>\", \"[[API-Key]]\"));\n\n\nvar clientId = \"eCOGRJYpnNwwAAuCeReEW\";\n\nvar requestBody = new PatchApplicationRequest\n  {\n    Enabled = true,\n    AppType = ApplicationTypes.Spa,\n    TechType = TechTypes.Javascript,\n    RequireClientSecret = true,\n    ClientName = \"Accounting Dashboard\",\n    Description = \"Handles financial reporting, general ledger maintenance, and related operations.\",\n    ClientUri = \"https://www.organization/accounting\",\n    LogoUri = \"https://www.organization/accounting_logo.png\",\n    EnableConsent = false,\n    RequireConsent = false,\n    AlwaysRequireConsentForOfflineAccess = false,\n    RememberConsent = RememberConsentTypes.UserSelected,\n    ShowConsentScopeSelection = true,\n    AlwaysIncludeUserClaimsInIdToken = false,\n    AllowedGrantTypes = new List<GrantTypes>\n    {\n      GrantTypes.Hybrid,\n      GrantTypes.DeviceCode,\n    },\n    RequirePkce = true,\n    AllowPlainTextPkce = false,\n    RequireRequestObject = false,\n    RequirePushedAuthorizationRequests = false,\n    AllowAnyPushedAuthorizationRedirectUri = false,\n    AuthorizationRequestLifetime = 600,\n    AllowAccessTokensViaBrowser = false,\n    RedirectUris = new List<string>\n    {\n      \"https://www.organization/accounting/redirect1\",\n      \"https://www.organization/hr/redirect\",\n    },\n    PostLogoutRedirectUris = new List<string>\n    {\n      \"https://www.organization/accounting/loggedout\",\n      \"https://www.organization/hr/loggedout\",\n    },\n    FrontChannelLogoutUri = \"https://www.organization/accounting/frontLogout\",\n    FrontChannelLogoutSessionRequired = true,\n    BackChannelLogoutUri = \"https://www.organization/accounting/backLogout\",\n    BackChannelLogoutSessionRequired = true,\n    BindRefreshTokensToSession = true,\n    AllowOfflineAccess = false,\n    AllowedIdentityScopes = new List<string>\n    {\n      \"openid\",\n      \"profile\",\n      \"email\",\n    },\n    IdentityTokenLifetime = 300,\n    AccessTokenLifetime = 3600,\n    AuthorizationCodeLifetime = 300,\n    ConsentLifetime = 604800,\n    AbsoluteRefreshTokenLifetime = 2592000,\n    SlidingRefreshTokenLifetime = 1296000,\n    RefreshTokenUsage = RefreshTokenUsageTypes.OneTimeOnly,\n    UpdateAccessTokenClaimsOnRefresh = false,\n    EmitOfflineAccessScopeInAccessToken = false,\n    RefreshTokenExpiration = RefreshTokenExpirationTypes.Absolute,\n    AccessTokenType = AccessTokenTypes.Jwt,\n    AuthenticatorRestrictions = new List<string>\n    {\n      \"email\",\n      \"google\",\n    },\n    Claims = new Dictionary<string, object>(),\n    AlwaysSendClientClaims = false,\n    ClientClaimsPrefix = \"client_\",\n    AllowedCorsOrigins = new List<string>\n    {\n      \"https://accounting.organization\",\n      \"https://hr.organization\",\n    },\n    UserSsoLifetime = 604800,\n    DeviceCodeLength = 6,\n    DeviceCodeLifetime = 180,\n  };\n\n\nvar result = await apiClient.Clients.PatchApplicationAsync(clientId, requestBody);"
          },
          {
            "lang": "javascript",
            "label": "MonoCloud Javascript SDK",
            "source": "import { MonoCloudManagementClient } from '@monocloud/management';\n\nconst apiClient = MonoCloudManagementClient.init({ domain: '<your-domain>', apiKey: '[[API-Key]]' });\n\nconst clientId = 'eCOGRJYpnNwwAAuCeReEW';\n\nconst requestBody = {\n  enabled: true,\n  app_type: 'spa',\n  tech_type: 'javascript',\n  require_client_secret: true,\n  client_name: 'Accounting Dashboard',\n  description: 'Handles financial reporting, general ledger maintenance, and related operations.',\n  client_uri: 'https://www.organization/accounting',\n  logo_uri: 'https://www.organization/accounting_logo.png',\n  enable_consent: false,\n  require_consent: false,\n  always_require_consent_for_offline_access: false,\n  remember_consent: 'user_selected',\n  show_consent_scope_selection: true,\n  always_include_user_claims_in_id_token: false,\n  allowed_grant_types: [\n    'hybrid',\n    'device_code'\n  ],\n  require_pkce: true,\n  allow_plain_text_pkce: false,\n  require_request_object: false,\n  require_pushed_authorization_requests: false,\n  allow_any_pushed_authorization_redirect_uri: false,\n  authorization_request_lifetime: 600,\n  allow_access_tokens_via_browser: false,\n  redirect_uris: [\n    'https://www.organization/accounting/redirect1',\n    'https://www.organization/hr/redirect'\n  ],\n  post_logout_redirect_uris: [\n    'https://www.organization/accounting/loggedout',\n    'https://www.organization/hr/loggedout'\n  ],\n  front_channel_logout_uri: 'https://www.organization/accounting/frontLogout',\n  front_channel_logout_session_required: true,\n  back_channel_logout_uri: 'https://www.organization/accounting/backLogout',\n  back_channel_logout_session_required: true,\n  bind_refresh_tokens_to_session: true,\n  allow_offline_access: false,\n  allowed_identity_scopes: [\n    'openid',\n    'profile',\n    'email'\n  ],\n  identity_token_lifetime: 300,\n  access_token_lifetime: 3600,\n  authorization_code_lifetime: 300,\n  consent_lifetime: 604800,\n  absolute_refresh_token_lifetime: 2592000,\n  sliding_refresh_token_lifetime: 1296000,\n  refresh_token_usage: 'one_time_only',\n  update_access_token_claims_on_refresh: false,\n  emit_offline_access_scope_in_access_token: false,\n  refresh_token_expiration: 'absolute',\n  access_token_type: 'jwt',\n  authenticator_restrictions: [\n    'email',\n    'google'\n  ],\n  claims: {\n  },\n  always_send_client_claims: false,\n  client_claims_prefix: 'client_',\n  allowed_cors_origins: [\n    'https://accounting.organization',\n    'https://hr.organization'\n  ],\n  user_sso_lifetime: 604800,\n  device_code_length: 6,\n  device_code_lifetime: 180\n};\n\nconst result = apiClient.clients.patchApplication(clientId, requestBody);"
          }
        ]
      },
      "delete": {
        "tags": [
          "Clients"
        ],
        "summary": "Delete a application",
        "description": "Permanently deletes the specified application.\n>[!warning]\n> This operation is irreversible.",
        "operationId": "DeleteApplication",
        "parameters": [
          {
            "name": "client_id",
            "in": "path",
            "description": "The unique identifier of the application.",
            "required": true,
            "schema": {
              "type": "string"
            },
            "example": "eCOGRJYpnNwwAAuCeReEW"
          }
        ],
        "responses": {
          "204": {
            "description": "The application was deleted successfully"
          },
          "404": {
            "description": "Not Found",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                },
                "examples": {
                  "NotFound": {
                    "$ref": "#/components/examples/NotFound"
                  }
                }
              }
            }
          },
          "422": {
            "description": "Unprocessable Entity",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/KeyValidationProblemDetails"
                },
                "examples": {
                  "KeyValidationError": {
                    "$ref": "#/components/examples/KeyValidationError"
                  }
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized"
          },
          "403": {
            "description": "Forbidden"
          }
        },
        "security": [
          {
            "API-Key": [ ]
          }
        ],
        "x-codeSamples": [
          {
            "lang": "csharp",
            "label": "MonoCloud .NET SDK",
            "source": "using MonoCloud.Management;\nusing MonoCloud.Management.Core.Base;\n\nvar apiClient = new MonoCloudManagementClient(new MonoCloudConfig(\"<your-domain>\", \"[[API-Key]]\"));\n\n\nvar clientId = \"eCOGRJYpnNwwAAuCeReEW\";\n\n\nvar result = await apiClient.Clients.DeleteApplicationAsync(clientId);"
          },
          {
            "lang": "javascript",
            "label": "MonoCloud Javascript SDK",
            "source": "import { MonoCloudManagementClient } from '@monocloud/management';\n\nconst apiClient = MonoCloudManagementClient.init({ domain: '<your-domain>', apiKey: '[[API-Key]]' });\n\nconst clientId = 'eCOGRJYpnNwwAAuCeReEW';\n\nconst result = apiClient.clients.deleteApplication(clientId);"
          }
        ]
      }
    },
    "/applications/{client_id}/secrets": {
      "get": {
        "tags": [
          "Clients"
        ],
        "summary": "List application secrets",
        "description": "Retrieves a list of secrets associated with the application.",
        "operationId": "GetAllApplicationSecrets",
        "parameters": [
          {
            "name": "client_id",
            "in": "path",
            "description": "The unique identifier of the application.",
            "required": true,
            "schema": {
              "type": "string"
            },
            "example": "eCOGRJYpnNwwAAuCeReEW"
          }
        ],
        "responses": {
          "200": {
            "description": "The application secrets were retrieved successfully",
            "content": {
              "application/json": {
                "schema": {
                  "type": "array",
                  "items": {
                    "$ref": "#/components/schemas/Secret"
                  }
                }
              }
            }
          },
          "404": {
            "description": "Not Found"
          },
          "422": {
            "description": "Unprocessable Entity",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/KeyValidationProblemDetails"
                },
                "examples": {
                  "KeyValidationError": {
                    "$ref": "#/components/examples/KeyValidationError"
                  }
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized"
          },
          "403": {
            "description": "Forbidden"
          }
        },
        "security": [
          {
            "API-Key": [ ]
          }
        ],
        "x-codeSamples": [
          {
            "lang": "csharp",
            "label": "MonoCloud .NET SDK",
            "source": "using MonoCloud.Management;\nusing MonoCloud.Management.Core.Base;\n\nvar apiClient = new MonoCloudManagementClient(new MonoCloudConfig(\"<your-domain>\", \"[[API-Key]]\"));\n\n\nvar clientId = \"eCOGRJYpnNwwAAuCeReEW\";\n\n\nvar result = await apiClient.Clients.GetAllApplicationSecretsAsync(clientId);"
          },
          {
            "lang": "javascript",
            "label": "MonoCloud Javascript SDK",
            "source": "import { MonoCloudManagementClient } from '@monocloud/management';\n\nconst apiClient = MonoCloudManagementClient.init({ domain: '<your-domain>', apiKey: '[[API-Key]]' });\n\nconst clientId = 'eCOGRJYpnNwwAAuCeReEW';\n\nconst result = apiClient.clients.getAllApplicationSecrets(clientId);"
          }
        ]
      },
      "post": {
        "tags": [
          "Clients"
        ],
        "summary": "Create a application secret",
        "description": "Creates a new secret credential for the specified application, which can be used to authenticate the application when requesting tokens.",
        "operationId": "CreateApplicationSecret",
        "parameters": [
          {
            "name": "client_id",
            "in": "path",
            "description": "The unique identifier of the application.",
            "required": true,
            "schema": {
              "type": "string"
            },
            "example": "eCOGRJYpnNwwAAuCeReEW"
          }
        ],
        "requestBody": {
          "description": "The request payload used to create a application secret.",
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/CreateSecretRequest"
              }
            }
          },
          "required": true
        },
        "responses": {
          "201": {
            "description": "The application secret was created successfully",
            "headers": {
              "location": {
                "description": "Returns the location header",
                "schema": {
                  "type": "string",
                  "format": "uri"
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Secret"
                }
              }
            }
          },
          "400": {
            "description": "Bad Request",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                },
                "examples": {
                  "BadRequest": {
                    "$ref": "#/components/examples/BadRequest"
                  }
                }
              }
            }
          },
          "404": {
            "description": "Not Found",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                },
                "examples": {
                  "NotFound": {
                    "$ref": "#/components/examples/NotFound"
                  }
                }
              }
            }
          },
          "402": {
            "description": "Payment Required",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                },
                "examples": {
                  "PaymentRequired": {
                    "$ref": "#/components/examples/PaymentRequired"
                  }
                }
              }
            }
          },
          "422": {
            "description": "Unprocessable Entity",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/KeyValidationProblemDetails"
                },
                "examples": {
                  "KeyValidationError": {
                    "$ref": "#/components/examples/KeyValidationError"
                  }
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized"
          },
          "403": {
            "description": "Forbidden"
          }
        },
        "security": [
          {
            "API-Key": [ ]
          }
        ],
        "x-codeSamples": [
          {
            "lang": "csharp",
            "label": "MonoCloud .NET SDK",
            "source": "using MonoCloud.Management;\nusing MonoCloud.Management.Models;\nusing MonoCloud.Management.Core.Base;\n\nvar apiClient = new MonoCloudManagementClient(new MonoCloudConfig(\"<your-domain>\", \"[[API-Key]]\"));\n\n\nvar clientId = \"eCOGRJYpnNwwAAuCeReEW\";\n\nvar requestBody = new CreateSecretRequest\n  {\n    Description = \"Banking App Client Secret\",\n    Expiration = DateTime.Parse(\"1640975400\"),\n    Type = SecretTypes.SharedSecret,\n    SecretValue = \"d2980ac62d2e58d316728dba55ce\",\n  };\n\n\nvar result = await apiClient.Clients.CreateApplicationSecretAsync(clientId, requestBody);"
          },
          {
            "lang": "javascript",
            "label": "MonoCloud Javascript SDK",
            "source": "import { MonoCloudManagementClient } from '@monocloud/management';\n\nconst apiClient = MonoCloudManagementClient.init({ domain: '<your-domain>', apiKey: '[[API-Key]]' });\n\nconst clientId = 'eCOGRJYpnNwwAAuCeReEW';\n\nconst requestBody = {\n  description: 'Banking App Client Secret',\n  expiration: '1640975400',\n  type: 'shared_secret',\n  secret_value: 'd2980ac62d2e58d316728dba55ce'\n};\n\nconst result = apiClient.clients.createApplicationSecret(clientId, requestBody);"
          }
        ]
      }
    },
    "/applications/{client_id}/secrets/{secret_id}": {
      "get": {
        "tags": [
          "Clients"
        ],
        "summary": "Retrieve a application secret",
        "description": "Retrieves detailed information for the specified application secret.",
        "operationId": "FindApplicationSecretById",
        "parameters": [
          {
            "name": "client_id",
            "in": "path",
            "description": "The unique identifier of the application.",
            "required": true,
            "schema": {
              "type": "string"
            },
            "example": "eCOGRJYpnNwwAAuCeReEW"
          },
          {
            "name": "secret_id",
            "in": "path",
            "description": "The unique identifier of the application secret.",
            "required": true,
            "schema": {
              "type": "string"
            },
            "example": "nAOFrfCB51t7uteBoAO5l"
          }
        ],
        "responses": {
          "200": {
            "description": "The application secret was retrieved successfully",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Secret"
                }
              }
            }
          },
          "404": {
            "description": "Not Found",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                },
                "examples": {
                  "NotFound": {
                    "$ref": "#/components/examples/NotFound"
                  }
                }
              }
            }
          },
          "422": {
            "description": "Unprocessable Entity",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/KeyValidationProblemDetails"
                },
                "examples": {
                  "KeyValidationError": {
                    "$ref": "#/components/examples/KeyValidationError"
                  }
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized"
          },
          "403": {
            "description": "Forbidden"
          }
        },
        "security": [
          {
            "API-Key": [ ]
          }
        ],
        "x-codeSamples": [
          {
            "lang": "csharp",
            "label": "MonoCloud .NET SDK",
            "source": "using MonoCloud.Management;\nusing MonoCloud.Management.Core.Base;\n\nvar apiClient = new MonoCloudManagementClient(new MonoCloudConfig(\"<your-domain>\", \"[[API-Key]]\"));\n\n\nvar clientId = \"eCOGRJYpnNwwAAuCeReEW\";\n\nvar secretId = \"nAOFrfCB51t7uteBoAO5l\";\n\n\nvar result = await apiClient.Clients.FindApplicationSecretByIdAsync(clientId, secretId);"
          },
          {
            "lang": "javascript",
            "label": "MonoCloud Javascript SDK",
            "source": "import { MonoCloudManagementClient } from '@monocloud/management';\n\nconst apiClient = MonoCloudManagementClient.init({ domain: '<your-domain>', apiKey: '[[API-Key]]' });\n\nconst clientId = 'eCOGRJYpnNwwAAuCeReEW';\n\nconst secretId = 'nAOFrfCB51t7uteBoAO5l';\n\nconst result = apiClient.clients.findApplicationSecretById(clientId, secretId);"
          }
        ]
      },
      "delete": {
        "tags": [
          "Clients"
        ],
        "summary": "Delete a application secret",
        "description": "Permanently deletes the specified application secret.\n>[!warning]\n> This operation is irreversible. Any applications using this secret will immediately fail authentication.",
        "operationId": "DeleteApplicationSecret",
        "parameters": [
          {
            "name": "client_id",
            "in": "path",
            "description": "The unique identifier of the application.",
            "required": true,
            "schema": {
              "type": "string"
            },
            "example": "eCOGRJYpnNwwAAuCeReEW"
          },
          {
            "name": "secret_id",
            "in": "path",
            "description": "The unique identifier of the application secret.",
            "required": true,
            "schema": {
              "type": "string"
            },
            "example": "nAOFrfCB51t7uteBoAO5l"
          }
        ],
        "responses": {
          "204": {
            "description": "The application secret was deleted successfully"
          },
          "404": {
            "description": "Not Found",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                },
                "examples": {
                  "NotFound": {
                    "$ref": "#/components/examples/NotFound"
                  }
                }
              }
            }
          },
          "422": {
            "description": "Unprocessable Entity",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/KeyValidationProblemDetails"
                },
                "examples": {
                  "KeyValidationError": {
                    "$ref": "#/components/examples/KeyValidationError"
                  }
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized"
          },
          "403": {
            "description": "Forbidden"
          }
        },
        "security": [
          {
            "API-Key": [ ]
          }
        ],
        "x-codeSamples": [
          {
            "lang": "csharp",
            "label": "MonoCloud .NET SDK",
            "source": "using MonoCloud.Management;\nusing MonoCloud.Management.Core.Base;\n\nvar apiClient = new MonoCloudManagementClient(new MonoCloudConfig(\"<your-domain>\", \"[[API-Key]]\"));\n\n\nvar clientId = \"eCOGRJYpnNwwAAuCeReEW\";\n\nvar secretId = \"nAOFrfCB51t7uteBoAO5l\";\n\n\nvar result = await apiClient.Clients.DeleteApplicationSecretAsync(clientId, secretId);"
          },
          {
            "lang": "javascript",
            "label": "MonoCloud Javascript SDK",
            "source": "import { MonoCloudManagementClient } from '@monocloud/management';\n\nconst apiClient = MonoCloudManagementClient.init({ domain: '<your-domain>', apiKey: '[[API-Key]]' });\n\nconst clientId = 'eCOGRJYpnNwwAAuCeReEW';\n\nconst secretId = 'nAOFrfCB51t7uteBoAO5l';\n\nconst result = apiClient.clients.deleteApplicationSecret(clientId, secretId);"
          }
        ]
      }
    },
    "/applications/{client_id}/groups": {
      "get": {
        "tags": [
          "Clients"
        ],
        "summary": "List application's groups",
        "description": "Retrieves a paginated list of groups associated with the application. Optional query parameters allow sorting of the results.",
        "operationId": "GetAllApplicationGroups",
        "parameters": [
          {
            "name": "client_id",
            "in": "path",
            "description": "The unique identifier of the application.",
            "required": true,
            "schema": {
              "type": "string"
            },
            "example": "eCOGRJYpnNwwAAuCeReEW"
          },
          {
            "name": "page",
            "in": "query",
            "description": "The page number to retrieve.",
            "schema": {
              "minimum": 1,
              "type": "integer",
              "format": "int32",
              "default": 1
            },
            "example": 1
          },
          {
            "name": "size",
            "in": "query",
            "description": "The number of groups to return per page.",
            "schema": {
              "maximum": 50,
              "minimum": 1,
              "type": "integer",
              "format": "int32",
              "default": 10
            },
            "example": 10
          },
          {
            "name": "sort",
            "in": "query",
            "description": "Sort expression in the format `field:direction`, where direction is `1` for ascending or `-1` for descending. Supported fields include - `creation_time`.",
            "schema": {
              "type": "string"
            },
            "example": "creation_time:1"
          }
        ],
        "responses": {
          "200": {
            "description": "The application's group associations were retrieved successfully",
            "headers": {
              "x-Pagination": {
                "description": "Returns the x-Pagination header",
                "schema": {
                  "$ref": "#/components/schemas/PaginationHeader"
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "type": "array",
                  "items": {
                    "$ref": "#/components/schemas/ApplicationGroup"
                  }
                }
              }
            }
          },
          "404": {
            "description": "Not Found"
          },
          "422": {
            "description": "Unprocessable Entity",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/KeyValidationProblemDetails"
                },
                "examples": {
                  "KeyValidationError": {
                    "$ref": "#/components/examples/KeyValidationError"
                  }
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized"
          },
          "403": {
            "description": "Forbidden"
          }
        },
        "security": [
          {
            "API-Key": [ ]
          }
        ],
        "x-codeSamples": [
          {
            "lang": "csharp",
            "label": "MonoCloud .NET SDK",
            "source": "using MonoCloud.Management;\nusing MonoCloud.Management.Core.Base;\n\nvar apiClient = new MonoCloudManagementClient(new MonoCloudConfig(\"<your-domain>\", \"[[API-Key]]\"));\n\n\nvar clientId = \"eCOGRJYpnNwwAAuCeReEW\";\n\nvar page = 1;\n\nvar size = 10;\n\nvar sort = \"creation_time:1\";\n\n\nvar result = await apiClient.Clients.GetAllApplicationGroupsAsync(clientId, page, size, sort);"
          },
          {
            "lang": "javascript",
            "label": "MonoCloud Javascript SDK",
            "source": "import { MonoCloudManagementClient } from '@monocloud/management';\n\nconst apiClient = MonoCloudManagementClient.init({ domain: '<your-domain>', apiKey: '[[API-Key]]' });\n\nconst clientId = 'eCOGRJYpnNwwAAuCeReEW';\n\nconst page = 1;\n\nconst size = 10;\n\nconst sort = 'creation_time:1';\n\nconst result = apiClient.clients.getAllApplicationGroups(clientId, page, size, sort);"
          }
        ]
      }
    },
    "/applications/{client_id}/groups/{group_id}": {
      "get": {
        "tags": [
          "Clients"
        ],
        "summary": "Retrieve a application group",
        "description": "Retrieves information about the specified group and its association with the application.",
        "operationId": "FindApplicationGroup",
        "parameters": [
          {
            "name": "client_id",
            "in": "path",
            "description": "The unique identifier of the application.",
            "required": true,
            "schema": {
              "type": "string"
            },
            "example": "eCOGRJYpnNwwAAuCeReEW"
          },
          {
            "name": "group_id",
            "in": "path",
            "description": "The unique identifier of the group.",
            "required": true,
            "schema": {
              "type": "string",
              "format": "uuid"
            },
            "example": "70b712ac-d96d-476b-b39b-249ad11de1a2"
          }
        ],
        "responses": {
          "200": {
            "description": "The application's group association was retrieved successfully",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApplicationGroup"
                }
              }
            }
          },
          "404": {
            "description": "Not Found",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                },
                "examples": {
                  "NotFound": {
                    "$ref": "#/components/examples/NotFound"
                  }
                }
              }
            }
          },
          "422": {
            "description": "Unprocessable Entity",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/KeyValidationProblemDetails"
                },
                "examples": {
                  "KeyValidationError": {
                    "$ref": "#/components/examples/KeyValidationError"
                  }
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized"
          },
          "403": {
            "description": "Forbidden"
          }
        },
        "security": [
          {
            "API-Key": [ ]
          }
        ],
        "x-codeSamples": [
          {
            "lang": "csharp",
            "label": "MonoCloud .NET SDK",
            "source": "using MonoCloud.Management;\nusing MonoCloud.Management.Core.Base;\n\nvar apiClient = new MonoCloudManagementClient(new MonoCloudConfig(\"<your-domain>\", \"[[API-Key]]\"));\n\n\nvar clientId = \"eCOGRJYpnNwwAAuCeReEW\";\n\nvar groupId = Guid.Parse(\"70b712ac-d96d-476b-b39b-249ad11de1a2\");\n\n\nvar result = await apiClient.Clients.FindApplicationGroupAsync(clientId, groupId);"
          },
          {
            "lang": "javascript",
            "label": "MonoCloud Javascript SDK",
            "source": "import { MonoCloudManagementClient } from '@monocloud/management';\n\nconst apiClient = MonoCloudManagementClient.init({ domain: '<your-domain>', apiKey: '[[API-Key]]' });\n\nconst clientId = 'eCOGRJYpnNwwAAuCeReEW';\n\nconst groupId = '70b712ac-d96d-476b-b39b-249ad11de1a2';\n\nconst result = apiClient.clients.findApplicationGroup(clientId, groupId);"
          }
        ]
      },
      "post": {
        "tags": [
          "Clients"
        ],
        "summary": "Assign a group to a application",
        "description": "Associates a group with the application and enforces group-based access control — only members of this group are permitted to access the application.\n>[!note]\n> Access to this endpoint requires an active ScaleX subscription.",
        "operationId": "AssignGroupToApplication",
        "parameters": [
          {
            "name": "client_id",
            "in": "path",
            "description": "The unique identifier of the application.",
            "required": true,
            "schema": {
              "type": "string"
            },
            "example": "eCOGRJYpnNwwAAuCeReEW"
          },
          {
            "name": "group_id",
            "in": "path",
            "description": "The unique identifier of the group.",
            "required": true,
            "schema": {
              "type": "string",
              "format": "uuid"
            },
            "example": "70b712ac-d96d-476b-b39b-249ad11de1a2"
          }
        ],
        "responses": {
          "201": {
            "description": "The group was assigned to the application successfully"
          },
          "404": {
            "description": "Not Found",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                },
                "examples": {
                  "NotFound": {
                    "$ref": "#/components/examples/NotFound"
                  }
                }
              }
            }
          },
          "409": {
            "description": "Conflict",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                },
                "examples": {
                  "Conflict": {
                    "$ref": "#/components/examples/Conflict"
                  }
                }
              }
            }
          },
          "402": {
            "description": "Payment Required",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                },
                "examples": {
                  "PaymentRequired": {
                    "$ref": "#/components/examples/PaymentRequired"
                  }
                }
              }
            }
          },
          "422": {
            "description": "Unprocessable Entity",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/KeyValidationProblemDetails"
                },
                "examples": {
                  "KeyValidationError": {
                    "$ref": "#/components/examples/KeyValidationError"
                  }
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized"
          },
          "403": {
            "description": "Forbidden"
          }
        },
        "security": [
          {
            "API-Key": [ ]
          }
        ],
        "x-badges": [
          {
            "name": "ScaleX",
            "position": "before"
          }
        ],
        "x-codeSamples": [
          {
            "lang": "csharp",
            "label": "MonoCloud .NET SDK",
            "source": "using MonoCloud.Management;\nusing MonoCloud.Management.Core.Base;\n\nvar apiClient = new MonoCloudManagementClient(new MonoCloudConfig(\"<your-domain>\", \"[[API-Key]]\"));\n\n\nvar clientId = \"eCOGRJYpnNwwAAuCeReEW\";\n\nvar groupId = Guid.Parse(\"70b712ac-d96d-476b-b39b-249ad11de1a2\");\n\n\nvar result = await apiClient.Clients.AssignGroupToApplicationAsync(clientId, groupId);"
          },
          {
            "lang": "javascript",
            "label": "MonoCloud Javascript SDK",
            "source": "import { MonoCloudManagementClient } from '@monocloud/management';\n\nconst apiClient = MonoCloudManagementClient.init({ domain: '<your-domain>', apiKey: '[[API-Key]]' });\n\nconst clientId = 'eCOGRJYpnNwwAAuCeReEW';\n\nconst groupId = '70b712ac-d96d-476b-b39b-249ad11de1a2';\n\nconst result = apiClient.clients.assignGroupToApplication(clientId, groupId);"
          }
        ]
      },
      "delete": {
        "tags": [
          "Clients"
        ],
        "summary": "Remove a application from a group",
        "description": "Removes the specified application from the group. After removal, the group will no longer grant access or permissions to this application.\n>[!note]\n> Access to this endpoint requires an active ScaleX subscription.",
        "operationId": "RemoveGroupFromApplication",
        "parameters": [
          {
            "name": "client_id",
            "in": "path",
            "description": "The unique identifier of the application.",
            "required": true,
            "schema": {
              "type": "string"
            },
            "example": "eCOGRJYpnNwwAAuCeReEW"
          },
          {
            "name": "group_id",
            "in": "path",
            "description": "The unique identifier of the group.",
            "required": true,
            "schema": {
              "type": "string",
              "format": "uuid"
            },
            "example": "70b712ac-d96d-476b-b39b-249ad11de1a2"
          }
        ],
        "responses": {
          "204": {
            "description": "The application was removed from the group successfully"
          },
          "404": {
            "description": "Not Found",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                },
                "examples": {
                  "NotFound": {
                    "$ref": "#/components/examples/NotFound"
                  }
                }
              }
            }
          },
          "409": {
            "description": "Conflict",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                },
                "examples": {
                  "Conflict": {
                    "$ref": "#/components/examples/Conflict"
                  }
                }
              }
            }
          },
          "422": {
            "description": "Unprocessable Entity",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/KeyValidationProblemDetails"
                },
                "examples": {
                  "KeyValidationError": {
                    "$ref": "#/components/examples/KeyValidationError"
                  }
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized"
          },
          "403": {
            "description": "Forbidden"
          }
        },
        "security": [
          {
            "API-Key": [ ]
          }
        ],
        "x-badges": [
          {
            "name": "ScaleX",
            "position": "before"
          }
        ],
        "x-codeSamples": [
          {
            "lang": "csharp",
            "label": "MonoCloud .NET SDK",
            "source": "using MonoCloud.Management;\nusing MonoCloud.Management.Core.Base;\n\nvar apiClient = new MonoCloudManagementClient(new MonoCloudConfig(\"<your-domain>\", \"[[API-Key]]\"));\n\n\nvar clientId = \"eCOGRJYpnNwwAAuCeReEW\";\n\nvar groupId = Guid.Parse(\"70b712ac-d96d-476b-b39b-249ad11de1a2\");\n\n\nvar result = await apiClient.Clients.RemoveGroupFromApplicationAsync(clientId, groupId);"
          },
          {
            "lang": "javascript",
            "label": "MonoCloud Javascript SDK",
            "source": "import { MonoCloudManagementClient } from '@monocloud/management';\n\nconst apiClient = MonoCloudManagementClient.init({ domain: '<your-domain>', apiKey: '[[API-Key]]' });\n\nconst clientId = 'eCOGRJYpnNwwAAuCeReEW';\n\nconst groupId = '70b712ac-d96d-476b-b39b-249ad11de1a2';\n\nconst result = apiClient.clients.removeGroupFromApplication(clientId, groupId);"
          }
        ]
      }
    },
    "/applications/groups/{group_id}/assigned": {
      "get": {
        "tags": [
          "Clients"
        ],
        "summary": "List applications in group",
        "description": "Retrieves a paginated list of applications that are assigned to the specified group. Optional query parameters allow searching, filtering, and sorting the results.",
        "operationId": "GetAllGroupAssignedApplications",
        "parameters": [
          {
            "name": "group_id",
            "in": "path",
            "description": "The unique identifier of the group.",
            "required": true,
            "schema": {
              "type": "string",
              "format": "uuid"
            },
            "example": "70b712ac-d96d-476b-b39b-249ad11de1a2"
          },
          {
            "name": "page",
            "in": "query",
            "description": "The page number to retrieve.",
            "schema": {
              "minimum": 1,
              "type": "integer",
              "format": "int32",
              "default": 1
            },
            "example": 1
          },
          {
            "name": "size",
            "in": "query",
            "description": "The number of client applications to return per page.",
            "schema": {
              "maximum": 50,
              "minimum": 1,
              "type": "integer",
              "format": "int32",
              "default": 10
            },
            "example": 10
          },
          {
            "name": "filter",
            "in": "query",
            "description": "Optional Lucene-style filter expression used to search by attributes.",
            "schema": {
              "type": "string"
            },
            "example": "home"
          },
          {
            "name": "sort",
            "in": "query",
            "description": "Sort expression in the format `field:direction`, where direction is `1` for ascending or `-1` for descending. Supported fields include - `client_name` and `creation_time`",
            "schema": {
              "type": "string"
            },
            "example": "client_name:1"
          }
        ],
        "responses": {
          "200": {
            "description": "The applications assigned to the group were retrieved successfully",
            "headers": {
              "x-Pagination": {
                "description": "Returns the x-Pagination header",
                "schema": {
                  "$ref": "#/components/schemas/PaginationHeader"
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "type": "array",
                  "items": {
                    "$ref": "#/components/schemas/Application"
                  }
                }
              }
            }
          },
          "404": {
            "description": "Not Found",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                },
                "examples": {
                  "NotFound": {
                    "$ref": "#/components/examples/NotFound"
                  }
                }
              }
            }
          },
          "422": {
            "description": "Unprocessable Entity",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/KeyValidationProblemDetails"
                },
                "examples": {
                  "KeyValidationError": {
                    "$ref": "#/components/examples/KeyValidationError"
                  }
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized"
          },
          "403": {
            "description": "Forbidden"
          }
        },
        "security": [
          {
            "API-Key": [ ]
          }
        ],
        "x-codeSamples": [
          {
            "lang": "csharp",
            "label": "MonoCloud .NET SDK",
            "source": "using MonoCloud.Management;\nusing MonoCloud.Management.Core.Base;\n\nvar apiClient = new MonoCloudManagementClient(new MonoCloudConfig(\"<your-domain>\", \"[[API-Key]]\"));\n\n\nvar groupId = Guid.Parse(\"70b712ac-d96d-476b-b39b-249ad11de1a2\");\n\nvar page = 1;\n\nvar size = 10;\n\nvar filter = \"home\";\n\nvar sort = \"client_name:1\";\n\n\nvar result = await apiClient.Clients.GetAllGroupAssignedApplicationsAsync(groupId, page, size, filter, sort);"
          },
          {
            "lang": "javascript",
            "label": "MonoCloud Javascript SDK",
            "source": "import { MonoCloudManagementClient } from '@monocloud/management';\n\nconst apiClient = MonoCloudManagementClient.init({ domain: '<your-domain>', apiKey: '[[API-Key]]' });\n\nconst groupId = '70b712ac-d96d-476b-b39b-249ad11de1a2';\n\nconst page = 1;\n\nconst size = 10;\n\nconst filter = 'home';\n\nconst sort = 'client_name:1';\n\nconst result = apiClient.clients.getAllGroupAssignedApplications(groupId, page, size, filter, sort);"
          }
        ]
      }
    },
    "/resources/api_resources": {
      "get": {
        "tags": [
          "Resources"
        ],
        "summary": "List API resources",
        "description": "Retrieves a paginated list of API resources. Optional query parameters allow searching, filtering, and sorting the results.",
        "operationId": "GetAllApiResources",
        "parameters": [
          {
            "name": "page",
            "in": "query",
            "description": "The page number to retrieve.",
            "schema": {
              "minimum": 1,
              "type": "integer",
              "format": "int32",
              "default": 1
            },
            "example": 1
          },
          {
            "name": "size",
            "in": "query",
            "description": "The number of resources to return per page.",
            "schema": {
              "maximum": 50,
              "minimum": 1,
              "type": "integer",
              "format": "int32",
              "default": 10
            },
            "example": 10
          },
          {
            "name": "filter",
            "in": "query",
            "description": "Optional Lucene-style filter expression used to search by attributes.",
            "schema": {
              "type": "string"
            },
            "example": "api"
          },
          {
            "name": "sort",
            "in": "query",
            "description": "Sort expression in the format `field:direction`, where direction is `1` for ascending or `-1` for descending. Supported fields include - `name`, `display_name`, and `creation_time`",
            "schema": {
              "type": "string"
            },
            "example": "creation_time:1"
          }
        ],
        "responses": {
          "200": {
            "description": "The API resources were retrieved successfully",
            "headers": {
              "x-Pagination": {
                "description": "Returns the x-Pagination header",
                "schema": {
                  "$ref": "#/components/schemas/PaginationHeader"
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "type": "array",
                  "items": {
                    "$ref": "#/components/schemas/ApiResource"
                  }
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized"
          },
          "403": {
            "description": "Forbidden"
          }
        },
        "security": [
          {
            "API-Key": [ ]
          }
        ],
        "x-codeSamples": [
          {
            "lang": "csharp",
            "label": "MonoCloud .NET SDK",
            "source": "using MonoCloud.Management;\nusing MonoCloud.Management.Core.Base;\n\nvar apiClient = new MonoCloudManagementClient(new MonoCloudConfig(\"<your-domain>\", \"[[API-Key]]\"));\n\n\nvar page = 1;\n\nvar size = 10;\n\nvar filter = \"api\";\n\nvar sort = \"creation_time:1\";\n\n\nvar result = await apiClient.Resources.GetAllApiResourcesAsync(page, size, filter, sort);"
          },
          {
            "lang": "javascript",
            "label": "MonoCloud Javascript SDK",
            "source": "import { MonoCloudManagementClient } from '@monocloud/management';\n\nconst apiClient = MonoCloudManagementClient.init({ domain: '<your-domain>', apiKey: '[[API-Key]]' });\n\nconst page = 1;\n\nconst size = 10;\n\nconst filter = 'api';\n\nconst sort = 'creation_time:1';\n\nconst result = apiClient.resources.getAllApiResources(page, size, filter, sort);"
          }
        ]
      },
      "post": {
        "tags": [
          "Resources"
        ],
        "summary": "Create an API resource",
        "description": "Creates a new API resource that represents a protected backend or service and can be referenced by clients to request access tokens.",
        "operationId": "CreateApiResource",
        "requestBody": {
          "description": "The request payload used to create an API resource.",
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/CreateApiResourceRequest"
              }
            }
          },
          "required": true
        },
        "responses": {
          "201": {
            "description": "The API resource was created successfully",
            "headers": {
              "location": {
                "description": "Returns the location header",
                "schema": {
                  "type": "string",
                  "format": "uri"
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiResource"
                }
              }
            }
          },
          "400": {
            "description": "Bad Request",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                },
                "examples": {
                  "BadRequest": {
                    "$ref": "#/components/examples/BadRequest"
                  }
                }
              }
            }
          },
          "402": {
            "description": "Payment Required",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                },
                "examples": {
                  "PaymentRequired": {
                    "$ref": "#/components/examples/PaymentRequired"
                  }
                }
              }
            }
          },
          "422": {
            "description": "Unprocessable Entity",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/KeyValidationProblemDetails"
                },
                "examples": {
                  "KeyValidationError": {
                    "$ref": "#/components/examples/KeyValidationError"
                  }
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized"
          },
          "403": {
            "description": "Forbidden"
          }
        },
        "security": [
          {
            "API-Key": [ ]
          }
        ],
        "x-codeSamples": [
          {
            "lang": "csharp",
            "label": "MonoCloud .NET SDK",
            "source": "using MonoCloud.Management;\nusing MonoCloud.Management.Models;\nusing MonoCloud.Management.Core.Base;\n\nvar apiClient = new MonoCloudManagementClient(new MonoCloudConfig(\"<your-domain>\", \"[[API-Key]]\"));\n\n\nvar requestBody = new CreateApiResourceRequest\n  {\n    Enabled = true,\n    DisplayName = \"Designation\",\n    Description = \"Current position in the employed organization\",\n    Audience = \"https://example.com\",\n    AllowMultiAudience = false,\n    AllowUserInfoAccess = true,\n    AccessTokenType = AccessTokenTypes.Jwt,\n    AccessTokenLifetime = 3600,\n    BindTokensToSession = true,\n    IncludeJwtId = true,\n    UserClaims = new List<string>\n    {\n      \"job_title\",\n    },\n    AutoGenerateSecret = false,\n  };\n\n\nvar result = await apiClient.Resources.CreateApiResourceAsync(requestBody);"
          },
          {
            "lang": "javascript",
            "label": "MonoCloud Javascript SDK",
            "source": "import { MonoCloudManagementClient } from '@monocloud/management';\n\nconst apiClient = MonoCloudManagementClient.init({ domain: '<your-domain>', apiKey: '[[API-Key]]' });\n\nconst requestBody = {\n  enabled: true,\n  display_name: 'Designation',\n  description: 'Current position in the employed organization',\n  audience: 'https://example.com',\n  allow_multi_audience: false,\n  allow_user_info_access: true,\n  access_token_type: 'jwt',\n  access_token_lifetime: 3600,\n  bind_tokens_to_session: true,\n  include_jwt_id: true,\n  user_claims: [\n    'job_title'\n  ],\n  auto_generate_secret: false\n};\n\nconst result = apiClient.resources.createApiResource(requestBody);"
          }
        ]
      }
    },
    "/resources/api_resources/{api_id}": {
      "get": {
        "tags": [
          "Resources"
        ],
        "summary": "Retrieve an API resource",
        "description": "Retrieves detailed information for the specified API resource.",
        "operationId": "FindApiResourceById",
        "parameters": [
          {
            "name": "api_id",
            "in": "path",
            "description": "The unique identifier of the API resource.",
            "required": true,
            "schema": {
              "type": "string"
            },
            "example": "n8TniSuy4WN9ROJYNwir6"
          }
        ],
        "responses": {
          "200": {
            "description": "The API resource was retrieved successfully",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiResource"
                }
              }
            }
          },
          "404": {
            "description": "Not Found",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                },
                "examples": {
                  "NotFound": {
                    "$ref": "#/components/examples/NotFound"
                  }
                }
              }
            }
          },
          "422": {
            "description": "Unprocessable Entity",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/KeyValidationProblemDetails"
                },
                "examples": {
                  "KeyValidationError": {
                    "$ref": "#/components/examples/KeyValidationError"
                  }
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized"
          },
          "403": {
            "description": "Forbidden"
          }
        },
        "security": [
          {
            "API-Key": [ ]
          }
        ],
        "x-codeSamples": [
          {
            "lang": "csharp",
            "label": "MonoCloud .NET SDK",
            "source": "using MonoCloud.Management;\nusing MonoCloud.Management.Core.Base;\n\nvar apiClient = new MonoCloudManagementClient(new MonoCloudConfig(\"<your-domain>\", \"[[API-Key]]\"));\n\n\nvar apiId = \"n8TniSuy4WN9ROJYNwir6\";\n\n\nvar result = await apiClient.Resources.FindApiResourceByIdAsync(apiId);"
          },
          {
            "lang": "javascript",
            "label": "MonoCloud Javascript SDK",
            "source": "import { MonoCloudManagementClient } from '@monocloud/management';\n\nconst apiClient = MonoCloudManagementClient.init({ domain: '<your-domain>', apiKey: '[[API-Key]]' });\n\nconst apiId = 'n8TniSuy4WN9ROJYNwir6';\n\nconst result = apiClient.resources.findApiResourceById(apiId);"
          }
        ]
      },
      "patch": {
        "tags": [
          "Resources"
        ],
        "summary": "Update an API resource",
        "description": "Applies a partial update to the specified API resource. Only fields included in the request are updated.",
        "operationId": "PatchApiResource",
        "parameters": [
          {
            "name": "api_id",
            "in": "path",
            "description": "The unique identifier of the API resource.",
            "required": true,
            "schema": {
              "type": "string"
            },
            "example": "n8TniSuy4WN9ROJYNwir6"
          }
        ],
        "requestBody": {
          "description": "The request payload used to update an API resource.",
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/PatchApiResourceRequest"
              }
            }
          },
          "required": true
        },
        "responses": {
          "200": {
            "description": "The API resource was updated successfully",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiResource"
                }
              }
            }
          },
          "400": {
            "description": "Bad Request",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                },
                "examples": {
                  "BadRequest": {
                    "$ref": "#/components/examples/BadRequest"
                  }
                }
              }
            }
          },
          "404": {
            "description": "Not Found",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                },
                "examples": {
                  "NotFound": {
                    "$ref": "#/components/examples/NotFound"
                  }
                }
              }
            }
          },
          "402": {
            "description": "Payment Required",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                },
                "examples": {
                  "PaymentRequired": {
                    "$ref": "#/components/examples/PaymentRequired"
                  }
                }
              }
            }
          },
          "422": {
            "description": "Unprocessable Entity",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/KeyValidationProblemDetails"
                },
                "examples": {
                  "KeyValidationError": {
                    "$ref": "#/components/examples/KeyValidationError"
                  }
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized"
          },
          "403": {
            "description": "Forbidden"
          }
        },
        "security": [
          {
            "API-Key": [ ]
          }
        ],
        "x-codeSamples": [
          {
            "lang": "csharp",
            "label": "MonoCloud .NET SDK",
            "source": "using MonoCloud.Management;\nusing MonoCloud.Management.Models;\nusing MonoCloud.Management.Core.Base;\n\nvar apiClient = new MonoCloudManagementClient(new MonoCloudConfig(\"<your-domain>\", \"[[API-Key]]\"));\n\n\nvar apiId = \"n8TniSuy4WN9ROJYNwir6\";\n\nvar requestBody = new PatchApiResourceRequest\n  {\n    Enabled = true,\n    DisplayName = \"Designation\",\n    Description = \"Current position in the employed organization\",\n    AllowMultiAudience = false,\n    AllowUserInfoAccess = false,\n    UserClaims = new List<string>\n    {\n      \"job_title\",\n    },\n    AccessTokenType = AccessTokenTypes.Jwt,\n    AccessTokenLifetime = 3600,\n    BindTokensToSession = false,\n    IncludeJwtId = true,\n  };\n\n\nvar result = await apiClient.Resources.PatchApiResourceAsync(apiId, requestBody);"
          },
          {
            "lang": "javascript",
            "label": "MonoCloud Javascript SDK",
            "source": "import { MonoCloudManagementClient } from '@monocloud/management';\n\nconst apiClient = MonoCloudManagementClient.init({ domain: '<your-domain>', apiKey: '[[API-Key]]' });\n\nconst apiId = 'n8TniSuy4WN9ROJYNwir6';\n\nconst requestBody = {\n  enabled: true,\n  display_name: 'Designation',\n  description: 'Current position in the employed organization',\n  allow_multi_audience: false,\n  allow_user_info_access: false,\n  user_claims: [\n    'job_title'\n  ],\n  access_token_type: 'jwt',\n  access_token_lifetime: 3600,\n  bind_tokens_to_session: false,\n  include_jwt_id: true\n};\n\nconst result = apiClient.resources.patchApiResource(apiId, requestBody);"
          }
        ]
      },
      "delete": {
        "tags": [
          "Resources"
        ],
        "summary": "Delete an API resource",
        "description": "Permanently deletes the specified API resource and all API scopes defined for it.\n>[!warning]\n> This operation is irreversible.",
        "operationId": "DeleteApiResource",
        "parameters": [
          {
            "name": "api_id",
            "in": "path",
            "description": "The unique identifier of the API resource.",
            "required": true,
            "schema": {
              "type": "string"
            },
            "example": "n8TniSuy4WN9ROJYNwir6"
          }
        ],
        "responses": {
          "204": {
            "description": "The API resource was deleted successfully"
          },
          "404": {
            "description": "Not Found",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                },
                "examples": {
                  "NotFound": {
                    "$ref": "#/components/examples/NotFound"
                  }
                }
              }
            }
          },
          "422": {
            "description": "Unprocessable Entity",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/KeyValidationProblemDetails"
                },
                "examples": {
                  "KeyValidationError": {
                    "$ref": "#/components/examples/KeyValidationError"
                  }
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized"
          },
          "403": {
            "description": "Forbidden"
          }
        },
        "security": [
          {
            "API-Key": [ ]
          }
        ],
        "x-codeSamples": [
          {
            "lang": "csharp",
            "label": "MonoCloud .NET SDK",
            "source": "using MonoCloud.Management;\nusing MonoCloud.Management.Core.Base;\n\nvar apiClient = new MonoCloudManagementClient(new MonoCloudConfig(\"<your-domain>\", \"[[API-Key]]\"));\n\n\nvar apiId = \"n8TniSuy4WN9ROJYNwir6\";\n\n\nvar result = await apiClient.Resources.DeleteApiResourceAsync(apiId);"
          },
          {
            "lang": "javascript",
            "label": "MonoCloud Javascript SDK",
            "source": "import { MonoCloudManagementClient } from '@monocloud/management';\n\nconst apiClient = MonoCloudManagementClient.init({ domain: '<your-domain>', apiKey: '[[API-Key]]' });\n\nconst apiId = 'n8TniSuy4WN9ROJYNwir6';\n\nconst result = apiClient.resources.deleteApiResource(apiId);"
          }
        ]
      }
    },
    "/resources/api_resources/{api_id}/secrets": {
      "get": {
        "tags": [
          "Resources"
        ],
        "summary": "List API resource secrets",
        "description": "Retrieves a list of secrets associated with the API resource.",
        "operationId": "GetAllApiResourceSecrets",
        "parameters": [
          {
            "name": "api_id",
            "in": "path",
            "description": "The unique identifier of the API resource.",
            "required": true,
            "schema": {
              "type": "string"
            },
            "example": "n8TniSuy4WN9ROJYNwir6"
          }
        ],
        "responses": {
          "200": {
            "description": "The API resource secrets were retrieved successfully",
            "content": {
              "application/json": {
                "schema": {
                  "type": "array",
                  "items": {
                    "$ref": "#/components/schemas/Secret"
                  }
                }
              }
            }
          },
          "404": {
            "description": "Not Found",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                },
                "examples": {
                  "NotFound": {
                    "$ref": "#/components/examples/NotFound"
                  }
                }
              }
            }
          },
          "422": {
            "description": "Unprocessable Entity",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/KeyValidationProblemDetails"
                },
                "examples": {
                  "KeyValidationError": {
                    "$ref": "#/components/examples/KeyValidationError"
                  }
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized"
          },
          "403": {
            "description": "Forbidden"
          }
        },
        "security": [
          {
            "API-Key": [ ]
          }
        ],
        "x-codeSamples": [
          {
            "lang": "csharp",
            "label": "MonoCloud .NET SDK",
            "source": "using MonoCloud.Management;\nusing MonoCloud.Management.Core.Base;\n\nvar apiClient = new MonoCloudManagementClient(new MonoCloudConfig(\"<your-domain>\", \"[[API-Key]]\"));\n\n\nvar apiId = \"n8TniSuy4WN9ROJYNwir6\";\n\n\nvar result = await apiClient.Resources.GetAllApiResourceSecretsAsync(apiId);"
          },
          {
            "lang": "javascript",
            "label": "MonoCloud Javascript SDK",
            "source": "import { MonoCloudManagementClient } from '@monocloud/management';\n\nconst apiClient = MonoCloudManagementClient.init({ domain: '<your-domain>', apiKey: '[[API-Key]]' });\n\nconst apiId = 'n8TniSuy4WN9ROJYNwir6';\n\nconst result = apiClient.resources.getAllApiResourceSecrets(apiId);"
          }
        ]
      },
      "post": {
        "tags": [
          "Resources"
        ],
        "summary": "Create an API resource secret",
        "description": "Creates a new secret credential for the API resource, used to authenticate the resource during token introspection.\n>[!note]\n> Access to the API secret creation endpoint requires an active ScaleX subscription.",
        "operationId": "CreateApiResourceSecret",
        "parameters": [
          {
            "name": "api_id",
            "in": "path",
            "description": "The unique identifier of the API resource.",
            "required": true,
            "schema": {
              "type": "string"
            },
            "example": "n8TniSuy4WN9ROJYNwir6"
          }
        ],
        "requestBody": {
          "description": "The request payload used to create an API resource secret.",
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/CreateSecretRequest"
              }
            }
          },
          "required": true
        },
        "responses": {
          "201": {
            "description": "The API resource secret was created successfully",
            "headers": {
              "location": {
                "description": "Returns the location header",
                "schema": {
                  "type": "string",
                  "format": "uri"
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Secret"
                }
              }
            }
          },
          "400": {
            "description": "Bad Request",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                },
                "examples": {
                  "BadRequest": {
                    "$ref": "#/components/examples/BadRequest"
                  }
                }
              }
            }
          },
          "404": {
            "description": "Not Found",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                },
                "examples": {
                  "NotFound": {
                    "$ref": "#/components/examples/NotFound"
                  }
                }
              }
            }
          },
          "402": {
            "description": "Payment Required",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                },
                "examples": {
                  "PaymentRequired": {
                    "$ref": "#/components/examples/PaymentRequired"
                  }
                }
              }
            }
          },
          "422": {
            "description": "Unprocessable Entity",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/KeyValidationProblemDetails"
                },
                "examples": {
                  "KeyValidationError": {
                    "$ref": "#/components/examples/KeyValidationError"
                  }
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized"
          },
          "403": {
            "description": "Forbidden"
          }
        },
        "security": [
          {
            "API-Key": [ ]
          }
        ],
        "x-badges": [
          {
            "name": "ScaleX",
            "position": "before"
          }
        ],
        "x-codeSamples": [
          {
            "lang": "csharp",
            "label": "MonoCloud .NET SDK",
            "source": "using MonoCloud.Management;\nusing MonoCloud.Management.Models;\nusing MonoCloud.Management.Core.Base;\n\nvar apiClient = new MonoCloudManagementClient(new MonoCloudConfig(\"<your-domain>\", \"[[API-Key]]\"));\n\n\nvar apiId = \"n8TniSuy4WN9ROJYNwir6\";\n\nvar requestBody = new CreateSecretRequest\n  {\n    Description = \"Banking App Client Secret\",\n    Expiration = DateTime.Parse(\"1640975400\"),\n    Type = SecretTypes.SharedSecret,\n    SecretValue = \"d2980ac62d2e58d316728dba55ce\",\n  };\n\n\nvar result = await apiClient.Resources.CreateApiResourceSecretAsync(apiId, requestBody);"
          },
          {
            "lang": "javascript",
            "label": "MonoCloud Javascript SDK",
            "source": "import { MonoCloudManagementClient } from '@monocloud/management';\n\nconst apiClient = MonoCloudManagementClient.init({ domain: '<your-domain>', apiKey: '[[API-Key]]' });\n\nconst apiId = 'n8TniSuy4WN9ROJYNwir6';\n\nconst requestBody = {\n  description: 'Banking App Client Secret',\n  expiration: '1640975400',\n  type: 'shared_secret',\n  secret_value: 'd2980ac62d2e58d316728dba55ce'\n};\n\nconst result = apiClient.resources.createApiResourceSecret(apiId, requestBody);"
          }
        ]
      }
    },
    "/resources/api_resources/{api_id}/secrets/{secret_id}": {
      "get": {
        "tags": [
          "Resources"
        ],
        "summary": "Retrieve an API resource secret",
        "description": "Retrieves detailed information for the specified API resource secret.",
        "operationId": "FindApiResourceSecretById",
        "parameters": [
          {
            "name": "secret_id",
            "in": "path",
            "description": "The unique identifier of the API resource secret.",
            "required": true,
            "schema": {
              "type": "string"
            },
            "example": "nAOFrfCB51t7uteBoAO5l"
          },
          {
            "name": "api_id",
            "in": "path",
            "description": "The unique identifier of the API resource.",
            "required": true,
            "schema": {
              "type": "string"
            },
            "example": "n8TniSuy4WN9ROJYNwir6"
          }
        ],
        "responses": {
          "200": {
            "description": "The API resource secret was retrieved successfully",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Secret"
                }
              }
            }
          },
          "404": {
            "description": "Not Found",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                },
                "examples": {
                  "NotFound": {
                    "$ref": "#/components/examples/NotFound"
                  }
                }
              }
            }
          },
          "422": {
            "description": "Unprocessable Entity",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/KeyValidationProblemDetails"
                },
                "examples": {
                  "KeyValidationError": {
                    "$ref": "#/components/examples/KeyValidationError"
                  }
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized"
          },
          "403": {
            "description": "Forbidden"
          }
        },
        "security": [
          {
            "API-Key": [ ]
          }
        ],
        "x-codeSamples": [
          {
            "lang": "csharp",
            "label": "MonoCloud .NET SDK",
            "source": "using MonoCloud.Management;\nusing MonoCloud.Management.Core.Base;\n\nvar apiClient = new MonoCloudManagementClient(new MonoCloudConfig(\"<your-domain>\", \"[[API-Key]]\"));\n\n\nvar secretId = \"nAOFrfCB51t7uteBoAO5l\";\n\nvar apiId = \"n8TniSuy4WN9ROJYNwir6\";\n\n\nvar result = await apiClient.Resources.FindApiResourceSecretByIdAsync(secretId, apiId);"
          },
          {
            "lang": "javascript",
            "label": "MonoCloud Javascript SDK",
            "source": "import { MonoCloudManagementClient } from '@monocloud/management';\n\nconst apiClient = MonoCloudManagementClient.init({ domain: '<your-domain>', apiKey: '[[API-Key]]' });\n\nconst secretId = 'nAOFrfCB51t7uteBoAO5l';\n\nconst apiId = 'n8TniSuy4WN9ROJYNwir6';\n\nconst result = apiClient.resources.findApiResourceSecretById(secretId, apiId);"
          }
        ]
      },
      "delete": {
        "tags": [
          "Resources"
        ],
        "summary": "Delete an API resource secret",
        "description": "Permanently deletes the specified API resource secret.\n>[!warning]\n> This operation is irreversible. Tokens presented to this API resource can no longer be introspected using this secret.",
        "operationId": "DeleteApiResourceSecret",
        "parameters": [
          {
            "name": "api_id",
            "in": "path",
            "description": "The unique identifier of the API resource.",
            "required": true,
            "schema": {
              "type": "string"
            },
            "example": "n8TniSuy4WN9ROJYNwir6"
          },
          {
            "name": "secret_id",
            "in": "path",
            "description": "The unique identifier of the API resource secret.",
            "required": true,
            "schema": {
              "type": "string"
            },
            "example": "nAOFrfCB51t7uteBoAO5l"
          }
        ],
        "responses": {
          "204": {
            "description": "The API resource secret was deleted successfully"
          },
          "404": {
            "description": "Not Found",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                },
                "examples": {
                  "NotFound": {
                    "$ref": "#/components/examples/NotFound"
                  }
                }
              }
            }
          },
          "422": {
            "description": "Unprocessable Entity",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/KeyValidationProblemDetails"
                },
                "examples": {
                  "KeyValidationError": {
                    "$ref": "#/components/examples/KeyValidationError"
                  }
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized"
          },
          "403": {
            "description": "Forbidden"
          }
        },
        "security": [
          {
            "API-Key": [ ]
          }
        ],
        "x-codeSamples": [
          {
            "lang": "csharp",
            "label": "MonoCloud .NET SDK",
            "source": "using MonoCloud.Management;\nusing MonoCloud.Management.Core.Base;\n\nvar apiClient = new MonoCloudManagementClient(new MonoCloudConfig(\"<your-domain>\", \"[[API-Key]]\"));\n\n\nvar apiId = \"n8TniSuy4WN9ROJYNwir6\";\n\nvar secretId = \"nAOFrfCB51t7uteBoAO5l\";\n\n\nvar result = await apiClient.Resources.DeleteApiResourceSecretAsync(apiId, secretId);"
          },
          {
            "lang": "javascript",
            "label": "MonoCloud Javascript SDK",
            "source": "import { MonoCloudManagementClient } from '@monocloud/management';\n\nconst apiClient = MonoCloudManagementClient.init({ domain: '<your-domain>', apiKey: '[[API-Key]]' });\n\nconst apiId = 'n8TniSuy4WN9ROJYNwir6';\n\nconst secretId = 'nAOFrfCB51t7uteBoAO5l';\n\nconst result = apiClient.resources.deleteApiResourceSecret(apiId, secretId);"
          }
        ]
      }
    },
    "/resources/api_resources/{api_id}/scopes": {
      "get": {
        "tags": [
          "Resources"
        ],
        "summary": "List API scopes",
        "description": "Retrieves a paginated list of API scopes for the specified API resource. Optional query parameters allow searching, filtering, and sorting the results.",
        "operationId": "GetAllApiScopes",
        "parameters": [
          {
            "name": "api_id",
            "in": "path",
            "description": "The unique identifier of the API resource.",
            "required": true,
            "schema": {
              "type": "string"
            },
            "example": "n8TniSuy4WN9ROJYNwir6"
          },
          {
            "name": "page",
            "in": "query",
            "description": "The page number to retrieve.",
            "schema": {
              "minimum": 1,
              "type": "integer",
              "format": "int32",
              "default": 1
            },
            "example": 1
          },
          {
            "name": "size",
            "in": "query",
            "description": "The number of resources to return per page.",
            "schema": {
              "maximum": 50,
              "minimum": 1,
              "type": "integer",
              "format": "int32",
              "default": 10
            },
            "example": 10
          },
          {
            "name": "filter",
            "in": "query",
            "description": "Optional Lucene-style filter expression used to search by attributes.",
            "schema": {
              "type": "string"
            },
            "example": "api"
          },
          {
            "name": "sort",
            "in": "query",
            "description": "Sort expression in the format `field:direction`, where direction is `1` for ascending or `-1` for descending. Supported fields include - `name`, `display_name`, and `creation_time`",
            "schema": {
              "type": "string"
            },
            "example": "creation_time:1"
          }
        ],
        "responses": {
          "200": {
            "description": "The API scopes were retrieved successfully",
            "headers": {
              "x-Pagination": {
                "description": "Returns the x-Pagination header",
                "schema": {
                  "$ref": "#/components/schemas/PaginationHeader"
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "type": "array",
                  "items": {
                    "$ref": "#/components/schemas/ApiScope"
                  }
                }
              }
            }
          },
          "404": {
            "description": "Not Found",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                },
                "examples": {
                  "NotFound": {
                    "$ref": "#/components/examples/NotFound"
                  }
                }
              }
            }
          },
          "422": {
            "description": "Unprocessable Entity",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/KeyValidationProblemDetails"
                },
                "examples": {
                  "KeyValidationError": {
                    "$ref": "#/components/examples/KeyValidationError"
                  }
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized"
          },
          "403": {
            "description": "Forbidden"
          }
        },
        "security": [
          {
            "API-Key": [ ]
          }
        ],
        "x-codeSamples": [
          {
            "lang": "csharp",
            "label": "MonoCloud .NET SDK",
            "source": "using MonoCloud.Management;\nusing MonoCloud.Management.Core.Base;\n\nvar apiClient = new MonoCloudManagementClient(new MonoCloudConfig(\"<your-domain>\", \"[[API-Key]]\"));\n\n\nvar apiId = \"n8TniSuy4WN9ROJYNwir6\";\n\nvar page = 1;\n\nvar size = 10;\n\nvar filter = \"api\";\n\nvar sort = \"creation_time:1\";\n\n\nvar result = await apiClient.Resources.GetAllApiScopesAsync(apiId, page, size, filter, sort);"
          },
          {
            "lang": "javascript",
            "label": "MonoCloud Javascript SDK",
            "source": "import { MonoCloudManagementClient } from '@monocloud/management';\n\nconst apiClient = MonoCloudManagementClient.init({ domain: '<your-domain>', apiKey: '[[API-Key]]' });\n\nconst apiId = 'n8TniSuy4WN9ROJYNwir6';\n\nconst page = 1;\n\nconst size = 10;\n\nconst filter = 'api';\n\nconst sort = 'creation_time:1';\n\nconst result = apiClient.resources.getAllApiScopes(apiId, page, size, filter, sort);"
          }
        ]
      },
      "post": {
        "tags": [
          "Resources"
        ],
        "summary": "Create an API scope",
        "description": "Creates a new API scope for the specified API resource. An API scope represents a permission that clients may request and that determines the claims and access level included in issued access tokens.",
        "operationId": "CreateApiScope",
        "parameters": [
          {
            "name": "api_id",
            "in": "path",
            "description": "The unique identifier of the API resource.",
            "required": true,
            "schema": {
              "type": "string"
            },
            "example": "n8TniSuy4WN9ROJYNwir6"
          }
        ],
        "requestBody": {
          "description": "The request payload used to create an API scope.",
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/CreateApiScopeRequest"
              }
            }
          },
          "required": true
        },
        "responses": {
          "201": {
            "description": "The API scope was created successfully",
            "headers": {
              "location": {
                "description": "Returns the location header",
                "schema": {
                  "type": "string",
                  "format": "uri"
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiScope"
                }
              }
            }
          },
          "400": {
            "description": "Bad Request",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                },
                "examples": {
                  "BadRequest": {
                    "$ref": "#/components/examples/BadRequest"
                  }
                }
              }
            }
          },
          "422": {
            "description": "Unprocessable Entity",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/KeyValidationProblemDetails"
                },
                "examples": {
                  "KeyValidationError": {
                    "$ref": "#/components/examples/KeyValidationError"
                  }
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized"
          },
          "403": {
            "description": "Forbidden"
          }
        },
        "security": [
          {
            "API-Key": [ ]
          }
        ],
        "x-codeSamples": [
          {
            "lang": "csharp",
            "label": "MonoCloud .NET SDK",
            "source": "using MonoCloud.Management;\nusing MonoCloud.Management.Models;\nusing MonoCloud.Management.Core.Base;\n\nvar apiClient = new MonoCloudManagementClient(new MonoCloudConfig(\"<your-domain>\", \"[[API-Key]]\"));\n\n\nvar apiId = \"n8TniSuy4WN9ROJYNwir6\";\n\nvar requestBody = new CreateApiScopeRequest\n  {\n    DisplayName = \"Designation\",\n    Description = \"Current position in the employed organization\",\n    ShowInDiscoveryDocument = true,\n    Name = \"user_profile\",\n    Required = false,\n    Emphasize = false,\n    IsDefault = false,\n    UserClaims = new List<string>\n    {\n      \"email_address\",\n      \"phone_number\",\n      \"given_name\",\n    },\n  };\n\n\nvar result = await apiClient.Resources.CreateApiScopeAsync(apiId, requestBody);"
          },
          {
            "lang": "javascript",
            "label": "MonoCloud Javascript SDK",
            "source": "import { MonoCloudManagementClient } from '@monocloud/management';\n\nconst apiClient = MonoCloudManagementClient.init({ domain: '<your-domain>', apiKey: '[[API-Key]]' });\n\nconst apiId = 'n8TniSuy4WN9ROJYNwir6';\n\nconst requestBody = {\n  display_name: 'Designation',\n  description: 'Current position in the employed organization',\n  show_in_discovery_document: true,\n  name: 'user_profile',\n  required: false,\n  emphasize: false,\n  is_default: false,\n  user_claims: [\n    'email_address',\n    'phone_number',\n    'given_name'\n  ]\n};\n\nconst result = apiClient.resources.createApiScope(apiId, requestBody);"
          }
        ]
      }
    },
    "/resources/api_resources/{api_id}/scopes/{scope_id}": {
      "get": {
        "tags": [
          "Resources"
        ],
        "summary": "Retrieve an API scope",
        "description": "Retrieves detailed information for the specified API scope.",
        "operationId": "FindApiScopeById",
        "parameters": [
          {
            "name": "scope_id",
            "in": "path",
            "description": "The unique identifier of the API scope.",
            "required": true,
            "schema": {
              "type": "string"
            },
            "example": "tQi5Nu2sg7TVB727UfHPT"
          },
          {
            "name": "api_id",
            "in": "path",
            "description": "The unique identifier of the API resource.",
            "required": true,
            "schema": {
              "type": "string"
            },
            "example": "n8TniSuy4WN9ROJYNwir6"
          }
        ],
        "responses": {
          "200": {
            "description": "The API scope was retrieved successfully",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiScope"
                }
              }
            }
          },
          "404": {
            "description": "Not Found",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                },
                "examples": {
                  "NotFound": {
                    "$ref": "#/components/examples/NotFound"
                  }
                }
              }
            }
          },
          "422": {
            "description": "Unprocessable Entity",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/KeyValidationProblemDetails"
                },
                "examples": {
                  "KeyValidationError": {
                    "$ref": "#/components/examples/KeyValidationError"
                  }
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized"
          },
          "403": {
            "description": "Forbidden"
          }
        },
        "security": [
          {
            "API-Key": [ ]
          }
        ],
        "x-codeSamples": [
          {
            "lang": "csharp",
            "label": "MonoCloud .NET SDK",
            "source": "using MonoCloud.Management;\nusing MonoCloud.Management.Core.Base;\n\nvar apiClient = new MonoCloudManagementClient(new MonoCloudConfig(\"<your-domain>\", \"[[API-Key]]\"));\n\n\nvar scopeId = \"tQi5Nu2sg7TVB727UfHPT\";\n\nvar apiId = \"n8TniSuy4WN9ROJYNwir6\";\n\n\nvar result = await apiClient.Resources.FindApiScopeByIdAsync(scopeId, apiId);"
          },
          {
            "lang": "javascript",
            "label": "MonoCloud Javascript SDK",
            "source": "import { MonoCloudManagementClient } from '@monocloud/management';\n\nconst apiClient = MonoCloudManagementClient.init({ domain: '<your-domain>', apiKey: '[[API-Key]]' });\n\nconst scopeId = 'tQi5Nu2sg7TVB727UfHPT';\n\nconst apiId = 'n8TniSuy4WN9ROJYNwir6';\n\nconst result = apiClient.resources.findApiScopeById(scopeId, apiId);"
          }
        ]
      },
      "patch": {
        "tags": [
          "Resources"
        ],
        "summary": "Update an API scope",
        "description": "Applies a partial update to the specified API scope. Only fields included in the request are updated.",
        "operationId": "PatchApiScope",
        "parameters": [
          {
            "name": "scope_id",
            "in": "path",
            "description": "The unique identifier of the API scope.",
            "required": true,
            "schema": {
              "type": "string"
            },
            "example": "tQi5Nu2sg7TVB727UfHPT"
          },
          {
            "name": "api_id",
            "in": "path",
            "description": "The unique identifier of the API resource.",
            "required": true,
            "schema": {
              "type": "string"
            },
            "example": "n8TniSuy4WN9ROJYNwir6"
          }
        ],
        "requestBody": {
          "description": "The request payload used to update an API scope.",
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/PatchApiScopeRequest"
              }
            }
          },
          "required": true
        },
        "responses": {
          "200": {
            "description": "The API scope was updated successfully",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiScope"
                }
              }
            }
          },
          "400": {
            "description": "Bad Request",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                },
                "examples": {
                  "BadRequest": {
                    "$ref": "#/components/examples/BadRequest"
                  }
                }
              }
            }
          },
          "404": {
            "description": "Not Found",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                },
                "examples": {
                  "NotFound": {
                    "$ref": "#/components/examples/NotFound"
                  }
                }
              }
            }
          },
          "422": {
            "description": "Unprocessable Entity",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/KeyValidationProblemDetails"
                },
                "examples": {
                  "KeyValidationError": {
                    "$ref": "#/components/examples/KeyValidationError"
                  }
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized"
          },
          "403": {
            "description": "Forbidden"
          }
        },
        "security": [
          {
            "API-Key": [ ]
          }
        ],
        "x-codeSamples": [
          {
            "lang": "csharp",
            "label": "MonoCloud .NET SDK",
            "source": "using MonoCloud.Management;\nusing MonoCloud.Management.Models;\nusing MonoCloud.Management.Core.Base;\n\nvar apiClient = new MonoCloudManagementClient(new MonoCloudConfig(\"<your-domain>\", \"[[API-Key]]\"));\n\n\nvar scopeId = \"tQi5Nu2sg7TVB727UfHPT\";\n\nvar apiId = \"n8TniSuy4WN9ROJYNwir6\";\n\nvar requestBody = new PatchApiScopeRequest\n  {\n    DisplayName = \"Designation\",\n    Description = \"Current position in the employed organization\",\n    ShowInDiscoveryDocument = true,\n    Required = false,\n    Emphasize = false,\n    IsDefault = false,\n    UserClaims = new List<string>\n    {\n      \"email_address\",\n      \"phone_number\",\n      \"given_name\",\n    },\n  };\n\n\nvar result = await apiClient.Resources.PatchApiScopeAsync(scopeId, apiId, requestBody);"
          },
          {
            "lang": "javascript",
            "label": "MonoCloud Javascript SDK",
            "source": "import { MonoCloudManagementClient } from '@monocloud/management';\n\nconst apiClient = MonoCloudManagementClient.init({ domain: '<your-domain>', apiKey: '[[API-Key]]' });\n\nconst scopeId = 'tQi5Nu2sg7TVB727UfHPT';\n\nconst apiId = 'n8TniSuy4WN9ROJYNwir6';\n\nconst requestBody = {\n  display_name: 'Designation',\n  description: 'Current position in the employed organization',\n  show_in_discovery_document: true,\n  required: false,\n  emphasize: false,\n  is_default: false,\n  user_claims: [\n    'email_address',\n    'phone_number',\n    'given_name'\n  ]\n};\n\nconst result = apiClient.resources.patchApiScope(scopeId, apiId, requestBody);"
          }
        ]
      },
      "delete": {
        "tags": [
          "Resources"
        ],
        "summary": "Delete an API scope",
        "description": "Permanently deletes the specified API scope from the API resource.\n>[!warning]\n> This operation is irreversible. Once deleted, clients will no longer be able to request or obtain access tokens containing this scope.",
        "operationId": "DeleteApiScope",
        "parameters": [
          {
            "name": "scope_id",
            "in": "path",
            "description": "The unique identifier of the API scope.",
            "required": true,
            "schema": {
              "type": "string"
            },
            "example": "tQi5Nu2sg7TVB727UfHPT"
          },
          {
            "name": "api_id",
            "in": "path",
            "description": "The unique identifier of the API resource.",
            "required": true,
            "schema": {
              "type": "string"
            },
            "example": "n8TniSuy4WN9ROJYNwir6"
          }
        ],
        "responses": {
          "204": {
            "description": "The API scope was deleted successfully"
          },
          "404": {
            "description": "Not Found",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                },
                "examples": {
                  "NotFound": {
                    "$ref": "#/components/examples/NotFound"
                  }
                }
              }
            }
          },
          "422": {
            "description": "Unprocessable Entity",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/KeyValidationProblemDetails"
                },
                "examples": {
                  "KeyValidationError": {
                    "$ref": "#/components/examples/KeyValidationError"
                  }
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized"
          },
          "403": {
            "description": "Forbidden"
          }
        },
        "security": [
          {
            "API-Key": [ ]
          }
        ],
        "x-codeSamples": [
          {
            "lang": "csharp",
            "label": "MonoCloud .NET SDK",
            "source": "using MonoCloud.Management;\nusing MonoCloud.Management.Core.Base;\n\nvar apiClient = new MonoCloudManagementClient(new MonoCloudConfig(\"<your-domain>\", \"[[API-Key]]\"));\n\n\nvar scopeId = \"tQi5Nu2sg7TVB727UfHPT\";\n\nvar apiId = \"n8TniSuy4WN9ROJYNwir6\";\n\n\nvar result = await apiClient.Resources.DeleteApiScopeAsync(scopeId, apiId);"
          },
          {
            "lang": "javascript",
            "label": "MonoCloud Javascript SDK",
            "source": "import { MonoCloudManagementClient } from '@monocloud/management';\n\nconst apiClient = MonoCloudManagementClient.init({ domain: '<your-domain>', apiKey: '[[API-Key]]' });\n\nconst scopeId = 'tQi5Nu2sg7TVB727UfHPT';\n\nconst apiId = 'n8TniSuy4WN9ROJYNwir6';\n\nconst result = apiClient.resources.deleteApiScope(scopeId, apiId);"
          }
        ]
      }
    },
    "/resources/api_resources/{api_id}/policies": {
      "get": {
        "tags": [
          "Resources"
        ],
        "summary": "List API access policies",
        "description": "Retrieves a paginated list of API access policies (both basic and advanced) for the specified API resource. Optional query parameters allow sorting of the results.",
        "operationId": "GetAllApiAccessPolicies",
        "parameters": [
          {
            "name": "api_id",
            "in": "path",
            "description": "The unique identifier of the API resource.",
            "required": true,
            "schema": {
              "type": "string"
            },
            "example": "EF12vwe266fUHM6dh5Gup"
          },
          {
            "name": "page",
            "in": "query",
            "description": "The page number to retrieve.",
            "schema": {
              "minimum": 1,
              "type": "integer",
              "format": "int32",
              "default": 1
            },
            "example": 1
          },
          {
            "name": "size",
            "in": "query",
            "description": "The number of API access policies to return per page.",
            "schema": {
              "maximum": 50,
              "minimum": 1,
              "type": "integer",
              "format": "int32",
              "default": 10
            },
            "example": 10
          },
          {
            "name": "sort",
            "in": "query",
            "description": "Sort expression in the format `field:direction`, where direction is `1` for ascending or `-1` for descending. Supported fields include - `name`, `type`, `is_permitted`, `creation_time` and `last_updated`",
            "schema": {
              "type": "string"
            },
            "example": "priority:1"
          }
        ],
        "responses": {
          "200": {
            "description": "The API access policies were retrieved successfully",
            "headers": {
              "x-Pagination": {
                "description": "Returns the x-Pagination header",
                "schema": {
                  "$ref": "#/components/schemas/PaginationHeader"
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "type": "array",
                  "items": {
                    "$ref": "#/components/schemas/ApiAccessPolicy"
                  }
                }
              }
            }
          },
          "404": {
            "description": "Not Found",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                },
                "examples": {
                  "NotFound": {
                    "$ref": "#/components/examples/NotFound"
                  }
                }
              }
            }
          },
          "422": {
            "description": "Unprocessable Entity",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/KeyValidationProblemDetails"
                },
                "examples": {
                  "KeyValidationError": {
                    "$ref": "#/components/examples/KeyValidationError"
                  }
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized"
          },
          "403": {
            "description": "Forbidden"
          }
        },
        "security": [
          {
            "API-Key": [ ]
          }
        ],
        "x-codeSamples": [
          {
            "lang": "csharp",
            "label": "MonoCloud .NET SDK",
            "source": "using MonoCloud.Management;\nusing MonoCloud.Management.Core.Base;\n\nvar apiClient = new MonoCloudManagementClient(new MonoCloudConfig(\"<your-domain>\", \"[[API-Key]]\"));\n\n\nvar apiId = \"EF12vwe266fUHM6dh5Gup\";\n\nvar page = 1;\n\nvar size = 10;\n\nvar sort = \"priority:1\";\n\n\nvar result = await apiClient.Resources.GetAllApiAccessPoliciesAsync(apiId, page, size, sort);"
          },
          {
            "lang": "javascript",
            "label": "MonoCloud Javascript SDK",
            "source": "import { MonoCloudManagementClient } from '@monocloud/management';\n\nconst apiClient = MonoCloudManagementClient.init({ domain: '<your-domain>', apiKey: '[[API-Key]]' });\n\nconst apiId = 'EF12vwe266fUHM6dh5Gup';\n\nconst page = 1;\n\nconst size = 10;\n\nconst sort = 'priority:1';\n\nconst result = apiClient.resources.getAllApiAccessPolicies(apiId, page, size, sort);"
          }
        ]
      }
    },
    "/resources/api_resources/{api_id}/policies/basic": {
      "post": {
        "tags": [
          "Resources"
        ],
        "summary": "Create a basic API access policy",
        "description": "Creates a new basic API access policy for the specified API resource using structured conditions.",
        "operationId": "CreateApiAccessBasicPolicy",
        "parameters": [
          {
            "name": "api_id",
            "in": "path",
            "description": "The unique identifier of the API resource.",
            "required": true,
            "schema": {
              "type": "string"
            },
            "example": "EF12vwe266fUHM6dh5Gup"
          }
        ],
        "requestBody": {
          "description": "The request payload used to create the policy.",
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/CreateApiAccessBasicPolicyRequest"
              }
            }
          },
          "required": true
        },
        "responses": {
          "201": {
            "description": "The policy was created successfully",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/BasicApiAccessPolicy"
                }
              }
            }
          },
          "400": {
            "description": "Bad Request",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                },
                "examples": {
                  "BadRequest": {
                    "$ref": "#/components/examples/BadRequest"
                  }
                }
              }
            }
          },
          "402": {
            "description": "Payment Required",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                },
                "examples": {
                  "PaymentRequired": {
                    "$ref": "#/components/examples/PaymentRequired"
                  }
                }
              }
            }
          },
          "422": {
            "description": "Unprocessable Entity",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/KeyValidationProblemDetails"
                },
                "examples": {
                  "KeyValidationError": {
                    "$ref": "#/components/examples/KeyValidationError"
                  }
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized"
          },
          "403": {
            "description": "Forbidden"
          }
        },
        "security": [
          {
            "API-Key": [ ]
          }
        ],
        "x-codeSamples": [
          {
            "lang": "csharp",
            "label": "MonoCloud .NET SDK",
            "source": "using MonoCloud.Management;\nusing MonoCloud.Management.Models;\nusing MonoCloud.Management.Core.Base;\n\nvar apiClient = new MonoCloudManagementClient(new MonoCloudConfig(\"<your-domain>\", \"[[API-Key]]\"));\n\n\nvar apiId = \"EF12vwe266fUHM6dh5Gup\";\n\nvar requestBody = new CreateApiAccessBasicPolicyRequest\n  {\n    Enabled = true,\n    Name = \"Billing access policy\",\n    Description = \"Restricts billing API access to admins during business hours\",\n    Actions = new CreateApiAccessPolicyActionsRequest\n    {\n      AccessTokenType = AccessTokenTypes.Jwt,\n      AccessTokenLifetime = 3600,\n      AllowMultiAudience = false,\n      AllowUserInfoAccess = true,\n      BindTokensToSession = true,\n    },\n    ClientId = \"web-client\",\n    Scopes = new List<string>\n    {\n      \"read\",\n      \"write\",\n    },\n  };\n\n\nvar result = await apiClient.Resources.CreateApiAccessBasicPolicyAsync(apiId, requestBody);"
          },
          {
            "lang": "javascript",
            "label": "MonoCloud Javascript SDK",
            "source": "import { MonoCloudManagementClient } from '@monocloud/management';\n\nconst apiClient = MonoCloudManagementClient.init({ domain: '<your-domain>', apiKey: '[[API-Key]]' });\n\nconst apiId = 'EF12vwe266fUHM6dh5Gup';\n\nconst requestBody = {\n  enabled: true,\n  name: 'Billing access policy',\n  description: 'Restricts billing API access to admins during business hours',\n  actions: {\n    access_token_type: 'jwt',\n    access_token_lifetime: 3600,\n    allow_multi_audience: false,\n    allow_user_info_access: true,\n    bind_tokens_to_session: true\n  },\n  client_id: 'web-client',\n  scopes: [\n    'read',\n    'write'\n  ]\n};\n\nconst result = apiClient.resources.createApiAccessBasicPolicy(apiId, requestBody);"
          }
        ]
      }
    },
    "/resources/api_resources/{api_id}/policies/basic/{policy_id}": {
      "get": {
        "tags": [
          "Resources"
        ],
        "summary": "Retrieve a basic API access policy",
        "description": "Retrieves detailed information for the specified basic API access policy.",
        "operationId": "FindApiAccessBasicPolicyById",
        "parameters": [
          {
            "name": "api_id",
            "in": "path",
            "description": "The unique identifier of the API resource.",
            "required": true,
            "schema": {
              "type": "string"
            },
            "example": "EF12vwe266fUHM6dh5Gup"
          },
          {
            "name": "policy_id",
            "in": "path",
            "description": "The unique identifier of the API access policy.",
            "required": true,
            "schema": {
              "type": "string"
            },
            "example": "GIbxRmxz2tIyQDVdGR4yE"
          }
        ],
        "responses": {
          "200": {
            "description": "The basic API access policy was retrieved successfully",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/BasicApiAccessPolicy"
                }
              }
            }
          },
          "404": {
            "description": "Not Found",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                },
                "examples": {
                  "NotFound": {
                    "$ref": "#/components/examples/NotFound"
                  }
                }
              }
            }
          },
          "422": {
            "description": "Unprocessable Entity",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/KeyValidationProblemDetails"
                },
                "examples": {
                  "KeyValidationError": {
                    "$ref": "#/components/examples/KeyValidationError"
                  }
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized"
          },
          "403": {
            "description": "Forbidden"
          }
        },
        "security": [
          {
            "API-Key": [ ]
          }
        ],
        "x-codeSamples": [
          {
            "lang": "csharp",
            "label": "MonoCloud .NET SDK",
            "source": "using MonoCloud.Management;\nusing MonoCloud.Management.Core.Base;\n\nvar apiClient = new MonoCloudManagementClient(new MonoCloudConfig(\"<your-domain>\", \"[[API-Key]]\"));\n\n\nvar apiId = \"EF12vwe266fUHM6dh5Gup\";\n\nvar policyId = \"GIbxRmxz2tIyQDVdGR4yE\";\n\n\nvar result = await apiClient.Resources.FindApiAccessBasicPolicyByIdAsync(apiId, policyId);"
          },
          {
            "lang": "javascript",
            "label": "MonoCloud Javascript SDK",
            "source": "import { MonoCloudManagementClient } from '@monocloud/management';\n\nconst apiClient = MonoCloudManagementClient.init({ domain: '<your-domain>', apiKey: '[[API-Key]]' });\n\nconst apiId = 'EF12vwe266fUHM6dh5Gup';\n\nconst policyId = 'GIbxRmxz2tIyQDVdGR4yE';\n\nconst result = apiClient.resources.findApiAccessBasicPolicyById(apiId, policyId);"
          }
        ]
      },
      "patch": {
        "tags": [
          "Resources"
        ],
        "summary": "Update a basic API access policy",
        "description": "Applies a partial update to the specified basic API access policy. Only fields included in the request are updated.",
        "operationId": "PatchApiAccessBasicPolicy",
        "parameters": [
          {
            "name": "api_id",
            "in": "path",
            "description": "The unique identifier of the API resource.",
            "required": true,
            "schema": {
              "type": "string"
            },
            "example": "EF12vwe266fUHM6dh5Gup"
          },
          {
            "name": "policy_id",
            "in": "path",
            "description": "The unique identifier of the API access policy.",
            "required": true,
            "schema": {
              "type": "string"
            },
            "example": "GIbxRmxz2tIyQDVdGR4yE"
          }
        ],
        "requestBody": {
          "description": "The request payload used to update the policy.",
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/PatchApiAccessBasicPolicyRequest"
              }
            }
          },
          "required": true
        },
        "responses": {
          "200": {
            "description": "The basic API access policy was updated successfully",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/BasicApiAccessPolicy"
                }
              }
            }
          },
          "400": {
            "description": "Bad Request",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                },
                "examples": {
                  "BadRequest": {
                    "$ref": "#/components/examples/BadRequest"
                  }
                }
              }
            }
          },
          "404": {
            "description": "Not Found",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                },
                "examples": {
                  "NotFound": {
                    "$ref": "#/components/examples/NotFound"
                  }
                }
              }
            }
          },
          "422": {
            "description": "Unprocessable Entity",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/KeyValidationProblemDetails"
                },
                "examples": {
                  "KeyValidationError": {
                    "$ref": "#/components/examples/KeyValidationError"
                  }
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized"
          },
          "403": {
            "description": "Forbidden"
          }
        },
        "security": [
          {
            "API-Key": [ ]
          }
        ],
        "x-codeSamples": [
          {
            "lang": "csharp",
            "label": "MonoCloud .NET SDK",
            "source": "using MonoCloud.Management;\nusing MonoCloud.Management.Models;\nusing MonoCloud.Management.Core.Base;\n\nvar apiClient = new MonoCloudManagementClient(new MonoCloudConfig(\"<your-domain>\", \"[[API-Key]]\"));\n\n\nvar apiId = \"EF12vwe266fUHM6dh5Gup\";\n\nvar policyId = \"GIbxRmxz2tIyQDVdGR4yE\";\n\nvar requestBody = new PatchApiAccessBasicPolicyRequest\n  {\n    Enabled = true,\n    Name = \"Billing access policy\",\n    Description = \"Restricts billing API access to admins during business hours\",\n    Actions = new PatchApiAccessPolicyActionsRequest\n    {\n      AccessTokenType = AccessTokenTypes.Jwt,\n      AccessTokenLifetime = 3600,\n      AllowMultiAudience = false,\n      AllowUserInfoAccess = true,\n      BindTokensToSession = true,\n    },\n    Scopes = new List<string>\n    {\n      \"read\",\n      \"write\",\n    },\n  };\n\n\nvar result = await apiClient.Resources.PatchApiAccessBasicPolicyAsync(apiId, policyId, requestBody);"
          },
          {
            "lang": "javascript",
            "label": "MonoCloud Javascript SDK",
            "source": "import { MonoCloudManagementClient } from '@monocloud/management';\n\nconst apiClient = MonoCloudManagementClient.init({ domain: '<your-domain>', apiKey: '[[API-Key]]' });\n\nconst apiId = 'EF12vwe266fUHM6dh5Gup';\n\nconst policyId = 'GIbxRmxz2tIyQDVdGR4yE';\n\nconst requestBody = {\n  enabled: true,\n  name: 'Billing access policy',\n  description: 'Restricts billing API access to admins during business hours',\n  actions: {\n    access_token_type: 'jwt',\n    access_token_lifetime: 3600,\n    allow_multi_audience: false,\n    allow_user_info_access: true,\n    bind_tokens_to_session: true\n  },\n  scopes: [\n    'read',\n    'write'\n  ]\n};\n\nconst result = apiClient.resources.patchApiAccessBasicPolicy(apiId, policyId, requestBody);"
          }
        ]
      },
      "delete": {
        "tags": [
          "Resources"
        ],
        "summary": "Delete a basic API access policy",
        "description": "Permanently deletes the specified basic API access policy from the API resource.\n>[!warning]\n> This operation is irreversible.",
        "operationId": "DeleteApiAccessBasicPolicy",
        "parameters": [
          {
            "name": "api_id",
            "in": "path",
            "description": "The unique identifier of the API resource.",
            "required": true,
            "schema": {
              "type": "string"
            },
            "example": "EF12vwe266fUHM6dh5Gup"
          },
          {
            "name": "policy_id",
            "in": "path",
            "description": "The unique identifier of the API access policy.",
            "required": true,
            "schema": {
              "type": "string"
            },
            "example": "GIbxRmxz2tIyQDVdGR4yE"
          }
        ],
        "responses": {
          "204": {
            "description": "The basic API access policy was deleted successfully"
          },
          "404": {
            "description": "Not Found",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                },
                "examples": {
                  "NotFound": {
                    "$ref": "#/components/examples/NotFound"
                  }
                }
              }
            }
          },
          "422": {
            "description": "Unprocessable Entity",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/KeyValidationProblemDetails"
                },
                "examples": {
                  "KeyValidationError": {
                    "$ref": "#/components/examples/KeyValidationError"
                  }
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized"
          },
          "403": {
            "description": "Forbidden"
          }
        },
        "security": [
          {
            "API-Key": [ ]
          }
        ],
        "x-codeSamples": [
          {
            "lang": "csharp",
            "label": "MonoCloud .NET SDK",
            "source": "using MonoCloud.Management;\nusing MonoCloud.Management.Core.Base;\n\nvar apiClient = new MonoCloudManagementClient(new MonoCloudConfig(\"<your-domain>\", \"[[API-Key]]\"));\n\n\nvar apiId = \"EF12vwe266fUHM6dh5Gup\";\n\nvar policyId = \"GIbxRmxz2tIyQDVdGR4yE\";\n\n\nvar result = await apiClient.Resources.DeleteApiAccessBasicPolicyAsync(apiId, policyId);"
          },
          {
            "lang": "javascript",
            "label": "MonoCloud Javascript SDK",
            "source": "import { MonoCloudManagementClient } from '@monocloud/management';\n\nconst apiClient = MonoCloudManagementClient.init({ domain: '<your-domain>', apiKey: '[[API-Key]]' });\n\nconst apiId = 'EF12vwe266fUHM6dh5Gup';\n\nconst policyId = 'GIbxRmxz2tIyQDVdGR4yE';\n\nconst result = apiClient.resources.deleteApiAccessBasicPolicy(apiId, policyId);"
          }
        ]
      }
    },
    "/resources/api_resources/{api_id}/policies/basic/{policy_id}/convert": {
      "post": {
        "tags": [
          "Resources"
        ],
        "summary": "Convert a basic API access policy to an advanced policy",
        "description": "Converts the specified basic API access policy into an advanced Cedar-authored policy in place. The policy ID is preserved, and the generated Cedar source becomes the starting point for further editing. Basic-only fields, such as clients and scopes, are discarded.\n>[!warning]\n> This operation is irreversible.",
        "operationId": "ConvertApiAccessBasicToAdvancedPolicy",
        "parameters": [
          {
            "name": "api_id",
            "in": "path",
            "description": "The unique identifier of the API resource.",
            "required": true,
            "schema": {
              "type": "string"
            },
            "example": "EF12vwe266fUHM6dh5Gup"
          },
          {
            "name": "policy_id",
            "in": "path",
            "description": "The unique identifier of the basic API access policy to convert.",
            "required": true,
            "schema": {
              "type": "string"
            },
            "example": "GIbxRmxz2tIyQDVdGR4yE"
          }
        ],
        "responses": {
          "200": {
            "description": "The basic API access policy was converted successfully",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/AdvancedApiAccessPolicy"
                }
              }
            }
          },
          "404": {
            "description": "Not Found",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                },
                "examples": {
                  "NotFound": {
                    "$ref": "#/components/examples/NotFound"
                  }
                }
              }
            }
          },
          "422": {
            "description": "Unprocessable Entity",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/KeyValidationProblemDetails"
                },
                "examples": {
                  "KeyValidationError": {
                    "$ref": "#/components/examples/KeyValidationError"
                  }
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized"
          },
          "403": {
            "description": "Forbidden"
          }
        },
        "security": [
          {
            "API-Key": [ ]
          }
        ],
        "x-codeSamples": [
          {
            "lang": "csharp",
            "label": "MonoCloud .NET SDK",
            "source": "using MonoCloud.Management;\nusing MonoCloud.Management.Core.Base;\n\nvar apiClient = new MonoCloudManagementClient(new MonoCloudConfig(\"<your-domain>\", \"[[API-Key]]\"));\n\n\nvar apiId = \"EF12vwe266fUHM6dh5Gup\";\n\nvar policyId = \"GIbxRmxz2tIyQDVdGR4yE\";\n\n\nvar result = await apiClient.Resources.ConvertApiAccessBasicToAdvancedPolicyAsync(apiId, policyId);"
          },
          {
            "lang": "javascript",
            "label": "MonoCloud Javascript SDK",
            "source": "import { MonoCloudManagementClient } from '@monocloud/management';\n\nconst apiClient = MonoCloudManagementClient.init({ domain: '<your-domain>', apiKey: '[[API-Key]]' });\n\nconst apiId = 'EF12vwe266fUHM6dh5Gup';\n\nconst policyId = 'GIbxRmxz2tIyQDVdGR4yE';\n\nconst result = apiClient.resources.convertApiAccessBasicToAdvancedPolicy(apiId, policyId);"
          }
        ]
      }
    },
    "/resources/api_resources/{api_id}/policies/advanced": {
      "post": {
        "tags": [
          "Resources"
        ],
        "summary": "Create an advanced API access policy",
        "description": "Creates a new advanced API access policy for the specified API resource using raw Cedar policy source.",
        "operationId": "CreateApiAccessAdvancedPolicy",
        "parameters": [
          {
            "name": "api_id",
            "in": "path",
            "description": "The unique identifier of the API resource.",
            "required": true,
            "schema": {
              "type": "string"
            },
            "example": "EF12vwe266fUHM6dh5Gup"
          }
        ],
        "requestBody": {
          "description": "The request payload used to create the policy.",
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/CreateApiAccessAdvancedPolicyRequest"
              }
            }
          },
          "required": true
        },
        "responses": {
          "201": {
            "description": "The policy was created successfully",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/AdvancedApiAccessPolicy"
                }
              }
            }
          },
          "400": {
            "description": "Bad Request",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                },
                "examples": {
                  "BadRequest": {
                    "$ref": "#/components/examples/BadRequest"
                  }
                }
              }
            }
          },
          "402": {
            "description": "Payment Required",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                },
                "examples": {
                  "PaymentRequired": {
                    "$ref": "#/components/examples/PaymentRequired"
                  }
                }
              }
            }
          },
          "422": {
            "description": "Unprocessable Entity",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/KeyValidationProblemDetails"
                },
                "examples": {
                  "KeyValidationError": {
                    "$ref": "#/components/examples/KeyValidationError"
                  }
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized"
          },
          "403": {
            "description": "Forbidden"
          }
        },
        "security": [
          {
            "API-Key": [ ]
          }
        ],
        "x-codeSamples": [
          {
            "lang": "csharp",
            "label": "MonoCloud .NET SDK",
            "source": "using MonoCloud.Management;\nusing MonoCloud.Management.Models;\nusing MonoCloud.Management.Core.Base;\n\nvar apiClient = new MonoCloudManagementClient(new MonoCloudConfig(\"<your-domain>\", \"[[API-Key]]\"));\n\n\nvar apiId = \"EF12vwe266fUHM6dh5Gup\";\n\nvar requestBody = new CreateApiAccessAdvancedPolicyRequest\n  {\n    Enabled = true,\n    Name = \"Billing access policy\",\n    Description = \"Restricts billing API access to admins during business hours\",\n    Cedar = \"permit (principal, action, resource == Api::\"https://api.example.com/billing\");\",\n    Actions = new CreateApiAccessPolicyActionsRequest\n    {\n      AccessTokenType = AccessTokenTypes.Jwt,\n      AccessTokenLifetime = 3600,\n      AllowMultiAudience = false,\n      AllowUserInfoAccess = true,\n      BindTokensToSession = true,\n    },\n    Error = \"Access to the billing API requires admin approval.\",\n  };\n\n\nvar result = await apiClient.Resources.CreateApiAccessAdvancedPolicyAsync(apiId, requestBody);"
          },
          {
            "lang": "javascript",
            "label": "MonoCloud Javascript SDK",
            "source": "import { MonoCloudManagementClient } from '@monocloud/management';\n\nconst apiClient = MonoCloudManagementClient.init({ domain: '<your-domain>', apiKey: '[[API-Key]]' });\n\nconst apiId = 'EF12vwe266fUHM6dh5Gup';\n\nconst requestBody = {\n  enabled: true,\n  name: 'Billing access policy',\n  description: 'Restricts billing API access to admins during business hours',\n  cedar: 'permit (principal, action, resource == Api::\"https://api.example.com/billing\");',\n  actions: {\n    access_token_type: 'jwt',\n    access_token_lifetime: 3600,\n    allow_multi_audience: false,\n    allow_user_info_access: true,\n    bind_tokens_to_session: true\n  },\n  error: 'Access to the billing API requires admin approval.'\n};\n\nconst result = apiClient.resources.createApiAccessAdvancedPolicy(apiId, requestBody);"
          }
        ]
      }
    },
    "/resources/api_resources/{api_id}/policies/advanced/{policy_id}": {
      "get": {
        "tags": [
          "Resources"
        ],
        "summary": "Retrieve a advanced API access policy",
        "description": "Retrieves detailed information for the specified advanced API access policy.",
        "operationId": "FindApiAccessAdvancedPolicyById",
        "parameters": [
          {
            "name": "api_id",
            "in": "path",
            "description": "The unique identifier of the API resource.",
            "required": true,
            "schema": {
              "type": "string"
            },
            "example": "EF12vwe266fUHM6dh5Gup"
          },
          {
            "name": "policy_id",
            "in": "path",
            "description": "The unique identifier of the API access policy.",
            "required": true,
            "schema": {
              "type": "string"
            },
            "example": "GIbxRmxz2tIyQDVdGR4yE"
          }
        ],
        "responses": {
          "200": {
            "description": "The advanced API access policy was retrieved successfully",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/AdvancedApiAccessPolicy"
                }
              }
            }
          },
          "404": {
            "description": "Not Found",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                },
                "examples": {
                  "NotFound": {
                    "$ref": "#/components/examples/NotFound"
                  }
                }
              }
            }
          },
          "422": {
            "description": "Unprocessable Entity",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/KeyValidationProblemDetails"
                },
                "examples": {
                  "KeyValidationError": {
                    "$ref": "#/components/examples/KeyValidationError"
                  }
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized"
          },
          "403": {
            "description": "Forbidden"
          }
        },
        "security": [
          {
            "API-Key": [ ]
          }
        ],
        "x-codeSamples": [
          {
            "lang": "csharp",
            "label": "MonoCloud .NET SDK",
            "source": "using MonoCloud.Management;\nusing MonoCloud.Management.Core.Base;\n\nvar apiClient = new MonoCloudManagementClient(new MonoCloudConfig(\"<your-domain>\", \"[[API-Key]]\"));\n\n\nvar apiId = \"EF12vwe266fUHM6dh5Gup\";\n\nvar policyId = \"GIbxRmxz2tIyQDVdGR4yE\";\n\n\nvar result = await apiClient.Resources.FindApiAccessAdvancedPolicyByIdAsync(apiId, policyId);"
          },
          {
            "lang": "javascript",
            "label": "MonoCloud Javascript SDK",
            "source": "import { MonoCloudManagementClient } from '@monocloud/management';\n\nconst apiClient = MonoCloudManagementClient.init({ domain: '<your-domain>', apiKey: '[[API-Key]]' });\n\nconst apiId = 'EF12vwe266fUHM6dh5Gup';\n\nconst policyId = 'GIbxRmxz2tIyQDVdGR4yE';\n\nconst result = apiClient.resources.findApiAccessAdvancedPolicyById(apiId, policyId);"
          }
        ]
      },
      "patch": {
        "tags": [
          "Resources"
        ],
        "summary": "Update an advanced API access policy",
        "description": "Applies a partial update to the specified advanced API access policy. Only fields included in the request are updated.",
        "operationId": "PatchApiAccessAdvancedPolicy",
        "parameters": [
          {
            "name": "api_id",
            "in": "path",
            "description": "The unique identifier of the API resource.",
            "required": true,
            "schema": {
              "type": "string"
            },
            "example": "EF12vwe266fUHM6dh5Gup"
          },
          {
            "name": "policy_id",
            "in": "path",
            "description": "The unique identifier of the API access policy.",
            "required": true,
            "schema": {
              "type": "string"
            },
            "example": "GIbxRmxz2tIyQDVdGR4yE"
          }
        ],
        "requestBody": {
          "description": "The request payload used to update the policy.",
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/PatchApiAccessAdvancedPolicyRequest"
              }
            }
          },
          "required": true
        },
        "responses": {
          "200": {
            "description": "The advanced API access policy was updated successfully",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/AdvancedApiAccessPolicy"
                }
              }
            }
          },
          "400": {
            "description": "Bad Request",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                },
                "examples": {
                  "BadRequest": {
                    "$ref": "#/components/examples/BadRequest"
                  }
                }
              }
            }
          },
          "404": {
            "description": "Not Found",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                },
                "examples": {
                  "NotFound": {
                    "$ref": "#/components/examples/NotFound"
                  }
                }
              }
            }
          },
          "422": {
            "description": "Unprocessable Entity",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/KeyValidationProblemDetails"
                },
                "examples": {
                  "KeyValidationError": {
                    "$ref": "#/components/examples/KeyValidationError"
                  }
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized"
          },
          "403": {
            "description": "Forbidden"
          }
        },
        "security": [
          {
            "API-Key": [ ]
          }
        ],
        "x-codeSamples": [
          {
            "lang": "csharp",
            "label": "MonoCloud .NET SDK",
            "source": "using MonoCloud.Management;\nusing MonoCloud.Management.Models;\nusing MonoCloud.Management.Core.Base;\n\nvar apiClient = new MonoCloudManagementClient(new MonoCloudConfig(\"<your-domain>\", \"[[API-Key]]\"));\n\n\nvar apiId = \"EF12vwe266fUHM6dh5Gup\";\n\nvar policyId = \"GIbxRmxz2tIyQDVdGR4yE\";\n\nvar requestBody = new PatchApiAccessAdvancedPolicyRequest\n  {\n    Enabled = true,\n    Name = \"Billing access policy\",\n    Description = \"Restricts billing API access to admins during business hours\",\n    Actions = new PatchApiAccessPolicyActionsRequest\n    {\n      AccessTokenType = AccessTokenTypes.Jwt,\n      AccessTokenLifetime = 3600,\n      AllowMultiAudience = false,\n      AllowUserInfoAccess = true,\n      BindTokensToSession = true,\n    },\n    Cedar = \"permit (principal, action, resource == Api::\"https://api.example.com/billing\");\",\n    Error = \"Access to the billing API requires admin approval.\",\n  };\n\n\nvar result = await apiClient.Resources.PatchApiAccessAdvancedPolicyAsync(apiId, policyId, requestBody);"
          },
          {
            "lang": "javascript",
            "label": "MonoCloud Javascript SDK",
            "source": "import { MonoCloudManagementClient } from '@monocloud/management';\n\nconst apiClient = MonoCloudManagementClient.init({ domain: '<your-domain>', apiKey: '[[API-Key]]' });\n\nconst apiId = 'EF12vwe266fUHM6dh5Gup';\n\nconst policyId = 'GIbxRmxz2tIyQDVdGR4yE';\n\nconst requestBody = {\n  enabled: true,\n  name: 'Billing access policy',\n  description: 'Restricts billing API access to admins during business hours',\n  actions: {\n    access_token_type: 'jwt',\n    access_token_lifetime: 3600,\n    allow_multi_audience: false,\n    allow_user_info_access: true,\n    bind_tokens_to_session: true\n  },\n  cedar: 'permit (principal, action, resource == Api::\"https://api.example.com/billing\");',\n  error: 'Access to the billing API requires admin approval.'\n};\n\nconst result = apiClient.resources.patchApiAccessAdvancedPolicy(apiId, policyId, requestBody);"
          }
        ]
      },
      "delete": {
        "tags": [
          "Resources"
        ],
        "summary": "Delete an advanced API access policy",
        "description": "Permanently deletes the specified advanced API access policy from the API resource.\n>[!warning]\n> This operation is irreversible.",
        "operationId": "DeleteApiAccessAdvancedPolicy",
        "parameters": [
          {
            "name": "api_id",
            "in": "path",
            "description": "The unique identifier of the API resource.",
            "required": true,
            "schema": {
              "type": "string"
            },
            "example": "EF12vwe266fUHM6dh5Gup"
          },
          {
            "name": "policy_id",
            "in": "path",
            "description": "The unique identifier of the API access policy.",
            "required": true,
            "schema": {
              "type": "string"
            },
            "example": "GIbxRmxz2tIyQDVdGR4yE"
          }
        ],
        "responses": {
          "204": {
            "description": "The advanced API access policy was deleted successfully"
          },
          "404": {
            "description": "Not Found",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                },
                "examples": {
                  "NotFound": {
                    "$ref": "#/components/examples/NotFound"
                  }
                }
              }
            }
          },
          "422": {
            "description": "Unprocessable Entity",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/KeyValidationProblemDetails"
                },
                "examples": {
                  "KeyValidationError": {
                    "$ref": "#/components/examples/KeyValidationError"
                  }
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized"
          },
          "403": {
            "description": "Forbidden"
          }
        },
        "security": [
          {
            "API-Key": [ ]
          }
        ],
        "x-codeSamples": [
          {
            "lang": "csharp",
            "label": "MonoCloud .NET SDK",
            "source": "using MonoCloud.Management;\nusing MonoCloud.Management.Core.Base;\n\nvar apiClient = new MonoCloudManagementClient(new MonoCloudConfig(\"<your-domain>\", \"[[API-Key]]\"));\n\n\nvar apiId = \"EF12vwe266fUHM6dh5Gup\";\n\nvar policyId = \"GIbxRmxz2tIyQDVdGR4yE\";\n\n\nvar result = await apiClient.Resources.DeleteApiAccessAdvancedPolicyAsync(apiId, policyId);"
          },
          {
            "lang": "javascript",
            "label": "MonoCloud Javascript SDK",
            "source": "import { MonoCloudManagementClient } from '@monocloud/management';\n\nconst apiClient = MonoCloudManagementClient.init({ domain: '<your-domain>', apiKey: '[[API-Key]]' });\n\nconst apiId = 'EF12vwe266fUHM6dh5Gup';\n\nconst policyId = 'GIbxRmxz2tIyQDVdGR4yE';\n\nconst result = apiClient.resources.deleteApiAccessAdvancedPolicy(apiId, policyId);"
          }
        ]
      }
    },
    "/resources/scopes": {
      "get": {
        "tags": [
          "Resources"
        ],
        "summary": "List scopes",
        "description": "Retrieves a paginated list of identity scopes. Optional query parameters allow searching, filtering, and sorting the results.",
        "operationId": "GetAllScopes",
        "parameters": [
          {
            "name": "page",
            "in": "query",
            "description": "The page number to retrieve.",
            "schema": {
              "minimum": 1,
              "type": "integer",
              "format": "int32",
              "default": 1
            },
            "example": 1
          },
          {
            "name": "size",
            "in": "query",
            "description": "The number of resources to return per page.",
            "schema": {
              "maximum": 50,
              "minimum": 1,
              "type": "integer",
              "format": "int32",
              "default": 10
            },
            "example": 10
          },
          {
            "name": "filter",
            "in": "query",
            "description": "Optional Lucene-style filter expression used to search by attributes.",
            "schema": {
              "type": "string"
            },
            "example": "api"
          },
          {
            "name": "sort",
            "in": "query",
            "description": "Sort expression in the format `field:direction`, where direction is `1` for ascending or `-1` for descending. Supported fields include - `name`, `display_name`, and `creation_time`",
            "schema": {
              "type": "string"
            },
            "example": "creation_time:1"
          }
        ],
        "responses": {
          "200": {
            "description": "The scopes were retrieved successfully",
            "headers": {
              "x-Pagination": {
                "description": "Returns the x-Pagination header",
                "schema": {
                  "$ref": "#/components/schemas/PaginationHeader"
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "type": "array",
                  "items": {
                    "$ref": "#/components/schemas/Scope"
                  }
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized"
          },
          "403": {
            "description": "Forbidden"
          }
        },
        "security": [
          {
            "API-Key": [ ]
          }
        ],
        "x-codeSamples": [
          {
            "lang": "csharp",
            "label": "MonoCloud .NET SDK",
            "source": "using MonoCloud.Management;\nusing MonoCloud.Management.Core.Base;\n\nvar apiClient = new MonoCloudManagementClient(new MonoCloudConfig(\"<your-domain>\", \"[[API-Key]]\"));\n\n\nvar page = 1;\n\nvar size = 10;\n\nvar filter = \"api\";\n\nvar sort = \"creation_time:1\";\n\n\nvar result = await apiClient.Resources.GetAllScopesAsync(page, size, filter, sort);"
          },
          {
            "lang": "javascript",
            "label": "MonoCloud Javascript SDK",
            "source": "import { MonoCloudManagementClient } from '@monocloud/management';\n\nconst apiClient = MonoCloudManagementClient.init({ domain: '<your-domain>', apiKey: '[[API-Key]]' });\n\nconst page = 1;\n\nconst size = 10;\n\nconst filter = 'api';\n\nconst sort = 'creation_time:1';\n\nconst result = apiClient.resources.getAllScopes(page, size, filter, sort);"
          }
        ]
      },
      "post": {
        "tags": [
          "Resources"
        ],
        "summary": "Create a scope",
        "description": "Creates a new identity scope that defines a permission clients can request to receive specific user claims.",
        "operationId": "CreateScope",
        "requestBody": {
          "description": "The request payload used to create a new scope.",
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/CreateScopeRequest"
              }
            }
          },
          "required": true
        },
        "responses": {
          "201": {
            "description": "The scope was created successfully",
            "headers": {
              "location": {
                "description": "Returns the location header",
                "schema": {
                  "type": "string",
                  "format": "uri"
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Scope"
                }
              }
            }
          },
          "400": {
            "description": "Bad Request",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                },
                "examples": {
                  "BadRequest": {
                    "$ref": "#/components/examples/BadRequest"
                  }
                }
              }
            }
          },
          "422": {
            "description": "Unprocessable Entity",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/KeyValidationProblemDetails"
                },
                "examples": {
                  "KeyValidationError": {
                    "$ref": "#/components/examples/KeyValidationError"
                  }
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized"
          },
          "403": {
            "description": "Forbidden"
          }
        },
        "security": [
          {
            "API-Key": [ ]
          }
        ],
        "x-codeSamples": [
          {
            "lang": "csharp",
            "label": "MonoCloud .NET SDK",
            "source": "using MonoCloud.Management;\nusing MonoCloud.Management.Models;\nusing MonoCloud.Management.Core.Base;\n\nvar apiClient = new MonoCloudManagementClient(new MonoCloudConfig(\"<your-domain>\", \"[[API-Key]]\"));\n\n\nvar requestBody = new CreateScopeRequest\n  {\n    DisplayName = \"Designation\",\n    Description = \"Current position in the employed organization\",\n    ShowInDiscoveryDocument = true,\n    Name = \"user_profile\",\n    Required = false,\n    Emphasize = false,\n    UserClaims = new List<CreateScopeClaimRequest>\n    {\n      new CreateScopeClaimRequest\n      {\n        Claim = \"job_title\",\n        IncludeInIdentityToken = true,\n        IncludeInUserInfo = true,\n      },\n    },\n  };\n\n\nvar result = await apiClient.Resources.CreateScopeAsync(requestBody);"
          },
          {
            "lang": "javascript",
            "label": "MonoCloud Javascript SDK",
            "source": "import { MonoCloudManagementClient } from '@monocloud/management';\n\nconst apiClient = MonoCloudManagementClient.init({ domain: '<your-domain>', apiKey: '[[API-Key]]' });\n\nconst requestBody = {\n  display_name: 'Designation',\n  description: 'Current position in the employed organization',\n  show_in_discovery_document: true,\n  name: 'user_profile',\n  required: false,\n  emphasize: false,\n  user_claims: [\n    {\n      claim: 'job_title',\n      include_in_identity_token: true,\n      include_in_user_info: true\n    }\n  ]\n};\n\nconst result = apiClient.resources.createScope(requestBody);"
          }
        ]
      }
    },
    "/resources/scopes/{scope_id}": {
      "get": {
        "tags": [
          "Resources"
        ],
        "summary": "Retrieve a scope",
        "description": "Retrieves detailed information for the specified identity scope.",
        "operationId": "FindScopeById",
        "parameters": [
          {
            "name": "scope_id",
            "in": "path",
            "description": "The unique identifier of the scope.",
            "required": true,
            "schema": {
              "type": "string"
            },
            "example": "tQi5Nu2sg7TVB727UfHPT"
          }
        ],
        "responses": {
          "200": {
            "description": "The scope was retrieved successfully",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Scope"
                }
              }
            }
          },
          "404": {
            "description": "Not Found",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                },
                "examples": {
                  "NotFound": {
                    "$ref": "#/components/examples/NotFound"
                  }
                }
              }
            }
          },
          "422": {
            "description": "Unprocessable Entity",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/KeyValidationProblemDetails"
                },
                "examples": {
                  "KeyValidationError": {
                    "$ref": "#/components/examples/KeyValidationError"
                  }
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized"
          },
          "403": {
            "description": "Forbidden"
          }
        },
        "security": [
          {
            "API-Key": [ ]
          }
        ],
        "x-codeSamples": [
          {
            "lang": "csharp",
            "label": "MonoCloud .NET SDK",
            "source": "using MonoCloud.Management;\nusing MonoCloud.Management.Core.Base;\n\nvar apiClient = new MonoCloudManagementClient(new MonoCloudConfig(\"<your-domain>\", \"[[API-Key]]\"));\n\n\nvar scopeId = \"tQi5Nu2sg7TVB727UfHPT\";\n\n\nvar result = await apiClient.Resources.FindScopeByIdAsync(scopeId);"
          },
          {
            "lang": "javascript",
            "label": "MonoCloud Javascript SDK",
            "source": "import { MonoCloudManagementClient } from '@monocloud/management';\n\nconst apiClient = MonoCloudManagementClient.init({ domain: '<your-domain>', apiKey: '[[API-Key]]' });\n\nconst scopeId = 'tQi5Nu2sg7TVB727UfHPT';\n\nconst result = apiClient.resources.findScopeById(scopeId);"
          }
        ]
      },
      "patch": {
        "tags": [
          "Resources"
        ],
        "summary": "Update a scope",
        "description": "Applies a partial update to the specified identity scope. Only fields included in the request are updated.",
        "operationId": "PatchScope",
        "parameters": [
          {
            "name": "scope_id",
            "in": "path",
            "description": "The unique identifier of the scope.",
            "required": true,
            "schema": {
              "type": "string"
            },
            "example": "tQi5Nu2sg7TVB727UfHPT"
          }
        ],
        "requestBody": {
          "description": "The request payload used to update a scope.",
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/PatchScopeRequest"
              }
            }
          },
          "required": true
        },
        "responses": {
          "200": {
            "description": "The scope was updated successfully",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Scope"
                }
              }
            }
          },
          "400": {
            "description": "Bad Request",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                },
                "examples": {
                  "BadRequest": {
                    "$ref": "#/components/examples/BadRequest"
                  }
                }
              }
            }
          },
          "404": {
            "description": "Not Found",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                },
                "examples": {
                  "NotFound": {
                    "$ref": "#/components/examples/NotFound"
                  }
                }
              }
            }
          },
          "422": {
            "description": "Unprocessable Entity",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/KeyValidationProblemDetails"
                },
                "examples": {
                  "KeyValidationError": {
                    "$ref": "#/components/examples/KeyValidationError"
                  }
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized"
          },
          "403": {
            "description": "Forbidden"
          }
        },
        "security": [
          {
            "API-Key": [ ]
          }
        ],
        "x-codeSamples": [
          {
            "lang": "csharp",
            "label": "MonoCloud .NET SDK",
            "source": "using MonoCloud.Management;\nusing MonoCloud.Management.Models;\nusing MonoCloud.Management.Core.Base;\n\nvar apiClient = new MonoCloudManagementClient(new MonoCloudConfig(\"<your-domain>\", \"[[API-Key]]\"));\n\n\nvar scopeId = \"tQi5Nu2sg7TVB727UfHPT\";\n\nvar requestBody = new PatchScopeRequest\n  {\n    DisplayName = \"Designation\",\n    Description = \"Current position in the employed organization\",\n    ShowInDiscoveryDocument = true,\n    Required = false,\n    Emphasize = false,\n    UserClaims = new List<PatchScopeClaimRequest>\n    {\n      new PatchScopeClaimRequest\n      {\n        Claim = \"job_title\",\n        IncludeInIdentityToken = true,\n        IncludeInUserInfo = true,\n      },\n    },\n  };\n\n\nvar result = await apiClient.Resources.PatchScopeAsync(scopeId, requestBody);"
          },
          {
            "lang": "javascript",
            "label": "MonoCloud Javascript SDK",
            "source": "import { MonoCloudManagementClient } from '@monocloud/management';\n\nconst apiClient = MonoCloudManagementClient.init({ domain: '<your-domain>', apiKey: '[[API-Key]]' });\n\nconst scopeId = 'tQi5Nu2sg7TVB727UfHPT';\n\nconst requestBody = {\n  display_name: 'Designation',\n  description: 'Current position in the employed organization',\n  show_in_discovery_document: true,\n  required: false,\n  emphasize: false,\n  user_claims: [\n    {\n      claim: 'job_title',\n      include_in_identity_token: true,\n      include_in_user_info: true\n    }\n  ]\n};\n\nconst result = apiClient.resources.patchScope(scopeId, requestBody);"
          }
        ]
      },
      "delete": {
        "tags": [
          "Resources"
        ],
        "summary": "Delete a scope",
        "description": "Permanently deletes the specified identity scope.\n>[!warning]\n> This operation is irreversible.",
        "operationId": "DeleteScope",
        "parameters": [
          {
            "name": "scope_id",
            "in": "path",
            "description": "The unique identifier of the scope.",
            "required": true,
            "schema": {
              "type": "string"
            },
            "example": "tQi5Nu2sg7TVB727UfHPT"
          }
        ],
        "responses": {
          "204": {
            "description": "The scope was deleted successfully"
          },
          "404": {
            "description": "Not Found",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                },
                "examples": {
                  "NotFound": {
                    "$ref": "#/components/examples/NotFound"
                  }
                }
              }
            }
          },
          "422": {
            "description": "Unprocessable Entity",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/KeyValidationProblemDetails"
                },
                "examples": {
                  "KeyValidationError": {
                    "$ref": "#/components/examples/KeyValidationError"
                  }
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized"
          },
          "403": {
            "description": "Forbidden"
          }
        },
        "security": [
          {
            "API-Key": [ ]
          }
        ],
        "x-codeSamples": [
          {
            "lang": "csharp",
            "label": "MonoCloud .NET SDK",
            "source": "using MonoCloud.Management;\nusing MonoCloud.Management.Core.Base;\n\nvar apiClient = new MonoCloudManagementClient(new MonoCloudConfig(\"<your-domain>\", \"[[API-Key]]\"));\n\n\nvar scopeId = \"tQi5Nu2sg7TVB727UfHPT\";\n\n\nvar result = await apiClient.Resources.DeleteScopeAsync(scopeId);"
          },
          {
            "lang": "javascript",
            "label": "MonoCloud Javascript SDK",
            "source": "import { MonoCloudManagementClient } from '@monocloud/management';\n\nconst apiClient = MonoCloudManagementClient.init({ domain: '<your-domain>', apiKey: '[[API-Key]]' });\n\nconst scopeId = 'tQi5Nu2sg7TVB727UfHPT';\n\nconst result = apiClient.resources.deleteScope(scopeId);"
          }
        ]
      }
    },
    "/resources/claim_resources": {
      "get": {
        "tags": [
          "Resources"
        ],
        "summary": "List claims",
        "description": "Retrieves a paginated list of claims. Optional query parameters allow searching, filtering, and sorting the results.",
        "operationId": "GetAllClaimResources",
        "parameters": [
          {
            "name": "page",
            "in": "query",
            "description": "The page number to retrieve.",
            "schema": {
              "minimum": 1,
              "type": "integer",
              "format": "int32",
              "default": 1
            },
            "example": 1
          },
          {
            "name": "size",
            "in": "query",
            "description": "The number of resources to return per page.",
            "schema": {
              "maximum": 50,
              "minimum": 1,
              "type": "integer",
              "format": "int32",
              "default": 10
            },
            "example": 10
          },
          {
            "name": "filter",
            "in": "query",
            "description": "Optional Lucene-style filter expression used to search by attributes.",
            "schema": {
              "type": "string"
            },
            "example": "api"
          },
          {
            "name": "sort",
            "in": "query",
            "description": "Sort expression in the format `field:direction`, where direction is `1` for ascending or `-1` for descending. Supported fields include - `name`, `display_name`, and `creation_time`",
            "schema": {
              "type": "string"
            },
            "example": "creation_time:1"
          }
        ],
        "responses": {
          "200": {
            "description": "The claims were retrieved successfully",
            "headers": {
              "x-Pagination": {
                "description": "Returns the x-Pagination header",
                "schema": {
                  "$ref": "#/components/schemas/PaginationHeader"
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "type": "array",
                  "items": {
                    "$ref": "#/components/schemas/ClaimResource"
                  }
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized"
          },
          "403": {
            "description": "Forbidden"
          }
        },
        "security": [
          {
            "API-Key": [ ]
          }
        ],
        "x-codeSamples": [
          {
            "lang": "csharp",
            "label": "MonoCloud .NET SDK",
            "source": "using MonoCloud.Management;\nusing MonoCloud.Management.Core.Base;\n\nvar apiClient = new MonoCloudManagementClient(new MonoCloudConfig(\"<your-domain>\", \"[[API-Key]]\"));\n\n\nvar page = 1;\n\nvar size = 10;\n\nvar filter = \"api\";\n\nvar sort = \"creation_time:1\";\n\n\nvar result = await apiClient.Resources.GetAllClaimResourcesAsync(page, size, filter, sort);"
          },
          {
            "lang": "javascript",
            "label": "MonoCloud Javascript SDK",
            "source": "import { MonoCloudManagementClient } from '@monocloud/management';\n\nconst apiClient = MonoCloudManagementClient.init({ domain: '<your-domain>', apiKey: '[[API-Key]]' });\n\nconst page = 1;\n\nconst size = 10;\n\nconst filter = 'api';\n\nconst sort = 'creation_time:1';\n\nconst result = apiClient.resources.getAllClaimResources(page, size, filter, sort);"
          }
        ]
      },
      "post": {
        "tags": [
          "Resources"
        ],
        "summary": "Create a claim",
        "description": "Creates a new claim that may be referenced by identity scopes to control inclusion in tokens and `UserInfo` responses.",
        "operationId": "CreateClaimResource",
        "requestBody": {
          "description": "The request payload used to create a claim.",
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/CreateClaimResourceRequest"
              }
            }
          },
          "required": true
        },
        "responses": {
          "201": {
            "description": "The claim was created successfully",
            "headers": {
              "location": {
                "description": "Returns the location header",
                "schema": {
                  "type": "string",
                  "format": "uri"
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ClaimResource"
                }
              }
            }
          },
          "400": {
            "description": "Bad Request",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                },
                "examples": {
                  "BadRequest": {
                    "$ref": "#/components/examples/BadRequest"
                  }
                }
              }
            }
          },
          "422": {
            "description": "Unprocessable Entity",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/KeyValidationProblemDetails"
                },
                "examples": {
                  "KeyValidationError": {
                    "$ref": "#/components/examples/KeyValidationError"
                  }
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized"
          },
          "403": {
            "description": "Forbidden"
          }
        },
        "security": [
          {
            "API-Key": [ ]
          }
        ],
        "x-codeSamples": [
          {
            "lang": "csharp",
            "label": "MonoCloud .NET SDK",
            "source": "using MonoCloud.Management;\nusing MonoCloud.Management.Models;\nusing MonoCloud.Management.Core.Base;\n\nvar apiClient = new MonoCloudManagementClient(new MonoCloudConfig(\"<your-domain>\", \"[[API-Key]]\"));\n\n\nvar requestBody = new CreateClaimResourceRequest\n  {\n    DisplayName = \"Designation\",\n    Description = \"Current position in the employed organization\",\n    ShowInDiscoveryDocument = true,\n    Name = \"designation\",\n    Source = \"claims.first_name\",\n  };\n\n\nvar result = await apiClient.Resources.CreateClaimResourceAsync(requestBody);"
          },
          {
            "lang": "javascript",
            "label": "MonoCloud Javascript SDK",
            "source": "import { MonoCloudManagementClient } from '@monocloud/management';\n\nconst apiClient = MonoCloudManagementClient.init({ domain: '<your-domain>', apiKey: '[[API-Key]]' });\n\nconst requestBody = {\n  display_name: 'Designation',\n  description: 'Current position in the employed organization',\n  show_in_discovery_document: true,\n  name: 'designation',\n  source: 'claims.first_name'\n};\n\nconst result = apiClient.resources.createClaimResource(requestBody);"
          }
        ]
      }
    },
    "/resources/claim_resources/{claim_id}": {
      "get": {
        "tags": [
          "Resources"
        ],
        "summary": "Retrieve a claim",
        "description": "Retrieves detailed information for the specified claim.",
        "operationId": "FindClaimResourceById",
        "parameters": [
          {
            "name": "claim_id",
            "in": "path",
            "description": "The unique identifier of the claim.",
            "required": true,
            "schema": {
              "type": "string"
            },
            "example": "tQi5Nu2sg7TVB727UfHPT"
          }
        ],
        "responses": {
          "200": {
            "description": "The claim was retrieved successfully",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ClaimResource"
                }
              }
            }
          },
          "404": {
            "description": "Not Found",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                },
                "examples": {
                  "NotFound": {
                    "$ref": "#/components/examples/NotFound"
                  }
                }
              }
            }
          },
          "422": {
            "description": "Unprocessable Entity",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/KeyValidationProblemDetails"
                },
                "examples": {
                  "KeyValidationError": {
                    "$ref": "#/components/examples/KeyValidationError"
                  }
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized"
          },
          "403": {
            "description": "Forbidden"
          }
        },
        "security": [
          {
            "API-Key": [ ]
          }
        ],
        "x-codeSamples": [
          {
            "lang": "csharp",
            "label": "MonoCloud .NET SDK",
            "source": "using MonoCloud.Management;\nusing MonoCloud.Management.Core.Base;\n\nvar apiClient = new MonoCloudManagementClient(new MonoCloudConfig(\"<your-domain>\", \"[[API-Key]]\"));\n\n\nvar claimId = \"tQi5Nu2sg7TVB727UfHPT\";\n\n\nvar result = await apiClient.Resources.FindClaimResourceByIdAsync(claimId);"
          },
          {
            "lang": "javascript",
            "label": "MonoCloud Javascript SDK",
            "source": "import { MonoCloudManagementClient } from '@monocloud/management';\n\nconst apiClient = MonoCloudManagementClient.init({ domain: '<your-domain>', apiKey: '[[API-Key]]' });\n\nconst claimId = 'tQi5Nu2sg7TVB727UfHPT';\n\nconst result = apiClient.resources.findClaimResourceById(claimId);"
          }
        ]
      },
      "patch": {
        "tags": [
          "Resources"
        ],
        "summary": "Update a claim",
        "description": "Applies a partial update to the specified claim. Only fields included in the request are updated.\n>[!note]\n> This operation applies only to custom claims. Built-in claims cannot be modified in order to preserve OpenID Connect compliance.",
        "operationId": "PatchClaimResource",
        "parameters": [
          {
            "name": "claim_id",
            "in": "path",
            "description": "The unique identifier of the claim.",
            "required": true,
            "schema": {
              "type": "string"
            },
            "example": "tQi5Nu2sg7TVB727UfHPT"
          }
        ],
        "requestBody": {
          "description": "The request payload used to update a claim.",
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/PatchClaimResourceRequest"
              }
            }
          },
          "required": true
        },
        "responses": {
          "200": {
            "description": "The claim was updated successfully",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ClaimResource"
                }
              }
            }
          },
          "400": {
            "description": "Bad Request",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                },
                "examples": {
                  "BadRequest": {
                    "$ref": "#/components/examples/BadRequest"
                  }
                }
              }
            }
          },
          "404": {
            "description": "Not Found",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                },
                "examples": {
                  "NotFound": {
                    "$ref": "#/components/examples/NotFound"
                  }
                }
              }
            }
          },
          "422": {
            "description": "Unprocessable Entity",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/KeyValidationProblemDetails"
                },
                "examples": {
                  "KeyValidationError": {
                    "$ref": "#/components/examples/KeyValidationError"
                  }
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized"
          },
          "403": {
            "description": "Forbidden"
          }
        },
        "security": [
          {
            "API-Key": [ ]
          }
        ],
        "x-codeSamples": [
          {
            "lang": "csharp",
            "label": "MonoCloud .NET SDK",
            "source": "using MonoCloud.Management;\nusing MonoCloud.Management.Models;\nusing MonoCloud.Management.Core.Base;\n\nvar apiClient = new MonoCloudManagementClient(new MonoCloudConfig(\"<your-domain>\", \"[[API-Key]]\"));\n\n\nvar claimId = \"tQi5Nu2sg7TVB727UfHPT\";\n\nvar requestBody = new PatchClaimResourceRequest\n  {\n    DisplayName = \"Designation\",\n    Description = \"Current position in the employed organization\",\n    ShowInDiscoveryDocument = true,\n    Source = \"claims.first_name\",\n  };\n\n\nvar result = await apiClient.Resources.PatchClaimResourceAsync(claimId, requestBody);"
          },
          {
            "lang": "javascript",
            "label": "MonoCloud Javascript SDK",
            "source": "import { MonoCloudManagementClient } from '@monocloud/management';\n\nconst apiClient = MonoCloudManagementClient.init({ domain: '<your-domain>', apiKey: '[[API-Key]]' });\n\nconst claimId = 'tQi5Nu2sg7TVB727UfHPT';\n\nconst requestBody = {\n  display_name: 'Designation',\n  description: 'Current position in the employed organization',\n  show_in_discovery_document: true,\n  source: 'claims.first_name'\n};\n\nconst result = apiClient.resources.patchClaimResource(claimId, requestBody);"
          }
        ]
      },
      "delete": {
        "tags": [
          "Resources"
        ],
        "summary": "Delete a claim",
        "description": "Permanently deletes the specified claim.\n>[!warning]\n> This operation is irreversible.",
        "operationId": "DeleteClaimResource",
        "parameters": [
          {
            "name": "claim_id",
            "in": "path",
            "description": "The unique identifier of the claim.",
            "required": true,
            "schema": {
              "type": "string"
            },
            "example": "tQi5Nu2sg7TVB727UfHPT"
          }
        ],
        "responses": {
          "204": {
            "description": "The claim was deleted successfully"
          },
          "404": {
            "description": "Not Found",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                },
                "examples": {
                  "NotFound": {
                    "$ref": "#/components/examples/NotFound"
                  }
                }
              }
            }
          },
          "422": {
            "description": "Unprocessable Entity",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/KeyValidationProblemDetails"
                },
                "examples": {
                  "KeyValidationError": {
                    "$ref": "#/components/examples/KeyValidationError"
                  }
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized"
          },
          "403": {
            "description": "Forbidden"
          }
        },
        "security": [
          {
            "API-Key": [ ]
          }
        ],
        "x-codeSamples": [
          {
            "lang": "csharp",
            "label": "MonoCloud .NET SDK",
            "source": "using MonoCloud.Management;\nusing MonoCloud.Management.Core.Base;\n\nvar apiClient = new MonoCloudManagementClient(new MonoCloudConfig(\"<your-domain>\", \"[[API-Key]]\"));\n\n\nvar claimId = \"tQi5Nu2sg7TVB727UfHPT\";\n\n\nvar result = await apiClient.Resources.DeleteClaimResourceAsync(claimId);"
          },
          {
            "lang": "javascript",
            "label": "MonoCloud Javascript SDK",
            "source": "import { MonoCloudManagementClient } from '@monocloud/management';\n\nconst apiClient = MonoCloudManagementClient.init({ domain: '<your-domain>', apiKey: '[[API-Key]]' });\n\nconst claimId = 'tQi5Nu2sg7TVB727UfHPT';\n\nconst result = apiClient.resources.deleteClaimResource(claimId);"
          }
        ]
      }
    },
    "/users": {
      "get": {
        "tags": [
          "Users"
        ],
        "summary": "List users",
        "description": "Retrieves a paginated list of users. Optional query parameters allow searching, filtering, and sorting the results.",
        "operationId": "GetAllUsers",
        "parameters": [
          {
            "name": "page",
            "in": "query",
            "description": "The page number to retrieve.",
            "schema": {
              "minimum": 1,
              "type": "integer",
              "format": "int32",
              "default": 1
            },
            "example": 1
          },
          {
            "name": "size",
            "in": "query",
            "description": "The number of users to return per page.",
            "schema": {
              "maximum": 50,
              "minimum": 1,
              "type": "integer",
              "format": "int32",
              "default": 10
            },
            "example": 10
          },
          {
            "name": "filter",
            "in": "query",
            "description": "Optional Lucene-style filter expression used to search by attributes.",
            "schema": {
              "type": "string"
            },
            "example": "(name:bob OR email:bob@example.com)"
          },
          {
            "name": "sort",
            "in": "query",
            "description": "Sort expression in the format `field:direction`, where direction is `1` for ascending or `-1` for descending.\nSupported fields include - `failure_count`, `last_sign_in_attempt`, `sign_in_attempts_count`, `last_sign_in_success`, `sign_in_success_count`, `last_activity`, `block_until`, `creation_time`, `last_updated`.",
            "schema": {
              "type": "string"
            },
            "example": "creation_time:1"
          }
        ],
        "responses": {
          "200": {
            "description": "The users were retrieved successfully",
            "headers": {
              "x-Pagination": {
                "description": "Returns the x-Pagination header",
                "schema": {
                  "$ref": "#/components/schemas/PaginationHeader"
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "type": "array",
                  "items": {
                    "$ref": "#/components/schemas/UserSummary"
                  }
                }
              }
            }
          },
          "400": {
            "description": "Bad Request",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                },
                "examples": {
                  "BadRequest": {
                    "$ref": "#/components/examples/BadRequest"
                  }
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized"
          },
          "403": {
            "description": "Forbidden"
          }
        },
        "security": [
          {
            "API-Key": [ ]
          }
        ],
        "x-codeSamples": [
          {
            "lang": "csharp",
            "label": "MonoCloud .NET SDK",
            "source": "using MonoCloud.Management;\nusing MonoCloud.Management.Core.Base;\n\nvar apiClient = new MonoCloudManagementClient(new MonoCloudConfig(\"<your-domain>\", \"[[API-Key]]\"));\n\n\nvar page = 1;\n\nvar size = 10;\n\nvar filter = \"(name:bob OR email:bob@example.com)\";\n\nvar sort = \"creation_time:1\";\n\n\nvar result = await apiClient.Users.GetAllUsersAsync(page, size, filter, sort);"
          },
          {
            "lang": "javascript",
            "label": "MonoCloud Javascript SDK",
            "source": "import { MonoCloudManagementClient } from '@monocloud/management';\n\nconst apiClient = MonoCloudManagementClient.init({ domain: '<your-domain>', apiKey: '[[API-Key]]' });\n\nconst page = 1;\n\nconst size = 10;\n\nconst filter = '(name:bob OR email:bob@example.com)';\n\nconst sort = 'creation_time:1';\n\nconst result = apiClient.users.getAllUsers(page, size, filter, sort);"
          }
        ]
      },
      "post": {
        "tags": [
          "Users"
        ],
        "summary": "Create a user",
        "description": "Creates a new user using identifiers such as email, phone number, or username, with an optional password or imported password hash. This endpoint also supports migration scenarios by allowing administrators to preserve verification states and bypass password policies or identifier restrictions when required.\n>[!note]\n> Configured sign-up policies are enforced by default; however, this allows authorized requests to override them when permitted.",
        "operationId": "CreateUser",
        "requestBody": {
          "description": "The request payload used to create a user.",
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/CreateUserRequest"
              }
            }
          },
          "required": true
        },
        "responses": {
          "201": {
            "description": "The user was created successfully",
            "headers": {
              "location": {
                "description": "Returns the location header",
                "schema": {
                  "type": "string",
                  "format": "uri"
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/User"
                }
              }
            }
          },
          "400": {
            "description": "Bad Request",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                },
                "examples": {
                  "BadRequest": {
                    "$ref": "#/components/examples/BadRequest"
                  }
                }
              }
            }
          },
          "422": {
            "description": "Unprocessable Entity",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/IdentityValidationProblemDetails"
                },
                "examples": {
                  "IdentityValidationError": {
                    "$ref": "#/components/examples/IdentityValidationError"
                  }
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized"
          },
          "403": {
            "description": "Forbidden"
          }
        },
        "security": [
          {
            "API-Key": [ ]
          }
        ],
        "x-codeSamples": [
          {
            "lang": "csharp",
            "label": "MonoCloud .NET SDK",
            "source": "using MonoCloud.Management;\nusing MonoCloud.Management.Models;\nusing MonoCloud.Management.Core.Base;\n\nvar apiClient = new MonoCloudManagementClient(new MonoCloudConfig(\"<your-domain>\", \"[[API-Key]]\"));\n\n\nvar requestBody = new CreateUserRequest\n  {\n    Username = \"johndoe\",\n    Email = \"johndoe@example.com\",\n    EmailVerified = true,\n    PhoneNumber = \"+14085551234\",\n    PhoneNumberVerified = true,\n    Password = \"SuperStrongPass12345!!!\",\n    PasswordHash = \"$2a$12$LJdMf15uRsDpd57LKCGxSOTec3MD6jsgJhxRxCeSj2ZKobGo2xPDS\",\n    PasswordHashAlgorithm = PasswordAlgorithms.Bcrypt,\n    IsTemporaryPassword = true,\n    Name = \"John Doe\",\n    GivenName = \"John\",\n    MiddleName = \"S\",\n    FamilyName = \"Smith\",\n    Nickname = \"Joey\",\n    Picture = \"https://example.com/image.png\",\n    SkipPasswordPolicyChecks = false,\n    SkipIdentifierRestrictionChecks = false,\n    SkipConformanceChecks = false,\n  };\n\n\nvar result = await apiClient.Users.CreateUserAsync(requestBody);"
          },
          {
            "lang": "javascript",
            "label": "MonoCloud Javascript SDK",
            "source": "import { MonoCloudManagementClient } from '@monocloud/management';\n\nconst apiClient = MonoCloudManagementClient.init({ domain: '<your-domain>', apiKey: '[[API-Key]]' });\n\nconst requestBody = {\n  username: 'johndoe',\n  email: 'johndoe@example.com',\n  email_verified: true,\n  phone_number: '+14085551234',\n  phone_number_verified: true,\n  password: 'SuperStrongPass12345!!!',\n  password_hash: '$2a$12$LJdMf15uRsDpd57LKCGxSOTec3MD6jsgJhxRxCeSj2ZKobGo2xPDS',\n  password_hash_algorithm: 'bcrypt',\n  is_temporary_password: true,\n  name: 'John Doe',\n  given_name: 'John',\n  middle_name: 'S',\n  family_name: 'Smith',\n  nickname: 'Joey',\n  picture: 'https://example.com/image.png',\n  skip_password_policy_checks: false,\n  skip_identifier_restriction_checks: false,\n  skip_conformance_checks: false\n};\n\nconst result = apiClient.users.createUser(requestBody);"
          }
        ]
      }
    },
    "/users/{user_id}": {
      "get": {
        "tags": [
          "Users"
        ],
        "summary": "Retrieve a user",
        "description": "Retrieves detailed information for the specified user.",
        "operationId": "FindUserById",
        "parameters": [
          {
            "name": "user_id",
            "in": "path",
            "description": "The unique identifier of the user.",
            "required": true,
            "schema": {
              "type": "string"
            },
            "example": "WUgDGqaqzqkRmsgd3PFAT"
          }
        ],
        "responses": {
          "200": {
            "description": "The user was retrieved successfully",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/User"
                }
              }
            }
          },
          "422": {
            "description": "Unprocessable Entity",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/KeyValidationProblemDetails"
                },
                "examples": {
                  "KeyValidationError": {
                    "$ref": "#/components/examples/KeyValidationError"
                  }
                }
              }
            }
          },
          "404": {
            "description": "Not Found",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                },
                "examples": {
                  "NotFound": {
                    "$ref": "#/components/examples/NotFound"
                  }
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized"
          },
          "403": {
            "description": "Forbidden"
          }
        },
        "security": [
          {
            "API-Key": [ ]
          }
        ],
        "x-codeSamples": [
          {
            "lang": "csharp",
            "label": "MonoCloud .NET SDK",
            "source": "using MonoCloud.Management;\nusing MonoCloud.Management.Core.Base;\n\nvar apiClient = new MonoCloudManagementClient(new MonoCloudConfig(\"<your-domain>\", \"[[API-Key]]\"));\n\n\nvar userId = \"WUgDGqaqzqkRmsgd3PFAT\";\n\n\nvar result = await apiClient.Users.FindUserByIdAsync(userId);"
          },
          {
            "lang": "javascript",
            "label": "MonoCloud Javascript SDK",
            "source": "import { MonoCloudManagementClient } from '@monocloud/management';\n\nconst apiClient = MonoCloudManagementClient.init({ domain: '<your-domain>', apiKey: '[[API-Key]]' });\n\nconst userId = 'WUgDGqaqzqkRmsgd3PFAT';\n\nconst result = apiClient.users.findUserById(userId);"
          }
        ]
      },
      "delete": {
        "tags": [
          "Users"
        ],
        "summary": "Delete a user",
        "description": "Permanently deletes the specified user.\n>[!warning]\n> This operation is irreversible.",
        "operationId": "DeleteUser",
        "parameters": [
          {
            "name": "user_id",
            "in": "path",
            "description": "The unique identifier of the user.",
            "required": true,
            "schema": {
              "type": "string"
            },
            "example": "WUgDGqaqzqkRmsgd3PFAT"
          }
        ],
        "responses": {
          "204": {
            "description": "The user was deleted successfully"
          },
          "422": {
            "description": "Unprocessable Entity",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/IValidationProblemDetails"
                },
                "examples": {
                  "KeyValidationError": {
                    "$ref": "#/components/examples/KeyValidationError"
                  },
                  "IdentityValidationError": {
                    "$ref": "#/components/examples/IdentityValidationError"
                  }
                }
              }
            }
          },
          "404": {
            "description": "Not Found",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                },
                "examples": {
                  "NotFound": {
                    "$ref": "#/components/examples/NotFound"
                  }
                }
              }
            }
          },
          "403": {
            "description": "Forbidden",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                },
                "examples": {
                  "Forbidden": {
                    "$ref": "#/components/examples/Forbidden"
                  }
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized"
          }
        },
        "security": [
          {
            "API-Key": [ ]
          }
        ],
        "x-codeSamples": [
          {
            "lang": "csharp",
            "label": "MonoCloud .NET SDK",
            "source": "using MonoCloud.Management;\nusing MonoCloud.Management.Core.Base;\n\nvar apiClient = new MonoCloudManagementClient(new MonoCloudConfig(\"<your-domain>\", \"[[API-Key]]\"));\n\n\nvar userId = \"WUgDGqaqzqkRmsgd3PFAT\";\n\n\nvar result = await apiClient.Users.DeleteUserAsync(userId);"
          },
          {
            "lang": "javascript",
            "label": "MonoCloud Javascript SDK",
            "source": "import { MonoCloudManagementClient } from '@monocloud/management';\n\nconst apiClient = MonoCloudManagementClient.init({ domain: '<your-domain>', apiKey: '[[API-Key]]' });\n\nconst userId = 'WUgDGqaqzqkRmsgd3PFAT';\n\nconst result = apiClient.users.deleteUser(userId);"
          }
        ]
      }
    },
    "/users/{user_id}/enable": {
      "post": {
        "tags": [
          "Users"
        ],
        "summary": "Enable a user",
        "description": "Re-enables a disabled user, restoring their ability to sign-in and access connected applications.",
        "operationId": "EnableUser",
        "parameters": [
          {
            "name": "user_id",
            "in": "path",
            "description": "The unique identifier of the user.",
            "required": true,
            "schema": {
              "type": "string"
            },
            "example": "WUgDGqaqzqkRmsgd3PFAT"
          }
        ],
        "responses": {
          "200": {
            "description": "The user was enabled successfully",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/User"
                }
              }
            }
          },
          "422": {
            "description": "Unprocessable Entity",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/IValidationProblemDetails"
                },
                "examples": {
                  "KeyValidationError": {
                    "$ref": "#/components/examples/KeyValidationError"
                  },
                  "IdentityValidationError": {
                    "$ref": "#/components/examples/IdentityValidationError"
                  }
                }
              }
            }
          },
          "404": {
            "description": "Not Found",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                },
                "examples": {
                  "NotFound": {
                    "$ref": "#/components/examples/NotFound"
                  }
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized"
          },
          "403": {
            "description": "Forbidden"
          }
        },
        "security": [
          {
            "API-Key": [ ]
          }
        ],
        "x-codeSamples": [
          {
            "lang": "csharp",
            "label": "MonoCloud .NET SDK",
            "source": "using MonoCloud.Management;\nusing MonoCloud.Management.Core.Base;\n\nvar apiClient = new MonoCloudManagementClient(new MonoCloudConfig(\"<your-domain>\", \"[[API-Key]]\"));\n\n\nvar userId = \"WUgDGqaqzqkRmsgd3PFAT\";\n\n\nvar result = await apiClient.Users.EnableUserAsync(userId);"
          },
          {
            "lang": "javascript",
            "label": "MonoCloud Javascript SDK",
            "source": "import { MonoCloudManagementClient } from '@monocloud/management';\n\nconst apiClient = MonoCloudManagementClient.init({ domain: '<your-domain>', apiKey: '[[API-Key]]' });\n\nconst userId = 'WUgDGqaqzqkRmsgd3PFAT';\n\nconst result = apiClient.users.enableUser(userId);"
          }
        ]
      }
    },
    "/users/{user_id}/disable": {
      "post": {
        "tags": [
          "Users"
        ],
        "summary": "Disable a user",
        "description": "Marks the user account as disabled, preventing sign-in and access to connected applications. Optionally, active sessions can be revoked and existing opaque tokens invalidated, signing the user out immediately across all devices.",
        "operationId": "DisableUser",
        "parameters": [
          {
            "name": "user_id",
            "in": "path",
            "description": "The unique identifier of the user.",
            "required": true,
            "schema": {
              "type": "string"
            },
            "example": "WUgDGqaqzqkRmsgd3PFAT"
          }
        ],
        "requestBody": {
          "description": "The request payload used to disable a user.",
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/DisableUserRequest"
              }
            }
          },
          "required": true
        },
        "responses": {
          "200": {
            "description": "The user was disabled successfully",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/User"
                }
              }
            }
          },
          "422": {
            "description": "Unprocessable Entity",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/IValidationProblemDetails"
                },
                "examples": {
                  "KeyValidationError": {
                    "$ref": "#/components/examples/KeyValidationError"
                  },
                  "IdentityValidationError": {
                    "$ref": "#/components/examples/IdentityValidationError"
                  }
                }
              }
            }
          },
          "404": {
            "description": "Not Found",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                },
                "examples": {
                  "NotFound": {
                    "$ref": "#/components/examples/NotFound"
                  }
                }
              }
            }
          },
          "403": {
            "description": "Forbidden",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                },
                "examples": {
                  "Forbidden": {
                    "$ref": "#/components/examples/Forbidden"
                  }
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized"
          }
        },
        "security": [
          {
            "API-Key": [ ]
          }
        ],
        "x-codeSamples": [
          {
            "lang": "csharp",
            "label": "MonoCloud .NET SDK",
            "source": "using MonoCloud.Management;\nusing MonoCloud.Management.Models;\nusing MonoCloud.Management.Core.Base;\n\nvar apiClient = new MonoCloudManagementClient(new MonoCloudConfig(\"<your-domain>\", \"[[API-Key]]\"));\n\n\nvar userId = \"WUgDGqaqzqkRmsgd3PFAT\";\n\nvar requestBody = new DisableUserRequest\n  {\n    RevokeSessions = false,\n  };\n\n\nvar result = await apiClient.Users.DisableUserAsync(userId, requestBody);"
          },
          {
            "lang": "javascript",
            "label": "MonoCloud Javascript SDK",
            "source": "import { MonoCloudManagementClient } from '@monocloud/management';\n\nconst apiClient = MonoCloudManagementClient.init({ domain: '<your-domain>', apiKey: '[[API-Key]]' });\n\nconst userId = 'WUgDGqaqzqkRmsgd3PFAT';\n\nconst requestBody = {\n  revoke_sessions: false\n};\n\nconst result = apiClient.users.disableUser(userId, requestBody);"
          }
        ]
      }
    },
    "/users/{user_id}/unblock": {
      "post": {
        "tags": [
          "Users"
        ],
        "summary": "Reset user lockout",
        "description": "Resets the lockout triggered by excessive failed sign-in attempts, allowing the user to authenticate again.",
        "operationId": "UnblockUser",
        "parameters": [
          {
            "name": "user_id",
            "in": "path",
            "description": "The unique identifier of the user.",
            "required": true,
            "schema": {
              "type": "string"
            },
            "example": "WUgDGqaqzqkRmsgd3PFAT"
          }
        ],
        "responses": {
          "200": {
            "description": "The user lockout was reset successfully",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/User"
                }
              }
            }
          },
          "422": {
            "description": "Unprocessable Entity",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/IValidationProblemDetails"
                },
                "examples": {
                  "KeyValidationError": {
                    "$ref": "#/components/examples/KeyValidationError"
                  },
                  "IdentityValidationError": {
                    "$ref": "#/components/examples/IdentityValidationError"
                  }
                }
              }
            }
          },
          "404": {
            "description": "Not Found",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                },
                "examples": {
                  "NotFound": {
                    "$ref": "#/components/examples/NotFound"
                  }
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized"
          },
          "403": {
            "description": "Forbidden"
          }
        },
        "security": [
          {
            "API-Key": [ ]
          }
        ],
        "x-codeSamples": [
          {
            "lang": "csharp",
            "label": "MonoCloud .NET SDK",
            "source": "using MonoCloud.Management;\nusing MonoCloud.Management.Core.Base;\n\nvar apiClient = new MonoCloudManagementClient(new MonoCloudConfig(\"<your-domain>\", \"[[API-Key]]\"));\n\n\nvar userId = \"WUgDGqaqzqkRmsgd3PFAT\";\n\n\nvar result = await apiClient.Users.UnblockUserAsync(userId);"
          },
          {
            "lang": "javascript",
            "label": "MonoCloud Javascript SDK",
            "source": "import { MonoCloudManagementClient } from '@monocloud/management';\n\nconst apiClient = MonoCloudManagementClient.init({ domain: '<your-domain>', apiKey: '[[API-Key]]' });\n\nconst userId = 'WUgDGqaqzqkRmsgd3PFAT';\n\nconst result = apiClient.users.unblockUser(userId);"
          }
        ]
      }
    },
    "/users/{user_id}/username": {
      "put": {
        "tags": [
          "Users"
        ],
        "summary": "Add or update username",
        "description": "Assigns or updates the username for the user, enabling username-based authentication when applicable.",
        "operationId": "UpdateUsername",
        "parameters": [
          {
            "name": "user_id",
            "in": "path",
            "description": "The unique identifier of the user.",
            "required": true,
            "schema": {
              "type": "string"
            },
            "example": "WUgDGqaqzqkRmsgd3PFAT"
          }
        ],
        "requestBody": {
          "description": "The request payload used to add or update the username.",
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/UpdateUsernameRequest"
              }
            }
          },
          "required": true
        },
        "responses": {
          "200": {
            "description": "The username was successfully assigned",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/User"
                }
              }
            }
          },
          "400": {
            "description": "Bad Request",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                },
                "examples": {
                  "BadRequest": {
                    "$ref": "#/components/examples/BadRequest"
                  }
                }
              }
            }
          },
          "422": {
            "description": "Unprocessable Entity",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/IValidationProblemDetails"
                },
                "examples": {
                  "KeyValidationError": {
                    "$ref": "#/components/examples/KeyValidationError"
                  },
                  "IdentityValidationError": {
                    "$ref": "#/components/examples/IdentityValidationError"
                  }
                }
              }
            }
          },
          "404": {
            "description": "Not Found",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                },
                "examples": {
                  "NotFound": {
                    "$ref": "#/components/examples/NotFound"
                  }
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized"
          },
          "403": {
            "description": "Forbidden"
          }
        },
        "security": [
          {
            "API-Key": [ ]
          }
        ],
        "x-codeSamples": [
          {
            "lang": "csharp",
            "label": "MonoCloud .NET SDK",
            "source": "using MonoCloud.Management;\nusing MonoCloud.Management.Models;\nusing MonoCloud.Management.Core.Base;\n\nvar apiClient = new MonoCloudManagementClient(new MonoCloudConfig(\"<your-domain>\", \"[[API-Key]]\"));\n\n\nvar userId = \"WUgDGqaqzqkRmsgd3PFAT\";\n\nvar requestBody = new UpdateUsernameRequest\n  {\n    Username = \"johndoe\",\n  };\n\n\nvar result = await apiClient.Users.UpdateUsernameAsync(userId, requestBody);"
          },
          {
            "lang": "javascript",
            "label": "MonoCloud Javascript SDK",
            "source": "import { MonoCloudManagementClient } from '@monocloud/management';\n\nconst apiClient = MonoCloudManagementClient.init({ domain: '<your-domain>', apiKey: '[[API-Key]]' });\n\nconst userId = 'WUgDGqaqzqkRmsgd3PFAT';\n\nconst requestBody = {\n  username: 'johndoe'\n};\n\nconst result = apiClient.users.updateUsername(userId, requestBody);"
          }
        ]
      },
      "delete": {
        "tags": [
          "Users"
        ],
        "summary": "Remove a username",
        "description": "Removes the username from the user's account. Once removed, the user will no longer be able to authenticate using a username.",
        "operationId": "RemoveUsername",
        "parameters": [
          {
            "name": "user_id",
            "in": "path",
            "description": "The unique identifier of the user.",
            "required": true,
            "schema": {
              "type": "string"
            },
            "example": "WUgDGqaqzqkRmsgd3PFAT"
          }
        ],
        "responses": {
          "200": {
            "description": "The user's username was removed successfully",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/User"
                }
              }
            }
          },
          "400": {
            "description": "Bad Request",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                },
                "examples": {
                  "BadRequest": {
                    "$ref": "#/components/examples/BadRequest"
                  }
                }
              }
            }
          },
          "422": {
            "description": "Unprocessable Entity",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/IValidationProblemDetails"
                },
                "examples": {
                  "KeyValidationError": {
                    "$ref": "#/components/examples/KeyValidationError"
                  },
                  "IdentityValidationError": {
                    "$ref": "#/components/examples/IdentityValidationError"
                  }
                }
              }
            }
          },
          "404": {
            "description": "Not Found",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                },
                "examples": {
                  "NotFound": {
                    "$ref": "#/components/examples/NotFound"
                  }
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized"
          },
          "403": {
            "description": "Forbidden"
          }
        },
        "security": [
          {
            "API-Key": [ ]
          }
        ],
        "x-codeSamples": [
          {
            "lang": "csharp",
            "label": "MonoCloud .NET SDK",
            "source": "using MonoCloud.Management;\nusing MonoCloud.Management.Core.Base;\n\nvar apiClient = new MonoCloudManagementClient(new MonoCloudConfig(\"<your-domain>\", \"[[API-Key]]\"));\n\n\nvar userId = \"WUgDGqaqzqkRmsgd3PFAT\";\n\n\nvar result = await apiClient.Users.RemoveUsernameAsync(userId);"
          },
          {
            "lang": "javascript",
            "label": "MonoCloud Javascript SDK",
            "source": "import { MonoCloudManagementClient } from '@monocloud/management';\n\nconst apiClient = MonoCloudManagementClient.init({ domain: '<your-domain>', apiKey: '[[API-Key]]' });\n\nconst userId = 'WUgDGqaqzqkRmsgd3PFAT';\n\nconst result = apiClient.users.removeUsername(userId);"
          }
        ]
      }
    },
    "/users/{user_id}/emails": {
      "post": {
        "tags": [
          "Users"
        ],
        "summary": "Add an email address",
        "description": "Adds a new email address to the user profile. Optional parameters allow specifying whether the email should be marked as verified.",
        "operationId": "AddEmail",
        "parameters": [
          {
            "name": "user_id",
            "in": "path",
            "description": "The unique identifier of the user.",
            "required": true,
            "schema": {
              "type": "string"
            },
            "example": "WUgDGqaqzqkRmsgd3PFAT"
          }
        ],
        "requestBody": {
          "description": "The request payload used to add an email address.",
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/AddEmailRequest"
              }
            }
          },
          "required": true
        },
        "responses": {
          "200": {
            "description": "The email was added to the user successfully",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/User"
                }
              }
            }
          },
          "400": {
            "description": "Bad Request",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                },
                "examples": {
                  "BadRequest": {
                    "$ref": "#/components/examples/BadRequest"
                  }
                }
              }
            }
          },
          "422": {
            "description": "Unprocessable Entity",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/IValidationProblemDetails"
                },
                "examples": {
                  "KeyValidationError": {
                    "$ref": "#/components/examples/KeyValidationError"
                  },
                  "IdentityValidationError": {
                    "$ref": "#/components/examples/IdentityValidationError"
                  }
                }
              }
            }
          },
          "404": {
            "description": "Not Found",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                },
                "examples": {
                  "NotFound": {
                    "$ref": "#/components/examples/NotFound"
                  }
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized"
          },
          "403": {
            "description": "Forbidden"
          }
        },
        "security": [
          {
            "API-Key": [ ]
          }
        ],
        "x-codeSamples": [
          {
            "lang": "csharp",
            "label": "MonoCloud .NET SDK",
            "source": "using MonoCloud.Management;\nusing MonoCloud.Management.Models;\nusing MonoCloud.Management.Core.Base;\n\nvar apiClient = new MonoCloudManagementClient(new MonoCloudConfig(\"<your-domain>\", \"[[API-Key]]\"));\n\n\nvar userId = \"WUgDGqaqzqkRmsgd3PFAT\";\n\nvar requestBody = new AddEmailRequest\n  {\n    Email = \"johndoe@example.com\",\n    IsVerified = true,\n    SkipRestrictionChecks = false,\n  };\n\n\nvar result = await apiClient.Users.AddEmailAsync(userId, requestBody);"
          },
          {
            "lang": "javascript",
            "label": "MonoCloud Javascript SDK",
            "source": "import { MonoCloudManagementClient } from '@monocloud/management';\n\nconst apiClient = MonoCloudManagementClient.init({ domain: '<your-domain>', apiKey: '[[API-Key]]' });\n\nconst userId = 'WUgDGqaqzqkRmsgd3PFAT';\n\nconst requestBody = {\n  email: 'johndoe@example.com',\n  is_verified: true,\n  skip_restriction_checks: false\n};\n\nconst result = apiClient.users.addEmail(userId, requestBody);"
          }
        ]
      }
    },
    "/users/{user_id}/emails/{identifier_id}": {
      "delete": {
        "tags": [
          "Users"
        ],
        "summary": "Remove an email address",
        "description": "Removes the specified email address from the user’s account. Once removed, it is no longer available for authentication, verification or communication.\n>[!note]\n> Removing an email may affect flows that depend on it, such as password recovery or notification delivery.",
        "operationId": "RemoveEmail",
        "parameters": [
          {
            "name": "user_id",
            "in": "path",
            "description": "The unique identifier of the user.",
            "required": true,
            "schema": {
              "type": "string"
            },
            "example": "WUgDGqaqzqkRmsgd3PFAT"
          },
          {
            "name": "identifier_id",
            "in": "path",
            "description": "The unique identifier of the email address.",
            "required": true,
            "schema": {
              "type": "string",
              "format": "uuid"
            },
            "example": "add5c153-1ae5-4ca7-9678-c8d9385753d2"
          }
        ],
        "responses": {
          "200": {
            "description": "The user's email was removed successfully",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/User"
                }
              }
            }
          },
          "400": {
            "description": "Bad Request",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                },
                "examples": {
                  "BadRequest": {
                    "$ref": "#/components/examples/BadRequest"
                  }
                }
              }
            }
          },
          "422": {
            "description": "Unprocessable Entity",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/IValidationProblemDetails"
                },
                "examples": {
                  "KeyValidationError": {
                    "$ref": "#/components/examples/KeyValidationError"
                  },
                  "IdentityValidationError": {
                    "$ref": "#/components/examples/IdentityValidationError"
                  }
                }
              }
            }
          },
          "404": {
            "description": "Not Found",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                },
                "examples": {
                  "NotFound": {
                    "$ref": "#/components/examples/NotFound"
                  }
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized"
          },
          "403": {
            "description": "Forbidden"
          }
        },
        "security": [
          {
            "API-Key": [ ]
          }
        ],
        "x-codeSamples": [
          {
            "lang": "csharp",
            "label": "MonoCloud .NET SDK",
            "source": "using MonoCloud.Management;\nusing MonoCloud.Management.Core.Base;\n\nvar apiClient = new MonoCloudManagementClient(new MonoCloudConfig(\"<your-domain>\", \"[[API-Key]]\"));\n\n\nvar userId = \"WUgDGqaqzqkRmsgd3PFAT\";\n\nvar identifierId = Guid.Parse(\"add5c153-1ae5-4ca7-9678-c8d9385753d2\");\n\n\nvar result = await apiClient.Users.RemoveEmailAsync(userId, identifierId);"
          },
          {
            "lang": "javascript",
            "label": "MonoCloud Javascript SDK",
            "source": "import { MonoCloudManagementClient } from '@monocloud/management';\n\nconst apiClient = MonoCloudManagementClient.init({ domain: '<your-domain>', apiKey: '[[API-Key]]' });\n\nconst userId = 'WUgDGqaqzqkRmsgd3PFAT';\n\nconst identifierId = 'add5c153-1ae5-4ca7-9678-c8d9385753d2';\n\nconst result = apiClient.users.removeEmail(userId, identifierId);"
          }
        ]
      }
    },
    "/users/{user_id}/emails/{identifier_id}/primary": {
      "post": {
        "tags": [
          "Users"
        ],
        "summary": "Set an email as primary",
        "description": "Marks the specified email address as the user's primary email, making it the default for authentication, recovery, and communication.",
        "operationId": "SetPrimaryEmail",
        "parameters": [
          {
            "name": "user_id",
            "in": "path",
            "description": "The unique identifier of the user.",
            "required": true,
            "schema": {
              "type": "string"
            },
            "example": "WUgDGqaqzqkRmsgd3PFAT"
          },
          {
            "name": "identifier_id",
            "in": "path",
            "description": "The unique identifier of the email address.",
            "required": true,
            "schema": {
              "type": "string",
              "format": "uuid"
            },
            "example": "add5c153-1ae5-4ca7-9678-c8d9385753d2"
          }
        ],
        "responses": {
          "200": {
            "description": "The user's email was set as primary successfully",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/User"
                }
              }
            }
          },
          "400": {
            "description": "Bad Request",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                },
                "examples": {
                  "BadRequest": {
                    "$ref": "#/components/examples/BadRequest"
                  }
                }
              }
            }
          },
          "422": {
            "description": "Unprocessable Entity",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/IValidationProblemDetails"
                },
                "examples": {
                  "KeyValidationError": {
                    "$ref": "#/components/examples/KeyValidationError"
                  },
                  "IdentityValidationError": {
                    "$ref": "#/components/examples/IdentityValidationError"
                  }
                }
              }
            }
          },
          "404": {
            "description": "Not Found",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                },
                "examples": {
                  "NotFound": {
                    "$ref": "#/components/examples/NotFound"
                  }
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized"
          },
          "403": {
            "description": "Forbidden"
          }
        },
        "security": [
          {
            "API-Key": [ ]
          }
        ],
        "x-codeSamples": [
          {
            "lang": "csharp",
            "label": "MonoCloud .NET SDK",
            "source": "using MonoCloud.Management;\nusing MonoCloud.Management.Core.Base;\n\nvar apiClient = new MonoCloudManagementClient(new MonoCloudConfig(\"<your-domain>\", \"[[API-Key]]\"));\n\n\nvar userId = \"WUgDGqaqzqkRmsgd3PFAT\";\n\nvar identifierId = Guid.Parse(\"add5c153-1ae5-4ca7-9678-c8d9385753d2\");\n\n\nvar result = await apiClient.Users.SetPrimaryEmailAsync(userId, identifierId);"
          },
          {
            "lang": "javascript",
            "label": "MonoCloud Javascript SDK",
            "source": "import { MonoCloudManagementClient } from '@monocloud/management';\n\nconst apiClient = MonoCloudManagementClient.init({ domain: '<your-domain>', apiKey: '[[API-Key]]' });\n\nconst userId = 'WUgDGqaqzqkRmsgd3PFAT';\n\nconst identifierId = 'add5c153-1ae5-4ca7-9678-c8d9385753d2';\n\nconst result = apiClient.users.setPrimaryEmail(userId, identifierId);"
          }
        ]
      }
    },
    "/users/{user_id}/emails/{identifier_id}/verify": {
      "post": {
        "tags": [
          "Users"
        ],
        "summary": "Mark an email as verified",
        "description": "Marks the specified email address as verified, allowing its use for authentication, sensitive actions, and communication.",
        "operationId": "SetEmailVerified",
        "parameters": [
          {
            "name": "user_id",
            "in": "path",
            "description": "The unique identifier of the user.",
            "required": true,
            "schema": {
              "type": "string"
            },
            "example": "WUgDGqaqzqkRmsgd3PFAT"
          },
          {
            "name": "identifier_id",
            "in": "path",
            "description": "The unique identifier of the email address.",
            "required": true,
            "schema": {
              "type": "string",
              "format": "uuid"
            },
            "example": "add5c153-1ae5-4ca7-9678-c8d9385753d2"
          }
        ],
        "responses": {
          "200": {
            "description": "The user's email was marked as verified successfully",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/User"
                }
              }
            }
          },
          "400": {
            "description": "Bad Request",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                },
                "examples": {
                  "BadRequest": {
                    "$ref": "#/components/examples/BadRequest"
                  }
                }
              }
            }
          },
          "422": {
            "description": "Unprocessable Entity",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/IValidationProblemDetails"
                },
                "examples": {
                  "KeyValidationError": {
                    "$ref": "#/components/examples/KeyValidationError"
                  },
                  "IdentityValidationError": {
                    "$ref": "#/components/examples/IdentityValidationError"
                  }
                }
              }
            }
          },
          "404": {
            "description": "Not Found",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                },
                "examples": {
                  "NotFound": {
                    "$ref": "#/components/examples/NotFound"
                  }
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized"
          },
          "403": {
            "description": "Forbidden"
          }
        },
        "security": [
          {
            "API-Key": [ ]
          }
        ],
        "x-codeSamples": [
          {
            "lang": "csharp",
            "label": "MonoCloud .NET SDK",
            "source": "using MonoCloud.Management;\nusing MonoCloud.Management.Core.Base;\n\nvar apiClient = new MonoCloudManagementClient(new MonoCloudConfig(\"<your-domain>\", \"[[API-Key]]\"));\n\n\nvar userId = \"WUgDGqaqzqkRmsgd3PFAT\";\n\nvar identifierId = Guid.Parse(\"add5c153-1ae5-4ca7-9678-c8d9385753d2\");\n\n\nvar result = await apiClient.Users.SetEmailVerifiedAsync(userId, identifierId);"
          },
          {
            "lang": "javascript",
            "label": "MonoCloud Javascript SDK",
            "source": "import { MonoCloudManagementClient } from '@monocloud/management';\n\nconst apiClient = MonoCloudManagementClient.init({ domain: '<your-domain>', apiKey: '[[API-Key]]' });\n\nconst userId = 'WUgDGqaqzqkRmsgd3PFAT';\n\nconst identifierId = 'add5c153-1ae5-4ca7-9678-c8d9385753d2';\n\nconst result = apiClient.users.setEmailVerified(userId, identifierId);"
          }
        ]
      }
    },
    "/users/{user_id}/emails/{identifier_id}/unverify": {
      "post": {
        "tags": [
          "Users"
        ],
        "summary": "Mark an email as unverified",
        "description": "Marks the specified email address as unverified, preventing its use for authentication or any other security-sensitive actions until it is verified again.",
        "operationId": "SetEmailUnverified",
        "parameters": [
          {
            "name": "user_id",
            "in": "path",
            "description": "The unique identifier of the user.",
            "required": true,
            "schema": {
              "type": "string"
            },
            "example": "WUgDGqaqzqkRmsgd3PFAT"
          },
          {
            "name": "identifier_id",
            "in": "path",
            "description": "The unique identifier of the email address.",
            "required": true,
            "schema": {
              "type": "string",
              "format": "uuid"
            },
            "example": "add5c153-1ae5-4ca7-9678-c8d9385753d2"
          }
        ],
        "responses": {
          "200": {
            "description": "The user's email was marked as unverified successfully",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/User"
                }
              }
            }
          },
          "400": {
            "description": "Bad Request",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                },
                "examples": {
                  "BadRequest": {
                    "$ref": "#/components/examples/BadRequest"
                  }
                }
              }
            }
          },
          "422": {
            "description": "Unprocessable Entity",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/IValidationProblemDetails"
                },
                "examples": {
                  "KeyValidationError": {
                    "$ref": "#/components/examples/KeyValidationError"
                  },
                  "IdentityValidationError": {
                    "$ref": "#/components/examples/IdentityValidationError"
                  }
                }
              }
            }
          },
          "404": {
            "description": "Not Found",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                },
                "examples": {
                  "NotFound": {
                    "$ref": "#/components/examples/NotFound"
                  }
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized"
          },
          "403": {
            "description": "Forbidden"
          }
        },
        "security": [
          {
            "API-Key": [ ]
          }
        ],
        "x-codeSamples": [
          {
            "lang": "csharp",
            "label": "MonoCloud .NET SDK",
            "source": "using MonoCloud.Management;\nusing MonoCloud.Management.Core.Base;\n\nvar apiClient = new MonoCloudManagementClient(new MonoCloudConfig(\"<your-domain>\", \"[[API-Key]]\"));\n\n\nvar userId = \"WUgDGqaqzqkRmsgd3PFAT\";\n\nvar identifierId = Guid.Parse(\"add5c153-1ae5-4ca7-9678-c8d9385753d2\");\n\n\nvar result = await apiClient.Users.SetEmailUnverifiedAsync(userId, identifierId);"
          },
          {
            "lang": "javascript",
            "label": "MonoCloud Javascript SDK",
            "source": "import { MonoCloudManagementClient } from '@monocloud/management';\n\nconst apiClient = MonoCloudManagementClient.init({ domain: '<your-domain>', apiKey: '[[API-Key]]' });\n\nconst userId = 'WUgDGqaqzqkRmsgd3PFAT';\n\nconst identifierId = 'add5c153-1ae5-4ca7-9678-c8d9385753d2';\n\nconst result = apiClient.users.setEmailUnverified(userId, identifierId);"
          }
        ]
      }
    },
    "/users/{user_id}/emails/{identifier_id}/verify/link": {
      "post": {
        "tags": [
          "Users"
        ],
        "summary": "Initiate email verification",
        "description": "Generates a signed, time-bound verification link for the specified email address and sends it to the user. Once verified, the email becomes eligible for authentication and secure communication.",
        "operationId": "VerifyEmail",
        "parameters": [
          {
            "name": "user_id",
            "in": "path",
            "description": "The unique identifier of the user.",
            "required": true,
            "schema": {
              "type": "string"
            },
            "example": "WUgDGqaqzqkRmsgd3PFAT"
          },
          {
            "name": "identifier_id",
            "in": "path",
            "description": "The unique identifier of the email address.",
            "required": true,
            "schema": {
              "type": "string",
              "format": "uuid"
            },
            "example": "4b7a790b-b28b-4877-8a08-ab4e668231d1"
          }
        ],
        "requestBody": {
          "description": "The request payload used to initiate email verification.",
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/VerifyEmailRequest"
              }
            }
          },
          "required": true
        },
        "responses": {
          "200": {
            "description": "The email verification link was generated successfully",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/VerifyEmailResponse"
                }
              }
            }
          },
          "400": {
            "description": "Bad Request",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                },
                "examples": {
                  "BadRequest": {
                    "$ref": "#/components/examples/BadRequest"
                  }
                }
              }
            }
          },
          "404": {
            "description": "Not Found",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                },
                "examples": {
                  "NotFound": {
                    "$ref": "#/components/examples/NotFound"
                  }
                }
              }
            }
          },
          "422": {
            "description": "Unprocessable Entity",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/IValidationProblemDetails"
                },
                "examples": {
                  "KeyValidationError": {
                    "$ref": "#/components/examples/KeyValidationError"
                  },
                  "IdentityValidationError": {
                    "$ref": "#/components/examples/IdentityValidationError"
                  }
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized"
          },
          "403": {
            "description": "Forbidden"
          }
        },
        "security": [
          {
            "API-Key": [ ]
          }
        ],
        "x-codeSamples": [
          {
            "lang": "csharp",
            "label": "MonoCloud .NET SDK",
            "source": "using MonoCloud.Management;\nusing MonoCloud.Management.Models;\nusing MonoCloud.Management.Core.Base;\n\nvar apiClient = new MonoCloudManagementClient(new MonoCloudConfig(\"<your-domain>\", \"[[API-Key]]\"));\n\n\nvar userId = \"WUgDGqaqzqkRmsgd3PFAT\";\n\nvar identifierId = Guid.Parse(\"4b7a790b-b28b-4877-8a08-ab4e668231d1\");\n\nvar requestBody = new VerifyEmailRequest\n  {\n    Expiry = 600,\n  };\n\n\nvar result = await apiClient.Users.VerifyEmailAsync(userId, identifierId, requestBody);"
          },
          {
            "lang": "javascript",
            "label": "MonoCloud Javascript SDK",
            "source": "import { MonoCloudManagementClient } from '@monocloud/management';\n\nconst apiClient = MonoCloudManagementClient.init({ domain: '<your-domain>', apiKey: '[[API-Key]]' });\n\nconst userId = 'WUgDGqaqzqkRmsgd3PFAT';\n\nconst identifierId = '4b7a790b-b28b-4877-8a08-ab4e668231d1';\n\nconst requestBody = {\n  expiry: 600\n};\n\nconst result = apiClient.users.verifyEmail(userId, identifierId, requestBody);"
          }
        ]
      }
    },
    "/users/{user_id}/phones": {
      "post": {
        "tags": [
          "Users"
        ],
        "summary": "Add a phone number",
        "description": "Adds a new phone number to the user profile. Optional parameters allow specifying whether the number should be marked as verified.",
        "operationId": "AddPhone",
        "parameters": [
          {
            "name": "user_id",
            "in": "path",
            "description": "The unique identifier of the user.",
            "required": true,
            "schema": {
              "type": "string"
            },
            "example": "WUgDGqaqzqkRmsgd3PFAT"
          }
        ],
        "requestBody": {
          "description": "The request payload used to add a phone number.",
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/AddPhoneRequest"
              }
            }
          },
          "required": true
        },
        "responses": {
          "200": {
            "description": "The phone number was added to the user successfully",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/User"
                }
              }
            }
          },
          "400": {
            "description": "Bad Request",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                },
                "examples": {
                  "BadRequest": {
                    "$ref": "#/components/examples/BadRequest"
                  }
                }
              }
            }
          },
          "422": {
            "description": "Unprocessable Entity",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/IValidationProblemDetails"
                },
                "examples": {
                  "KeyValidationError": {
                    "$ref": "#/components/examples/KeyValidationError"
                  },
                  "IdentityValidationError": {
                    "$ref": "#/components/examples/IdentityValidationError"
                  }
                }
              }
            }
          },
          "404": {
            "description": "Not Found",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                },
                "examples": {
                  "NotFound": {
                    "$ref": "#/components/examples/NotFound"
                  }
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized"
          },
          "403": {
            "description": "Forbidden"
          }
        },
        "security": [
          {
            "API-Key": [ ]
          }
        ],
        "x-codeSamples": [
          {
            "lang": "csharp",
            "label": "MonoCloud .NET SDK",
            "source": "using MonoCloud.Management;\nusing MonoCloud.Management.Models;\nusing MonoCloud.Management.Core.Base;\n\nvar apiClient = new MonoCloudManagementClient(new MonoCloudConfig(\"<your-domain>\", \"[[API-Key]]\"));\n\n\nvar userId = \"WUgDGqaqzqkRmsgd3PFAT\";\n\nvar requestBody = new AddPhoneRequest\n  {\n    PhoneNumber = \"+14085551234\",\n    IsVerified = true,\n    SkipRestrictionChecks = false,\n  };\n\n\nvar result = await apiClient.Users.AddPhoneAsync(userId, requestBody);"
          },
          {
            "lang": "javascript",
            "label": "MonoCloud Javascript SDK",
            "source": "import { MonoCloudManagementClient } from '@monocloud/management';\n\nconst apiClient = MonoCloudManagementClient.init({ domain: '<your-domain>', apiKey: '[[API-Key]]' });\n\nconst userId = 'WUgDGqaqzqkRmsgd3PFAT';\n\nconst requestBody = {\n  phone_number: '+14085551234',\n  is_verified: true,\n  skip_restriction_checks: false\n};\n\nconst result = apiClient.users.addPhone(userId, requestBody);"
          }
        ]
      }
    },
    "/users/{user_id}/phones/{identifier_id}": {
      "delete": {
        "tags": [
          "Users"
        ],
        "summary": "Remove a phone number",
        "description": "Removes the specified phone number from the user’s account. Once removed, it is no longer available for authentication, verification or communication.\n>[!note]\n> Removing a phone number may affect flows that depend on it, such as password recovery or notification delivery.",
        "operationId": "RemovePhone",
        "parameters": [
          {
            "name": "user_id",
            "in": "path",
            "description": "The unique identifier of the user.",
            "required": true,
            "schema": {
              "type": "string"
            },
            "example": "WUgDGqaqzqkRmsgd3PFAT"
          },
          {
            "name": "identifier_id",
            "in": "path",
            "description": "The unique identifier of the phone number.",
            "required": true,
            "schema": {
              "type": "string",
              "format": "uuid"
            },
            "example": "add5c153-1ae5-4ca7-9678-c8d9385753d2"
          }
        ],
        "responses": {
          "200": {
            "description": "The user's phone number was removed successfully",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/User"
                }
              }
            }
          },
          "400": {
            "description": "Bad Request",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                },
                "examples": {
                  "BadRequest": {
                    "$ref": "#/components/examples/BadRequest"
                  }
                }
              }
            }
          },
          "422": {
            "description": "Unprocessable Entity",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/IValidationProblemDetails"
                },
                "examples": {
                  "KeyValidationError": {
                    "$ref": "#/components/examples/KeyValidationError"
                  },
                  "IdentityValidationError": {
                    "$ref": "#/components/examples/IdentityValidationError"
                  }
                }
              }
            }
          },
          "404": {
            "description": "Not Found",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                },
                "examples": {
                  "NotFound": {
                    "$ref": "#/components/examples/NotFound"
                  }
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized"
          },
          "403": {
            "description": "Forbidden"
          }
        },
        "security": [
          {
            "API-Key": [ ]
          }
        ],
        "x-codeSamples": [
          {
            "lang": "csharp",
            "label": "MonoCloud .NET SDK",
            "source": "using MonoCloud.Management;\nusing MonoCloud.Management.Core.Base;\n\nvar apiClient = new MonoCloudManagementClient(new MonoCloudConfig(\"<your-domain>\", \"[[API-Key]]\"));\n\n\nvar userId = \"WUgDGqaqzqkRmsgd3PFAT\";\n\nvar identifierId = Guid.Parse(\"add5c153-1ae5-4ca7-9678-c8d9385753d2\");\n\n\nvar result = await apiClient.Users.RemovePhoneAsync(userId, identifierId);"
          },
          {
            "lang": "javascript",
            "label": "MonoCloud Javascript SDK",
            "source": "import { MonoCloudManagementClient } from '@monocloud/management';\n\nconst apiClient = MonoCloudManagementClient.init({ domain: '<your-domain>', apiKey: '[[API-Key]]' });\n\nconst userId = 'WUgDGqaqzqkRmsgd3PFAT';\n\nconst identifierId = 'add5c153-1ae5-4ca7-9678-c8d9385753d2';\n\nconst result = apiClient.users.removePhone(userId, identifierId);"
          }
        ]
      }
    },
    "/users/{user_id}/phones/{identifier_id}/primary": {
      "post": {
        "tags": [
          "Users"
        ],
        "summary": "Set a phone as primary",
        "description": "Marks the specified phone number as the user's primary number, making it the default for authentication and verification.",
        "operationId": "SetPrimaryPhone",
        "parameters": [
          {
            "name": "user_id",
            "in": "path",
            "description": "The unique identifier of the user.",
            "required": true,
            "schema": {
              "type": "string"
            },
            "example": "WUgDGqaqzqkRmsgd3PFAT"
          },
          {
            "name": "identifier_id",
            "in": "path",
            "description": "The unique identifier of the phone number.",
            "required": true,
            "schema": {
              "type": "string",
              "format": "uuid"
            },
            "example": "add5c153-1ae5-4ca7-9678-c8d9385753d2"
          }
        ],
        "responses": {
          "200": {
            "description": "The user's phone number was set as primary successfully",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/User"
                }
              }
            }
          },
          "400": {
            "description": "Bad Request",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                },
                "examples": {
                  "BadRequest": {
                    "$ref": "#/components/examples/BadRequest"
                  }
                }
              }
            }
          },
          "422": {
            "description": "Unprocessable Entity",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/IValidationProblemDetails"
                },
                "examples": {
                  "KeyValidationError": {
                    "$ref": "#/components/examples/KeyValidationError"
                  },
                  "IdentityValidationError": {
                    "$ref": "#/components/examples/IdentityValidationError"
                  }
                }
              }
            }
          },
          "404": {
            "description": "Not Found",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                },
                "examples": {
                  "NotFound": {
                    "$ref": "#/components/examples/NotFound"
                  }
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized"
          },
          "403": {
            "description": "Forbidden"
          }
        },
        "security": [
          {
            "API-Key": [ ]
          }
        ],
        "x-codeSamples": [
          {
            "lang": "csharp",
            "label": "MonoCloud .NET SDK",
            "source": "using MonoCloud.Management;\nusing MonoCloud.Management.Core.Base;\n\nvar apiClient = new MonoCloudManagementClient(new MonoCloudConfig(\"<your-domain>\", \"[[API-Key]]\"));\n\n\nvar userId = \"WUgDGqaqzqkRmsgd3PFAT\";\n\nvar identifierId = Guid.Parse(\"add5c153-1ae5-4ca7-9678-c8d9385753d2\");\n\n\nvar result = await apiClient.Users.SetPrimaryPhoneAsync(userId, identifierId);"
          },
          {
            "lang": "javascript",
            "label": "MonoCloud Javascript SDK",
            "source": "import { MonoCloudManagementClient } from '@monocloud/management';\n\nconst apiClient = MonoCloudManagementClient.init({ domain: '<your-domain>', apiKey: '[[API-Key]]' });\n\nconst userId = 'WUgDGqaqzqkRmsgd3PFAT';\n\nconst identifierId = 'add5c153-1ae5-4ca7-9678-c8d9385753d2';\n\nconst result = apiClient.users.setPrimaryPhone(userId, identifierId);"
          }
        ]
      }
    },
    "/users/{user_id}/phones/{identifier_id}/verify": {
      "post": {
        "tags": [
          "Users"
        ],
        "summary": "Mark a phone as verified",
        "description": "Marks the specified phone number as verified, allowing its use for authentication and other security-sensitive actions.",
        "operationId": "SetPhoneVerified",
        "parameters": [
          {
            "name": "user_id",
            "in": "path",
            "description": "The unique identifier of the user.",
            "required": true,
            "schema": {
              "type": "string"
            },
            "example": "WUgDGqaqzqkRmsgd3PFAT"
          },
          {
            "name": "identifier_id",
            "in": "path",
            "description": "The unique identifier of the phone number.",
            "required": true,
            "schema": {
              "type": "string",
              "format": "uuid"
            },
            "example": "add5c153-1ae5-4ca7-9678-c8d9385753d2"
          }
        ],
        "responses": {
          "200": {
            "description": "The user's phone number was marked as verified successfully",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/User"
                }
              }
            }
          },
          "400": {
            "description": "Bad Request",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                },
                "examples": {
                  "BadRequest": {
                    "$ref": "#/components/examples/BadRequest"
                  }
                }
              }
            }
          },
          "422": {
            "description": "Unprocessable Entity",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/IValidationProblemDetails"
                },
                "examples": {
                  "KeyValidationError": {
                    "$ref": "#/components/examples/KeyValidationError"
                  },
                  "IdentityValidationError": {
                    "$ref": "#/components/examples/IdentityValidationError"
                  }
                }
              }
            }
          },
          "404": {
            "description": "Not Found",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                },
                "examples": {
                  "NotFound": {
                    "$ref": "#/components/examples/NotFound"
                  }
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized"
          },
          "403": {
            "description": "Forbidden"
          }
        },
        "security": [
          {
            "API-Key": [ ]
          }
        ],
        "x-codeSamples": [
          {
            "lang": "csharp",
            "label": "MonoCloud .NET SDK",
            "source": "using MonoCloud.Management;\nusing MonoCloud.Management.Core.Base;\n\nvar apiClient = new MonoCloudManagementClient(new MonoCloudConfig(\"<your-domain>\", \"[[API-Key]]\"));\n\n\nvar userId = \"WUgDGqaqzqkRmsgd3PFAT\";\n\nvar identifierId = Guid.Parse(\"add5c153-1ae5-4ca7-9678-c8d9385753d2\");\n\n\nvar result = await apiClient.Users.SetPhoneVerifiedAsync(userId, identifierId);"
          },
          {
            "lang": "javascript",
            "label": "MonoCloud Javascript SDK",
            "source": "import { MonoCloudManagementClient } from '@monocloud/management';\n\nconst apiClient = MonoCloudManagementClient.init({ domain: '<your-domain>', apiKey: '[[API-Key]]' });\n\nconst userId = 'WUgDGqaqzqkRmsgd3PFAT';\n\nconst identifierId = 'add5c153-1ae5-4ca7-9678-c8d9385753d2';\n\nconst result = apiClient.users.setPhoneVerified(userId, identifierId);"
          }
        ]
      }
    },
    "/users/{user_id}/phones/{identifier_id}/unverify": {
      "post": {
        "tags": [
          "Users"
        ],
        "summary": "Mark a phone as unverified",
        "description": "Marks the specified phone number as unverified, preventing its use for authentication or any other security-sensitive actions until it is verified again.",
        "operationId": "SetPhoneUnverified",
        "parameters": [
          {
            "name": "user_id",
            "in": "path",
            "description": "The unique identifier of the user.",
            "required": true,
            "schema": {
              "type": "string"
            },
            "example": "WUgDGqaqzqkRmsgd3PFAT"
          },
          {
            "name": "identifier_id",
            "in": "path",
            "description": "The unique identifier of the phone number.",
            "required": true,
            "schema": {
              "type": "string",
              "format": "uuid"
            },
            "example": "add5c153-1ae5-4ca7-9678-c8d9385753d2"
          }
        ],
        "responses": {
          "200": {
            "description": "The user's phone number was marked as unverified successfully",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/User"
                }
              }
            }
          },
          "400": {
            "description": "Bad Request",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                },
                "examples": {
                  "BadRequest": {
                    "$ref": "#/components/examples/BadRequest"
                  }
                }
              }
            }
          },
          "422": {
            "description": "Unprocessable Entity",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/IValidationProblemDetails"
                },
                "examples": {
                  "KeyValidationError": {
                    "$ref": "#/components/examples/KeyValidationError"
                  },
                  "IdentityValidationError": {
                    "$ref": "#/components/examples/IdentityValidationError"
                  }
                }
              }
            }
          },
          "404": {
            "description": "Not Found",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                },
                "examples": {
                  "NotFound": {
                    "$ref": "#/components/examples/NotFound"
                  }
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized"
          },
          "403": {
            "description": "Forbidden"
          }
        },
        "security": [
          {
            "API-Key": [ ]
          }
        ],
        "x-codeSamples": [
          {
            "lang": "csharp",
            "label": "MonoCloud .NET SDK",
            "source": "using MonoCloud.Management;\nusing MonoCloud.Management.Core.Base;\n\nvar apiClient = new MonoCloudManagementClient(new MonoCloudConfig(\"<your-domain>\", \"[[API-Key]]\"));\n\n\nvar userId = \"WUgDGqaqzqkRmsgd3PFAT\";\n\nvar identifierId = Guid.Parse(\"add5c153-1ae5-4ca7-9678-c8d9385753d2\");\n\n\nvar result = await apiClient.Users.SetPhoneUnverifiedAsync(userId, identifierId);"
          },
          {
            "lang": "javascript",
            "label": "MonoCloud Javascript SDK",
            "source": "import { MonoCloudManagementClient } from '@monocloud/management';\n\nconst apiClient = MonoCloudManagementClient.init({ domain: '<your-domain>', apiKey: '[[API-Key]]' });\n\nconst userId = 'WUgDGqaqzqkRmsgd3PFAT';\n\nconst identifierId = 'add5c153-1ae5-4ca7-9678-c8d9385753d2';\n\nconst result = apiClient.users.setPhoneUnverified(userId, identifierId);"
          }
        ]
      }
    },
    "/users/{user_id}/passkeys/{passkey_id}": {
      "delete": {
        "tags": [
          "Users"
        ],
        "summary": "Remove a passkey",
        "description": "Removes a passkey previously registered by the user. Once removed, the user will no longer be able to authenticate using that passkey.",
        "operationId": "RemovePasskey",
        "parameters": [
          {
            "name": "user_id",
            "in": "path",
            "description": "The unique identifier of the user.",
            "required": true,
            "schema": {
              "type": "string"
            },
            "example": "WUgDGqaqzqkRmsgd3PFAT"
          },
          {
            "name": "passkey_id",
            "in": "path",
            "description": "The unique identifier of the passkey.",
            "required": true,
            "schema": {
              "type": "string"
            },
            "example": "sM5X24vn_R3YqFvk8o5Hf7l3E1fMeyKnssiAgCYxouA"
          }
        ],
        "responses": {
          "204": {
            "description": "The user's passkey was removed successfully"
          },
          "400": {
            "description": "Bad Request",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                },
                "examples": {
                  "BadRequest": {
                    "$ref": "#/components/examples/BadRequest"
                  }
                }
              }
            }
          },
          "422": {
            "description": "Unprocessable Entity",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/IValidationProblemDetails"
                },
                "examples": {
                  "KeyValidationError": {
                    "$ref": "#/components/examples/KeyValidationError"
                  },
                  "IdentityValidationError": {
                    "$ref": "#/components/examples/IdentityValidationError"
                  }
                }
              }
            }
          },
          "404": {
            "description": "Not Found",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                },
                "examples": {
                  "NotFound": {
                    "$ref": "#/components/examples/NotFound"
                  }
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized"
          },
          "403": {
            "description": "Forbidden"
          }
        },
        "security": [
          {
            "API-Key": [ ]
          }
        ],
        "x-codeSamples": [
          {
            "lang": "csharp",
            "label": "MonoCloud .NET SDK",
            "source": "using MonoCloud.Management;\nusing MonoCloud.Management.Core.Base;\n\nvar apiClient = new MonoCloudManagementClient(new MonoCloudConfig(\"<your-domain>\", \"[[API-Key]]\"));\n\n\nvar userId = \"WUgDGqaqzqkRmsgd3PFAT\";\n\nvar passkeyId = \"sM5X24vn_R3YqFvk8o5Hf7l3E1fMeyKnssiAgCYxouA\";\n\n\nvar result = await apiClient.Users.RemovePasskeyAsync(userId, passkeyId);"
          },
          {
            "lang": "javascript",
            "label": "MonoCloud Javascript SDK",
            "source": "import { MonoCloudManagementClient } from '@monocloud/management';\n\nconst apiClient = MonoCloudManagementClient.init({ domain: '<your-domain>', apiKey: '[[API-Key]]' });\n\nconst userId = 'WUgDGqaqzqkRmsgd3PFAT';\n\nconst passkeyId = 'sM5X24vn_R3YqFvk8o5Hf7l3E1fMeyKnssiAgCYxouA';\n\nconst result = apiClient.users.removePasskey(userId, passkeyId);"
          }
        ]
      }
    },
    "/users/{user_id}/password": {
      "put": {
        "tags": [
          "Users"
        ],
        "summary": "Set a password",
        "description": "Sets or replaces the user's password. Accepts either plaintext input or a pre-computed hash generated with a supported algorithm.",
        "operationId": "SetPassword",
        "parameters": [
          {
            "name": "user_id",
            "in": "path",
            "description": "The unique identifier of the user.",
            "required": true,
            "schema": {
              "type": "string"
            },
            "example": "WUgDGqaqzqkRmsgd3PFAT"
          }
        ],
        "requestBody": {
          "description": "The request payload used to set the user's password.",
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/SetPasswordRequest"
              }
            }
          },
          "required": true
        },
        "responses": {
          "200": {
            "description": "The password was set successfully",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/User"
                }
              }
            }
          },
          "400": {
            "description": "Bad Request",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                },
                "examples": {
                  "BadRequest": {
                    "$ref": "#/components/examples/BadRequest"
                  }
                }
              }
            }
          },
          "404": {
            "description": "Not Found",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                },
                "examples": {
                  "NotFound": {
                    "$ref": "#/components/examples/NotFound"
                  }
                }
              }
            }
          },
          "422": {
            "description": "Unprocessable Entity",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/IValidationProblemDetails"
                },
                "examples": {
                  "KeyValidationError": {
                    "$ref": "#/components/examples/KeyValidationError"
                  },
                  "IdentityValidationError": {
                    "$ref": "#/components/examples/IdentityValidationError"
                  }
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized"
          },
          "403": {
            "description": "Forbidden"
          }
        },
        "security": [
          {
            "API-Key": [ ]
          }
        ],
        "x-codeSamples": [
          {
            "lang": "csharp",
            "label": "MonoCloud .NET SDK",
            "source": "using MonoCloud.Management;\nusing MonoCloud.Management.Models;\nusing MonoCloud.Management.Core.Base;\n\nvar apiClient = new MonoCloudManagementClient(new MonoCloudConfig(\"<your-domain>\", \"[[API-Key]]\"));\n\n\nvar userId = \"WUgDGqaqzqkRmsgd3PFAT\";\n\nvar requestBody = new SetPasswordRequest\n  {\n    Password = \"SuperStrongPass12345!!!\",\n    PasswordHash = \"$2a$12$LJdMf15uRsDpd57LKCGxSOTec3MD6jsgJhxRxCeSj2ZKobGo2xPDS\",\n    PasswordHashAlgorithm = PasswordAlgorithms.Bcrypt,\n    IsTemporaryPassword = true,\n    SkipPasswordPolicyChecks = false,\n    RevokeSessions = false,\n  };\n\n\nvar result = await apiClient.Users.SetPasswordAsync(userId, requestBody);"
          },
          {
            "lang": "javascript",
            "label": "MonoCloud Javascript SDK",
            "source": "import { MonoCloudManagementClient } from '@monocloud/management';\n\nconst apiClient = MonoCloudManagementClient.init({ domain: '<your-domain>', apiKey: '[[API-Key]]' });\n\nconst userId = 'WUgDGqaqzqkRmsgd3PFAT';\n\nconst requestBody = {\n  password: 'SuperStrongPass12345!!!',\n  password_hash: '$2a$12$LJdMf15uRsDpd57LKCGxSOTec3MD6jsgJhxRxCeSj2ZKobGo2xPDS',\n  password_hash_algorithm: 'bcrypt',\n  is_temporary_password: true,\n  skip_password_policy_checks: false,\n  revoke_sessions: false\n};\n\nconst result = apiClient.users.setPassword(userId, requestBody);"
          }
        ]
      },
      "delete": {
        "tags": [
          "Users"
        ],
        "summary": "Remove the user's password",
        "description": "Removes the password from the specified user’s account. Once removed, the user will no longer be able to authenticate using a password until a new one is set.",
        "operationId": "RemovePassword",
        "parameters": [
          {
            "name": "user_id",
            "in": "path",
            "description": "The unique identifier of the user.",
            "required": true,
            "schema": {
              "type": "string"
            },
            "example": "WUgDGqaqzqkRmsgd3PFAT"
          }
        ],
        "responses": {
          "204": {
            "description": "The user's password was removed successfully"
          },
          "404": {
            "description": "Not Found",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                },
                "examples": {
                  "NotFound": {
                    "$ref": "#/components/examples/NotFound"
                  }
                }
              }
            }
          },
          "422": {
            "description": "Unprocessable Entity",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/IValidationProblemDetails"
                },
                "examples": {
                  "KeyValidationError": {
                    "$ref": "#/components/examples/KeyValidationError"
                  },
                  "IdentityValidationError": {
                    "$ref": "#/components/examples/IdentityValidationError"
                  }
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized"
          },
          "403": {
            "description": "Forbidden"
          }
        },
        "security": [
          {
            "API-Key": [ ]
          }
        ],
        "x-codeSamples": [
          {
            "lang": "csharp",
            "label": "MonoCloud .NET SDK",
            "source": "using MonoCloud.Management;\nusing MonoCloud.Management.Core.Base;\n\nvar apiClient = new MonoCloudManagementClient(new MonoCloudConfig(\"<your-domain>\", \"[[API-Key]]\"));\n\n\nvar userId = \"WUgDGqaqzqkRmsgd3PFAT\";\n\n\nvar result = await apiClient.Users.RemovePasswordAsync(userId);"
          },
          {
            "lang": "javascript",
            "label": "MonoCloud Javascript SDK",
            "source": "import { MonoCloudManagementClient } from '@monocloud/management';\n\nconst apiClient = MonoCloudManagementClient.init({ domain: '<your-domain>', apiKey: '[[API-Key]]' });\n\nconst userId = 'WUgDGqaqzqkRmsgd3PFAT';\n\nconst result = apiClient.users.removePassword(userId);"
          }
        ]
      }
    },
    "/users/{user_id}/password/force_reset": {
      "post": {
        "tags": [
          "Users"
        ],
        "summary": "Require password reset",
        "description": "Enforces a requirement for the user to reset their password at their next password-based sign-in.",
        "operationId": "SetPasswordResetRequired",
        "parameters": [
          {
            "name": "user_id",
            "in": "path",
            "description": "The unique identifier of the user.",
            "required": true,
            "schema": {
              "type": "string"
            },
            "example": "WUgDGqaqzqkRmsgd3PFAT"
          }
        ],
        "responses": {
          "200": {
            "description": "The user was successfully marked as requiring a password reset",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/User"
                }
              }
            }
          },
          "400": {
            "description": "Bad Request",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                },
                "examples": {
                  "BadRequest": {
                    "$ref": "#/components/examples/BadRequest"
                  }
                }
              }
            }
          },
          "422": {
            "description": "Unprocessable Entity",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/IValidationProblemDetails"
                },
                "examples": {
                  "KeyValidationError": {
                    "$ref": "#/components/examples/KeyValidationError"
                  },
                  "IdentityValidationError": {
                    "$ref": "#/components/examples/IdentityValidationError"
                  }
                }
              }
            }
          },
          "404": {
            "description": "Not Found",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                },
                "examples": {
                  "NotFound": {
                    "$ref": "#/components/examples/NotFound"
                  }
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized"
          },
          "403": {
            "description": "Forbidden"
          }
        },
        "security": [
          {
            "API-Key": [ ]
          }
        ],
        "x-codeSamples": [
          {
            "lang": "csharp",
            "label": "MonoCloud .NET SDK",
            "source": "using MonoCloud.Management;\nusing MonoCloud.Management.Core.Base;\n\nvar apiClient = new MonoCloudManagementClient(new MonoCloudConfig(\"<your-domain>\", \"[[API-Key]]\"));\n\n\nvar userId = \"WUgDGqaqzqkRmsgd3PFAT\";\n\n\nvar result = await apiClient.Users.SetPasswordResetRequiredAsync(userId);"
          },
          {
            "lang": "javascript",
            "label": "MonoCloud Javascript SDK",
            "source": "import { MonoCloudManagementClient } from '@monocloud/management';\n\nconst apiClient = MonoCloudManagementClient.init({ domain: '<your-domain>', apiKey: '[[API-Key]]' });\n\nconst userId = 'WUgDGqaqzqkRmsgd3PFAT';\n\nconst result = apiClient.users.setPasswordResetRequired(userId);"
          }
        ]
      },
      "delete": {
        "tags": [
          "Users"
        ],
        "summary": "Clear a password reset requirement",
        "description": "Clears the enforced password reset requirement for the user's next password-based authentication attempt.",
        "operationId": "RemovePasswordResetRequired",
        "parameters": [
          {
            "name": "user_id",
            "in": "path",
            "description": "The unique identifier of the user.",
            "required": true,
            "schema": {
              "type": "string"
            },
            "example": "WUgDGqaqzqkRmsgd3PFAT"
          }
        ],
        "responses": {
          "200": {
            "description": "The password reset requirement was cleared successfully",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/User"
                }
              }
            }
          },
          "400": {
            "description": "Bad Request",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                },
                "examples": {
                  "BadRequest": {
                    "$ref": "#/components/examples/BadRequest"
                  }
                }
              }
            }
          },
          "422": {
            "description": "Unprocessable Entity",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/IValidationProblemDetails"
                },
                "examples": {
                  "KeyValidationError": {
                    "$ref": "#/components/examples/KeyValidationError"
                  },
                  "IdentityValidationError": {
                    "$ref": "#/components/examples/IdentityValidationError"
                  }
                }
              }
            }
          },
          "404": {
            "description": "Not Found",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                },
                "examples": {
                  "NotFound": {
                    "$ref": "#/components/examples/NotFound"
                  }
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized"
          },
          "403": {
            "description": "Forbidden"
          }
        },
        "security": [
          {
            "API-Key": [ ]
          }
        ],
        "x-codeSamples": [
          {
            "lang": "csharp",
            "label": "MonoCloud .NET SDK",
            "source": "using MonoCloud.Management;\nusing MonoCloud.Management.Core.Base;\n\nvar apiClient = new MonoCloudManagementClient(new MonoCloudConfig(\"<your-domain>\", \"[[API-Key]]\"));\n\n\nvar userId = \"WUgDGqaqzqkRmsgd3PFAT\";\n\n\nvar result = await apiClient.Users.RemovePasswordResetRequiredAsync(userId);"
          },
          {
            "lang": "javascript",
            "label": "MonoCloud Javascript SDK",
            "source": "import { MonoCloudManagementClient } from '@monocloud/management';\n\nconst apiClient = MonoCloudManagementClient.init({ domain: '<your-domain>', apiKey: '[[API-Key]]' });\n\nconst userId = 'WUgDGqaqzqkRmsgd3PFAT';\n\nconst result = apiClient.users.removePasswordResetRequired(userId);"
          }
        ]
      }
    },
    "/users/{user_id}/password/reset": {
      "post": {
        "tags": [
          "Users"
        ],
        "summary": "Initiate password reset",
        "description": "Generates a secure, time-bound password reset link for the specified user. The link may be delivered directly to the user or returned for custom distribution.",
        "operationId": "ResetPassword",
        "parameters": [
          {
            "name": "user_id",
            "in": "path",
            "description": "The unique identifier of the user.",
            "required": true,
            "schema": {
              "type": "string"
            },
            "example": "WUgDGqaqzqkRmsgd3PFAT"
          }
        ],
        "requestBody": {
          "description": "The request payload used to generate a password reset link.",
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/ResetPasswordRequest"
              }
            }
          },
          "required": true
        },
        "responses": {
          "200": {
            "description": "The password reset link was generated successfully",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ResetPasswordResponse"
                }
              }
            }
          },
          "404": {
            "description": "Not Found",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                },
                "examples": {
                  "NotFound": {
                    "$ref": "#/components/examples/NotFound"
                  }
                }
              }
            }
          },
          "422": {
            "description": "Unprocessable Entity",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/IValidationProblemDetails"
                },
                "examples": {
                  "KeyValidationError": {
                    "$ref": "#/components/examples/KeyValidationError"
                  },
                  "IdentityValidationError": {
                    "$ref": "#/components/examples/IdentityValidationError"
                  }
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized"
          },
          "403": {
            "description": "Forbidden"
          }
        },
        "security": [
          {
            "API-Key": [ ]
          }
        ],
        "x-codeSamples": [
          {
            "lang": "csharp",
            "label": "MonoCloud .NET SDK",
            "source": "using MonoCloud.Management;\nusing MonoCloud.Management.Models;\nusing MonoCloud.Management.Core.Base;\n\nvar apiClient = new MonoCloudManagementClient(new MonoCloudConfig(\"<your-domain>\", \"[[API-Key]]\"));\n\n\nvar userId = \"WUgDGqaqzqkRmsgd3PFAT\";\n\nvar requestBody = new ResetPasswordRequest\n  {\n    SendEmail = false,\n    Expiry = 600,\n  };\n\n\nvar result = await apiClient.Users.ResetPasswordAsync(userId, requestBody);"
          },
          {
            "lang": "javascript",
            "label": "MonoCloud Javascript SDK",
            "source": "import { MonoCloudManagementClient } from '@monocloud/management';\n\nconst apiClient = MonoCloudManagementClient.init({ domain: '<your-domain>', apiKey: '[[API-Key]]' });\n\nconst userId = 'WUgDGqaqzqkRmsgd3PFAT';\n\nconst requestBody = {\n  send_email: false,\n  expiry: 600\n};\n\nconst result = apiClient.users.resetPassword(userId, requestBody);"
          }
        ]
      }
    },
    "/users/{user_id}/password/change": {
      "put": {
        "tags": [
          "Users"
        ],
        "summary": "Change password",
        "description": "Replaces the user's existing password after validating the current password. Accepts either plaintext input or a pre-computed hash generated with a supported algorithm for the new password.",
        "operationId": "ChangePassword",
        "parameters": [
          {
            "name": "user_id",
            "in": "path",
            "description": "The unique identifier of the user.",
            "required": true,
            "schema": {
              "type": "string"
            },
            "example": "WUgDGqaqzqkRmsgd3PFAT"
          }
        ],
        "requestBody": {
          "description": "The request payload used to change the user's password.",
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/ChangePasswordRequest"
              }
            }
          },
          "required": true
        },
        "responses": {
          "200": {
            "description": "The password was changed successfully",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/User"
                }
              }
            }
          },
          "400": {
            "description": "Bad Request",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                },
                "examples": {
                  "BadRequest": {
                    "$ref": "#/components/examples/BadRequest"
                  }
                }
              }
            }
          },
          "404": {
            "description": "Not Found",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                },
                "examples": {
                  "NotFound": {
                    "$ref": "#/components/examples/NotFound"
                  }
                }
              }
            }
          },
          "422": {
            "description": "Unprocessable Entity",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/IValidationProblemDetails"
                },
                "examples": {
                  "KeyValidationError": {
                    "$ref": "#/components/examples/KeyValidationError"
                  },
                  "IdentityValidationError": {
                    "$ref": "#/components/examples/IdentityValidationError"
                  }
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized"
          },
          "403": {
            "description": "Forbidden"
          }
        },
        "security": [
          {
            "API-Key": [ ]
          }
        ],
        "x-codeSamples": [
          {
            "lang": "csharp",
            "label": "MonoCloud .NET SDK",
            "source": "using MonoCloud.Management;\nusing MonoCloud.Management.Models;\nusing MonoCloud.Management.Core.Base;\n\nvar apiClient = new MonoCloudManagementClient(new MonoCloudConfig(\"<your-domain>\", \"[[API-Key]]\"));\n\n\nvar userId = \"WUgDGqaqzqkRmsgd3PFAT\";\n\nvar requestBody = new ChangePasswordRequest\n  {\n    NewPassword = \"SuperStrongPass12345!!!\",\n    NewPasswordHash = \"$2a$12$LJdMf15uRsDpd57LKCGxSOTec3MD6jsgJhxRxCeSj2ZKobGo2xPDS\",\n    NewPasswordHashAlgorithm = PasswordAlgorithms.Bcrypt,\n    OldPassword = \"SuperStrongPass12345!!!\",\n    RevokeSessions = false,\n  };\n\n\nvar result = await apiClient.Users.ChangePasswordAsync(userId, requestBody);"
          },
          {
            "lang": "javascript",
            "label": "MonoCloud Javascript SDK",
            "source": "import { MonoCloudManagementClient } from '@monocloud/management';\n\nconst apiClient = MonoCloudManagementClient.init({ domain: '<your-domain>', apiKey: '[[API-Key]]' });\n\nconst userId = 'WUgDGqaqzqkRmsgd3PFAT';\n\nconst requestBody = {\n  new_password: 'SuperStrongPass12345!!!',\n  new_password_hash: '$2a$12$LJdMf15uRsDpd57LKCGxSOTec3MD6jsgJhxRxCeSj2ZKobGo2xPDS',\n  new_password_hash_algorithm: 'bcrypt',\n  old_password: 'SuperStrongPass12345!!!',\n  revoke_sessions: false\n};\n\nconst result = apiClient.users.changePassword(userId, requestBody);"
          }
        ]
      }
    },
    "/users/{user_id}/claims": {
      "patch": {
        "tags": [
          "Users"
        ],
        "summary": "Update user claims",
        "description": "Applies a partial update to the claim values associated with the specified user. Only the claims provided in the request are modified. Claims can be removed by sending a `null` value for the corresponding key.",
        "operationId": "PatchClaims",
        "parameters": [
          {
            "name": "user_id",
            "in": "path",
            "description": "The unique identifier of the user.",
            "required": true,
            "schema": {
              "type": "string"
            },
            "example": "WUgDGqaqzqkRmsgd3PFAT"
          }
        ],
        "requestBody": {
          "description": "The request payload used to update user claims.",
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/UpdateClaimsRequest"
              }
            }
          },
          "required": true
        },
        "responses": {
          "200": {
            "description": "The user claims were updated successfully",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/User"
                }
              }
            }
          },
          "400": {
            "description": "Bad Request",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                },
                "examples": {
                  "BadRequest": {
                    "$ref": "#/components/examples/BadRequest"
                  }
                }
              }
            }
          },
          "404": {
            "description": "Not Found",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                },
                "examples": {
                  "NotFound": {
                    "$ref": "#/components/examples/NotFound"
                  }
                }
              }
            }
          },
          "422": {
            "description": "Unprocessable Entity",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/IValidationProblemDetails"
                },
                "examples": {
                  "KeyValidationError": {
                    "$ref": "#/components/examples/KeyValidationError"
                  },
                  "IdentityValidationError": {
                    "$ref": "#/components/examples/IdentityValidationError"
                  }
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized"
          },
          "403": {
            "description": "Forbidden"
          }
        },
        "security": [
          {
            "API-Key": [ ]
          }
        ],
        "x-codeSamples": [
          {
            "lang": "csharp",
            "label": "MonoCloud .NET SDK",
            "source": "using MonoCloud.Management;\nusing MonoCloud.Management.Models;\nusing MonoCloud.Management.Core.Base;\n\nvar apiClient = new MonoCloudManagementClient(new MonoCloudConfig(\"<your-domain>\", \"[[API-Key]]\"));\n\n\nvar userId = \"WUgDGqaqzqkRmsgd3PFAT\";\n\nvar requestBody = new UpdateClaimsRequest\n  {\n    Name = \"John Doe\",\n    GivenName = \"John\",\n    MiddleName = \"S\",\n    FamilyName = \"Smith\",\n    Nickname = \"Joey\",\n    Picture = \"https://example.com/image.png\",\n    PreferredUsername = \"john_smith\",\n    Profile = \"https://example.com/john-smith\",\n    Birthdate = \"1980-01-02\",\n    Website = \"https://www.johnsmith.com\",\n    Gender = \"male\",\n    Zoneinfo = \"America/Los_Angeles\",\n    Locale = \"en-US\",\n    Address = new HttpUserAddressRequest\n    {\n      Formatted = \"123 Main St, Anytown, USA\",\n      StreetAddress = \"123 Main St\",\n      Locality = \"Anytown\",\n      Region = \"CA\",\n      PostalCode = \"12345-6789\",\n      Country = \"United States\",\n    },\n    SkipConformanceChecks = false,\n  };\n\n\nvar result = await apiClient.Users.PatchClaimsAsync(userId, requestBody);"
          },
          {
            "lang": "javascript",
            "label": "MonoCloud Javascript SDK",
            "source": "import { MonoCloudManagementClient } from '@monocloud/management';\n\nconst apiClient = MonoCloudManagementClient.init({ domain: '<your-domain>', apiKey: '[[API-Key]]' });\n\nconst userId = 'WUgDGqaqzqkRmsgd3PFAT';\n\nconst requestBody = {\n  name: 'John Doe',\n  given_name: 'John',\n  middle_name: 'S',\n  family_name: 'Smith',\n  nickname: 'Joey',\n  picture: 'https://example.com/image.png',\n  preferred_username: 'john_smith',\n  profile: 'https://example.com/john-smith',\n  birthdate: '1980-01-02',\n  website: 'https://www.johnsmith.com',\n  gender: 'male',\n  zoneinfo: 'America/Los_Angeles',\n  locale: 'en-US',\n  address: {\n    formatted: '123 Main St, Anytown, USA',\n    street_address: '123 Main St',\n    locality: 'Anytown',\n    region: 'CA',\n    postal_code: '12345-6789',\n    country: 'United States'\n  },\n  skip_conformance_checks: false\n};\n\nconst result = apiClient.users.patchClaims(userId, requestBody);"
          }
        ]
      }
    },
    "/users/{user_id}/private_data": {
      "get": {
        "tags": [
          "Users"
        ],
        "summary": "Retrieve user private data",
        "description": "Retrieves the private data associated with the specified user.\n>[!note]\n> Private data contains sensitive or internal attributes intended only for trusted backend services. It should not be exposed directly to client applications or included in user-visible contexts.",
        "operationId": "GetPrivateData",
        "parameters": [
          {
            "name": "user_id",
            "in": "path",
            "description": "The unique identifier of the user.",
            "required": true,
            "schema": {
              "type": "string"
            },
            "example": "WUgDGqaqzqkRmsgd3PFAT"
          }
        ],
        "responses": {
          "200": {
            "description": "The user's private data was retrieved successfully",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/UserPrivateData"
                }
              }
            }
          },
          "422": {
            "description": "Unprocessable Entity",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/KeyValidationProblemDetails"
                },
                "examples": {
                  "KeyValidationError": {
                    "$ref": "#/components/examples/KeyValidationError"
                  }
                }
              }
            }
          },
          "404": {
            "description": "Not Found",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                },
                "examples": {
                  "NotFound": {
                    "$ref": "#/components/examples/NotFound"
                  }
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized"
          },
          "403": {
            "description": "Forbidden"
          }
        },
        "security": [
          {
            "API-Key": [ ]
          }
        ],
        "x-codeSamples": [
          {
            "lang": "csharp",
            "label": "MonoCloud .NET SDK",
            "source": "using MonoCloud.Management;\nusing MonoCloud.Management.Core.Base;\n\nvar apiClient = new MonoCloudManagementClient(new MonoCloudConfig(\"<your-domain>\", \"[[API-Key]]\"));\n\n\nvar userId = \"WUgDGqaqzqkRmsgd3PFAT\";\n\n\nvar result = await apiClient.Users.GetPrivateDataAsync(userId);"
          },
          {
            "lang": "javascript",
            "label": "MonoCloud Javascript SDK",
            "source": "import { MonoCloudManagementClient } from '@monocloud/management';\n\nconst apiClient = MonoCloudManagementClient.init({ domain: '<your-domain>', apiKey: '[[API-Key]]' });\n\nconst userId = 'WUgDGqaqzqkRmsgd3PFAT';\n\nconst result = apiClient.users.getPrivateData(userId);"
          }
        ]
      },
      "patch": {
        "tags": [
          "Users"
        ],
        "summary": "Update user private data",
        "description": "Applies a partial update to the private data associated with the specified user. Only fields included in the request are updated. Private data fields can be removed by sending a `null` value for the corresponding key.\n>[!warning]\n> Intended for sensitive or internal-use attributes. Avoid exposing these values to client applications. If surfaced via custom claims, include them only in tokens issued to trusted backend services to prevent accidental disclosure.",
        "operationId": "PatchPrivateData",
        "parameters": [
          {
            "name": "user_id",
            "in": "path",
            "description": "The unique identifier of the user.",
            "required": true,
            "schema": {
              "type": "string"
            },
            "example": "WUgDGqaqzqkRmsgd3PFAT"
          }
        ],
        "requestBody": {
          "description": "The request payload used to update a user's private data.",
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/UpdatePrivateDataRequest"
              }
            }
          },
          "required": true
        },
        "responses": {
          "200": {
            "description": "The user's private data was updated successfully",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/UserPrivateData"
                }
              }
            }
          },
          "400": {
            "description": "Bad Request",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                },
                "examples": {
                  "BadRequest": {
                    "$ref": "#/components/examples/BadRequest"
                  }
                }
              }
            }
          },
          "422": {
            "description": "Unprocessable Entity",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/IValidationProblemDetails"
                },
                "examples": {
                  "KeyValidationError": {
                    "$ref": "#/components/examples/KeyValidationError"
                  },
                  "IdentityValidationError": {
                    "$ref": "#/components/examples/IdentityValidationError"
                  }
                }
              }
            }
          },
          "404": {
            "description": "Not Found",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                },
                "examples": {
                  "NotFound": {
                    "$ref": "#/components/examples/NotFound"
                  }
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized"
          },
          "403": {
            "description": "Forbidden"
          }
        },
        "security": [
          {
            "API-Key": [ ]
          }
        ],
        "x-codeSamples": [
          {
            "lang": "csharp",
            "label": "MonoCloud .NET SDK",
            "source": "using MonoCloud.Management;\nusing MonoCloud.Management.Models;\nusing MonoCloud.Management.Core.Base;\n\nvar apiClient = new MonoCloudManagementClient(new MonoCloudConfig(\"<your-domain>\", \"[[API-Key]]\"));\n\n\nvar userId = \"WUgDGqaqzqkRmsgd3PFAT\";\n\nvar requestBody = new UpdatePrivateDataRequest\n  {\n    PrivateData = new Dictionary<string, object>\n    {\n      {\n        \"transaction_ids\", new []\n            {\n              \"5GRZ4X7XUItpRGOwkHhONqTtG\",\n              \"9Fw7Jx9Zja5lWlmRkYJf1WMV9\",\n            }\n      },\n      {\n        \"subscription_plan\", \"premium\"\n      },\n      {\n        \"last_renewed\", 1672511400\n      },\n    },\n  };\n\n\nvar result = await apiClient.Users.PatchPrivateDataAsync(userId, requestBody);"
          },
          {
            "lang": "javascript",
            "label": "MonoCloud Javascript SDK",
            "source": "import { MonoCloudManagementClient } from '@monocloud/management';\n\nconst apiClient = MonoCloudManagementClient.init({ domain: '<your-domain>', apiKey: '[[API-Key]]' });\n\nconst userId = 'WUgDGqaqzqkRmsgd3PFAT';\n\nconst requestBody = {\n  private_data: {\n    transaction_ids: [\n      '5GRZ4X7XUItpRGOwkHhONqTtG',\n      '9Fw7Jx9Zja5lWlmRkYJf1WMV9'\n    ],\n    subscription_plan: 'premium',\n    last_renewed: 1672511400\n  }\n};\n\nconst result = apiClient.users.patchPrivateData(userId, requestBody);"
          }
        ]
      }
    },
    "/users/{user_id}/public_data": {
      "get": {
        "tags": [
          "Users"
        ],
        "summary": "Retrieve user public data",
        "description": "Retrieves the public data associated with the specified user.\n>[!note]\n> Public data contains non-sensitive attributes that can be safely exposed to client applications and may be used to personalize user experiences.",
        "operationId": "GetPublicData",
        "parameters": [
          {
            "name": "user_id",
            "in": "path",
            "description": "The unique identifier of the user.",
            "required": true,
            "schema": {
              "type": "string"
            },
            "example": "WUgDGqaqzqkRmsgd3PFAT"
          }
        ],
        "responses": {
          "200": {
            "description": "The user's public data was retrieved successfully",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/UserPublicData"
                }
              }
            }
          },
          "422": {
            "description": "Unprocessable Entity",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/KeyValidationProblemDetails"
                },
                "examples": {
                  "KeyValidationError": {
                    "$ref": "#/components/examples/KeyValidationError"
                  }
                }
              }
            }
          },
          "404": {
            "description": "Not Found",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                },
                "examples": {
                  "NotFound": {
                    "$ref": "#/components/examples/NotFound"
                  }
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized"
          },
          "403": {
            "description": "Forbidden"
          }
        },
        "security": [
          {
            "API-Key": [ ]
          }
        ],
        "x-codeSamples": [
          {
            "lang": "csharp",
            "label": "MonoCloud .NET SDK",
            "source": "using MonoCloud.Management;\nusing MonoCloud.Management.Core.Base;\n\nvar apiClient = new MonoCloudManagementClient(new MonoCloudConfig(\"<your-domain>\", \"[[API-Key]]\"));\n\n\nvar userId = \"WUgDGqaqzqkRmsgd3PFAT\";\n\n\nvar result = await apiClient.Users.GetPublicDataAsync(userId);"
          },
          {
            "lang": "javascript",
            "label": "MonoCloud Javascript SDK",
            "source": "import { MonoCloudManagementClient } from '@monocloud/management';\n\nconst apiClient = MonoCloudManagementClient.init({ domain: '<your-domain>', apiKey: '[[API-Key]]' });\n\nconst userId = 'WUgDGqaqzqkRmsgd3PFAT';\n\nconst result = apiClient.users.getPublicData(userId);"
          }
        ]
      },
      "patch": {
        "tags": [
          "Users"
        ],
        "summary": "Update user public data",
        "description": "Applies a partial update to the public data associated with the specified user. Only fields included in the request are updated. Public data fields can be removed by sending a `null` value for the corresponding key.\n>[!warning]\n> Intended for non-sensitive attributes that may be safely exposed to client applications. When surfaced via custom claims, these values may appear in tokens issued to frontend or user-facing applications. Store only data that remains safe even if accessed through browser storage, logs, or debugging tools.",
        "operationId": "PatchPublicData",
        "parameters": [
          {
            "name": "user_id",
            "in": "path",
            "description": "The unique identifier of the user.",
            "required": true,
            "schema": {
              "type": "string"
            },
            "example": "WUgDGqaqzqkRmsgd3PFAT"
          }
        ],
        "requestBody": {
          "description": "The request payload used to update a user's public data.",
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/UpdatePublicDataRequest"
              }
            }
          },
          "required": true
        },
        "responses": {
          "200": {
            "description": "The user's public data was updated successfully",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/UserPublicData"
                }
              }
            }
          },
          "400": {
            "description": "Bad Request",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                },
                "examples": {
                  "BadRequest": {
                    "$ref": "#/components/examples/BadRequest"
                  }
                }
              }
            }
          },
          "422": {
            "description": "Unprocessable Entity",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/IValidationProblemDetails"
                },
                "examples": {
                  "KeyValidationError": {
                    "$ref": "#/components/examples/KeyValidationError"
                  },
                  "IdentityValidationError": {
                    "$ref": "#/components/examples/IdentityValidationError"
                  }
                }
              }
            }
          },
          "404": {
            "description": "Not Found",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                },
                "examples": {
                  "NotFound": {
                    "$ref": "#/components/examples/NotFound"
                  }
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized"
          },
          "403": {
            "description": "Forbidden"
          }
        },
        "security": [
          {
            "API-Key": [ ]
          }
        ],
        "x-codeSamples": [
          {
            "lang": "csharp",
            "label": "MonoCloud .NET SDK",
            "source": "using MonoCloud.Management;\nusing MonoCloud.Management.Models;\nusing MonoCloud.Management.Core.Base;\n\nvar apiClient = new MonoCloudManagementClient(new MonoCloudConfig(\"<your-domain>\", \"[[API-Key]]\"));\n\n\nvar userId = \"WUgDGqaqzqkRmsgd3PFAT\";\n\nvar requestBody = new UpdatePublicDataRequest\n  {\n    PublicData = new Dictionary<string, object>\n    {\n      {\n        \"color_preference\", new Dictionary<string, object>\n          {\n            {\n              \"dashboard\", \"monochrome\"\n            },\n          }\n      },\n      {\n        \"send_emails\", true\n      },\n      {\n        \"days_to_retain\", 1\n      },\n    },\n  };\n\n\nvar result = await apiClient.Users.PatchPublicDataAsync(userId, requestBody);"
          },
          {
            "lang": "javascript",
            "label": "MonoCloud Javascript SDK",
            "source": "import { MonoCloudManagementClient } from '@monocloud/management';\n\nconst apiClient = MonoCloudManagementClient.init({ domain: '<your-domain>', apiKey: '[[API-Key]]' });\n\nconst userId = 'WUgDGqaqzqkRmsgd3PFAT';\n\nconst requestBody = {\n  public_data: {\n    color_preference: {\n      dashboard: 'monochrome'\n    },\n    send_emails: true,\n    days_to_retain: 1\n  }\n};\n\nconst result = apiClient.users.patchPublicData(userId, requestBody);"
          }
        ]
      }
    },
    "/users/{user_id}/blocked_ips": {
      "get": {
        "tags": [
          "Users"
        ],
        "summary": "List blocked IP addresses",
        "description": "Retrieves a paginated list of IP addresses currently blocked for the specified user. Optional query parameters allow searching, filtering, and sorting the results.",
        "operationId": "GetAllBlockedIps",
        "parameters": [
          {
            "name": "user_id",
            "in": "path",
            "description": "The unique identifier of the user.",
            "required": true,
            "schema": {
              "type": "string"
            },
            "example": "WUgDGqaqzqkRmsgd3PFAT"
          },
          {
            "name": "page",
            "in": "query",
            "description": "The page number to retrieve.",
            "schema": {
              "minimum": 1,
              "type": "integer",
              "format": "int32",
              "default": 1
            },
            "example": 1
          },
          {
            "name": "size",
            "in": "query",
            "description": "The number of blocked IPs to return per page.",
            "schema": {
              "maximum": 50,
              "minimum": 1,
              "type": "integer",
              "format": "int32",
              "default": 10
            },
            "example": 10
          },
          {
            "name": "filter",
            "in": "query",
            "description": "Optional Lucene-style filter expression used to search by attributes.",
            "schema": {
              "type": "string"
            },
            "example": "(failure_count:[3 TO *] AND blocked_until:[1704067200 TO *])"
          },
          {
            "name": "sort",
            "in": "query",
            "description": "Sort expression in the format `field:direction`, where direction is `1` for ascending or `-1` for descending.\nSupported fields include - `block_until`, `last_sign_in_attempt`, `last_sign_in_success`.",
            "schema": {
              "type": "string"
            },
            "example": "block_until:1"
          }
        ],
        "responses": {
          "200": {
            "description": "The user’s blocked IP addresses were retrieved successfully",
            "headers": {
              "x-Pagination": {
                "description": "Returns the x-Pagination header",
                "schema": {
                  "$ref": "#/components/schemas/PaginationHeader"
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "type": "array",
                  "items": {
                    "$ref": "#/components/schemas/UserIpAccessDetails"
                  }
                }
              }
            }
          },
          "400": {
            "description": "Bad Request",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                },
                "examples": {
                  "BadRequest": {
                    "$ref": "#/components/examples/BadRequest"
                  }
                }
              }
            }
          },
          "422": {
            "description": "Unprocessable Entity",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/KeyValidationProblemDetails"
                },
                "examples": {
                  "KeyValidationError": {
                    "$ref": "#/components/examples/KeyValidationError"
                  }
                }
              }
            }
          },
          "404": {
            "description": "Not Found",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                },
                "examples": {
                  "NotFound": {
                    "$ref": "#/components/examples/NotFound"
                  }
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized"
          },
          "403": {
            "description": "Forbidden"
          }
        },
        "security": [
          {
            "API-Key": [ ]
          }
        ],
        "x-codeSamples": [
          {
            "lang": "csharp",
            "label": "MonoCloud .NET SDK",
            "source": "using MonoCloud.Management;\nusing MonoCloud.Management.Core.Base;\n\nvar apiClient = new MonoCloudManagementClient(new MonoCloudConfig(\"<your-domain>\", \"[[API-Key]]\"));\n\n\nvar userId = \"WUgDGqaqzqkRmsgd3PFAT\";\n\nvar page = 1;\n\nvar size = 10;\n\nvar filter = \"(failure_count:[3 TO *] AND blocked_until:[1704067200 TO *])\";\n\nvar sort = \"block_until:1\";\n\n\nvar result = await apiClient.Users.GetAllBlockedIpsAsync(userId, page, size, filter, sort);"
          },
          {
            "lang": "javascript",
            "label": "MonoCloud Javascript SDK",
            "source": "import { MonoCloudManagementClient } from '@monocloud/management';\n\nconst apiClient = MonoCloudManagementClient.init({ domain: '<your-domain>', apiKey: '[[API-Key]]' });\n\nconst userId = 'WUgDGqaqzqkRmsgd3PFAT';\n\nconst page = 1;\n\nconst size = 10;\n\nconst filter = '(failure_count:[3 TO *] AND blocked_until:[1704067200 TO *])';\n\nconst sort = 'block_until:1';\n\nconst result = apiClient.users.getAllBlockedIps(userId, page, size, filter, sort);"
          }
        ]
      }
    },
    "/users/{user_id}/blocked_ips/unblock": {
      "post": {
        "tags": [
          "Users"
        ],
        "summary": "Reset IP lockout",
        "description": "Removes the lockout applied to the specified IP due to excessive failed authentication attempts, allowing sign-in attempts from that IP again. Providing the value `all` resets lockouts for every IP associated with the user.",
        "operationId": "UnblockIp",
        "parameters": [
          {
            "name": "user_id",
            "in": "path",
            "description": "The unique identifier of the user whose IP address should be unblocked.",
            "required": true,
            "schema": {
              "type": "string"
            },
            "example": "WUgDGqaqzqkRmsgd3PFAT"
          }
        ],
        "requestBody": {
          "description": "The request payload used to unblock a previously blocked IP address.",
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/UnblockIpRequest"
              }
            }
          },
          "required": true
        },
        "responses": {
          "200": {
            "description": "The IP lockout was reset successfully",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/User"
                }
              }
            }
          },
          "400": {
            "description": "Bad Request",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                },
                "examples": {
                  "BadRequest": {
                    "$ref": "#/components/examples/BadRequest"
                  }
                }
              }
            }
          },
          "422": {
            "description": "Unprocessable Entity",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/IValidationProblemDetails"
                },
                "examples": {
                  "KeyValidationError": {
                    "$ref": "#/components/examples/KeyValidationError"
                  },
                  "IdentityValidationError": {
                    "$ref": "#/components/examples/IdentityValidationError"
                  }
                }
              }
            }
          },
          "404": {
            "description": "Not Found",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                },
                "examples": {
                  "NotFound": {
                    "$ref": "#/components/examples/NotFound"
                  }
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized"
          },
          "403": {
            "description": "Forbidden"
          }
        },
        "security": [
          {
            "API-Key": [ ]
          }
        ],
        "x-codeSamples": [
          {
            "lang": "csharp",
            "label": "MonoCloud .NET SDK",
            "source": "using MonoCloud.Management;\nusing MonoCloud.Management.Models;\nusing MonoCloud.Management.Core.Base;\n\nvar apiClient = new MonoCloudManagementClient(new MonoCloudConfig(\"<your-domain>\", \"[[API-Key]]\"));\n\n\nvar userId = \"WUgDGqaqzqkRmsgd3PFAT\";\n\nvar requestBody = new UnblockIpRequest\n  {\n    IpAddress = \"127.0.0.1\",\n  };\n\n\nvar result = await apiClient.Users.UnblockIpAsync(userId, requestBody);"
          },
          {
            "lang": "javascript",
            "label": "MonoCloud Javascript SDK",
            "source": "import { MonoCloudManagementClient } from '@monocloud/management';\n\nconst apiClient = MonoCloudManagementClient.init({ domain: '<your-domain>', apiKey: '[[API-Key]]' });\n\nconst userId = 'WUgDGqaqzqkRmsgd3PFAT';\n\nconst requestBody = {\n  ip_address: '127.0.0.1'\n};\n\nconst result = apiClient.users.unblockIp(userId, requestBody);"
          }
        ]
      }
    },
    "/users/{user_id}/sessions": {
      "get": {
        "tags": [
          "Users"
        ],
        "summary": "List user sessions",
        "description": "Retrieves a paginated list of all active sessions for the specified user. Optional query parameters allow searching, filtering, and sorting the results.\n>[!note]\n> Access to user session management endpoints requires an active Pro plan subscription.",
        "operationId": "GetAllUserSessions",
        "parameters": [
          {
            "name": "user_id",
            "in": "path",
            "description": "The unique identifier of the user.",
            "required": true,
            "schema": {
              "type": "string"
            },
            "example": "WUgDGqaqzqkRmsgd3PFAT"
          },
          {
            "name": "page",
            "in": "query",
            "description": "The page number to retrieve.",
            "schema": {
              "minimum": 1,
              "type": "integer",
              "format": "int32",
              "default": 1
            },
            "example": 1
          },
          {
            "name": "size",
            "in": "query",
            "description": "The number of user sessions to return per page.",
            "schema": {
              "maximum": 50,
              "minimum": 1,
              "type": "integer",
              "format": "int32",
              "default": 10
            },
            "example": 10
          },
          {
            "name": "client_id",
            "in": "query",
            "description": "Filters results to user sessions associated with the specified client.",
            "schema": {
              "type": "string"
            },
            "example": "eCOGRJYpnNwwAAuCeReEW"
          },
          {
            "name": "sort",
            "in": "query",
            "description": "Sort expression in the format `field:direction`, where direction is `1` for ascending or `-1` for descending.\nSupported fields include - `session_id`, `initiated_at`, `expires_at`, `last_updated`.",
            "schema": {
              "type": "string"
            },
            "example": "initiated_at:1"
          }
        ],
        "responses": {
          "200": {
            "description": "The user's sessions were retrieved successfully",
            "headers": {
              "x-Pagination": {
                "description": "Returns the x-Pagination header",
                "schema": {
                  "$ref": "#/components/schemas/PaginationHeader"
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "type": "array",
                  "items": {
                    "$ref": "#/components/schemas/UserSession"
                  }
                }
              }
            }
          },
          "400": {
            "description": "Bad Request",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                },
                "examples": {
                  "BadRequest": {
                    "$ref": "#/components/examples/BadRequest"
                  }
                }
              }
            }
          },
          "422": {
            "description": "Unprocessable Entity",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/KeyValidationProblemDetails"
                },
                "examples": {
                  "KeyValidationError": {
                    "$ref": "#/components/examples/KeyValidationError"
                  }
                }
              }
            }
          },
          "402": {
            "description": "Payment Required",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                },
                "examples": {
                  "PaymentRequired": {
                    "$ref": "#/components/examples/PaymentRequired"
                  }
                }
              }
            }
          },
          "404": {
            "description": "Not Found",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                },
                "examples": {
                  "NotFound": {
                    "$ref": "#/components/examples/NotFound"
                  }
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized"
          },
          "403": {
            "description": "Forbidden"
          }
        },
        "security": [
          {
            "API-Key": [ ]
          }
        ],
        "x-badges": [
          {
            "name": "Pro",
            "position": "before"
          }
        ],
        "x-codeSamples": [
          {
            "lang": "csharp",
            "label": "MonoCloud .NET SDK",
            "source": "using MonoCloud.Management;\nusing MonoCloud.Management.Core.Base;\n\nvar apiClient = new MonoCloudManagementClient(new MonoCloudConfig(\"<your-domain>\", \"[[API-Key]]\"));\n\n\nvar userId = \"WUgDGqaqzqkRmsgd3PFAT\";\n\nvar page = 1;\n\nvar size = 10;\n\nvar clientId = \"eCOGRJYpnNwwAAuCeReEW\";\n\nvar sort = \"initiated_at:1\";\n\n\nvar result = await apiClient.Users.GetAllUserSessionsAsync(userId, page, size, clientId, sort);"
          },
          {
            "lang": "javascript",
            "label": "MonoCloud Javascript SDK",
            "source": "import { MonoCloudManagementClient } from '@monocloud/management';\n\nconst apiClient = MonoCloudManagementClient.init({ domain: '<your-domain>', apiKey: '[[API-Key]]' });\n\nconst userId = 'WUgDGqaqzqkRmsgd3PFAT';\n\nconst page = 1;\n\nconst size = 10;\n\nconst clientId = 'eCOGRJYpnNwwAAuCeReEW';\n\nconst sort = 'initiated_at:1';\n\nconst result = apiClient.users.getAllUserSessions(userId, page, size, clientId, sort);"
          }
        ]
      }
    },
    "/users/{user_id}/sessions/{session_id}": {
      "get": {
        "tags": [
          "Users"
        ],
        "summary": "Retrieve a user session",
        "description": "Retrieves detailed information about a specific session for the specified user.\n>[!note]\n> Access to user session management endpoints requires an active Pro plan subscription.",
        "operationId": "FindUserSession",
        "parameters": [
          {
            "name": "user_id",
            "in": "path",
            "description": "The unique identifier of the user.",
            "required": true,
            "schema": {
              "type": "string"
            },
            "example": "WUgDGqaqzqkRmsgd3PFAT"
          },
          {
            "name": "session_id",
            "in": "path",
            "description": "The unique identifier of the user session.",
            "required": true,
            "schema": {
              "type": "string"
            },
            "example": "F8B7C57ACB5BEE57AC582D96CAF46D4D"
          }
        ],
        "responses": {
          "200": {
            "description": "The user session was retrieved successfully",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/UserSession"
                }
              }
            }
          },
          "422": {
            "description": "Unprocessable Entity",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/KeyValidationProblemDetails"
                },
                "examples": {
                  "KeyValidationError": {
                    "$ref": "#/components/examples/KeyValidationError"
                  }
                }
              }
            }
          },
          "402": {
            "description": "Payment Required",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                },
                "examples": {
                  "PaymentRequired": {
                    "$ref": "#/components/examples/PaymentRequired"
                  }
                }
              }
            }
          },
          "404": {
            "description": "Not Found",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                },
                "examples": {
                  "NotFound": {
                    "$ref": "#/components/examples/NotFound"
                  }
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized"
          },
          "403": {
            "description": "Forbidden"
          }
        },
        "security": [
          {
            "API-Key": [ ]
          }
        ],
        "x-badges": [
          {
            "name": "Pro",
            "position": "before"
          }
        ],
        "x-codeSamples": [
          {
            "lang": "csharp",
            "label": "MonoCloud .NET SDK",
            "source": "using MonoCloud.Management;\nusing MonoCloud.Management.Core.Base;\n\nvar apiClient = new MonoCloudManagementClient(new MonoCloudConfig(\"<your-domain>\", \"[[API-Key]]\"));\n\n\nvar userId = \"WUgDGqaqzqkRmsgd3PFAT\";\n\nvar sessionId = \"F8B7C57ACB5BEE57AC582D96CAF46D4D\";\n\n\nvar result = await apiClient.Users.FindUserSessionAsync(userId, sessionId);"
          },
          {
            "lang": "javascript",
            "label": "MonoCloud Javascript SDK",
            "source": "import { MonoCloudManagementClient } from '@monocloud/management';\n\nconst apiClient = MonoCloudManagementClient.init({ domain: '<your-domain>', apiKey: '[[API-Key]]' });\n\nconst userId = 'WUgDGqaqzqkRmsgd3PFAT';\n\nconst sessionId = 'F8B7C57ACB5BEE57AC582D96CAF46D4D';\n\nconst result = apiClient.users.findUserSession(userId, sessionId);"
          }
        ]
      },
      "delete": {
        "tags": [
          "Users"
        ],
        "summary": "Revoke a session",
        "description": "Revokes the specified user session, immediately terminating it and preventing further sign-in activity under that session.\n>[!note]\n> Access to user session management endpoints requires an active Pro plan subscription. Existing tokens remain active unless the application enforces token-to-session binding.",
        "operationId": "RevokeUserSession",
        "parameters": [
          {
            "name": "user_id",
            "in": "path",
            "description": "The unique identifier of the user.",
            "required": true,
            "schema": {
              "type": "string"
            },
            "example": "WUgDGqaqzqkRmsgd3PFAT"
          },
          {
            "name": "session_id",
            "in": "path",
            "description": "The unique identifier of the user session.",
            "required": true,
            "schema": {
              "type": "string"
            },
            "example": "F8B7C57ACB5BEE57AC582D96CAF46D4D"
          }
        ],
        "responses": {
          "204": {
            "description": "The user's session was revoked successfully"
          },
          "422": {
            "description": "Unprocessable Entity",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/IValidationProblemDetails"
                },
                "examples": {
                  "KeyValidationError": {
                    "$ref": "#/components/examples/KeyValidationError"
                  },
                  "IdentityValidationError": {
                    "$ref": "#/components/examples/IdentityValidationError"
                  }
                }
              }
            }
          },
          "404": {
            "description": "Not Found",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                },
                "examples": {
                  "NotFound": {
                    "$ref": "#/components/examples/NotFound"
                  }
                }
              }
            }
          },
          "402": {
            "description": "Payment Required",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                },
                "examples": {
                  "PaymentRequired": {
                    "$ref": "#/components/examples/PaymentRequired"
                  }
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized"
          },
          "403": {
            "description": "Forbidden"
          }
        },
        "security": [
          {
            "API-Key": [ ]
          }
        ],
        "x-badges": [
          {
            "name": "Pro",
            "position": "before"
          }
        ],
        "x-codeSamples": [
          {
            "lang": "csharp",
            "label": "MonoCloud .NET SDK",
            "source": "using MonoCloud.Management;\nusing MonoCloud.Management.Core.Base;\n\nvar apiClient = new MonoCloudManagementClient(new MonoCloudConfig(\"<your-domain>\", \"[[API-Key]]\"));\n\n\nvar userId = \"WUgDGqaqzqkRmsgd3PFAT\";\n\nvar sessionId = \"F8B7C57ACB5BEE57AC582D96CAF46D4D\";\n\n\nvar result = await apiClient.Users.RevokeUserSessionAsync(userId, sessionId);"
          },
          {
            "lang": "javascript",
            "label": "MonoCloud Javascript SDK",
            "source": "import { MonoCloudManagementClient } from '@monocloud/management';\n\nconst apiClient = MonoCloudManagementClient.init({ domain: '<your-domain>', apiKey: '[[API-Key]]' });\n\nconst userId = 'WUgDGqaqzqkRmsgd3PFAT';\n\nconst sessionId = 'F8B7C57ACB5BEE57AC582D96CAF46D4D';\n\nconst result = apiClient.users.revokeUserSession(userId, sessionId);"
          }
        ]
      }
    },
    "/users/{user_id}/external_authenticator/disconnect": {
      "post": {
        "tags": [
          "Users"
        ],
        "summary": "Disconnect an external authenticator",
        "description": "Removes a linked external authentication provider (such as Google, Microsoft, GitHub, etc.) from the user’s account. After disconnection, the user will no longer be able to authenticate using that provider.",
        "operationId": "ExternalAuthenticatorDisconnect",
        "parameters": [
          {
            "name": "user_id",
            "in": "path",
            "description": "The unique identifier of the user.",
            "required": true,
            "schema": {
              "type": "string"
            },
            "example": "WUgDGqaqzqkRmsgd3PFAT"
          }
        ],
        "requestBody": {
          "description": "The request payload used to disconnect an external authenticator from a user's account.",
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/ExternalAuthenticatorDisconnectRequest"
              }
            }
          },
          "required": true
        },
        "responses": {
          "200": {
            "description": "The external authenticator was disconnected successfully",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/User"
                }
              }
            }
          },
          "400": {
            "description": "Bad Request",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                },
                "examples": {
                  "BadRequest": {
                    "$ref": "#/components/examples/BadRequest"
                  }
                }
              }
            }
          },
          "422": {
            "description": "Unprocessable Entity",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/IValidationProblemDetails"
                },
                "examples": {
                  "KeyValidationError": {
                    "$ref": "#/components/examples/KeyValidationError"
                  },
                  "IdentityValidationError": {
                    "$ref": "#/components/examples/IdentityValidationError"
                  }
                }
              }
            }
          },
          "404": {
            "description": "Not Found",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                },
                "examples": {
                  "NotFound": {
                    "$ref": "#/components/examples/NotFound"
                  }
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized"
          },
          "403": {
            "description": "Forbidden"
          }
        },
        "security": [
          {
            "API-Key": [ ]
          }
        ],
        "x-codeSamples": [
          {
            "lang": "csharp",
            "label": "MonoCloud .NET SDK",
            "source": "using MonoCloud.Management;\nusing MonoCloud.Management.Models;\nusing MonoCloud.Management.Core.Base;\n\nvar apiClient = new MonoCloudManagementClient(new MonoCloudConfig(\"<your-domain>\", \"[[API-Key]]\"));\n\n\nvar userId = \"WUgDGqaqzqkRmsgd3PFAT\";\n\nvar requestBody = new ExternalAuthenticatorDisconnectRequest\n  {\n    Provider = \"google\",\n    ProviderUserId = \"79a500f9-aba6-4f03-baec-c18f4b7136ad\",\n  };\n\n\nvar result = await apiClient.Users.ExternalAuthenticatorDisconnectAsync(userId, requestBody);"
          },
          {
            "lang": "javascript",
            "label": "MonoCloud Javascript SDK",
            "source": "import { MonoCloudManagementClient } from '@monocloud/management';\n\nconst apiClient = MonoCloudManagementClient.init({ domain: '<your-domain>', apiKey: '[[API-Key]]' });\n\nconst userId = 'WUgDGqaqzqkRmsgd3PFAT';\n\nconst requestBody = {\n  provider: 'google',\n  provider_user_id: '79a500f9-aba6-4f03-baec-c18f4b7136ad'\n};\n\nconst result = apiClient.users.externalAuthenticatorDisconnect(userId, requestBody);"
          }
        ]
      }
    },
    "/users/{user_id}/groups": {
      "get": {
        "tags": [
          "Users"
        ],
        "summary": "List user's groups",
        "description": "Retrieves a paginated list of user groups that the user is assigned to. Optional query parameters allow sorting of the results.",
        "operationId": "GetAllUserGroups",
        "parameters": [
          {
            "name": "user_id",
            "in": "path",
            "description": "The unique identifier of the user.",
            "required": true,
            "schema": {
              "type": "string"
            },
            "example": "WUgDGqaqzqkRmsgd3PFAT"
          },
          {
            "name": "page",
            "in": "query",
            "description": "The page number to retrieve.",
            "schema": {
              "minimum": 1,
              "type": "integer",
              "format": "int32",
              "default": 1
            },
            "example": 1
          },
          {
            "name": "size",
            "in": "query",
            "description": "The number of groups to return per page.",
            "schema": {
              "maximum": 50,
              "minimum": 1,
              "type": "integer",
              "format": "int32",
              "default": 10
            },
            "example": 10
          },
          {
            "name": "sort",
            "in": "query",
            "description": "Sort expression in the format `field:direction`, where direction is `1` for ascending or `-1` for descending.\nSupported fields include - `creation_time`.",
            "schema": {
              "type": "string"
            },
            "example": "creation_time:1"
          }
        ],
        "responses": {
          "200": {
            "description": "The user's group associations were retrieved successfully",
            "headers": {
              "x-Pagination": {
                "description": "Returns the x-Pagination header",
                "schema": {
                  "$ref": "#/components/schemas/PaginationHeader"
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "type": "array",
                  "items": {
                    "$ref": "#/components/schemas/UserGroup"
                  }
                }
              }
            }
          },
          "404": {
            "description": "Not Found",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                },
                "examples": {
                  "NotFound": {
                    "$ref": "#/components/examples/NotFound"
                  }
                }
              }
            }
          },
          "422": {
            "description": "Unprocessable Entity",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/KeyValidationProblemDetails"
                },
                "examples": {
                  "KeyValidationError": {
                    "$ref": "#/components/examples/KeyValidationError"
                  }
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized"
          },
          "403": {
            "description": "Forbidden"
          }
        },
        "security": [
          {
            "API-Key": [ ]
          }
        ],
        "x-codeSamples": [
          {
            "lang": "csharp",
            "label": "MonoCloud .NET SDK",
            "source": "using MonoCloud.Management;\nusing MonoCloud.Management.Core.Base;\n\nvar apiClient = new MonoCloudManagementClient(new MonoCloudConfig(\"<your-domain>\", \"[[API-Key]]\"));\n\n\nvar userId = \"WUgDGqaqzqkRmsgd3PFAT\";\n\nvar page = 1;\n\nvar size = 10;\n\nvar sort = \"creation_time:1\";\n\n\nvar result = await apiClient.Users.GetAllUserGroupsAsync(userId, page, size, sort);"
          },
          {
            "lang": "javascript",
            "label": "MonoCloud Javascript SDK",
            "source": "import { MonoCloudManagementClient } from '@monocloud/management';\n\nconst apiClient = MonoCloudManagementClient.init({ domain: '<your-domain>', apiKey: '[[API-Key]]' });\n\nconst userId = 'WUgDGqaqzqkRmsgd3PFAT';\n\nconst page = 1;\n\nconst size = 10;\n\nconst sort = 'creation_time:1';\n\nconst result = apiClient.users.getAllUserGroups(userId, page, size, sort);"
          }
        ]
      }
    },
    "/users/{user_id}/groups/{group_id}": {
      "get": {
        "tags": [
          "Users"
        ],
        "summary": "Retrieve a user group",
        "description": "Retrieves information about the specified group and the user’s membership in it.",
        "operationId": "FindUserGroup",
        "parameters": [
          {
            "name": "user_id",
            "in": "path",
            "description": "The unique identifier of the user.",
            "required": true,
            "schema": {
              "type": "string"
            },
            "example": "WUgDGqaqzqkRmsgd3PFAT"
          },
          {
            "name": "group_id",
            "in": "path",
            "description": "The unique identifier of the group.",
            "required": true,
            "schema": {
              "type": "string",
              "format": "uuid"
            },
            "example": "b4835fe2-5d39-4ff8-a1b6-1699b5899ff8"
          }
        ],
        "responses": {
          "200": {
            "description": "The user's group association was retrieved successfully",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/UserGroup"
                }
              }
            }
          },
          "404": {
            "description": "Not Found",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                },
                "examples": {
                  "NotFound": {
                    "$ref": "#/components/examples/NotFound"
                  }
                }
              }
            }
          },
          "422": {
            "description": "Unprocessable Entity",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/KeyValidationProblemDetails"
                },
                "examples": {
                  "KeyValidationError": {
                    "$ref": "#/components/examples/KeyValidationError"
                  }
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized"
          },
          "403": {
            "description": "Forbidden"
          }
        },
        "security": [
          {
            "API-Key": [ ]
          }
        ],
        "x-codeSamples": [
          {
            "lang": "csharp",
            "label": "MonoCloud .NET SDK",
            "source": "using MonoCloud.Management;\nusing MonoCloud.Management.Core.Base;\n\nvar apiClient = new MonoCloudManagementClient(new MonoCloudConfig(\"<your-domain>\", \"[[API-Key]]\"));\n\n\nvar userId = \"WUgDGqaqzqkRmsgd3PFAT\";\n\nvar groupId = Guid.Parse(\"b4835fe2-5d39-4ff8-a1b6-1699b5899ff8\");\n\n\nvar result = await apiClient.Users.FindUserGroupAsync(userId, groupId);"
          },
          {
            "lang": "javascript",
            "label": "MonoCloud Javascript SDK",
            "source": "import { MonoCloudManagementClient } from '@monocloud/management';\n\nconst apiClient = MonoCloudManagementClient.init({ domain: '<your-domain>', apiKey: '[[API-Key]]' });\n\nconst userId = 'WUgDGqaqzqkRmsgd3PFAT';\n\nconst groupId = 'b4835fe2-5d39-4ff8-a1b6-1699b5899ff8';\n\nconst result = apiClient.users.findUserGroup(userId, groupId);"
          }
        ]
      },
      "post": {
        "tags": [
          "Users"
        ],
        "summary": "Assign a user to a group",
        "description": "Adds the specified user to the group, establishing membership and enabling access configurations assigned to that group.",
        "operationId": "AssignUserToGroup",
        "parameters": [
          {
            "name": "user_id",
            "in": "path",
            "description": "The unique identifier of the user.",
            "required": true,
            "schema": {
              "type": "string"
            },
            "example": "WUgDGqaqzqkRmsgd3PFAT"
          },
          {
            "name": "group_id",
            "in": "path",
            "description": "The unique identifier of the group.",
            "required": true,
            "schema": {
              "type": "string",
              "format": "uuid"
            },
            "example": "b4835fe2-5d39-4ff8-a1b6-1699b5899ff8"
          }
        ],
        "responses": {
          "201": {
            "description": "The user was assigned to the group successfully",
            "headers": {
              "location": {
                "description": "Returns the location header",
                "schema": {
                  "type": "string",
                  "format": "uri"
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/UserGroup"
                }
              }
            }
          },
          "404": {
            "description": "Not Found",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                },
                "examples": {
                  "NotFound": {
                    "$ref": "#/components/examples/NotFound"
                  }
                }
              }
            }
          },
          "422": {
            "description": "Unprocessable Entity",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/IValidationProblemDetails"
                },
                "examples": {
                  "KeyValidationError": {
                    "$ref": "#/components/examples/KeyValidationError"
                  },
                  "IdentityValidationError": {
                    "$ref": "#/components/examples/IdentityValidationError"
                  }
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized"
          },
          "403": {
            "description": "Forbidden"
          }
        },
        "security": [
          {
            "API-Key": [ ]
          }
        ],
        "x-codeSamples": [
          {
            "lang": "csharp",
            "label": "MonoCloud .NET SDK",
            "source": "using MonoCloud.Management;\nusing MonoCloud.Management.Core.Base;\n\nvar apiClient = new MonoCloudManagementClient(new MonoCloudConfig(\"<your-domain>\", \"[[API-Key]]\"));\n\n\nvar userId = \"WUgDGqaqzqkRmsgd3PFAT\";\n\nvar groupId = Guid.Parse(\"b4835fe2-5d39-4ff8-a1b6-1699b5899ff8\");\n\n\nvar result = await apiClient.Users.AssignUserToGroupAsync(userId, groupId);"
          },
          {
            "lang": "javascript",
            "label": "MonoCloud Javascript SDK",
            "source": "import { MonoCloudManagementClient } from '@monocloud/management';\n\nconst apiClient = MonoCloudManagementClient.init({ domain: '<your-domain>', apiKey: '[[API-Key]]' });\n\nconst userId = 'WUgDGqaqzqkRmsgd3PFAT';\n\nconst groupId = 'b4835fe2-5d39-4ff8-a1b6-1699b5899ff8';\n\nconst result = apiClient.users.assignUserToGroup(userId, groupId);"
          }
        ]
      },
      "delete": {
        "tags": [
          "Users"
        ],
        "summary": "Remove a user from a group",
        "description": "Removes the specified user from the group. After removal, the user will no longer receive any access, permissions, or roles previously granted through that group.",
        "operationId": "RemoveUserFromGroup",
        "parameters": [
          {
            "name": "user_id",
            "in": "path",
            "description": "The unique identifier of the user.",
            "required": true,
            "schema": {
              "type": "string"
            },
            "example": "WUgDGqaqzqkRmsgd3PFAT"
          },
          {
            "name": "group_id",
            "in": "path",
            "description": "The unique identifier of the group.",
            "required": true,
            "schema": {
              "type": "string",
              "format": "uuid"
            },
            "example": "b4835fe2-5d39-4ff8-a1b6-1699b5899ff8"
          }
        ],
        "responses": {
          "204": {
            "description": "The user was removed from the group successfully"
          },
          "404": {
            "description": "Not Found",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                },
                "examples": {
                  "NotFound": {
                    "$ref": "#/components/examples/NotFound"
                  }
                }
              }
            }
          },
          "422": {
            "description": "Unprocessable Entity",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/IValidationProblemDetails"
                },
                "examples": {
                  "KeyValidationError": {
                    "$ref": "#/components/examples/KeyValidationError"
                  },
                  "IdentityValidationError": {
                    "$ref": "#/components/examples/IdentityValidationError"
                  }
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized"
          },
          "403": {
            "description": "Forbidden"
          }
        },
        "security": [
          {
            "API-Key": [ ]
          }
        ],
        "x-codeSamples": [
          {
            "lang": "csharp",
            "label": "MonoCloud .NET SDK",
            "source": "using MonoCloud.Management;\nusing MonoCloud.Management.Core.Base;\n\nvar apiClient = new MonoCloudManagementClient(new MonoCloudConfig(\"<your-domain>\", \"[[API-Key]]\"));\n\n\nvar userId = \"WUgDGqaqzqkRmsgd3PFAT\";\n\nvar groupId = Guid.Parse(\"b4835fe2-5d39-4ff8-a1b6-1699b5899ff8\");\n\n\nvar result = await apiClient.Users.RemoveUserFromGroupAsync(userId, groupId);"
          },
          {
            "lang": "javascript",
            "label": "MonoCloud Javascript SDK",
            "source": "import { MonoCloudManagementClient } from '@monocloud/management';\n\nconst apiClient = MonoCloudManagementClient.init({ domain: '<your-domain>', apiKey: '[[API-Key]]' });\n\nconst userId = 'WUgDGqaqzqkRmsgd3PFAT';\n\nconst groupId = 'b4835fe2-5d39-4ff8-a1b6-1699b5899ff8';\n\nconst result = apiClient.users.removeUserFromGroup(userId, groupId);"
          }
        ]
      }
    },
    "/users/groups/{group_id}/assigned": {
      "get": {
        "tags": [
          "Users"
        ],
        "summary": "List users in group",
        "description": "Retrieves a paginated list of users assigned to the specified group. Optional query parameters allow searching, filtering, and sorting the results.",
        "operationId": "GetAllGroupAssignedUsers",
        "parameters": [
          {
            "name": "group_id",
            "in": "path",
            "description": "The unique identifier of the group.",
            "required": true,
            "schema": {
              "type": "string",
              "format": "uuid"
            },
            "example": "b4835fe2-5d39-4ff8-a1b6-1699b5899ff8"
          },
          {
            "name": "page",
            "in": "query",
            "description": "The page number to retrieve.",
            "schema": {
              "minimum": 1,
              "type": "integer",
              "format": "int32",
              "default": 1
            },
            "example": 1
          },
          {
            "name": "size",
            "in": "query",
            "description": "The number of users to return per page.",
            "schema": {
              "maximum": 50,
              "minimum": 1,
              "type": "integer",
              "format": "int32",
              "default": 10
            },
            "example": 10
          },
          {
            "name": "filter",
            "in": "query",
            "description": "Optional Lucene-style filter expression used to search by attributes.",
            "schema": {
              "type": "string"
            },
            "example": "(name:bob OR email:bob@example.com)"
          },
          {
            "name": "sort",
            "in": "query",
            "description": "Sort expression in the format `field:direction`, where direction is `1` for ascending or `-1` for descending.\nSupported fields include - `failure_count`, `last_sign_in_attempt`, `sign_in_attempts_count`, `last_sign_in_success`, `sign_in_success_count`, `last_activity`, `block_until`, `creation_time`, `last_updated`.",
            "schema": {
              "type": "string"
            },
            "example": "creation_time:1"
          }
        ],
        "responses": {
          "200": {
            "description": "The users in the group were retrieved successfully",
            "headers": {
              "x-Pagination": {
                "description": "Returns the x-Pagination header",
                "schema": {
                  "$ref": "#/components/schemas/PaginationHeader"
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "type": "array",
                  "items": {
                    "$ref": "#/components/schemas/UserSummary"
                  }
                }
              }
            }
          },
          "404": {
            "description": "Not Found",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                },
                "examples": {
                  "NotFound": {
                    "$ref": "#/components/examples/NotFound"
                  }
                }
              }
            }
          },
          "422": {
            "description": "Unprocessable Entity",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/KeyValidationProblemDetails"
                },
                "examples": {
                  "KeyValidationError": {
                    "$ref": "#/components/examples/KeyValidationError"
                  }
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized"
          },
          "403": {
            "description": "Forbidden"
          }
        },
        "security": [
          {
            "API-Key": [ ]
          }
        ],
        "x-codeSamples": [
          {
            "lang": "csharp",
            "label": "MonoCloud .NET SDK",
            "source": "using MonoCloud.Management;\nusing MonoCloud.Management.Core.Base;\n\nvar apiClient = new MonoCloudManagementClient(new MonoCloudConfig(\"<your-domain>\", \"[[API-Key]]\"));\n\n\nvar groupId = Guid.Parse(\"b4835fe2-5d39-4ff8-a1b6-1699b5899ff8\");\n\nvar page = 1;\n\nvar size = 10;\n\nvar filter = \"(name:bob OR email:bob@example.com)\";\n\nvar sort = \"creation_time:1\";\n\n\nvar result = await apiClient.Users.GetAllGroupAssignedUsersAsync(groupId, page, size, filter, sort);"
          },
          {
            "lang": "javascript",
            "label": "MonoCloud Javascript SDK",
            "source": "import { MonoCloudManagementClient } from '@monocloud/management';\n\nconst apiClient = MonoCloudManagementClient.init({ domain: '<your-domain>', apiKey: '[[API-Key]]' });\n\nconst groupId = 'b4835fe2-5d39-4ff8-a1b6-1699b5899ff8';\n\nconst page = 1;\n\nconst size = 10;\n\nconst filter = '(name:bob OR email:bob@example.com)';\n\nconst sort = 'creation_time:1';\n\nconst result = apiClient.users.getAllGroupAssignedUsers(groupId, page, size, filter, sort);"
          }
        ]
      }
    },
    "/users/{user_id}/grants/clients": {
      "get": {
        "tags": [
          "Users"
        ],
        "summary": "List client grants",
        "description": "Retrieves a paginated list of client-specific grants for the specified user, including consent status and counts of issued refresh tokens, reference tokens, and authorization codes.\n>[!note]\n> Access to grant and token information endpoints requires an active Pro plan subscription.",
        "operationId": "GetAllUserClientGrants",
        "parameters": [
          {
            "name": "user_id",
            "in": "path",
            "description": "The unique identifier of the user.",
            "required": true,
            "schema": {
              "type": "string"
            },
            "example": "WUgDGqaqzqkRmsgd3PFAT"
          },
          {
            "name": "page",
            "in": "query",
            "description": "The page number to retrieve.",
            "schema": {
              "minimum": 1,
              "type": "integer",
              "format": "int32",
              "default": 1
            },
            "example": 1
          },
          {
            "name": "size",
            "in": "query",
            "description": "The number of grants to return per page.",
            "schema": {
              "maximum": 50,
              "minimum": 1,
              "type": "integer",
              "format": "int32",
              "default": 10
            },
            "example": 10
          }
        ],
        "responses": {
          "200": {
            "description": "The user's client grants were retrieved successfully",
            "headers": {
              "x-Pagination": {
                "description": "Returns the x-Pagination header",
                "schema": {
                  "$ref": "#/components/schemas/PaginationHeader"
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "type": "array",
                  "items": {
                    "$ref": "#/components/schemas/UserClientGrants"
                  }
                }
              }
            }
          },
          "400": {
            "description": "Bad Request",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                },
                "examples": {
                  "BadRequest": {
                    "$ref": "#/components/examples/BadRequest"
                  }
                }
              }
            }
          },
          "422": {
            "description": "Unprocessable Entity",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/KeyValidationProblemDetails"
                },
                "examples": {
                  "KeyValidationError": {
                    "$ref": "#/components/examples/KeyValidationError"
                  }
                }
              }
            }
          },
          "402": {
            "description": "Payment Required",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                },
                "examples": {
                  "PaymentRequired": {
                    "$ref": "#/components/examples/PaymentRequired"
                  }
                }
              }
            }
          },
          "404": {
            "description": "Not Found",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                },
                "examples": {
                  "NotFound": {
                    "$ref": "#/components/examples/NotFound"
                  }
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized"
          },
          "403": {
            "description": "Forbidden"
          }
        },
        "security": [
          {
            "API-Key": [ ]
          }
        ],
        "x-badges": [
          {
            "name": "Pro",
            "position": "before"
          }
        ],
        "x-codeSamples": [
          {
            "lang": "csharp",
            "label": "MonoCloud .NET SDK",
            "source": "using MonoCloud.Management;\nusing MonoCloud.Management.Core.Base;\n\nvar apiClient = new MonoCloudManagementClient(new MonoCloudConfig(\"<your-domain>\", \"[[API-Key]]\"));\n\n\nvar userId = \"WUgDGqaqzqkRmsgd3PFAT\";\n\nvar page = 1;\n\nvar size = 10;\n\n\nvar result = await apiClient.Users.GetAllUserClientGrantsAsync(userId, page, size);"
          },
          {
            "lang": "javascript",
            "label": "MonoCloud Javascript SDK",
            "source": "import { MonoCloudManagementClient } from '@monocloud/management';\n\nconst apiClient = MonoCloudManagementClient.init({ domain: '<your-domain>', apiKey: '[[API-Key]]' });\n\nconst userId = 'WUgDGqaqzqkRmsgd3PFAT';\n\nconst page = 1;\n\nconst size = 10;\n\nconst result = apiClient.users.getAllUserClientGrants(userId, page, size);"
          }
        ]
      }
    },
    "/users/{user_id}/grants/consents": {
      "get": {
        "tags": [
          "Users"
        ],
        "summary": "List user consents",
        "description": "Retrieves a paginated list of consents granted by the specified user. Each consent includes the application's approved scopes and associated metadata. Optional query parameters allow searching, filtering, and sorting the results.\n>[!note]\n> Access to grant and token management endpoints requires an active Secure+ subscription.",
        "operationId": "GetAllUserConsents",
        "parameters": [
          {
            "name": "user_id",
            "in": "path",
            "description": "The unique identifier of the user.",
            "required": true,
            "schema": {
              "type": "string"
            },
            "example": "WUgDGqaqzqkRmsgd3PFAT"
          },
          {
            "name": "page",
            "in": "query",
            "description": "The page number to retrieve.",
            "schema": {
              "minimum": 1,
              "type": "integer",
              "format": "int32",
              "default": 1
            },
            "example": 1
          },
          {
            "name": "size",
            "in": "query",
            "description": "The number of consent grants to return per page.",
            "schema": {
              "maximum": 50,
              "minimum": 1,
              "type": "integer",
              "format": "int32",
              "default": 10
            },
            "example": 10
          },
          {
            "name": "client_id",
            "in": "query",
            "description": "Filters results to consent grants issued to the specified client.",
            "schema": {
              "type": "string"
            },
            "example": "eCOGRJYpnNwwAAuCeReEW"
          },
          {
            "name": "sort",
            "in": "query",
            "description": "Sort expression in the format `field:direction`, where direction is `1` for ascending or `-1` for descending.\nSupported fields include - `creation_time`.",
            "schema": {
              "type": "string"
            },
            "example": "creation_time:1"
          }
        ],
        "responses": {
          "200": {
            "description": "The user's consent grants were retrieved successfully",
            "headers": {
              "x-Pagination": {
                "description": "Returns the x-Pagination header",
                "schema": {
                  "$ref": "#/components/schemas/PaginationHeader"
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "type": "array",
                  "items": {
                    "$ref": "#/components/schemas/UserConsent"
                  }
                }
              }
            }
          },
          "400": {
            "description": "Bad Request",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                },
                "examples": {
                  "BadRequest": {
                    "$ref": "#/components/examples/BadRequest"
                  }
                }
              }
            }
          },
          "422": {
            "description": "Unprocessable Entity",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/KeyValidationProblemDetails"
                },
                "examples": {
                  "KeyValidationError": {
                    "$ref": "#/components/examples/KeyValidationError"
                  }
                }
              }
            }
          },
          "402": {
            "description": "Payment Required",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                },
                "examples": {
                  "PaymentRequired": {
                    "$ref": "#/components/examples/PaymentRequired"
                  }
                }
              }
            }
          },
          "404": {
            "description": "Not Found",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                },
                "examples": {
                  "NotFound": {
                    "$ref": "#/components/examples/NotFound"
                  }
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized"
          },
          "403": {
            "description": "Forbidden"
          }
        },
        "security": [
          {
            "API-Key": [ ]
          }
        ],
        "x-badges": [
          {
            "name": "Secure+",
            "position": "before"
          }
        ],
        "x-codeSamples": [
          {
            "lang": "csharp",
            "label": "MonoCloud .NET SDK",
            "source": "using MonoCloud.Management;\nusing MonoCloud.Management.Core.Base;\n\nvar apiClient = new MonoCloudManagementClient(new MonoCloudConfig(\"<your-domain>\", \"[[API-Key]]\"));\n\n\nvar userId = \"WUgDGqaqzqkRmsgd3PFAT\";\n\nvar page = 1;\n\nvar size = 10;\n\nvar clientId = \"eCOGRJYpnNwwAAuCeReEW\";\n\nvar sort = \"creation_time:1\";\n\n\nvar result = await apiClient.Users.GetAllUserConsentsAsync(userId, page, size, clientId, sort);"
          },
          {
            "lang": "javascript",
            "label": "MonoCloud Javascript SDK",
            "source": "import { MonoCloudManagementClient } from '@monocloud/management';\n\nconst apiClient = MonoCloudManagementClient.init({ domain: '<your-domain>', apiKey: '[[API-Key]]' });\n\nconst userId = 'WUgDGqaqzqkRmsgd3PFAT';\n\nconst page = 1;\n\nconst size = 10;\n\nconst clientId = 'eCOGRJYpnNwwAAuCeReEW';\n\nconst sort = 'creation_time:1';\n\nconst result = apiClient.users.getAllUserConsents(userId, page, size, clientId, sort);"
          }
        ]
      }
    },
    "/users/{user_id}/grants/reference_tokens": {
      "get": {
        "tags": [
          "Users"
        ],
        "summary": "List reference tokens",
        "description": "Retrieves a paginated list of reference tokens issued for the specified user. Reference tokens are opaque access tokens that require introspection for validation. Optional query parameters allow searching, filtering, and sorting the results.\n>[!note]\n> Access to grant and token management endpoints requires an active Secure+ subscription.",
        "operationId": "GetAllReferenceTokens",
        "parameters": [
          {
            "name": "user_id",
            "in": "path",
            "description": "The unique identifier of the user.",
            "required": true,
            "schema": {
              "type": "string"
            },
            "example": "WUgDGqaqzqkRmsgd3PFAT"
          },
          {
            "name": "page",
            "in": "query",
            "description": "The page number to retrieve.",
            "schema": {
              "minimum": 1,
              "type": "integer",
              "format": "int32",
              "default": 1
            },
            "example": 1
          },
          {
            "name": "size",
            "in": "query",
            "description": "The number of grants to return per page.",
            "schema": {
              "maximum": 50,
              "minimum": 1,
              "type": "integer",
              "format": "int32",
              "default": 10
            },
            "example": 10
          },
          {
            "name": "client_id",
            "in": "query",
            "description": "Filters results to grants issued to the specified client.",
            "schema": {
              "type": "string"
            },
            "example": "eCOGRJYpnNwwAAuCeReEW"
          },
          {
            "name": "session_id",
            "in": "query",
            "description": "Filters results to grants issued within the specified session.",
            "schema": {
              "type": "string"
            },
            "example": "F8B7C57ACB5BEE57AC582D96CAF46D4D"
          },
          {
            "name": "sort",
            "in": "query",
            "description": "Sort expression in the format `field:direction`, where direction is `1` for ascending or `-1` for descending.\nSupported fields include - `creation_time`.",
            "schema": {
              "type": "string"
            },
            "example": "creation_time:1"
          }
        ],
        "responses": {
          "200": {
            "description": "The user's reference tokens were retrieved successfully",
            "headers": {
              "x-Pagination": {
                "description": "Returns the x-Pagination header",
                "schema": {
                  "$ref": "#/components/schemas/PaginationHeader"
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "type": "array",
                  "items": {
                    "$ref": "#/components/schemas/ReferenceToken"
                  }
                }
              }
            }
          },
          "400": {
            "description": "Bad Request",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                },
                "examples": {
                  "BadRequest": {
                    "$ref": "#/components/examples/BadRequest"
                  }
                }
              }
            }
          },
          "422": {
            "description": "Unprocessable Entity",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/KeyValidationProblemDetails"
                },
                "examples": {
                  "KeyValidationError": {
                    "$ref": "#/components/examples/KeyValidationError"
                  }
                }
              }
            }
          },
          "402": {
            "description": "Payment Required",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                },
                "examples": {
                  "PaymentRequired": {
                    "$ref": "#/components/examples/PaymentRequired"
                  }
                }
              }
            }
          },
          "404": {
            "description": "Not Found",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                },
                "examples": {
                  "NotFound": {
                    "$ref": "#/components/examples/NotFound"
                  }
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized"
          },
          "403": {
            "description": "Forbidden"
          }
        },
        "security": [
          {
            "API-Key": [ ]
          }
        ],
        "x-badges": [
          {
            "name": "Secure+",
            "position": "before"
          }
        ],
        "x-codeSamples": [
          {
            "lang": "csharp",
            "label": "MonoCloud .NET SDK",
            "source": "using MonoCloud.Management;\nusing MonoCloud.Management.Core.Base;\n\nvar apiClient = new MonoCloudManagementClient(new MonoCloudConfig(\"<your-domain>\", \"[[API-Key]]\"));\n\n\nvar userId = \"WUgDGqaqzqkRmsgd3PFAT\";\n\nvar page = 1;\n\nvar size = 10;\n\nvar clientId = \"eCOGRJYpnNwwAAuCeReEW\";\n\nvar sessionId = \"F8B7C57ACB5BEE57AC582D96CAF46D4D\";\n\nvar sort = \"creation_time:1\";\n\n\nvar result = await apiClient.Users.GetAllReferenceTokensAsync(userId, page, size, clientId, sessionId, sort);"
          },
          {
            "lang": "javascript",
            "label": "MonoCloud Javascript SDK",
            "source": "import { MonoCloudManagementClient } from '@monocloud/management';\n\nconst apiClient = MonoCloudManagementClient.init({ domain: '<your-domain>', apiKey: '[[API-Key]]' });\n\nconst userId = 'WUgDGqaqzqkRmsgd3PFAT';\n\nconst page = 1;\n\nconst size = 10;\n\nconst clientId = 'eCOGRJYpnNwwAAuCeReEW';\n\nconst sessionId = 'F8B7C57ACB5BEE57AC582D96CAF46D4D';\n\nconst sort = 'creation_time:1';\n\nconst result = apiClient.users.getAllReferenceTokens(userId, page, size, clientId, sessionId, sort);"
          }
        ]
      }
    },
    "/users/{user_id}/grants/refresh_tokens": {
      "get": {
        "tags": [
          "Users"
        ],
        "summary": "List refresh tokens",
        "description": "Retrieves a paginated list of refresh tokens issued for the specified user. Optional query parameters allow searching, filtering, and sorting the results.\n>[!note]\n> Access to grant and token management endpoints requires an active Secure+ subscription.",
        "operationId": "GetAllRefreshTokens",
        "parameters": [
          {
            "name": "user_id",
            "in": "path",
            "description": "The unique identifier of the user.",
            "required": true,
            "schema": {
              "type": "string"
            },
            "example": "WUgDGqaqzqkRmsgd3PFAT"
          },
          {
            "name": "page",
            "in": "query",
            "description": "The page number to retrieve.",
            "schema": {
              "minimum": 1,
              "type": "integer",
              "format": "int32",
              "default": 1
            },
            "example": 1
          },
          {
            "name": "size",
            "in": "query",
            "description": "The number of grants to return per page.",
            "schema": {
              "maximum": 50,
              "minimum": 1,
              "type": "integer",
              "format": "int32",
              "default": 10
            },
            "example": 10
          },
          {
            "name": "client_id",
            "in": "query",
            "description": "Filters results to grants issued to the specified client.",
            "schema": {
              "type": "string"
            },
            "example": "eCOGRJYpnNwwAAuCeReEW"
          },
          {
            "name": "session_id",
            "in": "query",
            "description": "Filters results to grants issued within the specified session.",
            "schema": {
              "type": "string"
            },
            "example": "F8B7C57ACB5BEE57AC582D96CAF46D4D"
          },
          {
            "name": "sort",
            "in": "query",
            "description": "Sort expression in the format `field:direction`, where direction is `1` for ascending or `-1` for descending.\nSupported fields include - `creation_time`.",
            "schema": {
              "type": "string"
            },
            "example": "creation_time:1"
          }
        ],
        "responses": {
          "200": {
            "description": "The user's refresh tokens were retrieved successfully",
            "headers": {
              "x-Pagination": {
                "description": "Returns the x-Pagination header",
                "schema": {
                  "$ref": "#/components/schemas/PaginationHeader"
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "type": "array",
                  "items": {
                    "$ref": "#/components/schemas/RefreshToken"
                  }
                }
              }
            }
          },
          "400": {
            "description": "Bad Request",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                },
                "examples": {
                  "BadRequest": {
                    "$ref": "#/components/examples/BadRequest"
                  }
                }
              }
            }
          },
          "422": {
            "description": "Unprocessable Entity",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/KeyValidationProblemDetails"
                },
                "examples": {
                  "KeyValidationError": {
                    "$ref": "#/components/examples/KeyValidationError"
                  }
                }
              }
            }
          },
          "402": {
            "description": "Payment Required",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                },
                "examples": {
                  "PaymentRequired": {
                    "$ref": "#/components/examples/PaymentRequired"
                  }
                }
              }
            }
          },
          "404": {
            "description": "Not Found",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                },
                "examples": {
                  "NotFound": {
                    "$ref": "#/components/examples/NotFound"
                  }
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized"
          },
          "403": {
            "description": "Forbidden"
          }
        },
        "security": [
          {
            "API-Key": [ ]
          }
        ],
        "x-badges": [
          {
            "name": "Secure+",
            "position": "before"
          }
        ],
        "x-codeSamples": [
          {
            "lang": "csharp",
            "label": "MonoCloud .NET SDK",
            "source": "using MonoCloud.Management;\nusing MonoCloud.Management.Core.Base;\n\nvar apiClient = new MonoCloudManagementClient(new MonoCloudConfig(\"<your-domain>\", \"[[API-Key]]\"));\n\n\nvar userId = \"WUgDGqaqzqkRmsgd3PFAT\";\n\nvar page = 1;\n\nvar size = 10;\n\nvar clientId = \"eCOGRJYpnNwwAAuCeReEW\";\n\nvar sessionId = \"F8B7C57ACB5BEE57AC582D96CAF46D4D\";\n\nvar sort = \"creation_time:1\";\n\n\nvar result = await apiClient.Users.GetAllRefreshTokensAsync(userId, page, size, clientId, sessionId, sort);"
          },
          {
            "lang": "javascript",
            "label": "MonoCloud Javascript SDK",
            "source": "import { MonoCloudManagementClient } from '@monocloud/management';\n\nconst apiClient = MonoCloudManagementClient.init({ domain: '<your-domain>', apiKey: '[[API-Key]]' });\n\nconst userId = 'WUgDGqaqzqkRmsgd3PFAT';\n\nconst page = 1;\n\nconst size = 10;\n\nconst clientId = 'eCOGRJYpnNwwAAuCeReEW';\n\nconst sessionId = 'F8B7C57ACB5BEE57AC582D96CAF46D4D';\n\nconst sort = 'creation_time:1';\n\nconst result = apiClient.users.getAllRefreshTokens(userId, page, size, clientId, sessionId, sort);"
          }
        ]
      }
    },
    "/users/{user_id}/grants/codes": {
      "get": {
        "tags": [
          "Users"
        ],
        "summary": "List authorization codes",
        "description": "Retrieves a paginated list of authorization codes issued for the specified user. Authorization codes are ephemeral credentials used in OAuth 2.0 authorization flows before token exchange. Optional query parameters allow searching, filtering, and sorting the results.\n>[!note]\n> Access to grant and token management endpoints requires an active Secure+ subscription.",
        "operationId": "GetAllAuthorizationCodes",
        "parameters": [
          {
            "name": "user_id",
            "in": "path",
            "description": "The unique identifier of the user.",
            "required": true,
            "schema": {
              "type": "string"
            },
            "example": "WUgDGqaqzqkRmsgd3PFAT"
          },
          {
            "name": "page",
            "in": "query",
            "description": "The page number to retrieve.",
            "schema": {
              "minimum": 1,
              "type": "integer",
              "format": "int32",
              "default": 1
            },
            "example": 1
          },
          {
            "name": "size",
            "in": "query",
            "description": "The number of grants to return per page.",
            "schema": {
              "maximum": 50,
              "minimum": 1,
              "type": "integer",
              "format": "int32",
              "default": 10
            },
            "example": 10
          },
          {
            "name": "client_id",
            "in": "query",
            "description": "Filters results to grants issued to the specified client.",
            "schema": {
              "type": "string"
            },
            "example": "eCOGRJYpnNwwAAuCeReEW"
          },
          {
            "name": "session_id",
            "in": "query",
            "description": "Filters results to grants issued within the specified session.",
            "schema": {
              "type": "string"
            },
            "example": "F8B7C57ACB5BEE57AC582D96CAF46D4D"
          },
          {
            "name": "sort",
            "in": "query",
            "description": "Sort expression in the format `field:direction`, where direction is `1` for ascending or `-1` for descending.\nSupported fields include - `creation_time`.",
            "schema": {
              "type": "string"
            },
            "example": "creation_time:1"
          }
        ],
        "responses": {
          "200": {
            "description": "The user's authorization codes were retrieved successfully",
            "headers": {
              "x-Pagination": {
                "description": "Returns the x-Pagination header",
                "schema": {
                  "$ref": "#/components/schemas/PaginationHeader"
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "type": "array",
                  "items": {
                    "$ref": "#/components/schemas/AuthorizationCode"
                  }
                }
              }
            }
          },
          "400": {
            "description": "Bad Request",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                },
                "examples": {
                  "BadRequest": {
                    "$ref": "#/components/examples/BadRequest"
                  }
                }
              }
            }
          },
          "422": {
            "description": "Unprocessable Entity",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/KeyValidationProblemDetails"
                },
                "examples": {
                  "KeyValidationError": {
                    "$ref": "#/components/examples/KeyValidationError"
                  }
                }
              }
            }
          },
          "402": {
            "description": "Payment Required",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                },
                "examples": {
                  "PaymentRequired": {
                    "$ref": "#/components/examples/PaymentRequired"
                  }
                }
              }
            }
          },
          "404": {
            "description": "Not Found",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                },
                "examples": {
                  "NotFound": {
                    "$ref": "#/components/examples/NotFound"
                  }
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized"
          },
          "403": {
            "description": "Forbidden"
          }
        },
        "security": [
          {
            "API-Key": [ ]
          }
        ],
        "x-badges": [
          {
            "name": "Secure+",
            "position": "before"
          }
        ],
        "x-codeSamples": [
          {
            "lang": "csharp",
            "label": "MonoCloud .NET SDK",
            "source": "using MonoCloud.Management;\nusing MonoCloud.Management.Core.Base;\n\nvar apiClient = new MonoCloudManagementClient(new MonoCloudConfig(\"<your-domain>\", \"[[API-Key]]\"));\n\n\nvar userId = \"WUgDGqaqzqkRmsgd3PFAT\";\n\nvar page = 1;\n\nvar size = 10;\n\nvar clientId = \"eCOGRJYpnNwwAAuCeReEW\";\n\nvar sessionId = \"F8B7C57ACB5BEE57AC582D96CAF46D4D\";\n\nvar sort = \"creation_time:1\";\n\n\nvar result = await apiClient.Users.GetAllAuthorizationCodesAsync(userId, page, size, clientId, sessionId, sort);"
          },
          {
            "lang": "javascript",
            "label": "MonoCloud Javascript SDK",
            "source": "import { MonoCloudManagementClient } from '@monocloud/management';\n\nconst apiClient = MonoCloudManagementClient.init({ domain: '<your-domain>', apiKey: '[[API-Key]]' });\n\nconst userId = 'WUgDGqaqzqkRmsgd3PFAT';\n\nconst page = 1;\n\nconst size = 10;\n\nconst clientId = 'eCOGRJYpnNwwAAuCeReEW';\n\nconst sessionId = 'F8B7C57ACB5BEE57AC582D96CAF46D4D';\n\nconst sort = 'creation_time:1';\n\nconst result = apiClient.users.getAllAuthorizationCodes(userId, page, size, clientId, sessionId, sort);"
          }
        ]
      }
    },
    "/users/{user_id}/grants/clients/{client_id}": {
      "delete": {
        "tags": [
          "Users"
        ],
        "summary": "Revoke client grants",
        "description": "Revokes all grants issued to the user for the specified application, invalidating existing authorizations.\n>[!note]\n> Access to grant and token management endpoints requires an active Secure+ subscription.",
        "operationId": "RevokeUserClientGrants",
        "parameters": [
          {
            "name": "user_id",
            "in": "path",
            "description": "The unique identifier of the user.",
            "required": true,
            "schema": {
              "type": "string"
            },
            "example": "WUgDGqaqzqkRmsgd3PFAT"
          },
          {
            "name": "client_id",
            "in": "path",
            "description": "The unique identifier of the client.",
            "required": true,
            "schema": {
              "type": "string"
            },
            "example": "eCOGRJYpnNwwAAuCeReEW"
          }
        ],
        "responses": {
          "204": {
            "description": "All grants were revoked successfully"
          },
          "422": {
            "description": "Unprocessable Entity",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/IValidationProblemDetails"
                },
                "examples": {
                  "KeyValidationError": {
                    "$ref": "#/components/examples/KeyValidationError"
                  },
                  "IdentityValidationError": {
                    "$ref": "#/components/examples/IdentityValidationError"
                  }
                }
              }
            }
          },
          "404": {
            "description": "Not Found",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                },
                "examples": {
                  "NotFound": {
                    "$ref": "#/components/examples/NotFound"
                  }
                }
              }
            }
          },
          "402": {
            "description": "Payment Required",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                },
                "examples": {
                  "PaymentRequired": {
                    "$ref": "#/components/examples/PaymentRequired"
                  }
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized"
          },
          "403": {
            "description": "Forbidden"
          }
        },
        "security": [
          {
            "API-Key": [ ]
          }
        ],
        "x-badges": [
          {
            "name": "Secure+",
            "position": "before"
          }
        ],
        "x-codeSamples": [
          {
            "lang": "csharp",
            "label": "MonoCloud .NET SDK",
            "source": "using MonoCloud.Management;\nusing MonoCloud.Management.Core.Base;\n\nvar apiClient = new MonoCloudManagementClient(new MonoCloudConfig(\"<your-domain>\", \"[[API-Key]]\"));\n\n\nvar userId = \"WUgDGqaqzqkRmsgd3PFAT\";\n\nvar clientId = \"eCOGRJYpnNwwAAuCeReEW\";\n\n\nvar result = await apiClient.Users.RevokeUserClientGrantsAsync(userId, clientId);"
          },
          {
            "lang": "javascript",
            "label": "MonoCloud Javascript SDK",
            "source": "import { MonoCloudManagementClient } from '@monocloud/management';\n\nconst apiClient = MonoCloudManagementClient.init({ domain: '<your-domain>', apiKey: '[[API-Key]]' });\n\nconst userId = 'WUgDGqaqzqkRmsgd3PFAT';\n\nconst clientId = 'eCOGRJYpnNwwAAuCeReEW';\n\nconst result = apiClient.users.revokeUserClientGrants(userId, clientId);"
          }
        ]
      }
    },
    "/users/{user_id}/grants/consents/{consent_id}": {
      "delete": {
        "tags": [
          "Users"
        ],
        "summary": "Revoke a consent",
        "description": "Revokes the specified consent, invalidating any previously authorized scopes. If applicable, the application must obtain new consent before acting on behalf of the user again.\n>[!note]\n> Access to grant and token management endpoints requires an active Secure+ subscription.",
        "operationId": "RevokeUserConsent",
        "parameters": [
          {
            "name": "user_id",
            "in": "path",
            "description": "The unique identifier of the user.",
            "required": true,
            "schema": {
              "type": "string"
            },
            "example": "WUgDGqaqzqkRmsgd3PFAT"
          },
          {
            "name": "consent_id",
            "in": "path",
            "description": "The unique identifier of the consent grant.",
            "required": true,
            "schema": {
              "type": "string"
            },
            "example": "HxI56Ol4FjIyUXZBJ6J24"
          }
        ],
        "responses": {
          "204": {
            "description": "The user's consent was revoked successfully"
          },
          "422": {
            "description": "Unprocessable Entity",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/IValidationProblemDetails"
                },
                "examples": {
                  "KeyValidationError": {
                    "$ref": "#/components/examples/KeyValidationError"
                  },
                  "IdentityValidationError": {
                    "$ref": "#/components/examples/IdentityValidationError"
                  }
                }
              }
            }
          },
          "404": {
            "description": "Not Found",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                },
                "examples": {
                  "NotFound": {
                    "$ref": "#/components/examples/NotFound"
                  }
                }
              }
            }
          },
          "402": {
            "description": "Payment Required",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                },
                "examples": {
                  "PaymentRequired": {
                    "$ref": "#/components/examples/PaymentRequired"
                  }
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized"
          },
          "403": {
            "description": "Forbidden"
          }
        },
        "security": [
          {
            "API-Key": [ ]
          }
        ],
        "x-badges": [
          {
            "name": "Secure+",
            "position": "before"
          }
        ],
        "x-codeSamples": [
          {
            "lang": "csharp",
            "label": "MonoCloud .NET SDK",
            "source": "using MonoCloud.Management;\nusing MonoCloud.Management.Core.Base;\n\nvar apiClient = new MonoCloudManagementClient(new MonoCloudConfig(\"<your-domain>\", \"[[API-Key]]\"));\n\n\nvar userId = \"WUgDGqaqzqkRmsgd3PFAT\";\n\nvar consentId = \"HxI56Ol4FjIyUXZBJ6J24\";\n\n\nvar result = await apiClient.Users.RevokeUserConsentAsync(userId, consentId);"
          },
          {
            "lang": "javascript",
            "label": "MonoCloud Javascript SDK",
            "source": "import { MonoCloudManagementClient } from '@monocloud/management';\n\nconst apiClient = MonoCloudManagementClient.init({ domain: '<your-domain>', apiKey: '[[API-Key]]' });\n\nconst userId = 'WUgDGqaqzqkRmsgd3PFAT';\n\nconst consentId = 'HxI56Ol4FjIyUXZBJ6J24';\n\nconst result = apiClient.users.revokeUserConsent(userId, consentId);"
          }
        ]
      }
    },
    "/users/{user_id}/grants/reference_tokens/{token_id}": {
      "delete": {
        "tags": [
          "Users"
        ],
        "summary": "Revoke a reference token",
        "description": "Revokes the specified reference token issued to an application, rendering it invalid for future access to protected resources.\n>[!note]\n> Access to grant and token management endpoints requires an active Secure+ subscription.",
        "operationId": "RevokeReferenceToken",
        "parameters": [
          {
            "name": "user_id",
            "in": "path",
            "description": "The unique identifier of the user.",
            "required": true,
            "schema": {
              "type": "string"
            },
            "example": "WUgDGqaqzqkRmsgd3PFAT"
          },
          {
            "name": "token_id",
            "in": "path",
            "description": "The unique identifier of the reference token grant.",
            "required": true,
            "schema": {
              "type": "string"
            },
            "example": "HxI56Ol4FjIyUXZBJ6J24"
          }
        ],
        "responses": {
          "204": {
            "description": "The reference token was revoked successfully"
          },
          "422": {
            "description": "Unprocessable Entity",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/IValidationProblemDetails"
                },
                "examples": {
                  "KeyValidationError": {
                    "$ref": "#/components/examples/KeyValidationError"
                  },
                  "IdentityValidationError": {
                    "$ref": "#/components/examples/IdentityValidationError"
                  }
                }
              }
            }
          },
          "404": {
            "description": "Not Found",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                },
                "examples": {
                  "NotFound": {
                    "$ref": "#/components/examples/NotFound"
                  }
                }
              }
            }
          },
          "402": {
            "description": "Payment Required",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                },
                "examples": {
                  "PaymentRequired": {
                    "$ref": "#/components/examples/PaymentRequired"
                  }
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized"
          },
          "403": {
            "description": "Forbidden"
          }
        },
        "security": [
          {
            "API-Key": [ ]
          }
        ],
        "x-badges": [
          {
            "name": "Secure+",
            "position": "before"
          }
        ],
        "x-codeSamples": [
          {
            "lang": "csharp",
            "label": "MonoCloud .NET SDK",
            "source": "using MonoCloud.Management;\nusing MonoCloud.Management.Core.Base;\n\nvar apiClient = new MonoCloudManagementClient(new MonoCloudConfig(\"<your-domain>\", \"[[API-Key]]\"));\n\n\nvar userId = \"WUgDGqaqzqkRmsgd3PFAT\";\n\nvar tokenId = \"HxI56Ol4FjIyUXZBJ6J24\";\n\n\nvar result = await apiClient.Users.RevokeReferenceTokenAsync(userId, tokenId);"
          },
          {
            "lang": "javascript",
            "label": "MonoCloud Javascript SDK",
            "source": "import { MonoCloudManagementClient } from '@monocloud/management';\n\nconst apiClient = MonoCloudManagementClient.init({ domain: '<your-domain>', apiKey: '[[API-Key]]' });\n\nconst userId = 'WUgDGqaqzqkRmsgd3PFAT';\n\nconst tokenId = 'HxI56Ol4FjIyUXZBJ6J24';\n\nconst result = apiClient.users.revokeReferenceToken(userId, tokenId);"
          }
        ]
      }
    },
    "/users/{user_id}/grants/refresh_tokens/{token_id}": {
      "delete": {
        "tags": [
          "Users"
        ],
        "summary": "Revoke a refresh token",
        "description": "Revokes the specified refresh token, rendering it unusable for obtaining new access tokens.\n>[!note]\n> Access to grant and token management endpoints requires an active Secure+ subscription.",
        "operationId": "RevokeRefreshToken",
        "parameters": [
          {
            "name": "user_id",
            "in": "path",
            "description": "The unique identifier of the user.",
            "required": true,
            "schema": {
              "type": "string"
            },
            "example": "WUgDGqaqzqkRmsgd3PFAT"
          },
          {
            "name": "token_id",
            "in": "path",
            "description": "The unique identifier of the refresh token grant.",
            "required": true,
            "schema": {
              "type": "string"
            },
            "example": "HxI56Ol4FjIyUXZBJ6J24"
          }
        ],
        "responses": {
          "204": {
            "description": "The refresh token was revoked successfully"
          },
          "422": {
            "description": "Unprocessable Entity",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/IValidationProblemDetails"
                },
                "examples": {
                  "KeyValidationError": {
                    "$ref": "#/components/examples/KeyValidationError"
                  },
                  "IdentityValidationError": {
                    "$ref": "#/components/examples/IdentityValidationError"
                  }
                }
              }
            }
          },
          "404": {
            "description": "Not Found",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                },
                "examples": {
                  "NotFound": {
                    "$ref": "#/components/examples/NotFound"
                  }
                }
              }
            }
          },
          "402": {
            "description": "Payment Required",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                },
                "examples": {
                  "PaymentRequired": {
                    "$ref": "#/components/examples/PaymentRequired"
                  }
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized"
          },
          "403": {
            "description": "Forbidden"
          }
        },
        "security": [
          {
            "API-Key": [ ]
          }
        ],
        "x-badges": [
          {
            "name": "Secure+",
            "position": "before"
          }
        ],
        "x-codeSamples": [
          {
            "lang": "csharp",
            "label": "MonoCloud .NET SDK",
            "source": "using MonoCloud.Management;\nusing MonoCloud.Management.Core.Base;\n\nvar apiClient = new MonoCloudManagementClient(new MonoCloudConfig(\"<your-domain>\", \"[[API-Key]]\"));\n\n\nvar userId = \"WUgDGqaqzqkRmsgd3PFAT\";\n\nvar tokenId = \"HxI56Ol4FjIyUXZBJ6J24\";\n\n\nvar result = await apiClient.Users.RevokeRefreshTokenAsync(userId, tokenId);"
          },
          {
            "lang": "javascript",
            "label": "MonoCloud Javascript SDK",
            "source": "import { MonoCloudManagementClient } from '@monocloud/management';\n\nconst apiClient = MonoCloudManagementClient.init({ domain: '<your-domain>', apiKey: '[[API-Key]]' });\n\nconst userId = 'WUgDGqaqzqkRmsgd3PFAT';\n\nconst tokenId = 'HxI56Ol4FjIyUXZBJ6J24';\n\nconst result = apiClient.users.revokeRefreshToken(userId, tokenId);"
          }
        ]
      }
    },
    "/users/{user_id}/grants/codes/{code_id}": {
      "delete": {
        "tags": [
          "Users"
        ],
        "summary": "Revoke an authorization code",
        "description": "Revokes an authorization code that has not yet been exchanged for tokens, preventing any further use.\n>[!note]\n> Access to grant and token management endpoints requires an active Secure+ subscription.",
        "operationId": "RevokeAuthorizationCode",
        "parameters": [
          {
            "name": "user_id",
            "in": "path",
            "description": "The unique identifier of the user.",
            "required": true,
            "schema": {
              "type": "string"
            },
            "example": "WUgDGqaqzqkRmsgd3PFAT"
          },
          {
            "name": "code_id",
            "in": "path",
            "description": "The unique identifier of the authorization code grant.",
            "required": true,
            "schema": {
              "type": "string"
            },
            "example": "HxI56Ol4FjIyUXZBJ6J24"
          }
        ],
        "responses": {
          "204": {
            "description": "The authorization code was revoked successfully"
          },
          "422": {
            "description": "Unprocessable Entity",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/IValidationProblemDetails"
                },
                "examples": {
                  "KeyValidationError": {
                    "$ref": "#/components/examples/KeyValidationError"
                  },
                  "IdentityValidationError": {
                    "$ref": "#/components/examples/IdentityValidationError"
                  }
                }
              }
            }
          },
          "404": {
            "description": "Not Found",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                },
                "examples": {
                  "NotFound": {
                    "$ref": "#/components/examples/NotFound"
                  }
                }
              }
            }
          },
          "402": {
            "description": "Payment Required",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                },
                "examples": {
                  "PaymentRequired": {
                    "$ref": "#/components/examples/PaymentRequired"
                  }
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized"
          },
          "403": {
            "description": "Forbidden"
          }
        },
        "security": [
          {
            "API-Key": [ ]
          }
        ],
        "x-badges": [
          {
            "name": "Secure+",
            "position": "before"
          }
        ],
        "x-codeSamples": [
          {
            "lang": "csharp",
            "label": "MonoCloud .NET SDK",
            "source": "using MonoCloud.Management;\nusing MonoCloud.Management.Core.Base;\n\nvar apiClient = new MonoCloudManagementClient(new MonoCloudConfig(\"<your-domain>\", \"[[API-Key]]\"));\n\n\nvar userId = \"WUgDGqaqzqkRmsgd3PFAT\";\n\nvar codeId = \"HxI56Ol4FjIyUXZBJ6J24\";\n\n\nvar result = await apiClient.Users.RevokeAuthorizationCodeAsync(userId, codeId);"
          },
          {
            "lang": "javascript",
            "label": "MonoCloud Javascript SDK",
            "source": "import { MonoCloudManagementClient } from '@monocloud/management';\n\nconst apiClient = MonoCloudManagementClient.init({ domain: '<your-domain>', apiKey: '[[API-Key]]' });\n\nconst userId = 'WUgDGqaqzqkRmsgd3PFAT';\n\nconst codeId = 'HxI56Ol4FjIyUXZBJ6J24';\n\nconst result = apiClient.users.revokeAuthorizationCode(userId, codeId);"
          }
        ]
      }
    },
    "/groups": {
      "get": {
        "tags": [
          "Groups"
        ],
        "summary": "List groups",
        "description": "Retrieves a paginated list of groups. Optional query parameters allow searching, filtering, and sorting the results.",
        "operationId": "GetAllGroups",
        "parameters": [
          {
            "name": "page",
            "in": "query",
            "description": "The page number to retrieve.",
            "schema": {
              "minimum": 1,
              "type": "integer",
              "format": "int32",
              "default": 1
            },
            "example": 1
          },
          {
            "name": "size",
            "in": "query",
            "description": "The number of groups to return per page.",
            "schema": {
              "maximum": 50,
              "minimum": 1,
              "type": "integer",
              "format": "int32",
              "default": 10
            },
            "example": 10
          },
          {
            "name": "filter",
            "in": "query",
            "description": "Optional Lucene-style filter expression used to search by attributes.",
            "schema": {
              "type": "string"
            },
            "example": "(name:admin AND users_assigned:[10 TO 100])"
          },
          {
            "name": "sort",
            "in": "query",
            "description": "Sort expression in the format `field:direction`, where direction is `1` for ascending or `-1` for descending.\nSupported fields include - `name`, `type`, `clients_assigned`, `users_assigned`, `last_assigned`, `creation_time`, `last_updated`.",
            "schema": {
              "type": "string"
            },
            "example": "name:1"
          }
        ],
        "responses": {
          "200": {
            "description": "The groups were retrieved successfully",
            "headers": {
              "x-Pagination": {
                "description": "Returns the x-Pagination header",
                "schema": {
                  "$ref": "#/components/schemas/PaginationHeader"
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "type": "array",
                  "items": {
                    "$ref": "#/components/schemas/Group"
                  }
                }
              }
            }
          },
          "400": {
            "description": "Bad Request",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                },
                "examples": {
                  "BadRequest": {
                    "$ref": "#/components/examples/BadRequest"
                  }
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized"
          },
          "403": {
            "description": "Forbidden"
          }
        },
        "security": [
          {
            "API-Key": [ ]
          }
        ],
        "x-codeSamples": [
          {
            "lang": "csharp",
            "label": "MonoCloud .NET SDK",
            "source": "using MonoCloud.Management;\nusing MonoCloud.Management.Core.Base;\n\nvar apiClient = new MonoCloudManagementClient(new MonoCloudConfig(\"<your-domain>\", \"[[API-Key]]\"));\n\n\nvar page = 1;\n\nvar size = 10;\n\nvar filter = \"(name:admin AND users_assigned:[10 TO 100])\";\n\nvar sort = \"name:1\";\n\n\nvar result = await apiClient.Groups.GetAllGroupsAsync(page, size, filter, sort);"
          },
          {
            "lang": "javascript",
            "label": "MonoCloud Javascript SDK",
            "source": "import { MonoCloudManagementClient } from '@monocloud/management';\n\nconst apiClient = MonoCloudManagementClient.init({ domain: '<your-domain>', apiKey: '[[API-Key]]' });\n\nconst page = 1;\n\nconst size = 10;\n\nconst filter = '(name:admin AND users_assigned:[10 TO 100])';\n\nconst sort = 'name:1';\n\nconst result = apiClient.groups.getAllGroups(page, size, filter, sort);"
          }
        ]
      },
      "post": {
        "tags": [
          "Groups"
        ],
        "summary": "Create a group",
        "description": "Creates a new group that can be referenced in access policies, role assignments or user membership management.\n>[!note]\n> Creation of more than two groups requires an active Pro plan subscription.",
        "operationId": "CreateGroup",
        "requestBody": {
          "description": "The request payload used to create a group.",
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/CreateGroupRequest"
              }
            }
          },
          "required": true
        },
        "responses": {
          "201": {
            "description": "Group was created successfully",
            "headers": {
              "location": {
                "description": "Returns the location header",
                "schema": {
                  "type": "string",
                  "format": "uri"
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Group"
                }
              }
            }
          },
          "400": {
            "description": "Bad Request",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                },
                "examples": {
                  "BadRequest": {
                    "$ref": "#/components/examples/BadRequest"
                  }
                }
              }
            }
          },
          "409": {
            "description": "Conflict",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                },
                "examples": {
                  "Conflict": {
                    "$ref": "#/components/examples/Conflict"
                  }
                }
              }
            }
          },
          "422": {
            "description": "Unprocessable Entity",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/IValidationProblemDetails"
                },
                "examples": {
                  "KeyValidationError": {
                    "$ref": "#/components/examples/KeyValidationError"
                  },
                  "IdentityValidationError": {
                    "$ref": "#/components/examples/IdentityValidationError"
                  }
                }
              }
            }
          },
          "402": {
            "description": "Payment Required",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                },
                "examples": {
                  "PaymentRequired": {
                    "$ref": "#/components/examples/PaymentRequired"
                  }
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized"
          },
          "403": {
            "description": "Forbidden"
          }
        },
        "security": [
          {
            "API-Key": [ ]
          }
        ],
        "x-codeSamples": [
          {
            "lang": "csharp",
            "label": "MonoCloud .NET SDK",
            "source": "using MonoCloud.Management;\nusing MonoCloud.Management.Models;\nusing MonoCloud.Management.Core.Base;\n\nvar apiClient = new MonoCloudManagementClient(new MonoCloudConfig(\"<your-domain>\", \"[[API-Key]]\"));\n\n\nvar requestBody = new CreateGroupRequest\n  {\n    Name = \"Administrators\",\n    Description = \"The administrator group\",\n    IsAutoAssigned = false,\n  };\n\n\nvar result = await apiClient.Groups.CreateGroupAsync(requestBody);"
          },
          {
            "lang": "javascript",
            "label": "MonoCloud Javascript SDK",
            "source": "import { MonoCloudManagementClient } from '@monocloud/management';\n\nconst apiClient = MonoCloudManagementClient.init({ domain: '<your-domain>', apiKey: '[[API-Key]]' });\n\nconst requestBody = {\n  name: 'Administrators',\n  description: 'The administrator group',\n  is_auto_assigned: false\n};\n\nconst result = apiClient.groups.createGroup(requestBody);"
          }
        ]
      }
    },
    "/groups/{group_id}": {
      "get": {
        "tags": [
          "Groups"
        ],
        "summary": "Retrieve a group",
        "description": "Retrieves detailed information for the specified group.",
        "operationId": "FindGroupById",
        "parameters": [
          {
            "name": "group_id",
            "in": "path",
            "description": "The unique identifier of the group.",
            "required": true,
            "schema": {
              "type": "string",
              "format": "uuid"
            },
            "example": "888ac2a4-b6b0-45c4-9920-93c0bc9b2c39"
          }
        ],
        "responses": {
          "200": {
            "description": "The group was retrieved successfully",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Group"
                }
              }
            }
          },
          "422": {
            "description": "Unprocessable Entity",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/KeyValidationProblemDetails"
                },
                "examples": {
                  "KeyValidationError": {
                    "$ref": "#/components/examples/KeyValidationError"
                  }
                }
              }
            }
          },
          "404": {
            "description": "Not Found",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                },
                "examples": {
                  "NotFound": {
                    "$ref": "#/components/examples/NotFound"
                  }
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized"
          },
          "403": {
            "description": "Forbidden"
          }
        },
        "security": [
          {
            "API-Key": [ ]
          }
        ],
        "x-codeSamples": [
          {
            "lang": "csharp",
            "label": "MonoCloud .NET SDK",
            "source": "using MonoCloud.Management;\nusing MonoCloud.Management.Core.Base;\n\nvar apiClient = new MonoCloudManagementClient(new MonoCloudConfig(\"<your-domain>\", \"[[API-Key]]\"));\n\n\nvar groupId = Guid.Parse(\"888ac2a4-b6b0-45c4-9920-93c0bc9b2c39\");\n\n\nvar result = await apiClient.Groups.FindGroupByIdAsync(groupId);"
          },
          {
            "lang": "javascript",
            "label": "MonoCloud Javascript SDK",
            "source": "import { MonoCloudManagementClient } from '@monocloud/management';\n\nconst apiClient = MonoCloudManagementClient.init({ domain: '<your-domain>', apiKey: '[[API-Key]]' });\n\nconst groupId = '888ac2a4-b6b0-45c4-9920-93c0bc9b2c39';\n\nconst result = apiClient.groups.findGroupById(groupId);"
          }
        ]
      },
      "patch": {
        "tags": [
          "Groups"
        ],
        "summary": "Update a group",
        "description": "Applies a partial update to the specified group. Only fields provided in the request are updated; all other fields remain unchanged.",
        "operationId": "PatchGroup",
        "parameters": [
          {
            "name": "group_id",
            "in": "path",
            "description": "The unique identifier of the group.",
            "required": true,
            "schema": {
              "type": "string",
              "format": "uuid"
            },
            "example": "888ac2a4-b6b0-45c4-9920-93c0bc9b2c39"
          }
        ],
        "requestBody": {
          "description": "The request payload used to update a group.",
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/PatchGroupRequest"
              }
            }
          },
          "required": true
        },
        "responses": {
          "200": {
            "description": "The group was updated successfully",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Group"
                }
              }
            }
          },
          "400": {
            "description": "Bad Request",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                },
                "examples": {
                  "BadRequest": {
                    "$ref": "#/components/examples/BadRequest"
                  }
                }
              }
            }
          },
          "422": {
            "description": "Unprocessable Entity",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/IValidationProblemDetails"
                },
                "examples": {
                  "KeyValidationError": {
                    "$ref": "#/components/examples/KeyValidationError"
                  },
                  "IdentityValidationError": {
                    "$ref": "#/components/examples/IdentityValidationError"
                  }
                }
              }
            }
          },
          "404": {
            "description": "Not Found",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                },
                "examples": {
                  "NotFound": {
                    "$ref": "#/components/examples/NotFound"
                  }
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized"
          },
          "403": {
            "description": "Forbidden"
          }
        },
        "security": [
          {
            "API-Key": [ ]
          }
        ],
        "x-codeSamples": [
          {
            "lang": "csharp",
            "label": "MonoCloud .NET SDK",
            "source": "using MonoCloud.Management;\nusing MonoCloud.Management.Models;\nusing MonoCloud.Management.Core.Base;\n\nvar apiClient = new MonoCloudManagementClient(new MonoCloudConfig(\"<your-domain>\", \"[[API-Key]]\"));\n\n\nvar groupId = Guid.Parse(\"888ac2a4-b6b0-45c4-9920-93c0bc9b2c39\");\n\nvar requestBody = new PatchGroupRequest\n  {\n    Name = \"Administrators\",\n    Description = \"The administrator group\",\n    IsAutoAssigned = false,\n  };\n\n\nvar result = await apiClient.Groups.PatchGroupAsync(groupId, requestBody);"
          },
          {
            "lang": "javascript",
            "label": "MonoCloud Javascript SDK",
            "source": "import { MonoCloudManagementClient } from '@monocloud/management';\n\nconst apiClient = MonoCloudManagementClient.init({ domain: '<your-domain>', apiKey: '[[API-Key]]' });\n\nconst groupId = '888ac2a4-b6b0-45c4-9920-93c0bc9b2c39';\n\nconst requestBody = {\n  name: 'Administrators',\n  description: 'The administrator group',\n  is_auto_assigned: false\n};\n\nconst result = apiClient.groups.patchGroup(groupId, requestBody);"
          }
        ]
      },
      "delete": {
        "tags": [
          "Groups"
        ],
        "summary": "Delete a group",
        "description": "Permanently removes the specified group. Users who are members of this group will no longer be associated with it after deletion.\n>[!warning]\n> This operation is irreversible.",
        "operationId": "DeleteGroup",
        "parameters": [
          {
            "name": "group_id",
            "in": "path",
            "description": "The unique identifier of the group.",
            "required": true,
            "schema": {
              "type": "string",
              "format": "uuid"
            },
            "example": "888ac2a4-b6b0-45c4-9920-93c0bc9b2c39"
          }
        ],
        "responses": {
          "204": {
            "description": "The group was deleted successfully"
          },
          "422": {
            "description": "Unprocessable Entity",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/IValidationProblemDetails"
                },
                "examples": {
                  "KeyValidationError": {
                    "$ref": "#/components/examples/KeyValidationError"
                  },
                  "IdentityValidationError": {
                    "$ref": "#/components/examples/IdentityValidationError"
                  }
                }
              }
            }
          },
          "404": {
            "description": "Not Found",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                },
                "examples": {
                  "NotFound": {
                    "$ref": "#/components/examples/NotFound"
                  }
                }
              }
            }
          },
          "403": {
            "description": "Forbidden",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                },
                "examples": {
                  "Forbidden": {
                    "$ref": "#/components/examples/Forbidden"
                  }
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized"
          }
        },
        "security": [
          {
            "API-Key": [ ]
          }
        ],
        "x-codeSamples": [
          {
            "lang": "csharp",
            "label": "MonoCloud .NET SDK",
            "source": "using MonoCloud.Management;\nusing MonoCloud.Management.Core.Base;\n\nvar apiClient = new MonoCloudManagementClient(new MonoCloudConfig(\"<your-domain>\", \"[[API-Key]]\"));\n\n\nvar groupId = Guid.Parse(\"888ac2a4-b6b0-45c4-9920-93c0bc9b2c39\");\n\n\nvar result = await apiClient.Groups.DeleteGroupAsync(groupId);"
          },
          {
            "lang": "javascript",
            "label": "MonoCloud Javascript SDK",
            "source": "import { MonoCloudManagementClient } from '@monocloud/management';\n\nconst apiClient = MonoCloudManagementClient.init({ domain: '<your-domain>', apiKey: '[[API-Key]]' });\n\nconst groupId = '888ac2a4-b6b0-45c4-9920-93c0bc9b2c39';\n\nconst result = apiClient.groups.deleteGroup(groupId);"
          }
        ]
      }
    },
    "/truststores/pki": {
      "get": {
        "tags": [
          "Trust Stores"
        ],
        "summary": "List PKI trust stores",
        "description": "Retrieves a paginated list of PKI trust stores. Optional query parameters allow sorting of the results.",
        "operationId": "GetAllPkiTrustStores",
        "parameters": [
          {
            "name": "page",
            "in": "query",
            "description": "The page number to retrieve.",
            "schema": {
              "minimum": 1,
              "type": "integer",
              "format": "int32",
              "default": 1
            },
            "example": 1
          },
          {
            "name": "size",
            "in": "query",
            "description": "The number of trust stores to return per page.",
            "schema": {
              "maximum": 50,
              "minimum": 1,
              "type": "integer",
              "format": "int32",
              "default": 10
            },
            "example": 10
          },
          {
            "name": "sort",
            "in": "query",
            "description": "Sort expression in the format `field:direction`, where direction is `1` for ascending or `-1` for descending. Supported fields include - `name`, `creation_time` and `last_updated`",
            "schema": {
              "type": "string"
            },
            "example": "name:1"
          }
        ],
        "responses": {
          "200": {
            "description": "The trust stores were retrieved successfully",
            "headers": {
              "x-Pagination": {
                "description": "Returns the x-Pagination header",
                "schema": {
                  "$ref": "#/components/schemas/PaginationHeader"
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "type": "array",
                  "items": {
                    "$ref": "#/components/schemas/PkiTrustStoreSummary"
                  }
                }
              }
            }
          },
          "404": {
            "description": "Not Found",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                },
                "examples": {
                  "NotFound": {
                    "$ref": "#/components/examples/NotFound"
                  }
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized"
          },
          "403": {
            "description": "Forbidden"
          }
        },
        "security": [
          {
            "API-Key": [ ]
          }
        ],
        "x-codeSamples": [
          {
            "lang": "csharp",
            "label": "MonoCloud .NET SDK",
            "source": "using MonoCloud.Management;\nusing MonoCloud.Management.Core.Base;\n\nvar apiClient = new MonoCloudManagementClient(new MonoCloudConfig(\"<your-domain>\", \"[[API-Key]]\"));\n\n\nvar page = 1;\n\nvar size = 10;\n\nvar sort = \"name:1\";\n\n\nvar result = await apiClient.TrustStores.GetAllPkiTrustStoresAsync(page, size, sort);"
          },
          {
            "lang": "javascript",
            "label": "MonoCloud Javascript SDK",
            "source": "import { MonoCloudManagementClient } from '@monocloud/management';\n\nconst apiClient = MonoCloudManagementClient.init({ domain: '<your-domain>', apiKey: '[[API-Key]]' });\n\nconst page = 1;\n\nconst size = 10;\n\nconst sort = 'name:1';\n\nconst result = apiClient.trustStores.getAllPkiTrustStores(page, size, sort);"
          }
        ]
      },
      "post": {
        "tags": [
          "Trust Stores"
        ],
        "summary": "Create a PKI trust store",
        "description": "Creates a new PKI trust store used to manage trusted certificate authorities and certificate validation settings for mTLS authentication.",
        "operationId": "CreatePkiTrustStore",
        "requestBody": {
          "description": "The request payload used to create a trust store.",
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/CreatePkiTrustStoreRequest"
              }
            }
          },
          "required": true
        },
        "responses": {
          "201": {
            "description": "The trust store was created successfully",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/PkiTrustStore"
                }
              }
            }
          },
          "400": {
            "description": "Bad Request",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                },
                "examples": {
                  "BadRequest": {
                    "$ref": "#/components/examples/BadRequest"
                  }
                }
              }
            }
          },
          "402": {
            "description": "Payment Required",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                },
                "examples": {
                  "PaymentRequired": {
                    "$ref": "#/components/examples/PaymentRequired"
                  }
                }
              }
            }
          },
          "422": {
            "description": "Unprocessable Entity",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/KeyValidationProblemDetails"
                },
                "examples": {
                  "KeyValidationError": {
                    "$ref": "#/components/examples/KeyValidationError"
                  }
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized"
          },
          "403": {
            "description": "Forbidden"
          }
        },
        "security": [
          {
            "API-Key": [ ]
          }
        ],
        "x-codeSamples": [
          {
            "lang": "csharp",
            "label": "MonoCloud .NET SDK",
            "source": "using MonoCloud.Management;\nusing MonoCloud.Management.Models;\nusing MonoCloud.Management.Core.Base;\n\nvar apiClient = new MonoCloudManagementClient(new MonoCloudConfig(\"<your-domain>\", \"[[API-Key]]\"));\n\n\nvar requestBody = new CreatePkiTrustStoreRequest\n  {\n    Name = \"IoT Devices\",\n    ShowInDiscoveryDocument = true,\n    Options = new CreatePkiTrustStoreOptionsRequest\n    {\n      ValidateCertificateUse = true,\n      ValidateValidityPeriod = true,\n      RevocationMode = X509RevocationMode.Offline,\n      RevocationCheckDepth = RevocationCheckDepth.EndCertificateOnly,\n      RevocationCheckClockSkew = 300,\n      OcspCheckTimeout = 10,\n      OnlineCrlCheckTimeout = 10,\n      CertificateAuthCacheDuration = 300,\n      OcspCacheDuration = 1800,\n      OnlineCrlCacheDuration = 1800,\n    },\n    CertChain = \"-----BEGIN CERTIFICATE-----certificate_value_1-----END CERTIFICATE-----\\n-----BEGIN CERTIFICATE-----certificate_value_2-----END CERTIFICATE-----\",\n  };\n\n\nvar result = await apiClient.TrustStores.CreatePkiTrustStoreAsync(requestBody);"
          },
          {
            "lang": "javascript",
            "label": "MonoCloud Javascript SDK",
            "source": "import { MonoCloudManagementClient } from '@monocloud/management';\n\nconst apiClient = MonoCloudManagementClient.init({ domain: '<your-domain>', apiKey: '[[API-Key]]' });\n\nconst requestBody = {\n  name: 'IoT Devices',\n  show_in_discovery_document: true,\n  options: {\n    validate_certificate_use: true,\n    validate_validity_period: true,\n    revocation_mode: 'offline',\n    revocation_check_depth: 'end_certificate_only',\n    revocation_check_clock_skew: 300,\n    ocsp_check_timeout: 10,\n    online_crl_check_timeout: 10,\n    certificate_auth_cache_duration: 300,\n    ocsp_cache_duration: 1800,\n    online_crl_cache_duration: 1800\n  },\n  cert_chain: '-----BEGIN CERTIFICATE-----certificate_value_1-----END CERTIFICATE-----\\n-----BEGIN CERTIFICATE-----certificate_value_2-----END CERTIFICATE-----'\n};\n\nconst result = apiClient.trustStores.createPkiTrustStore(requestBody);"
          }
        ]
      }
    },
    "/truststores/pki/{trust_store_id}": {
      "get": {
        "tags": [
          "Trust Stores"
        ],
        "summary": "Retrieve a PKI trust store",
        "description": "Retrieves detailed information for the specified PKI trust store.",
        "operationId": "FindPkiTrustStoreById",
        "parameters": [
          {
            "name": "trust_store_id",
            "in": "path",
            "description": "The unique identifier of the trust store.",
            "required": true,
            "schema": {
              "type": "string"
            },
            "example": "9qVBxPQiZqtUsBOykavK6"
          }
        ],
        "responses": {
          "200": {
            "description": "The trust store was retrieved successfully",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/PkiTrustStore"
                }
              }
            }
          },
          "400": {
            "description": "Bad Request",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                },
                "examples": {
                  "BadRequest": {
                    "$ref": "#/components/examples/BadRequest"
                  }
                }
              }
            }
          },
          "404": {
            "description": "Not Found",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                },
                "examples": {
                  "NotFound": {
                    "$ref": "#/components/examples/NotFound"
                  }
                }
              }
            }
          },
          "422": {
            "description": "Unprocessable Entity",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/KeyValidationProblemDetails"
                },
                "examples": {
                  "KeyValidationError": {
                    "$ref": "#/components/examples/KeyValidationError"
                  }
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized"
          },
          "403": {
            "description": "Forbidden"
          }
        },
        "security": [
          {
            "API-Key": [ ]
          }
        ],
        "x-codeSamples": [
          {
            "lang": "csharp",
            "label": "MonoCloud .NET SDK",
            "source": "using MonoCloud.Management;\nusing MonoCloud.Management.Core.Base;\n\nvar apiClient = new MonoCloudManagementClient(new MonoCloudConfig(\"<your-domain>\", \"[[API-Key]]\"));\n\n\nvar trustStoreId = \"9qVBxPQiZqtUsBOykavK6\";\n\n\nvar result = await apiClient.TrustStores.FindPkiTrustStoreByIdAsync(trustStoreId);"
          },
          {
            "lang": "javascript",
            "label": "MonoCloud Javascript SDK",
            "source": "import { MonoCloudManagementClient } from '@monocloud/management';\n\nconst apiClient = MonoCloudManagementClient.init({ domain: '<your-domain>', apiKey: '[[API-Key]]' });\n\nconst trustStoreId = '9qVBxPQiZqtUsBOykavK6';\n\nconst result = apiClient.trustStores.findPkiTrustStoreById(trustStoreId);"
          }
        ]
      },
      "patch": {
        "tags": [
          "Trust Stores"
        ],
        "summary": "Update a PKI trust store",
        "description": "Applies a partial update to the specified PKI trust store. Only fields included in the request are updated.",
        "operationId": "PatchPkiTrustStore",
        "parameters": [
          {
            "name": "trust_store_id",
            "in": "path",
            "description": "The unique identifier of the trust store.",
            "required": true,
            "schema": {
              "type": "string"
            },
            "example": "9qVBxPQiZqtUsBOykavK6"
          }
        ],
        "requestBody": {
          "description": "The request payload used to update a trust store.",
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/PatchPkiTrustStoreRequest"
              }
            }
          },
          "required": true
        },
        "responses": {
          "200": {
            "description": "The trust store was updated successfully",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/PkiTrustStore"
                }
              }
            }
          },
          "400": {
            "description": "Bad Request",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                },
                "examples": {
                  "BadRequest": {
                    "$ref": "#/components/examples/BadRequest"
                  }
                }
              }
            }
          },
          "404": {
            "description": "Not Found",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                },
                "examples": {
                  "NotFound": {
                    "$ref": "#/components/examples/NotFound"
                  }
                }
              }
            }
          },
          "402": {
            "description": "Payment Required",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                },
                "examples": {
                  "PaymentRequired": {
                    "$ref": "#/components/examples/PaymentRequired"
                  }
                }
              }
            }
          },
          "422": {
            "description": "Unprocessable Entity",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/KeyValidationProblemDetails"
                },
                "examples": {
                  "KeyValidationError": {
                    "$ref": "#/components/examples/KeyValidationError"
                  }
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized"
          },
          "403": {
            "description": "Forbidden"
          }
        },
        "security": [
          {
            "API-Key": [ ]
          }
        ],
        "x-codeSamples": [
          {
            "lang": "csharp",
            "label": "MonoCloud .NET SDK",
            "source": "using MonoCloud.Management;\nusing MonoCloud.Management.Models;\nusing MonoCloud.Management.Core.Base;\n\nvar apiClient = new MonoCloudManagementClient(new MonoCloudConfig(\"<your-domain>\", \"[[API-Key]]\"));\n\n\nvar trustStoreId = \"9qVBxPQiZqtUsBOykavK6\";\n\nvar requestBody = new PatchPkiTrustStoreRequest\n  {\n    Name = \"IoT Devices\",\n    Enabled = true,\n    ShowInDiscoveryDocument = true,\n    CertChain = \"-----BEGIN CERTIFICATE-----certificate_value_1-----END CERTIFICATE-----\\n-----BEGIN CERTIFICATE-----certificate_value_2-----END CERTIFICATE-----\",\n    Options = new PatchPkiTrustStoreOptionsRequest\n    {\n      ValidateCertificateUse = true,\n      ValidateValidityPeriod = true,\n      RevocationMode = X509RevocationMode.Offline,\n      RevocationCheckDepth = RevocationCheckDepth.EndCertificateOnly,\n      RevocationCheckClockSkew = 300,\n      OcspCheckTimeout = 10,\n      OnlineCrlCheckTimeout = 10,\n      CertificateAuthCacheDuration = 300,\n      OcspCacheDuration = 1800,\n      OnlineCrlCacheDuration = 1800,\n    },\n  };\n\n\nvar result = await apiClient.TrustStores.PatchPkiTrustStoreAsync(trustStoreId, requestBody);"
          },
          {
            "lang": "javascript",
            "label": "MonoCloud Javascript SDK",
            "source": "import { MonoCloudManagementClient } from '@monocloud/management';\n\nconst apiClient = MonoCloudManagementClient.init({ domain: '<your-domain>', apiKey: '[[API-Key]]' });\n\nconst trustStoreId = '9qVBxPQiZqtUsBOykavK6';\n\nconst requestBody = {\n  name: 'IoT Devices',\n  enabled: true,\n  show_in_discovery_document: true,\n  cert_chain: '-----BEGIN CERTIFICATE-----certificate_value_1-----END CERTIFICATE-----\\n-----BEGIN CERTIFICATE-----certificate_value_2-----END CERTIFICATE-----',\n  options: {\n    validate_certificate_use: true,\n    validate_validity_period: true,\n    revocation_mode: 'offline',\n    revocation_check_depth: 'end_certificate_only',\n    revocation_check_clock_skew: 300,\n    ocsp_check_timeout: 10,\n    online_crl_check_timeout: 10,\n    certificate_auth_cache_duration: 300,\n    ocsp_cache_duration: 1800,\n    online_crl_cache_duration: 1800\n  }\n};\n\nconst result = apiClient.trustStores.patchPkiTrustStore(trustStoreId, requestBody);"
          }
        ]
      },
      "delete": {
        "tags": [
          "Trust Stores"
        ],
        "summary": "Delete a PKI trust store",
        "description": "Permanently deletes the specified PKI trust store.\n>[!warning]\n> This operation is irreversible. Any client applications relying on this trust store for mTLS authentication will immediately fail certificate validation.",
        "operationId": "DeletePkiTrustStore",
        "parameters": [
          {
            "name": "trust_store_id",
            "in": "path",
            "description": "The unique identifier of the trust store.",
            "required": true,
            "schema": {
              "type": "string"
            },
            "example": "9qVBxPQiZqtUsBOykavK6"
          }
        ],
        "responses": {
          "204": {
            "description": "The trust store was deleted successfully"
          },
          "404": {
            "description": "Not Found",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                },
                "examples": {
                  "NotFound": {
                    "$ref": "#/components/examples/NotFound"
                  }
                }
              }
            }
          },
          "422": {
            "description": "Unprocessable Entity",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/KeyValidationProblemDetails"
                },
                "examples": {
                  "KeyValidationError": {
                    "$ref": "#/components/examples/KeyValidationError"
                  }
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized"
          },
          "403": {
            "description": "Forbidden"
          }
        },
        "security": [
          {
            "API-Key": [ ]
          }
        ],
        "x-codeSamples": [
          {
            "lang": "csharp",
            "label": "MonoCloud .NET SDK",
            "source": "using MonoCloud.Management;\nusing MonoCloud.Management.Core.Base;\n\nvar apiClient = new MonoCloudManagementClient(new MonoCloudConfig(\"<your-domain>\", \"[[API-Key]]\"));\n\n\nvar trustStoreId = \"9qVBxPQiZqtUsBOykavK6\";\n\n\nvar result = await apiClient.TrustStores.DeletePkiTrustStoreAsync(trustStoreId);"
          },
          {
            "lang": "javascript",
            "label": "MonoCloud Javascript SDK",
            "source": "import { MonoCloudManagementClient } from '@monocloud/management';\n\nconst apiClient = MonoCloudManagementClient.init({ domain: '<your-domain>', apiKey: '[[API-Key]]' });\n\nconst trustStoreId = '9qVBxPQiZqtUsBOykavK6';\n\nconst result = apiClient.trustStores.deletePkiTrustStore(trustStoreId);"
          }
        ]
      }
    },
    "/truststores/pki/{trust_store_id}/default": {
      "post": {
        "tags": [
          "Trust Stores"
        ],
        "summary": "Set a PKI trust store as the default",
        "description": "Marks the specified trust store as the default for mTLS authentication. This default is used when no explicit trust store is selected for an mTLS endpoint.",
        "operationId": "SetPkiTrustStoreDefault",
        "parameters": [
          {
            "name": "trust_store_id",
            "in": "path",
            "description": "The unique identifier of the trust store.",
            "required": true,
            "schema": {
              "type": "string"
            },
            "example": "9qVBxPQiZqtUsBOykavK6"
          }
        ],
        "responses": {
          "200": {
            "description": "The trust store was set as the default successfully",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/PkiTrustStore"
                }
              }
            }
          },
          "404": {
            "description": "Not Found",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                },
                "examples": {
                  "NotFound": {
                    "$ref": "#/components/examples/NotFound"
                  }
                }
              }
            }
          },
          "402": {
            "description": "Payment Required",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                },
                "examples": {
                  "PaymentRequired": {
                    "$ref": "#/components/examples/PaymentRequired"
                  }
                }
              }
            }
          },
          "422": {
            "description": "Unprocessable Entity",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/KeyValidationProblemDetails"
                },
                "examples": {
                  "KeyValidationError": {
                    "$ref": "#/components/examples/KeyValidationError"
                  }
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized"
          },
          "403": {
            "description": "Forbidden"
          }
        },
        "security": [
          {
            "API-Key": [ ]
          }
        ],
        "x-codeSamples": [
          {
            "lang": "csharp",
            "label": "MonoCloud .NET SDK",
            "source": "using MonoCloud.Management;\nusing MonoCloud.Management.Core.Base;\n\nvar apiClient = new MonoCloudManagementClient(new MonoCloudConfig(\"<your-domain>\", \"[[API-Key]]\"));\n\n\nvar trustStoreId = \"9qVBxPQiZqtUsBOykavK6\";\n\n\nvar result = await apiClient.TrustStores.SetPkiTrustStoreDefaultAsync(trustStoreId);"
          },
          {
            "lang": "javascript",
            "label": "MonoCloud Javascript SDK",
            "source": "import { MonoCloudManagementClient } from '@monocloud/management';\n\nconst apiClient = MonoCloudManagementClient.init({ domain: '<your-domain>', apiKey: '[[API-Key]]' });\n\nconst trustStoreId = '9qVBxPQiZqtUsBOykavK6';\n\nconst result = apiClient.trustStores.setPkiTrustStoreDefault(trustStoreId);"
          }
        ]
      }
    },
    "/truststores/pki/{trust_store_id}/revocations": {
      "get": {
        "tags": [
          "Trust Stores"
        ],
        "summary": "List certificate revocations",
        "description": "Retrieves a paginated list of certificate revocations (offline CRLs) configured for the specified trust store. Optional query parameters allow sorting of the results.",
        "operationId": "GetAllRevocations",
        "parameters": [
          {
            "name": "trust_store_id",
            "in": "path",
            "description": "The unique identifier of the trust store.",
            "required": true,
            "schema": {
              "type": "string"
            },
            "example": "9qVBxPQiZqtUsBOykavK6"
          },
          {
            "name": "page",
            "in": "query",
            "description": "The page number to retrieve.",
            "schema": {
              "minimum": 1,
              "type": "integer",
              "format": "int32",
              "default": 1
            },
            "example": 1
          },
          {
            "name": "size",
            "in": "query",
            "description": "The number of revocations to return per page.",
            "schema": {
              "maximum": 50,
              "minimum": 1,
              "type": "integer",
              "format": "int32",
              "default": 10
            },
            "example": 10
          },
          {
            "name": "sort",
            "in": "query",
            "description": "Sort expression in the format `field:direction`, where direction is `1` for ascending or `-1` for descending. Supported fields include - `creation_time` and `issued_at`",
            "schema": {
              "type": "string"
            },
            "example": "creation_time:1"
          }
        ],
        "responses": {
          "200": {
            "description": "The certificate revocations were retrieved successfully",
            "headers": {
              "x-Pagination": {
                "description": "Returns the x-Pagination header",
                "schema": {
                  "$ref": "#/components/schemas/PaginationHeader"
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "type": "array",
                  "items": {
                    "$ref": "#/components/schemas/RevocationGrouped"
                  }
                }
              }
            }
          },
          "400": {
            "description": "Bad Request",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                },
                "examples": {
                  "BadRequest": {
                    "$ref": "#/components/examples/BadRequest"
                  }
                }
              }
            }
          },
          "404": {
            "description": "Not Found",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                },
                "examples": {
                  "NotFound": {
                    "$ref": "#/components/examples/NotFound"
                  }
                }
              }
            }
          },
          "422": {
            "description": "Unprocessable Entity",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/KeyValidationProblemDetails"
                },
                "examples": {
                  "KeyValidationError": {
                    "$ref": "#/components/examples/KeyValidationError"
                  }
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized"
          },
          "403": {
            "description": "Forbidden"
          }
        },
        "security": [
          {
            "API-Key": [ ]
          }
        ],
        "x-codeSamples": [
          {
            "lang": "csharp",
            "label": "MonoCloud .NET SDK",
            "source": "using MonoCloud.Management;\nusing MonoCloud.Management.Core.Base;\n\nvar apiClient = new MonoCloudManagementClient(new MonoCloudConfig(\"<your-domain>\", \"[[API-Key]]\"));\n\n\nvar trustStoreId = \"9qVBxPQiZqtUsBOykavK6\";\n\nvar page = 1;\n\nvar size = 10;\n\nvar sort = \"creation_time:1\";\n\n\nvar result = await apiClient.TrustStores.GetAllRevocationsAsync(trustStoreId, page, size, sort);"
          },
          {
            "lang": "javascript",
            "label": "MonoCloud Javascript SDK",
            "source": "import { MonoCloudManagementClient } from '@monocloud/management';\n\nconst apiClient = MonoCloudManagementClient.init({ domain: '<your-domain>', apiKey: '[[API-Key]]' });\n\nconst trustStoreId = '9qVBxPQiZqtUsBOykavK6';\n\nconst page = 1;\n\nconst size = 10;\n\nconst sort = 'creation_time:1';\n\nconst result = apiClient.trustStores.getAllRevocations(trustStoreId, page, size, sort);"
          }
        ]
      },
      "post": {
        "tags": [
          "Trust Stores"
        ],
        "summary": "Create a certificate revocation",
        "description": "Uploads and registers an offline Certificate Revocation List (CRL) for the specified trust store. The CRL is used for offline revocation checking when the trust store is configured with `RevocationMode` set to `Offline`.",
        "operationId": "AddCertificateRevocation",
        "parameters": [
          {
            "name": "trust_store_id",
            "in": "path",
            "description": "The unique identifier of the trust store.",
            "required": true,
            "schema": {
              "type": "string"
            },
            "example": "9qVBxPQiZqtUsBOykavK6"
          }
        ],
        "requestBody": {
          "description": "The request payload defining the certificate revocation list (CRL) to add to the trust store.",
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/AddCertificateRevocationRequest"
              }
            }
          },
          "required": true
        },
        "responses": {
          "201": {
            "description": "The certificate revocation list was added successfully",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ICertificateRevocation"
                },
                "examples": {
                  "base": {
                    "summary": "BaseCertificateRevocation",
                    "value": {
                      "id": "OjuVWCeAVnb5jjMF8GC6s",
                      "value": "-----BEGIN X509 CRL-----certificate_revocation_value-----END X509 CRL-----",
                      "issuer_thumbprint": "F1FB4FD68F15DAA29A0B935B2759986A92898030F1FB4FD68F15DAA29A0B935B",
                      "issued_at": 1640955670,
                      "next_update": 1641025178,
                      "creation_time": 1640975400,
                      "crl_number": 80,
                      "type": "base"
                    }
                  },
                  "delta": {
                    "summary": "DeltaCertificateRevocation",
                    "value": {
                      "id": "Rjc0QmiHaVdNLAFYhV025",
                      "value": "-----BEGIN X509 CRL-----certificate_revocation_value-----END X509 CRL-----",
                      "issuer_thumbprint": "F1FB4FD68F15DAA29A0B935B2759986A92898030F1FB4FD68F15DAA29A0B935B",
                      "issued_at": 1640955670,
                      "next_update": 1641025178,
                      "creation_time": 1640975400,
                      "crl_number": 124,
                      "delta_crl_number": 80,
                      "base_revocation_id": "OjuVWCeAVnb5jjMF8GC6s",
                      "type": "delta"
                    }
                  }
                }
              }
            }
          },
          "400": {
            "description": "Bad Request",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                },
                "examples": {
                  "BadRequest": {
                    "$ref": "#/components/examples/BadRequest"
                  }
                }
              }
            }
          },
          "402": {
            "description": "Payment Required",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                },
                "examples": {
                  "PaymentRequired": {
                    "$ref": "#/components/examples/PaymentRequired"
                  }
                }
              }
            }
          },
          "422": {
            "description": "Unprocessable Entity",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/KeyValidationProblemDetails"
                },
                "examples": {
                  "KeyValidationError": {
                    "$ref": "#/components/examples/KeyValidationError"
                  }
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized"
          },
          "403": {
            "description": "Forbidden"
          }
        },
        "security": [
          {
            "API-Key": [ ]
          }
        ],
        "x-codeSamples": [
          {
            "lang": "csharp",
            "label": "MonoCloud .NET SDK",
            "source": "using MonoCloud.Management;\nusing MonoCloud.Management.Models;\nusing MonoCloud.Management.Core.Base;\n\nvar apiClient = new MonoCloudManagementClient(new MonoCloudConfig(\"<your-domain>\", \"[[API-Key]]\"));\n\n\nvar trustStoreId = \"9qVBxPQiZqtUsBOykavK6\";\n\nvar requestBody = new AddCertificateRevocationRequest\n  {\n    Value = \"-----BEGIN X509 CRL-----certificate_revocation_value-----END X509 CRL-----\",\n  };\n\n\nvar result = await apiClient.TrustStores.AddCertificateRevocationAsync(trustStoreId, requestBody);"
          },
          {
            "lang": "javascript",
            "label": "MonoCloud Javascript SDK",
            "source": "import { MonoCloudManagementClient } from '@monocloud/management';\n\nconst apiClient = MonoCloudManagementClient.init({ domain: '<your-domain>', apiKey: '[[API-Key]]' });\n\nconst trustStoreId = '9qVBxPQiZqtUsBOykavK6';\n\nconst requestBody = {\n  value: '-----BEGIN X509 CRL-----certificate_revocation_value-----END X509 CRL-----'\n};\n\nconst result = apiClient.trustStores.addCertificateRevocation(trustStoreId, requestBody);"
          }
        ]
      }
    },
    "/truststores/pki/{trust_store_id}/revocations/{revocation_id}": {
      "get": {
        "tags": [
          "Trust Stores"
        ],
        "summary": "Retrieve a certificate revocation",
        "description": "Retrieves detailed information for the specified certificate revocation (CRL) within the trust store.",
        "operationId": "FindCertificateRevocation",
        "parameters": [
          {
            "name": "trust_store_id",
            "in": "path",
            "description": "The unique identifier of the trust store.",
            "required": true,
            "schema": {
              "type": "string"
            },
            "example": "9qVBxPQiZqtUsBOykavK6"
          },
          {
            "name": "revocation_id",
            "in": "path",
            "description": "The unique identifier of the certificate revocation.",
            "required": true,
            "schema": {
              "type": "string"
            },
            "example": "ua79xIQTsc8eX8tNYPFOm"
          }
        ],
        "responses": {
          "200": {
            "description": "The certificate revocation was retrieved successfully",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ICertificateRevocation"
                },
                "examples": {
                  "base": {
                    "summary": "BaseCertificateRevocation",
                    "value": {
                      "id": "OjuVWCeAVnb5jjMF8GC6s",
                      "value": "-----BEGIN X509 CRL-----certificate_revocation_value-----END X509 CRL-----",
                      "issuer_thumbprint": "F1FB4FD68F15DAA29A0B935B2759986A92898030F1FB4FD68F15DAA29A0B935B",
                      "issued_at": 1640955670,
                      "next_update": 1641025178,
                      "creation_time": 1640975400,
                      "crl_number": 80,
                      "type": "base"
                    }
                  },
                  "delta": {
                    "summary": "DeltaCertificateRevocation",
                    "value": {
                      "id": "Rjc0QmiHaVdNLAFYhV025",
                      "value": "-----BEGIN X509 CRL-----certificate_revocation_value-----END X509 CRL-----",
                      "issuer_thumbprint": "F1FB4FD68F15DAA29A0B935B2759986A92898030F1FB4FD68F15DAA29A0B935B",
                      "issued_at": 1640955670,
                      "next_update": 1641025178,
                      "creation_time": 1640975400,
                      "crl_number": 124,
                      "delta_crl_number": 80,
                      "base_revocation_id": "OjuVWCeAVnb5jjMF8GC6s",
                      "type": "delta"
                    }
                  }
                }
              }
            }
          },
          "404": {
            "description": "Not Found",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                },
                "examples": {
                  "NotFound": {
                    "$ref": "#/components/examples/NotFound"
                  }
                }
              }
            }
          },
          "422": {
            "description": "Unprocessable Entity",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/KeyValidationProblemDetails"
                },
                "examples": {
                  "KeyValidationError": {
                    "$ref": "#/components/examples/KeyValidationError"
                  }
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized"
          },
          "403": {
            "description": "Forbidden"
          }
        },
        "security": [
          {
            "API-Key": [ ]
          }
        ],
        "x-codeSamples": [
          {
            "lang": "csharp",
            "label": "MonoCloud .NET SDK",
            "source": "using MonoCloud.Management;\nusing MonoCloud.Management.Core.Base;\n\nvar apiClient = new MonoCloudManagementClient(new MonoCloudConfig(\"<your-domain>\", \"[[API-Key]]\"));\n\n\nvar trustStoreId = \"9qVBxPQiZqtUsBOykavK6\";\n\nvar revocationId = \"ua79xIQTsc8eX8tNYPFOm\";\n\n\nvar result = await apiClient.TrustStores.FindCertificateRevocationAsync(trustStoreId, revocationId);"
          },
          {
            "lang": "javascript",
            "label": "MonoCloud Javascript SDK",
            "source": "import { MonoCloudManagementClient } from '@monocloud/management';\n\nconst apiClient = MonoCloudManagementClient.init({ domain: '<your-domain>', apiKey: '[[API-Key]]' });\n\nconst trustStoreId = '9qVBxPQiZqtUsBOykavK6';\n\nconst revocationId = 'ua79xIQTsc8eX8tNYPFOm';\n\nconst result = apiClient.trustStores.findCertificateRevocation(trustStoreId, revocationId);"
          }
        ]
      },
      "delete": {
        "tags": [
          "Trust Stores"
        ],
        "summary": "Delete a certificate revocation",
        "description": "Permanently removes the specified certificate revocation (CRL) from the trust store.\n>[!warning]\n> This operation is irreversible. Revocation checks will no longer include this CRL.",
        "operationId": "RemoveCertificateRevocation",
        "parameters": [
          {
            "name": "trust_store_id",
            "in": "path",
            "description": "The unique identifier of the trust store.",
            "required": true,
            "schema": {
              "type": "string"
            },
            "example": "9qVBxPQiZqtUsBOykavK6"
          },
          {
            "name": "revocation_id",
            "in": "path",
            "description": "The unique identifier of the certificate revocation.",
            "required": true,
            "schema": {
              "type": "string"
            },
            "example": "ua79xIQTsc8eX8tNYPFOm"
          }
        ],
        "responses": {
          "204": {
            "description": "The certificate revocation was deleted successfully"
          },
          "404": {
            "description": "Not Found",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                },
                "examples": {
                  "NotFound": {
                    "$ref": "#/components/examples/NotFound"
                  }
                }
              }
            }
          },
          "402": {
            "description": "Payment Required",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                },
                "examples": {
                  "PaymentRequired": {
                    "$ref": "#/components/examples/PaymentRequired"
                  }
                }
              }
            }
          },
          "422": {
            "description": "Unprocessable Entity",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/KeyValidationProblemDetails"
                },
                "examples": {
                  "KeyValidationError": {
                    "$ref": "#/components/examples/KeyValidationError"
                  }
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized"
          },
          "403": {
            "description": "Forbidden"
          }
        },
        "security": [
          {
            "API-Key": [ ]
          }
        ],
        "x-codeSamples": [
          {
            "lang": "csharp",
            "label": "MonoCloud .NET SDK",
            "source": "using MonoCloud.Management;\nusing MonoCloud.Management.Core.Base;\n\nvar apiClient = new MonoCloudManagementClient(new MonoCloudConfig(\"<your-domain>\", \"[[API-Key]]\"));\n\n\nvar trustStoreId = \"9qVBxPQiZqtUsBOykavK6\";\n\nvar revocationId = \"ua79xIQTsc8eX8tNYPFOm\";\n\n\nvar result = await apiClient.TrustStores.RemoveCertificateRevocationAsync(trustStoreId, revocationId);"
          },
          {
            "lang": "javascript",
            "label": "MonoCloud Javascript SDK",
            "source": "import { MonoCloudManagementClient } from '@monocloud/management';\n\nconst apiClient = MonoCloudManagementClient.init({ domain: '<your-domain>', apiKey: '[[API-Key]]' });\n\nconst trustStoreId = '9qVBxPQiZqtUsBOykavK6';\n\nconst revocationId = 'ua79xIQTsc8eX8tNYPFOm';\n\nconst result = apiClient.trustStores.removeCertificateRevocation(trustStoreId, revocationId);"
          }
        ]
      }
    },
    "/truststores/pki/{trust_store_id}/banned_certificates": {
      "get": {
        "tags": [
          "Trust Stores"
        ],
        "summary": "List PKI banned certificates",
        "description": "Retrieves the list of client certificates that are explicitly banned for the specified PKI trust store.",
        "operationId": "GetAllPkiBannedCertificates",
        "parameters": [
          {
            "name": "trust_store_id",
            "in": "path",
            "description": "The unique identifier of the trust store.",
            "required": true,
            "schema": {
              "type": "string"
            },
            "example": "9qVBxPQiZqtUsBOykavK6"
          }
        ],
        "responses": {
          "200": {
            "description": "The banned certificates were retrieved successfully",
            "content": {
              "application/json": {
                "schema": {
                  "type": "array",
                  "items": {
                    "$ref": "#/components/schemas/BannedCertificate"
                  }
                }
              }
            }
          },
          "400": {
            "description": "Bad Request",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                },
                "examples": {
                  "BadRequest": {
                    "$ref": "#/components/examples/BadRequest"
                  }
                }
              }
            }
          },
          "404": {
            "description": "Not Found",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                },
                "examples": {
                  "NotFound": {
                    "$ref": "#/components/examples/NotFound"
                  }
                }
              }
            }
          },
          "422": {
            "description": "Unprocessable Entity",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/KeyValidationProblemDetails"
                },
                "examples": {
                  "KeyValidationError": {
                    "$ref": "#/components/examples/KeyValidationError"
                  }
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized"
          },
          "403": {
            "description": "Forbidden"
          }
        },
        "security": [
          {
            "API-Key": [ ]
          }
        ],
        "x-codeSamples": [
          {
            "lang": "csharp",
            "label": "MonoCloud .NET SDK",
            "source": "using MonoCloud.Management;\nusing MonoCloud.Management.Core.Base;\n\nvar apiClient = new MonoCloudManagementClient(new MonoCloudConfig(\"<your-domain>\", \"[[API-Key]]\"));\n\n\nvar trustStoreId = \"9qVBxPQiZqtUsBOykavK6\";\n\n\nvar result = await apiClient.TrustStores.GetAllPkiBannedCertificatesAsync(trustStoreId);"
          },
          {
            "lang": "javascript",
            "label": "MonoCloud Javascript SDK",
            "source": "import { MonoCloudManagementClient } from '@monocloud/management';\n\nconst apiClient = MonoCloudManagementClient.init({ domain: '<your-domain>', apiKey: '[[API-Key]]' });\n\nconst trustStoreId = '9qVBxPQiZqtUsBOykavK6';\n\nconst result = apiClient.trustStores.getAllPkiBannedCertificates(trustStoreId);"
          }
        ]
      },
      "post": {
        "tags": [
          "Trust Stores"
        ],
        "summary": "Ban a PKI certificate",
        "description": "Creates a banned certificate entry in the specified PKI trust store, preventing certificates matching the provided identifier from being trusted during mTLS authentication.",
        "operationId": "BanPkiTrustStoreCertificate",
        "parameters": [
          {
            "name": "trust_store_id",
            "in": "path",
            "description": "The unique identifier of the trust store.",
            "required": true,
            "schema": {
              "type": "string"
            },
            "example": "9qVBxPQiZqtUsBOykavK6"
          }
        ],
        "requestBody": {
          "description": "The request payload used to ban a certificate.",
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/BanTrustStoreCertificateRequest"
              }
            }
          },
          "required": true
        },
        "responses": {
          "200": {
            "description": "The certificate was banned successfully",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/BannedCertificate"
                }
              }
            }
          },
          "400": {
            "description": "Bad Request",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                },
                "examples": {
                  "BadRequest": {
                    "$ref": "#/components/examples/BadRequest"
                  }
                }
              }
            }
          },
          "402": {
            "description": "Payment Required",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                },
                "examples": {
                  "PaymentRequired": {
                    "$ref": "#/components/examples/PaymentRequired"
                  }
                }
              }
            }
          },
          "422": {
            "description": "Unprocessable Entity",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/KeyValidationProblemDetails"
                },
                "examples": {
                  "KeyValidationError": {
                    "$ref": "#/components/examples/KeyValidationError"
                  }
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized"
          },
          "403": {
            "description": "Forbidden"
          }
        },
        "security": [
          {
            "API-Key": [ ]
          }
        ],
        "x-codeSamples": [
          {
            "lang": "csharp",
            "label": "MonoCloud .NET SDK",
            "source": "using MonoCloud.Management;\nusing MonoCloud.Management.Models;\nusing MonoCloud.Management.Core.Base;\n\nvar apiClient = new MonoCloudManagementClient(new MonoCloudConfig(\"<your-domain>\", \"[[API-Key]]\"));\n\n\nvar trustStoreId = \"9qVBxPQiZqtUsBOykavK6\";\n\nvar requestBody = new BanTrustStoreCertificateRequest\n  {\n    Type = BannedCertificateType.Thumbprint,\n    Value = \"F1FB4FD68F15DAA29A0B935B2759986A92898030F1FB4FD68F15DAA29A0B935B\",\n    Reason = \"Privilege withdrawn\",\n  };\n\n\nvar result = await apiClient.TrustStores.BanPkiTrustStoreCertificateAsync(trustStoreId, requestBody);"
          },
          {
            "lang": "javascript",
            "label": "MonoCloud Javascript SDK",
            "source": "import { MonoCloudManagementClient } from '@monocloud/management';\n\nconst apiClient = MonoCloudManagementClient.init({ domain: '<your-domain>', apiKey: '[[API-Key]]' });\n\nconst trustStoreId = '9qVBxPQiZqtUsBOykavK6';\n\nconst requestBody = {\n  type: 'thumbprint',\n  value: 'F1FB4FD68F15DAA29A0B935B2759986A92898030F1FB4FD68F15DAA29A0B935B',\n  reason: 'Privilege withdrawn'\n};\n\nconst result = apiClient.trustStores.banPkiTrustStoreCertificate(trustStoreId, requestBody);"
          }
        ]
      }
    },
    "/truststores/pki/{trust_store_id}/banned_certificates/{ban_id}": {
      "delete": {
        "tags": [
          "Trust Stores"
        ],
        "summary": "Unban a PKI certificate",
        "description": "Removes a banned-certificate entry from the trust store, allowing matching certificates to be trusted again.",
        "operationId": "UnbanPkiTrustStoreCertificate",
        "parameters": [
          {
            "name": "trust_store_id",
            "in": "path",
            "description": "The unique identifier of the trust store.",
            "required": true,
            "schema": {
              "type": "string"
            },
            "example": "9qVBxPQiZqtUsBOykavK6"
          },
          {
            "name": "ban_id",
            "in": "path",
            "description": "The unique identifier of the banned certificate entry.",
            "required": true,
            "schema": {
              "type": "string"
            },
            "example": "HvQrCGfYHEbd1Ue37DAq3"
          }
        ],
        "responses": {
          "204": {
            "description": "The certificate ban was removed successfully"
          },
          "404": {
            "description": "Not Found",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                },
                "examples": {
                  "NotFound": {
                    "$ref": "#/components/examples/NotFound"
                  }
                }
              }
            }
          },
          "402": {
            "description": "Payment Required",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                },
                "examples": {
                  "PaymentRequired": {
                    "$ref": "#/components/examples/PaymentRequired"
                  }
                }
              }
            }
          },
          "422": {
            "description": "Unprocessable Entity",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/KeyValidationProblemDetails"
                },
                "examples": {
                  "KeyValidationError": {
                    "$ref": "#/components/examples/KeyValidationError"
                  }
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized"
          },
          "403": {
            "description": "Forbidden"
          }
        },
        "security": [
          {
            "API-Key": [ ]
          }
        ],
        "x-codeSamples": [
          {
            "lang": "csharp",
            "label": "MonoCloud .NET SDK",
            "source": "using MonoCloud.Management;\nusing MonoCloud.Management.Core.Base;\n\nvar apiClient = new MonoCloudManagementClient(new MonoCloudConfig(\"<your-domain>\", \"[[API-Key]]\"));\n\n\nvar trustStoreId = \"9qVBxPQiZqtUsBOykavK6\";\n\nvar banId = \"HvQrCGfYHEbd1Ue37DAq3\";\n\n\nvar result = await apiClient.TrustStores.UnbanPkiTrustStoreCertificateAsync(trustStoreId, banId);"
          },
          {
            "lang": "javascript",
            "label": "MonoCloud Javascript SDK",
            "source": "import { MonoCloudManagementClient } from '@monocloud/management';\n\nconst apiClient = MonoCloudManagementClient.init({ domain: '<your-domain>', apiKey: '[[API-Key]]' });\n\nconst trustStoreId = '9qVBxPQiZqtUsBOykavK6';\n\nconst banId = 'HvQrCGfYHEbd1Ue37DAq3';\n\nconst result = apiClient.trustStores.unbanPkiTrustStoreCertificate(trustStoreId, banId);"
          }
        ]
      }
    },
    "/truststores/spiffe": {
      "get": {
        "tags": [
          "Trust Stores"
        ],
        "summary": "List SPIFFE trust stores",
        "description": "Retrieves a paginated list of SPIFFE trust stores. Optional query parameters allow sorting of the results.",
        "operationId": "GetAllSpiffeTrustStores",
        "parameters": [
          {
            "name": "page",
            "in": "query",
            "description": "The page number to retrieve.",
            "schema": {
              "minimum": 1,
              "type": "integer",
              "format": "int32",
              "default": 1
            },
            "example": 1
          },
          {
            "name": "size",
            "in": "query",
            "description": "The number of trust stores to return per page.",
            "schema": {
              "maximum": 50,
              "minimum": 1,
              "type": "integer",
              "format": "int32",
              "default": 10
            },
            "example": 10
          },
          {
            "name": "sort",
            "in": "query",
            "description": "Sort expression in the format `field:direction`, where direction is `1` for ascending or `-1` for descending. Supported fields include - `name`, `creation_time` and `last_updated`",
            "schema": {
              "type": "string"
            },
            "example": "name:1"
          }
        ],
        "responses": {
          "200": {
            "description": "The trust stores were retrieved successfully",
            "headers": {
              "x-Pagination": {
                "description": "Returns the x-Pagination header",
                "schema": {
                  "$ref": "#/components/schemas/PaginationHeader"
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "type": "array",
                  "items": {
                    "$ref": "#/components/schemas/SpiffeTrustStoreSummary"
                  }
                }
              }
            }
          },
          "404": {
            "description": "Not Found",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                },
                "examples": {
                  "NotFound": {
                    "$ref": "#/components/examples/NotFound"
                  }
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized"
          },
          "403": {
            "description": "Forbidden"
          }
        },
        "security": [
          {
            "API-Key": [ ]
          }
        ],
        "x-codeSamples": [
          {
            "lang": "csharp",
            "label": "MonoCloud .NET SDK",
            "source": "using MonoCloud.Management;\nusing MonoCloud.Management.Core.Base;\n\nvar apiClient = new MonoCloudManagementClient(new MonoCloudConfig(\"<your-domain>\", \"[[API-Key]]\"));\n\n\nvar page = 1;\n\nvar size = 10;\n\nvar sort = \"name:1\";\n\n\nvar result = await apiClient.TrustStores.GetAllSpiffeTrustStoresAsync(page, size, sort);"
          },
          {
            "lang": "javascript",
            "label": "MonoCloud Javascript SDK",
            "source": "import { MonoCloudManagementClient } from '@monocloud/management';\n\nconst apiClient = MonoCloudManagementClient.init({ domain: '<your-domain>', apiKey: '[[API-Key]]' });\n\nconst page = 1;\n\nconst size = 10;\n\nconst sort = 'name:1';\n\nconst result = apiClient.trustStores.getAllSpiffeTrustStores(page, size, sort);"
          }
        ]
      },
      "post": {
        "tags": [
          "Trust Stores"
        ],
        "summary": "Create a SPIFFE trust store",
        "description": "Creates a new SPIFFE trust store for a federated SPIFFE trust domain and its workload identities.",
        "operationId": "CreateSpiffeTrustStore",
        "requestBody": {
          "description": "The request payload used to create a trust store.",
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/CreateSpiffeTrustStoreRequest"
              }
            }
          },
          "required": true
        },
        "responses": {
          "201": {
            "description": "The trust store was created successfully",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/SpiffeTrustStore"
                }
              }
            }
          },
          "400": {
            "description": "Bad Request",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                },
                "examples": {
                  "BadRequest": {
                    "$ref": "#/components/examples/BadRequest"
                  }
                }
              }
            }
          },
          "402": {
            "description": "Payment Required",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                },
                "examples": {
                  "PaymentRequired": {
                    "$ref": "#/components/examples/PaymentRequired"
                  }
                }
              }
            }
          },
          "422": {
            "description": "Unprocessable Entity",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/KeyValidationProblemDetails"
                },
                "examples": {
                  "KeyValidationError": {
                    "$ref": "#/components/examples/KeyValidationError"
                  }
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized"
          },
          "403": {
            "description": "Forbidden"
          }
        },
        "security": [
          {
            "API-Key": [ ]
          }
        ],
        "x-codeSamples": [
          {
            "lang": "csharp",
            "label": "MonoCloud .NET SDK",
            "source": "using MonoCloud.Management;\nusing MonoCloud.Management.Models;\nusing MonoCloud.Management.Core.Base;\n\nvar apiClient = new MonoCloudManagementClient(new MonoCloudConfig(\"<your-domain>\", \"[[API-Key]]\"));\n\n\nvar requestBody = new CreateSpiffeTrustStoreRequest\n  {\n    ShowInDiscoveryDocument = true,\n    Options = new CreateSpiffeTrustStoreOptionsRequest\n    {\n      ValidateCertificateUse = true,\n      ValidateValidityPeriod = true,\n      CertificateAuthCacheDuration = 300,\n      BundleFetchTimeout = 10,\n    },\n    SpiffeBundleEndpoint = \"https://example.org/bundle.json\",\n  };\n\n\nvar result = await apiClient.TrustStores.CreateSpiffeTrustStoreAsync(requestBody);"
          },
          {
            "lang": "javascript",
            "label": "MonoCloud Javascript SDK",
            "source": "import { MonoCloudManagementClient } from '@monocloud/management';\n\nconst apiClient = MonoCloudManagementClient.init({ domain: '<your-domain>', apiKey: '[[API-Key]]' });\n\nconst requestBody = {\n  show_in_discovery_document: true,\n  options: {\n    validate_certificate_use: true,\n    validate_validity_period: true,\n    certificate_auth_cache_duration: 300,\n    bundle_fetch_timeout: 10\n  },\n  spiffe_bundle_endpoint: 'https://example.org/bundle.json'\n};\n\nconst result = apiClient.trustStores.createSpiffeTrustStore(requestBody);"
          }
        ]
      }
    },
    "/truststores/spiffe/{trust_store_id}": {
      "get": {
        "tags": [
          "Trust Stores"
        ],
        "summary": "Retrieve a SPIFFE trust store",
        "description": "Retrieves detailed information for the specified SPIFFE trust store.",
        "operationId": "FindSpiffeTrustStoreById",
        "parameters": [
          {
            "name": "trust_store_id",
            "in": "path",
            "description": "The unique identifier of the trust store.",
            "required": true,
            "schema": {
              "type": "string"
            },
            "example": "9qVBxPQiZqtUsBOykavK6"
          }
        ],
        "responses": {
          "200": {
            "description": "The trust store was retrieved successfully",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/SpiffeTrustStore"
                }
              }
            }
          },
          "400": {
            "description": "Bad Request",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                },
                "examples": {
                  "BadRequest": {
                    "$ref": "#/components/examples/BadRequest"
                  }
                }
              }
            }
          },
          "404": {
            "description": "Not Found",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                },
                "examples": {
                  "NotFound": {
                    "$ref": "#/components/examples/NotFound"
                  }
                }
              }
            }
          },
          "422": {
            "description": "Unprocessable Entity",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/KeyValidationProblemDetails"
                },
                "examples": {
                  "KeyValidationError": {
                    "$ref": "#/components/examples/KeyValidationError"
                  }
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized"
          },
          "403": {
            "description": "Forbidden"
          }
        },
        "security": [
          {
            "API-Key": [ ]
          }
        ],
        "x-codeSamples": [
          {
            "lang": "csharp",
            "label": "MonoCloud .NET SDK",
            "source": "using MonoCloud.Management;\nusing MonoCloud.Management.Core.Base;\n\nvar apiClient = new MonoCloudManagementClient(new MonoCloudConfig(\"<your-domain>\", \"[[API-Key]]\"));\n\n\nvar trustStoreId = \"9qVBxPQiZqtUsBOykavK6\";\n\n\nvar result = await apiClient.TrustStores.FindSpiffeTrustStoreByIdAsync(trustStoreId);"
          },
          {
            "lang": "javascript",
            "label": "MonoCloud Javascript SDK",
            "source": "import { MonoCloudManagementClient } from '@monocloud/management';\n\nconst apiClient = MonoCloudManagementClient.init({ domain: '<your-domain>', apiKey: '[[API-Key]]' });\n\nconst trustStoreId = '9qVBxPQiZqtUsBOykavK6';\n\nconst result = apiClient.trustStores.findSpiffeTrustStoreById(trustStoreId);"
          }
        ]
      },
      "patch": {
        "tags": [
          "Trust Stores"
        ],
        "summary": "Update a SPIFFE trust store",
        "description": "Applies a partial update to the specified SPIFFE trust store. Only fields included in the request are updated.",
        "operationId": "PatchSpiffeTrustStore",
        "parameters": [
          {
            "name": "trust_store_id",
            "in": "path",
            "description": "The unique identifier of the trust store.",
            "required": true,
            "schema": {
              "type": "string"
            },
            "example": "9qVBxPQiZqtUsBOykavK6"
          }
        ],
        "requestBody": {
          "description": "The request payload used to update a trust store.",
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/PatchSpiffeTrustStoreRequest"
              }
            }
          },
          "required": true
        },
        "responses": {
          "200": {
            "description": "The trust store was updated successfully",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/SpiffeTrustStore"
                }
              }
            }
          },
          "400": {
            "description": "Bad Request",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                },
                "examples": {
                  "BadRequest": {
                    "$ref": "#/components/examples/BadRequest"
                  }
                }
              }
            }
          },
          "404": {
            "description": "Not Found",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                },
                "examples": {
                  "NotFound": {
                    "$ref": "#/components/examples/NotFound"
                  }
                }
              }
            }
          },
          "402": {
            "description": "Payment Required",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                },
                "examples": {
                  "PaymentRequired": {
                    "$ref": "#/components/examples/PaymentRequired"
                  }
                }
              }
            }
          },
          "422": {
            "description": "Unprocessable Entity",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/KeyValidationProblemDetails"
                },
                "examples": {
                  "KeyValidationError": {
                    "$ref": "#/components/examples/KeyValidationError"
                  }
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized"
          },
          "403": {
            "description": "Forbidden"
          }
        },
        "security": [
          {
            "API-Key": [ ]
          }
        ],
        "x-codeSamples": [
          {
            "lang": "csharp",
            "label": "MonoCloud .NET SDK",
            "source": "using MonoCloud.Management;\nusing MonoCloud.Management.Models;\nusing MonoCloud.Management.Core.Base;\n\nvar apiClient = new MonoCloudManagementClient(new MonoCloudConfig(\"<your-domain>\", \"[[API-Key]]\"));\n\n\nvar trustStoreId = \"9qVBxPQiZqtUsBOykavK6\";\n\nvar requestBody = new PatchSpiffeTrustStoreRequest\n  {\n    Enabled = true,\n    ShowInDiscoveryDocument = true,\n    SpiffeBundleEndpoint = \"https://example.org/bundle.json\",\n    Options = new PatchSpiffeTrustStoreOptionsRequest\n    {\n      ValidateCertificateUse = true,\n      ValidateValidityPeriod = true,\n      CertificateAuthCacheDuration = 300,\n      BundleFetchTimeout = 10,\n    },\n  };\n\n\nvar result = await apiClient.TrustStores.PatchSpiffeTrustStoreAsync(trustStoreId, requestBody);"
          },
          {
            "lang": "javascript",
            "label": "MonoCloud Javascript SDK",
            "source": "import { MonoCloudManagementClient } from '@monocloud/management';\n\nconst apiClient = MonoCloudManagementClient.init({ domain: '<your-domain>', apiKey: '[[API-Key]]' });\n\nconst trustStoreId = '9qVBxPQiZqtUsBOykavK6';\n\nconst requestBody = {\n  enabled: true,\n  show_in_discovery_document: true,\n  spiffe_bundle_endpoint: 'https://example.org/bundle.json',\n  options: {\n    validate_certificate_use: true,\n    validate_validity_period: true,\n    certificate_auth_cache_duration: 300,\n    bundle_fetch_timeout: 10\n  }\n};\n\nconst result = apiClient.trustStores.patchSpiffeTrustStore(trustStoreId, requestBody);"
          }
        ]
      },
      "delete": {
        "tags": [
          "Trust Stores"
        ],
        "summary": "Delete a SPIFFE trust store",
        "description": "Permanently deletes the specified SPIFFE trust store.\n>[!warning]\n> This operation is irreversible. Any client applications relying on this trust store for authentication will immediately fail validation.",
        "operationId": "DeleteSpiffeTrustStore",
        "parameters": [
          {
            "name": "trust_store_id",
            "in": "path",
            "description": "The unique identifier of the trust store.",
            "required": true,
            "schema": {
              "type": "string"
            },
            "example": "9qVBxPQiZqtUsBOykavK6"
          }
        ],
        "responses": {
          "204": {
            "description": "The trust store was deleted successfully"
          },
          "404": {
            "description": "Not Found",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                },
                "examples": {
                  "NotFound": {
                    "$ref": "#/components/examples/NotFound"
                  }
                }
              }
            }
          },
          "422": {
            "description": "Unprocessable Entity",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/KeyValidationProblemDetails"
                },
                "examples": {
                  "KeyValidationError": {
                    "$ref": "#/components/examples/KeyValidationError"
                  }
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized"
          },
          "403": {
            "description": "Forbidden"
          }
        },
        "security": [
          {
            "API-Key": [ ]
          }
        ],
        "x-codeSamples": [
          {
            "lang": "csharp",
            "label": "MonoCloud .NET SDK",
            "source": "using MonoCloud.Management;\nusing MonoCloud.Management.Core.Base;\n\nvar apiClient = new MonoCloudManagementClient(new MonoCloudConfig(\"<your-domain>\", \"[[API-Key]]\"));\n\n\nvar trustStoreId = \"9qVBxPQiZqtUsBOykavK6\";\n\n\nvar result = await apiClient.TrustStores.DeleteSpiffeTrustStoreAsync(trustStoreId);"
          },
          {
            "lang": "javascript",
            "label": "MonoCloud Javascript SDK",
            "source": "import { MonoCloudManagementClient } from '@monocloud/management';\n\nconst apiClient = MonoCloudManagementClient.init({ domain: '<your-domain>', apiKey: '[[API-Key]]' });\n\nconst trustStoreId = '9qVBxPQiZqtUsBOykavK6';\n\nconst result = apiClient.trustStores.deleteSpiffeTrustStore(trustStoreId);"
          }
        ]
      }
    },
    "/truststores/spiffe/{trust_store_id}/default": {
      "post": {
        "tags": [
          "Trust Stores"
        ],
        "summary": "Set a SPIFFE trust store as the default",
        "description": "Marks the specified trust store as the default for mTLS authentication. This default is used when no explicit trust store is selected for an mTLS endpoint.",
        "operationId": "SetSpiffeTrustStoreDefault",
        "parameters": [
          {
            "name": "trust_store_id",
            "in": "path",
            "description": "The unique identifier of the trust store.",
            "required": true,
            "schema": {
              "type": "string"
            },
            "example": "9qVBxPQiZqtUsBOykavK6"
          }
        ],
        "responses": {
          "200": {
            "description": "The trust store was set as the default successfully",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/SpiffeTrustStore"
                }
              }
            }
          },
          "404": {
            "description": "Not Found",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                },
                "examples": {
                  "NotFound": {
                    "$ref": "#/components/examples/NotFound"
                  }
                }
              }
            }
          },
          "402": {
            "description": "Payment Required",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                },
                "examples": {
                  "PaymentRequired": {
                    "$ref": "#/components/examples/PaymentRequired"
                  }
                }
              }
            }
          },
          "422": {
            "description": "Unprocessable Entity",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/KeyValidationProblemDetails"
                },
                "examples": {
                  "KeyValidationError": {
                    "$ref": "#/components/examples/KeyValidationError"
                  }
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized"
          },
          "403": {
            "description": "Forbidden"
          }
        },
        "security": [
          {
            "API-Key": [ ]
          }
        ],
        "x-codeSamples": [
          {
            "lang": "csharp",
            "label": "MonoCloud .NET SDK",
            "source": "using MonoCloud.Management;\nusing MonoCloud.Management.Core.Base;\n\nvar apiClient = new MonoCloudManagementClient(new MonoCloudConfig(\"<your-domain>\", \"[[API-Key]]\"));\n\n\nvar trustStoreId = \"9qVBxPQiZqtUsBOykavK6\";\n\n\nvar result = await apiClient.TrustStores.SetSpiffeTrustStoreDefaultAsync(trustStoreId);"
          },
          {
            "lang": "javascript",
            "label": "MonoCloud Javascript SDK",
            "source": "import { MonoCloudManagementClient } from '@monocloud/management';\n\nconst apiClient = MonoCloudManagementClient.init({ domain: '<your-domain>', apiKey: '[[API-Key]]' });\n\nconst trustStoreId = '9qVBxPQiZqtUsBOykavK6';\n\nconst result = apiClient.trustStores.setSpiffeTrustStoreDefault(trustStoreId);"
          }
        ]
      }
    },
    "/truststores/spiffe/{trust_store_id}/banned_svids": {
      "get": {
        "tags": [
          "Trust Stores"
        ],
        "summary": "List banned SVIDs",
        "description": "Retrieves the list of SVIDs that are explicitly banned for the specified SPIFFE trust store.",
        "operationId": "GetAllSpiffeBannedSvids",
        "parameters": [
          {
            "name": "trust_store_id",
            "in": "path",
            "description": "The unique identifier of the trust store.",
            "required": true,
            "schema": {
              "type": "string"
            },
            "example": "9qVBxPQiZqtUsBOykavK6"
          }
        ],
        "responses": {
          "200": {
            "description": "The banned SVIDs were retrieved successfully",
            "content": {
              "application/json": {
                "schema": {
                  "type": "array",
                  "items": {
                    "$ref": "#/components/schemas/BannedSvid"
                  }
                }
              }
            }
          },
          "400": {
            "description": "Bad Request",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                },
                "examples": {
                  "BadRequest": {
                    "$ref": "#/components/examples/BadRequest"
                  }
                }
              }
            }
          },
          "404": {
            "description": "Not Found",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                },
                "examples": {
                  "NotFound": {
                    "$ref": "#/components/examples/NotFound"
                  }
                }
              }
            }
          },
          "422": {
            "description": "Unprocessable Entity",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/KeyValidationProblemDetails"
                },
                "examples": {
                  "KeyValidationError": {
                    "$ref": "#/components/examples/KeyValidationError"
                  }
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized"
          },
          "403": {
            "description": "Forbidden"
          }
        },
        "security": [
          {
            "API-Key": [ ]
          }
        ],
        "x-codeSamples": [
          {
            "lang": "csharp",
            "label": "MonoCloud .NET SDK",
            "source": "using MonoCloud.Management;\nusing MonoCloud.Management.Core.Base;\n\nvar apiClient = new MonoCloudManagementClient(new MonoCloudConfig(\"<your-domain>\", \"[[API-Key]]\"));\n\n\nvar trustStoreId = \"9qVBxPQiZqtUsBOykavK6\";\n\n\nvar result = await apiClient.TrustStores.GetAllSpiffeBannedSvidsAsync(trustStoreId);"
          },
          {
            "lang": "javascript",
            "label": "MonoCloud Javascript SDK",
            "source": "import { MonoCloudManagementClient } from '@monocloud/management';\n\nconst apiClient = MonoCloudManagementClient.init({ domain: '<your-domain>', apiKey: '[[API-Key]]' });\n\nconst trustStoreId = '9qVBxPQiZqtUsBOykavK6';\n\nconst result = apiClient.trustStores.getAllSpiffeBannedSvids(trustStoreId);"
          }
        ]
      },
      "post": {
        "tags": [
          "Trust Stores"
        ],
        "summary": "Ban a SVID",
        "description": "Creates a banned SVID entry in the specified SPIFFE trust store, preventing SVIDs matching the provided identifier from being trusted during authentication.",
        "operationId": "BanSpiffeTrustStoreSvid",
        "parameters": [
          {
            "name": "trust_store_id",
            "in": "path",
            "description": "The unique identifier of the trust store.",
            "required": true,
            "schema": {
              "type": "string"
            },
            "example": "9qVBxPQiZqtUsBOykavK6"
          }
        ],
        "requestBody": {
          "description": "The request payload used to ban a SVID.",
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/BanTrustStoreSvidRequest"
              }
            }
          },
          "required": true
        },
        "responses": {
          "200": {
            "description": "The SVID was banned successfully",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/BannedSvid"
                }
              }
            }
          },
          "400": {
            "description": "Bad Request",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                },
                "examples": {
                  "BadRequest": {
                    "$ref": "#/components/examples/BadRequest"
                  }
                }
              }
            }
          },
          "402": {
            "description": "Payment Required",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                },
                "examples": {
                  "PaymentRequired": {
                    "$ref": "#/components/examples/PaymentRequired"
                  }
                }
              }
            }
          },
          "422": {
            "description": "Unprocessable Entity",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/KeyValidationProblemDetails"
                },
                "examples": {
                  "KeyValidationError": {
                    "$ref": "#/components/examples/KeyValidationError"
                  }
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized"
          },
          "403": {
            "description": "Forbidden"
          }
        },
        "security": [
          {
            "API-Key": [ ]
          }
        ],
        "x-codeSamples": [
          {
            "lang": "csharp",
            "label": "MonoCloud .NET SDK",
            "source": "using MonoCloud.Management;\nusing MonoCloud.Management.Models;\nusing MonoCloud.Management.Core.Base;\n\nvar apiClient = new MonoCloudManagementClient(new MonoCloudConfig(\"<your-domain>\", \"[[API-Key]]\"));\n\n\nvar trustStoreId = \"9qVBxPQiZqtUsBOykavK6\";\n\nvar requestBody = new BanTrustStoreSvidRequest\n  {\n    Value = \"spiffe://example.org/workload\",\n    Reason = \"Privilege withdrawn\",\n  };\n\n\nvar result = await apiClient.TrustStores.BanSpiffeTrustStoreSvidAsync(trustStoreId, requestBody);"
          },
          {
            "lang": "javascript",
            "label": "MonoCloud Javascript SDK",
            "source": "import { MonoCloudManagementClient } from '@monocloud/management';\n\nconst apiClient = MonoCloudManagementClient.init({ domain: '<your-domain>', apiKey: '[[API-Key]]' });\n\nconst trustStoreId = '9qVBxPQiZqtUsBOykavK6';\n\nconst requestBody = {\n  value: 'spiffe://example.org/workload',\n  reason: 'Privilege withdrawn'\n};\n\nconst result = apiClient.trustStores.banSpiffeTrustStoreSvid(trustStoreId, requestBody);"
          }
        ]
      }
    },
    "/truststores/spiffe/{trust_store_id}/banned_svids/{ban_id}": {
      "delete": {
        "tags": [
          "Trust Stores"
        ],
        "summary": "Unban a SVID",
        "description": "Removes a banned-SVID entry from the trust store, allowing matching SVIDs to be trusted again.",
        "operationId": "UnbanSpiffeTrustStoreSvid",
        "parameters": [
          {
            "name": "trust_store_id",
            "in": "path",
            "description": "The unique identifier of the trust store.",
            "required": true,
            "schema": {
              "type": "string"
            },
            "example": "9qVBxPQiZqtUsBOykavK6"
          },
          {
            "name": "ban_id",
            "in": "path",
            "description": "The unique identifier of the banned SVID entry.",
            "required": true,
            "schema": {
              "type": "string"
            },
            "example": "HvQrCGfYHEbd1Ue37DAq3"
          }
        ],
        "responses": {
          "204": {
            "description": "The SVID ban was removed successfully"
          },
          "404": {
            "description": "Not Found",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                },
                "examples": {
                  "NotFound": {
                    "$ref": "#/components/examples/NotFound"
                  }
                }
              }
            }
          },
          "402": {
            "description": "Payment Required",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                },
                "examples": {
                  "PaymentRequired": {
                    "$ref": "#/components/examples/PaymentRequired"
                  }
                }
              }
            }
          },
          "422": {
            "description": "Unprocessable Entity",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/KeyValidationProblemDetails"
                },
                "examples": {
                  "KeyValidationError": {
                    "$ref": "#/components/examples/KeyValidationError"
                  }
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized"
          },
          "403": {
            "description": "Forbidden"
          }
        },
        "security": [
          {
            "API-Key": [ ]
          }
        ],
        "x-codeSamples": [
          {
            "lang": "csharp",
            "label": "MonoCloud .NET SDK",
            "source": "using MonoCloud.Management;\nusing MonoCloud.Management.Core.Base;\n\nvar apiClient = new MonoCloudManagementClient(new MonoCloudConfig(\"<your-domain>\", \"[[API-Key]]\"));\n\n\nvar trustStoreId = \"9qVBxPQiZqtUsBOykavK6\";\n\nvar banId = \"HvQrCGfYHEbd1Ue37DAq3\";\n\n\nvar result = await apiClient.TrustStores.UnbanSpiffeTrustStoreSvidAsync(trustStoreId, banId);"
          },
          {
            "lang": "javascript",
            "label": "MonoCloud Javascript SDK",
            "source": "import { MonoCloudManagementClient } from '@monocloud/management';\n\nconst apiClient = MonoCloudManagementClient.init({ domain: '<your-domain>', apiKey: '[[API-Key]]' });\n\nconst trustStoreId = '9qVBxPQiZqtUsBOykavK6';\n\nconst banId = 'HvQrCGfYHEbd1Ue37DAq3';\n\nconst result = apiClient.trustStores.unbanSpiffeTrustStoreSvid(trustStoreId, banId);"
          }
        ]
      }
    },
    "/keys": {
      "get": {
        "tags": [
          "Keys"
        ],
        "summary": "List key materials",
        "description": "Retrieves a paginated list of active cryptographic key materials managed by the tenant. These keys may be used for signing, encryption, token issuance, or other security-related operations.",
        "operationId": "GetAllKeyMaterials",
        "parameters": [
          {
            "name": "page",
            "in": "query",
            "description": "The page number to retrieve.",
            "schema": {
              "minimum": 1,
              "type": "integer",
              "format": "int32",
              "default": 1
            },
            "example": 1
          },
          {
            "name": "size",
            "in": "query",
            "description": "The number of keys to return per page.",
            "schema": {
              "maximum": 50,
              "minimum": 1,
              "type": "integer",
              "format": "int32",
              "default": 10
            },
            "example": 10
          }
        ],
        "responses": {
          "200": {
            "description": "The key materials were retrieved successfully",
            "headers": {
              "x-Pagination": {
                "description": "Returns the x-Pagination header",
                "schema": {
                  "$ref": "#/components/schemas/PaginationHeader"
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "type": "array",
                  "items": {
                    "$ref": "#/components/schemas/KeyMaterial"
                  }
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized"
          },
          "403": {
            "description": "Forbidden"
          }
        },
        "security": [
          {
            "API-Key": [ ]
          }
        ],
        "x-codeSamples": [
          {
            "lang": "csharp",
            "label": "MonoCloud .NET SDK",
            "source": "using MonoCloud.Management;\nusing MonoCloud.Management.Core.Base;\n\nvar apiClient = new MonoCloudManagementClient(new MonoCloudConfig(\"<your-domain>\", \"[[API-Key]]\"));\n\n\nvar page = 1;\n\nvar size = 10;\n\n\nvar result = await apiClient.Keys.GetAllKeyMaterialsAsync(page, size);"
          },
          {
            "lang": "javascript",
            "label": "MonoCloud Javascript SDK",
            "source": "import { MonoCloudManagementClient } from '@monocloud/management';\n\nconst apiClient = MonoCloudManagementClient.init({ domain: '<your-domain>', apiKey: '[[API-Key]]' });\n\nconst page = 1;\n\nconst size = 10;\n\nconst result = apiClient.keys.getAllKeyMaterials(page, size);"
          }
        ]
      }
    },
    "/keys/{key_id}/rotate": {
      "put": {
        "tags": [
          "Keys"
        ],
        "summary": "Rotate a key",
        "description": "Rotates the specified cryptographic key by generating a new key version and promoting it as the active signing key. The previous key is retained for validation to ensure continuity for previously issued tokens.\n>[!warning]\n> This operation is irreversible.",
        "operationId": "RotateKey",
        "parameters": [
          {
            "name": "key_id",
            "in": "path",
            "description": "The unique identifier of the key.",
            "required": true,
            "schema": {
              "type": "string"
            },
            "example": "tXcwKNmJfReWTjVIP6Wtd"
          }
        ],
        "responses": {
          "204": {
            "description": "The key was rotated successfully"
          },
          "404": {
            "description": "Not Found",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                },
                "examples": {
                  "NotFound": {
                    "$ref": "#/components/examples/NotFound"
                  }
                }
              }
            }
          },
          "409": {
            "description": "Conflict",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                },
                "examples": {
                  "Conflict": {
                    "$ref": "#/components/examples/Conflict"
                  }
                }
              }
            }
          },
          "422": {
            "description": "Unprocessable Entity",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/KeyValidationProblemDetails"
                },
                "examples": {
                  "KeyValidationError": {
                    "$ref": "#/components/examples/KeyValidationError"
                  }
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized"
          },
          "403": {
            "description": "Forbidden"
          }
        },
        "security": [
          {
            "API-Key": [ ]
          }
        ],
        "x-codeSamples": [
          {
            "lang": "csharp",
            "label": "MonoCloud .NET SDK",
            "source": "using MonoCloud.Management;\nusing MonoCloud.Management.Core.Base;\n\nvar apiClient = new MonoCloudManagementClient(new MonoCloudConfig(\"<your-domain>\", \"[[API-Key]]\"));\n\n\nvar keyId = \"tXcwKNmJfReWTjVIP6Wtd\";\n\n\nvar result = await apiClient.Keys.RotateKeyAsync(keyId);"
          },
          {
            "lang": "javascript",
            "label": "MonoCloud Javascript SDK",
            "source": "import { MonoCloudManagementClient } from '@monocloud/management';\n\nconst apiClient = MonoCloudManagementClient.init({ domain: '<your-domain>', apiKey: '[[API-Key]]' });\n\nconst keyId = 'tXcwKNmJfReWTjVIP6Wtd';\n\nconst result = apiClient.keys.rotateKey(keyId);"
          }
        ]
      }
    },
    "/keys/{key_id}/revoke": {
      "put": {
        "tags": [
          "Keys"
        ],
        "summary": "Revoke a key",
        "description": "Revokes the specified cryptographic key, marking it as untrusted and immediately preventing it from being used for token signing or validation.\n>[!warning]\n> This operation is irreversible. Previously issued tokens that rely on this key may no longer be considered valid, depending on the validation strategy.",
        "operationId": "RevokeKey",
        "parameters": [
          {
            "name": "key_id",
            "in": "path",
            "description": "The unique identifier of the key.",
            "required": true,
            "schema": {
              "type": "string"
            },
            "example": "tXcwKNmJfReWTjVIP6Wtd"
          }
        ],
        "responses": {
          "204": {
            "description": "The key was revoked successfully"
          },
          "404": {
            "description": "Not Found",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                },
                "examples": {
                  "NotFound": {
                    "$ref": "#/components/examples/NotFound"
                  }
                }
              }
            }
          },
          "409": {
            "description": "Conflict",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                },
                "examples": {
                  "Conflict": {
                    "$ref": "#/components/examples/Conflict"
                  }
                }
              }
            }
          },
          "422": {
            "description": "Unprocessable Entity",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/KeyValidationProblemDetails"
                },
                "examples": {
                  "KeyValidationError": {
                    "$ref": "#/components/examples/KeyValidationError"
                  }
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized"
          },
          "403": {
            "description": "Forbidden"
          }
        },
        "security": [
          {
            "API-Key": [ ]
          }
        ],
        "x-codeSamples": [
          {
            "lang": "csharp",
            "label": "MonoCloud .NET SDK",
            "source": "using MonoCloud.Management;\nusing MonoCloud.Management.Core.Base;\n\nvar apiClient = new MonoCloudManagementClient(new MonoCloudConfig(\"<your-domain>\", \"[[API-Key]]\"));\n\n\nvar keyId = \"tXcwKNmJfReWTjVIP6Wtd\";\n\n\nvar result = await apiClient.Keys.RevokeKeyAsync(keyId);"
          },
          {
            "lang": "javascript",
            "label": "MonoCloud Javascript SDK",
            "source": "import { MonoCloudManagementClient } from '@monocloud/management';\n\nconst apiClient = MonoCloudManagementClient.init({ domain: '<your-domain>', apiKey: '[[API-Key]]' });\n\nconst keyId = 'tXcwKNmJfReWTjVIP6Wtd';\n\nconst result = apiClient.keys.revokeKey(keyId);"
          }
        ]
      }
    },
    "/options/authentication": {
      "get": {
        "tags": [
          "Options"
        ],
        "summary": "Retrieve authentication options",
        "description": "Retrieves the current authentication configuration, including enabled authenticators, sign-in and sign-up behavior, and external identity provider settings.",
        "operationId": "FindAuthenticationOptions",
        "responses": {
          "200": {
            "description": "The authentication options were retrieved successfully",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/AuthenticationOptions"
                }
              }
            }
          },
          "404": {
            "description": "Not Found",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                },
                "examples": {
                  "NotFound": {
                    "$ref": "#/components/examples/NotFound"
                  }
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized"
          },
          "403": {
            "description": "Forbidden"
          }
        },
        "security": [
          {
            "API-Key": [ ]
          }
        ],
        "x-codeSamples": [
          {
            "lang": "csharp",
            "label": "MonoCloud .NET SDK",
            "source": "using MonoCloud.Management;\nusing MonoCloud.Management.Core.Base;\n\nvar apiClient = new MonoCloudManagementClient(new MonoCloudConfig(\"<your-domain>\", \"[[API-Key]]\"));\n\n\n\nvar result = await apiClient.Options.FindAuthenticationOptionsAsync();"
          },
          {
            "lang": "javascript",
            "label": "MonoCloud Javascript SDK",
            "source": "import { MonoCloudManagementClient } from '@monocloud/management';\n\nconst apiClient = MonoCloudManagementClient.init({ domain: '<your-domain>', apiKey: '[[API-Key]]' });\n\nconst result = apiClient.options.findAuthenticationOptions();"
          }
        ]
      },
      "patch": {
        "tags": [
          "Options"
        ],
        "summary": "Update authentication options",
        "description": "Applies a partial update to the authentication configuration, including internal and external authenticators, sign-in behavior, and provider-specific settings. Only fields included in the request are updated.",
        "operationId": "PatchAuthenticationOptions",
        "requestBody": {
          "description": "The request payload used to update the authentication options.",
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/PatchAuthenticationOptionsRequest"
              }
            }
          },
          "required": true
        },
        "responses": {
          "200": {
            "description": "The authentication options were updated successfully",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/AuthenticationOptions"
                }
              }
            }
          },
          "400": {
            "description": "Bad Request",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                },
                "examples": {
                  "BadRequest": {
                    "$ref": "#/components/examples/BadRequest"
                  }
                }
              }
            }
          },
          "404": {
            "description": "Not Found",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                },
                "examples": {
                  "NotFound": {
                    "$ref": "#/components/examples/NotFound"
                  }
                }
              }
            }
          },
          "402": {
            "description": "Payment Required",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                },
                "examples": {
                  "PaymentRequired": {
                    "$ref": "#/components/examples/PaymentRequired"
                  }
                }
              }
            }
          },
          "422": {
            "description": "Unprocessable Entity",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/KeyValidationProblemDetails"
                },
                "examples": {
                  "KeyValidationError": {
                    "$ref": "#/components/examples/KeyValidationError"
                  }
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized"
          },
          "403": {
            "description": "Forbidden"
          }
        },
        "security": [
          {
            "API-Key": [ ]
          }
        ],
        "x-codeSamples": [
          {
            "lang": "csharp",
            "label": "MonoCloud .NET SDK",
            "source": "using MonoCloud.Management;\nusing MonoCloud.Management.Models;\nusing MonoCloud.Management.Core.Base;\n\nvar apiClient = new MonoCloudManagementClient(new MonoCloudConfig(\"<your-domain>\", \"[[API-Key]]\"));\n\n\nvar requestBody = new PatchAuthenticationOptionsRequest\n  {\n    PushedAuthorization = new PatchPushedAuthorizationOptionsRequest\n    {\n      EnablePushedAuthorizationRequests = false,\n      RequirePushedAuthorizationRequests = false,\n    },\n    AccountProtection = new PatchAccountProtectionOptionsRequest\n    {\n      UserLockout = new PatchAccountProtectionUserLockoutOptionsRequest\n      {\n        Enabled = true,\n        MaxFailedAccessAttempts = 5,\n        UserLockoutTimeSpan = 5,\n        IpLockoutTimeSpan = 43200,\n        AllowedIps = new List<string>\n        {\n          \"156.3.59.5\",\n          \"184.220.154.65\",\n        },\n        LockoutType = UserLockoutTypes.Ip,\n        UserUnblock = new PatchAccountProtectionUserUnblockOptionsRequest\n        {\n          Email = new PatchAccountProtectionUserUnblockEmailOptionsRequest\n          {\n            Expiry = 300,\n          },\n        },\n      },\n    },\n    Authenticators = new PatchAuthenticatorOptionsRequest\n    {\n      ExternalSignInMethodsFirst = true,\n      Password = new PatchPasswordAuthenticatorOptionsRequest\n      {\n        EnableSignIn = true,\n        EnableSignUp = true,\n        PromptPasswordOnInitialScreen = false,\n        Expiry = 30,\n        Strength = new PatchPasswordStrengthOptionsRequest\n        {\n          MinimumLength = 16,\n          RequireNonAlphanumericCharacter = true,\n          RequireDigit = true,\n          RequireLowercaseCharacter = true,\n          RequireUppercaseCharacter = true,\n          RequiredUniqueCharactersCount = 4,\n        },\n        Reuse = new PatchPasswordReuseOptionsRequest\n        {\n          RestrictionMode = PasswordRestrictionModes.Off,\n          RestrictionPeriod = 43200,\n          RestrictionCount = 5,\n        },\n      },\n      Passkey = new PatchPasskeyAuthenticatorOptionsRequest\n      {\n        EnableSignIn = false,\n        EnableSignUp = false,\n        PromptEnrollment = true,\n        PromptDeviceEnrollment = true,\n        EnableAutoComplete = true,\n        ShowPasskeyButton = true,\n      },\n      Email = new PatchEmailAuthenticatorOptionsRequest\n      {\n        EnableSignIn = true,\n        EnableSignUp = true,\n        EnableJitProvisioning = true,\n        VerificationType = VerificationTypes.Link,\n        AllowCrossBrowser = true,\n        Expiry = 30,\n        CodeLength = 6,\n      },\n      Phone = new PatchPhoneAuthenticatorOptionsRequest\n      {\n        EnableSignIn = true,\n        EnableSignUp = true,\n        EnableJitProvisioning = true,\n        Expiry = 30,\n        CodeLength = 6,\n      },\n    },\n    Identifiers = new PatchIdentifierOptionsRequest\n    {\n      Email = new PatchEmailIdentifierOptionsRequest\n      {\n        EnableSignIn = true,\n        ShowAtSignUp = true,\n        RequiredAtSignUp = true,\n        Verification = new PatchEmailIdentifierVerificationOptionsRequest\n        {\n          VerifyAtSignUp = true,\n          VerificationType = VerificationTypes.Link,\n          AllowCrossBrowser = true,\n          Expiry = 300,\n          CodeLength = 6,\n        },\n      },\n      Phone = new PatchPhoneIdentifierOptionsRequest\n      {\n        EnableSignIn = true,\n        ShowAtSignUp = true,\n        RequiredAtSignUp = true,\n        Verification = new PatchPhoneIdentifierVerificationOptionsRequest\n        {\n          VerifyAtSignUp = true,\n          Expiry = 300,\n          CodeLength = 6,\n        },\n      },\n      Username = new PatchUsernameIdentifierOptionsRequest\n      {\n        EnableSignIn = true,\n        ShowAtSignUp = true,\n        RequiredAtSignUp = true,\n        MinimumLength = 3,\n      },\n    },\n    RecoveryMethods = new PatchRecoveryMethodsOptionsRequest\n    {\n      Email = new PatchRecoveryMethodsEmailOptionsRequest\n      {\n        Enabled = true,\n        VerificationType = VerificationTypes.Link,\n        AllowCrossBrowser = false,\n        Expiry = 300,\n        CodeLength = 6,\n      },\n      Phone = new PatchRecoveryMethodsPhoneOptionsRequest\n      {\n        Enabled = true,\n        Expiry = 300,\n        CodeLength = 6,\n      },\n    },\n    Session = new PatchSessionOptionsRequest\n    {\n      PersistenceMode = SessionPersistenceModes.UserSelected,\n      ExpirationType = SessionExpirationTypes.Sliding,\n      SlidingSessionLifetime = 1440,\n      AbsoluteSessionLifetime = 14400,\n    },\n    Logout = new PatchLogoutOptionsRequest\n    {\n      AutomaticRedirectAfterLogout = true,\n      ShowLogoutPrompt = true,\n    },\n    SignUp = new PatchSignUpOptionsRequest\n    {\n      ShowTermsAndPrivacyPolicy = true,\n      RequireExplicitUserAgreement = true,\n      PrivacyUrl = \"https://acme.com/privacy\",\n      TermsUrl = \"https://acme.com/terms\",\n      Allowlist = new PatchSignUpRestrictionsOptionsRequest\n      {\n        Enabled = true,\n        Identifiers = new List<string>\n        {\n          \"organization.com\",\n          \"example@organization.com\",\n          \"+1234567890\",\n        },\n      },\n      Blocklist = new PatchSignUpRestrictionsOptionsRequest\n      {\n        Enabled = true,\n        Identifiers = new List<string>\n        {\n          \"organization.com\",\n          \"example@organization.com\",\n          \"+1234567890\",\n        },\n      },\n    },\n  };\n\n\nvar result = await apiClient.Options.PatchAuthenticationOptionsAsync(requestBody);"
          },
          {
            "lang": "javascript",
            "label": "MonoCloud Javascript SDK",
            "source": "import { MonoCloudManagementClient } from '@monocloud/management';\n\nconst apiClient = MonoCloudManagementClient.init({ domain: '<your-domain>', apiKey: '[[API-Key]]' });\n\nconst requestBody = {\n  pushed_authorization: {\n    enable_pushed_authorization_requests: false,\n    require_pushed_authorization_requests: false\n  },\n  account_protection: {\n    user_lockout: {\n      enabled: true,\n      max_failed_access_attempts: 5,\n      user_lockout_time_span: 5,\n      ip_lockout_time_span: 43200,\n      allowed_ips: [\n        '156.3.59.5',\n        '184.220.154.65'\n      ],\n      lockout_type: 'ip',\n      user_unblock: {\n        email: {\n          expiry: 300\n        }\n      }\n    }\n  },\n  authenticators: {\n    external_sign_in_methods_first: true,\n    password: {\n      enable_sign_in: true,\n      enable_sign_up: true,\n      prompt_password_on_initial_screen: false,\n      expiry: 30,\n      strength: {\n        minimum_length: 16,\n        require_non_alphanumeric_character: true,\n        require_digit: true,\n        require_lowercase_character: true,\n        require_uppercase_character: true,\n        required_unique_characters_count: 4\n      },\n      reuse: {\n        restriction_mode: 'off',\n        restriction_period: 43200,\n        restriction_count: 5\n      }\n    },\n    passkey: {\n      enable_sign_in: false,\n      enable_sign_up: false,\n      prompt_enrollment: true,\n      prompt_device_enrollment: true,\n      enable_auto_complete: true,\n      show_passkey_button: true\n    },\n    email: {\n      enable_sign_in: true,\n      enable_sign_up: true,\n      enable_jit_provisioning: true,\n      verification_type: 'link',\n      allow_cross_browser: true,\n      expiry: 30,\n      code_length: 6\n    },\n    phone: {\n      enable_sign_in: true,\n      enable_sign_up: true,\n      enable_jit_provisioning: true,\n      expiry: 30,\n      code_length: 6\n    }\n  },\n  identifiers: {\n    email: {\n      enable_sign_in: true,\n      show_at_sign_up: true,\n      required_at_sign_up: true,\n      verification: {\n        verify_at_sign_up: true,\n        verification_type: 'link',\n        allow_cross_browser: true,\n        expiry: 300,\n        code_length: 6\n      }\n    },\n    phone: {\n      enable_sign_in: true,\n      show_at_sign_up: true,\n      required_at_sign_up: true,\n      verification: {\n        verify_at_sign_up: true,\n        expiry: 300,\n        code_length: 6\n      }\n    },\n    username: {\n      enable_sign_in: true,\n      show_at_sign_up: true,\n      required_at_sign_up: true,\n      minimum_length: 3\n    }\n  },\n  recovery_methods: {\n    email: {\n      enabled: true,\n      verification_type: 'link',\n      allow_cross_browser: false,\n      expiry: 300,\n      code_length: 6\n    },\n    phone: {\n      enabled: true,\n      expiry: 300,\n      code_length: 6\n    }\n  },\n  session: {\n    persistence_mode: 'user_selected',\n    expiration_type: 'sliding',\n    sliding_session_lifetime: 1440,\n    absolute_session_lifetime: 14400\n  },\n  logout: {\n    automatic_redirect_after_logout: true,\n    show_logout_prompt: true\n  },\n  sign_up: {\n    show_terms_and_privacy_policy: true,\n    require_explicit_user_agreement: true,\n    privacy_url: 'https://acme.com/privacy',\n    terms_url: 'https://acme.com/terms',\n    allowlist: {\n      enabled: true,\n      identifiers: [\n        'organization.com',\n        'example@organization.com',\n        '+1234567890'\n      ]\n    },\n    blocklist: {\n      enabled: true,\n      identifiers: [\n        'organization.com',\n        'example@organization.com',\n        '+1234567890'\n      ]\n    }\n  }\n};\n\nconst result = apiClient.options.patchAuthenticationOptions(requestBody);"
          }
        ]
      }
    },
    "/options/communication": {
      "get": {
        "tags": [
          "Options"
        ],
        "summary": "Retrieve communication options",
        "description": "Retrieves the current email and SMS delivery configuration.",
        "operationId": "FindCommunicationOptions",
        "responses": {
          "200": {
            "description": "The communication options were retrieved successfully",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommunicationOptions"
                }
              }
            }
          },
          "404": {
            "description": "Not Found",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                },
                "examples": {
                  "NotFound": {
                    "$ref": "#/components/examples/NotFound"
                  }
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized"
          },
          "403": {
            "description": "Forbidden"
          }
        },
        "security": [
          {
            "API-Key": [ ]
          }
        ],
        "x-codeSamples": [
          {
            "lang": "csharp",
            "label": "MonoCloud .NET SDK",
            "source": "using MonoCloud.Management;\nusing MonoCloud.Management.Core.Base;\n\nvar apiClient = new MonoCloudManagementClient(new MonoCloudConfig(\"<your-domain>\", \"[[API-Key]]\"));\n\n\n\nvar result = await apiClient.Options.FindCommunicationOptionsAsync();"
          },
          {
            "lang": "javascript",
            "label": "MonoCloud Javascript SDK",
            "source": "import { MonoCloudManagementClient } from '@monocloud/management';\n\nconst apiClient = MonoCloudManagementClient.init({ domain: '<your-domain>', apiKey: '[[API-Key]]' });\n\nconst result = apiClient.options.findCommunicationOptions();"
          }
        ]
      },
      "patch": {
        "tags": [
          "Options"
        ],
        "summary": "Update communication options",
        "description": "Applies a partial update to the email and SMS delivery configuration. Only fields included in the request are updated.",
        "operationId": "PatchCommunicationOptions",
        "requestBody": {
          "description": "The request payload used to update the communication options.",
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/PatchCommunicationOptionsRequest"
              }
            }
          },
          "required": true
        },
        "responses": {
          "200": {
            "description": "The communication options were updated successfully",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommunicationOptions"
                }
              }
            }
          },
          "400": {
            "description": "Bad Request",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                },
                "examples": {
                  "BadRequest": {
                    "$ref": "#/components/examples/BadRequest"
                  }
                }
              }
            }
          },
          "404": {
            "description": "Not Found",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                },
                "examples": {
                  "NotFound": {
                    "$ref": "#/components/examples/NotFound"
                  }
                }
              }
            }
          },
          "402": {
            "description": "Payment Required",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                },
                "examples": {
                  "PaymentRequired": {
                    "$ref": "#/components/examples/PaymentRequired"
                  }
                }
              }
            }
          },
          "422": {
            "description": "Unprocessable Entity",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/KeyValidationProblemDetails"
                },
                "examples": {
                  "KeyValidationError": {
                    "$ref": "#/components/examples/KeyValidationError"
                  }
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized"
          },
          "403": {
            "description": "Forbidden"
          }
        },
        "security": [
          {
            "API-Key": [ ]
          }
        ],
        "x-codeSamples": [
          {
            "lang": "csharp",
            "label": "MonoCloud .NET SDK",
            "source": "using MonoCloud.Management;\nusing MonoCloud.Management.Models;\nusing MonoCloud.Management.Core.Base;\n\nvar apiClient = new MonoCloudManagementClient(new MonoCloudConfig(\"<your-domain>\", \"[[API-Key]]\"));\n\n\nvar requestBody = new PatchCommunicationOptionsRequest\n  {\n    Email = new PatchCommunicationEmailOptionsRequest\n    {\n      Provider = EmailProviders.Monocloud,\n      SendGrid = new PatchCommunicationEmailSendGridOptionsRequest\n      {\n        ApiKey = \"KJFdlswierur458dfhkJHFwkoepOURFuasd\",\n        FromEmail = \"support@acme.com\",\n        FromName = \"Acme Support\",\n      },\n    },\n    Sms = new PatchCommunicationSmsOptionsRequest\n    {\n      Provider = SmsProviders.Monocloud,\n      Twilio = new PatchCommunicationSmsTwilioOptionsRequest\n      {\n        Sid = \"lakshGHIur984573\",\n        AuthToken = \"867dsfujgFTe6724356tgfds\",\n        MessagingSid = \"867dsfujgFTe6724356tgfds\",\n        From = \"ACME\",\n      },\n    },\n  };\n\n\nvar result = await apiClient.Options.PatchCommunicationOptionsAsync(requestBody);"
          },
          {
            "lang": "javascript",
            "label": "MonoCloud Javascript SDK",
            "source": "import { MonoCloudManagementClient } from '@monocloud/management';\n\nconst apiClient = MonoCloudManagementClient.init({ domain: '<your-domain>', apiKey: '[[API-Key]]' });\n\nconst requestBody = {\n  email: {\n    provider: 'monocloud',\n    send_grid: {\n      api_key: 'KJFdlswierur458dfhkJHFwkoepOURFuasd',\n      from_email: 'support@acme.com',\n      from_name: 'Acme Support'\n    }\n  },\n  sms: {\n    provider: 'monocloud',\n    twilio: {\n      sid: 'lakshGHIur984573',\n      auth_token: '867dsfujgFTe6724356tgfds',\n      messaging_sid: '867dsfujgFTe6724356tgfds',\n      from: 'ACME'\n    }\n  }\n};\n\nconst result = apiClient.options.patchCommunicationOptions(requestBody);"
          }
        ]
      }
    },
    "/options/authentication/signup/custom_fields": {
      "get": {
        "tags": [
          "Options"
        ],
        "summary": "List sign-up custom fields",
        "description": "Retrieves a list of configured custom fields collected during user sign-up.",
        "operationId": "GetAllSignUpCustomFields",
        "responses": {
          "200": {
            "description": "The sign-up custom fields were retrieved successfully",
            "content": {
              "application/json": {
                "schema": {
                  "type": "array",
                  "items": {
                    "$ref": "#/components/schemas/SignUpCustomField"
                  }
                }
              }
            }
          },
          "404": {
            "description": "Not Found"
          },
          "422": {
            "description": "Unprocessable Entity",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/KeyValidationProblemDetails"
                },
                "examples": {
                  "KeyValidationError": {
                    "$ref": "#/components/examples/KeyValidationError"
                  }
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized"
          },
          "403": {
            "description": "Forbidden"
          }
        },
        "security": [
          {
            "API-Key": [ ]
          }
        ],
        "x-codeSamples": [
          {
            "lang": "csharp",
            "label": "MonoCloud .NET SDK",
            "source": "using MonoCloud.Management;\nusing MonoCloud.Management.Core.Base;\n\nvar apiClient = new MonoCloudManagementClient(new MonoCloudConfig(\"<your-domain>\", \"[[API-Key]]\"));\n\n\n\nvar result = await apiClient.Options.GetAllSignUpCustomFieldsAsync();"
          },
          {
            "lang": "javascript",
            "label": "MonoCloud Javascript SDK",
            "source": "import { MonoCloudManagementClient } from '@monocloud/management';\n\nconst apiClient = MonoCloudManagementClient.init({ domain: '<your-domain>', apiKey: '[[API-Key]]' });\n\nconst result = apiClient.options.getAllSignUpCustomFields();"
          }
        ]
      },
      "post": {
        "tags": [
          "Options"
        ],
        "summary": "Create a sign-up custom field",
        "description": "Creates a new custom field to be collected during user sign-up.",
        "operationId": "CreateSignUpCustomField",
        "requestBody": {
          "description": "The request payload used to create a sign-up custom field configuration.",
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/CreateSignUpCustomFieldRequest"
              }
            }
          },
          "required": true
        },
        "responses": {
          "201": {
            "description": "The sign-up custom field was created successfully",
            "headers": {
              "location": {
                "description": "Returns the location header",
                "schema": {
                  "type": "string",
                  "format": "uri"
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/SignUpCustomField"
                }
              }
            }
          },
          "400": {
            "description": "Bad Request",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                },
                "examples": {
                  "BadRequest": {
                    "$ref": "#/components/examples/BadRequest"
                  }
                }
              }
            }
          },
          "422": {
            "description": "Unprocessable Entity",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/KeyValidationProblemDetails"
                },
                "examples": {
                  "KeyValidationError": {
                    "$ref": "#/components/examples/KeyValidationError"
                  }
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized"
          },
          "403": {
            "description": "Forbidden"
          }
        },
        "security": [
          {
            "API-Key": [ ]
          }
        ],
        "x-codeSamples": [
          {
            "lang": "csharp",
            "label": "MonoCloud .NET SDK",
            "source": "using MonoCloud.Management;\nusing MonoCloud.Management.Models;\nusing MonoCloud.Management.Core.Base;\n\nvar apiClient = new MonoCloudManagementClient(new MonoCloudConfig(\"<your-domain>\", \"[[API-Key]]\"));\n\n\nvar requestBody = new CreateSignUpCustomFieldRequest\n  {\n    Enabled = true,\n    Required = false,\n    ClaimName = \"first_name\",\n    ValueType = ValueTypes.String,\n    Label = \"First Name\",\n  };\n\n\nvar result = await apiClient.Options.CreateSignUpCustomFieldAsync(requestBody);"
          },
          {
            "lang": "javascript",
            "label": "MonoCloud Javascript SDK",
            "source": "import { MonoCloudManagementClient } from '@monocloud/management';\n\nconst apiClient = MonoCloudManagementClient.init({ domain: '<your-domain>', apiKey: '[[API-Key]]' });\n\nconst requestBody = {\n  enabled: true,\n  required: false,\n  claim_name: 'first_name',\n  value_type: 'string',\n  label: 'First Name'\n};\n\nconst result = apiClient.options.createSignUpCustomField(requestBody);"
          }
        ]
      }
    },
    "/options/authentication/signup/custom_fields/{claim_name}": {
      "get": {
        "tags": [
          "Options"
        ],
        "summary": "Retrieve a sign-up custom field",
        "description": "Retrieves detailed information for the specified sign-up custom field.",
        "operationId": "FindSignUpCustomField",
        "parameters": [
          {
            "name": "claim_name",
            "in": "path",
            "description": "The unique claim name identifying the custom field.",
            "required": true,
            "schema": {
              "type": "string"
            },
            "example": "first_name"
          }
        ],
        "responses": {
          "200": {
            "description": "The custom field was retrieved successfully",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/SignUpCustomField"
                }
              }
            }
          },
          "404": {
            "description": "Not Found",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                },
                "examples": {
                  "NotFound": {
                    "$ref": "#/components/examples/NotFound"
                  }
                }
              }
            }
          },
          "422": {
            "description": "Unprocessable Entity",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/KeyValidationProblemDetails"
                },
                "examples": {
                  "KeyValidationError": {
                    "$ref": "#/components/examples/KeyValidationError"
                  }
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized"
          },
          "403": {
            "description": "Forbidden"
          }
        },
        "security": [
          {
            "API-Key": [ ]
          }
        ],
        "x-codeSamples": [
          {
            "lang": "csharp",
            "label": "MonoCloud .NET SDK",
            "source": "using MonoCloud.Management;\nusing MonoCloud.Management.Core.Base;\n\nvar apiClient = new MonoCloudManagementClient(new MonoCloudConfig(\"<your-domain>\", \"[[API-Key]]\"));\n\n\nvar claimName = \"first_name\";\n\n\nvar result = await apiClient.Options.FindSignUpCustomFieldAsync(claimName);"
          },
          {
            "lang": "javascript",
            "label": "MonoCloud Javascript SDK",
            "source": "import { MonoCloudManagementClient } from '@monocloud/management';\n\nconst apiClient = MonoCloudManagementClient.init({ domain: '<your-domain>', apiKey: '[[API-Key]]' });\n\nconst claimName = 'first_name';\n\nconst result = apiClient.options.findSignUpCustomField(claimName);"
          }
        ]
      },
      "patch": {
        "tags": [
          "Options"
        ],
        "summary": "Update a sign-up custom field",
        "description": "Applies a partial update to the specified sign-up custom field configuration. Only fields included in the request are updated.",
        "operationId": "PatchSignUpCustomField",
        "parameters": [
          {
            "name": "claim_name",
            "in": "path",
            "description": "The unique claim name identifying the custom field.",
            "required": true,
            "schema": {
              "type": "string"
            },
            "example": "first_name"
          }
        ],
        "requestBody": {
          "description": "The request payload used to update the field configuration.",
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/PatchSignUpCustomFieldRequest"
              }
            }
          },
          "required": true
        },
        "responses": {
          "200": {
            "description": "The sign-up custom field was updated successfully",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/SignUpCustomField"
                }
              }
            }
          },
          "400": {
            "description": "Bad Request",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                },
                "examples": {
                  "BadRequest": {
                    "$ref": "#/components/examples/BadRequest"
                  }
                }
              }
            }
          },
          "404": {
            "description": "Not Found",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                },
                "examples": {
                  "NotFound": {
                    "$ref": "#/components/examples/NotFound"
                  }
                }
              }
            }
          },
          "422": {
            "description": "Unprocessable Entity",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/KeyValidationProblemDetails"
                },
                "examples": {
                  "KeyValidationError": {
                    "$ref": "#/components/examples/KeyValidationError"
                  }
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized"
          },
          "403": {
            "description": "Forbidden"
          }
        },
        "security": [
          {
            "API-Key": [ ]
          }
        ],
        "x-codeSamples": [
          {
            "lang": "csharp",
            "label": "MonoCloud .NET SDK",
            "source": "using MonoCloud.Management;\nusing MonoCloud.Management.Models;\nusing MonoCloud.Management.Core.Base;\n\nvar apiClient = new MonoCloudManagementClient(new MonoCloudConfig(\"<your-domain>\", \"[[API-Key]]\"));\n\n\nvar claimName = \"first_name\";\n\nvar requestBody = new PatchSignUpCustomFieldRequest\n  {\n    Enabled = true,\n    Required = false,\n    ClaimName = \"first_name\",\n    ValueType = ValueTypes.String,\n    Label = \"First Name\",\n  };\n\n\nvar result = await apiClient.Options.PatchSignUpCustomFieldAsync(claimName, requestBody);"
          },
          {
            "lang": "javascript",
            "label": "MonoCloud Javascript SDK",
            "source": "import { MonoCloudManagementClient } from '@monocloud/management';\n\nconst apiClient = MonoCloudManagementClient.init({ domain: '<your-domain>', apiKey: '[[API-Key]]' });\n\nconst claimName = 'first_name';\n\nconst requestBody = {\n  enabled: true,\n  required: false,\n  claim_name: 'first_name',\n  value_type: 'string',\n  label: 'First Name'\n};\n\nconst result = apiClient.options.patchSignUpCustomField(claimName, requestBody);"
          }
        ]
      },
      "delete": {
        "tags": [
          "Options"
        ],
        "summary": "Delete a sign-up custom field",
        "description": "Permanently deletes the specified sign-up custom field configuration.\n>[!warning]\n> This operation is irreversible.",
        "operationId": "DeleteSignUpCustomField",
        "parameters": [
          {
            "name": "claim_name",
            "in": "path",
            "description": "The unique claim name identifying the custom field.",
            "required": true,
            "schema": {
              "type": "string"
            },
            "example": "first_name"
          }
        ],
        "responses": {
          "204": {
            "description": "The sign-up custom field was deleted successfully"
          },
          "404": {
            "description": "Not Found",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                },
                "examples": {
                  "NotFound": {
                    "$ref": "#/components/examples/NotFound"
                  }
                }
              }
            }
          },
          "422": {
            "description": "Unprocessable Entity",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/KeyValidationProblemDetails"
                },
                "examples": {
                  "KeyValidationError": {
                    "$ref": "#/components/examples/KeyValidationError"
                  }
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized"
          },
          "403": {
            "description": "Forbidden"
          }
        },
        "security": [
          {
            "API-Key": [ ]
          }
        ],
        "x-codeSamples": [
          {
            "lang": "csharp",
            "label": "MonoCloud .NET SDK",
            "source": "using MonoCloud.Management;\nusing MonoCloud.Management.Core.Base;\n\nvar apiClient = new MonoCloudManagementClient(new MonoCloudConfig(\"<your-domain>\", \"[[API-Key]]\"));\n\n\nvar claimName = \"first_name\";\n\n\nvar result = await apiClient.Options.DeleteSignUpCustomFieldAsync(claimName);"
          },
          {
            "lang": "javascript",
            "label": "MonoCloud Javascript SDK",
            "source": "import { MonoCloudManagementClient } from '@monocloud/management';\n\nconst apiClient = MonoCloudManagementClient.init({ domain: '<your-domain>', apiKey: '[[API-Key]]' });\n\nconst claimName = 'first_name';\n\nconst result = apiClient.options.deleteSignUpCustomField(claimName);"
          }
        ]
      }
    },
    "/options/authentication/external": {
      "get": {
        "tags": [
          "Options"
        ],
        "summary": "List external authenticators",
        "description": "Retrieves the list of configured external authenticators.",
        "operationId": "GetAllExternalAuthenticators",
        "responses": {
          "200": {
            "description": "The external authenticators were retrieved successfully",
            "content": {
              "application/json": {
                "schema": {
                  "type": "array",
                  "items": {
                    "$ref": "#/components/schemas/ExternalProvider"
                  }
                }
              }
            }
          },
          "404": {
            "description": "Not Found"
          },
          "422": {
            "description": "Unprocessable Entity",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/KeyValidationProblemDetails"
                },
                "examples": {
                  "KeyValidationError": {
                    "$ref": "#/components/examples/KeyValidationError"
                  }
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized"
          },
          "403": {
            "description": "Forbidden"
          }
        },
        "security": [
          {
            "API-Key": [ ]
          }
        ],
        "x-codeSamples": [
          {
            "lang": "csharp",
            "label": "MonoCloud .NET SDK",
            "source": "using MonoCloud.Management;\nusing MonoCloud.Management.Core.Base;\n\nvar apiClient = new MonoCloudManagementClient(new MonoCloudConfig(\"<your-domain>\", \"[[API-Key]]\"));\n\n\n\nvar result = await apiClient.Options.GetAllExternalAuthenticatorsAsync();"
          },
          {
            "lang": "javascript",
            "label": "MonoCloud Javascript SDK",
            "source": "import { MonoCloudManagementClient } from '@monocloud/management';\n\nconst apiClient = MonoCloudManagementClient.init({ domain: '<your-domain>', apiKey: '[[API-Key]]' });\n\nconst result = apiClient.options.getAllExternalAuthenticators();"
          }
        ]
      },
      "post": {
        "tags": [
          "Options"
        ],
        "summary": "Configure an external provider",
        "description": "Configures a new external provider that end-users can authenticate with.",
        "operationId": "CreateExternalProvider",
        "requestBody": {
          "description": "The request payload used to configure the external provider.",
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/CreateExternalProviderRequest"
              }
            }
          },
          "required": true
        },
        "responses": {
          "201": {
            "description": "The external provider was configured successfully",
            "headers": {
              "location": {
                "description": "Returns the location header",
                "schema": {
                  "type": "string",
                  "format": "uri"
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ExternalProvider"
                }
              }
            }
          },
          "400": {
            "description": "Bad Request",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                },
                "examples": {
                  "BadRequest": {
                    "$ref": "#/components/examples/BadRequest"
                  }
                }
              }
            }
          },
          "422": {
            "description": "Unprocessable Entity",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/KeyValidationProblemDetails"
                },
                "examples": {
                  "KeyValidationError": {
                    "$ref": "#/components/examples/KeyValidationError"
                  }
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized"
          },
          "403": {
            "description": "Forbidden"
          }
        },
        "security": [
          {
            "API-Key": [ ]
          }
        ],
        "x-codeSamples": [
          {
            "lang": "csharp",
            "label": "MonoCloud .NET SDK",
            "source": "using MonoCloud.Management;\nusing MonoCloud.Management.Models;\nusing MonoCloud.Management.Core.Base;\n\nvar apiClient = new MonoCloudManagementClient(new MonoCloudConfig(\"<your-domain>\", \"[[API-Key]]\"));\n\n\nvar requestBody = new CreateExternalProviderRequest\n  {\n    Name = \"acme\",\n    Authenticator = ExternalAuthenticators.CustomEnterprise,\n    DisplayName = \"Sign in with Acme\",\n    Icon = \"https://cdn.acme.com/icons/sso.svg\",\n    EnableSignIn = true,\n    EnableSignUp = true,\n    ShowOnLoginPage = true,\n    Credentials = new CreateExternalProviderCredentialsRequest\n    {\n      ClientId = \"Lkidgf845hKHrfwehf_jgf\",\n      ClientSecret = \"JJfgi4597fs9hkmkdfrk_jfhh4uuNBFl\",\n      AppleTeamId = \"kjGD8745hasd\",\n      AppleKeyId = \"styfderhrwe456\",\n    },\n    Connection = new CreateExternalProviderConnectionRequest\n    {\n      DiscoveryUrl = \"https://sso.acme.com/.well-known/openid-configuration\",\n      PkceMode = OidcPkceMode.Auto,\n    },\n    Scopes = new List<string>\n    {\n      \"openid\",\n      \"profile\",\n      \"email\",\n    },\n    ClaimMappings = new Dictionary<string, object>\n    {\n      {\n        \"email\", \"mail\"\n      },\n      {\n        \"name\", \"displayName\"\n      },\n    },\n    AuthorizationParameters = new Dictionary<string, object>\n    {\n      {\n        \"login_hint\", \"$login_hint\"\n      },\n      {\n        \"prompt\", \"consent\"\n      },\n    },\n    TrustEmail = TrustIdentifierModes.AsProvided,\n    TrustPhone = TrustIdentifierModes.AsProvided,\n    SyncUserProfileAlways = true,\n    SyncIdpClaimsAlways = true,\n    HomeRealmDomains = new List<string>\n    {\n      \"acme.com\",\n      \"acme.io\",\n    },\n    Priority = 0,\n  };\n\n\nvar result = await apiClient.Options.CreateExternalProviderAsync(requestBody);"
          },
          {
            "lang": "javascript",
            "label": "MonoCloud Javascript SDK",
            "source": "import { MonoCloudManagementClient } from '@monocloud/management';\n\nconst apiClient = MonoCloudManagementClient.init({ domain: '<your-domain>', apiKey: '[[API-Key]]' });\n\nconst requestBody = {\n  name: 'acme',\n  authenticator: 'custom_enterprise',\n  display_name: 'Sign in with Acme',\n  icon: 'https://cdn.acme.com/icons/sso.svg',\n  enable_sign_in: true,\n  enable_sign_up: true,\n  show_on_login_page: true,\n  credentials: {\n    client_id: 'Lkidgf845hKHrfwehf_jgf',\n    client_secret: 'JJfgi4597fs9hkmkdfrk_jfhh4uuNBFl',\n    apple_team_id: 'kjGD8745hasd',\n    apple_key_id: 'styfderhrwe456'\n  },\n  connection: {\n    discovery_url: 'https://sso.acme.com/.well-known/openid-configuration',\n    pkce_mode: 'auto'\n  },\n  scopes: [\n    'openid',\n    'profile',\n    'email'\n  ],\n  claim_mappings: {\n    email: 'mail',\n    name: 'displayName'\n  },\n  authorization_parameters: {\n    login_hint: '$login_hint',\n    prompt: 'consent'\n  },\n  trust_email: 'as_provided',\n  trust_phone: 'as_provided',\n  sync_user_profile_always: true,\n  sync_idp_claims_always: true,\n  home_realm_domains: [\n    'acme.com',\n    'acme.io'\n  ],\n  priority: 0\n};\n\nconst result = apiClient.options.createExternalProvider(requestBody);"
          }
        ]
      }
    },
    "/options/authentication/external/{provider_name}": {
      "get": {
        "tags": [
          "Options"
        ],
        "summary": "Retrieve an external provider",
        "description": "Retrieves detailed information for the specified external provider.",
        "operationId": "FindExternalProvider",
        "parameters": [
          {
            "name": "provider_name",
            "in": "path",
            "description": "The name of the external provider.",
            "required": true,
            "schema": {
              "type": "string"
            },
            "example": "google_corp"
          }
        ],
        "responses": {
          "200": {
            "description": "The external provider was retrieved successfully",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ExternalProvider"
                }
              }
            }
          },
          "404": {
            "description": "Not Found",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                },
                "examples": {
                  "NotFound": {
                    "$ref": "#/components/examples/NotFound"
                  }
                }
              }
            }
          },
          "422": {
            "description": "Unprocessable Entity",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/KeyValidationProblemDetails"
                },
                "examples": {
                  "KeyValidationError": {
                    "$ref": "#/components/examples/KeyValidationError"
                  }
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized"
          },
          "403": {
            "description": "Forbidden"
          }
        },
        "security": [
          {
            "API-Key": [ ]
          }
        ],
        "x-codeSamples": [
          {
            "lang": "csharp",
            "label": "MonoCloud .NET SDK",
            "source": "using MonoCloud.Management;\nusing MonoCloud.Management.Core.Base;\n\nvar apiClient = new MonoCloudManagementClient(new MonoCloudConfig(\"<your-domain>\", \"[[API-Key]]\"));\n\n\nvar providerName = \"google_corp\";\n\n\nvar result = await apiClient.Options.FindExternalProviderAsync(providerName);"
          },
          {
            "lang": "javascript",
            "label": "MonoCloud Javascript SDK",
            "source": "import { MonoCloudManagementClient } from '@monocloud/management';\n\nconst apiClient = MonoCloudManagementClient.init({ domain: '<your-domain>', apiKey: '[[API-Key]]' });\n\nconst providerName = 'google_corp';\n\nconst result = apiClient.options.findExternalProvider(providerName);"
          }
        ]
      },
      "patch": {
        "tags": [
          "Options"
        ],
        "summary": "Update an external provider",
        "description": "Applies a partial update to the specified external provider. Only fields included in the request are updated.",
        "operationId": "PatchExternalProvider",
        "parameters": [
          {
            "name": "provider_name",
            "in": "path",
            "description": "The name of the external provider.",
            "required": true,
            "schema": {
              "type": "string"
            },
            "example": "google_corp"
          }
        ],
        "requestBody": {
          "description": "The request payload used to update the external provider.",
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/PatchExternalProviderRequest"
              }
            }
          },
          "required": true
        },
        "responses": {
          "200": {
            "description": "The external provider was updated successfully",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ExternalProvider"
                }
              }
            }
          },
          "400": {
            "description": "Bad Request",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                },
                "examples": {
                  "BadRequest": {
                    "$ref": "#/components/examples/BadRequest"
                  }
                }
              }
            }
          },
          "404": {
            "description": "Not Found",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                },
                "examples": {
                  "NotFound": {
                    "$ref": "#/components/examples/NotFound"
                  }
                }
              }
            }
          },
          "422": {
            "description": "Unprocessable Entity",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/KeyValidationProblemDetails"
                },
                "examples": {
                  "KeyValidationError": {
                    "$ref": "#/components/examples/KeyValidationError"
                  }
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized"
          },
          "403": {
            "description": "Forbidden"
          }
        },
        "security": [
          {
            "API-Key": [ ]
          }
        ],
        "x-codeSamples": [
          {
            "lang": "csharp",
            "label": "MonoCloud .NET SDK",
            "source": "using MonoCloud.Management;\nusing MonoCloud.Management.Models;\nusing MonoCloud.Management.Core.Base;\n\nvar apiClient = new MonoCloudManagementClient(new MonoCloudConfig(\"<your-domain>\", \"[[API-Key]]\"));\n\n\nvar providerName = \"google_corp\";\n\nvar requestBody = new PatchExternalProviderRequest\n  {\n    DisplayName = \"Sign in with Acme\",\n    Icon = \"https://cdn.example.com/icons/acme.svg\",\n    EnableSignIn = true,\n    EnableSignUp = true,\n    ShowOnLoginPage = true,\n    Credentials = new PatchExternalProviderCredentialsRequest\n    {\n      ClientId = \"Lkidgf845hKHrfwehf_jgf\",\n      ClientSecret = \"JJfgi4597fs9hkmkdfrk_jfhh4uuNBFl\",\n      AppleTeamId = \"kjGD8745hasd\",\n      AppleKeyId = \"styfderhrwe456\",\n    },\n    Connection = new PatchExternalProviderConnectionRequest\n    {\n      DiscoveryUrl = \"https://sso.acme.com/.well-known/openid-configuration\",\n      PkceMode = OidcPkceMode.Auto,\n    },\n    Scopes = new List<string>\n    {\n      \"profile\",\n      \"email\",\n      \"phone\",\n    },\n    ClaimMappings = new Dictionary<string, object>\n    {\n      {\n        \"email\", \"mail\"\n      },\n      {\n        \"name\", \"displayName\"\n      },\n    },\n    AuthorizationParameters = new Dictionary<string, object>\n    {\n      {\n        \"login_hint\", \"$login_hint\"\n      },\n      {\n        \"prompt\", \"consent\"\n      },\n    },\n    HomeRealmDomains = new List<string>\n    {\n      \"example.com\",\n      \"acme.io\",\n    },\n    TrustEmail = TrustIdentifierModes.AsProvided,\n    TrustPhone = TrustIdentifierModes.AsProvided,\n    SyncUserProfileAlways = true,\n    SyncIdpClaimsAlways = true,\n    Priority = 0,\n  };\n\n\nvar result = await apiClient.Options.PatchExternalProviderAsync(providerName, requestBody);"
          },
          {
            "lang": "javascript",
            "label": "MonoCloud Javascript SDK",
            "source": "import { MonoCloudManagementClient } from '@monocloud/management';\n\nconst apiClient = MonoCloudManagementClient.init({ domain: '<your-domain>', apiKey: '[[API-Key]]' });\n\nconst providerName = 'google_corp';\n\nconst requestBody = {\n  display_name: 'Sign in with Acme',\n  icon: 'https://cdn.example.com/icons/acme.svg',\n  enable_sign_in: true,\n  enable_sign_up: true,\n  show_on_login_page: true,\n  credentials: {\n    client_id: 'Lkidgf845hKHrfwehf_jgf',\n    client_secret: 'JJfgi4597fs9hkmkdfrk_jfhh4uuNBFl',\n    apple_team_id: 'kjGD8745hasd',\n    apple_key_id: 'styfderhrwe456'\n  },\n  connection: {\n    discovery_url: 'https://sso.acme.com/.well-known/openid-configuration',\n    pkce_mode: 'auto'\n  },\n  scopes: [\n    'profile',\n    'email',\n    'phone'\n  ],\n  claim_mappings: {\n    email: 'mail',\n    name: 'displayName'\n  },\n  authorization_parameters: {\n    login_hint: '$login_hint',\n    prompt: 'consent'\n  },\n  home_realm_domains: [\n    'example.com',\n    'acme.io'\n  ],\n  trust_email: 'as_provided',\n  trust_phone: 'as_provided',\n  sync_user_profile_always: true,\n  sync_idp_claims_always: true,\n  priority: 0\n};\n\nconst result = apiClient.options.patchExternalProvider(providerName, requestBody);"
          }
        ]
      },
      "delete": {
        "tags": [
          "Options"
        ],
        "summary": "Delete an external provider",
        "description": "Permanently deletes the specified external provider.\n>[!warning]\n> This operation is irreversible.",
        "operationId": "DeleteExternalProvider",
        "parameters": [
          {
            "name": "provider_name",
            "in": "path",
            "description": "The name of the external provider.",
            "required": true,
            "schema": {
              "type": "string"
            },
            "example": "google_corp"
          }
        ],
        "responses": {
          "204": {
            "description": "The external provider was deleted successfully"
          },
          "404": {
            "description": "Not Found",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                },
                "examples": {
                  "NotFound": {
                    "$ref": "#/components/examples/NotFound"
                  }
                }
              }
            }
          },
          "422": {
            "description": "Unprocessable Entity",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/KeyValidationProblemDetails"
                },
                "examples": {
                  "KeyValidationError": {
                    "$ref": "#/components/examples/KeyValidationError"
                  }
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized"
          },
          "403": {
            "description": "Forbidden"
          }
        },
        "security": [
          {
            "API-Key": [ ]
          }
        ],
        "x-codeSamples": [
          {
            "lang": "csharp",
            "label": "MonoCloud .NET SDK",
            "source": "using MonoCloud.Management;\nusing MonoCloud.Management.Core.Base;\n\nvar apiClient = new MonoCloudManagementClient(new MonoCloudConfig(\"<your-domain>\", \"[[API-Key]]\"));\n\n\nvar providerName = \"google_corp\";\n\n\nvar result = await apiClient.Options.DeleteExternalProviderAsync(providerName);"
          },
          {
            "lang": "javascript",
            "label": "MonoCloud Javascript SDK",
            "source": "import { MonoCloudManagementClient } from '@monocloud/management';\n\nconst apiClient = MonoCloudManagementClient.init({ domain: '<your-domain>', apiKey: '[[API-Key]]' });\n\nconst providerName = 'google_corp';\n\nconst result = apiClient.options.deleteExternalProvider(providerName);"
          }
        ]
      }
    },
    "/branding/page": {
      "get": {
        "tags": [
          "Branding"
        ],
        "summary": "Retrieve page branding options",
        "description": "Retrieves the current branding configuration for hosted pages, including colors and watermark settings.",
        "operationId": "FindPageBrandingOptions",
        "responses": {
          "200": {
            "description": "The branding page options were retrieved successfully",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/PageBrandingOptions"
                }
              }
            }
          },
          "404": {
            "description": "Not Found",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                },
                "examples": {
                  "NotFound": {
                    "$ref": "#/components/examples/NotFound"
                  }
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized"
          },
          "403": {
            "description": "Forbidden"
          }
        },
        "security": [
          {
            "API-Key": [ ]
          }
        ],
        "x-codeSamples": [
          {
            "lang": "csharp",
            "label": "MonoCloud .NET SDK",
            "source": "using MonoCloud.Management;\nusing MonoCloud.Management.Core.Base;\n\nvar apiClient = new MonoCloudManagementClient(new MonoCloudConfig(\"<your-domain>\", \"[[API-Key]]\"));\n\n\n\nvar result = await apiClient.Branding.FindPageBrandingOptionsAsync();"
          },
          {
            "lang": "javascript",
            "label": "MonoCloud Javascript SDK",
            "source": "import { MonoCloudManagementClient } from '@monocloud/management';\n\nconst apiClient = MonoCloudManagementClient.init({ domain: '<your-domain>', apiKey: '[[API-Key]]' });\n\nconst result = apiClient.branding.findPageBrandingOptions();"
          }
        ]
      },
      "patch": {
        "tags": [
          "Branding"
        ],
        "summary": "Update page branding options",
        "description": "Applies a partial update to the branding configuration for hosted pages, including colors and watermark settings. Only fields included in the request are updated.",
        "operationId": "PatchPageBrandingOptions",
        "requestBody": {
          "description": "The request payload used to update the page branding options.",
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/PatchPageBrandingOptionsRequest"
              }
            }
          },
          "required": true
        },
        "responses": {
          "200": {
            "description": "The branding page options were updated successfully",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/PageBrandingOptions"
                }
              }
            }
          },
          "400": {
            "description": "Bad Request",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                },
                "examples": {
                  "BadRequest": {
                    "$ref": "#/components/examples/BadRequest"
                  }
                }
              }
            }
          },
          "404": {
            "description": "Not Found",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                },
                "examples": {
                  "NotFound": {
                    "$ref": "#/components/examples/NotFound"
                  }
                }
              }
            }
          },
          "402": {
            "description": "Payment Required",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                },
                "examples": {
                  "PaymentRequired": {
                    "$ref": "#/components/examples/PaymentRequired"
                  }
                }
              }
            }
          },
          "422": {
            "description": "Unprocessable Entity",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/KeyValidationProblemDetails"
                },
                "examples": {
                  "KeyValidationError": {
                    "$ref": "#/components/examples/KeyValidationError"
                  }
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized"
          },
          "403": {
            "description": "Forbidden"
          }
        },
        "security": [
          {
            "API-Key": [ ]
          }
        ],
        "x-codeSamples": [
          {
            "lang": "csharp",
            "label": "MonoCloud .NET SDK",
            "source": "using MonoCloud.Management;\nusing MonoCloud.Management.Models;\nusing MonoCloud.Management.Core.Base;\n\nvar apiClient = new MonoCloudManagementClient(new MonoCloudConfig(\"<your-domain>\", \"[[API-Key]]\"));\n\n\nvar requestBody = new PatchPageBrandingOptionsRequest\n  {\n    ShowWatermark = true,\n    PrimaryColor = \"#0D45FE\",\n    BackgroundColor = \"#F8F8F8\",\n  };\n\n\nvar result = await apiClient.Branding.PatchPageBrandingOptionsAsync(requestBody);"
          },
          {
            "lang": "javascript",
            "label": "MonoCloud Javascript SDK",
            "source": "import { MonoCloudManagementClient } from '@monocloud/management';\n\nconst apiClient = MonoCloudManagementClient.init({ domain: '<your-domain>', apiKey: '[[API-Key]]' });\n\nconst requestBody = {\n  show_watermark: true,\n  primary_color: '#0D45FE',\n  background_color: '#F8F8F8'\n};\n\nconst result = apiClient.branding.patchPageBrandingOptions(requestBody);"
          }
        ]
      }
    },
    "/branding/email": {
      "get": {
        "tags": [
          "Branding"
        ],
        "summary": "Retrieve email branding options",
        "description": "Retrieves the current email branding configuration, including subjects and delivery behavior for system-generated emails.",
        "operationId": "FindEmailBrandingOptions",
        "responses": {
          "200": {
            "description": "The branding email options were retrieved successfully",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/EmailBrandingOptions"
                }
              }
            }
          },
          "404": {
            "description": "Not Found",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                },
                "examples": {
                  "NotFound": {
                    "$ref": "#/components/examples/NotFound"
                  }
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized"
          },
          "403": {
            "description": "Forbidden"
          }
        },
        "security": [
          {
            "API-Key": [ ]
          }
        ],
        "x-codeSamples": [
          {
            "lang": "csharp",
            "label": "MonoCloud .NET SDK",
            "source": "using MonoCloud.Management;\nusing MonoCloud.Management.Core.Base;\n\nvar apiClient = new MonoCloudManagementClient(new MonoCloudConfig(\"<your-domain>\", \"[[API-Key]]\"));\n\n\n\nvar result = await apiClient.Branding.FindEmailBrandingOptionsAsync();"
          },
          {
            "lang": "javascript",
            "label": "MonoCloud Javascript SDK",
            "source": "import { MonoCloudManagementClient } from '@monocloud/management';\n\nconst apiClient = MonoCloudManagementClient.init({ domain: '<your-domain>', apiKey: '[[API-Key]]' });\n\nconst result = apiClient.branding.findEmailBrandingOptions();"
          }
        ]
      },
      "patch": {
        "tags": [
          "Branding"
        ],
        "summary": "Update email branding options",
        "description": "Applies a partial update to the email branding configuration, including subjects and delivery behavior. Only fields included in the request are updated.",
        "operationId": "PatchEmailBrandingOptions",
        "requestBody": {
          "description": "The request payload used to update the email branding options.",
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/PatchEmailBrandingOptionsRequest"
              }
            }
          },
          "required": true
        },
        "responses": {
          "200": {
            "description": "The branding email options were updated successfully",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/EmailBrandingOptions"
                }
              }
            }
          },
          "400": {
            "description": "Bad Request",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                },
                "examples": {
                  "BadRequest": {
                    "$ref": "#/components/examples/BadRequest"
                  }
                }
              }
            }
          },
          "404": {
            "description": "Not Found",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                },
                "examples": {
                  "NotFound": {
                    "$ref": "#/components/examples/NotFound"
                  }
                }
              }
            }
          },
          "422": {
            "description": "Unprocessable Entity",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/KeyValidationProblemDetails"
                },
                "examples": {
                  "KeyValidationError": {
                    "$ref": "#/components/examples/KeyValidationError"
                  }
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized"
          },
          "403": {
            "description": "Forbidden"
          }
        },
        "security": [
          {
            "API-Key": [ ]
          }
        ],
        "x-codeSamples": [
          {
            "lang": "csharp",
            "label": "MonoCloud .NET SDK",
            "source": "using MonoCloud.Management;\nusing MonoCloud.Management.Models;\nusing MonoCloud.Management.Core.Base;\n\nvar apiClient = new MonoCloudManagementClient(new MonoCloudConfig(\"<your-domain>\", \"[[API-Key]]\"));\n\n\nvar requestBody = new PatchEmailBrandingOptionsRequest\n  {\n    Welcome = new PatchCustomEmailBrandingOptionsRequest\n    {\n      SendNotifications = false,\n      Subject = \"Welcome to {{ client.name }}\",\n    },\n    UserBlocked = new PatchCustomEmailBrandingOptionsRequest\n    {\n      SendNotifications = false,\n      Subject = \"Welcome to {{ client.name }}\",\n    },\n    SignInCode = new PatchCustomEmailBrandingOptionsRequest\n    {\n      SendNotifications = false,\n      Subject = \"Welcome to {{ client.name }}\",\n    },\n    SignInLink = new PatchCustomEmailBrandingOptionsRequest\n    {\n      SendNotifications = false,\n      Subject = \"Welcome to {{ client.name }}\",\n    },\n    SignInCodeAndLink = new PatchCustomEmailBrandingOptionsRequest\n    {\n      SendNotifications = false,\n      Subject = \"Welcome to {{ client.name }}\",\n    },\n    VerificationCode = new PatchCustomEmailBrandingOptionsRequest\n    {\n      SendNotifications = false,\n      Subject = \"Welcome to {{ client.name }}\",\n    },\n    VerificationLink = new PatchCustomEmailBrandingOptionsRequest\n    {\n      SendNotifications = false,\n      Subject = \"Welcome to {{ client.name }}\",\n    },\n    VerificationCodeAndLink = new PatchCustomEmailBrandingOptionsRequest\n    {\n      SendNotifications = false,\n      Subject = \"Welcome to {{ client.name }}\",\n    },\n    PasswordResetCode = new PatchCustomEmailBrandingOptionsRequest\n    {\n      SendNotifications = false,\n      Subject = \"Welcome to {{ client.name }}\",\n    },\n    PasswordResetLink = new PatchCustomEmailBrandingOptionsRequest\n    {\n      SendNotifications = false,\n      Subject = \"Welcome to {{ client.name }}\",\n    },\n    PasswordResetCodeAndLink = new PatchCustomEmailBrandingOptionsRequest\n    {\n      SendNotifications = false,\n      Subject = \"Welcome to {{ client.name }}\",\n    },\n    PasswordUpdated = new PatchCustomEmailBrandingOptionsRequest\n    {\n      SendNotifications = false,\n      Subject = \"Welcome to {{ client.name }}\",\n    },\n  };\n\n\nvar result = await apiClient.Branding.PatchEmailBrandingOptionsAsync(requestBody);"
          },
          {
            "lang": "javascript",
            "label": "MonoCloud Javascript SDK",
            "source": "import { MonoCloudManagementClient } from '@monocloud/management';\n\nconst apiClient = MonoCloudManagementClient.init({ domain: '<your-domain>', apiKey: '[[API-Key]]' });\n\nconst requestBody = {\n  welcome: {\n    send_notifications: false,\n    subject: 'Welcome to {{ client.name }}'\n  },\n  user_blocked: {\n    send_notifications: false,\n    subject: 'Welcome to {{ client.name }}'\n  },\n  sign_in_code: {\n    send_notifications: false,\n    subject: 'Welcome to {{ client.name }}'\n  },\n  sign_in_link: {\n    send_notifications: false,\n    subject: 'Welcome to {{ client.name }}'\n  },\n  sign_in_code_and_link: {\n    send_notifications: false,\n    subject: 'Welcome to {{ client.name }}'\n  },\n  verification_code: {\n    send_notifications: false,\n    subject: 'Welcome to {{ client.name }}'\n  },\n  verification_link: {\n    send_notifications: false,\n    subject: 'Welcome to {{ client.name }}'\n  },\n  verification_code_and_link: {\n    send_notifications: false,\n    subject: 'Welcome to {{ client.name }}'\n  },\n  password_reset_code: {\n    send_notifications: false,\n    subject: 'Welcome to {{ client.name }}'\n  },\n  password_reset_link: {\n    send_notifications: false,\n    subject: 'Welcome to {{ client.name }}'\n  },\n  password_reset_code_and_link: {\n    send_notifications: false,\n    subject: 'Welcome to {{ client.name }}'\n  },\n  password_updated: {\n    send_notifications: false,\n    subject: 'Welcome to {{ client.name }}'\n  }\n};\n\nconst result = apiClient.branding.patchEmailBrandingOptions(requestBody);"
          }
        ]
      }
    },
    "/branding/sms": {
      "get": {
        "tags": [
          "Branding"
        ],
        "summary": "Retrieve SMS branding options",
        "description": "Retrieves the current SMS message templates used for system-generated notifications.",
        "operationId": "FindSmsBrandingOptions",
        "responses": {
          "200": {
            "description": "The branding SMS options were retrieved successfully",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/SmsBrandingOptions"
                }
              }
            }
          },
          "404": {
            "description": "Not Found",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                },
                "examples": {
                  "NotFound": {
                    "$ref": "#/components/examples/NotFound"
                  }
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized"
          },
          "403": {
            "description": "Forbidden"
          }
        },
        "security": [
          {
            "API-Key": [ ]
          }
        ],
        "x-codeSamples": [
          {
            "lang": "csharp",
            "label": "MonoCloud .NET SDK",
            "source": "using MonoCloud.Management;\nusing MonoCloud.Management.Core.Base;\n\nvar apiClient = new MonoCloudManagementClient(new MonoCloudConfig(\"<your-domain>\", \"[[API-Key]]\"));\n\n\n\nvar result = await apiClient.Branding.FindSmsBrandingOptionsAsync();"
          },
          {
            "lang": "javascript",
            "label": "MonoCloud Javascript SDK",
            "source": "import { MonoCloudManagementClient } from '@monocloud/management';\n\nconst apiClient = MonoCloudManagementClient.init({ domain: '<your-domain>', apiKey: '[[API-Key]]' });\n\nconst result = apiClient.branding.findSmsBrandingOptions();"
          }
        ]
      },
      "patch": {
        "tags": [
          "Branding"
        ],
        "summary": "Update SMS branding options",
        "description": "Applies a partial update to the SMS message templates used for system-generated notifications. Only fields included in the request are updated.",
        "operationId": "PatchSmsBrandingOptions",
        "requestBody": {
          "description": "The request payload used to update the SMS branding options.",
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/PatchSmsBrandingOptionsRequest"
              }
            }
          },
          "required": true
        },
        "responses": {
          "200": {
            "description": "The branding SMS options were updated successfully",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/SmsBrandingOptions"
                }
              }
            }
          },
          "400": {
            "description": "Bad Request",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                },
                "examples": {
                  "BadRequest": {
                    "$ref": "#/components/examples/BadRequest"
                  }
                }
              }
            }
          },
          "404": {
            "description": "Not Found",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                },
                "examples": {
                  "NotFound": {
                    "$ref": "#/components/examples/NotFound"
                  }
                }
              }
            }
          },
          "422": {
            "description": "Unprocessable Entity",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/KeyValidationProblemDetails"
                },
                "examples": {
                  "KeyValidationError": {
                    "$ref": "#/components/examples/KeyValidationError"
                  }
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized"
          },
          "403": {
            "description": "Forbidden"
          }
        },
        "security": [
          {
            "API-Key": [ ]
          }
        ],
        "x-codeSamples": [
          {
            "lang": "csharp",
            "label": "MonoCloud .NET SDK",
            "source": "using MonoCloud.Management;\nusing MonoCloud.Management.Models;\nusing MonoCloud.Management.Core.Base;\n\nvar apiClient = new MonoCloudManagementClient(new MonoCloudConfig(\"<your-domain>\", \"[[API-Key]]\"));\n\n\nvar requestBody = new PatchSmsBrandingOptionsRequest\n  {\n    SignIn = new PatchCustomSmsBrandingOptionsRequest\n    {\n      Template = \"Your code for {{ client.name }} is {{ code }}\",\n    },\n    Verification = new PatchCustomSmsBrandingOptionsRequest\n    {\n      Template = \"Your code for {{ client.name }} is {{ code }}\",\n    },\n    PasswordReset = new PatchCustomSmsBrandingOptionsRequest\n    {\n      Template = \"Your code for {{ client.name }} is {{ code }}\",\n    },\n  };\n\n\nvar result = await apiClient.Branding.PatchSmsBrandingOptionsAsync(requestBody);"
          },
          {
            "lang": "javascript",
            "label": "MonoCloud Javascript SDK",
            "source": "import { MonoCloudManagementClient } from '@monocloud/management';\n\nconst apiClient = MonoCloudManagementClient.init({ domain: '<your-domain>', apiKey: '[[API-Key]]' });\n\nconst requestBody = {\n  sign_in: {\n    template: 'Your code for {{ client.name }} is {{ code }}'\n  },\n  verification: {\n    template: 'Your code for {{ client.name }} is {{ code }}'\n  },\n  password_reset: {\n    template: 'Your code for {{ client.name }} is {{ code }}'\n  }\n};\n\nconst result = apiClient.branding.patchSmsBrandingOptions(requestBody);"
          }
        ]
      }
    },
    "/logs": {
      "get": {
        "tags": [
          "Logs"
        ],
        "summary": "List logs",
        "description": "Retrieves a paginated list of system logs. Optional query parameters allow searching, filtering, and sorting the results.",
        "operationId": "GetAllLogs",
        "parameters": [
          {
            "name": "page",
            "in": "query",
            "description": "The page number to retrieve.",
            "schema": {
              "minimum": 1,
              "type": "integer",
              "format": "int32",
              "default": 1
            },
            "example": 1
          },
          {
            "name": "size",
            "in": "query",
            "description": "The number of logs to return per page.",
            "schema": {
              "maximum": 50,
              "minimum": 1,
              "type": "integer",
              "format": "int32",
              "default": 10
            },
            "example": 10
          },
          {
            "name": "filter",
            "in": "query",
            "description": "Optional Lucene-style filter expression used to search by attributes.",
            "schema": {
              "type": "string"
            },
            "example": "authentication"
          },
          {
            "name": "sort",
            "in": "query",
            "description": "Sort expression in the format `field:direction`, where direction is `1` for ascending or `-1` for descending. Supported fields include - `time_stamp`, `category`, `code`, `type`, and `name`",
            "schema": {
              "type": "string"
            },
            "example": "category:1"
          }
        ],
        "responses": {
          "200": {
            "description": "The log entries were retrieved successfully",
            "headers": {
              "x-Pagination": {
                "description": "Returns the x-Pagination header",
                "schema": {
                  "$ref": "#/components/schemas/PaginationHeader"
                }
              },
              "x-monocloud-log-window": {
                "description": "Returns the x-monocloud-log-window header",
                "schema": {
                  "type": "string"
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "type": "array",
                  "items": {
                    "$ref": "#/components/schemas/Log"
                  }
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized"
          },
          "403": {
            "description": "Forbidden"
          }
        },
        "security": [
          {
            "API-Key": [ ]
          }
        ],
        "x-codeSamples": [
          {
            "lang": "csharp",
            "label": "MonoCloud .NET SDK",
            "source": "using MonoCloud.Management;\nusing MonoCloud.Management.Core.Base;\n\nvar apiClient = new MonoCloudManagementClient(new MonoCloudConfig(\"<your-domain>\", \"[[API-Key]]\"));\n\n\nvar page = 1;\n\nvar size = 10;\n\nvar filter = \"authentication\";\n\nvar sort = \"category:1\";\n\n\nvar result = await apiClient.Logs.GetAllLogsAsync(page, size, filter, sort);"
          },
          {
            "lang": "javascript",
            "label": "MonoCloud Javascript SDK",
            "source": "import { MonoCloudManagementClient } from '@monocloud/management';\n\nconst apiClient = MonoCloudManagementClient.init({ domain: '<your-domain>', apiKey: '[[API-Key]]' });\n\nconst page = 1;\n\nconst size = 10;\n\nconst filter = 'authentication';\n\nconst sort = 'category:1';\n\nconst result = apiClient.logs.getAllLogs(page, size, filter, sort);"
          }
        ]
      }
    },
    "/logs/{log_id}": {
      "get": {
        "tags": [
          "Logs"
        ],
        "summary": "Retrieve a log entry",
        "description": "Retrieves detailed information for the specified log entry.",
        "operationId": "FindLogById",
        "parameters": [
          {
            "name": "log_id",
            "in": "path",
            "description": "The unique identifier of the log entry.",
            "required": true,
            "schema": {
              "type": "string",
              "format": "uuid"
            },
            "example": "4d86d918-069c-4f3a-b82c-47a61bdc903b"
          }
        ],
        "responses": {
          "200": {
            "description": "The log entry was retrieved successfully",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Log"
                }
              }
            }
          },
          "404": {
            "description": "Not Found",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                },
                "examples": {
                  "NotFound": {
                    "$ref": "#/components/examples/NotFound"
                  }
                }
              }
            }
          },
          "422": {
            "description": "Unprocessable Entity",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/KeyValidationProblemDetails"
                },
                "examples": {
                  "KeyValidationError": {
                    "$ref": "#/components/examples/KeyValidationError"
                  }
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized"
          },
          "403": {
            "description": "Forbidden"
          }
        },
        "security": [
          {
            "API-Key": [ ]
          }
        ],
        "x-codeSamples": [
          {
            "lang": "csharp",
            "label": "MonoCloud .NET SDK",
            "source": "using MonoCloud.Management;\nusing MonoCloud.Management.Core.Base;\n\nvar apiClient = new MonoCloudManagementClient(new MonoCloudConfig(\"<your-domain>\", \"[[API-Key]]\"));\n\n\nvar logId = Guid.Parse(\"4d86d918-069c-4f3a-b82c-47a61bdc903b\");\n\n\nvar result = await apiClient.Logs.FindLogByIdAsync(logId);"
          },
          {
            "lang": "javascript",
            "label": "MonoCloud Javascript SDK",
            "source": "import { MonoCloudManagementClient } from '@monocloud/management';\n\nconst apiClient = MonoCloudManagementClient.init({ domain: '<your-domain>', apiKey: '[[API-Key]]' });\n\nconst logId = '4d86d918-069c-4f3a-b82c-47a61bdc903b';\n\nconst result = apiClient.logs.findLogById(logId);"
          }
        ]
      }
    },
    "/network_zones": {
      "get": {
        "tags": [
          "Network Zones"
        ],
        "summary": "List network zones",
        "description": "Retrieves a paginated list of network zones across all types (IP and regional). Each item is discriminated by its `type` field. Optional query parameters may be used to search, filter, and sort the results.",
        "operationId": "GetAllNetworkZones",
        "parameters": [
          {
            "name": "page",
            "in": "query",
            "description": "The page number to retrieve.",
            "schema": {
              "minimum": 1,
              "type": "integer",
              "format": "int32",
              "default": 1
            },
            "example": 1
          },
          {
            "name": "size",
            "in": "query",
            "description": "The number of zones to return per page.",
            "schema": {
              "maximum": 50,
              "minimum": 1,
              "type": "integer",
              "format": "int32",
              "default": 10
            },
            "example": 10
          },
          {
            "name": "filter",
            "in": "query",
            "description": "Optional Lucene-style filter expression used to search by attributes.",
            "schema": {
              "type": "string"
            },
            "example": "api"
          },
          {
            "name": "sort",
            "in": "query",
            "description": "Sort expression in the format `field:direction`, where direction is `1` for ascending or `-1` for descending. Supported fields include - `name`, `category`, `operator`, `type`, `creation_time` and `last_updated`",
            "schema": {
              "type": "string"
            },
            "example": "creation_time:1"
          }
        ],
        "responses": {
          "200": {
            "description": "The network zones were retrieved successfully",
            "headers": {
              "x-Pagination": {
                "description": "Returns the x-Pagination header",
                "schema": {
                  "$ref": "#/components/schemas/PaginationHeader"
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "type": "array",
                  "items": {
                    "$ref": "#/components/schemas/INetworkZone"
                  }
                },
                "examples": {
                  "ip": {
                    "summary": "IpNetworkZone",
                    "value": [
                      {
                        "id": "uSkOCE9ZEmYdWS7Kv223S",
                        "enabled": true,
                        "name": "Designation",
                        "description": "Location of the Company Headquarters",
                        "category": "trusted",
                        "creation_time": 1640975400,
                        "last_updated": 1640975400,
                        "operator": "in",
                        "type": "ip",
                        "ip_ranges": [
                          "156.3.59.5",
                          "2001:db8::/32"
                        ]
                      }
                    ]
                  },
                  "regional": {
                    "summary": "RegionalNetworkZone",
                    "value": [
                      {
                        "id": "uSkOCE9ZEmYdWS7Kv223S",
                        "enabled": true,
                        "name": "Designation",
                        "description": "Location of the Company Headquarters",
                        "category": "trusted",
                        "creation_time": 1640975400,
                        "last_updated": 1640975400,
                        "operator": "in",
                        "type": "regional",
                        "countries": [
                          "US",
                          "GB"
                        ]
                      }
                    ]
                  }
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized"
          },
          "403": {
            "description": "Forbidden"
          }
        },
        "security": [
          {
            "API-Key": [ ]
          }
        ],
        "x-codeSamples": [
          {
            "lang": "csharp",
            "label": "MonoCloud .NET SDK",
            "source": "using MonoCloud.Management;\nusing MonoCloud.Management.Core.Base;\n\nvar apiClient = new MonoCloudManagementClient(new MonoCloudConfig(\"<your-domain>\", \"[[API-Key]]\"));\n\n\nvar page = 1;\n\nvar size = 10;\n\nvar filter = \"api\";\n\nvar sort = \"creation_time:1\";\n\n\nvar result = await apiClient.NetworkZones.GetAllNetworkZonesAsync(page, size, filter, sort);"
          },
          {
            "lang": "javascript",
            "label": "MonoCloud Javascript SDK",
            "source": "import { MonoCloudManagementClient } from '@monocloud/management';\n\nconst apiClient = MonoCloudManagementClient.init({ domain: '<your-domain>', apiKey: '[[API-Key]]' });\n\nconst page = 1;\n\nconst size = 10;\n\nconst filter = 'api';\n\nconst sort = 'creation_time:1';\n\nconst result = apiClient.networkZones.getAllNetworkZones(page, size, filter, sort);"
          }
        ]
      }
    },
    "/network_zones/ip": {
      "post": {
        "tags": [
          "Network Zones"
        ],
        "summary": "Create an IP network zone",
        "description": "Creates a new IP network zone containing IP address ranges that can be referenced by policies to allow or restrict access.\n>[!note]\n> Access to this endpoint requires an active ScaleX subscription.",
        "operationId": "CreateIpNetworkZone",
        "requestBody": {
          "description": "The request payload used to create the IP network zone.",
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/CreateIpNetworkZoneRequest"
              }
            }
          },
          "required": true
        },
        "responses": {
          "201": {
            "description": "The IP network zone was created successfully",
            "headers": {
              "location": {
                "description": "Returns the location header",
                "schema": {
                  "type": "string",
                  "format": "uri"
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/IpNetworkZone"
                }
              }
            }
          },
          "400": {
            "description": "Bad Request",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                },
                "examples": {
                  "BadRequest": {
                    "$ref": "#/components/examples/BadRequest"
                  }
                }
              }
            }
          },
          "402": {
            "description": "Payment Required",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                },
                "examples": {
                  "PaymentRequired": {
                    "$ref": "#/components/examples/PaymentRequired"
                  }
                }
              }
            }
          },
          "422": {
            "description": "Unprocessable Entity",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/KeyValidationProblemDetails"
                },
                "examples": {
                  "KeyValidationError": {
                    "$ref": "#/components/examples/KeyValidationError"
                  }
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized"
          },
          "403": {
            "description": "Forbidden"
          }
        },
        "security": [
          {
            "API-Key": [ ]
          }
        ],
        "x-codeSamples": [
          {
            "lang": "csharp",
            "label": "MonoCloud .NET SDK",
            "source": "using MonoCloud.Management;\nusing MonoCloud.Management.Models;\nusing MonoCloud.Management.Core.Base;\n\nvar apiClient = new MonoCloudManagementClient(new MonoCloudConfig(\"<your-domain>\", \"[[API-Key]]\"));\n\n\nvar requestBody = new CreateIpNetworkZoneRequest\n  {\n    Enabled = true,\n    Name = \"Designation\",\n    Description = \"Location of the Company Headquarters\",\n    Category = NetworkZoneCategory.Trusted,\n    Operator = NetworkZoneOperator.NotIn,\n    IpRanges = new List<string>\n    {\n      \"156.3.59.5\",\n      \"2001:db8::/32\",\n    },\n  };\n\n\nvar result = await apiClient.NetworkZones.CreateIpNetworkZoneAsync(requestBody);"
          },
          {
            "lang": "javascript",
            "label": "MonoCloud Javascript SDK",
            "source": "import { MonoCloudManagementClient } from '@monocloud/management';\n\nconst apiClient = MonoCloudManagementClient.init({ domain: '<your-domain>', apiKey: '[[API-Key]]' });\n\nconst requestBody = {\n  enabled: true,\n  name: 'Designation',\n  description: 'Location of the Company Headquarters',\n  category: 'trusted',\n  operator: 'not_in',\n  ip_ranges: [\n    '156.3.59.5',\n    '2001:db8::/32'\n  ]\n};\n\nconst result = apiClient.networkZones.createIpNetworkZone(requestBody);"
          }
        ]
      }
    },
    "/network_zones/ip/{zone_id}": {
      "get": {
        "tags": [
          "Network Zones"
        ],
        "summary": "Retrieve an IP network zone",
        "description": "Retrieves detailed information for the specified IP network zone.",
        "operationId": "FindIpNetworkZoneById",
        "parameters": [
          {
            "name": "zone_id",
            "in": "path",
            "description": "The unique identifier of the IP network zone.",
            "required": true,
            "schema": {
              "type": "string"
            },
            "example": "uSkOCE9ZEmYdWS7Kv223S"
          }
        ],
        "responses": {
          "200": {
            "description": "The IP network zone was retrieved successfully",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/IpNetworkZone"
                }
              }
            }
          },
          "404": {
            "description": "Not Found",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                },
                "examples": {
                  "NotFound": {
                    "$ref": "#/components/examples/NotFound"
                  }
                }
              }
            }
          },
          "422": {
            "description": "Unprocessable Entity",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/KeyValidationProblemDetails"
                },
                "examples": {
                  "KeyValidationError": {
                    "$ref": "#/components/examples/KeyValidationError"
                  }
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized"
          },
          "403": {
            "description": "Forbidden"
          }
        },
        "security": [
          {
            "API-Key": [ ]
          }
        ],
        "x-codeSamples": [
          {
            "lang": "csharp",
            "label": "MonoCloud .NET SDK",
            "source": "using MonoCloud.Management;\nusing MonoCloud.Management.Core.Base;\n\nvar apiClient = new MonoCloudManagementClient(new MonoCloudConfig(\"<your-domain>\", \"[[API-Key]]\"));\n\n\nvar zoneId = \"uSkOCE9ZEmYdWS7Kv223S\";\n\n\nvar result = await apiClient.NetworkZones.FindIpNetworkZoneByIdAsync(zoneId);"
          },
          {
            "lang": "javascript",
            "label": "MonoCloud Javascript SDK",
            "source": "import { MonoCloudManagementClient } from '@monocloud/management';\n\nconst apiClient = MonoCloudManagementClient.init({ domain: '<your-domain>', apiKey: '[[API-Key]]' });\n\nconst zoneId = 'uSkOCE9ZEmYdWS7Kv223S';\n\nconst result = apiClient.networkZones.findIpNetworkZoneById(zoneId);"
          }
        ]
      },
      "patch": {
        "tags": [
          "Network Zones"
        ],
        "summary": "Update an IP network zone",
        "description": "Applies a partial update to the specified IP network zone. Only fields included in the request are updated.\n>[!note]\n> Access to this endpoint requires an active ScaleX subscription.",
        "operationId": "PatchIpNetworkZone",
        "parameters": [
          {
            "name": "zone_id",
            "in": "path",
            "description": "The unique identifier of the IP network zone.",
            "required": true,
            "schema": {
              "type": "string"
            },
            "example": "uSkOCE9ZEmYdWS7Kv223S"
          }
        ],
        "requestBody": {
          "description": "The request payload used to update an IP network zone.",
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/PatchIpNetworkZoneRequest"
              }
            }
          },
          "required": true
        },
        "responses": {
          "200": {
            "description": "The IP network zone was updated successfully",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/IpNetworkZone"
                }
              }
            }
          },
          "400": {
            "description": "Bad Request",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                },
                "examples": {
                  "BadRequest": {
                    "$ref": "#/components/examples/BadRequest"
                  }
                }
              }
            }
          },
          "404": {
            "description": "Not Found",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                },
                "examples": {
                  "NotFound": {
                    "$ref": "#/components/examples/NotFound"
                  }
                }
              }
            }
          },
          "402": {
            "description": "Payment Required",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                },
                "examples": {
                  "PaymentRequired": {
                    "$ref": "#/components/examples/PaymentRequired"
                  }
                }
              }
            }
          },
          "422": {
            "description": "Unprocessable Entity",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/KeyValidationProblemDetails"
                },
                "examples": {
                  "KeyValidationError": {
                    "$ref": "#/components/examples/KeyValidationError"
                  }
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized"
          },
          "403": {
            "description": "Forbidden"
          }
        },
        "security": [
          {
            "API-Key": [ ]
          }
        ],
        "x-codeSamples": [
          {
            "lang": "csharp",
            "label": "MonoCloud .NET SDK",
            "source": "using MonoCloud.Management;\nusing MonoCloud.Management.Models;\nusing MonoCloud.Management.Core.Base;\n\nvar apiClient = new MonoCloudManagementClient(new MonoCloudConfig(\"<your-domain>\", \"[[API-Key]]\"));\n\n\nvar zoneId = \"uSkOCE9ZEmYdWS7Kv223S\";\n\nvar requestBody = new PatchIpNetworkZoneRequest\n  {\n    Enabled = true,\n    Name = \"Designation\",\n    Description = \"Location of the Company Headquarters\",\n    Category = NetworkZoneCategory.Trusted,\n    Operator = NetworkZoneOperator.NotIn,\n    IpRanges = new List<string>\n    {\n      \"156.3.59.5\",\n      \"2001:db8::/32\",\n    },\n  };\n\n\nvar result = await apiClient.NetworkZones.PatchIpNetworkZoneAsync(zoneId, requestBody);"
          },
          {
            "lang": "javascript",
            "label": "MonoCloud Javascript SDK",
            "source": "import { MonoCloudManagementClient } from '@monocloud/management';\n\nconst apiClient = MonoCloudManagementClient.init({ domain: '<your-domain>', apiKey: '[[API-Key]]' });\n\nconst zoneId = 'uSkOCE9ZEmYdWS7Kv223S';\n\nconst requestBody = {\n  enabled: true,\n  name: 'Designation',\n  description: 'Location of the Company Headquarters',\n  category: 'trusted',\n  operator: 'not_in',\n  ip_ranges: [\n    '156.3.59.5',\n    '2001:db8::/32'\n  ]\n};\n\nconst result = apiClient.networkZones.patchIpNetworkZone(zoneId, requestBody);"
          }
        ]
      },
      "delete": {
        "tags": [
          "Network Zones"
        ],
        "summary": "Delete an IP network zone",
        "description": "Permanently deletes the specified IP network zone.\n>[!warning]\n> This operation is irreversible.",
        "operationId": "DeleteIpNetworkZone",
        "parameters": [
          {
            "name": "zone_id",
            "in": "path",
            "description": "The unique identifier of the IP network zone.",
            "required": true,
            "schema": {
              "type": "string"
            },
            "example": "uSkOCE9ZEmYdWS7Kv223S"
          }
        ],
        "responses": {
          "204": {
            "description": "The IP network zone was deleted successfully"
          },
          "404": {
            "description": "Not Found",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                },
                "examples": {
                  "NotFound": {
                    "$ref": "#/components/examples/NotFound"
                  }
                }
              }
            }
          },
          "422": {
            "description": "Unprocessable Entity",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/KeyValidationProblemDetails"
                },
                "examples": {
                  "KeyValidationError": {
                    "$ref": "#/components/examples/KeyValidationError"
                  }
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized"
          },
          "403": {
            "description": "Forbidden"
          }
        },
        "security": [
          {
            "API-Key": [ ]
          }
        ],
        "x-codeSamples": [
          {
            "lang": "csharp",
            "label": "MonoCloud .NET SDK",
            "source": "using MonoCloud.Management;\nusing MonoCloud.Management.Core.Base;\n\nvar apiClient = new MonoCloudManagementClient(new MonoCloudConfig(\"<your-domain>\", \"[[API-Key]]\"));\n\n\nvar zoneId = \"uSkOCE9ZEmYdWS7Kv223S\";\n\n\nvar result = await apiClient.NetworkZones.DeleteIpNetworkZoneAsync(zoneId);"
          },
          {
            "lang": "javascript",
            "label": "MonoCloud Javascript SDK",
            "source": "import { MonoCloudManagementClient } from '@monocloud/management';\n\nconst apiClient = MonoCloudManagementClient.init({ domain: '<your-domain>', apiKey: '[[API-Key]]' });\n\nconst zoneId = 'uSkOCE9ZEmYdWS7Kv223S';\n\nconst result = apiClient.networkZones.deleteIpNetworkZone(zoneId);"
          }
        ]
      }
    },
    "/network_zones/regional": {
      "post": {
        "tags": [
          "Network Zones"
        ],
        "summary": "Create a regional network zone",
        "description": "Creates a new regional network zone containing countries that can be referenced by policies to allow or restrict access.\n>[!note]\n> Access to this endpoint requires an active ScaleX subscription.",
        "operationId": "CreateRegionalNetworkZone",
        "requestBody": {
          "description": "The request payload used to create the regional network zone.",
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/CreateRegionalNetworkZoneRequest"
              }
            }
          },
          "required": true
        },
        "responses": {
          "201": {
            "description": "The regional network zone was created successfully",
            "headers": {
              "location": {
                "description": "Returns the location header",
                "schema": {
                  "type": "string",
                  "format": "uri"
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/RegionalNetworkZone"
                }
              }
            }
          },
          "400": {
            "description": "Bad Request",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                },
                "examples": {
                  "BadRequest": {
                    "$ref": "#/components/examples/BadRequest"
                  }
                }
              }
            }
          },
          "402": {
            "description": "Payment Required",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                },
                "examples": {
                  "PaymentRequired": {
                    "$ref": "#/components/examples/PaymentRequired"
                  }
                }
              }
            }
          },
          "422": {
            "description": "Unprocessable Entity",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/KeyValidationProblemDetails"
                },
                "examples": {
                  "KeyValidationError": {
                    "$ref": "#/components/examples/KeyValidationError"
                  }
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized"
          },
          "403": {
            "description": "Forbidden"
          }
        },
        "security": [
          {
            "API-Key": [ ]
          }
        ],
        "x-codeSamples": [
          {
            "lang": "csharp",
            "label": "MonoCloud .NET SDK",
            "source": "using MonoCloud.Management;\nusing MonoCloud.Management.Models;\nusing MonoCloud.Management.Core.Base;\n\nvar apiClient = new MonoCloudManagementClient(new MonoCloudConfig(\"<your-domain>\", \"[[API-Key]]\"));\n\n\nvar requestBody = new CreateRegionalNetworkZoneRequest\n  {\n    Enabled = true,\n    Name = \"Designation\",\n    Description = \"Location of the Company Headquarters\",\n    Category = NetworkZoneCategory.Trusted,\n    Operator = NetworkZoneOperator.NotIn,\n    Countries = new List<string>\n    {\n      \"US\",\n      \"GB\",\n    },\n  };\n\n\nvar result = await apiClient.NetworkZones.CreateRegionalNetworkZoneAsync(requestBody);"
          },
          {
            "lang": "javascript",
            "label": "MonoCloud Javascript SDK",
            "source": "import { MonoCloudManagementClient } from '@monocloud/management';\n\nconst apiClient = MonoCloudManagementClient.init({ domain: '<your-domain>', apiKey: '[[API-Key]]' });\n\nconst requestBody = {\n  enabled: true,\n  name: 'Designation',\n  description: 'Location of the Company Headquarters',\n  category: 'trusted',\n  operator: 'not_in',\n  countries: [\n    'US',\n    'GB'\n  ]\n};\n\nconst result = apiClient.networkZones.createRegionalNetworkZone(requestBody);"
          }
        ]
      }
    },
    "/network_zones/regional/{zone_id}": {
      "get": {
        "tags": [
          "Network Zones"
        ],
        "summary": "Retrieve a regional network zone",
        "description": "Retrieves detailed information for the specified regional network zone.",
        "operationId": "FindRegionalNetworkZoneById",
        "parameters": [
          {
            "name": "zone_id",
            "in": "path",
            "description": "The unique identifier of the regional network zone.",
            "required": true,
            "schema": {
              "type": "string"
            },
            "example": "uSkOCE9ZEmYdWS7Kv223S"
          }
        ],
        "responses": {
          "200": {
            "description": "The regional network zone was retrieved successfully",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/RegionalNetworkZone"
                }
              }
            }
          },
          "404": {
            "description": "Not Found",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                },
                "examples": {
                  "NotFound": {
                    "$ref": "#/components/examples/NotFound"
                  }
                }
              }
            }
          },
          "422": {
            "description": "Unprocessable Entity",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/KeyValidationProblemDetails"
                },
                "examples": {
                  "KeyValidationError": {
                    "$ref": "#/components/examples/KeyValidationError"
                  }
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized"
          },
          "403": {
            "description": "Forbidden"
          }
        },
        "security": [
          {
            "API-Key": [ ]
          }
        ],
        "x-codeSamples": [
          {
            "lang": "csharp",
            "label": "MonoCloud .NET SDK",
            "source": "using MonoCloud.Management;\nusing MonoCloud.Management.Core.Base;\n\nvar apiClient = new MonoCloudManagementClient(new MonoCloudConfig(\"<your-domain>\", \"[[API-Key]]\"));\n\n\nvar zoneId = \"uSkOCE9ZEmYdWS7Kv223S\";\n\n\nvar result = await apiClient.NetworkZones.FindRegionalNetworkZoneByIdAsync(zoneId);"
          },
          {
            "lang": "javascript",
            "label": "MonoCloud Javascript SDK",
            "source": "import { MonoCloudManagementClient } from '@monocloud/management';\n\nconst apiClient = MonoCloudManagementClient.init({ domain: '<your-domain>', apiKey: '[[API-Key]]' });\n\nconst zoneId = 'uSkOCE9ZEmYdWS7Kv223S';\n\nconst result = apiClient.networkZones.findRegionalNetworkZoneById(zoneId);"
          }
        ]
      },
      "patch": {
        "tags": [
          "Network Zones"
        ],
        "summary": "Update a regional network zone",
        "description": "Applies a partial update to the specified regional network zone. Only fields included in the request are updated.\n>[!note]\n> Access to this endpoint requires an active ScaleX subscription.",
        "operationId": "PatchRegionalNetworkZone",
        "parameters": [
          {
            "name": "zone_id",
            "in": "path",
            "description": "The unique identifier of the regional network zone.",
            "required": true,
            "schema": {
              "type": "string"
            },
            "example": "uSkOCE9ZEmYdWS7Kv223S"
          }
        ],
        "requestBody": {
          "description": "The request payload used to update a regional network zone.",
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/PatchRegionalNetworkZoneRequest"
              }
            }
          },
          "required": true
        },
        "responses": {
          "200": {
            "description": "The regional network zone was updated successfully",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/RegionalNetworkZone"
                }
              }
            }
          },
          "400": {
            "description": "Bad Request",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                },
                "examples": {
                  "BadRequest": {
                    "$ref": "#/components/examples/BadRequest"
                  }
                }
              }
            }
          },
          "404": {
            "description": "Not Found",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                },
                "examples": {
                  "NotFound": {
                    "$ref": "#/components/examples/NotFound"
                  }
                }
              }
            }
          },
          "402": {
            "description": "Payment Required",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                },
                "examples": {
                  "PaymentRequired": {
                    "$ref": "#/components/examples/PaymentRequired"
                  }
                }
              }
            }
          },
          "422": {
            "description": "Unprocessable Entity",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/KeyValidationProblemDetails"
                },
                "examples": {
                  "KeyValidationError": {
                    "$ref": "#/components/examples/KeyValidationError"
                  }
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized"
          },
          "403": {
            "description": "Forbidden"
          }
        },
        "security": [
          {
            "API-Key": [ ]
          }
        ],
        "x-codeSamples": [
          {
            "lang": "csharp",
            "label": "MonoCloud .NET SDK",
            "source": "using MonoCloud.Management;\nusing MonoCloud.Management.Models;\nusing MonoCloud.Management.Core.Base;\n\nvar apiClient = new MonoCloudManagementClient(new MonoCloudConfig(\"<your-domain>\", \"[[API-Key]]\"));\n\n\nvar zoneId = \"uSkOCE9ZEmYdWS7Kv223S\";\n\nvar requestBody = new PatchRegionalNetworkZoneRequest\n  {\n    Enabled = true,\n    Name = \"Designation\",\n    Description = \"Location of the Company Headquarters\",\n    Category = NetworkZoneCategory.Trusted,\n    Operator = NetworkZoneOperator.NotIn,\n    Countries = new List<string>\n    {\n      \"US\",\n      \"GB\",\n    },\n  };\n\n\nvar result = await apiClient.NetworkZones.PatchRegionalNetworkZoneAsync(zoneId, requestBody);"
          },
          {
            "lang": "javascript",
            "label": "MonoCloud Javascript SDK",
            "source": "import { MonoCloudManagementClient } from '@monocloud/management';\n\nconst apiClient = MonoCloudManagementClient.init({ domain: '<your-domain>', apiKey: '[[API-Key]]' });\n\nconst zoneId = 'uSkOCE9ZEmYdWS7Kv223S';\n\nconst requestBody = {\n  enabled: true,\n  name: 'Designation',\n  description: 'Location of the Company Headquarters',\n  category: 'trusted',\n  operator: 'not_in',\n  countries: [\n    'US',\n    'GB'\n  ]\n};\n\nconst result = apiClient.networkZones.patchRegionalNetworkZone(zoneId, requestBody);"
          }
        ]
      },
      "delete": {
        "tags": [
          "Network Zones"
        ],
        "summary": "Delete a regional network zone",
        "description": "Permanently deletes the specified regional network zone.\n>[!warning]\n> This operation is irreversible.",
        "operationId": "DeleteRegionalNetworkZone",
        "parameters": [
          {
            "name": "zone_id",
            "in": "path",
            "description": "The unique identifier of the regional network zone.",
            "required": true,
            "schema": {
              "type": "string"
            },
            "example": "uSkOCE9ZEmYdWS7Kv223S"
          }
        ],
        "responses": {
          "204": {
            "description": "The regional network zone was deleted successfully"
          },
          "404": {
            "description": "Not Found",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                },
                "examples": {
                  "NotFound": {
                    "$ref": "#/components/examples/NotFound"
                  }
                }
              }
            }
          },
          "422": {
            "description": "Unprocessable Entity",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/KeyValidationProblemDetails"
                },
                "examples": {
                  "KeyValidationError": {
                    "$ref": "#/components/examples/KeyValidationError"
                  }
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized"
          },
          "403": {
            "description": "Forbidden"
          }
        },
        "security": [
          {
            "API-Key": [ ]
          }
        ],
        "x-codeSamples": [
          {
            "lang": "csharp",
            "label": "MonoCloud .NET SDK",
            "source": "using MonoCloud.Management;\nusing MonoCloud.Management.Core.Base;\n\nvar apiClient = new MonoCloudManagementClient(new MonoCloudConfig(\"<your-domain>\", \"[[API-Key]]\"));\n\n\nvar zoneId = \"uSkOCE9ZEmYdWS7Kv223S\";\n\n\nvar result = await apiClient.NetworkZones.DeleteRegionalNetworkZoneAsync(zoneId);"
          },
          {
            "lang": "javascript",
            "label": "MonoCloud Javascript SDK",
            "source": "import { MonoCloudManagementClient } from '@monocloud/management';\n\nconst apiClient = MonoCloudManagementClient.init({ domain: '<your-domain>', apiKey: '[[API-Key]]' });\n\nconst zoneId = 'uSkOCE9ZEmYdWS7Kv223S';\n\nconst result = apiClient.networkZones.deleteRegionalNetworkZone(zoneId);"
          }
        ]
      }
    }
  },
  "components": {
    "schemas": {
      "AccessTokenTypes": {
        "enum": [
          "jwt",
          "reference"
        ],
        "description": "The access token type.",
        "x-enum-descriptions": {
          "jwt": "A self-contained JWT access token.",
          "reference": "An opaque reference token stored and validated server-side."
        }
      },
      "AccountProtectionOptions": {
        "required": [
          "user_lockout"
        ],
        "type": "object",
        "properties": {
          "user_lockout": {
            "description": "User account protection settings used to safeguard accounts from abuse.",
            "$ref": "#/components/schemas/AccountProtectionUserLockoutOptions"
          }
        },
        "description": "Account Protection Options Response: Represents configuration used to protect user accounts from abuse.",
        "x-model-type": "response"
      },
      "AccountProtectionUserLockoutOptions": {
        "required": [
          "allowed_ips",
          "enabled",
          "ip_lockout_time_span",
          "lockout_type",
          "max_failed_access_attempts",
          "user_lockout_time_span",
          "user_unblock"
        ],
        "type": "object",
        "properties": {
          "enabled": {
            "type": "boolean",
            "description": "Enables user lockout protection.",
            "example": true
          },
          "max_failed_access_attempts": {
            "type": "integer",
            "description": "Maximum failed sign-in attempts allowed before lockout (inclusive).",
            "format": "int32",
            "example": 5
          },
          "user_lockout_time_span": {
            "type": "integer",
            "description": "User account lockout duration (in minutes).",
            "format": "int32",
            "example": 5
          },
          "ip_lockout_time_span": {
            "type": "integer",
            "description": "IP lockout duration (in minutes).",
            "format": "int32",
            "example": 43200
          },
          "allowed_ips": {
            "uniqueItems": true,
            "type": "array",
            "items": {
              "type": "string"
            },
            "description": "Allowlisted IP addresses that are exempt from lockout enforcement.",
            "example": [
              "156.3.59.5",
              "184.220.154.65"
            ]
          },
          "lockout_type": {
            "description": "The lockout enforcement mode (IP-based or user-account-based).",
            "examples": [
              "ip"
            ],
            "$ref": "#/components/schemas/UserLockoutTypes"
          },
          "user_unblock": {
            "description": "The user unblock configuration.",
            "$ref": "#/components/schemas/AccountProtectionUserUnblockOptions"
          }
        },
        "description": "Account Protection User Lockout Options Response: Represents configuration for locking user accounts after repeated failed authentication attempts.",
        "x-model-type": "response"
      },
      "AccountProtectionUserUnblockEmailOptions": {
        "required": [
          "expiry"
        ],
        "type": "object",
        "properties": {
          "expiry": {
            "type": "integer",
            "description": "Specifies the validity period of the unblock email link (in seconds).",
            "format": "int32",
            "example": 300
          }
        },
        "description": "Account Protection User Unblock Email Options Response: Represents email-based configuration for allowing users to unblock their accounts after a lockout.",
        "x-model-type": "response"
      },
      "AccountProtectionUserUnblockOptions": {
        "required": [
          "email"
        ],
        "type": "object",
        "properties": {
          "email": {
            "description": "Email-based user unblock configuration.",
            "$ref": "#/components/schemas/AccountProtectionUserUnblockEmailOptions"
          }
        },
        "description": "Account Protection User Unblock Options Response: Represents configuration that controls how locked user accounts can be unblocked.",
        "x-model-type": "response"
      },
      "ActorTypes": {
        "enum": [
          "unknown",
          "system",
          "api_key",
          "private_api_key",
          "public_api_key",
          "user",
          "admin_user",
          "api",
          "client",
          "certificate"
        ],
        "description": "The log event actor type.",
        "x-enum-descriptions": {
          "unknown": "The actor could not be determined.",
          "system": "The platform or internal system.",
          "api_key": "An API key.",
          "private_api_key": "A private API key.",
          "public_api_key": "A public API key.",
          "user": "An end user.",
          "admin_user": "An administrative user.",
          "api": "An API or protected service.",
          "client": "A client application.",
          "certificate": "An X.509 certificate."
        }
      },
      "AddCertificateRevocationRequest": {
        "required": [
          "value"
        ],
        "type": "object",
        "properties": {
          "value": {
            "maxLength": 50000,
            "minLength": 1,
            "type": "string",
            "description": "The certificate revocation list (CRL) in PEM format.",
            "example": "-----BEGIN X509 CRL-----certificate_revocation_value-----END X509 CRL-----"
          }
        },
        "description": "Add Certificate Revocation Request: Represents a certificate revocation list (CRL) to be added to a trust store.",
        "x-model-type": "create"
      },
      "AddEmailRequest": {
        "required": [
          "email"
        ],
        "type": "object",
        "properties": {
          "email": {
            "maxLength": 320,
            "type": "string",
            "description": "The email address to add to the user’s account.",
            "format": "email",
            "example": "johndoe@example.com"
          },
          "is_verified": {
            "type": "boolean",
            "description": "Indicates whether the email should be marked as verified when added. Verification may be required before the email can be used in login or recovery flows.",
            "default": false,
            "example": true
          },
          "skip_restriction_checks": {
            "type": "boolean",
            "description": "Allows bypassing blocklist validation for the provided email.",
            "default": false,
            "example": false
          }
        },
        "description": "Add Email Request: Used to add a new email address for a user account.",
        "x-model-type": "create"
      },
      "AddPhoneRequest": {
        "required": [
          "phone_number"
        ],
        "type": "object",
        "properties": {
          "phone_number": {
            "type": "string",
            "description": "The phone number to add to the user’s account in E.164 format.",
            "example": "+14085551234"
          },
          "is_verified": {
            "type": "boolean",
            "description": "Indicates whether the phone number should be marked as verified when added. Verification may be required before the number can be used in login or recovery flows.",
            "default": false,
            "example": true
          },
          "skip_restriction_checks": {
            "type": "boolean",
            "description": "Allows bypassing blocklist validation for the provided phone number.",
            "default": false,
            "example": false
          }
        },
        "description": "Add Phone Request: Used to add a new phone number for a user account.",
        "x-model-type": "create"
      },
      "AdvancedApiAccessPolicy": {
        "required": [
          "actions",
          "cedar",
          "creation_time",
          "enabled",
          "id",
          "is_permitted",
          "last_updated",
          "name",
          "revision",
          "type"
        ],
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "description": "The unique identifier of the policy.",
            "example": "GIbxRmxz2tIyQDVdGR4yE"
          },
          "enabled": {
            "type": "boolean",
            "description": "Indicates whether the policy is enabled.",
            "example": true
          },
          "name": {
            "type": "string",
            "description": "Human-readable name for the policy.",
            "example": "Billing access policy"
          },
          "description": {
            "type": [
              "null",
              "string"
            ],
            "description": "Description that explains the purpose of the policy.",
            "example": "Restricts billing API access to admins during business hours"
          },
          "type": {
            "description": "The policy authoring mode. Basic policies are authored using structured conditions; advanced policies are authored using Cedar policy source.",
            "examples": [
              "basic"
            ],
            "$ref": "#/components/schemas/PolicyTypes"
          },
          "is_permitted": {
            "type": "boolean",
            "description": "Indicates whether the policy grants access when matched.",
            "example": true
          },
          "cedar": {
            "type": "string",
            "description": "The Cedar policy source used during evaluation for advanced policies.",
            "example": "permit (principal, action, resource == Api::\"https://api.example.com/billing\");"
          },
          "actions": {
            "description": "Action settings applied when the policy matches.",
            "$ref": "#/components/schemas/ApiAccessPolicyActions"
          },
          "creation_time": {
            "type": "integer",
            "description": "Specifies the creation time of the policy (in Epoch).",
            "format": "date-time",
            "example": 1640975400
          },
          "last_updated": {
            "type": "integer",
            "description": "Specifies the last update time of the policy (in Epoch).",
            "format": "date-time",
            "example": 1640975400
          },
          "revision": {
            "type": "integer",
            "description": "Specifies the current version of the policy. Incremented on every update.",
            "format": "int32",
            "example": 1
          },
          "error": {
            "type": [
              "null",
              "string"
            ],
            "description": "Optional denial message returned to the client when this policy rejects a token request. If unset, a generic denial message is returned.",
            "example": "Access to the billing API requires admin approval."
          }
        },
        "description": "Advanced API Access Policy Response: Represents a stored advanced API access policy authored using Cedar.",
        "x-model-type": "response"
      },
      "ApiAccessPolicy": {
        "required": [
          "creation_time",
          "enabled",
          "id",
          "is_permitted",
          "last_updated",
          "name",
          "revision",
          "type"
        ],
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "description": "The unique identifier of the policy.",
            "example": "GIbxRmxz2tIyQDVdGR4yE"
          },
          "enabled": {
            "type": "boolean",
            "description": "Indicates whether the policy is enabled.",
            "example": true
          },
          "name": {
            "type": "string",
            "description": "Human-readable name for the policy.",
            "example": "Billing access policy"
          },
          "description": {
            "type": [
              "null",
              "string"
            ],
            "description": "Description that explains the purpose of the policy.",
            "example": "Restricts billing API access to admins during business hours"
          },
          "type": {
            "description": "The policy authoring mode. Basic policies are authored using structured conditions; advanced policies are authored using Cedar policy source.",
            "examples": [
              "basic"
            ],
            "$ref": "#/components/schemas/PolicyTypes"
          },
          "is_permitted": {
            "type": "boolean",
            "description": "Indicates whether the policy grants access when matched.",
            "example": true
          },
          "creation_time": {
            "type": "integer",
            "description": "Specifies the creation time of the policy (in Epoch).",
            "format": "date-time",
            "example": 1640975400
          },
          "last_updated": {
            "type": "integer",
            "description": "Specifies the last update time of the policy (in Epoch).",
            "format": "date-time",
            "example": 1640975400
          },
          "revision": {
            "type": "integer",
            "description": "Specifies the current version of the policy. Incremented on every update.",
            "format": "int32",
            "example": 1
          },
          "client_id": {
            "type": [
              "null",
              "string"
            ],
            "description": "The unique identifier of the client this policy applies to. Returned for basic policies; `null` for advanced policies.",
            "example": "web-client"
          }
        },
        "description": "API Access Policy Response: Represents an API access policy.",
        "x-model-type": "response"
      },
      "ApiAccessPolicyActions": {
        "type": "object",
        "properties": {
          "access_token_type": {
            "oneOf": [
              {
                "type": "null"
              },
              {
                "description": "Overrides whether access tokens are issued as self-contained JWTs or opaque reference tokens. When unset, the API resource default is used.",
                "examples": [
                  "jwt"
                ],
                "$ref": "#/components/schemas/AccessTokenTypes"
              }
            ]
          },
          "access_token_lifetime": {
            "type": [
              "null",
              "integer"
            ],
            "description": "Overrides the access token lifetime (in seconds). When unset, the API resource default is used.",
            "format": "int32",
            "example": 3600
          },
          "allow_multi_audience": {
            "type": [
              "null",
              "boolean"
            ],
            "description": "Overrides whether access tokens issued for this resource may include additional audiences. When unset, the API resource default is used.\n>[!note]\n> ScaleX subscription required to allow multi-audience tokens.",
            "example": false
          },
          "allow_user_info_access": {
            "type": [
              "null",
              "boolean"
            ],
            "description": "Overrides whether access tokens issued for this resource may include identity scopes and be used with identity endpoints such as UserInfo. When unset, the API resource default is used.\n>[!note]\n> ScaleX subscription required to allow UserInfo access.",
            "example": true
          },
          "bind_tokens_to_session": {
            "type": [
              "null",
              "boolean"
            ],
            "description": "Overrides whether access tokens issued for this resource are bound to the user session and revoked when the session ends. When unset, the API resource default is used.\n>[!note]\n> ScaleX subscription required to use session binding.",
            "example": true
          }
        },
        "description": "API Access Policy Actions Response: Represents the action settings applied when an API access policy rule matches.",
        "x-model-type": "response"
      },
      "ApiResource": {
        "required": [
          "access_token_lifetime",
          "access_token_type",
          "allow_multi_audience",
          "allow_user_info_access",
          "audience",
          "bind_tokens_to_session",
          "creation_time",
          "enabled",
          "id",
          "include_jwt_id",
          "last_updated",
          "user_claims"
        ],
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "description": "The unique identifier of the resource.",
            "example": "GIbxRmxz2tIyQDVdGR4yE"
          },
          "enabled": {
            "type": "boolean",
            "description": "Indicates whether the resource is enabled.",
            "example": true
          },
          "display_name": {
            "type": [
              "null",
              "string"
            ],
            "description": "Human-readable display name for the resource.",
            "example": "Designation"
          },
          "description": {
            "type": [
              "null",
              "string"
            ],
            "description": "Description that explains the purpose of the resource.",
            "example": "Current position in the employed organization"
          },
          "creation_time": {
            "type": "integer",
            "description": "Specifies the creation time of the resource (in Epoch).",
            "format": "date-time",
            "example": 1640975400
          },
          "last_updated": {
            "type": "integer",
            "description": "Specifies the last update time of the resource (in Epoch).",
            "format": "date-time",
            "example": 1640975400
          },
          "audience": {
            "type": "string",
            "description": "Audience value that will be included in issued access tokens for this API resource.",
            "example": "https://example.com"
          },
          "allow_multi_audience": {
            "type": "boolean",
            "description": "Default value for whether access tokens issued for this API resource may carry additional audiences beyond this resource. Used when no matching API access policy provides an override.\n>[!note]\n> ScaleX subscription required to allow multi-audience tokens.",
            "example": false
          },
          "allow_user_info_access": {
            "type": "boolean",
            "description": "Default value for whether access tokens issued for this API resource may include identity scopes, allowing them to be used with identity-related endpoints such as `UserInfo`. Used when no matching API access policy provides an override.\n>[!note]\n> ScaleX subscription required to allow UserInfo access.",
            "example": true
          },
          "access_token_type": {
            "description": "Default access token type for this API resource. Used when no matching API access policy provides an override.",
            "examples": [
              "jwt"
            ],
            "$ref": "#/components/schemas/AccessTokenTypes"
          },
          "access_token_lifetime": {
            "type": "integer",
            "description": "Default access token lifetime (in seconds) for this API resource. Used when no matching API access policy provides an override.",
            "format": "int32",
            "example": 3600
          },
          "bind_tokens_to_session": {
            "type": "boolean",
            "description": "Default value for whether access tokens issued for this API resource are bound to the user session, causing them to be revoked when the session ends. Used when no matching API access policy provides an override.\n>[!note]\n> ScaleX subscription required to use session binding.",
            "example": true
          },
          "include_jwt_id": {
            "type": "boolean",
            "description": "Determines whether access tokens issued for this API resource include a unique token identifier (jti).\n>[!note]\n> Recommended for auditing, correlation, and replay-detection.",
            "example": true
          },
          "user_claims": {
            "uniqueItems": true,
            "type": "array",
            "items": {
              "type": "string"
            },
            "description": "List of user claim types that will be embedded into access tokens issued for this API resource.",
            "example": [
              "job_title"
            ]
          }
        },
        "description": "API Resource Response: Represents a protected API resource and its access-token issuance configuration.",
        "x-model-type": "response"
      },
      "ApiScope": {
        "required": [
          "creation_time",
          "emphasize",
          "id",
          "is_default",
          "last_updated",
          "name",
          "required",
          "show_in_discovery_document",
          "user_claims"
        ],
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "description": "The unique identifier of the resource.",
            "example": "GIbxRmxz2tIyQDVdGR4yE"
          },
          "display_name": {
            "type": [
              "null",
              "string"
            ],
            "description": "Human-readable display name for the resource.",
            "example": "Designation"
          },
          "description": {
            "type": [
              "null",
              "string"
            ],
            "description": "Description that explains the purpose of the resource.",
            "example": "Current position in the employed organization"
          },
          "show_in_discovery_document": {
            "type": "boolean",
            "description": "Indicates whether this API scope is advertised via the discovery document.",
            "example": true
          },
          "creation_time": {
            "type": "integer",
            "description": "Specifies the creation time of the resource (in Epoch).",
            "format": "date-time",
            "example": 1640975400
          },
          "last_updated": {
            "type": "integer",
            "description": "Specifies the last update time of the resource (in Epoch).",
            "format": "date-time",
            "example": 1640975400
          },
          "name": {
            "type": "string",
            "description": "The unique name of the scope. This is the value a client will use for the scope parameter in the authorize request.",
            "example": "user_profile"
          },
          "required": {
            "type": "boolean",
            "description": "Specifies whether the scope is mandatory and cannot be de-selected by the user on the consent screen.",
            "example": false
          },
          "emphasize": {
            "type": "boolean",
            "description": "Indicates whether this scope is visually emphasized on the consent screen, typically for sensitive or high-impact permissions.",
            "example": false
          },
          "is_default": {
            "type": "boolean",
            "description": "Specifies whether this scope is automatically included in issued tokens when the `scope` parameter is omitted.",
            "example": false
          },
          "user_claims": {
            "uniqueItems": true,
            "type": "array",
            "items": {
              "type": "string"
            },
            "description": "List of user claim types that will be embedded into access tokens when this scope is granted.",
            "example": [
              "email_address",
              "phone_number",
              "given_name"
            ]
          }
        },
        "description": "API Scope Response: Represents a permissioned scope that defines the level of access a client may request and that can be embedded into access tokens.",
        "x-model-type": "response"
      },
      "Application": {
        "required": [
          "absolute_refresh_token_lifetime",
          "access_token_lifetime",
          "access_token_type",
          "allow_access_tokens_via_browser",
          "allow_any_pushed_authorization_redirect_uri",
          "allow_offline_access",
          "allow_plain_text_pkce",
          "allowed_cors_origins",
          "allowed_grant_types",
          "allowed_identity_scopes",
          "always_include_user_claims_in_id_token",
          "always_require_consent_for_offline_access",
          "always_send_client_claims",
          "app_type",
          "authenticator_restrictions",
          "authorization_code_lifetime",
          "authorization_request_lifetime",
          "back_channel_logout_session_required",
          "bind_refresh_tokens_to_session",
          "claims",
          "client_name",
          "consent_lifetime",
          "creation_time",
          "device_code_length",
          "device_code_lifetime",
          "emit_offline_access_scope_in_access_token",
          "enable_consent",
          "enabled",
          "front_channel_logout_session_required",
          "id",
          "identity_token_lifetime",
          "last_updated",
          "post_logout_redirect_uris",
          "redirect_uris",
          "refresh_token_expiration",
          "refresh_token_usage",
          "remember_consent",
          "require_client_secret",
          "require_consent",
          "require_pkce",
          "require_pushed_authorization_requests",
          "require_request_object",
          "show_consent_scope_selection",
          "sliding_refresh_token_lifetime",
          "tech_type",
          "update_access_token_claims_on_refresh",
          "user_sso_lifetime"
        ],
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "description": "The unique identifier of the client.",
            "example": "eCOGRJYpnNwwAAuCeReEW"
          },
          "enabled": {
            "type": "boolean",
            "description": "Indicates whether the client is enabled.",
            "example": true
          },
          "app_type": {
            "description": "Preferred application type for the client.",
            "examples": [
              "spa"
            ],
            "$ref": "#/components/schemas/ApplicationTypes"
          },
          "tech_type": {
            "description": "Preferred technology stack for the client.",
            "examples": [
              "javascript"
            ],
            "$ref": "#/components/schemas/TechTypes"
          },
          "require_client_secret": {
            "type": "boolean",
            "description": "Requires confidential clients to present a client secret when requesting tokens.\n>[!warning]\n> Only disable for public clients (e.g., SPA / mobile).",
            "example": true
          },
          "client_name": {
            "type": "string",
            "description": "Human-readable name for the client application, displayed to users on the login and consent screens.",
            "example": "Accounting Dashboard"
          },
          "description": {
            "type": [
              "null",
              "string"
            ],
            "description": "Description that explains the purpose of the client application.",
            "example": "Handles financial reporting, general ledger maintenance, and related operations."
          },
          "client_uri": {
            "type": [
              "null",
              "string"
            ],
            "description": "Public URL that provides additional information about the client application.",
            "example": "https://www.organization/accounting"
          },
          "logo_uri": {
            "type": [
              "null",
              "string"
            ],
            "description": "URL of the client application logo, displayed on the consent screen to help users identify the application.",
            "example": "https://www.organization/accounting_logo.png"
          },
          "enable_consent": {
            "type": "boolean",
            "description": "Indicates whether the consents are enabled for the client.\n>[!note]\n> Secure+ subscription required to use consents.",
            "example": false
          },
          "require_consent": {
            "type": "boolean",
            "description": "Controls whether users are prompted to review and approve requested permissions.\n>[!note]\n> Secure+ subscription required to use consents.",
            "example": false
          },
          "always_require_consent_for_offline_access": {
            "type": "boolean",
            "description": "Always prompts users for consent when requesting offline (refresh token) access.\n>[!note]\n> This setting applies even if the user previously chose to remember their consent.\r\nSecure+ subscription required to use consents.",
            "example": false
          },
          "remember_consent": {
            "description": "Controls how consent decisions are remembered for future sign-ins.",
            "examples": [
              "user_selected"
            ],
            "$ref": "#/components/schemas/RememberConsentTypes"
          },
          "show_consent_scope_selection": {
            "type": "boolean",
            "description": "Allows end users to choose which requested scopes to grant on the consent screen.\n>[!note]\n> Secure+ subscription required to use consents.",
            "example": true
          },
          "always_include_user_claims_in_id_token": {
            "type": "boolean",
            "description": "Always embeds user claims in the ID token instead of requiring calls to the `UserInfo` endpoint.\n>[!note]\n> Enabling this increases the ID token size and may expose more user data to applications than necessary.",
            "example": false
          },
          "allowed_grant_types": {
            "uniqueItems": true,
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/GrantTypes"
            },
            "description": "Defines which OAuth / OIDC grant types this client is permitted to use.\n>[!note]\n> Only valid and secure grant combinations are supported.",
            "example": [
              "hybrid",
              "device_code"
            ]
          },
          "require_pkce": {
            "type": "boolean",
            "description": "Requires Proof Key for Code Exchange (PKCE) for authorization code flows.\n>[!note]\n> Strongly recommended for public clients such as SPAs and mobile applications.",
            "example": true
          },
          "allow_plain_text_pkce": {
            "type": "boolean",
            "description": "Allows Proof Key for Code Exchange (PKCE) verification using the plain (unhashed) method.\n>[!warning]\n> Use only for legacy compatibility — strongly discouraged for production.",
            "example": false
          },
          "require_request_object": {
            "type": "boolean",
            "description": "Requires authorization requests to be sent as signed JWT request objects (JAR).\n>[!note]\n> Secure+ subscription required to use JWT request objects (JAR).",
            "example": false
          },
          "require_pushed_authorization_requests": {
            "type": "boolean",
            "description": "Requires clients to use Pushed Authorization Requests (PAR) instead of sending parameters directly to the authorization endpoint.\n>[!note]\n> Secure+ subscription required to use Pushed Authorization Requests (PAR).",
            "example": false
          },
          "allow_any_pushed_authorization_redirect_uri": {
            "type": "boolean",
            "description": "Allows the client to use any redirect URI when using Pushed Authorization Requests (PAR), instead of being limited to the configured redirect URI list.\n>[!note]\n> Secure+ subscription required to use Pushed Authorization Requests (PAR).",
            "example": false
          },
          "authorization_request_lifetime": {
            "type": "integer",
            "description": "Lifetime of the authorization request (in seconds). Controls how long the request data is considered valid during the authorization flow.",
            "format": "int32",
            "example": 600
          },
          "allow_access_tokens_via_browser": {
            "type": "boolean",
            "description": "Controls whether access tokens may be transmitted via the browser for this client.\n>[!warning]\n> Enable only when absolutely necessary. Returning access tokens to the browser increases the risk of leakage through logs, plugins, redirects, or malicious scripts. Recommended to keep disabled and prefer the Authorization Code + PKCE flow.",
            "example": false
          },
          "redirect_uris": {
            "uniqueItems": true,
            "type": "array",
            "items": {
              "type": "string"
            },
            "description": "List of approved redirect URIs where authorization codes or tokens may be sent.\n>[!note]\n> Only exact, fully-qualified matches are allowed.",
            "example": [
              "https://www.organization/accounting/redirect1",
              "https://www.organization/hr/redirect"
            ]
          },
          "post_logout_redirect_uris": {
            "uniqueItems": true,
            "type": "array",
            "items": {
              "type": "string"
            },
            "description": "List of approved URIs users can be redirected to after a successful logout.\n>[!note]\n> Only exact, fully-qualified matches are allowed.",
            "example": [
              "https://www.organization/accounting/loggedout",
              "https://www.organization/hr/loggedout"
            ]
          },
          "front_channel_logout_uri": {
            "type": [
              "null",
              "string"
            ],
            "description": "Browser-based (front-channel) endpoint on the client that receives user logout notifications from MonoCloud.\n>[!note]\n> Pro plan subscription required to use front-channel logout.",
            "example": "https://www.organization/accounting/frontLogout"
          },
          "front_channel_logout_session_required": {
            "type": "boolean",
            "description": "Indicates whether the user’s session identifier should be included when invoking the front-channel logout URI.\n>[!note]\n> Pro plan subscription required to use front-channel logout.",
            "example": true
          },
          "back_channel_logout_uri": {
            "type": [
              "null",
              "string"
            ],
            "description": "Server-side (back-channel) endpoint that MonoCloud calls to notify the application of a user logout.\n>[!note]\n> Secure+ subscription required to use back-channel logout.",
            "example": "https://www.organization/accounting/backLogout"
          },
          "back_channel_logout_session_required": {
            "type": "boolean",
            "description": "Indicates whether the user’s session identifier should be included when invoking the back-channel logout URI.\n>[!note]\n> Secure+ subscription required to use back-channel logout.",
            "example": true
          },
          "bind_refresh_tokens_to_session": {
            "type": "boolean",
            "description": "Binds refresh tokens issued for the client to the user's session. When enabled, refresh tokens are automatically revoked when the user signs out or the session expires.\n>[!note]\n> ScaleX subscription required to use session binding.",
            "example": true
          },
          "allow_offline_access": {
            "type": "boolean",
            "description": "Allows the client to obtain refresh tokens using the `offline_access` scope.\n>[!note]\n> Use only for trusted applications that can securely store long-lived tokens.",
            "example": false
          },
          "allowed_identity_scopes": {
            "uniqueItems": true,
            "type": "array",
            "items": {
              "type": "string"
            },
            "description": "Defines the approved identity scopes that this client is authorized to request.",
            "example": [
              "openid",
              "profile",
              "email"
            ]
          },
          "identity_token_lifetime": {
            "type": "integer",
            "description": "Specifies how long an ID token remains valid (in seconds).",
            "format": "int32",
            "example": 300
          },
          "access_token_lifetime": {
            "type": "integer",
            "description": "Specifies how long access tokens issued without API resource scopes remain valid (in seconds). These tokens may only be used with the UserInfo endpoint.",
            "format": "int32",
            "example": 3600
          },
          "authorization_code_lifetime": {
            "type": "integer",
            "description": "Specifies how long an authorization code remains valid (in seconds).",
            "format": "int32",
            "example": 300
          },
          "consent_lifetime": {
            "type": "integer",
            "description": "Specifies the validity period for stored user consent (in seconds). Set to `0` to allow consent to remain valid indefinitely.\n>[!note]\n> Secure+ subscription required to use consents.",
            "format": "int32",
            "example": 604800
          },
          "absolute_refresh_token_lifetime": {
            "type": "integer",
            "description": "Specifies the maximum lifetime of a refresh token (in seconds), regardless of how often it is used.\n>[!note]\n> ScaleX subscription required to configure refresh token lifetimes longer than a month.",
            "format": "int32",
            "example": 2592000
          },
          "sliding_refresh_token_lifetime": {
            "type": "integer",
            "description": "Defines the sliding expiration window for refresh tokens (in seconds). Token expiry is extended on each valid refresh, subject to the absolute refresh token lifetime.",
            "format": "int32",
            "example": 1296000
          },
          "refresh_token_usage": {
            "description": "Controls whether refresh tokens are single-use (rotated) or reusable.",
            "examples": [
              "one_time_only"
            ],
            "$ref": "#/components/schemas/RefreshTokenUsageTypes"
          },
          "update_access_token_claims_on_refresh": {
            "type": "boolean",
            "description": "Controls whether access token claims are recalculated and reissued when refreshing a token.",
            "example": false
          },
          "emit_offline_access_scope_in_access_token": {
            "type": "boolean",
            "description": "Includes the `offline_access` scope in issued access tokens when requested by the client.",
            "example": false
          },
          "refresh_token_expiration": {
            "description": "Controls whether refresh tokens expire at a fixed time or are extended with continued use.",
            "examples": [
              "absolute"
            ],
            "$ref": "#/components/schemas/RefreshTokenExpirationTypes"
          },
          "access_token_type": {
            "description": "Specifies whether access tokens issued without API resource scopes are issued as self-contained JWTs or opaque reference tokens. These tokens may only be used with the UserInfo endpoint.",
            "examples": [
              "jwt"
            ],
            "$ref": "#/components/schemas/AccessTokenTypes"
          },
          "authenticator_restrictions": {
            "uniqueItems": true,
            "type": "array",
            "items": {
              "type": "string"
            },
            "description": "Defines the authenticators users may use to sign in with this client. Leave empty to inherit the global authenticator policy.\n>[!note]\n> Pro plan subscription required to enable authenticator restrictions.",
            "example": [
              "email",
              "google"
            ]
          },
          "claims": {
            "type": "object",
            "additionalProperties": { },
            "description": "Defines custom claims issued to this client and embedded into access tokens for downstream APIs and resources."
          },
          "always_send_client_claims": {
            "type": "boolean",
            "description": "Controls whether client claims are always emitted in access tokens, or only when using the client credentials flow.",
            "example": false
          },
          "client_claims_prefix": {
            "type": [
              "null",
              "string"
            ],
            "description": "Configures a prefix for client claims, helping avoid naming collisions across tokens and downstream APIs.",
            "example": "client_"
          },
          "allowed_cors_origins": {
            "uniqueItems": true,
            "type": "array",
            "items": {
              "type": "string"
            },
            "description": "Configures the set of trusted origins permitted to perform cross-origin requests for this client.",
            "example": [
              "https://accounting.organization",
              "https://hr.organization"
            ]
          },
          "user_sso_lifetime": {
            "type": "integer",
            "description": "Maximum allowed SSO duration (in seconds). After this window, users must sign in again to confirm identity. Set to `0` to disable the limit.",
            "format": "int32",
            "example": 604800
          },
          "device_code_length": {
            "type": "integer",
            "description": "Specifies the length of the user verification code generated for the device flow.",
            "format": "int32",
            "example": 6
          },
          "device_code_lifetime": {
            "type": "integer",
            "description": "Specifies the lifetime of the device authorization code (in seconds).",
            "format": "int32",
            "example": 180
          },
          "creation_time": {
            "type": "integer",
            "description": "Specifies the creation time of the client (in Epoch).",
            "format": "date-time",
            "example": 1640975400
          },
          "last_updated": {
            "type": "integer",
            "description": "Specifies the last update time of the client (in Epoch).",
            "format": "date-time",
            "example": 1640975400
          }
        },
        "description": "Application: Represents an OAuth 2.0 / OIDC client application configuration.",
        "x-model-type": "response"
      },
      "ApplicationGroup": {
        "required": [
          "creation_time",
          "group_id",
          "group_name"
        ],
        "type": "object",
        "properties": {
          "group_id": {
            "type": "string",
            "description": "The unique identifier of the group.",
            "format": "uuid",
            "example": "70b712ac-d96d-476b-b39b-249ad11de1a2"
          },
          "group_name": {
            "type": "string",
            "description": "The name of the group.",
            "example": "Administrators"
          },
          "creation_time": {
            "type": "integer",
            "description": "Specifies the time at which the group was associated with the client (in Epoch).",
            "format": "date-time",
            "example": 1640975400
          }
        },
        "description": "Application Group Response: Represents the association between an application and a group.",
        "x-model-type": "response"
      },
      "ApplicationTypes": {
        "enum": [
          "custom",
          "spa",
          "web_app",
          "native",
          "m2m",
          "device"
        ],
        "description": "The application type.",
        "x-enum-descriptions": {
          "custom": "General-purpose or custom application type",
          "spa": "Single Page Application (browser-based, running entirely in the user’s browser)",
          "web_app": "Traditional web application with a backend server",
          "native": "Native desktop or mobile application",
          "m2m": "Machine-to-machine or backend service",
          "device": "Device or console that authenticates using the device authorization flow"
        }
      },
      "AuthenticationOptions": {
        "required": [
          "account_protection",
          "authenticators",
          "identifiers",
          "logout",
          "pushed_authorization",
          "recovery_methods",
          "session",
          "sign_up"
        ],
        "type": "object",
        "properties": {
          "pushed_authorization": {
            "description": "Pushed Authorization Request Options",
            "$ref": "#/components/schemas/PushedAuthorizationOptions"
          },
          "account_protection": {
            "description": "Account Protection Options",
            "$ref": "#/components/schemas/AccountProtectionOptions"
          },
          "authenticators": {
            "description": "Authenticators Options",
            "$ref": "#/components/schemas/AuthenticatorOptions"
          },
          "identifiers": {
            "description": "Identifiers Options",
            "$ref": "#/components/schemas/IdentifierOptions"
          },
          "recovery_methods": {
            "description": "Recovery Methods Options",
            "$ref": "#/components/schemas/RecoveryMethodsOptions"
          },
          "session": {
            "description": "Session Options",
            "$ref": "#/components/schemas/SessionOptions"
          },
          "logout": {
            "description": "Logout Options",
            "$ref": "#/components/schemas/LogoutOptions"
          },
          "sign_up": {
            "description": "Sign-up Options",
            "$ref": "#/components/schemas/SignUpOptions"
          }
        },
        "description": "Authentication Options Response: Represents the current authentication configuration for the tenant.",
        "x-model-type": "response"
      },
      "AuthenticatorOptions": {
        "required": [
          "email",
          "external_sign_in_methods_first",
          "passkey",
          "password",
          "phone"
        ],
        "type": "object",
        "properties": {
          "external_sign_in_methods_first": {
            "type": "boolean",
            "description": "Determines whether external authentication providers are prioritized over other authenticators during sign-in.",
            "example": true
          },
          "password": {
            "description": "Password authenticator configuration.",
            "$ref": "#/components/schemas/PasswordAuthenticatorOptions"
          },
          "passkey": {
            "description": "Passkey authenticator configuration.",
            "$ref": "#/components/schemas/PasskeyAuthenticatorOptions"
          },
          "email": {
            "description": "Email authenticator configuration.",
            "$ref": "#/components/schemas/EmailAuthenticatorOptions"
          },
          "phone": {
            "description": "Phone authenticator configuration.",
            "$ref": "#/components/schemas/PhoneAuthenticatorOptions"
          }
        },
        "description": "Authenticator Options Response: Defines how users can authenticate, including password, passkeys, and external identity providers.",
        "x-model-type": "response"
      },
      "AuthorizationCode": {
        "required": [
          "authorized_scopes",
          "client_id",
          "creation_time",
          "id"
        ],
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "description": "The unique identifier of the grant.",
            "example": "HxI56Ol4FjIyUXZBJ6J24"
          },
          "client_id": {
            "type": "string",
            "description": "The unique identifier of the client to which the grant was issued.",
            "example": "eCOGRJYpnNwwAAuCeReEW"
          },
          "creation_time": {
            "type": "integer",
            "description": "Specifies the time at which the grant was issued (in Epoch).",
            "format": "date-time",
            "example": 1640975400
          },
          "session_id": {
            "type": [
              "null",
              "string"
            ],
            "description": "The unique identifier of the user session associated with this authorization code.",
            "example": "96484D319ACC21380CCE026E54807B4D"
          },
          "authorized_scopes": {
            "type": "array",
            "items": {
              "type": "string"
            },
            "description": "The scopes authorized by the user and associated with this authorization code.",
            "example": [
              "openid",
              "profile",
              "email"
            ]
          },
          "expiration": {
            "type": [
              "null",
              "integer"
            ],
            "description": "Specifies the time at which the authorization code expires (in Epoch).",
            "format": "date-time",
            "example": 1640975400
          }
        },
        "description": "Authorization Code: Represents a short-lived authorization code issued to a client.",
        "x-model-type": "response"
      },
      "BannedCertificate": {
        "required": [
          "creation_time",
          "id",
          "type",
          "value"
        ],
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "description": "The unique identifier of the banned certificate entry.",
            "example": "HvQrCGfYHEbd1Ue37DAq3"
          },
          "type": {
            "description": "Specifies the identifier type used to ban the certificate.",
            "examples": [
              "thumbprint"
            ],
            "$ref": "#/components/schemas/BannedCertificateType"
          },
          "value": {
            "type": "string",
            "description": "The certificate identifier value used for banning.",
            "example": "F1FB4FD68F15DAA29A0B935B2759986A92898030F1FB4FD68F15DAA29A0B935B"
          },
          "reason": {
            "type": [
              "null",
              "string"
            ],
            "description": "The reason explaining why the certificate was banned.",
            "example": "Privilege withdrawn"
          },
          "creation_time": {
            "type": "integer",
            "description": "Specifies the time at which the certificate was banned (in Epoch).",
            "format": "date-time",
            "example": 1640975400
          }
        },
        "description": "Banned Certificate Response: Represents a certificate that has been explicitly banned within a trust store.",
        "x-model-type": "response"
      },
      "BannedCertificateType": {
        "enum": [
          "thumbprint",
          "serial_number",
          "subject"
        ],
        "description": "The banned certificate identifier type.",
        "x-enum-descriptions": {
          "thumbprint": "Ban by certificate thumbprint.",
          "serial_number": "Ban by certificate serial number.",
          "subject": "Ban by certificate subject."
        }
      },
      "BannedSvid": {
        "required": [
          "creation_time",
          "id",
          "value"
        ],
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "description": "The unique identifier of the banned SVID entry.",
            "example": "HvQrCGfYHEbd1Ue37DAq3"
          },
          "value": {
            "type": "string",
            "description": "The identifier value used for banning.",
            "example": "spiffe://example.org/workload"
          },
          "reason": {
            "type": [
              "null",
              "string"
            ],
            "description": "The reason explaining why the SVID was banned.",
            "example": "Privilege withdrawn"
          },
          "creation_time": {
            "type": "integer",
            "description": "Specifies the time at which the SVID was banned (in Epoch).",
            "format": "date-time",
            "example": 1640975400
          }
        },
        "description": "Banned SVID Response: Represents a SVID that has been explicitly banned within a trust store.",
        "x-model-type": "response"
      },
      "BanTrustStoreCertificateRequest": {
        "required": [
          "value"
        ],
        "type": "object",
        "properties": {
          "type": {
            "description": "Specifies the identifier type used to ban the certificate.",
            "default": "thumbprint",
            "examples": [
              "thumbprint"
            ],
            "$ref": "#/components/schemas/BannedCertificateType"
          },
          "value": {
            "maxLength": 300,
            "minLength": 1,
            "type": "string",
            "description": "The certificate identifier value used for banning.",
            "example": "F1FB4FD68F15DAA29A0B935B2759986A92898030F1FB4FD68F15DAA29A0B935B"
          },
          "reason": {
            "maxLength": 200,
            "type": [
              "null",
              "string"
            ],
            "description": "The reason explaining why the certificate was banned.",
            "example": "Privilege withdrawn"
          }
        },
        "description": "Ban Trust Store Certificate Request: Defines a certificate identifier to be banned from mTLS authentication within a trust store.",
        "x-model-type": "create"
      },
      "BanTrustStoreSvidRequest": {
        "required": [
          "value"
        ],
        "type": "object",
        "properties": {
          "value": {
            "maxLength": 400,
            "minLength": 1,
            "type": "string",
            "description": "The identifier value used for banning.",
            "example": "spiffe://example.org/workload"
          },
          "reason": {
            "maxLength": 200,
            "type": [
              "null",
              "string"
            ],
            "description": "The reason explaining why the SVID was banned.",
            "example": "Privilege withdrawn"
          }
        },
        "description": "Ban Trust Store SVID Request: Defines a SPIFFE SVID that is blocked from authentication within a trust store.",
        "x-model-type": "create"
      },
      "BaseCertificateRevocation": {
        "required": [
          "creation_time",
          "id",
          "issued_at",
          "issuer_thumbprint",
          "type",
          "value"
        ],
        "properties": {
          "id": {
            "type": "string",
            "description": "The unique identifier of the revocation entry.",
            "example": "OjuVWCeAVnb5jjMF8GC6s"
          },
          "value": {
            "type": "string",
            "description": "The certificate revocation list (CRL) in PEM format.",
            "example": "-----BEGIN X509 CRL-----certificate_revocation_value-----END X509 CRL-----"
          },
          "issuer_thumbprint": {
            "type": "string",
            "description": "The thumbprint of the CA certificate that issued this CRL.",
            "example": "F1FB4FD68F15DAA29A0B935B2759986A92898030F1FB4FD68F15DAA29A0B935B"
          },
          "issued_at": {
            "type": "integer",
            "description": "Specifies the time at which the CRL was issued (in Epoch).",
            "format": "date-time",
            "example": 1640955670
          },
          "next_update": {
            "type": [
              "null",
              "integer"
            ],
            "description": "Specifies the time at which the next CRL update is expected (in Epoch).",
            "format": "date-time",
            "example": 1641025178
          },
          "creation_time": {
            "type": "integer",
            "description": "Specifies the time at which this revocation entry was created (in Epoch).",
            "format": "date-time",
            "example": 1640975400
          },
          "crl_number": {
            "type": [
              "null",
              "integer"
            ],
            "description": "The CRL number, as defined in the X.509 CRL extensions, used to identify the version or sequence of the certificate revocation list.",
            "format": "int32",
            "example": 80
          },
          "type": {
            "const": "base",
            "type": "string"
          }
        },
        "description": "Base Certificate Revocation Response: Represents a base certificate revocation list (CRL) configured for offline revocation checking within a trust store.",
        "x-model-type": "response"
      },
      "BasicApiAccessPolicy": {
        "required": [
          "actions",
          "client_id",
          "creation_time",
          "enabled",
          "id",
          "is_permitted",
          "last_updated",
          "name",
          "revision",
          "scopes",
          "type"
        ],
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "description": "The unique identifier of the policy.",
            "example": "GIbxRmxz2tIyQDVdGR4yE"
          },
          "enabled": {
            "type": "boolean",
            "description": "Indicates whether the policy is enabled.",
            "example": true
          },
          "name": {
            "type": "string",
            "description": "Human-readable name for the policy.",
            "example": "Billing access policy"
          },
          "description": {
            "type": [
              "null",
              "string"
            ],
            "description": "Description that explains the purpose of the policy.",
            "example": "Restricts billing API access to admins during business hours"
          },
          "type": {
            "description": "The policy authoring mode. Basic policies are authored using structured conditions; advanced policies are authored using Cedar policy source.",
            "examples": [
              "basic"
            ],
            "$ref": "#/components/schemas/PolicyTypes"
          },
          "is_permitted": {
            "type": "boolean",
            "description": "Indicates whether the policy grants access when matched.",
            "example": true
          },
          "actions": {
            "description": "Action settings applied when the policy matches.",
            "$ref": "#/components/schemas/ApiAccessPolicyActions"
          },
          "creation_time": {
            "type": "integer",
            "description": "Specifies the creation time of the policy (in Epoch).",
            "format": "date-time",
            "example": 1640975400
          },
          "last_updated": {
            "type": "integer",
            "description": "Specifies the last update time of the policy (in Epoch).",
            "format": "date-time",
            "example": 1640975400
          },
          "revision": {
            "type": "integer",
            "description": "Specifies the current version of the policy. Incremented on every update.",
            "format": "int32",
            "example": 1
          },
          "client_id": {
            "type": "string",
            "description": "The unique identifier of the client this policy applies to.",
            "example": "web-client"
          },
          "scopes": {
            "type": "array",
            "items": {
              "type": "string"
            },
            "description": "The API scopes that may be requested by the client. If empty, all scopes may be requested.",
            "example": [
              "read",
              "write"
            ]
          }
        },
        "description": "Basic API Access Policy Response: Represents a basic API access policy defined using structured conditions.",
        "x-model-type": "response"
      },
      "ChangePasswordRequest": {
        "required": [
          "old_password"
        ],
        "type": "object",
        "properties": {
          "new_password": {
            "type": [
              "null",
              "string"
            ],
            "description": "The new plain-text password to assign to the user.",
            "example": "SuperStrongPass12345!!!"
          },
          "new_password_hash": {
            "pattern": "^\\$2[aby]\\$\\d{2}\\$[./A-Za-z0-9]{53}$",
            "type": [
              "null",
              "string"
            ],
            "description": "A pre-computed password hash for the new password.\n>[!warning]\n> When provided, password validation and password policy requirements are not enforced. The hash is stored as-is.",
            "example": "$2a$12$LJdMf15uRsDpd57LKCGxSOTec3MD6jsgJhxRxCeSj2ZKobGo2xPDS"
          },
          "new_password_hash_algorithm": {
            "description": "Hashing algorithm used for the provided password hash.",
            "default": "bcrypt",
            "examples": [
              "bcrypt"
            ],
            "$ref": "#/components/schemas/PasswordAlgorithms"
          },
          "old_password": {
            "minLength": 1,
            "type": "string",
            "description": "The user's current plain-text password used for verification.",
            "example": "SuperStrongPass12345!!!"
          },
          "revoke_sessions": {
            "type": "boolean",
            "description": "A flag to indicate whether all active user sessions should be revoked when the password is updated.",
            "default": false,
            "example": false
          }
        },
        "description": "Change Password Request: Used to change a user's password, with support for plaintext or pre-hashed values.",
        "x-model-type": "update"
      },
      "ClaimResource": {
        "required": [
          "creation_time",
          "id",
          "is_default",
          "last_updated",
          "name",
          "show_in_discovery_document",
          "source"
        ],
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "description": "The unique identifier of the resource.",
            "example": "GIbxRmxz2tIyQDVdGR4yE"
          },
          "display_name": {
            "type": [
              "null",
              "string"
            ],
            "description": "Human-readable display name for the resource.",
            "example": "Designation"
          },
          "description": {
            "type": [
              "null",
              "string"
            ],
            "description": "Description that explains the purpose of the resource.",
            "example": "Current position in the employed organization"
          },
          "show_in_discovery_document": {
            "type": "boolean",
            "description": "Indicates whether this resource is advertised via the discovery document.",
            "example": true
          },
          "creation_time": {
            "type": "integer",
            "description": "Specifies the creation time of the resource (in Epoch).",
            "format": "date-time",
            "example": 1640975400
          },
          "last_updated": {
            "type": "integer",
            "description": "Specifies the last update time of the resource (in Epoch).",
            "format": "date-time",
            "example": 1640975400
          },
          "name": {
            "type": "string",
            "description": "The unique name of the claim.",
            "example": "designation"
          },
          "source": {
            "type": "string",
            "description": "Specifies the expression or attribute path used to derive the claim value from the user profile or identity context.",
            "example": "claims.first_name"
          },
          "is_default": {
            "type": "boolean",
            "description": "Indicates whether this claim is a built-in (system-defined) claim.",
            "example": false
          }
        },
        "description": "Claim Response: Represents a claim that may be included in identity tokens, access tokens, or `UserInfo` responses.",
        "x-model-type": "response"
      },
      "CommunicationEmailOptions": {
        "required": [
          "default_from_email",
          "provider"
        ],
        "type": "object",
        "properties": {
          "send_grid": {
            "oneOf": [
              {
                "type": "null"
              },
              {
                "description": "Configuration options for SendGrid email delivery.",
                "$ref": "#/components/schemas/CommunicationEmailSendGridOptions"
              }
            ]
          },
          "provider": {
            "description": "The email provider used for sending messages.",
            "examples": [
              "monocloud"
            ],
            "$ref": "#/components/schemas/EmailProviders"
          },
          "default_from_email": {
            "type": "string",
            "description": "The tenant-specific sender email address.",
            "example": "do-not-reply-e35cs8ud@mail-monocloud.com"
          }
        },
        "description": "Communication Email Options Response: Represents the email delivery configuration.",
        "x-model-type": "response"
      },
      "CommunicationEmailSendGridOptions": {
        "required": [
          "api_key",
          "from_email"
        ],
        "type": "object",
        "properties": {
          "api_key": {
            "type": "string",
            "description": "SendGrid API key used to authenticate requests to the SendGrid service.",
            "example": "KJFdlswierur458dfhkJHFwkoepOURFuasd"
          },
          "from_email": {
            "type": "string",
            "description": "The email address used as the sender for outgoing emails.",
            "example": "support@acme.com"
          },
          "from_name": {
            "type": [
              "null",
              "string"
            ],
            "description": "The display name used as the sender for outgoing emails.",
            "example": "Acme Support"
          }
        },
        "description": "Communication Email SendGrid Options Response: Represents SendGrid-specific email delivery configuration.",
        "x-model-type": "response"
      },
      "CommunicationOptions": {
        "required": [
          "email",
          "sms"
        ],
        "type": "object",
        "properties": {
          "email": {
            "description": "Configuration options for email delivery.",
            "$ref": "#/components/schemas/CommunicationEmailOptions"
          },
          "sms": {
            "description": "Configuration options for SMS delivery.",
            "$ref": "#/components/schemas/CommunicationSmsOptions"
          }
        },
        "description": "Communication Options Response: Represents the current email and SMS delivery configuration.",
        "x-model-type": "response"
      },
      "CommunicationSmsOptions": {
        "required": [
          "provider"
        ],
        "type": "object",
        "properties": {
          "twilio": {
            "oneOf": [
              {
                "type": "null"
              },
              {
                "description": "Configuration options for Twilio SMS delivery.",
                "$ref": "#/components/schemas/CommunicationSmsTwilioOptions"
              }
            ]
          },
          "provider": {
            "description": "The SMS provider used for sending messages.",
            "examples": [
              "monocloud"
            ],
            "$ref": "#/components/schemas/SmsProviders"
          }
        },
        "description": "Communication SMS Options Response: Represents SMS delivery configuration.",
        "x-model-type": "response"
      },
      "CommunicationSmsTwilioOptions": {
        "required": [
          "auth_token",
          "sid"
        ],
        "type": "object",
        "properties": {
          "sid": {
            "type": "string",
            "description": "The Twilio Account SID.",
            "example": "lakshGHIur984573"
          },
          "auth_token": {
            "type": "string",
            "description": "The Twilio Auth Token associated with the account.",
            "example": "867dsfujgFTe6724356tgfds"
          },
          "messaging_sid": {
            "type": [
              "null",
              "string"
            ],
            "description": "The Twilio Messaging Service SID used to send SMS messages.",
            "example": "867dsfujgFTe6724356tgfds"
          },
          "from": {
            "type": [
              "null",
              "string"
            ],
            "description": "The sender phone number or alphanumeric sender ID used for SMS messages.",
            "example": "ACME"
          }
        },
        "description": "Communication SMS Twilio Options Response: Represents Twilio-specific SMS delivery configuration.",
        "x-model-type": "response"
      },
      "CreateApiAccessAdvancedPolicyRequest": {
        "required": [
          "cedar",
          "name"
        ],
        "type": "object",
        "properties": {
          "enabled": {
            "type": "boolean",
            "description": "Indicates whether the policy is enabled.",
            "default": true,
            "example": true
          },
          "name": {
            "maxLength": 100,
            "minLength": 1,
            "type": "string",
            "description": "Human-readable name for the policy.",
            "example": "Billing access policy"
          },
          "description": {
            "maxLength": 200,
            "type": [
              "null",
              "string"
            ],
            "description": "Description that explains the purpose of the policy.",
            "example": "Restricts billing API access to admins during business hours"
          },
          "cedar": {
            "maxLength": 2000,
            "minLength": 1,
            "type": "string",
            "description": "The Cedar policy source used during evaluation for advanced policies.",
            "example": "permit (principal, action, resource == Api::\"https://api.example.com/billing\");"
          },
          "actions": {
            "description": "Action settings applied when the policy matches.",
            "$ref": "#/components/schemas/CreateApiAccessPolicyActionsRequest"
          },
          "error": {
            "maxLength": 200,
            "type": [
              "null",
              "string"
            ],
            "description": "Optional denial message returned to the client when this policy rejects a token request. If unset, a generic denial message is returned.",
            "example": "Access to the billing API requires admin approval."
          }
        },
        "description": "Create Advanced API Access Policy Request: Creates an advanced API access policy from raw Cedar policy source.",
        "x-model-type": "create"
      },
      "CreateApiAccessBasicPolicyRequest": {
        "required": [
          "client_id",
          "name"
        ],
        "type": "object",
        "properties": {
          "enabled": {
            "type": "boolean",
            "description": "Indicates whether the policy is enabled.",
            "default": true,
            "example": true
          },
          "name": {
            "maxLength": 100,
            "minLength": 1,
            "type": "string",
            "description": "Human-readable name for the policy.",
            "example": "Billing access policy"
          },
          "description": {
            "maxLength": 200,
            "type": [
              "null",
              "string"
            ],
            "description": "Description that explains the purpose of the policy.",
            "example": "Restricts billing API access to admins during business hours"
          },
          "actions": {
            "description": "Action settings applied when the policy matches.",
            "$ref": "#/components/schemas/CreateApiAccessPolicyActionsRequest"
          },
          "client_id": {
            "minLength": 1,
            "type": "string",
            "description": "The unique identifier of the client this policy applies to.",
            "example": "web-client"
          },
          "scopes": {
            "maxItems": 50,
            "type": "array",
            "items": {
              "maxLength": 50,
              "minLength": 1,
              "pattern": "^[a-z0-9]+([a-z0-9-.:_/]+[a-z0-9])?$",
              "type": "string"
            },
            "description": "The API scopes that may be requested by the client. If empty, all scopes may be requested.",
            "default": [ ],
            "example": [
              "read",
              "write"
            ]
          }
        },
        "description": "Create Basic API Access Policy Request: Creates a basic API access policy using structured conditions.",
        "x-model-type": "create"
      },
      "CreateApiAccessPolicyActionsRequest": {
        "type": "object",
        "properties": {
          "access_token_type": {
            "oneOf": [
              {
                "type": "null"
              },
              {
                "description": "Overrides whether access tokens are issued as self-contained JWTs or opaque reference tokens. When unset, the API resource default is used.",
                "examples": [
                  "jwt"
                ],
                "$ref": "#/components/schemas/AccessTokenTypes"
              }
            ]
          },
          "access_token_lifetime": {
            "maximum": 2592000,
            "minimum": 5,
            "type": [
              "null",
              "integer"
            ],
            "description": "Overrides the access token lifetime (in seconds). When unset, the API resource default is used.",
            "format": "int32",
            "example": 3600
          },
          "allow_multi_audience": {
            "type": [
              "null",
              "boolean"
            ],
            "description": "Overrides whether access tokens issued for this resource may include additional audiences. When unset, the API resource default is used.\n>[!note]\n> ScaleX subscription required to allow multi-audience tokens.",
            "example": false
          },
          "allow_user_info_access": {
            "type": [
              "null",
              "boolean"
            ],
            "description": "Overrides whether access tokens issued for this resource may include identity scopes and be used with identity endpoints such as UserInfo. When unset, the API resource default is used.\n>[!note]\n> ScaleX subscription required to allow UserInfo access.",
            "example": true
          },
          "bind_tokens_to_session": {
            "type": [
              "null",
              "boolean"
            ],
            "description": "Overrides whether access tokens issued for this resource are bound to the user session and revoked when the session ends. When unset, the API resource default is used.\n>[!note]\n> ScaleX subscription required to use session binding.",
            "example": true
          }
        },
        "description": "Create API Access Policy Actions Request: Action settings for an API Access Policy rule.",
        "x-model-type": "create"
      },
      "CreateApiResourceRequest": {
        "required": [
          "audience"
        ],
        "type": "object",
        "properties": {
          "enabled": {
            "type": "boolean",
            "description": "Indicates whether the resource is enabled.",
            "default": true,
            "example": true
          },
          "display_name": {
            "maxLength": 50,
            "type": [
              "null",
              "string"
            ],
            "description": "Human-readable display name for the resource.",
            "example": "Designation"
          },
          "description": {
            "maxLength": 200,
            "type": [
              "null",
              "string"
            ],
            "description": "Description that explains the purpose of the resource.",
            "example": "Current position in the employed organization"
          },
          "audience": {
            "maxLength": 400,
            "minLength": 1,
            "type": "string",
            "description": "Audience value that will be included in issued access tokens for this API resource.",
            "format": "uri",
            "example": "https://example.com"
          },
          "allow_multi_audience": {
            "type": "boolean",
            "description": "Default value for whether access tokens issued for this API resource may carry additional audiences beyond this resource. Used when no matching API access policy provides an override.\n>[!note]\n> ScaleX subscription required to allow multi-audience tokens.",
            "default": false,
            "example": false
          },
          "allow_user_info_access": {
            "type": "boolean",
            "description": "Default value for whether access tokens issued for this API resource may include identity scopes, allowing them to be used with identity-related endpoints such as `UserInfo`. Used when no matching API access policy provides an override.\n>[!note]\n> ScaleX subscription required to allow UserInfo access.",
            "default": false,
            "example": true
          },
          "access_token_type": {
            "description": "Default access token type for this API resource. Used when no matching API access policy provides an override.",
            "default": "jwt",
            "examples": [
              "jwt"
            ],
            "$ref": "#/components/schemas/AccessTokenTypes"
          },
          "access_token_lifetime": {
            "maximum": 2592000,
            "minimum": 5,
            "type": "integer",
            "description": "Default access token lifetime (in seconds) for this API resource. Used when no matching API access policy provides an override.",
            "format": "int32",
            "default": 3600,
            "example": 3600
          },
          "bind_tokens_to_session": {
            "type": "boolean",
            "description": "Default value for whether access tokens issued for this API resource are bound to the user session, causing them to be revoked when the session ends. Used when no matching API access policy provides an override.\n>[!note]\n> ScaleX subscription required to use session binding.",
            "default": false,
            "example": true
          },
          "include_jwt_id": {
            "type": "boolean",
            "description": "Determines whether access tokens issued for this API resource include a unique token identifier (jti).\n>[!note]\n> Recommended for auditing, correlation, and replay-detection.",
            "default": true,
            "example": true
          },
          "user_claims": {
            "maxItems": 100,
            "uniqueItems": true,
            "type": "array",
            "items": {
              "maxLength": 100,
              "minLength": 1,
              "pattern": "^[a-z0-9]+([a-z0-9_]+[a-z0-9])?$",
              "type": "string"
            },
            "description": "List of user claim types that will be embedded into access tokens issued for this API resource.",
            "default": [ ],
            "example": [
              "job_title"
            ]
          },
          "auto_generate_secret": {
            "type": "boolean",
            "description": "Automatically generates a secure secret when the API resource is created. This secret is used by the resource to authenticate when performing token introspection.\n>[!note]\n> ScaleX subscription required to generate API secrets.",
            "default": false,
            "example": false
          }
        },
        "description": "Create API Resource Request: Creates a protected backend or service.",
        "x-model-type": "create"
      },
      "CreateApiScopeRequest": {
        "required": [
          "name"
        ],
        "type": "object",
        "properties": {
          "display_name": {
            "maxLength": 50,
            "type": [
              "null",
              "string"
            ],
            "description": "Human-readable display name for the resource.",
            "example": "Designation"
          },
          "description": {
            "maxLength": 200,
            "type": [
              "null",
              "string"
            ],
            "description": "Description that explains the purpose of the resource.",
            "example": "Current position in the employed organization"
          },
          "show_in_discovery_document": {
            "type": "boolean",
            "description": "Indicates whether this API scope is advertised via the discovery document.",
            "default": false,
            "example": true
          },
          "name": {
            "maxLength": 50,
            "minLength": 1,
            "pattern": "^[a-z0-9]+([a-z0-9-.:_/]+[a-z0-9])?$",
            "type": "string",
            "description": "The unique name of the scope. This is the value a client will use for the scope parameter in the authorize request.",
            "example": "user_profile"
          },
          "required": {
            "type": "boolean",
            "description": "Specifies whether the scope is mandatory and cannot be de-selected by the user on the consent screen.",
            "default": false,
            "example": false
          },
          "emphasize": {
            "type": "boolean",
            "description": "Indicates whether this scope is visually emphasized on the consent screen, typically for sensitive or high-impact permissions.",
            "default": false,
            "example": false
          },
          "is_default": {
            "type": "boolean",
            "description": "Specifies whether this scope is automatically included in issued tokens when the `scope` parameter is omitted.",
            "default": false,
            "example": false
          },
          "user_claims": {
            "maxItems": 100,
            "uniqueItems": true,
            "type": "array",
            "items": {
              "maxLength": 100,
              "minLength": 1,
              "pattern": "^[a-z0-9]+([a-z0-9_]+[a-z0-9])?$",
              "type": "string"
            },
            "description": "List of user claim types that will be embedded into access tokens when this scope is granted.",
            "default": [ ],
            "example": [
              "email_address",
              "phone_number",
              "given_name"
            ]
          }
        },
        "description": "Create API Scope Request: Creates a permission scope for an API resource.",
        "x-model-type": "create"
      },
      "CreateApplicationRequest": {
        "required": [
          "allowed_grant_types",
          "client_name"
        ],
        "type": "object",
        "properties": {
          "enabled": {
            "type": "boolean",
            "description": "Indicates whether the client is enabled.",
            "default": true,
            "example": true
          },
          "app_type": {
            "description": "Preferred application type for the client.",
            "default": "custom",
            "examples": [
              "spa"
            ],
            "$ref": "#/components/schemas/ApplicationTypes"
          },
          "tech_type": {
            "description": "Preferred technology stack for the client.",
            "default": "unknown",
            "examples": [
              "javascript"
            ],
            "$ref": "#/components/schemas/TechTypes"
          },
          "require_client_secret": {
            "type": "boolean",
            "description": "Requires confidential clients to present a client secret when requesting tokens.\n>[!warning]\n> Only disable for public clients (e.g., SPA / mobile).",
            "default": true,
            "example": true
          },
          "client_name": {
            "maxLength": 50,
            "minLength": 1,
            "type": "string",
            "description": "Human-readable name for the client application, displayed to users on the login and consent screens.",
            "example": "Accounting Dashboard"
          },
          "description": {
            "maxLength": 200,
            "type": [
              "null",
              "string"
            ],
            "description": "Description that explains the purpose of the client application.",
            "example": "Handles financial reporting, general ledger maintenance, and related operations."
          },
          "client_uri": {
            "maxLength": 400,
            "type": [
              "null",
              "string"
            ],
            "description": "Public URL that provides additional information about the client application.",
            "format": "uri",
            "example": "https://www.organization/accounting"
          },
          "logo_uri": {
            "maxLength": 400,
            "type": [
              "null",
              "string"
            ],
            "description": "URL of the client application logo, displayed on the consent screen to help users identify the application.",
            "format": "uri",
            "example": "https://www.organization/accounting_logo.png"
          },
          "enable_consent": {
            "type": "boolean",
            "description": "Indicates whether the consents are enabled for the client.\n>[!note]\n> Secure+ subscription required to use consents.",
            "default": false,
            "example": false
          },
          "require_consent": {
            "type": "boolean",
            "description": "Controls whether users are prompted to review and approve requested permissions.\n>[!note]\n> Secure+ subscription required to use consents.",
            "default": false,
            "example": false
          },
          "always_require_consent_for_offline_access": {
            "type": "boolean",
            "description": "Always prompts users for consent when requesting offline (refresh token) access.\n>[!note]\n> This setting applies even if the user previously chose to remember their consent.\r\nSecure+ subscription required to use consents.",
            "default": false,
            "example": false
          },
          "remember_consent": {
            "description": "Controls how consent decisions are remembered for future sign-ins.",
            "default": "user_selected",
            "examples": [
              "user_selected"
            ],
            "$ref": "#/components/schemas/RememberConsentTypes"
          },
          "show_consent_scope_selection": {
            "type": "boolean",
            "description": "Allows end users to choose which requested scopes to grant on the consent screen.\n>[!note]\n> Secure+ subscription required to use consents.",
            "default": true,
            "example": true
          },
          "always_include_user_claims_in_id_token": {
            "type": "boolean",
            "description": "Always embeds user claims in the ID token instead of requiring calls to the `UserInfo` endpoint.\n>[!note]\n> Enabling this increases the ID token size and may expose more user data to applications than necessary.",
            "default": false,
            "example": false
          },
          "allowed_grant_types": {
            "maxItems": 10,
            "uniqueItems": true,
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/GrantTypes"
            },
            "description": "Defines which OAuth / OIDC grant types this client is permitted to use.\n>[!note]\n> Only valid and secure grant combinations are supported.",
            "example": [
              "hybrid",
              "device_code"
            ]
          },
          "require_pkce": {
            "type": "boolean",
            "description": "Requires Proof Key for Code Exchange (PKCE) for authorization code flows.\n>[!note]\n> Strongly recommended for public clients such as SPAs and mobile applications.",
            "default": true,
            "example": true
          },
          "allow_plain_text_pkce": {
            "type": "boolean",
            "description": "Allows Proof Key for Code Exchange (PKCE) verification using the plain (unhashed) method.\n>[!warning]\n> Use only for legacy compatibility — strongly discouraged for production.",
            "default": false,
            "example": false
          },
          "require_request_object": {
            "type": "boolean",
            "description": "Requires authorization requests to be sent as signed JWT request objects (JAR).\n>[!note]\n> Secure+ subscription required to use JWT request objects (JAR).",
            "default": false,
            "example": false
          },
          "require_pushed_authorization_requests": {
            "type": "boolean",
            "description": "Requires clients to use Pushed Authorization Requests (PAR) instead of sending parameters directly to the authorization endpoint.\n>[!note]\n> Secure+ subscription required to use Pushed Authorization Requests (PAR).",
            "default": false,
            "example": false
          },
          "allow_any_pushed_authorization_redirect_uri": {
            "type": "boolean",
            "description": "Allows the client to use any redirect URI when using Pushed Authorization Requests (PAR), instead of being limited to the configured redirect URI list.\n>[!note]\n> Secure+ subscription required to use Pushed Authorization Requests (PAR).",
            "default": false,
            "example": false
          },
          "authorization_request_lifetime": {
            "maximum": 3600,
            "minimum": 1,
            "type": "integer",
            "description": "Lifetime of the authorization request (in seconds). Controls how long the request data is considered valid during the authorization flow.",
            "format": "int32",
            "default": 600,
            "example": 600
          },
          "allow_access_tokens_via_browser": {
            "type": "boolean",
            "description": "Controls whether access tokens may be transmitted via the browser for this client.\n>[!warning]\n> Enable only when absolutely necessary. Returning access tokens to the browser increases the risk of leakage through logs, plugins, redirects, or malicious scripts. Recommended to keep disabled and prefer the Authorization Code + PKCE flow.",
            "default": false,
            "example": false
          },
          "redirect_uris": {
            "maxItems": 50,
            "uniqueItems": true,
            "type": "array",
            "items": {
              "maxLength": 400,
              "minLength": 1,
              "type": "string",
              "format": "uri"
            },
            "description": "List of approved redirect URIs where authorization codes or tokens may be sent.\n>[!note]\n> Only exact, fully-qualified matches are allowed.",
            "default": [ ],
            "example": [
              "https://www.organization/accounting/redirect1",
              "https://www.organization/hr/redirect"
            ]
          },
          "post_logout_redirect_uris": {
            "maxItems": 50,
            "uniqueItems": true,
            "type": "array",
            "items": {
              "maxLength": 400,
              "minLength": 1,
              "type": "string",
              "format": "uri"
            },
            "description": "List of approved URIs users can be redirected to after a successful logout.\n>[!note]\n> Only exact, fully-qualified matches are allowed.",
            "default": [ ],
            "example": [
              "https://www.organization/accounting/loggedout",
              "https://www.organization/hr/loggedout"
            ]
          },
          "front_channel_logout_uri": {
            "maxLength": 400,
            "type": [
              "null",
              "string"
            ],
            "description": "Browser-based (front-channel) endpoint on the client that receives user logout notifications from MonoCloud.\n>[!note]\n> Pro plan subscription required to use front-channel logout.",
            "format": "uri",
            "example": "https://www.organization/accounting/frontLogout"
          },
          "front_channel_logout_session_required": {
            "type": "boolean",
            "description": "Indicates whether the user’s session identifier should be included when invoking the front-channel logout URI.\n>[!note]\n> Pro plan subscription required to use front-channel logout.",
            "default": true,
            "example": true
          },
          "back_channel_logout_uri": {
            "maxLength": 400,
            "type": [
              "null",
              "string"
            ],
            "description": "Server-side (back-channel) endpoint that MonoCloud calls to notify the application of a user logout.\n>[!note]\n> Secure+ subscription required to use back-channel logout.",
            "format": "uri",
            "example": "https://www.organization/accounting/backLogout"
          },
          "back_channel_logout_session_required": {
            "type": "boolean",
            "description": "Indicates whether the user’s session identifier should be included when invoking the back-channel logout URI.\n>[!note]\n> Secure+ subscription required to use back-channel logout.",
            "default": true,
            "example": true
          },
          "bind_refresh_tokens_to_session": {
            "type": "boolean",
            "description": "Binds refresh tokens issued for the client to the user's session. When enabled, refresh tokens are automatically revoked when the user signs out or the session expires.\n>[!note]\n> ScaleX subscription required to use session binding.",
            "default": false,
            "example": true
          },
          "allow_offline_access": {
            "type": "boolean",
            "description": "Allows the client to obtain refresh tokens using the `offline_access` scope.\n>[!note]\n> Use only for trusted applications that can securely store long-lived tokens.",
            "default": false,
            "example": false
          },
          "allowed_identity_scopes": {
            "maxItems": 50,
            "uniqueItems": true,
            "type": "array",
            "items": {
              "maxLength": 50,
              "minLength": 1,
              "pattern": "^[a-z0-9]+([a-z0-9-.:_/]+[a-z0-9])?$",
              "type": "string"
            },
            "description": "Defines the approved identity scopes that this client is authorized to request.",
            "default": [ ],
            "example": [
              "openid",
              "profile",
              "email"
            ]
          },
          "identity_token_lifetime": {
            "maximum": 2592000,
            "minimum": 5,
            "type": "integer",
            "description": "Specifies how long an ID token remains valid (in seconds).",
            "format": "int32",
            "default": 300,
            "example": 300
          },
          "access_token_lifetime": {
            "maximum": 2592000,
            "minimum": 5,
            "type": "integer",
            "description": "Specifies how long access tokens issued without API resource scopes remain valid (in seconds). These tokens may only be used with the UserInfo endpoint.",
            "format": "int32",
            "default": 3600,
            "example": 3600
          },
          "authorization_code_lifetime": {
            "maximum": 600,
            "minimum": 1,
            "type": "integer",
            "description": "Specifies how long an authorization code remains valid (in seconds).",
            "format": "int32",
            "default": 300,
            "example": 300
          },
          "consent_lifetime": {
            "maximum": 2147483647,
            "minimum": 0,
            "type": "integer",
            "description": "Specifies the validity period for stored user consent (in seconds). Set to `0` to allow consent to remain valid indefinitely.\n>[!note]\n> Secure+ subscription required to use consents.",
            "format": "int32",
            "default": 0,
            "example": 604800
          },
          "absolute_refresh_token_lifetime": {
            "maximum": 157788000,
            "minimum": 5,
            "type": "integer",
            "description": "Specifies the maximum lifetime of a refresh token (in seconds), regardless of how often it is used.\n>[!note]\n> ScaleX subscription required to configure refresh token lifetimes longer than a month.",
            "format": "int32",
            "default": 2592000,
            "example": 2592000
          },
          "sliding_refresh_token_lifetime": {
            "maximum": 157788000,
            "minimum": 5,
            "type": "integer",
            "description": "Defines the sliding expiration window for refresh tokens (in seconds). Token expiry is extended on each valid refresh, subject to the absolute refresh token lifetime.",
            "format": "int32",
            "default": 1296000,
            "example": 1296000
          },
          "refresh_token_usage": {
            "description": "Controls whether refresh tokens are single-use (rotated) or reusable.",
            "default": "one_time_only",
            "examples": [
              "one_time_only"
            ],
            "$ref": "#/components/schemas/RefreshTokenUsageTypes"
          },
          "update_access_token_claims_on_refresh": {
            "type": "boolean",
            "description": "Controls whether access token claims are recalculated and reissued when refreshing a token.",
            "default": false,
            "example": false
          },
          "emit_offline_access_scope_in_access_token": {
            "type": "boolean",
            "description": "Includes the `offline_access` scope in issued access tokens when requested by the client.",
            "default": false,
            "example": false
          },
          "refresh_token_expiration": {
            "description": "Controls whether refresh tokens expire at a fixed time or are extended with continued use.",
            "default": "absolute",
            "examples": [
              "absolute"
            ],
            "$ref": "#/components/schemas/RefreshTokenExpirationTypes"
          },
          "access_token_type": {
            "description": "Specifies whether access tokens issued without API resource scopes are issued as self-contained JWTs or opaque reference tokens. These tokens may only be used with the UserInfo endpoint.",
            "default": "jwt",
            "examples": [
              "jwt"
            ],
            "$ref": "#/components/schemas/AccessTokenTypes"
          },
          "authenticator_restrictions": {
            "maxLength": 20,
            "pattern": "^[a-z0-9]+([a-z0-9_-]+[a-z0-9])?$",
            "uniqueItems": true,
            "type": "array",
            "items": {
              "type": "string"
            },
            "description": "Defines the authenticators users may use to sign in with this client. Leave empty to inherit the global authenticator policy.\n>[!note]\n> Pro plan subscription required to enable authenticator restrictions.",
            "default": [ ],
            "example": [
              "email",
              "google"
            ]
          },
          "claims": {
            "type": "object",
            "additionalProperties": { },
            "description": "Defines custom claims issued to this client and embedded into access tokens for downstream APIs and resources."
          },
          "always_send_client_claims": {
            "type": "boolean",
            "description": "Controls whether client claims are always emitted in access tokens, or only when using the client credentials flow.",
            "default": false,
            "example": false
          },
          "client_claims_prefix": {
            "maxLength": 50,
            "pattern": "^[a-zA-Z0-9][a-zA-Z0-9_]*$",
            "type": [
              "null",
              "string"
            ],
            "description": "Configures a prefix for client claims, helping avoid naming collisions across tokens and downstream APIs.",
            "default": "client_",
            "example": "client_"
          },
          "allowed_cors_origins": {
            "maxItems": 50,
            "uniqueItems": true,
            "type": "array",
            "items": {
              "maxLength": 400,
              "minLength": 1,
              "type": "string",
              "format": "uri"
            },
            "description": "Configures the set of trusted origins permitted to perform cross-origin requests for this client.",
            "default": [ ],
            "example": [
              "https://accounting.organization",
              "https://hr.organization"
            ]
          },
          "user_sso_lifetime": {
            "maximum": 31557600,
            "minimum": 0,
            "type": "integer",
            "description": "Maximum allowed SSO duration (in seconds). After this window, users must sign in again to confirm identity. Set to `0` to disable the limit.",
            "format": "int32",
            "default": 0,
            "example": 604800
          },
          "device_code_length": {
            "maximum": 16,
            "minimum": 4,
            "type": "integer",
            "description": "Specifies the length of the user verification code generated for the device flow.",
            "format": "int32",
            "default": 6,
            "example": 6
          },
          "device_code_lifetime": {
            "maximum": 3600,
            "minimum": 30,
            "type": "integer",
            "description": "Specifies the lifetime of the device authorization code (in seconds).",
            "format": "int32",
            "default": 300,
            "example": 180
          },
          "auto_generate_secret": {
            "type": "boolean",
            "description": "Automatically generates a secure application secret when the application is created.",
            "default": false,
            "example": false
          }
        },
        "description": "Create Application Request: Creates an OpenID Connect or OAuth 2.0 client configuration.",
        "x-model-type": "create"
      },
      "CreateClaimResourceRequest": {
        "required": [
          "name",
          "source"
        ],
        "type": "object",
        "properties": {
          "display_name": {
            "maxLength": 50,
            "type": [
              "null",
              "string"
            ],
            "description": "Human-readable display name for the resource.",
            "example": "Designation"
          },
          "description": {
            "maxLength": 200,
            "type": [
              "null",
              "string"
            ],
            "description": "Description that explains the purpose of the resource.",
            "example": "Current position in the employed organization"
          },
          "show_in_discovery_document": {
            "type": "boolean",
            "description": "Indicates whether this resource is advertised via the discovery document.",
            "default": true,
            "example": true
          },
          "name": {
            "maxLength": 50,
            "minLength": 1,
            "pattern": "^[a-z0-9]+([a-z0-9_]+[a-z0-9])?$",
            "type": "string",
            "description": "The unique name of the claim.",
            "example": "designation"
          },
          "source": {
            "maxLength": 100,
            "minLength": 1,
            "pattern": "^(claims|groups|public_data|private_data)([a-zA-Z0-9[\\]._]*(?<!\\.))$",
            "type": "string",
            "description": "Specifies the expression or attribute path used to derive the claim value from the user profile or identity context.",
            "example": "claims.first_name"
          }
        },
        "description": "Create Claim Resource Request: Creates a claim that defines how claim values are resolved from the identity context.",
        "x-model-type": "create"
      },
      "CreateExternalProviderConnectionRequest": {
        "required": [
          "discovery_url"
        ],
        "type": "object",
        "properties": {
          "discovery_url": {
            "type": "string",
            "description": "The discovery (metadata) endpoint of the external provider. The provider endpoints are derived from the discovery document.",
            "example": "https://sso.acme.com/.well-known/openid-configuration"
          },
          "pkce_mode": {
            "description": "The PKCE mode used with the external provider.",
            "default": "auto",
            "examples": [
              "auto"
            ],
            "$ref": "#/components/schemas/OidcPkceMode"
          }
        },
        "description": "Create External Provider Connection Request: The protocol connection settings used to communicate with the external identity provider.",
        "x-model-type": "create"
      },
      "CreateExternalProviderCredentialsRequest": {
        "required": [
          "client_id",
          "client_secret"
        ],
        "type": "object",
        "properties": {
          "client_id": {
            "type": "string",
            "description": "The client identifier issued by the external identity provider.",
            "example": "Lkidgf845hKHrfwehf_jgf"
          },
          "client_secret": {
            "type": "string",
            "description": "The client secret issued by the external identity provider.",
            "example": "JJfgi4597fs9hkmkdfrk_jfhh4uuNBFl"
          },
          "apple_team_id": {
            "type": [
              "null",
              "string"
            ],
            "description": "The Apple Developer Team ID used to sign the client secret. Applies only to the Sign in with Apple provider.",
            "example": "kjGD8745hasd"
          },
          "apple_key_id": {
            "type": [
              "null",
              "string"
            ],
            "description": "The Apple Key ID used to sign the client secret. Applies only to the Sign in with Apple provider.",
            "example": "styfderhrwe456"
          }
        },
        "description": "Create External Provider Credentials Request: The client credentials issued by the external identity provider.",
        "x-model-type": "create"
      },
      "CreateExternalProviderRequest": {
        "required": [
          "authenticator",
          "name"
        ],
        "type": "object",
        "properties": {
          "name": {
            "maxLength": 20,
            "minLength": 1,
            "pattern": "^[a-z0-9]+([a-z0-9_-]+[a-z0-9])?$",
            "type": "string",
            "description": "The unique logical name of the connection. Identifies the connection and addresses it through the API.",
            "example": "acme"
          },
          "authenticator": {
            "description": "The external identity provider of the connection.",
            "examples": [
              "custom_enterprise"
            ],
            "$ref": "#/components/schemas/ExternalAuthenticators"
          },
          "display_name": {
            "maxLength": 20,
            "type": [
              "null",
              "string"
            ],
            "description": "A custom display name for the provider's sign-in button. When not set, the provider's default display name is used.",
            "example": "Sign in with Acme"
          },
          "icon": {
            "maxLength": 400,
            "type": [
              "null",
              "string"
            ],
            "description": "A custom icon URL for the provider's sign-in button. When not set, the provider's default icon is used.",
            "format": "uri",
            "example": "https://cdn.acme.com/icons/sso.svg"
          },
          "enable_sign_in": {
            "type": "boolean",
            "description": "Specifies whether users can sign in using this external identity provider.",
            "default": true,
            "example": true
          },
          "enable_sign_up": {
            "type": "boolean",
            "description": "Specifies whether new users can sign up using this external identity provider.",
            "default": true,
            "example": true
          },
          "show_on_login_page": {
            "type": "boolean",
            "description": "Specifies whether the provider's sign-in button is shown on the login page.",
            "default": true,
            "example": true
          },
          "credentials": {
            "oneOf": [
              {
                "type": "null"
              },
              {
                "description": "The client credentials issued by the external identity provider. When not set, MonoCloud-managed credentials are used.",
                "$ref": "#/components/schemas/CreateExternalProviderCredentialsRequest"
              }
            ]
          },
          "connection": {
            "oneOf": [
              {
                "type": "null"
              },
              {
                "description": "The protocol connection settings used to communicate with the external identity provider. Applies only to custom and enterprise connections.",
                "$ref": "#/components/schemas/CreateExternalProviderConnectionRequest"
              }
            ]
          },
          "scopes": {
            "maxItems": 100,
            "uniqueItems": true,
            "type": "array",
            "items": {
              "maxLength": 100,
              "minLength": 1,
              "pattern": "^[a-z0-9]+([a-z0-9-.:_/]+[a-z0-9])?$",
              "type": "string"
            },
            "description": "The set of scopes requested from the external identity provider during authentication.",
            "default": [ ],
            "example": [
              "openid",
              "profile",
              "email"
            ]
          },
          "claim_mappings": {
            "type": "object",
            "additionalProperties": {
              "type": "string"
            },
            "description": "A map of claim names to upstream source claim names used to map the upstream profile onto the MonoCloud user.",
            "example": {
              "email": "mail",
              "name": "displayName"
            }
          },
          "authorization_parameters": {
            "type": "object",
            "additionalProperties": {
              "type": "string"
            },
            "description": "A map of parameter names to the values sent to the external provider's authorization endpoint.\nA value prefixed with `$` forwards the incoming authorization request query parameter with that name; any other value is sent as-is.",
            "example": {
              "login_hint": "$login_hint",
              "prompt": "consent"
            }
          },
          "trust_email": {
            "description": "Determines whether the email received from the external provider is treated as verified.",
            "default": "as_provided",
            "examples": [
              "as_provided"
            ],
            "$ref": "#/components/schemas/TrustIdentifierModes"
          },
          "trust_phone": {
            "description": "Determines whether the phone number received from the external provider is treated as verified.",
            "default": "as_provided",
            "examples": [
              "as_provided"
            ],
            "$ref": "#/components/schemas/TrustIdentifierModes"
          },
          "sync_user_profile_always": {
            "type": "boolean",
            "description": "Specifies whether the user profile should be synchronized from the external provider on each successful sign-in.",
            "default": true,
            "example": true
          },
          "sync_idp_claims_always": {
            "type": "boolean",
            "description": "Specifies whether the IdP claims should be synchronized from the external provider on each successful sign-in.",
            "default": true,
            "example": true
          },
          "home_realm_domains": {
            "maxItems": 25,
            "uniqueItems": true,
            "type": "array",
            "items": {
              "type": "string"
            },
            "description": "The email domains routed to this provider through home realm discovery.",
            "default": [ ],
            "example": [
              "acme.com",
              "acme.io"
            ]
          },
          "priority": {
            "type": "integer",
            "description": "The priority of the external provider. Used to order the provider relative to others.",
            "format": "int32",
            "default": 0,
            "example": 0
          }
        },
        "description": "Create External Provider Request: Used to create an external authenticator.",
        "x-model-type": "create"
      },
      "CreateGroupRequest": {
        "required": [
          "name"
        ],
        "type": "object",
        "properties": {
          "name": {
            "minLength": 1,
            "type": "string",
            "description": "The display name of the group.",
            "example": "Administrators"
          },
          "description": {
            "type": [
              "null",
              "string"
            ],
            "description": "Description that explains the purpose or role of the group.",
            "example": "The administrator group"
          },
          "is_auto_assigned": {
            "type": "boolean",
            "description": "Indicates whether users are automatically added to this group upon sign-up.",
            "default": false,
            "example": false
          }
        },
        "description": "Create Group Request: Used to create a new group.",
        "x-model-type": "create"
      },
      "CreateIpNetworkZoneRequest": {
        "required": [
          "category",
          "name",
          "operator"
        ],
        "type": "object",
        "properties": {
          "enabled": {
            "type": "boolean",
            "description": "Indicates whether the zone is enabled.",
            "default": true,
            "example": true
          },
          "name": {
            "maxLength": 50,
            "minLength": 1,
            "type": "string",
            "description": "Human-readable name for the zone.",
            "example": "Designation"
          },
          "description": {
            "maxLength": 200,
            "type": [
              "null",
              "string"
            ],
            "description": "Description that explains the zone.",
            "example": "Location of the Company Headquarters"
          },
          "category": {
            "description": "The category the zone belongs to.",
            "examples": [
              "trusted"
            ],
            "$ref": "#/components/schemas/NetworkZoneCategory"
          },
          "operator": {
            "description": "The evaluation operator for the network zone.",
            "examples": [
              "not_in"
            ],
            "$ref": "#/components/schemas/NetworkZoneOperator"
          },
          "ip_ranges": {
            "maxItems": 100,
            "minItems": 1,
            "uniqueItems": true,
            "type": "array",
            "items": {
              "minLength": 1,
              "type": "string"
            },
            "description": "List of IPv4/IPv6 addresses or CIDR ranges.",
            "default": [ ],
            "example": [
              "156.3.59.5",
              "2001:db8::/32"
            ]
          }
        },
        "description": "Create IP Network Zone Request: Used to create an IP network zone.",
        "x-model-type": "create"
      },
      "CreatePkiTrustStoreOptionsRequest": {
        "type": "object",
        "properties": {
          "validate_certificate_use": {
            "type": "boolean",
            "description": "Indicates whether the client certificate is validated for client authentication, including Client Authentication EKU checks across the certificate chain.",
            "default": true,
            "example": true
          },
          "validate_validity_period": {
            "type": "boolean",
            "description": "Indicates whether the certificate validity period (`NotBefore` / `NotAfter`) is enforced.",
            "default": true,
            "example": true
          },
          "revocation_mode": {
            "description": "Specifies how certificate revocation status is evaluated.",
            "default": "offline",
            "examples": [
              "offline"
            ],
            "$ref": "#/components/schemas/X509RevocationMode"
          },
          "revocation_check_depth": {
            "description": "Specifies how revocation checks are applied across the certificate chain.",
            "default": "end_certificate_only",
            "examples": [
              "end_certificate_only"
            ],
            "$ref": "#/components/schemas/RevocationCheckDepth"
          },
          "revocation_check_clock_skew": {
            "maximum": 3600,
            "minimum": 0,
            "type": "integer",
            "description": "Specifies the allowed clock skew used when validating CRL issuance times and OCSP responses (in seconds).",
            "format": "int32",
            "default": 300,
            "example": 300
          },
          "ocsp_check_timeout": {
            "maximum": 30,
            "minimum": 3,
            "type": "integer",
            "description": "Specifies the timeout for OCSP responder calls when online revocation checking is enabled (in seconds).",
            "format": "int32",
            "default": 10,
            "example": 10
          },
          "online_crl_check_timeout": {
            "maximum": 30,
            "minimum": 3,
            "type": "integer",
            "description": "Specifies the timeout for downloading CRLs from certificate distribution points (CDPs) when online revocation checking is enabled (in seconds).",
            "format": "int32",
            "default": 10,
            "example": 10
          },
          "certificate_auth_cache_duration": {
            "maximum": 3600,
            "minimum": 0,
            "type": "integer",
            "description": "Specifies how long certificate authentication results are cached (in seconds).",
            "format": "int32",
            "default": 300,
            "example": 300
          },
          "ocsp_cache_duration": {
            "maximum": 86400,
            "minimum": 0,
            "type": "integer",
            "description": "Specifies how long OCSP responses are cached when online OCSP checking is enabled (in seconds).",
            "format": "int32",
            "default": 1800,
            "example": 1800
          },
          "online_crl_cache_duration": {
            "maximum": 86400,
            "minimum": 0,
            "type": "integer",
            "description": "Specifies how long downloaded CRLs are cached when online CRL checking is enabled (in seconds).",
            "format": "int32",
            "default": 1800,
            "example": 1800
          }
        },
        "description": "Create Trust Store Options Request: Defines certificate validation, revocation checking, and caching behavior applied when authenticating client certificates via mTLS.",
        "x-model-type": "create"
      },
      "CreatePkiTrustStoreRequest": {
        "required": [
          "cert_chain",
          "name",
          "options"
        ],
        "type": "object",
        "properties": {
          "name": {
            "maxLength": 50,
            "minLength": 1,
            "type": "string",
            "description": "Human-readable name for the trust store.",
            "example": "IoT Devices"
          },
          "show_in_discovery_document": {
            "type": "boolean",
            "description": "Specifies whether this trust store’s mTLS endpoint aliases are published under `mtls_additional_endpoint_aliases` in the OpenID Connect discovery document.",
            "default": false,
            "example": true
          },
          "options": {
            "description": "Trust store validation settings (certificate type, revocation, caching, and related policies).",
            "$ref": "#/components/schemas/CreatePkiTrustStoreOptionsRequest"
          },
          "cert_chain": {
            "maxLength": 30000,
            "minLength": 1,
            "type": "string",
            "description": "PEM-encoded certificate chain (concatenated), used as the trust anchor and intermediates for mTLS validation.",
            "example": "-----BEGIN CERTIFICATE-----certificate_value_1-----END CERTIFICATE-----\\n-----BEGIN CERTIFICATE-----certificate_value_2-----END CERTIFICATE-----"
          }
        },
        "description": "Create PKI Trust Store Request: Creates a trust store used to manage trusted certificate authorities for mTLS authentication.",
        "x-model-type": "create"
      },
      "CreateRegionalNetworkZoneRequest": {
        "required": [
          "category",
          "name",
          "operator"
        ],
        "type": "object",
        "properties": {
          "enabled": {
            "type": "boolean",
            "description": "Indicates whether the zone is enabled.",
            "default": true,
            "example": true
          },
          "name": {
            "maxLength": 50,
            "minLength": 1,
            "type": "string",
            "description": "Human-readable name for the zone.",
            "example": "Designation"
          },
          "description": {
            "maxLength": 200,
            "type": [
              "null",
              "string"
            ],
            "description": "Description that explains the zone.",
            "example": "Location of the Company Headquarters"
          },
          "category": {
            "description": "The category the zone belongs to.",
            "examples": [
              "trusted"
            ],
            "$ref": "#/components/schemas/NetworkZoneCategory"
          },
          "operator": {
            "description": "The evaluation operator for the network zone.",
            "examples": [
              "not_in"
            ],
            "$ref": "#/components/schemas/NetworkZoneOperator"
          },
          "countries": {
            "maxItems": 100,
            "minItems": 1,
            "uniqueItems": true,
            "type": "array",
            "items": {
              "minLength": 1,
              "type": "string"
            },
            "description": "List of 3166-1 alpha-2 country codes.",
            "default": [ ],
            "example": [
              "US",
              "GB"
            ]
          }
        },
        "description": "Create Regional Network Zone Request: Used to create a regional network zone.",
        "x-model-type": "create"
      },
      "CreateScopeClaimRequest": {
        "required": [
          "claim"
        ],
        "type": "object",
        "properties": {
          "claim": {
            "maxLength": 100,
            "minLength": 1,
            "pattern": "^[a-z0-9]+([a-z0-9_]+[a-z0-9])?$",
            "type": "string",
            "description": "The name of the user claim granted by this scope.",
            "example": "job_title"
          },
          "include_in_identity_token": {
            "type": "boolean",
            "description": "Indicates whether this claim is included in the issued ID token when the scope is granted.",
            "default": false,
            "example": true
          },
          "include_in_user_info": {
            "type": "boolean",
            "description": "Indicates whether this claim is returned by the `UserInfo` endpoint when the scope is granted.",
            "default": false,
            "example": true
          }
        },
        "description": "Create Scope Claim Request: Creates a user claim that can be included in ID tokens and the `UserInfo` endpoint when the scope is granted.",
        "x-model-type": "create"
      },
      "CreateScopeRequest": {
        "required": [
          "name",
          "user_claims"
        ],
        "type": "object",
        "properties": {
          "display_name": {
            "maxLength": 50,
            "type": [
              "null",
              "string"
            ],
            "description": "Human-readable display name for the resource.",
            "example": "Designation"
          },
          "description": {
            "maxLength": 200,
            "type": [
              "null",
              "string"
            ],
            "description": "Description that explains the purpose of the resource.",
            "example": "Current position in the employed organization"
          },
          "show_in_discovery_document": {
            "type": "boolean",
            "description": "Indicates whether this resource is advertised via the discovery document.",
            "default": true,
            "example": true
          },
          "name": {
            "maxLength": 50,
            "minLength": 1,
            "pattern": "^[a-z0-9]+([a-z0-9-.:_/]+[a-z0-9])?$",
            "type": "string",
            "description": "The unique name of the scope. This is the value a client will use for the scope parameter in the authorize request.",
            "example": "user_profile"
          },
          "required": {
            "type": "boolean",
            "description": "Specifies whether the scope is mandatory and cannot be de-selected by the user on the consent screen.",
            "default": false,
            "example": false
          },
          "emphasize": {
            "type": "boolean",
            "description": "Indicates whether this scope is visually emphasized on the consent screen, typically for sensitive or high-impact permissions.",
            "default": false,
            "example": false
          },
          "user_claims": {
            "maxItems": 100,
            "minItems": 1,
            "uniqueItems": true,
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/CreateScopeClaimRequest"
            },
            "description": "List of user claim types that will be embedded into identity tokens and/or returned from the `UserInfo` endpoint when this scope is granted."
          }
        },
        "description": "Create Scope Request: Creates an identity scope that defines a permission for accessing user claims.",
        "x-model-type": "create"
      },
      "CreateSecretRequest": {
        "type": "object",
        "properties": {
          "description": {
            "maxLength": 200,
            "type": [
              "null",
              "string"
            ],
            "description": "Description that explains the purpose of the secret.",
            "example": "Banking App Client Secret"
          },
          "expiration": {
            "maximum": 4102444799,
            "minimum": 0,
            "type": [
              "null",
              "integer"
            ],
            "description": "Specifies the time at which the secret expires (in Epoch).",
            "format": "date-time",
            "example": 1640975400
          },
          "type": {
            "description": "Specifies the type of secret.",
            "default": "shared_secret",
            "examples": [
              "shared_secret"
            ],
            "$ref": "#/components/schemas/SecretTypes"
          },
          "secret_value": {
            "maxLength": 5000,
            "minLength": 1,
            "type": [
              "null",
              "string"
            ],
            "description": "The secret value used to authenticate the client or API resource.",
            "example": "d2980ac62d2e58d316728dba55ce"
          }
        },
        "description": "Create Secret Request: Represents a request to create a credential used by a client or API resource.",
        "x-model-type": "create"
      },
      "CreateSignUpCustomFieldRequest": {
        "required": [
          "claim_name",
          "enabled",
          "label",
          "required",
          "value_type"
        ],
        "type": "object",
        "properties": {
          "enabled": {
            "type": "boolean",
            "description": "Specifies whether this custom field is enabled and shown during sign-up.",
            "example": true
          },
          "required": {
            "type": "boolean",
            "description": "Specifies whether this custom field is mandatory during sign-up.",
            "example": false
          },
          "claim_name": {
            "maxLength": 100,
            "minLength": 1,
            "type": "string",
            "description": "The claim name under which the value will be stored.",
            "example": "first_name"
          },
          "value_type": {
            "description": "The data type of the claim value.",
            "examples": [
              "string"
            ],
            "$ref": "#/components/schemas/ValueTypes"
          },
          "label": {
            "maxLength": 100,
            "minLength": 1,
            "type": "string",
            "description": "The user-facing label displayed for this field during sign-up.",
            "example": "First Name"
          }
        },
        "description": "Create Sign-Up Custom Field Request: Creates a configuration for a custom field collected during user sign-up.",
        "x-model-type": "create"
      },
      "CreateSpiffeTrustStoreOptionsRequest": {
        "type": "object",
        "properties": {
          "validate_certificate_use": {
            "type": "boolean",
            "description": "Indicates whether the client certificate is validated for client authentication, including Client Authentication EKU checks across the certificate chain.",
            "default": true,
            "example": true
          },
          "validate_validity_period": {
            "type": "boolean",
            "description": "Indicates whether the certificate validity period (`NotBefore` / `NotAfter`) is enforced.",
            "default": true,
            "example": true
          },
          "certificate_auth_cache_duration": {
            "maximum": 3600,
            "minimum": 0,
            "type": "integer",
            "description": "Specifies how long certificate authentication results are cached (in seconds).",
            "format": "int32",
            "default": 300,
            "example": 300
          },
          "bundle_fetch_timeout": {
            "maximum": 30,
            "minimum": 3,
            "type": "integer",
            "description": "Specifies the timeout for downloading the SPIFFE bundle from the bundle endpoint (in seconds).",
            "format": "int32",
            "default": 10,
            "example": 10
          }
        },
        "description": "Create SPIFFE Trust Store Options Request: Defines validation and caching behavior applied when authenticating SVIDs.",
        "x-model-type": "create"
      },
      "CreateSpiffeTrustStoreRequest": {
        "required": [
          "options",
          "spiffe_bundle_endpoint"
        ],
        "type": "object",
        "properties": {
          "show_in_discovery_document": {
            "type": "boolean",
            "description": "Specifies whether this trust store’s mTLS endpoint aliases are published under `mtls_additional_endpoint_aliases` in the OpenID Connect discovery document.",
            "default": false,
            "example": true
          },
          "options": {
            "description": "Trust store validation settings (certificate type, revocation, caching, and related policies).",
            "$ref": "#/components/schemas/CreateSpiffeTrustStoreOptionsRequest"
          },
          "spiffe_bundle_endpoint": {
            "maxLength": 400,
            "minLength": 1,
            "type": "string",
            "description": "The SPIFFE bundle endpoint URL used to retrieve trust domain signing keys.",
            "format": "uri",
            "example": "https://example.org/bundle.json"
          }
        },
        "description": "Create SPIFFE Trust Store Request: Creates a trust store for a federated SPIFFE trust domain and its workload identities.",
        "x-model-type": "create"
      },
      "CreateUserRequest": {
        "type": "object",
        "properties": {
          "username": {
            "maxLength": 100,
            "type": [
              "null",
              "string"
            ],
            "description": "Username to assign to the user. Must satisfy username policy and be unique.",
            "example": "johndoe"
          },
          "email": {
            "maxLength": 320,
            "type": [
              "null",
              "string"
            ],
            "description": "Email address to add to the user account.",
            "format": "email",
            "example": "johndoe@example.com"
          },
          "email_verified": {
            "type": [
              "null",
              "boolean"
            ],
            "description": "Marks the email as verified. Users cannot sign in with this email until it is verified.",
            "default": false,
            "example": true
          },
          "phone_number": {
            "type": [
              "null",
              "string"
            ],
            "description": "Phone number to add to the user account in E.164 format.",
            "example": "+14085551234"
          },
          "phone_number_verified": {
            "type": [
              "null",
              "boolean"
            ],
            "description": "Marks the phone number as verified. Users cannot sign in with this phone number until it is verified.",
            "default": false,
            "example": true
          },
          "password": {
            "type": [
              "null",
              "string"
            ],
            "description": "Initial plain-text password for the user.",
            "example": "SuperStrongPass12345!!!"
          },
          "password_hash": {
            "pattern": "^\\$2[aby]\\$\\d{2}\\$[./A-Za-z0-9]{53}$",
            "type": [
              "null",
              "string"
            ],
            "description": "A pre-hashed password value. Useful during migrations to avoid forcing a password reset.\n>[!warning]\n> When provided, password validation and password policy requirements are not enforced. The hash is stored as-is.",
            "example": "$2a$12$LJdMf15uRsDpd57LKCGxSOTec3MD6jsgJhxRxCeSj2ZKobGo2xPDS"
          },
          "password_hash_algorithm": {
            "description": "Hashing algorithm used for the provided password hash.",
            "default": "bcrypt",
            "examples": [
              "bcrypt"
            ],
            "$ref": "#/components/schemas/PasswordAlgorithms"
          },
          "is_temporary_password": {
            "type": "boolean",
            "description": "Indicates whether the provided password is temporary. If true, the user must reset their password at their next sign-in.",
            "default": true,
            "example": true
          },
          "name": {
            "maxLength": 512,
            "type": [
              "null",
              "string"
            ],
            "description": "Full name of the user.",
            "example": "John Doe"
          },
          "given_name": {
            "maxLength": 512,
            "type": [
              "null",
              "string"
            ],
            "description": "Given (first) name of the user.",
            "example": "John"
          },
          "middle_name": {
            "maxLength": 512,
            "type": [
              "null",
              "string"
            ],
            "description": "Middle name or initial of the user.",
            "example": "S"
          },
          "family_name": {
            "maxLength": 512,
            "type": [
              "null",
              "string"
            ],
            "description": "Family (last) name of the user.",
            "example": "Smith"
          },
          "nickname": {
            "maxLength": 512,
            "type": [
              "null",
              "string"
            ],
            "description": "Preferred nickname for the user.",
            "example": "Joey"
          },
          "picture": {
            "maxLength": 512,
            "type": [
              "null",
              "string"
            ],
            "description": "URL of the user's profile image.",
            "format": "uri",
            "example": "https://example.com/image.png"
          },
          "skip_password_policy_checks": {
            "type": "boolean",
            "description": "Allows bypassing configured password policy checks.",
            "default": false,
            "example": false
          },
          "skip_identifier_restriction_checks": {
            "type": "boolean",
            "description": "Allows bypassing blocklist validation for the provided identifiers.",
            "default": false,
            "example": false
          },
          "skip_conformance_checks": {
            "type": "boolean",
            "description": "Allows bypassing profile conformance checks enforced by sign-up policies.",
            "default": false,
            "example": false
          }
        },
        "description": "Create User Request: Fields used to create a new user and optionally set identifiers, credentials, and profile attributes.",
        "x-model-type": "create"
      },
      "CustomEmailBrandingOptions": {
        "required": [
          "send_notifications"
        ],
        "type": "object",
        "properties": {
          "send_notifications": {
            "type": "boolean",
            "description": "Specifies whether the email notification is sent using MonoCloud-managed delivery.",
            "example": false
          },
          "subject": {
            "type": [
              "null",
              "string"
            ],
            "description": "Specifies the email subject line, which may include Liquid placeholders; when empty, the default subject template is used.",
            "example": "Welcome to {{ client.name }}"
          }
        },
        "description": "Custom Email Branding Options Response: Represents branding configuration for a specific system-generated email message.",
        "x-model-type": "response"
      },
      "CustomSmsBrandingOptions": {
        "type": "object",
        "properties": {
          "template": {
            "type": [
              "null",
              "string"
            ],
            "description": "Custom Liquid template used to render the SMS message content with runtime variables; when empty, the default template is used.",
            "example": "Your code for {{ client.name }} is {{ code }}"
          }
        },
        "description": "Custom SMS Branding Options Response: Represents branding configuration for a specific system-generated SMS.",
        "x-model-type": "response"
      },
      "DeltaCertificateRevocation": {
        "required": [
          "base_revocation_id",
          "creation_time",
          "crl_number",
          "delta_crl_number",
          "id",
          "issued_at",
          "issuer_thumbprint",
          "type",
          "value"
        ],
        "properties": {
          "id": {
            "type": "string",
            "description": "The unique identifier of the delta revocation entry.",
            "example": "Rjc0QmiHaVdNLAFYhV025"
          },
          "value": {
            "type": "string",
            "description": "The certificate revocation list (CRL) in PEM format.",
            "example": "-----BEGIN X509 CRL-----certificate_revocation_value-----END X509 CRL-----"
          },
          "issuer_thumbprint": {
            "type": "string",
            "description": "The thumbprint of the CA certificate that issued this CRL.",
            "example": "F1FB4FD68F15DAA29A0B935B2759986A92898030F1FB4FD68F15DAA29A0B935B"
          },
          "issued_at": {
            "type": "integer",
            "description": "Specifies the time at which the CRL was issued (in Epoch).",
            "format": "date-time",
            "example": 1640955670
          },
          "next_update": {
            "type": [
              "null",
              "integer"
            ],
            "description": "Specifies the time at which the next CRL update is expected (in Epoch).",
            "format": "date-time",
            "example": 1641025178
          },
          "creation_time": {
            "type": "integer",
            "description": "Specifies the time at which this revocation entry was created (in Epoch).",
            "format": "date-time",
            "example": 1640975400
          },
          "crl_number": {
            "type": "integer",
            "description": "The base CRL number, as defined in the X.509 CRL extensions, identifying the full CRL on which this delta CRL is based.",
            "format": "int32",
            "example": 124
          },
          "delta_crl_number": {
            "type": "integer",
            "description": "The delta CRL number, as defined in the X.509 CRL extensions, identifying the sequence number of this delta update.",
            "format": "int32",
            "example": 80
          },
          "base_revocation_id": {
            "type": "string",
            "description": "The unique identifier of the base (full) revocation entry to which this delta CRL applies.",
            "example": "OjuVWCeAVnb5jjMF8GC6s"
          },
          "type": {
            "const": "delta",
            "type": "string"
          }
        },
        "description": "Delta Certificate Revocation Response: Represents a delta certificate revocation list (CRL) configured for offline revocation checking within a trust store.",
        "x-model-type": "response"
      },
      "DisableUserRequest": {
        "type": "object",
        "properties": {
          "revoke_sessions": {
            "type": "boolean",
            "description": "A flag to indicate whether all active user sessions should be revoked when the account is disabled.",
            "default": false,
            "example": false
          }
        },
        "description": "Disable User Request: Defines the options used to disable an existing user account.",
        "x-model-type": "create"
      },
      "EmailAuthenticatorOptions": {
        "required": [
          "allow_cross_browser",
          "code_length",
          "enable_jit_provisioning",
          "enable_sign_in",
          "enable_sign_up",
          "expiry",
          "verification_type"
        ],
        "type": "object",
        "properties": {
          "enable_sign_in": {
            "type": "boolean",
            "description": "Specifies whether users can sign in using email-based authentication.",
            "example": true
          },
          "enable_sign_up": {
            "type": "boolean",
            "description": "Specifies whether new users can sign up using email-based authentication.",
            "example": true
          },
          "enable_jit_provisioning": {
            "type": "boolean",
            "description": "Specifies whether users can be automatically provisioned on first successful email authentication (Just-In-Time provisioning).",
            "example": true
          },
          "verification_type": {
            "description": "Specifies the verification mechanism used for email authentication (link, code, or both).",
            "examples": [
              "link"
            ],
            "$ref": "#/components/schemas/VerificationTypes"
          },
          "allow_cross_browser": {
            "type": "boolean",
            "description": "Specifies whether the authentication flow can be resumed in a different browser or device than where it was initiated.",
            "example": true
          },
          "expiry": {
            "type": "integer",
            "description": "Specifies the validity period of the email verification link or code (in seconds).",
            "format": "int32",
            "example": 30
          },
          "code_length": {
            "type": "integer",
            "description": "Specifies the number of digits in the email verification code.\n>[!note]\n> Only applicable when the verification type includes code-based verification.",
            "format": "int32",
            "example": 6
          }
        },
        "description": "Email Authenticator Options Response: Represents the configuration for email-based authentication.",
        "x-model-type": "response"
      },
      "EmailBrandingOptions": {
        "required": [
          "password_reset_code",
          "password_reset_code_and_link",
          "password_reset_link",
          "password_updated",
          "sign_in_code",
          "sign_in_code_and_link",
          "sign_in_link",
          "user_blocked",
          "verification_code",
          "verification_code_and_link",
          "verification_link",
          "welcome"
        ],
        "type": "object",
        "properties": {
          "welcome": {
            "description": "Configuration for welcome emails, including delivery enablement, subject, and template.",
            "$ref": "#/components/schemas/CustomEmailBrandingOptions"
          },
          "user_blocked": {
            "description": "Configuration for user blocked notification emails, including delivery enablement, subject, and template.",
            "$ref": "#/components/schemas/CustomEmailBrandingOptions"
          },
          "sign_in_code": {
            "description": "Configuration for sign-in code emails, including delivery enablement, subject, and template.",
            "$ref": "#/components/schemas/CustomEmailBrandingOptions"
          },
          "sign_in_link": {
            "description": "Configuration for sign-in link emails, including delivery enablement, subject, and template.",
            "$ref": "#/components/schemas/CustomEmailBrandingOptions"
          },
          "sign_in_code_and_link": {
            "description": "Configuration for sign-in code and link emails, including delivery enablement, subject, and template.",
            "$ref": "#/components/schemas/CustomEmailBrandingOptions"
          },
          "verification_code": {
            "description": "Configuration for verification code emails, including delivery enablement, subject, and template.",
            "$ref": "#/components/schemas/CustomEmailBrandingOptions"
          },
          "verification_link": {
            "description": "Configuration for verification link emails, including delivery enablement, subject, and template.",
            "$ref": "#/components/schemas/CustomEmailBrandingOptions"
          },
          "verification_code_and_link": {
            "description": "Configuration for verification code and link emails, including delivery enablement, subject, and template.",
            "$ref": "#/components/schemas/CustomEmailBrandingOptions"
          },
          "password_reset_code": {
            "description": "Configuration for password reset code emails, including delivery enablement, subject, and template.",
            "$ref": "#/components/schemas/CustomEmailBrandingOptions"
          },
          "password_reset_link": {
            "description": "Configuration for password reset link emails, including delivery enablement, subject, and template.",
            "$ref": "#/components/schemas/CustomEmailBrandingOptions"
          },
          "password_reset_code_and_link": {
            "description": "Configuration for password reset code and link emails, including delivery enablement, subject, and template.",
            "$ref": "#/components/schemas/CustomEmailBrandingOptions"
          },
          "password_updated": {
            "description": "Configuration for password updated notification emails, including delivery enablement, subject, and template.",
            "$ref": "#/components/schemas/CustomEmailBrandingOptions"
          }
        },
        "description": "Email Branding Options Response: Represents the email branding configuration applied to system-generated emails.",
        "x-model-type": "response"
      },
      "EmailIdentifierOptions": {
        "required": [
          "enable_sign_in",
          "required_at_sign_up",
          "show_at_sign_up",
          "verification"
        ],
        "type": "object",
        "properties": {
          "enable_sign_in": {
            "type": "boolean",
            "description": "Specifies whether users can sign in using an email address.",
            "example": true
          },
          "show_at_sign_up": {
            "type": "boolean",
            "description": "Specifies whether an email address can be collected during sign-up.",
            "example": true
          },
          "required_at_sign_up": {
            "type": "boolean",
            "description": "Specifies whether an email address is required during sign-up.",
            "example": true
          },
          "verification": {
            "description": "Email verification configuration applied during sign-up.",
            "$ref": "#/components/schemas/EmailIdentifierVerificationOptions"
          }
        },
        "description": "Email Identifier Options Response: Represents email sign-in, sign-up, and verification configuration.",
        "x-model-type": "response"
      },
      "EmailIdentifierVerificationOptions": {
        "required": [
          "allow_cross_browser",
          "code_length",
          "expiry",
          "verification_type",
          "verify_at_sign_up"
        ],
        "type": "object",
        "properties": {
          "verify_at_sign_up": {
            "type": "boolean",
            "description": "Specifies whether the user's email address must be verified during sign-up.",
            "example": true
          },
          "verification_type": {
            "description": "Specifies the verification mechanism used for email verification (link, code, or both).",
            "examples": [
              "link"
            ],
            "$ref": "#/components/schemas/VerificationTypes"
          },
          "allow_cross_browser": {
            "type": "boolean",
            "description": "Specifies whether the email verification flow can be resumed in a different browser or device than where it was initiated.",
            "example": true
          },
          "expiry": {
            "type": "integer",
            "description": "Specifies the validity period of the email verification link or code (in seconds).",
            "format": "int32",
            "example": 300
          },
          "code_length": {
            "type": "integer",
            "description": "Specifies the number of digits in the email verification code.\n>[!note]\n> Only applicable when the verification type includes code-based verification.",
            "format": "int32",
            "example": 6
          }
        },
        "description": "Email Identifier Verification Options Response: Represents email verification settings applied during sign-up.",
        "x-model-type": "response"
      },
      "EmailProviders": {
        "enum": [
          "monocloud",
          "send_grid"
        ],
        "description": "The email provider.",
        "x-enum-descriptions": {
          "monocloud": "The platform default email provider managed by MonoCloud.",
          "send_grid": "SendGrid email delivery service."
        }
      },
      "EventCodes": {
        "enum": [
          "authorization_succeeded",
          "authorization_failed",
          "pushed_authorization_succeeded",
          "pushed_authorization_failed",
          "client_authentication_succeeded",
          "client_authentication_failed",
          "api_authentication_succeeded",
          "api_authentication_failed",
          "password_flow_authentication_succeeded",
          "password_flow_authentication_failed",
          "device_authorization_succeeded",
          "device_authorization_failed",
          "mtls_authentication_succeeded",
          "mtls_authentication_failed",
          "user_lookup_failed",
          "external_provider_authentication_failed",
          "user_sign_in_succeeded",
          "user_sign_in_failed",
          "user_registration_succeeded",
          "user_sign_out_succeeded",
          "token_issuance_succeeded",
          "token_issuance_failed",
          "token_introspection_succeeded",
          "token_introspection_failed",
          "token_revocation_succeeded",
          "token_revocation_failed",
          "consent_granted",
          "consent_denied",
          "identifier_ip_blocked",
          "user_account_blocked",
          "user_account_unblocked",
          "user_account_ip_blocked",
          "user_account_ip_unblocked",
          "user_account_all_unblocked",
          "user_account_all_ip_blocks_removed",
          "user_created",
          "user_deleted",
          "user_password_reset_succeeded",
          "user_added_to_group",
          "user_removed_from_group",
          "user_session_revoked",
          "user_sessions_revoked_all",
          "user_sessions_deleted_all",
          "sign_in_email_sending_succeeded",
          "verification_email_sending_succeeded",
          "welcome_email_sending_succeeded",
          "password_change_email_sending_succeeded",
          "password_reset_email_sending_succeeded",
          "user_blocked_email_sending_succeeded",
          "sign_in_sms_sending_succeeded",
          "verification_sms_sending_succeeded",
          "password_reset_sms_sending_succeeded",
          "email_sending_failed",
          "sms_sending_failed",
          "api_resource_created",
          "api_resource_updated",
          "api_resource_deleted",
          "api_resource_secret_created",
          "api_resource_secret_deleted",
          "api_access_policy_created",
          "api_access_policy_updated",
          "api_access_policy_deleted",
          "trust_store_created",
          "trust_store_updated",
          "trust_store_deleted",
          "trust_store_revocation_added",
          "trust_store_revocation_removed",
          "trust_store_certificate_banned",
          "trust_store_certificate_unbanned",
          "trust_store_svid_banned",
          "trust_store_svid_unbanned",
          "client_created",
          "client_updated",
          "client_deleted",
          "client_secret_created",
          "client_secret_deleted",
          "client_added_to_group",
          "client_removed_from_group",
          "group_created",
          "group_updated",
          "group_deleted",
          "user_grants_revoked",
          "authorization_code_revoked",
          "user_consent_revoked",
          "reference_token_revoked",
          "refresh_token_revoked",
          "usage_threshold_reached",
          "network_zone_created",
          "network_zone_updated",
          "network_zone_deleted"
        ],
        "description": "The log event code.",
        "x-enum-descriptions": {
          "authorization_succeeded": "Indicates a successful authorization request.",
          "authorization_failed": "Indicates a failed authorization request (e.g., invalid request, denied by policy).",
          "pushed_authorization_succeeded": "Indicates a successful Pushed Authorization Request (PAR).",
          "pushed_authorization_failed": "Indicates a failed Pushed Authorization Request (PAR).",
          "client_authentication_succeeded": "Indicates a successful OAuth client authentication.",
          "client_authentication_failed": "Indicates a failed OAuth client authentication (e.g., invalid client credentials).",
          "api_authentication_succeeded": "Indicates a successful API authentication.",
          "api_authentication_failed": "Indicates a failed API authentication (e.g., invalid or missing access token).",
          "password_flow_authentication_succeeded": "Indicates a successful Resource Owner Password Credentials (ROPC) authentication flow.",
          "password_flow_authentication_failed": "Indicates a failed Resource Owner Password Credentials (ROPC) authentication flow.",
          "device_authorization_succeeded": "Indicates a successful device authorization flow.",
          "device_authorization_failed": "Indicates a failed device authorization flow.",
          "mtls_authentication_succeeded": "Indicates a successful client certificate (mTLS) authentication.",
          "mtls_authentication_failed": "Indicates a failed client certificate (mTLS) authentication.",
          "user_lookup_failed": "Indicates a failed identifier-based sign-in attempt (e.g., username or email lookup).",
          "external_provider_authentication_failed": "Indicates a failed external identity provider sign-in.",
          "user_sign_in_succeeded": "Indicates a successful interactive user sign-in.",
          "user_sign_in_failed": "Indicates a failed interactive user sign-in attempt.",
          "user_registration_succeeded": "Indicates a successful user registration.",
          "user_sign_out_succeeded": "Indicates a user sign-out event.",
          "token_issuance_succeeded": "Indicates a successful token issuance.",
          "token_issuance_failed": "Indicates a failed token issuance attempt.",
          "token_introspection_succeeded": "Indicates a successful token introspection request.",
          "token_introspection_failed": "Indicates a failed token introspection request.",
          "token_revocation_succeeded": "Indicates a successful token revocation.",
          "token_revocation_failed": "Indicates a failed token revocation attempt.",
          "consent_granted": "Indicates that user consent was successfully granted for the requested scopes.",
          "consent_denied": "Indicates that user consent was denied or not granted for the requested scopes.",
          "identifier_ip_blocked": "Indicates that an IP address was blocked for a specific identifier.",
          "user_account_blocked": "Indicates that a user account was blocked.",
          "user_account_unblocked": "Indicates that a user account was unblocked.",
          "user_account_ip_blocked": "Indicates that an IP address was blocked for a user account.",
          "user_account_ip_unblocked": "Indicates that an IP address block was removed from a user account.",
          "user_account_all_unblocked": "Indicates that all blocks were removed from a user account.",
          "user_account_all_ip_blocks_removed": "Indicates that all IP address blocks were removed from a user account.",
          "user_created": "Indicates that a user account was successfully created.",
          "user_deleted": "Indicates that a user account was deleted.",
          "user_password_reset_succeeded": "Indicates that a user successfully completed a password reset.",
          "user_added_to_group": "Indicates that a user was added to a group.",
          "user_removed_from_group": "Indicates that a user was removed from a group.",
          "user_session_revoked": "Indicates that a specific user session was revoked.",
          "user_sessions_revoked_all": "Indicates that all active sessions for a user were revoked.",
          "user_sessions_deleted_all": "Indicates that all sessions for a user were permanently deleted.",
          "sign_in_email_sending_succeeded": "Indicates that a sign-in email notification was successfully sent.",
          "verification_email_sending_succeeded": "Indicates that a verification email notification was successfully sent.",
          "welcome_email_sending_succeeded": "Indicates that a welcome email notification was successfully sent.",
          "password_change_email_sending_succeeded": "Indicates that a password change confirmation email was successfully sent.",
          "password_reset_email_sending_succeeded": "Indicates that a password reset email notification was successfully sent.",
          "user_blocked_email_sending_succeeded": "Indicates that a user blocked notification email was successfully sent.",
          "sign_in_sms_sending_succeeded": "Indicates that a sign-in SMS notification was successfully sent.",
          "verification_sms_sending_succeeded": "Indicates that a verification SMS notification was successfully sent.",
          "password_reset_sms_sending_succeeded": "Indicates that a password reset SMS notification was successfully sent.",
          "email_sending_failed": "Indicates that sending an email notification failed.",
          "sms_sending_failed": "Indicates that sending an SMS notification failed.",
          "api_resource_created": "Indicates that an API resource was created.",
          "api_resource_updated": "Indicates that an API resource was updated.",
          "api_resource_deleted": "Indicates that an API resource was deleted.",
          "api_resource_secret_created": "Indicates that a secret was created for an API resource.",
          "api_resource_secret_deleted": "Indicates that a secret was deleted from an API resource.",
          "api_access_policy_created": "Indicates that an API access policy was created.",
          "api_access_policy_updated": "Indicates that an API access policy was updated.",
          "api_access_policy_deleted": "Indicates that an API access policy was deleted.",
          "trust_store_created": "Indicates that a trust store was created.",
          "trust_store_updated": "Indicates that a trust store was updated.",
          "trust_store_deleted": "Indicates that a trust store was deleted.",
          "trust_store_revocation_added": "Indicates that a certificate revocation list (CRL) was added to the trust store.",
          "trust_store_revocation_removed": "Indicates that a certificate revocation list (CRL) was removed from the trust store.",
          "trust_store_certificate_banned": "Indicates that a certificate was banned in the trust store.",
          "trust_store_certificate_unbanned": "Indicates that a previously banned certificate was unbanned in the trust store.",
          "trust_store_svid_banned": "Indicates that an SVID was banned in the trust store.",
          "trust_store_svid_unbanned": "Indicates that a previously banned SVID was unbanned in the trust store.",
          "client_created": "Indicates that a client application was created.",
          "client_updated": "Indicates that a client application was updated.",
          "client_deleted": "Indicates that a client application was deleted.",
          "client_secret_created": "Indicates that a client secret was created.",
          "client_secret_deleted": "Indicates that a client secret was deleted.",
          "client_added_to_group": "Indicates that a client application was added to a group.",
          "client_removed_from_group": "Indicates that a client application was removed from a group.",
          "group_created": "Indicates that a group was created.",
          "group_updated": "Indicates that a group was updated.",
          "group_deleted": "Indicates that a group was deleted.",
          "user_grants_revoked": "Indicates that all grants associated with a user were revoked.",
          "authorization_code_revoked": "Indicates that an authorization code grant was revoked.",
          "user_consent_revoked": "Indicates that a user consent grant was revoked.",
          "reference_token_revoked": "Indicates that a reference token grant was revoked.",
          "refresh_token_revoked": "Indicates that a refresh token grant was revoked.",
          "usage_threshold_reached": "Indicates that a usage threshold was reached.",
          "network_zone_created": "Indicates that a network zone was created.",
          "network_zone_updated": "Indicates that a network zone was updated.",
          "network_zone_deleted": "Indicates that a network zone was deleted."
        }
      },
      "EventTypes": {
        "enum": [
          "success",
          "failure",
          "information",
          "error"
        ],
        "description": "The log event type.",
        "x-enum-descriptions": {
          "success": "Indicates that the operation completed successfully.",
          "failure": "Indicates that the operation failed to complete as expected.",
          "information": "Indicates an informational event that does not represent an error or failure.",
          "error": "Indicates an error condition encountered during processing."
        }
      },
      "ExternalAuthenticatorDisconnectRequest": {
        "required": [
          "provider",
          "provider_user_id"
        ],
        "type": "object",
        "properties": {
          "provider": {
            "maxLength": 20,
            "minLength": 1,
            "pattern": "^[a-z0-9]+([a-z0-9_-]+[a-z0-9])?$",
            "type": "string",
            "description": "The external provider to disconnect from the user account.",
            "example": "google"
          },
          "provider_user_id": {
            "minLength": 1,
            "type": "string",
            "description": "The user identifier assigned by the external authentication provider.",
            "example": "79a500f9-aba6-4f03-baec-c18f4b7136ad"
          }
        },
        "description": "External Authenticator Disconnect Request: Removes an existing external identity provider connection from a user account.",
        "x-model-type": "create"
      },
      "ExternalAuthenticators": {
        "enum": [
          "google",
          "apple",
          "facebook",
          "microsoft",
          "github",
          "gitlab",
          "discord",
          "twitter",
          "linkedin",
          "xero",
          "custom_oidc",
          "custom_enterprise",
          "entra_oidc"
        ],
        "description": "The external provider authenticator.",
        "x-enum-descriptions": {
          "google": "Sign in with Google",
          "apple": "Sign in with Apple",
          "facebook": "Sign in with Facebook",
          "microsoft": "Sign in with Microsoft",
          "github": "Sign in with GitHub",
          "gitlab": "Sign in with GitLab",
          "discord": "Sign in with Discord",
          "twitter": "Sign in with Twitter",
          "linkedin": "Sign in with LinkedIn",
          "xero": "Sign in with Xero",
          "custom_oidc": "Sign in with a custom OIDC provider",
          "custom_enterprise": "Sign in with a custom enterprise SSO connection",
          "entra_oidc": "Sign in with Microsoft Entra ID (enterprise)"
        }
      },
      "ExternalProvider": {
        "required": [
          "authenticator",
          "authorization_parameters",
          "claim_mappings",
          "enable_sign_in",
          "enable_sign_up",
          "home_realm_domains",
          "name",
          "priority",
          "scopes",
          "show_on_login_page",
          "sync_idp_claims_always",
          "sync_user_profile_always",
          "trust_email",
          "trust_phone"
        ],
        "type": "object",
        "properties": {
          "name": {
            "type": "string",
            "description": "The unique logical name of the connection. Identifies the connection and addresses it through the API.",
            "example": "acme"
          },
          "authenticator": {
            "description": "The external identity provider of the connection.",
            "examples": [
              "custom_enterprise"
            ],
            "$ref": "#/components/schemas/ExternalAuthenticators"
          },
          "display_name": {
            "type": [
              "null",
              "string"
            ],
            "description": "A custom display name for the provider's sign-in button. When not set, the provider's default display name is used.",
            "example": "Sign in with Acme"
          },
          "icon": {
            "type": [
              "null",
              "string"
            ],
            "description": "A custom icon URL for the provider's sign-in button. When not set, the provider's default icon is used.",
            "example": "https://cdn.acme.com/icons/sso.svg"
          },
          "enable_sign_in": {
            "type": "boolean",
            "description": "Specifies whether users can sign in using this external identity provider.",
            "example": true
          },
          "enable_sign_up": {
            "type": "boolean",
            "description": "Specifies whether new users can sign up using this external identity provider.",
            "example": true
          },
          "show_on_login_page": {
            "type": "boolean",
            "description": "Specifies whether the provider's sign-in button is shown on the login page.",
            "example": true
          },
          "credentials": {
            "oneOf": [
              {
                "type": "null"
              },
              {
                "description": "The client credentials issued by the external identity provider. When not set, MonoCloud-managed credentials are used.",
                "$ref": "#/components/schemas/ExternalProviderCredentialsResponse"
              }
            ]
          },
          "connection": {
            "oneOf": [
              {
                "type": "null"
              },
              {
                "description": "The protocol connection settings used to communicate with the external identity provider. Applies only to custom and enterprise connections.",
                "$ref": "#/components/schemas/ExternalProviderConnectionResponse"
              }
            ]
          },
          "scopes": {
            "uniqueItems": true,
            "type": "array",
            "items": {
              "type": "string"
            },
            "description": "The set of scopes requested from the external identity provider during authentication.",
            "example": [
              "openid",
              "profile",
              "email"
            ]
          },
          "claim_mappings": {
            "type": "object",
            "additionalProperties": {
              "type": "string"
            },
            "description": "A map of claim names to upstream source claim names used to map the upstream profile onto the MonoCloud user.",
            "example": {
              "email": "mail",
              "name": "displayName"
            }
          },
          "authorization_parameters": {
            "type": "object",
            "additionalProperties": {
              "type": "string"
            },
            "description": "A map of parameter names to the values sent to the external provider's authorization endpoint.\nA value prefixed with `$` forwards the incoming authorization request query parameter with that name; any other value is sent as-is.",
            "example": {
              "login_hint": "$login_hint",
              "prompt": "consent"
            }
          },
          "trust_email": {
            "description": "Determines whether the email received from the external provider is treated as verified.",
            "examples": [
              "as_provided"
            ],
            "$ref": "#/components/schemas/TrustIdentifierModes"
          },
          "trust_phone": {
            "description": "Determines whether the phone number received from the external provider is treated as verified.",
            "examples": [
              "as_provided"
            ],
            "$ref": "#/components/schemas/TrustIdentifierModes"
          },
          "sync_user_profile_always": {
            "type": "boolean",
            "description": "Specifies whether the user profile should be synchronized from the external provider on each successful sign-in.",
            "example": true
          },
          "sync_idp_claims_always": {
            "type": "boolean",
            "description": "Specifies whether the IdP claims should be synchronized from the external provider on each successful sign-in.",
            "example": true
          },
          "home_realm_domains": {
            "uniqueItems": true,
            "type": "array",
            "items": {
              "type": "string"
            },
            "description": "The email domains routed to this provider through home realm discovery.",
            "example": [
              "acme.com",
              "acme.io"
            ]
          },
          "priority": {
            "type": "integer",
            "description": "The priority of the external provider. Used to order the provider relative to others.",
            "format": "int32",
            "example": 0
          }
        },
        "description": "External Provider Response: Represents the configuration of an external authenticator.",
        "x-model-type": "response"
      },
      "ExternalProviderConnectionResponse": {
        "required": [
          "discovery_url",
          "pkce_mode"
        ],
        "type": "object",
        "properties": {
          "discovery_url": {
            "type": "string",
            "description": "The discovery (metadata) endpoint of the external provider. The provider endpoints are derived from the discovery document.",
            "example": "https://sso.acme.com/.well-known/openid-configuration"
          },
          "pkce_mode": {
            "description": "The PKCE mode used with the external provider.",
            "examples": [
              "auto"
            ],
            "$ref": "#/components/schemas/OidcPkceMode"
          }
        },
        "description": "External Provider Connection Response: The protocol connection settings used to communicate with the external identity provider.",
        "x-model-type": "response"
      },
      "ExternalProviderCredentialsResponse": {
        "required": [
          "client_id"
        ],
        "type": "object",
        "properties": {
          "client_id": {
            "type": "string",
            "description": "The client identifier issued by the external identity provider.",
            "example": "Lkidgf845hKHrfwehf_jgf"
          },
          "apple_team_id": {
            "type": [
              "null",
              "string"
            ],
            "description": "The Apple Developer Team ID used to sign the client secret. Applies only to the Sign in with Apple provider.",
            "example": "kjGD8745hasd"
          },
          "apple_key_id": {
            "type": [
              "null",
              "string"
            ],
            "description": "The Apple Key ID used to sign the client secret. Applies only to the Sign in with Apple provider.",
            "example": "styfderhrwe456"
          }
        },
        "description": "External Provider Credentials Response: The client credentials issued by the external identity provider.",
        "x-model-type": "response"
      },
      "GrantTypes": {
        "enum": [
          "implicit",
          "hybrid",
          "authorization_code",
          "client_credentials",
          "resource_owner_password",
          "device_code"
        ],
        "description": "The OAuth2 / OIDC grant type.",
        "x-enum-descriptions": {
          "implicit": "A legacy flow for browser-based applications in which tokens are returned directly from the authorization endpoint.\n>[!note]\n> Prefer Authorization Code with PKCE for modern applications.",
          "hybrid": "Combines elements of the implicit and authorization code flows, allowing the client to receive both tokens and an authorization code.",
          "authorization_code": "Obtains tokens through a secure back-channel exchange and supports client authentication and PKCE.",
          "client_credentials": "Used for machine-to-machine scenarios where tokens are issued to the client itself rather than an end user.",
          "resource_owner_password": "A legacy flow that issues tokens using a user’s credentials sent directly to the token endpoint.\n>[!note]\n> Prefer Authorization Code with PKCE whenever possible.",
          "device_code": "Supports devices with limited input capabilities (TVs, consoles, CLI tools) by allowing users to authenticate on a separate device while the client polls for approval."
        }
      },
      "Group": {
        "required": [
          "clients_assigned",
          "creation_time",
          "group_id",
          "is_auto_assigned",
          "last_assigned",
          "last_updated",
          "name",
          "type",
          "users_assigned"
        ],
        "type": "object",
        "properties": {
          "group_id": {
            "type": "string",
            "description": "The unique identifier of the group.",
            "format": "uuid",
            "example": "888ac2a4-b6b0-45c4-9920-93c0bc9b2c39"
          },
          "type": {
            "description": "Specifies whether the group is system-defined or user-managed.",
            "examples": [
              "custom"
            ],
            "$ref": "#/components/schemas/GroupTypes"
          },
          "name": {
            "type": "string",
            "description": "The display name of the group.",
            "example": "Administrators"
          },
          "description": {
            "type": [
              "null",
              "string"
            ],
            "description": "Description that explains the purpose or role of the group.",
            "example": "The administrator group"
          },
          "is_auto_assigned": {
            "type": "boolean",
            "description": "Indicates whether users are automatically added to this group upon sign-up.",
            "example": false
          },
          "users_assigned": {
            "type": "integer",
            "description": "The number of users currently assigned to the group.",
            "format": "int64",
            "example": 10
          },
          "clients_assigned": {
            "type": "integer",
            "description": "The number of client applications associated with the group.",
            "format": "int64",
            "example": 10
          },
          "creation_time": {
            "type": "integer",
            "description": "Specifies the time at which the group was created (in Epoch).",
            "format": "date-time",
            "example": 1640975500
          },
          "last_updated": {
            "type": "integer",
            "description": "Specifies the time at which the group was last updated (in Epoch).",
            "format": "date-time",
            "example": 1640975500
          },
          "last_assigned": {
            "type": "integer",
            "description": "Specifies the time of the most recent user or client assignment to the group (in Epoch).",
            "format": "date-time",
            "example": 1640975500
          }
        },
        "description": "Group: Represents a group used to organize users and client assignments.",
        "x-model-type": "response"
      },
      "GroupTypes": {
        "enum": [
          "built_in",
          "custom"
        ],
        "description": "The group type.",
        "x-enum-descriptions": {
          "built_in": "System-defined group managed by MonoCloud",
          "custom": "User-defined group created and managed by administrators"
        }
      },
      "HttpUserAddressRequest": {
        "type": "object",
        "properties": {
          "formatted": {
            "maxLength": 512,
            "type": [
              "null",
              "string"
            ],
            "description": "Single string combining various components of the address, such as street address, locality, region, postal code, and country.",
            "example": "123 Main St, Anytown, USA"
          },
          "street_address": {
            "maxLength": 512,
            "type": [
              "null",
              "string"
            ],
            "description": "The street part of the address, typically including house/building number and street name.",
            "example": "123 Main St"
          },
          "locality": {
            "maxLength": 512,
            "type": [
              "null",
              "string"
            ],
            "description": "The city or town of the address.",
            "example": "Anytown"
          },
          "region": {
            "maxLength": 512,
            "type": [
              "null",
              "string"
            ],
            "description": "The state, province, or administrative region associated with the address.",
            "example": "CA"
          },
          "postal_code": {
            "maxLength": 512,
            "type": [
              "null",
              "string"
            ],
            "description": "Postal code of the address.",
            "example": "12345-6789"
          },
          "country": {
            "maxLength": 512,
            "type": [
              "null",
              "string"
            ],
            "description": "The name of the country associated with the address.",
            "example": "United States"
          }
        },
        "x-model-type": "patch_optional"
      },
      "ICertificateRevocation": {
        "required": [
          "type"
        ],
        "type": "object",
        "oneOf": [
          {
            "$ref": "#/components/schemas/BaseCertificateRevocation"
          },
          {
            "$ref": "#/components/schemas/DeltaCertificateRevocation"
          }
        ],
        "description": "Certificate Revocation Response: Represents a certificate revocation list (CRL) configured for offline revocation checking within a trust store.",
        "discriminator": {
          "propertyName": "type",
          "mapping": {
            "base": "#/components/schemas/BaseCertificateRevocation",
            "delta": "#/components/schemas/DeltaCertificateRevocation"
          }
        }
      },
      "IdentifierOptions": {
        "required": [
          "email",
          "phone",
          "username"
        ],
        "type": "object",
        "properties": {
          "email": {
            "description": "Email Identifier Options",
            "$ref": "#/components/schemas/EmailIdentifierOptions"
          },
          "phone": {
            "description": "Phone Identifier Options",
            "$ref": "#/components/schemas/PhoneIdentifierOptions"
          },
          "username": {
            "description": "Username Identifier Options",
            "$ref": "#/components/schemas/UsernameIdentifierOptions"
          }
        },
        "description": "Identifier Options Response: Represents email, phone, and username identifier configuration.",
        "x-model-type": "response"
      },
      "IdentityError": {
        "required": [
          "code",
          "description"
        ],
        "type": "object",
        "properties": {
          "code": {
            "type": "string",
            "description": "Machine-readable error code.",
            "example": "MCE_10001"
          },
          "description": {
            "type": "string",
            "description": "Human-readable description of the error.",
            "example": "An unknown failure has occurred."
          }
        },
        "description": "Identity Error: Represents a validation or processing error returned by the identity system.",
        "x-model-type": "response"
      },
      "IdentityValidationProblemDetails": {
        "required": [
          "errors",
          "status",
          "title",
          "trace_id",
          "type"
        ],
        "type": "object",
        "properties": {
          "type": {
            "type": "string",
            "description": "A URI reference that identifies the error type. When accessed, it may provide human-readable documentation."
          },
          "title": {
            "type": "string",
            "description": "A short, human-readable summary of the error."
          },
          "status": {
            "type": "integer",
            "description": "The HTTP status code associated with this error response.",
            "format": "int32"
          },
          "trace_id": {
            "type": "string",
            "description": "A unique identifier for the request, used for tracing and diagnostics."
          },
          "detail": {
            "type": [
              "null",
              "string"
            ],
            "description": "A human-readable explanation specific to this occurrence of the error."
          },
          "instance": {
            "type": [
              "null",
              "string"
            ],
            "description": "A URI reference that identifies the specific occurrence of the error."
          },
          "errors": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/IdentityError"
            },
            "description": "List of identity validation errors describing why the request could not be processed."
          }
        },
        "description": "Identity Validation Problem Details: Standard error response format used to convey machine-readable and human-readable error information.",
        "x-model-type": "response"
      },
      "INetworkZone": {
        "required": [
          "type"
        ],
        "type": "object",
        "oneOf": [
          {
            "$ref": "#/components/schemas/IpNetworkZone"
          },
          {
            "$ref": "#/components/schemas/RegionalNetworkZone"
          }
        ],
        "description": "Network Zone Response: Represents a Network Zone (IP or Regional).",
        "discriminator": {
          "propertyName": "type",
          "mapping": {
            "ip": "#/components/schemas/IpNetworkZone",
            "regional": "#/components/schemas/RegionalNetworkZone"
          }
        }
      },
      "IpNetworkZone": {
        "required": [
          "category",
          "creation_time",
          "enabled",
          "id",
          "ip_ranges",
          "last_updated",
          "name",
          "operator",
          "type"
        ],
        "properties": {
          "id": {
            "type": "string",
            "description": "The unique identifier of the network zone.",
            "example": "uSkOCE9ZEmYdWS7Kv223S"
          },
          "enabled": {
            "type": "boolean",
            "description": "Indicates whether the zone is enabled.",
            "example": true
          },
          "name": {
            "type": "string",
            "description": "Human-readable name for the zone.",
            "example": "Designation"
          },
          "description": {
            "type": [
              "null",
              "string"
            ],
            "description": "Description that explains the zone.",
            "example": "Location of the Company Headquarters"
          },
          "category": {
            "description": "The category the zone belongs to.",
            "examples": [
              "trusted"
            ],
            "$ref": "#/components/schemas/NetworkZoneCategory"
          },
          "creation_time": {
            "type": "integer",
            "description": "Specifies the creation time of the zone (in Epoch).",
            "format": "date-time",
            "example": 1640975400
          },
          "last_updated": {
            "type": "integer",
            "description": "Specifies the last update time of the zone (in Epoch).",
            "format": "date-time",
            "example": 1640975400
          },
          "operator": {
            "description": "The evaluation operator for the network zone.",
            "examples": [
              "not_in"
            ],
            "$ref": "#/components/schemas/NetworkZoneOperator"
          },
          "type": {
            "const": "ip",
            "type": "string"
          },
          "ip_ranges": {
            "uniqueItems": true,
            "type": "array",
            "items": {
              "type": "string"
            },
            "description": "List of IPv4/IPv6 addresses or CIDR ranges.",
            "example": [
              "156.3.59.5",
              "2001:db8::/32"
            ]
          }
        },
        "description": "IP Network Zone Response: Represents a IP Network Zone.",
        "x-model-type": "response"
      },
      "IValidationProblemDetails": {
        "type": "object",
        "oneOf": [
          {
            "$ref": "#/components/schemas/KeyValidationProblemDetails"
          },
          {
            "$ref": "#/components/schemas/IdentityValidationProblemDetails"
          }
        ],
        "description": "Validation Problem Details"
      },
      "KeyMaterial": {
        "required": [
          "creation_time",
          "id",
          "is_current",
          "signing_algorithm",
          "use",
          "valid_from"
        ],
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "description": "The unique identifier of the key material.",
            "example": "tXcwKNmJfReWTjVIP6Wtd"
          },
          "signing_algorithm": {
            "description": "Specifies the cryptographic algorithm of the key material used for signing operations.",
            "examples": [
              "rs256"
            ],
            "$ref": "#/components/schemas/SigningAlgorithms"
          },
          "is_current": {
            "type": "boolean",
            "description": "Indicates whether this key is the current default key used for signing operations.",
            "example": false
          },
          "use": {
            "description": "Specifies the operational use of the key, defining whether it is currently permitted for token signing or limited to signature validation only.",
            "examples": [
              "signing"
            ],
            "$ref": "#/components/schemas/KeyMaterialUses"
          },
          "creation_time": {
            "type": "integer",
            "description": "Specifies the creation time of the key (in Epoch).",
            "format": "date-time",
            "example": 1640975400
          },
          "valid_from": {
            "type": "integer",
            "description": "Specifies the time from which the key material is considered valid (in Epoch).",
            "format": "date-time",
            "example": 1640975400
          },
          "valid_to": {
            "type": [
              "null",
              "integer"
            ],
            "description": "Specifies the time until which the key material remains valid (in Epoch).",
            "format": "date-time",
            "example": 1640975400
          },
          "revocation_date": {
            "type": [
              "null",
              "integer"
            ],
            "description": "Specifies the time at which the key material was revoked (in Epoch).",
            "format": "date-time",
            "example": 1640975400
          },
          "rotation_date": {
            "type": [
              "null",
              "integer"
            ],
            "description": "Specifies the time at which the key material was rotated (in Epoch).",
            "format": "date-time",
            "example": 1640975400
          }
        },
        "description": "Key Material Response: Represents a cryptographic key managed by the platform.",
        "x-model-type": "response"
      },
      "KeyMaterialUses": {
        "enum": [
          "signing",
          "validation"
        ],
        "description": "The key material usage.",
        "x-enum-descriptions": {
          "signing": "Indicates that the key may be used to cryptographically sign tokens, and may also be used to validate token signatures.",
          "validation": "Indicates that the key may only be used to validate or verify the signatures of existing tokens."
        }
      },
      "KeyValidationProblemDetails": {
        "required": [
          "errors",
          "status",
          "title",
          "trace_id",
          "type"
        ],
        "type": "object",
        "properties": {
          "type": {
            "type": "string",
            "description": "A URI reference that identifies the error type. When accessed, it may provide human-readable documentation."
          },
          "title": {
            "type": "string",
            "description": "A short, human-readable summary of the error."
          },
          "status": {
            "type": "integer",
            "description": "The HTTP status code associated with this error response.",
            "format": "int32"
          },
          "trace_id": {
            "type": "string",
            "description": "A unique identifier for the request, used for tracing and diagnostics."
          },
          "detail": {
            "type": [
              "null",
              "string"
            ],
            "description": "A human-readable explanation specific to this occurrence of the error."
          },
          "instance": {
            "type": [
              "null",
              "string"
            ],
            "description": "A URI reference that identifies the specific occurrence of the error."
          },
          "errors": {
            "type": "object",
            "additionalProperties": {
              "type": "array",
              "items": {
                "type": "string"
              }
            },
            "description": "A key-value map of validation errors, where each key represents a request field and the value contains one or more messages describing why the request could not be processed."
          }
        },
        "description": "Key Validation Problem Details: Standard error response where errors are represented as a key-value map of fields to messages.",
        "x-model-type": "response"
      },
      "Log": {
        "required": [
          "actor",
          "category",
          "code",
          "description",
          "id",
          "name",
          "request",
          "system",
          "targets",
          "time_stamp",
          "type"
        ],
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "description": "The unique identifier of the log entry.",
            "format": "uuid",
            "example": "83658f0a-e366-41d1-8228-b0874dd36d0c"
          },
          "time_stamp": {
            "type": "integer",
            "description": "Specifies the event time (in Epoch).",
            "format": "date-time",
            "example": 1672479766
          },
          "category": {
            "description": "The event category.",
            "examples": [
              "authentication"
            ],
            "$ref": "#/components/schemas/LogCategories"
          },
          "name": {
            "type": "string",
            "description": "The event name.",
            "example": "Authorization Success"
          },
          "description": {
            "type": "string",
            "description": "A human-readable description of the event.",
            "example": "Authorization successful"
          },
          "type": {
            "description": "The event severity/type.",
            "examples": [
              "success"
            ],
            "$ref": "#/components/schemas/EventTypes"
          },
          "code": {
            "description": "The event code.",
            "examples": [
              "authorization_success"
            ],
            "$ref": "#/components/schemas/EventCodes"
          },
          "message": {
            "type": [
              "null",
              "string"
            ],
            "description": "The message associated with the event.",
            "example": "Authorization Success"
          },
          "system": {
            "description": "System/environment details for the event.",
            "$ref": "#/components/schemas/LogSystem"
          },
          "request": {
            "description": "Request details for the event.",
            "$ref": "#/components/schemas/LogRequest"
          },
          "source": {
            "type": [
              "null",
              "string"
            ],
            "description": "The source endpoint or path that generated the event.",
            "example": "/connect/authorize"
          },
          "actor": {
            "description": "The actor that performed the action.",
            "$ref": "#/components/schemas/LogActor"
          },
          "targets": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/LogTarget"
            },
            "description": "The targets affected by the action."
          },
          "client": {
            "oneOf": [
              {
                "type": "null"
              },
              {
                "description": "The client application details.",
                "$ref": "#/components/schemas/LogClient"
              }
            ]
          },
          "details": {
            "oneOf": [
              {
                "type": "null"
              },
              {
                "description": "Additional event-specific details.",
                "$ref": "#/components/schemas/LogDetails"
              }
            ]
          }
        },
        "description": "Log Response: Represents an audit log entry capturing a system or security event.",
        "x-model-type": "response"
      },
      "LogActor": {
        "required": [
          "type"
        ],
        "type": "object",
        "properties": {
          "type": {
            "description": "The actor type.",
            "examples": [
              "user"
            ],
            "$ref": "#/components/schemas/ActorTypes"
          },
          "id": {
            "type": [
              "null",
              "string"
            ],
            "description": "The unique identifier of the actor entity.",
            "example": "59d3bc42-7f9f-4ac7-9b8a-254c3977490d"
          },
          "name": {
            "type": [
              "null",
              "string"
            ],
            "description": "The display name of the actor.",
            "example": "John Smith"
          },
          "identifier": {
            "type": [
              "null",
              "string"
            ],
            "description": "The primary identifier of the actor (for example, email address).",
            "example": "johnsmith@example.com"
          },
          "session_id": {
            "type": [
              "null",
              "string"
            ],
            "description": "The unique identifier of the session associated with the action.",
            "example": "6BED216118964B3033DF3C5D34943BC9"
          }
        },
        "description": "Log Actor Response: Represents the entity that performed the action recorded in the log entry.",
        "x-model-type": "response"
      },
      "LogCategories": {
        "enum": [
          "authentication",
          "tokens",
          "consent",
          "blocks",
          "users",
          "user_sessions",
          "notifications",
          "resources",
          "trust_store",
          "clients",
          "groups",
          "grants",
          "policies",
          "network_zones"
        ],
        "description": "The log event category.",
        "x-enum-descriptions": {
          "authentication": "Events related to user authentication and sign-in flows.",
          "tokens": "Events related to token issuance, refresh, and validation.",
          "consent": "Events related to user consent and permission approval.",
          "blocks": "Events related to security blocks and enforcement actions.",
          "users": "Events related to user lifecycle and profile changes.",
          "user_sessions": "Events related to user session creation, termination, and activity.",
          "notifications": "Events related to notifications and message delivery.",
          "resources": "Events related to identity resources, API resources, and protected backend services.",
          "trust_store": "Events related to mTLS trust stores and certificate validation.",
          "clients": "Events related to OAuth and OIDC client configuration.",
          "groups": "Events related to group management and membership changes.",
          "grants": "Events related to user grants and delegated permissions.",
          "policies": "Events related to access policies.",
          "network_zones": "Events related to network zones."
        }
      },
      "LogClient": {
        "type": "object",
        "properties": {
          "id": {
            "type": [
              "null",
              "string"
            ],
            "description": "The unique identifier of the client application associated with the event.",
            "example": "8E95D5mki3u0aoaQNR224"
          },
          "name": {
            "type": [
              "null",
              "string"
            ],
            "description": "The display name of the client application.",
            "example": "Dashboard"
          }
        },
        "description": "Log Client Response: Representing the client application associated with the log event.",
        "x-model-type": "response"
      },
      "LogDetails": {
        "type": "object",
        "description": "Log Details Response: Represents additional event-specific details associated with the log entry.",
        "example": {
          "grant_type": "authorization_code",
          "redirect_uri": "https://www.example.com/api/auth/callback",
          "scopes": [
            "openid"
          ],
          "tokens": [
            {
              "type": "code",
              "value": "****4756"
            }
          ]
        }
      },
      "LogIpDetails": {
        "required": [
          "ip",
          "version"
        ],
        "type": "object",
        "properties": {
          "ip": {
            "type": "string",
            "description": "The IP address.",
            "example": "181.177.81.214"
          },
          "version": {
            "type": "string",
            "description": "The IP address version.",
            "example": "v4"
          }
        },
        "description": "Log IP Details Response: Represents the IP address details associated with the log entry.",
        "x-model-type": "response"
      },
      "LogLocation": {
        "type": "object",
        "properties": {
          "region": {
            "type": [
              "null",
              "string"
            ],
            "description": "The region or state of the request.",
            "example": "New York"
          },
          "region_code": {
            "type": [
              "null",
              "string"
            ],
            "description": "The region or state code of the request.",
            "example": "NY"
          },
          "city": {
            "type": [
              "null",
              "string"
            ],
            "description": "The city of the request.",
            "example": "New York"
          },
          "country": {
            "type": [
              "null",
              "string"
            ],
            "description": "The country of the request.",
            "example": "United States"
          },
          "continent": {
            "type": [
              "null",
              "string"
            ],
            "description": "The continent of the request.",
            "example": "North America"
          },
          "latitude": {
            "type": [
              "null",
              "string"
            ],
            "description": "The latitude of the request.",
            "example": "41.1199"
          },
          "longitude": {
            "type": [
              "null",
              "string"
            ],
            "description": "The longitude of the request.",
            "example": "-74.1242"
          },
          "time_zone": {
            "type": [
              "null",
              "string"
            ],
            "description": "The IANA time zone of the request.",
            "example": "America/New_York"
          },
          "zip_code": {
            "type": [
              "null",
              "string"
            ],
            "description": "The postal or zip code of the request.",
            "example": "10901"
          }
        },
        "description": "Log Location Response: Represents the geographical location associated with the log entry.",
        "x-model-type": "response"
      },
      "LogoutOptions": {
        "required": [
          "automatic_redirect_after_logout",
          "show_logout_prompt"
        ],
        "type": "object",
        "properties": {
          "automatic_redirect_after_logout": {
            "type": "boolean",
            "description": "Specifies whether the user is automatically redirected to the client’s configured post-logout redirect URL after signing out.",
            "example": true
          },
          "show_logout_prompt": {
            "type": "boolean",
            "description": "Specifies whether the user is prompted for confirmation before signing out.",
            "example": true
          }
        },
        "description": "Logout Options Response: Represents the current logout behavior configuration.",
        "x-model-type": "response"
      },
      "LogRequest": {
        "required": [
          "is_mtls",
          "is_spiffe"
        ],
        "type": "object",
        "properties": {
          "trace_id": {
            "type": [
              "null",
              "string"
            ],
            "description": "The trace identifier of the request.",
            "example": "0HN89C74Q36SM:0000000A"
          },
          "user_agent": {
            "type": [
              "null",
              "string"
            ],
            "description": "The user agent associated with the request.",
            "example": "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/108.0.0.0 Safari/537.36"
          },
          "remote_ip": {
            "oneOf": [
              {
                "type": "null"
              },
              {
                "description": "The remote IP address of the request.",
                "$ref": "#/components/schemas/LogIpDetails"
              }
            ]
          },
          "location": {
            "oneOf": [
              {
                "type": "null"
              },
              {
                "description": "The geographical location from which the request was made.",
                "$ref": "#/components/schemas/LogLocation"
              }
            ]
          },
          "is_mtls": {
            "type": "boolean",
            "description": "Specifies whether the request was a mTLS request.",
            "example": false
          },
          "is_spiffe": {
            "type": "boolean",
            "description": "Specifies whether the request was authenticated with a SPIFFE SVID.",
            "example": false
          },
          "trust_store_id": {
            "type": [
              "null",
              "string"
            ],
            "description": "The id of the trust store used to authenticate the request.",
            "example": "9qVBxPQiZqtUsBOykavK6"
          },
          "certificate_subject": {
            "type": [
              "null",
              "string"
            ],
            "description": "The subject of the client certificate used in the request.",
            "example": "CN=client.example.com"
          },
          "certificate_issuer": {
            "type": [
              "null",
              "string"
            ],
            "description": "The issuer of the client certificate used in the request.",
            "example": "CN=Example CA, O=Example, C=US"
          },
          "certificate_thumbprint": {
            "type": [
              "null",
              "string"
            ],
            "description": "The SHA-256 thumbprint of the client certificate used in the request.",
            "example": "DE5FE49D077C7F2D5CDC9AAEA9BB1DDBEF152316A31E42CA1A1F209B36DF9C4F"
          },
          "certificate_serial_number": {
            "type": [
              "null",
              "string"
            ],
            "description": "The serial number of the client certificate used in the request.",
            "example": "00D8A29B331B4F63DC"
          },
          "certificate_san_uris": {
            "type": [
              "null",
              "array"
            ],
            "items": {
              "type": "string"
            },
            "description": "The SAN URIs of the client certificate used in the request.",
            "example": [
              "spiffe://example.org/workload"
            ]
          },
          "certificate_san_dns_names": {
            "type": [
              "null",
              "array"
            ],
            "items": {
              "type": "string"
            },
            "description": "The SAN DNS names of the client certificate used in the request.",
            "example": [
              "client.example.com"
            ]
          },
          "certificate_san_ip_addresses": {
            "type": [
              "null",
              "array"
            ],
            "items": {
              "type": "string"
            },
            "description": "The SAN IP addresses of the client certificate used in the request.",
            "example": [
              "192.168.1.10"
            ]
          },
          "certificate_san_emails": {
            "type": [
              "null",
              "array"
            ],
            "items": {
              "type": "string"
            },
            "description": "The SAN email addresses of the client certificate used in the request.",
            "example": [
              "client@example.com"
            ]
          },
          "certificate_san_upns": {
            "type": [
              "null",
              "array"
            ],
            "items": {
              "type": "string"
            },
            "description": "The SAN UPNs of the client certificate used in the request.",
            "example": [
              "user@corp.example.com"
            ]
          },
          "spiffe_id": {
            "type": [
              "null",
              "string"
            ],
            "description": "The SPIFFE ID of the SVID (X.509-SVID or JWT-SVID) that authenticated the request.",
            "example": "spiffe://example.org/workload"
          }
        },
        "description": "Log Request Response: Represents request-level metadata associated with the log entry.",
        "x-model-type": "response"
      },
      "LogSystem": {
        "required": [
          "local_ip",
          "process_id"
        ],
        "type": "object",
        "properties": {
          "activity_id": {
            "type": [
              "null",
              "string"
            ],
            "description": "The activity identifier associated with the request.",
            "example": "00-766304a3e1182dbe9577139dc92b9dea-225cbea2473e5801-01"
          },
          "process_id": {
            "type": "integer",
            "description": "The process identifier of the executing service.",
            "format": "int32",
            "example": 12999
          },
          "local_ip": {
            "description": "The local IP address details of the service handling the request.",
            "$ref": "#/components/schemas/LogIpDetails"
          }
        },
        "description": "Log System Response: Represents the system or application instance that generated the log entry.",
        "x-model-type": "response"
      },
      "LogTarget": {
        "required": [
          "type"
        ],
        "type": "object",
        "properties": {
          "type": {
            "description": "The target type.",
            "examples": [
              "user"
            ],
            "$ref": "#/components/schemas/TargetTypes"
          },
          "id": {
            "type": [
              "null",
              "string"
            ],
            "description": "The unique identifier of the target entity.",
            "example": "59d3bc42-7f9f-4ac7-9b8a-254c3977490d"
          },
          "name": {
            "type": [
              "null",
              "string"
            ],
            "description": "The display name of the target entity.",
            "example": "John Smith"
          },
          "identifier": {
            "type": [
              "null",
              "string"
            ],
            "description": "The primary identifier of the target entity (for example, email address).",
            "example": "johnsmith@example.com"
          }
        },
        "description": "Log Target Response: Represents the entity affected by the log event.",
        "x-model-type": "response"
      },
      "NetworkZoneCategory": {
        "enum": [
          "trusted",
          "blocked"
        ],
        "x-enum-descriptions": {
          "trusted": "Trusted Network Zone",
          "blocked": "Blocked Network Zone"
        }
      },
      "NetworkZoneOperator": {
        "enum": [
          "in",
          "not_in"
        ],
        "x-enum-descriptions": {
          "in": "In",
          "not_in": "Not In"
        }
      },
      "OidcPkceMode": {
        "enum": [
          "auto",
          "s256",
          "plain",
          "none"
        ],
        "description": "The PKCE mode used with an external OIDC provider.",
        "x-enum-descriptions": {
          "auto": "PKCE is negotiated automatically based on the provider's discovery metadata.",
          "s256": "PKCE using the S256 code challenge method.",
          "plain": "PKCE using the plain code challenge method.",
          "none": "PKCE is disabled."
        }
      },
      "PageBrandingOptions": {
        "required": [
          "background_color",
          "primary_color",
          "show_watermark"
        ],
        "type": "object",
        "properties": {
          "show_watermark": {
            "type": "boolean",
            "description": "Specifies whether the MonoCloud watermark is displayed on hosted login pages.",
            "example": true
          },
          "primary_color": {
            "type": "string",
            "description": "Defines the primary brand color used across hosted login pages (HEX format).",
            "example": "#0D45FE"
          },
          "background_color": {
            "type": "string",
            "description": "Defines the background color of hosted login pages (HEX format).",
            "example": "#F8F8F8"
          }
        },
        "description": "Page Branding Options Response: Represents visual and layout branding settings applied to hosted pages.",
        "x-model-type": "response"
      },
      "PaginationHeader": {
        "required": [
          "current_page",
          "has_next",
          "has_previous",
          "page_size",
          "total_count"
        ],
        "type": "object",
        "properties": {
          "page_size": {
            "type": "integer",
            "description": "Number of items returned per page.",
            "format": "int32",
            "example": 10
          },
          "current_page": {
            "type": "integer",
            "description": "The current page number.",
            "format": "int32",
            "example": 1
          },
          "total_count": {
            "type": "integer",
            "description": "Total number of items available.",
            "format": "int32",
            "example": 25
          },
          "has_previous": {
            "type": "boolean",
            "description": "Indicates whether a previous page exists.",
            "example": false
          },
          "has_next": {
            "type": "boolean",
            "description": "Indicates whether a next page exists.",
            "example": true
          }
        },
        "description": "The pagination header.",
        "x-model-type": "header"
      },
      "PasskeyAuthenticatorOptions": {
        "required": [
          "enable_auto_complete",
          "enable_sign_in",
          "enable_sign_up",
          "prompt_device_enrollment",
          "prompt_enrollment",
          "show_passkey_button"
        ],
        "type": "object",
        "properties": {
          "enable_sign_in": {
            "type": "boolean",
            "description": "Specifies whether users can sign in using passkeys.",
            "example": false
          },
          "enable_sign_up": {
            "type": "boolean",
            "description": "Specifies whether new users can sign up using passkeys.",
            "example": false
          },
          "prompt_enrollment": {
            "type": "boolean",
            "description": "Specifies whether users should be prompted to enroll a passkey if none exists.",
            "example": true
          },
          "prompt_device_enrollment": {
            "type": "boolean",
            "description": "Specifies whether users should be prompted to enroll a passkey for the current device if no device-specific passkey exists.",
            "example": true
          },
          "enable_auto_complete": {
            "type": "boolean",
            "description": "Specifies whether passkeys can be auto-filled using the identifier field on the sign-in page.",
            "example": true
          },
          "show_passkey_button": {
            "type": "boolean",
            "description": "Specifies whether the “Continue with Passkey” button is shown on the sign-in page.",
            "example": true
          }
        },
        "description": "Passkey Authenticator Options Response: Represents the configuration for passkey-based authentication.",
        "x-model-type": "response"
      },
      "PasswordAlgorithms": {
        "enum": [
          "bcrypt"
        ],
        "description": "The password hashing algorithm.",
        "x-enum-descriptions": {
          "bcrypt": "BCrypt adaptive password hashing algorithm"
        }
      },
      "PasswordAuthenticatorOptions": {
        "required": [
          "enable_sign_in",
          "enable_sign_up",
          "prompt_password_on_initial_screen",
          "reuse",
          "strength"
        ],
        "type": "object",
        "properties": {
          "enable_sign_in": {
            "type": "boolean",
            "description": "Specifies whether users can sign in using password-based authentication.",
            "example": true
          },
          "enable_sign_up": {
            "type": "boolean",
            "description": "Specifies whether new users can sign up using password-based authentication.",
            "example": true
          },
          "prompt_password_on_initial_screen": {
            "type": "boolean",
            "description": "Specifies whether the password is collected on the initial sign-in screen alongside the identifier.",
            "example": false
          },
          "expiry": {
            "type": [
              "null",
              "integer"
            ],
            "description": "Specifies the password expiration interval (in days). When empty, passwords do not expire.",
            "format": "int32",
            "example": 30
          },
          "strength": {
            "description": "Password strength policy configuration.",
            "$ref": "#/components/schemas/PasswordStrengthOptions"
          },
          "reuse": {
            "description": "Password reuse policy configuration.",
            "$ref": "#/components/schemas/PasswordReuseOptions"
          }
        },
        "description": "Password Authenticator Options Response: Represents the configuration for password-based authentication.",
        "x-model-type": "response"
      },
      "PasswordRestrictionModes": {
        "enum": [
          "off",
          "date",
          "count",
          "date_and_count"
        ],
        "description": "The password restriction mode.",
        "x-enum-descriptions": {
          "off": "No password reuse restrictions are enforced.",
          "date": "Prevents reuse of passwords used within a specified time window.",
          "count": "Prevents reuse of the most recently used passwords, based on a configured count.",
          "date_and_count": "Prevents reuse of passwords based on both a time window and a usage count."
        }
      },
      "PasswordReuseOptions": {
        "required": [
          "restriction_count",
          "restriction_mode",
          "restriction_period"
        ],
        "type": "object",
        "properties": {
          "restriction_mode": {
            "description": "Specifies the password reuse control policy, defining whether reuse is limited by time, count, both, or unrestricted.",
            "examples": [
              "off"
            ],
            "$ref": "#/components/schemas/PasswordRestrictionModes"
          },
          "restriction_period": {
            "type": "integer",
            "description": "Specifies the time period during which previously used passwords are blocked from reuse (in minutes).",
            "format": "int32",
            "example": 43200
          },
          "restriction_count": {
            "type": "integer",
            "description": "Defines the number of historical passwords that are disallowed for reuse under count-based enforcement.",
            "format": "int32",
            "example": 5
          }
        },
        "description": "Password Reuse Options Response: Represents the configuration for password reuse restrictions.",
        "x-model-type": "response"
      },
      "PasswordStrengthOptions": {
        "required": [
          "minimum_length",
          "require_digit",
          "require_lowercase_character",
          "require_non_alphanumeric_character",
          "require_uppercase_character",
          "required_unique_characters_count"
        ],
        "type": "object",
        "properties": {
          "minimum_length": {
            "type": "integer",
            "description": "Specifies the minimum number of characters required for a password.",
            "format": "int32",
            "example": 16
          },
          "require_non_alphanumeric_character": {
            "type": "boolean",
            "description": "Specifies whether at least one non-alphanumeric character is required in the password.",
            "example": true
          },
          "require_digit": {
            "type": "boolean",
            "description": "Specifies whether at least one numeric digit is required in the password.",
            "example": true
          },
          "require_lowercase_character": {
            "type": "boolean",
            "description": "Specifies whether at least one lowercase letter is required in the password.",
            "example": true
          },
          "require_uppercase_character": {
            "type": "boolean",
            "description": "Specifies whether at least one uppercase letter is required in the password.",
            "example": true
          },
          "required_unique_characters_count": {
            "type": "integer",
            "description": "Specifies the minimum number of unique characters required in the password.",
            "format": "int32",
            "example": 4
          }
        },
        "description": "Password Strength Options Response: Represents the configuration for password complexity and strength requirements.",
        "x-model-type": "response"
      },
      "PatchAccountProtectionOptionsRequest": {
        "type": "object",
        "properties": {
          "user_lockout": {
            "description": "User account protection settings used to safeguard accounts from abuse.",
            "$ref": "#/components/schemas/PatchAccountProtectionUserLockoutOptionsRequest"
          }
        },
        "description": "Patch Account Protection Options Request: Used to update user account protection settings.",
        "x-model-type": "patch_optional"
      },
      "PatchAccountProtectionUserLockoutOptionsRequest": {
        "type": "object",
        "properties": {
          "enabled": {
            "type": "boolean",
            "description": "Enables user lockout protection.",
            "example": true
          },
          "max_failed_access_attempts": {
            "maximum": 2147483647,
            "minimum": 1,
            "type": "integer",
            "description": "Maximum failed sign-in attempts allowed before lockout (inclusive).",
            "format": "int32",
            "example": 5
          },
          "user_lockout_time_span": {
            "maximum": 2147483647,
            "minimum": 3,
            "type": "integer",
            "description": "User account lockout duration (in minutes).",
            "format": "int32",
            "example": 5
          },
          "ip_lockout_time_span": {
            "maximum": 2147483647,
            "minimum": 3,
            "type": "integer",
            "description": "IP lockout duration (in minutes).",
            "format": "int32",
            "example": 43200
          },
          "allowed_ips": {
            "maxItems": 50,
            "uniqueItems": true,
            "type": "array",
            "items": {
              "maxLength": 45,
              "minLength": 1,
              "type": "string"
            },
            "description": "Allowlisted IP addresses that are exempt from lockout enforcement.",
            "example": [
              "156.3.59.5",
              "184.220.154.65"
            ]
          },
          "lockout_type": {
            "description": "The lockout enforcement mode (IP-based or user-account-based).",
            "examples": [
              "ip"
            ],
            "$ref": "#/components/schemas/UserLockoutTypes"
          },
          "user_unblock": {
            "description": "The user unblock configuration.",
            "$ref": "#/components/schemas/PatchAccountProtectionUserUnblockOptionsRequest"
          }
        },
        "description": "Patch Account Protection User Lockout Options Request: Used to update user lockout behavior and thresholds.",
        "x-model-type": "patch_optional"
      },
      "PatchAccountProtectionUserUnblockEmailOptionsRequest": {
        "type": "object",
        "properties": {
          "expiry": {
            "maximum": 7776000,
            "minimum": 60,
            "type": "integer",
            "description": "Specifies the validity period of the unblock email link (in seconds).",
            "format": "int32",
            "example": 300
          }
        },
        "description": "Patch Account Protection User Unblock Email Options Request: Used to update email-based user unblock configuration.",
        "x-model-type": "patch_optional"
      },
      "PatchAccountProtectionUserUnblockOptionsRequest": {
        "type": "object",
        "properties": {
          "email": {
            "description": "Email-based user unblock configuration.",
            "$ref": "#/components/schemas/PatchAccountProtectionUserUnblockEmailOptionsRequest"
          }
        },
        "description": "Patch Account Protection User Unblock Options Request: Used to update user account unblock configuration.",
        "x-model-type": "patch_optional"
      },
      "PatchApiAccessAdvancedPolicyRequest": {
        "type": "object",
        "properties": {
          "enabled": {
            "type": "boolean",
            "description": "Indicates whether the policy is enabled.",
            "example": true
          },
          "name": {
            "maxLength": 100,
            "minLength": 1,
            "type": "string",
            "description": "Human-readable name for the policy.",
            "example": "Billing access policy"
          },
          "description": {
            "maxLength": 200,
            "type": [
              "null",
              "string"
            ],
            "description": "Description that explains the purpose of the policy.",
            "example": "Restricts billing API access to admins during business hours"
          },
          "actions": {
            "description": "Action settings applied when the policy fires.",
            "$ref": "#/components/schemas/PatchApiAccessPolicyActionsRequest"
          },
          "cedar": {
            "maxLength": 2000,
            "minLength": 1,
            "type": "string",
            "description": "The Cedar policy source used during evaluation for advanced policies.",
            "example": "permit (principal, action, resource == Api::\"https://api.example.com/billing\");"
          },
          "error": {
            "maxLength": 200,
            "type": [
              "null",
              "string"
            ],
            "description": "Optional denial message returned to the client when this policy rejects a token request. If unset, a generic denial message is returned.",
            "example": "Access to the billing API requires admin approval."
          }
        },
        "description": "Patch Advanced API Access Policy Request: Used to partially update an advanced API access policy.",
        "x-model-type": "patch_optional"
      },
      "PatchApiAccessBasicPolicyRequest": {
        "type": "object",
        "properties": {
          "enabled": {
            "type": "boolean",
            "description": "Indicates whether the policy is enabled.",
            "example": true
          },
          "name": {
            "maxLength": 100,
            "minLength": 1,
            "type": "string",
            "description": "Human-readable name for the policy.",
            "example": "Billing access policy"
          },
          "description": {
            "maxLength": 200,
            "type": [
              "null",
              "string"
            ],
            "description": "Description that explains the purpose of the policy.",
            "example": "Restricts billing API access to admins during business hours"
          },
          "actions": {
            "description": "Action settings applied when the policy fires.",
            "$ref": "#/components/schemas/PatchApiAccessPolicyActionsRequest"
          },
          "scopes": {
            "maxItems": 50,
            "type": "array",
            "items": {
              "maxLength": 50,
              "minLength": 1,
              "pattern": "^[a-z0-9]+([a-z0-9-.:_/]+[a-z0-9])?$",
              "type": "string"
            },
            "description": "The API scopes that may be requested by the client. If empty, all scopes may be requested.",
            "example": [
              "read",
              "write"
            ]
          }
        },
        "description": "Patch Basic API Access Policy Request: Used to partially update a basic API access policy.",
        "x-model-type": "patch_optional"
      },
      "PatchApiAccessPolicyActionsRequest": {
        "type": "object",
        "properties": {
          "access_token_type": {
            "oneOf": [
              {
                "type": "null"
              },
              {
                "description": "Overrides whether access tokens are issued as self-contained JWTs or opaque reference tokens. When unset, the API resource default is used.\n>[!note]\n> ScaleX subscription required to use reference tokens. Reference tokens improve revocation control and reduce token exposure, but require protected resources to use token introspection.",
                "examples": [
                  "jwt"
                ],
                "$ref": "#/components/schemas/AccessTokenTypes"
              }
            ],
            "description": "Overrides whether access tokens are issued as self-contained JWTs or opaque reference tokens. When unset, the API resource default is used.\n>[!note]\n> ScaleX subscription required to use reference tokens. Reference tokens improve revocation control and reduce token exposure, but require protected resources to use token introspection.",
            "example": "jwt"
          },
          "access_token_lifetime": {
            "maximum": 2592000,
            "minimum": 5,
            "type": [
              "null",
              "integer"
            ],
            "description": "Overrides the access token lifetime (in seconds). When unset, the API resource default is used.",
            "format": "int32",
            "example": 3600
          },
          "allow_multi_audience": {
            "type": [
              "null",
              "boolean"
            ],
            "description": "Overrides whether access tokens issued for this resource may include additional audiences. When unset, the API resource default is used.\n>[!note]\n> ScaleX subscription required to allow multi-audience tokens.",
            "example": false
          },
          "allow_user_info_access": {
            "type": [
              "null",
              "boolean"
            ],
            "description": "Overrides whether access tokens issued for this resource may include identity scopes and be used with identity endpoints such as UserInfo. When unset, the API resource default is used.\n>[!note]\n> ScaleX subscription required to allow UserInfo access.",
            "example": true
          },
          "bind_tokens_to_session": {
            "type": [
              "null",
              "boolean"
            ],
            "description": "Overrides whether access tokens issued for this resource are bound to the user session and revoked when the session ends. When unset, the API resource default is used.\n>[!note]\n> ScaleX subscription required to use session binding.",
            "example": true
          }
        },
        "description": "Patch API Access Policy Actions Request: Used to partially update action settings for an API access policy.",
        "x-model-type": "patch_optional"
      },
      "PatchApiResourceRequest": {
        "type": "object",
        "properties": {
          "enabled": {
            "type": "boolean",
            "description": "Indicates whether the resource is enabled.",
            "example": true
          },
          "display_name": {
            "maxLength": 50,
            "type": [
              "null",
              "string"
            ],
            "description": "Human-readable display name for the resource.",
            "example": "Designation"
          },
          "description": {
            "maxLength": 200,
            "type": [
              "null",
              "string"
            ],
            "description": "Description that explains the purpose of the resource.",
            "example": "Current position in the employed organization"
          },
          "allow_multi_audience": {
            "type": "boolean",
            "description": "Specifies whether access tokens issued for this resource may carry additional audiences beyond this resource.\n>[!note]\n> ScaleX subscription required to allow multi-audience tokens.",
            "example": false
          },
          "allow_user_info_access": {
            "type": "boolean",
            "description": "Specifies whether access tokens issued for this resource may include identity scopes, allowing them to be used with identity-related endpoints such as `UserInfo`.\n>[!note]\n> ScaleX subscription required to allow UserInfo access.",
            "example": false
          },
          "user_claims": {
            "maxItems": 100,
            "uniqueItems": true,
            "type": "array",
            "items": {
              "maxLength": 100,
              "minLength": 1,
              "pattern": "^[a-z0-9]+([a-z0-9_]+[a-z0-9])?$",
              "type": "string"
            },
            "description": "List of user claim types that will be embedded into access tokens issued for this API resource.",
            "example": [
              "job_title"
            ]
          },
          "access_token_type": {
            "description": "Default access token type for this API resource. Used when no matching API access policy provides an override.\n>[!note]\n> ScaleX subscription required to use reference tokens. Reference tokens improve revocation control and reduce exposure risk, but require token introspection by protected resources.",
            "examples": [
              "jwt"
            ],
            "$ref": "#/components/schemas/AccessTokenTypes"
          },
          "access_token_lifetime": {
            "maximum": 2592000,
            "minimum": 5,
            "type": "integer",
            "description": "Default access token lifetime (in seconds) for this API resource. Used when no matching API access policy provides an override.",
            "format": "int32",
            "example": 3600
          },
          "bind_tokens_to_session": {
            "type": "boolean",
            "description": "Default value for whether access tokens issued for this API resource are bound to the user session, causing them to be revoked when the session ends. Used when no matching API access policy provides an override.\n>[!note]\n> ScaleX subscription required to use session binding.",
            "example": false
          },
          "include_jwt_id": {
            "type": "boolean",
            "description": "Determines whether access tokens issued for this API resource include a unique token identifier (jti).\n>[!note]\n> Recommended for auditing, correlation, and replay-detection.",
            "example": true
          }
        },
        "description": "Patch API Resource Request: Used to update one or more properties of an existing API resource.",
        "x-model-type": "patch_optional"
      },
      "PatchApiScopeRequest": {
        "type": "object",
        "properties": {
          "display_name": {
            "maxLength": 50,
            "type": [
              "null",
              "string"
            ],
            "description": "Human-readable display name for the resource.",
            "example": "Designation"
          },
          "description": {
            "maxLength": 200,
            "type": [
              "null",
              "string"
            ],
            "description": "Description that explains the purpose of the resource.",
            "example": "Current position in the employed organization"
          },
          "show_in_discovery_document": {
            "type": "boolean",
            "description": "Indicates whether this resource is advertised via the discovery document.",
            "example": true
          },
          "required": {
            "type": "boolean",
            "description": "Specifies whether the scope is mandatory and cannot be de-selected by the user on the consent screen.",
            "example": false
          },
          "emphasize": {
            "type": "boolean",
            "description": "Indicates whether this scope is visually emphasized on the consent screen, typically for sensitive or high-impact permissions.",
            "example": false
          },
          "is_default": {
            "type": "boolean",
            "description": "Specifies whether this scope is automatically included in issued tokens when the `scope` parameter is omitted.",
            "example": false
          },
          "user_claims": {
            "maxItems": 100,
            "uniqueItems": true,
            "type": "array",
            "items": {
              "maxLength": 100,
              "minLength": 1,
              "pattern": "^[a-z0-9]+([a-z0-9_]+[a-z0-9])?$",
              "type": "string"
            },
            "description": "List of user claim types that will be embedded into access tokens when this scope is granted.",
            "example": [
              "email_address",
              "phone_number",
              "given_name"
            ]
          }
        },
        "description": "Patch API Scope Request: Used to update one or more properties of an existing API scope.",
        "x-model-type": "patch_optional"
      },
      "PatchApplicationRequest": {
        "type": "object",
        "properties": {
          "enabled": {
            "type": "boolean",
            "description": "Indicates whether the client is enabled.",
            "example": true
          },
          "app_type": {
            "description": "Preferred application type for the client.",
            "examples": [
              "spa"
            ],
            "$ref": "#/components/schemas/ApplicationTypes"
          },
          "tech_type": {
            "description": "Preferred technology stack for the client.",
            "examples": [
              "javascript"
            ],
            "$ref": "#/components/schemas/TechTypes"
          },
          "require_client_secret": {
            "type": "boolean",
            "description": "Requires confidential clients to present a client secret when requesting tokens.\n>[!warning]\n> Only disable for public clients (e.g., SPA / mobile).",
            "example": true
          },
          "client_name": {
            "maxLength": 50,
            "minLength": 1,
            "type": "string",
            "description": "Human-readable name for the client application, displayed to users on the login and consent screens.",
            "example": "Accounting Dashboard"
          },
          "description": {
            "maxLength": 200,
            "type": [
              "null",
              "string"
            ],
            "description": "Description that explains the purpose of the client application.",
            "example": "Handles financial reporting, general ledger maintenance, and related operations."
          },
          "client_uri": {
            "maxLength": 400,
            "type": [
              "null",
              "string"
            ],
            "description": "Public URL that provides additional information about the client application.",
            "format": "uri",
            "example": "https://www.organization/accounting"
          },
          "logo_uri": {
            "maxLength": 400,
            "type": [
              "null",
              "string"
            ],
            "description": "URL of the client application logo, displayed on the consent screen to help users identify the application.",
            "format": "uri",
            "example": "https://www.organization/accounting_logo.png"
          },
          "enable_consent": {
            "type": "boolean",
            "description": "Indicates whether the consents are enabled for the client.\n>[!note]\n> Secure+ subscription required to use consents.",
            "example": false
          },
          "require_consent": {
            "type": "boolean",
            "description": "Controls whether users are prompted to review and approve requested permissions.\n>[!note]\n> Secure+ subscription required to use consents.",
            "example": false
          },
          "always_require_consent_for_offline_access": {
            "type": "boolean",
            "description": "Always prompts users for consent when requesting offline (refresh token) access.\n>[!note]\n> Secure+ subscription required to use consents.\r\nThis setting applies even if the user previously chose to remember their consent.",
            "example": false
          },
          "remember_consent": {
            "description": "Controls how consent decisions are remembered for future sign-ins.\n>[!note]\n> Secure+ subscription required to use consents.",
            "examples": [
              "user_selected"
            ],
            "$ref": "#/components/schemas/RememberConsentTypes"
          },
          "show_consent_scope_selection": {
            "type": "boolean",
            "description": "Allows end users to choose which requested scopes to grant on the consent screen.\n>[!note]\n> Secure+ subscription required to use consents.",
            "example": true
          },
          "always_include_user_claims_in_id_token": {
            "type": "boolean",
            "description": "Always embeds user claims in the ID token instead of requiring calls to the userinfo endpoint.\n>[!note]\n> Enabling this increases the ID token size and may expose more user data to applications than necessary.",
            "example": false
          },
          "allowed_grant_types": {
            "maxItems": 10,
            "uniqueItems": true,
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/GrantTypes"
            },
            "description": "Defines which OAuth / OIDC grant types this client is permitted to use.\n>[!note]\n> Only valid and secure grant combinations are supported.",
            "example": [
              "hybrid",
              "device_code"
            ]
          },
          "require_pkce": {
            "type": "boolean",
            "description": "Requires Proof Key for Code Exchange (PKCE) for authorization code flows.\n>[!note]\n> Strongly recommended for public clients such as SPAs and mobile applications.",
            "example": true
          },
          "allow_plain_text_pkce": {
            "type": "boolean",
            "description": "Allows Proof Key for Code Exchange (PKCE) verification using the plain (unhashed) method.\n>[!warning]\n> Use only for legacy compatibility — strongly discouraged for production.",
            "example": false
          },
          "require_request_object": {
            "type": "boolean",
            "description": "Requires authorization requests to be sent as signed JWT request objects.\n>[!note]\n> Secure+ subscription required to use JWT request objects (JAR).",
            "example": false
          },
          "require_pushed_authorization_requests": {
            "type": "boolean",
            "description": "Requires clients to use Pushed Authorization Requests (PAR) instead of sending parameters directly to the authorization endpoint.\n>[!note]\n> Secure+ subscription required to use Pushed Authorization Requests (PAR).",
            "example": false
          },
          "allow_any_pushed_authorization_redirect_uri": {
            "type": "boolean",
            "description": "Allows the client to use any redirect URI when using Pushed Authorization Requests (PAR), instead of being limited to the configured redirect URI list.\n>[!note]\n> Secure+ subscription required to use Pushed Authorization Requests (PAR).",
            "example": false
          },
          "authorization_request_lifetime": {
            "maximum": 3600,
            "minimum": 1,
            "type": "integer",
            "description": "Lifetime of the authorization request (in seconds). Controls how long the request data is considered valid during the authorization flow.",
            "format": "int32",
            "example": 600
          },
          "allow_access_tokens_via_browser": {
            "type": "boolean",
            "description": "Controls whether access tokens may be transmitted via the browser for this client.\n>[!warning]\n> Enable only when absolutely necessary. Returning access tokens to the browser increases the risk of leakage through logs, plugins, redirects, or malicious scripts. Recommended to keep disabled and prefer the Authorization Code + PKCE flow.",
            "example": false
          },
          "redirect_uris": {
            "maxItems": 50,
            "uniqueItems": true,
            "type": "array",
            "items": {
              "maxLength": 400,
              "minLength": 1,
              "type": "string",
              "format": "uri"
            },
            "description": "List of approved redirect URIs where authorization codes or tokens may be sent.\n>[!note]\n> Only exact, fully-qualified matches are allowed.",
            "example": [
              "https://www.organization/accounting/redirect1",
              "https://www.organization/hr/redirect"
            ]
          },
          "post_logout_redirect_uris": {
            "maxItems": 50,
            "uniqueItems": true,
            "type": "array",
            "items": {
              "maxLength": 400,
              "minLength": 1,
              "type": "string",
              "format": "uri"
            },
            "description": "List of approved URIs users can be redirected to after a successful logout.\n>[!note]\n> Only exact, fully-qualified matches are allowed.",
            "example": [
              "https://www.organization/accounting/loggedout",
              "https://www.organization/hr/loggedout"
            ]
          },
          "front_channel_logout_uri": {
            "maxLength": 400,
            "type": [
              "null",
              "string"
            ],
            "description": "Browser-based (front-channel) endpoint on the client that receives user logout notifications from MonoCloud.\n>[!note]\n> Pro plan subscription required to use front-channel logout.",
            "format": "uri",
            "example": "https://www.organization/accounting/frontLogout"
          },
          "front_channel_logout_session_required": {
            "type": "boolean",
            "description": "Indicates whether the user’s session identifier should be included when invoking the front-channel logout URI.\n>[!note]\n> Pro plan subscription required to use front-channel logout.",
            "example": true
          },
          "back_channel_logout_uri": {
            "maxLength": 400,
            "type": [
              "null",
              "string"
            ],
            "description": "Server-side (back-channel) endpoint that MonoCloud calls to notify the application of a user logout.\n>[!note]\n> Secure+ subscription required to use back-channel logout.",
            "format": "uri",
            "example": "https://www.organization/accounting/backLogout"
          },
          "back_channel_logout_session_required": {
            "type": "boolean",
            "description": "Indicates whether the user’s session identifier should be included when invoking the back-channel logout URI.\n>[!note]\n> Secure+ subscription required to use back-channel logout.",
            "example": true
          },
          "bind_refresh_tokens_to_session": {
            "type": "boolean",
            "description": "Binds refresh tokens issued for the client to the user's session. When enabled, refresh tokens are automatically revoked when the user signs out or the session expires.\n>[!note]\n> ScaleX subscription required to use session binding.",
            "example": true
          },
          "allow_offline_access": {
            "type": "boolean",
            "description": "Allows the client to obtain refresh tokens using the `offline_access` scope.\n>[!note]\n> Use only for trusted applications that can securely store long-lived tokens.",
            "example": false
          },
          "allowed_identity_scopes": {
            "maxItems": 50,
            "uniqueItems": true,
            "type": "array",
            "items": {
              "maxLength": 50,
              "minLength": 1,
              "pattern": "^[a-z0-9]+([a-z0-9-.:_/]+[a-z0-9])?$",
              "type": "string"
            },
            "description": "Defines the approved identity scopes that this client is authorized to request.",
            "example": [
              "openid",
              "profile",
              "email"
            ]
          },
          "identity_token_lifetime": {
            "maximum": 2592000,
            "minimum": 5,
            "type": "integer",
            "description": "Specifies how long an ID token remains valid (in seconds).",
            "format": "int32",
            "example": 300
          },
          "access_token_lifetime": {
            "maximum": 2592000,
            "minimum": 5,
            "type": "integer",
            "description": "Specifies how long access tokens issued without API resource scopes remain valid (in seconds). These tokens may only be used with the UserInfo endpoint.",
            "format": "int32",
            "example": 3600
          },
          "authorization_code_lifetime": {
            "maximum": 600,
            "minimum": 1,
            "type": "integer",
            "description": "Specifies how long an authorization code remains valid (in seconds).",
            "format": "int32",
            "example": 300
          },
          "consent_lifetime": {
            "maximum": 2147483647,
            "minimum": 0,
            "type": "integer",
            "description": "Specifies the validity period for stored user consent (in seconds). Set to `0` to allow consent to remain valid indefinitely.\n>[!note]\n> Secure+ subscription required to use consents.",
            "format": "int32",
            "example": 604800
          },
          "absolute_refresh_token_lifetime": {
            "maximum": 157788000,
            "minimum": 5,
            "type": "integer",
            "description": "Specifies the maximum lifetime of a refresh token (in seconds), regardless of how often it is used.\n>[!note]\n> ScaleX subscription required to configure refresh token lifetimes longer than a month.",
            "format": "int32",
            "example": 2592000
          },
          "sliding_refresh_token_lifetime": {
            "maximum": 157788000,
            "minimum": 5,
            "type": "integer",
            "description": "Defines the sliding expiration window for refresh tokens (in seconds). Token expiry is extended on each valid refresh, subject to the absolute refresh token lifetime.",
            "format": "int32",
            "example": 1296000
          },
          "refresh_token_usage": {
            "description": "Controls whether refresh tokens are single-use (rotated) or reusable.",
            "examples": [
              "one_time_only"
            ],
            "$ref": "#/components/schemas/RefreshTokenUsageTypes"
          },
          "update_access_token_claims_on_refresh": {
            "type": "boolean",
            "description": "Controls whether access token claims are recalculated and reissued when refreshing a token.",
            "example": false
          },
          "emit_offline_access_scope_in_access_token": {
            "type": "boolean",
            "description": "Includes the `offline_access` scope in issued access tokens when requested by the client.",
            "example": false
          },
          "refresh_token_expiration": {
            "description": "Controls whether refresh tokens expire at a fixed time or are extended with continued use.",
            "examples": [
              "absolute"
            ],
            "$ref": "#/components/schemas/RefreshTokenExpirationTypes"
          },
          "access_token_type": {
            "description": "Specifies whether access tokens issued without API resource scopes are issued as self-contained JWTs or opaque reference tokens. These tokens may only be used with the UserInfo endpoint.\n>[!note]\n> ScaleX subscription required to use reference tokens. Reference tokens improve revocation control and reduce exposure risk, but require token introspection by protected resources.",
            "examples": [
              "jwt"
            ],
            "$ref": "#/components/schemas/AccessTokenTypes"
          },
          "authenticator_restrictions": {
            "uniqueItems": true,
            "type": "array",
            "items": {
              "maxLength": 20,
              "minLength": 1,
              "pattern": "^[a-z0-9]+([a-z0-9_-]+[a-z0-9])?$",
              "type": "string"
            },
            "description": "Defines the authenticators users may use to sign in with this client. Leave empty to inherit the global authenticator policy.\n>[!note]\n> Pro plan subscription required to enable authenticator restrictions.",
            "example": [
              "email",
              "google"
            ]
          },
          "claims": {
            "type": "object",
            "additionalProperties": { },
            "description": "Defines custom claims issued to this client and embedded into access tokens for downstream APIs and resources."
          },
          "always_send_client_claims": {
            "type": "boolean",
            "description": "Controls whether client claims are always emitted in access tokens, or only when using the client credentials flow.",
            "example": false
          },
          "client_claims_prefix": {
            "maxLength": 50,
            "pattern": "^[a-zA-Z0-9][a-zA-Z0-9_]*$",
            "type": [
              "null",
              "string"
            ],
            "description": "Configures a prefix for client claims, helping avoid naming collisions across tokens and downstream APIs.",
            "example": "client_"
          },
          "allowed_cors_origins": {
            "maxItems": 50,
            "uniqueItems": true,
            "type": "array",
            "items": {
              "maxLength": 400,
              "minLength": 1,
              "type": "string",
              "format": "uri"
            },
            "description": "Configures the set of trusted origins permitted to perform cross-origin requests for this client.",
            "example": [
              "https://accounting.organization",
              "https://hr.organization"
            ]
          },
          "user_sso_lifetime": {
            "maximum": 31557600,
            "minimum": 0,
            "type": "integer",
            "description": "Maximum allowed SSO duration (in seconds). After this window, users must sign in again to confirm identity. Set to `0` to disable the limit.",
            "format": "int32",
            "example": 604800
          },
          "device_code_length": {
            "maximum": 16,
            "minimum": 4,
            "type": "integer",
            "description": "Specifies the length of the user verification code generated for the device flow.",
            "format": "int32",
            "example": 6
          },
          "device_code_lifetime": {
            "maximum": 3600,
            "minimum": 30,
            "type": "integer",
            "description": "Specifies the lifetime of the device authorization code (in seconds).",
            "format": "int32",
            "example": 180
          }
        },
        "description": "Patch Application Request: Used to update one or more properties of an existing client.",
        "x-model-type": "patch_optional"
      },
      "PatchAuthenticationOptionsRequest": {
        "type": "object",
        "properties": {
          "pushed_authorization": {
            "description": "Pushed Authorization Request Options",
            "$ref": "#/components/schemas/PatchPushedAuthorizationOptionsRequest"
          },
          "account_protection": {
            "description": "Account Protection Options",
            "$ref": "#/components/schemas/PatchAccountProtectionOptionsRequest"
          },
          "authenticators": {
            "description": "Authenticators Options",
            "$ref": "#/components/schemas/PatchAuthenticatorOptionsRequest"
          },
          "identifiers": {
            "description": "Identifiers Options",
            "$ref": "#/components/schemas/PatchIdentifierOptionsRequest"
          },
          "recovery_methods": {
            "description": "Recovery Methods Options",
            "$ref": "#/components/schemas/PatchRecoveryMethodsOptionsRequest"
          },
          "session": {
            "description": "Session Options",
            "$ref": "#/components/schemas/PatchSessionOptionsRequest"
          },
          "logout": {
            "description": "Logout Options",
            "$ref": "#/components/schemas/PatchLogoutOptionsRequest"
          },
          "sign_up": {
            "description": "Sign-up Options",
            "$ref": "#/components/schemas/PatchSignUpOptionsRequest"
          }
        },
        "description": "Patch Authentication Options Request: Used to update the authentication configuration.",
        "x-model-type": "patch_optional"
      },
      "PatchAuthenticatorOptionsRequest": {
        "type": "object",
        "properties": {
          "external_sign_in_methods_first": {
            "type": "boolean",
            "description": "Determines whether external authentication providers are prioritized over other authenticators during sign-in.",
            "example": true
          },
          "password": {
            "description": "Password authenticator configuration.",
            "$ref": "#/components/schemas/PatchPasswordAuthenticatorOptionsRequest"
          },
          "passkey": {
            "description": "Passkey authenticator configuration.",
            "$ref": "#/components/schemas/PatchPasskeyAuthenticatorOptionsRequest"
          },
          "email": {
            "description": "Email authenticator configuration.",
            "$ref": "#/components/schemas/PatchEmailAuthenticatorOptionsRequest"
          },
          "phone": {
            "description": "Phone authenticator configuration.",
            "$ref": "#/components/schemas/PatchPhoneAuthenticatorOptionsRequest"
          }
        },
        "description": "Patch Authenticator Options Request: Used to partially update the authentication provider configuration.",
        "x-model-type": "patch_optional"
      },
      "PatchClaimResourceRequest": {
        "type": "object",
        "properties": {
          "display_name": {
            "maxLength": 50,
            "type": [
              "null",
              "string"
            ],
            "description": "Human-readable display name for the resource.",
            "example": "Designation"
          },
          "description": {
            "maxLength": 200,
            "type": [
              "null",
              "string"
            ],
            "description": "Description that explains the purpose of the resource.",
            "example": "Current position in the employed organization"
          },
          "show_in_discovery_document": {
            "type": "boolean",
            "description": "Indicates whether this resource is advertised via the discovery document.",
            "example": true
          },
          "source": {
            "maxLength": 100,
            "minLength": 1,
            "pattern": "^(claims|groups|public_data|private_data)([a-zA-Z0-9[\\]._]*(?<!\\.))$",
            "type": "string",
            "description": "Specifies the expression or attribute path used to derive the claim value from the user profile or identity context.",
            "example": "claims.first_name"
          }
        },
        "description": "Patch Claim Request: Used to update one or more properties of an existing claim.",
        "x-model-type": "patch_optional"
      },
      "PatchCommunicationEmailOptionsRequest": {
        "type": "object",
        "properties": {
          "provider": {
            "description": "The email provider used for sending messages.",
            "examples": [
              "monocloud"
            ],
            "$ref": "#/components/schemas/EmailProviders"
          },
          "send_grid": {
            "oneOf": [
              {
                "type": "null"
              },
              {
                "description": "Configuration options for SendGrid email delivery.",
                "$ref": "#/components/schemas/PatchCommunicationEmailSendGridOptionsRequest"
              }
            ],
            "description": "Configuration options for SendGrid email delivery."
          }
        },
        "description": "Patch Communication Email Options Request: Used to update the email delivery configuration.",
        "x-model-type": "patch_optional"
      },
      "PatchCommunicationEmailSendGridOptionsRequest": {
        "type": "object",
        "properties": {
          "api_key": {
            "maxLength": 100,
            "minLength": 1,
            "type": "string",
            "description": "SendGrid API key used to authenticate requests to the SendGrid service.",
            "example": "KJFdlswierur458dfhkJHFwkoepOURFuasd"
          },
          "from_email": {
            "maxLength": 320,
            "minLength": 1,
            "type": "string",
            "description": "The email address used as the sender for outgoing emails.",
            "format": "email",
            "example": "support@acme.com"
          },
          "from_name": {
            "maxLength": 300,
            "type": [
              "null",
              "string"
            ],
            "description": "The display name used as the sender for outgoing emails.",
            "example": "Acme Support"
          }
        },
        "description": "Patch Communication Email SendGrid Options Request: Used to update SendGrid-specific email delivery configuration.",
        "x-model-type": "patch_optional"
      },
      "PatchCommunicationOptionsRequest": {
        "type": "object",
        "properties": {
          "email": {
            "description": "Configuration options for email delivery.",
            "$ref": "#/components/schemas/PatchCommunicationEmailOptionsRequest"
          },
          "sms": {
            "description": "Configuration options for SMS delivery.",
            "$ref": "#/components/schemas/PatchCommunicationSmsOptionsRequest"
          }
        },
        "description": "Patch Communication Options Request: Used to update email and SMS delivery configuration.",
        "x-model-type": "patch_optional"
      },
      "PatchCommunicationSmsOptionsRequest": {
        "type": "object",
        "properties": {
          "provider": {
            "description": "The SMS provider used for sending messages.",
            "examples": [
              "monocloud"
            ],
            "$ref": "#/components/schemas/SmsProviders"
          },
          "twilio": {
            "oneOf": [
              {
                "type": "null"
              },
              {
                "description": "Configuration options for Twilio SMS delivery.",
                "$ref": "#/components/schemas/PatchCommunicationSmsTwilioOptionsRequest"
              }
            ],
            "description": "Configuration options for Twilio SMS delivery."
          }
        },
        "description": "Patch Communication SMS Options Request: Used to update the SMS delivery configuration.",
        "x-model-type": "patch_optional"
      },
      "PatchCommunicationSmsTwilioOptionsRequest": {
        "type": "object",
        "properties": {
          "sid": {
            "maxLength": 100,
            "minLength": 1,
            "type": "string",
            "description": "The Twilio Account SID.",
            "example": "lakshGHIur984573"
          },
          "auth_token": {
            "maxLength": 100,
            "minLength": 1,
            "type": "string",
            "description": "The Twilio Auth Token associated with the account.",
            "example": "867dsfujgFTe6724356tgfds"
          },
          "messaging_sid": {
            "maxLength": 100,
            "type": [
              "null",
              "string"
            ],
            "description": "The Twilio Messaging Service SID used to send SMS messages.",
            "example": "867dsfujgFTe6724356tgfds"
          },
          "from": {
            "maxLength": 50,
            "type": [
              "null",
              "string"
            ],
            "description": "The sender phone number or alphanumeric sender ID used for SMS messages.",
            "example": "ACME"
          }
        },
        "description": "Patch Communication SMS Twilio Options Request: Used to update Twilio-specific SMS delivery configuration.",
        "x-model-type": "patch_optional"
      },
      "PatchCustomEmailBrandingOptionsRequest": {
        "type": "object",
        "properties": {
          "send_notifications": {
            "type": "boolean",
            "description": "Specifies whether the email notification is sent using MonoCloud-managed delivery.",
            "example": false
          },
          "subject": {
            "maxLength": 200,
            "type": [
              "null",
              "string"
            ],
            "description": "Specifies the email subject line, which may include Liquid placeholders; when empty, the default subject template is used.",
            "example": "Welcome to {{ client.name }}"
          }
        },
        "description": "Patch Custom Email Branding Options Request: Used to update the content and delivery behavior of a custom email.",
        "x-model-type": "patch_optional"
      },
      "PatchCustomSmsBrandingOptionsRequest": {
        "type": "object",
        "properties": {
          "template": {
            "maxLength": 300,
            "type": [
              "null",
              "string"
            ],
            "description": "Custom Liquid template used to render the SMS message content with runtime variables; when empty, the default template is used.\n>[!note]\n> Pro plan is required to use Custom Sms Templates",
            "example": "Your code for {{ client.name }} is {{ code }}"
          }
        },
        "description": "Patch Custom SMS Branding Options Request: Used to update a custom SMS template.",
        "x-model-type": "patch_optional"
      },
      "PatchEmailAuthenticatorOptionsRequest": {
        "type": "object",
        "properties": {
          "enable_sign_in": {
            "type": "boolean",
            "description": "Specifies whether users can sign in using email-based authentication.",
            "example": true
          },
          "enable_sign_up": {
            "type": "boolean",
            "description": "Specifies whether new users can sign up using email-based authentication.",
            "example": true
          },
          "enable_jit_provisioning": {
            "type": "boolean",
            "description": "Specifies whether users can be automatically provisioned on first successful email authentication (Just-In-Time provisioning).",
            "example": true
          },
          "verification_type": {
            "description": "Specifies the verification mechanism used for email authentication (link, code, or both).",
            "examples": [
              "link"
            ],
            "$ref": "#/components/schemas/VerificationTypes"
          },
          "allow_cross_browser": {
            "type": "boolean",
            "description": "Specifies whether the authentication flow can be resumed in a different browser or device than where it was initiated.",
            "example": true
          },
          "expiry": {
            "maximum": 900,
            "minimum": 60,
            "type": "integer",
            "description": "Specifies the validity period of the email verification link or code (in seconds).\n>[!note]\n> Pro plan required to customize the expiry.",
            "format": "int32",
            "example": 30
          },
          "code_length": {
            "maximum": 16,
            "minimum": 4,
            "type": "integer",
            "description": "Specifies the number of digits in the email verification code.\n>[!note]\n> Only applicable when the verification type includes code-based verification. Pro plan required to customize the code length.",
            "format": "int32",
            "example": 6
          }
        },
        "description": "Patch Email Authenticator Options Request: Used to partially update email-based authentication configuration.",
        "x-model-type": "patch_optional"
      },
      "PatchEmailBrandingOptionsRequest": {
        "type": "object",
        "properties": {
          "welcome": {
            "description": "Configuration for welcome emails, including delivery enablement, subject, and template.",
            "$ref": "#/components/schemas/PatchCustomEmailBrandingOptionsRequest"
          },
          "user_blocked": {
            "description": "Configuration for user blocked notification emails, including delivery enablement, subject, and template.",
            "$ref": "#/components/schemas/PatchCustomEmailBrandingOptionsRequest"
          },
          "sign_in_code": {
            "description": "Configuration for sign-in code emails, including delivery enablement, subject, and template.",
            "$ref": "#/components/schemas/PatchCustomEmailBrandingOptionsRequest"
          },
          "sign_in_link": {
            "description": "Configuration for sign-in link emails, including delivery enablement, subject, and template.",
            "$ref": "#/components/schemas/PatchCustomEmailBrandingOptionsRequest"
          },
          "sign_in_code_and_link": {
            "description": "Configuration for sign-in code and link emails, including delivery enablement, subject, and template.",
            "$ref": "#/components/schemas/PatchCustomEmailBrandingOptionsRequest"
          },
          "verification_code": {
            "description": "Configuration for verification code emails, including delivery enablement, subject, and template.",
            "$ref": "#/components/schemas/PatchCustomEmailBrandingOptionsRequest"
          },
          "verification_link": {
            "description": "Configuration for verification link emails, including delivery enablement, subject, and template.",
            "$ref": "#/components/schemas/PatchCustomEmailBrandingOptionsRequest"
          },
          "verification_code_and_link": {
            "description": "Configuration for verification code and link emails, including delivery enablement, subject, and template.",
            "$ref": "#/components/schemas/PatchCustomEmailBrandingOptionsRequest"
          },
          "password_reset_code": {
            "description": "Configuration for password reset code emails, including delivery enablement, subject, and template.",
            "$ref": "#/components/schemas/PatchCustomEmailBrandingOptionsRequest"
          },
          "password_reset_link": {
            "description": "Configuration for password reset link emails, including delivery enablement, subject, and template.",
            "$ref": "#/components/schemas/PatchCustomEmailBrandingOptionsRequest"
          },
          "password_reset_code_and_link": {
            "description": "Configuration for password reset code and link emails, including delivery enablement, subject, and template.",
            "$ref": "#/components/schemas/PatchCustomEmailBrandingOptionsRequest"
          },
          "password_updated": {
            "description": "Configuration for password updated notification emails, including delivery enablement, subject, and template.",
            "$ref": "#/components/schemas/PatchCustomEmailBrandingOptionsRequest"
          }
        },
        "description": "Patch Email Branding Options Request: Used to update email branding configuration for system-generated emails.",
        "x-model-type": "patch_optional"
      },
      "PatchEmailIdentifierOptionsRequest": {
        "type": "object",
        "properties": {
          "enable_sign_in": {
            "type": "boolean",
            "description": "Specifies whether users can sign in using an email address.",
            "example": true
          },
          "show_at_sign_up": {
            "type": "boolean",
            "description": "Specifies whether an email address can be collected during sign-up.",
            "example": true
          },
          "required_at_sign_up": {
            "type": "boolean",
            "description": "Specifies whether an email address is required during sign-up.",
            "example": true
          },
          "verification": {
            "description": "Email verification configuration applied during sign-up.",
            "$ref": "#/components/schemas/PatchEmailIdentifierVerificationOptionsRequest"
          }
        },
        "description": "Patch Email Identifier Options Request: Used to update email sign-in, sign-up, and verification settings.",
        "x-model-type": "patch_optional"
      },
      "PatchEmailIdentifierVerificationOptionsRequest": {
        "type": "object",
        "properties": {
          "verify_at_sign_up": {
            "type": "boolean",
            "description": "Specifies whether the user's email address must be verified during sign-up.",
            "example": true
          },
          "verification_type": {
            "description": "Specifies the verification mechanism used for email verification (link, code, or both).",
            "examples": [
              "link"
            ],
            "$ref": "#/components/schemas/VerificationTypes"
          },
          "allow_cross_browser": {
            "type": "boolean",
            "description": "Specifies whether the email verification flow can be resumed in a different browser or device than where it was initiated.",
            "example": true
          },
          "expiry": {
            "maximum": 900,
            "minimum": 60,
            "type": "integer",
            "description": "Specifies the validity period of the email verification link or code (in seconds).\n>[!note]\n> Pro plan required to customize the expiry.",
            "format": "int32",
            "example": 300
          },
          "code_length": {
            "maximum": 16,
            "minimum": 4,
            "type": "integer",
            "description": "Specifies the number of digits in the email verification code.\n>[!note]\n> Only applicable when the verification type includes code-based verification. Pro plan required to customize the code length.",
            "format": "int32",
            "example": 6
          }
        },
        "description": "Patch Email Identifier Verification Options Request: Used to update email address verification settings.",
        "x-model-type": "patch_optional"
      },
      "PatchExternalProviderConnectionRequest": {
        "type": "object",
        "properties": {
          "discovery_url": {
            "type": "string",
            "description": "The discovery (metadata) endpoint of the external provider. The provider endpoints are derived from the discovery document.",
            "example": "https://sso.acme.com/.well-known/openid-configuration"
          },
          "pkce_mode": {
            "description": "The PKCE mode used with the external provider.",
            "examples": [
              "auto"
            ],
            "$ref": "#/components/schemas/OidcPkceMode"
          }
        },
        "description": "Patch External Provider Connection Request: Used to update connection settings used by an external authenticator.",
        "x-model-type": "patch_optional"
      },
      "PatchExternalProviderCredentialsRequest": {
        "type": "object",
        "properties": {
          "client_id": {
            "type": "string",
            "description": "The client identifier issued by the external identity provider.",
            "example": "Lkidgf845hKHrfwehf_jgf"
          },
          "client_secret": {
            "type": "string",
            "description": "The client secret issued by the external identity provider.",
            "example": "JJfgi4597fs9hkmkdfrk_jfhh4uuNBFl"
          },
          "apple_team_id": {
            "type": [
              "null",
              "string"
            ],
            "description": "The Apple Developer Team ID used to sign the client secret. Applies only to the Sign in with Apple provider.",
            "example": "kjGD8745hasd"
          },
          "apple_key_id": {
            "type": [
              "null",
              "string"
            ],
            "description": "The Apple Key ID used to sign the client secret. Applies only to the Sign in with Apple provider.",
            "example": "styfderhrwe456"
          }
        },
        "description": "Patch External Provider Credentials Request: Used to update client credentials used by an external authenticator.",
        "x-model-type": "patch_optional"
      },
      "PatchExternalProviderRequest": {
        "type": "object",
        "properties": {
          "display_name": {
            "maxLength": 20,
            "type": [
              "null",
              "string"
            ],
            "description": "A custom display name for the provider's sign-in button.",
            "example": "Sign in with Acme"
          },
          "icon": {
            "maxLength": 400,
            "type": [
              "null",
              "string"
            ],
            "description": "A custom icon URL for the provider's sign-in button.",
            "format": "uri",
            "example": "https://cdn.example.com/icons/acme.svg"
          },
          "enable_sign_in": {
            "type": "boolean",
            "description": "Specifies whether users can sign in using this external identity provider.",
            "example": true
          },
          "enable_sign_up": {
            "type": "boolean",
            "description": "Specifies whether new users can sign up using this external identity provider.",
            "example": true
          },
          "show_on_login_page": {
            "type": "boolean",
            "description": "Specifies whether the provider's sign-in button is shown on the login page.",
            "example": true
          },
          "credentials": {
            "oneOf": [
              {
                "type": "null"
              },
              {
                "description": "The client credentials issued by the external identity provider. When not set, MonoCloud-managed credentials are used.",
                "$ref": "#/components/schemas/PatchExternalProviderCredentialsRequest"
              }
            ],
            "description": "The client credentials issued by the external identity provider. When not set, MonoCloud-managed credentials are used."
          },
          "connection": {
            "oneOf": [
              {
                "type": "null"
              },
              {
                "description": "The protocol connection settings used to communicate with the external identity provider.",
                "$ref": "#/components/schemas/PatchExternalProviderConnectionRequest"
              }
            ],
            "description": "The protocol connection settings used to communicate with the external identity provider."
          },
          "scopes": {
            "maxItems": 100,
            "uniqueItems": true,
            "type": "array",
            "items": {
              "maxLength": 100,
              "minLength": 1,
              "pattern": "^[a-z0-9]+([a-z0-9-.:_/]+[a-z0-9])?$",
              "type": "string"
            },
            "description": "The set of scopes requested from the external identity provider during authentication.",
            "example": [
              "profile",
              "email",
              "phone"
            ]
          },
          "claim_mappings": {
            "type": "object",
            "additionalProperties": {
              "type": "string"
            },
            "description": "A map of claim names to upstream source claim names used to map the upstream profile onto the MonoCloud user.",
            "example": {
              "email": "mail",
              "name": "displayName"
            }
          },
          "authorization_parameters": {
            "type": "object",
            "additionalProperties": {
              "type": "string"
            },
            "description": "A map of parameter names to the values sent to the external provider's authorization endpoint.\nA value prefixed with `$` forwards the incoming authorization request query parameter with that name; any other value is sent as-is.",
            "example": {
              "login_hint": "$login_hint",
              "prompt": "consent"
            }
          },
          "home_realm_domains": {
            "maxItems": 25,
            "uniqueItems": true,
            "type": "array",
            "items": {
              "type": "string"
            },
            "description": "The email domains routed to this provider through home realm discovery.",
            "example": [
              "example.com",
              "acme.io"
            ]
          },
          "trust_email": {
            "description": "Determines whether the email received from the external provider is treated as verified.",
            "examples": [
              "as_provided"
            ],
            "$ref": "#/components/schemas/TrustIdentifierModes"
          },
          "trust_phone": {
            "description": "Determines whether the phone number received from the external provider is treated as verified.",
            "examples": [
              "as_provided"
            ],
            "$ref": "#/components/schemas/TrustIdentifierModes"
          },
          "sync_user_profile_always": {
            "type": "boolean",
            "description": "Specifies whether the user profile should be synchronized from the external provider on each successful sign-in.",
            "example": true
          },
          "sync_idp_claims_always": {
            "type": "boolean",
            "description": "Specifies whether the IdP claims should be synchronized from the external provider on each successful sign-in.",
            "example": true
          },
          "priority": {
            "type": "integer",
            "description": "The priority of the external provider. Used to order the provider relative to others.",
            "format": "int32",
            "example": 0
          }
        },
        "description": "Patch External Provider Request: Used to update an external authenticator's configuration.",
        "x-model-type": "patch_optional"
      },
      "PatchGroupRequest": {
        "type": "object",
        "properties": {
          "name": {
            "minLength": 1,
            "type": "string",
            "description": "The display name of the group.",
            "example": "Administrators"
          },
          "description": {
            "type": [
              "null",
              "string"
            ],
            "description": "Description that explains the purpose or role of the group.",
            "example": "The administrator group"
          },
          "is_auto_assigned": {
            "type": "boolean",
            "description": "Indicates whether users are automatically added to this group upon sign-up.",
            "example": false
          }
        },
        "description": "Patch Group Request: Used to update one or more properties of an existing group.",
        "x-model-type": "patch_optional"
      },
      "PatchIdentifierOptionsRequest": {
        "type": "object",
        "properties": {
          "email": {
            "description": "Email Identifier Options",
            "$ref": "#/components/schemas/PatchEmailIdentifierOptionsRequest"
          },
          "phone": {
            "description": "Phone Identifier Options",
            "$ref": "#/components/schemas/PatchPhoneIdentifierOptionsRequest"
          },
          "username": {
            "description": "Username Identifier Options",
            "$ref": "#/components/schemas/PatchUsernameIdentifierOptionsRequest"
          }
        },
        "description": "Patch Identifier Options Request: Used to update email, phone, and username identifier configuration.",
        "x-model-type": "patch_optional"
      },
      "PatchIpNetworkZoneRequest": {
        "type": "object",
        "properties": {
          "enabled": {
            "type": "boolean",
            "description": "Indicates whether the zone is enabled.",
            "example": true
          },
          "name": {
            "maxLength": 50,
            "minLength": 1,
            "type": "string",
            "description": "Human-readable name for the zone.",
            "example": "Designation"
          },
          "description": {
            "maxLength": 200,
            "type": [
              "null",
              "string"
            ],
            "description": "Description that explains the zone.",
            "example": "Location of the Company Headquarters"
          },
          "category": {
            "description": "The category the zone belongs to.",
            "examples": [
              "trusted"
            ],
            "$ref": "#/components/schemas/NetworkZoneCategory"
          },
          "operator": {
            "description": "The evaluation operator for the network zone.",
            "examples": [
              "not_in"
            ],
            "$ref": "#/components/schemas/NetworkZoneOperator"
          },
          "ip_ranges": {
            "maxItems": 100,
            "minItems": 1,
            "uniqueItems": true,
            "type": "array",
            "items": {
              "minLength": 1,
              "type": "string"
            },
            "description": "List of IPv4/IPv6 addresses or CIDR ranges.",
            "example": [
              "156.3.59.5",
              "2001:db8::/32"
            ]
          }
        },
        "description": "Patch IP Network Zone Request: Used to partially update an IP network zone.",
        "x-model-type": "patch_optional"
      },
      "PatchLogoutOptionsRequest": {
        "type": "object",
        "properties": {
          "automatic_redirect_after_logout": {
            "type": "boolean",
            "description": "Specifies whether the user is automatically redirected to the client’s configured post-logout redirect URL after signing out.",
            "example": true
          },
          "show_logout_prompt": {
            "type": "boolean",
            "description": "Specifies whether the user is prompted for confirmation before signing out.",
            "example": true
          }
        },
        "description": "Patch Logout Options Request: Used to update logout behavior configuration.",
        "x-model-type": "patch_optional"
      },
      "PatchPageBrandingOptionsRequest": {
        "type": "object",
        "properties": {
          "show_watermark": {
            "type": "boolean",
            "description": "Specifies whether the MonoCloud watermark is displayed on hosted login pages.",
            "example": true
          },
          "primary_color": {
            "pattern": "^#([0-9A-Fa-f]{3}|[0-9A-Fa-f]{4}|[0-9A-Fa-f]{6}|[0-9A-Fa-f]{8})$",
            "type": "string",
            "description": "Defines the primary brand color used across hosted login pages (HEX format).",
            "example": "#0D45FE"
          },
          "background_color": {
            "pattern": "^#([0-9A-Fa-f]{3}|[0-9A-Fa-f]{4}|[0-9A-Fa-f]{6}|[0-9A-Fa-f]{8})$",
            "type": "string",
            "description": "Defines the background color of hosted login pages (HEX format).",
            "example": "#F8F8F8"
          }
        },
        "description": "Patch Page Branding Options Request: Used to update the visual appearance and localization of hosted authentication pages.",
        "x-model-type": "patch_optional"
      },
      "PatchPasskeyAuthenticatorOptionsRequest": {
        "type": "object",
        "properties": {
          "enable_sign_in": {
            "type": "boolean",
            "description": "Specifies whether users can sign in using passkeys.",
            "example": false
          },
          "enable_sign_up": {
            "type": "boolean",
            "description": "Specifies whether new users can sign up using passkeys.",
            "example": false
          },
          "prompt_enrollment": {
            "type": "boolean",
            "description": "Specifies whether users should be prompted to enroll a passkey if none exists.",
            "example": true
          },
          "prompt_device_enrollment": {
            "type": "boolean",
            "description": "Specifies whether users should be prompted to enroll a passkey for the current device if no device-specific passkey exists.",
            "example": true
          },
          "enable_auto_complete": {
            "type": "boolean",
            "description": "Specifies whether passkeys can be auto-filled using the identifier field on the sign-in page.",
            "example": true
          },
          "show_passkey_button": {
            "type": "boolean",
            "description": "Specifies whether the “Continue with Passkey” button is shown on the sign-in page.",
            "example": true
          }
        },
        "description": "Patch Passkey Authenticator Options Request: Used to partially update passkey-based authentication configuration.",
        "x-model-type": "patch_optional"
      },
      "PatchPasswordAuthenticatorOptionsRequest": {
        "type": "object",
        "properties": {
          "enable_sign_in": {
            "type": "boolean",
            "description": "Specifies whether users can sign in using password-based authentication.",
            "example": true
          },
          "enable_sign_up": {
            "type": "boolean",
            "description": "Specifies whether new users can sign up using password-based authentication.",
            "example": true
          },
          "prompt_password_on_initial_screen": {
            "type": "boolean",
            "description": "Specifies whether the password is collected on the initial sign-in screen alongside the identifier.",
            "example": false
          },
          "expiry": {
            "maximum": 2147483647,
            "minimum": 30,
            "type": [
              "null",
              "integer"
            ],
            "description": "Specifies the password expiration interval (in days). When empty, passwords do not expire.",
            "format": "int32",
            "example": 30
          },
          "strength": {
            "description": "Password strength policy configuration.\n>[!note]\n> Pro plan required to customize password strength options.",
            "$ref": "#/components/schemas/PatchPasswordStrengthOptionsRequest"
          },
          "reuse": {
            "description": "Password reuse policy configuration.\n>[!note]\n> Pro plan required to customize password history options.",
            "$ref": "#/components/schemas/PatchPasswordReuseOptionsRequest"
          }
        },
        "description": "Patch Password Authenticator Options Request: Used to partially update password-based authentication configuration.",
        "x-model-type": "patch_optional"
      },
      "PatchPasswordReuseOptionsRequest": {
        "type": "object",
        "properties": {
          "restriction_mode": {
            "description": "Specifies the password reuse control policy, defining whether reuse is limited by time, count, both, or unrestricted.",
            "examples": [
              "off"
            ],
            "$ref": "#/components/schemas/PasswordRestrictionModes"
          },
          "restriction_period": {
            "maximum": 2628000,
            "minimum": 1440,
            "type": "integer",
            "description": "Specifies the time period during which previously used passwords are blocked from reuse (in minutes).",
            "format": "int32",
            "example": 43200
          },
          "restriction_count": {
            "maximum": 100,
            "minimum": 0,
            "type": "integer",
            "description": "Defines the number of historical passwords that are disallowed for reuse under count-based enforcement.",
            "format": "int32",
            "example": 5
          }
        },
        "description": "Patch Password Reuse Options Request: Used to partially update password reuse enforcement settings.",
        "x-model-type": "patch_optional"
      },
      "PatchPasswordStrengthOptionsRequest": {
        "type": "object",
        "properties": {
          "minimum_length": {
            "maximum": 128,
            "minimum": 8,
            "type": "integer",
            "description": "Specifies the minimum number of characters required for a password.",
            "format": "int32",
            "example": 16
          },
          "require_non_alphanumeric_character": {
            "type": "boolean",
            "description": "Specifies whether at least one non-alphanumeric character is required in the password.",
            "example": true
          },
          "require_digit": {
            "type": "boolean",
            "description": "Specifies whether at least one numeric digit is required in the password.",
            "example": true
          },
          "require_lowercase_character": {
            "type": "boolean",
            "description": "Specifies whether at least one lowercase letter is required in the password.",
            "example": true
          },
          "require_uppercase_character": {
            "type": "boolean",
            "description": "Specifies whether at least one uppercase letter is required in the password.",
            "example": true
          },
          "required_unique_characters_count": {
            "minimum": 1,
            "type": "integer",
            "description": "Specifies the minimum number of unique characters required in the password.",
            "format": "int32",
            "example": 4
          }
        },
        "description": "Patch Password Strength Options Request: Used to partially update password complexity and strength requirements.",
        "x-model-type": "patch_optional"
      },
      "PatchPhoneAuthenticatorOptionsRequest": {
        "type": "object",
        "properties": {
          "enable_sign_in": {
            "type": "boolean",
            "description": "Specifies whether users can sign in using phone-based authentication.",
            "example": true
          },
          "enable_sign_up": {
            "type": "boolean",
            "description": "Specifies whether new users can sign up using phone-based authentication.",
            "example": true
          },
          "enable_jit_provisioning": {
            "type": "boolean",
            "description": "Specifies whether users can be automatically provisioned on first successful phone authentication (Just-In-Time provisioning).",
            "example": true
          },
          "expiry": {
            "maximum": 900,
            "minimum": 60,
            "type": "integer",
            "description": "Specifies the validity period of the phone verification code (in seconds).\n>[!note]\n> Pro plan required to customize the expiry.",
            "format": "int32",
            "example": 30
          },
          "code_length": {
            "maximum": 16,
            "minimum": 4,
            "type": "integer",
            "description": "Specifies the number of digits in the phone verification code.\n>[!note]\n> Pro plan required to customize the code length.",
            "format": "int32",
            "example": 6
          }
        },
        "description": "Patch Phone Authenticator Options Request: Used to partially update phone-based authentication configuration.",
        "x-model-type": "patch_optional"
      },
      "PatchPhoneIdentifierOptionsRequest": {
        "type": "object",
        "properties": {
          "enable_sign_in": {
            "type": "boolean",
            "description": "Specifies whether users can sign in using a phone number.",
            "example": true
          },
          "show_at_sign_up": {
            "type": "boolean",
            "description": "Specifies whether a phone number can be collected during sign-up.",
            "example": true
          },
          "required_at_sign_up": {
            "type": "boolean",
            "description": "Specifies whether a phone number is required during sign-up.",
            "example": true
          },
          "verification": {
            "description": "Phone verification configuration applied during sign-up.",
            "$ref": "#/components/schemas/PatchPhoneIdentifierVerificationOptionsRequest"
          }
        },
        "description": "Patch Phone Identifier Options Request: Used to update phone sign-in, sign-up, and verification settings.",
        "x-model-type": "patch_optional"
      },
      "PatchPhoneIdentifierVerificationOptionsRequest": {
        "type": "object",
        "properties": {
          "verify_at_sign_up": {
            "type": "boolean",
            "description": "Specifies whether the user's phone number must be verified during sign-up.",
            "example": true
          },
          "expiry": {
            "maximum": 900,
            "minimum": 60,
            "type": "integer",
            "description": "Specifies the validity period of the phone verification code (in seconds).\n>[!note]\n> Pro plan required to customize the expiry.",
            "format": "int32",
            "example": 300
          },
          "code_length": {
            "maximum": 16,
            "minimum": 4,
            "type": "integer",
            "description": "Specifies the number of digits in the phone verification code.\n>[!note]\n> Pro plan required to customize the code length.",
            "format": "int32",
            "example": 6
          }
        },
        "description": "Patch Phone Identifier Verification Options Request: Used to update phone number verification settings.",
        "x-model-type": "patch_optional"
      },
      "PatchPkiTrustStoreOptionsRequest": {
        "type": "object",
        "properties": {
          "validate_certificate_use": {
            "type": "boolean",
            "description": "Indicates whether the client certificate is validated for client authentication, including Client Authentication EKU checks across the certificate chain.",
            "example": true
          },
          "validate_validity_period": {
            "type": "boolean",
            "description": "Indicates whether the certificate validity period (`NotBefore` / `NotAfter`) is enforced.",
            "example": true
          },
          "revocation_mode": {
            "description": "Specifies how certificate revocation status is evaluated.",
            "examples": [
              "offline"
            ],
            "$ref": "#/components/schemas/X509RevocationMode"
          },
          "revocation_check_depth": {
            "description": "Specifies how revocation checks are applied across the certificate chain.",
            "examples": [
              "end_certificate_only"
            ],
            "$ref": "#/components/schemas/RevocationCheckDepth"
          },
          "revocation_check_clock_skew": {
            "maximum": 3600,
            "minimum": 0,
            "type": "integer",
            "description": "Specifies the allowed clock skew used when validating CRL issuance times and OCSP responses (in seconds).",
            "format": "int32",
            "example": 300
          },
          "ocsp_check_timeout": {
            "maximum": 30,
            "minimum": 3,
            "type": "integer",
            "description": "Specifies the timeout for OCSP responder calls when online revocation checking is enabled (in seconds).",
            "format": "int32",
            "example": 10
          },
          "online_crl_check_timeout": {
            "maximum": 30,
            "minimum": 3,
            "type": "integer",
            "description": "Specifies the timeout for downloading CRLs from certificate distribution points (CDPs) when online revocation checking is enabled (in seconds).",
            "format": "int32",
            "example": 10
          },
          "certificate_auth_cache_duration": {
            "maximum": 3600,
            "minimum": 0,
            "type": "integer",
            "description": "Specifies how long certificate authentication results are cached (in seconds).",
            "format": "int32",
            "example": 300
          },
          "ocsp_cache_duration": {
            "maximum": 86400,
            "minimum": 0,
            "type": "integer",
            "description": "Specifies how long OCSP responses are cached when online OCSP checking is enabled (in seconds).",
            "format": "int32",
            "example": 1800
          },
          "online_crl_cache_duration": {
            "maximum": 86400,
            "minimum": 0,
            "type": "integer",
            "description": "Specifies how long downloaded CRLs are cached when online CRL checking is enabled (in seconds).",
            "format": "int32",
            "example": 1800
          }
        },
        "description": "Patch Trust Store Options Request: Used to update one or more configuration properties of an existing trust store.",
        "x-model-type": "patch_optional"
      },
      "PatchPkiTrustStoreRequest": {
        "type": "object",
        "properties": {
          "name": {
            "maxLength": 50,
            "minLength": 1,
            "type": "string",
            "description": "Human-readable name for the trust store.",
            "example": "IoT Devices"
          },
          "enabled": {
            "type": "boolean",
            "description": "Indicates whether the trust store is enabled.",
            "example": true
          },
          "show_in_discovery_document": {
            "type": "boolean",
            "description": "Specifies whether this trust store’s mTLS endpoint aliases are published under `mtls_additional_endpoint_aliases` in the OpenID Connect discovery document.",
            "example": true
          },
          "cert_chain": {
            "maxLength": 30000,
            "minLength": 1,
            "type": "string",
            "description": "PEM-encoded certificate chain (concatenated), used as the trust anchor and intermediates for mTLS validation.",
            "example": "-----BEGIN CERTIFICATE-----certificate_value_1-----END CERTIFICATE-----\\n-----BEGIN CERTIFICATE-----certificate_value_2-----END CERTIFICATE-----"
          },
          "options": {
            "description": "Trust store validation settings (certificate type, revocation, caching, and related policies).",
            "$ref": "#/components/schemas/PatchPkiTrustStoreOptionsRequest"
          }
        },
        "description": "Patch PKI Trust Store Request: Used to update one or more properties of an existing PKI trust store.",
        "x-model-type": "patch_optional"
      },
      "PatchPushedAuthorizationOptionsRequest": {
        "type": "object",
        "properties": {
          "enable_pushed_authorization_requests": {
            "type": "boolean",
            "description": "Specifies whether Pushed Authorization Requests (PAR) are enabled for the tenant.\n>[!note]\n> Secure+ subscription required to use Pushed Authorization Requests (PAR).",
            "example": false
          },
          "require_pushed_authorization_requests": {
            "type": "boolean",
            "description": "Specifies whether Pushed Authorization Requests (PAR) are required tenant-wide for all authorization requests.\n>[!note]\n> When enabled, this setting overrides any client-specific PAR configuration and enforces PAR usage for all clients within the tenant.\r\nSecure+ subscription required to use Pushed Authorization Requests (PAR).",
            "example": false
          }
        },
        "description": "Patch Pushed Authorization Options Request: Used to update tenant-wide Pushed Authorization Request (PAR) configuration.",
        "x-model-type": "patch_optional"
      },
      "PatchRecoveryMethodsEmailOptionsRequest": {
        "type": "object",
        "properties": {
          "enabled": {
            "type": "boolean",
            "description": "Enables account and password recovery using email-based verification.",
            "example": true
          },
          "verification_type": {
            "description": "Specifies the verification mechanism used for email password recovery (link, code, or both).",
            "examples": [
              "link"
            ],
            "$ref": "#/components/schemas/VerificationTypes"
          },
          "allow_cross_browser": {
            "type": "boolean",
            "description": "Specifies whether the password recovery flow can be resumed in a different browser or device than where it was initiated.",
            "example": false
          },
          "expiry": {
            "maximum": 900,
            "minimum": 60,
            "type": "integer",
            "description": "Specifies the validity period of the email recovery verification link or code (in seconds).\n>[!note]\n> Pro plan required to customize the expiry.",
            "format": "int32",
            "example": 300
          },
          "code_length": {
            "maximum": 16,
            "minimum": 4,
            "type": "integer",
            "description": "Specifies the number of digits in the email recovery verification code.\n>[!note]\n> Only applicable when the verification type includes code-based recovery. Pro plan required to customize the code length.",
            "format": "int32",
            "example": 6
          }
        },
        "description": "Patch Email Recovery Method Options Request: Used to update email-based account and password recovery configuration.",
        "x-model-type": "patch_optional"
      },
      "PatchRecoveryMethodsOptionsRequest": {
        "type": "object",
        "properties": {
          "email": {
            "description": "Recovery Methods Email Options",
            "$ref": "#/components/schemas/PatchRecoveryMethodsEmailOptionsRequest"
          },
          "phone": {
            "description": "Recovery Methods Phone Options",
            "$ref": "#/components/schemas/PatchRecoveryMethodsPhoneOptionsRequest"
          }
        },
        "description": "Patch Recovery Methods Options Request: Used to update account and password recovery configuration.",
        "x-model-type": "patch_optional"
      },
      "PatchRecoveryMethodsPhoneOptionsRequest": {
        "type": "object",
        "properties": {
          "enabled": {
            "type": "boolean",
            "description": "Enables account and password recovery using a phone-based verification code.",
            "example": true
          },
          "expiry": {
            "maximum": 900,
            "minimum": 60,
            "type": "integer",
            "description": "Specifies the validity period of the recovery verification code (in seconds).\n>[!note]\n> Pro plan required to customize the expiry.",
            "format": "int32",
            "example": 300
          },
          "code_length": {
            "maximum": 16,
            "minimum": 4,
            "type": "integer",
            "description": "Specifies the number of digits in the recovery verification code.\n>[!note]\n> Pro plan required to customize the code length.",
            "format": "int32",
            "example": 6
          }
        },
        "description": "Patch Phone Recovery Method Options Request: Used to update phone-based account and password recovery configuration.",
        "x-model-type": "patch_optional"
      },
      "PatchRegionalNetworkZoneRequest": {
        "type": "object",
        "properties": {
          "enabled": {
            "type": "boolean",
            "description": "Indicates whether the zone is enabled.",
            "example": true
          },
          "name": {
            "maxLength": 50,
            "minLength": 1,
            "type": "string",
            "description": "Human-readable name for the zone.",
            "example": "Designation"
          },
          "description": {
            "maxLength": 200,
            "type": [
              "null",
              "string"
            ],
            "description": "Description that explains the zone.",
            "example": "Location of the Company Headquarters"
          },
          "category": {
            "description": "The category the zone belongs to.",
            "examples": [
              "trusted"
            ],
            "$ref": "#/components/schemas/NetworkZoneCategory"
          },
          "operator": {
            "description": "The evaluation operator for the network zone.",
            "examples": [
              "not_in"
            ],
            "$ref": "#/components/schemas/NetworkZoneOperator"
          },
          "countries": {
            "maxItems": 100,
            "minItems": 1,
            "uniqueItems": true,
            "type": "array",
            "items": {
              "minLength": 1,
              "type": "string"
            },
            "description": "List of 3166-1 alpha-2 country codes.",
            "example": [
              "US",
              "GB"
            ]
          }
        },
        "description": "Patch Regional Network Zone Request: Used to partially update a regional network zone.",
        "x-model-type": "patch_optional"
      },
      "PatchScopeClaimRequest": {
        "required": [
          "claim"
        ],
        "type": "object",
        "properties": {
          "claim": {
            "maxLength": 100,
            "minLength": 1,
            "pattern": "^[a-z0-9]+([a-z0-9_]+[a-z0-9])?$",
            "type": "string",
            "description": "The name of the user claim granted by this scope.",
            "example": "job_title"
          },
          "include_in_identity_token": {
            "type": "boolean",
            "description": "Indicates whether this claim is included in the issued ID token when the scope is granted.",
            "default": false,
            "example": true
          },
          "include_in_user_info": {
            "type": "boolean",
            "description": "Indicates whether this claim is returned by the `UserInfo` endpoint when the scope is granted.",
            "default": false,
            "example": true
          }
        },
        "description": "Patch Scope Claim Request: Used to update a user claim that can be included in ID tokens and the `UserInfo` endpoint when the scope is granted.",
        "x-model-type": "patch"
      },
      "PatchScopeRequest": {
        "type": "object",
        "properties": {
          "display_name": {
            "maxLength": 50,
            "type": [
              "null",
              "string"
            ],
            "description": "Human-readable display name for the resource.",
            "example": "Designation"
          },
          "description": {
            "maxLength": 200,
            "type": [
              "null",
              "string"
            ],
            "description": "Description that explains the purpose of the resource.",
            "example": "Current position in the employed organization"
          },
          "show_in_discovery_document": {
            "type": "boolean",
            "description": "Indicates whether this resource is advertised via the discovery document.",
            "example": true
          },
          "required": {
            "type": "boolean",
            "description": "Specifies whether the scope is mandatory and cannot be de-selected by the user on the consent screen.",
            "example": false
          },
          "emphasize": {
            "type": "boolean",
            "description": "Indicates whether this scope is visually emphasized on the consent screen, typically for sensitive or high-impact permissions.",
            "example": false
          },
          "user_claims": {
            "maxItems": 100,
            "uniqueItems": true,
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/PatchScopeClaimRequest"
            },
            "description": "List of user claim types that will be embedded into identity tokens and/or returned from the `UserInfo` endpoint when this scope is granted."
          }
        },
        "description": "Patch Scope Request: Used to update one or more properties of an existing scope.",
        "x-model-type": "patch_optional"
      },
      "PatchSessionOptionsRequest": {
        "type": "object",
        "properties": {
          "persistence_mode": {
            "description": "Determines whether the user session is persisted across browser restarts, expires on browser close, or is decided by the user.",
            "examples": [
              "user_selected"
            ],
            "$ref": "#/components/schemas/SessionPersistenceModes"
          },
          "expiration_type": {
            "description": "Determines whether the session expiration is extended on activity (sliding) or expires at a fixed time (absolute).",
            "examples": [
              "sliding"
            ],
            "$ref": "#/components/schemas/SessionExpirationTypes"
          },
          "sliding_session_lifetime": {
            "maximum": 525960,
            "minimum": 5,
            "type": "integer",
            "description": "The session lifetime applied when using sliding expiration (in minutes). Each qualifying user interaction renews the session up to the absolute limit.",
            "format": "int32",
            "example": 1440
          },
          "absolute_session_lifetime": {
            "maximum": 525960,
            "minimum": 5,
            "type": "integer",
            "description": "The maximum session lifetime after which the session expires regardless of activity or expiration type (in minutes).",
            "format": "int32",
            "example": 14400
          }
        },
        "description": "Patch Session Options Request: Used to update the user session configuration.",
        "x-model-type": "patch_optional"
      },
      "PatchSignUpCustomFieldRequest": {
        "type": "object",
        "properties": {
          "enabled": {
            "type": "boolean",
            "description": "Specifies whether this custom field is enabled and shown during sign-up.",
            "example": true
          },
          "required": {
            "type": "boolean",
            "description": "Specifies whether this custom field is mandatory during sign-up.",
            "example": false
          },
          "claim_name": {
            "maxLength": 100,
            "minLength": 1,
            "type": "string",
            "description": "The claim name under which the value will be stored.",
            "example": "first_name"
          },
          "value_type": {
            "description": "The data type of the claim value.",
            "examples": [
              "string"
            ],
            "$ref": "#/components/schemas/ValueTypes"
          },
          "label": {
            "maxLength": 100,
            "minLength": 1,
            "type": "string",
            "description": "The user-facing label displayed for this field during sign-up.",
            "example": "First Name"
          }
        },
        "description": "Patch Sign-Up Custom Field Request: Used to update a sign-up custom field configuration.",
        "x-model-type": "patch_optional"
      },
      "PatchSignUpOptionsRequest": {
        "type": "object",
        "properties": {
          "show_terms_and_privacy_policy": {
            "type": "boolean",
            "description": "Show Terms and/or Privacy Policy on the sign-up screen.\n>[!note]\n> Pro plan required to enable Terms and/or Privacy Policy.",
            "example": true
          },
          "require_explicit_user_agreement": {
            "type": "boolean",
            "description": "Require the user to explicitly agree to the Terms and/or Privacy Policy.\n>[!note]\n> Pro plan required to enable Terms and Privacy Policy.",
            "example": true
          },
          "privacy_url": {
            "maxLength": 400,
            "type": [
              "null",
              "string"
            ],
            "description": "The URL of the Privacy Policy shown during sign-up.\n>[!note]\n> Pro plan required to enable Terms and Privacy Policy.",
            "format": "uri",
            "example": "https://acme.com/privacy"
          },
          "terms_url": {
            "maxLength": 400,
            "type": [
              "null",
              "string"
            ],
            "description": "The URL of the Terms of Service shown during sign-up.\n>[!note]\n> Pro plan required to enable Terms and Privacy Policy.",
            "format": "uri",
            "example": "https://acme.com/terms"
          },
          "allowlist": {
            "description": "Allowlist of identifiers permitted during sign-up.",
            "$ref": "#/components/schemas/PatchSignUpRestrictionsOptionsRequest"
          },
          "blocklist": {
            "description": "Blocklist of identifiers disallowed during sign-up.",
            "$ref": "#/components/schemas/PatchSignUpRestrictionsOptionsRequest"
          }
        },
        "description": "Patch Sign-up Options Request: Used to update the sign-up configuration.",
        "x-model-type": "patch_optional"
      },
      "PatchSignUpRestrictionsOptionsRequest": {
        "type": "object",
        "properties": {
          "enabled": {
            "type": "boolean",
            "description": "Indicates whether the identifier restriction list is active.\n>[!note]\n> Pro plan subscription required to use sign-up restrictions.",
            "example": true
          },
          "identifiers": {
            "maxItems": 50,
            "uniqueItems": true,
            "type": "array",
            "items": {
              "minLength": 1,
              "type": "string"
            },
            "description": "A set of identifiers (email addresses, phone numbers, or domains) used for sign-up access control.\n>[!note]\n> Pro plan subscription required to use sign-up restrictions.",
            "example": [
              "organization.com",
              "example@organization.com",
              "+1234567890"
            ]
          }
        },
        "description": "Patch Sign-Up Restrictions Options Request: Used to update identifier-based allowlist or blocklist configuration for the sign-up flow.",
        "x-model-type": "patch_optional"
      },
      "PatchSmsBrandingOptionsRequest": {
        "type": "object",
        "properties": {
          "sign_in": {
            "description": "Configuration for sign-in SMS messages, including delivery enablement and message template.",
            "$ref": "#/components/schemas/PatchCustomSmsBrandingOptionsRequest"
          },
          "verification": {
            "description": "Configuration for verification SMS messages, including delivery enablement and message template.",
            "$ref": "#/components/schemas/PatchCustomSmsBrandingOptionsRequest"
          },
          "password_reset": {
            "description": "Configuration for password reset SMS messages, including delivery enablement and message template.",
            "$ref": "#/components/schemas/PatchCustomSmsBrandingOptionsRequest"
          }
        },
        "description": "Patch SMS Branding Options Request: Used to update SMS templates for system-generated messages.",
        "x-model-type": "patch_optional"
      },
      "PatchSpiffeTrustStoreOptionsRequest": {
        "type": "object",
        "properties": {
          "validate_certificate_use": {
            "type": "boolean",
            "description": "Indicates whether the client certificate is validated for client authentication, including Client Authentication EKU checks across the certificate chain.",
            "example": true
          },
          "validate_validity_period": {
            "type": "boolean",
            "description": "Indicates whether the certificate validity period (`NotBefore` / `NotAfter`) is enforced.",
            "example": true
          },
          "certificate_auth_cache_duration": {
            "maximum": 3600,
            "minimum": 0,
            "type": "integer",
            "description": "Specifies how long certificate authentication results are cached (in seconds).",
            "format": "int32",
            "example": 300
          },
          "bundle_fetch_timeout": {
            "maximum": 30,
            "minimum": 3,
            "type": "integer",
            "description": "Specifies the timeout for downloading the SPIFFE bundle from the bundle endpoint (in seconds).",
            "format": "int32",
            "example": 10
          }
        },
        "description": "Patch SPIFFE Trust Store Options Request: Used to update one or more configuration properties of an existing SPIFFE trust store.",
        "x-model-type": "patch_optional"
      },
      "PatchSpiffeTrustStoreRequest": {
        "type": "object",
        "properties": {
          "enabled": {
            "type": "boolean",
            "description": "Indicates whether the trust store is enabled.",
            "example": true
          },
          "show_in_discovery_document": {
            "type": "boolean",
            "description": "Specifies whether this trust store’s mTLS endpoint aliases are published under `mtls_additional_endpoint_aliases` in the OpenID Connect discovery document.",
            "example": true
          },
          "spiffe_bundle_endpoint": {
            "maxLength": 400,
            "minLength": 1,
            "type": "string",
            "description": "The SPIFFE bundle endpoint URL used to retrieve trust domain signing keys.",
            "format": "uri",
            "example": "https://example.org/bundle.json"
          },
          "options": {
            "description": "Trust store validation settings (certificate type, caching, and related policies).",
            "$ref": "#/components/schemas/PatchSpiffeTrustStoreOptionsRequest"
          }
        },
        "description": "Patch SPIFFE Trust Store Request: Used to update one or more properties of an existing SPIFFE trust store.",
        "x-model-type": "patch_optional"
      },
      "PatchUsernameIdentifierOptionsRequest": {
        "type": "object",
        "properties": {
          "enable_sign_in": {
            "type": "boolean",
            "description": "Specifies whether users can sign in using a username.",
            "example": true
          },
          "show_at_sign_up": {
            "type": "boolean",
            "description": "Specifies whether a username can be collected during sign-up.",
            "example": true
          },
          "required_at_sign_up": {
            "type": "boolean",
            "description": "Specifies whether a username is required during sign-up.",
            "example": true
          },
          "minimum_length": {
            "type": "integer",
            "description": "Specifies the minimum length required for the username.",
            "format": "int32",
            "example": 3
          }
        },
        "description": "Patch Username Identifier Options Request: Used to update username sign-in and sign-up settings.",
        "x-model-type": "patch_optional"
      },
      "PhoneAuthenticatorOptions": {
        "required": [
          "code_length",
          "enable_jit_provisioning",
          "enable_sign_in",
          "enable_sign_up",
          "expiry"
        ],
        "type": "object",
        "properties": {
          "enable_sign_in": {
            "type": "boolean",
            "description": "Specifies whether users can sign in using phone-based authentication.",
            "example": true
          },
          "enable_sign_up": {
            "type": "boolean",
            "description": "Specifies whether new users can sign up using phone-based authentication.",
            "example": true
          },
          "enable_jit_provisioning": {
            "type": "boolean",
            "description": "Specifies whether users can be automatically provisioned on first successful phone authentication (Just-In-Time provisioning).",
            "example": true
          },
          "expiry": {
            "type": "integer",
            "description": "Specifies the validity period of the phone verification code (in seconds).",
            "format": "int32",
            "example": 30
          },
          "code_length": {
            "type": "integer",
            "description": "Specifies the number of digits in the phone verification code.",
            "format": "int32",
            "example": 6
          }
        },
        "description": "Phone Authenticator Options Response: Represents the configuration for phone-based authentication.",
        "x-model-type": "response"
      },
      "PhoneIdentifierOptions": {
        "required": [
          "enable_sign_in",
          "required_at_sign_up",
          "show_at_sign_up",
          "verification"
        ],
        "type": "object",
        "properties": {
          "enable_sign_in": {
            "type": "boolean",
            "description": "Specifies whether users can sign in using a phone number.",
            "example": true
          },
          "show_at_sign_up": {
            "type": "boolean",
            "description": "Specifies whether a phone number can be collected during sign-up.",
            "example": true
          },
          "required_at_sign_up": {
            "type": "boolean",
            "description": "Specifies whether a phone number is required during sign-up.",
            "example": true
          },
          "verification": {
            "description": "Phone verification configuration applied during sign-up.",
            "$ref": "#/components/schemas/PhoneIdentifierVerificationOptions"
          }
        },
        "description": "Phone Identifier Options Response: Represents phone sign-in, sign-up, and verification configuration.",
        "x-model-type": "response"
      },
      "PhoneIdentifierVerificationOptions": {
        "required": [
          "code_length",
          "expiry",
          "verify_at_sign_up"
        ],
        "type": "object",
        "properties": {
          "verify_at_sign_up": {
            "type": "boolean",
            "description": "Specifies whether the user's phone number must be verified during sign-up.",
            "example": true
          },
          "expiry": {
            "type": "integer",
            "description": "Specifies the validity period of the phone verification code (in seconds).",
            "format": "int32",
            "example": 300
          },
          "code_length": {
            "type": "integer",
            "description": "Specifies the number of digits in the phone verification code.",
            "format": "int32",
            "example": 6
          }
        },
        "description": "Phone Identifier Verification Options Response: Represents phone number verification settings applied during sign-up.",
        "x-model-type": "response"
      },
      "PkiTrustStore": {
        "required": [
          "cert_chain",
          "creation_time",
          "enabled",
          "id",
          "is_default",
          "last_updated",
          "name",
          "options",
          "show_in_discovery_document"
        ],
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "description": "The unique identifier of the trust store.",
            "example": "9qVBxPQiZqtUsBOykavK6"
          },
          "name": {
            "type": "string",
            "description": "Human-readable name for the trust store.",
            "example": "IoT Devices"
          },
          "enabled": {
            "type": "boolean",
            "description": "Indicates whether the trust store is enabled.",
            "example": true
          },
          "is_default": {
            "type": "boolean",
            "description": "Indicates whether this trust store is configured as the default store for the mTLS endpoint.",
            "example": true
          },
          "show_in_discovery_document": {
            "type": "boolean",
            "description": "Specifies whether this trust store’s mTLS endpoint aliases are published under `mtls_additional_endpoint_aliases` in the OpenID Connect discovery document.",
            "example": true
          },
          "options": {
            "description": "Trust store validation settings (certificate type, revocation, caching, and related policies).",
            "$ref": "#/components/schemas/PkiTrustStoreOptions"
          },
          "creation_time": {
            "type": "integer",
            "description": "Specifies the creation time of the trust store (in Epoch).",
            "format": "date-time",
            "example": 1640975400
          },
          "last_updated": {
            "type": "integer",
            "description": "Specifies the last update time of the trust store (in Epoch).",
            "format": "date-time",
            "example": 1640975400
          },
          "cert_chain": {
            "type": "string",
            "description": "PEM-encoded certificate chain (concatenated), used as the trust anchor and intermediates for mTLS validation.",
            "example": "-----BEGIN CERTIFICATE-----certificate_value_1-----END CERTIFICATE-----\\n-----BEGIN CERTIFICATE-----certificate_value_2-----END CERTIFICATE-----"
          }
        },
        "description": "PKI Trust Store Response: Represents a trust store configuration used for mTLS authentication.",
        "x-model-type": "response"
      },
      "PkiTrustStoreOptions": {
        "required": [
          "certificate_auth_cache_duration",
          "ocsp_cache_duration",
          "ocsp_check_timeout",
          "online_crl_cache_duration",
          "online_crl_check_timeout",
          "revocation_check_clock_skew",
          "revocation_check_depth",
          "revocation_mode",
          "validate_certificate_use",
          "validate_validity_period"
        ],
        "type": "object",
        "properties": {
          "validate_certificate_use": {
            "type": "boolean",
            "description": "Indicates whether the client certificate is validated for client authentication, including Client Authentication EKU checks across the certificate chain.",
            "example": true
          },
          "validate_validity_period": {
            "type": "boolean",
            "description": "Indicates whether the certificate validity period (`NotBefore` / `NotAfter`) is enforced.",
            "example": true
          },
          "revocation_mode": {
            "description": "Specifies how certificate revocation status is evaluated.",
            "examples": [
              "offline"
            ],
            "$ref": "#/components/schemas/X509RevocationMode"
          },
          "revocation_check_depth": {
            "description": "Specifies how revocation checks are applied across the certificate chain.",
            "examples": [
              "end_certificate_only"
            ],
            "$ref": "#/components/schemas/RevocationCheckDepth"
          },
          "revocation_check_clock_skew": {
            "type": "integer",
            "description": "Specifies the allowed clock skew used when validating CRL issuance times and OCSP responses (in seconds).",
            "format": "int32",
            "example": 300
          },
          "ocsp_check_timeout": {
            "type": "integer",
            "description": "Specifies the timeout for OCSP responder calls when online revocation checking is enabled (in seconds).",
            "format": "int32",
            "example": 10
          },
          "online_crl_check_timeout": {
            "type": "integer",
            "description": "Specifies the timeout for downloading CRLs from certificate distribution points (CDPs) when online revocation checking is enabled (in seconds).",
            "format": "int32",
            "example": 10
          },
          "certificate_auth_cache_duration": {
            "type": "integer",
            "description": "Specifies how long certificate authentication results are cached (in seconds).",
            "format": "int32",
            "example": 300
          },
          "ocsp_cache_duration": {
            "type": "integer",
            "description": "Specifies how long OCSP responses are cached when online OCSP checking is enabled (in seconds).",
            "format": "int32",
            "example": 1800
          },
          "online_crl_cache_duration": {
            "type": "integer",
            "description": "Specifies how long downloaded CRLs are cached when online CRL checking is enabled (in seconds).",
            "format": "int32",
            "example": 1800
          }
        },
        "description": "Trust Store Options Response: Represents the configuration applied for mTLS certificate validation.",
        "x-model-type": "response"
      },
      "PkiTrustStoreSummary": {
        "required": [
          "banned_certificates_count",
          "certificate_count",
          "creation_time",
          "enabled",
          "id",
          "is_default",
          "last_updated",
          "name"
        ],
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "description": "The unique identifier of the trust store.",
            "example": "9qVBxPQiZqtUsBOykavK6"
          },
          "name": {
            "type": "string",
            "description": "Human-readable name for the trust store.",
            "example": "IoT Devices"
          },
          "enabled": {
            "type": "boolean",
            "description": "Indicates whether the trust store is enabled.",
            "example": true
          },
          "is_default": {
            "type": "boolean",
            "description": "Indicates whether this trust store is configured as the default store for the mTLS endpoint.",
            "example": true
          },
          "certificate_count": {
            "type": "integer",
            "description": "The total number of certificates contained in the trust store.",
            "format": "int32",
            "example": 3
          },
          "banned_certificates_count": {
            "type": "integer",
            "description": "The total number of certificates explicitly marked as banned in the trust store.",
            "format": "int32",
            "example": 3
          },
          "creation_time": {
            "type": "integer",
            "description": "Specifies the creation time of the trust store (in Epoch).",
            "format": "date-time",
            "example": 1640975400
          },
          "last_updated": {
            "type": "integer",
            "description": "Specifies the last update time of the trust store (in Epoch).",
            "format": "date-time",
            "example": 1640975400
          }
        },
        "description": "PKI Trust Store Summary Response: A lightweight representation of a trust store used for mTLS authentication, returned in list operations.",
        "x-model-type": "response"
      },
      "PolicyTypes": {
        "enum": [
          "basic",
          "advanced"
        ],
        "description": "The policy rule authoring type.",
        "x-enum-descriptions": {
          "basic": "A rule authored from the structured condition primitives.",
          "advanced": "A rule authored as a raw Cedar expression."
        }
      },
      "ProblemDetails": {
        "required": [
          "status",
          "title",
          "trace_id",
          "type"
        ],
        "type": "object",
        "properties": {
          "type": {
            "type": "string",
            "description": "A URI reference that identifies the error type. When accessed, it may provide human-readable documentation."
          },
          "title": {
            "type": "string",
            "description": "A short, human-readable summary of the error."
          },
          "status": {
            "type": "integer",
            "description": "The HTTP status code associated with this error response.",
            "format": "int32"
          },
          "trace_id": {
            "type": "string",
            "description": "A unique identifier for the request, used for tracing and diagnostics."
          },
          "detail": {
            "type": [
              "null",
              "string"
            ],
            "description": "A human-readable explanation specific to this occurrence of the error."
          },
          "instance": {
            "type": [
              "null",
              "string"
            ],
            "description": "A URI reference that identifies the specific occurrence of the error."
          }
        },
        "description": "Problem Details: Standard error response format used to convey machine-readable and human-readable error information.",
        "x-model-type": "response"
      },
      "PushedAuthorizationOptions": {
        "required": [
          "enable_pushed_authorization_requests",
          "require_pushed_authorization_requests"
        ],
        "type": "object",
        "properties": {
          "enable_pushed_authorization_requests": {
            "type": "boolean",
            "description": "Specifies whether Pushed Authorization Requests (PAR) are enabled for the tenant.",
            "example": false
          },
          "require_pushed_authorization_requests": {
            "type": "boolean",
            "description": "Specifies whether Pushed Authorization Requests (PAR) are required tenant-wide for all authorization requests.\n>[!note]\n> When enabled, this setting overrides any client-specific PAR configuration and enforces PAR usage for all clients within the tenant.",
            "example": false
          }
        },
        "description": "Pushed Authorization Options Response: Represents the tenant-wide Pushed Authorization Request (PAR) configuration.",
        "x-model-type": "response"
      },
      "RecoveryMethodsEmailOptions": {
        "required": [
          "allow_cross_browser",
          "code_length",
          "enabled",
          "expiry",
          "verification_type"
        ],
        "type": "object",
        "properties": {
          "enabled": {
            "type": "boolean",
            "description": "Enables account and password recovery using email-based verification.",
            "example": true
          },
          "verification_type": {
            "description": "Specifies the verification mechanism used for email password recovery (link, code, or both).",
            "examples": [
              "link"
            ],
            "$ref": "#/components/schemas/VerificationTypes"
          },
          "allow_cross_browser": {
            "type": "boolean",
            "description": "Specifies whether the password recovery flow can be resumed in a different browser or device than where it was initiated.",
            "example": false
          },
          "expiry": {
            "type": "integer",
            "description": "Specifies the validity period of the email recovery verification link or code (in seconds).",
            "format": "int32",
            "example": 300
          },
          "code_length": {
            "type": "integer",
            "description": "Specifies the number of digits in the email recovery verification code.\n>[!note]\n> Only applicable when the verification type includes code-based recovery.",
            "format": "int32",
            "example": 6
          }
        },
        "description": "Recovery Methods Email Options Response: Represents the email-based account and password recovery configuration.",
        "x-model-type": "response"
      },
      "RecoveryMethodsOptions": {
        "required": [
          "email",
          "phone"
        ],
        "type": "object",
        "properties": {
          "email": {
            "description": "Recovery Methods Email Options",
            "$ref": "#/components/schemas/RecoveryMethodsEmailOptions"
          },
          "phone": {
            "description": "Recovery Methods Phone Options",
            "$ref": "#/components/schemas/RecoveryMethodsPhoneOptions"
          }
        },
        "description": "Recovery Methods Options Response: Represents the configuration for account and password recovery.",
        "x-model-type": "response"
      },
      "RecoveryMethodsPhoneOptions": {
        "required": [
          "code_length",
          "enabled",
          "expiry"
        ],
        "type": "object",
        "properties": {
          "enabled": {
            "type": "boolean",
            "description": "Enables account and password recovery using a phone-based verification code.",
            "example": true
          },
          "expiry": {
            "type": "integer",
            "description": "Specifies the validity period of the recovery verification code (in seconds).",
            "format": "int32",
            "example": 300
          },
          "code_length": {
            "type": "integer",
            "description": "Specifies the number of digits in the recovery verification code.",
            "format": "int32",
            "example": 6
          }
        },
        "description": "Recovery Methods Phone Options Response: Represents the phone-based account and password recovery configuration.",
        "x-model-type": "response"
      },
      "ReferenceToken": {
        "required": [
          "audiences",
          "client_id",
          "creation_time",
          "id",
          "is_session_bound",
          "scopes"
        ],
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "description": "The unique identifier of the grant.",
            "example": "HxI56Ol4FjIyUXZBJ6J24"
          },
          "client_id": {
            "type": "string",
            "description": "The unique identifier of the client to which the grant was issued.",
            "example": "eCOGRJYpnNwwAAuCeReEW"
          },
          "creation_time": {
            "type": "integer",
            "description": "Specifies the time at which the grant was issued (in Epoch).",
            "format": "date-time",
            "example": 1640975400
          },
          "session_id": {
            "type": [
              "null",
              "string"
            ],
            "description": "The unique identifier of the user session associated with this token.",
            "example": "96484D319ACC21380CCE026E54807B4D"
          },
          "is_session_bound": {
            "type": "boolean",
            "description": "Specifies whether the token is bound to the session.",
            "example": false
          },
          "scopes": {
            "type": "array",
            "items": {
              "type": "string"
            },
            "description": "The scopes granted to this token.",
            "example": [
              "openid",
              "profile",
              "email"
            ]
          },
          "expiration": {
            "type": [
              "null",
              "integer"
            ],
            "description": "Specifies the time at which the token expires (in Epoch).",
            "format": "date-time",
            "example": 1640975400
          },
          "audiences": {
            "uniqueItems": true,
            "type": "array",
            "items": {
              "type": "string"
            },
            "description": "The intended audiences for which this token is valid.",
            "example": [
              "https://example.com/api"
            ]
          },
          "issuer": {
            "type": [
              "null",
              "string"
            ],
            "description": "The issuer that generated this token.",
            "example": "https://domain.us.monocloud.com"
          }
        },
        "description": "Reference Token: Represents an opaque access token issued to a client.",
        "x-model-type": "response"
      },
      "RefreshToken": {
        "required": [
          "audiences",
          "client_id",
          "creation_time",
          "id",
          "is_session_bound",
          "scopes"
        ],
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "description": "The unique identifier of the grant.",
            "example": "HxI56Ol4FjIyUXZBJ6J24"
          },
          "client_id": {
            "type": "string",
            "description": "The unique identifier of the client to which the grant was issued.",
            "example": "eCOGRJYpnNwwAAuCeReEW"
          },
          "creation_time": {
            "type": "integer",
            "description": "Specifies the time at which the grant was issued (in Epoch).",
            "format": "date-time",
            "example": 1640975400
          },
          "session_id": {
            "type": [
              "null",
              "string"
            ],
            "description": "The unique identifier of the user session associated with this token.",
            "example": "96484D319ACC21380CCE026E54807B4D"
          },
          "is_session_bound": {
            "type": "boolean",
            "description": "Specifies whether the token is bound to the session.",
            "example": false
          },
          "scopes": {
            "type": "array",
            "items": {
              "type": "string"
            },
            "description": "The scopes granted to this token.",
            "example": [
              "openid",
              "profile",
              "email"
            ]
          },
          "expiration": {
            "type": [
              "null",
              "integer"
            ],
            "description": "Specifies the time at which the token expires (in Epoch).",
            "format": "date-time",
            "example": 1640975400
          },
          "audiences": {
            "uniqueItems": true,
            "type": "array",
            "items": {
              "type": "string"
            },
            "description": "The intended audiences for which access tokens may be issued using this refresh token.",
            "example": [
              "https://example.com/api"
            ]
          },
          "issuer": {
            "type": [
              "null",
              "string"
            ],
            "description": "The issuer that generated this token.",
            "example": "https://domain.us.monocloud.com"
          }
        },
        "description": "Refresh Token: Represents a long-lived refresh token issued to a client.",
        "x-model-type": "response"
      },
      "RefreshTokenExpirationTypes": {
        "enum": [
          "sliding",
          "absolute"
        ],
        "description": "The refresh tokens expiration type.",
        "x-enum-descriptions": {
          "sliding": "Refresh tokens use a sliding expiration model. Each successful refresh extends the token lifetime (up to the configured absolute refresh token lifetime).",
          "absolute": "Refresh tokens expire at a fixed point in time, based on the configured absolute refresh token lifetime — regardless of usage."
        }
      },
      "RefreshTokenUsageTypes": {
        "enum": [
          "reuse",
          "one_time_only"
        ],
        "description": "The refresh tokens usage type.",
        "x-enum-descriptions": {
          "reuse": "The same refresh token can be used repeatedly to obtain new tokens.",
          "one_time_only": "A new refresh token is issued on every refresh, and the previous one becomes invalid."
        }
      },
      "RegionalNetworkZone": {
        "required": [
          "category",
          "countries",
          "creation_time",
          "enabled",
          "id",
          "last_updated",
          "name",
          "operator",
          "type"
        ],
        "properties": {
          "id": {
            "type": "string",
            "description": "The unique identifier of the network zone.",
            "example": "uSkOCE9ZEmYdWS7Kv223S"
          },
          "enabled": {
            "type": "boolean",
            "description": "Indicates whether the zone is enabled.",
            "example": true
          },
          "name": {
            "type": "string",
            "description": "Human-readable name for the zone.",
            "example": "Designation"
          },
          "description": {
            "type": [
              "null",
              "string"
            ],
            "description": "Description that explains the zone.",
            "example": "Location of the Company Headquarters"
          },
          "category": {
            "description": "The category the zone belongs to.",
            "examples": [
              "trusted"
            ],
            "$ref": "#/components/schemas/NetworkZoneCategory"
          },
          "creation_time": {
            "type": "integer",
            "description": "Specifies the creation time of the zone (in Epoch).",
            "format": "date-time",
            "example": 1640975400
          },
          "last_updated": {
            "type": "integer",
            "description": "Specifies the last update time of the zone (in Epoch).",
            "format": "date-time",
            "example": 1640975400
          },
          "operator": {
            "description": "The evaluation operator for the network zone.",
            "examples": [
              "not_in"
            ],
            "$ref": "#/components/schemas/NetworkZoneOperator"
          },
          "type": {
            "const": "regional",
            "type": "string"
          },
          "countries": {
            "uniqueItems": true,
            "type": "array",
            "items": {
              "type": "string"
            },
            "description": "List of 3166-1 alpha-2 country codes.",
            "example": [
              "US",
              "GB"
            ]
          }
        },
        "description": "Regional Network Zone Response: Represents a Regional Network Zone.",
        "x-model-type": "response"
      },
      "RememberConsentTypes": {
        "enum": [
          "never",
          "always",
          "user_selected"
        ],
        "description": "The remember consent type.",
        "x-enum-descriptions": {
          "never": "Consent is never remembered. Users are prompted every time.",
          "always": "Consent is always remembered automatically and never prompted again.",
          "user_selected": "Users may choose whether their consent decision should be remembered."
        }
      },
      "ResetPasswordRequest": {
        "type": "object",
        "properties": {
          "send_email": {
            "type": "boolean",
            "description": "A flag indicating whether the password reset link should be automatically delivered to the user's email address.",
            "default": false,
            "example": false
          },
          "expiry": {
            "maximum": 2592000,
            "minimum": 60,
            "type": [
              "null",
              "integer"
            ],
            "description": "Lifetime of the password reset link (in seconds). Defaults to the system configuration when omitted.",
            "format": "int32",
            "example": 600
          }
        },
        "description": "Reset Password Request: Defines the options used to initiate a password reset flow for a user.",
        "x-model-type": "create"
      },
      "ResetPasswordResponse": {
        "required": [
          "email_sent",
          "expires_at",
          "link"
        ],
        "type": "object",
        "properties": {
          "link": {
            "type": "string",
            "description": "The generated password reset link that can be used to complete the reset flow.",
            "example": "https://domain.us.monocloud.com/ui/passwordReset/verify?state=xaAUMGOyIOKIK4SGYGUuqsSGPmclTGG3"
          },
          "expires_at": {
            "type": "integer",
            "description": "Specifies the expiry time for the password reset link (in Epoch).",
            "format": "date-time",
            "example": 1640975400
          },
          "email_sent": {
            "type": "boolean",
            "description": "Indicates whether the password reset email was sent to the user.",
            "example": false
          }
        },
        "description": "Reset Password Response: Returns the delivery status of the password reset email.",
        "x-model-type": "response"
      },
      "RevocationCheckDepth": {
        "enum": [
          "end_certificate_only",
          "exclude_root",
          "entire_chain"
        ],
        "description": "The revocation check depth.",
        "x-enum-descriptions": {
          "end_certificate_only": "Indicates that only the end-entity (leaf) certificate is checked for revocation.",
          "exclude_root": "Indicates that all certificates in the chain except the root certificate are checked for revocation.",
          "entire_chain": "Indicates that all certificates in the chain, including the root certificate, are checked for revocation."
        }
      },
      "RevocationGrouped": {
        "required": [
          "creation_time",
          "deltas",
          "id",
          "issued_at",
          "issuer_thumbprint",
          "value"
        ],
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "description": "The unique identifier of the revocation entry.",
            "example": "OjuVWCeAVnb5jjMF8GC6s"
          },
          "value": {
            "type": "string",
            "description": "The certificate revocation list (CRL) in PEM format.",
            "example": "-----BEGIN X509 CRL-----certificate_revocation_value-----END X509 CRL-----"
          },
          "issuer_thumbprint": {
            "type": "string",
            "description": "The thumbprint of the CA certificate that issued this CRL.",
            "example": "F1FB4FD68F15DAA29A0B935B2759986A92898030F1FB4FD68F15DAA29A0B935B"
          },
          "issued_at": {
            "type": "integer",
            "description": "Specifies the time at which the CRL was issued (in Epoch).",
            "format": "date-time",
            "example": 1640955670
          },
          "next_update": {
            "type": [
              "null",
              "integer"
            ],
            "description": "Specifies the time at which the next CRL update is expected (in Epoch).",
            "format": "date-time",
            "example": 1641025178
          },
          "creation_time": {
            "type": "integer",
            "description": "Specifies the time at which this revocation entry was created (in Epoch).",
            "format": "date-time",
            "example": 1640975400
          },
          "crl_number": {
            "type": [
              "null",
              "integer"
            ],
            "description": "The CRL number, as defined in the X.509 CRL extensions, used to identify the version or sequence of the certificate revocation list.",
            "format": "int32",
            "example": 80
          },
          "deltas": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/RevocationGroupedDelta"
            },
            "description": "Delta CRLs that provide incremental revocation updates for this base CRL."
          }
        },
        "description": "Revocation Grouped Response: Represents a base certificate revocation list (CRL) along with its associated delta CRLs.",
        "x-model-type": "response"
      },
      "RevocationGroupedDelta": {
        "required": [
          "base_revocation_id",
          "creation_time",
          "crl_number",
          "delta_crl_number",
          "id",
          "issued_at",
          "issuer_thumbprint",
          "value"
        ],
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "description": "The unique identifier of the delta revocation entry.",
            "example": "Rjc0QmiHaVdNLAFYhV025"
          },
          "value": {
            "type": "string",
            "description": "The certificate revocation list (CRL) in PEM format.",
            "example": "-----BEGIN X509 CRL-----certificate_revocation_value-----END X509 CRL-----"
          },
          "issuer_thumbprint": {
            "type": "string",
            "description": "The thumbprint of the CA certificate that issued this CRL.",
            "example": "F1FB4FD68F15DAA29A0B935B2759986A92898030F1FB4FD68F15DAA29A0B935B"
          },
          "issued_at": {
            "type": "integer",
            "description": "Specifies the time at which the CRL was issued (in Epoch).",
            "format": "date-time",
            "example": 1640955670
          },
          "next_update": {
            "type": [
              "null",
              "integer"
            ],
            "description": "Specifies the time at which the next CRL update is expected (in Epoch).",
            "format": "date-time",
            "example": 1641025178
          },
          "creation_time": {
            "type": "integer",
            "description": "Specifies the time at which this revocation entry was created (in Epoch).",
            "format": "date-time",
            "example": 1640975400
          },
          "crl_number": {
            "type": "integer",
            "description": "The base CRL number, as defined in the X.509 CRL extensions, identifying the full CRL on which this delta CRL is based.",
            "format": "int32",
            "example": 124
          },
          "delta_crl_number": {
            "type": "integer",
            "description": "The delta CRL number, as defined in the X.509 CRL extensions, identifying the sequence number of this delta update.",
            "format": "int32",
            "example": 80
          },
          "base_revocation_id": {
            "type": "string",
            "description": "The unique identifier of the base (full) revocation entry to which this delta CRL applies.",
            "example": "OjuVWCeAVnb5jjMF8GC6s"
          }
        },
        "description": "Revocation Grouped Delta Response: Represents a delta certificate revocation list (delta CRL) associated with a base CRL.",
        "x-model-type": "response"
      },
      "Scope": {
        "required": [
          "creation_time",
          "emphasize",
          "id",
          "is_default",
          "last_updated",
          "name",
          "required",
          "show_in_discovery_document",
          "user_claims"
        ],
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "description": "The unique identifier of the resource.",
            "example": "GIbxRmxz2tIyQDVdGR4yE"
          },
          "display_name": {
            "type": [
              "null",
              "string"
            ],
            "description": "Human-readable display name for the resource.",
            "example": "Designation"
          },
          "description": {
            "type": [
              "null",
              "string"
            ],
            "description": "Description that explains the purpose of the resource.",
            "example": "Current position in the employed organization"
          },
          "show_in_discovery_document": {
            "type": "boolean",
            "description": "Indicates whether this resource is advertised via the discovery document.",
            "example": true
          },
          "creation_time": {
            "type": "integer",
            "description": "Specifies the creation time of the resource (in Epoch).",
            "format": "date-time",
            "example": 1640975400
          },
          "last_updated": {
            "type": "integer",
            "description": "Specifies the last update time of the resource (in Epoch).",
            "format": "date-time",
            "example": 1640975400
          },
          "name": {
            "type": "string",
            "description": "The unique name of the scope. This is the value a client will use for the scope parameter in the authorize request.",
            "example": "user_profile"
          },
          "required": {
            "type": "boolean",
            "description": "Specifies whether the scope is mandatory and cannot be de-selected by the user on the consent screen.",
            "example": false
          },
          "emphasize": {
            "type": "boolean",
            "description": "Indicates whether this scope is visually emphasized on the consent screen, typically for sensitive or high-impact permissions.",
            "example": false
          },
          "is_default": {
            "type": "boolean",
            "description": "Indicates whether this is a built-in identity scope provided by the platform.",
            "example": false
          },
          "user_claims": {
            "uniqueItems": true,
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/ScopeClaim"
            },
            "description": "List of user claim types that will be embedded into identity tokens and/or returned from the `UserInfo` endpoint when this scope is granted."
          }
        },
        "description": "Scope Response: Represents a permission that can be requested by clients and evaluated during authorization.",
        "x-model-type": "response"
      },
      "ScopeClaim": {
        "required": [
          "claim",
          "include_in_identity_token",
          "include_in_user_info"
        ],
        "type": "object",
        "properties": {
          "claim": {
            "type": "string",
            "description": "The name of the user claim granted by this scope.",
            "example": "job_title"
          },
          "include_in_identity_token": {
            "type": "boolean",
            "description": "Indicates whether this claim is included in the issued ID token when the scope is granted.",
            "example": true
          },
          "include_in_user_info": {
            "type": "boolean",
            "description": "Indicates whether this claim is returned by the `UserInfo` endpoint when the scope is granted.",
            "example": true
          }
        },
        "description": "Scope Claim Response: Represents a user claim granted by a scope and included in the ID token or `UserInfo` endpoint.",
        "x-model-type": "response"
      },
      "Secret": {
        "required": [
          "creation_time",
          "id",
          "last_updated",
          "secret_value",
          "type"
        ],
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "description": "The unique identifier of the secret.",
            "example": "knSIQlqx0wkMQEzMhlBLN"
          },
          "description": {
            "type": [
              "null",
              "string"
            ],
            "description": "Description that explains the purpose of the secret.",
            "example": "Banking App Client Secret"
          },
          "expiration": {
            "type": [
              "null",
              "integer"
            ],
            "description": "Specifies the time at which the secret expires (in Epoch).",
            "format": "date-time",
            "example": 1640975400
          },
          "type": {
            "description": "Specifies the type of secret.",
            "examples": [
              "shared_secret"
            ],
            "$ref": "#/components/schemas/SecretTypes"
          },
          "creation_time": {
            "type": "integer",
            "description": "Specifies the creation time of the secret (in Epoch).",
            "format": "date-time",
            "example": 1640975400
          },
          "last_updated": {
            "type": "integer",
            "description": "Specifies the last update time of the secret (in Epoch).",
            "format": "date-time",
            "example": 1640975400
          },
          "secret_value": {
            "type": "string",
            "description": "The secret value used to authenticate the client or API resource.",
            "example": "secret"
          }
        },
        "description": "Secret Response: Represents a credential used by a client or API resource.",
        "x-model-type": "response"
      },
      "SecretTypes": {
        "enum": [
          "shared_secret",
          "x509_thumbprint",
          "x509_name",
          "x509_issuer_name",
          "x509_certificate_base64",
          "jwk",
          "jwt_assertion_shared_secret",
          "spiffe_id",
          "jwt_svid_assertion"
        ],
        "description": "The secret type.",
        "x-enum-descriptions": {
          "shared_secret": "A shared symmetric secret value.",
          "x509_thumbprint": "An X.509 certificate identified by its thumbprint.",
          "x509_name": "An X.509 certificate identified by its subject name.",
          "x509_issuer_name": "An X.509 certificate identified by its issuer name.",
          "x509_certificate_base64": "A base64-encoded X.509 certificate.",
          "jwk": "A JSON Web Key (JWK).",
          "jwt_assertion_shared_secret": "A shared secret used for JWT-based client assertion authentication.",
          "spiffe_id": "A SPIFFE ID matched against the SVID presented by the workload. May end with a `/*` wildcard matching any path under the prefix.",
          "jwt_svid_assertion": "A SPIFFE ID matched against the JWT-SVID assertion presented by the workload. May end with a `/*` wildcard matching any path under the prefix."
        }
      },
      "SessionExpirationTypes": {
        "enum": [
          "sliding",
          "absolute"
        ],
        "description": "The expiration type.",
        "x-enum-descriptions": {
          "sliding": "Sessions use a sliding expiration model. Each successful interaction with the authorization server extends the session lifetime (up to the configured absolute session lifetime).",
          "absolute": "Sessions expire at a fixed point in time, based on the configured absolute session lifetime — regardless of user activity."
        }
      },
      "SessionOptions": {
        "required": [
          "absolute_session_lifetime",
          "expiration_type",
          "persistence_mode",
          "sliding_session_lifetime"
        ],
        "type": "object",
        "properties": {
          "persistence_mode": {
            "description": "Determines whether the user session is persisted across browser restarts, expires on browser close, or is decided by the user.",
            "examples": [
              "user_selected"
            ],
            "$ref": "#/components/schemas/SessionPersistenceModes"
          },
          "expiration_type": {
            "description": "Determines whether the session expiration is extended on activity (sliding) or expires at a fixed time (absolute).",
            "examples": [
              "sliding"
            ],
            "$ref": "#/components/schemas/SessionExpirationTypes"
          },
          "sliding_session_lifetime": {
            "type": "integer",
            "description": "The session lifetime applied when using sliding expiration (in minutes). Each qualifying user interaction renews the session up to the absolute limit.",
            "format": "int32",
            "example": 1440
          },
          "absolute_session_lifetime": {
            "type": "integer",
            "description": "The maximum session lifetime after which the session expires regardless of activity or expiration type (in minutes).",
            "format": "int32",
            "example": 14400
          }
        },
        "description": "Session Options Response: Represents the session persistence and expiration configuration.",
        "x-model-type": "response"
      },
      "SessionPersistenceModes": {
        "enum": [
          "persistent",
          "non_persistent",
          "user_selected"
        ],
        "description": "The session persistence mode.",
        "x-enum-descriptions": {
          "persistent": "The session is always persisted in accordance with the configured expiration type.",
          "non_persistent": "The session expires when the browser is closed.",
          "user_selected": "The session is persisted only if the user chooses to remember the session; otherwise, it expires when the browser is closed."
        }
      },
      "SetPasswordRequest": {
        "type": "object",
        "properties": {
          "password": {
            "type": [
              "null",
              "string"
            ],
            "description": "Plain-text password to assign to the user.",
            "example": "SuperStrongPass12345!!!"
          },
          "password_hash": {
            "pattern": "^\\$2[aby]\\$\\d{2}\\$[./A-Za-z0-9]{53}$",
            "type": [
              "null",
              "string"
            ],
            "description": "A pre-hashed password value. Useful during migrations to avoid forcing a password reset.\n>[!warning]\n> When provided, password validation and password policy requirements are not enforced. The hash is stored as-is.",
            "example": "$2a$12$LJdMf15uRsDpd57LKCGxSOTec3MD6jsgJhxRxCeSj2ZKobGo2xPDS"
          },
          "password_hash_algorithm": {
            "description": "Hashing algorithm used for the provided password hash.",
            "default": "bcrypt",
            "examples": [
              "bcrypt"
            ],
            "$ref": "#/components/schemas/PasswordAlgorithms"
          },
          "is_temporary_password": {
            "type": "boolean",
            "description": "Indicates whether the provided password is temporary. If true, the user must reset their password at their next sign-in.",
            "default": true,
            "example": true
          },
          "skip_password_policy_checks": {
            "type": "boolean",
            "description": "Allows bypassing configured password policy checks.",
            "default": false,
            "example": false
          },
          "revoke_sessions": {
            "type": "boolean",
            "description": "A flag to indicate whether all active user sessions should be revoked when the password is updated.",
            "default": false,
            "example": false
          }
        },
        "description": "Set Password Request: Used to set or update a user's password, with support for plaintext or pre-hashed values.",
        "x-model-type": "update"
      },
      "SigningAlgorithms": {
        "enum": [
          "rs256",
          "rs384",
          "rs512",
          "ps256",
          "ps384",
          "ps512",
          "es256",
          "es384",
          "es512"
        ],
        "description": "The signing algorithm.",
        "x-enum-descriptions": {
          "rs256": "RSASSA-PKCS1-v1_5 using SHA-256.",
          "rs384": "RSASSA-PKCS1-v1_5 using SHA-384.",
          "rs512": "RSASSA-PKCS1-v1_5 using SHA-512.",
          "ps256": "RSASSA-PSS using SHA-256.",
          "ps384": "RSASSA-PSS using SHA-384.",
          "ps512": "RSASSA-PSS using SHA-512.",
          "es256": "ECDSA using P-256 and SHA-256.",
          "es384": "ECDSA using P-384 and SHA-384.",
          "es512": "ECDSA using P-521 and SHA-512."
        }
      },
      "SignUpCustomField": {
        "required": [
          "claim_name",
          "enabled",
          "label",
          "required",
          "value_type"
        ],
        "type": "object",
        "properties": {
          "enabled": {
            "type": "boolean",
            "description": "Specifies whether this custom field is enabled and shown during sign-up.",
            "example": true
          },
          "required": {
            "type": "boolean",
            "description": "Specifies whether this custom field is mandatory during sign-up.",
            "example": false
          },
          "claim_name": {
            "type": "string",
            "description": "The claim name under which the value will be stored.",
            "example": "first_name"
          },
          "value_type": {
            "description": "The data type of the claim value.",
            "examples": [
              "string"
            ],
            "$ref": "#/components/schemas/ValueTypes"
          },
          "label": {
            "type": "string",
            "description": "The user-facing label displayed for this field during sign-up.",
            "example": "First Name"
          }
        },
        "description": "Sign-up Custom Field Response: Represents the configuration of a custom field collected during user sign-up.",
        "x-model-type": "response"
      },
      "SignUpOptions": {
        "required": [
          "allowlist",
          "blocklist",
          "require_explicit_user_agreement",
          "show_terms_and_privacy_policy"
        ],
        "type": "object",
        "properties": {
          "show_terms_and_privacy_policy": {
            "type": "boolean",
            "description": "Show Terms and/or Privacy Policy on the sign-up screen.",
            "example": true
          },
          "require_explicit_user_agreement": {
            "type": "boolean",
            "description": "Require the user to explicitly agree to the Terms and/or Privacy Policy.",
            "example": true
          },
          "privacy_url": {
            "type": [
              "null",
              "string"
            ],
            "description": "The URL of the Privacy Policy shown during sign-up.",
            "example": "https://acme.com/privacy"
          },
          "terms_url": {
            "type": [
              "null",
              "string"
            ],
            "description": "The URL of the Terms of Service shown during sign-up.",
            "example": "https://acme.com/terms"
          },
          "allowlist": {
            "description": "Allowlist of identifiers permitted during sign-up.",
            "$ref": "#/components/schemas/SignUpRestrictionsOptions"
          },
          "blocklist": {
            "description": "Blocklist of identifiers disallowed during sign-up.",
            "$ref": "#/components/schemas/SignUpRestrictionsOptions"
          }
        },
        "description": "Sign-up Options Response: Represents the sign-up configuration.",
        "x-model-type": "response"
      },
      "SignUpRestrictionsOptions": {
        "required": [
          "enabled",
          "identifiers"
        ],
        "type": "object",
        "properties": {
          "enabled": {
            "type": "boolean",
            "description": "Indicates whether the identifier restriction list is active.\n>[!note]\n> Pro plan subscription required to use sign-up restrictions.",
            "example": true
          },
          "identifiers": {
            "uniqueItems": true,
            "type": "array",
            "items": {
              "type": "string"
            },
            "description": "A set of identifiers (email addresses, phone numbers, or domains) used for sign-up access control.\n>[!note]\n> Pro plan subscription required to use sign-up restrictions.",
            "example": [
              "organization.com",
              "example@organization.com",
              "+1234567890"
            ]
          }
        },
        "description": "Sign-Up Restrictions Options Response: Represents identifier-based allowlist or blocklist configuration applied during sign-up.",
        "x-model-type": "response"
      },
      "SmsBrandingOptions": {
        "required": [
          "password_reset",
          "sign_in",
          "verification"
        ],
        "type": "object",
        "properties": {
          "sign_in": {
            "description": "Configuration for sign-in SMS messages, including delivery enablement and message template.",
            "$ref": "#/components/schemas/CustomSmsBrandingOptions"
          },
          "verification": {
            "description": "Configuration for verification SMS messages, including delivery enablement and message template.",
            "$ref": "#/components/schemas/CustomSmsBrandingOptions"
          },
          "password_reset": {
            "description": "Configuration for password reset SMS messages, including delivery enablement and message template.",
            "$ref": "#/components/schemas/CustomSmsBrandingOptions"
          }
        },
        "description": "SMS Branding Options Response: Represents the SMS branding configuration applied to system-generated messages.",
        "x-model-type": "response"
      },
      "SmsProviders": {
        "enum": [
          "monocloud",
          "twilio"
        ],
        "description": "The SMS provider.",
        "x-enum-descriptions": {
          "monocloud": "The platform default SMS provider managed by MonoCloud.",
          "twilio": "Twilio SMS delivery service."
        }
      },
      "SpiffeTrustStore": {
        "required": [
          "creation_time",
          "enabled",
          "id",
          "is_default",
          "last_updated",
          "name",
          "options",
          "show_in_discovery_document",
          "spiffe_bundle_endpoint"
        ],
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "description": "The unique identifier of the trust store.",
            "example": "9qVBxPQiZqtUsBOykavK6"
          },
          "name": {
            "type": "string",
            "description": "Human-readable name for the trust store.",
            "example": "IoT Devices"
          },
          "enabled": {
            "type": "boolean",
            "description": "Indicates whether the trust store is enabled.",
            "example": true
          },
          "is_default": {
            "type": "boolean",
            "description": "Indicates whether this trust store is configured as the default store for the mTLS endpoint.",
            "example": true
          },
          "show_in_discovery_document": {
            "type": "boolean",
            "description": "Specifies whether this trust store’s mTLS endpoint aliases are published under `mtls_additional_endpoint_aliases` in the OpenID Connect discovery document.",
            "example": true
          },
          "options": {
            "description": "Trust store validation settings (certificate type, revocation, caching, and related policies).",
            "$ref": "#/components/schemas/SpiffeTrustStoreOptions"
          },
          "creation_time": {
            "type": "integer",
            "description": "Specifies the creation time of the trust store (in Epoch).",
            "format": "date-time",
            "example": 1640975400
          },
          "last_updated": {
            "type": "integer",
            "description": "Specifies the last update time of the trust store (in Epoch).",
            "format": "date-time",
            "example": 1640975400
          },
          "spiffe_bundle_endpoint": {
            "type": "string",
            "description": "The SPIFFE bundle endpoint URL used to retrieve trust domain signing keys.",
            "example": "https://example.org/bundle.json"
          }
        },
        "description": "SPIFFE Trust Store Response: Represents a federated SPIFFE trust domain used to validate workload identities.",
        "x-model-type": "response"
      },
      "SpiffeTrustStoreOptions": {
        "required": [
          "bundle_fetch_timeout",
          "certificate_auth_cache_duration",
          "validate_certificate_use",
          "validate_validity_period"
        ],
        "type": "object",
        "properties": {
          "validate_certificate_use": {
            "type": "boolean",
            "description": "Indicates whether the client certificate is validated for client authentication, including Client Authentication EKU checks across the certificate chain.",
            "example": true
          },
          "validate_validity_period": {
            "type": "boolean",
            "description": "Indicates whether the certificate validity period (`NotBefore` / `NotAfter`) is enforced.",
            "example": true
          },
          "certificate_auth_cache_duration": {
            "type": "integer",
            "description": "Specifies how long certificate authentication results are cached (in seconds).",
            "format": "int32",
            "example": 300
          },
          "bundle_fetch_timeout": {
            "type": "integer",
            "description": "Specifies the timeout for downloading the SPIFFE bundle from the bundle endpoint (in seconds).",
            "format": "int32",
            "example": 10
          }
        },
        "description": "SPIFFE Trust Store Options Response: Represents the configuration applied for SVID validation.",
        "x-model-type": "response"
      },
      "SpiffeTrustStoreSummary": {
        "required": [
          "banned_svids_count",
          "creation_time",
          "enabled",
          "id",
          "is_default",
          "last_updated",
          "name"
        ],
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "description": "The unique identifier of the trust store.",
            "example": "9qVBxPQiZqtUsBOykavK6"
          },
          "name": {
            "type": "string",
            "description": "The SPIFFE trust domain discovered from the bundle endpoint.",
            "example": "example.org"
          },
          "enabled": {
            "type": "boolean",
            "description": "Indicates whether the trust store is enabled.",
            "example": true
          },
          "is_default": {
            "type": "boolean",
            "description": "Indicates whether this trust store is configured as the default store for the mTLS endpoint.",
            "example": true
          },
          "banned_svids_count": {
            "type": "integer",
            "description": "The total number of SVIDs explicitly marked as banned in the trust store.",
            "format": "int32",
            "example": 3
          },
          "creation_time": {
            "type": "integer",
            "description": "Specifies the creation time of the trust store (in Epoch).",
            "format": "date-time",
            "example": 1640975400
          },
          "last_updated": {
            "type": "integer",
            "description": "Specifies the last update time of the trust store (in Epoch).",
            "format": "date-time",
            "example": 1640975400
          }
        },
        "description": "SPIFFE Trust Store Summary Response: A lightweight representation of a federated SPIFFE trust domain, returned in list operations.",
        "x-model-type": "response"
      },
      "TargetTypes": {
        "enum": [
          "user",
          "tenant",
          "tenant_key",
          "subscription",
          "client",
          "client_secret",
          "group",
          "user_consent",
          "user_identifier",
          "external_provider",
          "ip_address",
          "user_session",
          "user_grants",
          "trust_store",
          "api_resource",
          "api_resource_secret",
          "claim_resource",
          "scope",
          "api_scope",
          "network_zone",
          "key_material",
          "system",
          "api_access_policy"
        ],
        "description": "The log event target type.",
        "x-enum-descriptions": {
          "user": "A user account.",
          "tenant": "A tenant.",
          "tenant_key": "A tenant-level key.",
          "subscription": "A subscription.",
          "client": "A client application.",
          "client_secret": "A client secret.",
          "group": "A group.",
          "user_consent": "A user consent record.",
          "user_identifier": "A user identifier.",
          "external_provider": "An authenticator.",
          "ip_address": "An IP address.",
          "user_session": "A user session.",
          "user_grants": "A user grant.",
          "trust_store": "A trust store.",
          "api_resource": "An API resource.",
          "api_resource_secret": "An API resource secret.",
          "claim_resource": "A claim.",
          "scope": "A scope.",
          "api_scope": "An API scope.",
          "network_zone": "A Network Zone.",
          "key_material": "A cryptographic key material.",
          "system": "The system.",
          "api_access_policy": "An API access policy."
        }
      },
      "TechTypes": {
        "enum": [
          "unknown",
          "react",
          "react_native",
          "angular",
          "vue",
          "next_js",
          "node_js",
          "dotnet",
          "spring_boot",
          "javascript",
          "laravel",
          "django",
          "rails",
          "go",
          "android",
          "kotlin",
          "swift",
          "flutter",
          "expo",
          "device",
          "mtls",
          "svelte",
          "aws_lambda",
          "curl",
          "ios",
          "fastify",
          "express_js",
          "espressif",
          "arduino",
          "astro"
        ],
        "description": "The technology type.",
        "x-enum-descriptions": {
          "unknown": "Technology not specified or unknown",
          "react": "React single-page application",
          "react_native": "React Native mobile application",
          "angular": "Angular web application",
          "vue": "Vue.js web application",
          "next_js": "Next.js full-stack application",
          "node_js": "Node.js server-side application",
          "dotnet": ".NET application",
          "spring_boot": "Spring Boot application",
          "javascript": "JavaScript application without a specific framework",
          "laravel": "Laravel (PHP) application",
          "django": "Django (Python) application",
          "rails": "Ruby on Rails application",
          "go": "Go (Golang) application",
          "android": "Native Android application",
          "kotlin": "Kotlin-based application",
          "swift": "Swift-based iOS or macOS application",
          "flutter": "Flutter cross-platform application",
          "expo": "Expo-managed React Native application",
          "device": "Device-based or embedded application",
          "mtls": "mTLS or certificate-based integration",
          "svelte": "Svelte application",
          "aws_lambda": "AWS Lambda function",
          "curl": "cURL or script-based integration",
          "ios": "iOS application",
          "fastify": "Fastify Node.js server",
          "express_js": "Express.js application",
          "espressif": "Espressif microcontroller platform",
          "arduino": "Arduino-based device",
          "astro": "Astro static / hybrid web application"
        }
      },
      "TrustIdentifierModes": {
        "enum": [
          "as_provided",
          "never",
          "always"
        ],
        "description": "Determines whether an email received from an external identity provider is treated as verified.",
        "x-enum-descriptions": {
          "as_provided": "The email is treated as verified based on the email_verified claim received from the external provider.",
          "never": "The email is never treated as verified.",
          "always": "The email is always treated as verified."
        }
      },
      "UnblockIpRequest": {
        "required": [
          "ip_address"
        ],
        "type": "object",
        "properties": {
          "ip_address": {
            "minLength": 1,
            "type": "string",
            "description": "The IP address to unblock. Use `all` to reset blocks for all IP addresses associated with the user.",
            "example": "127.0.0.1"
          }
        },
        "description": "Unblock IP Request: Used to remove an IP-based lockout for a user.",
        "x-model-type": "create"
      },
      "UpdateClaimsRequest": {
        "type": "object",
        "properties": {
          "name": {
            "maxLength": 512,
            "type": [
              "null",
              "string"
            ],
            "description": "Full name of the user.",
            "example": "John Doe"
          },
          "given_name": {
            "maxLength": 512,
            "type": [
              "null",
              "string"
            ],
            "description": "Given (first) name of the user.",
            "example": "John"
          },
          "middle_name": {
            "maxLength": 512,
            "type": [
              "null",
              "string"
            ],
            "description": "Middle name or initial of the user.",
            "example": "S"
          },
          "family_name": {
            "maxLength": 512,
            "type": [
              "null",
              "string"
            ],
            "description": "Family (last) name of the user.",
            "example": "Smith"
          },
          "nickname": {
            "maxLength": 512,
            "type": [
              "null",
              "string"
            ],
            "description": "Preferred nickname for the user.",
            "example": "Joey"
          },
          "picture": {
            "maxLength": 512,
            "type": [
              "null",
              "string"
            ],
            "description": "URL of the user's profile image.",
            "format": "uri",
            "example": "https://example.com/image.png"
          },
          "preferred_username": {
            "maxLength": 512,
            "type": [
              "null",
              "string"
            ],
            "description": "Preferred username for the user which may be display purposes.",
            "example": "john_smith"
          },
          "profile": {
            "maxLength": 512,
            "type": [
              "null",
              "string"
            ],
            "description": "URL of the user's profile page.",
            "format": "uri",
            "example": "https://example.com/john-smith"
          },
          "birthdate": {
            "maxLength": 512,
            "type": [
              "null",
              "string"
            ],
            "description": "User's birth date in ISO 8601 format (YYYY-MM-DD).",
            "example": "1980-01-02"
          },
          "website": {
            "maxLength": 512,
            "type": [
              "null",
              "string"
            ],
            "description": "URL of the user's personal or professional website.",
            "format": "uri",
            "example": "https://www.johnsmith.com"
          },
          "gender": {
            "maxLength": 512,
            "type": [
              "null",
              "string"
            ],
            "description": "User's gender.",
            "example": "male"
          },
          "zoneinfo": {
            "maxLength": 512,
            "type": [
              "null",
              "string"
            ],
            "description": "Time zone associated with the user's location expressed using a IANA time zone name.",
            "example": "America/Los_Angeles"
          },
          "locale": {
            "maxLength": 512,
            "type": [
              "null",
              "string"
            ],
            "description": "Preferred locale of the user expressed using a BCP 47 language tag.",
            "example": "en-US"
          },
          "address": {
            "oneOf": [
              {
                "type": "null"
              },
              {
                "description": "Physical or residential address associated with the user.",
                "$ref": "#/components/schemas/HttpUserAddressRequest"
              }
            ],
            "description": "Physical or residential address associated with the user."
          },
          "skip_conformance_checks": {
            "type": "boolean",
            "description": "Allows bypassing profile conformance checks enforced by sign-up policies.",
            "default": false,
            "example": false
          }
        },
        "description": "Update Claims Request: Updates standard profile claims associated with a user account.",
        "x-model-type": "patch_optional"
      },
      "UpdatePrivateDataRequest": {
        "required": [
          "private_data"
        ],
        "type": "object",
        "properties": {
          "private_data": {
            "type": "object",
            "additionalProperties": { },
            "description": "A structured payload for updating private data. Supports strings, numbers, booleans, arrays, and nested objects. Fields omitted remain unchanged; fields set to `null` are removed.",
            "example": {
              "transaction_ids": [
                "5GRZ4X7XUItpRGOwkHhONqTtG",
                "9Fw7Jx9Zja5lWlmRkYJf1WMV9"
              ],
              "subscription_plan": "premium",
              "last_renewed": 1672511400
            }
          }
        },
        "description": "Update Private Data Request: Updates private data associated with a user account.",
        "x-model-type": "patch"
      },
      "UpdatePublicDataRequest": {
        "required": [
          "public_data"
        ],
        "type": "object",
        "properties": {
          "public_data": {
            "type": "object",
            "additionalProperties": { },
            "description": "A structured payload for updating public data. Supports strings, numbers, booleans, arrays, and nested objects. Fields omitted remain unchanged; fields set to `null` are removed.",
            "example": {
              "color_preference": {
                "dashboard": "monochrome"
              },
              "send_emails": true,
              "days_to_retain": 1
            }
          }
        },
        "description": "Update Public Data Request: Updates public data associated with a user account.",
        "x-model-type": "patch"
      },
      "UpdateUsernameRequest": {
        "required": [
          "username"
        ],
        "type": "object",
        "properties": {
          "username": {
            "minLength": 1,
            "type": "string",
            "description": "The username to assign to the user. Must comply with the configured username policy, including format and uniqueness requirements.",
            "example": "johndoe"
          }
        },
        "description": "Update Username Request: Used to add a new username or update the existing one for a user account.",
        "x-model-type": "update"
      },
      "User": {
        "required": [
          "claims",
          "creation_time",
          "disabled",
          "emails",
          "external_providers",
          "failure_count",
          "force_password_reset",
          "has_password",
          "last_updated",
          "passkeys",
          "phone_numbers",
          "private_data",
          "public_data",
          "sign_in_attempts_count",
          "sign_in_success_count",
          "user_id"
        ],
        "type": "object",
        "properties": {
          "user_id": {
            "type": "string",
            "description": "The unique identifier of the user.",
            "example": "UOtBaOybB6dTpIJNrnkRw"
          },
          "disabled": {
            "type": "boolean",
            "description": "Indicates whether the account has been disabled.",
            "example": true
          },
          "claims": {
            "type": "object",
            "additionalProperties": { },
            "description": "Claims associated with the user.",
            "example": {
              "name": "John Doe",
              "given_name": "John",
              "family_name": "Doe"
            }
          },
          "public_data": {
            "type": "object",
            "additionalProperties": { },
            "description": "The public data associated with the user's account.",
            "example": {
              "color_preference": {
                "dashboard": "monochrome"
              },
              "send_emails": true,
              "days_to_retain": 1
            }
          },
          "private_data": {
            "type": "object",
            "additionalProperties": { },
            "description": "The private data associated with the user's account.",
            "example": {
              "transaction_ids": [
                "5GRZ4X7XUItpRGOwkHhONqTtG",
                "9Fw7Jx9Zja5lWlmRkYJf1WMV9"
              ],
              "subscription_plan": "premium",
              "last_renewed": 1672511400
            }
          },
          "emails": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/UserEmail"
            },
            "description": "List of registered emails of the user."
          },
          "phone_numbers": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/UserPhone"
            },
            "description": "List of registered phones of the user."
          },
          "passkeys": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/UserPasskey"
            },
            "description": "List of registered passkeys of the user."
          },
          "force_password_reset": {
            "type": "boolean",
            "description": "A flag indicating whether the user must change their password on next sign-in.",
            "example": false
          },
          "external_providers": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/UserExternalProvider"
            },
            "description": "External provider profiles linked to this user."
          },
          "creation_time": {
            "type": "integer",
            "description": "Specifies the creation time of the user (in Epoch).",
            "format": "date-time",
            "example": 1640975400
          },
          "last_updated": {
            "type": "integer",
            "description": "Specifies the last update time of the user (in Epoch).",
            "format": "date-time",
            "example": 1640975400
          },
          "username": {
            "oneOf": [
              {
                "type": "null"
              },
              {
                "description": "Registered username for the user.",
                "$ref": "#/components/schemas/UserUsername"
              }
            ]
          },
          "has_password": {
            "type": "boolean",
            "description": "Indicates whether the user has a password set.",
            "example": true
          },
          "password_updated_at": {
            "type": [
              "null",
              "integer"
            ],
            "description": "Specifies the time of the last password update (in Epoch).",
            "format": "date-time",
            "example": 1640975400
          },
          "block_until": {
            "type": [
              "null",
              "integer"
            ],
            "description": "Specifies the time at which the user will be unblocked (in Epoch).",
            "format": "int64",
            "example": 1640975400
          },
          "failure_count": {
            "type": "integer",
            "description": "Consecutive sign-in failures since the last successful sign-in.",
            "format": "int32",
            "example": 5
          },
          "sign_in_attempts_count": {
            "type": "integer",
            "description": "Total sign-in attempts recorded for the user.",
            "format": "int32",
            "example": 20
          },
          "last_sign_in_attempt": {
            "type": [
              "null",
              "integer"
            ],
            "description": "Specifies the time of the last sign-in attempt (in Epoch).",
            "format": "date-time",
            "example": 1640975400
          },
          "last_sign_in_attempt_ip": {
            "type": [
              "null",
              "string"
            ],
            "description": "IP address of the last sign-in attempt.",
            "example": "1.1.1.1"
          },
          "sign_in_success_count": {
            "type": "integer",
            "description": "Total successful sign-ins recorded for the user.",
            "format": "int32",
            "example": 7
          },
          "last_sign_in_success": {
            "type": [
              "null",
              "integer"
            ],
            "description": "Specifies the time of the last successful sign-in (in Epoch).",
            "format": "date-time",
            "example": 1640975400
          },
          "last_sign_in_success_ip": {
            "type": [
              "null",
              "string"
            ],
            "description": "IP address of the last successful sign-in.",
            "example": "1.1.1.1"
          },
          "last_activity": {
            "type": [
              "null",
              "integer"
            ],
            "description": "Specifies the time of the last recorded user activity (in Epoch).",
            "format": "date-time",
            "example": 1640975400
          },
          "last_known_city": {
            "type": [
              "null",
              "string"
            ],
            "description": "Last recorded city for the user.",
            "example": "New York"
          },
          "last_known_country": {
            "type": [
              "null",
              "string"
            ],
            "description": "Last recorded country for the user.",
            "example": "United States"
          },
          "last_known_region": {
            "type": [
              "null",
              "string"
            ],
            "description": "Last recorded region for the user.",
            "example": "US"
          }
        },
        "description": "User: Represents a user account returned by the operation.",
        "x-model-type": "response"
      },
      "UserClientGrants": {
        "required": [
          "authorization_codes",
          "client_id",
          "consented",
          "reference_tokens",
          "refresh_tokens"
        ],
        "type": "object",
        "properties": {
          "client_id": {
            "type": "string",
            "description": "The unique identifier of the client for which grants were issued.",
            "example": "eCOGRJYpnNwwAAuCeReEW"
          },
          "consented": {
            "type": "boolean",
            "description": "Indicates whether the user has granted consent for one or more scopes to this client.",
            "example": false
          },
          "refresh_tokens": {
            "type": "integer",
            "description": "The number of active refresh tokens issued for this client.",
            "format": "int64",
            "example": 2
          },
          "reference_tokens": {
            "type": "integer",
            "description": "The number of active reference (opaque) access tokens issued for this client.",
            "format": "int64",
            "example": 2
          },
          "authorization_codes": {
            "type": "integer",
            "description": "The number of active authorization codes issued for this client.",
            "format": "int64",
            "example": 2
          }
        },
        "description": "User Client Grants: Represents issued grants for a user-client relationship.",
        "x-model-type": "response"
      },
      "UserConsent": {
        "required": [
          "client_id",
          "creation_time",
          "id",
          "scopes"
        ],
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "description": "The unique identifier of the grant.",
            "example": "HxI56Ol4FjIyUXZBJ6J24"
          },
          "client_id": {
            "type": "string",
            "description": "The unique identifier of the client to which the grant was issued.",
            "example": "eCOGRJYpnNwwAAuCeReEW"
          },
          "creation_time": {
            "type": "integer",
            "description": "Specifies the time at which the grant was issued (in Epoch).",
            "format": "date-time",
            "example": 1640975400
          },
          "scopes": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/UserConsentScope"
            },
            "description": "The consented scopes."
          }
        },
        "description": "User Consent: Represents a consent grant issued by a user to a specific client.",
        "x-model-type": "response"
      },
      "UserConsentScope": {
        "required": [
          "granted_on",
          "scope"
        ],
        "type": "object",
        "properties": {
          "scope": {
            "type": "string",
            "description": "The name of the scope for which consent was granted.",
            "example": "openid"
          },
          "granted_on": {
            "type": "integer",
            "description": "Specifies the time at which consent for the scope was granted (in Epoch).",
            "format": "date-time",
            "example": 1640975400
          },
          "expiration": {
            "type": [
              "null",
              "integer"
            ],
            "description": "Specifies the time at which the granted consent expires (in Epoch).",
            "format": "date-time",
            "example": 1640975400
          }
        },
        "description": "User Consent Scope: Represents a scope granted by the user as part of a consent.",
        "x-model-type": "response"
      },
      "UserEmail": {
        "required": [
          "email",
          "id",
          "primary",
          "verified"
        ],
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "description": "Unique identifier of the user's email.",
            "format": "uuid",
            "example": "6cec8047-6149-4d9b-8d99-91c83c22a9dc"
          },
          "primary": {
            "type": "boolean",
            "description": "Indicates whether this is the primary email address for the user.",
            "example": false
          },
          "verified": {
            "type": "boolean",
            "description": "Indicates whether the email address has been verified.",
            "example": true
          },
          "source": {
            "type": [
              "null",
              "string"
            ],
            "description": "Source from which the email address was originally collected.",
            "example": "monocloud"
          },
          "verification_source": {
            "type": [
              "null",
              "string"
            ],
            "description": "Identity provider or service that verified the email address.",
            "example": "monocloud"
          },
          "email": {
            "type": "string",
            "description": "The email address.",
            "example": "user@example.com"
          }
        },
        "description": "User Email: Represents an email address associated with the user account.",
        "x-model-type": "response"
      },
      "UserExternalProvider": {
        "required": [
          "authenticator",
          "claims",
          "provider",
          "provider_user_id"
        ],
        "type": "object",
        "properties": {
          "provider": {
            "type": "string",
            "description": "The provider associated with this connection.",
            "example": "google"
          },
          "authenticator": {
            "description": "The authenticator used by the provider.",
            "examples": [
              "google"
            ],
            "$ref": "#/components/schemas/ExternalAuthenticators"
          },
          "provider_user_id": {
            "type": "string",
            "description": "The user identifier assigned by the identity provider.",
            "example": "79a500f9-aba6-4f03-baec-c18f4b7136ad"
          },
          "claims": {
            "type": "object",
            "additionalProperties": { },
            "description": "Claims received from the identity provider and associated with this connection.",
            "example": {
              "email": "user@example.com",
              "email_verified": "true",
              "name": "John Doe"
            }
          }
        },
        "description": "External Provider: Represents a linked identity provider account for the user.",
        "x-model-type": "response"
      },
      "UserExternalProviderSummary": {
        "required": [
          "authenticator",
          "provider",
          "provider_user_id"
        ],
        "type": "object",
        "properties": {
          "provider": {
            "type": "string",
            "description": "The provider associated with this connection.",
            "example": "google"
          },
          "authenticator": {
            "description": "The authenticator used by the provider.",
            "examples": [
              "google"
            ],
            "$ref": "#/components/schemas/ExternalAuthenticators"
          },
          "provider_user_id": {
            "type": "string",
            "description": "The user identifier assigned by the identity provider.",
            "example": "79a500f9-aba6-4f03-baec-c18f4b7136ad"
          }
        },
        "description": "External Provider Summary: Represents a linked identity provider account for the user.",
        "x-model-type": "response"
      },
      "UserGroup": {
        "required": [
          "creation_time",
          "group_id",
          "group_name",
          "user_id"
        ],
        "type": "object",
        "properties": {
          "group_id": {
            "type": "string",
            "description": "The unique identifier of the group.",
            "format": "uuid",
            "example": "70b712ac-d96d-476b-b39b-249ad11de1a2"
          },
          "user_id": {
            "type": "string",
            "description": "The unique identifier of the user.",
            "example": "UOtBaOybB6dTpIJNrnkRw"
          },
          "creation_time": {
            "type": "integer",
            "description": "Specifies the time at which the user was added to the group (in Epoch).",
            "format": "date-time",
            "example": 1640975400
          },
          "group_name": {
            "type": "string",
            "description": "The name of the group.",
            "example": "Administrators"
          }
        },
        "description": "User Group: Represents the membership of a user in a group.",
        "x-model-type": "response"
      },
      "UserIpAccessDetails": {
        "required": [
          "failure_count",
          "ip",
          "last_sign_in_attempt",
          "sign_in_attempts_count"
        ],
        "type": "object",
        "properties": {
          "failure_count": {
            "type": "integer",
            "description": "Consecutive sign-in failures from this IP address since the last successful sign-in.",
            "format": "int32",
            "example": 4
          },
          "block_until": {
            "type": [
              "null",
              "integer"
            ],
            "description": "Specifies the time until which sign-in attempts from this IP address are blocked (in Epoch).",
            "format": "date-time",
            "example": 1658129587
          },
          "sign_in_attempts_count": {
            "type": "integer",
            "description": "Total number of sign-in attempts from this IP address.",
            "format": "int32",
            "example": 20
          },
          "ip": {
            "type": "string",
            "description": "The IP address from which sign-in attempts were made.",
            "example": "1.1.1.1"
          },
          "last_sign_in_attempt": {
            "type": "integer",
            "description": "Specifies the time of the most recent sign-in attempt from this IP address (in Epoch).",
            "format": "date-time",
            "example": 1640975400
          }
        },
        "description": "User IP Access Details: Returns sign-in activity for a specific IP address.",
        "x-model-type": "response"
      },
      "UserLockoutTypes": {
        "enum": [
          "ip",
          "user_account"
        ],
        "description": "The user lockout type.",
        "x-enum-descriptions": {
          "ip": "Locks out an IP address from attempting authentication for a user account.",
          "user_account": "Locks out the user account regardless of IP address."
        }
      },
      "UsernameIdentifierOptions": {
        "required": [
          "enable_sign_in",
          "minimum_length",
          "required_at_sign_up",
          "show_at_sign_up"
        ],
        "type": "object",
        "properties": {
          "enable_sign_in": {
            "type": "boolean",
            "description": "Specifies whether users can sign in using a username.",
            "example": true
          },
          "show_at_sign_up": {
            "type": "boolean",
            "description": "Specifies whether a username can be collected during sign-up.",
            "example": true
          },
          "required_at_sign_up": {
            "type": "boolean",
            "description": "Specifies whether a username is required during sign-up.",
            "example": true
          },
          "minimum_length": {
            "type": "integer",
            "description": "Specifies the minimum length required for the username.",
            "format": "int32",
            "example": 3
          }
        },
        "description": "Username Identifier Options Response: Represents username sign-in and sign-up configuration.",
        "x-model-type": "response"
      },
      "UserPasskey": {
        "required": [
          "aa_guid",
          "backup_eligibility",
          "backup_state",
          "passkey_id",
          "public_key",
          "user_agent",
          "user_present",
          "user_verified"
        ],
        "type": "object",
        "properties": {
          "name": {
            "type": [
              "null",
              "string"
            ],
            "description": "Human-readable name assigned to the passkey.",
            "example": "IPhone 15 Pro Max"
          },
          "passkey_id": {
            "type": "string",
            "description": "Unique identifier of the passkey as provided by the authenticator.",
            "example": "sM5X24vn_R3YqFvk8o5Hf7l3E1fMeyKnssiAgCYxouA"
          },
          "public_key": {
            "type": "string",
            "description": "Public key material associated with the passkey.",
            "example": "MIICYzCCAcygAwIBAgIBADAMQwwCgYDVQBgQD2bZEoZXIgZm9yIE9TLzM5MCAoUkFDRikwDgYDVR0PAQH/BAQDAgAGMA8GA1UdEwEB/wQFMAMB6Vf1nYi/rO+ryMO"
          },
          "aa_guid": {
            "type": "string",
            "description": "Authenticator Attestation GUID (AAGUID) identifying the authenticator model.",
            "format": "uuid",
            "example": "204a871f-f7c4-465c-a81f-83d7ad4d04ee"
          },
          "backup_state": {
            "type": "boolean",
            "description": "Indicates whether the passkey is currently backed up by the authenticator.",
            "example": true
          },
          "backup_eligibility": {
            "type": "boolean",
            "description": "Indicates whether the passkey is eligible for backup and multi-device use.",
            "example": true
          },
          "user_present": {
            "type": "boolean",
            "description": "Indicates whether user presence was verified during passkey authentication.",
            "example": true
          },
          "user_verified": {
            "type": "boolean",
            "description": "Indicates whether user verification (such as biometrics or PIN) was performed during authentication.",
            "example": true
          },
          "user_agent": {
            "type": "string",
            "description": "User agent of the device used to register the passkey.",
            "example": "Mozilla/5.0 (Macintosh; Intel Mac OS X 10.15; rv:127.0) Gecko/20100101 Firefox/127.0"
          }
        },
        "description": "User Passkey: Represents a registered passkey used for passwordless authentication by the user.",
        "x-model-type": "response"
      },
      "UserPhone": {
        "required": [
          "id",
          "phone",
          "primary",
          "verified"
        ],
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "description": "Unique identifier of the user's phone.",
            "format": "uuid",
            "example": "ab66b6a2-df6b-4f9d-9eb2-5a7142984e70"
          },
          "primary": {
            "type": "boolean",
            "description": "Indicates whether this is the primary phone number for the user.",
            "example": false
          },
          "verified": {
            "type": "boolean",
            "description": "Indicates whether the phone number has been verified.",
            "example": true
          },
          "source": {
            "type": [
              "null",
              "string"
            ],
            "description": "Source from which the phone number was originally collected.",
            "example": "monocloud"
          },
          "verification_source": {
            "type": [
              "null",
              "string"
            ],
            "description": "Identity provider or service that verified the phone number.",
            "example": "monocloud"
          },
          "phone": {
            "type": "string",
            "description": "The phone number.",
            "example": "+441514960453"
          }
        },
        "description": "User Phone: Represents a phone number associated with the user account.",
        "x-model-type": "response"
      },
      "UserPrivateData": {
        "required": [
          "private_data"
        ],
        "type": "object",
        "properties": {
          "private_data": {
            "type": "object",
            "additionalProperties": { },
            "description": "The private data associated with the user's account.",
            "example": {
              "transaction_ids": [
                "5GRZ4X7XUItpRGOwkHhONqTtG",
                "9Fw7Jx9Zja5lWlmRkYJf1WMV9"
              ],
              "subscription_plan": "premium",
              "last_renewed": 1672511400
            }
          }
        },
        "description": "User Private Data: Returns private data stored for a user.",
        "x-model-type": "response"
      },
      "UserPublicData": {
        "required": [
          "public_data"
        ],
        "type": "object",
        "properties": {
          "public_data": {
            "type": "object",
            "additionalProperties": { },
            "description": "The public data associated with the user's account.",
            "example": {
              "color_preference": {
                "dashboard": "monochrome"
              },
              "send_emails": true,
              "days_to_retain": 1
            }
          }
        },
        "description": "User Public Data: Returns public data stored for a user.",
        "x-model-type": "response"
      },
      "UserSession": {
        "required": [
          "client_ids",
          "expires_at",
          "initiated_at",
          "last_metadata",
          "last_updated",
          "session_id"
        ],
        "type": "object",
        "properties": {
          "session_id": {
            "type": "string",
            "description": "The unique identifier of the user session.",
            "example": "96484D319ACC21380CCE026E54807B4D"
          },
          "client_ids": {
            "type": "array",
            "items": {
              "type": "string"
            },
            "description": "The list of client identifiers associated with this session.",
            "example": [
              "eCOGRJYpnNwwAAuCeReEW"
            ]
          },
          "initiated_at": {
            "type": "integer",
            "description": "Specifies the time at which the session was initiated (in Epoch).",
            "format": "date-time",
            "example": 1640975400
          },
          "expires_at": {
            "type": "integer",
            "description": "Specifies the time at which the session is scheduled to expire (in Epoch).",
            "format": "date-time",
            "example": 1640983490
          },
          "last_updated": {
            "type": "integer",
            "description": "Specifies the time at which the session was last updated (in Epoch).",
            "format": "date-time",
            "example": 1640975400
          },
          "last_metadata": {
            "description": "The most recent metadata recorded for this session.",
            "$ref": "#/components/schemas/UserSessionMetadata"
          }
        },
        "description": "User Session: Represents an authentication session for a user.",
        "x-model-type": "response"
      },
      "UserSessionMetadata": {
        "type": "object",
        "properties": {
          "city": {
            "type": [
              "null",
              "string"
            ],
            "description": "The city recorded during the most recent session activity.",
            "example": "Los Angeles"
          },
          "country": {
            "type": [
              "null",
              "string"
            ],
            "description": "The country recorded during the most recent session activity.",
            "example": "United States of America"
          },
          "region": {
            "type": [
              "null",
              "string"
            ],
            "description": "The geographic region recorded during the most recent session activity.",
            "example": "North America"
          },
          "latitude": {
            "type": [
              "null",
              "string"
            ],
            "description": "The latitude recorded during the most recent session activity.",
            "example": "34.043238"
          },
          "longitude": {
            "type": [
              "null",
              "string"
            ],
            "description": "The longitude recorded during the most recent session activity.",
            "example": "-118.250918"
          },
          "ip_address": {
            "type": [
              "null",
              "string"
            ],
            "description": "The IP address recorded during the most recent session activity.",
            "example": "1.1.1.1"
          },
          "user_agent": {
            "type": [
              "null",
              "string"
            ],
            "description": "The user agent recorded during the most recent session activity.",
            "example": "The User Agent"
          }
        },
        "description": "User Session Metadata: Returns contextual and device information associated with a user session.",
        "x-model-type": "response"
      },
      "UserSummary": {
        "required": [
          "claims",
          "creation_time",
          "disabled",
          "emails",
          "external_providers",
          "failure_count",
          "force_password_reset",
          "has_password",
          "last_updated",
          "passkeys",
          "phone_numbers",
          "sign_in_attempts_count",
          "sign_in_success_count",
          "user_id"
        ],
        "type": "object",
        "properties": {
          "user_id": {
            "type": "string",
            "description": "The unique identifier of the user.",
            "example": "UOtBaOybB6dTpIJNrnkRw"
          },
          "disabled": {
            "type": "boolean",
            "description": "Indicates whether the account has been disabled.",
            "example": true
          },
          "claims": {
            "type": "object",
            "additionalProperties": { },
            "description": "Claims associated with the user.",
            "example": {
              "name": "John Doe",
              "given_name": "John",
              "family_name": "Doe"
            }
          },
          "emails": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/UserEmail"
            },
            "description": "List of registered emails of the user."
          },
          "phone_numbers": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/UserPhone"
            },
            "description": "List of registered phones of the user."
          },
          "passkeys": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/UserPasskey"
            },
            "description": "List of registered passkeys of the user."
          },
          "force_password_reset": {
            "type": "boolean",
            "description": "A flag indicating whether the user must change their password on next sign-in.",
            "example": false
          },
          "external_providers": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/UserExternalProviderSummary"
            },
            "description": "External provider profiles linked to this user."
          },
          "creation_time": {
            "type": "integer",
            "description": "Specifies the creation time of the user (in Epoch).",
            "format": "date-time",
            "example": 1640975400
          },
          "last_updated": {
            "type": "integer",
            "description": "Specifies the last update time of the user (in Epoch).",
            "format": "date-time",
            "example": 1640975400
          },
          "username": {
            "oneOf": [
              {
                "type": "null"
              },
              {
                "description": "Registered username for the user.",
                "$ref": "#/components/schemas/UserUsername"
              }
            ]
          },
          "has_password": {
            "type": "boolean",
            "description": "Indicates whether the user has a password set.",
            "example": true
          },
          "password_updated_at": {
            "type": [
              "null",
              "integer"
            ],
            "description": "Specifies the time of the last password update (in Epoch).",
            "format": "date-time",
            "example": 1640975400
          },
          "block_until": {
            "type": [
              "null",
              "integer"
            ],
            "description": "Specifies the time at which the user will be unblocked (in Epoch).",
            "format": "int64",
            "example": 1640975400
          },
          "failure_count": {
            "type": "integer",
            "description": "Consecutive sign-in failures since the last successful sign-in.",
            "format": "int32",
            "example": 5
          },
          "sign_in_attempts_count": {
            "type": "integer",
            "description": "Total sign-in attempts recorded for the user.",
            "format": "int32",
            "example": 20
          },
          "last_sign_in_attempt": {
            "type": [
              "null",
              "integer"
            ],
            "description": "Specifies the time of the last sign-in attempt (in Epoch).",
            "format": "date-time",
            "example": 1640975400
          },
          "last_sign_in_attempt_ip": {
            "type": [
              "null",
              "string"
            ],
            "description": "IP address of the last sign-in attempt.",
            "example": "1.1.1.1"
          },
          "sign_in_success_count": {
            "type": "integer",
            "description": "Total successful sign-ins recorded for the user.",
            "format": "int32",
            "example": 7
          },
          "last_sign_in_success": {
            "type": [
              "null",
              "integer"
            ],
            "description": "Specifies the time of the last successful sign-in (in Epoch).",
            "format": "date-time",
            "example": 1640975400
          },
          "last_sign_in_success_ip": {
            "type": [
              "null",
              "string"
            ],
            "description": "IP address of the last successful sign-in.",
            "example": "1.1.1.1"
          },
          "last_activity": {
            "type": [
              "null",
              "integer"
            ],
            "description": "Specifies the time of the last recorded user activity (in Epoch).",
            "format": "date-time",
            "example": 1640975400
          },
          "last_known_city": {
            "type": [
              "null",
              "string"
            ],
            "description": "Last recorded city for the user.",
            "example": "New York"
          },
          "last_known_country": {
            "type": [
              "null",
              "string"
            ],
            "description": "Last recorded country for the user.",
            "example": "United States"
          },
          "last_known_region": {
            "type": [
              "null",
              "string"
            ],
            "description": "Last recorded region for the user.",
            "example": "US"
          }
        },
        "description": "User Summary: A lightweight user representation returned in list operations.",
        "x-model-type": "response"
      },
      "UserUsername": {
        "required": [
          "id",
          "username"
        ],
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "description": "Unique identifier of the user's username.",
            "format": "uuid",
            "example": "9082b772-dbf6-4610-a71e-05fb93c0ab73"
          },
          "username": {
            "type": "string",
            "description": "The username used to identify the user.",
            "example": "username"
          },
          "source": {
            "type": [
              "null",
              "string"
            ],
            "description": "Source from which the username was originally collected.",
            "example": "monocloud"
          }
        },
        "description": "Username: Represents a username associated with the user account.",
        "x-model-type": "response"
      },
      "ValueTypes": {
        "enum": [
          "string",
          "email",
          "phone"
        ],
        "description": "The value type.",
        "x-enum-descriptions": {
          "string": "A plain text value.",
          "email": "An email address value.",
          "phone": "A phone number value."
        }
      },
      "VerificationTypes": {
        "enum": [
          "code",
          "link",
          "both"
        ],
        "description": "The verification type.",
        "x-enum-descriptions": {
          "code": "Verification is performed using a one-time code.",
          "link": "Verification is performed using a secure verification link.",
          "both": "Verification can be performed using either a code or a link."
        }
      },
      "VerifyEmailRequest": {
        "type": "object",
        "properties": {
          "expiry": {
            "maximum": 2592000,
            "minimum": 60,
            "type": [
              "null",
              "integer"
            ],
            "description": "Lifetime of the verification link (in seconds). Defaults to the system configuration when omitted.",
            "format": "int32",
            "example": 600
          }
        },
        "description": "Verify Email Request: Used to generate an email verification link.",
        "x-model-type": "create"
      },
      "VerifyEmailResponse": {
        "required": [
          "email_sent",
          "expires_at"
        ],
        "type": "object",
        "properties": {
          "expires_at": {
            "type": "integer",
            "description": "The expiry time for the verification link (in Epoch).",
            "format": "date-time",
            "example": 1640975400
          },
          "email_sent": {
            "type": "boolean",
            "description": "Specifies whether the verification email was sent to the user.",
            "example": false
          }
        },
        "description": "Verify Email Response: Returns the delivery status of the verification email.",
        "x-model-type": "response"
      },
      "X509RevocationMode": {
        "enum": [
          "no_check",
          "online",
          "offline"
        ],
        "description": "The X.509 revocation mode.",
        "x-enum-descriptions": {
          "no_check": "Indicates that no revocation checking is performed. Certificate revocation status is not evaluated.",
          "online": "Indicates that revocation status is checked using online revocation mechanisms, such as Certificate Revocation Lists (CRLs) and/or OCSP responders, for the certificate chain according to the configured revocation settings.",
          "offline": "Indicates that revocation status is checked using tenant-managed CRLs, without making external network calls."
        }
      }
    },
    "examples": {
      "BadRequest": {
        "value": {
          "type": "https://httpstatuses.io/400",
          "title": "Bad Request",
          "status": 400,
          "trace_id": "00-fdd68b48f0e97148b36b044d345634d7-526e969f7c7bce12-01"
        }
      },
      "PaymentRequired": {
        "value": {
          "type": "https://httpstatuses.io/402",
          "title": "Payment Required",
          "status": 402,
          "trace_id": "00-fdd68b48f0e97148b36b044d345634d7-526e969f7c7bce12-01",
          "detail": "Pro plan is required to access this feature."
        }
      },
      "KeyValidationError": {
        "value": {
          "errors": {
            "key": [
              "This field is required."
            ]
          },
          "type": "https://httpstatuses.io/422#validation-error",
          "title": "One or more validation errors occurred.",
          "status": 422,
          "trace_id": "00-fdd68b48f0e97148b36b044d345634d7-526e969f7c7bce12-01"
        }
      },
      "NotFound": {
        "value": {
          "type": "https://httpstatuses.io/404",
          "title": "Not Found",
          "status": 404,
          "trace_id": "00-fdd68b48f0e97148b36b044d345634d7-526e969f7c7bce12-01"
        }
      },
      "Conflict": {
        "value": {
          "type": "https://httpstatuses.io/409",
          "title": "Conflict",
          "status": 409,
          "trace_id": "00-fdd68b48f0e97148b36b044d345634d7-526e969f7c7bce12-01",
          "detail": "A resource with the specified identifier already exists."
        }
      },
      "IdentityValidationError": {
        "value": {
          "errors": [
            {
              "code": "MCE_10001",
              "description": "An unknown failure has occurred."
            }
          ],
          "type": "https://httpstatuses.io/422#identity-validation-error",
          "title": "One or more validation errors occurred.",
          "status": 422,
          "trace_id": "00-fdd68b48f0e97148b36b044d345634d7-526e969f7c7bce12-01"
        }
      },
      "Forbidden": {
        "value": {
          "type": "https://httpstatuses.io/403",
          "title": "Forbidden",
          "status": 403,
          "trace_id": "00-fdd68b48f0e97148b36b044d345634d7-526e969f7c7bce12-01"
        }
      }
    },
    "securitySchemes": {
      "API-Key": {
        "type": "apiKey",
        "description": "MonoCloud APIs require authentication with an API key. Retrieve your key from the Tenant Settings section of the MonoCloud dashboard and include it in the request header as: X-API-Key: <your_api_key>",
        "name": "X-API-KEY",
        "in": "header"
      }
    }
  },
  "security": [
    {
      "API-Key": [ ]
    }
  ],
  "tags": [
    {
      "name": "Clients",
      "description": "Create and manage OAuth 2.0 and OpenID Connect client applications, including credentials, flows, and security settings."
    },
    {
      "name": "Resources",
      "description": "Manage protected resources such as APIs, scopes, and access policies."
    },
    {
      "name": "Users",
      "description": "Create, manage and maintain user identities, credentials, and profile information."
    },
    {
      "name": "Groups",
      "description": "Organize users into groups for access control, policy enforcement, and assignments."
    },
    {
      "name": "Trust Stores",
      "description": "Manage trusted certificate authorities and revocation policies used for mTLS authentication and secure service-to-service access."
    },
    {
      "name": "Keys",
      "description": "Manage cryptographic key materials used for signing, encryption, and token validation."
    },
    {
      "name": "Options",
      "description": "Configure platform-level security, authentication, and behavioral settings."
    },
    {
      "name": "Branding",
      "description": "Configure branding for hosted pages and system-generated notifications, including page appearance and email/SMS templates."
    },
    {
      "name": "Logs",
      "description": "Query and inspect authentication, authorization, and system activity logs for auditing and troubleshooting."
    },
    {
      "name": "Network Zones",
      "description": "Define IP address ranges and regional zones that can be referenced by policies to allow or restrict access."
    }
  ]
}