{
  "openapi": "3.1.0",
  "info": {
    "title": "Nookara API",
    "version": "2026-10-19",
    "description": "Source-derived route inventory and permissive request schemas. This is not a complete validator for all inputs or response models. See /guides/velora-api for protocol guides, permissions and integration limits. Scopes are requested, never required: a person may decline any of them, so a token can hold fewer than a route lists in x-velora-scopes and the route then answers insufficient_scope. Ember is an open chat protocol: anyone can write an Ember client and use Ember servers, and Nookara's own apps are just the clients the Nookara ecosystem uses. Ember servers (instances) have their own REST API under INSTANCE/api/v1, described in instance-catalogue.json."
  },
  "servers": [
    {
      "url": "https://velora.ikelene.net"
    }
  ],
  "paths": {
    "/bonfire/instance-token": {
      "post": {
        "operationId": "post_bonfire_instance_token",
        "tags": [
          "bonfire-identity"
        ],
        "summary": "POST /bonfire/instance-token",
        "description": "Needs Chat (2048). Body {\"instance\": URL}. Returns {token, expires_at, aud}: an EdDSA JWT (10 minutes, single use) made for that one instance. Its scp claim lists the instance scopes the Nookara token holds: chat (Chat), voice (Voice), media (Upload Media), sign (Sign Messages). Hand the JWT to POST INSTANCE/api/v1/auth/velora. Errors: invalid_instance, instance_banned, insufficient_scope, scope_disabled. Request keys are observed in the implementation; unknown types are deliberately unconstrained. Server-side validation, membership, roles, privacy and rank checks still apply.",
        "x-velora-scopes": {
          "CHAT": 2048
        },
        "x-captcha-required": false,
        "x-velora-legacy": false,
        "deprecated": false,
        "security": [
          {
            "UserToken": []
          }
        ],
        "parameters": [],
        "responses": {
          "2XX": {
            "description": "Endpoint-specific JSON, text, binary, redirect or empty success; see the guide. No exhaustive response schema is asserted."
          },
          "4XX": {
            "description": "Invalid input, authorization, scope, role, privacy, quota or rate-limit error"
          },
          "5XX": {
            "description": "Service or upstream failure"
          }
        },
        "requestBody": {
          "required": false,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "properties": {
                  "instance": {
                    "description": "Observed request key. See guide for nested formats and constraints."
                  }
                },
                "additionalProperties": true
              }
            }
          }
        }
      }
    },
    "/bonfire/keys": {
      "post": {
        "operationId": "post_bonfire_keys",
        "tags": [
          "bonfire-identity"
        ],
        "summary": "POST /bonfire/keys",
        "description": "Retired (410 device_keys_retired). Use GET /bonfire/signing-key. Request keys are observed in the implementation; unknown types are deliberately unconstrained. Server-side validation, membership, roles, privacy and rank checks still apply.",
        "x-velora-scopes": {},
        "x-captcha-required": false,
        "x-velora-legacy": false,
        "deprecated": false,
        "security": [],
        "parameters": [],
        "responses": {
          "2XX": {
            "description": "Endpoint-specific JSON, text, binary, redirect or empty success; see the guide. No exhaustive response schema is asserted."
          },
          "4XX": {
            "description": "Invalid input, authorization, scope, role, privacy, quota or rate-limit error"
          },
          "5XX": {
            "description": "Service or upstream failure"
          }
        }
      },
      "get": {
        "operationId": "get_bonfire_keys",
        "tags": [
          "bonfire-identity"
        ],
        "summary": "GET /bonfire/keys",
        "description": "Request keys are observed in the implementation; unknown types are deliberately unconstrained. Server-side validation, membership, roles, privacy and rank checks still apply.",
        "x-velora-scopes": {
          "SIGN_MESSAGES": 32768
        },
        "x-captcha-required": false,
        "x-velora-legacy": false,
        "deprecated": false,
        "security": [
          {
            "UserToken": []
          }
        ],
        "parameters": [],
        "responses": {
          "2XX": {
            "description": "Endpoint-specific JSON, text, binary, redirect or empty success; see the guide. No exhaustive response schema is asserted."
          },
          "4XX": {
            "description": "Invalid input, authorization, scope, role, privacy, quota or rate-limit error"
          },
          "5XX": {
            "description": "Service or upstream failure"
          }
        }
      }
    },
    "/bonfire/keys/{kid}": {
      "delete": {
        "operationId": "delete_bonfire_keys_by_kid",
        "tags": [
          "bonfire-identity"
        ],
        "summary": "DELETE /bonfire/keys/:kid",
        "description": "Request keys are observed in the implementation; unknown types are deliberately unconstrained. Server-side validation, membership, roles, privacy and rank checks still apply.",
        "x-velora-scopes": {
          "SIGN_MESSAGES": 32768
        },
        "x-captcha-required": false,
        "x-velora-legacy": false,
        "deprecated": false,
        "security": [
          {
            "UserToken": []
          }
        ],
        "parameters": [
          {
            "name": "kid",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "2XX": {
            "description": "Endpoint-specific JSON, text, binary, redirect or empty success; see the guide. No exhaustive response schema is asserted."
          },
          "4XX": {
            "description": "Invalid input, authorization, scope, role, privacy, quota or rate-limit error"
          },
          "5XX": {
            "description": "Service or upstream failure"
          }
        }
      }
    },
    "/bonfire/keys/kid/{kid}": {
      "get": {
        "operationId": "get_bonfire_keys_kid_by_kid",
        "tags": [
          "bonfire-identity"
        ],
        "summary": "GET /bonfire/keys/kid/:kid",
        "description": "Public. Returns {kid, user_id, public_key, created_at, revoked_at}, or 404 key_not_found. Instances and clients use it to verify signed messages. Request keys are observed in the implementation; unknown types are deliberately unconstrained. Server-side validation, membership, roles, privacy and rank checks still apply.",
        "x-velora-scopes": {},
        "x-captcha-required": false,
        "x-velora-legacy": false,
        "deprecated": false,
        "security": [],
        "parameters": [
          {
            "name": "kid",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "2XX": {
            "description": "Endpoint-specific JSON, text, binary, redirect or empty success; see the guide. No exhaustive response schema is asserted."
          },
          "4XX": {
            "description": "Invalid input, authorization, scope, role, privacy, quota or rate-limit error"
          },
          "5XX": {
            "description": "Service or upstream failure"
          }
        }
      }
    },
    "/bonfire/keys/user/{userId}": {
      "get": {
        "operationId": "get_bonfire_keys_user_by_userid",
        "tags": [
          "bonfire-identity"
        ],
        "summary": "GET /bonfire/keys/user/:userId",
        "description": "Public. Every key of one account, including revoked ones. Request keys are observed in the implementation; unknown types are deliberately unconstrained. Server-side validation, membership, roles, privacy and rank checks still apply.",
        "x-velora-scopes": {},
        "x-captcha-required": false,
        "x-velora-legacy": false,
        "deprecated": false,
        "security": [],
        "parameters": [
          {
            "name": "userId",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "2XX": {
            "description": "Endpoint-specific JSON, text, binary, redirect or empty success; see the guide. No exhaustive response schema is asserted."
          },
          "4XX": {
            "description": "Invalid input, authorization, scope, role, privacy, quota or rate-limit error"
          },
          "5XX": {
            "description": "Service or upstream failure"
          }
        }
      }
    },
    "/bonfire/instances": {
      "get": {
        "operationId": "get_bonfire_instances",
        "tags": [
          "bonfire-identity"
        ],
        "summary": "GET /bonfire/instances",
        "description": "Needs Chat. Returns {default_instance, instances: [{url, position, added_at, muted, push, auto_join}]}: the Ember servers saved on the account. The official server (default_instance) is added once per account; auto_join is true until a client confirms with POST /bonfire/instances/default-joined. Request keys are observed in the implementation; unknown types are deliberately unconstrained. Server-side validation, membership, roles, privacy and rank checks still apply.",
        "x-velora-scopes": {
          "CHAT": 2048
        },
        "x-captcha-required": false,
        "x-velora-legacy": false,
        "deprecated": false,
        "security": [
          {
            "UserToken": []
          }
        ],
        "parameters": [],
        "responses": {
          "2XX": {
            "description": "Endpoint-specific JSON, text, binary, redirect or empty success; see the guide. No exhaustive response schema is asserted."
          },
          "4XX": {
            "description": "Invalid input, authorization, scope, role, privacy, quota or rate-limit error"
          },
          "5XX": {
            "description": "Service or upstream failure"
          }
        }
      },
      "put": {
        "operationId": "put_bonfire_instances",
        "tags": [
          "bonfire-identity"
        ],
        "summary": "PUT /bonfire/instances",
        "description": "Needs Chat. Replaces the whole list in this order (at most 100 normalized origins). Muted and push settings of kept entries are preserved. Request keys are observed in the implementation; unknown types are deliberately unconstrained. Server-side validation, membership, roles, privacy and rank checks still apply.",
        "x-velora-scopes": {
          "CHAT": 2048
        },
        "x-captcha-required": false,
        "x-velora-legacy": false,
        "deprecated": false,
        "security": [
          {
            "UserToken": []
          }
        ],
        "parameters": [],
        "responses": {
          "2XX": {
            "description": "Endpoint-specific JSON, text, binary, redirect or empty success; see the guide. No exhaustive response schema is asserted."
          },
          "4XX": {
            "description": "Invalid input, authorization, scope, role, privacy, quota or rate-limit error"
          },
          "5XX": {
            "description": "Service or upstream failure"
          }
        },
        "requestBody": {
          "required": false,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "properties": {
                  "instances": {
                    "description": "Observed request key. See guide for nested formats and constraints."
                  }
                },
                "additionalProperties": true
              }
            }
          }
        }
      }
    },
    "/bonfire/instances/default-joined": {
      "post": {
        "operationId": "post_bonfire_instances_default_joined",
        "tags": [
          "bonfire-identity"
        ],
        "summary": "POST /bonfire/instances/default-joined",
        "description": "Needs Chat. Body {url?}. The client confirms it joined (or chose not to join) the official server; clears auto_join. Request keys are observed in the implementation; unknown types are deliberately unconstrained. Server-side validation, membership, roles, privacy and rank checks still apply.",
        "x-velora-scopes": {
          "CHAT": 2048
        },
        "x-captcha-required": false,
        "x-velora-legacy": false,
        "deprecated": false,
        "security": [
          {
            "UserToken": []
          }
        ],
        "parameters": [],
        "responses": {
          "2XX": {
            "description": "Endpoint-specific JSON, text, binary, redirect or empty success; see the guide. No exhaustive response schema is asserted."
          },
          "4XX": {
            "description": "Invalid input, authorization, scope, role, privacy, quota or rate-limit error"
          },
          "5XX": {
            "description": "Service or upstream failure"
          }
        },
        "requestBody": {
          "required": false,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "properties": {
                  "url": {
                    "description": "Observed request key. See guide for nested formats and constraints."
                  }
                },
                "additionalProperties": true
              }
            }
          }
        }
      }
    },
    "/bonfire/instances/prefs": {
      "patch": {
        "operationId": "patch_bonfire_instances_prefs",
        "tags": [
          "bonfire-identity"
        ],
        "summary": "PATCH /bonfire/instances/prefs",
        "description": "Needs Chat. Body {url, muted?, push?}: per-server push consent for offline mentions. 404 instance_not_in_list. Request keys are observed in the implementation; unknown types are deliberately unconstrained. Server-side validation, membership, roles, privacy and rank checks still apply.",
        "x-velora-scopes": {
          "CHAT": 2048
        },
        "x-captcha-required": false,
        "x-velora-legacy": false,
        "deprecated": false,
        "security": [
          {
            "UserToken": []
          }
        ],
        "parameters": [],
        "responses": {
          "2XX": {
            "description": "Endpoint-specific JSON, text, binary, redirect or empty success; see the guide. No exhaustive response schema is asserted."
          },
          "4XX": {
            "description": "Invalid input, authorization, scope, role, privacy, quota or rate-limit error"
          },
          "5XX": {
            "description": "Service or upstream failure"
          }
        },
        "requestBody": {
          "required": false,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "properties": {
                  "url": {
                    "description": "Observed request key. See guide for nested formats and constraints."
                  },
                  "muted": {
                    "description": "Observed request key. See guide for nested formats and constraints."
                  },
                  "push": {
                    "description": "Observed request key. See guide for nested formats and constraints."
                  }
                },
                "additionalProperties": true
              }
            }
          }
        }
      }
    },
    "/bonfire/instances/challenge": {
      "post": {
        "operationId": "post_bonfire_instances_challenge",
        "tags": [
          "bonfire-identity"
        ],
        "summary": "POST /bonfire/instances/challenge",
        "description": "Instance-only: used by bonfire-server to register itself (single-use nonce). Not for clients. Request keys are observed in the implementation; unknown types are deliberately unconstrained. Server-side validation, membership, roles, privacy and rank checks still apply.",
        "x-velora-scopes": {},
        "x-captcha-required": false,
        "x-velora-legacy": false,
        "deprecated": false,
        "security": [],
        "parameters": [],
        "responses": {
          "2XX": {
            "description": "Endpoint-specific JSON, text, binary, redirect or empty success; see the guide. No exhaustive response schema is asserted."
          },
          "4XX": {
            "description": "Invalid input, authorization, scope, role, privacy, quota or rate-limit error"
          },
          "5XX": {
            "description": "Service or upstream failure"
          }
        },
        "requestBody": {
          "required": false,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "properties": {
                  "pubkey": {
                    "description": "Observed request key. See guide for nested formats and constraints."
                  },
                  "url": {
                    "description": "Observed request key. See guide for nested formats and constraints."
                  }
                },
                "additionalProperties": true
              }
            }
          }
        }
      }
    },
    "/bonfire/instances/register": {
      "post": {
        "operationId": "post_bonfire_instances_register",
        "tags": [
          "bonfire-identity"
        ],
        "summary": "POST /bonfire/instances/register",
        "description": "Instance-only: a bonfire-server proves control of its key and URL here. Not for clients. Request keys are observed in the implementation; unknown types are deliberately unconstrained. Server-side validation, membership, roles, privacy and rank checks still apply.",
        "x-velora-scopes": {},
        "x-captcha-required": false,
        "x-velora-legacy": false,
        "deprecated": false,
        "security": [],
        "parameters": [],
        "responses": {
          "2XX": {
            "description": "Endpoint-specific JSON, text, binary, redirect or empty success; see the guide. No exhaustive response schema is asserted."
          },
          "4XX": {
            "description": "Invalid input, authorization, scope, role, privacy, quota or rate-limit error"
          },
          "5XX": {
            "description": "Service or upstream failure"
          }
        },
        "requestBody": {
          "required": false,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "properties": {
                  "accounts_mode": {
                    "description": "Observed request key. See guide for nested formats and constraints."
                  },
                  "name": {
                    "description": "Observed request key. See guide for nested formats and constraints."
                  },
                  "nonce": {
                    "description": "Observed request key. See guide for nested formats and constraints."
                  },
                  "pubkey": {
                    "description": "Observed request key. See guide for nested formats and constraints."
                  },
                  "sig": {
                    "description": "Observed request key. See guide for nested formats and constraints."
                  },
                  "url": {
                    "description": "Observed request key. See guide for nested formats and constraints."
                  }
                },
                "additionalProperties": true
              }
            }
          }
        }
      }
    },
    "/bonfire/instances/payout": {
      "post": {
        "operationId": "post_bonfire_instances_payout",
        "tags": [
          "bonfire-identity"
        ],
        "summary": "POST /bonfire/instances/payout",
        "description": "Needs Chat. Body {attestation}: the instance owner links payouts (credits from role shops) using GET INSTANCE/api/v1/instance/owner-attestation. Request keys are observed in the implementation; unknown types are deliberately unconstrained. Server-side validation, membership, roles, privacy and rank checks still apply.",
        "x-velora-scopes": {
          "CHAT": 2048
        },
        "x-captcha-required": false,
        "x-velora-legacy": false,
        "deprecated": false,
        "security": [
          {
            "UserToken": []
          }
        ],
        "parameters": [],
        "responses": {
          "2XX": {
            "description": "Endpoint-specific JSON, text, binary, redirect or empty success; see the guide. No exhaustive response schema is asserted."
          },
          "4XX": {
            "description": "Invalid input, authorization, scope, role, privacy, quota or rate-limit error"
          },
          "5XX": {
            "description": "Service or upstream failure"
          }
        },
        "requestBody": {
          "required": false,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "properties": {
                  "attestation": {
                    "description": "Observed request key. See guide for nested formats and constraints."
                  }
                },
                "additionalProperties": true
              }
            }
          }
        }
      },
      "get": {
        "operationId": "get_bonfire_instances_payout",
        "tags": [
          "bonfire-identity"
        ],
        "summary": "GET /bonfire/instances/payout",
        "description": "Needs Chat, query url. Who receives shop payments for an instance; only the registered owner can read it. Request keys are observed in the implementation; unknown types are deliberately unconstrained. Server-side validation, membership, roles, privacy and rank checks still apply.",
        "x-velora-scopes": {
          "CHAT": 2048
        },
        "x-captcha-required": false,
        "x-velora-legacy": false,
        "deprecated": false,
        "security": [
          {
            "UserToken": []
          }
        ],
        "parameters": [
          {
            "name": "url",
            "in": "query",
            "required": false,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "2XX": {
            "description": "Endpoint-specific JSON, text, binary, redirect or empty success; see the guide. No exhaustive response schema is asserted."
          },
          "4XX": {
            "description": "Invalid input, authorization, scope, role, privacy, quota or rate-limit error"
          },
          "5XX": {
            "description": "Service or upstream failure"
          }
        }
      }
    },
    "/bonfire/signing-key": {
      "get": {
        "operationId": "get_bonfire_signing_key",
        "tags": [
          "bonfire-signing"
        ],
        "summary": "GET /bonfire/signing-key",
        "description": "Needs Sign Messages (32768). Returns {kid, public_key, private_key, created_at} (no-store). One Ed25519 key per account, created on first use. Keep the private key in memory only. Request keys are observed in the implementation; unknown types are deliberately unconstrained. Server-side validation, membership, roles, privacy and rank checks still apply.",
        "x-velora-scopes": {
          "SIGN_MESSAGES": 32768
        },
        "x-captcha-required": false,
        "x-velora-legacy": false,
        "deprecated": false,
        "security": [
          {
            "UserToken": []
          }
        ],
        "parameters": [],
        "responses": {
          "2XX": {
            "description": "Endpoint-specific JSON, text, binary, redirect or empty success; see the guide. No exhaustive response schema is asserted."
          },
          "4XX": {
            "description": "Invalid input, authorization, scope, role, privacy, quota or rate-limit error"
          },
          "5XX": {
            "description": "Service or upstream failure"
          }
        }
      }
    },
    "/bonfire/signing-key/rotate": {
      "post": {
        "operationId": "post_bonfire_signing_key_rotate",
        "tags": [
          "bonfire-signing"
        ],
        "summary": "POST /bonfire/signing-key/rotate",
        "description": "Website session only; an app or project token is refused. Revokes the active key and returns a new {kid, public_key, created_at}. Old messages stay valid. Request keys are observed in the implementation; unknown types are deliberately unconstrained. Server-side validation, membership, roles, privacy and rank checks still apply.",
        "x-velora-scopes": {},
        "x-captcha-required": false,
        "x-velora-legacy": false,
        "deprecated": false,
        "security": [
          {
            "UserToken": []
          }
        ],
        "parameters": [],
        "responses": {
          "2XX": {
            "description": "Endpoint-specific JSON, text, binary, redirect or empty success; see the guide. No exhaustive response schema is asserted."
          },
          "4XX": {
            "description": "Invalid input, authorization, scope, role, privacy, quota or rate-limit error"
          },
          "5XX": {
            "description": "Service or upstream failure"
          }
        }
      }
    },
    "/bonfire/signing-key/info": {
      "get": {
        "operationId": "get_bonfire_signing_key_info",
        "tags": [
          "bonfire-signing"
        ],
        "summary": "GET /bonfire/signing-key/info",
        "description": "Information about the signed-in account key without the private half. Request keys are observed in the implementation; unknown types are deliberately unconstrained. Server-side validation, membership, roles, privacy and rank checks still apply.",
        "x-velora-scopes": {},
        "x-captcha-required": false,
        "x-velora-legacy": false,
        "deprecated": false,
        "security": [
          {
            "UserToken": []
          }
        ],
        "parameters": [],
        "responses": {
          "2XX": {
            "description": "Endpoint-specific JSON, text, binary, redirect or empty success; see the guide. No exhaustive response schema is asserted."
          },
          "4XX": {
            "description": "Invalid input, authorization, scope, role, privacy, quota or rate-limit error"
          },
          "5XX": {
            "description": "Service or upstream failure"
          }
        }
      }
    },
    "/bonfire/import/platforms": {
      "get": {
        "operationId": "get_bonfire_import_platforms",
        "tags": [
          "bonfire-services"
        ],
        "summary": "GET /bonfire/import/platforms",
        "description": "Request keys are observed in the implementation; unknown types are deliberately unconstrained. Server-side validation, membership, roles, privacy and rank checks still apply.",
        "x-velora-scopes": {
          "CHAT": 2048
        },
        "x-captcha-required": false,
        "x-velora-legacy": false,
        "deprecated": false,
        "security": [
          {
            "UserToken": []
          }
        ],
        "parameters": [],
        "responses": {
          "2XX": {
            "description": "Endpoint-specific JSON, text, binary, redirect or empty success; see the guide. No exhaustive response schema is asserted."
          },
          "4XX": {
            "description": "Invalid input, authorization, scope, role, privacy, quota or rate-limit error"
          },
          "5XX": {
            "description": "Service or upstream failure"
          }
        }
      }
    },
    "/bonfire/import/{platform}/guilds": {
      "get": {
        "operationId": "get_bonfire_import_by_platform_guilds",
        "tags": [
          "bonfire-services"
        ],
        "summary": "GET /bonfire/import/:platform/guilds",
        "description": "Request keys are observed in the implementation; unknown types are deliberately unconstrained. Server-side validation, membership, roles, privacy and rank checks still apply.",
        "x-velora-scopes": {
          "CHAT": 2048
        },
        "x-captcha-required": false,
        "x-velora-legacy": false,
        "deprecated": false,
        "security": [
          {
            "UserToken": []
          }
        ],
        "parameters": [
          {
            "name": "platform",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "2XX": {
            "description": "Endpoint-specific JSON, text, binary, redirect or empty success; see the guide. No exhaustive response schema is asserted."
          },
          "4XX": {
            "description": "Invalid input, authorization, scope, role, privacy, quota or rate-limit error"
          },
          "5XX": {
            "description": "Service or upstream failure"
          }
        }
      }
    },
    "/bonfire/import/{platform}/guilds/{gid}": {
      "get": {
        "operationId": "get_bonfire_import_by_platform_guilds_by_gid",
        "tags": [
          "bonfire-services"
        ],
        "summary": "GET /bonfire/import/:platform/guilds/:gid",
        "description": "Request keys are observed in the implementation; unknown types are deliberately unconstrained. Server-side validation, membership, roles, privacy and rank checks still apply.",
        "x-velora-scopes": {
          "CHAT": 2048
        },
        "x-captcha-required": false,
        "x-velora-legacy": false,
        "deprecated": false,
        "security": [
          {
            "UserToken": []
          }
        ],
        "parameters": [
          {
            "name": "platform",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "gid",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "2XX": {
            "description": "Endpoint-specific JSON, text, binary, redirect or empty success; see the guide. No exhaustive response schema is asserted."
          },
          "4XX": {
            "description": "Invalid input, authorization, scope, role, privacy, quota or rate-limit error"
          },
          "5XX": {
            "description": "Service or upstream failure"
          }
        }
      }
    },
    "/bonfire/import": {
      "post": {
        "operationId": "post_bonfire_import",
        "tags": [
          "bonfire-services"
        ],
        "summary": "POST /bonfire/import",
        "description": "Needs Chat. Body {platform, guild_id, channels, roles, options?, instance}. Starts a background job that builds a bonfire-export-v1 zip (channels, roles, emoji; no members or messages) and returns {job_id, ticket, instance, expires_at}. The one-time ticket goes to POST INSTANCE/api/v1/import/velora. Request keys are observed in the implementation; unknown types are deliberately unconstrained. Server-side validation, membership, roles, privacy and rank checks still apply.",
        "x-velora-scopes": {
          "CHAT": 2048
        },
        "x-captcha-required": false,
        "x-velora-legacy": false,
        "deprecated": false,
        "security": [
          {
            "UserToken": []
          }
        ],
        "parameters": [],
        "responses": {
          "2XX": {
            "description": "Endpoint-specific JSON, text, binary, redirect or empty success; see the guide. No exhaustive response schema is asserted."
          },
          "4XX": {
            "description": "Invalid input, authorization, scope, role, privacy, quota or rate-limit error"
          },
          "5XX": {
            "description": "Service or upstream failure"
          }
        }
      }
    },
    "/bonfire/import/{job_id}": {
      "get": {
        "operationId": "get_bonfire_import_by_job_id",
        "tags": [
          "bonfire-services"
        ],
        "summary": "GET /bonfire/import/:job_id",
        "description": "Needs Chat. Job state {status, progress, stage, error, instance, size, expires_at, downloaded}. Owner only. Request keys are observed in the implementation; unknown types are deliberately unconstrained. Server-side validation, membership, roles, privacy and rank checks still apply.",
        "x-velora-scopes": {
          "CHAT": 2048
        },
        "x-captcha-required": false,
        "x-velora-legacy": false,
        "deprecated": false,
        "security": [
          {
            "UserToken": []
          }
        ],
        "parameters": [
          {
            "name": "job_id",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "2XX": {
            "description": "Endpoint-specific JSON, text, binary, redirect or empty success; see the guide. No exhaustive response schema is asserted."
          },
          "4XX": {
            "description": "Invalid input, authorization, scope, role, privacy, quota or rate-limit error"
          },
          "5XX": {
            "description": "Service or upstream failure"
          }
        }
      }
    },
    "/bonfire/directory": {
      "get": {
        "operationId": "get_bonfire_directory",
        "tags": [
          "bonfire-services"
        ],
        "summary": "GET /bonfire/directory",
        "description": "Public, CORS open. Query q, page. Returns {page, page_size: 24, has_more, results: [{id, url, name, description, icon_url, member_count, invite_url, tags, trusted, updated_at}]}. Treat every field as untrusted text. Request keys are observed in the implementation; unknown types are deliberately unconstrained. Server-side validation, membership, roles, privacy and rank checks still apply.",
        "x-velora-scopes": {},
        "x-captcha-required": false,
        "x-velora-legacy": false,
        "deprecated": false,
        "security": [],
        "parameters": [
          {
            "name": "page",
            "in": "query",
            "required": false,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "q",
            "in": "query",
            "required": false,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "2XX": {
            "description": "Endpoint-specific JSON, text, binary, redirect or empty success; see the guide. No exhaustive response schema is asserted."
          },
          "4XX": {
            "description": "Invalid input, authorization, scope, role, privacy, quota or rate-limit error"
          },
          "5XX": {
            "description": "Service or upstream failure"
          }
        }
      }
    },
    "/bonfire/pay-requests/{id}/approve": {
      "post": {
        "operationId": "post_bonfire_pay_requests_by_id_approve",
        "tags": [
          "bonfire-services"
        ],
        "summary": "POST /bonfire/pay-requests/:id/approve",
        "description": "Needs Currency Pay (1024) and a CAPTCHA pass. Pays a role-shop request an instance made. Do not auto-approve for the user. Request keys are observed in the implementation; unknown types are deliberately unconstrained. Server-side validation, membership, roles, privacy and rank checks still apply.",
        "x-velora-scopes": {
          "CURRENCY_PAY": 1024
        },
        "x-captcha-required": true,
        "x-velora-legacy": false,
        "deprecated": false,
        "security": [
          {
            "UserToken": []
          }
        ],
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "2XX": {
            "description": "Endpoint-specific JSON, text, binary, redirect or empty success; see the guide. No exhaustive response schema is asserted."
          },
          "4XX": {
            "description": "Invalid input, authorization, scope, role, privacy, quota or rate-limit error"
          },
          "5XX": {
            "description": "Service or upstream failure"
          }
        },
        "requestBody": {
          "required": false,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "properties": {
                  "captcha_token": {
                    "description": "Observed request key. See guide for nested formats and constraints."
                  }
                },
                "additionalProperties": true
              }
            }
          }
        }
      }
    },
    "/bonfire/pay-requests/{id}/decline": {
      "post": {
        "operationId": "post_bonfire_pay_requests_by_id_decline",
        "tags": [
          "bonfire-services"
        ],
        "summary": "POST /bonfire/pay-requests/:id/decline",
        "description": "Needs Currency Pay. Only the payer can decline. Request keys are observed in the implementation; unknown types are deliberately unconstrained. Server-side validation, membership, roles, privacy and rank checks still apply.",
        "x-velora-scopes": {
          "CURRENCY_PAY": 1024
        },
        "x-captcha-required": false,
        "x-velora-legacy": false,
        "deprecated": false,
        "security": [
          {
            "UserToken": []
          }
        ],
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "2XX": {
            "description": "Endpoint-specific JSON, text, binary, redirect or empty success; see the guide. No exhaustive response schema is asserted."
          },
          "4XX": {
            "description": "Invalid input, authorization, scope, role, privacy, quota or rate-limit error"
          },
          "5XX": {
            "description": "Service or upstream failure"
          }
        }
      }
    },
    "/bonfire/hosting/plans": {
      "get": {
        "operationId": "get_bonfire_hosting_plans",
        "tags": [
          "bonfire-hosting"
        ],
        "summary": "GET /bonfire/hosting/plans",
        "description": "Request keys are observed in the implementation; unknown types are deliberately unconstrained. Server-side validation, membership, roles, privacy and rank checks still apply.",
        "x-velora-scopes": {},
        "x-captcha-required": false,
        "x-velora-legacy": false,
        "deprecated": false,
        "security": [],
        "parameters": [],
        "responses": {
          "2XX": {
            "description": "Endpoint-specific JSON, text, binary, redirect or empty success; see the guide. No exhaustive response schema is asserted."
          },
          "4XX": {
            "description": "Invalid input, authorization, scope, role, privacy, quota or rate-limit error"
          },
          "5XX": {
            "description": "Service or upstream failure"
          }
        }
      }
    },
    "/bonfire/hosting/slug/{slug}": {
      "get": {
        "operationId": "get_bonfire_hosting_slug_by_slug",
        "tags": [
          "bonfire-hosting"
        ],
        "summary": "GET /bonfire/hosting/slug/:slug",
        "description": "Request keys are observed in the implementation; unknown types are deliberately unconstrained. Server-side validation, membership, roles, privacy and rank checks still apply.",
        "x-velora-scopes": {
          "CHAT": 2048
        },
        "x-captcha-required": false,
        "x-velora-legacy": false,
        "deprecated": false,
        "security": [
          {
            "UserToken": []
          }
        ],
        "parameters": [
          {
            "name": "slug",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "2XX": {
            "description": "Endpoint-specific JSON, text, binary, redirect or empty success; see the guide. No exhaustive response schema is asserted."
          },
          "4XX": {
            "description": "Invalid input, authorization, scope, role, privacy, quota or rate-limit error"
          },
          "5XX": {
            "description": "Service or upstream failure"
          }
        }
      }
    },
    "/bonfire/hosting/servers": {
      "post": {
        "operationId": "post_bonfire_hosting_servers",
        "tags": [
          "bonfire-hosting"
        ],
        "summary": "POST /bonfire/hosting/servers",
        "description": "Request keys are observed in the implementation; unknown types are deliberately unconstrained. Server-side validation, membership, roles, privacy and rank checks still apply.",
        "x-velora-scopes": {
          "CHAT": 2048
        },
        "x-captcha-required": false,
        "x-velora-legacy": false,
        "deprecated": false,
        "security": [
          {
            "UserToken": []
          }
        ],
        "parameters": [],
        "responses": {
          "2XX": {
            "description": "Endpoint-specific JSON, text, binary, redirect or empty success; see the guide. No exhaustive response schema is asserted."
          },
          "4XX": {
            "description": "Invalid input, authorization, scope, role, privacy, quota or rate-limit error"
          },
          "5XX": {
            "description": "Service or upstream failure"
          }
        },
        "requestBody": {
          "required": false,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "properties": {
                  "slug": {
                    "description": "Observed request key. See guide for nested formats and constraints."
                  },
                  "name": {
                    "description": "Observed request key. See guide for nested formats and constraints."
                  },
                  "plan": {
                    "description": "Observed request key. See guide for nested formats and constraints."
                  },
                  "weeks": {
                    "description": "Observed request key. See guide for nested formats and constraints."
                  },
                  "restore_backup": {
                    "description": "Observed request key. See guide for nested formats and constraints."
                  }
                },
                "additionalProperties": true
              }
            }
          }
        }
      },
      "get": {
        "operationId": "get_bonfire_hosting_servers",
        "tags": [
          "bonfire-hosting"
        ],
        "summary": "GET /bonfire/hosting/servers",
        "description": "Request keys are observed in the implementation; unknown types are deliberately unconstrained. Server-side validation, membership, roles, privacy and rank checks still apply.",
        "x-velora-scopes": {
          "CHAT": 2048
        },
        "x-captcha-required": false,
        "x-velora-legacy": false,
        "deprecated": false,
        "security": [
          {
            "UserToken": []
          }
        ],
        "parameters": [],
        "responses": {
          "2XX": {
            "description": "Endpoint-specific JSON, text, binary, redirect or empty success; see the guide. No exhaustive response schema is asserted."
          },
          "4XX": {
            "description": "Invalid input, authorization, scope, role, privacy, quota or rate-limit error"
          },
          "5XX": {
            "description": "Service or upstream failure"
          }
        }
      }
    },
    "/bonfire/hosting/servers/by-url": {
      "get": {
        "operationId": "get_bonfire_hosting_servers_by_url",
        "tags": [
          "bonfire-hosting"
        ],
        "summary": "GET /bonfire/hosting/servers/by-url",
        "description": "Request keys are observed in the implementation; unknown types are deliberately unconstrained. Server-side validation, membership, roles, privacy and rank checks still apply.",
        "x-velora-scopes": {
          "CHAT": 2048
        },
        "x-captcha-required": false,
        "x-velora-legacy": false,
        "deprecated": false,
        "security": [
          {
            "UserToken": []
          }
        ],
        "parameters": [
          {
            "name": "url",
            "in": "query",
            "required": false,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "2XX": {
            "description": "Endpoint-specific JSON, text, binary, redirect or empty success; see the guide. No exhaustive response schema is asserted."
          },
          "4XX": {
            "description": "Invalid input, authorization, scope, role, privacy, quota or rate-limit error"
          },
          "5XX": {
            "description": "Service or upstream failure"
          }
        }
      }
    },
    "/bonfire/hosting/servers/{slug}/weeks": {
      "post": {
        "operationId": "post_bonfire_hosting_servers_by_slug_weeks",
        "tags": [
          "bonfire-hosting"
        ],
        "summary": "POST /bonfire/hosting/servers/:slug/weeks",
        "description": "Request keys are observed in the implementation; unknown types are deliberately unconstrained. Server-side validation, membership, roles, privacy and rank checks still apply.",
        "x-velora-scopes": {},
        "x-captcha-required": false,
        "x-velora-legacy": false,
        "deprecated": false,
        "security": [
          {
            "UserToken": []
          }
        ],
        "parameters": [
          {
            "name": "slug",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "2XX": {
            "description": "Endpoint-specific JSON, text, binary, redirect or empty success; see the guide. No exhaustive response schema is asserted."
          },
          "4XX": {
            "description": "Invalid input, authorization, scope, role, privacy, quota or rate-limit error"
          },
          "5XX": {
            "description": "Service or upstream failure"
          }
        },
        "requestBody": {
          "required": false,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "properties": {
                  "weeks": {
                    "description": "Observed request key. See guide for nested formats and constraints."
                  }
                },
                "additionalProperties": true
              }
            }
          }
        }
      }
    },
    "/bonfire/hosting/servers/{slug}": {
      "patch": {
        "operationId": "patch_bonfire_hosting_servers_by_slug",
        "tags": [
          "bonfire-hosting"
        ],
        "summary": "PATCH /bonfire/hosting/servers/:slug",
        "description": "Request keys are observed in the implementation; unknown types are deliberately unconstrained. Server-side validation, membership, roles, privacy and rank checks still apply.",
        "x-velora-scopes": {
          "CHAT": 2048
        },
        "x-captcha-required": false,
        "x-velora-legacy": false,
        "deprecated": false,
        "security": [
          {
            "UserToken": []
          }
        ],
        "parameters": [
          {
            "name": "slug",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "2XX": {
            "description": "Endpoint-specific JSON, text, binary, redirect or empty success; see the guide. No exhaustive response schema is asserted."
          },
          "4XX": {
            "description": "Invalid input, authorization, scope, role, privacy, quota or rate-limit error"
          },
          "5XX": {
            "description": "Service or upstream failure"
          }
        },
        "requestBody": {
          "required": false,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "properties": {
                  "plan": {
                    "description": "Observed request key. See guide for nested formats and constraints."
                  }
                },
                "additionalProperties": true
              }
            }
          }
        }
      },
      "delete": {
        "operationId": "delete_bonfire_hosting_servers_by_slug",
        "tags": [
          "bonfire-hosting"
        ],
        "summary": "DELETE /bonfire/hosting/servers/:slug",
        "description": "Request keys are observed in the implementation; unknown types are deliberately unconstrained. Server-side validation, membership, roles, privacy and rank checks still apply.",
        "x-velora-scopes": {
          "CHAT": 2048
        },
        "x-captcha-required": false,
        "x-velora-legacy": false,
        "deprecated": false,
        "security": [
          {
            "UserToken": []
          }
        ],
        "parameters": [
          {
            "name": "slug",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "2XX": {
            "description": "Endpoint-specific JSON, text, binary, redirect or empty success; see the guide. No exhaustive response schema is asserted."
          },
          "4XX": {
            "description": "Invalid input, authorization, scope, role, privacy, quota or rate-limit error"
          },
          "5XX": {
            "description": "Service or upstream failure"
          }
        },
        "requestBody": {
          "required": false,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "properties": {
                  "confirm": {
                    "description": "Observed request key. See guide for nested formats and constraints."
                  }
                },
                "additionalProperties": true
              }
            }
          }
        }
      }
    },
    "/bonfire/hosting/servers/{slug}/restart": {
      "post": {
        "operationId": "post_bonfire_hosting_servers_by_slug_restart",
        "tags": [
          "bonfire-hosting"
        ],
        "summary": "POST /bonfire/hosting/servers/:slug/restart",
        "description": "Request keys are observed in the implementation; unknown types are deliberately unconstrained. Server-side validation, membership, roles, privacy and rank checks still apply.",
        "x-velora-scopes": {
          "CHAT": 2048
        },
        "x-captcha-required": false,
        "x-velora-legacy": false,
        "deprecated": false,
        "security": [
          {
            "UserToken": []
          }
        ],
        "parameters": [
          {
            "name": "slug",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "2XX": {
            "description": "Endpoint-specific JSON, text, binary, redirect or empty success; see the guide. No exhaustive response schema is asserted."
          },
          "4XX": {
            "description": "Invalid input, authorization, scope, role, privacy, quota or rate-limit error"
          },
          "5XX": {
            "description": "Service or upstream failure"
          }
        }
      }
    },
    "/bonfire/hosting/backups/upload": {
      "post": {
        "operationId": "post_bonfire_hosting_backups_upload",
        "tags": [
          "bonfire-hosting"
        ],
        "summary": "POST /bonfire/hosting/backups/upload",
        "description": "Request keys are observed in the implementation; unknown types are deliberately unconstrained. Server-side validation, membership, roles, privacy and rank checks still apply.",
        "x-velora-scopes": {
          "CHAT": 2048
        },
        "x-captcha-required": false,
        "x-velora-legacy": false,
        "deprecated": false,
        "security": [
          {
            "UserToken": []
          }
        ],
        "parameters": [],
        "responses": {
          "2XX": {
            "description": "Endpoint-specific JSON, text, binary, redirect or empty success; see the guide. No exhaustive response schema is asserted."
          },
          "4XX": {
            "description": "Invalid input, authorization, scope, role, privacy, quota or rate-limit error"
          },
          "5XX": {
            "description": "Service or upstream failure"
          }
        },
        "requestBody": {
          "required": false,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "properties": {
                  "name": {
                    "description": "Observed request key. See guide for nested formats and constraints."
                  },
                  "url": {
                    "description": "Observed request key. See guide for nested formats and constraints."
                  },
                  "slug": {
                    "description": "Observed request key. See guide for nested formats and constraints."
                  }
                },
                "additionalProperties": true
              }
            },
            "multipart/form-data": {
              "schema": {
                "type": "object",
                "properties": {
                  "name": {
                    "description": "Observed request key. See guide for nested formats and constraints."
                  },
                  "url": {
                    "description": "Observed request key. See guide for nested formats and constraints."
                  },
                  "slug": {
                    "description": "Observed request key. See guide for nested formats and constraints."
                  },
                  "file": {
                    "type": "string",
                    "format": "binary"
                  }
                },
                "additionalProperties": true
              }
            }
          }
        }
      }
    },
    "/bonfire/hosting/servers/{slug}/backup": {
      "post": {
        "operationId": "post_bonfire_hosting_servers_by_slug_backup",
        "tags": [
          "bonfire-hosting"
        ],
        "summary": "POST /bonfire/hosting/servers/:slug/backup",
        "description": "Request keys are observed in the implementation; unknown types are deliberately unconstrained. Server-side validation, membership, roles, privacy and rank checks still apply.",
        "x-velora-scopes": {
          "CHAT": 2048
        },
        "x-captcha-required": false,
        "x-velora-legacy": false,
        "deprecated": false,
        "security": [
          {
            "UserToken": []
          }
        ],
        "parameters": [
          {
            "name": "slug",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "2XX": {
            "description": "Endpoint-specific JSON, text, binary, redirect or empty success; see the guide. No exhaustive response schema is asserted."
          },
          "4XX": {
            "description": "Invalid input, authorization, scope, role, privacy, quota or rate-limit error"
          },
          "5XX": {
            "description": "Service or upstream failure"
          }
        }
      }
    },
    "/bonfire/hosting/backups": {
      "get": {
        "operationId": "get_bonfire_hosting_backups",
        "tags": [
          "bonfire-hosting"
        ],
        "summary": "GET /bonfire/hosting/backups",
        "description": "Request keys are observed in the implementation; unknown types are deliberately unconstrained. Server-side validation, membership, roles, privacy and rank checks still apply.",
        "x-velora-scopes": {
          "CHAT": 2048
        },
        "x-captcha-required": false,
        "x-velora-legacy": false,
        "deprecated": false,
        "security": [
          {
            "UserToken": []
          }
        ],
        "parameters": [],
        "responses": {
          "2XX": {
            "description": "Endpoint-specific JSON, text, binary, redirect or empty success; see the guide. No exhaustive response schema is asserted."
          },
          "4XX": {
            "description": "Invalid input, authorization, scope, role, privacy, quota or rate-limit error"
          },
          "5XX": {
            "description": "Service or upstream failure"
          }
        }
      }
    },
    "/bonfire/hosting/backups/{id}/download": {
      "get": {
        "operationId": "get_bonfire_hosting_backups_by_id_download",
        "tags": [
          "bonfire-hosting"
        ],
        "summary": "GET /bonfire/hosting/backups/:id/download",
        "description": "Request keys are observed in the implementation; unknown types are deliberately unconstrained. Server-side validation, membership, roles, privacy and rank checks still apply.",
        "x-velora-scopes": {
          "CHAT": 2048
        },
        "x-captcha-required": false,
        "x-velora-legacy": false,
        "deprecated": false,
        "security": [
          {
            "UserToken": []
          }
        ],
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "2XX": {
            "description": "Endpoint-specific JSON, text, binary, redirect or empty success; see the guide. No exhaustive response schema is asserted."
          },
          "4XX": {
            "description": "Invalid input, authorization, scope, role, privacy, quota or rate-limit error"
          },
          "5XX": {
            "description": "Service or upstream failure"
          }
        }
      }
    },
    "/bonfire/hosting/backups/{id}": {
      "delete": {
        "operationId": "delete_bonfire_hosting_backups_by_id",
        "tags": [
          "bonfire-hosting"
        ],
        "summary": "DELETE /bonfire/hosting/backups/:id",
        "description": "Request keys are observed in the implementation; unknown types are deliberately unconstrained. Server-side validation, membership, roles, privacy and rank checks still apply.",
        "x-velora-scopes": {
          "CHAT": 2048
        },
        "x-captcha-required": false,
        "x-velora-legacy": false,
        "deprecated": false,
        "security": [
          {
            "UserToken": []
          }
        ],
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "2XX": {
            "description": "Endpoint-specific JSON, text, binary, redirect or empty success; see the guide. No exhaustive response schema is asserted."
          },
          "4XX": {
            "description": "Invalid input, authorization, scope, role, privacy, quota or rate-limit error"
          },
          "5XX": {
            "description": "Service or upstream failure"
          }
        }
      }
    },
    "/admin/maintenance": {
      "get": {
        "operationId": "get_admin_maintenance",
        "tags": [
          "maintenance"
        ],
        "summary": "GET /admin/maintenance",
        "description": "Staff authorization required. Request keys are observed in the implementation; unknown types are deliberately unconstrained. Server-side validation, membership, roles, privacy and rank checks still apply.",
        "x-velora-scopes": {},
        "x-captcha-required": false,
        "x-velora-legacy": false,
        "deprecated": false,
        "security": [
          {
            "UserToken": []
          }
        ],
        "parameters": [],
        "responses": {
          "2XX": {
            "description": "Endpoint-specific JSON, text, binary, redirect or empty success; see the guide. No exhaustive response schema is asserted."
          },
          "4XX": {
            "description": "Invalid input, authorization, scope, role, privacy, quota or rate-limit error"
          },
          "5XX": {
            "description": "Service or upstream failure"
          }
        }
      },
      "put": {
        "operationId": "put_admin_maintenance",
        "tags": [
          "maintenance"
        ],
        "summary": "PUT /admin/maintenance",
        "description": "Staff authorization required. Request keys are observed in the implementation; unknown types are deliberately unconstrained. Server-side validation, membership, roles, privacy and rank checks still apply.",
        "x-velora-scopes": {},
        "x-captcha-required": false,
        "x-velora-legacy": false,
        "deprecated": false,
        "security": [
          {
            "UserToken": []
          }
        ],
        "parameters": [],
        "responses": {
          "2XX": {
            "description": "Endpoint-specific JSON, text, binary, redirect or empty success; see the guide. No exhaustive response schema is asserted."
          },
          "4XX": {
            "description": "Invalid input, authorization, scope, role, privacy, quota or rate-limit error"
          },
          "5XX": {
            "description": "Service or upstream failure"
          }
        }
      }
    },
    "/admin/maintenance/bypass": {
      "post": {
        "operationId": "post_admin_maintenance_bypass",
        "tags": [
          "maintenance"
        ],
        "summary": "POST /admin/maintenance/bypass",
        "description": "Staff authorization required. Request keys are observed in the implementation; unknown types are deliberately unconstrained. Server-side validation, membership, roles, privacy and rank checks still apply.",
        "x-velora-scopes": {},
        "x-captcha-required": false,
        "x-velora-legacy": false,
        "deprecated": false,
        "security": [
          {
            "UserToken": []
          }
        ],
        "parameters": [],
        "responses": {
          "2XX": {
            "description": "Endpoint-specific JSON, text, binary, redirect or empty success; see the guide. No exhaustive response schema is asserted."
          },
          "4XX": {
            "description": "Invalid input, authorization, scope, role, privacy, quota or rate-limit error"
          },
          "5XX": {
            "description": "Service or upstream failure"
          }
        }
      }
    },
    "/auth/ext-code": {
      "post": {
        "operationId": "post_auth_ext_code",
        "tags": [
          "auth"
        ],
        "summary": "POST /auth/ext-code",
        "description": "Request keys are observed in the implementation; unknown types are deliberately unconstrained. Server-side validation, membership, roles, privacy and rank checks still apply.",
        "x-velora-scopes": {},
        "x-captcha-required": false,
        "x-velora-legacy": false,
        "deprecated": false,
        "security": [],
        "parameters": [],
        "responses": {
          "2XX": {
            "description": "Endpoint-specific JSON, text, binary, redirect or empty success; see the guide. No exhaustive response schema is asserted."
          },
          "4XX": {
            "description": "Invalid input, authorization, scope, role, privacy, quota or rate-limit error"
          },
          "5XX": {
            "description": "Service or upstream failure"
          }
        },
        "requestBody": {
          "required": false,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "properties": {
                  "permissions_integer": {
                    "description": "Observed request key. See guide for nested formats and constraints."
                  },
                  "project_name": {
                    "description": "Observed request key. See guide for nested formats and constraints."
                  }
                },
                "additionalProperties": true
              }
            }
          }
        }
      }
    },
    "/auth/ext-code/heartbeat": {
      "get": {
        "operationId": "get_auth_ext_code_heartbeat",
        "tags": [
          "auth"
        ],
        "summary": "GET /auth/ext-code/heartbeat",
        "description": "Request keys are observed in the implementation; unknown types are deliberately unconstrained. Server-side validation, membership, roles, privacy and rank checks still apply.",
        "x-velora-scopes": {},
        "x-captcha-required": false,
        "x-velora-legacy": false,
        "deprecated": false,
        "security": [],
        "parameters": [
          {
            "name": "code",
            "in": "query",
            "required": false,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "2XX": {
            "description": "Endpoint-specific JSON, text, binary, redirect or empty success; see the guide. No exhaustive response schema is asserted."
          },
          "4XX": {
            "description": "Invalid input, authorization, scope, role, privacy, quota or rate-limit error"
          },
          "5XX": {
            "description": "Service or upstream failure"
          }
        }
      }
    },
    "/auth/ext-code/info": {
      "get": {
        "operationId": "get_auth_ext_code_info",
        "tags": [
          "auth"
        ],
        "summary": "GET /auth/ext-code/info",
        "description": "Request keys are observed in the implementation; unknown types are deliberately unconstrained. Server-side validation, membership, roles, privacy and rank checks still apply.",
        "x-velora-scopes": {},
        "x-captcha-required": false,
        "x-velora-legacy": false,
        "deprecated": false,
        "security": [],
        "parameters": [
          {
            "name": "code",
            "in": "query",
            "required": false,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "2XX": {
            "description": "Endpoint-specific JSON, text, binary, redirect or empty success; see the guide. No exhaustive response schema is asserted."
          },
          "4XX": {
            "description": "Invalid input, authorization, scope, role, privacy, quota or rate-limit error"
          },
          "5XX": {
            "description": "Service or upstream failure"
          }
        }
      }
    },
    "/auth/ext-code/complete": {
      "post": {
        "operationId": "post_auth_ext_code_complete",
        "tags": [
          "auth"
        ],
        "summary": "POST /auth/ext-code/complete",
        "description": "Request keys are observed in the implementation; unknown types are deliberately unconstrained. Server-side validation, membership, roles, privacy and rank checks still apply.",
        "x-velora-scopes": {},
        "x-captcha-required": false,
        "x-velora-legacy": false,
        "deprecated": false,
        "security": [],
        "parameters": [],
        "responses": {
          "2XX": {
            "description": "Endpoint-specific JSON, text, binary, redirect or empty success; see the guide. No exhaustive response schema is asserted."
          },
          "4XX": {
            "description": "Invalid input, authorization, scope, role, privacy, quota or rate-limit error"
          },
          "5XX": {
            "description": "Service or upstream failure"
          }
        },
        "requestBody": {
          "required": false,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "properties": {
                  "code": {
                    "description": "Observed request key. See guide for nested formats and constraints."
                  },
                  "granted_scopes": {
                    "description": "Observed request key. See guide for nested formats and constraints."
                  },
                  "token": {
                    "description": "Observed request key. See guide for nested formats and constraints."
                  }
                },
                "additionalProperties": true
              }
            }
          }
        }
      }
    },
    "/auth/ext-code/status": {
      "get": {
        "operationId": "get_auth_ext_code_status",
        "tags": [
          "auth"
        ],
        "summary": "GET /auth/ext-code/status",
        "description": "Request keys are observed in the implementation; unknown types are deliberately unconstrained. Server-side validation, membership, roles, privacy and rank checks still apply.",
        "x-velora-scopes": {},
        "x-captcha-required": false,
        "x-velora-legacy": false,
        "deprecated": false,
        "security": [],
        "parameters": [
          {
            "name": "code",
            "in": "query",
            "required": false,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "2XX": {
            "description": "Endpoint-specific JSON, text, binary, redirect or empty success; see the guide. No exhaustive response schema is asserted."
          },
          "4XX": {
            "description": "Invalid input, authorization, scope, role, privacy, quota or rate-limit error"
          },
          "5XX": {
            "description": "Service or upstream failure"
          }
        }
      }
    },
    "/auth/register": {
      "post": {
        "operationId": "post_auth_register",
        "tags": [
          "auth"
        ],
        "summary": "POST /auth/register",
        "description": "Request keys are observed in the implementation; unknown types are deliberately unconstrained. Server-side validation, membership, roles, privacy and rank checks still apply.",
        "x-velora-scopes": {},
        "x-captcha-required": true,
        "x-velora-legacy": false,
        "deprecated": false,
        "security": [],
        "parameters": [],
        "responses": {
          "2XX": {
            "description": "Endpoint-specific JSON, text, binary, redirect or empty success; see the guide. No exhaustive response schema is asserted."
          },
          "4XX": {
            "description": "Invalid input, authorization, scope, role, privacy, quota or rate-limit error"
          },
          "5XX": {
            "description": "Service or upstream failure"
          }
        },
        "requestBody": {
          "required": false,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "properties": {
                  "email": {
                    "description": "Observed request key. See guide for nested formats and constraints."
                  },
                  "password": {
                    "description": "Observed request key. See guide for nested formats and constraints."
                  },
                  "tos_accepted": {
                    "description": "Observed request key. See guide for nested formats and constraints."
                  },
                  "username": {
                    "description": "Observed request key. See guide for nested formats and constraints."
                  },
                  "captcha_token": {
                    "description": "Observed request key. See guide for nested formats and constraints."
                  }
                },
                "additionalProperties": true
              }
            }
          }
        }
      }
    },
    "/auth/register/verify": {
      "post": {
        "operationId": "post_auth_register_verify",
        "tags": [
          "auth"
        ],
        "summary": "POST /auth/register/verify",
        "description": "Request keys are observed in the implementation; unknown types are deliberately unconstrained. Server-side validation, membership, roles, privacy and rank checks still apply.",
        "x-velora-scopes": {},
        "x-captcha-required": false,
        "x-velora-legacy": false,
        "deprecated": false,
        "security": [],
        "parameters": [],
        "responses": {
          "2XX": {
            "description": "Endpoint-specific JSON, text, binary, redirect or empty success; see the guide. No exhaustive response schema is asserted."
          },
          "4XX": {
            "description": "Invalid input, authorization, scope, role, privacy, quota or rate-limit error"
          },
          "5XX": {
            "description": "Service or upstream failure"
          }
        },
        "requestBody": {
          "required": false,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "properties": {
                  "code": {
                    "description": "Observed request key. See guide for nested formats and constraints."
                  },
                  "email": {
                    "description": "Observed request key. See guide for nested formats and constraints."
                  }
                },
                "additionalProperties": true
              }
            }
          }
        }
      }
    },
    "/auth/register/verify-link": {
      "post": {
        "operationId": "post_auth_register_verify_link",
        "tags": [
          "auth"
        ],
        "summary": "POST /auth/register/verify-link",
        "description": "Request keys are observed in the implementation; unknown types are deliberately unconstrained. Server-side validation, membership, roles, privacy and rank checks still apply.",
        "x-velora-scopes": {},
        "x-captcha-required": false,
        "x-velora-legacy": false,
        "deprecated": false,
        "security": [],
        "parameters": [],
        "responses": {
          "2XX": {
            "description": "Endpoint-specific JSON, text, binary, redirect or empty success; see the guide. No exhaustive response schema is asserted."
          },
          "4XX": {
            "description": "Invalid input, authorization, scope, role, privacy, quota or rate-limit error"
          },
          "5XX": {
            "description": "Service or upstream failure"
          }
        },
        "requestBody": {
          "required": false,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "properties": {
                  "token": {
                    "description": "Observed request key. See guide for nested formats and constraints."
                  }
                },
                "additionalProperties": true
              }
            }
          }
        }
      }
    },
    "/auth/register/status": {
      "post": {
        "operationId": "post_auth_register_status",
        "tags": [
          "auth"
        ],
        "summary": "POST /auth/register/status",
        "description": "Request keys are observed in the implementation; unknown types are deliberately unconstrained. Server-side validation, membership, roles, privacy and rank checks still apply.",
        "x-velora-scopes": {},
        "x-captcha-required": false,
        "x-velora-legacy": false,
        "deprecated": false,
        "security": [],
        "parameters": [],
        "responses": {
          "2XX": {
            "description": "Endpoint-specific JSON, text, binary, redirect or empty success; see the guide. No exhaustive response schema is asserted."
          },
          "4XX": {
            "description": "Invalid input, authorization, scope, role, privacy, quota or rate-limit error"
          },
          "5XX": {
            "description": "Service or upstream failure"
          }
        },
        "requestBody": {
          "required": false,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "properties": {
                  "claim_token": {
                    "description": "Observed request key. See guide for nested formats and constraints."
                  },
                  "email": {
                    "description": "Observed request key. See guide for nested formats and constraints."
                  },
                  "verify_token": {
                    "description": "Observed request key. See guide for nested formats and constraints."
                  }
                },
                "additionalProperties": true
              }
            }
          }
        }
      }
    },
    "/auth/register/resend": {
      "post": {
        "operationId": "post_auth_register_resend",
        "tags": [
          "auth"
        ],
        "summary": "POST /auth/register/resend",
        "description": "Request keys are observed in the implementation; unknown types are deliberately unconstrained. Server-side validation, membership, roles, privacy and rank checks still apply.",
        "x-velora-scopes": {},
        "x-captcha-required": true,
        "x-velora-legacy": false,
        "deprecated": false,
        "security": [],
        "parameters": [],
        "responses": {
          "2XX": {
            "description": "Endpoint-specific JSON, text, binary, redirect or empty success; see the guide. No exhaustive response schema is asserted."
          },
          "4XX": {
            "description": "Invalid input, authorization, scope, role, privacy, quota or rate-limit error"
          },
          "5XX": {
            "description": "Service or upstream failure"
          }
        },
        "requestBody": {
          "required": false,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "properties": {
                  "email": {
                    "description": "Observed request key. See guide for nested formats and constraints."
                  },
                  "captcha_token": {
                    "description": "Observed request key. See guide for nested formats and constraints."
                  }
                },
                "additionalProperties": true
              }
            }
          }
        }
      }
    },
    "/auth/login": {
      "post": {
        "operationId": "post_auth_login",
        "tags": [
          "auth"
        ],
        "summary": "POST /auth/login",
        "description": "Request keys are observed in the implementation; unknown types are deliberately unconstrained. Server-side validation, membership, roles, privacy and rank checks still apply.",
        "x-velora-scopes": {},
        "x-captcha-required": true,
        "x-velora-legacy": false,
        "deprecated": false,
        "security": [],
        "parameters": [],
        "responses": {
          "2XX": {
            "description": "Endpoint-specific JSON, text, binary, redirect or empty success; see the guide. No exhaustive response schema is asserted."
          },
          "4XX": {
            "description": "Invalid input, authorization, scope, role, privacy, quota or rate-limit error"
          },
          "5XX": {
            "description": "Service or upstream failure"
          }
        },
        "requestBody": {
          "required": false,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "properties": {
                  "password": {
                    "description": "Observed request key. See guide for nested formats and constraints."
                  },
                  "username": {
                    "description": "Observed request key. See guide for nested formats and constraints."
                  },
                  "captcha_token": {
                    "description": "Observed request key. See guide for nested formats and constraints."
                  }
                },
                "additionalProperties": true
              }
            }
          }
        }
      }
    },
    "/auth/verify-new-ip": {
      "post": {
        "operationId": "post_auth_verify_new_ip",
        "tags": [
          "auth"
        ],
        "summary": "POST /auth/verify-new-ip",
        "description": "Request keys are observed in the implementation; unknown types are deliberately unconstrained. Server-side validation, membership, roles, privacy and rank checks still apply.",
        "x-velora-scopes": {},
        "x-captcha-required": false,
        "x-velora-legacy": false,
        "deprecated": false,
        "security": [],
        "parameters": [],
        "responses": {
          "2XX": {
            "description": "Endpoint-specific JSON, text, binary, redirect or empty success; see the guide. No exhaustive response schema is asserted."
          },
          "4XX": {
            "description": "Invalid input, authorization, scope, role, privacy, quota or rate-limit error"
          },
          "5XX": {
            "description": "Service or upstream failure"
          }
        },
        "requestBody": {
          "required": false,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "properties": {
                  "pending_id": {
                    "description": "Observed request key. See guide for nested formats and constraints."
                  }
                },
                "additionalProperties": true
              }
            }
          }
        }
      }
    },
    "/auth/verify-email-link": {
      "post": {
        "operationId": "post_auth_verify_email_link",
        "tags": [
          "auth"
        ],
        "summary": "POST /auth/verify-email-link",
        "description": "Request keys are observed in the implementation; unknown types are deliberately unconstrained. Server-side validation, membership, roles, privacy and rank checks still apply.",
        "x-velora-scopes": {},
        "x-captcha-required": false,
        "x-velora-legacy": false,
        "deprecated": false,
        "security": [],
        "parameters": [],
        "responses": {
          "2XX": {
            "description": "Endpoint-specific JSON, text, binary, redirect or empty success; see the guide. No exhaustive response schema is asserted."
          },
          "4XX": {
            "description": "Invalid input, authorization, scope, role, privacy, quota or rate-limit error"
          },
          "5XX": {
            "description": "Service or upstream failure"
          }
        },
        "requestBody": {
          "required": false,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "properties": {
                  "token": {
                    "description": "Observed request key. See guide for nested formats and constraints."
                  }
                },
                "additionalProperties": true
              }
            }
          }
        }
      }
    },
    "/auth/verify-ip-link": {
      "post": {
        "operationId": "post_auth_verify_ip_link",
        "tags": [
          "auth"
        ],
        "summary": "POST /auth/verify-ip-link",
        "description": "Request keys are observed in the implementation; unknown types are deliberately unconstrained. Server-side validation, membership, roles, privacy and rank checks still apply.",
        "x-velora-scopes": {},
        "x-captcha-required": false,
        "x-velora-legacy": false,
        "deprecated": false,
        "security": [],
        "parameters": [],
        "responses": {
          "2XX": {
            "description": "Endpoint-specific JSON, text, binary, redirect or empty success; see the guide. No exhaustive response schema is asserted."
          },
          "4XX": {
            "description": "Invalid input, authorization, scope, role, privacy, quota or rate-limit error"
          },
          "5XX": {
            "description": "Service or upstream failure"
          }
        },
        "requestBody": {
          "required": false,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "properties": {
                  "token": {
                    "description": "Observed request key. See guide for nested formats and constraints."
                  }
                },
                "additionalProperties": true
              }
            }
          }
        }
      }
    },
    "/auth/resend-new-ip": {
      "post": {
        "operationId": "post_auth_resend_new_ip",
        "tags": [
          "auth"
        ],
        "summary": "POST /auth/resend-new-ip",
        "description": "Request keys are observed in the implementation; unknown types are deliberately unconstrained. Server-side validation, membership, roles, privacy and rank checks still apply.",
        "x-velora-scopes": {},
        "x-captcha-required": true,
        "x-velora-legacy": false,
        "deprecated": false,
        "security": [],
        "parameters": [],
        "responses": {
          "2XX": {
            "description": "Endpoint-specific JSON, text, binary, redirect or empty success; see the guide. No exhaustive response schema is asserted."
          },
          "4XX": {
            "description": "Invalid input, authorization, scope, role, privacy, quota or rate-limit error"
          },
          "5XX": {
            "description": "Service or upstream failure"
          }
        },
        "requestBody": {
          "required": false,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "properties": {
                  "pending_id": {
                    "description": "Observed request key. See guide for nested formats and constraints."
                  },
                  "captcha_token": {
                    "description": "Observed request key. See guide for nested formats and constraints."
                  }
                },
                "additionalProperties": true
              }
            }
          }
        }
      }
    },
    "/auth/validate": {
      "post": {
        "operationId": "post_auth_validate",
        "tags": [
          "auth"
        ],
        "summary": "POST /auth/validate",
        "description": "Request keys are observed in the implementation; unknown types are deliberately unconstrained. Server-side validation, membership, roles, privacy and rank checks still apply.",
        "x-velora-scopes": {},
        "x-captcha-required": false,
        "x-velora-legacy": false,
        "deprecated": false,
        "security": [
          {
            "UserToken": []
          }
        ],
        "parameters": [],
        "responses": {
          "2XX": {
            "description": "Endpoint-specific JSON, text, binary, redirect or empty success; see the guide. No exhaustive response schema is asserted."
          },
          "4XX": {
            "description": "Invalid input, authorization, scope, role, privacy, quota or rate-limit error"
          },
          "5XX": {
            "description": "Service or upstream failure"
          }
        },
        "requestBody": {
          "required": false,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "properties": {
                  "token": {
                    "description": "Observed request key. See guide for nested formats and constraints."
                  }
                },
                "additionalProperties": true
              }
            }
          }
        }
      }
    },
    "/auth/accept-tos": {
      "post": {
        "operationId": "post_auth_accept_tos",
        "tags": [
          "auth"
        ],
        "summary": "POST /auth/accept-tos",
        "description": "Request keys are observed in the implementation; unknown types are deliberately unconstrained. Server-side validation, membership, roles, privacy and rank checks still apply.",
        "x-velora-scopes": {},
        "x-captcha-required": false,
        "x-velora-legacy": false,
        "deprecated": false,
        "security": [
          {
            "UserToken": []
          }
        ],
        "parameters": [],
        "responses": {
          "2XX": {
            "description": "Endpoint-specific JSON, text, binary, redirect or empty success; see the guide. No exhaustive response schema is asserted."
          },
          "4XX": {
            "description": "Invalid input, authorization, scope, role, privacy, quota or rate-limit error"
          },
          "5XX": {
            "description": "Service or upstream failure"
          }
        },
        "requestBody": {
          "required": false,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "properties": {
                  "version": {
                    "description": "Observed request key. See guide for nested formats and constraints."
                  }
                },
                "additionalProperties": true
              }
            }
          }
        }
      }
    },
    "/auth/logout": {
      "post": {
        "operationId": "post_auth_logout",
        "tags": [
          "auth"
        ],
        "summary": "POST /auth/logout",
        "description": "Request keys are observed in the implementation; unknown types are deliberately unconstrained. Server-side validation, membership, roles, privacy and rank checks still apply.",
        "x-velora-scopes": {},
        "x-captcha-required": false,
        "x-velora-legacy": false,
        "deprecated": false,
        "security": [
          {
            "UserToken": []
          }
        ],
        "parameters": [],
        "responses": {
          "2XX": {
            "description": "Endpoint-specific JSON, text, binary, redirect or empty success; see the guide. No exhaustive response schema is asserted."
          },
          "4XX": {
            "description": "Invalid input, authorization, scope, role, privacy, quota or rate-limit error"
          },
          "5XX": {
            "description": "Service or upstream failure"
          }
        }
      }
    },
    "/auth/set-email": {
      "post": {
        "operationId": "post_auth_set_email",
        "tags": [
          "auth"
        ],
        "summary": "POST /auth/set-email",
        "description": "Request keys are observed in the implementation; unknown types are deliberately unconstrained. Server-side validation, membership, roles, privacy and rank checks still apply.",
        "x-velora-scopes": {},
        "x-captcha-required": false,
        "x-velora-legacy": false,
        "deprecated": false,
        "security": [
          {
            "UserToken": []
          }
        ],
        "parameters": [],
        "responses": {
          "2XX": {
            "description": "Endpoint-specific JSON, text, binary, redirect or empty success; see the guide. No exhaustive response schema is asserted."
          },
          "4XX": {
            "description": "Invalid input, authorization, scope, role, privacy, quota or rate-limit error"
          },
          "5XX": {
            "description": "Service or upstream failure"
          }
        },
        "requestBody": {
          "required": false,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "properties": {
                  "email": {
                    "description": "Observed request key. See guide for nested formats and constraints."
                  }
                },
                "additionalProperties": true
              }
            }
          }
        }
      }
    },
    "/auth/verify-email": {
      "post": {
        "operationId": "post_auth_verify_email",
        "tags": [
          "auth"
        ],
        "summary": "POST /auth/verify-email",
        "description": "Request keys are observed in the implementation; unknown types are deliberately unconstrained. Server-side validation, membership, roles, privacy and rank checks still apply.",
        "x-velora-scopes": {},
        "x-captcha-required": false,
        "x-velora-legacy": false,
        "deprecated": false,
        "security": [
          {
            "UserToken": []
          }
        ],
        "parameters": [],
        "responses": {
          "2XX": {
            "description": "Endpoint-specific JSON, text, binary, redirect or empty success; see the guide. No exhaustive response schema is asserted."
          },
          "4XX": {
            "description": "Invalid input, authorization, scope, role, privacy, quota or rate-limit error"
          },
          "5XX": {
            "description": "Service or upstream failure"
          }
        }
      }
    },
    "/auth/resend-verification": {
      "post": {
        "operationId": "post_auth_resend_verification",
        "tags": [
          "auth"
        ],
        "summary": "POST /auth/resend-verification",
        "description": "Request keys are observed in the implementation; unknown types are deliberately unconstrained. Server-side validation, membership, roles, privacy and rank checks still apply.",
        "x-velora-scopes": {},
        "x-captcha-required": true,
        "x-velora-legacy": false,
        "deprecated": false,
        "security": [
          {
            "UserToken": []
          }
        ],
        "parameters": [],
        "responses": {
          "2XX": {
            "description": "Endpoint-specific JSON, text, binary, redirect or empty success; see the guide. No exhaustive response schema is asserted."
          },
          "4XX": {
            "description": "Invalid input, authorization, scope, role, privacy, quota or rate-limit error"
          },
          "5XX": {
            "description": "Service or upstream failure"
          }
        },
        "requestBody": {
          "required": false,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "properties": {
                  "captcha_token": {
                    "description": "Observed request key. See guide for nested formats and constraints."
                  }
                },
                "additionalProperties": true
              }
            }
          }
        }
      }
    },
    "/auth/sessions/{sessionId}": {
      "delete": {
        "operationId": "delete_auth_sessions_by_sessionid",
        "tags": [
          "auth"
        ],
        "summary": "DELETE /auth/sessions/:sessionId",
        "description": "Request keys are observed in the implementation; unknown types are deliberately unconstrained. Server-side validation, membership, roles, privacy and rank checks still apply.",
        "x-velora-scopes": {},
        "x-captcha-required": false,
        "x-velora-legacy": false,
        "deprecated": false,
        "security": [
          {
            "UserToken": []
          }
        ],
        "parameters": [
          {
            "name": "sessionId",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "2XX": {
            "description": "Endpoint-specific JSON, text, binary, redirect or empty success; see the guide. No exhaustive response schema is asserted."
          },
          "4XX": {
            "description": "Invalid input, authorization, scope, role, privacy, quota or rate-limit error"
          },
          "5XX": {
            "description": "Service or upstream failure"
          }
        }
      }
    },
    "/auth/sessions": {
      "get": {
        "operationId": "get_auth_sessions",
        "tags": [
          "auth"
        ],
        "summary": "GET /auth/sessions",
        "description": "Request keys are observed in the implementation; unknown types are deliberately unconstrained. Server-side validation, membership, roles, privacy and rank checks still apply.",
        "x-velora-scopes": {},
        "x-captcha-required": false,
        "x-velora-legacy": false,
        "deprecated": false,
        "security": [
          {
            "UserToken": []
          }
        ],
        "parameters": [],
        "responses": {
          "2XX": {
            "description": "Endpoint-specific JSON, text, binary, redirect or empty success; see the guide. No exhaustive response schema is asserted."
          },
          "4XX": {
            "description": "Invalid input, authorization, scope, role, privacy, quota or rate-limit error"
          },
          "5XX": {
            "description": "Service or upstream failure"
          }
        }
      }
    },
    "/auth/login-history": {
      "get": {
        "operationId": "get_auth_login_history",
        "tags": [
          "auth"
        ],
        "summary": "GET /auth/login-history",
        "description": "Request keys are observed in the implementation; unknown types are deliberately unconstrained. Server-side validation, membership, roles, privacy and rank checks still apply.",
        "x-velora-scopes": {
          "PROFILE_SENSITIVE": 2
        },
        "x-captcha-required": false,
        "x-velora-legacy": false,
        "deprecated": false,
        "security": [
          {
            "UserToken": []
          }
        ],
        "parameters": [],
        "responses": {
          "2XX": {
            "description": "Endpoint-specific JSON, text, binary, redirect or empty success; see the guide. No exhaustive response schema is asserted."
          },
          "4XX": {
            "description": "Invalid input, authorization, scope, role, privacy, quota or rate-limit error"
          },
          "5XX": {
            "description": "Service or upstream failure"
          }
        }
      }
    },
    "/auth/forgot-password": {
      "post": {
        "operationId": "post_auth_forgot_password",
        "tags": [
          "auth"
        ],
        "summary": "POST /auth/forgot-password",
        "description": "Request keys are observed in the implementation; unknown types are deliberately unconstrained. Server-side validation, membership, roles, privacy and rank checks still apply.",
        "x-velora-scopes": {},
        "x-captcha-required": true,
        "x-velora-legacy": false,
        "deprecated": false,
        "security": [],
        "parameters": [],
        "responses": {
          "2XX": {
            "description": "Endpoint-specific JSON, text, binary, redirect or empty success; see the guide. No exhaustive response schema is asserted."
          },
          "4XX": {
            "description": "Invalid input, authorization, scope, role, privacy, quota or rate-limit error"
          },
          "5XX": {
            "description": "Service or upstream failure"
          }
        },
        "requestBody": {
          "required": false,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "properties": {
                  "email": {
                    "description": "Observed request key. See guide for nested formats and constraints."
                  },
                  "captcha_token": {
                    "description": "Observed request key. See guide for nested formats and constraints."
                  }
                },
                "additionalProperties": true
              }
            }
          }
        }
      }
    },
    "/auth/reset-password": {
      "post": {
        "operationId": "post_auth_reset_password",
        "tags": [
          "auth"
        ],
        "summary": "POST /auth/reset-password",
        "description": "Request keys are observed in the implementation; unknown types are deliberately unconstrained. Server-side validation, membership, roles, privacy and rank checks still apply.",
        "x-velora-scopes": {},
        "x-captcha-required": true,
        "x-velora-legacy": false,
        "deprecated": false,
        "security": [],
        "parameters": [],
        "responses": {
          "2XX": {
            "description": "Endpoint-specific JSON, text, binary, redirect or empty success; see the guide. No exhaustive response schema is asserted."
          },
          "4XX": {
            "description": "Invalid input, authorization, scope, role, privacy, quota or rate-limit error"
          },
          "5XX": {
            "description": "Service or upstream failure"
          }
        },
        "requestBody": {
          "required": false,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "properties": {
                  "password": {
                    "description": "Observed request key. See guide for nested formats and constraints."
                  },
                  "token": {
                    "description": "Observed request key. See guide for nested formats and constraints."
                  },
                  "captcha_token": {
                    "description": "Observed request key. See guide for nested formats and constraints."
                  }
                },
                "additionalProperties": true
              }
            }
          }
        }
      }
    },
    "/auth/oauth/providers": {
      "get": {
        "operationId": "get_auth_oauth_providers",
        "tags": [
          "oauth"
        ],
        "summary": "GET /auth/oauth/providers",
        "description": "Client-specific protocol. See the integration guide before using this endpoint. Request keys are observed in the implementation; unknown types are deliberately unconstrained. Server-side validation, membership, roles, privacy and rank checks still apply.",
        "x-velora-scopes": {},
        "x-captcha-required": false,
        "x-velora-legacy": false,
        "deprecated": false,
        "security": [],
        "parameters": [],
        "responses": {
          "2XX": {
            "description": "Endpoint-specific JSON, text, binary, redirect or empty success; see the guide. No exhaustive response schema is asserted."
          },
          "4XX": {
            "description": "Invalid input, authorization, scope, role, privacy, quota or rate-limit error"
          },
          "5XX": {
            "description": "Service or upstream failure"
          }
        }
      }
    },
    "/auth/oauth/{p}/start": {
      "get": {
        "operationId": "get_auth_oauth_by_p_start",
        "tags": [
          "oauth"
        ],
        "summary": "GET /auth/oauth/:p/start",
        "description": "Client-specific protocol. See the integration guide before using this endpoint. Request keys are observed in the implementation; unknown types are deliberately unconstrained. Server-side validation, membership, roles, privacy and rank checks still apply.",
        "x-velora-scopes": {},
        "x-captcha-required": false,
        "x-velora-legacy": false,
        "deprecated": false,
        "security": [],
        "parameters": [
          {
            "name": "p",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "ret",
            "in": "query",
            "required": false,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "2XX": {
            "description": "Endpoint-specific JSON, text, binary, redirect or empty success; see the guide. No exhaustive response schema is asserted."
          },
          "4XX": {
            "description": "Invalid input, authorization, scope, role, privacy, quota or rate-limit error"
          },
          "5XX": {
            "description": "Service or upstream failure"
          }
        }
      }
    },
    "/auth/oauth/{p}/link": {
      "post": {
        "operationId": "post_auth_oauth_by_p_link",
        "tags": [
          "oauth"
        ],
        "summary": "POST /auth/oauth/:p/link",
        "description": "Client-specific protocol. See the integration guide before using this endpoint. Request keys are observed in the implementation; unknown types are deliberately unconstrained. Server-side validation, membership, roles, privacy and rank checks still apply.",
        "x-velora-scopes": {},
        "x-captcha-required": false,
        "x-velora-legacy": false,
        "deprecated": false,
        "security": [
          {
            "UserToken": []
          }
        ],
        "parameters": [
          {
            "name": "p",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "2XX": {
            "description": "Endpoint-specific JSON, text, binary, redirect or empty success; see the guide. No exhaustive response schema is asserted."
          },
          "4XX": {
            "description": "Invalid input, authorization, scope, role, privacy, quota or rate-limit error"
          },
          "5XX": {
            "description": "Service or upstream failure"
          }
        }
      }
    },
    "/auth/oauth/{p}/callback": {
      "get": {
        "operationId": "get_auth_oauth_by_p_callback",
        "tags": [
          "oauth"
        ],
        "summary": "GET /auth/oauth/:p/callback",
        "description": "Client-specific protocol. See the integration guide before using this endpoint. Request keys are observed in the implementation; unknown types are deliberately unconstrained. Server-side validation, membership, roles, privacy and rank checks still apply.",
        "x-velora-scopes": {},
        "x-captcha-required": false,
        "x-velora-legacy": false,
        "deprecated": false,
        "security": [],
        "parameters": [
          {
            "name": "p",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "code",
            "in": "query",
            "required": false,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "error",
            "in": "query",
            "required": false,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "state",
            "in": "query",
            "required": false,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "2XX": {
            "description": "Endpoint-specific JSON, text, binary, redirect or empty success; see the guide. No exhaustive response schema is asserted."
          },
          "4XX": {
            "description": "Invalid input, authorization, scope, role, privacy, quota or rate-limit error"
          },
          "5XX": {
            "description": "Service or upstream failure"
          }
        }
      }
    },
    "/auth/oauth/exchange": {
      "post": {
        "operationId": "post_auth_oauth_exchange",
        "tags": [
          "oauth"
        ],
        "summary": "POST /auth/oauth/exchange",
        "description": "Client-specific protocol. See the integration guide before using this endpoint. Request keys are observed in the implementation; unknown types are deliberately unconstrained. Server-side validation, membership, roles, privacy and rank checks still apply.",
        "x-velora-scopes": {},
        "x-captcha-required": false,
        "x-velora-legacy": false,
        "deprecated": false,
        "security": [],
        "parameters": [],
        "responses": {
          "2XX": {
            "description": "Endpoint-specific JSON, text, binary, redirect or empty success; see the guide. No exhaustive response schema is asserted."
          },
          "4XX": {
            "description": "Invalid input, authorization, scope, role, privacy, quota or rate-limit error"
          },
          "5XX": {
            "description": "Service or upstream failure"
          }
        },
        "requestBody": {
          "required": false,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "properties": {
                  "code": {
                    "description": "Observed request key. See guide for nested formats and constraints."
                  }
                },
                "additionalProperties": true
              }
            }
          }
        }
      }
    },
    "/auth/oauth/signup": {
      "post": {
        "operationId": "post_auth_oauth_signup",
        "tags": [
          "oauth"
        ],
        "summary": "POST /auth/oauth/signup",
        "description": "Client-specific protocol. See the integration guide before using this endpoint. Request keys are observed in the implementation; unknown types are deliberately unconstrained. Server-side validation, membership, roles, privacy and rank checks still apply.",
        "x-velora-scopes": {},
        "x-captcha-required": false,
        "x-velora-legacy": false,
        "deprecated": false,
        "security": [],
        "parameters": [],
        "responses": {
          "2XX": {
            "description": "Endpoint-specific JSON, text, binary, redirect or empty success; see the guide. No exhaustive response schema is asserted."
          },
          "4XX": {
            "description": "Invalid input, authorization, scope, role, privacy, quota or rate-limit error"
          },
          "5XX": {
            "description": "Service or upstream failure"
          }
        },
        "requestBody": {
          "required": false,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "properties": {
                  "code": {
                    "description": "Observed request key. See guide for nested formats and constraints."
                  },
                  "tos_accepted": {
                    "description": "Observed request key. See guide for nested formats and constraints."
                  },
                  "username": {
                    "description": "Observed request key. See guide for nested formats and constraints."
                  }
                },
                "additionalProperties": true
              }
            }
          }
        }
      }
    },
    "/auth/oauth/linked": {
      "get": {
        "operationId": "get_auth_oauth_linked",
        "tags": [
          "oauth"
        ],
        "summary": "GET /auth/oauth/linked",
        "description": "Client-specific protocol. See the integration guide before using this endpoint. Request keys are observed in the implementation; unknown types are deliberately unconstrained. Server-side validation, membership, roles, privacy and rank checks still apply.",
        "x-velora-scopes": {},
        "x-captcha-required": false,
        "x-velora-legacy": false,
        "deprecated": false,
        "security": [
          {
            "UserToken": []
          }
        ],
        "parameters": [],
        "responses": {
          "2XX": {
            "description": "Endpoint-specific JSON, text, binary, redirect or empty success; see the guide. No exhaustive response schema is asserted."
          },
          "4XX": {
            "description": "Invalid input, authorization, scope, role, privacy, quota or rate-limit error"
          },
          "5XX": {
            "description": "Service or upstream failure"
          }
        }
      }
    },
    "/auth/oauth/{p}": {
      "patch": {
        "operationId": "patch_auth_oauth_by_p",
        "tags": [
          "oauth"
        ],
        "summary": "PATCH /auth/oauth/:p",
        "description": "Client-specific protocol. See the integration guide before using this endpoint. Request keys are observed in the implementation; unknown types are deliberately unconstrained. Server-side validation, membership, roles, privacy and rank checks still apply.",
        "x-velora-scopes": {},
        "x-captcha-required": false,
        "x-velora-legacy": false,
        "deprecated": false,
        "security": [
          {
            "UserToken": []
          }
        ],
        "parameters": [
          {
            "name": "p",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "2XX": {
            "description": "Endpoint-specific JSON, text, binary, redirect or empty success; see the guide. No exhaustive response schema is asserted."
          },
          "4XX": {
            "description": "Invalid input, authorization, scope, role, privacy, quota or rate-limit error"
          },
          "5XX": {
            "description": "Service or upstream failure"
          }
        },
        "requestBody": {
          "required": false,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "properties": {
                  "show": {
                    "description": "Observed request key. See guide for nested formats and constraints."
                  }
                },
                "additionalProperties": true
              }
            }
          }
        }
      },
      "delete": {
        "operationId": "delete_auth_oauth_by_p",
        "tags": [
          "oauth"
        ],
        "summary": "DELETE /auth/oauth/:p",
        "description": "Client-specific protocol. See the integration guide before using this endpoint. Request keys are observed in the implementation; unknown types are deliberately unconstrained. Server-side validation, membership, roles, privacy and rank checks still apply.",
        "x-velora-scopes": {},
        "x-captcha-required": false,
        "x-velora-legacy": false,
        "deprecated": false,
        "security": [
          {
            "UserToken": []
          }
        ],
        "parameters": [
          {
            "name": "p",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "2XX": {
            "description": "Endpoint-specific JSON, text, binary, redirect or empty success; see the guide. No exhaustive response schema is asserted."
          },
          "4XX": {
            "description": "Invalid input, authorization, scope, role, privacy, quota or rate-limit error"
          },
          "5XX": {
            "description": "Service or upstream failure"
          }
        }
      }
    },
    "/auth/child-token": {
      "post": {
        "operationId": "post_auth_child_token",
        "tags": [
          "child-tokens"
        ],
        "summary": "POST /auth/child-token",
        "description": "Client-specific protocol. See the integration guide before using this endpoint. Request keys are observed in the implementation; unknown types are deliberately unconstrained. Server-side validation, membership, roles, privacy and rank checks still apply.",
        "x-velora-scopes": {},
        "x-captcha-required": false,
        "x-velora-legacy": false,
        "deprecated": false,
        "security": [
          {
            "UserToken": []
          }
        ],
        "parameters": [],
        "responses": {
          "2XX": {
            "description": "Endpoint-specific JSON, text, binary, redirect or empty success; see the guide. No exhaustive response schema is asserted."
          },
          "4XX": {
            "description": "Invalid input, authorization, scope, role, privacy, quota or rate-limit error"
          },
          "5XX": {
            "description": "Service or upstream failure"
          }
        },
        "requestBody": {
          "required": false,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "properties": {
                  "project": {
                    "description": "Observed request key. See guide for nested formats and constraints."
                  },
                  "scopes": {
                    "description": "Observed request key. See guide for nested formats and constraints."
                  }
                },
                "additionalProperties": true
              }
            }
          }
        }
      }
    },
    "/bonfire/app-login": {
      "get": {
        "operationId": "get_bonfire_app_login",
        "tags": [
          "desktop-sign-in"
        ],
        "summary": "GET /bonfire/app-login",
        "description": "Browser entry point of the official apps: ?state=STATE (16 to 128 URL-safe characters) and client=web|desktop|android. Redirects to the Nookara consent screen. Request keys are observed in the implementation; unknown types are deliberately unconstrained. Server-side validation, membership, roles, privacy and rank checks still apply.",
        "x-velora-scopes": {},
        "x-captcha-required": false,
        "x-velora-legacy": false,
        "deprecated": false,
        "security": [],
        "parameters": [
          {
            "name": "client",
            "in": "query",
            "required": false,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "done",
            "in": "query",
            "required": false,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "state",
            "in": "query",
            "required": false,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "2XX": {
            "description": "Endpoint-specific JSON, text, binary, redirect or empty success; see the guide. No exhaustive response schema is asserted."
          },
          "4XX": {
            "description": "Invalid input, authorization, scope, role, privacy, quota or rate-limit error"
          },
          "5XX": {
            "description": "Service or upstream failure"
          }
        }
      }
    },
    "/bonfire/scopes.json": {
      "get": {
        "operationId": "get_bonfire_scopes_json",
        "tags": [
          "desktop-sign-in"
        ],
        "summary": "GET /bonfire/scopes.json",
        "description": "Public. What the official Ember apps ask for: {version, scopes: [{id, bit, required: false, since, name, reason}], permissions_integer, ...}. Nothing is required; every scope is the person's choice. Request keys are observed in the implementation; unknown types are deliberately unconstrained. Server-side validation, membership, roles, privacy and rank checks still apply.",
        "x-velora-scopes": {},
        "x-captcha-required": false,
        "x-velora-legacy": false,
        "deprecated": false,
        "security": [],
        "parameters": [],
        "responses": {
          "2XX": {
            "description": "Endpoint-specific JSON, text, binary, redirect or empty success; see the guide. No exhaustive response schema is asserted."
          },
          "4XX": {
            "description": "Invalid input, authorization, scope, role, privacy, quota or rate-limit error"
          },
          "5XX": {
            "description": "Service or upstream failure"
          }
        }
      }
    },
    "/bonfire/session": {
      "get": {
        "operationId": "get_bonfire_session",
        "tags": [
          "desktop-sign-in"
        ],
        "summary": "GET /bonfire/session",
        "description": "Any token. Compares the token with what Ember asks for: {granted, effective, disabled, not_granted: [...]}. Informational: not_granted never blocks. Also works as a general \"which scopes did I get?\" call. Request keys are observed in the implementation; unknown types are deliberately unconstrained. Server-side validation, membership, roles, privacy and rank checks still apply.",
        "x-velora-scopes": {},
        "x-captcha-required": false,
        "x-velora-legacy": false,
        "deprecated": false,
        "security": [
          {
            "UserToken": []
          }
        ],
        "parameters": [],
        "responses": {
          "2XX": {
            "description": "Endpoint-specific JSON, text, binary, redirect or empty success; see the guide. No exhaustive response schema is asserted."
          },
          "4XX": {
            "description": "Invalid input, authorization, scope, role, privacy, quota or rate-limit error"
          },
          "5XX": {
            "description": "Service or upstream failure"
          }
        }
      }
    },
    "/bonfire/app-exchange": {
      "post": {
        "operationId": "post_bonfire_app_exchange",
        "tags": [
          "desktop-sign-in"
        ],
        "summary": "POST /bonfire/app-exchange",
        "description": "Official apps: body {code, state} returns {token, username, scopes, version}. One try per code. Request keys are observed in the implementation; unknown types are deliberately unconstrained. Server-side validation, membership, roles, privacy and rank checks still apply.",
        "x-velora-scopes": {},
        "x-captcha-required": false,
        "x-velora-legacy": false,
        "deprecated": false,
        "security": [],
        "parameters": [],
        "responses": {
          "2XX": {
            "description": "Endpoint-specific JSON, text, binary, redirect or empty success; see the guide. No exhaustive response schema is asserted."
          },
          "4XX": {
            "description": "Invalid input, authorization, scope, role, privacy, quota or rate-limit error"
          },
          "5XX": {
            "description": "Service or upstream failure"
          }
        },
        "requestBody": {
          "required": false,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "properties": {
                  "code": {
                    "description": "Observed request key. See guide for nested formats and constraints."
                  },
                  "state": {
                    "description": "Observed request key. See guide for nested formats and constraints."
                  }
                },
                "additionalProperties": true
              }
            }
          }
        }
      }
    },
    "/bonfire/replace-token": {
      "post": {
        "operationId": "post_bonfire_replace_token",
        "tags": [
          "desktop-sign-in"
        ],
        "summary": "POST /bonfire/replace-token",
        "description": "Official apps: revokes the app token that was replaced after a new sign-in. Request keys are observed in the implementation; unknown types are deliberately unconstrained. Server-side validation, membership, roles, privacy and rank checks still apply.",
        "x-velora-scopes": {},
        "x-captcha-required": false,
        "x-velora-legacy": false,
        "deprecated": false,
        "security": [
          {
            "UserToken": []
          }
        ],
        "parameters": [],
        "responses": {
          "2XX": {
            "description": "Endpoint-specific JSON, text, binary, redirect or empty success; see the guide. No exhaustive response schema is asserted."
          },
          "4XX": {
            "description": "Invalid input, authorization, scope, role, privacy, quota or rate-limit error"
          },
          "5XX": {
            "description": "Service or upstream failure"
          }
        },
        "requestBody": {
          "required": false,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "properties": {
                  "old": {
                    "description": "Observed request key. See guide for nested formats and constraints."
                  }
                },
                "additionalProperties": true
              }
            }
          }
        }
      }
    },
    "/bonfire/sign-out": {
      "post": {
        "operationId": "post_bonfire_sign_out",
        "tags": [
          "desktop-sign-in"
        ],
        "summary": "POST /bonfire/sign-out",
        "description": "Official apps: revokes the calling Ember app token (never a website session). Request keys are observed in the implementation; unknown types are deliberately unconstrained. Server-side validation, membership, roles, privacy and rank checks still apply.",
        "x-velora-scopes": {},
        "x-captcha-required": false,
        "x-velora-legacy": false,
        "deprecated": false,
        "security": [
          {
            "UserToken": []
          }
        ],
        "parameters": [],
        "responses": {
          "2XX": {
            "description": "Endpoint-specific JSON, text, binary, redirect or empty success; see the guide. No exhaustive response schema is asserted."
          },
          "4XX": {
            "description": "Invalid input, authorization, scope, role, privacy, quota or rate-limit error"
          },
          "5XX": {
            "description": "Service or upstream failure"
          }
        }
      }
    },
    "/bonfire/app-code": {
      "post": {
        "operationId": "post_bonfire_app_code",
        "tags": [
          "desktop-sign-in"
        ],
        "summary": "POST /bonfire/app-code",
        "description": "Gone (410 login_again). Apps now sign in through the consent screen. Request keys are observed in the implementation; unknown types are deliberately unconstrained. Server-side validation, membership, roles, privacy and rank checks still apply.",
        "x-velora-scopes": {},
        "x-captcha-required": false,
        "x-velora-legacy": false,
        "deprecated": false,
        "security": [],
        "parameters": [],
        "responses": {
          "2XX": {
            "description": "Endpoint-specific JSON, text, binary, redirect or empty success; see the guide. No exhaustive response schema is asserted."
          },
          "4XX": {
            "description": "Invalid input, authorization, scope, role, privacy, quota or rate-limit error"
          },
          "5XX": {
            "description": "Service or upstream failure"
          }
        }
      }
    },
    "/account/me": {
      "get": {
        "operationId": "get_account_me",
        "tags": [
          "account"
        ],
        "summary": "GET /account/me",
        "description": "Request keys are observed in the implementation; unknown types are deliberately unconstrained. Server-side validation, membership, roles, privacy and rank checks still apply.",
        "x-velora-scopes": {},
        "x-captcha-required": false,
        "x-velora-legacy": false,
        "deprecated": false,
        "security": [
          {
            "UserToken": []
          }
        ],
        "parameters": [],
        "responses": {
          "2XX": {
            "description": "Endpoint-specific JSON, text, binary, redirect or empty success; see the guide. No exhaustive response schema is asserted."
          },
          "4XX": {
            "description": "Invalid input, authorization, scope, role, privacy, quota or rate-limit error"
          },
          "5XX": {
            "description": "Service or upstream failure"
          }
        }
      },
      "delete": {
        "operationId": "delete_account_me",
        "tags": [
          "account"
        ],
        "summary": "DELETE /account/me",
        "description": "Request keys are observed in the implementation; unknown types are deliberately unconstrained. Server-side validation, membership, roles, privacy and rank checks still apply.",
        "x-velora-scopes": {},
        "x-captcha-required": false,
        "x-velora-legacy": false,
        "deprecated": false,
        "security": [
          {
            "UserToken": []
          }
        ],
        "parameters": [],
        "responses": {
          "2XX": {
            "description": "Endpoint-specific JSON, text, binary, redirect or empty success; see the guide. No exhaustive response schema is asserted."
          },
          "4XX": {
            "description": "Invalid input, authorization, scope, role, privacy, quota or rate-limit error"
          },
          "5XX": {
            "description": "Service or upstream failure"
          }
        },
        "requestBody": {
          "required": false,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "properties": {
                  "password": {
                    "description": "Observed request key. See guide for nested formats and constraints."
                  }
                },
                "additionalProperties": true
              }
            }
          }
        }
      }
    },
    "/account/change-username": {
      "post": {
        "operationId": "post_account_change_username",
        "tags": [
          "account"
        ],
        "summary": "POST /account/change-username",
        "description": "Request keys are observed in the implementation; unknown types are deliberately unconstrained. Server-side validation, membership, roles, privacy and rank checks still apply.",
        "x-velora-scopes": {
          "ACCOUNT_WRITE": 8
        },
        "x-captcha-required": false,
        "x-velora-legacy": false,
        "deprecated": false,
        "security": [
          {
            "UserToken": []
          }
        ],
        "parameters": [],
        "responses": {
          "2XX": {
            "description": "Endpoint-specific JSON, text, binary, redirect or empty success; see the guide. No exhaustive response schema is asserted."
          },
          "4XX": {
            "description": "Invalid input, authorization, scope, role, privacy, quota or rate-limit error"
          },
          "5XX": {
            "description": "Service or upstream failure"
          }
        },
        "requestBody": {
          "required": false,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "properties": {
                  "username": {
                    "description": "Observed request key. See guide for nested formats and constraints."
                  }
                },
                "additionalProperties": true
              }
            }
          }
        }
      }
    },
    "/account/onboarding/complete": {
      "post": {
        "operationId": "post_account_onboarding_complete",
        "tags": [
          "account"
        ],
        "summary": "POST /account/onboarding/complete",
        "description": "Request keys are observed in the implementation; unknown types are deliberately unconstrained. Server-side validation, membership, roles, privacy and rank checks still apply.",
        "x-velora-scopes": {},
        "x-captcha-required": false,
        "x-velora-legacy": false,
        "deprecated": false,
        "security": [
          {
            "UserToken": []
          }
        ],
        "parameters": [],
        "responses": {
          "2XX": {
            "description": "Endpoint-specific JSON, text, binary, redirect or empty success; see the guide. No exhaustive response schema is asserted."
          },
          "4XX": {
            "description": "Invalid input, authorization, scope, role, privacy, quota or rate-limit error"
          },
          "5XX": {
            "description": "Service or upstream failure"
          }
        }
      }
    },
    "/account/export": {
      "get": {
        "operationId": "get_account_export",
        "tags": [
          "account"
        ],
        "summary": "GET /account/export",
        "description": "Request keys are observed in the implementation; unknown types are deliberately unconstrained. Server-side validation, membership, roles, privacy and rank checks still apply.",
        "x-velora-scopes": {
          "PROFILE_SENSITIVE": 2
        },
        "x-captcha-required": false,
        "x-velora-legacy": false,
        "deprecated": false,
        "security": [
          {
            "UserToken": []
          }
        ],
        "parameters": [],
        "responses": {
          "2XX": {
            "description": "Endpoint-specific JSON, text, binary, redirect or empty success; see the guide. No exhaustive response schema is asserted."
          },
          "4XX": {
            "description": "Invalid input, authorization, scope, role, privacy, quota or rate-limit error"
          },
          "5XX": {
            "description": "Service or upstream failure"
          }
        }
      }
    },
    "/account/sessions/{tokenId}": {
      "delete": {
        "operationId": "delete_account_sessions_by_tokenid",
        "tags": [
          "account"
        ],
        "summary": "DELETE /account/sessions/:tokenId",
        "description": "Request keys are observed in the implementation; unknown types are deliberately unconstrained. Server-side validation, membership, roles, privacy and rank checks still apply.",
        "x-velora-scopes": {},
        "x-captcha-required": false,
        "x-velora-legacy": false,
        "deprecated": false,
        "security": [
          {
            "UserToken": []
          }
        ],
        "parameters": [
          {
            "name": "tokenId",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "2XX": {
            "description": "Endpoint-specific JSON, text, binary, redirect or empty success; see the guide. No exhaustive response schema is asserted."
          },
          "4XX": {
            "description": "Invalid input, authorization, scope, role, privacy, quota or rate-limit error"
          },
          "5XX": {
            "description": "Service or upstream failure"
          }
        }
      }
    },
    "/account/search": {
      "get": {
        "operationId": "get_account_search",
        "tags": [
          "account"
        ],
        "summary": "GET /account/search",
        "description": "Request keys are observed in the implementation; unknown types are deliberately unconstrained. Server-side validation, membership, roles, privacy and rank checks still apply.",
        "x-velora-scopes": {},
        "x-captcha-required": false,
        "x-velora-legacy": false,
        "deprecated": false,
        "security": [],
        "parameters": [
          {
            "name": "q",
            "in": "query",
            "required": false,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "2XX": {
            "description": "Endpoint-specific JSON, text, binary, redirect or empty success; see the guide. No exhaustive response schema is asserted."
          },
          "4XX": {
            "description": "Invalid input, authorization, scope, role, privacy, quota or rate-limit error"
          },
          "5XX": {
            "description": "Service or upstream failure"
          }
        }
      }
    },
    "/account/lookup/{username}": {
      "get": {
        "operationId": "get_account_lookup_by_username",
        "tags": [
          "account"
        ],
        "summary": "GET /account/lookup/:username",
        "description": "Request keys are observed in the implementation; unknown types are deliberately unconstrained. Server-side validation, membership, roles, privacy and rank checks still apply.",
        "x-velora-scopes": {},
        "x-captcha-required": false,
        "x-velora-legacy": false,
        "deprecated": false,
        "security": [],
        "parameters": [
          {
            "name": "username",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "2XX": {
            "description": "Endpoint-specific JSON, text, binary, redirect or empty success; see the guide. No exhaustive response schema is asserted."
          },
          "4XX": {
            "description": "Invalid input, authorization, scope, role, privacy, quota or rate-limit error"
          },
          "5XX": {
            "description": "Service or upstream failure"
          }
        }
      }
    },
    "/account/blocks": {
      "get": {
        "operationId": "get_account_blocks",
        "tags": [
          "account"
        ],
        "summary": "GET /account/blocks",
        "description": "The accounts YOU blocked: {blocks:[{username,pfp_url,color,created_at}]}. Blocking is mutual in effect (neither of you can see or interact with the other) but only the blocker sees or removes it. Request keys are observed in the implementation; unknown types are deliberately unconstrained. Server-side validation, membership, roles, privacy and rank checks still apply.",
        "x-velora-scopes": {
          "FRIENDS_READ": 256
        },
        "x-captcha-required": false,
        "x-velora-legacy": false,
        "deprecated": false,
        "security": [
          {
            "UserToken": []
          }
        ],
        "parameters": [],
        "responses": {
          "2XX": {
            "description": "Endpoint-specific JSON, text, binary, redirect or empty success; see the guide. No exhaustive response schema is asserted."
          },
          "4XX": {
            "description": "Invalid input, authorization, scope, role, privacy, quota or rate-limit error"
          },
          "5XX": {
            "description": "Service or upstream failure"
          }
        }
      },
      "post": {
        "operationId": "post_account_blocks",
        "tags": [
          "account"
        ],
        "summary": "POST /account/blocks",
        "description": "Block an account. Removes any friendship and pending friend requests between you, ends DM calls, and stops profiles, DMs, calls, payments and presence between the two of you. Staff (owner, admin, mod) cannot be blocked. Returns {success, blocked}. Request keys are observed in the implementation; unknown types are deliberately unconstrained. Server-side validation, membership, roles, privacy and rank checks still apply.",
        "x-velora-scopes": {
          "FRIENDS_MANAGE": 512
        },
        "x-captcha-required": false,
        "x-velora-legacy": false,
        "deprecated": false,
        "security": [
          {
            "UserToken": []
          }
        ],
        "parameters": [],
        "responses": {
          "2XX": {
            "description": "Endpoint-specific JSON, text, binary, redirect or empty success; see the guide. No exhaustive response schema is asserted."
          },
          "4XX": {
            "description": "Invalid input, authorization, scope, role, privacy, quota or rate-limit error"
          },
          "5XX": {
            "description": "Service or upstream failure"
          }
        },
        "requestBody": {
          "required": false,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "properties": {
                  "username": {
                    "description": "Observed request key. See guide for nested formats and constraints."
                  }
                },
                "additionalProperties": true
              }
            }
          }
        }
      }
    },
    "/account/blocks/{username}": {
      "delete": {
        "operationId": "delete_account_blocks_by_username",
        "tags": [
          "account"
        ],
        "summary": "DELETE /account/blocks/:username",
        "description": "Unblock. Only the account that blocked can. Returns {success, was_blocked}. Request keys are observed in the implementation; unknown types are deliberately unconstrained. Server-side validation, membership, roles, privacy and rank checks still apply.",
        "x-velora-scopes": {
          "FRIENDS_MANAGE": 512
        },
        "x-captcha-required": false,
        "x-velora-legacy": false,
        "deprecated": false,
        "security": [
          {
            "UserToken": []
          }
        ],
        "parameters": [
          {
            "name": "username",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "2XX": {
            "description": "Endpoint-specific JSON, text, binary, redirect or empty success; see the guide. No exhaustive response schema is asserted."
          },
          "4XX": {
            "description": "Invalid input, authorization, scope, role, privacy, quota or rate-limit error"
          },
          "5XX": {
            "description": "Service or upstream failure"
          }
        }
      }
    },
    "/account/dm-privacy": {
      "get": {
        "operationId": "get_account_dm_privacy",
        "tags": [
          "account"
        ],
        "summary": "GET /account/dm-privacy",
        "description": "Your 'who can DM you' setting: {dm_privacy:'everyone'|'friends'|'servers', options}. The same value as the Ember chat setting dm_privacy (GET /chat/settings). everyone = anyone (default), friends = friends only, servers = friends plus people who share an Ember server with you. Nookara staff and bots always get through. Request keys are observed in the implementation; unknown types are deliberately unconstrained. Server-side validation, membership, roles, privacy and rank checks still apply.",
        "x-velora-scopes": {
          "CHAT": 2048
        },
        "x-captcha-required": false,
        "x-velora-legacy": false,
        "deprecated": false,
        "security": [
          {
            "UserToken": []
          }
        ],
        "parameters": [],
        "responses": {
          "2XX": {
            "description": "Endpoint-specific JSON, text, binary, redirect or empty success; see the guide. No exhaustive response schema is asserted."
          },
          "4XX": {
            "description": "Invalid input, authorization, scope, role, privacy, quota or rate-limit error"
          },
          "5XX": {
            "description": "Service or upstream failure"
          }
        }
      },
      "patch": {
        "operationId": "patch_account_dm_privacy",
        "tags": [
          "account"
        ],
        "summary": "PATCH /account/dm-privacy",
        "description": "Set who can DM you: {dm_privacy:'everyone'|'friends'|'servers'}. Applies to starting a DM, sending DM messages (POST /im/send, im_send) and DM calls; a sender it blocks gets error dm_privacy (403, 'Failed to send this message due to the users privacy settings'). Staff and bots bypass. Returns {success, dm_privacy}. Request keys are observed in the implementation; unknown types are deliberately unconstrained. Server-side validation, membership, roles, privacy and rank checks still apply.",
        "x-velora-scopes": {
          "CHAT": 2048
        },
        "x-captcha-required": false,
        "x-velora-legacy": false,
        "deprecated": false,
        "security": [
          {
            "UserToken": []
          }
        ],
        "parameters": [],
        "responses": {
          "2XX": {
            "description": "Endpoint-specific JSON, text, binary, redirect or empty success; see the guide. No exhaustive response schema is asserted."
          },
          "4XX": {
            "description": "Invalid input, authorization, scope, role, privacy, quota or rate-limit error"
          },
          "5XX": {
            "description": "Service or upstream failure"
          }
        },
        "requestBody": {
          "required": false,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "properties": {
                  "dm_privacy": {
                    "description": "Observed request key. One of everyone, friends, servers."
                  }
                },
                "additionalProperties": true
              }
            }
          }
        }
      }
    },
    "/account/notices": {
      "get": {
        "operationId": "get_account_notices",
        "tags": [
          "account"
        ],
        "summary": "GET /account/notices",
        "description": "One-time account notices (\"what's new\" popups) this account hasn't dismissed yet, as ids, e.g. privacy-settings-2026-10. Some notices only go to accounts created before a cutoff. Clients show each id once and then call POST /account/notices/{id}/seen, which dismisses it on every surface.",
        "x-velora-scopes": {},
        "x-captcha-required": false,
        "x-velora-legacy": false,
        "deprecated": false,
        "security": [
          {
            "UserToken": []
          }
        ],
        "parameters": [],
        "responses": {
          "200": {
            "description": "Pending notice ids",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "notices": {
                      "type": "array",
                      "items": {
                        "type": "string"
                      },
                      "example": [
                        "privacy-settings-2026-10"
                      ]
                    }
                  }
                }
              }
            }
          },
          "4XX": {
            "description": "Invalid input, authorization, scope, role, privacy, quota or rate-limit error"
          },
          "5XX": {
            "description": "Service or upstream failure"
          }
        }
      }
    },
    "/account/notices/{id}/seen": {
      "post": {
        "operationId": "post_account_notices_by_id_seen",
        "tags": [
          "account"
        ],
        "summary": "POST /account/notices/:id/seen",
        "description": "Dismiss a one-time account notice for this account everywhere (the dashboard and every Ember client). Idempotent.",
        "x-velora-scopes": {},
        "x-captcha-required": false,
        "x-velora-legacy": false,
        "deprecated": false,
        "security": [
          {
            "UserToken": []
          }
        ],
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Dismissed",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "success": {
                      "type": "boolean"
                    }
                  }
                }
              }
            }
          },
          "404": {
            "description": "unknown_notice: no notice with that id"
          },
          "4XX": {
            "description": "Invalid input, authorization, scope, role, privacy, quota or rate-limit error"
          },
          "5XX": {
            "description": "Service or upstream failure"
          }
        }
      }
    },
    "/account/update": {
      "patch": {
        "operationId": "patch_account_update",
        "tags": [
          "account"
        ],
        "summary": "PATCH /account/update",
        "description": "Request keys are observed in the implementation; unknown types are deliberately unconstrained. Server-side validation, membership, roles, privacy and rank checks still apply.",
        "x-velora-scopes": {
          "ACCOUNT_WRITE": 8
        },
        "x-captcha-required": false,
        "x-velora-legacy": false,
        "deprecated": false,
        "security": [
          {
            "UserToken": []
          }
        ],
        "parameters": [],
        "responses": {
          "2XX": {
            "description": "Endpoint-specific JSON, text, binary, redirect or empty success; see the guide. No exhaustive response schema is asserted."
          },
          "4XX": {
            "description": "Invalid input, authorization, scope, role, privacy, quota or rate-limit error"
          },
          "5XX": {
            "description": "Service or upstream failure"
          }
        },
        "requestBody": {
          "required": false,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "properties": {
                  "bio": {
                    "description": "Observed request key. See guide for nested formats and constraints."
                  },
                  "timezone": {
                    "description": "Observed request key. See guide for nested formats and constraints."
                  },
                  "country_code": {
                    "description": "Observed request key. See guide for nested formats and constraints."
                  },
                  "color": {
                    "description": "Observed request key. See guide for nested formats and constraints."
                  },
                  "profile_visibility": {
                    "description": "Observed request key. See guide for nested formats and constraints."
                  },
                  "website": {
                    "description": "Observed request key. See guide for nested formats and constraints."
                  }
                },
                "additionalProperties": true
              }
            }
          }
        }
      }
    },
    "/account/change-password": {
      "post": {
        "operationId": "post_account_change_password",
        "tags": [
          "account"
        ],
        "summary": "POST /account/change-password",
        "description": "Request keys are observed in the implementation; unknown types are deliberately unconstrained. Server-side validation, membership, roles, privacy and rank checks still apply.",
        "x-velora-scopes": {},
        "x-captcha-required": false,
        "x-velora-legacy": false,
        "deprecated": false,
        "security": [
          {
            "UserToken": []
          }
        ],
        "parameters": [],
        "responses": {
          "2XX": {
            "description": "Endpoint-specific JSON, text, binary, redirect or empty success; see the guide. No exhaustive response schema is asserted."
          },
          "4XX": {
            "description": "Invalid input, authorization, scope, role, privacy, quota or rate-limit error"
          },
          "5XX": {
            "description": "Service or upstream failure"
          }
        },
        "requestBody": {
          "required": false,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "properties": {
                  "password": {
                    "description": "Observed request key. See guide for nested formats and constraints."
                  }
                },
                "additionalProperties": true
              }
            }
          }
        }
      }
    },
    "/account/cursor-ticket": {
      "get": {
        "operationId": "get_account_cursor_ticket",
        "tags": [
          "account"
        ],
        "summary": "GET /account/cursor-ticket",
        "description": "Request keys are observed in the implementation; unknown types are deliberately unconstrained. Server-side validation, membership, roles, privacy and rank checks still apply.",
        "x-velora-scopes": {},
        "x-captcha-required": false,
        "x-velora-legacy": false,
        "deprecated": false,
        "security": [
          {
            "UserToken": []
          }
        ],
        "parameters": [],
        "responses": {
          "2XX": {
            "description": "Endpoint-specific JSON, text, binary, redirect or empty success; see the guide. No exhaustive response schema is asserted."
          },
          "4XX": {
            "description": "Invalid input, authorization, scope, role, privacy, quota or rate-limit error"
          },
          "5XX": {
            "description": "Service or upstream failure"
          }
        }
      }
    },
    "/storage/info/usage": {
      "get": {
        "operationId": "get_storage_info_usage",
        "tags": [
          "storage"
        ],
        "summary": "GET /storage/info/usage",
        "description": "Request keys are observed in the implementation; unknown types are deliberately unconstrained. Server-side validation, membership, roles, privacy and rank checks still apply.",
        "x-velora-scopes": {
          "STORAGE_READ": 16
        },
        "x-captcha-required": false,
        "x-velora-legacy": false,
        "deprecated": false,
        "security": [
          {
            "UserToken": []
          }
        ],
        "parameters": [],
        "responses": {
          "2XX": {
            "description": "Endpoint-specific JSON, text, binary, redirect or empty success; see the guide. No exhaustive response schema is asserted."
          },
          "4XX": {
            "description": "Invalid input, authorization, scope, role, privacy, quota or rate-limit error"
          },
          "5XX": {
            "description": "Service or upstream failure"
          }
        }
      }
    },
    "/storage/{storageId}": {
      "get": {
        "operationId": "get_storage_by_storageid",
        "tags": [
          "storage"
        ],
        "summary": "GET /storage/:storageId",
        "description": "Request keys are observed in the implementation; unknown types are deliberately unconstrained. Server-side validation, membership, roles, privacy and rank checks still apply.",
        "x-velora-scopes": {
          "STORAGE_READ": 16
        },
        "x-captcha-required": false,
        "x-velora-legacy": false,
        "deprecated": false,
        "security": [
          {
            "UserToken": []
          }
        ],
        "parameters": [
          {
            "name": "storageId",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "2XX": {
            "description": "Endpoint-specific JSON, text, binary, redirect or empty success; see the guide. No exhaustive response schema is asserted."
          },
          "4XX": {
            "description": "Invalid input, authorization, scope, role, privacy, quota or rate-limit error"
          },
          "5XX": {
            "description": "Service or upstream failure"
          }
        }
      },
      "delete": {
        "operationId": "delete_storage_by_storageid",
        "tags": [
          "storage"
        ],
        "summary": "DELETE /storage/:storageId",
        "description": "Request keys are observed in the implementation; unknown types are deliberately unconstrained. Server-side validation, membership, roles, privacy and rank checks still apply.",
        "x-velora-scopes": {
          "STORAGE_WRITE": 32
        },
        "x-captcha-required": false,
        "x-velora-legacy": false,
        "deprecated": false,
        "security": [
          {
            "UserToken": []
          }
        ],
        "parameters": [
          {
            "name": "storageId",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "2XX": {
            "description": "Endpoint-specific JSON, text, binary, redirect or empty success; see the guide. No exhaustive response schema is asserted."
          },
          "4XX": {
            "description": "Invalid input, authorization, scope, role, privacy, quota or rate-limit error"
          },
          "5XX": {
            "description": "Service or upstream failure"
          }
        }
      }
    },
    "/storage/{storageId}/keys": {
      "get": {
        "operationId": "get_storage_by_storageid_keys",
        "tags": [
          "storage"
        ],
        "summary": "GET /storage/:storageId/keys",
        "description": "Request keys are observed in the implementation; unknown types are deliberately unconstrained. Server-side validation, membership, roles, privacy and rank checks still apply.",
        "x-velora-scopes": {
          "STORAGE_READ": 16
        },
        "x-captcha-required": false,
        "x-velora-legacy": false,
        "deprecated": false,
        "security": [
          {
            "UserToken": []
          }
        ],
        "parameters": [
          {
            "name": "storageId",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "2XX": {
            "description": "Endpoint-specific JSON, text, binary, redirect or empty success; see the guide. No exhaustive response schema is asserted."
          },
          "4XX": {
            "description": "Invalid input, authorization, scope, role, privacy, quota or rate-limit error"
          },
          "5XX": {
            "description": "Service or upstream failure"
          }
        }
      }
    },
    "/storage/{storageId}/values": {
      "get": {
        "operationId": "get_storage_by_storageid_values",
        "tags": [
          "storage"
        ],
        "summary": "GET /storage/:storageId/values",
        "description": "Request keys are observed in the implementation; unknown types are deliberately unconstrained. Server-side validation, membership, roles, privacy and rank checks still apply.",
        "x-velora-scopes": {
          "STORAGE_READ": 16
        },
        "x-captcha-required": false,
        "x-velora-legacy": false,
        "deprecated": false,
        "security": [
          {
            "UserToken": []
          }
        ],
        "parameters": [
          {
            "name": "storageId",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "2XX": {
            "description": "Endpoint-specific JSON, text, binary, redirect or empty success; see the guide. No exhaustive response schema is asserted."
          },
          "4XX": {
            "description": "Invalid input, authorization, scope, role, privacy, quota or rate-limit error"
          },
          "5XX": {
            "description": "Service or upstream failure"
          }
        }
      }
    },
    "/storage/{storageId}/{key}": {
      "get": {
        "operationId": "get_storage_by_storageid_by_key",
        "tags": [
          "storage"
        ],
        "summary": "GET /storage/:storageId/:key",
        "description": "Request keys are observed in the implementation; unknown types are deliberately unconstrained. Server-side validation, membership, roles, privacy and rank checks still apply.",
        "x-velora-scopes": {
          "STORAGE_READ": 16
        },
        "x-captcha-required": false,
        "x-velora-legacy": false,
        "deprecated": false,
        "security": [
          {
            "UserToken": []
          }
        ],
        "parameters": [
          {
            "name": "storageId",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "key",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "2XX": {
            "description": "Endpoint-specific JSON, text, binary, redirect or empty success; see the guide. No exhaustive response schema is asserted."
          },
          "4XX": {
            "description": "Invalid input, authorization, scope, role, privacy, quota or rate-limit error"
          },
          "5XX": {
            "description": "Service or upstream failure"
          }
        }
      },
      "put": {
        "operationId": "put_storage_by_storageid_by_key",
        "tags": [
          "storage"
        ],
        "summary": "PUT /storage/:storageId/:key",
        "description": "Request keys are observed in the implementation; unknown types are deliberately unconstrained. Server-side validation, membership, roles, privacy and rank checks still apply.",
        "x-velora-scopes": {
          "STORAGE_WRITE": 32
        },
        "x-captcha-required": false,
        "x-velora-legacy": false,
        "deprecated": false,
        "security": [
          {
            "UserToken": []
          }
        ],
        "parameters": [
          {
            "name": "storageId",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "key",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "2XX": {
            "description": "Endpoint-specific JSON, text, binary, redirect or empty success; see the guide. No exhaustive response schema is asserted."
          },
          "4XX": {
            "description": "Invalid input, authorization, scope, role, privacy, quota or rate-limit error"
          },
          "5XX": {
            "description": "Service or upstream failure"
          }
        },
        "requestBody": {
          "required": false,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "properties": {
                  "value": {
                    "description": "Observed request key. See guide for nested formats and constraints."
                  }
                },
                "additionalProperties": true
              }
            }
          }
        }
      },
      "delete": {
        "operationId": "delete_storage_by_storageid_by_key",
        "tags": [
          "storage"
        ],
        "summary": "DELETE /storage/:storageId/:key",
        "description": "Request keys are observed in the implementation; unknown types are deliberately unconstrained. Server-side validation, membership, roles, privacy and rank checks still apply.",
        "x-velora-scopes": {
          "STORAGE_WRITE": 32
        },
        "x-captcha-required": false,
        "x-velora-legacy": false,
        "deprecated": false,
        "security": [
          {
            "UserToken": []
          }
        ],
        "parameters": [
          {
            "name": "storageId",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "key",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "2XX": {
            "description": "Endpoint-specific JSON, text, binary, redirect or empty success; see the guide. No exhaustive response schema is asserted."
          },
          "4XX": {
            "description": "Invalid input, authorization, scope, role, privacy, quota or rate-limit error"
          },
          "5XX": {
            "description": "Service or upstream failure"
          }
        }
      }
    },
    "/storage-info/info/usage": {
      "get": {
        "operationId": "get_storage_info_info_usage",
        "tags": [
          "storage"
        ],
        "summary": "GET /storage-info/info/usage",
        "description": "Request keys are observed in the implementation; unknown types are deliberately unconstrained. Server-side validation, membership, roles, privacy and rank checks still apply.",
        "x-velora-scopes": {
          "STORAGE_READ": 16
        },
        "x-captcha-required": false,
        "x-velora-legacy": false,
        "deprecated": false,
        "security": [
          {
            "UserToken": []
          }
        ],
        "parameters": [],
        "responses": {
          "2XX": {
            "description": "Endpoint-specific JSON, text, binary, redirect or empty success; see the guide. No exhaustive response schema is asserted."
          },
          "4XX": {
            "description": "Invalid input, authorization, scope, role, privacy, quota or rate-limit error"
          },
          "5XX": {
            "description": "Service or upstream failure"
          }
        }
      }
    },
    "/storage-info/{storageId}": {
      "get": {
        "operationId": "get_storage_info_by_storageid",
        "tags": [
          "storage"
        ],
        "summary": "GET /storage-info/:storageId",
        "description": "Request keys are observed in the implementation; unknown types are deliberately unconstrained. Server-side validation, membership, roles, privacy and rank checks still apply.",
        "x-velora-scopes": {
          "STORAGE_READ": 16
        },
        "x-captcha-required": false,
        "x-velora-legacy": false,
        "deprecated": false,
        "security": [
          {
            "UserToken": []
          }
        ],
        "parameters": [
          {
            "name": "storageId",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "2XX": {
            "description": "Endpoint-specific JSON, text, binary, redirect or empty success; see the guide. No exhaustive response schema is asserted."
          },
          "4XX": {
            "description": "Invalid input, authorization, scope, role, privacy, quota or rate-limit error"
          },
          "5XX": {
            "description": "Service or upstream failure"
          }
        }
      },
      "delete": {
        "operationId": "delete_storage_info_by_storageid",
        "tags": [
          "storage"
        ],
        "summary": "DELETE /storage-info/:storageId",
        "description": "Request keys are observed in the implementation; unknown types are deliberately unconstrained. Server-side validation, membership, roles, privacy and rank checks still apply.",
        "x-velora-scopes": {
          "STORAGE_WRITE": 32
        },
        "x-captcha-required": false,
        "x-velora-legacy": false,
        "deprecated": false,
        "security": [
          {
            "UserToken": []
          }
        ],
        "parameters": [
          {
            "name": "storageId",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "2XX": {
            "description": "Endpoint-specific JSON, text, binary, redirect or empty success; see the guide. No exhaustive response schema is asserted."
          },
          "4XX": {
            "description": "Invalid input, authorization, scope, role, privacy, quota or rate-limit error"
          },
          "5XX": {
            "description": "Service or upstream failure"
          }
        }
      }
    },
    "/storage-info/{storageId}/keys": {
      "get": {
        "operationId": "get_storage_info_by_storageid_keys",
        "tags": [
          "storage"
        ],
        "summary": "GET /storage-info/:storageId/keys",
        "description": "Request keys are observed in the implementation; unknown types are deliberately unconstrained. Server-side validation, membership, roles, privacy and rank checks still apply.",
        "x-velora-scopes": {
          "STORAGE_READ": 16
        },
        "x-captcha-required": false,
        "x-velora-legacy": false,
        "deprecated": false,
        "security": [
          {
            "UserToken": []
          }
        ],
        "parameters": [
          {
            "name": "storageId",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "2XX": {
            "description": "Endpoint-specific JSON, text, binary, redirect or empty success; see the guide. No exhaustive response schema is asserted."
          },
          "4XX": {
            "description": "Invalid input, authorization, scope, role, privacy, quota or rate-limit error"
          },
          "5XX": {
            "description": "Service or upstream failure"
          }
        }
      }
    },
    "/storage-info/{storageId}/values": {
      "get": {
        "operationId": "get_storage_info_by_storageid_values",
        "tags": [
          "storage"
        ],
        "summary": "GET /storage-info/:storageId/values",
        "description": "Request keys are observed in the implementation; unknown types are deliberately unconstrained. Server-side validation, membership, roles, privacy and rank checks still apply.",
        "x-velora-scopes": {
          "STORAGE_READ": 16
        },
        "x-captcha-required": false,
        "x-velora-legacy": false,
        "deprecated": false,
        "security": [
          {
            "UserToken": []
          }
        ],
        "parameters": [
          {
            "name": "storageId",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "2XX": {
            "description": "Endpoint-specific JSON, text, binary, redirect or empty success; see the guide. No exhaustive response schema is asserted."
          },
          "4XX": {
            "description": "Invalid input, authorization, scope, role, privacy, quota or rate-limit error"
          },
          "5XX": {
            "description": "Service or upstream failure"
          }
        }
      }
    },
    "/storage-info/{storageId}/{key}": {
      "get": {
        "operationId": "get_storage_info_by_storageid_by_key",
        "tags": [
          "storage"
        ],
        "summary": "GET /storage-info/:storageId/:key",
        "description": "Request keys are observed in the implementation; unknown types are deliberately unconstrained. Server-side validation, membership, roles, privacy and rank checks still apply.",
        "x-velora-scopes": {
          "STORAGE_READ": 16
        },
        "x-captcha-required": false,
        "x-velora-legacy": false,
        "deprecated": false,
        "security": [
          {
            "UserToken": []
          }
        ],
        "parameters": [
          {
            "name": "storageId",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "key",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "2XX": {
            "description": "Endpoint-specific JSON, text, binary, redirect or empty success; see the guide. No exhaustive response schema is asserted."
          },
          "4XX": {
            "description": "Invalid input, authorization, scope, role, privacy, quota or rate-limit error"
          },
          "5XX": {
            "description": "Service or upstream failure"
          }
        }
      },
      "put": {
        "operationId": "put_storage_info_by_storageid_by_key",
        "tags": [
          "storage"
        ],
        "summary": "PUT /storage-info/:storageId/:key",
        "description": "Request keys are observed in the implementation; unknown types are deliberately unconstrained. Server-side validation, membership, roles, privacy and rank checks still apply.",
        "x-velora-scopes": {
          "STORAGE_WRITE": 32
        },
        "x-captcha-required": false,
        "x-velora-legacy": false,
        "deprecated": false,
        "security": [
          {
            "UserToken": []
          }
        ],
        "parameters": [
          {
            "name": "storageId",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "key",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "2XX": {
            "description": "Endpoint-specific JSON, text, binary, redirect or empty success; see the guide. No exhaustive response schema is asserted."
          },
          "4XX": {
            "description": "Invalid input, authorization, scope, role, privacy, quota or rate-limit error"
          },
          "5XX": {
            "description": "Service or upstream failure"
          }
        },
        "requestBody": {
          "required": false,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "properties": {
                  "value": {
                    "description": "Observed request key. See guide for nested formats and constraints."
                  }
                },
                "additionalProperties": true
              }
            }
          }
        }
      },
      "delete": {
        "operationId": "delete_storage_info_by_storageid_by_key",
        "tags": [
          "storage"
        ],
        "summary": "DELETE /storage-info/:storageId/:key",
        "description": "Request keys are observed in the implementation; unknown types are deliberately unconstrained. Server-side validation, membership, roles, privacy and rank checks still apply.",
        "x-velora-scopes": {
          "STORAGE_WRITE": 32
        },
        "x-captcha-required": false,
        "x-velora-legacy": false,
        "deprecated": false,
        "security": [
          {
            "UserToken": []
          }
        ],
        "parameters": [
          {
            "name": "storageId",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "key",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "2XX": {
            "description": "Endpoint-specific JSON, text, binary, redirect or empty success; see the guide. No exhaustive response schema is asserted."
          },
          "4XX": {
            "description": "Invalid input, authorization, scope, role, privacy, quota or rate-limit error"
          },
          "5XX": {
            "description": "Service or upstream failure"
          }
        }
      }
    },
    "/im/send": {
      "post": {
        "operationId": "post_im_send",
        "tags": [
          "instant-messages"
        ],
        "summary": "POST /im/send",
        "description": "Request keys are observed in the implementation; unknown types are deliberately unconstrained. Server-side validation, membership, roles, privacy and rank checks still apply.",
        "x-velora-scopes": {
          "VMAIL_SEND": 128
        },
        "x-captcha-required": false,
        "x-velora-legacy": false,
        "deprecated": false,
        "security": [
          {
            "UserToken": []
          }
        ],
        "parameters": [],
        "responses": {
          "2XX": {
            "description": "Endpoint-specific JSON, text, binary, redirect or empty success; see the guide. No exhaustive response schema is asserted."
          },
          "4XX": {
            "description": "Invalid input, authorization, scope, role, privacy, quota or rate-limit error"
          },
          "5XX": {
            "description": "Service or upstream failure"
          }
        },
        "requestBody": {
          "required": false,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "properties": {
                  "message": {
                    "description": "Observed request key. See guide for nested formats and constraints."
                  },
                  "status_reply": {
                    "description": "Observed request key. See guide for nested formats and constraints."
                  },
                  "to": {
                    "description": "Observed request key. See guide for nested formats and constraints."
                  }
                },
                "additionalProperties": true
              }
            }
          }
        }
      }
    },
    "/im/status-reply/{username}": {
      "get": {
        "operationId": "get_im_status_reply_by_username",
        "tags": [
          "instant-messages"
        ],
        "summary": "GET /im/status-reply/:username",
        "description": "Request keys are observed in the implementation; unknown types are deliberately unconstrained. Server-side validation, membership, roles, privacy and rank checks still apply.",
        "x-velora-scopes": {},
        "x-captcha-required": false,
        "x-velora-legacy": false,
        "deprecated": false,
        "security": [
          {
            "UserToken": []
          }
        ],
        "parameters": [
          {
            "name": "username",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "2XX": {
            "description": "Endpoint-specific JSON, text, binary, redirect or empty success; see the guide. No exhaustive response schema is asserted."
          },
          "4XX": {
            "description": "Invalid input, authorization, scope, role, privacy, quota or rate-limit error"
          },
          "5XX": {
            "description": "Service or upstream failure"
          }
        }
      }
    },
    "/im/conversations": {
      "get": {
        "operationId": "get_im_conversations",
        "tags": [
          "instant-messages"
        ],
        "summary": "GET /im/conversations",
        "description": "Request keys are observed in the implementation; unknown types are deliberately unconstrained. Server-side validation, membership, roles, privacy and rank checks still apply.",
        "x-velora-scopes": {
          "VMAIL_READ": 64
        },
        "x-captcha-required": false,
        "x-velora-legacy": false,
        "deprecated": false,
        "security": [
          {
            "UserToken": []
          }
        ],
        "parameters": [],
        "responses": {
          "2XX": {
            "description": "Endpoint-specific JSON, text, binary, redirect or empty success; see the guide. No exhaustive response schema is asserted."
          },
          "4XX": {
            "description": "Invalid input, authorization, scope, role, privacy, quota or rate-limit error"
          },
          "5XX": {
            "description": "Service or upstream failure"
          }
        }
      }
    },
    "/im/with/{username}": {
      "get": {
        "operationId": "get_im_with_by_username",
        "tags": [
          "instant-messages"
        ],
        "summary": "GET /im/with/:username",
        "description": "Request keys are observed in the implementation; unknown types are deliberately unconstrained. Server-side validation, membership, roles, privacy and rank checks still apply.",
        "x-velora-scopes": {
          "VMAIL_READ": 64
        },
        "x-captcha-required": false,
        "x-velora-legacy": false,
        "deprecated": false,
        "security": [
          {
            "UserToken": []
          }
        ],
        "parameters": [
          {
            "name": "username",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "before",
            "in": "query",
            "required": false,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "limit",
            "in": "query",
            "required": false,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "2XX": {
            "description": "Endpoint-specific JSON, text, binary, redirect or empty success; see the guide. No exhaustive response schema is asserted."
          },
          "4XX": {
            "description": "Invalid input, authorization, scope, role, privacy, quota or rate-limit error"
          },
          "5XX": {
            "description": "Service or upstream failure"
          }
        }
      }
    },
    "/im/with/{username}/read": {
      "post": {
        "operationId": "post_im_with_by_username_read",
        "tags": [
          "instant-messages"
        ],
        "summary": "POST /im/with/:username/read",
        "description": "Request keys are observed in the implementation; unknown types are deliberately unconstrained. Server-side validation, membership, roles, privacy and rank checks still apply.",
        "x-velora-scopes": {
          "VMAIL_READ": 64
        },
        "x-captcha-required": false,
        "x-velora-legacy": false,
        "deprecated": false,
        "security": [
          {
            "UserToken": []
          }
        ],
        "parameters": [
          {
            "name": "username",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "2XX": {
            "description": "Endpoint-specific JSON, text, binary, redirect or empty success; see the guide. No exhaustive response schema is asserted."
          },
          "4XX": {
            "description": "Invalid input, authorization, scope, role, privacy, quota or rate-limit error"
          },
          "5XX": {
            "description": "Service or upstream failure"
          }
        }
      }
    },
    "/im": {
      "get": {
        "operationId": "get_im",
        "tags": [
          "instant-messages"
        ],
        "summary": "GET /im",
        "description": "Request keys are observed in the implementation; unknown types are deliberately unconstrained. Server-side validation, membership, roles, privacy and rank checks still apply.",
        "x-velora-scopes": {
          "VMAIL_READ": 64
        },
        "x-captcha-required": false,
        "x-velora-legacy": false,
        "deprecated": false,
        "security": [
          {
            "UserToken": []
          }
        ],
        "parameters": [],
        "responses": {
          "2XX": {
            "description": "Endpoint-specific JSON, text, binary, redirect or empty success; see the guide. No exhaustive response schema is asserted."
          },
          "4XX": {
            "description": "Invalid input, authorization, scope, role, privacy, quota or rate-limit error"
          },
          "5XX": {
            "description": "Service or upstream failure"
          }
        }
      },
      "delete": {
        "operationId": "delete_im",
        "tags": [
          "instant-messages"
        ],
        "summary": "DELETE /im",
        "description": "Request keys are observed in the implementation; unknown types are deliberately unconstrained. Server-side validation, membership, roles, privacy and rank checks still apply.",
        "x-velora-scopes": {
          "VMAIL_SEND": 128
        },
        "x-captcha-required": false,
        "x-velora-legacy": false,
        "deprecated": false,
        "security": [
          {
            "UserToken": []
          }
        ],
        "parameters": [],
        "responses": {
          "2XX": {
            "description": "Endpoint-specific JSON, text, binary, redirect or empty success; see the guide. No exhaustive response schema is asserted."
          },
          "4XX": {
            "description": "Invalid input, authorization, scope, role, privacy, quota or rate-limit error"
          },
          "5XX": {
            "description": "Service or upstream failure"
          }
        }
      }
    },
    "/im/inbox": {
      "get": {
        "operationId": "get_im_inbox",
        "tags": [
          "instant-messages"
        ],
        "summary": "GET /im/inbox",
        "description": "Request keys are observed in the implementation; unknown types are deliberately unconstrained. Server-side validation, membership, roles, privacy and rank checks still apply.",
        "x-velora-scopes": {
          "VMAIL_READ": 64
        },
        "x-captcha-required": false,
        "x-velora-legacy": false,
        "deprecated": false,
        "security": [
          {
            "UserToken": []
          }
        ],
        "parameters": [],
        "responses": {
          "2XX": {
            "description": "Endpoint-specific JSON, text, binary, redirect or empty success; see the guide. No exhaustive response schema is asserted."
          },
          "4XX": {
            "description": "Invalid input, authorization, scope, role, privacy, quota or rate-limit error"
          },
          "5XX": {
            "description": "Service or upstream failure"
          }
        }
      }
    },
    "/im/sent": {
      "get": {
        "operationId": "get_im_sent",
        "tags": [
          "instant-messages"
        ],
        "summary": "GET /im/sent",
        "description": "Request keys are observed in the implementation; unknown types are deliberately unconstrained. Server-side validation, membership, roles, privacy and rank checks still apply.",
        "x-velora-scopes": {
          "VMAIL_READ": 64
        },
        "x-captcha-required": false,
        "x-velora-legacy": false,
        "deprecated": false,
        "security": [
          {
            "UserToken": []
          }
        ],
        "parameters": [],
        "responses": {
          "2XX": {
            "description": "Endpoint-specific JSON, text, binary, redirect or empty success; see the guide. No exhaustive response schema is asserted."
          },
          "4XX": {
            "description": "Invalid input, authorization, scope, role, privacy, quota or rate-limit error"
          },
          "5XX": {
            "description": "Service or upstream failure"
          }
        }
      }
    },
    "/im/unread-count": {
      "get": {
        "operationId": "get_im_unread_count",
        "tags": [
          "instant-messages"
        ],
        "summary": "GET /im/unread-count",
        "description": "Request keys are observed in the implementation; unknown types are deliberately unconstrained. Server-side validation, membership, roles, privacy and rank checks still apply.",
        "x-velora-scopes": {
          "VMAIL_READ": 64
        },
        "x-captcha-required": false,
        "x-velora-legacy": false,
        "deprecated": false,
        "security": [
          {
            "UserToken": []
          }
        ],
        "parameters": [],
        "responses": {
          "2XX": {
            "description": "Endpoint-specific JSON, text, binary, redirect or empty success; see the guide. No exhaustive response schema is asserted."
          },
          "4XX": {
            "description": "Invalid input, authorization, scope, role, privacy, quota or rate-limit error"
          },
          "5XX": {
            "description": "Service or upstream failure"
          }
        }
      }
    },
    "/im/{id}/read": {
      "patch": {
        "operationId": "patch_im_by_id_read",
        "tags": [
          "instant-messages"
        ],
        "summary": "PATCH /im/:id/read",
        "description": "Request keys are observed in the implementation; unknown types are deliberately unconstrained. Server-side validation, membership, roles, privacy and rank checks still apply.",
        "x-velora-scopes": {
          "VMAIL_READ": 64
        },
        "x-captcha-required": false,
        "x-velora-legacy": false,
        "deprecated": false,
        "security": [
          {
            "UserToken": []
          }
        ],
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "2XX": {
            "description": "Endpoint-specific JSON, text, binary, redirect or empty success; see the guide. No exhaustive response schema is asserted."
          },
          "4XX": {
            "description": "Invalid input, authorization, scope, role, privacy, quota or rate-limit error"
          },
          "5XX": {
            "description": "Service or upstream failure"
          }
        }
      }
    },
    "/im/{id}/edit": {
      "patch": {
        "operationId": "patch_im_by_id_edit",
        "tags": [
          "instant-messages"
        ],
        "summary": "PATCH /im/:id/edit",
        "description": "Request keys are observed in the implementation; unknown types are deliberately unconstrained. Server-side validation, membership, roles, privacy and rank checks still apply.",
        "x-velora-scopes": {
          "VMAIL_SEND": 128
        },
        "x-captcha-required": false,
        "x-velora-legacy": false,
        "deprecated": false,
        "security": [
          {
            "UserToken": []
          }
        ],
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "2XX": {
            "description": "Endpoint-specific JSON, text, binary, redirect or empty success; see the guide. No exhaustive response schema is asserted."
          },
          "4XX": {
            "description": "Invalid input, authorization, scope, role, privacy, quota or rate-limit error"
          },
          "5XX": {
            "description": "Service or upstream failure"
          }
        },
        "requestBody": {
          "required": false,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "properties": {
                  "body": {
                    "description": "Observed request key. See guide for nested formats and constraints."
                  }
                },
                "additionalProperties": true
              }
            }
          }
        }
      }
    },
    "/im/{id}": {
      "delete": {
        "operationId": "delete_im_by_id",
        "tags": [
          "instant-messages"
        ],
        "summary": "DELETE /im/:id",
        "description": "Request keys are observed in the implementation; unknown types are deliberately unconstrained. Server-side validation, membership, roles, privacy and rank checks still apply.",
        "x-velora-scopes": {
          "VMAIL_SEND": 128
        },
        "x-captcha-required": false,
        "x-velora-legacy": false,
        "deprecated": false,
        "security": [
          {
            "UserToken": []
          }
        ],
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "2XX": {
            "description": "Endpoint-specific JSON, text, binary, redirect or empty success; see the guide. No exhaustive response schema is asserted."
          },
          "4XX": {
            "description": "Invalid input, authorization, scope, role, privacy, quota or rate-limit error"
          },
          "5XX": {
            "description": "Service or upstream failure"
          }
        }
      }
    },
    "/friends": {
      "get": {
        "operationId": "get_friends",
        "tags": [
          "friends"
        ],
        "summary": "GET /friends",
        "description": "Request keys are observed in the implementation; unknown types are deliberately unconstrained. Server-side validation, membership, roles, privacy and rank checks still apply.",
        "x-velora-scopes": {
          "FRIENDS_READ": 256
        },
        "x-captcha-required": false,
        "x-velora-legacy": false,
        "deprecated": false,
        "security": [
          {
            "UserToken": []
          }
        ],
        "parameters": [],
        "responses": {
          "2XX": {
            "description": "Endpoint-specific JSON, text, binary, redirect or empty success; see the guide. No exhaustive response schema is asserted."
          },
          "4XX": {
            "description": "Invalid input, authorization, scope, role, privacy, quota or rate-limit error"
          },
          "5XX": {
            "description": "Service or upstream failure"
          }
        }
      }
    },
    "/friends/requests": {
      "get": {
        "operationId": "get_friends_requests",
        "tags": [
          "friends"
        ],
        "summary": "GET /friends/requests",
        "description": "Request keys are observed in the implementation; unknown types are deliberately unconstrained. Server-side validation, membership, roles, privacy and rank checks still apply.",
        "x-velora-scopes": {
          "FRIENDS_READ": 256
        },
        "x-captcha-required": false,
        "x-velora-legacy": false,
        "deprecated": false,
        "security": [
          {
            "UserToken": []
          }
        ],
        "parameters": [],
        "responses": {
          "2XX": {
            "description": "Endpoint-specific JSON, text, binary, redirect or empty success; see the guide. No exhaustive response schema is asserted."
          },
          "4XX": {
            "description": "Invalid input, authorization, scope, role, privacy, quota or rate-limit error"
          },
          "5XX": {
            "description": "Service or upstream failure"
          }
        }
      }
    },
    "/friends/request": {
      "post": {
        "operationId": "post_friends_request",
        "tags": [
          "friends"
        ],
        "summary": "POST /friends/request",
        "description": "Request keys are observed in the implementation; unknown types are deliberately unconstrained. Server-side validation, membership, roles, privacy and rank checks still apply.",
        "x-velora-scopes": {
          "FRIENDS_MANAGE": 512
        },
        "x-captcha-required": false,
        "x-velora-legacy": false,
        "deprecated": false,
        "security": [
          {
            "UserToken": []
          }
        ],
        "parameters": [],
        "responses": {
          "2XX": {
            "description": "Endpoint-specific JSON, text, binary, redirect or empty success; see the guide. No exhaustive response schema is asserted."
          },
          "4XX": {
            "description": "Invalid input, authorization, scope, role, privacy, quota or rate-limit error"
          },
          "5XX": {
            "description": "Service or upstream failure"
          }
        },
        "requestBody": {
          "required": false,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "properties": {
                  "username": {
                    "description": "Observed request key. See guide for nested formats and constraints."
                  }
                },
                "additionalProperties": true
              }
            }
          }
        }
      }
    },
    "/friends/request/{id}/accept": {
      "patch": {
        "operationId": "patch_friends_request_by_id_accept",
        "tags": [
          "friends"
        ],
        "summary": "PATCH /friends/request/:id/accept",
        "description": "Request keys are observed in the implementation; unknown types are deliberately unconstrained. Server-side validation, membership, roles, privacy and rank checks still apply.",
        "x-velora-scopes": {
          "FRIENDS_MANAGE": 512
        },
        "x-captcha-required": false,
        "x-velora-legacy": false,
        "deprecated": false,
        "security": [
          {
            "UserToken": []
          }
        ],
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "2XX": {
            "description": "Endpoint-specific JSON, text, binary, redirect or empty success; see the guide. No exhaustive response schema is asserted."
          },
          "4XX": {
            "description": "Invalid input, authorization, scope, role, privacy, quota or rate-limit error"
          },
          "5XX": {
            "description": "Service or upstream failure"
          }
        }
      }
    },
    "/friends/request/{id}/decline": {
      "patch": {
        "operationId": "patch_friends_request_by_id_decline",
        "tags": [
          "friends"
        ],
        "summary": "PATCH /friends/request/:id/decline",
        "description": "Request keys are observed in the implementation; unknown types are deliberately unconstrained. Server-side validation, membership, roles, privacy and rank checks still apply.",
        "x-velora-scopes": {
          "FRIENDS_MANAGE": 512
        },
        "x-captcha-required": false,
        "x-velora-legacy": false,
        "deprecated": false,
        "security": [
          {
            "UserToken": []
          }
        ],
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "2XX": {
            "description": "Endpoint-specific JSON, text, binary, redirect or empty success; see the guide. No exhaustive response schema is asserted."
          },
          "4XX": {
            "description": "Invalid input, authorization, scope, role, privacy, quota or rate-limit error"
          },
          "5XX": {
            "description": "Service or upstream failure"
          }
        }
      }
    },
    "/friends/{username}": {
      "delete": {
        "operationId": "delete_friends_by_username",
        "tags": [
          "friends"
        ],
        "summary": "DELETE /friends/:username",
        "description": "Request keys are observed in the implementation; unknown types are deliberately unconstrained. Server-side validation, membership, roles, privacy and rank checks still apply.",
        "x-velora-scopes": {
          "FRIENDS_MANAGE": 512
        },
        "x-captcha-required": false,
        "x-velora-legacy": false,
        "deprecated": false,
        "security": [
          {
            "UserToken": []
          }
        ],
        "parameters": [
          {
            "name": "username",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "2XX": {
            "description": "Endpoint-specific JSON, text, binary, redirect or empty success; see the guide. No exhaustive response schema is asserted."
          },
          "4XX": {
            "description": "Invalid input, authorization, scope, role, privacy, quota or rate-limit error"
          },
          "5XX": {
            "description": "Service or upstream failure"
          }
        }
      }
    },
    "/friends/status/{username}": {
      "get": {
        "operationId": "get_friends_status_by_username",
        "tags": [
          "friends"
        ],
        "summary": "GET /friends/status/:username",
        "description": "Request keys are observed in the implementation; unknown types are deliberately unconstrained. Server-side validation, membership, roles, privacy and rank checks still apply.",
        "x-velora-scopes": {
          "FRIENDS_READ": 256
        },
        "x-captcha-required": false,
        "x-velora-legacy": false,
        "deprecated": false,
        "security": [
          {
            "UserToken": []
          }
        ],
        "parameters": [
          {
            "name": "username",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "2XX": {
            "description": "Endpoint-specific JSON, text, binary, redirect or empty success; see the guide. No exhaustive response schema is asserted."
          },
          "4XX": {
            "description": "Invalid input, authorization, scope, role, privacy, quota or rate-limit error"
          },
          "5XX": {
            "description": "Service or upstream failure"
          }
        }
      }
    },
    "/groups": {
      "get": {
        "operationId": "get_groups",
        "tags": [
          "groups"
        ],
        "summary": "GET /groups",
        "description": "Request keys are observed in the implementation; unknown types are deliberately unconstrained. Server-side validation, membership, roles, privacy and rank checks still apply.",
        "x-velora-scopes": {
          "CHAT": 2048
        },
        "x-captcha-required": false,
        "x-velora-legacy": false,
        "deprecated": false,
        "security": [
          {
            "UserToken": []
          }
        ],
        "parameters": [],
        "responses": {
          "2XX": {
            "description": "Endpoint-specific JSON, text, binary, redirect or empty success; see the guide. No exhaustive response schema is asserted."
          },
          "4XX": {
            "description": "Invalid input, authorization, scope, role, privacy, quota or rate-limit error"
          },
          "5XX": {
            "description": "Service or upstream failure"
          }
        }
      },
      "post": {
        "operationId": "post_groups",
        "tags": [
          "groups"
        ],
        "summary": "POST /groups",
        "description": "Request keys are observed in the implementation; unknown types are deliberately unconstrained. Server-side validation, membership, roles, privacy and rank checks still apply.",
        "x-velora-scopes": {
          "CHAT": 2048
        },
        "x-captcha-required": false,
        "x-velora-legacy": false,
        "deprecated": false,
        "security": [
          {
            "UserToken": []
          }
        ],
        "parameters": [],
        "responses": {
          "2XX": {
            "description": "Endpoint-specific JSON, text, binary, redirect or empty success; see the guide. No exhaustive response schema is asserted."
          },
          "4XX": {
            "description": "Invalid input, authorization, scope, role, privacy, quota or rate-limit error"
          },
          "5XX": {
            "description": "Service or upstream failure"
          }
        },
        "requestBody": {
          "required": false,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "properties": {
                  "members": {
                    "description": "Observed request key. See guide for nested formats and constraints."
                  },
                  "name": {
                    "description": "Observed request key. See guide for nested formats and constraints."
                  }
                },
                "additionalProperties": true
              }
            }
          }
        }
      }
    },
    "/groups/{room}": {
      "get": {
        "operationId": "get_groups_by_room",
        "tags": [
          "groups"
        ],
        "summary": "GET /groups/:room",
        "description": "Request keys are observed in the implementation; unknown types are deliberately unconstrained. Server-side validation, membership, roles, privacy and rank checks still apply.",
        "x-velora-scopes": {
          "CHAT": 2048
        },
        "x-captcha-required": false,
        "x-velora-legacy": false,
        "deprecated": false,
        "security": [
          {
            "UserToken": []
          }
        ],
        "parameters": [
          {
            "name": "room",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "2XX": {
            "description": "Endpoint-specific JSON, text, binary, redirect or empty success; see the guide. No exhaustive response schema is asserted."
          },
          "4XX": {
            "description": "Invalid input, authorization, scope, role, privacy, quota or rate-limit error"
          },
          "5XX": {
            "description": "Service or upstream failure"
          }
        }
      },
      "patch": {
        "operationId": "patch_groups_by_room",
        "tags": [
          "groups"
        ],
        "summary": "PATCH /groups/:room",
        "description": "Request keys are observed in the implementation; unknown types are deliberately unconstrained. Server-side validation, membership, roles, privacy and rank checks still apply.",
        "x-velora-scopes": {
          "CHAT": 2048
        },
        "x-captcha-required": false,
        "x-velora-legacy": false,
        "deprecated": false,
        "security": [
          {
            "UserToken": []
          }
        ],
        "parameters": [
          {
            "name": "room",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "2XX": {
            "description": "Endpoint-specific JSON, text, binary, redirect or empty success; see the guide. No exhaustive response schema is asserted."
          },
          "4XX": {
            "description": "Invalid input, authorization, scope, role, privacy, quota or rate-limit error"
          },
          "5XX": {
            "description": "Service or upstream failure"
          }
        },
        "requestBody": {
          "required": false,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "properties": {
                  "name": {
                    "description": "Observed request key. See guide for nested formats and constraints."
                  }
                },
                "additionalProperties": true
              }
            }
          }
        }
      },
      "delete": {
        "operationId": "delete_groups_by_room",
        "tags": [
          "groups"
        ],
        "summary": "DELETE /groups/:room",
        "description": "Request keys are observed in the implementation; unknown types are deliberately unconstrained. Server-side validation, membership, roles, privacy and rank checks still apply.",
        "x-velora-scopes": {
          "CHAT": 2048
        },
        "x-captcha-required": false,
        "x-velora-legacy": false,
        "deprecated": false,
        "security": [
          {
            "UserToken": []
          }
        ],
        "parameters": [
          {
            "name": "room",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "2XX": {
            "description": "Endpoint-specific JSON, text, binary, redirect or empty success; see the guide. No exhaustive response schema is asserted."
          },
          "4XX": {
            "description": "Invalid input, authorization, scope, role, privacy, quota or rate-limit error"
          },
          "5XX": {
            "description": "Service or upstream failure"
          }
        }
      }
    },
    "/groups/{room}/messages": {
      "get": {
        "operationId": "get_groups_by_room_messages",
        "tags": [
          "groups"
        ],
        "summary": "GET /groups/:room/messages",
        "description": "Request keys are observed in the implementation; unknown types are deliberately unconstrained. Server-side validation, membership, roles, privacy and rank checks still apply.",
        "x-velora-scopes": {
          "CHAT": 2048
        },
        "x-captcha-required": false,
        "x-velora-legacy": false,
        "deprecated": false,
        "security": [
          {
            "UserToken": []
          }
        ],
        "parameters": [
          {
            "name": "room",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "limit",
            "in": "query",
            "required": false,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "2XX": {
            "description": "Endpoint-specific JSON, text, binary, redirect or empty success; see the guide. No exhaustive response schema is asserted."
          },
          "4XX": {
            "description": "Invalid input, authorization, scope, role, privacy, quota or rate-limit error"
          },
          "5XX": {
            "description": "Service or upstream failure"
          }
        }
      },
      "post": {
        "operationId": "post_groups_by_room_messages",
        "tags": [
          "groups"
        ],
        "summary": "POST /groups/:room/messages",
        "description": "Request keys are observed in the implementation; unknown types are deliberately unconstrained. Server-side validation, membership, roles, privacy and rank checks still apply.",
        "x-velora-scopes": {
          "CHAT": 2048
        },
        "x-captcha-required": false,
        "x-velora-legacy": false,
        "deprecated": false,
        "security": [
          {
            "UserToken": []
          }
        ],
        "parameters": [
          {
            "name": "room",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "2XX": {
            "description": "Endpoint-specific JSON, text, binary, redirect or empty success; see the guide. No exhaustive response schema is asserted."
          },
          "4XX": {
            "description": "Invalid input, authorization, scope, role, privacy, quota or rate-limit error"
          },
          "5XX": {
            "description": "Service or upstream failure"
          }
        },
        "requestBody": {
          "required": false,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "properties": {
                  "color": {
                    "description": "Observed request key. See guide for nested formats and constraints."
                  },
                  "message": {
                    "description": "Observed request key. See guide for nested formats and constraints."
                  }
                },
                "additionalProperties": true
              }
            }
          }
        }
      }
    },
    "/groups/{room}/members": {
      "post": {
        "operationId": "post_groups_by_room_members",
        "tags": [
          "groups"
        ],
        "summary": "POST /groups/:room/members",
        "description": "Request keys are observed in the implementation; unknown types are deliberately unconstrained. Server-side validation, membership, roles, privacy and rank checks still apply.",
        "x-velora-scopes": {
          "CHAT": 2048
        },
        "x-captcha-required": false,
        "x-velora-legacy": false,
        "deprecated": false,
        "security": [
          {
            "UserToken": []
          }
        ],
        "parameters": [
          {
            "name": "room",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "2XX": {
            "description": "Endpoint-specific JSON, text, binary, redirect or empty success; see the guide. No exhaustive response schema is asserted."
          },
          "4XX": {
            "description": "Invalid input, authorization, scope, role, privacy, quota or rate-limit error"
          },
          "5XX": {
            "description": "Service or upstream failure"
          }
        },
        "requestBody": {
          "required": false,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "properties": {
                  "username": {
                    "description": "Observed request key. See guide for nested formats and constraints."
                  }
                },
                "additionalProperties": true
              }
            }
          }
        }
      }
    },
    "/groups/{room}/members/{username}": {
      "delete": {
        "operationId": "delete_groups_by_room_members_by_username",
        "tags": [
          "groups"
        ],
        "summary": "DELETE /groups/:room/members/:username",
        "description": "Request keys are observed in the implementation; unknown types are deliberately unconstrained. Server-side validation, membership, roles, privacy and rank checks still apply.",
        "x-velora-scopes": {
          "CHAT": 2048
        },
        "x-captcha-required": false,
        "x-velora-legacy": false,
        "deprecated": false,
        "security": [
          {
            "UserToken": []
          }
        ],
        "parameters": [
          {
            "name": "room",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "username",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "2XX": {
            "description": "Endpoint-specific JSON, text, binary, redirect or empty success; see the guide. No exhaustive response schema is asserted."
          },
          "4XX": {
            "description": "Invalid input, authorization, scope, role, privacy, quota or rate-limit error"
          },
          "5XX": {
            "description": "Service or upstream failure"
          }
        }
      }
    },
    "/chat/game/downloads": {
      "get": {
        "operationId": "get_chat_game_downloads",
        "tags": [
          "game"
        ],
        "summary": "GET /chat/game/downloads",
        "description": "Legacy: Nookara-hosted servers are read-only now (writes answer server_read_only with moved_to). Use an Ember instance instead. Request keys are observed in the implementation; unknown types are deliberately unconstrained. Server-side validation, membership, roles, privacy and rank checks still apply.",
        "x-velora-scopes": {},
        "x-captcha-required": false,
        "x-velora-legacy": true,
        "deprecated": true,
        "security": [],
        "parameters": [],
        "responses": {
          "2XX": {
            "description": "Endpoint-specific JSON, text, binary, redirect or empty success; see the guide. No exhaustive response schema is asserted."
          },
          "4XX": {
            "description": "Invalid input, authorization, scope, role, privacy, quota or rate-limit error"
          },
          "5XX": {
            "description": "Service or upstream failure"
          }
        }
      }
    },
    "/chat/game/servers/{sid}/instances": {
      "get": {
        "operationId": "get_chat_game_servers_by_sid_instances",
        "tags": [
          "game"
        ],
        "summary": "GET /chat/game/servers/:sid/instances",
        "description": "Legacy: Nookara-hosted servers are read-only now (writes answer server_read_only with moved_to). Use an Ember instance instead. Request keys are observed in the implementation; unknown types are deliberately unconstrained. Server-side validation, membership, roles, privacy and rank checks still apply.",
        "x-velora-scopes": {
          "CHAT": 2048
        },
        "x-captcha-required": false,
        "x-velora-legacy": true,
        "deprecated": true,
        "security": [
          {
            "UserToken": []
          }
        ],
        "parameters": [
          {
            "name": "sid",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "2XX": {
            "description": "Endpoint-specific JSON, text, binary, redirect or empty success; see the guide. No exhaustive response schema is asserted."
          },
          "4XX": {
            "description": "Invalid input, authorization, scope, role, privacy, quota or rate-limit error"
          },
          "5XX": {
            "description": "Service or upstream failure"
          }
        }
      }
    },
    "/chat/game/servers/{sid}/instances/{iid}": {
      "delete": {
        "operationId": "delete_chat_game_servers_by_sid_instances_by_iid",
        "tags": [
          "game"
        ],
        "summary": "DELETE /chat/game/servers/:sid/instances/:iid",
        "description": "Legacy: Nookara-hosted servers are read-only now (writes answer server_read_only with moved_to). Use an Ember instance instead. Request keys are observed in the implementation; unknown types are deliberately unconstrained. Server-side validation, membership, roles, privacy and rank checks still apply.",
        "x-velora-scopes": {
          "CHAT": 2048
        },
        "x-captcha-required": false,
        "x-velora-legacy": true,
        "deprecated": true,
        "security": [
          {
            "UserToken": []
          }
        ],
        "parameters": [
          {
            "name": "sid",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "iid",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "2XX": {
            "description": "Endpoint-specific JSON, text, binary, redirect or empty success; see the guide. No exhaustive response schema is asserted."
          },
          "4XX": {
            "description": "Invalid input, authorization, scope, role, privacy, quota or rate-limit error"
          },
          "5XX": {
            "description": "Service or upstream failure"
          }
        }
      }
    },
    "/chat/game/unclaimed": {
      "get": {
        "operationId": "get_chat_game_unclaimed",
        "tags": [
          "game"
        ],
        "summary": "GET /chat/game/unclaimed",
        "description": "Legacy: Nookara-hosted servers are read-only now (writes answer server_read_only with moved_to). Use an Ember instance instead. Request keys are observed in the implementation; unknown types are deliberately unconstrained. Server-side validation, membership, roles, privacy and rank checks still apply.",
        "x-velora-scopes": {
          "CHAT": 2048
        },
        "x-captcha-required": false,
        "x-velora-legacy": true,
        "deprecated": true,
        "security": [
          {
            "UserToken": []
          }
        ],
        "parameters": [
          {
            "name": "page",
            "in": "query",
            "required": false,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "q",
            "in": "query",
            "required": false,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "sid",
            "in": "query",
            "required": false,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "tag",
            "in": "query",
            "required": false,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "2XX": {
            "description": "Endpoint-specific JSON, text, binary, redirect or empty success; see the guide. No exhaustive response schema is asserted."
          },
          "4XX": {
            "description": "Invalid input, authorization, scope, role, privacy, quota or rate-limit error"
          },
          "5XX": {
            "description": "Service or upstream failure"
          }
        }
      }
    },
    "/chat/game/claims": {
      "post": {
        "operationId": "post_chat_game_claims",
        "tags": [
          "game"
        ],
        "summary": "POST /chat/game/claims",
        "description": "Legacy: Nookara-hosted servers are read-only now (writes answer server_read_only with moved_to). Use an Ember instance instead. Request keys are observed in the implementation; unknown types are deliberately unconstrained. Server-side validation, membership, roles, privacy and rank checks still apply.",
        "x-velora-scopes": {
          "CHAT": 2048
        },
        "x-captcha-required": false,
        "x-velora-legacy": true,
        "deprecated": true,
        "security": [
          {
            "UserToken": []
          }
        ],
        "parameters": [],
        "responses": {
          "2XX": {
            "description": "Endpoint-specific JSON, text, binary, redirect or empty success; see the guide. No exhaustive response schema is asserted."
          },
          "4XX": {
            "description": "Invalid input, authorization, scope, role, privacy, quota or rate-limit error"
          },
          "5XX": {
            "description": "Service or upstream failure"
          }
        },
        "requestBody": {
          "required": false,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "properties": {
                  "cid": {
                    "description": "Observed request key. See guide for nested formats and constraints."
                  },
                  "hint": {
                    "description": "Observed request key. See guide for nested formats and constraints."
                  },
                  "sid": {
                    "description": "Observed request key. See guide for nested formats and constraints."
                  }
                },
                "additionalProperties": true
              }
            }
          }
        }
      }
    },
    "/chat/game/claims/{code}": {
      "get": {
        "operationId": "get_chat_game_claims_by_code",
        "tags": [
          "game"
        ],
        "summary": "GET /chat/game/claims/:code",
        "description": "Legacy: Nookara-hosted servers are read-only now (writes answer server_read_only with moved_to). Use an Ember instance instead. Request keys are observed in the implementation; unknown types are deliberately unconstrained. Server-side validation, membership, roles, privacy and rank checks still apply.",
        "x-velora-scopes": {
          "CHAT": 2048
        },
        "x-captcha-required": false,
        "x-velora-legacy": true,
        "deprecated": true,
        "security": [
          {
            "UserToken": []
          }
        ],
        "parameters": [
          {
            "name": "code",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "2XX": {
            "description": "Endpoint-specific JSON, text, binary, redirect or empty success; see the guide. No exhaustive response schema is asserted."
          },
          "4XX": {
            "description": "Invalid input, authorization, scope, role, privacy, quota or rate-limit error"
          },
          "5XX": {
            "description": "Service or upstream failure"
          }
        }
      }
    },
    "/chat/game/channels/{cid}/status": {
      "get": {
        "operationId": "get_chat_game_channels_by_cid_status",
        "tags": [
          "game"
        ],
        "summary": "GET /chat/game/channels/:cid/status",
        "description": "Legacy: Nookara-hosted servers are read-only now (writes answer server_read_only with moved_to). Use an Ember instance instead. Request keys are observed in the implementation; unknown types are deliberately unconstrained. Server-side validation, membership, roles, privacy and rank checks still apply.",
        "x-velora-scopes": {
          "CHAT": 2048
        },
        "x-captcha-required": false,
        "x-velora-legacy": true,
        "deprecated": true,
        "security": [
          {
            "UserToken": []
          }
        ],
        "parameters": [
          {
            "name": "cid",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "2XX": {
            "description": "Endpoint-specific JSON, text, binary, redirect or empty success; see the guide. No exhaustive response schema is asserted."
          },
          "4XX": {
            "description": "Invalid input, authorization, scope, role, privacy, quota or rate-limit error"
          },
          "5XX": {
            "description": "Service or upstream failure"
          }
        }
      }
    },
    "/chat/game/channels/{cid}/console": {
      "get": {
        "operationId": "get_chat_game_channels_by_cid_console",
        "tags": [
          "game"
        ],
        "summary": "GET /chat/game/channels/:cid/console",
        "description": "Legacy: Nookara-hosted servers are read-only now (writes answer server_read_only with moved_to). Use an Ember instance instead. Request keys are observed in the implementation; unknown types are deliberately unconstrained. Server-side validation, membership, roles, privacy and rank checks still apply.",
        "x-velora-scopes": {
          "CHAT": 2048
        },
        "x-captcha-required": false,
        "x-velora-legacy": true,
        "deprecated": true,
        "security": [
          {
            "UserToken": []
          }
        ],
        "parameters": [
          {
            "name": "cid",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "before",
            "in": "query",
            "required": false,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "2XX": {
            "description": "Endpoint-specific JSON, text, binary, redirect or empty success; see the guide. No exhaustive response schema is asserted."
          },
          "4XX": {
            "description": "Invalid input, authorization, scope, role, privacy, quota or rate-limit error"
          },
          "5XX": {
            "description": "Service or upstream failure"
          }
        }
      },
      "post": {
        "operationId": "post_chat_game_channels_by_cid_console",
        "tags": [
          "game"
        ],
        "summary": "POST /chat/game/channels/:cid/console",
        "description": "Legacy: Nookara-hosted servers are read-only now (writes answer server_read_only with moved_to). Use an Ember instance instead. Request keys are observed in the implementation; unknown types are deliberately unconstrained. Server-side validation, membership, roles, privacy and rank checks still apply.",
        "x-velora-scopes": {
          "CHAT": 2048
        },
        "x-captcha-required": false,
        "x-velora-legacy": true,
        "deprecated": true,
        "security": [
          {
            "UserToken": []
          }
        ],
        "parameters": [
          {
            "name": "cid",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "2XX": {
            "description": "Endpoint-specific JSON, text, binary, redirect or empty success; see the guide. No exhaustive response schema is asserted."
          },
          "4XX": {
            "description": "Invalid input, authorization, scope, role, privacy, quota or rate-limit error"
          },
          "5XX": {
            "description": "Service or upstream failure"
          }
        },
        "requestBody": {
          "required": false,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "properties": {
                  "command": {
                    "description": "Observed request key. See guide for nested formats and constraints."
                  }
                },
                "additionalProperties": true
              }
            }
          }
        }
      }
    },
    "/chat/game/servers/{sid}/audit": {
      "get": {
        "operationId": "get_chat_game_servers_by_sid_audit",
        "tags": [
          "game"
        ],
        "summary": "GET /chat/game/servers/:sid/audit",
        "description": "Legacy: Nookara-hosted servers are read-only now (writes answer server_read_only with moved_to). Use an Ember instance instead. Request keys are observed in the implementation; unknown types are deliberately unconstrained. Server-side validation, membership, roles, privacy and rank checks still apply.",
        "x-velora-scopes": {
          "CHAT": 2048
        },
        "x-captcha-required": false,
        "x-velora-legacy": true,
        "deprecated": true,
        "security": [
          {
            "UserToken": []
          }
        ],
        "parameters": [
          {
            "name": "sid",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "before",
            "in": "query",
            "required": false,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "2XX": {
            "description": "Endpoint-specific JSON, text, binary, redirect or empty success; see the guide. No exhaustive response schema is asserted."
          },
          "4XX": {
            "description": "Invalid input, authorization, scope, role, privacy, quota or rate-limit error"
          },
          "5XX": {
            "description": "Service or upstream failure"
          }
        }
      }
    },
    "/chat/invite/{code}": {
      "get": {
        "operationId": "get_chat_invite_by_code",
        "tags": [
          "chat"
        ],
        "summary": "GET /chat/invite/:code",
        "description": "Legacy: Nookara-hosted servers are read-only now (writes answer server_read_only with moved_to). Use an Ember instance instead. Request keys are observed in the implementation; unknown types are deliberately unconstrained. Server-side validation, membership, roles, privacy and rank checks still apply.",
        "x-velora-scopes": {},
        "x-captcha-required": false,
        "x-velora-legacy": true,
        "deprecated": true,
        "security": [],
        "parameters": [
          {
            "name": "code",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "2XX": {
            "description": "Endpoint-specific JSON, text, binary, redirect or empty success; see the guide. No exhaustive response schema is asserted."
          },
          "4XX": {
            "description": "Invalid input, authorization, scope, role, privacy, quota or rate-limit error"
          },
          "5XX": {
            "description": "Service or upstream failure"
          }
        }
      }
    },
    "/chat/identities": {
      "get": {
        "operationId": "get_chat_identities",
        "tags": [
          "chat"
        ],
        "summary": "GET /chat/identities",
        "description": "Request keys are observed in the implementation; unknown types are deliberately unconstrained. Server-side validation, membership, roles, privacy and rank checks still apply.",
        "x-velora-scopes": {
          "CHAT": 2048
        },
        "x-captcha-required": false,
        "x-velora-legacy": false,
        "deprecated": false,
        "security": [
          {
            "UserToken": []
          }
        ],
        "parameters": [
          {
            "name": "ids",
            "in": "query",
            "required": false,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "2XX": {
            "description": "Endpoint-specific JSON, text, binary, redirect or empty success; see the guide. No exhaustive response schema is asserted."
          },
          "4XX": {
            "description": "Invalid input, authorization, scope, role, privacy, quota or rate-limit error"
          },
          "5XX": {
            "description": "Service or upstream failure"
          }
        }
      }
    },
    "/chat/server-creation-policy": {
      "get": {
        "operationId": "get_chat_server_creation_policy",
        "tags": [
          "chat"
        ],
        "summary": "GET /chat/server-creation-policy",
        "description": "Legacy: Nookara-hosted servers are read-only now (writes answer server_read_only with moved_to). Use an Ember instance instead. Request keys are observed in the implementation; unknown types are deliberately unconstrained. Server-side validation, membership, roles, privacy and rank checks still apply.",
        "x-velora-scopes": {
          "CHAT": 2048
        },
        "x-captcha-required": false,
        "x-velora-legacy": true,
        "deprecated": true,
        "security": [
          {
            "UserToken": []
          }
        ],
        "parameters": [],
        "responses": {
          "2XX": {
            "description": "Endpoint-specific JSON, text, binary, redirect or empty success; see the guide. No exhaustive response schema is asserted."
          },
          "4XX": {
            "description": "Invalid input, authorization, scope, role, privacy, quota or rate-limit error"
          },
          "5XX": {
            "description": "Service or upstream failure"
          }
        }
      }
    },
    "/chat/servers": {
      "get": {
        "operationId": "get_chat_servers",
        "tags": [
          "chat"
        ],
        "summary": "GET /chat/servers",
        "description": "Legacy: Nookara-hosted servers are read-only now (writes answer server_read_only with moved_to). Use an Ember instance instead. Request keys are observed in the implementation; unknown types are deliberately unconstrained. Server-side validation, membership, roles, privacy and rank checks still apply.",
        "x-velora-scopes": {
          "CHAT": 2048
        },
        "x-captcha-required": false,
        "x-velora-legacy": true,
        "deprecated": true,
        "security": [
          {
            "UserToken": []
          }
        ],
        "parameters": [],
        "responses": {
          "2XX": {
            "description": "Endpoint-specific JSON, text, binary, redirect or empty success; see the guide. No exhaustive response schema is asserted."
          },
          "4XX": {
            "description": "Invalid input, authorization, scope, role, privacy, quota or rate-limit error"
          },
          "5XX": {
            "description": "Service or upstream failure"
          }
        }
      },
      "post": {
        "operationId": "post_chat_servers",
        "tags": [
          "chat"
        ],
        "summary": "POST /chat/servers",
        "description": "Legacy: Nookara-hosted servers are read-only now (writes answer server_read_only with moved_to). Use an Ember instance instead. Request keys are observed in the implementation; unknown types are deliberately unconstrained. Server-side validation, membership, roles, privacy and rank checks still apply.",
        "x-velora-scopes": {
          "CHAT": 2048
        },
        "x-captcha-required": false,
        "x-velora-legacy": true,
        "deprecated": true,
        "security": [
          {
            "UserToken": []
          }
        ],
        "parameters": [],
        "responses": {
          "2XX": {
            "description": "Endpoint-specific JSON, text, binary, redirect or empty success; see the guide. No exhaustive response schema is asserted."
          },
          "4XX": {
            "description": "Invalid input, authorization, scope, role, privacy, quota or rate-limit error"
          },
          "5XX": {
            "description": "Service or upstream failure"
          }
        },
        "requestBody": {
          "required": false,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "properties": {
                  "description": {
                    "description": "Observed request key. See guide for nested formats and constraints."
                  },
                  "discoverable": {
                    "description": "Observed request key. See guide for nested formats and constraints."
                  },
                  "name": {
                    "description": "Observed request key. See guide for nested formats and constraints."
                  }
                },
                "additionalProperties": true
              }
            }
          }
        }
      }
    },
    "/chat/discover": {
      "get": {
        "operationId": "get_chat_discover",
        "tags": [
          "chat"
        ],
        "summary": "GET /chat/discover",
        "description": "Legacy: Nookara-hosted servers are read-only now (writes answer server_read_only with moved_to). Use an Ember instance instead. Request keys are observed in the implementation; unknown types are deliberately unconstrained. Server-side validation, membership, roles, privacy and rank checks still apply.",
        "x-velora-scopes": {
          "CHAT": 2048
        },
        "x-captcha-required": false,
        "x-velora-legacy": true,
        "deprecated": true,
        "security": [
          {
            "UserToken": []
          }
        ],
        "parameters": [],
        "responses": {
          "2XX": {
            "description": "Endpoint-specific JSON, text, binary, redirect or empty success; see the guide. No exhaustive response schema is asserted."
          },
          "4XX": {
            "description": "Invalid input, authorization, scope, role, privacy, quota or rate-limit error"
          },
          "5XX": {
            "description": "Service or upstream failure"
          }
        }
      }
    },
    "/chat/servers/{sid}": {
      "get": {
        "operationId": "get_chat_servers_by_sid",
        "tags": [
          "chat"
        ],
        "summary": "GET /chat/servers/:sid",
        "description": "Legacy: Nookara-hosted servers are read-only now (writes answer server_read_only with moved_to). Use an Ember instance instead. Request keys are observed in the implementation; unknown types are deliberately unconstrained. Server-side validation, membership, roles, privacy and rank checks still apply.",
        "x-velora-scopes": {
          "CHAT": 2048
        },
        "x-captcha-required": false,
        "x-velora-legacy": true,
        "deprecated": true,
        "security": [
          {
            "UserToken": []
          }
        ],
        "parameters": [
          {
            "name": "sid",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "2XX": {
            "description": "Endpoint-specific JSON, text, binary, redirect or empty success; see the guide. No exhaustive response schema is asserted."
          },
          "4XX": {
            "description": "Invalid input, authorization, scope, role, privacy, quota or rate-limit error"
          },
          "5XX": {
            "description": "Service or upstream failure"
          }
        }
      },
      "patch": {
        "operationId": "patch_chat_servers_by_sid",
        "tags": [
          "chat"
        ],
        "summary": "PATCH /chat/servers/:sid",
        "description": "Legacy: Nookara-hosted servers are read-only now (writes answer server_read_only with moved_to). Use an Ember instance instead. Request keys are observed in the implementation; unknown types are deliberately unconstrained. Server-side validation, membership, roles, privacy and rank checks still apply.",
        "x-velora-scopes": {
          "CHAT": 2048
        },
        "x-captcha-required": false,
        "x-velora-legacy": true,
        "deprecated": true,
        "security": [
          {
            "UserToken": []
          }
        ],
        "parameters": [
          {
            "name": "sid",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "2XX": {
            "description": "Endpoint-specific JSON, text, binary, redirect or empty success; see the guide. No exhaustive response schema is asserted."
          },
          "4XX": {
            "description": "Invalid input, authorization, scope, role, privacy, quota or rate-limit error"
          },
          "5XX": {
            "description": "Service or upstream failure"
          }
        },
        "requestBody": {
          "required": false,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "properties": {
                  "allow_accent": {
                    "description": "Observed request key. See guide for nested formats and constraints."
                  },
                  "description": {
                    "description": "Observed request key. See guide for nested formats and constraints."
                  },
                  "discoverable": {
                    "description": "Observed request key. See guide for nested formats and constraints."
                  },
                  "name": {
                    "description": "Observed request key. See guide for nested formats and constraints."
                  },
                  "new_invite": {
                    "description": "Observed request key. See guide for nested formats and constraints."
                  }
                },
                "additionalProperties": true
              }
            }
          }
        }
      },
      "delete": {
        "operationId": "delete_chat_servers_by_sid",
        "tags": [
          "chat"
        ],
        "summary": "DELETE /chat/servers/:sid",
        "description": "Legacy: Nookara-hosted servers are read-only now (writes answer server_read_only with moved_to). Use an Ember instance instead. Request keys are observed in the implementation; unknown types are deliberately unconstrained. Server-side validation, membership, roles, privacy and rank checks still apply.",
        "x-velora-scopes": {
          "CHAT": 2048
        },
        "x-captcha-required": false,
        "x-velora-legacy": true,
        "deprecated": true,
        "security": [
          {
            "UserToken": []
          }
        ],
        "parameters": [
          {
            "name": "sid",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "2XX": {
            "description": "Endpoint-specific JSON, text, binary, redirect or empty success; see the guide. No exhaustive response schema is asserted."
          },
          "4XX": {
            "description": "Invalid input, authorization, scope, role, privacy, quota or rate-limit error"
          },
          "5XX": {
            "description": "Service or upstream failure"
          }
        }
      }
    },
    "/chat/servers/{sid}/layout": {
      "put": {
        "operationId": "put_chat_servers_by_sid_layout",
        "tags": [
          "chat"
        ],
        "summary": "PUT /chat/servers/:sid/layout",
        "description": "Legacy: Nookara-hosted servers are read-only now (writes answer server_read_only with moved_to). Use an Ember instance instead. Request keys are observed in the implementation; unknown types are deliberately unconstrained. Server-side validation, membership, roles, privacy and rank checks still apply.",
        "x-velora-scopes": {
          "CHAT": 2048
        },
        "x-captcha-required": false,
        "x-velora-legacy": true,
        "deprecated": true,
        "security": [
          {
            "UserToken": []
          }
        ],
        "parameters": [
          {
            "name": "sid",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "2XX": {
            "description": "Endpoint-specific JSON, text, binary, redirect or empty success; see the guide. No exhaustive response schema is asserted."
          },
          "4XX": {
            "description": "Invalid input, authorization, scope, role, privacy, quota or rate-limit error"
          },
          "5XX": {
            "description": "Service or upstream failure"
          }
        },
        "requestBody": {
          "required": false,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "properties": {
                  "categories": {
                    "description": "Observed request key. See guide for nested formats and constraints."
                  },
                  "channels": {
                    "description": "Observed request key. See guide for nested formats and constraints."
                  }
                },
                "additionalProperties": true
              }
            }
          }
        }
      }
    },
    "/chat/servers/{sid}/roles": {
      "post": {
        "operationId": "post_chat_servers_by_sid_roles",
        "tags": [
          "chat"
        ],
        "summary": "POST /chat/servers/:sid/roles",
        "description": "Legacy: Nookara-hosted servers are read-only now (writes answer server_read_only with moved_to). Use an Ember instance instead. Request keys are observed in the implementation; unknown types are deliberately unconstrained. Server-side validation, membership, roles, privacy and rank checks still apply.",
        "x-velora-scopes": {
          "CHAT": 2048
        },
        "x-captcha-required": false,
        "x-velora-legacy": true,
        "deprecated": true,
        "security": [
          {
            "UserToken": []
          }
        ],
        "parameters": [
          {
            "name": "sid",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "2XX": {
            "description": "Endpoint-specific JSON, text, binary, redirect or empty success; see the guide. No exhaustive response schema is asserted."
          },
          "4XX": {
            "description": "Invalid input, authorization, scope, role, privacy, quota or rate-limit error"
          },
          "5XX": {
            "description": "Service or upstream failure"
          }
        },
        "requestBody": {
          "required": false,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "properties": {
                  "color": {
                    "description": "Observed request key. See guide for nested formats and constraints."
                  },
                  "hoist": {
                    "description": "Observed request key. See guide for nested formats and constraints."
                  },
                  "mentionable": {
                    "description": "Observed request key. See guide for nested formats and constraints."
                  },
                  "name": {
                    "description": "Observed request key. See guide for nested formats and constraints."
                  },
                  "permissions": {
                    "description": "Observed request key. See guide for nested formats and constraints."
                  }
                },
                "additionalProperties": true
              }
            }
          }
        }
      }
    },
    "/chat/servers/{sid}/roles/order": {
      "put": {
        "operationId": "put_chat_servers_by_sid_roles_order",
        "tags": [
          "chat"
        ],
        "summary": "PUT /chat/servers/:sid/roles/order",
        "description": "Legacy: Nookara-hosted servers are read-only now (writes answer server_read_only with moved_to). Use an Ember instance instead. Request keys are observed in the implementation; unknown types are deliberately unconstrained. Server-side validation, membership, roles, privacy and rank checks still apply.",
        "x-velora-scopes": {
          "CHAT": 2048
        },
        "x-captcha-required": false,
        "x-velora-legacy": true,
        "deprecated": true,
        "security": [
          {
            "UserToken": []
          }
        ],
        "parameters": [
          {
            "name": "sid",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "2XX": {
            "description": "Endpoint-specific JSON, text, binary, redirect or empty success; see the guide. No exhaustive response schema is asserted."
          },
          "4XX": {
            "description": "Invalid input, authorization, scope, role, privacy, quota or rate-limit error"
          },
          "5XX": {
            "description": "Service or upstream failure"
          }
        },
        "requestBody": {
          "required": false,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "properties": {
                  "order": {
                    "description": "Observed request key. See guide for nested formats and constraints."
                  }
                },
                "additionalProperties": true
              }
            }
          }
        }
      }
    },
    "/chat/servers/{sid}/roles/{rid}": {
      "patch": {
        "operationId": "patch_chat_servers_by_sid_roles_by_rid",
        "tags": [
          "chat"
        ],
        "summary": "PATCH /chat/servers/:sid/roles/:rid",
        "description": "Legacy: Nookara-hosted servers are read-only now (writes answer server_read_only with moved_to). Use an Ember instance instead. Request keys are observed in the implementation; unknown types are deliberately unconstrained. Server-side validation, membership, roles, privacy and rank checks still apply.",
        "x-velora-scopes": {
          "CHAT": 2048
        },
        "x-captcha-required": false,
        "x-velora-legacy": true,
        "deprecated": true,
        "security": [
          {
            "UserToken": []
          }
        ],
        "parameters": [
          {
            "name": "sid",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "rid",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "2XX": {
            "description": "Endpoint-specific JSON, text, binary, redirect or empty success; see the guide. No exhaustive response schema is asserted."
          },
          "4XX": {
            "description": "Invalid input, authorization, scope, role, privacy, quota or rate-limit error"
          },
          "5XX": {
            "description": "Service or upstream failure"
          }
        },
        "requestBody": {
          "required": false,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "properties": {
                  "color": {
                    "description": "Observed request key. See guide for nested formats and constraints."
                  },
                  "hoist": {
                    "description": "Observed request key. See guide for nested formats and constraints."
                  },
                  "icon_url": {
                    "description": "Observed request key. See guide for nested formats and constraints."
                  },
                  "mentionable": {
                    "description": "Observed request key. See guide for nested formats and constraints."
                  },
                  "name": {
                    "description": "Observed request key. See guide for nested formats and constraints."
                  },
                  "permissions": {
                    "description": "Observed request key. See guide for nested formats and constraints."
                  }
                },
                "additionalProperties": true
              }
            }
          }
        }
      },
      "delete": {
        "operationId": "delete_chat_servers_by_sid_roles_by_rid",
        "tags": [
          "chat"
        ],
        "summary": "DELETE /chat/servers/:sid/roles/:rid",
        "description": "Legacy: Nookara-hosted servers are read-only now (writes answer server_read_only with moved_to). Use an Ember instance instead. Request keys are observed in the implementation; unknown types are deliberately unconstrained. Server-side validation, membership, roles, privacy and rank checks still apply.",
        "x-velora-scopes": {
          "CHAT": 2048
        },
        "x-captcha-required": false,
        "x-velora-legacy": true,
        "deprecated": true,
        "security": [
          {
            "UserToken": []
          }
        ],
        "parameters": [
          {
            "name": "sid",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "rid",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "2XX": {
            "description": "Endpoint-specific JSON, text, binary, redirect or empty success; see the guide. No exhaustive response schema is asserted."
          },
          "4XX": {
            "description": "Invalid input, authorization, scope, role, privacy, quota or rate-limit error"
          },
          "5XX": {
            "description": "Service or upstream failure"
          }
        }
      }
    },
    "/chat/servers/{sid}/members/{username}/roles/{rid}": {
      "put": {
        "operationId": "put_chat_servers_by_sid_members_by_username_roles_by_rid",
        "tags": [
          "chat"
        ],
        "summary": "PUT /chat/servers/:sid/members/:username/roles/:rid",
        "description": "Legacy: Nookara-hosted servers are read-only now (writes answer server_read_only with moved_to). Use an Ember instance instead. Request keys are observed in the implementation; unknown types are deliberately unconstrained. Server-side validation, membership, roles, privacy and rank checks still apply.",
        "x-velora-scopes": {
          "CHAT": 2048
        },
        "x-captcha-required": false,
        "x-velora-legacy": true,
        "deprecated": true,
        "security": [
          {
            "UserToken": []
          }
        ],
        "parameters": [
          {
            "name": "sid",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "username",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "rid",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "2XX": {
            "description": "Endpoint-specific JSON, text, binary, redirect or empty success; see the guide. No exhaustive response schema is asserted."
          },
          "4XX": {
            "description": "Invalid input, authorization, scope, role, privacy, quota or rate-limit error"
          },
          "5XX": {
            "description": "Service or upstream failure"
          }
        }
      },
      "delete": {
        "operationId": "delete_chat_servers_by_sid_members_by_username_roles_by_rid",
        "tags": [
          "chat"
        ],
        "summary": "DELETE /chat/servers/:sid/members/:username/roles/:rid",
        "description": "Legacy: Nookara-hosted servers are read-only now (writes answer server_read_only with moved_to). Use an Ember instance instead. Request keys are observed in the implementation; unknown types are deliberately unconstrained. Server-side validation, membership, roles, privacy and rank checks still apply.",
        "x-velora-scopes": {
          "CHAT": 2048
        },
        "x-captcha-required": false,
        "x-velora-legacy": true,
        "deprecated": true,
        "security": [
          {
            "UserToken": []
          }
        ],
        "parameters": [
          {
            "name": "sid",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "username",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "rid",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "2XX": {
            "description": "Endpoint-specific JSON, text, binary, redirect or empty success; see the guide. No exhaustive response schema is asserted."
          },
          "4XX": {
            "description": "Invalid input, authorization, scope, role, privacy, quota or rate-limit error"
          },
          "5XX": {
            "description": "Service or upstream failure"
          }
        }
      }
    },
    "/chat/servers/{sid}/roles/{rid}/icon": {
      "post": {
        "operationId": "post_chat_servers_by_sid_roles_by_rid_icon",
        "tags": [
          "chat"
        ],
        "summary": "POST /chat/servers/:sid/roles/:rid/icon",
        "description": "Legacy: Nookara-hosted servers are read-only now (writes answer server_read_only with moved_to). Use an Ember instance instead. Request keys are observed in the implementation; unknown types are deliberately unconstrained. Server-side validation, membership, roles, privacy and rank checks still apply.",
        "x-velora-scopes": {
          "CHAT": 2048
        },
        "x-captcha-required": false,
        "x-velora-legacy": true,
        "deprecated": true,
        "security": [
          {
            "UserToken": []
          }
        ],
        "parameters": [
          {
            "name": "sid",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "rid",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "2XX": {
            "description": "Endpoint-specific JSON, text, binary, redirect or empty success; see the guide. No exhaustive response schema is asserted."
          },
          "4XX": {
            "description": "Invalid input, authorization, scope, role, privacy, quota or rate-limit error"
          },
          "5XX": {
            "description": "Service or upstream failure"
          }
        },
        "requestBody": {
          "required": false,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "properties": {},
                "additionalProperties": true
              }
            },
            "multipart/form-data": {
              "schema": {
                "type": "object",
                "properties": {
                  "file": {
                    "type": "string",
                    "format": "binary"
                  }
                },
                "additionalProperties": true
              }
            }
          }
        }
      },
      "delete": {
        "operationId": "delete_chat_servers_by_sid_roles_by_rid_icon",
        "tags": [
          "chat"
        ],
        "summary": "DELETE /chat/servers/:sid/roles/:rid/icon",
        "description": "Legacy: Nookara-hosted servers are read-only now (writes answer server_read_only with moved_to). Use an Ember instance instead. Request keys are observed in the implementation; unknown types are deliberately unconstrained. Server-side validation, membership, roles, privacy and rank checks still apply.",
        "x-velora-scopes": {
          "CHAT": 2048
        },
        "x-captcha-required": false,
        "x-velora-legacy": true,
        "deprecated": true,
        "security": [
          {
            "UserToken": []
          }
        ],
        "parameters": [
          {
            "name": "sid",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "rid",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "2XX": {
            "description": "Endpoint-specific JSON, text, binary, redirect or empty success; see the guide. No exhaustive response schema is asserted."
          },
          "4XX": {
            "description": "Invalid input, authorization, scope, role, privacy, quota or rate-limit error"
          },
          "5XX": {
            "description": "Service or upstream failure"
          }
        }
      }
    },
    "/chat/channels/{cid}/icon": {
      "post": {
        "operationId": "post_chat_channels_by_cid_icon",
        "tags": [
          "chat"
        ],
        "summary": "POST /chat/channels/:cid/icon",
        "description": "Legacy: Nookara-hosted servers are read-only now (writes answer server_read_only with moved_to). Use an Ember instance instead. Request keys are observed in the implementation; unknown types are deliberately unconstrained. Server-side validation, membership, roles, privacy and rank checks still apply.",
        "x-velora-scopes": {
          "CHAT": 2048
        },
        "x-captcha-required": false,
        "x-velora-legacy": true,
        "deprecated": true,
        "security": [
          {
            "UserToken": []
          }
        ],
        "parameters": [
          {
            "name": "cid",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "2XX": {
            "description": "Endpoint-specific JSON, text, binary, redirect or empty success; see the guide. No exhaustive response schema is asserted."
          },
          "4XX": {
            "description": "Invalid input, authorization, scope, role, privacy, quota or rate-limit error"
          },
          "5XX": {
            "description": "Service or upstream failure"
          }
        },
        "requestBody": {
          "required": false,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "properties": {},
                "additionalProperties": true
              }
            },
            "multipart/form-data": {
              "schema": {
                "type": "object",
                "properties": {
                  "file": {
                    "type": "string",
                    "format": "binary"
                  }
                },
                "additionalProperties": true
              }
            }
          }
        }
      }
    },
    "/chat/servers/{sid}/export": {
      "get": {
        "operationId": "get_chat_servers_by_sid_export",
        "tags": [
          "chat"
        ],
        "summary": "GET /chat/servers/:sid/export",
        "description": "Legacy: Nookara-hosted servers are read-only now (writes answer server_read_only with moved_to). Use an Ember instance instead. Request keys are observed in the implementation; unknown types are deliberately unconstrained. Server-side validation, membership, roles, privacy and rank checks still apply.",
        "x-velora-scopes": {
          "CHAT": 2048
        },
        "x-captcha-required": false,
        "x-velora-legacy": true,
        "deprecated": true,
        "security": [
          {
            "UserToken": []
          }
        ],
        "parameters": [
          {
            "name": "sid",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "2XX": {
            "description": "Endpoint-specific JSON, text, binary, redirect or empty success; see the guide. No exhaustive response schema is asserted."
          },
          "4XX": {
            "description": "Invalid input, authorization, scope, role, privacy, quota or rate-limit error"
          },
          "5XX": {
            "description": "Service or upstream failure"
          }
        }
      }
    },
    "/chat/servers/{sid}/export-to-account": {
      "post": {
        "operationId": "post_chat_servers_by_sid_export_to_account",
        "tags": [
          "chat"
        ],
        "summary": "POST /chat/servers/:sid/export-to-account",
        "description": "Legacy: Nookara-hosted servers are read-only now (writes answer server_read_only with moved_to). Use an Ember instance instead. Request keys are observed in the implementation; unknown types are deliberately unconstrained. Server-side validation, membership, roles, privacy and rank checks still apply.",
        "x-velora-scopes": {
          "CHAT": 2048
        },
        "x-captcha-required": false,
        "x-velora-legacy": true,
        "deprecated": true,
        "security": [
          {
            "UserToken": []
          }
        ],
        "parameters": [
          {
            "name": "sid",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "2XX": {
            "description": "Endpoint-specific JSON, text, binary, redirect or empty success; see the guide. No exhaustive response schema is asserted."
          },
          "4XX": {
            "description": "Invalid input, authorization, scope, role, privacy, quota or rate-limit error"
          },
          "5XX": {
            "description": "Service or upstream failure"
          }
        }
      }
    },
    "/chat/servers/{sid}/join": {
      "post": {
        "operationId": "post_chat_servers_by_sid_join",
        "tags": [
          "chat"
        ],
        "summary": "POST /chat/servers/:sid/join",
        "description": "Legacy: Nookara-hosted servers are read-only now (writes answer server_read_only with moved_to). Use an Ember instance instead. Request keys are observed in the implementation; unknown types are deliberately unconstrained. Server-side validation, membership, roles, privacy and rank checks still apply.",
        "x-velora-scopes": {
          "CHAT": 2048
        },
        "x-captcha-required": false,
        "x-velora-legacy": true,
        "deprecated": true,
        "security": [
          {
            "UserToken": []
          }
        ],
        "parameters": [
          {
            "name": "sid",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "2XX": {
            "description": "Endpoint-specific JSON, text, binary, redirect or empty success; see the guide. No exhaustive response schema is asserted."
          },
          "4XX": {
            "description": "Invalid input, authorization, scope, role, privacy, quota or rate-limit error"
          },
          "5XX": {
            "description": "Service or upstream failure"
          }
        }
      }
    },
    "/chat/join/{code}": {
      "post": {
        "operationId": "post_chat_join_by_code",
        "tags": [
          "chat"
        ],
        "summary": "POST /chat/join/:code",
        "description": "Legacy: Nookara-hosted servers are read-only now (writes answer server_read_only with moved_to). Use an Ember instance instead. Request keys are observed in the implementation; unknown types are deliberately unconstrained. Server-side validation, membership, roles, privacy and rank checks still apply.",
        "x-velora-scopes": {
          "CHAT": 2048
        },
        "x-captcha-required": false,
        "x-velora-legacy": true,
        "deprecated": true,
        "security": [
          {
            "UserToken": []
          }
        ],
        "parameters": [
          {
            "name": "code",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "2XX": {
            "description": "Endpoint-specific JSON, text, binary, redirect or empty success; see the guide. No exhaustive response schema is asserted."
          },
          "4XX": {
            "description": "Invalid input, authorization, scope, role, privacy, quota or rate-limit error"
          },
          "5XX": {
            "description": "Service or upstream failure"
          }
        }
      }
    },
    "/chat/servers/{sid}/leave": {
      "post": {
        "operationId": "post_chat_servers_by_sid_leave",
        "tags": [
          "chat"
        ],
        "summary": "POST /chat/servers/:sid/leave",
        "description": "Legacy: Nookara-hosted servers are read-only now (writes answer server_read_only with moved_to). Use an Ember instance instead. Request keys are observed in the implementation; unknown types are deliberately unconstrained. Server-side validation, membership, roles, privacy and rank checks still apply.",
        "x-velora-scopes": {
          "CHAT": 2048
        },
        "x-captcha-required": false,
        "x-velora-legacy": true,
        "deprecated": true,
        "security": [
          {
            "UserToken": []
          }
        ],
        "parameters": [
          {
            "name": "sid",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "2XX": {
            "description": "Endpoint-specific JSON, text, binary, redirect or empty success; see the guide. No exhaustive response schema is asserted."
          },
          "4XX": {
            "description": "Invalid input, authorization, scope, role, privacy, quota or rate-limit error"
          },
          "5XX": {
            "description": "Service or upstream failure"
          }
        }
      }
    },
    "/chat/servers/{sid}/members": {
      "get": {
        "operationId": "get_chat_servers_by_sid_members",
        "tags": [
          "chat"
        ],
        "summary": "GET /chat/servers/:sid/members",
        "description": "Legacy: Nookara-hosted servers are read-only now (writes answer server_read_only with moved_to). Use an Ember instance instead. Request keys are observed in the implementation; unknown types are deliberately unconstrained. Server-side validation, membership, roles, privacy and rank checks still apply.",
        "x-velora-scopes": {
          "CHAT": 2048
        },
        "x-captcha-required": false,
        "x-velora-legacy": true,
        "deprecated": true,
        "security": [
          {
            "UserToken": []
          }
        ],
        "parameters": [
          {
            "name": "sid",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "2XX": {
            "description": "Endpoint-specific JSON, text, binary, redirect or empty success; see the guide. No exhaustive response schema is asserted."
          },
          "4XX": {
            "description": "Invalid input, authorization, scope, role, privacy, quota or rate-limit error"
          },
          "5XX": {
            "description": "Service or upstream failure"
          }
        }
      }
    },
    "/chat/servers/{sid}/members/{username}": {
      "delete": {
        "operationId": "delete_chat_servers_by_sid_members_by_username",
        "tags": [
          "chat"
        ],
        "summary": "DELETE /chat/servers/:sid/members/:username",
        "description": "Legacy: Nookara-hosted servers are read-only now (writes answer server_read_only with moved_to). Use an Ember instance instead. Request keys are observed in the implementation; unknown types are deliberately unconstrained. Server-side validation, membership, roles, privacy and rank checks still apply.",
        "x-velora-scopes": {
          "CHAT": 2048
        },
        "x-captcha-required": false,
        "x-velora-legacy": true,
        "deprecated": true,
        "security": [
          {
            "UserToken": []
          }
        ],
        "parameters": [
          {
            "name": "sid",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "username",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "ban",
            "in": "query",
            "required": false,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "2XX": {
            "description": "Endpoint-specific JSON, text, binary, redirect or empty success; see the guide. No exhaustive response schema is asserted."
          },
          "4XX": {
            "description": "Invalid input, authorization, scope, role, privacy, quota or rate-limit error"
          },
          "5XX": {
            "description": "Service or upstream failure"
          }
        }
      }
    },
    "/chat/servers/{sid}/bans/{username}": {
      "delete": {
        "operationId": "delete_chat_servers_by_sid_bans_by_username",
        "tags": [
          "chat"
        ],
        "summary": "DELETE /chat/servers/:sid/bans/:username",
        "description": "Legacy: Nookara-hosted servers are read-only now (writes answer server_read_only with moved_to). Use an Ember instance instead. Request keys are observed in the implementation; unknown types are deliberately unconstrained. Server-side validation, membership, roles, privacy and rank checks still apply.",
        "x-velora-scopes": {
          "CHAT": 2048
        },
        "x-captcha-required": false,
        "x-velora-legacy": true,
        "deprecated": true,
        "security": [
          {
            "UserToken": []
          }
        ],
        "parameters": [
          {
            "name": "sid",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "username",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "2XX": {
            "description": "Endpoint-specific JSON, text, binary, redirect or empty success; see the guide. No exhaustive response schema is asserted."
          },
          "4XX": {
            "description": "Invalid input, authorization, scope, role, privacy, quota or rate-limit error"
          },
          "5XX": {
            "description": "Service or upstream failure"
          }
        }
      }
    },
    "/chat/servers/{sid}/icon": {
      "post": {
        "operationId": "post_chat_servers_by_sid_icon",
        "tags": [
          "chat"
        ],
        "summary": "POST /chat/servers/:sid/icon",
        "description": "Legacy: Nookara-hosted servers are read-only now (writes answer server_read_only with moved_to). Use an Ember instance instead. Request keys are observed in the implementation; unknown types are deliberately unconstrained. Server-side validation, membership, roles, privacy and rank checks still apply.",
        "x-velora-scopes": {
          "CHAT": 2048
        },
        "x-captcha-required": false,
        "x-velora-legacy": true,
        "deprecated": true,
        "security": [
          {
            "UserToken": []
          }
        ],
        "parameters": [
          {
            "name": "sid",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "2XX": {
            "description": "Endpoint-specific JSON, text, binary, redirect or empty success; see the guide. No exhaustive response schema is asserted."
          },
          "4XX": {
            "description": "Invalid input, authorization, scope, role, privacy, quota or rate-limit error"
          },
          "5XX": {
            "description": "Service or upstream failure"
          }
        },
        "requestBody": {
          "required": false,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "properties": {},
                "additionalProperties": true
              }
            },
            "multipart/form-data": {
              "schema": {
                "type": "object",
                "properties": {
                  "file": {
                    "type": "string",
                    "format": "binary"
                  }
                },
                "additionalProperties": true
              }
            }
          }
        }
      },
      "delete": {
        "operationId": "delete_chat_servers_by_sid_icon",
        "tags": [
          "chat"
        ],
        "summary": "DELETE /chat/servers/:sid/icon",
        "description": "Legacy: Nookara-hosted servers are read-only now (writes answer server_read_only with moved_to). Use an Ember instance instead. Request keys are observed in the implementation; unknown types are deliberately unconstrained. Server-side validation, membership, roles, privacy and rank checks still apply.",
        "x-velora-scopes": {
          "CHAT": 2048
        },
        "x-captcha-required": false,
        "x-velora-legacy": true,
        "deprecated": true,
        "security": [
          {
            "UserToken": []
          }
        ],
        "parameters": [
          {
            "name": "sid",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "2XX": {
            "description": "Endpoint-specific JSON, text, binary, redirect or empty success; see the guide. No exhaustive response schema is asserted."
          },
          "4XX": {
            "description": "Invalid input, authorization, scope, role, privacy, quota or rate-limit error"
          },
          "5XX": {
            "description": "Service or upstream failure"
          }
        }
      }
    },
    "/chat/servers/{sid}/banner": {
      "post": {
        "operationId": "post_chat_servers_by_sid_banner",
        "tags": [
          "chat"
        ],
        "summary": "POST /chat/servers/:sid/banner",
        "description": "Legacy: Nookara-hosted servers are read-only now (writes answer server_read_only with moved_to). Use an Ember instance instead. Request keys are observed in the implementation; unknown types are deliberately unconstrained. Server-side validation, membership, roles, privacy and rank checks still apply.",
        "x-velora-scopes": {
          "CHAT": 2048
        },
        "x-captcha-required": false,
        "x-velora-legacy": true,
        "deprecated": true,
        "security": [
          {
            "UserToken": []
          }
        ],
        "parameters": [
          {
            "name": "sid",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "2XX": {
            "description": "Endpoint-specific JSON, text, binary, redirect or empty success; see the guide. No exhaustive response schema is asserted."
          },
          "4XX": {
            "description": "Invalid input, authorization, scope, role, privacy, quota or rate-limit error"
          },
          "5XX": {
            "description": "Service or upstream failure"
          }
        },
        "requestBody": {
          "required": false,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "properties": {},
                "additionalProperties": true
              }
            },
            "multipart/form-data": {
              "schema": {
                "type": "object",
                "properties": {
                  "file": {
                    "type": "string",
                    "format": "binary"
                  }
                },
                "additionalProperties": true
              }
            }
          }
        }
      },
      "delete": {
        "operationId": "delete_chat_servers_by_sid_banner",
        "tags": [
          "chat"
        ],
        "summary": "DELETE /chat/servers/:sid/banner",
        "description": "Legacy: Nookara-hosted servers are read-only now (writes answer server_read_only with moved_to). Use an Ember instance instead. Request keys are observed in the implementation; unknown types are deliberately unconstrained. Server-side validation, membership, roles, privacy and rank checks still apply.",
        "x-velora-scopes": {
          "CHAT": 2048
        },
        "x-captcha-required": false,
        "x-velora-legacy": true,
        "deprecated": true,
        "security": [
          {
            "UserToken": []
          }
        ],
        "parameters": [
          {
            "name": "sid",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "2XX": {
            "description": "Endpoint-specific JSON, text, binary, redirect or empty success; see the guide. No exhaustive response schema is asserted."
          },
          "4XX": {
            "description": "Invalid input, authorization, scope, role, privacy, quota or rate-limit error"
          },
          "5XX": {
            "description": "Service or upstream failure"
          }
        }
      }
    },
    "/chat/servers/{sid}/channels": {
      "post": {
        "operationId": "post_chat_servers_by_sid_channels",
        "tags": [
          "chat"
        ],
        "summary": "POST /chat/servers/:sid/channels",
        "description": "Legacy: Nookara-hosted servers are read-only now (writes answer server_read_only with moved_to). Use an Ember instance instead. Request keys are observed in the implementation; unknown types are deliberately unconstrained. Server-side validation, membership, roles, privacy and rank checks still apply.",
        "x-velora-scopes": {
          "CHAT": 2048
        },
        "x-captcha-required": false,
        "x-velora-legacy": true,
        "deprecated": true,
        "security": [
          {
            "UserToken": []
          }
        ],
        "parameters": [
          {
            "name": "sid",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "2XX": {
            "description": "Endpoint-specific JSON, text, binary, redirect or empty success; see the guide. No exhaustive response schema is asserted."
          },
          "4XX": {
            "description": "Invalid input, authorization, scope, role, privacy, quota or rate-limit error"
          },
          "5XX": {
            "description": "Service or upstream failure"
          }
        },
        "requestBody": {
          "required": false,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "properties": {
                  "category": {
                    "description": "Observed request key. See guide for nested formats and constraints."
                  },
                  "config": {
                    "description": "Observed request key. See guide for nested formats and constraints."
                  },
                  "icon": {
                    "description": "Observed request key. See guide for nested formats and constraints."
                  },
                  "locked": {
                    "description": "Observed request key. See guide for nested formats and constraints."
                  },
                  "name": {
                    "description": "Observed request key. See guide for nested formats and constraints."
                  },
                  "topic": {
                    "description": "Observed request key. See guide for nested formats and constraints."
                  },
                  "type": {
                    "description": "Observed request key. See guide for nested formats and constraints."
                  }
                },
                "additionalProperties": true
              }
            }
          }
        }
      }
    },
    "/chat/channels/{cid}": {
      "patch": {
        "operationId": "patch_chat_channels_by_cid",
        "tags": [
          "chat"
        ],
        "summary": "PATCH /chat/channels/:cid",
        "description": "Legacy: Nookara-hosted servers are read-only now (writes answer server_read_only with moved_to). Use an Ember instance instead. Request keys are observed in the implementation; unknown types are deliberately unconstrained. Server-side validation, membership, roles, privacy and rank checks still apply.",
        "x-velora-scopes": {
          "CHAT": 2048
        },
        "x-captcha-required": false,
        "x-velora-legacy": true,
        "deprecated": true,
        "security": [
          {
            "UserToken": []
          }
        ],
        "parameters": [
          {
            "name": "cid",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "2XX": {
            "description": "Endpoint-specific JSON, text, binary, redirect or empty success; see the guide. No exhaustive response schema is asserted."
          },
          "4XX": {
            "description": "Invalid input, authorization, scope, role, privacy, quota or rate-limit error"
          },
          "5XX": {
            "description": "Service or upstream failure"
          }
        },
        "requestBody": {
          "required": false,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "properties": {
                  "category": {
                    "description": "Observed request key. See guide for nested formats and constraints."
                  },
                  "config": {
                    "description": "Observed request key. See guide for nested formats and constraints."
                  },
                  "icon": {
                    "description": "Observed request key. See guide for nested formats and constraints."
                  },
                  "locked": {
                    "description": "Observed request key. See guide for nested formats and constraints."
                  },
                  "name": {
                    "description": "Observed request key. See guide for nested formats and constraints."
                  },
                  "position": {
                    "description": "Observed request key. See guide for nested formats and constraints."
                  },
                  "topic": {
                    "description": "Observed request key. See guide for nested formats and constraints."
                  },
                  "type": {
                    "description": "Observed request key. See guide for nested formats and constraints."
                  }
                },
                "additionalProperties": true
              }
            }
          }
        }
      },
      "delete": {
        "operationId": "delete_chat_channels_by_cid",
        "tags": [
          "chat"
        ],
        "summary": "DELETE /chat/channels/:cid",
        "description": "Legacy: Nookara-hosted servers are read-only now (writes answer server_read_only with moved_to). Use an Ember instance instead. Request keys are observed in the implementation; unknown types are deliberately unconstrained. Server-side validation, membership, roles, privacy and rank checks still apply.",
        "x-velora-scopes": {
          "CHAT": 2048
        },
        "x-captcha-required": false,
        "x-velora-legacy": true,
        "deprecated": true,
        "security": [
          {
            "UserToken": []
          }
        ],
        "parameters": [
          {
            "name": "cid",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "2XX": {
            "description": "Endpoint-specific JSON, text, binary, redirect or empty success; see the guide. No exhaustive response schema is asserted."
          },
          "4XX": {
            "description": "Invalid input, authorization, scope, role, privacy, quota or rate-limit error"
          },
          "5XX": {
            "description": "Service or upstream failure"
          }
        }
      }
    },
    "/chat/channels/{cid}/cloudlink": {
      "get": {
        "operationId": "get_chat_channels_by_cid_cloudlink",
        "tags": [
          "chat"
        ],
        "summary": "GET /chat/channels/:cid/cloudlink",
        "description": "Legacy: Nookara-hosted servers are read-only now (writes answer server_read_only with moved_to). Use an Ember instance instead. Request keys are observed in the implementation; unknown types are deliberately unconstrained. Server-side validation, membership, roles, privacy and rank checks still apply.",
        "x-velora-scopes": {
          "CHAT": 2048
        },
        "x-captcha-required": false,
        "x-velora-legacy": true,
        "deprecated": true,
        "security": [
          {
            "UserToken": []
          }
        ],
        "parameters": [
          {
            "name": "cid",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "2XX": {
            "description": "Endpoint-specific JSON, text, binary, redirect or empty success; see the guide. No exhaustive response schema is asserted."
          },
          "4XX": {
            "description": "Invalid input, authorization, scope, role, privacy, quota or rate-limit error"
          },
          "5XX": {
            "description": "Service or upstream failure"
          }
        }
      }
    },
    "/chat/channels/{cid}/cloudlink/reconnect": {
      "post": {
        "operationId": "post_chat_channels_by_cid_cloudlink_reconnect",
        "tags": [
          "chat"
        ],
        "summary": "POST /chat/channels/:cid/cloudlink/reconnect",
        "description": "Legacy: Nookara-hosted servers are read-only now (writes answer server_read_only with moved_to). Use an Ember instance instead. Request keys are observed in the implementation; unknown types are deliberately unconstrained. Server-side validation, membership, roles, privacy and rank checks still apply.",
        "x-velora-scopes": {
          "CHAT": 2048
        },
        "x-captcha-required": false,
        "x-velora-legacy": true,
        "deprecated": true,
        "security": [
          {
            "UserToken": []
          }
        ],
        "parameters": [
          {
            "name": "cid",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "2XX": {
            "description": "Endpoint-specific JSON, text, binary, redirect or empty success; see the guide. No exhaustive response schema is asserted."
          },
          "4XX": {
            "description": "Invalid input, authorization, scope, role, privacy, quota or rate-limit error"
          },
          "5XX": {
            "description": "Service or upstream failure"
          }
        }
      }
    },
    "/chat/channels/{cid}/messages": {
      "get": {
        "operationId": "get_chat_channels_by_cid_messages",
        "tags": [
          "chat"
        ],
        "summary": "GET /chat/channels/:cid/messages",
        "description": "Legacy: Nookara-hosted servers are read-only now (writes answer server_read_only with moved_to). Use an Ember instance instead. Request keys are observed in the implementation; unknown types are deliberately unconstrained. Server-side validation, membership, roles, privacy and rank checks still apply.",
        "x-velora-scopes": {
          "CHAT": 2048
        },
        "x-captcha-required": false,
        "x-velora-legacy": true,
        "deprecated": true,
        "security": [
          {
            "UserToken": []
          }
        ],
        "parameters": [
          {
            "name": "cid",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "after",
            "in": "query",
            "required": false,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "before",
            "in": "query",
            "required": false,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "limit",
            "in": "query",
            "required": false,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "2XX": {
            "description": "Endpoint-specific JSON, text, binary, redirect or empty success; see the guide. No exhaustive response schema is asserted."
          },
          "4XX": {
            "description": "Invalid input, authorization, scope, role, privacy, quota or rate-limit error"
          },
          "5XX": {
            "description": "Service or upstream failure"
          }
        }
      },
      "post": {
        "operationId": "post_chat_channels_by_cid_messages",
        "tags": [
          "chat"
        ],
        "summary": "POST /chat/channels/:cid/messages",
        "description": "Legacy: Nookara-hosted servers are read-only now (writes answer server_read_only with moved_to). Use an Ember instance instead. Request keys are observed in the implementation; unknown types are deliberately unconstrained. Server-side validation, membership, roles, privacy and rank checks still apply.",
        "x-velora-scopes": {
          "CHAT": 2048
        },
        "x-captcha-required": false,
        "x-velora-legacy": true,
        "deprecated": true,
        "security": [
          {
            "UserToken": []
          }
        ],
        "parameters": [
          {
            "name": "cid",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "2XX": {
            "description": "Endpoint-specific JSON, text, binary, redirect or empty success; see the guide. No exhaustive response schema is asserted."
          },
          "4XX": {
            "description": "Invalid input, authorization, scope, role, privacy, quota or rate-limit error"
          },
          "5XX": {
            "description": "Service or upstream failure"
          }
        },
        "requestBody": {
          "required": false,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "properties": {
                  "attachments": {
                    "description": "Observed request key. See guide for nested formats and constraints."
                  },
                  "message": {
                    "description": "Observed request key. See guide for nested formats and constraints."
                  },
                  "reply_to": {
                    "description": "Observed request key. See guide for nested formats and constraints."
                  }
                },
                "additionalProperties": true
              }
            }
          }
        }
      }
    },
    "/chat/channels/{cid}/read": {
      "post": {
        "operationId": "post_chat_channels_by_cid_read",
        "tags": [
          "chat"
        ],
        "summary": "POST /chat/channels/:cid/read",
        "description": "Legacy: Nookara-hosted servers are read-only now (writes answer server_read_only with moved_to). Use an Ember instance instead. Request keys are observed in the implementation; unknown types are deliberately unconstrained. Server-side validation, membership, roles, privacy and rank checks still apply.",
        "x-velora-scopes": {
          "CHAT": 2048
        },
        "x-captcha-required": false,
        "x-velora-legacy": true,
        "deprecated": true,
        "security": [
          {
            "UserToken": []
          }
        ],
        "parameters": [
          {
            "name": "cid",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "2XX": {
            "description": "Endpoint-specific JSON, text, binary, redirect or empty success; see the guide. No exhaustive response schema is asserted."
          },
          "4XX": {
            "description": "Invalid input, authorization, scope, role, privacy, quota or rate-limit error"
          },
          "5XX": {
            "description": "Service or upstream failure"
          }
        },
        "requestBody": {
          "required": false,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "properties": {
                  "id": {
                    "description": "Observed request key. See guide for nested formats and constraints."
                  }
                },
                "additionalProperties": true
              }
            }
          }
        }
      }
    },
    "/chat/channels/{cid}/search": {
      "get": {
        "operationId": "get_chat_channels_by_cid_search",
        "tags": [
          "chat"
        ],
        "summary": "GET /chat/channels/:cid/search",
        "description": "Legacy: Nookara-hosted servers are read-only now (writes answer server_read_only with moved_to). Use an Ember instance instead. Request keys are observed in the implementation; unknown types are deliberately unconstrained. Server-side validation, membership, roles, privacy and rank checks still apply.",
        "x-velora-scopes": {
          "CHAT": 2048
        },
        "x-captcha-required": false,
        "x-velora-legacy": true,
        "deprecated": true,
        "security": [
          {
            "UserToken": []
          }
        ],
        "parameters": [
          {
            "name": "cid",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "q",
            "in": "query",
            "required": false,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "2XX": {
            "description": "Endpoint-specific JSON, text, binary, redirect or empty success; see the guide. No exhaustive response schema is asserted."
          },
          "4XX": {
            "description": "Invalid input, authorization, scope, role, privacy, quota or rate-limit error"
          },
          "5XX": {
            "description": "Service or upstream failure"
          }
        }
      }
    },
    "/chat/messages/{id}": {
      "patch": {
        "operationId": "patch_chat_messages_by_id",
        "tags": [
          "chat"
        ],
        "summary": "PATCH /chat/messages/:id",
        "description": "Legacy: Nookara-hosted servers are read-only now (writes answer server_read_only with moved_to). Use an Ember instance instead. Request keys are observed in the implementation; unknown types are deliberately unconstrained. Server-side validation, membership, roles, privacy and rank checks still apply.",
        "x-velora-scopes": {
          "CHAT": 2048
        },
        "x-captcha-required": false,
        "x-velora-legacy": true,
        "deprecated": true,
        "security": [
          {
            "UserToken": []
          }
        ],
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "2XX": {
            "description": "Endpoint-specific JSON, text, binary, redirect or empty success; see the guide. No exhaustive response schema is asserted."
          },
          "4XX": {
            "description": "Invalid input, authorization, scope, role, privacy, quota or rate-limit error"
          },
          "5XX": {
            "description": "Service or upstream failure"
          }
        },
        "requestBody": {
          "required": false,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "properties": {
                  "message": {
                    "description": "Observed request key. See guide for nested formats and constraints."
                  }
                },
                "additionalProperties": true
              }
            }
          }
        }
      },
      "delete": {
        "operationId": "delete_chat_messages_by_id",
        "tags": [
          "chat"
        ],
        "summary": "DELETE /chat/messages/:id",
        "description": "Legacy: Nookara-hosted servers are read-only now (writes answer server_read_only with moved_to). Use an Ember instance instead. Request keys are observed in the implementation; unknown types are deliberately unconstrained. Server-side validation, membership, roles, privacy and rank checks still apply.",
        "x-velora-scopes": {
          "CHAT": 2048
        },
        "x-captcha-required": false,
        "x-velora-legacy": true,
        "deprecated": true,
        "security": [
          {
            "UserToken": []
          }
        ],
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "2XX": {
            "description": "Endpoint-specific JSON, text, binary, redirect or empty success; see the guide. No exhaustive response schema is asserted."
          },
          "4XX": {
            "description": "Invalid input, authorization, scope, role, privacy, quota or rate-limit error"
          },
          "5XX": {
            "description": "Service or upstream failure"
          }
        }
      }
    },
    "/chat/upload": {
      "post": {
        "operationId": "post_chat_upload",
        "tags": [
          "chat"
        ],
        "summary": "POST /chat/upload",
        "description": "Legacy: Nookara-hosted servers are read-only now (writes answer server_read_only with moved_to). Use an Ember instance instead. Request keys are observed in the implementation; unknown types are deliberately unconstrained. Server-side validation, membership, roles, privacy and rank checks still apply.",
        "x-velora-scopes": {
          "CHAT": 2048,
          "MEDIA_UPLOAD": 4096
        },
        "x-captcha-required": false,
        "x-velora-legacy": true,
        "deprecated": true,
        "security": [
          {
            "UserToken": []
          }
        ],
        "parameters": [],
        "responses": {
          "2XX": {
            "description": "Endpoint-specific JSON, text, binary, redirect or empty success; see the guide. No exhaustive response schema is asserted."
          },
          "4XX": {
            "description": "Invalid input, authorization, scope, role, privacy, quota or rate-limit error"
          },
          "5XX": {
            "description": "Service or upstream failure"
          }
        },
        "requestBody": {
          "required": false,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "properties": {},
                "additionalProperties": true
              }
            },
            "multipart/form-data": {
              "schema": {
                "type": "object",
                "properties": {
                  "file": {
                    "type": "string",
                    "format": "binary"
                  }
                },
                "additionalProperties": true
              }
            }
          }
        }
      }
    },
    "/chat/notify": {
      "get": {
        "operationId": "get_chat_notify",
        "tags": [
          "chat"
        ],
        "summary": "GET /chat/notify",
        "description": "Request keys are observed in the implementation; unknown types are deliberately unconstrained. Server-side validation, membership, roles, privacy and rank checks still apply.",
        "x-velora-scopes": {
          "CHAT": 2048
        },
        "x-captcha-required": false,
        "x-velora-legacy": false,
        "deprecated": false,
        "security": [
          {
            "UserToken": []
          }
        ],
        "parameters": [],
        "responses": {
          "2XX": {
            "description": "Endpoint-specific JSON, text, binary, redirect or empty success; see the guide. No exhaustive response schema is asserted."
          },
          "4XX": {
            "description": "Invalid input, authorization, scope, role, privacy, quota or rate-limit error"
          },
          "5XX": {
            "description": "Service or upstream failure"
          }
        }
      }
    },
    "/chat/notify/{target}": {
      "put": {
        "operationId": "put_chat_notify_by_target",
        "tags": [
          "chat"
        ],
        "summary": "PUT /chat/notify/:target",
        "description": "Request keys are observed in the implementation; unknown types are deliberately unconstrained. Server-side validation, membership, roles, privacy and rank checks still apply.",
        "x-velora-scopes": {
          "CHAT": 2048
        },
        "x-captcha-required": false,
        "x-velora-legacy": false,
        "deprecated": false,
        "security": [
          {
            "UserToken": []
          }
        ],
        "parameters": [
          {
            "name": "target",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "2XX": {
            "description": "Endpoint-specific JSON, text, binary, redirect or empty success; see the guide. No exhaustive response schema is asserted."
          },
          "4XX": {
            "description": "Invalid input, authorization, scope, role, privacy, quota or rate-limit error"
          },
          "5XX": {
            "description": "Service or upstream failure"
          }
        },
        "requestBody": {
          "required": false,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "properties": {
                  "level": {
                    "description": "Observed request key. See guide for nested formats and constraints."
                  },
                  "mute_minutes": {
                    "description": "Observed request key. See guide for nested formats and constraints."
                  },
                  "push": {
                    "description": "Observed request key. See guide for nested formats and constraints."
                  }
                },
                "additionalProperties": true
              }
            }
          }
        }
      }
    },
    "/chat/settings": {
      "get": {
        "operationId": "get_chat_settings",
        "tags": [
          "chat"
        ],
        "summary": "GET /chat/settings",
        "description": "Request keys are observed in the implementation; unknown types are deliberately unconstrained. Server-side validation, membership, roles, privacy and rank checks still apply.",
        "x-velora-scopes": {
          "CHAT": 2048
        },
        "x-captcha-required": false,
        "x-velora-legacy": false,
        "deprecated": false,
        "security": [
          {
            "UserToken": []
          }
        ],
        "parameters": [],
        "responses": {
          "2XX": {
            "description": "Endpoint-specific JSON, text, binary, redirect or empty success; see the guide. No exhaustive response schema is asserted."
          },
          "4XX": {
            "description": "Invalid input, authorization, scope, role, privacy, quota or rate-limit error"
          },
          "5XX": {
            "description": "Service or upstream failure"
          }
        }
      },
      "patch": {
        "operationId": "patch_chat_settings",
        "tags": [
          "chat"
        ],
        "summary": "PATCH /chat/settings",
        "description": "Request keys are observed in the implementation; unknown types are deliberately unconstrained. Server-side validation, membership, roles, privacy and rank checks still apply.",
        "x-velora-scopes": {
          "CHAT": 2048
        },
        "x-captcha-required": false,
        "x-velora-legacy": false,
        "deprecated": false,
        "security": [
          {
            "UserToken": []
          }
        ],
        "parameters": [],
        "responses": {
          "2XX": {
            "description": "Endpoint-specific JSON, text, binary, redirect or empty success; see the guide. No exhaustive response schema is asserted."
          },
          "4XX": {
            "description": "Invalid input, authorization, scope, role, privacy, quota or rate-limit error"
          },
          "5XX": {
            "description": "Service or upstream failure"
          }
        },
        "requestBody": {
          "required": false,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "properties": {
                  "show_typing": {
                    "description": "Observed request key. See guide for nested formats and constraints."
                  },
                  "share_typing": {
                    "description": "Observed request key. See guide for nested formats and constraints."
                  },
                  "share_activity": {
                    "description": "Observed request key. See guide for nested formats and constraints."
                  },
                  "sounds": {
                    "description": "Observed request key. See guide for nested formats and constraints."
                  },
                  "notifications": {
                    "description": "Observed request key. See guide for nested formats and constraints."
                  },
                  "dm_privacy": {
                    "description": "Observed request key. See guide for nested formats and constraints."
                  },
                  "compact": {
                    "description": "Observed request key. See guide for nested formats and constraints."
                  },
                  "animations": {
                    "description": "Observed request key. See guide for nested formats and constraints."
                  },
                  "link_images": {
                    "description": "Observed request key. See guide for nested formats and constraints."
                  },
                  "server_order": {
                    "description": "Observed request key. See guide for nested formats and constraints."
                  },
                  "daily_notice": {
                    "description": "Observed request key. See guide for nested formats and constraints."
                  },
                  "developer_mode": {
                    "description": "Observed request key. See guide for nested formats and constraints."
                  },
                  "allow_vc_calls": {
                    "description": "Observed request key. See guide for nested formats and constraints."
                  },
                  "yt_mode": {
                    "description": "Observed request key. See guide for nested formats and constraints."
                  }
                },
                "additionalProperties": true
              }
            }
          }
        }
      }
    },
    "/chat/open": {
      "get": {
        "operationId": "get_chat_open",
        "tags": [
          "chat"
        ],
        "summary": "GET /chat/open",
        "description": "Request keys are observed in the implementation; unknown types are deliberately unconstrained. Server-side validation, membership, roles, privacy and rank checks still apply.",
        "x-velora-scopes": {
          "CHAT": 2048
        },
        "x-captcha-required": false,
        "x-velora-legacy": false,
        "deprecated": false,
        "security": [
          {
            "UserToken": []
          }
        ],
        "parameters": [],
        "responses": {
          "2XX": {
            "description": "Endpoint-specific JSON, text, binary, redirect or empty success; see the guide. No exhaustive response schema is asserted."
          },
          "4XX": {
            "description": "Invalid input, authorization, scope, role, privacy, quota or rate-limit error"
          },
          "5XX": {
            "description": "Service or upstream failure"
          }
        }
      }
    },
    "/chat/users/{username}": {
      "get": {
        "operationId": "get_chat_users_by_username",
        "tags": [
          "chat"
        ],
        "summary": "GET /chat/users/:username",
        "description": "Request keys are observed in the implementation; unknown types are deliberately unconstrained. Server-side validation, membership, roles, privacy and rank checks still apply.",
        "x-velora-scopes": {
          "CHAT": 2048
        },
        "x-captcha-required": false,
        "x-velora-legacy": false,
        "deprecated": false,
        "security": [
          {
            "UserToken": []
          }
        ],
        "parameters": [
          {
            "name": "username",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "2XX": {
            "description": "Endpoint-specific JSON, text, binary, redirect or empty success; see the guide. No exhaustive response schema is asserted."
          },
          "4XX": {
            "description": "Invalid input, authorization, scope, role, privacy, quota or rate-limit error"
          },
          "5XX": {
            "description": "Service or upstream failure"
          }
        }
      }
    },
    "/chat/bots": {
      "get": {
        "operationId": "get_chat_bots",
        "tags": [
          "chat"
        ],
        "summary": "GET /chat/bots",
        "description": "Nookara developer bots: bot accounts you own on Nookara (not tied to one server). Needs Chat. Entries carry id, username, description, verified, trusted_in and gallery {state, verified, review_message, trusted_in}. Request keys are observed in the implementation; unknown types are deliberately unconstrained. Server-side validation, membership, roles, privacy and rank checks still apply.",
        "x-velora-scopes": {
          "CHAT": 2048
        },
        "x-captcha-required": false,
        "x-velora-legacy": false,
        "deprecated": false,
        "security": [
          {
            "UserToken": []
          }
        ],
        "parameters": [],
        "responses": {
          "2XX": {
            "description": "Endpoint-specific JSON, text, binary, redirect or empty success; see the guide. No exhaustive response schema is asserted."
          },
          "4XX": {
            "description": "Invalid input, authorization, scope, role, privacy, quota or rate-limit error"
          },
          "5XX": {
            "description": "Service or upstream failure"
          }
        }
      },
      "post": {
        "operationId": "post_chat_bots",
        "tags": [
          "chat"
        ],
        "summary": "POST /chat/bots",
        "description": "Needs Chat. Body {name, description}. Returns {bot, token}; the token is shown once. The same token works on every instance the bot is added to. Request keys are observed in the implementation; unknown types are deliberately unconstrained. Server-side validation, membership, roles, privacy and rank checks still apply.",
        "x-velora-scopes": {
          "CHAT": 2048
        },
        "x-captcha-required": false,
        "x-velora-legacy": false,
        "deprecated": false,
        "security": [
          {
            "UserToken": []
          }
        ],
        "parameters": [],
        "responses": {
          "2XX": {
            "description": "Endpoint-specific JSON, text, binary, redirect or empty success; see the guide. No exhaustive response schema is asserted."
          },
          "4XX": {
            "description": "Invalid input, authorization, scope, role, privacy, quota or rate-limit error"
          },
          "5XX": {
            "description": "Service or upstream failure"
          }
        },
        "requestBody": {
          "required": false,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "properties": {
                  "description": {
                    "description": "Observed request key. See guide for nested formats and constraints."
                  },
                  "name": {
                    "description": "Observed request key. See guide for nested formats and constraints."
                  }
                },
                "additionalProperties": true
              }
            }
          }
        }
      }
    },
    "/chat/bots/{id}": {
      "patch": {
        "operationId": "patch_chat_bots_by_id",
        "tags": [
          "chat"
        ],
        "summary": "PATCH /chat/bots/:id",
        "description": "Needs Chat. Bot owner only. name, description. Request keys are observed in the implementation; unknown types are deliberately unconstrained. Server-side validation, membership, roles, privacy and rank checks still apply.",
        "x-velora-scopes": {
          "CHAT": 2048
        },
        "x-captcha-required": false,
        "x-velora-legacy": false,
        "deprecated": false,
        "security": [
          {
            "UserToken": []
          }
        ],
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "2XX": {
            "description": "Endpoint-specific JSON, text, binary, redirect or empty success; see the guide. No exhaustive response schema is asserted."
          },
          "4XX": {
            "description": "Invalid input, authorization, scope, role, privacy, quota or rate-limit error"
          },
          "5XX": {
            "description": "Service or upstream failure"
          }
        },
        "requestBody": {
          "required": false,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "properties": {
                  "description": {
                    "description": "Observed request key. See guide for nested formats and constraints."
                  },
                  "name": {
                    "description": "Observed request key. See guide for nested formats and constraints."
                  },
                  "public": {
                    "description": "Observed request key. See guide for nested formats and constraints."
                  }
                },
                "additionalProperties": true
              }
            }
          }
        }
      },
      "delete": {
        "operationId": "delete_chat_bots_by_id",
        "tags": [
          "chat"
        ],
        "summary": "DELETE /chat/bots/:id",
        "description": "Needs Chat. Deletes the bot account; instances remove it at their next sync. Request keys are observed in the implementation; unknown types are deliberately unconstrained. Server-side validation, membership, roles, privacy and rank checks still apply.",
        "x-velora-scopes": {
          "CHAT": 2048
        },
        "x-captcha-required": false,
        "x-velora-legacy": false,
        "deprecated": false,
        "security": [
          {
            "UserToken": []
          }
        ],
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "2XX": {
            "description": "Endpoint-specific JSON, text, binary, redirect or empty success; see the guide. No exhaustive response schema is asserted."
          },
          "4XX": {
            "description": "Invalid input, authorization, scope, role, privacy, quota or rate-limit error"
          },
          "5XX": {
            "description": "Service or upstream failure"
          }
        }
      }
    },
    "/chat/bots/{id}/avatar": {
      "post": {
        "operationId": "post_chat_bots_by_id_avatar",
        "tags": [
          "chat"
        ],
        "summary": "POST /chat/bots/:id/avatar",
        "description": "Needs Chat. Multipart file. A listed bot needs an avatar. Request keys are observed in the implementation; unknown types are deliberately unconstrained. Server-side validation, membership, roles, privacy and rank checks still apply.",
        "x-velora-scopes": {
          "CHAT": 2048
        },
        "x-captcha-required": false,
        "x-velora-legacy": false,
        "deprecated": false,
        "security": [
          {
            "UserToken": []
          }
        ],
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "2XX": {
            "description": "Endpoint-specific JSON, text, binary, redirect or empty success; see the guide. No exhaustive response schema is asserted."
          },
          "4XX": {
            "description": "Invalid input, authorization, scope, role, privacy, quota or rate-limit error"
          },
          "5XX": {
            "description": "Service or upstream failure"
          }
        },
        "requestBody": {
          "required": false,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "properties": {},
                "additionalProperties": true
              }
            },
            "multipart/form-data": {
              "schema": {
                "type": "object",
                "properties": {
                  "file": {
                    "type": "string",
                    "format": "binary"
                  }
                },
                "additionalProperties": true
              }
            }
          }
        }
      }
    },
    "/chat/bots/{id}/token": {
      "post": {
        "operationId": "post_chat_bots_by_id_token",
        "tags": [
          "chat"
        ],
        "summary": "POST /chat/bots/:id/token",
        "description": "Needs Chat. Resets the token; instances pick up the new hash within about 10 minutes. Request keys are observed in the implementation; unknown types are deliberately unconstrained. Server-side validation, membership, roles, privacy and rank checks still apply.",
        "x-velora-scopes": {
          "CHAT": 2048
        },
        "x-captcha-required": false,
        "x-velora-legacy": false,
        "deprecated": false,
        "security": [
          {
            "UserToken": []
          }
        ],
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "2XX": {
            "description": "Endpoint-specific JSON, text, binary, redirect or empty success; see the guide. No exhaustive response schema is asserted."
          },
          "4XX": {
            "description": "Invalid input, authorization, scope, role, privacy, quota or rate-limit error"
          },
          "5XX": {
            "description": "Service or upstream failure"
          }
        }
      }
    },
    "/chat/bots/by-name/{username}/add": {
      "post": {
        "operationId": "post_chat_bots_by_name_by_username_add",
        "tags": [
          "chat"
        ],
        "summary": "POST /chat/bots/by-name/:username/add",
        "description": "Legacy: Nookara-hosted servers are read-only now (writes answer server_read_only with moved_to). Use an Ember instance instead. Request keys are observed in the implementation; unknown types are deliberately unconstrained. Server-side validation, membership, roles, privacy and rank checks still apply.",
        "x-velora-scopes": {
          "CHAT": 2048
        },
        "x-captcha-required": false,
        "x-velora-legacy": true,
        "deprecated": true,
        "security": [
          {
            "UserToken": []
          }
        ],
        "parameters": [
          {
            "name": "username",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "2XX": {
            "description": "Endpoint-specific JSON, text, binary, redirect or empty success; see the guide. No exhaustive response schema is asserted."
          },
          "4XX": {
            "description": "Invalid input, authorization, scope, role, privacy, quota or rate-limit error"
          },
          "5XX": {
            "description": "Service or upstream failure"
          }
        },
        "requestBody": {
          "required": false,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "properties": {
                  "sid": {
                    "description": "Observed request key. See guide for nested formats and constraints."
                  }
                },
                "additionalProperties": true
              }
            }
          }
        }
      }
    },
    "/chat/presence/{username}": {
      "get": {
        "operationId": "get_chat_presence_by_username",
        "tags": [
          "chat"
        ],
        "summary": "GET /chat/presence/:username",
        "description": "Request keys are observed in the implementation; unknown types are deliberately unconstrained. Server-side validation, membership, roles, privacy and rank checks still apply.",
        "x-velora-scopes": {
          "CHAT": 2048
        },
        "x-captcha-required": false,
        "x-velora-legacy": false,
        "deprecated": false,
        "security": [
          {
            "UserToken": []
          }
        ],
        "parameters": [
          {
            "name": "username",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "2XX": {
            "description": "Endpoint-specific JSON, text, binary, redirect or empty success; see the guide. No exhaustive response schema is asserted."
          },
          "4XX": {
            "description": "Invalid input, authorization, scope, role, privacy, quota or rate-limit error"
          },
          "5XX": {
            "description": "Service or upstream failure"
          }
        }
      }
    },
    "/chat/presence/status": {
      "post": {
        "operationId": "post_chat_presence_status",
        "tags": [
          "chat"
        ],
        "summary": "POST /chat/presence/status",
        "description": "Request keys are observed in the implementation; unknown types are deliberately unconstrained. Server-side validation, membership, roles, privacy and rank checks still apply.",
        "x-velora-scopes": {
          "CHAT": 2048
        },
        "x-captcha-required": false,
        "x-velora-legacy": false,
        "deprecated": false,
        "security": [
          {
            "UserToken": []
          }
        ],
        "parameters": [],
        "responses": {
          "2XX": {
            "description": "Endpoint-specific JSON, text, binary, redirect or empty success; see the guide. No exhaustive response schema is asserted."
          },
          "4XX": {
            "description": "Invalid input, authorization, scope, role, privacy, quota or rate-limit error"
          },
          "5XX": {
            "description": "Service or upstream failure"
          }
        },
        "requestBody": {
          "required": false,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "properties": {
                  "status": {
                    "description": "Observed request key. See guide for nested formats and constraints."
                  }
                },
                "additionalProperties": true
              }
            }
          }
        }
      }
    },
    "/chat/presence/custom": {
      "post": {
        "operationId": "post_chat_presence_custom",
        "tags": [
          "chat"
        ],
        "summary": "POST /chat/presence/custom",
        "description": "Request keys are observed in the implementation; unknown types are deliberately unconstrained. Server-side validation, membership, roles, privacy and rank checks still apply.",
        "x-velora-scopes": {
          "CHAT": 2048
        },
        "x-captcha-required": false,
        "x-velora-legacy": false,
        "deprecated": false,
        "security": [
          {
            "UserToken": []
          }
        ],
        "parameters": [],
        "responses": {
          "2XX": {
            "description": "Endpoint-specific JSON, text, binary, redirect or empty success; see the guide. No exhaustive response schema is asserted."
          },
          "4XX": {
            "description": "Invalid input, authorization, scope, role, privacy, quota or rate-limit error"
          },
          "5XX": {
            "description": "Service or upstream failure"
          }
        },
        "requestBody": {
          "required": false,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "properties": {
                  "text": {
                    "description": "Observed request key. See guide for nested formats and constraints."
                  }
                },
                "additionalProperties": true
              }
            }
          }
        }
      }
    },
    "/chat/presence/activity": {
      "post": {
        "operationId": "post_chat_presence_activity",
        "tags": [
          "chat"
        ],
        "summary": "POST /chat/presence/activity",
        "description": "Request keys are observed in the implementation; unknown types are deliberately unconstrained. Server-side validation, membership, roles, privacy and rank checks still apply.",
        "x-velora-scopes": {
          "CHAT": 2048
        },
        "x-captcha-required": false,
        "x-velora-legacy": false,
        "deprecated": false,
        "security": [
          {
            "UserToken": []
          }
        ],
        "parameters": [],
        "responses": {
          "2XX": {
            "description": "Endpoint-specific JSON, text, binary, redirect or empty success; see the guide. No exhaustive response schema is asserted."
          },
          "4XX": {
            "description": "Invalid input, authorization, scope, role, privacy, quota or rate-limit error"
          },
          "5XX": {
            "description": "Service or upstream failure"
          }
        },
        "requestBody": {
          "required": false,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "properties": {
                  "name": {
                    "description": "Observed request key. See guide for nested formats and constraints."
                  },
                  "key": {
                    "description": "Observed request key. See guide for nested formats and constraints."
                  },
                  "ttl": {
                    "description": "Observed request key. See guide for nested formats and constraints."
                  },
                  "type": {
                    "description": "Observed request key. See guide for nested formats and constraints."
                  },
                  "details": {
                    "description": "Observed request key. See guide for nested formats and constraints."
                  },
                  "state": {
                    "description": "Observed request key. See guide for nested formats and constraints."
                  },
                  "icon": {
                    "description": "Observed request key. See guide for nested formats and constraints."
                  },
                  "image": {
                    "description": "Observed request key. See guide for nested formats and constraints."
                  },
                  "url": {
                    "description": "Observed request key. See guide for nested formats and constraints."
                  },
                  "app": {
                    "description": "Observed request key. See guide for nested formats and constraints."
                  },
                  "since": {
                    "description": "Observed request key. See guide for nested formats and constraints."
                  },
                  "duration": {
                    "description": "Observed request key. See guide for nested formats and constraints."
                  },
                  "progress": {
                    "description": "Observed request key. See guide for nested formats and constraints."
                  },
                  "progress_at": {
                    "description": "Observed request key. See guide for nested formats and constraints."
                  }
                },
                "additionalProperties": true
              }
            }
          }
        }
      },
      "delete": {
        "operationId": "delete_chat_presence_activity_by_key_without_optional",
        "tags": [
          "chat"
        ],
        "summary": "DELETE /chat/presence/activity",
        "description": "Request keys are observed in the implementation; unknown types are deliberately unconstrained. Server-side validation, membership, roles, privacy and rank checks still apply.",
        "x-velora-scopes": {
          "CHAT": 2048
        },
        "x-captcha-required": false,
        "x-velora-legacy": false,
        "deprecated": false,
        "security": [
          {
            "UserToken": []
          }
        ],
        "parameters": [],
        "responses": {
          "2XX": {
            "description": "Endpoint-specific JSON, text, binary, redirect or empty success; see the guide. No exhaustive response schema is asserted."
          },
          "4XX": {
            "description": "Invalid input, authorization, scope, role, privacy, quota or rate-limit error"
          },
          "5XX": {
            "description": "Service or upstream failure"
          }
        }
      }
    },
    "/chat/presence/activity/{key}": {
      "delete": {
        "operationId": "delete_chat_presence_activity_by_key",
        "tags": [
          "chat"
        ],
        "summary": "DELETE /chat/presence/activity/:key?",
        "description": "Request keys are observed in the implementation; unknown types are deliberately unconstrained. Server-side validation, membership, roles, privacy and rank checks still apply.",
        "x-velora-scopes": {
          "CHAT": 2048
        },
        "x-captcha-required": false,
        "x-velora-legacy": false,
        "deprecated": false,
        "security": [
          {
            "UserToken": []
          }
        ],
        "parameters": [
          {
            "name": "key",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "2XX": {
            "description": "Endpoint-specific JSON, text, binary, redirect or empty success; see the guide. No exhaustive response schema is asserted."
          },
          "4XX": {
            "description": "Invalid input, authorization, scope, role, privacy, quota or rate-limit error"
          },
          "5XX": {
            "description": "Service or upstream failure"
          }
        }
      }
    },
    "/chat/gifs": {
      "get": {
        "operationId": "get_chat_gifs",
        "tags": [
          "chat"
        ],
        "summary": "GET /chat/gifs",
        "description": "Request keys are observed in the implementation; unknown types are deliberately unconstrained. Server-side validation, membership, roles, privacy and rank checks still apply.",
        "x-velora-scopes": {
          "CHAT": 2048
        },
        "x-captcha-required": false,
        "x-velora-legacy": false,
        "deprecated": false,
        "security": [
          {
            "UserToken": []
          }
        ],
        "parameters": [
          {
            "name": "page",
            "in": "query",
            "required": false,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "q",
            "in": "query",
            "required": false,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "2XX": {
            "description": "Endpoint-specific JSON, text, binary, redirect or empty success; see the guide. No exhaustive response schema is asserted."
          },
          "4XX": {
            "description": "Invalid input, authorization, scope, role, privacy, quota or rate-limit error"
          },
          "5XX": {
            "description": "Service or upstream failure"
          }
        }
      }
    },
    "/chat/media": {
      "get": {
        "operationId": "get_chat_media",
        "tags": [
          "chat"
        ],
        "summary": "GET /chat/media",
        "description": "Request keys are observed in the implementation; unknown types are deliberately unconstrained. Server-side validation, membership, roles, privacy and rank checks still apply.",
        "x-velora-scopes": {
          "CHAT": 2048
        },
        "x-captcha-required": false,
        "x-velora-legacy": false,
        "deprecated": false,
        "security": [
          {
            "UserToken": []
          }
        ],
        "parameters": [],
        "responses": {
          "2XX": {
            "description": "Endpoint-specific JSON, text, binary, redirect or empty success; see the guide. No exhaustive response schema is asserted."
          },
          "4XX": {
            "description": "Invalid input, authorization, scope, role, privacy, quota or rate-limit error"
          },
          "5XX": {
            "description": "Service or upstream failure"
          }
        }
      },
      "delete": {
        "operationId": "delete_chat_media",
        "tags": [
          "chat"
        ],
        "summary": "DELETE /chat/media",
        "description": "Request keys are observed in the implementation; unknown types are deliberately unconstrained. Server-side validation, membership, roles, privacy and rank checks still apply.",
        "x-velora-scopes": {
          "CHAT": 2048
        },
        "x-captcha-required": false,
        "x-velora-legacy": false,
        "deprecated": false,
        "security": [
          {
            "UserToken": []
          }
        ],
        "parameters": [
          {
            "name": "url",
            "in": "query",
            "required": false,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "2XX": {
            "description": "Endpoint-specific JSON, text, binary, redirect or empty success; see the guide. No exhaustive response schema is asserted."
          },
          "4XX": {
            "description": "Invalid input, authorization, scope, role, privacy, quota or rate-limit error"
          },
          "5XX": {
            "description": "Service or upstream failure"
          }
        }
      }
    },
    "/chat/media/save": {
      "post": {
        "operationId": "post_chat_media_save",
        "tags": [
          "chat"
        ],
        "summary": "POST /chat/media/save",
        "description": "Request keys are observed in the implementation; unknown types are deliberately unconstrained. Server-side validation, membership, roles, privacy and rank checks still apply.",
        "x-velora-scopes": {
          "CHAT": 2048
        },
        "x-captcha-required": false,
        "x-velora-legacy": false,
        "deprecated": false,
        "security": [
          {
            "UserToken": []
          }
        ],
        "parameters": [],
        "responses": {
          "2XX": {
            "description": "Endpoint-specific JSON, text, binary, redirect or empty success; see the guide. No exhaustive response schema is asserted."
          },
          "4XX": {
            "description": "Invalid input, authorization, scope, role, privacy, quota or rate-limit error"
          },
          "5XX": {
            "description": "Service or upstream failure"
          }
        },
        "requestBody": {
          "required": false,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "properties": {
                  "name": {
                    "description": "Observed request key. See guide for nested formats and constraints."
                  },
                  "url": {
                    "description": "Observed request key. See guide for nested formats and constraints."
                  }
                },
                "additionalProperties": true
              }
            }
          }
        }
      }
    },
    "/chat/klipy/{kind}/{slug}": {
      "get": {
        "operationId": "get_chat_klipy_by_kind_by_slug",
        "tags": [
          "chat"
        ],
        "summary": "GET /chat/klipy/:kind/:slug",
        "description": "Request keys are observed in the implementation; unknown types are deliberately unconstrained. Server-side validation, membership, roles, privacy and rank checks still apply.",
        "x-velora-scopes": {
          "CHAT": 2048
        },
        "x-captcha-required": false,
        "x-velora-legacy": false,
        "deprecated": false,
        "security": [
          {
            "UserToken": []
          }
        ],
        "parameters": [
          {
            "name": "kind",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "slug",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "2XX": {
            "description": "Endpoint-specific JSON, text, binary, redirect or empty success; see the guide. No exhaustive response schema is asserted."
          },
          "4XX": {
            "description": "Invalid input, authorization, scope, role, privacy, quota or rate-limit error"
          },
          "5XX": {
            "description": "Service or upstream failure"
          }
        }
      }
    },
    "/chat/media/gif": {
      "post": {
        "operationId": "post_chat_media_gif",
        "tags": [
          "chat"
        ],
        "summary": "POST /chat/media/gif",
        "description": "Request keys are observed in the implementation; unknown types are deliberately unconstrained. Server-side validation, membership, roles, privacy and rank checks still apply.",
        "x-velora-scopes": {
          "CHAT": 2048
        },
        "x-captcha-required": false,
        "x-velora-legacy": false,
        "deprecated": false,
        "security": [
          {
            "UserToken": []
          }
        ],
        "parameters": [],
        "responses": {
          "2XX": {
            "description": "Endpoint-specific JSON, text, binary, redirect or empty success; see the guide. No exhaustive response schema is asserted."
          },
          "4XX": {
            "description": "Invalid input, authorization, scope, role, privacy, quota or rate-limit error"
          },
          "5XX": {
            "description": "Service or upstream failure"
          }
        },
        "requestBody": {
          "required": false,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "properties": {
                  "height": {
                    "description": "Observed request key. See guide for nested formats and constraints."
                  },
                  "preview": {
                    "description": "Observed request key. See guide for nested formats and constraints."
                  },
                  "title": {
                    "description": "Observed request key. See guide for nested formats and constraints."
                  },
                  "url": {
                    "description": "Observed request key. See guide for nested formats and constraints."
                  },
                  "width": {
                    "description": "Observed request key. See guide for nested formats and constraints."
                  }
                },
                "additionalProperties": true
              }
            }
          }
        }
      }
    },
    "/chat/media/{id}": {
      "delete": {
        "operationId": "delete_chat_media_by_id",
        "tags": [
          "chat"
        ],
        "summary": "DELETE /chat/media/:id",
        "description": "Request keys are observed in the implementation; unknown types are deliberately unconstrained. Server-side validation, membership, roles, privacy and rank checks still apply.",
        "x-velora-scopes": {
          "CHAT": 2048
        },
        "x-captcha-required": false,
        "x-velora-legacy": false,
        "deprecated": false,
        "security": [
          {
            "UserToken": []
          }
        ],
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "2XX": {
            "description": "Endpoint-specific JSON, text, binary, redirect or empty success; see the guide. No exhaustive response schema is asserted."
          },
          "4XX": {
            "description": "Invalid input, authorization, scope, role, privacy, quota or rate-limit error"
          },
          "5XX": {
            "description": "Service or upstream failure"
          }
        }
      }
    },
    "/chat/media/limits": {
      "get": {
        "operationId": "get_chat_media_limits",
        "tags": [
          "chat"
        ],
        "summary": "GET /chat/media/limits",
        "description": "Request keys are observed in the implementation; unknown types are deliberately unconstrained. Server-side validation, membership, roles, privacy and rank checks still apply.",
        "x-velora-scopes": {
          "CHAT": 2048
        },
        "x-captcha-required": false,
        "x-velora-legacy": false,
        "deprecated": false,
        "security": [
          {
            "UserToken": []
          }
        ],
        "parameters": [],
        "responses": {
          "2XX": {
            "description": "Endpoint-specific JSON, text, binary, redirect or empty success; see the guide. No exhaustive response schema is asserted."
          },
          "4XX": {
            "description": "Invalid input, authorization, scope, role, privacy, quota or rate-limit error"
          },
          "5XX": {
            "description": "Service or upstream failure"
          }
        }
      }
    },
    "/chat/media/upload": {
      "post": {
        "operationId": "post_chat_media_upload",
        "tags": [
          "chat"
        ],
        "summary": "POST /chat/media/upload",
        "description": "Request keys are observed in the implementation; unknown types are deliberately unconstrained. Server-side validation, membership, roles, privacy and rank checks still apply.",
        "x-velora-scopes": {
          "CHAT": 2048,
          "MEDIA_UPLOAD": 4096
        },
        "x-captcha-required": false,
        "x-velora-legacy": false,
        "deprecated": false,
        "security": [
          {
            "UserToken": []
          }
        ],
        "parameters": [],
        "responses": {
          "2XX": {
            "description": "Endpoint-specific JSON, text, binary, redirect or empty success; see the guide. No exhaustive response schema is asserted."
          },
          "4XX": {
            "description": "Invalid input, authorization, scope, role, privacy, quota or rate-limit error"
          },
          "5XX": {
            "description": "Service or upstream failure"
          }
        },
        "requestBody": {
          "required": false,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "properties": {},
                "additionalProperties": true
              }
            },
            "multipart/form-data": {
              "schema": {
                "type": "object",
                "properties": {
                  "file": {
                    "type": "string",
                    "format": "binary"
                  }
                },
                "additionalProperties": true
              }
            }
          }
        }
      }
    },
    "/chat/emojis": {
      "get": {
        "operationId": "get_chat_emojis",
        "tags": [
          "chat"
        ],
        "summary": "GET /chat/emojis",
        "description": "Legacy: Nookara-hosted servers are read-only now (writes answer server_read_only with moved_to). Use an Ember instance instead. Request keys are observed in the implementation; unknown types are deliberately unconstrained. Server-side validation, membership, roles, privacy and rank checks still apply.",
        "x-velora-scopes": {
          "CHAT": 2048
        },
        "x-captcha-required": false,
        "x-velora-legacy": true,
        "deprecated": true,
        "security": [
          {
            "UserToken": []
          }
        ],
        "parameters": [],
        "responses": {
          "2XX": {
            "description": "Endpoint-specific JSON, text, binary, redirect or empty success; see the guide. No exhaustive response schema is asserted."
          },
          "4XX": {
            "description": "Invalid input, authorization, scope, role, privacy, quota or rate-limit error"
          },
          "5XX": {
            "description": "Service or upstream failure"
          }
        }
      }
    },
    "/chat/emojis/{eid}/info": {
      "get": {
        "operationId": "get_chat_emojis_by_eid_info",
        "tags": [
          "chat"
        ],
        "summary": "GET /chat/emojis/:eid/info",
        "description": "Legacy: Nookara-hosted servers are read-only now (writes answer server_read_only with moved_to). Use an Ember instance instead. Request keys are observed in the implementation; unknown types are deliberately unconstrained. Server-side validation, membership, roles, privacy and rank checks still apply.",
        "x-velora-scopes": {
          "CHAT": 2048
        },
        "x-captcha-required": false,
        "x-velora-legacy": true,
        "deprecated": true,
        "security": [
          {
            "UserToken": []
          }
        ],
        "parameters": [
          {
            "name": "eid",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "2XX": {
            "description": "Endpoint-specific JSON, text, binary, redirect or empty success; see the guide. No exhaustive response schema is asserted."
          },
          "4XX": {
            "description": "Invalid input, authorization, scope, role, privacy, quota or rate-limit error"
          },
          "5XX": {
            "description": "Service or upstream failure"
          }
        }
      }
    },
    "/chat/servers/{sid}/emojis": {
      "get": {
        "operationId": "get_chat_servers_by_sid_emojis",
        "tags": [
          "chat"
        ],
        "summary": "GET /chat/servers/:sid/emojis",
        "description": "Legacy: Nookara-hosted servers are read-only now (writes answer server_read_only with moved_to). Use an Ember instance instead. Request keys are observed in the implementation; unknown types are deliberately unconstrained. Server-side validation, membership, roles, privacy and rank checks still apply.",
        "x-velora-scopes": {
          "CHAT": 2048
        },
        "x-captcha-required": false,
        "x-velora-legacy": true,
        "deprecated": true,
        "security": [
          {
            "UserToken": []
          }
        ],
        "parameters": [
          {
            "name": "sid",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "2XX": {
            "description": "Endpoint-specific JSON, text, binary, redirect or empty success; see the guide. No exhaustive response schema is asserted."
          },
          "4XX": {
            "description": "Invalid input, authorization, scope, role, privacy, quota or rate-limit error"
          },
          "5XX": {
            "description": "Service or upstream failure"
          }
        }
      },
      "post": {
        "operationId": "post_chat_servers_by_sid_emojis",
        "tags": [
          "chat"
        ],
        "summary": "POST /chat/servers/:sid/emojis",
        "description": "Legacy: Nookara-hosted servers are read-only now (writes answer server_read_only with moved_to). Use an Ember instance instead. Request keys are observed in the implementation; unknown types are deliberately unconstrained. Server-side validation, membership, roles, privacy and rank checks still apply.",
        "x-velora-scopes": {
          "CHAT": 2048
        },
        "x-captcha-required": false,
        "x-velora-legacy": true,
        "deprecated": true,
        "security": [
          {
            "UserToken": []
          }
        ],
        "parameters": [
          {
            "name": "sid",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "2XX": {
            "description": "Endpoint-specific JSON, text, binary, redirect or empty success; see the guide. No exhaustive response schema is asserted."
          },
          "4XX": {
            "description": "Invalid input, authorization, scope, role, privacy, quota or rate-limit error"
          },
          "5XX": {
            "description": "Service or upstream failure"
          }
        },
        "requestBody": {
          "required": false,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "properties": {
                  "name": {
                    "description": "Observed request key. See guide for nested formats and constraints."
                  }
                },
                "additionalProperties": true
              }
            },
            "multipart/form-data": {
              "schema": {
                "type": "object",
                "properties": {
                  "name": {
                    "description": "Observed request key. See guide for nested formats and constraints."
                  },
                  "file": {
                    "type": "string",
                    "format": "binary"
                  }
                },
                "additionalProperties": true
              }
            }
          }
        }
      }
    },
    "/chat/servers/{sid}/emojis/{eid}": {
      "patch": {
        "operationId": "patch_chat_servers_by_sid_emojis_by_eid",
        "tags": [
          "chat"
        ],
        "summary": "PATCH /chat/servers/:sid/emojis/:eid",
        "description": "Legacy: Nookara-hosted servers are read-only now (writes answer server_read_only with moved_to). Use an Ember instance instead. Request keys are observed in the implementation; unknown types are deliberately unconstrained. Server-side validation, membership, roles, privacy and rank checks still apply.",
        "x-velora-scopes": {
          "CHAT": 2048
        },
        "x-captcha-required": false,
        "x-velora-legacy": true,
        "deprecated": true,
        "security": [
          {
            "UserToken": []
          }
        ],
        "parameters": [
          {
            "name": "sid",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "eid",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "2XX": {
            "description": "Endpoint-specific JSON, text, binary, redirect or empty success; see the guide. No exhaustive response schema is asserted."
          },
          "4XX": {
            "description": "Invalid input, authorization, scope, role, privacy, quota or rate-limit error"
          },
          "5XX": {
            "description": "Service or upstream failure"
          }
        },
        "requestBody": {
          "required": false,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "properties": {
                  "name": {
                    "description": "Observed request key. See guide for nested formats and constraints."
                  }
                },
                "additionalProperties": true
              }
            }
          }
        }
      },
      "delete": {
        "operationId": "delete_chat_servers_by_sid_emojis_by_eid",
        "tags": [
          "chat"
        ],
        "summary": "DELETE /chat/servers/:sid/emojis/:eid",
        "description": "Legacy: Nookara-hosted servers are read-only now (writes answer server_read_only with moved_to). Use an Ember instance instead. Request keys are observed in the implementation; unknown types are deliberately unconstrained. Server-side validation, membership, roles, privacy and rank checks still apply.",
        "x-velora-scopes": {
          "CHAT": 2048
        },
        "x-captcha-required": false,
        "x-velora-legacy": true,
        "deprecated": true,
        "security": [
          {
            "UserToken": []
          }
        ],
        "parameters": [
          {
            "name": "sid",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "eid",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "2XX": {
            "description": "Endpoint-specific JSON, text, binary, redirect or empty success; see the guide. No exhaustive response schema is asserted."
          },
          "4XX": {
            "description": "Invalid input, authorization, scope, role, privacy, quota or rate-limit error"
          },
          "5XX": {
            "description": "Service or upstream failure"
          }
        }
      }
    },
    "/chat/bridge/platforms": {
      "get": {
        "operationId": "get_chat_bridge_platforms",
        "tags": [
          "chat"
        ],
        "summary": "GET /chat/bridge/platforms",
        "description": "Legacy: Nookara-hosted servers are read-only now (writes answer server_read_only with moved_to). Use an Ember instance instead. Request keys are observed in the implementation; unknown types are deliberately unconstrained. Server-side validation, membership, roles, privacy and rank checks still apply.",
        "x-velora-scopes": {
          "CHAT": 2048
        },
        "x-captcha-required": false,
        "x-velora-legacy": true,
        "deprecated": true,
        "security": [
          {
            "UserToken": []
          }
        ],
        "parameters": [],
        "responses": {
          "2XX": {
            "description": "Endpoint-specific JSON, text, binary, redirect or empty success; see the guide. No exhaustive response schema is asserted."
          },
          "4XX": {
            "description": "Invalid input, authorization, scope, role, privacy, quota or rate-limit error"
          },
          "5XX": {
            "description": "Service or upstream failure"
          }
        }
      }
    },
    "/chat/bridge/{platform}/guilds": {
      "get": {
        "operationId": "get_chat_bridge_by_platform_guilds",
        "tags": [
          "chat"
        ],
        "summary": "GET /chat/bridge/:platform/guilds",
        "description": "Legacy: Nookara-hosted servers are read-only now (writes answer server_read_only with moved_to). Use an Ember instance instead. Request keys are observed in the implementation; unknown types are deliberately unconstrained. Server-side validation, membership, roles, privacy and rank checks still apply.",
        "x-velora-scopes": {
          "CHAT": 2048
        },
        "x-captcha-required": false,
        "x-velora-legacy": true,
        "deprecated": true,
        "security": [
          {
            "UserToken": []
          }
        ],
        "parameters": [
          {
            "name": "platform",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "2XX": {
            "description": "Endpoint-specific JSON, text, binary, redirect or empty success; see the guide. No exhaustive response schema is asserted."
          },
          "4XX": {
            "description": "Invalid input, authorization, scope, role, privacy, quota or rate-limit error"
          },
          "5XX": {
            "description": "Service or upstream failure"
          }
        }
      }
    },
    "/chat/bridge/{platform}/guilds/{gid}": {
      "get": {
        "operationId": "get_chat_bridge_by_platform_guilds_by_gid",
        "tags": [
          "chat"
        ],
        "summary": "GET /chat/bridge/:platform/guilds/:gid",
        "description": "Legacy: Nookara-hosted servers are read-only now (writes answer server_read_only with moved_to). Use an Ember instance instead. Request keys are observed in the implementation; unknown types are deliberately unconstrained. Server-side validation, membership, roles, privacy and rank checks still apply.",
        "x-velora-scopes": {
          "CHAT": 2048
        },
        "x-captcha-required": false,
        "x-velora-legacy": true,
        "deprecated": true,
        "security": [
          {
            "UserToken": []
          }
        ],
        "parameters": [
          {
            "name": "platform",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "gid",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "2XX": {
            "description": "Endpoint-specific JSON, text, binary, redirect or empty success; see the guide. No exhaustive response schema is asserted."
          },
          "4XX": {
            "description": "Invalid input, authorization, scope, role, privacy, quota or rate-limit error"
          },
          "5XX": {
            "description": "Service or upstream failure"
          }
        }
      }
    },
    "/chat/bridge/{platform}/guilds/{gid}/import": {
      "post": {
        "operationId": "post_chat_bridge_by_platform_guilds_by_gid_import",
        "tags": [
          "chat"
        ],
        "summary": "POST /chat/bridge/:platform/guilds/:gid/import",
        "description": "Legacy: Nookara-hosted servers are read-only now (writes answer server_read_only with moved_to). Use an Ember instance instead. Request keys are observed in the implementation; unknown types are deliberately unconstrained. Server-side validation, membership, roles, privacy and rank checks still apply.",
        "x-velora-scopes": {
          "CHAT": 2048
        },
        "x-captcha-required": false,
        "x-velora-legacy": true,
        "deprecated": true,
        "security": [
          {
            "UserToken": []
          }
        ],
        "parameters": [
          {
            "name": "platform",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "gid",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "2XX": {
            "description": "Endpoint-specific JSON, text, binary, redirect or empty success; see the guide. No exhaustive response schema is asserted."
          },
          "4XX": {
            "description": "Invalid input, authorization, scope, role, privacy, quota or rate-limit error"
          },
          "5XX": {
            "description": "Service or upstream failure"
          }
        },
        "requestBody": {
          "required": false,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "properties": {
                  "channels": {
                    "description": "Observed request key. See guide for nested formats and constraints."
                  },
                  "name": {
                    "description": "Observed request key. See guide for nested formats and constraints."
                  },
                  "roles": {
                    "description": "Observed request key. See guide for nested formats and constraints."
                  }
                },
                "additionalProperties": true
              }
            }
          }
        }
      }
    },
    "/chat/bridge/servers/{sid}": {
      "get": {
        "operationId": "get_chat_bridge_servers_by_sid",
        "tags": [
          "chat"
        ],
        "summary": "GET /chat/bridge/servers/:sid",
        "description": "Legacy: Nookara-hosted servers are read-only now (writes answer server_read_only with moved_to). Use an Ember instance instead. Request keys are observed in the implementation; unknown types are deliberately unconstrained. Server-side validation, membership, roles, privacy and rank checks still apply.",
        "x-velora-scopes": {
          "CHAT": 2048
        },
        "x-captcha-required": false,
        "x-velora-legacy": true,
        "deprecated": true,
        "security": [
          {
            "UserToken": []
          }
        ],
        "parameters": [
          {
            "name": "sid",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "2XX": {
            "description": "Endpoint-specific JSON, text, binary, redirect or empty success; see the guide. No exhaustive response schema is asserted."
          },
          "4XX": {
            "description": "Invalid input, authorization, scope, role, privacy, quota or rate-limit error"
          },
          "5XX": {
            "description": "Service or upstream failure"
          }
        }
      },
      "put": {
        "operationId": "put_chat_bridge_servers_by_sid",
        "tags": [
          "chat"
        ],
        "summary": "PUT /chat/bridge/servers/:sid",
        "description": "Legacy: Nookara-hosted servers are read-only now (writes answer server_read_only with moved_to). Use an Ember instance instead. Request keys are observed in the implementation; unknown types are deliberately unconstrained. Server-side validation, membership, roles, privacy and rank checks still apply.",
        "x-velora-scopes": {
          "CHAT": 2048
        },
        "x-captcha-required": false,
        "x-velora-legacy": true,
        "deprecated": true,
        "security": [
          {
            "UserToken": []
          }
        ],
        "parameters": [
          {
            "name": "sid",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "2XX": {
            "description": "Endpoint-specific JSON, text, binary, redirect or empty success; see the guide. No exhaustive response schema is asserted."
          },
          "4XX": {
            "description": "Invalid input, authorization, scope, role, privacy, quota or rate-limit error"
          },
          "5XX": {
            "description": "Service or upstream failure"
          }
        },
        "requestBody": {
          "required": false,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "properties": {
                  "automap": {
                    "description": "Observed request key. See guide for nested formats and constraints."
                  },
                  "guild_id": {
                    "description": "Observed request key. See guide for nested formats and constraints."
                  },
                  "platform": {
                    "description": "Observed request key. See guide for nested formats and constraints."
                  }
                },
                "additionalProperties": true
              }
            }
          }
        }
      },
      "patch": {
        "operationId": "patch_chat_bridge_servers_by_sid",
        "tags": [
          "chat"
        ],
        "summary": "PATCH /chat/bridge/servers/:sid",
        "description": "Legacy: Nookara-hosted servers are read-only now (writes answer server_read_only with moved_to). Use an Ember instance instead. Request keys are observed in the implementation; unknown types are deliberately unconstrained. Server-side validation, membership, roles, privacy and rank checks still apply.",
        "x-velora-scopes": {
          "CHAT": 2048
        },
        "x-captcha-required": false,
        "x-velora-legacy": true,
        "deprecated": true,
        "security": [
          {
            "UserToken": []
          }
        ],
        "parameters": [
          {
            "name": "sid",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "2XX": {
            "description": "Endpoint-specific JSON, text, binary, redirect or empty success; see the guide. No exhaustive response schema is asserted."
          },
          "4XX": {
            "description": "Invalid input, authorization, scope, role, privacy, quota or rate-limit error"
          },
          "5XX": {
            "description": "Service or upstream failure"
          }
        },
        "requestBody": {
          "required": false,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "properties": {
                  "enabled": {
                    "description": "Observed request key. See guide for nested formats and constraints."
                  },
                  "platform": {
                    "description": "Observed request key. See guide for nested formats and constraints."
                  }
                },
                "additionalProperties": true
              }
            }
          }
        }
      },
      "delete": {
        "operationId": "delete_chat_bridge_servers_by_sid",
        "tags": [
          "chat"
        ],
        "summary": "DELETE /chat/bridge/servers/:sid",
        "description": "Legacy: Nookara-hosted servers are read-only now (writes answer server_read_only with moved_to). Use an Ember instance instead. Request keys are observed in the implementation; unknown types are deliberately unconstrained. Server-side validation, membership, roles, privacy and rank checks still apply.",
        "x-velora-scopes": {
          "CHAT": 2048
        },
        "x-captcha-required": false,
        "x-velora-legacy": true,
        "deprecated": true,
        "security": [
          {
            "UserToken": []
          }
        ],
        "parameters": [
          {
            "name": "sid",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "2XX": {
            "description": "Endpoint-specific JSON, text, binary, redirect or empty success; see the guide. No exhaustive response schema is asserted."
          },
          "4XX": {
            "description": "Invalid input, authorization, scope, role, privacy, quota or rate-limit error"
          },
          "5XX": {
            "description": "Service or upstream failure"
          }
        },
        "requestBody": {
          "required": false,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "properties": {
                  "platform": {
                    "description": "Observed request key. See guide for nested formats and constraints."
                  }
                },
                "additionalProperties": true
              }
            }
          }
        }
      }
    },
    "/chat/bridge/servers/{sid}/channels/{cid}": {
      "put": {
        "operationId": "put_chat_bridge_servers_by_sid_channels_by_cid",
        "tags": [
          "chat"
        ],
        "summary": "PUT /chat/bridge/servers/:sid/channels/:cid",
        "description": "Legacy: Nookara-hosted servers are read-only now (writes answer server_read_only with moved_to). Use an Ember instance instead. Request keys are observed in the implementation; unknown types are deliberately unconstrained. Server-side validation, membership, roles, privacy and rank checks still apply.",
        "x-velora-scopes": {
          "CHAT": 2048
        },
        "x-captcha-required": false,
        "x-velora-legacy": true,
        "deprecated": true,
        "security": [
          {
            "UserToken": []
          }
        ],
        "parameters": [
          {
            "name": "sid",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "cid",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "2XX": {
            "description": "Endpoint-specific JSON, text, binary, redirect or empty success; see the guide. No exhaustive response schema is asserted."
          },
          "4XX": {
            "description": "Invalid input, authorization, scope, role, privacy, quota or rate-limit error"
          },
          "5XX": {
            "description": "Service or upstream failure"
          }
        },
        "requestBody": {
          "required": false,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "properties": {
                  "ext_channel_id": {
                    "description": "Observed request key. See guide for nested formats and constraints."
                  },
                  "platform": {
                    "description": "Observed request key. See guide for nested formats and constraints."
                  }
                },
                "additionalProperties": true
              }
            }
          }
        }
      }
    },
    "/chat/media/external": {
      "post": {
        "operationId": "post_chat_media_external",
        "tags": [
          "chat"
        ],
        "summary": "POST /chat/media/external",
        "description": "Request keys are observed in the implementation; unknown types are deliberately unconstrained. Server-side validation, membership, roles, privacy and rank checks still apply.",
        "x-velora-scopes": {
          "CHAT": 2048
        },
        "x-captcha-required": false,
        "x-velora-legacy": false,
        "deprecated": false,
        "security": [
          {
            "UserToken": []
          }
        ],
        "parameters": [],
        "responses": {
          "2XX": {
            "description": "Endpoint-specific JSON, text, binary, redirect or empty success; see the guide. No exhaustive response schema is asserted."
          },
          "4XX": {
            "description": "Invalid input, authorization, scope, role, privacy, quota or rate-limit error"
          },
          "5XX": {
            "description": "Service or upstream failure"
          }
        },
        "requestBody": {
          "required": false,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "properties": {
                  "time": {
                    "description": "Observed request key. See guide for nested formats and constraints."
                  }
                },
                "additionalProperties": true
              }
            },
            "multipart/form-data": {
              "schema": {
                "type": "object",
                "properties": {
                  "time": {
                    "description": "Observed request key. See guide for nested formats and constraints."
                  },
                  "file": {
                    "type": "string",
                    "format": "binary"
                  }
                },
                "additionalProperties": true
              }
            }
          }
        }
      }
    },
    "/chat/servers/{sid}/search": {
      "get": {
        "operationId": "get_chat_servers_by_sid_search",
        "tags": [
          "chat"
        ],
        "summary": "GET /chat/servers/:sid/search",
        "description": "Legacy: Nookara-hosted servers are read-only now (writes answer server_read_only with moved_to). Use an Ember instance instead. Request keys are observed in the implementation; unknown types are deliberately unconstrained. Server-side validation, membership, roles, privacy and rank checks still apply.",
        "x-velora-scopes": {
          "CHAT": 2048
        },
        "x-captcha-required": false,
        "x-velora-legacy": true,
        "deprecated": true,
        "security": [
          {
            "UserToken": []
          }
        ],
        "parameters": [
          {
            "name": "sid",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "offset",
            "in": "query",
            "required": false,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "q",
            "in": "query",
            "required": false,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "2XX": {
            "description": "Endpoint-specific JSON, text, binary, redirect or empty success; see the guide. No exhaustive response schema is asserted."
          },
          "4XX": {
            "description": "Invalid input, authorization, scope, role, privacy, quota or rate-limit error"
          },
          "5XX": {
            "description": "Service or upstream failure"
          }
        }
      }
    },
    "/chat/channels/{cid}/starboard": {
      "get": {
        "operationId": "get_chat_channels_by_cid_starboard",
        "tags": [
          "chat"
        ],
        "summary": "GET /chat/channels/:cid/starboard",
        "description": "Legacy: Nookara-hosted servers are read-only now (writes answer server_read_only with moved_to). Use an Ember instance instead. Request keys are observed in the implementation; unknown types are deliberately unconstrained. Server-side validation, membership, roles, privacy and rank checks still apply.",
        "x-velora-scopes": {
          "CHAT": 2048
        },
        "x-captcha-required": false,
        "x-velora-legacy": true,
        "deprecated": true,
        "security": [
          {
            "UserToken": []
          }
        ],
        "parameters": [
          {
            "name": "cid",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "before",
            "in": "query",
            "required": false,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "2XX": {
            "description": "Endpoint-specific JSON, text, binary, redirect or empty success; see the guide. No exhaustive response schema is asserted."
          },
          "4XX": {
            "description": "Invalid input, authorization, scope, role, privacy, quota or rate-limit error"
          },
          "5XX": {
            "description": "Service or upstream failure"
          }
        }
      }
    },
    "/chat/messages/{id}/reactions/{emoji}": {
      "put": {
        "operationId": "put_chat_messages_by_id_reactions_by_emoji",
        "tags": [
          "chat"
        ],
        "summary": "PUT /chat/messages/:id/reactions/:emoji",
        "description": "Legacy: Nookara-hosted servers are read-only now (writes answer server_read_only with moved_to). Use an Ember instance instead. Request keys are observed in the implementation; unknown types are deliberately unconstrained. Server-side validation, membership, roles, privacy and rank checks still apply.",
        "x-velora-scopes": {
          "CHAT": 2048
        },
        "x-captcha-required": false,
        "x-velora-legacy": true,
        "deprecated": true,
        "security": [
          {
            "UserToken": []
          }
        ],
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "emoji",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "2XX": {
            "description": "Endpoint-specific JSON, text, binary, redirect or empty success; see the guide. No exhaustive response schema is asserted."
          },
          "4XX": {
            "description": "Invalid input, authorization, scope, role, privacy, quota or rate-limit error"
          },
          "5XX": {
            "description": "Service or upstream failure"
          }
        }
      },
      "delete": {
        "operationId": "delete_chat_messages_by_id_reactions_by_emoji",
        "tags": [
          "chat"
        ],
        "summary": "DELETE /chat/messages/:id/reactions/:emoji",
        "description": "Legacy: Nookara-hosted servers are read-only now (writes answer server_read_only with moved_to). Use an Ember instance instead. Request keys are observed in the implementation; unknown types are deliberately unconstrained. Server-side validation, membership, roles, privacy and rank checks still apply.",
        "x-velora-scopes": {
          "CHAT": 2048
        },
        "x-captcha-required": false,
        "x-velora-legacy": true,
        "deprecated": true,
        "security": [
          {
            "UserToken": []
          }
        ],
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "emoji",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "2XX": {
            "description": "Endpoint-specific JSON, text, binary, redirect or empty success; see the guide. No exhaustive response schema is asserted."
          },
          "4XX": {
            "description": "Invalid input, authorization, scope, role, privacy, quota or rate-limit error"
          },
          "5XX": {
            "description": "Service or upstream failure"
          }
        }
      }
    },
    "/chat/dm/{id}/reactions/{emoji}": {
      "put": {
        "operationId": "put_chat_dm_by_id_reactions_by_emoji",
        "tags": [
          "chat"
        ],
        "summary": "PUT /chat/dm/:id/reactions/:emoji",
        "description": "Request keys are observed in the implementation; unknown types are deliberately unconstrained. Server-side validation, membership, roles, privacy and rank checks still apply.",
        "x-velora-scopes": {
          "CHAT": 2048
        },
        "x-captcha-required": false,
        "x-velora-legacy": false,
        "deprecated": false,
        "security": [
          {
            "UserToken": []
          }
        ],
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "emoji",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "2XX": {
            "description": "Endpoint-specific JSON, text, binary, redirect or empty success; see the guide. No exhaustive response schema is asserted."
          },
          "4XX": {
            "description": "Invalid input, authorization, scope, role, privacy, quota or rate-limit error"
          },
          "5XX": {
            "description": "Service or upstream failure"
          }
        }
      },
      "delete": {
        "operationId": "delete_chat_dm_by_id_reactions_by_emoji",
        "tags": [
          "chat"
        ],
        "summary": "DELETE /chat/dm/:id/reactions/:emoji",
        "description": "Request keys are observed in the implementation; unknown types are deliberately unconstrained. Server-side validation, membership, roles, privacy and rank checks still apply.",
        "x-velora-scopes": {
          "CHAT": 2048
        },
        "x-captcha-required": false,
        "x-velora-legacy": false,
        "deprecated": false,
        "security": [
          {
            "UserToken": []
          }
        ],
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "emoji",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "2XX": {
            "description": "Endpoint-specific JSON, text, binary, redirect or empty success; see the guide. No exhaustive response schema is asserted."
          },
          "4XX": {
            "description": "Invalid input, authorization, scope, role, privacy, quota or rate-limit error"
          },
          "5XX": {
            "description": "Service or upstream failure"
          }
        }
      }
    },
    "/chat/channels/{cid}/perms": {
      "put": {
        "operationId": "put_chat_channels_by_cid_perms",
        "tags": [
          "chat"
        ],
        "summary": "PUT /chat/channels/:cid/perms",
        "description": "Legacy: Nookara-hosted servers are read-only now (writes answer server_read_only with moved_to). Use an Ember instance instead. Request keys are observed in the implementation; unknown types are deliberately unconstrained. Server-side validation, membership, roles, privacy and rank checks still apply.",
        "x-velora-scopes": {
          "CHAT": 2048
        },
        "x-captcha-required": false,
        "x-velora-legacy": true,
        "deprecated": true,
        "security": [
          {
            "UserToken": []
          }
        ],
        "parameters": [
          {
            "name": "cid",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "2XX": {
            "description": "Endpoint-specific JSON, text, binary, redirect or empty success; see the guide. No exhaustive response schema is asserted."
          },
          "4XX": {
            "description": "Invalid input, authorization, scope, role, privacy, quota or rate-limit error"
          },
          "5XX": {
            "description": "Service or upstream failure"
          }
        },
        "requestBody": {
          "required": false,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "properties": {
                  "overwrites": {
                    "description": "Observed request key. See guide for nested formats and constraints."
                  }
                },
                "additionalProperties": true
              }
            }
          }
        }
      }
    },
    "/chat/modmail": {
      "get": {
        "operationId": "get_chat_modmail",
        "tags": [
          "chat"
        ],
        "summary": "GET /chat/modmail",
        "description": "Request keys are observed in the implementation; unknown types are deliberately unconstrained. Server-side validation, membership, roles, privacy and rank checks still apply.",
        "x-velora-scopes": {
          "CHAT": 2048
        },
        "x-captcha-required": false,
        "x-velora-legacy": false,
        "deprecated": false,
        "security": [
          {
            "UserToken": []
          }
        ],
        "parameters": [],
        "responses": {
          "2XX": {
            "description": "Endpoint-specific JSON, text, binary, redirect or empty success; see the guide. No exhaustive response schema is asserted."
          },
          "4XX": {
            "description": "Invalid input, authorization, scope, role, privacy, quota or rate-limit error"
          },
          "5XX": {
            "description": "Service or upstream failure"
          }
        }
      }
    },
    "/chat/modmail/read": {
      "post": {
        "operationId": "post_chat_modmail_read",
        "tags": [
          "chat"
        ],
        "summary": "POST /chat/modmail/read",
        "description": "Request keys are observed in the implementation; unknown types are deliberately unconstrained. Server-side validation, membership, roles, privacy and rank checks still apply.",
        "x-velora-scopes": {
          "CHAT": 2048
        },
        "x-captcha-required": false,
        "x-velora-legacy": false,
        "deprecated": false,
        "security": [
          {
            "UserToken": []
          }
        ],
        "parameters": [],
        "responses": {
          "2XX": {
            "description": "Endpoint-specific JSON, text, binary, redirect or empty success; see the guide. No exhaustive response schema is asserted."
          },
          "4XX": {
            "description": "Invalid input, authorization, scope, role, privacy, quota or rate-limit error"
          },
          "5XX": {
            "description": "Service or upstream failure"
          }
        }
      }
    },
    "/chat/modmail/staff": {
      "get": {
        "operationId": "get_chat_modmail_staff",
        "tags": [
          "chat"
        ],
        "summary": "GET /chat/modmail/staff",
        "description": "Request keys are observed in the implementation; unknown types are deliberately unconstrained. Server-side validation, membership, roles, privacy and rank checks still apply.",
        "x-velora-scopes": {
          "CHAT": 2048
        },
        "x-captcha-required": false,
        "x-velora-legacy": false,
        "deprecated": false,
        "security": [
          {
            "UserToken": []
          }
        ],
        "parameters": [],
        "responses": {
          "2XX": {
            "description": "Endpoint-specific JSON, text, binary, redirect or empty success; see the guide. No exhaustive response schema is asserted."
          },
          "4XX": {
            "description": "Invalid input, authorization, scope, role, privacy, quota or rate-limit error"
          },
          "5XX": {
            "description": "Service or upstream failure"
          }
        }
      }
    },
    "/chat/modmail/with/{username}": {
      "get": {
        "operationId": "get_chat_modmail_with_by_username",
        "tags": [
          "chat"
        ],
        "summary": "GET /chat/modmail/with/:username",
        "description": "Request keys are observed in the implementation; unknown types are deliberately unconstrained. Server-side validation, membership, roles, privacy and rank checks still apply.",
        "x-velora-scopes": {
          "CHAT": 2048
        },
        "x-captcha-required": false,
        "x-velora-legacy": false,
        "deprecated": false,
        "security": [
          {
            "UserToken": []
          }
        ],
        "parameters": [
          {
            "name": "username",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "2XX": {
            "description": "Endpoint-specific JSON, text, binary, redirect or empty success; see the guide. No exhaustive response schema is asserted."
          },
          "4XX": {
            "description": "Invalid input, authorization, scope, role, privacy, quota or rate-limit error"
          },
          "5XX": {
            "description": "Service or upstream failure"
          }
        }
      },
      "post": {
        "operationId": "post_chat_modmail_with_by_username",
        "tags": [
          "chat"
        ],
        "summary": "POST /chat/modmail/with/:username",
        "description": "Request keys are observed in the implementation; unknown types are deliberately unconstrained. Server-side validation, membership, roles, privacy and rank checks still apply.",
        "x-velora-scopes": {
          "CHAT": 2048
        },
        "x-captcha-required": false,
        "x-velora-legacy": false,
        "deprecated": false,
        "security": [
          {
            "UserToken": []
          }
        ],
        "parameters": [
          {
            "name": "username",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "2XX": {
            "description": "Endpoint-specific JSON, text, binary, redirect or empty success; see the guide. No exhaustive response schema is asserted."
          },
          "4XX": {
            "description": "Invalid input, authorization, scope, role, privacy, quota or rate-limit error"
          },
          "5XX": {
            "description": "Service or upstream failure"
          }
        },
        "requestBody": {
          "required": false,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "properties": {
                  "body": {
                    "description": "Observed request key. See guide for nested formats and constraints."
                  }
                },
                "additionalProperties": true
              }
            }
          }
        }
      }
    },
    "/chat/sounds": {
      "get": {
        "operationId": "get_chat_sounds",
        "tags": [
          "chat"
        ],
        "summary": "GET /chat/sounds",
        "description": "Legacy: Nookara-hosted servers are read-only now (writes answer server_read_only with moved_to). Use an Ember instance instead. Request keys are observed in the implementation; unknown types are deliberately unconstrained. Server-side validation, membership, roles, privacy and rank checks still apply.",
        "x-velora-scopes": {
          "CHAT": 2048
        },
        "x-captcha-required": false,
        "x-velora-legacy": true,
        "deprecated": true,
        "security": [
          {
            "UserToken": []
          }
        ],
        "parameters": [],
        "responses": {
          "2XX": {
            "description": "Endpoint-specific JSON, text, binary, redirect or empty success; see the guide. No exhaustive response schema is asserted."
          },
          "4XX": {
            "description": "Invalid input, authorization, scope, role, privacy, quota or rate-limit error"
          },
          "5XX": {
            "description": "Service or upstream failure"
          }
        }
      }
    },
    "/chat/servers/{sid}/sounds": {
      "get": {
        "operationId": "get_chat_servers_by_sid_sounds",
        "tags": [
          "chat"
        ],
        "summary": "GET /chat/servers/:sid/sounds",
        "description": "Legacy: Nookara-hosted servers are read-only now (writes answer server_read_only with moved_to). Use an Ember instance instead. Request keys are observed in the implementation; unknown types are deliberately unconstrained. Server-side validation, membership, roles, privacy and rank checks still apply.",
        "x-velora-scopes": {
          "CHAT": 2048
        },
        "x-captcha-required": false,
        "x-velora-legacy": true,
        "deprecated": true,
        "security": [
          {
            "UserToken": []
          }
        ],
        "parameters": [
          {
            "name": "sid",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "2XX": {
            "description": "Endpoint-specific JSON, text, binary, redirect or empty success; see the guide. No exhaustive response schema is asserted."
          },
          "4XX": {
            "description": "Invalid input, authorization, scope, role, privacy, quota or rate-limit error"
          },
          "5XX": {
            "description": "Service or upstream failure"
          }
        }
      },
      "post": {
        "operationId": "post_chat_servers_by_sid_sounds",
        "tags": [
          "chat"
        ],
        "summary": "POST /chat/servers/:sid/sounds",
        "description": "Legacy: Nookara-hosted servers are read-only now (writes answer server_read_only with moved_to). Use an Ember instance instead. Request keys are observed in the implementation; unknown types are deliberately unconstrained. Server-side validation, membership, roles, privacy and rank checks still apply.",
        "x-velora-scopes": {
          "CHAT": 2048
        },
        "x-captcha-required": false,
        "x-velora-legacy": true,
        "deprecated": true,
        "security": [
          {
            "UserToken": []
          }
        ],
        "parameters": [
          {
            "name": "sid",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "2XX": {
            "description": "Endpoint-specific JSON, text, binary, redirect or empty success; see the guide. No exhaustive response schema is asserted."
          },
          "4XX": {
            "description": "Invalid input, authorization, scope, role, privacy, quota or rate-limit error"
          },
          "5XX": {
            "description": "Service or upstream failure"
          }
        },
        "requestBody": {
          "required": false,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "properties": {
                  "name": {
                    "description": "Observed request key. See guide for nested formats and constraints."
                  },
                  "emoji": {
                    "description": "Observed request key. See guide for nested formats and constraints."
                  },
                  "volume": {
                    "description": "Observed request key. See guide for nested formats and constraints."
                  }
                },
                "additionalProperties": true
              }
            },
            "multipart/form-data": {
              "schema": {
                "type": "object",
                "properties": {
                  "name": {
                    "description": "Observed request key. See guide for nested formats and constraints."
                  },
                  "emoji": {
                    "description": "Observed request key. See guide for nested formats and constraints."
                  },
                  "volume": {
                    "description": "Observed request key. See guide for nested formats and constraints."
                  },
                  "file": {
                    "type": "string",
                    "format": "binary"
                  }
                },
                "additionalProperties": true
              }
            }
          }
        }
      }
    },
    "/chat/servers/{sid}/sounds/{id}": {
      "patch": {
        "operationId": "patch_chat_servers_by_sid_sounds_by_id",
        "tags": [
          "chat"
        ],
        "summary": "PATCH /chat/servers/:sid/sounds/:id",
        "description": "Legacy: Nookara-hosted servers are read-only now (writes answer server_read_only with moved_to). Use an Ember instance instead. Request keys are observed in the implementation; unknown types are deliberately unconstrained. Server-side validation, membership, roles, privacy and rank checks still apply.",
        "x-velora-scopes": {
          "CHAT": 2048
        },
        "x-captcha-required": false,
        "x-velora-legacy": true,
        "deprecated": true,
        "security": [
          {
            "UserToken": []
          }
        ],
        "parameters": [
          {
            "name": "sid",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "id",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "2XX": {
            "description": "Endpoint-specific JSON, text, binary, redirect or empty success; see the guide. No exhaustive response schema is asserted."
          },
          "4XX": {
            "description": "Invalid input, authorization, scope, role, privacy, quota or rate-limit error"
          },
          "5XX": {
            "description": "Service or upstream failure"
          }
        },
        "requestBody": {
          "required": false,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "properties": {
                  "name": {
                    "description": "Observed request key. See guide for nested formats and constraints."
                  },
                  "emoji": {
                    "description": "Observed request key. See guide for nested formats and constraints."
                  },
                  "volume": {
                    "description": "Observed request key. See guide for nested formats and constraints."
                  }
                },
                "additionalProperties": true
              }
            }
          }
        }
      },
      "delete": {
        "operationId": "delete_chat_servers_by_sid_sounds_by_id",
        "tags": [
          "chat"
        ],
        "summary": "DELETE /chat/servers/:sid/sounds/:id",
        "description": "Legacy: Nookara-hosted servers are read-only now (writes answer server_read_only with moved_to). Use an Ember instance instead. Request keys are observed in the implementation; unknown types are deliberately unconstrained. Server-side validation, membership, roles, privacy and rank checks still apply.",
        "x-velora-scopes": {
          "CHAT": 2048
        },
        "x-captcha-required": false,
        "x-velora-legacy": true,
        "deprecated": true,
        "security": [
          {
            "UserToken": []
          }
        ],
        "parameters": [
          {
            "name": "sid",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "id",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "2XX": {
            "description": "Endpoint-specific JSON, text, binary, redirect or empty success; see the guide. No exhaustive response schema is asserted."
          },
          "4XX": {
            "description": "Invalid input, authorization, scope, role, privacy, quota or rate-limit error"
          },
          "5XX": {
            "description": "Service or upstream failure"
          }
        }
      }
    },
    "/chat/messages/{id}/pin": {
      "put": {
        "operationId": "put_chat_messages_by_id_pin",
        "tags": [
          "chat"
        ],
        "summary": "PUT /chat/messages/:id/pin",
        "description": "Legacy: Nookara-hosted servers are read-only now (writes answer server_read_only with moved_to). Use an Ember instance instead. Request keys are observed in the implementation; unknown types are deliberately unconstrained. Server-side validation, membership, roles, privacy and rank checks still apply.",
        "x-velora-scopes": {
          "CHAT": 2048
        },
        "x-captcha-required": false,
        "x-velora-legacy": true,
        "deprecated": true,
        "security": [
          {
            "UserToken": []
          }
        ],
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "2XX": {
            "description": "Endpoint-specific JSON, text, binary, redirect or empty success; see the guide. No exhaustive response schema is asserted."
          },
          "4XX": {
            "description": "Invalid input, authorization, scope, role, privacy, quota or rate-limit error"
          },
          "5XX": {
            "description": "Service or upstream failure"
          }
        }
      },
      "delete": {
        "operationId": "delete_chat_messages_by_id_pin",
        "tags": [
          "chat"
        ],
        "summary": "DELETE /chat/messages/:id/pin",
        "description": "Legacy: Nookara-hosted servers are read-only now (writes answer server_read_only with moved_to). Use an Ember instance instead. Request keys are observed in the implementation; unknown types are deliberately unconstrained. Server-side validation, membership, roles, privacy and rank checks still apply.",
        "x-velora-scopes": {
          "CHAT": 2048
        },
        "x-captcha-required": false,
        "x-velora-legacy": true,
        "deprecated": true,
        "security": [
          {
            "UserToken": []
          }
        ],
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "2XX": {
            "description": "Endpoint-specific JSON, text, binary, redirect or empty success; see the guide. No exhaustive response schema is asserted."
          },
          "4XX": {
            "description": "Invalid input, authorization, scope, role, privacy, quota or rate-limit error"
          },
          "5XX": {
            "description": "Service or upstream failure"
          }
        }
      }
    },
    "/chat/channels/{cid}/pins": {
      "get": {
        "operationId": "get_chat_channels_by_cid_pins",
        "tags": [
          "chat"
        ],
        "summary": "GET /chat/channels/:cid/pins",
        "description": "Legacy: Nookara-hosted servers are read-only now (writes answer server_read_only with moved_to). Use an Ember instance instead. Request keys are observed in the implementation; unknown types are deliberately unconstrained. Server-side validation, membership, roles, privacy and rank checks still apply.",
        "x-velora-scopes": {
          "CHAT": 2048
        },
        "x-captcha-required": false,
        "x-velora-legacy": true,
        "deprecated": true,
        "security": [
          {
            "UserToken": []
          }
        ],
        "parameters": [
          {
            "name": "cid",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "2XX": {
            "description": "Endpoint-specific JSON, text, binary, redirect or empty success; see the guide. No exhaustive response schema is asserted."
          },
          "4XX": {
            "description": "Invalid input, authorization, scope, role, privacy, quota or rate-limit error"
          },
          "5XX": {
            "description": "Service or upstream failure"
          }
        }
      }
    },
    "/chat/unfurl": {
      "get": {
        "operationId": "get_chat_unfurl",
        "tags": [
          "chat"
        ],
        "summary": "GET /chat/unfurl",
        "description": "Legacy: Nookara-hosted servers are read-only now (writes answer server_read_only with moved_to). Use an Ember instance instead. Request keys are observed in the implementation; unknown types are deliberately unconstrained. Server-side validation, membership, roles, privacy and rank checks still apply.",
        "x-velora-scopes": {
          "CHAT": 2048
        },
        "x-captcha-required": false,
        "x-velora-legacy": true,
        "deprecated": true,
        "security": [
          {
            "UserToken": []
          }
        ],
        "parameters": [
          {
            "name": "url",
            "in": "query",
            "required": false,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "2XX": {
            "description": "Endpoint-specific JSON, text, binary, redirect or empty success; see the guide. No exhaustive response schema is asserted."
          },
          "4XX": {
            "description": "Invalid input, authorization, scope, role, privacy, quota or rate-limit error"
          },
          "5XX": {
            "description": "Service or upstream failure"
          }
        }
      }
    },
    "/chat/hf-game/{id}": {
      "get": {
        "operationId": "get_chat_hf_game_by_id",
        "tags": [
          "chat"
        ],
        "summary": "GET /chat/hf-game/:id",
        "description": "Request keys are observed in the implementation; unknown types are deliberately unconstrained. Server-side validation, membership, roles, privacy and rank checks still apply.",
        "x-velora-scopes": {
          "CHAT": 2048
        },
        "x-captcha-required": false,
        "x-velora-legacy": false,
        "deprecated": false,
        "security": [
          {
            "UserToken": []
          }
        ],
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "2XX": {
            "description": "Endpoint-specific JSON, text, binary, redirect or empty success; see the guide. No exhaustive response schema is asserted."
          },
          "4XX": {
            "description": "Invalid input, authorization, scope, role, privacy, quota or rate-limit error"
          },
          "5XX": {
            "description": "Service or upstream failure"
          }
        }
      }
    },
    "/chat/calls": {
      "post": {
        "operationId": "post_chat_calls",
        "tags": [
          "chat"
        ],
        "summary": "POST /chat/calls",
        "description": "Request keys are observed in the implementation; unknown types are deliberately unconstrained. Server-side validation, membership, roles, privacy and rank checks still apply.",
        "x-velora-scopes": {
          "CHAT": 2048,
          "VOICE": 16384
        },
        "x-captcha-required": false,
        "x-velora-legacy": false,
        "deprecated": false,
        "security": [
          {
            "UserToken": []
          }
        ],
        "parameters": [],
        "responses": {
          "2XX": {
            "description": "Endpoint-specific JSON, text, binary, redirect or empty success; see the guide. No exhaustive response schema is asserted."
          },
          "4XX": {
            "description": "Invalid input, authorization, scope, role, privacy, quota or rate-limit error"
          },
          "5XX": {
            "description": "Service or upstream failure"
          }
        },
        "requestBody": {
          "required": false,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "properties": {
                  "to": {
                    "description": "Observed request key. See guide for nested formats and constraints."
                  }
                },
                "additionalProperties": true
              }
            }
          }
        }
      }
    },
    "/chat/channels/{cid}/shop": {
      "get": {
        "operationId": "get_chat_channels_by_cid_shop",
        "tags": [
          "chat"
        ],
        "summary": "GET /chat/channels/:cid/shop",
        "description": "Legacy: Nookara-hosted servers are read-only now (writes answer server_read_only with moved_to). Use an Ember instance instead. Request keys are observed in the implementation; unknown types are deliberately unconstrained. Server-side validation, membership, roles, privacy and rank checks still apply.",
        "x-velora-scopes": {
          "CHAT": 2048
        },
        "x-captcha-required": false,
        "x-velora-legacy": true,
        "deprecated": true,
        "security": [
          {
            "UserToken": []
          }
        ],
        "parameters": [
          {
            "name": "cid",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "2XX": {
            "description": "Endpoint-specific JSON, text, binary, redirect or empty success; see the guide. No exhaustive response schema is asserted."
          },
          "4XX": {
            "description": "Invalid input, authorization, scope, role, privacy, quota or rate-limit error"
          },
          "5XX": {
            "description": "Service or upstream failure"
          }
        }
      }
    },
    "/chat/channels/{cid}/shop/{rid}": {
      "post": {
        "operationId": "post_chat_channels_by_cid_shop_by_rid",
        "tags": [
          "chat"
        ],
        "summary": "POST /chat/channels/:cid/shop/:rid",
        "description": "Legacy: Nookara-hosted servers are read-only now (writes answer server_read_only with moved_to). Use an Ember instance instead. Request keys are observed in the implementation; unknown types are deliberately unconstrained. Server-side validation, membership, roles, privacy and rank checks still apply.",
        "x-velora-scopes": {
          "CHAT": 2048,
          "CURRENCY_PAY": 1024
        },
        "x-captcha-required": false,
        "x-velora-legacy": true,
        "deprecated": true,
        "security": [
          {
            "UserToken": []
          }
        ],
        "parameters": [
          {
            "name": "cid",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "rid",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "2XX": {
            "description": "Endpoint-specific JSON, text, binary, redirect or empty success; see the guide. No exhaustive response schema is asserted."
          },
          "4XX": {
            "description": "Invalid input, authorization, scope, role, privacy, quota or rate-limit error"
          },
          "5XX": {
            "description": "Service or upstream failure"
          }
        },
        "requestBody": {
          "required": false,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "properties": {
                  "price": {
                    "description": "Observed request key. See guide for nested formats and constraints."
                  }
                },
                "additionalProperties": true
              }
            }
          }
        }
      },
      "delete": {
        "operationId": "delete_chat_channels_by_cid_shop_by_rid",
        "tags": [
          "chat"
        ],
        "summary": "DELETE /chat/channels/:cid/shop/:rid",
        "description": "Legacy: Nookara-hosted servers are read-only now (writes answer server_read_only with moved_to). Use an Ember instance instead. Request keys are observed in the implementation; unknown types are deliberately unconstrained. Server-side validation, membership, roles, privacy and rank checks still apply.",
        "x-velora-scopes": {
          "CHAT": 2048
        },
        "x-captcha-required": false,
        "x-velora-legacy": true,
        "deprecated": true,
        "security": [
          {
            "UserToken": []
          }
        ],
        "parameters": [
          {
            "name": "cid",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "rid",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "2XX": {
            "description": "Endpoint-specific JSON, text, binary, redirect or empty success; see the guide. No exhaustive response schema is asserted."
          },
          "4XX": {
            "description": "Invalid input, authorization, scope, role, privacy, quota or rate-limit error"
          },
          "5XX": {
            "description": "Service or upstream failure"
          }
        }
      }
    },
    "/chat/channels/{cid}/webhooks": {
      "get": {
        "operationId": "get_chat_channels_by_cid_webhooks",
        "tags": [
          "chat"
        ],
        "summary": "GET /chat/channels/:cid/webhooks",
        "description": "Legacy: Nookara-hosted servers are read-only now (writes answer server_read_only with moved_to). Use an Ember instance instead. Request keys are observed in the implementation; unknown types are deliberately unconstrained. Server-side validation, membership, roles, privacy and rank checks still apply.",
        "x-velora-scopes": {
          "CHAT": 2048
        },
        "x-captcha-required": false,
        "x-velora-legacy": true,
        "deprecated": true,
        "security": [
          {
            "UserToken": []
          }
        ],
        "parameters": [
          {
            "name": "cid",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "2XX": {
            "description": "Endpoint-specific JSON, text, binary, redirect or empty success; see the guide. No exhaustive response schema is asserted."
          },
          "4XX": {
            "description": "Invalid input, authorization, scope, role, privacy, quota or rate-limit error"
          },
          "5XX": {
            "description": "Service or upstream failure"
          }
        }
      },
      "post": {
        "operationId": "post_chat_channels_by_cid_webhooks",
        "tags": [
          "chat"
        ],
        "summary": "POST /chat/channels/:cid/webhooks",
        "description": "Legacy: Nookara-hosted servers are read-only now (writes answer server_read_only with moved_to). Use an Ember instance instead. Request keys are observed in the implementation; unknown types are deliberately unconstrained. Server-side validation, membership, roles, privacy and rank checks still apply.",
        "x-velora-scopes": {
          "CHAT": 2048
        },
        "x-captcha-required": false,
        "x-velora-legacy": true,
        "deprecated": true,
        "security": [
          {
            "UserToken": []
          }
        ],
        "parameters": [
          {
            "name": "cid",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "2XX": {
            "description": "Endpoint-specific JSON, text, binary, redirect or empty success; see the guide. No exhaustive response schema is asserted."
          },
          "4XX": {
            "description": "Invalid input, authorization, scope, role, privacy, quota or rate-limit error"
          },
          "5XX": {
            "description": "Service or upstream failure"
          }
        },
        "requestBody": {
          "required": false,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "properties": {
                  "name": {
                    "description": "Observed request key. See guide for nested formats and constraints."
                  }
                },
                "additionalProperties": true
              }
            }
          }
        }
      }
    },
    "/chat/hooks/{wid}": {
      "patch": {
        "operationId": "patch_chat_hooks_by_wid",
        "tags": [
          "chat"
        ],
        "summary": "PATCH /chat/hooks/:wid",
        "description": "Legacy: Nookara-hosted servers are read-only now (writes answer server_read_only with moved_to). Use an Ember instance instead. Request keys are observed in the implementation; unknown types are deliberately unconstrained. Server-side validation, membership, roles, privacy and rank checks still apply.",
        "x-velora-scopes": {
          "CHAT": 2048
        },
        "x-captcha-required": false,
        "x-velora-legacy": true,
        "deprecated": true,
        "security": [
          {
            "UserToken": []
          }
        ],
        "parameters": [
          {
            "name": "wid",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "2XX": {
            "description": "Endpoint-specific JSON, text, binary, redirect or empty success; see the guide. No exhaustive response schema is asserted."
          },
          "4XX": {
            "description": "Invalid input, authorization, scope, role, privacy, quota or rate-limit error"
          },
          "5XX": {
            "description": "Service or upstream failure"
          }
        },
        "requestBody": {
          "required": false,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "properties": {
                  "avatar": {
                    "description": "Observed request key. See guide for nested formats and constraints."
                  },
                  "channel": {
                    "description": "Observed request key. See guide for nested formats and constraints."
                  },
                  "name": {
                    "description": "Observed request key. See guide for nested formats and constraints."
                  },
                  "new_token": {
                    "description": "Observed request key. See guide for nested formats and constraints."
                  }
                },
                "additionalProperties": true
              }
            }
          }
        }
      },
      "delete": {
        "operationId": "delete_chat_hooks_by_wid",
        "tags": [
          "chat"
        ],
        "summary": "DELETE /chat/hooks/:wid",
        "description": "Legacy: Nookara-hosted servers are read-only now (writes answer server_read_only with moved_to). Use an Ember instance instead. Request keys are observed in the implementation; unknown types are deliberately unconstrained. Server-side validation, membership, roles, privacy and rank checks still apply.",
        "x-velora-scopes": {
          "CHAT": 2048
        },
        "x-captcha-required": false,
        "x-velora-legacy": true,
        "deprecated": true,
        "security": [
          {
            "UserToken": []
          }
        ],
        "parameters": [
          {
            "name": "wid",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "2XX": {
            "description": "Endpoint-specific JSON, text, binary, redirect or empty success; see the guide. No exhaustive response schema is asserted."
          },
          "4XX": {
            "description": "Invalid input, authorization, scope, role, privacy, quota or rate-limit error"
          },
          "5XX": {
            "description": "Service or upstream failure"
          }
        }
      }
    },
    "/chat/hooks/{wid}/avatar": {
      "post": {
        "operationId": "post_chat_hooks_by_wid_avatar",
        "tags": [
          "chat"
        ],
        "summary": "POST /chat/hooks/:wid/avatar",
        "description": "Legacy: Nookara-hosted servers are read-only now (writes answer server_read_only with moved_to). Use an Ember instance instead. Request keys are observed in the implementation; unknown types are deliberately unconstrained. Server-side validation, membership, roles, privacy and rank checks still apply.",
        "x-velora-scopes": {
          "CHAT": 2048
        },
        "x-captcha-required": false,
        "x-velora-legacy": true,
        "deprecated": true,
        "security": [
          {
            "UserToken": []
          }
        ],
        "parameters": [
          {
            "name": "wid",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "2XX": {
            "description": "Endpoint-specific JSON, text, binary, redirect or empty success; see the guide. No exhaustive response schema is asserted."
          },
          "4XX": {
            "description": "Invalid input, authorization, scope, role, privacy, quota or rate-limit error"
          },
          "5XX": {
            "description": "Service or upstream failure"
          }
        },
        "requestBody": {
          "required": false,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "properties": {},
                "additionalProperties": true
              }
            },
            "multipart/form-data": {
              "schema": {
                "type": "object",
                "properties": {
                  "file": {
                    "type": "string",
                    "format": "binary"
                  }
                },
                "additionalProperties": true
              }
            }
          }
        }
      }
    },
    "/chat/api/discovery": {
      "get": {
        "operationId": "get_chat_api_discovery",
        "tags": [
          "bots"
        ],
        "summary": "GET /chat/api/discovery",
        "description": "Legacy: Nookara-hosted servers are read-only now (writes answer server_read_only with moved_to). Use an Ember instance instead. Request keys are observed in the implementation; unknown types are deliberately unconstrained. Server-side validation, membership, roles, privacy and rank checks still apply.",
        "x-velora-scopes": {},
        "x-captcha-required": false,
        "x-velora-legacy": true,
        "deprecated": true,
        "security": [],
        "parameters": [],
        "responses": {
          "2XX": {
            "description": "Endpoint-specific JSON, text, binary, redirect or empty success; see the guide. No exhaustive response schema is asserted."
          },
          "4XX": {
            "description": "Invalid input, authorization, scope, role, privacy, quota or rate-limit error"
          },
          "5XX": {
            "description": "Service or upstream failure"
          }
        }
      }
    },
    "/chat/api/v1/gateway": {
      "get": {
        "operationId": "get_chat_api_v1_gateway",
        "tags": [
          "bots"
        ],
        "summary": "GET /chat/api/v1/gateway",
        "description": "Legacy: Nookara-hosted servers are read-only now (writes answer server_read_only with moved_to). Use an Ember instance instead. Request keys are observed in the implementation; unknown types are deliberately unconstrained. Server-side validation, membership, roles, privacy and rank checks still apply.",
        "x-velora-scopes": {},
        "x-captcha-required": false,
        "x-velora-legacy": true,
        "deprecated": true,
        "security": [],
        "parameters": [],
        "responses": {
          "2XX": {
            "description": "Endpoint-specific JSON, text, binary, redirect or empty success; see the guide. No exhaustive response schema is asserted."
          },
          "4XX": {
            "description": "Invalid input, authorization, scope, role, privacy, quota or rate-limit error"
          },
          "5XX": {
            "description": "Service or upstream failure"
          }
        }
      }
    },
    "/chat/api/v1/gateway/bot": {
      "get": {
        "operationId": "get_chat_api_v1_gateway_bot",
        "tags": [
          "bots"
        ],
        "summary": "GET /chat/api/v1/gateway/bot",
        "description": "Legacy: Nookara-hosted servers are read-only now (writes answer server_read_only with moved_to). Use an Ember instance instead. Request keys are observed in the implementation; unknown types are deliberately unconstrained. Server-side validation, membership, roles, privacy and rank checks still apply.",
        "x-velora-scopes": {},
        "x-captcha-required": false,
        "x-velora-legacy": true,
        "deprecated": true,
        "security": [
          {
            "BotToken": []
          }
        ],
        "parameters": [],
        "responses": {
          "2XX": {
            "description": "Endpoint-specific JSON, text, binary, redirect or empty success; see the guide. No exhaustive response schema is asserted."
          },
          "4XX": {
            "description": "Invalid input, authorization, scope, role, privacy, quota or rate-limit error"
          },
          "5XX": {
            "description": "Service or upstream failure"
          }
        }
      }
    },
    "/chat/api/v1/users/@me": {
      "get": {
        "operationId": "get_chat_api_v1_users_me",
        "tags": [
          "bots"
        ],
        "summary": "GET /chat/api/v1/users/@me",
        "description": "Legacy: Nookara-hosted servers are read-only now (writes answer server_read_only with moved_to). Use an Ember instance instead. Request keys are observed in the implementation; unknown types are deliberately unconstrained. Server-side validation, membership, roles, privacy and rank checks still apply.",
        "x-velora-scopes": {},
        "x-captcha-required": false,
        "x-velora-legacy": true,
        "deprecated": true,
        "security": [
          {
            "BotToken": []
          }
        ],
        "parameters": [],
        "responses": {
          "2XX": {
            "description": "Endpoint-specific JSON, text, binary, redirect or empty success; see the guide. No exhaustive response schema is asserted."
          },
          "4XX": {
            "description": "Invalid input, authorization, scope, role, privacy, quota or rate-limit error"
          },
          "5XX": {
            "description": "Service or upstream failure"
          }
        }
      }
    },
    "/chat/api/v1/oauth2/applications/@me": {
      "get": {
        "operationId": "get_chat_api_v1_oauth2_applications_me",
        "tags": [
          "bots"
        ],
        "summary": "GET /chat/api/v1/oauth2/applications/@me",
        "description": "Legacy: Nookara-hosted servers are read-only now (writes answer server_read_only with moved_to). Use an Ember instance instead. Request keys are observed in the implementation; unknown types are deliberately unconstrained. Server-side validation, membership, roles, privacy and rank checks still apply.",
        "x-velora-scopes": {},
        "x-captcha-required": false,
        "x-velora-legacy": true,
        "deprecated": true,
        "security": [
          {
            "BotToken": []
          }
        ],
        "parameters": [],
        "responses": {
          "2XX": {
            "description": "Endpoint-specific JSON, text, binary, redirect or empty success; see the guide. No exhaustive response schema is asserted."
          },
          "4XX": {
            "description": "Invalid input, authorization, scope, role, privacy, quota or rate-limit error"
          },
          "5XX": {
            "description": "Service or upstream failure"
          }
        }
      }
    },
    "/chat/api/v1/users/@me/guilds": {
      "get": {
        "operationId": "get_chat_api_v1_users_me_guilds",
        "tags": [
          "bots"
        ],
        "summary": "GET /chat/api/v1/users/@me/guilds",
        "description": "Legacy: Nookara-hosted servers are read-only now (writes answer server_read_only with moved_to). Use an Ember instance instead. Request keys are observed in the implementation; unknown types are deliberately unconstrained. Server-side validation, membership, roles, privacy and rank checks still apply.",
        "x-velora-scopes": {},
        "x-captcha-required": false,
        "x-velora-legacy": true,
        "deprecated": true,
        "security": [
          {
            "BotToken": []
          }
        ],
        "parameters": [],
        "responses": {
          "2XX": {
            "description": "Endpoint-specific JSON, text, binary, redirect or empty success; see the guide. No exhaustive response schema is asserted."
          },
          "4XX": {
            "description": "Invalid input, authorization, scope, role, privacy, quota or rate-limit error"
          },
          "5XX": {
            "description": "Service or upstream failure"
          }
        }
      }
    },
    "/chat/api/v1/users/@me/guilds/{gid}": {
      "delete": {
        "operationId": "delete_chat_api_v1_users_me_guilds_by_gid",
        "tags": [
          "bots"
        ],
        "summary": "DELETE /chat/api/v1/users/@me/guilds/:gid",
        "description": "Legacy: Nookara-hosted servers are read-only now (writes answer server_read_only with moved_to). Use an Ember instance instead. Request keys are observed in the implementation; unknown types are deliberately unconstrained. Server-side validation, membership, roles, privacy and rank checks still apply.",
        "x-velora-scopes": {},
        "x-captcha-required": false,
        "x-velora-legacy": true,
        "deprecated": true,
        "security": [
          {
            "BotToken": []
          }
        ],
        "parameters": [
          {
            "name": "gid",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "2XX": {
            "description": "Endpoint-specific JSON, text, binary, redirect or empty success; see the guide. No exhaustive response schema is asserted."
          },
          "4XX": {
            "description": "Invalid input, authorization, scope, role, privacy, quota or rate-limit error"
          },
          "5XX": {
            "description": "Service or upstream failure"
          }
        }
      }
    },
    "/chat/api/v1/users/{uid}": {
      "get": {
        "operationId": "get_chat_api_v1_users_by_uid",
        "tags": [
          "bots"
        ],
        "summary": "GET /chat/api/v1/users/:uid",
        "description": "Legacy: Nookara-hosted servers are read-only now (writes answer server_read_only with moved_to). Use an Ember instance instead. Request keys are observed in the implementation; unknown types are deliberately unconstrained. Server-side validation, membership, roles, privacy and rank checks still apply.",
        "x-velora-scopes": {},
        "x-captcha-required": false,
        "x-velora-legacy": true,
        "deprecated": true,
        "security": [
          {
            "BotToken": []
          }
        ],
        "parameters": [
          {
            "name": "uid",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "2XX": {
            "description": "Endpoint-specific JSON, text, binary, redirect or empty success; see the guide. No exhaustive response schema is asserted."
          },
          "4XX": {
            "description": "Invalid input, authorization, scope, role, privacy, quota or rate-limit error"
          },
          "5XX": {
            "description": "Service or upstream failure"
          }
        }
      }
    },
    "/chat/api/v1/users/@me/channels": {
      "post": {
        "operationId": "post_chat_api_v1_users_me_channels",
        "tags": [
          "bots"
        ],
        "summary": "POST /chat/api/v1/users/@me/channels",
        "description": "Legacy: Nookara-hosted servers are read-only now (writes answer server_read_only with moved_to). Use an Ember instance instead. Request keys are observed in the implementation; unknown types are deliberately unconstrained. Server-side validation, membership, roles, privacy and rank checks still apply.",
        "x-velora-scopes": {},
        "x-captcha-required": false,
        "x-velora-legacy": true,
        "deprecated": true,
        "security": [
          {
            "BotToken": []
          }
        ],
        "parameters": [],
        "responses": {
          "2XX": {
            "description": "Endpoint-specific JSON, text, binary, redirect or empty success; see the guide. No exhaustive response schema is asserted."
          },
          "4XX": {
            "description": "Invalid input, authorization, scope, role, privacy, quota or rate-limit error"
          },
          "5XX": {
            "description": "Service or upstream failure"
          }
        }
      }
    },
    "/chat/api/v1/guilds/{gid}": {
      "get": {
        "operationId": "get_chat_api_v1_guilds_by_gid",
        "tags": [
          "bots"
        ],
        "summary": "GET /chat/api/v1/guilds/:gid",
        "description": "Legacy: Nookara-hosted servers are read-only now (writes answer server_read_only with moved_to). Use an Ember instance instead. Request keys are observed in the implementation; unknown types are deliberately unconstrained. Server-side validation, membership, roles, privacy and rank checks still apply.",
        "x-velora-scopes": {},
        "x-captcha-required": false,
        "x-velora-legacy": true,
        "deprecated": true,
        "security": [
          {
            "BotToken": []
          }
        ],
        "parameters": [
          {
            "name": "gid",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "2XX": {
            "description": "Endpoint-specific JSON, text, binary, redirect or empty success; see the guide. No exhaustive response schema is asserted."
          },
          "4XX": {
            "description": "Invalid input, authorization, scope, role, privacy, quota or rate-limit error"
          },
          "5XX": {
            "description": "Service or upstream failure"
          }
        }
      }
    },
    "/chat/api/v1/guilds/{gid}/roles": {
      "get": {
        "operationId": "get_chat_api_v1_guilds_by_gid_roles",
        "tags": [
          "bots"
        ],
        "summary": "GET /chat/api/v1/guilds/:gid/roles",
        "description": "Legacy: Nookara-hosted servers are read-only now (writes answer server_read_only with moved_to). Use an Ember instance instead. Request keys are observed in the implementation; unknown types are deliberately unconstrained. Server-side validation, membership, roles, privacy and rank checks still apply.",
        "x-velora-scopes": {},
        "x-captcha-required": false,
        "x-velora-legacy": true,
        "deprecated": true,
        "security": [
          {
            "BotToken": []
          }
        ],
        "parameters": [
          {
            "name": "gid",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "2XX": {
            "description": "Endpoint-specific JSON, text, binary, redirect or empty success; see the guide. No exhaustive response schema is asserted."
          },
          "4XX": {
            "description": "Invalid input, authorization, scope, role, privacy, quota or rate-limit error"
          },
          "5XX": {
            "description": "Service or upstream failure"
          }
        }
      }
    },
    "/chat/api/v1/guilds/{gid}/channels": {
      "get": {
        "operationId": "get_chat_api_v1_guilds_by_gid_channels",
        "tags": [
          "bots"
        ],
        "summary": "GET /chat/api/v1/guilds/:gid/channels",
        "description": "Legacy: Nookara-hosted servers are read-only now (writes answer server_read_only with moved_to). Use an Ember instance instead. Request keys are observed in the implementation; unknown types are deliberately unconstrained. Server-side validation, membership, roles, privacy and rank checks still apply.",
        "x-velora-scopes": {},
        "x-captcha-required": false,
        "x-velora-legacy": true,
        "deprecated": true,
        "security": [
          {
            "BotToken": []
          }
        ],
        "parameters": [
          {
            "name": "gid",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "2XX": {
            "description": "Endpoint-specific JSON, text, binary, redirect or empty success; see the guide. No exhaustive response schema is asserted."
          },
          "4XX": {
            "description": "Invalid input, authorization, scope, role, privacy, quota or rate-limit error"
          },
          "5XX": {
            "description": "Service or upstream failure"
          }
        }
      }
    },
    "/chat/api/v1/guilds/{gid}/members/{uid}": {
      "get": {
        "operationId": "get_chat_api_v1_guilds_by_gid_members_by_uid",
        "tags": [
          "bots"
        ],
        "summary": "GET /chat/api/v1/guilds/:gid/members/:uid",
        "description": "Legacy: Nookara-hosted servers are read-only now (writes answer server_read_only with moved_to). Use an Ember instance instead. Request keys are observed in the implementation; unknown types are deliberately unconstrained. Server-side validation, membership, roles, privacy and rank checks still apply.",
        "x-velora-scopes": {},
        "x-captcha-required": false,
        "x-velora-legacy": true,
        "deprecated": true,
        "security": [
          {
            "BotToken": []
          }
        ],
        "parameters": [
          {
            "name": "gid",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "uid",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "2XX": {
            "description": "Endpoint-specific JSON, text, binary, redirect or empty success; see the guide. No exhaustive response schema is asserted."
          },
          "4XX": {
            "description": "Invalid input, authorization, scope, role, privacy, quota or rate-limit error"
          },
          "5XX": {
            "description": "Service or upstream failure"
          }
        }
      }
    },
    "/chat/api/v1/guilds/{gid}/members": {
      "get": {
        "operationId": "get_chat_api_v1_guilds_by_gid_members",
        "tags": [
          "bots"
        ],
        "summary": "GET /chat/api/v1/guilds/:gid/members",
        "description": "Legacy: Nookara-hosted servers are read-only now (writes answer server_read_only with moved_to). Use an Ember instance instead. Request keys are observed in the implementation; unknown types are deliberately unconstrained. Server-side validation, membership, roles, privacy and rank checks still apply.",
        "x-velora-scopes": {},
        "x-captcha-required": false,
        "x-velora-legacy": true,
        "deprecated": true,
        "security": [
          {
            "BotToken": []
          }
        ],
        "parameters": [
          {
            "name": "gid",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "limit",
            "in": "query",
            "required": false,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "2XX": {
            "description": "Endpoint-specific JSON, text, binary, redirect or empty success; see the guide. No exhaustive response schema is asserted."
          },
          "4XX": {
            "description": "Invalid input, authorization, scope, role, privacy, quota or rate-limit error"
          },
          "5XX": {
            "description": "Service or upstream failure"
          }
        }
      }
    },
    "/chat/api/v1/channels/{cid}": {
      "get": {
        "operationId": "get_chat_api_v1_channels_by_cid",
        "tags": [
          "bots"
        ],
        "summary": "GET /chat/api/v1/channels/:cid",
        "description": "Legacy: Nookara-hosted servers are read-only now (writes answer server_read_only with moved_to). Use an Ember instance instead. Request keys are observed in the implementation; unknown types are deliberately unconstrained. Server-side validation, membership, roles, privacy and rank checks still apply.",
        "x-velora-scopes": {},
        "x-captcha-required": false,
        "x-velora-legacy": true,
        "deprecated": true,
        "security": [
          {
            "BotToken": []
          }
        ],
        "parameters": [
          {
            "name": "cid",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "2XX": {
            "description": "Endpoint-specific JSON, text, binary, redirect or empty success; see the guide. No exhaustive response schema is asserted."
          },
          "4XX": {
            "description": "Invalid input, authorization, scope, role, privacy, quota or rate-limit error"
          },
          "5XX": {
            "description": "Service or upstream failure"
          }
        }
      }
    },
    "/chat/api/v1/channels/{cid}/typing": {
      "post": {
        "operationId": "post_chat_api_v1_channels_by_cid_typing",
        "tags": [
          "bots"
        ],
        "summary": "POST /chat/api/v1/channels/:cid/typing",
        "description": "Legacy: Nookara-hosted servers are read-only now (writes answer server_read_only with moved_to). Use an Ember instance instead. Request keys are observed in the implementation; unknown types are deliberately unconstrained. Server-side validation, membership, roles, privacy and rank checks still apply.",
        "x-velora-scopes": {},
        "x-captcha-required": false,
        "x-velora-legacy": true,
        "deprecated": true,
        "security": [
          {
            "BotToken": []
          }
        ],
        "parameters": [
          {
            "name": "cid",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "2XX": {
            "description": "Endpoint-specific JSON, text, binary, redirect or empty success; see the guide. No exhaustive response schema is asserted."
          },
          "4XX": {
            "description": "Invalid input, authorization, scope, role, privacy, quota or rate-limit error"
          },
          "5XX": {
            "description": "Service or upstream failure"
          }
        }
      }
    },
    "/chat/api/v1/channels/{cid}/messages": {
      "get": {
        "operationId": "get_chat_api_v1_channels_by_cid_messages",
        "tags": [
          "bots"
        ],
        "summary": "GET /chat/api/v1/channels/:cid/messages",
        "description": "Legacy: Nookara-hosted servers are read-only now (writes answer server_read_only with moved_to). Use an Ember instance instead. Request keys are observed in the implementation; unknown types are deliberately unconstrained. Server-side validation, membership, roles, privacy and rank checks still apply.",
        "x-velora-scopes": {},
        "x-captcha-required": false,
        "x-velora-legacy": true,
        "deprecated": true,
        "security": [
          {
            "BotToken": []
          }
        ],
        "parameters": [
          {
            "name": "cid",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "after",
            "in": "query",
            "required": false,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "before",
            "in": "query",
            "required": false,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "limit",
            "in": "query",
            "required": false,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "2XX": {
            "description": "Endpoint-specific JSON, text, binary, redirect or empty success; see the guide. No exhaustive response schema is asserted."
          },
          "4XX": {
            "description": "Invalid input, authorization, scope, role, privacy, quota or rate-limit error"
          },
          "5XX": {
            "description": "Service or upstream failure"
          }
        }
      },
      "post": {
        "operationId": "post_chat_api_v1_channels_by_cid_messages",
        "tags": [
          "bots"
        ],
        "summary": "POST /chat/api/v1/channels/:cid/messages",
        "description": "Legacy: Nookara-hosted servers are read-only now (writes answer server_read_only with moved_to). Use an Ember instance instead. Request keys are observed in the implementation; unknown types are deliberately unconstrained. Server-side validation, membership, roles, privacy and rank checks still apply.",
        "x-velora-scopes": {},
        "x-captcha-required": false,
        "x-velora-legacy": true,
        "deprecated": true,
        "security": [
          {
            "BotToken": []
          }
        ],
        "parameters": [
          {
            "name": "cid",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "2XX": {
            "description": "Endpoint-specific JSON, text, binary, redirect or empty success; see the guide. No exhaustive response schema is asserted."
          },
          "4XX": {
            "description": "Invalid input, authorization, scope, role, privacy, quota or rate-limit error"
          },
          "5XX": {
            "description": "Service or upstream failure"
          }
        },
        "requestBody": {
          "required": false,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "properties": {
                  "content": {
                    "description": "Observed request key. See guide for nested formats and constraints."
                  },
                  "embeds": {
                    "description": "Observed request key. See guide for nested formats and constraints."
                  },
                  "message_reference": {
                    "description": "Observed request key. See guide for nested formats and constraints."
                  },
                  "allowed_mentions": {
                    "description": "Observed request key. See guide for nested formats and constraints."
                  },
                  "payload_json": {
                    "description": "Observed request key. See guide for nested formats and constraints."
                  },
                  "attachments": {
                    "description": "Observed request key. See guide for nested formats and constraints."
                  }
                },
                "additionalProperties": true
              }
            },
            "multipart/form-data": {
              "schema": {
                "type": "object",
                "properties": {
                  "content": {
                    "description": "Observed request key. See guide for nested formats and constraints."
                  },
                  "embeds": {
                    "description": "Observed request key. See guide for nested formats and constraints."
                  },
                  "message_reference": {
                    "description": "Observed request key. See guide for nested formats and constraints."
                  },
                  "allowed_mentions": {
                    "description": "Observed request key. See guide for nested formats and constraints."
                  },
                  "payload_json": {
                    "description": "Observed request key. See guide for nested formats and constraints."
                  },
                  "attachments": {
                    "description": "Observed request key. See guide for nested formats and constraints."
                  },
                  "files[0]": {
                    "type": "string",
                    "format": "binary"
                  }
                },
                "additionalProperties": true
              }
            }
          }
        }
      }
    },
    "/chat/api/v1/channels/{cid}/messages/{mid}": {
      "get": {
        "operationId": "get_chat_api_v1_channels_by_cid_messages_by_mid",
        "tags": [
          "bots"
        ],
        "summary": "GET /chat/api/v1/channels/:cid/messages/:mid",
        "description": "Legacy: Nookara-hosted servers are read-only now (writes answer server_read_only with moved_to). Use an Ember instance instead. Request keys are observed in the implementation; unknown types are deliberately unconstrained. Server-side validation, membership, roles, privacy and rank checks still apply.",
        "x-velora-scopes": {},
        "x-captcha-required": false,
        "x-velora-legacy": true,
        "deprecated": true,
        "security": [
          {
            "BotToken": []
          }
        ],
        "parameters": [
          {
            "name": "cid",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "mid",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "2XX": {
            "description": "Endpoint-specific JSON, text, binary, redirect or empty success; see the guide. No exhaustive response schema is asserted."
          },
          "4XX": {
            "description": "Invalid input, authorization, scope, role, privacy, quota or rate-limit error"
          },
          "5XX": {
            "description": "Service or upstream failure"
          }
        }
      },
      "patch": {
        "operationId": "patch_chat_api_v1_channels_by_cid_messages_by_mid",
        "tags": [
          "bots"
        ],
        "summary": "PATCH /chat/api/v1/channels/:cid/messages/:mid",
        "description": "Legacy: Nookara-hosted servers are read-only now (writes answer server_read_only with moved_to). Use an Ember instance instead. Request keys are observed in the implementation; unknown types are deliberately unconstrained. Server-side validation, membership, roles, privacy and rank checks still apply.",
        "x-velora-scopes": {},
        "x-captcha-required": false,
        "x-velora-legacy": true,
        "deprecated": true,
        "security": [
          {
            "BotToken": []
          }
        ],
        "parameters": [
          {
            "name": "cid",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "mid",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "2XX": {
            "description": "Endpoint-specific JSON, text, binary, redirect or empty success; see the guide. No exhaustive response schema is asserted."
          },
          "4XX": {
            "description": "Invalid input, authorization, scope, role, privacy, quota or rate-limit error"
          },
          "5XX": {
            "description": "Service or upstream failure"
          }
        },
        "requestBody": {
          "required": false,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "properties": {
                  "content": {
                    "description": "Observed request key. See guide for nested formats and constraints."
                  },
                  "allowed_mentions": {
                    "description": "Observed request key. See guide for nested formats and constraints."
                  }
                },
                "additionalProperties": true
              }
            }
          }
        }
      },
      "delete": {
        "operationId": "delete_chat_api_v1_channels_by_cid_messages_by_mid",
        "tags": [
          "bots"
        ],
        "summary": "DELETE /chat/api/v1/channels/:cid/messages/:mid",
        "description": "Legacy: Nookara-hosted servers are read-only now (writes answer server_read_only with moved_to). Use an Ember instance instead. Request keys are observed in the implementation; unknown types are deliberately unconstrained. Server-side validation, membership, roles, privacy and rank checks still apply.",
        "x-velora-scopes": {},
        "x-captcha-required": false,
        "x-velora-legacy": true,
        "deprecated": true,
        "security": [
          {
            "BotToken": []
          }
        ],
        "parameters": [
          {
            "name": "cid",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "mid",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "2XX": {
            "description": "Endpoint-specific JSON, text, binary, redirect or empty success; see the guide. No exhaustive response schema is asserted."
          },
          "4XX": {
            "description": "Invalid input, authorization, scope, role, privacy, quota or rate-limit error"
          },
          "5XX": {
            "description": "Service or upstream failure"
          }
        }
      }
    },
    "/chat/api/v1/channels/{cid}/messages/{mid}/reactions/{emoji}/@me": {
      "put": {
        "operationId": "put_chat_api_v1_channels_by_cid_messages_by_mid_reactions_by_emoji_me",
        "tags": [
          "bots"
        ],
        "summary": "PUT /chat/api/v1/channels/:cid/messages/:mid/reactions/:emoji/@me",
        "description": "Legacy: Nookara-hosted servers are read-only now (writes answer server_read_only with moved_to). Use an Ember instance instead. Request keys are observed in the implementation; unknown types are deliberately unconstrained. Server-side validation, membership, roles, privacy and rank checks still apply.",
        "x-velora-scopes": {},
        "x-captcha-required": false,
        "x-velora-legacy": true,
        "deprecated": true,
        "security": [
          {
            "BotToken": []
          }
        ],
        "parameters": [
          {
            "name": "cid",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "mid",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "emoji",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "2XX": {
            "description": "Endpoint-specific JSON, text, binary, redirect or empty success; see the guide. No exhaustive response schema is asserted."
          },
          "4XX": {
            "description": "Invalid input, authorization, scope, role, privacy, quota or rate-limit error"
          },
          "5XX": {
            "description": "Service or upstream failure"
          }
        }
      },
      "delete": {
        "operationId": "delete_chat_api_v1_channels_by_cid_messages_by_mid_reactions_by_emoji_me",
        "tags": [
          "bots"
        ],
        "summary": "DELETE /chat/api/v1/channels/:cid/messages/:mid/reactions/:emoji/@me",
        "description": "Legacy: Nookara-hosted servers are read-only now (writes answer server_read_only with moved_to). Use an Ember instance instead. Request keys are observed in the implementation; unknown types are deliberately unconstrained. Server-side validation, membership, roles, privacy and rank checks still apply.",
        "x-velora-scopes": {},
        "x-captcha-required": false,
        "x-velora-legacy": true,
        "deprecated": true,
        "security": [
          {
            "BotToken": []
          }
        ],
        "parameters": [
          {
            "name": "cid",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "mid",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "emoji",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "2XX": {
            "description": "Endpoint-specific JSON, text, binary, redirect or empty success; see the guide. No exhaustive response schema is asserted."
          },
          "4XX": {
            "description": "Invalid input, authorization, scope, role, privacy, quota or rate-limit error"
          },
          "5XX": {
            "description": "Service or upstream failure"
          }
        }
      }
    },
    "/chat/api/v1/channels/{cid}/pins/{mid}": {
      "put": {
        "operationId": "put_chat_api_v1_channels_by_cid_pins_by_mid",
        "tags": [
          "bots"
        ],
        "summary": "PUT /chat/api/v1/channels/:cid/pins/:mid",
        "description": "Legacy: Nookara-hosted servers are read-only now (writes answer server_read_only with moved_to). Use an Ember instance instead. Request keys are observed in the implementation; unknown types are deliberately unconstrained. Server-side validation, membership, roles, privacy and rank checks still apply.",
        "x-velora-scopes": {},
        "x-captcha-required": false,
        "x-velora-legacy": true,
        "deprecated": true,
        "security": [
          {
            "BotToken": []
          }
        ],
        "parameters": [
          {
            "name": "cid",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "mid",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "2XX": {
            "description": "Endpoint-specific JSON, text, binary, redirect or empty success; see the guide. No exhaustive response schema is asserted."
          },
          "4XX": {
            "description": "Invalid input, authorization, scope, role, privacy, quota or rate-limit error"
          },
          "5XX": {
            "description": "Service or upstream failure"
          }
        }
      },
      "delete": {
        "operationId": "delete_chat_api_v1_channels_by_cid_pins_by_mid",
        "tags": [
          "bots"
        ],
        "summary": "DELETE /chat/api/v1/channels/:cid/pins/:mid",
        "description": "Legacy: Nookara-hosted servers are read-only now (writes answer server_read_only with moved_to). Use an Ember instance instead. Request keys are observed in the implementation; unknown types are deliberately unconstrained. Server-side validation, membership, roles, privacy and rank checks still apply.",
        "x-velora-scopes": {},
        "x-captcha-required": false,
        "x-velora-legacy": true,
        "deprecated": true,
        "security": [
          {
            "BotToken": []
          }
        ],
        "parameters": [
          {
            "name": "cid",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "mid",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "2XX": {
            "description": "Endpoint-specific JSON, text, binary, redirect or empty success; see the guide. No exhaustive response schema is asserted."
          },
          "4XX": {
            "description": "Invalid input, authorization, scope, role, privacy, quota or rate-limit error"
          },
          "5XX": {
            "description": "Service or upstream failure"
          }
        }
      }
    },
    "/bot/payment-requests": {
      "post": {
        "operationId": "post_bot_payment_requests",
        "tags": [
          "bot-payments"
        ],
        "summary": "POST /bot/payment-requests",
        "description": "Bot payments. Authorization: Bot TOKEN only (a user token is refused). Asks a buyer for credits; the money goes to the bot owner. Returns 201 with the request and its pay_url, or 200 with idempotent_replay true when the same order_id, buyer and amount were already created. 60 creates per minute per bot. See Bot payments in the guide. Request keys are observed in the implementation; unknown types are deliberately unconstrained. Server-side validation, membership, roles, privacy and rank checks still apply.",
        "x-velora-scopes": {},
        "x-captcha-required": false,
        "x-velora-legacy": false,
        "deprecated": false,
        "security": [
          {
            "BotToken": []
          }
        ],
        "parameters": [],
        "responses": {
          "2XX": {
            "description": "Endpoint-specific JSON, text, binary, redirect or empty success; see the guide. No exhaustive response schema is asserted."
          },
          "4XX": {
            "description": "Invalid input, authorization, scope, role, privacy, quota or rate-limit error"
          },
          "5XX": {
            "description": "Service or upstream failure"
          }
        },
        "requestBody": {
          "required": false,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "properties": {
                  "buyer": {
                    "description": "Observed request key. See guide for nested formats and constraints."
                  },
                  "buyer_id": {
                    "description": "Observed request key. See guide for nested formats and constraints."
                  },
                  "amount": {
                    "description": "Observed request key. See guide for nested formats and constraints."
                  },
                  "order_id": {
                    "description": "Observed request key. See guide for nested formats and constraints."
                  },
                  "description": {
                    "description": "Observed request key. See guide for nested formats and constraints."
                  },
                  "return_url": {
                    "description": "Observed request key. See guide for nested formats and constraints."
                  },
                  "expires_in": {
                    "description": "Observed request key. See guide for nested formats and constraints."
                  },
                  "metadata": {
                    "description": "Observed request key. See guide for nested formats and constraints."
                  }
                },
                "additionalProperties": true
              }
            }
          }
        }
      },
      "get": {
        "operationId": "get_bot_payment_requests",
        "tags": [
          "bot-payments"
        ],
        "summary": "GET /bot/payment-requests",
        "description": "Bot payments. With order_id returns that single request (404 not_found if none); otherwise lists your latest requests as {requests: [...]}, optionally filtered by status (pending, paid, declined, expired, cancelled) and limit. 300 reads per minute per bot. Request keys are observed in the implementation; unknown types are deliberately unconstrained. Server-side validation, membership, roles, privacy and rank checks still apply.",
        "x-velora-scopes": {},
        "x-captcha-required": false,
        "x-velora-legacy": false,
        "deprecated": false,
        "security": [
          {
            "BotToken": []
          }
        ],
        "parameters": [
          {
            "name": "order_id",
            "in": "query",
            "required": false,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "status",
            "in": "query",
            "required": false,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "limit",
            "in": "query",
            "required": false,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "2XX": {
            "description": "Endpoint-specific JSON, text, binary, redirect or empty success; see the guide. No exhaustive response schema is asserted."
          },
          "4XX": {
            "description": "Invalid input, authorization, scope, role, privacy, quota or rate-limit error"
          },
          "5XX": {
            "description": "Service or upstream failure"
          }
        }
      }
    },
    "/bot/payment-requests/{id}": {
      "get": {
        "operationId": "get_bot_payment_requests_by_id",
        "tags": [
          "bot-payments"
        ],
        "summary": "GET /bot/payment-requests/:id",
        "description": "Bot payments. One request of your own bot (404 not_found for anything else). Fulfil an order only when status is paid. Request keys are observed in the implementation; unknown types are deliberately unconstrained. Server-side validation, membership, roles, privacy and rank checks still apply.",
        "x-velora-scopes": {},
        "x-captcha-required": false,
        "x-velora-legacy": false,
        "deprecated": false,
        "security": [
          {
            "BotToken": []
          }
        ],
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "2XX": {
            "description": "Endpoint-specific JSON, text, binary, redirect or empty success; see the guide. No exhaustive response schema is asserted."
          },
          "4XX": {
            "description": "Invalid input, authorization, scope, role, privacy, quota or rate-limit error"
          },
          "5XX": {
            "description": "Service or upstream failure"
          }
        }
      }
    },
    "/bot/payment-requests/{id}/cancel": {
      "post": {
        "operationId": "post_bot_payment_requests_by_id_cancel",
        "tags": [
          "bot-payments"
        ],
        "summary": "POST /bot/payment-requests/:id/cancel",
        "description": "Bot payments. Cancels a pending request. 409 payment_in_progress while the buyer is paying, 409 not_cancellable once paid, declined or expired; cancelling a cancelled request is a no-op 200. Request keys are observed in the implementation; unknown types are deliberately unconstrained. Server-side validation, membership, roles, privacy and rank checks still apply.",
        "x-velora-scopes": {},
        "x-captcha-required": false,
        "x-velora-legacy": false,
        "deprecated": false,
        "security": [
          {
            "BotToken": []
          }
        ],
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "2XX": {
            "description": "Endpoint-specific JSON, text, binary, redirect or empty success; see the guide. No exhaustive response schema is asserted."
          },
          "4XX": {
            "description": "Invalid input, authorization, scope, role, privacy, quota or rate-limit error"
          },
          "5XX": {
            "description": "Service or upstream failure"
          }
        }
      }
    },
    "/chat/webhooks/{wid}/{token}": {
      "get": {
        "operationId": "get_chat_webhooks_by_wid_by_token",
        "tags": [
          "webhooks"
        ],
        "summary": "GET /chat/webhooks/:wid/:token",
        "description": "Legacy: Nookara-hosted servers are read-only now (writes answer server_read_only with moved_to). Use an Ember instance instead. Request keys are observed in the implementation; unknown types are deliberately unconstrained. Server-side validation, membership, roles, privacy and rank checks still apply. The webhook token is the secret path parameter; do not send a user token.",
        "x-velora-scopes": {},
        "x-captcha-required": false,
        "x-velora-legacy": true,
        "deprecated": true,
        "security": [],
        "parameters": [
          {
            "name": "wid",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "token",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "2XX": {
            "description": "Endpoint-specific JSON, text, binary, redirect or empty success; see the guide. No exhaustive response schema is asserted."
          },
          "4XX": {
            "description": "Invalid input, authorization, scope, role, privacy, quota or rate-limit error"
          },
          "5XX": {
            "description": "Service or upstream failure"
          }
        }
      },
      "post": {
        "operationId": "post_chat_webhooks_by_wid_by_token",
        "tags": [
          "webhooks"
        ],
        "summary": "POST /chat/webhooks/:wid/:token",
        "description": "Legacy: Nookara-hosted servers are read-only now (writes answer server_read_only with moved_to). Use an Ember instance instead. Request keys are observed in the implementation; unknown types are deliberately unconstrained. Server-side validation, membership, roles, privacy and rank checks still apply. The webhook token is the secret path parameter; do not send a user token.",
        "x-velora-scopes": {},
        "x-captcha-required": false,
        "x-velora-legacy": true,
        "deprecated": true,
        "security": [],
        "parameters": [
          {
            "name": "wid",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "token",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "wait",
            "in": "query",
            "required": false,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "2XX": {
            "description": "Endpoint-specific JSON, text, binary, redirect or empty success; see the guide. No exhaustive response schema is asserted."
          },
          "4XX": {
            "description": "Invalid input, authorization, scope, role, privacy, quota or rate-limit error"
          },
          "5XX": {
            "description": "Service or upstream failure"
          }
        },
        "requestBody": {
          "required": false,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "properties": {
                  "content": {
                    "description": "Observed request key. See guide for nested formats and constraints."
                  },
                  "username": {
                    "description": "Observed request key. See guide for nested formats and constraints."
                  },
                  "avatar_url": {
                    "description": "Observed request key. See guide for nested formats and constraints."
                  },
                  "embeds": {
                    "description": "Observed request key. See guide for nested formats and constraints."
                  },
                  "payload_json": {
                    "description": "Observed request key. See guide for nested formats and constraints."
                  },
                  "attachments": {
                    "description": "Observed request key. See guide for nested formats and constraints."
                  }
                },
                "additionalProperties": true
              }
            },
            "multipart/form-data": {
              "schema": {
                "type": "object",
                "properties": {
                  "content": {
                    "description": "Observed request key. See guide for nested formats and constraints."
                  },
                  "username": {
                    "description": "Observed request key. See guide for nested formats and constraints."
                  },
                  "avatar_url": {
                    "description": "Observed request key. See guide for nested formats and constraints."
                  },
                  "embeds": {
                    "description": "Observed request key. See guide for nested formats and constraints."
                  },
                  "payload_json": {
                    "description": "Observed request key. See guide for nested formats and constraints."
                  },
                  "attachments": {
                    "description": "Observed request key. See guide for nested formats and constraints."
                  },
                  "files[0]": {
                    "type": "string",
                    "format": "binary"
                  }
                },
                "additionalProperties": true
              }
            }
          }
        }
      },
      "delete": {
        "operationId": "delete_chat_webhooks_by_wid_by_token",
        "tags": [
          "webhooks"
        ],
        "summary": "DELETE /chat/webhooks/:wid/:token",
        "description": "Legacy: Nookara-hosted servers are read-only now (writes answer server_read_only with moved_to). Use an Ember instance instead. Request keys are observed in the implementation; unknown types are deliberately unconstrained. Server-side validation, membership, roles, privacy and rank checks still apply. The webhook token is the secret path parameter; do not send a user token.",
        "x-velora-scopes": {},
        "x-captcha-required": false,
        "x-velora-legacy": true,
        "deprecated": true,
        "security": [],
        "parameters": [
          {
            "name": "wid",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "token",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "2XX": {
            "description": "Endpoint-specific JSON, text, binary, redirect or empty success; see the guide. No exhaustive response schema is asserted."
          },
          "4XX": {
            "description": "Invalid input, authorization, scope, role, privacy, quota or rate-limit error"
          },
          "5XX": {
            "description": "Service or upstream failure"
          }
        }
      }
    },
    "/chat/yt/{id}/prepare": {
      "post": {
        "operationId": "post_chat_yt_by_id_prepare",
        "tags": [
          "video-player"
        ],
        "summary": "POST /chat/yt/:id/prepare",
        "description": "Client-specific protocol. See the integration guide before using this endpoint. Request keys are observed in the implementation; unknown types are deliberately unconstrained. Server-side validation, membership, roles, privacy and rank checks still apply.",
        "x-velora-scopes": {
          "CHAT": 2048
        },
        "x-captcha-required": false,
        "x-velora-legacy": true,
        "deprecated": true,
        "security": [
          {
            "UserToken": []
          }
        ],
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "2XX": {
            "description": "Endpoint-specific JSON, text, binary, redirect or empty success; see the guide. No exhaustive response schema is asserted."
          },
          "4XX": {
            "description": "Invalid input, authorization, scope, role, privacy, quota or rate-limit error"
          },
          "5XX": {
            "description": "Service or upstream failure"
          }
        }
      }
    },
    "/chat/yt/{id}/status": {
      "get": {
        "operationId": "get_chat_yt_by_id_status",
        "tags": [
          "video-player"
        ],
        "summary": "GET /chat/yt/:id/status",
        "description": "Client-specific protocol. See the integration guide before using this endpoint. Request keys are observed in the implementation; unknown types are deliberately unconstrained. Server-side validation, membership, roles, privacy and rank checks still apply.",
        "x-velora-scopes": {
          "CHAT": 2048
        },
        "x-captcha-required": false,
        "x-velora-legacy": true,
        "deprecated": true,
        "security": [
          {
            "UserToken": []
          }
        ],
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "2XX": {
            "description": "Endpoint-specific JSON, text, binary, redirect or empty success; see the guide. No exhaustive response schema is asserted."
          },
          "4XX": {
            "description": "Invalid input, authorization, scope, role, privacy, quota or rate-limit error"
          },
          "5XX": {
            "description": "Service or upstream failure"
          }
        }
      }
    },
    "/chat/yt/{id}/save": {
      "post": {
        "operationId": "post_chat_yt_by_id_save",
        "tags": [
          "video-player"
        ],
        "summary": "POST /chat/yt/:id/save",
        "description": "Client-specific protocol. See the integration guide before using this endpoint. Request keys are observed in the implementation; unknown types are deliberately unconstrained. Server-side validation, membership, roles, privacy and rank checks still apply.",
        "x-velora-scopes": {
          "CHAT": 2048,
          "MEDIA_UPLOAD": 4096
        },
        "x-captcha-required": false,
        "x-velora-legacy": true,
        "deprecated": true,
        "security": [
          {
            "UserToken": []
          }
        ],
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "2XX": {
            "description": "Endpoint-specific JSON, text, binary, redirect or empty success; see the guide. No exhaustive response schema is asserted."
          },
          "4XX": {
            "description": "Invalid input, authorization, scope, role, privacy, quota or rate-limit error"
          },
          "5XX": {
            "description": "Service or upstream failure"
          }
        },
        "requestBody": {
          "required": false,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "properties": {
                  "title": {
                    "description": "Observed request key. See guide for nested formats and constraints."
                  }
                },
                "additionalProperties": true
              }
            }
          }
        }
      }
    },
    "/chat/yt/stream/{id}": {
      "get": {
        "operationId": "get_chat_yt_stream_by_id",
        "tags": [
          "video-player"
        ],
        "summary": "GET /chat/yt/stream/:id",
        "description": "Client-specific protocol. See the integration guide before using this endpoint. Request keys are observed in the implementation; unknown types are deliberately unconstrained. Server-side validation, membership, roles, privacy and rank checks still apply.",
        "x-velora-scopes": {},
        "x-captcha-required": false,
        "x-velora-legacy": true,
        "deprecated": true,
        "security": [],
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "dl",
            "in": "query",
            "required": false,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "e",
            "in": "query",
            "required": false,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "s",
            "in": "query",
            "required": false,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "2XX": {
            "description": "Endpoint-specific JSON, text, binary, redirect or empty success; see the guide. No exhaustive response schema is asserted."
          },
          "4XX": {
            "description": "Invalid input, authorization, scope, role, privacy, quota or rate-limit error"
          },
          "5XX": {
            "description": "Service or upstream failure"
          }
        }
      }
    },
    "/achievements": {
      "get": {
        "operationId": "get_achievements",
        "tags": [
          "achievements"
        ],
        "summary": "GET /achievements",
        "description": "Request keys are observed in the implementation; unknown types are deliberately unconstrained. Server-side validation, membership, roles, privacy and rank checks still apply.",
        "x-velora-scopes": {
          "PROFILE_READ": 1
        },
        "x-captcha-required": false,
        "x-velora-legacy": false,
        "deprecated": false,
        "security": [
          {
            "UserToken": []
          }
        ],
        "parameters": [
          {
            "name": "game",
            "in": "query",
            "required": false,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "2XX": {
            "description": "Endpoint-specific JSON, text, binary, redirect or empty success; see the guide. No exhaustive response schema is asserted."
          },
          "4XX": {
            "description": "Invalid input, authorization, scope, role, privacy, quota or rate-limit error"
          },
          "5XX": {
            "description": "Service or upstream failure"
          }
        }
      }
    },
    "/achievements/{id}/grant": {
      "post": {
        "operationId": "post_achievements_by_id_grant",
        "tags": [
          "achievements"
        ],
        "summary": "POST /achievements/:id/grant",
        "description": "Request keys are observed in the implementation; unknown types are deliberately unconstrained. Server-side validation, membership, roles, privacy and rank checks still apply.",
        "x-velora-scopes": {
          "PROFILE_READ": 1
        },
        "x-captcha-required": false,
        "x-velora-legacy": false,
        "deprecated": false,
        "security": [
          {
            "UserToken": []
          }
        ],
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "2XX": {
            "description": "Endpoint-specific JSON, text, binary, redirect or empty success; see the guide. No exhaustive response schema is asserted."
          },
          "4XX": {
            "description": "Invalid input, authorization, scope, role, privacy, quota or rate-limit error"
          },
          "5XX": {
            "description": "Service or upstream failure"
          }
        },
        "requestBody": {
          "required": false,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "properties": {
                  "game": {
                    "description": "Observed request key. See guide for nested formats and constraints."
                  }
                },
                "additionalProperties": true
              }
            }
          }
        }
      }
    },
    "/achievements/{id}/revoke": {
      "post": {
        "operationId": "post_achievements_by_id_revoke",
        "tags": [
          "achievements"
        ],
        "summary": "POST /achievements/:id/revoke",
        "description": "Request keys are observed in the implementation; unknown types are deliberately unconstrained. Server-side validation, membership, roles, privacy and rank checks still apply.",
        "x-velora-scopes": {
          "PROFILE_READ": 1
        },
        "x-captcha-required": false,
        "x-velora-legacy": false,
        "deprecated": false,
        "security": [
          {
            "UserToken": []
          }
        ],
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "2XX": {
            "description": "Endpoint-specific JSON, text, binary, redirect or empty success; see the guide. No exhaustive response schema is asserted."
          },
          "4XX": {
            "description": "Invalid input, authorization, scope, role, privacy, quota or rate-limit error"
          },
          "5XX": {
            "description": "Service or upstream failure"
          }
        },
        "requestBody": {
          "required": false,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "properties": {
                  "game": {
                    "description": "Observed request key. See guide for nested formats and constraints."
                  }
                },
                "additionalProperties": true
              }
            }
          }
        }
      }
    },
    "/currency/balance": {
      "get": {
        "operationId": "get_currency_balance",
        "tags": [
          "currency"
        ],
        "summary": "GET /currency/balance",
        "description": "Request keys are observed in the implementation; unknown types are deliberately unconstrained. Server-side validation, membership, roles, privacy and rank checks still apply.",
        "x-velora-scopes": {
          "CURRENCY_READ": 8192
        },
        "x-captcha-required": false,
        "x-velora-legacy": false,
        "deprecated": false,
        "security": [
          {
            "UserToken": []
          }
        ],
        "parameters": [],
        "responses": {
          "2XX": {
            "description": "Endpoint-specific JSON, text, binary, redirect or empty success; see the guide. No exhaustive response schema is asserted."
          },
          "4XX": {
            "description": "Invalid input, authorization, scope, role, privacy, quota or rate-limit error"
          },
          "5XX": {
            "description": "Service or upstream failure"
          }
        }
      }
    },
    "/currency/captcha-status": {
      "get": {
        "operationId": "get_currency_captcha_status",
        "tags": [
          "currency"
        ],
        "summary": "GET /currency/captcha-status",
        "description": "Request keys are observed in the implementation; unknown types are deliberately unconstrained. Server-side validation, membership, roles, privacy and rank checks still apply.",
        "x-velora-scopes": {},
        "x-captcha-required": false,
        "x-velora-legacy": false,
        "deprecated": false,
        "security": [
          {
            "UserToken": []
          }
        ],
        "parameters": [],
        "responses": {
          "2XX": {
            "description": "Endpoint-specific JSON, text, binary, redirect or empty success; see the guide. No exhaustive response schema is asserted."
          },
          "4XX": {
            "description": "Invalid input, authorization, scope, role, privacy, quota or rate-limit error"
          },
          "5XX": {
            "description": "Service or upstream failure"
          }
        }
      }
    },
    "/currency/transfer": {
      "post": {
        "operationId": "post_currency_transfer",
        "tags": [
          "currency"
        ],
        "summary": "POST /currency/transfer",
        "description": "Request keys are observed in the implementation; unknown types are deliberately unconstrained. Server-side validation, membership, roles, privacy and rank checks still apply.",
        "x-velora-scopes": {
          "CURRENCY_PAY": 1024
        },
        "x-captcha-required": true,
        "x-velora-legacy": false,
        "deprecated": false,
        "security": [
          {
            "UserToken": []
          }
        ],
        "parameters": [],
        "responses": {
          "2XX": {
            "description": "Endpoint-specific JSON, text, binary, redirect or empty success; see the guide. No exhaustive response schema is asserted."
          },
          "4XX": {
            "description": "Invalid input, authorization, scope, role, privacy, quota or rate-limit error"
          },
          "5XX": {
            "description": "Service or upstream failure"
          }
        },
        "requestBody": {
          "required": false,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "properties": {
                  "amount": {
                    "description": "Observed request key. See guide for nested formats and constraints."
                  },
                  "note": {
                    "description": "Observed request key. See guide for nested formats and constraints."
                  },
                  "to": {
                    "description": "Observed request key. See guide for nested formats and constraints."
                  },
                  "captcha_token": {
                    "description": "Observed request key. See guide for nested formats and constraints."
                  }
                },
                "additionalProperties": true
              }
            }
          }
        }
      }
    },
    "/currency/transactions": {
      "get": {
        "operationId": "get_currency_transactions",
        "tags": [
          "currency"
        ],
        "summary": "GET /currency/transactions",
        "description": "Request keys are observed in the implementation; unknown types are deliberately unconstrained. Server-side validation, membership, roles, privacy and rank checks still apply.",
        "x-velora-scopes": {
          "CURRENCY_READ": 8192
        },
        "x-captcha-required": false,
        "x-velora-legacy": false,
        "deprecated": false,
        "security": [
          {
            "UserToken": []
          }
        ],
        "parameters": [],
        "responses": {
          "2XX": {
            "description": "Endpoint-specific JSON, text, binary, redirect or empty success; see the guide. No exhaustive response schema is asserted."
          },
          "4XX": {
            "description": "Invalid input, authorization, scope, role, privacy, quota or rate-limit error"
          },
          "5XX": {
            "description": "Service or upstream failure"
          }
        }
      }
    },
    "/currency/subscribe": {
      "post": {
        "operationId": "post_currency_subscribe",
        "tags": [
          "currency"
        ],
        "summary": "POST /currency/subscribe",
        "description": "Request keys are observed in the implementation; unknown types are deliberately unconstrained. Server-side validation, membership, roles, privacy and rank checks still apply.",
        "x-velora-scopes": {
          "CURRENCY_PAY": 1024
        },
        "x-captcha-required": false,
        "x-velora-legacy": false,
        "deprecated": false,
        "security": [
          {
            "UserToken": []
          }
        ],
        "parameters": [],
        "responses": {
          "2XX": {
            "description": "Endpoint-specific JSON, text, binary, redirect or empty success; see the guide. No exhaustive response schema is asserted."
          },
          "4XX": {
            "description": "Invalid input, authorization, scope, role, privacy, quota or rate-limit error"
          },
          "5XX": {
            "description": "Service or upstream failure"
          }
        },
        "requestBody": {
          "required": false,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "properties": {
                  "amount": {
                    "description": "Observed request key. See guide for nested formats and constraints."
                  },
                  "note": {
                    "description": "Observed request key. See guide for nested formats and constraints."
                  },
                  "period": {
                    "description": "Observed request key. See guide for nested formats and constraints."
                  },
                  "to": {
                    "description": "Observed request key. See guide for nested formats and constraints."
                  }
                },
                "additionalProperties": true
              }
            }
          }
        }
      }
    },
    "/currency/subscribe/user/{username}": {
      "delete": {
        "operationId": "delete_currency_subscribe_user_by_username",
        "tags": [
          "currency"
        ],
        "summary": "DELETE /currency/subscribe/user/:username",
        "description": "Request keys are observed in the implementation; unknown types are deliberately unconstrained. Server-side validation, membership, roles, privacy and rank checks still apply.",
        "x-velora-scopes": {
          "CURRENCY_PAY": 1024
        },
        "x-captcha-required": false,
        "x-velora-legacy": false,
        "deprecated": false,
        "security": [
          {
            "UserToken": []
          }
        ],
        "parameters": [
          {
            "name": "username",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "2XX": {
            "description": "Endpoint-specific JSON, text, binary, redirect or empty success; see the guide. No exhaustive response schema is asserted."
          },
          "4XX": {
            "description": "Invalid input, authorization, scope, role, privacy, quota or rate-limit error"
          },
          "5XX": {
            "description": "Service or upstream failure"
          }
        }
      }
    },
    "/currency/subscriptions/outgoing": {
      "get": {
        "operationId": "get_currency_subscriptions_outgoing",
        "tags": [
          "currency"
        ],
        "summary": "GET /currency/subscriptions/outgoing",
        "description": "Request keys are observed in the implementation; unknown types are deliberately unconstrained. Server-side validation, membership, roles, privacy and rank checks still apply.",
        "x-velora-scopes": {
          "CURRENCY_READ": 8192
        },
        "x-captcha-required": false,
        "x-velora-legacy": false,
        "deprecated": false,
        "security": [
          {
            "UserToken": []
          }
        ],
        "parameters": [],
        "responses": {
          "2XX": {
            "description": "Endpoint-specific JSON, text, binary, redirect or empty success; see the guide. No exhaustive response schema is asserted."
          },
          "4XX": {
            "description": "Invalid input, authorization, scope, role, privacy, quota or rate-limit error"
          },
          "5XX": {
            "description": "Service or upstream failure"
          }
        }
      }
    },
    "/currency/subscriptions/incoming": {
      "get": {
        "operationId": "get_currency_subscriptions_incoming",
        "tags": [
          "currency"
        ],
        "summary": "GET /currency/subscriptions/incoming",
        "description": "Request keys are observed in the implementation; unknown types are deliberately unconstrained. Server-side validation, membership, roles, privacy and rank checks still apply.",
        "x-velora-scopes": {
          "CURRENCY_READ": 8192
        },
        "x-captcha-required": false,
        "x-velora-legacy": false,
        "deprecated": false,
        "security": [
          {
            "UserToken": []
          }
        ],
        "parameters": [],
        "responses": {
          "2XX": {
            "description": "Endpoint-specific JSON, text, binary, redirect or empty success; see the guide. No exhaustive response schema is asserted."
          },
          "4XX": {
            "description": "Invalid input, authorization, scope, role, privacy, quota or rate-limit error"
          },
          "5XX": {
            "description": "Service or upstream failure"
          }
        }
      }
    },
    "/currency/daily-claim": {
      "post": {
        "operationId": "post_currency_daily_claim",
        "tags": [
          "currency"
        ],
        "summary": "POST /currency/daily-claim",
        "description": "Request keys are observed in the implementation; unknown types are deliberately unconstrained. Server-side validation, membership, roles, privacy and rank checks still apply.",
        "x-velora-scopes": {},
        "x-captcha-required": false,
        "x-velora-legacy": false,
        "deprecated": false,
        "security": [
          {
            "UserToken": []
          }
        ],
        "parameters": [],
        "responses": {
          "2XX": {
            "description": "Endpoint-specific JSON, text, binary, redirect or empty success; see the guide. No exhaustive response schema is asserted."
          },
          "4XX": {
            "description": "Invalid input, authorization, scope, role, privacy, quota or rate-limit error"
          },
          "5XX": {
            "description": "Service or upstream failure"
          }
        }
      }
    },
    "/currency/credit-sub": {
      "get": {
        "operationId": "get_currency_credit_sub",
        "tags": [
          "currency"
        ],
        "summary": "GET /currency/credit-sub",
        "description": "Request keys are observed in the implementation; unknown types are deliberately unconstrained. Server-side validation, membership, roles, privacy and rank checks still apply.",
        "x-velora-scopes": {
          "CURRENCY_READ": 8192
        },
        "x-captcha-required": false,
        "x-velora-legacy": false,
        "deprecated": false,
        "security": [
          {
            "UserToken": []
          }
        ],
        "parameters": [],
        "responses": {
          "2XX": {
            "description": "Endpoint-specific JSON, text, binary, redirect or empty success; see the guide. No exhaustive response schema is asserted."
          },
          "4XX": {
            "description": "Invalid input, authorization, scope, role, privacy, quota or rate-limit error"
          },
          "5XX": {
            "description": "Service or upstream failure"
          }
        }
      }
    },
    "/currency/credit-sub/buy": {
      "post": {
        "operationId": "post_currency_credit_sub_buy",
        "tags": [
          "currency"
        ],
        "summary": "POST /currency/credit-sub/buy",
        "description": "Request keys are observed in the implementation; unknown types are deliberately unconstrained. Server-side validation, membership, roles, privacy and rank checks still apply.",
        "x-velora-scopes": {
          "CURRENCY_PAY": 1024
        },
        "x-captcha-required": false,
        "x-velora-legacy": false,
        "deprecated": false,
        "security": [
          {
            "UserToken": []
          }
        ],
        "parameters": [],
        "responses": {
          "2XX": {
            "description": "Endpoint-specific JSON, text, binary, redirect or empty success; see the guide. No exhaustive response schema is asserted."
          },
          "4XX": {
            "description": "Invalid input, authorization, scope, role, privacy, quota or rate-limit error"
          },
          "5XX": {
            "description": "Service or upstream failure"
          }
        },
        "requestBody": {
          "required": false,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "properties": {
                  "tier": {
                    "description": "Observed request key. See guide for nested formats and constraints."
                  },
                  "weeks": {
                    "description": "Observed request key. See guide for nested formats and constraints."
                  }
                },
                "additionalProperties": true
              }
            }
          }
        }
      }
    },
    "/currency/credit-sub/ack": {
      "post": {
        "operationId": "post_currency_credit_sub_ack",
        "tags": [
          "currency"
        ],
        "summary": "POST /currency/credit-sub/ack",
        "description": "Request keys are observed in the implementation; unknown types are deliberately unconstrained. Server-side validation, membership, roles, privacy and rank checks still apply.",
        "x-velora-scopes": {},
        "x-captcha-required": false,
        "x-velora-legacy": false,
        "deprecated": false,
        "security": [
          {
            "UserToken": []
          }
        ],
        "parameters": [],
        "responses": {
          "2XX": {
            "description": "Endpoint-specific JSON, text, binary, redirect or empty success; see the guide. No exhaustive response schema is asserted."
          },
          "4XX": {
            "description": "Invalid input, authorization, scope, role, privacy, quota or rate-limit error"
          },
          "5XX": {
            "description": "Service or upstream failure"
          }
        }
      }
    },
    "/currency/transfer-request": {
      "post": {
        "operationId": "post_currency_transfer_request",
        "tags": [
          "currency"
        ],
        "summary": "POST /currency/transfer-request",
        "description": "Request keys are observed in the implementation; unknown types are deliberately unconstrained. Server-side validation, membership, roles, privacy and rank checks still apply.",
        "x-velora-scopes": {
          "CURRENCY_PAY": 1024
        },
        "x-captcha-required": false,
        "x-velora-legacy": false,
        "deprecated": false,
        "security": [
          {
            "UserToken": []
          }
        ],
        "parameters": [],
        "responses": {
          "2XX": {
            "description": "Endpoint-specific JSON, text, binary, redirect or empty success; see the guide. No exhaustive response schema is asserted."
          },
          "4XX": {
            "description": "Invalid input, authorization, scope, role, privacy, quota or rate-limit error"
          },
          "5XX": {
            "description": "Service or upstream failure"
          }
        },
        "requestBody": {
          "required": false,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "properties": {
                  "amount": {
                    "description": "Observed request key. See guide for nested formats and constraints."
                  },
                  "note": {
                    "description": "Observed request key. See guide for nested formats and constraints."
                  },
                  "to": {
                    "description": "Observed request key. See guide for nested formats and constraints."
                  }
                },
                "additionalProperties": true
              }
            }
          }
        }
      }
    },
    "/currency/transfer-request/{id}": {
      "get": {
        "operationId": "get_currency_transfer_request_by_id",
        "tags": [
          "currency"
        ],
        "summary": "GET /currency/transfer-request/:id",
        "description": "Request keys are observed in the implementation; unknown types are deliberately unconstrained. Server-side validation, membership, roles, privacy and rank checks still apply.",
        "x-velora-scopes": {},
        "x-captcha-required": false,
        "x-velora-legacy": false,
        "deprecated": false,
        "security": [],
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "2XX": {
            "description": "Endpoint-specific JSON, text, binary, redirect or empty success; see the guide. No exhaustive response schema is asserted."
          },
          "4XX": {
            "description": "Invalid input, authorization, scope, role, privacy, quota or rate-limit error"
          },
          "5XX": {
            "description": "Service or upstream failure"
          }
        }
      }
    },
    "/currency/transfer-request/{id}/confirm": {
      "post": {
        "operationId": "post_currency_transfer_request_by_id_confirm",
        "tags": [
          "currency"
        ],
        "summary": "POST /currency/transfer-request/:id/confirm",
        "description": "Request keys are observed in the implementation; unknown types are deliberately unconstrained. Server-side validation, membership, roles, privacy and rank checks still apply.",
        "x-velora-scopes": {
          "CURRENCY_PAY": 1024
        },
        "x-captcha-required": true,
        "x-velora-legacy": false,
        "deprecated": false,
        "security": [
          {
            "UserToken": []
          }
        ],
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "2XX": {
            "description": "Endpoint-specific JSON, text, binary, redirect or empty success; see the guide. No exhaustive response schema is asserted."
          },
          "4XX": {
            "description": "Invalid input, authorization, scope, role, privacy, quota or rate-limit error"
          },
          "5XX": {
            "description": "Service or upstream failure"
          }
        },
        "requestBody": {
          "required": false,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "properties": {
                  "captcha_token": {
                    "description": "Observed request key. See guide for nested formats and constraints."
                  }
                },
                "additionalProperties": true
              }
            }
          }
        }
      }
    },
    "/currency/transfer-request/{id}/cancel": {
      "post": {
        "operationId": "post_currency_transfer_request_by_id_cancel",
        "tags": [
          "currency"
        ],
        "summary": "POST /currency/transfer-request/:id/cancel",
        "description": "Request keys are observed in the implementation; unknown types are deliberately unconstrained. Server-side validation, membership, roles, privacy and rank checks still apply.",
        "x-velora-scopes": {},
        "x-captcha-required": false,
        "x-velora-legacy": false,
        "deprecated": false,
        "security": [],
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "2XX": {
            "description": "Endpoint-specific JSON, text, binary, redirect or empty success; see the guide. No exhaustive response schema is asserted."
          },
          "4XX": {
            "description": "Invalid input, authorization, scope, role, privacy, quota or rate-limit error"
          },
          "5XX": {
            "description": "Service or upstream failure"
          }
        }
      }
    },
    "/badges/user/{username}": {
      "get": {
        "operationId": "get_badges_user_by_username",
        "tags": [
          "badges"
        ],
        "summary": "GET /badges/user/:username",
        "description": "Request keys are observed in the implementation; unknown types are deliberately unconstrained. Server-side validation, membership, roles, privacy and rank checks still apply.",
        "x-velora-scopes": {},
        "x-captcha-required": false,
        "x-velora-legacy": false,
        "deprecated": false,
        "security": [],
        "parameters": [
          {
            "name": "username",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "2XX": {
            "description": "Endpoint-specific JSON, text, binary, redirect or empty success; see the guide. No exhaustive response schema is asserted."
          },
          "4XX": {
            "description": "Invalid input, authorization, scope, role, privacy, quota or rate-limit error"
          },
          "5XX": {
            "description": "Service or upstream failure"
          }
        }
      }
    },
    "/badges/all": {
      "get": {
        "operationId": "get_badges_all",
        "tags": [
          "badges"
        ],
        "summary": "GET /badges/all",
        "description": "Request keys are observed in the implementation; unknown types are deliberately unconstrained. Server-side validation, membership, roles, privacy and rank checks still apply.",
        "x-velora-scopes": {},
        "x-captcha-required": false,
        "x-velora-legacy": false,
        "deprecated": false,
        "security": [],
        "parameters": [],
        "responses": {
          "2XX": {
            "description": "Endpoint-specific JSON, text, binary, redirect or empty success; see the guide. No exhaustive response schema is asserted."
          },
          "4XX": {
            "description": "Invalid input, authorization, scope, role, privacy, quota or rate-limit error"
          },
          "5XX": {
            "description": "Service or upstream failure"
          }
        }
      }
    },
    "/badges/{id}": {
      "get": {
        "operationId": "get_badges_by_id",
        "tags": [
          "badges"
        ],
        "summary": "GET /badges/:id",
        "description": "Request keys are observed in the implementation; unknown types are deliberately unconstrained. Server-side validation, membership, roles, privacy and rank checks still apply.",
        "x-velora-scopes": {},
        "x-captcha-required": false,
        "x-velora-legacy": false,
        "deprecated": false,
        "security": [],
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "2XX": {
            "description": "Endpoint-specific JSON, text, binary, redirect or empty success; see the guide. No exhaustive response schema is asserted."
          },
          "4XX": {
            "description": "Invalid input, authorization, scope, role, privacy, quota or rate-limit error"
          },
          "5XX": {
            "description": "Service or upstream failure"
          }
        }
      }
    },
    "/media/pfp": {
      "post": {
        "operationId": "post_media_pfp",
        "tags": [
          "media"
        ],
        "summary": "POST /media/pfp",
        "description": "Request keys are observed in the implementation; unknown types are deliberately unconstrained. Server-side validation, membership, roles, privacy and rank checks still apply.",
        "x-velora-scopes": {
          "ACCOUNT_WRITE": 8
        },
        "x-captcha-required": false,
        "x-velora-legacy": false,
        "deprecated": false,
        "security": [
          {
            "UserToken": []
          }
        ],
        "parameters": [],
        "responses": {
          "2XX": {
            "description": "Endpoint-specific JSON, text, binary, redirect or empty success; see the guide. No exhaustive response schema is asserted."
          },
          "4XX": {
            "description": "Invalid input, authorization, scope, role, privacy, quota or rate-limit error"
          },
          "5XX": {
            "description": "Service or upstream failure"
          }
        },
        "requestBody": {
          "required": false,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "properties": {
                  "crop": {
                    "description": "Observed request key. See guide for nested formats and constraints."
                  },
                  "data": {
                    "description": "Observed request key. See guide for nested formats and constraints."
                  }
                },
                "additionalProperties": true
              }
            },
            "multipart/form-data": {
              "schema": {
                "type": "object",
                "properties": {
                  "crop": {
                    "description": "Observed request key. See guide for nested formats and constraints."
                  },
                  "data": {
                    "description": "Observed request key. See guide for nested formats and constraints."
                  },
                  "file": {
                    "type": "string",
                    "format": "binary"
                  }
                },
                "additionalProperties": true
              }
            }
          }
        }
      },
      "delete": {
        "operationId": "delete_media_pfp",
        "tags": [
          "media"
        ],
        "summary": "DELETE /media/pfp",
        "description": "Request keys are observed in the implementation; unknown types are deliberately unconstrained. Server-side validation, membership, roles, privacy and rank checks still apply.",
        "x-velora-scopes": {
          "ACCOUNT_WRITE": 8
        },
        "x-captcha-required": false,
        "x-velora-legacy": false,
        "deprecated": false,
        "security": [
          {
            "UserToken": []
          }
        ],
        "parameters": [],
        "responses": {
          "2XX": {
            "description": "Endpoint-specific JSON, text, binary, redirect or empty success; see the guide. No exhaustive response schema is asserted."
          },
          "4XX": {
            "description": "Invalid input, authorization, scope, role, privacy, quota or rate-limit error"
          },
          "5XX": {
            "description": "Service or upstream failure"
          }
        }
      }
    },
    "/media/banner": {
      "post": {
        "operationId": "post_media_banner",
        "tags": [
          "media"
        ],
        "summary": "POST /media/banner",
        "description": "Request keys are observed in the implementation; unknown types are deliberately unconstrained. Server-side validation, membership, roles, privacy and rank checks still apply.",
        "x-velora-scopes": {
          "ACCOUNT_WRITE": 8
        },
        "x-captcha-required": false,
        "x-velora-legacy": false,
        "deprecated": false,
        "security": [
          {
            "UserToken": []
          }
        ],
        "parameters": [],
        "responses": {
          "2XX": {
            "description": "Endpoint-specific JSON, text, binary, redirect or empty success; see the guide. No exhaustive response schema is asserted."
          },
          "4XX": {
            "description": "Invalid input, authorization, scope, role, privacy, quota or rate-limit error"
          },
          "5XX": {
            "description": "Service or upstream failure"
          }
        },
        "requestBody": {
          "required": false,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "properties": {
                  "crop": {
                    "description": "Observed request key. See guide for nested formats and constraints."
                  },
                  "data": {
                    "description": "Observed request key. See guide for nested formats and constraints."
                  }
                },
                "additionalProperties": true
              }
            },
            "multipart/form-data": {
              "schema": {
                "type": "object",
                "properties": {
                  "crop": {
                    "description": "Observed request key. See guide for nested formats and constraints."
                  },
                  "data": {
                    "description": "Observed request key. See guide for nested formats and constraints."
                  },
                  "file": {
                    "type": "string",
                    "format": "binary"
                  }
                },
                "additionalProperties": true
              }
            }
          }
        }
      },
      "delete": {
        "operationId": "delete_media_banner",
        "tags": [
          "media"
        ],
        "summary": "DELETE /media/banner",
        "description": "Request keys are observed in the implementation; unknown types are deliberately unconstrained. Server-side validation, membership, roles, privacy and rank checks still apply.",
        "x-velora-scopes": {
          "ACCOUNT_WRITE": 8
        },
        "x-captcha-required": false,
        "x-velora-legacy": false,
        "deprecated": false,
        "security": [
          {
            "UserToken": []
          }
        ],
        "parameters": [],
        "responses": {
          "2XX": {
            "description": "Endpoint-specific JSON, text, binary, redirect or empty success; see the guide. No exhaustive response schema is asserted."
          },
          "4XX": {
            "description": "Invalid input, authorization, scope, role, privacy, quota or rate-limit error"
          },
          "5XX": {
            "description": "Service or upstream failure"
          }
        }
      }
    },
    "/media/image": {
      "post": {
        "operationId": "post_media_image",
        "tags": [
          "media"
        ],
        "summary": "POST /media/image",
        "description": "Request keys are observed in the implementation; unknown types are deliberately unconstrained. Server-side validation, membership, roles, privacy and rank checks still apply.",
        "x-velora-scopes": {
          "MEDIA_UPLOAD": 4096
        },
        "x-captcha-required": false,
        "x-velora-legacy": false,
        "deprecated": false,
        "security": [
          {
            "UserToken": []
          }
        ],
        "parameters": [],
        "responses": {
          "2XX": {
            "description": "Endpoint-specific JSON, text, binary, redirect or empty success; see the guide. No exhaustive response schema is asserted."
          },
          "4XX": {
            "description": "Invalid input, authorization, scope, role, privacy, quota or rate-limit error"
          },
          "5XX": {
            "description": "Service or upstream failure"
          }
        },
        "requestBody": {
          "required": false,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "properties": {
                  "data": {
                    "description": "Observed request key. See guide for nested formats and constraints."
                  }
                },
                "additionalProperties": true
              }
            },
            "multipart/form-data": {
              "schema": {
                "type": "object",
                "properties": {
                  "data": {
                    "description": "Observed request key. See guide for nested formats and constraints."
                  },
                  "file": {
                    "type": "string",
                    "format": "binary"
                  }
                },
                "additionalProperties": true
              }
            }
          }
        }
      }
    },
    "/media/audio": {
      "post": {
        "operationId": "post_media_audio",
        "tags": [
          "media"
        ],
        "summary": "POST /media/audio",
        "description": "Request keys are observed in the implementation; unknown types are deliberately unconstrained. Server-side validation, membership, roles, privacy and rank checks still apply.",
        "x-velora-scopes": {
          "MEDIA_UPLOAD": 4096
        },
        "x-captcha-required": false,
        "x-velora-legacy": false,
        "deprecated": false,
        "security": [
          {
            "UserToken": []
          }
        ],
        "parameters": [],
        "responses": {
          "2XX": {
            "description": "Endpoint-specific JSON, text, binary, redirect or empty success; see the guide. No exhaustive response schema is asserted."
          },
          "4XX": {
            "description": "Invalid input, authorization, scope, role, privacy, quota or rate-limit error"
          },
          "5XX": {
            "description": "Service or upstream failure"
          }
        },
        "requestBody": {
          "required": false,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "properties": {
                  "data": {
                    "description": "Observed request key. See guide for nested formats and constraints."
                  }
                },
                "additionalProperties": true
              }
            },
            "multipart/form-data": {
              "schema": {
                "type": "object",
                "properties": {
                  "data": {
                    "description": "Observed request key. See guide for nested formats and constraints."
                  },
                  "file": {
                    "type": "string",
                    "format": "binary"
                  }
                },
                "additionalProperties": true
              }
            }
          }
        }
      }
    },
    "/media/video/chunk": {
      "post": {
        "operationId": "post_media_video_chunk",
        "tags": [
          "media"
        ],
        "summary": "POST /media/video/chunk",
        "description": "Request keys are observed in the implementation; unknown types are deliberately unconstrained. Server-side validation, membership, roles, privacy and rank checks still apply.",
        "x-velora-scopes": {
          "MEDIA_UPLOAD": 4096
        },
        "x-captcha-required": false,
        "x-velora-legacy": false,
        "deprecated": false,
        "security": [
          {
            "UserToken": []
          }
        ],
        "parameters": [],
        "responses": {
          "2XX": {
            "description": "Endpoint-specific JSON, text, binary, redirect or empty success; see the guide. No exhaustive response schema is asserted."
          },
          "4XX": {
            "description": "Invalid input, authorization, scope, role, privacy, quota or rate-limit error"
          },
          "5XX": {
            "description": "Service or upstream failure"
          }
        },
        "requestBody": {
          "required": false,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "properties": {
                  "chunkIndex": {
                    "description": "Observed request key. See guide for nested formats and constraints."
                  },
                  "sessionId": {
                    "description": "Observed request key. See guide for nested formats and constraints."
                  },
                  "totalChunks": {
                    "description": "Observed request key. See guide for nested formats and constraints."
                  }
                },
                "additionalProperties": true
              }
            },
            "multipart/form-data": {
              "schema": {
                "type": "object",
                "properties": {
                  "chunkIndex": {
                    "description": "Observed request key. See guide for nested formats and constraints."
                  },
                  "sessionId": {
                    "description": "Observed request key. See guide for nested formats and constraints."
                  },
                  "totalChunks": {
                    "description": "Observed request key. See guide for nested formats and constraints."
                  },
                  "chunk": {
                    "type": "string",
                    "format": "binary"
                  }
                },
                "additionalProperties": true
              }
            }
          }
        }
      }
    },
    "/media/video/finalize": {
      "post": {
        "operationId": "post_media_video_finalize",
        "tags": [
          "media"
        ],
        "summary": "POST /media/video/finalize",
        "description": "Request keys are observed in the implementation; unknown types are deliberately unconstrained. Server-side validation, membership, roles, privacy and rank checks still apply.",
        "x-velora-scopes": {
          "MEDIA_UPLOAD": 4096
        },
        "x-captcha-required": false,
        "x-velora-legacy": false,
        "deprecated": false,
        "security": [
          {
            "UserToken": []
          }
        ],
        "parameters": [],
        "responses": {
          "2XX": {
            "description": "Endpoint-specific JSON, text, binary, redirect or empty success; see the guide. No exhaustive response schema is asserted."
          },
          "4XX": {
            "description": "Invalid input, authorization, scope, role, privacy, quota or rate-limit error"
          },
          "5XX": {
            "description": "Service or upstream failure"
          }
        },
        "requestBody": {
          "required": false,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "properties": {
                  "mimeType": {
                    "description": "Observed request key. See guide for nested formats and constraints."
                  },
                  "originalName": {
                    "description": "Observed request key. See guide for nested formats and constraints."
                  },
                  "sessionId": {
                    "description": "Observed request key. See guide for nested formats and constraints."
                  }
                },
                "additionalProperties": true
              }
            }
          }
        }
      }
    },
    "/media/video": {
      "post": {
        "operationId": "post_media_video",
        "tags": [
          "media"
        ],
        "summary": "POST /media/video",
        "description": "Request keys are observed in the implementation; unknown types are deliberately unconstrained. Server-side validation, membership, roles, privacy and rank checks still apply.",
        "x-velora-scopes": {
          "MEDIA_UPLOAD": 4096
        },
        "x-captcha-required": false,
        "x-velora-legacy": false,
        "deprecated": false,
        "security": [
          {
            "UserToken": []
          }
        ],
        "parameters": [],
        "responses": {
          "2XX": {
            "description": "Endpoint-specific JSON, text, binary, redirect or empty success; see the guide. No exhaustive response schema is asserted."
          },
          "4XX": {
            "description": "Invalid input, authorization, scope, role, privacy, quota or rate-limit error"
          },
          "5XX": {
            "description": "Service or upstream failure"
          }
        },
        "requestBody": {
          "required": false,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "properties": {
                  "data": {
                    "description": "Observed request key. See guide for nested formats and constraints."
                  }
                },
                "additionalProperties": true
              }
            }
          }
        }
      }
    },
    "/media/list": {
      "get": {
        "operationId": "get_media_list",
        "tags": [
          "media"
        ],
        "summary": "GET /media/list",
        "description": "Request keys are observed in the implementation; unknown types are deliberately unconstrained. Server-side validation, membership, roles, privacy and rank checks still apply.",
        "x-velora-scopes": {},
        "x-captcha-required": false,
        "x-velora-legacy": false,
        "deprecated": false,
        "security": [
          {
            "UserToken": []
          }
        ],
        "parameters": [],
        "responses": {
          "2XX": {
            "description": "Endpoint-specific JSON, text, binary, redirect or empty success; see the guide. No exhaustive response schema is asserted."
          },
          "4XX": {
            "description": "Invalid input, authorization, scope, role, privacy, quota or rate-limit error"
          },
          "5XX": {
            "description": "Service or upstream failure"
          }
        }
      }
    },
    "/media/{id}": {
      "delete": {
        "operationId": "delete_media_by_id",
        "tags": [
          "media"
        ],
        "summary": "DELETE /media/:id",
        "description": "Request keys are observed in the implementation; unknown types are deliberately unconstrained. Server-side validation, membership, roles, privacy and rank checks still apply.",
        "x-velora-scopes": {},
        "x-captcha-required": false,
        "x-velora-legacy": false,
        "deprecated": false,
        "security": [
          {
            "UserToken": []
          }
        ],
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "2XX": {
            "description": "Endpoint-specific JSON, text, binary, redirect or empty success; see the guide. No exhaustive response schema is asserted."
          },
          "4XX": {
            "description": "Invalid input, authorization, scope, role, privacy, quota or rate-limit error"
          },
          "5XX": {
            "description": "Service or upstream failure"
          }
        }
      }
    },
    "/account/notifications": {
      "get": {
        "operationId": "get_account_notifications",
        "tags": [
          "notifications"
        ],
        "summary": "GET /account/notifications",
        "description": "Newest first. Query unread=1 (only unread), category (one category key), cursor (the last id you got, for the next page), limit (up to 50). Returns {notifications: [{id, category, kind, title, body, link, icon, actor: {username, pfp_url} | null, data, read, read_at, created_at}], next_cursor, unread}. title and body are plain text with **bold** as the only markup; render it yourself, never as HTML. Request keys are observed in the implementation; unknown types are deliberately unconstrained. Server-side validation, membership, roles, privacy and rank checks still apply.",
        "x-velora-scopes": {},
        "x-captcha-required": false,
        "x-velora-legacy": false,
        "deprecated": false,
        "security": [
          {
            "UserToken": []
          }
        ],
        "parameters": [
          {
            "name": "unread",
            "in": "query",
            "required": false,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "category",
            "in": "query",
            "required": false,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "cursor",
            "in": "query",
            "required": false,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "limit",
            "in": "query",
            "required": false,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "2XX": {
            "description": "Endpoint-specific JSON, text, binary, redirect or empty success; see the guide. No exhaustive response schema is asserted."
          },
          "4XX": {
            "description": "Invalid input, authorization, scope, role, privacy, quota or rate-limit error"
          },
          "5XX": {
            "description": "Service or upstream failure"
          }
        }
      }
    },
    "/account/notifications/unread-count": {
      "get": {
        "operationId": "get_account_notifications_unread_count",
        "tags": [
          "notifications"
        ],
        "summary": "GET /account/notifications/unread-count",
        "description": "Returns {unread}: the number for the bell. Request keys are observed in the implementation; unknown types are deliberately unconstrained. Server-side validation, membership, roles, privacy and rank checks still apply.",
        "x-velora-scopes": {},
        "x-captcha-required": false,
        "x-velora-legacy": false,
        "deprecated": false,
        "security": [
          {
            "UserToken": []
          }
        ],
        "parameters": [],
        "responses": {
          "2XX": {
            "description": "Endpoint-specific JSON, text, binary, redirect or empty success; see the guide. No exhaustive response schema is asserted."
          },
          "4XX": {
            "description": "Invalid input, authorization, scope, role, privacy, quota or rate-limit error"
          },
          "5XX": {
            "description": "Service or upstream failure"
          }
        }
      }
    },
    "/account/notifications/read": {
      "post": {
        "operationId": "post_account_notifications_read",
        "tags": [
          "notifications"
        ],
        "summary": "POST /account/notifications/read",
        "description": "Body {ids: [..]} or {all: true}. Returns {success, unread}. Your other sockets get notifications_updated. Request keys are observed in the implementation; unknown types are deliberately unconstrained. Server-side validation, membership, roles, privacy and rank checks still apply.",
        "x-velora-scopes": {},
        "x-captcha-required": false,
        "x-velora-legacy": false,
        "deprecated": false,
        "security": [
          {
            "UserToken": []
          }
        ],
        "parameters": [],
        "responses": {
          "2XX": {
            "description": "Endpoint-specific JSON, text, binary, redirect or empty success; see the guide. No exhaustive response schema is asserted."
          },
          "4XX": {
            "description": "Invalid input, authorization, scope, role, privacy, quota or rate-limit error"
          },
          "5XX": {
            "description": "Service or upstream failure"
          }
        },
        "requestBody": {
          "required": false,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "properties": {
                  "all": {
                    "description": "Observed request key. See guide for nested formats and constraints."
                  },
                  "ids": {
                    "description": "Observed request key. See guide for nested formats and constraints."
                  }
                },
                "additionalProperties": true
              }
            }
          }
        }
      }
    },
    "/account/notifications/unread": {
      "post": {
        "operationId": "post_account_notifications_unread",
        "tags": [
          "notifications"
        ],
        "summary": "POST /account/notifications/unread",
        "description": "Body {ids: [..]}. Marks them unread again. Returns {success, unread}. Request keys are observed in the implementation; unknown types are deliberately unconstrained. Server-side validation, membership, roles, privacy and rank checks still apply.",
        "x-velora-scopes": {},
        "x-captcha-required": false,
        "x-velora-legacy": false,
        "deprecated": false,
        "security": [
          {
            "UserToken": []
          }
        ],
        "parameters": [],
        "responses": {
          "2XX": {
            "description": "Endpoint-specific JSON, text, binary, redirect or empty success; see the guide. No exhaustive response schema is asserted."
          },
          "4XX": {
            "description": "Invalid input, authorization, scope, role, privacy, quota or rate-limit error"
          },
          "5XX": {
            "description": "Service or upstream failure"
          }
        },
        "requestBody": {
          "required": false,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "properties": {
                  "ids": {
                    "description": "Observed request key. See guide for nested formats and constraints."
                  }
                },
                "additionalProperties": true
              }
            }
          }
        }
      }
    },
    "/account/notifications/{id}": {
      "delete": {
        "operationId": "delete_account_notifications_by_id",
        "tags": [
          "notifications"
        ],
        "summary": "DELETE /account/notifications/:id",
        "description": "Deletes one of your notifications. Returns {success, unread}, or 404 not_found. Request keys are observed in the implementation; unknown types are deliberately unconstrained. Server-side validation, membership, roles, privacy and rank checks still apply.",
        "x-velora-scopes": {},
        "x-captcha-required": false,
        "x-velora-legacy": false,
        "deprecated": false,
        "security": [
          {
            "UserToken": []
          }
        ],
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "2XX": {
            "description": "Endpoint-specific JSON, text, binary, redirect or empty success; see the guide. No exhaustive response schema is asserted."
          },
          "4XX": {
            "description": "Invalid input, authorization, scope, role, privacy, quota or rate-limit error"
          },
          "5XX": {
            "description": "Service or upstream failure"
          }
        }
      }
    },
    "/account/notification-settings": {
      "get": {
        "operationId": "get_account_notification_settings",
        "tags": [
          "notifications"
        ],
        "summary": "GET /account/notification-settings",
        "description": "Returns {categories: [{key, label, description, icon, locked, staff, email, list}]} in settings order. locked categories (system, moderation) are always on. staff categories only exist for staff accounts. list = it lands in the bell and on your devices; email = it is also emailed (throttled). Request keys are observed in the implementation; unknown types are deliberately unconstrained. Server-side validation, membership, roles, privacy and rank checks still apply.",
        "x-velora-scopes": {},
        "x-captcha-required": false,
        "x-velora-legacy": false,
        "deprecated": false,
        "security": [
          {
            "UserToken": []
          }
        ],
        "parameters": [],
        "responses": {
          "2XX": {
            "description": "Endpoint-specific JSON, text, binary, redirect or empty success; see the guide. No exhaustive response schema is asserted."
          },
          "4XX": {
            "description": "Invalid input, authorization, scope, role, privacy, quota or rate-limit error"
          },
          "5XX": {
            "description": "Service or upstream failure"
          }
        }
      },
      "patch": {
        "operationId": "patch_account_notification_settings",
        "tags": [
          "notifications"
        ],
        "summary": "PATCH /account/notification-settings",
        "description": "Body {prefs: {<category>: {email?: bool, list?: bool}}}. Locked and unknown categories are ignored. Returns {success, categories} like the GET. Request keys are observed in the implementation; unknown types are deliberately unconstrained. Server-side validation, membership, roles, privacy and rank checks still apply.",
        "x-velora-scopes": {},
        "x-captcha-required": false,
        "x-velora-legacy": false,
        "deprecated": false,
        "security": [
          {
            "UserToken": []
          }
        ],
        "parameters": [],
        "responses": {
          "2XX": {
            "description": "Endpoint-specific JSON, text, binary, redirect or empty success; see the guide. No exhaustive response schema is asserted."
          },
          "4XX": {
            "description": "Invalid input, authorization, scope, role, privacy, quota or rate-limit error"
          },
          "5XX": {
            "description": "Service or upstream failure"
          }
        },
        "requestBody": {
          "required": false,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "properties": {
                  "prefs": {
                    "description": "Observed request key. See guide for nested formats and constraints."
                  }
                },
                "additionalProperties": true
              }
            }
          }
        }
      }
    },
    "/notifications": {
      "get": {
        "operationId": "get_notifications",
        "tags": [
          "notifications"
        ],
        "summary": "GET /notifications",
        "description": "Older feed (the Scratch/PenguinMod extension uses it): your unread notifications, newest first, at most 50, as {notifications: [{id, type, category, title, body, data, created_at}]} with the **bold** markers removed. New clients use GET /account/notifications. Request keys are observed in the implementation; unknown types are deliberately unconstrained. Server-side validation, membership, roles, privacy and rank checks still apply.",
        "x-velora-scopes": {},
        "x-captcha-required": false,
        "x-velora-legacy": false,
        "deprecated": false,
        "security": [
          {
            "UserToken": []
          }
        ],
        "parameters": [],
        "responses": {
          "2XX": {
            "description": "Endpoint-specific JSON, text, binary, redirect or empty success; see the guide. No exhaustive response schema is asserted."
          },
          "4XX": {
            "description": "Invalid input, authorization, scope, role, privacy, quota or rate-limit error"
          },
          "5XX": {
            "description": "Service or upstream failure"
          }
        }
      }
    },
    "/notifications/count": {
      "get": {
        "operationId": "get_notifications_count",
        "tags": [
          "notifications"
        ],
        "summary": "GET /notifications/count",
        "description": "Older feed: {count} of unread notifications. Same number as GET /account/notifications/unread-count. Request keys are observed in the implementation; unknown types are deliberately unconstrained. Server-side validation, membership, roles, privacy and rank checks still apply.",
        "x-velora-scopes": {},
        "x-captcha-required": false,
        "x-velora-legacy": false,
        "deprecated": false,
        "security": [
          {
            "UserToken": []
          }
        ],
        "parameters": [],
        "responses": {
          "2XX": {
            "description": "Endpoint-specific JSON, text, binary, redirect or empty success; see the guide. No exhaustive response schema is asserted."
          },
          "4XX": {
            "description": "Invalid input, authorization, scope, role, privacy, quota or rate-limit error"
          },
          "5XX": {
            "description": "Service or upstream failure"
          }
        }
      }
    },
    "/notifications/read-all": {
      "patch": {
        "operationId": "patch_notifications_read_all",
        "tags": [
          "notifications"
        ],
        "summary": "PATCH /notifications/read-all",
        "description": "Older feed: marks every notification read. Same as POST /account/notifications/read {all: true}. Request keys are observed in the implementation; unknown types are deliberately unconstrained. Server-side validation, membership, roles, privacy and rank checks still apply.",
        "x-velora-scopes": {},
        "x-captcha-required": false,
        "x-velora-legacy": false,
        "deprecated": false,
        "security": [
          {
            "UserToken": []
          }
        ],
        "parameters": [],
        "responses": {
          "2XX": {
            "description": "Endpoint-specific JSON, text, binary, redirect or empty success; see the guide. No exhaustive response schema is asserted."
          },
          "4XX": {
            "description": "Invalid input, authorization, scope, role, privacy, quota or rate-limit error"
          },
          "5XX": {
            "description": "Service or upstream failure"
          }
        }
      }
    },
    "/notifications/{id}": {
      "delete": {
        "operationId": "delete_notifications_by_id",
        "tags": [
          "notifications"
        ],
        "summary": "DELETE /notifications/:id",
        "description": "Older feed: deletes one notification. Always answers {success: true}. Request keys are observed in the implementation; unknown types are deliberately unconstrained. Server-side validation, membership, roles, privacy and rank checks still apply.",
        "x-velora-scopes": {},
        "x-captcha-required": false,
        "x-velora-legacy": false,
        "deprecated": false,
        "security": [
          {
            "UserToken": []
          }
        ],
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "2XX": {
            "description": "Endpoint-specific JSON, text, binary, redirect or empty success; see the guide. No exhaustive response schema is asserted."
          },
          "4XX": {
            "description": "Invalid input, authorization, scope, role, privacy, quota or rate-limit error"
          },
          "5XX": {
            "description": "Service or upstream failure"
          }
        }
      }
    },
    "/store/game/{id}": {
      "get": {
        "operationId": "get_store_game_by_id",
        "tags": [
          "store"
        ],
        "summary": "GET /store/game/:id",
        "description": "Request keys are observed in the implementation; unknown types are deliberately unconstrained. Server-side validation, membership, roles, privacy and rank checks still apply.",
        "x-velora-scopes": {},
        "x-captcha-required": false,
        "x-velora-legacy": false,
        "deprecated": false,
        "security": [],
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "2XX": {
            "description": "Endpoint-specific JSON, text, binary, redirect or empty success; see the guide. No exhaustive response schema is asserted."
          },
          "4XX": {
            "description": "Invalid input, authorization, scope, role, privacy, quota or rate-limit error"
          },
          "5XX": {
            "description": "Service or upstream failure"
          }
        }
      }
    },
    "/store/game/{id}/buy": {
      "post": {
        "operationId": "post_store_game_by_id_buy",
        "tags": [
          "store"
        ],
        "summary": "POST /store/game/:id/buy",
        "description": "Request keys are observed in the implementation; unknown types are deliberately unconstrained. Server-side validation, membership, roles, privacy and rank checks still apply.",
        "x-velora-scopes": {
          "CURRENCY_PAY": 1024
        },
        "x-captcha-required": true,
        "x-velora-legacy": false,
        "deprecated": false,
        "security": [
          {
            "UserToken": []
          }
        ],
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "2XX": {
            "description": "Endpoint-specific JSON, text, binary, redirect or empty success; see the guide. No exhaustive response schema is asserted."
          },
          "4XX": {
            "description": "Invalid input, authorization, scope, role, privacy, quota or rate-limit error"
          },
          "5XX": {
            "description": "Service or upstream failure"
          }
        },
        "requestBody": {
          "required": false,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "properties": {
                  "price": {
                    "description": "Observed request key. See guide for nested formats and constraints."
                  },
                  "captcha_token": {
                    "description": "Observed request key. See guide for nested formats and constraints."
                  }
                },
                "additionalProperties": true
              }
            }
          }
        }
      }
    },
    "/store/game/{id}/refund": {
      "post": {
        "operationId": "post_store_game_by_id_refund",
        "tags": [
          "store"
        ],
        "summary": "POST /store/game/:id/refund",
        "description": "Request keys are observed in the implementation; unknown types are deliberately unconstrained. Server-side validation, membership, roles, privacy and rank checks still apply.",
        "x-velora-scopes": {
          "CURRENCY_PAY": 1024
        },
        "x-captcha-required": false,
        "x-velora-legacy": false,
        "deprecated": false,
        "security": [
          {
            "UserToken": []
          }
        ],
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "2XX": {
            "description": "Endpoint-specific JSON, text, binary, redirect or empty success; see the guide. No exhaustive response schema is asserted."
          },
          "4XX": {
            "description": "Invalid input, authorization, scope, role, privacy, quota or rate-limit error"
          },
          "5XX": {
            "description": "Service or upstream failure"
          }
        }
      }
    },
    "/api/report/search-users": {
      "get": {
        "operationId": "get_api_report_search_users",
        "tags": [
          "reports"
        ],
        "summary": "GET /api/report/search-users",
        "description": "Request keys are observed in the implementation; unknown types are deliberately unconstrained. Server-side validation, membership, roles, privacy and rank checks still apply.",
        "x-velora-scopes": {},
        "x-captcha-required": false,
        "x-velora-legacy": false,
        "deprecated": false,
        "security": [],
        "parameters": [
          {
            "name": "q",
            "in": "query",
            "required": false,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "2XX": {
            "description": "Endpoint-specific JSON, text, binary, redirect or empty success; see the guide. No exhaustive response schema is asserted."
          },
          "4XX": {
            "description": "Invalid input, authorization, scope, role, privacy, quota or rate-limit error"
          },
          "5XX": {
            "description": "Service or upstream failure"
          }
        }
      }
    },
    "/api/report/submit": {
      "post": {
        "operationId": "post_api_report_submit",
        "tags": [
          "reports"
        ],
        "summary": "POST /api/report/submit",
        "description": "Request keys are observed in the implementation; unknown types are deliberately unconstrained. Server-side validation, membership, roles, privacy and rank checks still apply.",
        "x-velora-scopes": {},
        "x-captcha-required": false,
        "x-velora-legacy": false,
        "deprecated": false,
        "security": [],
        "parameters": [],
        "responses": {
          "2XX": {
            "description": "Endpoint-specific JSON, text, binary, redirect or empty success; see the guide. No exhaustive response schema is asserted."
          },
          "4XX": {
            "description": "Invalid input, authorization, scope, role, privacy, quota or rate-limit error"
          },
          "5XX": {
            "description": "Service or upstream failure"
          }
        },
        "requestBody": {
          "required": false,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "properties": {
                  "category": {
                    "description": "Observed request key. See guide for nested formats and constraints."
                  },
                  "contact": {
                    "description": "Observed request key. See guide for nested formats and constraints."
                  },
                  "description": {
                    "description": "Observed request key. See guide for nested formats and constraints."
                  },
                  "location": {
                    "description": "Observed request key. See guide for nested formats and constraints."
                  },
                  "reported_id": {
                    "description": "Observed request key. See guide for nested formats and constraints."
                  }
                },
                "additionalProperties": true
              }
            },
            "multipart/form-data": {
              "schema": {
                "type": "object",
                "properties": {
                  "category": {
                    "description": "Observed request key. See guide for nested formats and constraints."
                  },
                  "contact": {
                    "description": "Observed request key. See guide for nested formats and constraints."
                  },
                  "description": {
                    "description": "Observed request key. See guide for nested formats and constraints."
                  },
                  "location": {
                    "description": "Observed request key. See guide for nested formats and constraints."
                  },
                  "reported_id": {
                    "description": "Observed request key. See guide for nested formats and constraints."
                  },
                  "evidence": {
                    "type": "string",
                    "format": "binary"
                  }
                },
                "additionalProperties": true
              }
            }
          }
        }
      }
    },
    "/api/report/ban-guest-ip": {
      "get": {
        "operationId": "get_api_report_ban_guest_ip",
        "tags": [
          "reports"
        ],
        "summary": "GET /api/report/ban-guest-ip",
        "description": "Request keys are observed in the implementation; unknown types are deliberately unconstrained. Server-side validation, membership, roles, privacy and rank checks still apply.",
        "x-velora-scopes": {},
        "x-captcha-required": false,
        "x-velora-legacy": false,
        "deprecated": false,
        "security": [],
        "parameters": [
          {
            "name": "token",
            "in": "query",
            "required": false,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "2XX": {
            "description": "Endpoint-specific JSON, text, binary, redirect or empty success; see the guide. No exhaustive response schema is asserted."
          },
          "4XX": {
            "description": "Invalid input, authorization, scope, role, privacy, quota or rate-limit error"
          },
          "5XX": {
            "description": "Service or upstream failure"
          }
        }
      }
    },
    "/api/feedback/{type}/submit": {
      "post": {
        "operationId": "post_api_feedback_by_type_submit",
        "tags": [
          "feedback"
        ],
        "summary": "POST /api/feedback/:type/submit",
        "description": "Request keys are observed in the implementation; unknown types are deliberately unconstrained. Server-side validation, membership, roles, privacy and rank checks still apply.",
        "x-velora-scopes": {},
        "x-captcha-required": false,
        "x-velora-legacy": false,
        "deprecated": false,
        "security": [],
        "parameters": [
          {
            "name": "type",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "2XX": {
            "description": "Endpoint-specific JSON, text, binary, redirect or empty success; see the guide. No exhaustive response schema is asserted."
          },
          "4XX": {
            "description": "Invalid input, authorization, scope, role, privacy, quota or rate-limit error"
          },
          "5XX": {
            "description": "Service or upstream failure"
          }
        },
        "requestBody": {
          "required": false,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "properties": {
                  "category": {
                    "description": "Observed request key. See guide for nested formats and constraints."
                  },
                  "description": {
                    "description": "Observed request key. See guide for nested formats and constraints."
                  },
                  "location": {
                    "description": "Observed request key. See guide for nested formats and constraints."
                  },
                  "title": {
                    "description": "Observed request key. See guide for nested formats and constraints."
                  }
                },
                "additionalProperties": true
              }
            }
          }
        }
      }
    },
    "/api/support/submit": {
      "post": {
        "operationId": "post_api_support_submit",
        "tags": [
          "feedback"
        ],
        "summary": "POST /api/support/submit",
        "description": "Support form (no account needed; an optional Bearer token links the request to that account). The request is emailed to Nookara staff with Reply-To set to the given email. Rate limit: 1 request per IP per hour (429 with Retry-After). IPs banned from the support form get a generic 403.",
        "x-velora-scopes": {},
        "x-captcha-required": false,
        "x-velora-legacy": false,
        "deprecated": false,
        "security": [],
        "parameters": [],
        "responses": {
          "200": {
            "description": "Sent",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "success": {
                      "type": "boolean"
                    },
                    "ticket": {
                      "type": "string",
                      "example": "VS-7KQ2MZ4P"
                    }
                  }
                }
              }
            }
          },
          "400": {
            "description": "Missing or invalid field (error is a readable sentence)"
          },
          "403": {
            "description": "This IP is banned from the support form"
          },
          "429": {
            "description": "Rate limited: one request per IP per hour",
            "headers": {
              "Retry-After": {
                "schema": {
                  "type": "integer"
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "error": {
                      "type": "string"
                    },
                    "retry_after": {
                      "type": "integer",
                      "description": "seconds"
                    }
                  }
                }
              }
            }
          },
          "5XX": {
            "description": "Service or upstream failure"
          }
        },
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "required": [
                  "name",
                  "email",
                  "category",
                  "subject",
                  "message"
                ],
                "properties": {
                  "name": {
                    "type": "string",
                    "maxLength": 80,
                    "description": "Name to reply to"
                  },
                  "email": {
                    "type": "string",
                    "format": "email",
                    "maxLength": 254,
                    "description": "Reply address"
                  },
                  "category": {
                    "type": "string",
                    "enum": [
                      "Account or sign-in",
                      "Billing, credits or Pro",
                      "Ember (chat)",
                      "Hyperfocus launcher",
                      "Developers and the API",
                      "Privacy or data request",
                      "Something else"
                    ]
                  },
                  "subject": {
                    "type": "string",
                    "maxLength": 120
                  },
                  "message": {
                    "type": "string",
                    "minLength": 10,
                    "maxLength": 4000
                  },
                  "username": {
                    "type": "string",
                    "maxLength": 40,
                    "description": "Optional Nookara username"
                  }
                },
                "additionalProperties": true
              }
            }
          }
        }
      }
    },
    "/hyperfocus/profile/{username}": {
      "get": {
        "operationId": "get_hyperfocus_profile_by_username",
        "tags": [
          "hyperfocus"
        ],
        "summary": "GET /hyperfocus/profile/:username",
        "description": "Request keys are observed in the implementation; unknown types are deliberately unconstrained. Server-side validation, membership, roles, privacy and rank checks still apply.",
        "x-velora-scopes": {},
        "x-captcha-required": false,
        "x-velora-legacy": false,
        "deprecated": false,
        "security": [],
        "parameters": [
          {
            "name": "username",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "2XX": {
            "description": "Endpoint-specific JSON, text, binary, redirect or empty success; see the guide. No exhaustive response schema is asserted."
          },
          "4XX": {
            "description": "Invalid input, authorization, scope, role, privacy, quota or rate-limit error"
          },
          "5XX": {
            "description": "Service or upstream failure"
          }
        }
      }
    },
    "/hyperfocus/achievements/stats/{game}": {
      "get": {
        "operationId": "get_hyperfocus_achievements_stats_by_game",
        "tags": [
          "hyperfocus"
        ],
        "summary": "GET /hyperfocus/achievements/stats/:game",
        "description": "Request keys are observed in the implementation; unknown types are deliberately unconstrained. Server-side validation, membership, roles, privacy and rank checks still apply.",
        "x-velora-scopes": {},
        "x-captcha-required": false,
        "x-velora-legacy": false,
        "deprecated": false,
        "security": [],
        "parameters": [
          {
            "name": "game",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "2XX": {
            "description": "Endpoint-specific JSON, text, binary, redirect or empty success; see the guide. No exhaustive response schema is asserted."
          },
          "4XX": {
            "description": "Invalid input, authorization, scope, role, privacy, quota or rate-limit error"
          },
          "5XX": {
            "description": "Service or upstream failure"
          }
        }
      }
    },
    "/hyperfocus/admin/remote/{username}": {
      "get": {
        "operationId": "get_hyperfocus_admin_remote_by_username",
        "tags": [
          "hyperfocus"
        ],
        "summary": "GET /hyperfocus/admin/remote/:username",
        "description": "Staff authorization required. Request keys are observed in the implementation; unknown types are deliberately unconstrained. Server-side validation, membership, roles, privacy and rank checks still apply.",
        "x-velora-scopes": {},
        "x-captcha-required": false,
        "x-velora-legacy": false,
        "deprecated": false,
        "security": [
          {
            "UserToken": []
          }
        ],
        "parameters": [
          {
            "name": "username",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "2XX": {
            "description": "Endpoint-specific JSON, text, binary, redirect or empty success; see the guide. No exhaustive response schema is asserted."
          },
          "4XX": {
            "description": "Invalid input, authorization, scope, role, privacy, quota or rate-limit error"
          },
          "5XX": {
            "description": "Service or upstream failure"
          }
        }
      }
    },
    "/hyperfocus/admin/close": {
      "post": {
        "operationId": "post_hyperfocus_admin_close",
        "tags": [
          "hyperfocus"
        ],
        "summary": "POST /hyperfocus/admin/close",
        "description": "Staff authorization required. Request keys are observed in the implementation; unknown types are deliberately unconstrained. Server-side validation, membership, roles, privacy and rank checks still apply.",
        "x-velora-scopes": {},
        "x-captcha-required": false,
        "x-velora-legacy": false,
        "deprecated": false,
        "security": [
          {
            "UserToken": []
          }
        ],
        "parameters": [],
        "responses": {
          "2XX": {
            "description": "Endpoint-specific JSON, text, binary, redirect or empty success; see the guide. No exhaustive response schema is asserted."
          },
          "4XX": {
            "description": "Invalid input, authorization, scope, role, privacy, quota or rate-limit error"
          },
          "5XX": {
            "description": "Service or upstream failure"
          }
        },
        "requestBody": {
          "required": false,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "properties": {
                  "username": {
                    "description": "Observed request key. See guide for nested formats and constraints."
                  }
                },
                "additionalProperties": true
              }
            }
          }
        }
      }
    },
    "/hyperfocus/friends": {
      "get": {
        "operationId": "get_hyperfocus_friends",
        "tags": [
          "hyperfocus"
        ],
        "summary": "GET /hyperfocus/friends",
        "description": "Request keys are observed in the implementation; unknown types are deliberately unconstrained. Server-side validation, membership, roles, privacy and rank checks still apply.",
        "x-velora-scopes": {
          "FRIENDS_READ": 256
        },
        "x-captcha-required": false,
        "x-velora-legacy": false,
        "deprecated": false,
        "security": [
          {
            "UserToken": []
          }
        ],
        "parameters": [],
        "responses": {
          "2XX": {
            "description": "Endpoint-specific JSON, text, binary, redirect or empty success; see the guide. No exhaustive response schema is asserted."
          },
          "4XX": {
            "description": "Invalid input, authorization, scope, role, privacy, quota or rate-limit error"
          },
          "5XX": {
            "description": "Service or upstream failure"
          }
        }
      }
    },
    "/hyperfocus/bug-report": {
      "post": {
        "operationId": "post_hyperfocus_bug_report",
        "tags": [
          "hyperfocus"
        ],
        "summary": "POST /hyperfocus/bug-report",
        "description": "Request keys are observed in the implementation; unknown types are deliberately unconstrained. Server-side validation, membership, roles, privacy and rank checks still apply.",
        "x-velora-scopes": {},
        "x-captcha-required": false,
        "x-velora-legacy": false,
        "deprecated": false,
        "security": [],
        "parameters": [],
        "responses": {
          "2XX": {
            "description": "Endpoint-specific JSON, text, binary, redirect or empty success; see the guide. No exhaustive response schema is asserted."
          },
          "4XX": {
            "description": "Invalid input, authorization, scope, role, privacy, quota or rate-limit error"
          },
          "5XX": {
            "description": "Service or upstream failure"
          }
        }
      }
    },
    "/admin/user/{username}/rank": {
      "patch": {
        "operationId": "patch_admin_user_by_username_rank",
        "tags": [
          "staff"
        ],
        "summary": "PATCH /admin/user/:username/rank",
        "description": "Staff authorization required. Request keys are observed in the implementation; unknown types are deliberately unconstrained. Server-side validation, membership, roles, privacy and rank checks still apply.",
        "x-velora-scopes": {},
        "x-captcha-required": false,
        "x-velora-legacy": false,
        "deprecated": false,
        "security": [
          {
            "UserToken": []
          }
        ],
        "parameters": [
          {
            "name": "username",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "2XX": {
            "description": "Endpoint-specific JSON, text, binary, redirect or empty success; see the guide. No exhaustive response schema is asserted."
          },
          "4XX": {
            "description": "Invalid input, authorization, scope, role, privacy, quota or rate-limit error"
          },
          "5XX": {
            "description": "Service or upstream failure"
          }
        },
        "requestBody": {
          "required": false,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "properties": {
                  "rank": {
                    "description": "Observed request key. See guide for nested formats and constraints."
                  }
                },
                "additionalProperties": true
              }
            }
          }
        }
      }
    },
    "/admin/user/{username}/credits": {
      "patch": {
        "operationId": "patch_admin_user_by_username_credits",
        "tags": [
          "staff"
        ],
        "summary": "PATCH /admin/user/:username/credits",
        "description": "Staff authorization required. Request keys are observed in the implementation; unknown types are deliberately unconstrained. Server-side validation, membership, roles, privacy and rank checks still apply.",
        "x-velora-scopes": {},
        "x-captcha-required": false,
        "x-velora-legacy": false,
        "deprecated": false,
        "security": [
          {
            "UserToken": []
          }
        ],
        "parameters": [
          {
            "name": "username",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "2XX": {
            "description": "Endpoint-specific JSON, text, binary, redirect or empty success; see the guide. No exhaustive response schema is asserted."
          },
          "4XX": {
            "description": "Invalid input, authorization, scope, role, privacy, quota or rate-limit error"
          },
          "5XX": {
            "description": "Service or upstream failure"
          }
        },
        "requestBody": {
          "required": false,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "properties": {
                  "amount": {
                    "description": "Observed request key. See guide for nested formats and constraints."
                  },
                  "note": {
                    "description": "Observed request key. See guide for nested formats and constraints."
                  }
                },
                "additionalProperties": true
              }
            }
          }
        }
      }
    },
    "/admin/badges": {
      "get": {
        "operationId": "get_admin_badges",
        "tags": [
          "staff"
        ],
        "summary": "GET /admin/badges",
        "description": "Staff authorization required. Request keys are observed in the implementation; unknown types are deliberately unconstrained. Server-side validation, membership, roles, privacy and rank checks still apply.",
        "x-velora-scopes": {},
        "x-captcha-required": false,
        "x-velora-legacy": false,
        "deprecated": false,
        "security": [
          {
            "UserToken": []
          }
        ],
        "parameters": [],
        "responses": {
          "2XX": {
            "description": "Endpoint-specific JSON, text, binary, redirect or empty success; see the guide. No exhaustive response schema is asserted."
          },
          "4XX": {
            "description": "Invalid input, authorization, scope, role, privacy, quota or rate-limit error"
          },
          "5XX": {
            "description": "Service or upstream failure"
          }
        }
      },
      "post": {
        "operationId": "post_admin_badges",
        "tags": [
          "staff"
        ],
        "summary": "POST /admin/badges",
        "description": "Staff authorization required. Request keys are observed in the implementation; unknown types are deliberately unconstrained. Server-side validation, membership, roles, privacy and rank checks still apply.",
        "x-velora-scopes": {},
        "x-captcha-required": false,
        "x-velora-legacy": false,
        "deprecated": false,
        "security": [
          {
            "UserToken": []
          }
        ],
        "parameters": [],
        "responses": {
          "2XX": {
            "description": "Endpoint-specific JSON, text, binary, redirect or empty success; see the guide. No exhaustive response schema is asserted."
          },
          "4XX": {
            "description": "Invalid input, authorization, scope, role, privacy, quota or rate-limit error"
          },
          "5XX": {
            "description": "Service or upstream failure"
          }
        },
        "requestBody": {
          "required": false,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "properties": {
                  "description": {
                    "description": "Observed request key. See guide for nested formats and constraints."
                  },
                  "icon_url": {
                    "description": "Observed request key. See guide for nested formats and constraints."
                  },
                  "name": {
                    "description": "Observed request key. See guide for nested formats and constraints."
                  },
                  "sort": {
                    "description": "Observed request key. See guide for nested formats and constraints."
                  }
                },
                "additionalProperties": true
              }
            }
          }
        }
      }
    },
    "/admin/badges/{id}": {
      "patch": {
        "operationId": "patch_admin_badges_by_id",
        "tags": [
          "staff"
        ],
        "summary": "PATCH /admin/badges/:id",
        "description": "Staff authorization required. Request keys are observed in the implementation; unknown types are deliberately unconstrained. Server-side validation, membership, roles, privacy and rank checks still apply.",
        "x-velora-scopes": {},
        "x-captcha-required": false,
        "x-velora-legacy": false,
        "deprecated": false,
        "security": [
          {
            "UserToken": []
          }
        ],
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "2XX": {
            "description": "Endpoint-specific JSON, text, binary, redirect or empty success; see the guide. No exhaustive response schema is asserted."
          },
          "4XX": {
            "description": "Invalid input, authorization, scope, role, privacy, quota or rate-limit error"
          },
          "5XX": {
            "description": "Service or upstream failure"
          }
        },
        "requestBody": {
          "required": false,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "properties": {
                  "description": {
                    "description": "Observed request key. See guide for nested formats and constraints."
                  },
                  "icon_url": {
                    "description": "Observed request key. See guide for nested formats and constraints."
                  },
                  "name": {
                    "description": "Observed request key. See guide for nested formats and constraints."
                  },
                  "sort": {
                    "description": "Observed request key. See guide for nested formats and constraints."
                  }
                },
                "additionalProperties": true
              }
            }
          }
        }
      },
      "delete": {
        "operationId": "delete_admin_badges_by_id",
        "tags": [
          "staff"
        ],
        "summary": "DELETE /admin/badges/:id",
        "description": "Staff authorization required. Request keys are observed in the implementation; unknown types are deliberately unconstrained. Server-side validation, membership, roles, privacy and rank checks still apply.",
        "x-velora-scopes": {},
        "x-captcha-required": false,
        "x-velora-legacy": false,
        "deprecated": false,
        "security": [
          {
            "UserToken": []
          }
        ],
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "2XX": {
            "description": "Endpoint-specific JSON, text, binary, redirect or empty success; see the guide. No exhaustive response schema is asserted."
          },
          "4XX": {
            "description": "Invalid input, authorization, scope, role, privacy, quota or rate-limit error"
          },
          "5XX": {
            "description": "Service or upstream failure"
          }
        }
      }
    },
    "/admin/badges/{id}/icon": {
      "post": {
        "operationId": "post_admin_badges_by_id_icon",
        "tags": [
          "staff"
        ],
        "summary": "POST /admin/badges/:id/icon",
        "description": "Staff authorization required. Request keys are observed in the implementation; unknown types are deliberately unconstrained. Server-side validation, membership, roles, privacy and rank checks still apply.",
        "x-velora-scopes": {},
        "x-captcha-required": false,
        "x-velora-legacy": false,
        "deprecated": false,
        "security": [
          {
            "UserToken": []
          }
        ],
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "2XX": {
            "description": "Endpoint-specific JSON, text, binary, redirect or empty success; see the guide. No exhaustive response schema is asserted."
          },
          "4XX": {
            "description": "Invalid input, authorization, scope, role, privacy, quota or rate-limit error"
          },
          "5XX": {
            "description": "Service or upstream failure"
          }
        },
        "requestBody": {
          "required": false,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "properties": {
                  "data": {
                    "description": "Observed request key. See guide for nested formats and constraints."
                  }
                },
                "additionalProperties": true
              }
            }
          }
        }
      }
    },
    "/admin/badges/{id}/holders": {
      "get": {
        "operationId": "get_admin_badges_by_id_holders",
        "tags": [
          "staff"
        ],
        "summary": "GET /admin/badges/:id/holders",
        "description": "Staff authorization required. Request keys are observed in the implementation; unknown types are deliberately unconstrained. Server-side validation, membership, roles, privacy and rank checks still apply.",
        "x-velora-scopes": {},
        "x-captcha-required": false,
        "x-velora-legacy": false,
        "deprecated": false,
        "security": [
          {
            "UserToken": []
          }
        ],
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "2XX": {
            "description": "Endpoint-specific JSON, text, binary, redirect or empty success; see the guide. No exhaustive response schema is asserted."
          },
          "4XX": {
            "description": "Invalid input, authorization, scope, role, privacy, quota or rate-limit error"
          },
          "5XX": {
            "description": "Service or upstream failure"
          }
        }
      }
    },
    "/admin/user/{username}/badges": {
      "get": {
        "operationId": "get_admin_user_by_username_badges",
        "tags": [
          "staff"
        ],
        "summary": "GET /admin/user/:username/badges",
        "description": "Staff authorization required. Request keys are observed in the implementation; unknown types are deliberately unconstrained. Server-side validation, membership, roles, privacy and rank checks still apply.",
        "x-velora-scopes": {},
        "x-captcha-required": false,
        "x-velora-legacy": false,
        "deprecated": false,
        "security": [
          {
            "UserToken": []
          }
        ],
        "parameters": [
          {
            "name": "username",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "2XX": {
            "description": "Endpoint-specific JSON, text, binary, redirect or empty success; see the guide. No exhaustive response schema is asserted."
          },
          "4XX": {
            "description": "Invalid input, authorization, scope, role, privacy, quota or rate-limit error"
          },
          "5XX": {
            "description": "Service or upstream failure"
          }
        }
      },
      "post": {
        "operationId": "post_admin_user_by_username_badges",
        "tags": [
          "staff"
        ],
        "summary": "POST /admin/user/:username/badges",
        "description": "Staff authorization required. Request keys are observed in the implementation; unknown types are deliberately unconstrained. Server-side validation, membership, roles, privacy and rank checks still apply.",
        "x-velora-scopes": {},
        "x-captcha-required": false,
        "x-velora-legacy": false,
        "deprecated": false,
        "security": [
          {
            "UserToken": []
          }
        ],
        "parameters": [
          {
            "name": "username",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "2XX": {
            "description": "Endpoint-specific JSON, text, binary, redirect or empty success; see the guide. No exhaustive response schema is asserted."
          },
          "4XX": {
            "description": "Invalid input, authorization, scope, role, privacy, quota or rate-limit error"
          },
          "5XX": {
            "description": "Service or upstream failure"
          }
        },
        "requestBody": {
          "required": false,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "properties": {
                  "badge_id": {
                    "description": "Observed request key. See guide for nested formats and constraints."
                  }
                },
                "additionalProperties": true
              }
            }
          }
        }
      }
    },
    "/admin/user/{username}/badges/{badgeId}": {
      "delete": {
        "operationId": "delete_admin_user_by_username_badges_by_badgeid",
        "tags": [
          "staff"
        ],
        "summary": "DELETE /admin/user/:username/badges/:badgeId",
        "description": "Staff authorization required. Request keys are observed in the implementation; unknown types are deliberately unconstrained. Server-side validation, membership, roles, privacy and rank checks still apply.",
        "x-velora-scopes": {},
        "x-captcha-required": false,
        "x-velora-legacy": false,
        "deprecated": false,
        "security": [
          {
            "UserToken": []
          }
        ],
        "parameters": [
          {
            "name": "username",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "badgeId",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "2XX": {
            "description": "Endpoint-specific JSON, text, binary, redirect or empty success; see the guide. No exhaustive response schema is asserted."
          },
          "4XX": {
            "description": "Invalid input, authorization, scope, role, privacy, quota or rate-limit error"
          },
          "5XX": {
            "description": "Service or upstream failure"
          }
        }
      }
    },
    "/admin/user/{username}": {
      "delete": {
        "operationId": "delete_admin_user_by_username",
        "tags": [
          "staff"
        ],
        "summary": "DELETE /admin/user/:username",
        "description": "Staff authorization required. Request keys are observed in the implementation; unknown types are deliberately unconstrained. Server-side validation, membership, roles, privacy and rank checks still apply.",
        "x-velora-scopes": {},
        "x-captcha-required": false,
        "x-velora-legacy": false,
        "deprecated": false,
        "security": [
          {
            "UserToken": []
          }
        ],
        "parameters": [
          {
            "name": "username",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "2XX": {
            "description": "Endpoint-specific JSON, text, binary, redirect or empty success; see the guide. No exhaustive response schema is asserted."
          },
          "4XX": {
            "description": "Invalid input, authorization, scope, role, privacy, quota or rate-limit error"
          },
          "5XX": {
            "description": "Service or upstream failure"
          }
        }
      }
    },
    "/admin/user/{username}/reset-link": {
      "post": {
        "operationId": "post_admin_user_by_username_reset_link",
        "tags": [
          "staff"
        ],
        "summary": "POST /admin/user/:username/reset-link",
        "description": "Staff authorization required. Request keys are observed in the implementation; unknown types are deliberately unconstrained. Server-side validation, membership, roles, privacy and rank checks still apply.",
        "x-velora-scopes": {},
        "x-captcha-required": false,
        "x-velora-legacy": false,
        "deprecated": false,
        "security": [
          {
            "UserToken": []
          }
        ],
        "parameters": [
          {
            "name": "username",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "2XX": {
            "description": "Endpoint-specific JSON, text, binary, redirect or empty success; see the guide. No exhaustive response schema is asserted."
          },
          "4XX": {
            "description": "Invalid input, authorization, scope, role, privacy, quota or rate-limit error"
          },
          "5XX": {
            "description": "Service or upstream failure"
          }
        }
      }
    },
    "/admin/users": {
      "get": {
        "operationId": "get_admin_users",
        "tags": [
          "staff"
        ],
        "summary": "GET /admin/users",
        "description": "Staff authorization required. Request keys are observed in the implementation; unknown types are deliberately unconstrained. Server-side validation, membership, roles, privacy and rank checks still apply.",
        "x-velora-scopes": {},
        "x-captcha-required": false,
        "x-velora-legacy": false,
        "deprecated": false,
        "security": [
          {
            "UserToken": []
          }
        ],
        "parameters": [
          {
            "name": "ip",
            "in": "query",
            "required": false,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "2XX": {
            "description": "Endpoint-specific JSON, text, binary, redirect or empty success; see the guide. No exhaustive response schema is asserted."
          },
          "4XX": {
            "description": "Invalid input, authorization, scope, role, privacy, quota or rate-limit error"
          },
          "5XX": {
            "description": "Service or upstream failure"
          }
        }
      }
    },
    "/admin/banned-users": {
      "get": {
        "operationId": "get_admin_banned_users",
        "tags": [
          "staff"
        ],
        "summary": "GET /admin/banned-users",
        "description": "Staff authorization required. Request keys are observed in the implementation; unknown types are deliberately unconstrained. Server-side validation, membership, roles, privacy and rank checks still apply.",
        "x-velora-scopes": {},
        "x-captcha-required": false,
        "x-velora-legacy": false,
        "deprecated": false,
        "security": [
          {
            "UserToken": []
          }
        ],
        "parameters": [],
        "responses": {
          "2XX": {
            "description": "Endpoint-specific JSON, text, binary, redirect or empty success; see the guide. No exhaustive response schema is asserted."
          },
          "4XX": {
            "description": "Invalid input, authorization, scope, role, privacy, quota or rate-limit error"
          },
          "5XX": {
            "description": "Service or upstream failure"
          }
        }
      }
    },
    "/admin/userinfo/{username}": {
      "get": {
        "operationId": "get_admin_userinfo_by_username",
        "tags": [
          "staff"
        ],
        "summary": "GET /admin/userinfo/:username",
        "description": "Staff authorization required. Request keys are observed in the implementation; unknown types are deliberately unconstrained. Server-side validation, membership, roles, privacy and rank checks still apply.",
        "x-velora-scopes": {},
        "x-captcha-required": false,
        "x-velora-legacy": false,
        "deprecated": false,
        "security": [
          {
            "UserToken": []
          }
        ],
        "parameters": [
          {
            "name": "username",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "2XX": {
            "description": "Endpoint-specific JSON, text, binary, redirect or empty success; see the guide. No exhaustive response schema is asserted."
          },
          "4XX": {
            "description": "Invalid input, authorization, scope, role, privacy, quota or rate-limit error"
          },
          "5XX": {
            "description": "Service or upstream failure"
          }
        }
      }
    },
    "/admin/user/{username}/restrictions": {
      "put": {
        "operationId": "put_admin_user_by_username_restrictions",
        "tags": [
          "staff"
        ],
        "summary": "PUT /admin/user/:username/restrictions",
        "description": "Staff authorization required. Request keys are observed in the implementation; unknown types are deliberately unconstrained. Server-side validation, membership, roles, privacy and rank checks still apply.",
        "x-velora-scopes": {},
        "x-captcha-required": false,
        "x-velora-legacy": false,
        "deprecated": false,
        "security": [
          {
            "UserToken": []
          }
        ],
        "parameters": [
          {
            "name": "username",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "2XX": {
            "description": "Endpoint-specific JSON, text, binary, redirect or empty success; see the guide. No exhaustive response schema is asserted."
          },
          "4XX": {
            "description": "Invalid input, authorization, scope, role, privacy, quota or rate-limit error"
          },
          "5XX": {
            "description": "Service or upstream failure"
          }
        },
        "requestBody": {
          "required": false,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "properties": {
                  "disabled_scopes": {
                    "description": "Observed request key. See guide for nested formats and constraints."
                  }
                },
                "additionalProperties": true
              }
            }
          }
        }
      }
    },
    "/admin/user/{username}/profile": {
      "patch": {
        "operationId": "patch_admin_user_by_username_profile",
        "tags": [
          "staff"
        ],
        "summary": "PATCH /admin/user/:username/profile",
        "description": "Staff authorization required. Request keys are observed in the implementation; unknown types are deliberately unconstrained. Server-side validation, membership, roles, privacy and rank checks still apply.",
        "x-velora-scopes": {},
        "x-captcha-required": false,
        "x-velora-legacy": false,
        "deprecated": false,
        "security": [
          {
            "UserToken": []
          }
        ],
        "parameters": [
          {
            "name": "username",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "2XX": {
            "description": "Endpoint-specific JSON, text, binary, redirect or empty success; see the guide. No exhaustive response schema is asserted."
          },
          "4XX": {
            "description": "Invalid input, authorization, scope, role, privacy, quota or rate-limit error"
          },
          "5XX": {
            "description": "Service or upstream failure"
          }
        },
        "requestBody": {
          "required": false,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "properties": {
                  "bio": {
                    "description": "Observed request key. See guide for nested formats and constraints."
                  },
                  "color": {
                    "description": "Observed request key. See guide for nested formats and constraints."
                  },
                  "country_code": {
                    "description": "Observed request key. See guide for nested formats and constraints."
                  },
                  "timezone": {
                    "description": "Observed request key. See guide for nested formats and constraints."
                  }
                },
                "additionalProperties": true
              }
            }
          }
        }
      }
    },
    "/admin/user/{username}/pfp": {
      "delete": {
        "operationId": "delete_admin_user_by_username_pfp",
        "tags": [
          "staff"
        ],
        "summary": "DELETE /admin/user/:username/pfp",
        "description": "Staff authorization required. Request keys are observed in the implementation; unknown types are deliberately unconstrained. Server-side validation, membership, roles, privacy and rank checks still apply.",
        "x-velora-scopes": {},
        "x-captcha-required": false,
        "x-velora-legacy": false,
        "deprecated": false,
        "security": [
          {
            "UserToken": []
          }
        ],
        "parameters": [
          {
            "name": "username",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "2XX": {
            "description": "Endpoint-specific JSON, text, binary, redirect or empty success; see the guide. No exhaustive response schema is asserted."
          },
          "4XX": {
            "description": "Invalid input, authorization, scope, role, privacy, quota or rate-limit error"
          },
          "5XX": {
            "description": "Service or upstream failure"
          }
        }
      }
    },
    "/admin/user/{username}/banner": {
      "delete": {
        "operationId": "delete_admin_user_by_username_banner",
        "tags": [
          "staff"
        ],
        "summary": "DELETE /admin/user/:username/banner",
        "description": "Staff authorization required. Request keys are observed in the implementation; unknown types are deliberately unconstrained. Server-side validation, membership, roles, privacy and rank checks still apply.",
        "x-velora-scopes": {},
        "x-captcha-required": false,
        "x-velora-legacy": false,
        "deprecated": false,
        "security": [
          {
            "UserToken": []
          }
        ],
        "parameters": [
          {
            "name": "username",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "2XX": {
            "description": "Endpoint-specific JSON, text, binary, redirect or empty success; see the guide. No exhaustive response schema is asserted."
          },
          "4XX": {
            "description": "Invalid input, authorization, scope, role, privacy, quota or rate-limit error"
          },
          "5XX": {
            "description": "Service or upstream failure"
          }
        }
      }
    },
    "/admin/user/{username}/grant-rename": {
      "post": {
        "operationId": "post_admin_user_by_username_grant_rename",
        "tags": [
          "staff"
        ],
        "summary": "POST /admin/user/:username/grant-rename",
        "description": "Staff authorization required. Request keys are observed in the implementation; unknown types are deliberately unconstrained. Server-side validation, membership, roles, privacy and rank checks still apply.",
        "x-velora-scopes": {},
        "x-captcha-required": false,
        "x-velora-legacy": false,
        "deprecated": false,
        "security": [
          {
            "UserToken": []
          }
        ],
        "parameters": [
          {
            "name": "username",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "2XX": {
            "description": "Endpoint-specific JSON, text, binary, redirect or empty success; see the guide. No exhaustive response schema is asserted."
          },
          "4XX": {
            "description": "Invalid input, authorization, scope, role, privacy, quota or rate-limit error"
          },
          "5XX": {
            "description": "Service or upstream failure"
          }
        },
        "requestBody": {
          "required": false,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "properties": {
                  "days": {
                    "description": "Observed request key. See guide for nested formats and constraints."
                  }
                },
                "additionalProperties": true
              }
            }
          }
        }
      }
    },
    "/admin/user/{username}/ban": {
      "post": {
        "operationId": "post_admin_user_by_username_ban",
        "tags": [
          "staff"
        ],
        "summary": "POST /admin/user/:username/ban",
        "description": "Staff authorization required. Request keys are observed in the implementation; unknown types are deliberately unconstrained. Server-side validation, membership, roles, privacy and rank checks still apply.",
        "x-velora-scopes": {},
        "x-captcha-required": false,
        "x-velora-legacy": false,
        "deprecated": false,
        "security": [
          {
            "UserToken": []
          }
        ],
        "parameters": [
          {
            "name": "username",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "2XX": {
            "description": "Endpoint-specific JSON, text, binary, redirect or empty success; see the guide. No exhaustive response schema is asserted."
          },
          "4XX": {
            "description": "Invalid input, authorization, scope, role, privacy, quota or rate-limit error"
          },
          "5XX": {
            "description": "Service or upstream failure"
          }
        },
        "requestBody": {
          "required": false,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "properties": {
                  "reason": {
                    "description": "Observed request key. See guide for nested formats and constraints."
                  }
                },
                "additionalProperties": true
              }
            }
          }
        }
      }
    },
    "/admin/user/{username}/unban": {
      "post": {
        "operationId": "post_admin_user_by_username_unban",
        "tags": [
          "staff"
        ],
        "summary": "POST /admin/user/:username/unban",
        "description": "Staff authorization required. Request keys are observed in the implementation; unknown types are deliberately unconstrained. Server-side validation, membership, roles, privacy and rank checks still apply.",
        "x-velora-scopes": {},
        "x-captcha-required": false,
        "x-velora-legacy": false,
        "deprecated": false,
        "security": [
          {
            "UserToken": []
          }
        ],
        "parameters": [
          {
            "name": "username",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "2XX": {
            "description": "Endpoint-specific JSON, text, binary, redirect or empty success; see the guide. No exhaustive response schema is asserted."
          },
          "4XX": {
            "description": "Invalid input, authorization, scope, role, privacy, quota or rate-limit error"
          },
          "5XX": {
            "description": "Service or upstream failure"
          }
        }
      }
    },
    "/admin/user/{username}/monitor": {
      "patch": {
        "operationId": "patch_admin_user_by_username_monitor",
        "tags": [
          "staff"
        ],
        "summary": "PATCH /admin/user/:username/monitor",
        "description": "Staff authorization required. Request keys are observed in the implementation; unknown types are deliberately unconstrained. Server-side validation, membership, roles, privacy and rank checks still apply.",
        "x-velora-scopes": {},
        "x-captcha-required": false,
        "x-velora-legacy": false,
        "deprecated": false,
        "security": [
          {
            "UserToken": []
          }
        ],
        "parameters": [
          {
            "name": "username",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "2XX": {
            "description": "Endpoint-specific JSON, text, binary, redirect or empty success; see the guide. No exhaustive response schema is asserted."
          },
          "4XX": {
            "description": "Invalid input, authorization, scope, role, privacy, quota or rate-limit error"
          },
          "5XX": {
            "description": "Service or upstream failure"
          }
        }
      }
    },
    "/admin/user/{username}/revoke-sessions": {
      "post": {
        "operationId": "post_admin_user_by_username_revoke_sessions",
        "tags": [
          "staff"
        ],
        "summary": "POST /admin/user/:username/revoke-sessions",
        "description": "Staff authorization required. Request keys are observed in the implementation; unknown types are deliberately unconstrained. Server-side validation, membership, roles, privacy and rank checks still apply.",
        "x-velora-scopes": {},
        "x-captcha-required": false,
        "x-velora-legacy": false,
        "deprecated": false,
        "security": [
          {
            "UserToken": []
          }
        ],
        "parameters": [
          {
            "name": "username",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "2XX": {
            "description": "Endpoint-specific JSON, text, binary, redirect or empty success; see the guide. No exhaustive response schema is asserted."
          },
          "4XX": {
            "description": "Invalid input, authorization, scope, role, privacy, quota or rate-limit error"
          },
          "5XX": {
            "description": "Service or upstream failure"
          }
        }
      }
    },
    "/admin/user/{username}/sessions/{sessionId}": {
      "delete": {
        "operationId": "delete_admin_user_by_username_sessions_by_sessionid",
        "tags": [
          "staff"
        ],
        "summary": "DELETE /admin/user/:username/sessions/:sessionId",
        "description": "Staff authorization required. Request keys are observed in the implementation; unknown types are deliberately unconstrained. Server-side validation, membership, roles, privacy and rank checks still apply.",
        "x-velora-scopes": {},
        "x-captcha-required": false,
        "x-velora-legacy": false,
        "deprecated": false,
        "security": [
          {
            "UserToken": []
          }
        ],
        "parameters": [
          {
            "name": "username",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "sessionId",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "2XX": {
            "description": "Endpoint-specific JSON, text, binary, redirect or empty success; see the guide. No exhaustive response schema is asserted."
          },
          "4XX": {
            "description": "Invalid input, authorization, scope, role, privacy, quota or rate-limit error"
          },
          "5XX": {
            "description": "Service or upstream failure"
          }
        }
      }
    },
    "/admin/warn/{username}": {
      "post": {
        "operationId": "post_admin_warn_by_username",
        "tags": [
          "staff"
        ],
        "summary": "POST /admin/warn/:username",
        "description": "Staff authorization required. Request keys are observed in the implementation; unknown types are deliberately unconstrained. Server-side validation, membership, roles, privacy and rank checks still apply.",
        "x-velora-scopes": {},
        "x-captcha-required": false,
        "x-velora-legacy": false,
        "deprecated": false,
        "security": [
          {
            "UserToken": []
          }
        ],
        "parameters": [
          {
            "name": "username",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "2XX": {
            "description": "Endpoint-specific JSON, text, binary, redirect or empty success; see the guide. No exhaustive response schema is asserted."
          },
          "4XX": {
            "description": "Invalid input, authorization, scope, role, privacy, quota or rate-limit error"
          },
          "5XX": {
            "description": "Service or upstream failure"
          }
        },
        "requestBody": {
          "required": false,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "properties": {
                  "level": {
                    "description": "Observed request key. See guide for nested formats and constraints."
                  },
                  "reason": {
                    "description": "Observed request key. See guide for nested formats and constraints."
                  }
                },
                "additionalProperties": true
              }
            }
          }
        }
      }
    },
    "/admin/warnings/{username}": {
      "get": {
        "operationId": "get_admin_warnings_by_username",
        "tags": [
          "staff"
        ],
        "summary": "GET /admin/warnings/:username",
        "description": "Staff authorization required. Request keys are observed in the implementation; unknown types are deliberately unconstrained. Server-side validation, membership, roles, privacy and rank checks still apply.",
        "x-velora-scopes": {},
        "x-captcha-required": false,
        "x-velora-legacy": false,
        "deprecated": false,
        "security": [
          {
            "UserToken": []
          }
        ],
        "parameters": [
          {
            "name": "username",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "2XX": {
            "description": "Endpoint-specific JSON, text, binary, redirect or empty success; see the guide. No exhaustive response schema is asserted."
          },
          "4XX": {
            "description": "Invalid input, authorization, scope, role, privacy, quota or rate-limit error"
          },
          "5XX": {
            "description": "Service or upstream failure"
          }
        }
      }
    },
    "/admin/mod-logs": {
      "get": {
        "operationId": "get_admin_mod_logs",
        "tags": [
          "staff"
        ],
        "summary": "GET /admin/mod-logs",
        "description": "Staff authorization required. Request keys are observed in the implementation; unknown types are deliberately unconstrained. Server-side validation, membership, roles, privacy and rank checks still apply.",
        "x-velora-scopes": {},
        "x-captcha-required": false,
        "x-velora-legacy": false,
        "deprecated": false,
        "security": [
          {
            "UserToken": []
          }
        ],
        "parameters": [],
        "responses": {
          "2XX": {
            "description": "Endpoint-specific JSON, text, binary, redirect or empty success; see the guide. No exhaustive response schema is asserted."
          },
          "4XX": {
            "description": "Invalid input, authorization, scope, role, privacy, quota or rate-limit error"
          },
          "5XX": {
            "description": "Service or upstream failure"
          }
        }
      }
    },
    "/admin/monitored-logs": {
      "get": {
        "operationId": "get_admin_monitored_logs",
        "tags": [
          "staff"
        ],
        "summary": "GET /admin/monitored-logs",
        "description": "Staff authorization required. Request keys are observed in the implementation; unknown types are deliberately unconstrained. Server-side validation, membership, roles, privacy and rank checks still apply.",
        "x-velora-scopes": {},
        "x-captcha-required": false,
        "x-velora-legacy": false,
        "deprecated": false,
        "security": [
          {
            "UserToken": []
          }
        ],
        "parameters": [],
        "responses": {
          "2XX": {
            "description": "Endpoint-specific JSON, text, binary, redirect or empty success; see the guide. No exhaustive response schema is asserted."
          },
          "4XX": {
            "description": "Invalid input, authorization, scope, role, privacy, quota or rate-limit error"
          },
          "5XX": {
            "description": "Service or upstream failure"
          }
        }
      }
    },
    "/admin/mod-logs/{username}": {
      "get": {
        "operationId": "get_admin_mod_logs_by_username",
        "tags": [
          "staff"
        ],
        "summary": "GET /admin/mod-logs/:username",
        "description": "Staff authorization required. Request keys are observed in the implementation; unknown types are deliberately unconstrained. Server-side validation, membership, roles, privacy and rank checks still apply.",
        "x-velora-scopes": {},
        "x-captcha-required": false,
        "x-velora-legacy": false,
        "deprecated": false,
        "security": [
          {
            "UserToken": []
          }
        ],
        "parameters": [
          {
            "name": "username",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "2XX": {
            "description": "Endpoint-specific JSON, text, binary, redirect or empty success; see the guide. No exhaustive response schema is asserted."
          },
          "4XX": {
            "description": "Invalid input, authorization, scope, role, privacy, quota or rate-limit error"
          },
          "5XX": {
            "description": "Service or upstream failure"
          }
        }
      }
    },
    "/admin/send-vmail": {
      "post": {
        "operationId": "post_admin_send_vmail",
        "tags": [
          "staff"
        ],
        "summary": "POST /admin/send-vmail",
        "description": "Staff authorization required. Staff. The older \"system message\" call. System DMs are gone: {username, subject, message} now becomes a system notification for that account. Request keys are observed in the implementation; unknown types are deliberately unconstrained. Server-side validation, membership, roles, privacy and rank checks still apply.",
        "x-velora-scopes": {},
        "x-captcha-required": false,
        "x-velora-legacy": false,
        "deprecated": false,
        "security": [
          {
            "UserToken": []
          }
        ],
        "parameters": [],
        "responses": {
          "2XX": {
            "description": "Endpoint-specific JSON, text, binary, redirect or empty success; see the guide. No exhaustive response schema is asserted."
          },
          "4XX": {
            "description": "Invalid input, authorization, scope, role, privacy, quota or rate-limit error"
          },
          "5XX": {
            "description": "Service or upstream failure"
          }
        },
        "requestBody": {
          "required": false,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "properties": {
                  "message": {
                    "description": "Observed request key. See guide for nested formats and constraints."
                  },
                  "subject": {
                    "description": "Observed request key. See guide for nested formats and constraints."
                  },
                  "username": {
                    "description": "Observed request key. See guide for nested formats and constraints."
                  }
                },
                "additionalProperties": true
              }
            }
          }
        }
      }
    },
    "/admin/notifications/send": {
      "post": {
        "operationId": "post_admin_notifications_send",
        "tags": [
          "staff"
        ],
        "summary": "POST /admin/notifications/send",
        "description": "Staff authorization required. Staff. Sends a system notification (a locked category, nobody can turn it off). Body {usernames: [..]} (up to 200) or {all: true, confirm: \"ALL\"} (admins and the owner only, once every 10 minutes), plus title (up to 128), body (up to 2000, **bold** allowed), link (a site path or an https URL) and email (also email it). Returns {success, sent, emailed}. Errors: missing_fields, too_long, bad_link, forbidden, confirm_required, too_soon (429), too_many, user_not_found (with missing). Request keys are observed in the implementation; unknown types are deliberately unconstrained. Server-side validation, membership, roles, privacy and rank checks still apply.",
        "x-velora-scopes": {},
        "x-captcha-required": false,
        "x-velora-legacy": false,
        "deprecated": false,
        "security": [
          {
            "UserToken": []
          }
        ],
        "parameters": [],
        "responses": {
          "2XX": {
            "description": "Endpoint-specific JSON, text, binary, redirect or empty success; see the guide. No exhaustive response schema is asserted."
          },
          "4XX": {
            "description": "Invalid input, authorization, scope, role, privacy, quota or rate-limit error"
          },
          "5XX": {
            "description": "Service or upstream failure"
          }
        },
        "requestBody": {
          "required": false,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "properties": {
                  "all": {
                    "description": "Observed request key. See guide for nested formats and constraints."
                  },
                  "body": {
                    "description": "Observed request key. See guide for nested formats and constraints."
                  },
                  "confirm": {
                    "description": "Observed request key. See guide for nested formats and constraints."
                  },
                  "email": {
                    "description": "Observed request key. See guide for nested formats and constraints."
                  },
                  "link": {
                    "description": "Observed request key. See guide for nested formats and constraints."
                  },
                  "title": {
                    "description": "Observed request key. See guide for nested formats and constraints."
                  },
                  "usernames": {
                    "description": "Observed request key. See guide for nested formats and constraints."
                  }
                },
                "additionalProperties": true
              }
            }
          }
        }
      }
    },
    "/admin/send-email": {
      "post": {
        "operationId": "post_admin_send_email",
        "tags": [
          "staff"
        ],
        "summary": "POST /admin/send-email",
        "description": "Staff authorization required. Request keys are observed in the implementation; unknown types are deliberately unconstrained. Server-side validation, membership, roles, privacy and rank checks still apply.",
        "x-velora-scopes": {},
        "x-captcha-required": false,
        "x-velora-legacy": false,
        "deprecated": false,
        "security": [
          {
            "UserToken": []
          }
        ],
        "parameters": [],
        "responses": {
          "2XX": {
            "description": "Endpoint-specific JSON, text, binary, redirect or empty success; see the guide. No exhaustive response schema is asserted."
          },
          "4XX": {
            "description": "Invalid input, authorization, scope, role, privacy, quota or rate-limit error"
          },
          "5XX": {
            "description": "Service or upstream failure"
          }
        },
        "requestBody": {
          "required": false,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "properties": {
                  "message": {
                    "description": "Observed request key. See guide for nested formats and constraints."
                  },
                  "subject": {
                    "description": "Observed request key. See guide for nested formats and constraints."
                  },
                  "username": {
                    "description": "Observed request key. See guide for nested formats and constraints."
                  }
                },
                "additionalProperties": true
              }
            }
          }
        }
      }
    },
    "/admin/ip-ban": {
      "post": {
        "operationId": "post_admin_ip_ban",
        "tags": [
          "staff"
        ],
        "summary": "POST /admin/ip-ban",
        "description": "Staff authorization required. Request keys are observed in the implementation; unknown types are deliberately unconstrained. Server-side validation, membership, roles, privacy and rank checks still apply.",
        "x-velora-scopes": {},
        "x-captcha-required": false,
        "x-velora-legacy": false,
        "deprecated": false,
        "security": [
          {
            "UserToken": []
          }
        ],
        "parameters": [],
        "responses": {
          "2XX": {
            "description": "Endpoint-specific JSON, text, binary, redirect or empty success; see the guide. No exhaustive response schema is asserted."
          },
          "4XX": {
            "description": "Invalid input, authorization, scope, role, privacy, quota or rate-limit error"
          },
          "5XX": {
            "description": "Service or upstream failure"
          }
        },
        "requestBody": {
          "required": false,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "properties": {
                  "expires_at": {
                    "description": "Observed request key. See guide for nested formats and constraints."
                  },
                  "ip": {
                    "description": "Observed request key. See guide for nested formats and constraints."
                  },
                  "ip_hash": {
                    "description": "Observed request key. See guide for nested formats and constraints."
                  },
                  "reason": {
                    "description": "Observed request key. See guide for nested formats and constraints."
                  }
                },
                "additionalProperties": true
              }
            }
          }
        }
      }
    },
    "/admin/ip-ban/{hash}": {
      "delete": {
        "operationId": "delete_admin_ip_ban_by_hash",
        "tags": [
          "staff"
        ],
        "summary": "DELETE /admin/ip-ban/:hash",
        "description": "Staff authorization required. Request keys are observed in the implementation; unknown types are deliberately unconstrained. Server-side validation, membership, roles, privacy and rank checks still apply.",
        "x-velora-scopes": {},
        "x-captcha-required": false,
        "x-velora-legacy": false,
        "deprecated": false,
        "security": [
          {
            "UserToken": []
          }
        ],
        "parameters": [
          {
            "name": "hash",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "2XX": {
            "description": "Endpoint-specific JSON, text, binary, redirect or empty success; see the guide. No exhaustive response schema is asserted."
          },
          "4XX": {
            "description": "Invalid input, authorization, scope, role, privacy, quota or rate-limit error"
          },
          "5XX": {
            "description": "Service or upstream failure"
          }
        }
      }
    },
    "/admin/user/{username}/warn/clear": {
      "delete": {
        "operationId": "delete_admin_user_by_username_warn_clear",
        "tags": [
          "staff"
        ],
        "summary": "DELETE /admin/user/:username/warn/clear",
        "description": "Staff authorization required. Request keys are observed in the implementation; unknown types are deliberately unconstrained. Server-side validation, membership, roles, privacy and rank checks still apply.",
        "x-velora-scopes": {},
        "x-captcha-required": false,
        "x-velora-legacy": false,
        "deprecated": false,
        "security": [
          {
            "UserToken": []
          }
        ],
        "parameters": [
          {
            "name": "username",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "2XX": {
            "description": "Endpoint-specific JSON, text, binary, redirect or empty success; see the guide. No exhaustive response schema is asserted."
          },
          "4XX": {
            "description": "Invalid input, authorization, scope, role, privacy, quota or rate-limit error"
          },
          "5XX": {
            "description": "Service or upstream failure"
          }
        }
      }
    },
    "/admin/ip-bans": {
      "get": {
        "operationId": "get_admin_ip_bans",
        "tags": [
          "staff"
        ],
        "summary": "GET /admin/ip-bans",
        "description": "Staff authorization required. Request keys are observed in the implementation; unknown types are deliberately unconstrained. Server-side validation, membership, roles, privacy and rank checks still apply.",
        "x-velora-scopes": {},
        "x-captcha-required": false,
        "x-velora-legacy": false,
        "deprecated": false,
        "security": [
          {
            "UserToken": []
          }
        ],
        "parameters": [],
        "responses": {
          "2XX": {
            "description": "Endpoint-specific JSON, text, binary, redirect or empty success; see the guide. No exhaustive response schema is asserted."
          },
          "4XX": {
            "description": "Invalid input, authorization, scope, role, privacy, quota or rate-limit error"
          },
          "5XX": {
            "description": "Service or upstream failure"
          }
        }
      }
    },
    "/admin/blacklisted-domains": {
      "get": {
        "operationId": "get_admin_blacklisted_domains",
        "tags": [
          "staff"
        ],
        "summary": "GET /admin/blacklisted-domains",
        "description": "Staff authorization required. Request keys are observed in the implementation; unknown types are deliberately unconstrained. Server-side validation, membership, roles, privacy and rank checks still apply.",
        "x-velora-scopes": {},
        "x-captcha-required": false,
        "x-velora-legacy": false,
        "deprecated": false,
        "security": [
          {
            "UserToken": []
          }
        ],
        "parameters": [],
        "responses": {
          "2XX": {
            "description": "Endpoint-specific JSON, text, binary, redirect or empty success; see the guide. No exhaustive response schema is asserted."
          },
          "4XX": {
            "description": "Invalid input, authorization, scope, role, privacy, quota or rate-limit error"
          },
          "5XX": {
            "description": "Service or upstream failure"
          }
        }
      },
      "post": {
        "operationId": "post_admin_blacklisted_domains",
        "tags": [
          "staff"
        ],
        "summary": "POST /admin/blacklisted-domains",
        "description": "Staff authorization required. Request keys are observed in the implementation; unknown types are deliberately unconstrained. Server-side validation, membership, roles, privacy and rank checks still apply.",
        "x-velora-scopes": {},
        "x-captcha-required": false,
        "x-velora-legacy": false,
        "deprecated": false,
        "security": [
          {
            "UserToken": []
          }
        ],
        "parameters": [],
        "responses": {
          "2XX": {
            "description": "Endpoint-specific JSON, text, binary, redirect or empty success; see the guide. No exhaustive response schema is asserted."
          },
          "4XX": {
            "description": "Invalid input, authorization, scope, role, privacy, quota or rate-limit error"
          },
          "5XX": {
            "description": "Service or upstream failure"
          }
        },
        "requestBody": {
          "required": false,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "properties": {
                  "domain": {
                    "description": "Observed request key. See guide for nested formats and constraints."
                  },
                  "reason": {
                    "description": "Observed request key. See guide for nested formats and constraints."
                  }
                },
                "additionalProperties": true
              }
            }
          }
        }
      }
    },
    "/admin/blacklisted-domains/{domain}": {
      "delete": {
        "operationId": "delete_admin_blacklisted_domains_by_domain",
        "tags": [
          "staff"
        ],
        "summary": "DELETE /admin/blacklisted-domains/:domain",
        "description": "Staff authorization required. Request keys are observed in the implementation; unknown types are deliberately unconstrained. Server-side validation, membership, roles, privacy and rank checks still apply.",
        "x-velora-scopes": {},
        "x-captcha-required": false,
        "x-velora-legacy": false,
        "deprecated": false,
        "security": [
          {
            "UserToken": []
          }
        ],
        "parameters": [
          {
            "name": "domain",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "2XX": {
            "description": "Endpoint-specific JSON, text, binary, redirect or empty success; see the guide. No exhaustive response schema is asserted."
          },
          "4XX": {
            "description": "Invalid input, authorization, scope, role, privacy, quota or rate-limit error"
          },
          "5XX": {
            "description": "Service or upstream failure"
          }
        }
      }
    },
    "/admin/stats": {
      "get": {
        "operationId": "get_admin_stats",
        "tags": [
          "staff"
        ],
        "summary": "GET /admin/stats",
        "description": "Staff authorization required. Request keys are observed in the implementation; unknown types are deliberately unconstrained. Server-side validation, membership, roles, privacy and rank checks still apply.",
        "x-velora-scopes": {},
        "x-captcha-required": false,
        "x-velora-legacy": false,
        "deprecated": false,
        "security": [
          {
            "UserToken": []
          }
        ],
        "parameters": [],
        "responses": {
          "2XX": {
            "description": "Endpoint-specific JSON, text, binary, redirect or empty success; see the guide. No exhaustive response schema is asserted."
          },
          "4XX": {
            "description": "Invalid input, authorization, scope, role, privacy, quota or rate-limit error"
          },
          "5XX": {
            "description": "Service or upstream failure"
          }
        }
      }
    },
    "/admin/tos": {
      "post": {
        "operationId": "post_admin_tos",
        "tags": [
          "staff"
        ],
        "summary": "POST /admin/tos",
        "description": "Staff authorization required. Request keys are observed in the implementation; unknown types are deliberately unconstrained. Server-side validation, membership, roles, privacy and rank checks still apply.",
        "x-velora-scopes": {},
        "x-captcha-required": false,
        "x-velora-legacy": false,
        "deprecated": false,
        "security": [
          {
            "UserToken": []
          }
        ],
        "parameters": [],
        "responses": {
          "2XX": {
            "description": "Endpoint-specific JSON, text, binary, redirect or empty success; see the guide. No exhaustive response schema is asserted."
          },
          "4XX": {
            "description": "Invalid input, authorization, scope, role, privacy, quota or rate-limit error"
          },
          "5XX": {
            "description": "Service or upstream failure"
          }
        },
        "requestBody": {
          "required": false,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "properties": {
                  "content": {
                    "description": "Observed request key. See guide for nested formats and constraints."
                  },
                  "effective_date": {
                    "description": "Observed request key. See guide for nested formats and constraints."
                  },
                  "version": {
                    "description": "Observed request key. See guide for nested formats and constraints."
                  }
                },
                "additionalProperties": true
              }
            }
          }
        }
      }
    },
    "/admin/monitored": {
      "get": {
        "operationId": "get_admin_monitored",
        "tags": [
          "staff"
        ],
        "summary": "GET /admin/monitored",
        "description": "Staff authorization required. Request keys are observed in the implementation; unknown types are deliberately unconstrained. Server-side validation, membership, roles, privacy and rank checks still apply.",
        "x-velora-scopes": {},
        "x-captcha-required": false,
        "x-velora-legacy": false,
        "deprecated": false,
        "security": [
          {
            "UserToken": []
          }
        ],
        "parameters": [],
        "responses": {
          "2XX": {
            "description": "Endpoint-specific JSON, text, binary, redirect or empty success; see the guide. No exhaustive response schema is asserted."
          },
          "4XX": {
            "description": "Invalid input, authorization, scope, role, privacy, quota or rate-limit error"
          },
          "5XX": {
            "description": "Service or upstream failure"
          }
        }
      }
    },
    "/admin/monitored/pending": {
      "get": {
        "operationId": "get_admin_monitored_pending",
        "tags": [
          "staff"
        ],
        "summary": "GET /admin/monitored/pending",
        "description": "Staff authorization required. Request keys are observed in the implementation; unknown types are deliberately unconstrained. Server-side validation, membership, roles, privacy and rank checks still apply.",
        "x-velora-scopes": {},
        "x-captcha-required": false,
        "x-velora-legacy": false,
        "deprecated": false,
        "security": [
          {
            "UserToken": []
          }
        ],
        "parameters": [],
        "responses": {
          "2XX": {
            "description": "Endpoint-specific JSON, text, binary, redirect or empty success; see the guide. No exhaustive response schema is asserted."
          },
          "4XX": {
            "description": "Invalid input, authorization, scope, role, privacy, quota or rate-limit error"
          },
          "5XX": {
            "description": "Service or upstream failure"
          }
        }
      }
    },
    "/admin/monitored/pending/{id}/approve": {
      "post": {
        "operationId": "post_admin_monitored_pending_by_id_approve",
        "tags": [
          "staff"
        ],
        "summary": "POST /admin/monitored/pending/:id/approve",
        "description": "Staff authorization required. Request keys are observed in the implementation; unknown types are deliberately unconstrained. Server-side validation, membership, roles, privacy and rank checks still apply.",
        "x-velora-scopes": {},
        "x-captcha-required": false,
        "x-velora-legacy": false,
        "deprecated": false,
        "security": [
          {
            "UserToken": []
          }
        ],
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "2XX": {
            "description": "Endpoint-specific JSON, text, binary, redirect or empty success; see the guide. No exhaustive response schema is asserted."
          },
          "4XX": {
            "description": "Invalid input, authorization, scope, role, privacy, quota or rate-limit error"
          },
          "5XX": {
            "description": "Service or upstream failure"
          }
        }
      }
    },
    "/admin/monitored/pending/{id}": {
      "delete": {
        "operationId": "delete_admin_monitored_pending_by_id",
        "tags": [
          "staff"
        ],
        "summary": "DELETE /admin/monitored/pending/:id",
        "description": "Staff authorization required. Request keys are observed in the implementation; unknown types are deliberately unconstrained. Server-side validation, membership, roles, privacy and rank checks still apply.",
        "x-velora-scopes": {},
        "x-captcha-required": false,
        "x-velora-legacy": false,
        "deprecated": false,
        "security": [
          {
            "UserToken": []
          }
        ],
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "2XX": {
            "description": "Endpoint-specific JSON, text, binary, redirect or empty success; see the guide. No exhaustive response schema is asserted."
          },
          "4XX": {
            "description": "Invalid input, authorization, scope, role, privacy, quota or rate-limit error"
          },
          "5XX": {
            "description": "Service or upstream failure"
          }
        }
      }
    },
    "/admin/api-logs": {
      "get": {
        "operationId": "get_admin_api_logs",
        "tags": [
          "staff"
        ],
        "summary": "GET /admin/api-logs",
        "description": "Staff authorization required. Request keys are observed in the implementation; unknown types are deliberately unconstrained. Server-side validation, membership, roles, privacy and rank checks still apply.",
        "x-velora-scopes": {},
        "x-captcha-required": false,
        "x-velora-legacy": false,
        "deprecated": false,
        "security": [
          {
            "UserToken": []
          }
        ],
        "parameters": [
          {
            "name": "limit",
            "in": "query",
            "required": false,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "offset",
            "in": "query",
            "required": false,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "2XX": {
            "description": "Endpoint-specific JSON, text, binary, redirect or empty success; see the guide. No exhaustive response schema is asserted."
          },
          "4XX": {
            "description": "Invalid input, authorization, scope, role, privacy, quota or rate-limit error"
          },
          "5XX": {
            "description": "Service or upstream failure"
          }
        }
      }
    },
    "/admin/api-logs/top": {
      "get": {
        "operationId": "get_admin_api_logs_top",
        "tags": [
          "staff"
        ],
        "summary": "GET /admin/api-logs/top",
        "description": "Staff authorization required. Request keys are observed in the implementation; unknown types are deliberately unconstrained. Server-side validation, membership, roles, privacy and rank checks still apply.",
        "x-velora-scopes": {},
        "x-captcha-required": false,
        "x-velora-legacy": false,
        "deprecated": false,
        "security": [
          {
            "UserToken": []
          }
        ],
        "parameters": [
          {
            "name": "by",
            "in": "query",
            "required": false,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "hours",
            "in": "query",
            "required": false,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "2XX": {
            "description": "Endpoint-specific JSON, text, binary, redirect or empty success; see the guide. No exhaustive response schema is asserted."
          },
          "4XX": {
            "description": "Invalid input, authorization, scope, role, privacy, quota or rate-limit error"
          },
          "5XX": {
            "description": "Service or upstream failure"
          }
        }
      }
    },
    "/admin/feedback": {
      "get": {
        "operationId": "get_admin_feedback",
        "tags": [
          "staff"
        ],
        "summary": "GET /admin/feedback",
        "description": "Staff authorization required. Request keys are observed in the implementation; unknown types are deliberately unconstrained. Server-side validation, membership, roles, privacy and rank checks still apply.",
        "x-velora-scopes": {},
        "x-captcha-required": false,
        "x-velora-legacy": false,
        "deprecated": false,
        "security": [
          {
            "UserToken": []
          }
        ],
        "parameters": [
          {
            "name": "type",
            "in": "query",
            "required": false,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "2XX": {
            "description": "Endpoint-specific JSON, text, binary, redirect or empty success; see the guide. No exhaustive response schema is asserted."
          },
          "4XX": {
            "description": "Invalid input, authorization, scope, role, privacy, quota or rate-limit error"
          },
          "5XX": {
            "description": "Service or upstream failure"
          }
        }
      }
    },
    "/admin/feedback/{id}/pin": {
      "patch": {
        "operationId": "patch_admin_feedback_by_id_pin",
        "tags": [
          "staff"
        ],
        "summary": "PATCH /admin/feedback/:id/pin",
        "description": "Staff authorization required. Request keys are observed in the implementation; unknown types are deliberately unconstrained. Server-side validation, membership, roles, privacy and rank checks still apply.",
        "x-velora-scopes": {},
        "x-captcha-required": false,
        "x-velora-legacy": false,
        "deprecated": false,
        "security": [
          {
            "UserToken": []
          }
        ],
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "2XX": {
            "description": "Endpoint-specific JSON, text, binary, redirect or empty success; see the guide. No exhaustive response schema is asserted."
          },
          "4XX": {
            "description": "Invalid input, authorization, scope, role, privacy, quota or rate-limit error"
          },
          "5XX": {
            "description": "Service or upstream failure"
          }
        }
      }
    },
    "/admin/feedback/{id}/grant-badge": {
      "post": {
        "operationId": "post_admin_feedback_by_id_grant_badge",
        "tags": [
          "staff"
        ],
        "summary": "POST /admin/feedback/:id/grant-badge",
        "description": "Staff authorization required. Request keys are observed in the implementation; unknown types are deliberately unconstrained. Server-side validation, membership, roles, privacy and rank checks still apply.",
        "x-velora-scopes": {},
        "x-captcha-required": false,
        "x-velora-legacy": false,
        "deprecated": false,
        "security": [
          {
            "UserToken": []
          }
        ],
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "2XX": {
            "description": "Endpoint-specific JSON, text, binary, redirect or empty success; see the guide. No exhaustive response schema is asserted."
          },
          "4XX": {
            "description": "Invalid input, authorization, scope, role, privacy, quota or rate-limit error"
          },
          "5XX": {
            "description": "Service or upstream failure"
          }
        }
      }
    },
    "/admin/feedback/{id}": {
      "delete": {
        "operationId": "delete_admin_feedback_by_id",
        "tags": [
          "staff"
        ],
        "summary": "DELETE /admin/feedback/:id",
        "description": "Staff authorization required. Request keys are observed in the implementation; unknown types are deliberately unconstrained. Server-side validation, membership, roles, privacy and rank checks still apply.",
        "x-velora-scopes": {},
        "x-captcha-required": false,
        "x-velora-legacy": false,
        "deprecated": false,
        "security": [
          {
            "UserToken": []
          }
        ],
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "2XX": {
            "description": "Endpoint-specific JSON, text, binary, redirect or empty success; see the guide. No exhaustive response schema is asserted."
          },
          "4XX": {
            "description": "Invalid input, authorization, scope, role, privacy, quota or rate-limit error"
          },
          "5XX": {
            "description": "Service or upstream failure"
          }
        }
      }
    },
    "/admin/vpn-networks": {
      "get": {
        "operationId": "get_admin_vpn_networks",
        "tags": [
          "staff"
        ],
        "summary": "GET /admin/vpn-networks",
        "description": "Staff authorization required. Request keys are observed in the implementation; unknown types are deliberately unconstrained. Server-side validation, membership, roles, privacy and rank checks still apply.",
        "x-velora-scopes": {},
        "x-captcha-required": false,
        "x-velora-legacy": false,
        "deprecated": false,
        "security": [
          {
            "UserToken": []
          }
        ],
        "parameters": [],
        "responses": {
          "2XX": {
            "description": "Endpoint-specific JSON, text, binary, redirect or empty success; see the guide. No exhaustive response schema is asserted."
          },
          "4XX": {
            "description": "Invalid input, authorization, scope, role, privacy, quota or rate-limit error"
          },
          "5XX": {
            "description": "Service or upstream failure"
          }
        }
      },
      "post": {
        "operationId": "post_admin_vpn_networks",
        "tags": [
          "staff"
        ],
        "summary": "POST /admin/vpn-networks",
        "description": "Staff authorization required. Request keys are observed in the implementation; unknown types are deliberately unconstrained. Server-side validation, membership, roles, privacy and rank checks still apply.",
        "x-velora-scopes": {},
        "x-captcha-required": false,
        "x-velora-legacy": false,
        "deprecated": false,
        "security": [
          {
            "UserToken": []
          }
        ],
        "parameters": [],
        "responses": {
          "2XX": {
            "description": "Endpoint-specific JSON, text, binary, redirect or empty success; see the guide. No exhaustive response schema is asserted."
          },
          "4XX": {
            "description": "Invalid input, authorization, scope, role, privacy, quota or rate-limit error"
          },
          "5XX": {
            "description": "Service or upstream failure"
          }
        },
        "requestBody": {
          "required": false,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "properties": {
                  "action": {
                    "description": "Observed request key. See guide for nested formats and constraints."
                  },
                  "cidr": {
                    "description": "Observed request key. See guide for nested formats and constraints."
                  },
                  "reason": {
                    "description": "Observed request key. See guide for nested formats and constraints."
                  }
                },
                "additionalProperties": true
              }
            }
          }
        }
      }
    },
    "/admin/vpn-networks/{cidr}": {
      "delete": {
        "operationId": "delete_admin_vpn_networks_by_cidr",
        "tags": [
          "staff"
        ],
        "summary": "DELETE /admin/vpn-networks/:cidr",
        "description": "Staff authorization required. Request keys are observed in the implementation; unknown types are deliberately unconstrained. Server-side validation, membership, roles, privacy and rank checks still apply.",
        "x-velora-scopes": {},
        "x-captcha-required": false,
        "x-velora-legacy": false,
        "deprecated": false,
        "security": [
          {
            "UserToken": []
          }
        ],
        "parameters": [
          {
            "name": "cidr",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "2XX": {
            "description": "Endpoint-specific JSON, text, binary, redirect or empty success; see the guide. No exhaustive response schema is asserted."
          },
          "4XX": {
            "description": "Invalid input, authorization, scope, role, privacy, quota or rate-limit error"
          },
          "5XX": {
            "description": "Service or upstream failure"
          }
        }
      }
    },
    "/admin/vpn-networks/refresh": {
      "post": {
        "operationId": "post_admin_vpn_networks_refresh",
        "tags": [
          "staff"
        ],
        "summary": "POST /admin/vpn-networks/refresh",
        "description": "Staff authorization required. Request keys are observed in the implementation; unknown types are deliberately unconstrained. Server-side validation, membership, roles, privacy and rank checks still apply.",
        "x-velora-scopes": {},
        "x-captcha-required": false,
        "x-velora-legacy": false,
        "deprecated": false,
        "security": [
          {
            "UserToken": []
          }
        ],
        "parameters": [],
        "responses": {
          "2XX": {
            "description": "Endpoint-specific JSON, text, binary, redirect or empty success; see the guide. No exhaustive response schema is asserted."
          },
          "4XX": {
            "description": "Invalid input, authorization, scope, role, privacy, quota or rate-limit error"
          },
          "5XX": {
            "description": "Service or upstream failure"
          }
        }
      }
    },
    "/connect/spotify/status": {
      "get": {
        "operationId": "get_connect_spotify_status",
        "tags": [
          "spotify"
        ],
        "summary": "GET /connect/spotify/status",
        "description": "Client-specific protocol. See the integration guide before using this endpoint. Request keys are observed in the implementation; unknown types are deliberately unconstrained. Server-side validation, membership, roles, privacy and rank checks still apply.",
        "x-velora-scopes": {},
        "x-captcha-required": false,
        "x-velora-legacy": false,
        "deprecated": false,
        "security": [
          {
            "UserToken": []
          }
        ],
        "parameters": [],
        "responses": {
          "2XX": {
            "description": "Endpoint-specific JSON, text, binary, redirect or empty success; see the guide. No exhaustive response schema is asserted."
          },
          "4XX": {
            "description": "Invalid input, authorization, scope, role, privacy, quota or rate-limit error"
          },
          "5XX": {
            "description": "Service or upstream failure"
          }
        }
      }
    },
    "/connect/spotify/link": {
      "post": {
        "operationId": "post_connect_spotify_link",
        "tags": [
          "spotify"
        ],
        "summary": "POST /connect/spotify/link",
        "description": "Client-specific protocol. See the integration guide before using this endpoint. Request keys are observed in the implementation; unknown types are deliberately unconstrained. Server-side validation, membership, roles, privacy and rank checks still apply.",
        "x-velora-scopes": {},
        "x-captcha-required": false,
        "x-velora-legacy": false,
        "deprecated": false,
        "security": [
          {
            "UserToken": []
          }
        ],
        "parameters": [],
        "responses": {
          "2XX": {
            "description": "Endpoint-specific JSON, text, binary, redirect or empty success; see the guide. No exhaustive response schema is asserted."
          },
          "4XX": {
            "description": "Invalid input, authorization, scope, role, privacy, quota or rate-limit error"
          },
          "5XX": {
            "description": "Service or upstream failure"
          }
        }
      }
    },
    "/connect/spotify/callback": {
      "get": {
        "operationId": "get_connect_spotify_callback",
        "tags": [
          "spotify"
        ],
        "summary": "GET /connect/spotify/callback",
        "description": "Client-specific protocol. See the integration guide before using this endpoint. Request keys are observed in the implementation; unknown types are deliberately unconstrained. Server-side validation, membership, roles, privacy and rank checks still apply.",
        "x-velora-scopes": {},
        "x-captcha-required": false,
        "x-velora-legacy": false,
        "deprecated": false,
        "security": [],
        "parameters": [
          {
            "name": "code",
            "in": "query",
            "required": false,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "error",
            "in": "query",
            "required": false,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "state",
            "in": "query",
            "required": false,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "2XX": {
            "description": "Endpoint-specific JSON, text, binary, redirect or empty success; see the guide. No exhaustive response schema is asserted."
          },
          "4XX": {
            "description": "Invalid input, authorization, scope, role, privacy, quota or rate-limit error"
          },
          "5XX": {
            "description": "Service or upstream failure"
          }
        }
      }
    },
    "/connect/spotify/profile": {
      "patch": {
        "operationId": "patch_connect_spotify_profile",
        "tags": [
          "spotify"
        ],
        "summary": "PATCH /connect/spotify/profile",
        "description": "Client-specific protocol. See the integration guide before using this endpoint. Request keys are observed in the implementation; unknown types are deliberately unconstrained. Server-side validation, membership, roles, privacy and rank checks still apply.",
        "x-velora-scopes": {},
        "x-captcha-required": false,
        "x-velora-legacy": false,
        "deprecated": false,
        "security": [
          {
            "UserToken": []
          }
        ],
        "parameters": [],
        "responses": {
          "2XX": {
            "description": "Endpoint-specific JSON, text, binary, redirect or empty success; see the guide. No exhaustive response schema is asserted."
          },
          "4XX": {
            "description": "Invalid input, authorization, scope, role, privacy, quota or rate-limit error"
          },
          "5XX": {
            "description": "Service or upstream failure"
          }
        },
        "requestBody": {
          "required": false,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "properties": {
                  "show": {
                    "description": "Observed request key. See guide for nested formats and constraints."
                  }
                },
                "additionalProperties": true
              }
            }
          }
        }
      }
    },
    "/connect/spotify": {
      "delete": {
        "operationId": "delete_connect_spotify",
        "tags": [
          "spotify"
        ],
        "summary": "DELETE /connect/spotify",
        "description": "Client-specific protocol. See the integration guide before using this endpoint. Request keys are observed in the implementation; unknown types are deliberately unconstrained. Server-side validation, membership, roles, privacy and rank checks still apply.",
        "x-velora-scopes": {},
        "x-captcha-required": false,
        "x-velora-legacy": false,
        "deprecated": false,
        "security": [
          {
            "UserToken": []
          }
        ],
        "parameters": [],
        "responses": {
          "2XX": {
            "description": "Endpoint-specific JSON, text, binary, redirect or empty success; see the guide. No exhaustive response schema is asserted."
          },
          "4XX": {
            "description": "Invalid input, authorization, scope, role, privacy, quota or rate-limit error"
          },
          "5XX": {
            "description": "Service or upstream failure"
          }
        }
      }
    },
    "/push/vapid": {
      "get": {
        "operationId": "get_push_vapid",
        "tags": [
          "push"
        ],
        "summary": "GET /push/vapid",
        "description": "Request keys are observed in the implementation; unknown types are deliberately unconstrained. Server-side validation, membership, roles, privacy and rank checks still apply.",
        "x-velora-scopes": {},
        "x-captcha-required": false,
        "x-velora-legacy": false,
        "deprecated": false,
        "security": [],
        "parameters": [],
        "responses": {
          "2XX": {
            "description": "Endpoint-specific JSON, text, binary, redirect or empty success; see the guide. No exhaustive response schema is asserted."
          },
          "4XX": {
            "description": "Invalid input, authorization, scope, role, privacy, quota or rate-limit error"
          },
          "5XX": {
            "description": "Service or upstream failure"
          }
        }
      }
    },
    "/push/state": {
      "get": {
        "operationId": "get_push_state",
        "tags": [
          "push"
        ],
        "summary": "GET /push/state",
        "description": "Browser push switches for chat-type events (messages, calls, mentions, achievements...). Friends, credits and announcements are notifications now and follow GET /account/notification-settings instead. Request keys are observed in the implementation; unknown types are deliberately unconstrained. Server-side validation, membership, roles, privacy and rank checks still apply.",
        "x-velora-scopes": {},
        "x-captcha-required": false,
        "x-velora-legacy": false,
        "deprecated": false,
        "security": [
          {
            "UserToken": []
          }
        ],
        "parameters": [],
        "responses": {
          "2XX": {
            "description": "Endpoint-specific JSON, text, binary, redirect or empty success; see the guide. No exhaustive response schema is asserted."
          },
          "4XX": {
            "description": "Invalid input, authorization, scope, role, privacy, quota or rate-limit error"
          },
          "5XX": {
            "description": "Service or upstream failure"
          }
        }
      }
    },
    "/push/subscribe": {
      "post": {
        "operationId": "post_push_subscribe",
        "tags": [
          "push"
        ],
        "summary": "POST /push/subscribe",
        "description": "Request keys are observed in the implementation; unknown types are deliberately unconstrained. Server-side validation, membership, roles, privacy and rank checks still apply.",
        "x-velora-scopes": {},
        "x-captcha-required": false,
        "x-velora-legacy": false,
        "deprecated": false,
        "security": [
          {
            "UserToken": []
          }
        ],
        "parameters": [],
        "responses": {
          "2XX": {
            "description": "Endpoint-specific JSON, text, binary, redirect or empty success; see the guide. No exhaustive response schema is asserted."
          },
          "4XX": {
            "description": "Invalid input, authorization, scope, role, privacy, quota or rate-limit error"
          },
          "5XX": {
            "description": "Service or upstream failure"
          }
        },
        "requestBody": {
          "required": false,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "properties": {
                  "subscription": {
                    "description": "Observed request key. See guide for nested formats and constraints."
                  }
                },
                "additionalProperties": true
              }
            }
          }
        }
      }
    },
    "/push/unsubscribe": {
      "post": {
        "operationId": "post_push_unsubscribe",
        "tags": [
          "push"
        ],
        "summary": "POST /push/unsubscribe",
        "description": "Request keys are observed in the implementation; unknown types are deliberately unconstrained. Server-side validation, membership, roles, privacy and rank checks still apply.",
        "x-velora-scopes": {},
        "x-captcha-required": false,
        "x-velora-legacy": false,
        "deprecated": false,
        "security": [
          {
            "UserToken": []
          }
        ],
        "parameters": [],
        "responses": {
          "2XX": {
            "description": "Endpoint-specific JSON, text, binary, redirect or empty success; see the guide. No exhaustive response schema is asserted."
          },
          "4XX": {
            "description": "Invalid input, authorization, scope, role, privacy, quota or rate-limit error"
          },
          "5XX": {
            "description": "Service or upstream failure"
          }
        },
        "requestBody": {
          "required": false,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "properties": {
                  "endpoint": {
                    "description": "Observed request key. See guide for nested formats and constraints."
                  }
                },
                "additionalProperties": true
              }
            }
          }
        }
      }
    },
    "/push/prefs": {
      "patch": {
        "operationId": "patch_push_prefs",
        "tags": [
          "push"
        ],
        "summary": "PATCH /push/prefs",
        "description": "Request keys are observed in the implementation; unknown types are deliberately unconstrained. Server-side validation, membership, roles, privacy and rank checks still apply.",
        "x-velora-scopes": {},
        "x-captcha-required": false,
        "x-velora-legacy": false,
        "deprecated": false,
        "security": [
          {
            "UserToken": []
          }
        ],
        "parameters": [],
        "responses": {
          "2XX": {
            "description": "Endpoint-specific JSON, text, binary, redirect or empty success; see the guide. No exhaustive response schema is asserted."
          },
          "4XX": {
            "description": "Invalid input, authorization, scope, role, privacy, quota or rate-limit error"
          },
          "5XX": {
            "description": "Service or upstream failure"
          }
        },
        "requestBody": {
          "required": false,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "properties": {
                  "prefs": {
                    "description": "Observed request key. See guide for nested formats and constraints."
                  }
                },
                "additionalProperties": true
              }
            }
          }
        }
      }
    },
    "/push/test": {
      "post": {
        "operationId": "post_push_test",
        "tags": [
          "push"
        ],
        "summary": "POST /push/test",
        "description": "Request keys are observed in the implementation; unknown types are deliberately unconstrained. Server-side validation, membership, roles, privacy and rank checks still apply.",
        "x-velora-scopes": {},
        "x-captcha-required": false,
        "x-velora-legacy": false,
        "deprecated": false,
        "security": [
          {
            "UserToken": []
          }
        ],
        "parameters": [],
        "responses": {
          "2XX": {
            "description": "Endpoint-specific JSON, text, binary, redirect or empty success; see the guide. No exhaustive response schema is asserted."
          },
          "4XX": {
            "description": "Invalid input, authorization, scope, role, privacy, quota or rate-limit error"
          },
          "5XX": {
            "description": "Service or upstream failure"
          }
        }
      }
    },
    "/arcade/sim.js": {
      "get": {
        "operationId": "get_arcade_sim_js",
        "tags": [
          "arcade"
        ],
        "summary": "GET /arcade/sim.js",
        "description": "Client-specific protocol. See the integration guide before using this endpoint. Request keys are observed in the implementation; unknown types are deliberately unconstrained. Server-side validation, membership, roles, privacy and rank checks still apply.",
        "x-velora-scopes": {},
        "x-captcha-required": false,
        "x-velora-legacy": false,
        "deprecated": false,
        "security": [],
        "parameters": [],
        "responses": {
          "2XX": {
            "description": "Endpoint-specific JSON, text, binary, redirect or empty success; see the guide. No exhaustive response schema is asserted."
          },
          "4XX": {
            "description": "Invalid input, authorization, scope, role, privacy, quota or rate-limit error"
          },
          "5XX": {
            "description": "Service or upstream failure"
          }
        }
      }
    },
    "/arcade/sim.sig": {
      "get": {
        "operationId": "get_arcade_sim_sig",
        "tags": [
          "arcade"
        ],
        "summary": "GET /arcade/sim.sig",
        "description": "Client-specific protocol. See the integration guide before using this endpoint. Request keys are observed in the implementation; unknown types are deliberately unconstrained. Server-side validation, membership, roles, privacy and rank checks still apply.",
        "x-velora-scopes": {},
        "x-captcha-required": false,
        "x-velora-legacy": false,
        "deprecated": false,
        "security": [],
        "parameters": [],
        "responses": {
          "2XX": {
            "description": "Endpoint-specific JSON, text, binary, redirect or empty success; see the guide. No exhaustive response schema is asserted."
          },
          "4XX": {
            "description": "Invalid input, authorization, scope, role, privacy, quota or rate-limit error"
          },
          "5XX": {
            "description": "Service or upstream failure"
          }
        }
      }
    },
    "/arcade/sim-version": {
      "get": {
        "operationId": "get_arcade_sim_version",
        "tags": [
          "arcade"
        ],
        "summary": "GET /arcade/sim-version",
        "description": "Client-specific protocol. See the integration guide before using this endpoint. Request keys are observed in the implementation; unknown types are deliberately unconstrained. Server-side validation, membership, roles, privacy and rank checks still apply.",
        "x-velora-scopes": {},
        "x-captcha-required": false,
        "x-velora-legacy": false,
        "deprecated": false,
        "security": [],
        "parameters": [],
        "responses": {
          "2XX": {
            "description": "Endpoint-specific JSON, text, binary, redirect or empty success; see the guide. No exhaustive response schema is asserted."
          },
          "4XX": {
            "description": "Invalid input, authorization, scope, role, privacy, quota or rate-limit error"
          },
          "5XX": {
            "description": "Service or upstream failure"
          }
        }
      }
    },
    "/arcade/physics.js": {
      "get": {
        "operationId": "get_arcade_physics_js",
        "tags": [
          "arcade"
        ],
        "summary": "GET /arcade/physics.js",
        "description": "Client-specific protocol. See the integration guide before using this endpoint. Request keys are observed in the implementation; unknown types are deliberately unconstrained. Server-side validation, membership, roles, privacy and rank checks still apply.",
        "x-velora-scopes": {},
        "x-captcha-required": false,
        "x-velora-legacy": false,
        "deprecated": false,
        "security": [],
        "parameters": [],
        "responses": {
          "2XX": {
            "description": "Endpoint-specific JSON, text, binary, redirect or empty success; see the guide. No exhaustive response schema is asserted."
          },
          "4XX": {
            "description": "Invalid input, authorization, scope, role, privacy, quota or rate-limit error"
          },
          "5XX": {
            "description": "Service or upstream failure"
          }
        }
      }
    },
    "/arcade/physics.sig": {
      "get": {
        "operationId": "get_arcade_physics_sig",
        "tags": [
          "arcade"
        ],
        "summary": "GET /arcade/physics.sig",
        "description": "Client-specific protocol. See the integration guide before using this endpoint. Request keys are observed in the implementation; unknown types are deliberately unconstrained. Server-side validation, membership, roles, privacy and rank checks still apply.",
        "x-velora-scopes": {},
        "x-captcha-required": false,
        "x-velora-legacy": false,
        "deprecated": false,
        "security": [],
        "parameters": [],
        "responses": {
          "2XX": {
            "description": "Endpoint-specific JSON, text, binary, redirect or empty success; see the guide. No exhaustive response schema is asserted."
          },
          "4XX": {
            "description": "Invalid input, authorization, scope, role, privacy, quota or rate-limit error"
          },
          "5XX": {
            "description": "Service or upstream failure"
          }
        }
      }
    },
    "/arcade/planck.js": {
      "get": {
        "operationId": "get_arcade_planck_js",
        "tags": [
          "arcade"
        ],
        "summary": "GET /arcade/planck.js",
        "description": "Client-specific protocol. See the integration guide before using this endpoint. Request keys are observed in the implementation; unknown types are deliberately unconstrained. Server-side validation, membership, roles, privacy and rank checks still apply.",
        "x-velora-scopes": {},
        "x-captcha-required": false,
        "x-velora-legacy": false,
        "deprecated": false,
        "security": [],
        "parameters": [],
        "responses": {
          "2XX": {
            "description": "Endpoint-specific JSON, text, binary, redirect or empty success; see the guide. No exhaustive response schema is asserted."
          },
          "4XX": {
            "description": "Invalid input, authorization, scope, role, privacy, quota or rate-limit error"
          },
          "5XX": {
            "description": "Service or upstream failure"
          }
        }
      }
    },
    "/arcade/admin": {
      "get": {
        "operationId": "get_arcade_admin",
        "tags": [
          "arcade"
        ],
        "summary": "GET /arcade/admin",
        "description": "Staff authorization required. Client-specific protocol. See the integration guide before using this endpoint. Request keys are observed in the implementation; unknown types are deliberately unconstrained. Server-side validation, membership, roles, privacy and rank checks still apply.",
        "x-velora-scopes": {},
        "x-captcha-required": false,
        "x-velora-legacy": false,
        "deprecated": false,
        "security": [],
        "parameters": [],
        "responses": {
          "2XX": {
            "description": "Endpoint-specific JSON, text, binary, redirect or empty success; see the guide. No exhaustive response schema is asserted."
          },
          "4XX": {
            "description": "Invalid input, authorization, scope, role, privacy, quota or rate-limit error"
          },
          "5XX": {
            "description": "Service or upstream failure"
          }
        }
      }
    },
    "/arcade/showcase": {
      "get": {
        "operationId": "get_arcade_showcase",
        "tags": [
          "arcade"
        ],
        "summary": "GET /arcade/showcase",
        "description": "Client-specific protocol. See the integration guide before using this endpoint. Request keys are observed in the implementation; unknown types are deliberately unconstrained. Server-side validation, membership, roles, privacy and rank checks still apply.",
        "x-velora-scopes": {},
        "x-captcha-required": false,
        "x-velora-legacy": false,
        "deprecated": false,
        "security": [],
        "parameters": [
          {
            "name": "n",
            "in": "query",
            "required": false,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "2XX": {
            "description": "Endpoint-specific JSON, text, binary, redirect or empty success; see the guide. No exhaustive response schema is asserted."
          },
          "4XX": {
            "description": "Invalid input, authorization, scope, role, privacy, quota or rate-limit error"
          },
          "5XX": {
            "description": "Service or upstream failure"
          }
        }
      },
      "post": {
        "operationId": "post_arcade_showcase",
        "tags": [
          "arcade"
        ],
        "summary": "POST /arcade/showcase",
        "description": "Client-specific protocol. See the integration guide before using this endpoint. Request keys are observed in the implementation; unknown types are deliberately unconstrained. Server-side validation, membership, roles, privacy and rank checks still apply.",
        "x-velora-scopes": {
          "PROFILE_READ": 1
        },
        "x-captcha-required": false,
        "x-velora-legacy": false,
        "deprecated": false,
        "security": [
          {
            "UserToken": []
          }
        ],
        "parameters": [],
        "responses": {
          "2XX": {
            "description": "Endpoint-specific JSON, text, binary, redirect or empty success; see the guide. No exhaustive response schema is asserted."
          },
          "4XX": {
            "description": "Invalid input, authorization, scope, role, privacy, quota or rate-limit error"
          },
          "5XX": {
            "description": "Service or upstream failure"
          }
        },
        "requestBody": {
          "required": false,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "properties": {
                  "badges": {
                    "description": "Observed request key. See guide for nested formats and constraints."
                  }
                },
                "additionalProperties": true
              }
            }
          }
        }
      }
    },
    "/arcade/atlas/index": {
      "get": {
        "operationId": "get_arcade_atlas_index",
        "tags": [
          "arcade"
        ],
        "summary": "GET /arcade/atlas/index",
        "description": "Client-specific protocol. See the integration guide before using this endpoint. Request keys are observed in the implementation; unknown types are deliberately unconstrained. Server-side validation, membership, roles, privacy and rank checks still apply.",
        "x-velora-scopes": {},
        "x-captcha-required": false,
        "x-velora-legacy": false,
        "deprecated": false,
        "security": [],
        "parameters": [
          {
            "name": "cell",
            "in": "query",
            "required": false,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "2XX": {
            "description": "Endpoint-specific JSON, text, binary, redirect or empty success; see the guide. No exhaustive response schema is asserted."
          },
          "4XX": {
            "description": "Invalid input, authorization, scope, role, privacy, quota or rate-limit error"
          },
          "5XX": {
            "description": "Service or upstream failure"
          }
        }
      }
    },
    "/arcade/atlas/{v}/{page}.png": {
      "get": {
        "operationId": "get_arcade_atlas_by_v_by_page_png",
        "tags": [
          "arcade"
        ],
        "summary": "GET /arcade/atlas/:v/:page.png",
        "description": "Client-specific protocol. See the integration guide before using this endpoint. Request keys are observed in the implementation; unknown types are deliberately unconstrained. Server-side validation, membership, roles, privacy and rank checks still apply.",
        "x-velora-scopes": {},
        "x-captcha-required": false,
        "x-velora-legacy": false,
        "deprecated": false,
        "security": [],
        "parameters": [
          {
            "name": "v",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "page",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "cell",
            "in": "query",
            "required": false,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "2XX": {
            "description": "Endpoint-specific JSON, text, binary, redirect or empty success; see the guide. No exhaustive response schema is asserted."
          },
          "4XX": {
            "description": "Invalid input, authorization, scope, role, privacy, quota or rate-limit error"
          },
          "5XX": {
            "description": "Service or upstream failure"
          }
        }
      }
    },
    "/arcade/thumb": {
      "get": {
        "operationId": "get_arcade_thumb",
        "tags": [
          "arcade"
        ],
        "summary": "GET /arcade/thumb",
        "description": "Client-specific protocol. See the integration guide before using this endpoint. Request keys are observed in the implementation; unknown types are deliberately unconstrained. Server-side validation, membership, roles, privacy and rank checks still apply.",
        "x-velora-scopes": {},
        "x-captcha-required": false,
        "x-velora-legacy": false,
        "deprecated": false,
        "security": [],
        "parameters": [
          {
            "name": "u",
            "in": "query",
            "required": false,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "w",
            "in": "query",
            "required": false,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "2XX": {
            "description": "Endpoint-specific JSON, text, binary, redirect or empty success; see the guide. No exhaustive response schema is asserted."
          },
          "4XX": {
            "description": "Invalid input, authorization, scope, role, privacy, quota or rate-limit error"
          },
          "5XX": {
            "description": "Service or upstream failure"
          }
        }
      }
    },
    "/arcade/state": {
      "get": {
        "operationId": "get_arcade_state",
        "tags": [
          "arcade"
        ],
        "summary": "GET /arcade/state",
        "description": "Client-specific protocol. See the integration guide before using this endpoint. Request keys are observed in the implementation; unknown types are deliberately unconstrained. Server-side validation, membership, roles, privacy and rank checks still apply.",
        "x-velora-scopes": {
          "PROFILE_READ": 1
        },
        "x-captcha-required": false,
        "x-velora-legacy": false,
        "deprecated": false,
        "security": [
          {
            "UserToken": []
          }
        ],
        "parameters": [],
        "responses": {
          "2XX": {
            "description": "Endpoint-specific JSON, text, binary, redirect or empty success; see the guide. No exhaustive response schema is asserted."
          },
          "4XX": {
            "description": "Invalid input, authorization, scope, role, privacy, quota or rate-limit error"
          },
          "5XX": {
            "description": "Service or upstream failure"
          }
        }
      }
    },
    "/arcade/machine/{id}": {
      "get": {
        "operationId": "get_arcade_machine_by_id",
        "tags": [
          "arcade"
        ],
        "summary": "GET /arcade/machine/:id",
        "description": "Client-specific protocol. See the integration guide before using this endpoint. Request keys are observed in the implementation; unknown types are deliberately unconstrained. Server-side validation, membership, roles, privacy and rank checks still apply.",
        "x-velora-scopes": {
          "PROFILE_READ": 1
        },
        "x-captcha-required": false,
        "x-velora-legacy": false,
        "deprecated": false,
        "security": [
          {
            "UserToken": []
          }
        ],
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "2XX": {
            "description": "Endpoint-specific JSON, text, binary, redirect or empty success; see the guide. No exhaustive response schema is asserted."
          },
          "4XX": {
            "description": "Invalid input, authorization, scope, role, privacy, quota or rate-limit error"
          },
          "5XX": {
            "description": "Service or upstream failure"
          }
        }
      }
    },
    "/arcade/machine/{id}/play": {
      "post": {
        "operationId": "post_arcade_machine_by_id_play",
        "tags": [
          "arcade"
        ],
        "summary": "POST /arcade/machine/:id/play",
        "description": "Client-specific protocol. See the integration guide before using this endpoint. Request keys are observed in the implementation; unknown types are deliberately unconstrained. Server-side validation, membership, roles, privacy and rank checks still apply.",
        "x-velora-scopes": {
          "PROFILE_READ": 1
        },
        "x-captcha-required": false,
        "x-velora-legacy": false,
        "deprecated": false,
        "security": [
          {
            "UserToken": []
          }
        ],
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "2XX": {
            "description": "Endpoint-specific JSON, text, binary, redirect or empty success; see the guide. No exhaustive response schema is asserted."
          },
          "4XX": {
            "description": "Invalid input, authorization, scope, role, privacy, quota or rate-limit error"
          },
          "5XX": {
            "description": "Service or upstream failure"
          }
        },
        "requestBody": {
          "required": false,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "properties": {
                  "hold": {
                    "description": "Observed request key. See guide for nested formats and constraints."
                  },
                  "seq": {
                    "description": "Observed request key. See guide for nested formats and constraints."
                  },
                  "trace": {
                    "description": "Observed request key. See guide for nested formats and constraints."
                  }
                },
                "additionalProperties": true
              }
            }
          }
        }
      }
    },
    "/arcade/machine/{id}/reset": {
      "post": {
        "operationId": "post_arcade_machine_by_id_reset",
        "tags": [
          "arcade"
        ],
        "summary": "POST /arcade/machine/:id/reset",
        "description": "Client-specific protocol. See the integration guide before using this endpoint. Request keys are observed in the implementation; unknown types are deliberately unconstrained. Server-side validation, membership, roles, privacy and rank checks still apply.",
        "x-velora-scopes": {
          "PROFILE_READ": 1
        },
        "x-captcha-required": false,
        "x-velora-legacy": false,
        "deprecated": false,
        "security": [
          {
            "UserToken": []
          }
        ],
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "2XX": {
            "description": "Endpoint-specific JSON, text, binary, redirect or empty success; see the guide. No exhaustive response schema is asserted."
          },
          "4XX": {
            "description": "Invalid input, authorization, scope, role, privacy, quota or rate-limit error"
          },
          "5XX": {
            "description": "Service or upstream failure"
          }
        }
      }
    },
    "/arcade/check": {
      "post": {
        "operationId": "post_arcade_check",
        "tags": [
          "arcade"
        ],
        "summary": "POST /arcade/check",
        "description": "Client-specific protocol. See the integration guide before using this endpoint. Request keys are observed in the implementation; unknown types are deliberately unconstrained. Server-side validation, membership, roles, privacy and rank checks still apply.",
        "x-velora-scopes": {
          "PROFILE_READ": 1
        },
        "x-captcha-required": false,
        "x-velora-legacy": false,
        "deprecated": false,
        "security": [
          {
            "UserToken": []
          }
        ],
        "parameters": [],
        "responses": {
          "2XX": {
            "description": "Endpoint-specific JSON, text, binary, redirect or empty success; see the guide. No exhaustive response schema is asserted."
          },
          "4XX": {
            "description": "Invalid input, authorization, scope, role, privacy, quota or rate-limit error"
          },
          "5XX": {
            "description": "Service or upstream failure"
          }
        }
      }
    },
    "/arcade/news": {
      "get": {
        "operationId": "get_arcade_news",
        "tags": [
          "arcade"
        ],
        "summary": "GET /arcade/news",
        "description": "Client-specific protocol. See the integration guide before using this endpoint. Request keys are observed in the implementation; unknown types are deliberately unconstrained. Server-side validation, membership, roles, privacy and rank checks still apply.",
        "x-velora-scopes": {
          "PROFILE_READ": 1
        },
        "x-captcha-required": false,
        "x-velora-legacy": false,
        "deprecated": false,
        "security": [
          {
            "UserToken": []
          }
        ],
        "parameters": [],
        "responses": {
          "2XX": {
            "description": "Endpoint-specific JSON, text, binary, redirect or empty success; see the guide. No exhaustive response schema is asserted."
          },
          "4XX": {
            "description": "Invalid input, authorization, scope, role, privacy, quota or rate-limit error"
          },
          "5XX": {
            "description": "Service or upstream failure"
          }
        }
      }
    },
    "/arcade/tutorial": {
      "post": {
        "operationId": "post_arcade_tutorial",
        "tags": [
          "arcade"
        ],
        "summary": "POST /arcade/tutorial",
        "description": "Client-specific protocol. See the integration guide before using this endpoint. Request keys are observed in the implementation; unknown types are deliberately unconstrained. Server-side validation, membership, roles, privacy and rank checks still apply.",
        "x-velora-scopes": {
          "PROFILE_READ": 1
        },
        "x-captcha-required": false,
        "x-velora-legacy": false,
        "deprecated": false,
        "security": [
          {
            "UserToken": []
          }
        ],
        "parameters": [],
        "responses": {
          "2XX": {
            "description": "Endpoint-specific JSON, text, binary, redirect or empty success; see the guide. No exhaustive response schema is asserted."
          },
          "4XX": {
            "description": "Invalid input, authorization, scope, role, privacy, quota or rate-limit error"
          },
          "5XX": {
            "description": "Service or upstream failure"
          }
        },
        "requestBody": {
          "required": false,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "properties": {
                  "done": {
                    "description": "Observed request key. See guide for nested formats and constraints."
                  }
                },
                "additionalProperties": true
              }
            }
          }
        }
      }
    },
    "/arcade/book": {
      "get": {
        "operationId": "get_arcade_book",
        "tags": [
          "arcade"
        ],
        "summary": "GET /arcade/book",
        "description": "Client-specific protocol. See the integration guide before using this endpoint. Request keys are observed in the implementation; unknown types are deliberately unconstrained. Server-side validation, membership, roles, privacy and rank checks still apply.",
        "x-velora-scopes": {
          "PROFILE_READ": 1
        },
        "x-captcha-required": false,
        "x-velora-legacy": false,
        "deprecated": false,
        "security": [
          {
            "UserToken": []
          }
        ],
        "parameters": [],
        "responses": {
          "2XX": {
            "description": "Endpoint-specific JSON, text, binary, redirect or empty success; see the guide. No exhaustive response schema is asserted."
          },
          "4XX": {
            "description": "Invalid input, authorization, scope, role, privacy, quota or rate-limit error"
          },
          "5XX": {
            "description": "Service or upstream failure"
          }
        }
      }
    },
    "/arcade/board": {
      "put": {
        "operationId": "put_arcade_board",
        "tags": [
          "arcade"
        ],
        "summary": "PUT /arcade/board",
        "description": "Client-specific protocol. See the integration guide before using this endpoint. Request keys are observed in the implementation; unknown types are deliberately unconstrained. Server-side validation, membership, roles, privacy and rank checks still apply.",
        "x-velora-scopes": {
          "ACCOUNT_WRITE": 8
        },
        "x-captcha-required": false,
        "x-velora-legacy": false,
        "deprecated": false,
        "security": [
          {
            "UserToken": []
          }
        ],
        "parameters": [],
        "responses": {
          "2XX": {
            "description": "Endpoint-specific JSON, text, binary, redirect or empty success; see the guide. No exhaustive response schema is asserted."
          },
          "4XX": {
            "description": "Invalid input, authorization, scope, role, privacy, quota or rate-limit error"
          },
          "5XX": {
            "description": "Service or upstream failure"
          }
        },
        "requestBody": {
          "required": false,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "properties": {
                  "items": {
                    "description": "Observed request key. See guide for nested formats and constraints."
                  },
                  "kind": {
                    "description": "Observed request key. See guide for nested formats and constraints."
                  }
                },
                "additionalProperties": true
              }
            }
          }
        }
      }
    },
    "/arcade/buy": {
      "post": {
        "operationId": "post_arcade_buy",
        "tags": [
          "arcade"
        ],
        "summary": "POST /arcade/buy",
        "description": "Client-specific protocol. See the integration guide before using this endpoint. Request keys are observed in the implementation; unknown types are deliberately unconstrained. Server-side validation, membership, roles, privacy and rank checks still apply.",
        "x-velora-scopes": {
          "PROFILE_READ": 1
        },
        "x-captcha-required": false,
        "x-velora-legacy": false,
        "deprecated": false,
        "security": [
          {
            "UserToken": []
          }
        ],
        "parameters": [],
        "responses": {
          "2XX": {
            "description": "Endpoint-specific JSON, text, binary, redirect or empty success; see the guide. No exhaustive response schema is asserted."
          },
          "4XX": {
            "description": "Invalid input, authorization, scope, role, privacy, quota or rate-limit error"
          },
          "5XX": {
            "description": "Service or upstream failure"
          }
        },
        "requestBody": {
          "required": false,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "properties": {
                  "bundle": {
                    "description": "Observed request key. See guide for nested formats and constraints."
                  },
                  "machine": {
                    "description": "Observed request key. See guide for nested formats and constraints."
                  }
                },
                "additionalProperties": true
              }
            }
          }
        }
      }
    },
    "/arcade/purchase/{id}": {
      "get": {
        "operationId": "get_arcade_purchase_by_id",
        "tags": [
          "arcade"
        ],
        "summary": "GET /arcade/purchase/:id",
        "description": "Client-specific protocol. See the integration guide before using this endpoint. Request keys are observed in the implementation; unknown types are deliberately unconstrained. Server-side validation, membership, roles, privacy and rank checks still apply.",
        "x-velora-scopes": {
          "PROFILE_READ": 1
        },
        "x-captcha-required": false,
        "x-velora-legacy": false,
        "deprecated": false,
        "security": [
          {
            "UserToken": []
          }
        ],
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "2XX": {
            "description": "Endpoint-specific JSON, text, binary, redirect or empty success; see the guide. No exhaustive response schema is asserted."
          },
          "4XX": {
            "description": "Invalid input, authorization, scope, role, privacy, quota or rate-limit error"
          },
          "5XX": {
            "description": "Service or upstream failure"
          }
        }
      }
    },
    "/arcade/purchase/{id}/cancel": {
      "post": {
        "operationId": "post_arcade_purchase_by_id_cancel",
        "tags": [
          "arcade"
        ],
        "summary": "POST /arcade/purchase/:id/cancel",
        "description": "Client-specific protocol. See the integration guide before using this endpoint. Request keys are observed in the implementation; unknown types are deliberately unconstrained. Server-side validation, membership, roles, privacy and rank checks still apply.",
        "x-velora-scopes": {
          "PROFILE_READ": 1
        },
        "x-captcha-required": false,
        "x-velora-legacy": false,
        "deprecated": false,
        "security": [
          {
            "UserToken": []
          }
        ],
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "2XX": {
            "description": "Endpoint-specific JSON, text, binary, redirect or empty success; see the guide. No exhaustive response schema is asserted."
          },
          "4XX": {
            "description": "Invalid input, authorization, scope, role, privacy, quota or rate-limit error"
          },
          "5XX": {
            "description": "Service or upstream failure"
          }
        }
      }
    },
    "/arcade/profile/{username}": {
      "get": {
        "operationId": "get_arcade_profile_by_username",
        "tags": [
          "arcade"
        ],
        "summary": "GET /arcade/profile/:username",
        "description": "Client-specific protocol. See the integration guide before using this endpoint. Request keys are observed in the implementation; unknown types are deliberately unconstrained. Server-side validation, membership, roles, privacy and rank checks still apply.",
        "x-velora-scopes": {},
        "x-captcha-required": false,
        "x-velora-legacy": false,
        "deprecated": false,
        "security": [],
        "parameters": [
          {
            "name": "username",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "2XX": {
            "description": "Endpoint-specific JSON, text, binary, redirect or empty success; see the guide. No exhaustive response schema is asserted."
          },
          "4XX": {
            "description": "Invalid input, authorization, scope, role, privacy, quota or rate-limit error"
          },
          "5XX": {
            "description": "Service or upstream failure"
          }
        }
      }
    },
    "/bonfire/bots/gallery": {
      "get": {
        "operationId": "get_bonfire_bots_gallery",
        "tags": [
          "bot-gallery"
        ],
        "summary": "GET /bonfire/bots/gallery",
        "description": "Public bot gallery, approved bots only. No login needed. Request keys are observed in the implementation; unknown types are deliberately unconstrained. Server-side validation, membership, roles, privacy and rank checks still apply.",
        "x-velora-scopes": {},
        "x-captcha-required": false,
        "x-velora-legacy": false,
        "deprecated": false,
        "security": [],
        "parameters": [
          {
            "name": "q",
            "in": "query",
            "required": false,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "tag",
            "in": "query",
            "required": false,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "page",
            "in": "query",
            "required": false,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "2XX": {
            "description": "Endpoint-specific JSON, text, binary, redirect or empty success; see the guide. No exhaustive response schema is asserted."
          },
          "4XX": {
            "description": "Invalid input, authorization, scope, role, privacy, quota or rate-limit error"
          },
          "5XX": {
            "description": "Service or upstream failure"
          }
        }
      }
    },
    "/bonfire/bots/gallery/tags": {
      "get": {
        "operationId": "get_bonfire_bots_gallery_tags",
        "tags": [
          "bot-gallery"
        ],
        "summary": "GET /bonfire/bots/gallery/tags",
        "description": "Public bot gallery, approved bots only. No login needed. Request keys are observed in the implementation; unknown types are deliberately unconstrained. Server-side validation, membership, roles, privacy and rank checks still apply.",
        "x-velora-scopes": {},
        "x-captcha-required": false,
        "x-velora-legacy": false,
        "deprecated": false,
        "security": [],
        "parameters": [],
        "responses": {
          "2XX": {
            "description": "Endpoint-specific JSON, text, binary, redirect or empty success; see the guide. No exhaustive response schema is asserted."
          },
          "4XX": {
            "description": "Invalid input, authorization, scope, role, privacy, quota or rate-limit error"
          },
          "5XX": {
            "description": "Service or upstream failure"
          }
        }
      }
    },
    "/bonfire/bots/gallery/{id}": {
      "get": {
        "operationId": "get_bonfire_bots_gallery_by_id",
        "tags": [
          "bot-gallery"
        ],
        "summary": "GET /bonfire/bots/gallery/:id",
        "description": "Public for approved bots. Send the optional bearer token of the bot owner (or staff) to also see a bot that is not listed, with state, review_message and the can_submit / can_withdraw flags. Request keys are observed in the implementation; unknown types are deliberately unconstrained. Server-side validation, membership, roles, privacy and rank checks still apply.",
        "x-velora-scopes": {},
        "x-captcha-required": false,
        "x-velora-legacy": false,
        "deprecated": false,
        "security": [
          {
            "UserToken": []
          }
        ],
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "2XX": {
            "description": "Endpoint-specific JSON, text, binary, redirect or empty success; see the guide. No exhaustive response schema is asserted."
          },
          "4XX": {
            "description": "Invalid input, authorization, scope, role, privacy, quota or rate-limit error"
          },
          "5XX": {
            "description": "Service or upstream failure"
          }
        }
      }
    },
    "/bonfire/bots/gallery/{id}/ticket": {
      "post": {
        "operationId": "post_bonfire_bots_gallery_by_id_ticket",
        "tags": [
          "bot-gallery"
        ],
        "summary": "POST /bonfire/bots/gallery/:id/ticket",
        "description": "Returns a single-use add-ticket (JWS, 5 minutes) for one Ember instance: hand it to POST INSTANCE/api/v1/bots/gallery/add with { ticket, sid }. Request keys are observed in the implementation; unknown types are deliberately unconstrained. Server-side validation, membership, roles, privacy and rank checks still apply.",
        "x-velora-scopes": {
          "CHAT": 2048
        },
        "x-captcha-required": false,
        "x-velora-legacy": false,
        "deprecated": false,
        "security": [
          {
            "UserToken": []
          }
        ],
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "2XX": {
            "description": "Endpoint-specific JSON, text, binary, redirect or empty success; see the guide. No exhaustive response schema is asserted."
          },
          "4XX": {
            "description": "Invalid input, authorization, scope, role, privacy, quota or rate-limit error"
          },
          "5XX": {
            "description": "Service or upstream failure"
          }
        },
        "requestBody": {
          "required": false,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "properties": {
                  "instance": {
                    "description": "Observed request key. See guide for nested formats and constraints."
                  }
                },
                "additionalProperties": true
              }
            }
          }
        }
      }
    },
    "/bonfire/bots/self/installs": {
      "get": {
        "operationId": "get_bonfire_bots_self_installs",
        "tags": [
          "bot-gallery"
        ],
        "summary": "GET /bonfire/bots/self/installs",
        "description": "Bot program, not a person: Authorization: Bot TOKEN (the Nookara bot account token). Lists the Ember instances the bot is installed on (from the instances' 10-minute sync reports; banned instances and banned bots are left out). Each entry has test: true or false; staff test installs are included with test: true and are not counted as real installs, so skip them. Open one INSTANCE/bot/gateway connection per entry and poll again every few minutes. 120 per minute per IP. Errors: invalid_bot_token (401). Request keys are observed in the implementation; unknown types are deliberately unconstrained. Server-side validation, membership, roles, privacy and rank checks still apply.",
        "x-velora-scopes": {},
        "x-captcha-required": false,
        "x-velora-legacy": false,
        "deprecated": false,
        "security": [
          {
            "BotToken": []
          }
        ],
        "parameters": [],
        "responses": {
          "2XX": {
            "description": "Endpoint-specific JSON, text, binary, redirect or empty success; see the guide. No exhaustive response schema is asserted."
          },
          "4XX": {
            "description": "Invalid input, authorization, scope, role, privacy, quota or rate-limit error"
          },
          "5XX": {
            "description": "Service or upstream failure"
          }
        }
      }
    },
    "/chat/bots/{id}/gallery": {
      "get": {
        "operationId": "get_chat_bots_by_id_gallery",
        "tags": [
          "bot-gallery"
        ],
        "summary": "GET /chat/bots/:id/gallery",
        "description": "Bot owner only (or Nookara rank owner). :id is the bot account id. Gallery states: private, pending, approved (verified), rejected, delisted, banned. Request keys are observed in the implementation; unknown types are deliberately unconstrained. Server-side validation, membership, roles, privacy and rank checks still apply.",
        "x-velora-scopes": {
          "CHAT": 2048
        },
        "x-captcha-required": false,
        "x-velora-legacy": false,
        "deprecated": false,
        "security": [
          {
            "UserToken": []
          }
        ],
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "2XX": {
            "description": "Endpoint-specific JSON, text, binary, redirect or empty success; see the guide. No exhaustive response schema is asserted."
          },
          "4XX": {
            "description": "Invalid input, authorization, scope, role, privacy, quota or rate-limit error"
          },
          "5XX": {
            "description": "Service or upstream failure"
          }
        }
      },
      "put": {
        "operationId": "put_chat_bots_by_id_gallery",
        "tags": [
          "bot-gallery"
        ],
        "summary": "PUT /chat/bots/:id/gallery",
        "description": "Bot owner only (or Nookara rank owner). :id is the bot account id. Gallery states: private, pending, approved (verified), rejected, delisted, banned. Request keys are observed in the implementation; unknown types are deliberately unconstrained. Server-side validation, membership, roles, privacy and rank checks still apply.",
        "x-velora-scopes": {
          "CHAT": 2048
        },
        "x-captcha-required": false,
        "x-velora-legacy": false,
        "deprecated": false,
        "security": [
          {
            "UserToken": []
          }
        ],
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "2XX": {
            "description": "Endpoint-specific JSON, text, binary, redirect or empty success; see the guide. No exhaustive response schema is asserted."
          },
          "4XX": {
            "description": "Invalid input, authorization, scope, role, privacy, quota or rate-limit error"
          },
          "5XX": {
            "description": "Service or upstream failure"
          }
        },
        "requestBody": {
          "required": false,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "properties": {
                  "long_description": {
                    "description": "Observed request key. See guide for nested formats and constraints."
                  },
                  "tags": {
                    "description": "Observed request key. See guide for nested formats and constraints."
                  },
                  "support_url": {
                    "description": "Observed request key. See guide for nested formats and constraints."
                  },
                  "links": {
                    "description": "Observed request key. See guide for nested formats and constraints."
                  },
                  "permissions": {
                    "description": "Observed request key. See guide for nested formats and constraints."
                  }
                },
                "additionalProperties": true
              }
            }
          }
        }
      }
    },
    "/chat/bots/{id}/gallery/submit": {
      "post": {
        "operationId": "post_chat_bots_by_id_gallery_submit",
        "tags": [
          "bot-gallery"
        ],
        "summary": "POST /chat/bots/:id/gallery/submit",
        "description": "Bot owner only (or Nookara rank owner). :id is the bot account id. Gallery states: private, pending, approved (verified), rejected, delisted, banned. Request keys are observed in the implementation; unknown types are deliberately unconstrained. Server-side validation, membership, roles, privacy and rank checks still apply.",
        "x-velora-scopes": {
          "CHAT": 2048
        },
        "x-captcha-required": false,
        "x-velora-legacy": false,
        "deprecated": false,
        "security": [
          {
            "UserToken": []
          }
        ],
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "2XX": {
            "description": "Endpoint-specific JSON, text, binary, redirect or empty success; see the guide. No exhaustive response schema is asserted."
          },
          "4XX": {
            "description": "Invalid input, authorization, scope, role, privacy, quota or rate-limit error"
          },
          "5XX": {
            "description": "Service or upstream failure"
          }
        },
        "requestBody": {
          "required": false,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "properties": {
                  "long_description": {
                    "description": "Observed request key. See guide for nested formats and constraints."
                  },
                  "tags": {
                    "description": "Observed request key. See guide for nested formats and constraints."
                  },
                  "support_url": {
                    "description": "Observed request key. See guide for nested formats and constraints."
                  },
                  "links": {
                    "description": "Observed request key. See guide for nested formats and constraints."
                  },
                  "permissions": {
                    "description": "Observed request key. See guide for nested formats and constraints."
                  }
                },
                "additionalProperties": true
              }
            }
          }
        }
      }
    },
    "/chat/bots/{id}/gallery/withdraw": {
      "post": {
        "operationId": "post_chat_bots_by_id_gallery_withdraw",
        "tags": [
          "bot-gallery"
        ],
        "summary": "POST /chat/bots/:id/gallery/withdraw",
        "description": "Bot owner only (or Nookara rank owner). :id is the bot account id. Gallery states: private, pending, approved (verified), rejected, delisted, banned. Request keys are observed in the implementation; unknown types are deliberately unconstrained. Server-side validation, membership, roles, privacy and rank checks still apply.",
        "x-velora-scopes": {
          "CHAT": 2048
        },
        "x-captcha-required": false,
        "x-velora-legacy": false,
        "deprecated": false,
        "security": [
          {
            "UserToken": []
          }
        ],
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "2XX": {
            "description": "Endpoint-specific JSON, text, binary, redirect or empty success; see the guide. No exhaustive response schema is asserted."
          },
          "4XX": {
            "description": "Invalid input, authorization, scope, role, privacy, quota or rate-limit error"
          },
          "5XX": {
            "description": "Service or upstream failure"
          }
        }
      }
    },
    "/health": {
      "get": {
        "operationId": "get_health",
        "tags": [
          "service"
        ],
        "summary": "GET /health",
        "description": "Request keys are observed in the implementation; unknown types are deliberately unconstrained. Server-side validation, membership, roles, privacy and rank checks still apply.",
        "x-velora-scopes": {},
        "x-captcha-required": false,
        "x-velora-legacy": false,
        "deprecated": false,
        "security": [],
        "parameters": [],
        "responses": {
          "2XX": {
            "description": "Endpoint-specific JSON, text, binary, redirect or empty success; see the guide. No exhaustive response schema is asserted."
          },
          "4XX": {
            "description": "Invalid input, authorization, scope, role, privacy, quota or rate-limit error"
          },
          "5XX": {
            "description": "Service or upstream failure"
          }
        }
      }
    },
    "/stats/random-usernames": {
      "get": {
        "operationId": "get_stats_random_usernames",
        "tags": [
          "service"
        ],
        "summary": "GET /stats/random-usernames",
        "description": "Request keys are observed in the implementation; unknown types are deliberately unconstrained. Server-side validation, membership, roles, privacy and rank checks still apply.",
        "x-velora-scopes": {},
        "x-captcha-required": false,
        "x-velora-legacy": false,
        "deprecated": false,
        "security": [],
        "parameters": [],
        "responses": {
          "2XX": {
            "description": "Endpoint-specific JSON, text, binary, redirect or empty success; see the guide. No exhaustive response schema is asserted."
          },
          "4XX": {
            "description": "Invalid input, authorization, scope, role, privacy, quota or rate-limit error"
          },
          "5XX": {
            "description": "Service or upstream failure"
          }
        }
      }
    },
    "/api/tos/current": {
      "get": {
        "operationId": "get_api_tos_current",
        "tags": [
          "auth"
        ],
        "summary": "GET /api/tos/current",
        "description": "Request keys are observed in the implementation; unknown types are deliberately unconstrained. Server-side validation, membership, roles, privacy and rank checks still apply.",
        "x-velora-scopes": {},
        "x-captcha-required": false,
        "x-velora-legacy": false,
        "deprecated": false,
        "security": [],
        "parameters": [],
        "responses": {
          "2XX": {
            "description": "Endpoint-specific JSON, text, binary, redirect or empty success; see the guide. No exhaustive response schema is asserted."
          },
          "4XX": {
            "description": "Invalid input, authorization, scope, role, privacy, quota or rate-limit error"
          },
          "5XX": {
            "description": "Service or upstream failure"
          }
        }
      }
    },
    "/chat/dl": {
      "get": {
        "operationId": "get_chat_dl",
        "tags": [
          "media"
        ],
        "summary": "GET /chat/dl",
        "description": "Request keys are observed in the implementation; unknown types are deliberately unconstrained. Server-side validation, membership, roles, privacy and rank checks still apply.",
        "x-velora-scopes": {},
        "x-captcha-required": false,
        "x-velora-legacy": false,
        "deprecated": false,
        "security": [],
        "parameters": [
          {
            "name": "u",
            "in": "query",
            "required": false,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "n",
            "in": "query",
            "required": false,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "2XX": {
            "description": "Endpoint-specific JSON, text, binary, redirect or empty success; see the guide. No exhaustive response schema is asserted."
          },
          "4XX": {
            "description": "Invalid input, authorization, scope, role, privacy, quota or rate-limit error"
          },
          "5XX": {
            "description": "Service or upstream failure"
          }
        }
      }
    },
    "/.well-known/bonfire/jwks.json": {
      "get": {
        "operationId": "get_well_known_bonfire_jwks_json",
        "tags": [
          "bonfire-identity"
        ],
        "summary": "GET /.well-known/bonfire/jwks.json",
        "description": "Public. Nookara identity keys (Ed25519, JWKS). Instances verify instance tokens, pay receipts and bot-add tickets with it. Request keys are observed in the implementation; unknown types are deliberately unconstrained. Server-side validation, membership, roles, privacy and rank checks still apply.",
        "x-velora-scopes": {},
        "x-captcha-required": false,
        "x-velora-legacy": false,
        "deprecated": false,
        "security": [],
        "parameters": [],
        "responses": {
          "2XX": {
            "description": "Endpoint-specific JSON, text, binary, redirect or empty success; see the guide. No exhaustive response schema is asserted."
          },
          "4XX": {
            "description": "Invalid input, authorization, scope, role, privacy, quota or rate-limit error"
          },
          "5XX": {
            "description": "Service or upstream failure"
          }
        }
      }
    },
    "/bonfire/server-latest.json": {
      "get": {
        "operationId": "get_bonfire_server_latest_json",
        "tags": [
          "bonfire-identity"
        ],
        "summary": "GET /bonfire/server-latest.json",
        "description": "Public. The official bonfire-server build: {version, commit, commit_short, commit_date, built_at, build_id, dirty, message, published_at}. Instances compare themselves with it (GET /api/v1/instance/info, admins). Request keys are observed in the implementation; unknown types are deliberately unconstrained. Server-side validation, membership, roles, privacy and rank checks still apply.",
        "x-velora-scopes": {},
        "x-captcha-required": false,
        "x-velora-legacy": false,
        "deprecated": false,
        "security": [],
        "parameters": [],
        "responses": {
          "2XX": {
            "description": "Endpoint-specific JSON, text, binary, redirect or empty success; see the guide. No exhaustive response schema is asserted."
          },
          "4XX": {
            "description": "Invalid input, authorization, scope, role, privacy, quota or rate-limit error"
          },
          "5XX": {
            "description": "Service or upstream failure"
          }
        }
      }
    },
    "/bonfire/profiles": {
      "get": {
        "operationId": "get_bonfire_profiles",
        "tags": [
          "bonfire-identity"
        ],
        "summary": "GET /bonfire/profiles",
        "description": "Public, up to 100 ids (comma separated Nookara ids). Returns {profiles: [{id, username, display_name, pfp}]}. Instances use it to keep names and pictures of Nookara members fresh. Request keys are observed in the implementation; unknown types are deliberately unconstrained. Server-side validation, membership, roles, privacy and rank checks still apply.",
        "x-velora-scopes": {},
        "x-captcha-required": false,
        "x-velora-legacy": false,
        "deprecated": false,
        "security": [],
        "parameters": [
          {
            "name": "ids",
            "in": "query",
            "required": false,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "2XX": {
            "description": "Endpoint-specific JSON, text, binary, redirect or empty success; see the guide. No exhaustive response schema is asserted."
          },
          "4XX": {
            "description": "Invalid input, authorization, scope, role, privacy, quota or rate-limit error"
          },
          "5XX": {
            "description": "Service or upstream failure"
          }
        }
      }
    },
    "/api/projects": {
      "get": {
        "operationId": "get_api_projects",
        "tags": [
          "projects"
        ],
        "summary": "GET /api/projects",
        "description": "Featured projects: approved apps and games that use Nookara, featured first (then sort order, newest). No sign-in. service = one key from /api/projects/services, q searches the name, tagline and creator, featured=1 only featured ones. limit 1-100 (default 60). Returns { total, limit, offset, projects: [...] }.",
        "x-velora-scopes": {},
        "x-captcha-required": false,
        "x-velora-legacy": false,
        "deprecated": false,
        "security": [],
        "parameters": [
          {
            "name": "q",
            "in": "query",
            "required": false,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "service",
            "in": "query",
            "required": false,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "featured",
            "in": "query",
            "required": false,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "limit",
            "in": "query",
            "required": false,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "offset",
            "in": "query",
            "required": false,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "2XX": {
            "description": "JSON; see the Featured projects section of the guide."
          },
          "4XX": {
            "description": "Invalid input, authorization or rate-limit error (error + a readable message)"
          },
          "5XX": {
            "description": "Service or upstream failure"
          }
        }
      },
      "post": {
        "operationId": "post_api_projects",
        "tags": [
          "projects"
        ],
        "summary": "POST /api/projects",
        "description": "Submit a project for review (status pending; you are the creator). Plain text only (tags are removed). url must be https. services: at least one key. icon / cover: a data:image URI or an https image link, re-hosted by Nookara. Limits: 3 a day per account, 6 a day per IP, 5 open (pending or rejected) at once.",
        "x-velora-scopes": {},
        "x-captcha-required": false,
        "x-velora-legacy": false,
        "deprecated": false,
        "security": [
          {
            "UserToken": []
          }
        ],
        "parameters": [],
        "responses": {
          "2XX": {
            "description": "JSON; see the Featured projects section of the guide."
          },
          "4XX": {
            "description": "Invalid input, authorization or rate-limit error (error + a readable message)"
          },
          "5XX": {
            "description": "Service or upstream failure"
          }
        },
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "properties": {
                  "title": {
                    "type": "string"
                  },
                  "tagline": {
                    "type": "string"
                  },
                  "description": {
                    "type": "string"
                  },
                  "url": {
                    "type": "string"
                  },
                  "services": {
                    "type": "array",
                    "items": {
                      "type": "string"
                    }
                  },
                  "icon": {
                    "type": "string"
                  },
                  "cover": {
                    "type": "string"
                  }
                }
              }
            }
          }
        }
      }
    },
    "/api/projects/services": {
      "get": {
        "operationId": "get_api_projects_services",
        "tags": [
          "projects"
        ],
        "summary": "GET /api/projects/services",
        "description": "The Nookara services a project can list: { services: [{ key, label }] }.",
        "x-velora-scopes": {},
        "x-captcha-required": false,
        "x-velora-legacy": false,
        "deprecated": false,
        "security": [],
        "parameters": [],
        "responses": {
          "2XX": {
            "description": "JSON; see the Featured projects section of the guide."
          },
          "4XX": {
            "description": "Invalid input, authorization or rate-limit error (error + a readable message)"
          },
          "5XX": {
            "description": "Service or upstream failure"
          }
        }
      }
    },
    "/api/projects/mine": {
      "get": {
        "operationId": "get_api_projects_mine",
        "tags": [
          "projects"
        ],
        "summary": "GET /api/projects/mine",
        "description": "Your own submissions in any state (pending, approved, rejected with reject_reason, hidden), plus limits { open, per_day }.",
        "x-velora-scopes": {},
        "x-captcha-required": false,
        "x-velora-legacy": false,
        "deprecated": false,
        "security": [
          {
            "UserToken": []
          }
        ],
        "parameters": [],
        "responses": {
          "2XX": {
            "description": "JSON; see the Featured projects section of the guide."
          },
          "4XX": {
            "description": "Invalid input, authorization or rate-limit error (error + a readable message)"
          },
          "5XX": {
            "description": "Service or upstream failure"
          }
        }
      }
    },
    "/api/projects/{slug}": {
      "get": {
        "operationId": "get_api_projects_by_slug",
        "tags": [
          "projects"
        ],
        "summary": "GET /api/projects/:slug",
        "description": "One approved project. With the submitter's, creator's or staff bearer token a project that is not approved shows too, with status and reject_reason.",
        "x-velora-scopes": {},
        "x-captcha-required": false,
        "x-velora-legacy": false,
        "deprecated": false,
        "security": [],
        "parameters": [
          {
            "name": "slug",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "2XX": {
            "description": "JSON; see the Featured projects section of the guide."
          },
          "4XX": {
            "description": "Invalid input, authorization or rate-limit error (error + a readable message)"
          },
          "5XX": {
            "description": "Service or upstream failure"
          }
        }
      }
    },
    "/api/projects/{id}": {
      "patch": {
        "operationId": "patch_api_projects_by_id",
        "tags": [
          "projects"
        ],
        "summary": "PATCH /api/projects/:id",
        "description": "Edit your own pending or rejected submission (only the fields you send). It goes back to the review queue.",
        "x-velora-scopes": {},
        "x-captcha-required": false,
        "x-velora-legacy": false,
        "deprecated": false,
        "security": [
          {
            "UserToken": []
          }
        ],
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "2XX": {
            "description": "JSON; see the Featured projects section of the guide."
          },
          "4XX": {
            "description": "Invalid input, authorization or rate-limit error (error + a readable message)"
          },
          "5XX": {
            "description": "Service or upstream failure"
          }
        },
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "properties": {
                  "title": {
                    "type": "string"
                  },
                  "tagline": {
                    "type": "string"
                  },
                  "description": {
                    "type": "string"
                  },
                  "url": {
                    "type": "string"
                  },
                  "services": {
                    "type": "array",
                    "items": {
                      "type": "string"
                    }
                  },
                  "icon": {
                    "type": "string"
                  },
                  "cover": {
                    "type": "string"
                  }
                }
              }
            }
          }
        }
      },
      "delete": {
        "operationId": "delete_api_projects_by_id",
        "tags": [
          "projects"
        ],
        "summary": "DELETE /api/projects/:id",
        "description": "Withdraw (delete) your own pending or rejected submission.",
        "x-velora-scopes": {},
        "x-captcha-required": false,
        "x-velora-legacy": false,
        "deprecated": false,
        "security": [
          {
            "UserToken": []
          }
        ],
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "2XX": {
            "description": "JSON; see the Featured projects section of the guide."
          },
          "4XX": {
            "description": "Invalid input, authorization or rate-limit error (error + a readable message)"
          },
          "5XX": {
            "description": "Service or upstream failure"
          }
        }
      }
    }
  },
  "components": {
    "securitySchemes": {
      "UserToken": {
        "type": "http",
        "scheme": "bearer",
        "description": "Scoped Nookara user token"
      },
      "BotToken": {
        "type": "apiKey",
        "in": "header",
        "name": "Authorization",
        "description": "Bot <token>, not Bearer"
      }
    }
  }
}