{
  "openapi": "3.1.0",
  "info": {
    "title": "DiscordBotHost API",
    "version": "1.0.0"
  },
  "servers": [
    {
      "url": "https://my.discordbothost.com/api/v1"
    }
  ],
  "components": {
    "securitySchemes": {
      "bearerAuth": {
        "type": "http",
        "scheme": "bearer"
      }
    }
  },
  "paths": {
    "/me": {
      "get": {
        "operationId": "whoami",
        "security": [
          {
            "bearerAuth": []
          }
        ],
        "x-required-scopes": [
          "read"
        ],
        "responses": {
          "200": {
            "description": "Successful response; checkout and Free claims may require human action",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object"
                }
              }
            }
          },
          "401": {
            "description": "Invalid or revoked bearer token"
          },
          "403": {
            "description": "Scope or account guard denied access"
          },
          "404": {
            "description": "Bot unavailable to this credential"
          },
          "409": {
            "description": "Bot state or confirmation prevents this operation"
          },
          "422": {
            "description": "Invalid input"
          },
          "429": {
            "description": "Per-token rate limit"
          },
          "503": {
            "description": "Runtime or integration unavailable"
          }
        }
      }
    },
    "/plans": {
      "get": {
        "operationId": "list_plans",
        "security": [
          {
            "bearerAuth": []
          }
        ],
        "x-required-scopes": [
          "read"
        ],
        "responses": {
          "200": {
            "description": "Successful response; checkout and Free claims may require human action",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object"
                }
              }
            }
          },
          "401": {
            "description": "Invalid or revoked bearer token"
          },
          "403": {
            "description": "Scope or account guard denied access"
          },
          "404": {
            "description": "Bot unavailable to this credential"
          },
          "409": {
            "description": "Bot state or confirmation prevents this operation"
          },
          "422": {
            "description": "Invalid input"
          },
          "429": {
            "description": "Per-token rate limit"
          },
          "503": {
            "description": "Runtime or integration unavailable"
          }
        }
      }
    },
    "/bots": {
      "get": {
        "operationId": "list_bots",
        "security": [
          {
            "bearerAuth": []
          }
        ],
        "x-required-scopes": [
          "read"
        ],
        "responses": {
          "200": {
            "description": "Successful response; checkout and Free claims may require human action",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object"
                }
              }
            }
          },
          "401": {
            "description": "Invalid or revoked bearer token"
          },
          "403": {
            "description": "Scope or account guard denied access"
          },
          "404": {
            "description": "Bot unavailable to this credential"
          },
          "409": {
            "description": "Bot state or confirmation prevents this operation"
          },
          "422": {
            "description": "Invalid input"
          },
          "429": {
            "description": "Per-token rate limit"
          },
          "503": {
            "description": "Runtime or integration unavailable"
          }
        }
      },
      "post": {
        "operationId": "create_bot",
        "security": [
          {
            "bearerAuth": []
          }
        ],
        "x-required-scopes": [
          "deploy"
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "$schema": "https://json-schema.org/draft/2020-12/schema",
                "type": "object",
                "properties": {
                  "name": {
                    "type": "string",
                    "minLength": 3,
                    "maxLength": 32,
                    "pattern": "^[a-z0-9-]+$"
                  },
                  "runtime": {
                    "type": "string",
                    "enum": [
                      "node",
                      "python"
                    ]
                  },
                  "tier": {
                    "default": "free",
                    "type": "string"
                  },
                  "period": {
                    "default": "monthly",
                    "type": "string",
                    "enum": [
                      "monthly",
                      "yearly"
                    ]
                  }
                },
                "required": [
                  "name",
                  "runtime",
                  "tier",
                  "period"
                ],
                "additionalProperties": false
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Successful response; checkout and Free claims may require human action",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object"
                }
              }
            }
          },
          "401": {
            "description": "Invalid or revoked bearer token"
          },
          "403": {
            "description": "Scope or account guard denied access"
          },
          "404": {
            "description": "Bot unavailable to this credential"
          },
          "409": {
            "description": "Bot state or confirmation prevents this operation"
          },
          "422": {
            "description": "Invalid input"
          },
          "429": {
            "description": "Per-token rate limit"
          },
          "503": {
            "description": "Runtime or integration unavailable"
          }
        }
      }
    },
    "/checkout": {
      "post": {
        "operationId": "start_checkout",
        "security": [
          {
            "bearerAuth": []
          }
        ],
        "x-required-scopes": [
          "deploy"
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "$schema": "https://json-schema.org/draft/2020-12/schema",
                "type": "object",
                "properties": {
                  "name": {
                    "type": "string",
                    "minLength": 3,
                    "maxLength": 32,
                    "pattern": "^[a-z0-9-]+$"
                  },
                  "runtime": {
                    "type": "string",
                    "enum": [
                      "node",
                      "python"
                    ]
                  },
                  "tier": {
                    "default": "free",
                    "type": "string"
                  },
                  "period": {
                    "default": "monthly",
                    "type": "string",
                    "enum": [
                      "monthly",
                      "yearly"
                    ]
                  }
                },
                "required": [
                  "name",
                  "runtime",
                  "tier",
                  "period"
                ],
                "additionalProperties": false
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Successful response; checkout and Free claims may require human action",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object"
                }
              }
            }
          },
          "401": {
            "description": "Invalid or revoked bearer token"
          },
          "403": {
            "description": "Scope or account guard denied access"
          },
          "404": {
            "description": "Bot unavailable to this credential"
          },
          "409": {
            "description": "Bot state or confirmation prevents this operation"
          },
          "422": {
            "description": "Invalid input"
          },
          "429": {
            "description": "Per-token rate limit"
          },
          "503": {
            "description": "Runtime or integration unavailable"
          }
        }
      }
    },
    "/bots/{id}": {
      "get": {
        "operationId": "get_bot",
        "security": [
          {
            "bearerAuth": []
          }
        ],
        "x-required-scopes": [
          "read"
        ],
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Successful response; checkout and Free claims may require human action",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object"
                }
              }
            }
          },
          "401": {
            "description": "Invalid or revoked bearer token"
          },
          "403": {
            "description": "Scope or account guard denied access"
          },
          "404": {
            "description": "Bot unavailable to this credential"
          },
          "409": {
            "description": "Bot state or confirmation prevents this operation"
          },
          "422": {
            "description": "Invalid input"
          },
          "429": {
            "description": "Per-token rate limit"
          },
          "503": {
            "description": "Runtime or integration unavailable"
          }
        }
      },
      "delete": {
        "operationId": "delete_bot",
        "security": [
          {
            "bearerAuth": []
          }
        ],
        "x-required-scopes": [
          "manage"
        ],
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "$schema": "https://json-schema.org/draft/2020-12/schema",
                "type": "object",
                "properties": {
                  "confirm": {
                    "type": "string",
                    "minLength": 1,
                    "maxLength": 1024
                  }
                },
                "required": [
                  "confirm"
                ],
                "additionalProperties": false
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Successful response; checkout and Free claims may require human action",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object"
                }
              }
            }
          },
          "401": {
            "description": "Invalid or revoked bearer token"
          },
          "403": {
            "description": "Scope or account guard denied access"
          },
          "404": {
            "description": "Bot unavailable to this credential"
          },
          "409": {
            "description": "Bot state or confirmation prevents this operation"
          },
          "422": {
            "description": "Invalid input"
          },
          "429": {
            "description": "Per-token rate limit"
          },
          "503": {
            "description": "Runtime or integration unavailable"
          }
        }
      }
    },
    "/bots/{id}/status": {
      "get": {
        "operationId": "get_status",
        "security": [
          {
            "bearerAuth": []
          }
        ],
        "x-required-scopes": [
          "read"
        ],
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Successful response; checkout and Free claims may require human action",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object"
                }
              }
            }
          },
          "401": {
            "description": "Invalid or revoked bearer token"
          },
          "403": {
            "description": "Scope or account guard denied access"
          },
          "404": {
            "description": "Bot unavailable to this credential"
          },
          "409": {
            "description": "Bot state or confirmation prevents this operation"
          },
          "422": {
            "description": "Invalid input"
          },
          "429": {
            "description": "Per-token rate limit"
          },
          "503": {
            "description": "Runtime or integration unavailable"
          }
        }
      }
    },
    "/bots/{id}/usage": {
      "get": {
        "operationId": "get_usage",
        "security": [
          {
            "bearerAuth": []
          }
        ],
        "x-required-scopes": [
          "read"
        ],
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Successful response; checkout and Free claims may require human action",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object"
                }
              }
            }
          },
          "401": {
            "description": "Invalid or revoked bearer token"
          },
          "403": {
            "description": "Scope or account guard denied access"
          },
          "404": {
            "description": "Bot unavailable to this credential"
          },
          "409": {
            "description": "Bot state or confirmation prevents this operation"
          },
          "422": {
            "description": "Invalid input"
          },
          "429": {
            "description": "Per-token rate limit"
          },
          "503": {
            "description": "Runtime or integration unavailable"
          }
        }
      }
    },
    "/bots/{id}/upgrade": {
      "post": {
        "operationId": "request_upgrade",
        "security": [
          {
            "bearerAuth": []
          }
        ],
        "x-required-scopes": [
          "deploy"
        ],
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "$schema": "https://json-schema.org/draft/2020-12/schema",
                "type": "object",
                "properties": {
                  "tier": {
                    "type": "string"
                  },
                  "period": {
                    "default": "monthly",
                    "type": "string",
                    "enum": [
                      "monthly",
                      "yearly"
                    ]
                  }
                },
                "required": [
                  "tier",
                  "period"
                ],
                "additionalProperties": false
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Successful response; checkout and Free claims may require human action",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object"
                }
              }
            }
          },
          "401": {
            "description": "Invalid or revoked bearer token"
          },
          "403": {
            "description": "Scope or account guard denied access"
          },
          "404": {
            "description": "Bot unavailable to this credential"
          },
          "409": {
            "description": "Bot state or confirmation prevents this operation"
          },
          "422": {
            "description": "Invalid input"
          },
          "429": {
            "description": "Per-token rate limit"
          },
          "503": {
            "description": "Runtime or integration unavailable"
          }
        }
      }
    },
    "/bots/{id}/power": {
      "post": {
        "operationId": "power",
        "security": [
          {
            "bearerAuth": []
          }
        ],
        "x-required-scopes": [
          "manage"
        ],
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "$schema": "https://json-schema.org/draft/2020-12/schema",
                "type": "object",
                "properties": {
                  "signal": {
                    "type": "string",
                    "enum": [
                      "start",
                      "stop",
                      "restart"
                    ]
                  }
                },
                "required": [
                  "signal"
                ],
                "additionalProperties": false
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Successful response; checkout and Free claims may require human action",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object"
                }
              }
            }
          },
          "401": {
            "description": "Invalid or revoked bearer token"
          },
          "403": {
            "description": "Scope or account guard denied access"
          },
          "404": {
            "description": "Bot unavailable to this credential"
          },
          "409": {
            "description": "Bot state or confirmation prevents this operation"
          },
          "422": {
            "description": "Invalid input"
          },
          "429": {
            "description": "Per-token rate limit"
          },
          "503": {
            "description": "Runtime or integration unavailable"
          }
        }
      }
    },
    "/bots/{id}/logs": {
      "get": {
        "operationId": "get_logs",
        "security": [
          {
            "bearerAuth": []
          }
        ],
        "x-required-scopes": [
          "read"
        ],
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Successful response; checkout and Free claims may require human action",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object"
                }
              }
            }
          },
          "401": {
            "description": "Invalid or revoked bearer token"
          },
          "403": {
            "description": "Scope or account guard denied access"
          },
          "404": {
            "description": "Bot unavailable to this credential"
          },
          "409": {
            "description": "Bot state or confirmation prevents this operation"
          },
          "422": {
            "description": "Invalid input"
          },
          "429": {
            "description": "Per-token rate limit"
          },
          "503": {
            "description": "Runtime or integration unavailable"
          }
        }
      }
    },
    "/bots/{id}/logs/stream": {
      "get": {
        "operationId": "tail_logs",
        "security": [
          {
            "bearerAuth": []
          }
        ],
        "x-required-scopes": [
          "read"
        ],
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Successful response; checkout and Free claims may require human action",
            "content": {
              "text/event-stream": {
                "schema": {
                  "type": "object"
                }
              }
            }
          },
          "401": {
            "description": "Invalid or revoked bearer token"
          },
          "403": {
            "description": "Scope or account guard denied access"
          },
          "404": {
            "description": "Bot unavailable to this credential"
          },
          "409": {
            "description": "Bot state or confirmation prevents this operation"
          },
          "422": {
            "description": "Invalid input"
          },
          "429": {
            "description": "Per-token rate limit"
          },
          "503": {
            "description": "Runtime or integration unavailable"
          }
        }
      }
    },
    "/bots/{id}/env": {
      "get": {
        "operationId": "get_env",
        "security": [
          {
            "bearerAuth": []
          }
        ],
        "x-required-scopes": [
          "manage"
        ],
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Successful response; checkout and Free claims may require human action",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object"
                }
              }
            }
          },
          "401": {
            "description": "Invalid or revoked bearer token"
          },
          "403": {
            "description": "Scope or account guard denied access"
          },
          "404": {
            "description": "Bot unavailable to this credential"
          },
          "409": {
            "description": "Bot state or confirmation prevents this operation"
          },
          "422": {
            "description": "Invalid input"
          },
          "429": {
            "description": "Per-token rate limit"
          },
          "503": {
            "description": "Runtime or integration unavailable"
          }
        }
      },
      "post": {
        "operationId": "set_env",
        "security": [
          {
            "bearerAuth": []
          }
        ],
        "x-required-scopes": [
          "manage"
        ],
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "$schema": "https://json-schema.org/draft/2020-12/schema",
                "type": "object",
                "properties": {
                  "values": {
                    "type": "object",
                    "propertyNames": {
                      "type": "string",
                      "pattern": "^[A-Z][A-Z0-9_]*$"
                    },
                    "additionalProperties": {
                      "type": "string",
                      "maxLength": 16384
                    }
                  }
                },
                "required": [
                  "values"
                ],
                "additionalProperties": false
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Successful response; checkout and Free claims may require human action",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object"
                }
              }
            }
          },
          "401": {
            "description": "Invalid or revoked bearer token"
          },
          "403": {
            "description": "Scope or account guard denied access"
          },
          "404": {
            "description": "Bot unavailable to this credential"
          },
          "409": {
            "description": "Bot state or confirmation prevents this operation"
          },
          "422": {
            "description": "Invalid input"
          },
          "429": {
            "description": "Per-token rate limit"
          },
          "503": {
            "description": "Runtime or integration unavailable"
          }
        }
      }
    },
    "/bots/{id}/token": {
      "post": {
        "operationId": "set_bot_token",
        "security": [
          {
            "bearerAuth": []
          }
        ],
        "x-required-scopes": [
          "manage"
        ],
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "$schema": "https://json-schema.org/draft/2020-12/schema",
                "type": "object",
                "properties": {
                  "token": {
                    "type": "string",
                    "minLength": 1,
                    "maxLength": 16384,
                    "writeOnly": true
                  }
                },
                "required": [
                  "token"
                ],
                "additionalProperties": false
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Successful response; checkout and Free claims may require human action",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object"
                }
              }
            }
          },
          "401": {
            "description": "Invalid or revoked bearer token"
          },
          "403": {
            "description": "Scope or account guard denied access"
          },
          "404": {
            "description": "Bot unavailable to this credential"
          },
          "409": {
            "description": "Bot state or confirmation prevents this operation"
          },
          "422": {
            "description": "Invalid input"
          },
          "429": {
            "description": "Per-token rate limit"
          },
          "503": {
            "description": "Runtime or integration unavailable"
          }
        }
      }
    },
    "/bots/{id}/files": {
      "get": {
        "operationId": "list_files",
        "security": [
          {
            "bearerAuth": []
          }
        ],
        "x-required-scopes": [
          "manage"
        ],
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "directory",
            "in": "query",
            "required": false,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Successful response; checkout and Free claims may require human action",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object"
                }
              }
            }
          },
          "401": {
            "description": "Invalid or revoked bearer token"
          },
          "403": {
            "description": "Scope or account guard denied access"
          },
          "404": {
            "description": "Bot unavailable to this credential"
          },
          "409": {
            "description": "Bot state or confirmation prevents this operation"
          },
          "422": {
            "description": "Invalid input"
          },
          "429": {
            "description": "Per-token rate limit"
          },
          "503": {
            "description": "Runtime or integration unavailable"
          }
        }
      }
    },
    "/bots/{id}/files/read": {
      "get": {
        "operationId": "read_file",
        "security": [
          {
            "bearerAuth": []
          }
        ],
        "x-required-scopes": [
          "manage"
        ],
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "path",
            "in": "query",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Successful response; checkout and Free claims may require human action",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object"
                }
              }
            }
          },
          "401": {
            "description": "Invalid or revoked bearer token"
          },
          "403": {
            "description": "Scope or account guard denied access"
          },
          "404": {
            "description": "Bot unavailable to this credential"
          },
          "409": {
            "description": "Bot state or confirmation prevents this operation"
          },
          "422": {
            "description": "Invalid input"
          },
          "429": {
            "description": "Per-token rate limit"
          },
          "503": {
            "description": "Runtime or integration unavailable"
          }
        }
      }
    },
    "/bots/{id}/files/write": {
      "post": {
        "operationId": "write_file",
        "security": [
          {
            "bearerAuth": []
          }
        ],
        "x-required-scopes": [
          "manage"
        ],
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "$schema": "https://json-schema.org/draft/2020-12/schema",
                "type": "object",
                "properties": {
                  "path": {
                    "type": "string",
                    "minLength": 1,
                    "maxLength": 1024
                  },
                  "content": {
                    "type": "string",
                    "maxLength": 262144
                  }
                },
                "required": [
                  "path",
                  "content"
                ],
                "additionalProperties": false
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Successful response; checkout and Free claims may require human action",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object"
                }
              }
            }
          },
          "401": {
            "description": "Invalid or revoked bearer token"
          },
          "403": {
            "description": "Scope or account guard denied access"
          },
          "404": {
            "description": "Bot unavailable to this credential"
          },
          "409": {
            "description": "Bot state or confirmation prevents this operation"
          },
          "422": {
            "description": "Invalid input"
          },
          "429": {
            "description": "Per-token rate limit"
          },
          "503": {
            "description": "Runtime or integration unavailable"
          }
        }
      }
    },
    "/bots/{id}/files/upload": {
      "post": {
        "operationId": "upload_files",
        "security": [
          {
            "bearerAuth": []
          }
        ],
        "x-required-scopes": [
          "manage"
        ],
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "$schema": "https://json-schema.org/draft/2020-12/schema",
                "type": "object",
                "properties": {
                  "path": {
                    "type": "string",
                    "minLength": 1,
                    "maxLength": 1024
                  },
                  "base64": {
                    "type": "string",
                    "maxLength": 1398104
                  }
                },
                "required": [
                  "path",
                  "base64"
                ],
                "additionalProperties": false
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Successful response; checkout and Free claims may require human action",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object"
                }
              }
            }
          },
          "401": {
            "description": "Invalid or revoked bearer token"
          },
          "403": {
            "description": "Scope or account guard denied access"
          },
          "404": {
            "description": "Bot unavailable to this credential"
          },
          "409": {
            "description": "Bot state or confirmation prevents this operation"
          },
          "422": {
            "description": "Invalid input"
          },
          "429": {
            "description": "Per-token rate limit"
          },
          "503": {
            "description": "Runtime or integration unavailable"
          }
        }
      }
    },
    "/bots/{id}/files/extract": {
      "post": {
        "operationId": "extract_file",
        "security": [
          {
            "bearerAuth": []
          }
        ],
        "x-required-scopes": [
          "manage"
        ],
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "$schema": "https://json-schema.org/draft/2020-12/schema",
                "type": "object",
                "properties": {
                  "path": {
                    "type": "string",
                    "minLength": 1,
                    "maxLength": 1024
                  }
                },
                "required": [
                  "path"
                ],
                "additionalProperties": false
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Successful response; checkout and Free claims may require human action",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object"
                }
              }
            }
          },
          "401": {
            "description": "Invalid or revoked bearer token"
          },
          "403": {
            "description": "Scope or account guard denied access"
          },
          "404": {
            "description": "Bot unavailable to this credential"
          },
          "409": {
            "description": "Bot state or confirmation prevents this operation"
          },
          "422": {
            "description": "Invalid input"
          },
          "429": {
            "description": "Per-token rate limit"
          },
          "503": {
            "description": "Runtime or integration unavailable"
          }
        }
      }
    },
    "/bots/{id}/github": {
      "post": {
        "operationId": "connect_github",
        "security": [
          {
            "bearerAuth": []
          }
        ],
        "x-required-scopes": [
          "deploy",
          "manage"
        ],
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "$schema": "https://json-schema.org/draft/2020-12/schema",
                "type": "object",
                "properties": {
                  "repo": {
                    "type": "string",
                    "maxLength": 240
                  },
                  "branch": {
                    "default": "main",
                    "type": "string",
                    "minLength": 1,
                    "maxLength": 240
                  }
                },
                "required": [
                  "repo",
                  "branch"
                ],
                "additionalProperties": false
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Successful response; checkout and Free claims may require human action",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object"
                }
              }
            }
          },
          "401": {
            "description": "Invalid or revoked bearer token"
          },
          "403": {
            "description": "Scope or account guard denied access"
          },
          "404": {
            "description": "Bot unavailable to this credential"
          },
          "409": {
            "description": "Bot state or confirmation prevents this operation"
          },
          "422": {
            "description": "Invalid input"
          },
          "429": {
            "description": "Per-token rate limit"
          },
          "503": {
            "description": "Runtime or integration unavailable"
          }
        }
      }
    },
    "/bots/{id}/deploy": {
      "post": {
        "operationId": "deploy",
        "security": [
          {
            "bearerAuth": []
          }
        ],
        "x-required-scopes": [
          "deploy"
        ],
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "$schema": "https://json-schema.org/draft/2020-12/schema",
                "type": "object",
                "properties": {
                  "confirm": {
                    "type": "string",
                    "minLength": 1,
                    "maxLength": 1024
                  }
                },
                "required": [
                  "confirm"
                ],
                "additionalProperties": false
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Successful response; checkout and Free claims may require human action",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object"
                }
              }
            }
          },
          "401": {
            "description": "Invalid or revoked bearer token"
          },
          "403": {
            "description": "Scope or account guard denied access"
          },
          "404": {
            "description": "Bot unavailable to this credential"
          },
          "409": {
            "description": "Bot state or confirmation prevents this operation"
          },
          "422": {
            "description": "Invalid input"
          },
          "429": {
            "description": "Per-token rate limit"
          },
          "503": {
            "description": "Runtime or integration unavailable"
          }
        }
      }
    },
    "/billing": {
      "get": {
        "operationId": "billing_status",
        "security": [
          {
            "bearerAuth": []
          }
        ],
        "x-required-scopes": [
          "billing-read"
        ],
        "responses": {
          "200": {
            "description": "Successful response; checkout and Free claims may require human action",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object"
                }
              }
            }
          },
          "401": {
            "description": "Invalid or revoked bearer token"
          },
          "403": {
            "description": "Scope or account guard denied access"
          },
          "404": {
            "description": "Bot unavailable to this credential"
          },
          "409": {
            "description": "Bot state or confirmation prevents this operation"
          },
          "422": {
            "description": "Invalid input"
          },
          "429": {
            "description": "Per-token rate limit"
          },
          "503": {
            "description": "Runtime or integration unavailable"
          }
        }
      }
    }
  }
}