Skip to content

63e29683 af32b.json

Maxim Mosin edited this page Feb 9, 2023 · 1 revision

etag: 63e29683-af32b Add date: 2023-02-09

{
  "openapi": "3.0.0",
  "info": {
    "contact": {
      "email": "info@timeweb.cloud"
    },
    "title": "Документация публичного API",
    "version": "",
    "description": "# Введение\nAPI Timeweb Cloud позволяет вам управлять ресурсами в облаке программным способом с использованием обычных HTTP-запросов.\n\nМножество функции, которые доступны в панели управления Timeweb Cloud, также доступны через API, что позволяет вам автоматизировать ваши собственные сценарии.\n\nВ этой документации сперва будет описан общий дизайн и принципы работы API, а после этого конкретные конечные точки. Также будут приведены примеры запросов к ним.\n\n\n## Запросы\nЗапросы должны выполняться по протоколу `HTTPS`, чтобы гарантировать шифрование транзакций. Поддерживаются следующие методы запроса:\n|Метод|Применение|\n|--- |--- |\n|GET|Извлекает данные о коллекциях и отдельных ресурсах.|\n|POST|Для коллекций создает новый ресурс этого типа. Также используется для выполнения действий с конкретным ресурсом.|\n|PUT|Обновляет существующий ресурс.|\n|PATCH|Некоторые ресурсы поддерживают частичное обновление, то есть обновление только части атрибутов ресурса, в этом случае вместо метода PUT будет использован PATCH.|\n|DELETE|Удаляет ресурс.|\n\nМетоды `POST`, `PUT` и `PATCH` могут включать объект в тело запроса с типом содержимого `application/json`.\n\n### Параметры в запросах\nНекоторые коллекции поддерживают пагинацию, поиск или сортировку в запросах. В параметрах запроса требуется передать:\n- `limit` — обозначает количество записей, которое необходимо вернуть\n - `offset` — указывает на смещение, относительно начала списка\n - `search` — позволяет указать набор символов для поиска\n - `sort` — можно задать правило сортировки коллекции\n\n## Ответы\nЗапросы вернут один из следующих кодов состояния ответа HTTP:\n\n|Статус|Описание|\n|--- |--- |\n|200 OK|Действие с ресурсом было выполнено успешно.|\n|201 Created|Ресурс был успешно создан. При этом ресурс может быть как уже готовым к использованию, так и находится в процессе запуска.|\n|204 No Content|Действие с ресурсом было выполнено успешно и ответ не содержит дополнительной информации в теле.|\n|400 Bad Request|Был отправлен неверный запрос, например, в нем отсутствуют обязательные параметры и т. д. Тело ответа будет содержать дополнительную информацию об ошибке.|\n|401 Unauthorized|Ошибка аутентификации.|\n|403 Forbidden|Аутентификация прошла успешно, но не достаточно прав для выполнения действия.|\n|404 Not Found|Запрашиваемый ресурс не найден.|\n|409 Conflict|Запрос конфликтует с текущим состоянием.|\n|423 Locked|Ресурс из запроса заблокирован от применения к нему указанного метода.|\n|429 Too Many Requests|Был достигнут лимит по количеству запросов в единицу времени.|\n|500 Internal Server Error|При выполнении запроса произошла какая-то внутренняя ошибка. Чтобы решить эту проблему лучше всего создать тикет в панели управления.|\n\n### Структура успешного ответа\nВсе конечные точки будут возвращать данные в формате `JSON`. Ответы на `GET`-запросы будут иметь на верхнем уровне следующую структуру атрибутов: \n|Название поля|Тип|Описание|\n|--- |--- |--- |\n|[entity_name]|object, object[], string[], number[], boolean|Динамическое поле, которое будет меняться в зависимости от запрашиваемого ресурса и будет содержать все атрибуты, необходимые для описания этого ресурса. Например, при запросе списка баз данных будет возвращаться поле `dbs`, а при запросе конкретного облачного сервера `server`. Для некоторых конечных точек в ответе может возвращаться сразу несколько ресурсов.|\n|meta|object|Опционально. Объект, который содержит вспомогательную информацию о ресурсе. Чаще всего будет встречаться при запросе коллекций и содержать поле `total`, которое будет указывать на количество элементов в коллекции.|\n|response_id|string|Опционально. В большинстве случае в ответе будет содержаться уникальный идентификатор ответа в формате UUIDv4, который однозначно указывает на ваш запрос внутри нашей системы. Если вам потребуется задать вопрос нашей поддержке, то приложив к вопросу этот идентификатор, мы сможем найти ответ на него намного быстрее. Также вы можете использовать этот идентификатор, чтобы убедиться, что это новый ответ на запрос и результат не был получен из кэша.|\n\nПример запроса на получение списка ssh-ключей:\n```\n    HTTP/2.0 200 OK\n    {\n      \"ssh_keys\":[\n          {\n            \"body\":\"ssh-rsa AAAAB3NzaC1sdfghjkOAsBwWhs= example@device.local\",\n            \"created_at\":\"2021-09-15T19:52:27Z\",\n            \"expired_at\":null,\n            \"id\":5297,\n            \"is_default\":false,\n            \"name\":\"example@device.local\",\n            \"used_at\":null,\n            \"used_by\":[]\n          }\n      ],\n      \"meta\":{\n          \"total\":1\n      },\n      \"response_id\":\"94608d15-8672-4eed-8ab6-28bd6fa3cdf7\"\n    }\n```\n\n### Структура ответа с ошибкой\n|Название поля|Тип|Описание|\n|--- |--- |--- |\n|status_code|number|Короткий числовой идентификатор ошибки.|\n|error_code|string|Короткий текстовый идентификатор ошибки, который уточняет числовой идентификатор и удобен для программной обработки. Самый простой пример, это код `not_found` для ошибки 404.|\n|message|string, string[]|Опционально. В большинстве случаев в ответе будет содержаться человекочитаемое подробное описание ошибки или ошибок, которые помогут понять, что нужно исправить.|\n|response_id|string|Опционально. В большинстве случае в ответе будет содержаться уникальный идентификатор ответа в формате UUIDv4, который однозначно указывает на ваш запрос внутри нашей системы. Если вам потребуется задать вопрос нашей поддержке, то приложив к вопросу этот идентификатор, мы сможем найти ответ на него намного быстрее.|\n\nПример:\n```\n    HTTP/2.0 403 Forbidden\n    {\n      \"status_code\": 403,\n      \"error_code\":  \"forbidden\",\n      \"message\":     \"You do not have access for the attempted action\",\n      \"response_id\": \"94608d15-8672-4eed-8ab6-28bd6fa3cdf7\"\n    }\n```\n\n## Статусы ресурсов\nВажно учесть, что при создании большинства ресурсов внутри платформы, вам будет сразу возвращен ответ от сервера со статусом `200 OK` или `201 Created` и идентификатором созданного ресурса в теле ответа, но при этом этот ресурс может быть ещё в *состоянии запуска*.\n\nДля того, чтобы понять в каком состоянии сейчас находится ваш ресурс, мы добавили поле `status` в ответ на получении информации о ресурсе.\n\nСписок статусов будет отличаться в зависимости от типа ресурса. Увидеть поддерживаемый список статусов вы сможете в описании каждого конкретного ресурса.\n\n \n\n## Ограничение скорости запросов (Rate Limiting)\nЧтобы обеспечить стабильность для всех пользователей, Timeweb Cloud защищает API от всплесков входящего трафика анализируя количество запросов c каждого аккаунта к каждой конечной точке.\n\nЕсли ваше приложение отправляет более 20 запросов в секунду на одну конечную точку, то для этого запроса API может вернуть код состояния HTTP `429 Too Many Requests`.\n\n\n## Аутентификация\nДоступ к API осуществляется с помощью JWT-токена. Токенами можно управлять внутри панели управления Timeweb Cloud в разделе *Настройки аккаунта -> Токены API*.\n\nТокен необходимо передавать в заголовке каждого запроса в формате:\n```\n  Authorization: Bearer ${TIMEWEB_CLOUD_TOKEN}\n```\n\n## Формат примеров API\nПримеры в этой документации описаны с помощью `curl`, HTTP-клиента командной строки. На компьютерах `Linux` и `macOS` обычно по-умолчанию установлен `curl`, и он доступен для загрузки на всех популярных платформах, включая `Windows`.\n\nКаждый пример разделен на несколько строк символом `\\`, который совместим с `bash`. Типичный пример выглядит так:\n```\n  curl -X PATCH \n    -H \"Content-Type: application/json\" \n    -H \"Authorization: Bearer ${TIMEWEB_CLOUD_TOKEN}\" \n    -d '{\"name\":\"Cute Corvus\",\"comment\":\"Development Server\"}' \n    \"https://api.timeweb.cloud/api/v1/dedicated/1051\"\n```\n- Параметр `-X` задает метод запроса. Для согласованности метод будет указан во всех примерах, даже если он явно не требуется для методов `GET`.\n- Строки `-H` задают требуемые HTTP-заголовки.\n- Примеры, для которых требуется объект JSON в теле запроса, передают требуемые данные через параметр `-d`.\n\nЧтобы использовать приведенные примеры, не подставляя каждый раз в них свой токен, вы можете добавить токен один раз в переменные окружения в вашей консоли. Например, на `Linux` это можно сделать с помощью команды:\n\n```\nTIMEWEB_CLOUD_TOKEN=\"token\"\n```\n\nПосле этого токен будет автоматически подставляться в ваши запросы.\n\nОбратите внимание, что все значения в этой документации являются примерами. Не полагайтесь на идентификаторы операционных систем, тарифов и т.д., используемые в примерах. Используйте соответствующую конечную точку для получения значений перед созданием ресурсов."
  },
  "servers": [
    {
      "url": "https://api.timeweb.cloud"
    }
  ],
  "tags": [
    {
      "name": "Аккаунт",
      "description": "Группа методов, которая позволяет получить информацию о вашем текущем аккаунте. Обратите внимание, что API предоставляет только базовый функционал для получения общей информации об аккаунте.</br></br> Подробнее о работе с вашим аккаунтом в панели управления в нашей <a href='https://timeweb.cloud/docs/account-management' target='_blank'>базе знаний</a>."
    },
    {
      "name": "Базы данных",
      "description": "Облачная база данных, или База данных как сервис (DBaaS) — облачное решение для хранения структурированных данных и управления ими. DBaaS обеспечивает полностью автоматизированную, гибкую и масштабируемую платформу для работы с базами данных.</br></br> Подробнее об облачных базах данных в нашей <a href='https://timeweb.cloud/docs/dbaas' target='_blank'>базе знаний</a>."
    },
    {
      "name": "Балансировщики",
      "description": "Балансировщик позволяет распределять входящий трафик между несколькими серверами для повышения доступности и отказоустойчивости вашего сервиса.</br></br> Подробнее о балансировщике нагрузки в нашей <a href='https://timeweb.cloud/docs/load-balancer' target='_blank'>базе знаний</a>."
    },
    {
      "name": "Выделенные серверы",
      "description": "Выделенные серверы используют, когда необходимо разместить сложную нагруженную систему, для которой недостаточно мощностей виртуального хостинга или облачного сервера. Это может быть крупный сайт, интернет-магазин, любой ресурсоемкий проект.</br></br> Подробнее о выделенных серверах в нашей <a href='https://timeweb.cloud/docs/dedicated' target='_blank'>базе знаний</a>."
    },
    {
      "name": "Домены",
      "description": "В Timeweb Cloud доступна регистрация и продление доменов более чем в 350 зонах.</br></br> В зависимости от выбранной зоны, домен может быть зарегистрирован через регистратора Таймвэб.Домены или через одного из наших партнеров.</br></br> Подробнее о доменах в нашей <a href='https://timeweb.cloud/docs/domains' target='_blank'>базе знаний</a>."
    },
    {
      "name": "Облачные серверы",
      "description": "Облачные серверы — это способ размещения данных, при котором вы получаете полный доступ (root-доступ) к виртуальному серверу и его настройкам. Вы можете гибко масштабировать параметры (процессор, память, диск) сервера, постепенно добавляя необходимые мощности, когда растет нагрузка, и снижать их, когда нагрузка уменьшается. Соответствующим образом будет увеличиваться или уменьшаться стоимость сервера.</br></br> Подробнее об облачных серверах в нашей <a href='https://timeweb.cloud/docs/cloud-servers' target='_blank'>базе знаний</a>."
    },
    {
      "name": "Образы",
      "description": "Образы — это полная копия вашего облачного сервера в формате `Qcow2`, со всеми настройками операционной системы, программного обеспечения и всем содержимым сервера. </br></br> Подробнее об образах в нашей <a href='https://timeweb.cloud/docs/cloud-servers/manage-servers/server-images' target='_blank'>базе знаний</a>."
    },
    {
      "name": "Проекты",
      "description": "Проекты позволяют организовать ваши ресурсы в группы, соответствующие вашему стилю работы. Вы можете группировать ресурсы (например, облачные и выделенные серверы, балансировщики нагрузки, базы данных и т.д.) таким образом, чтобы они соответствовали приложениям, которые вы размещаете в облаке."
    },
    {
      "name": "Токены API",
      "description": "Токены API — это это JWT-токены с помощью которых вы можете получить доступ к управлению через API вашей облачной инфраструктурой."
    },
    {
      "name": "Kubernetes",
      "description": "Kubernetes — программное обеспечение с открытым исходным кодом, предназначенное для автоматизированного управления контейнерными приложениями. Kubernetes обеспечит автоматическое развертывание, масштабирование, распределение нагрузки, мониторинг сервисов, обработку ошибок и многое другое. </br></br> Подробнее о Kubernetes в нашей <a href='https://timeweb.cloud/docs/k8s' target='_blank'>базе знаний</a>."
    },
    {
      "name": "S3-хранилище",
      "description": "S3-хранилище — это универсальное объектное хранилище, совместимое с Amazon S3 API, в котором можно размещать любые типы статических данных.</br></br> Подробнее о хранилище S3 в нашей <a href='https://timeweb.cloud/docs/s3-storage' target='_blank'>базе знаний</a>.</br></br>Обратите внимание, что данное API предоставляется независимо и совместно с Amazon S3 API. Описание принципов работы и список поддерживаемых методов Amazon S3 API вы можете найти в <a href='https://timeweb.cloud/docs/s3-storage/s3-guide' target='_blank'>базе знаний</a>."
    },
    {
      "name": "SSH-ключи",
      "description": "Для безопасного подключения к облачным серверам вы можете использовать SSH-ключи. Их удобно сохранять в панели управления в разделе <a href='https://timeweb.cloud/my/sshkeys' target='_blank'>SSH-ключи</a>, чтобы использовать при создании новых серверов."
    }
  ],
  "security": [
    {
      "Bearer": []
    }
  ],
  "paths": {
    "/api/v1/account/finances": {
      "get": {
        "summary": "Получение платежной информации",
        "description": "Чтобы получить платежную информацию, отправьте GET запрос на `/api/v1/account/finances`.",
        "x-codeSamples": [
          {
            "lang": "cURL",
            "label": "cURL",
            "source": "curl -X GET \\\n  -H \"Content-Type: application/json\" \\\n  -H \"Authorization: Bearer ${TIMEWEB_CLOUD_TOKEN}\" \\\n  \"https://api.timeweb.cloud/api/v1/account/finances\""
          }
        ],
        "responses": {
          "200": {
            "description": "Объект JSON c ключом `finances`",
            "content": {
              "application/json": {
                "schema": {
                  "allOf": [
                    {
                      "type": "object",
                      "properties": {
                        "finances": {
                          "$ref": "#/components/schemas/finances"
                        }
                      },
                      "required": [
                        "finances"
                      ]
                    },
                    {
                      "type": "object",
                      "properties": {
                        "response_id": {
                          "$ref": "#/components/schemas/response_id"
                        }
                      },
                      "required": [
                        "response_id"
                      ]
                    }
                  ]
                }
              }
            }
          },
          "400": {
            "$ref": "#/components/responses/400"
          },
          "401": {
            "$ref": "#/components/responses/401"
          },
          "403": {
            "$ref": "#/components/responses/403"
          },
          "404": {
            "$ref": "#/components/responses/404"
          },
          "429": {
            "$ref": "#/components/responses/429"
          },
          "500": {
            "$ref": "#/components/responses/500"
          }
        },
        "tags": [
          "Аккаунт"
        ]
      }
    },
    "/api/v1/account/status": {
      "get": {
        "summary": "Получение статуса аккаунта",
        "description": "Чтобы получить статус аккаунта, отправьте GET запрос на `/api/v1/account/status`.",
        "x-codeSamples": [
          {
            "lang": "cURL",
            "label": "cURL",
            "source": "curl -X GET \\\n  -H \"Content-Type: application/json\" \\\n  -H \"Authorization: Bearer ${TIMEWEB_CLOUD_TOKEN}\" \\\n  \"https://api.timeweb.cloud/api/v1/account/status\""
          }
        ],
        "responses": {
          "200": {
            "description": "Объект JSON c ключом `status`",
            "content": {
              "application/json": {
                "schema": {
                  "allOf": [
                    {
                      "type": "object",
                      "properties": {
                        "status": {
                          "$ref": "#/components/schemas/status"
                        }
                      },
                      "required": [
                        "status"
                      ]
                    },
                    {
                      "type": "object",
                      "properties": {
                        "response_id": {
                          "$ref": "#/components/schemas/response_id"
                        }
                      },
                      "required": [
                        "response_id"
                      ]
                    }
                  ]
                }
              }
            }
          },
          "400": {
            "$ref": "#/components/responses/400"
          },
          "401": {
            "$ref": "#/components/responses/401"
          },
          "403": {
            "$ref": "#/components/responses/403"
          },
          "404": {
            "$ref": "#/components/responses/404"
          },
          "429": {
            "$ref": "#/components/responses/429"
          },
          "500": {
            "$ref": "#/components/responses/500"
          }
        },
        "tags": [
          "Аккаунт"
        ]
      }
    },
    "/api/v1/images": {
      "get": {
        "tags": [
          "Образы"
        ],
        "summary": "Получение списка образов",
        "operationId": "Получение_списка_образов_api_v1__account__images_get",
        "description": "Чтобы получить список образов, отправьте GET запрос на `/api/v1/images`",
        "parameters": [
          {
            "$ref": "#/components/parameters/limit"
          },
          {
            "$ref": "#/components/parameters/offset"
          }
        ],
        "responses": {
          "200": {
            "description": "Объект JSON c ключом images",
            "content": {
              "application/json": {
                "schema": {
                  "allOf": [
                    {
                      "$ref": "#/components/schemas/ImagesOutResponse"
                    },
                    {
                      "type": "object",
                      "properties": {
                        "response_id": {
                          "$ref": "#/components/schemas/response_id"
                        }
                      },
                      "required": [
                        "response_id"
                      ]
                    }
                  ]
                },
                "example": {
                  "response_id": "51227247-ab99-44a5-b715-fedd2c785f01",
                  "meta": {
                    "total": 5
                  },
                  "images": [
                    {
                      "id": "bb19e26f-9e86-4e25-b088-d31fb5bba2c0",
                      "status": "new",
                      "created_at": "2023-01-23T16:02:42.403980",
                      "size": 4194304,
                      "description": "image of vds disk",
                      "disk_id": 360780,
                      "location": "ru-1"
                    },
                    {
                      "id": "8f824456-648b-4c90-99b2-8aeaf846650f",
                      "status": "new",
                      "created_at": "2023-01-23T16:02:42.404004",
                      "size": 4194304,
                      "description": "image of vds disk",
                      "disk_id": 528461,
                      "location": "ru-1"
                    },
                    {
                      "id": "f50c38bd-173b-4781-af47-7569b0281551",
                      "status": "new",
                      "created_at": "2023-01-23T16:02:42.404023",
                      "size": 8388608,
                      "description": "image of vds disk",
                      "disk_id": 910049,
                      "location": "ru-1"
                    },
                    {
                      "id": "6ac97819-1b61-45b5-b2d3-b91f5f040ae4",
                      "status": "new",
                      "created_at": "2023-01-23T16:02:42.404041",
                      "size": 33554432,
                      "description": "image of vds disk",
                      "disk_id": 719304,
                      "location": "ru-1"
                    },
                    {
                      "id": "a1eed085-b10d-406f-a716-c956261bd018",
                      "status": "new",
                      "created_at": "2023-01-23T16:02:42.404059",
                      "size": 1048576,
                      "description": "image of vds disk",
                      "disk_id": 335859,
                      "location": "ru-1"
                    }
                  ]
                }
              }
            }
          },
          "400": {
            "$ref": "#/components/responses/400"
          },
          "401": {
            "$ref": "#/components/responses/401"
          },
          "429": {
            "$ref": "#/components/responses/429"
          },
          "500": {
            "$ref": "#/components/responses/500"
          }
        },
        "x-codeSamples": [
          {
            "lang": "cURL",
            "label": "cURL",
            "source": "curl -X GET \\\n  -H \"Content-Type: application/json\" \\\n  -H \"Authorization: Bearer ${TIMEWEB_CLOUD_TOKEN}\" \\\n  \"https://api.timeweb.cloud/api/v1/images\""
          }
        ]
      },
      "post": {
        "tags": [
          "Образы"
        ],
        "summary": "Создание образа",
        "description": "Чтобы создать образ, отправьте POST запрос в `/api/v1/images`, задав необходимые атрибуты. Образ будет создан с использованием предоставленной информации. \n\n Тело ответа будет содержать объект JSON с информацией о созданном образе.\n\n",
        "operationId": "Создание_образа_api_v1__account__images_post",
        "parameters": [],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/ImageInAPI"
              }
            }
          },
          "required": true
        },
        "responses": {
          "201": {
            "description": "Образ создан",
            "content": {
              "application/json": {
                "schema": {
                  "allOf": [
                    {
                      "$ref": "#/components/schemas/ImageOutResponse"
                    },
                    {
                      "type": "object",
                      "properties": {
                        "response_id": {
                          "$ref": "#/components/schemas/response_id"
                        }
                      },
                      "required": [
                        "response_id"
                      ]
                    }
                  ]
                },
                "example": {
                  "response_id": "ecbf298d-1b65-46a4-bfbd-f256163f7ddc",
                  "image": {
                    "id": "05c0b0eb-0571-4ef8-98d1-39861aaf47ae",
                    "status": "new",
                    "created_at": "2023-01-23T16:02:42.403862",
                    "size": 4194304,
                    "description": "image of vds disk",
                    "disk_id": 691780,
                    "location": "ru-1"
                  }
                }
              }
            }
          },
          "400": {
            "$ref": "#/components/responses/400"
          },
          "401": {
            "$ref": "#/components/responses/401"
          },
          "429": {
            "$ref": "#/components/responses/429"
          },
          "500": {
            "$ref": "#/components/responses/500"
          }
        },
        "x-codeSamples": [
          {
            "lang": "cURL",
            "label": "cURL",
            "source": "curl -X POST \\\n  -H \"Content-Type: application/json\" \\\n  -d '{\"description\": \"\\u041c\\u043e\\u0439 \\u043e\\u0431\\u0440\\u0430\\u0437 \\u0434\\u043b\\u044f \\u0434\\u0438\\u0441\\u043a\\u0430 123\", \"disk_id\": 123}' \\\n -H \"Authorization: Bearer ${TIMEWEB_CLOUD_TOKEN}\" \\\n  \"https://api.timeweb.cloud/api/v1/images\""
          }
        ]
      }
    },
    "/api/v1/images/{image_id}": {
      "get": {
        "tags": [
          "Образы"
        ],
        "summary": "Получение информации о образе",
        "description": "Чтобы получить образ, отправьте запрос GET в `/api/v1/images/{image_id}`.",
        "operationId": "Получение_информации_о_образе_api_v1__account__images__image_id__get",
        "parameters": [
          {
            "description": "Идентификатор образа",
            "required": true,
            "schema": {
              "title": "Image Id",
              "type": "string",
              "description": "Идентификатор образа"
            },
            "name": "image_id",
            "in": "path"
          }
        ],
        "responses": {
          "200": {
            "description": "Информация о образе",
            "content": {
              "application/json": {
                "schema": {
                  "allOf": [
                    {
                      "$ref": "#/components/schemas/ImageOutResponse"
                    },
                    {
                      "type": "object",
                      "properties": {
                        "response_id": {
                          "$ref": "#/components/schemas/response_id"
                        }
                      },
                      "required": [
                        "response_id"
                      ]
                    }
                  ]
                },
                "example": {
                  "response_id": "5029d42e-6e4e-4268-8cdc-0906bee034d8",
                  "image": {
                    "id": "6b63f111-f787-4c08-8603-821346e3980c",
                    "status": "new",
                    "created_at": "2023-01-23T16:02:42.404138",
                    "size": 33554432,
                    "description": "image of vds disk",
                    "disk_id": 625724,
                    "location": "ru-1"
                  }
                }
              }
            }
          },
          "400": {
            "$ref": "#/components/responses/400"
          },
          "401": {
            "$ref": "#/components/responses/401"
          },
          "404": {
            "$ref": "#/components/responses/404"
          },
          "429": {
            "$ref": "#/components/responses/429"
          },
          "500": {
            "$ref": "#/components/responses/500"
          }
        },
        "x-codeSamples": [
          {
            "lang": "cURL",
            "label": "cURL",
            "source": "curl -X GET \\\n  -H \"Content-Type: application/json\" \\\n  -H \"Authorization: Bearer ${TIMEWEB_CLOUD_TOKEN}\" \\\n  \"https://api.timeweb.cloud/api/v1/images/e2d0e7f5-6ecb-411c-89c7-8ad0337e9564\""
          }
        ]
      },
      "delete": {
        "tags": [
          "Образы"
        ],
        "summary": "Удаление образа",
        "description": "Чтобы удалить образ, отправьте запрос DELETE в `/api/v1/images/{image_id}`.\n",
        "operationId": "Удаление_образа_api_v1__account__images__image_id__delete",
        "parameters": [
          {
            "description": "Идентификатор образа",
            "required": true,
            "schema": {
              "title": "Image Id",
              "type": "string",
              "description": "Идентификатор образа"
            },
            "name": "image_id",
            "in": "path"
          }
        ],
        "responses": {
          "204": {
            "description": "Образ удален"
          },
          "400": {
            "$ref": "#/components/responses/400"
          },
          "401": {
            "$ref": "#/components/responses/401"
          },
          "429": {
            "$ref": "#/components/responses/429"
          },
          "500": {
            "$ref": "#/components/responses/500"
          }
        },
        "x-codeSamples": [
          {
            "lang": "cURL",
            "label": "cURL",
            "source": "curl -X DELETE \\\n  -H \"Content-Type: application/json\" \\\n  -H \"Authorization: Bearer ${TIMEWEB_CLOUD_TOKEN}\" \\\n  \"https://api.timeweb.cloud/api/v1/images/afac63ab-10bf-4b96-94ff-c7c01780808c\""
          }
        ]
      },
      "patch": {
        "tags": [
          "Образы"
        ],
        "summary": "Обновление информации о образе",
        "operationId": "Обновление_информации_о_образе_api_v1__account__images__image_id__patch",
        "description": "Чтобы обновить только определенные атрибуты образа, отправьте запрос PATCH в `/api/v1/images/{image_id}`.",
        "parameters": [
          {
            "description": "Идентификатор образа",
            "required": true,
            "schema": {
              "title": "Image Id",
              "type": "string",
              "description": "Идентификатор образа"
            },
            "name": "image_id",
            "in": "path"
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/ImageUpdateAPI"
              }
            }
          },
          "required": true
        },
        "responses": {
          "200": {
            "description": "Образ обновлен",
            "content": {
              "application/json": {
                "schema": {
                  "allOf": [
                    {
                      "$ref": "#/components/schemas/ImageOutResponse"
                    },
                    {
                      "type": "object",
                      "properties": {
                        "response_id": {
                          "$ref": "#/components/schemas/response_id"
                        }
                      },
                      "required": [
                        "response_id"
                      ]
                    }
                  ]
                },
                "example": {
                  "response_id": "cdd3a425-802d-4e12-9603-ee5b4a3c06cb",
                  "image": {
                    "id": "5d32183e-0750-4a75-9230-6917dedc6be4",
                    "status": "new",
                    "created_at": "2023-01-23T16:02:42.404209",
                    "size": 1048576,
                    "description": "image of vds disk",
                    "disk_id": 549332,
                    "location": "ru-1"
                  }
                }
              }
            }
          },
          "400": {
            "$ref": "#/components/responses/400"
          },
          "401": {
            "$ref": "#/components/responses/401"
          },
          "404": {
            "$ref": "#/components/responses/404"
          },
          "429": {
            "$ref": "#/components/responses/429"
          },
          "500": {
            "$ref": "#/components/responses/500"
          }
        },
        "x-codeSamples": [
          {
            "lang": "cURL",
            "label": "cURL",
            "source": "curl -X PATCH \\\n  -H \"Content-Type: application/json\" \\\n  -d '{\"description\": \"\\u041e\\u043f\\u0438\\u0441\\u0430\\u043d\\u0438\\u0435 \\u043e\\u0431\\u0440\\u0430\\u0437\\u0430\"}' \\\n -H \"Authorization: Bearer ${TIMEWEB_CLOUD_TOKEN}\" \\\n  \"https://api.timeweb.cloud/api/v1/images/3e2f0b6b-64d4-428d-9a37-707c17d091d2\""
          }
        ]
      }
    },
    "/api/v1/images/{image_id}/download-url": {
      "get": {
        "tags": [
          "Образы"
        ],
        "summary": "Получение информации о ссылках на скачивание образов",
        "description": "Чтобы получить информацию о ссылках на скачивание образов, отправьте запрос GET в `/api/v1/images/{image_id}/download-url`.",
        "operationId": "Получение_информации_о_ссылках_на_скачивание_образов_api_v1__account__images__image_id__download-url_get",
        "parameters": [
          {
            "description": "Идентификатор образа",
            "required": true,
            "schema": {
              "title": "Image Id",
              "type": "string",
              "description": "Идентификатор образа"
            },
            "name": "image_id",
            "in": "path"
          },
          {
            "$ref": "#/components/parameters/limit"
          },
          {
            "$ref": "#/components/parameters/offset"
          }
        ],
        "responses": {
          "200": {
            "description": "Информация о ссылке на загрузку",
            "content": {
              "application/json": {
                "schema": {
                  "allOf": [
                    {
                      "$ref": "#/components/schemas/ImageDownloadsResponse"
                    },
                    {
                      "type": "object",
                      "properties": {
                        "response_id": {
                          "$ref": "#/components/schemas/response_id"
                        }
                      },
                      "required": [
                        "response_id"
                      ]
                    }
                  ]
                },
                "example": {
                  "response_id": "20532d9b-689d-45ab-bd39-1d0aeca63d83",
                  "meta": {
                    "total": 1
                  },
                  "downloads": [
                    {
                      "id": "5624d71f-53f5-4532-ad07-58008642d9f8",
                      "created_at": "2023-01-23T16:02:42.404536",
                      "image": "6b600372-0b54-4913-8b90-278721c841bf",
                      "type": "timeweb",
                      "url": "https://example.com/5624d71f-53f5-4532-ad07-58008642d9f8",
                      "status": "finished"
                    }
                  ]
                }
              }
            }
          },
          "400": {
            "$ref": "#/components/responses/400"
          },
          "401": {
            "$ref": "#/components/responses/401"
          },
          "404": {
            "$ref": "#/components/responses/404"
          },
          "429": {
            "$ref": "#/components/responses/429"
          },
          "500": {
            "$ref": "#/components/responses/500"
          }
        },
        "x-codeSamples": [
          {
            "lang": "cURL",
            "label": "cURL",
            "source": "curl -X GET \\\n  -H \"Content-Type: application/json\" \\\n  -H \"Authorization: Bearer ${TIMEWEB_CLOUD_TOKEN}\" \\\n  \"https://api.timeweb.cloud/api/v1/images/24d93470-ba69-4cca-acfe-56eefae3e755/download-url\""
          }
        ]
      },
      "post": {
        "tags": [
          "Образы"
        ],
        "summary": "Создание ссылки на скачивание образа",
        "description": "Чтобы создать ссылку на скачивание образа, отправьте запрос POST в `/api/v1/images/{image_id}/download-url`.",
        "operationId": "Создание_ссылки_на_скачивание_образа_api_v1__account__images__image_id__download-url_post",
        "parameters": [
          {
            "description": "Идентификатор образа",
            "required": true,
            "schema": {
              "title": "Image Id",
              "type": "string",
              "description": "Идентификатор образа"
            },
            "name": "image_id",
            "in": "path"
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/ImageUrlIn"
              }
            }
          },
          "required": true
        },
        "responses": {
          "201": {
            "description": "Ссылка успешно создана",
            "content": {
              "application/json": {
                "schema": {
                  "allOf": [
                    {
                      "$ref": "#/components/schemas/ImageDownloadResponse"
                    },
                    {
                      "type": "object",
                      "properties": {
                        "response_id": {
                          "$ref": "#/components/schemas/response_id"
                        }
                      },
                      "required": [
                        "response_id"
                      ]
                    }
                  ]
                },
                "example": {
                  "response_id": "fc4d0272-c64b-4713-961f-950e95a95a25",
                  "download": {
                    "id": "e3c1e42c-46c9-45f4-ab85-2656038de934",
                    "created_at": "2023-01-23T16:02:42.404285",
                    "image": "3cc8026d-164d-4f5f-a740-dda3b237f051",
                    "type": "timeweb",
                    "url": "https://example.com/e3c1e42c-46c9-45f4-ab85-2656038de934",
                    "status": "finished"
                  }
                }
              }
            }
          },
          "400": {
            "$ref": "#/components/responses/400"
          },
          "401": {
            "$ref": "#/components/responses/401"
          },
          "404": {
            "$ref": "#/components/responses/404"
          },
          "409": {
            "description": "Образ уже загружен в облачное хранилище",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/BaseError"
                },
                "example": {
                  "status_code": 409,
                  "error_code": "file_already_exists_on_remote",
                  "message": "File with name my_image_from_timeweb.qcow2 already exists on remote",
                  "response_id": "b695c39c-f640-4f61-8c8e-89f1e7bf607c"
                }
              }
            }
          },
          "429": {
            "$ref": "#/components/responses/429"
          },
          "500": {
            "$ref": "#/components/responses/500"
          }
        },
        "x-codeSamples": [
          {
            "lang": "cURL",
            "label": "cURL",
            "source": "curl -X POST \\\n  -H \"Content-Type: application/json\" \\\n  -H \"Authorization: Bearer ${TIMEWEB_CLOUD_TOKEN}\" \\\n  \"https://api.timeweb.cloud/api/v1/images/70ca39d3-4712-4127-bd80-0897749b71aa/download-url\""
          }
        ]
      }
    },
    "/api/v1/images/{image_id}/download-url/{image_url_id}": {
      "get": {
        "tags": [
          "Образы"
        ],
        "summary": "Получение информации о ссылке на скачивание образа",
        "description": "Чтобы получить информацию о ссылке на скачивание образа, отправьте запрос GET в `/api/v1/images/{image_id}/download-url/{image_url_id}`.",
        "operationId": "Получение_информации_о_ссылке_на_скачивание_образа_api_v1__account__images__image_id__download-url__image_url_id__get",
        "parameters": [
          {
            "description": "Идентификатор образа",
            "required": true,
            "schema": {
              "title": "Image Id",
              "type": "string",
              "description": "Идентификатор образа"
            },
            "name": "image_id",
            "in": "path"
          },
          {
            "description": "Идентификатор ссылки",
            "required": true,
            "schema": {
              "title": "Image Url Id",
              "type": "string",
              "description": "Идентификатор ссылки"
            },
            "name": "image_url_id",
            "in": "path"
          }
        ],
        "responses": {
          "200": {
            "description": "Информация о ссылке на загрузку",
            "content": {
              "application/json": {
                "schema": {
                  "allOf": [
                    {
                      "$ref": "#/components/schemas/ImageDownloadResponse"
                    },
                    {
                      "type": "object",
                      "properties": {
                        "response_id": {
                          "$ref": "#/components/schemas/response_id"
                        }
                      },
                      "required": [
                        "response_id"
                      ]
                    }
                  ]
                },
                "example": {
                  "response_id": "b43a6a66-7651-4a6c-b42e-b5f7de3c2548",
                  "download": {
                    "id": "7947a048-1852-4d7c-a120-ca7a7635b9fd",
                    "created_at": "2023-01-23T16:02:42.404446",
                    "image": "f8bde7d3-410a-42c2-8d2e-fed3df3ee9db",
                    "type": "timeweb",
                    "url": "https://example.com/7947a048-1852-4d7c-a120-ca7a7635b9fd",
                    "status": "finished"
                  }
                }
              }
            }
          },
          "400": {
            "$ref": "#/components/responses/400"
          },
          "401": {
            "$ref": "#/components/responses/401"
          },
          "404": {
            "$ref": "#/components/responses/404"
          },
          "429": {
            "$ref": "#/components/responses/429"
          },
          "500": {
            "$ref": "#/components/responses/500"
          }
        },
        "x-codeSamples": [
          {
            "lang": "cURL",
            "label": "cURL",
            "source": "curl -X GET \\\n  -H \"Content-Type: application/json\" \\\n  -H \"Authorization: Bearer ${TIMEWEB_CLOUD_TOKEN}\" \\\n  \"https://api.timeweb.cloud/api/v1/images/5fe53fef-54a8-4a01-9ba7-bccb1cfe3a78/download-url/ea50348f-f312-4b17-b035-3b3e6b92122a\""
          }
        ]
      },
      "delete": {
        "tags": [
          "Образы"
        ],
        "summary": "Удаление ссылки на образ",
        "description": "Чтобы удалить ссылку на образ, отправьте DELETE запрос в `/api/v1/images/{image_id}/download-url/{image_url_id}`.",
        "operationId": "Удаление_ссылки_на_образ_api_v1__account__images__image_id__download-url__image_url_id__delete",
        "parameters": [
          {
            "description": "Идентификатор образа",
            "required": true,
            "schema": {
              "title": "Image Id",
              "type": "string",
              "description": "Идентификатор образа"
            },
            "name": "image_id",
            "in": "path"
          },
          {
            "description": "Идентификатор ссылки",
            "required": true,
            "schema": {
              "title": "Image Url Id",
              "type": "string",
              "description": "Идентификатор ссылки"
            },
            "name": "image_url_id",
            "in": "path"
          }
        ],
        "responses": {
          "204": {
            "description": "Ссылка удалена"
          },
          "400": {
            "$ref": "#/components/responses/400"
          },
          "401": {
            "$ref": "#/components/responses/401"
          },
          "429": {
            "$ref": "#/components/responses/429"
          },
          "500": {
            "$ref": "#/components/responses/500"
          }
        },
        "x-codeSamples": [
          {
            "lang": "cURL",
            "label": "cURL",
            "source": "curl -X DELETE \\\n  -H \"Content-Type: application/json\" \\\n  -H \"Authorization: Bearer ${TIMEWEB_CLOUD_TOKEN}\" \\\n  \"https://api.timeweb.cloud/api/v1/images/a2416ca3-422b-46af-b070-52997737b6f3/download-url/67b74779-769d-401f-90ad-ca39e52f6510\""
          }
        ]
      }
    },
    "/api/v1/balancers": {
      "get": {
        "summary": "Получение списка всех бaлансировщиков",
        "description": "Чтобы получить список всех бaлансировщиков на вашем аккаунте, отправьте GET запрос на `/api/v1/balancers`.\n\n Тело ответа будет представлять собой объект JSON с ключом `balancers`.",
        "parameters": [
          {
            "$ref": "#/components/parameters/limit"
          },
          {
            "$ref": "#/components/parameters/offset"
          }
        ],
        "x-codeSamples": [
          {
            "lang": "cURL",
            "label": "cURL",
            "source": "curl -X GET \\\n  -H \"Content-Type: application/json\" \\\n  -H \"Authorization: Bearer ${TIMEWEB_CLOUD_TOKEN}\" \\\n  \"https://api.timeweb.cloud/api/v1/balancers\""
          }
        ],
        "responses": {
          "200": {
            "description": "Ответ будет представлять собой объект JSON c ключом `balancers`.",
            "content": {
              "application/json": {
                "schema": {
                  "allOf": [
                    {
                      "type": "object",
                      "properties": {
                        "meta": {
                          "$ref": "#/components/schemas/meta"
                        },
                        "balancers": {
                          "type": "array",
                          "items": {
                            "$ref": "#/components/schemas/balancer"
                          }
                        }
                      },
                      "required": [
                        "meta",
                        "balancers"
                      ]
                    },
                    {
                      "type": "object",
                      "properties": {
                        "response_id": {
                          "$ref": "#/components/schemas/response_id"
                        }
                      },
                      "required": [
                        "response_id"
                      ]
                    }
                  ]
                }
              }
            }
          },
          "400": {
            "$ref": "#/components/responses/400"
          },
          "401": {
            "$ref": "#/components/responses/401"
          },
          "403": {
            "$ref": "#/components/responses/403"
          },
          "404": {
            "$ref": "#/components/responses/404"
          },
          "429": {
            "$ref": "#/components/responses/429"
          },
          "500": {
            "$ref": "#/components/responses/500"
          }
        },
        "tags": [
          "Балансировщики"
        ]
      },
      "post": {
        "summary": "Создание бaлансировщика",
        "description": "Чтобы создать бaлансировщик на вашем аккаунте, отправьте POST запрос на `/api/v1/balancers` задав необходимые атрибуты.\n\nБалансировщик будет создан с использованием предоставленной информации. Тело ответа будет содержать объект JSON с информацией о созданном балансировщике.",
        "x-codeSamples": [
          {
            "lang": "cURL",
            "label": "cURL",
            "source": "curl -X POST \\\n  -H \"Content-Type: application/json\" \\\n  -H \"Authorization: Bearer ${TIMEWEB_CLOUD_TOKEN}\" \\\n  \"https://api.timeweb.cloud/api/v1/balancer\""
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/create-balancer"
              }
            }
          },
          "required": true
        },
        "responses": {
          "200": {
            "description": "Ответ будет представлять собой объект JSON c ключом `balancer`.",
            "content": {
              "application/json": {
                "schema": {
                  "allOf": [
                    {
                      "type": "object",
                      "properties": {
                        "balancer": {
                          "$ref": "#/components/schemas/balancer"
                        }
                      },
                      "required": [
                        "balancer"
                      ]
                    },
                    {
                      "type": "object",
                      "properties": {
                        "response_id": {
                          "$ref": "#/components/schemas/response_id"
                        }
                      },
                      "required": [
                        "response_id"
                      ]
                    }
                  ]
                }
              }
            }
          },
          "400": {
            "$ref": "#/components/responses/400"
          },
          "401": {
            "$ref": "#/components/responses/401"
          },
          "403": {
            "$ref": "#/components/responses/403"
          },
          "404": {
            "$ref": "#/components/responses/404"
          },
          "429": {
            "$ref": "#/components/responses/429"
          },
          "500": {
            "$ref": "#/components/responses/500"
          }
        },
        "tags": [
          "Балансировщики"
        ]
      }
    },
    "/api/v1/balancers/{balancer_id}": {
      "get": {
        "summary": "Получение бaлансировщика",
        "description": "Чтобы отобразить информацию об отдельном балансировщике, отправьте запрос GET на `api/v1/balancers/{balancer_id}`.\n",
        "parameters": [
          {
            "$ref": "#/components/parameters/balancer-id"
          }
        ],
        "x-codeSamples": [
          {
            "lang": "cURL",
            "label": "cURL",
            "source": "curl -X GET \\\n  -H \"Content-Type: application/json\" \\\n  -H \"Authorization: Bearer ${TIMEWEB_CLOUD_TOKEN}\" \\\n  \"https://api.timeweb.cloud/api/v1/balancers/1051\""
          }
        ],
        "responses": {
          "200": {
            "description": "Ответ будет представлять собой объект JSON с ключом `balancer`.",
            "content": {
              "application/json": {
                "schema": {
                  "allOf": [
                    {
                      "type": "object",
                      "properties": {
                        "balancer": {
                          "$ref": "#/components/schemas/balancer"
                        }
                      },
                      "required": [
                        "balancer"
                      ]
                    },
                    {
                      "type": "object",
                      "properties": {
                        "response_id": {
                          "$ref": "#/components/schemas/response_id"
                        }
                      },
                      "required": [
                        "response_id"
                      ]
                    }
                  ]
                }
              }
            }
          },
          "400": {
            "$ref": "#/components/responses/400"
          },
          "401": {
            "$ref": "#/components/responses/401"
          },
          "403": {
            "$ref": "#/components/responses/403"
          },
          "404": {
            "$ref": "#/components/responses/404"
          },
          "429": {
            "$ref": "#/components/responses/429"
          },
          "500": {
            "$ref": "#/components/responses/500"
          }
        },
        "tags": [
          "Балансировщики"
        ]
      },
      "patch": {
        "summary": "Обновление балансировщика",
        "description": "Чтобы обновить только определенные атрибуты балансировщика, отправьте запрос PATCH в `api/v1/balancers/{balancer_id}`.\n",
        "parameters": [
          {
            "$ref": "#/components/parameters/balancer-id"
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/update-balancer"
              }
            }
          },
          "required": true
        },
        "x-codeSamples": [
          {
            "lang": "cURL",
            "label": "cURL",
            "source": "curl -X PATCH \\\n  -H \"Content-Type: application/json\" \\\n  -H \"Authorization: Bearer ${TIMEWEB_CLOUD_TOKEN}\" \\\n  -d '${DATA}' \\\n  \"https://api.timeweb.cloud/api/v1/balancers/1051\""
          }
        ],
        "responses": {
          "200": {
            "description": "Ответ будет представлять собой объект JSON с ключом `balancer`.",
            "content": {
              "application/json": {
                "schema": {
                  "allOf": [
                    {
                      "type": "object",
                      "properties": {
                        "balancer": {
                          "$ref": "#/components/schemas/balancer"
                        }
                      },
                      "required": [
                        "balancer"
                      ]
                    },
                    {
                      "type": "object",
                      "properties": {
                        "response_id": {
                          "$ref": "#/components/schemas/response_id"
                        }
                      },
                      "required": [
                        "response_id"
                      ]
                    }
                  ]
                }
              }
            }
          },
          "400": {
            "$ref": "#/components/responses/400"
          },
          "401": {
            "$ref": "#/components/responses/401"
          },
          "403": {
            "$ref": "#/components/responses/403"
          },
          "404": {
            "$ref": "#/components/responses/404"
          },
          "429": {
            "$ref": "#/components/responses/429"
          },
          "500": {
            "$ref": "#/components/responses/500"
          }
        },
        "tags": [
          "Балансировщики"
        ]
      },
      "delete": {
        "summary": "Удаление балансировщика",
        "description": "Чтобы удалить балансировщик, отправьте запрос DELETE в `api/v1/balancers/{balancer_id}`.\n",
        "parameters": [
          {
            "$ref": "#/components/parameters/balancer-id"
          }
        ],
        "x-codeSamples": [
          {
            "lang": "cURL",
            "label": "cURL",
            "source": "curl -X DELETE \\\n  -H \"Content-Type: application/json\" \\\n  -H \"Authorization: Bearer ${TIMEWEB_CLOUD_TOKEN}\" \\\n  \"https://api.timeweb.cloud/api/v1/balancers/1051\""
          }
        ],
        "responses": {
          "204": {
            "description": "Балансировщик успешно удален."
          },
          "400": {
            "$ref": "#/components/responses/400"
          },
          "401": {
            "$ref": "#/components/responses/401"
          },
          "403": {
            "$ref": "#/components/responses/403"
          },
          "404": {
            "$ref": "#/components/responses/404"
          },
          "429": {
            "$ref": "#/components/responses/429"
          },
          "500": {
            "$ref": "#/components/responses/500"
          }
        },
        "tags": [
          "Балансировщики"
        ]
      }
    },
    "/api/v1/balancers/{balancer_id}/ips": {
      "get": {
        "summary": "Получение списка ip адресов балансировщика",
        "description": "Чтобы добавить `ip` адреса к балансировщику, отправьте запрос GET в `api/v1/balancers/{balancer_id}/ips`.\n",
        "parameters": [
          {
            "$ref": "#/components/parameters/balancer-id"
          }
        ],
        "x-codeSamples": [
          {
            "lang": "cURL",
            "label": "cURL",
            "source": "curl -X GET \\\n  -H \"Content-Type: application/json\" \\\n  -H \"Authorization: Bearer ${TIMEWEB_CLOUD_TOKEN}\" \\\n  \"https://api.timeweb.cloud/api/v1/balancers/1051/ips\""
          }
        ],
        "responses": {
          "200": {
            "description": "Ответ будет представлять собой объект JSON c ключом `ips`.",
            "content": {
              "application/json": {
                "schema": {
                  "allOf": [
                    {
                      "type": "object",
                      "properties": {
                        "meta": {
                          "$ref": "#/components/schemas/meta"
                        },
                        "ips": {
                          "type": "array",
                          "items": {
                            "type": "string"
                          }
                        }
                      },
                      "required": [
                        "meta",
                        "ips"
                      ]
                    },
                    {
                      "type": "object",
                      "properties": {
                        "response_id": {
                          "$ref": "#/components/schemas/response_id"
                        }
                      },
                      "required": [
                        "response_id"
                      ]
                    }
                  ]
                }
              }
            }
          },
          "400": {
            "$ref": "#/components/responses/400"
          },
          "401": {
            "$ref": "#/components/responses/401"
          },
          "403": {
            "$ref": "#/components/responses/403"
          },
          "404": {
            "$ref": "#/components/responses/404"
          },
          "429": {
            "$ref": "#/components/responses/429"
          },
          "500": {
            "$ref": "#/components/responses/500"
          }
        },
        "tags": [
          "Балансировщики"
        ]
      },
      "post": {
        "summary": "Добавление ip адресов к балансировщику",
        "description": "Чтобы добавить `ip` адреса к балансировщику, отправьте запрос POST в `api/v1/balancers/{balancer_id}/ips`.\n",
        "parameters": [
          {
            "$ref": "#/components/parameters/balancer-id"
          }
        ],
        "x-codeSamples": [
          {
            "lang": "cURL",
            "label": "cURL",
            "source": "curl -X POST \\\n  -H \"Content-Type: application/json\" \\\n  -H \"Authorization: Bearer ${TIMEWEB_CLOUD_TOKEN}\" \\\n  \"https://api.timeweb.cloud/api/v1/balancers/1051/ips\""
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "properties": {
                  "ips": {
                    "type": "array",
                    "items": {
                      "type": "string",
                      "example": "192.168.0.0"
                    }
                  }
                },
                "required": [
                  "ips"
                ]
              }
            }
          },
          "required": true
        },
        "responses": {
          "204": {
            "description": "`Ip` адреса добавлены к балансировщику"
          },
          "400": {
            "$ref": "#/components/responses/400"
          },
          "401": {
            "$ref": "#/components/responses/401"
          },
          "403": {
            "$ref": "#/components/responses/403"
          },
          "404": {
            "$ref": "#/components/responses/404"
          },
          "429": {
            "$ref": "#/components/responses/429"
          },
          "500": {
            "$ref": "#/components/responses/500"
          }
        },
        "tags": [
          "Балансировщики"
        ]
      },
      "delete": {
        "summary": "Удаление ip адресов из балансировщика",
        "description": "Чтобы удалить `ip` адреса из балансировщика, отправьте запрос DELETE в `api/v1/balancers/{balancer_id}/ips`.\n",
        "parameters": [
          {
            "$ref": "#/components/parameters/balancer-id"
          }
        ],
        "x-codeSamples": [
          {
            "lang": "cURL",
            "label": "cURL",
            "source": "curl -X DELETE \\\n  -H \"Content-Type: application/json\" \\\n  -H \"Authorization: Bearer ${TIMEWEB_CLOUD_TOKEN}\" \\\n  \"https://api.timeweb.cloud/api/v1/balancers/1051/ips\""
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "properties": {
                  "ips": {
                    "type": "array",
                    "items": {
                      "type": "string",
                      "example": "192.168.0.0"
                    }
                  }
                },
                "required": [
                  "ips"
                ]
              }
            }
          },
          "required": true
        },
        "responses": {
          "204": {
            "description": "`Ip` адрес удален из балансировщика"
          },
          "400": {
            "$ref": "#/components/responses/400"
          },
          "401": {
            "$ref": "#/components/responses/401"
          },
          "403": {
            "$ref": "#/components/responses/403"
          },
          "404": {
            "$ref": "#/components/responses/404"
          },
          "429": {
            "$ref": "#/components/responses/429"
          },
          "500": {
            "$ref": "#/components/responses/500"
          }
        },
        "tags": [
          "Балансировщики"
        ]
      }
    },
    "/api/v1/balancers/{balancer_id}/rules": {
      "get": {
        "summary": "Получение правил балансировщика",
        "description": "Получить правила балансировщика балансировщика, отправьте запрос GET в `api/v1/balancers/{balancer_id}/rules`.\n",
        "parameters": [
          {
            "$ref": "#/components/parameters/balancer-id"
          }
        ],
        "x-codeSamples": [
          {
            "lang": "cURL",
            "label": "cURL",
            "source": "curl -X GET \\\n  -H \"Content-Type: application/json\" \\\n  -H \"Authorization: Bearer ${TIMEWEB_CLOUD_TOKEN}\" \\\n  \"https://api.timeweb.cloud/api/v1/balancers/1051/rules\""
          }
        ],
        "responses": {
          "200": {
            "description": "Ответ будет представлять собой объект JSON c ключом `rules`.",
            "content": {
              "application/json": {
                "schema": {
                  "allOf": [
                    {
                      "type": "object",
                      "properties": {
                        "meta": {
                          "$ref": "#/components/schemas/meta"
                        },
                        "rules": {
                          "type": "array",
                          "items": {
                            "$ref": "#/components/schemas/rule"
                          }
                        }
                      },
                      "required": [
                        "meta",
                        "rules"
                      ]
                    },
                    {
                      "type": "object",
                      "properties": {
                        "response_id": {
                          "$ref": "#/components/schemas/response_id"
                        }
                      },
                      "required": [
                        "response_id"
                      ]
                    }
                  ]
                }
              }
            }
          },
          "400": {
            "$ref": "#/components/responses/400"
          },
          "401": {
            "$ref": "#/components/responses/401"
          },
          "403": {
            "$ref": "#/components/responses/403"
          },
          "404": {
            "$ref": "#/components/responses/404"
          },
          "429": {
            "$ref": "#/components/responses/429"
          },
          "500": {
            "$ref": "#/components/responses/500"
          }
        },
        "tags": [
          "Балансировщики"
        ]
      },
      "post": {
        "summary": "Создание правила для балансировщика",
        "description": "Чтобы создать правило для балансировщика, отправьте запрос POST в `api/v1/balancers/{balancer_id}/rules`.\n",
        "parameters": [
          {
            "$ref": "#/components/parameters/balancer-id"
          }
        ],
        "x-codeSamples": [
          {
            "lang": "cURL",
            "label": "cURL",
            "source": "curl -X POST \\\n  -H \"Content-Type: application/json\" \\\n  -H \"Authorization: Bearer ${TIMEWEB_CLOUD_TOKEN}\" \\\n  \"https://api.timeweb.cloud/api/v1/balancers/1051/rules\""
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/create-rule"
              }
            }
          },
          "required": true
        },
        "responses": {
          "200": {
            "description": "Ответ будет представлять собой объект JSON c ключом `rule`.",
            "content": {
              "application/json": {
                "schema": {
                  "allOf": [
                    {
                      "type": "object",
                      "properties": {
                        "rule": {
                          "$ref": "#/components/schemas/rule"
                        }
                      },
                      "required": [
                        "rule"
                      ]
                    },
                    {
                      "type": "object",
                      "properties": {
                        "response_id": {
                          "$ref": "#/components/schemas/response_id"
                        }
                      },
                      "required": [
                        "response_id"
                      ]
                    }
                  ]
                }
              }
            }
          },
          "400": {
            "$ref": "#/components/responses/400"
          },
          "401": {
            "$ref": "#/components/responses/401"
          },
          "403": {
            "$ref": "#/components/responses/403"
          },
          "404": {
            "$ref": "#/components/responses/404"
          },
          "429": {
            "$ref": "#/components/responses/429"
          },
          "500": {
            "$ref": "#/components/responses/500"
          }
        },
        "tags": [
          "Балансировщики"
        ]
      }
    },
    "/api/v1/balancers/{balancer_id}/rules/{rule_id}": {
      "patch": {
        "summary": "Обновление правила для балансировщика",
        "description": "Чтобы обновить правило для балансировщика, отправьте запрос PATCH в `api/v1/balancers/{balancer_id}/rules/{rule_id}`.\n",
        "parameters": [
          {
            "$ref": "#/components/parameters/balancer-id"
          },
          {
            "$ref": "#/components/parameters/rule-id"
          }
        ],
        "x-codeSamples": [
          {
            "lang": "cURL",
            "label": "cURL",
            "source": "curl -X PATCH \\\n  -H \"Content-Type: application/json\" \\\n  -H \"Authorization: Bearer ${TIMEWEB_CLOUD_TOKEN}\" \\\n  \"https://api.timeweb.cloud/api/v1/balancers/1051/rules/123\""
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/update-rule"
              }
            }
          },
          "required": true
        },
        "responses": {
          "200": {
            "description": "Ответ будет представлять собой объект JSON c ключом `rule`.",
            "content": {
              "application/json": {
                "schema": {
                  "allOf": [
                    {
                      "type": "object",
                      "properties": {
                        "rule": {
                          "$ref": "#/components/schemas/rule"
                        }
                      },
                      "required": [
                        "rule"
                      ]
                    },
                    {
                      "type": "object",
                      "properties": {
                        "response_id": {
                          "$ref": "#/components/schemas/response_id"
                        }
                      },
                      "required": [
                        "response_id"
                      ]
                    }
                  ]
                }
              }
            }
          },
          "400": {
            "$ref": "#/components/responses/400"
          },
          "401": {
            "$ref": "#/components/responses/401"
          },
          "403": {
            "$ref": "#/components/responses/403"
          },
          "404": {
            "$ref": "#/components/responses/404"
          },
          "429": {
            "$ref": "#/components/responses/429"
          },
          "500": {
            "$ref": "#/components/responses/500"
          }
        },
        "tags": [
          "Балансировщики"
        ]
      },
      "delete": {
        "summary": "Удаление правила для балансировщика",
        "description": "Чтобы удалить правило для балансировщика, отправьте запрос DELETE в `api/v1/balancers/{balancer_id}/rules/{rule_id}`.\n",
        "parameters": [
          {
            "$ref": "#/components/parameters/balancer-id"
          },
          {
            "$ref": "#/components/parameters/rule-id"
          }
        ],
        "x-codeSamples": [
          {
            "lang": "cURL",
            "label": "cURL",
            "source": "curl -X DELETE \\\n  -H \"Content-Type: application/json\" \\\n  -H \"Authorization: Bearer ${TIMEWEB_CLOUD_TOKEN}\" \\\n  \"https://api.timeweb.cloud/api/v1/balancers/1051/rules/123\""
          }
        ],
        "responses": {
          "204": {
            "description": "Правило удалено из балансировщика"
          },
          "400": {
            "$ref": "#/components/responses/400"
          },
          "401": {
            "$ref": "#/components/responses/401"
          },
          "403": {
            "$ref": "#/components/responses/403"
          },
          "404": {
            "$ref": "#/components/responses/404"
          },
          "429": {
            "$ref": "#/components/responses/429"
          },
          "500": {
            "$ref": "#/components/responses/500"
          }
        },
        "tags": [
          "Балансировщики"
        ]
      }
    },
    "/api/v1/presets/balancers": {
      "get": {
        "summary": "Получение списка тарифов для балансировщика",
        "description": "Чтобы получить список тарифов для балансировщика, отправьте GET запрос на `/api/v1/presets/balancers`.\n\n Тело ответа будет представлять собой объект JSON с ключом `balancers_presets`.",
        "x-codeSamples": [
          {
            "lang": "cURL",
            "label": "cURL",
            "source": "curl -X GET \\\n  -H \"Content-Type: application/json\" \\\n  -H \"Authorization: Bearer ${TIMEWEB_CLOUD_TOKEN}\" \\\n  \"https://api.timeweb.cloud/api/v1/presets/balancers\""
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "allOf": [
                    {
                      "type": "object",
                      "properties": {
                        "meta": {
                          "$ref": "#/components/schemas/meta"
                        },
                        "balancers_presets": {
                          "type": "array",
                          "items": {
                            "$ref": "#/components/schemas/presets-balancer"
                          }
                        }
                      },
                      "required": [
                        "meta",
                        "balancers_presets"
                      ]
                    },
                    {
                      "type": "object",
                      "properties": {
                        "response_id": {
                          "$ref": "#/components/schemas/response_id"
                        }
                      },
                      "required": [
                        "response_id"
                      ]
                    }
                  ]
                }
              }
            },
            "description": "Тарифы успешно получены"
          },
          "400": {
            "$ref": "#/components/responses/400"
          },
          "401": {
            "$ref": "#/components/responses/401"
          },
          "403": {
            "$ref": "#/components/responses/403"
          },
          "404": {
            "$ref": "#/components/responses/404"
          },
          "429": {
            "$ref": "#/components/responses/429"
          },
          "500": {
            "$ref": "#/components/responses/500"
          }
        },
        "tags": [
          "Балансировщики"
        ]
      }
    },
    "/api/v1/dbs": {
      "get": {
        "summary": "Получение списка всех баз данных",
        "description": "Чтобы получить список всех баз данных на вашем аккаунте, отправьте GET запрос на `/api/v1/dbs`.\n\n Тело ответа будет представлять собой объект JSON с ключом `dbs`.",
        "parameters": [
          {
            "$ref": "#/components/parameters/limit"
          },
          {
            "$ref": "#/components/parameters/offset"
          }
        ],
        "x-codeSamples": [
          {
            "lang": "cURL",
            "label": "cURL",
            "source": "curl -X GET \\\n  -H \"Content-Type: application/json\" \\\n  -H \"Authorization: Bearer ${TIMEWEB_CLOUD_TOKEN}\" \\\n  \"https://api.timeweb.cloud/api/v1/dbs\""
          }
        ],
        "responses": {
          "200": {
            "description": "Ответ будет представлять собой объект JSON c ключом `dbs`.",
            "content": {
              "application/json": {
                "schema": {
                  "allOf": [
                    {
                      "type": "object",
                      "properties": {
                        "meta": {
                          "$ref": "#/components/schemas/meta"
                        },
                        "dbs": {
                          "type": "array",
                          "items": {
                            "$ref": "#/components/schemas/db"
                          }
                        }
                      },
                      "required": [
                        "meta",
                        "dbs"
                      ]
                    },
                    {
                      "type": "object",
                      "properties": {
                        "response_id": {
                          "$ref": "#/components/schemas/response_id"
                        }
                      },
                      "required": [
                        "response_id"
                      ]
                    }
                  ]
                }
              }
            }
          },
          "400": {
            "$ref": "#/components/responses/400"
          },
          "401": {
            "$ref": "#/components/responses/401"
          },
          "403": {
            "$ref": "#/components/responses/403"
          },
          "404": {
            "$ref": "#/components/responses/404"
          },
          "429": {
            "$ref": "#/components/responses/429"
          },
          "500": {
            "$ref": "#/components/responses/500"
          }
        },
        "tags": [
          "Базы данных"
        ]
      },
      "post": {
        "summary": "Создание базы данных",
        "description": "Чтобы создать базу данных на вашем аккаунте, отправьте POST запрос на `/api/v1/dbs` задав необходимые атрибуты.\n\nБаза данных будет создана с использованием предоставленной информации. Тело ответа будет содержать объект JSON с информацией о созданной базе данных.",
        "x-codeSamples": [
          {
            "lang": "cURL",
            "label": "cURL",
            "source": "curl -X POST \\\n  -H \"Content-Type: application/json\" \\\n  -H \"Authorization: Bearer ${TIMEWEB_CLOUD_TOKEN}\" \\\n  \"https://api.timeweb.cloud/api/v1/db\""
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/create-db"
              }
            }
          },
          "required": true
        },
        "responses": {
          "201": {
            "description": "Ответ будет представлять собой объект JSON c ключом `db`.",
            "content": {
              "application/json": {
                "schema": {
                  "allOf": [
                    {
                      "type": "object",
                      "properties": {
                        "db": {
                          "$ref": "#/components/schemas/db"
                        }
                      },
                      "required": [
                        "db"
                      ]
                    },
                    {
                      "type": "object",
                      "properties": {
                        "response_id": {
                          "$ref": "#/components/schemas/response_id"
                        }
                      },
                      "required": [
                        "response_id"
                      ]
                    }
                  ]
                }
              }
            }
          },
          "400": {
            "$ref": "#/components/responses/400"
          },
          "401": {
            "$ref": "#/components/responses/401"
          },
          "403": {
            "$ref": "#/components/responses/403"
          },
          "404": {
            "$ref": "#/components/responses/404"
          },
          "429": {
            "$ref": "#/components/responses/429"
          },
          "500": {
            "$ref": "#/components/responses/500"
          }
        },
        "tags": [
          "Базы данных"
        ]
      }
    },
    "/api/v1/dbs/{db_id}": {
      "get": {
        "summary": "Получение базы данных",
        "description": "Чтобы отобразить информацию об отдельной базе данных, отправьте запрос GET на `api/v1/dbs/{db_id}`.\n",
        "parameters": [
          {
            "$ref": "#/components/parameters/dbs-id"
          }
        ],
        "x-codeSamples": [
          {
            "lang": "cURL",
            "label": "cURL",
            "source": "curl -X GET \\\n  -H \"Content-Type: application/json\" \\\n  -H \"Authorization: Bearer ${TIMEWEB_CLOUD_TOKEN}\" \\\n  \"https://api.timeweb.cloud/api/v1/dbs/1051\""
          }
        ],
        "responses": {
          "200": {
            "description": "Ответ будет представлять собой объект JSON с ключом `db`.",
            "content": {
              "application/json": {
                "schema": {
                  "allOf": [
                    {
                      "type": "object",
                      "properties": {
                        "db": {
                          "$ref": "#/components/schemas/db"
                        }
                      },
                      "required": [
                        "db"
                      ]
                    },
                    {
                      "type": "object",
                      "properties": {
                        "response_id": {
                          "$ref": "#/components/schemas/response_id"
                        }
                      },
                      "required": [
                        "response_id"
                      ]
                    }
                  ]
                }
              }
            }
          },
          "400": {
            "$ref": "#/components/responses/400"
          },
          "401": {
            "$ref": "#/components/responses/401"
          },
          "403": {
            "$ref": "#/components/responses/403"
          },
          "404": {
            "$ref": "#/components/responses/404"
          },
          "429": {
            "$ref": "#/components/responses/429"
          },
          "500": {
            "$ref": "#/components/responses/500"
          }
        },
        "tags": [
          "Базы данных"
        ]
      },
      "patch": {
        "summary": "Обновление базы данных",
        "description": "Чтобы обновить только определенные атрибуты базы данных, отправьте запрос PATCH в `api/v1/dbs/{db_id}`.\n",
        "parameters": [
          {
            "$ref": "#/components/parameters/dbs-id"
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/update-db"
              }
            }
          },
          "required": true
        },
        "x-codeSamples": [
          {
            "lang": "cURL",
            "label": "cURL",
            "source": "curl -X PATCH \\\n  -H \"Content-Type: application/json\" \\\n  -H \"Authorization: Bearer ${TIMEWEB_CLOUD_TOKEN}\" \\\n  -d '${DATA}' \\\n  \"https://api.timeweb.cloud/api/v1/dbs/1051\""
          }
        ],
        "responses": {
          "200": {
            "description": "Ответ будет представлять собой объект JSON с ключом `db`.",
            "content": {
              "application/json": {
                "schema": {
                  "allOf": [
                    {
                      "type": "object",
                      "properties": {
                        "db": {
                          "$ref": "#/components/schemas/db"
                        }
                      },
                      "required": [
                        "db"
                      ]
                    },
                    {
                      "type": "object",
                      "properties": {
                        "response_id": {
                          "$ref": "#/components/schemas/response_id"
                        }
                      },
                      "required": [
                        "response_id"
                      ]
                    }
                  ]
                }
              }
            }
          },
          "400": {
            "$ref": "#/components/responses/400"
          },
          "401": {
            "$ref": "#/components/responses/401"
          },
          "403": {
            "$ref": "#/components/responses/403"
          },
          "404": {
            "$ref": "#/components/responses/404"
          },
          "429": {
            "$ref": "#/components/responses/429"
          },
          "500": {
            "$ref": "#/components/responses/500"
          }
        },
        "tags": [
          "Базы данных"
        ]
      },
      "delete": {
        "summary": "Удаление базы данных",
        "description": "Чтобы удалить базу данных, отправьте запрос DELETE в `api/v1/dbs/{db_id}`.\n",
        "parameters": [
          {
            "$ref": "#/components/parameters/dbs-id"
          }
        ],
        "x-codeSamples": [
          {
            "lang": "cURL",
            "label": "cURL",
            "source": "curl -X DELETE \\\n  -H \"Content-Type: application/json\" \\\n  -H \"Authorization: Bearer ${TIMEWEB_CLOUD_TOKEN}\" \\\n  \"https://api.timeweb.cloud/api/v1/dbs/1051\""
          }
        ],
        "responses": {
          "204": {
            "description": "База данных успешно удалена."
          },
          "400": {
            "$ref": "#/components/responses/400"
          },
          "401": {
            "$ref": "#/components/responses/401"
          },
          "403": {
            "$ref": "#/components/responses/403"
          },
          "404": {
            "$ref": "#/components/responses/404"
          },
          "429": {
            "$ref": "#/components/responses/429"
          },
          "500": {
            "$ref": "#/components/responses/500"
          }
        },
        "tags": [
          "Базы данных"
        ]
      }
    },
    "/api/v1/dbs/{db_id}/backups": {
      "get": {
        "summary": "Список бэкапов базы данных",
        "description": "Чтобы получить список бэкапов базы данных, отправьте запрос GET в `api/v1/dbs/{db_id}/backups`.\n",
        "parameters": [
          {
            "$ref": "#/components/parameters/dbs-id"
          },
          {
            "$ref": "#/components/parameters/limit"
          },
          {
            "$ref": "#/components/parameters/offset"
          }
        ],
        "x-codeSamples": [
          {
            "lang": "cURL",
            "label": "cURL",
            "source": "curl -X GET \\\n  -H \"Content-Type: application/json\" \\\n  -H \"Authorization: Bearer ${TIMEWEB_CLOUD_TOKEN}\" \\\n  \"https://api.timeweb.cloud/api/v1/dbs/1051/backups\""
          }
        ],
        "responses": {
          "200": {
            "description": "Ответ будет представлять собой объект JSON с ключом `backups`.",
            "content": {
              "application/json": {
                "schema": {
                  "allOf": [
                    {
                      "type": "object",
                      "properties": {
                        "meta": {
                          "$ref": "#/components/schemas/meta"
                        },
                        "backups": {
                          "type": "array",
                          "items": {
                            "$ref": "#/components/schemas/backup"
                          }
                        }
                      },
                      "required": [
                        "meta",
                        "backups"
                      ]
                    },
                    {
                      "type": "object",
                      "properties": {
                        "response_id": {
                          "$ref": "#/components/schemas/response_id"
                        }
                      },
                      "required": [
                        "response_id"
                      ]
                    }
                  ]
                }
              }
            }
          },
          "400": {
            "$ref": "#/components/responses/400"
          },
          "401": {
            "$ref": "#/components/responses/401"
          },
          "403": {
            "$ref": "#/components/responses/403"
          },
          "404": {
            "$ref": "#/components/responses/404"
          },
          "429": {
            "$ref": "#/components/responses/429"
          },
          "500": {
            "$ref": "#/components/responses/500"
          }
        },
        "tags": [
          "Базы данных"
        ]
      },
      "post": {
        "summary": "Создание бэкапа базы данных",
        "description": "Чтобы создать бэкап базы данных, отправьте запрос POST в `api/v1/dbs/{db_id}/backups`.\n",
        "parameters": [
          {
            "$ref": "#/components/parameters/dbs-id"
          }
        ],
        "x-codeSamples": [
          {
            "lang": "cURL",
            "label": "cURL",
            "source": "curl -X POST \\\n  -H \"Content-Type: application/json\" \\\n  -H \"Authorization: Bearer ${TIMEWEB_CLOUD_TOKEN}\" \\\n  \"https://api.timeweb.cloud/api/v1/dbs/1051/backups\""
          }
        ],
        "responses": {
          "201": {
            "description": "Ответ будет представлять собой объект JSON с ключом `backup`.",
            "content": {
              "application/json": {
                "schema": {
                  "allOf": [
                    {
                      "type": "object",
                      "properties": {
                        "backup": {
                          "$ref": "#/components/schemas/backup"
                        }
                      },
                      "required": [
                        "backup"
                      ]
                    },
                    {
                      "type": "object",
                      "properties": {
                        "response_id": {
                          "$ref": "#/components/schemas/response_id"
                        }
                      },
                      "required": [
                        "response_id"
                      ]
                    }
                  ]
                }
              }
            }
          },
          "400": {
            "$ref": "#/components/responses/400"
          },
          "401": {
            "$ref": "#/components/responses/401"
          },
          "403": {
            "$ref": "#/components/responses/403"
          },
          "404": {
            "$ref": "#/components/responses/404"
          },
          "409": {
            "$ref": "#/components/responses/conflict"
          },
          "429": {
            "$ref": "#/components/responses/429"
          },
          "500": {
            "$ref": "#/components/responses/500"
          }
        },
        "tags": [
          "Базы данных"
        ]
      }
    },
    "/api/v1/dbs/{db_id}/backups/{backup_id}": {
      "delete": {
        "summary": "Удаление бэкапа базы данных",
        "description": "Чтобы удалить бэкап базы данных, отправьте запрос DELETE в `api/v1/dbs/{db_id}/backups/{backup_id}`.\n",
        "parameters": [
          {
            "$ref": "#/components/parameters/dbs-id"
          },
          {
            "$ref": "#/components/parameters/backup-id"
          }
        ],
        "x-codeSamples": [
          {
            "lang": "cURL",
            "label": "cURL",
            "source": "curl -X DELETE \\\n  -H \"Content-Type: application/json\" \\\n  -H \"Authorization: Bearer ${TIMEWEB_CLOUD_TOKEN}\" \\\n  \"https://api.timeweb.cloud/api/v1/dbs/1051/backups/123\""
          }
        ],
        "responses": {
          "204": {
            "description": "Бэкап успешно удален."
          },
          "400": {
            "$ref": "#/components/responses/400"
          },
          "401": {
            "$ref": "#/components/responses/401"
          },
          "403": {
            "$ref": "#/components/responses/403"
          },
          "404": {
            "$ref": "#/components/responses/404"
          },
          "429": {
            "$ref": "#/components/responses/429"
          },
          "500": {
            "$ref": "#/components/responses/500"
          }
        },
        "tags": [
          "Базы данных"
        ]
      },
      "get": {
        "summary": "Получение бэкапа базы данных",
        "description": "Чтобы получить бэкап базы данных, отправьте запрос GET в `api/v1/dbs/{db_id}/backups/{backup_id}`.\n",
        "parameters": [
          {
            "$ref": "#/components/parameters/dbs-id"
          },
          {
            "$ref": "#/components/parameters/backup-id"
          }
        ],
        "x-codeSamples": [
          {
            "lang": "cURL",
            "label": "cURL",
            "source": "curl -X GET \\\n  -H \"Content-Type: application/json\" \\\n  -H \"Authorization: Bearer ${TIMEWEB_CLOUD_TOKEN}\" \\\n  \"https://api.timeweb.cloud/api/v1/dbs/1051/backups/123\""
          }
        ],
        "responses": {
          "200": {
            "description": "Ответ будет представлять собой объект JSON с ключом `backup`.",
            "content": {
              "application/json": {
                "schema": {
                  "allOf": [
                    {
                      "type": "object",
                      "properties": {
                        "backup": {
                          "$ref": "#/components/schemas/backup"
                        }
                      },
                      "required": [
                        "backup"
                      ]
                    },
                    {
                      "type": "object",
                      "properties": {
                        "response_id": {
                          "$ref": "#/components/schemas/response_id"
                        }
                      },
                      "required": [
                        "response_id"
                      ]
                    }
                  ]
                }
              }
            }
          },
          "400": {
            "$ref": "#/components/responses/400"
          },
          "401": {
            "$ref": "#/components/responses/401"
          },
          "403": {
            "$ref": "#/components/responses/403"
          },
          "404": {
            "$ref": "#/components/responses/404"
          },
          "429": {
            "$ref": "#/components/responses/429"
          },
          "500": {
            "$ref": "#/components/responses/500"
          }
        },
        "tags": [
          "Базы данных"
        ]
      },
      "put": {
        "summary": "Восстановление базы данных из бэкапа",
        "description": "Чтобы восстановить базу данных из бэкапа, отправьте запрос PUT в `api/v1/dbs/{db_id}/backups/{backup_id}`.\n",
        "parameters": [
          {
            "$ref": "#/components/parameters/dbs-id"
          },
          {
            "$ref": "#/components/parameters/backup-id"
          }
        ],
        "x-codeSamples": [
          {
            "lang": "cURL",
            "label": "cURL",
            "source": "curl -X PUT \\\n  -H \"Content-Type: application/json\" \\\n  -H \"Authorization: Bearer ${TIMEWEB_CLOUD_TOKEN}\" \\\n  \"https://api.timeweb.cloud/api/v1/dbs/1051/backups/123\""
          }
        ],
        "responses": {
          "204": {
            "description": "База данных из бэкапа успешно восстановлена."
          },
          "400": {
            "$ref": "#/components/responses/400"
          },
          "401": {
            "$ref": "#/components/responses/401"
          },
          "403": {
            "$ref": "#/components/responses/403"
          },
          "404": {
            "$ref": "#/components/responses/404"
          },
          "409": {
            "$ref": "#/components/responses/conflict"
          },
          "429": {
            "$ref": "#/components/responses/429"
          },
          "500": {
            "$ref": "#/components/responses/500"
          }
        },
        "tags": [
          "Базы данных"
        ]
      }
    },
    "/api/v1/presets/dbs": {
      "get": {
        "summary": "Получение списка тарифов для баз данных",
        "description": "Чтобы получить список тарифов для баз данных, отправьте GET запрос на `/api/v1/presets/dbs`.\n\n Тело ответа будет представлять собой объект JSON с ключом `databases_presets`.",
        "x-codeSamples": [
          {
            "lang": "cURL",
            "label": "cURL",
            "source": "curl -X GET \\\n  -H \"Content-Type: application/json\" \\\n  -H \"Authorization: Bearer ${TIMEWEB_CLOUD_TOKEN}\" \\\n  \"https://api.timeweb.cloud/api/v1/presets/dbs\""
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "allOf": [
                    {
                      "type": "object",
                      "properties": {
                        "meta": {
                          "$ref": "#/components/schemas/meta"
                        },
                        "databases_presets": {
                          "type": "array",
                          "items": {
                            "$ref": "#/components/schemas/presets-dbs"
                          }
                        }
                      },
                      "required": [
                        "meta",
                        "databases_presets"
                      ]
                    },
                    {
                      "type": "object",
                      "properties": {
                        "response_id": {
                          "$ref": "#/components/schemas/response_id"
                        }
                      },
                      "required": [
                        "response_id"
                      ]
                    }
                  ]
                }
              }
            },
            "description": "Тарифы успешно получены."
          },
          "400": {
            "$ref": "#/components/responses/400"
          },
          "401": {
            "$ref": "#/components/responses/401"
          },
          "403": {
            "$ref": "#/components/responses/403"
          },
          "404": {
            "$ref": "#/components/responses/404"
          },
          "429": {
            "$ref": "#/components/responses/429"
          },
          "500": {
            "$ref": "#/components/responses/500"
          }
        },
        "tags": [
          "Базы данных"
        ]
      }
    },
    "/api/v1/dedicated-servers": {
      "get": {
        "summary": "Получение списка выделенных серверов",
        "description": "Чтобы получить список всех выделенных серверов на вашем аккаунте, отправьте GET запрос на `/api/v1/dedicated-servers`.\n\n Тело ответа будет представлять собой объект JSON с ключом `dedicated_servers`.",
        "x-codeSamples": [
          {
            "lang": "cURL",
            "label": "cURL",
            "source": "curl -X GET \\\n  -H \"Content-Type: application/json\" \\\n  -H \"Authorization: Bearer ${TIMEWEB_CLOUD_TOKEN}\" \\\n  \"https://api.timeweb.cloud/api/v1/dedicated-servers\""
          }
        ],
        "responses": {
          "200": {
            "description": "Объект JSON c ключом `dedicated_servers`",
            "content": {
              "application/json": {
                "schema": {
                  "allOf": [
                    {
                      "type": "object",
                      "properties": {
                        "meta": {
                          "$ref": "#/components/schemas/meta"
                        },
                        "dedicated_servers": {
                          "type": "array",
                          "items": {
                            "$ref": "#/components/schemas/dedicated-server"
                          }
                        }
                      },
                      "required": [
                        "meta",
                        "dedicated_servers"
                      ]
                    },
                    {
                      "type": "object",
                      "properties": {
                        "response_id": {
                          "$ref": "#/components/schemas/response_id"
                        }
                      },
                      "required": [
                        "response_id"
                      ]
                    }
                  ]
                }
              }
            }
          },
          "400": {
            "$ref": "#/components/responses/400"
          },
          "401": {
            "$ref": "#/components/responses/401"
          },
          "403": {
            "$ref": "#/components/responses/403"
          },
          "404": {
            "$ref": "#/components/responses/404"
          },
          "429": {
            "$ref": "#/components/responses/429"
          },
          "500": {
            "$ref": "#/components/responses/500"
          }
        },
        "tags": [
          "Выделенные серверы"
        ]
      },
      "post": {
        "summary": "Создание выделенного сервера",
        "description": "Чтобы создать выделенный сервер, отправьте POST запрос в `api/v1/dedicated-servers`, задав необходимые атрибуты.\n\nВыделенный сервер будет создан с использованием предоставленной информации. Тело ответа будет содержать объект JSON с информацией о созданном выделенном сервере.",
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/create-dedicated-server"
              }
            }
          },
          "required": true
        },
        "x-codeSamples": [
          {
            "lang": "cURL",
            "label": "cURL",
            "source": "curl -X POST \\\n  -H \"Content-Type: application/json\" \\\n  -H \"Authorization: Bearer ${TIMEWEB_CLOUD_TOKEN}\" \\\n  -d '{\"plan_id\":2377,\"preset_id\":81,\"payment_period\":\"P1M\",\"name\":\"Mysterious Dunnock\",\"comment\":\"Production Server\",\"location\":\"russia\",\"os_id\":188,\"cp_id\":199,\"bandwidth_id\":483,\"network_drive_id\":446,\"additional_ip_addr_id\":477}' \\\n  \"https://api.timeweb.cloud/api/v1/dedicated-servers\""
          }
        ],
        "responses": {
          "201": {
            "description": "Created",
            "content": {
              "application/json": {
                "schema": {
                  "allOf": [
                    {
                      "type": "object",
                      "properties": {
                        "dedicated_server": {
                          "$ref": "#/components/schemas/dedicated-server"
                        }
                      },
                      "required": [
                        "dedicated_server"
                      ]
                    },
                    {
                      "type": "object",
                      "properties": {
                        "response_id": {
                          "$ref": "#/components/schemas/response_id"
                        }
                      },
                      "required": [
                        "response_id"
                      ]
                    }
                  ]
                }
              }
            }
          },
          "400": {
            "$ref": "#/components/responses/400"
          },
          "401": {
            "$ref": "#/components/responses/401"
          },
          "403": {
            "$ref": "#/components/responses/403"
          },
          "404": {
            "$ref": "#/components/responses/404"
          },
          "429": {
            "$ref": "#/components/responses/429"
          },
          "500": {
            "$ref": "#/components/responses/500"
          }
        },
        "tags": [
          "Выделенные серверы"
        ]
      }
    },
    "/api/v1/dedicated-servers/{dedicated_id}": {
      "get": {
        "summary": "Получение выделенного сервера",
        "description": "Чтобы отобразить информацию об отдельном выделенном сервере, отправьте запрос GET на `api/v1/dedicated-servers/{dedicated_id}`.\n",
        "parameters": [
          {
            "$ref": "#/components/parameters/dedicated-id"
          }
        ],
        "x-codeSamples": [
          {
            "lang": "cURL",
            "label": "cURL",
            "source": "curl -X GET \\\n  -H \"Content-Type: application/json\" \\\n  -H \"Authorization: Bearer ${TIMEWEB_CLOUD_TOKEN}\" \\\n  \"https://api.timeweb.cloud/api/v1/dedicated-servers/1051\""
          }
        ],
        "responses": {
          "200": {
            "description": "Ответ будет представлять собой объект JSON с ключом `dedicated_server`.",
            "content": {
              "application/json": {
                "schema": {
                  "allOf": [
                    {
                      "type": "object",
                      "properties": {
                        "dedicated_server": {
                          "$ref": "#/components/schemas/dedicated-server"
                        }
                      },
                      "required": [
                        "dedicated_server"
                      ]
                    },
                    {
                      "type": "object",
                      "properties": {
                        "response_id": {
                          "$ref": "#/components/schemas/response_id"
                        }
                      },
                      "required": [
                        "response_id"
                      ]
                    }
                  ]
                }
              }
            }
          },
          "400": {
            "$ref": "#/components/responses/400"
          },
          "401": {
            "$ref": "#/components/responses/401"
          },
          "403": {
            "$ref": "#/components/responses/403"
          },
          "404": {
            "$ref": "#/components/responses/404"
          },
          "429": {
            "$ref": "#/components/responses/429"
          },
          "500": {
            "$ref": "#/components/responses/500"
          }
        },
        "tags": [
          "Выделенные серверы"
        ]
      },
      "patch": {
        "summary": "Обновление выделенного сервера",
        "description": "Чтобы обновить только определенные атрибуты выделенного сервера, отправьте запрос PATCH в `api/v1/dedicated-servers/{dedicated_id}`.\n",
        "parameters": [
          {
            "$ref": "#/components/parameters/dedicated-id"
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "properties": {
                  "name": {
                    "type": "string",
                    "maxLength": 255,
                    "description": "Удобочитаемое имя выделенного сервера. Максимальная длина — 255 символов, имя должно быть уникальным.",
                    "example": "name"
                  },
                  "comment": {
                    "type": "string",
                    "maxLength": 255,
                    "description": "Комментарий к выделенному серверу. Максимальная длина — 255 символов.",
                    "example": "comment"
                  }
                }
              }
            }
          }
        },
        "x-codeSamples": [
          {
            "lang": "cURL",
            "label": "cURL",
            "source": "curl -X PATCH \\\n  -H \"Content-Type: application/json\" \\\n  -H \"Authorization: Bearer ${TIMEWEB_CLOUD_TOKEN}\" \\\n  -d '{\"name\":\"Cute Corvus \",\"comment\":\"Development Server\"}' \\\n  \"https://api.timeweb.cloud/api/v1/dedicated/1051\""
          }
        ],
        "responses": {
          "200": {
            "description": "Ответ будет представлять собой объект JSON с ключом `dedicated_server`.",
            "content": {
              "application/json": {
                "schema": {
                  "allOf": [
                    {
                      "type": "object",
                      "properties": {
                        "dedicated_server": {
                          "$ref": "#/components/schemas/dedicated-server"
                        }
                      },
                      "required": [
                        "dedicated_server"
                      ]
                    },
                    {
                      "type": "object",
                      "properties": {
                        "response_id": {
                          "$ref": "#/components/schemas/response_id"
                        }
                      },
                      "required": [
                        "response_id"
                      ]
                    }
                  ]
                }
              }
            }
          },
          "400": {
            "$ref": "#/components/responses/400"
          },
          "401": {
            "$ref": "#/components/responses/401"
          },
          "403": {
            "$ref": "#/components/responses/403"
          },
          "404": {
            "$ref": "#/components/responses/404"
          },
          "429": {
            "$ref": "#/components/responses/429"
          },
          "500": {
            "$ref": "#/components/responses/500"
          }
        },
        "tags": [
          "Выделенные серверы"
        ]
      },
      "delete": {
        "summary": "Удаление выделенного сервера",
        "description": "Чтобы удалить выделенный сервер, отправьте запрос DELETE в `api/v1/dedicated-servers/{dedicated_id}`.\n",
        "parameters": [
          {
            "$ref": "#/components/parameters/dedicated-id"
          }
        ],
        "x-codeSamples": [
          {
            "lang": "cURL",
            "label": "cURL",
            "source": "curl -X DELETE \\\n  -H \"Content-Type: application/json\" \\\n  -H \"Authorization: Bearer ${TIMEWEB_CLOUD_TOKEN}\" \\\n  \"https://api.timeweb.cloud/api/v1/dedicated/1051\""
          }
        ],
        "responses": {
          "204": {
            "description": "Выделенный сервер успешно удален"
          },
          "400": {
            "$ref": "#/components/responses/400"
          },
          "401": {
            "$ref": "#/components/responses/401"
          },
          "403": {
            "$ref": "#/components/responses/403"
          },
          "404": {
            "$ref": "#/components/responses/404"
          },
          "429": {
            "$ref": "#/components/responses/429"
          },
          "500": {
            "$ref": "#/components/responses/500"
          }
        },
        "tags": [
          "Выделенные серверы"
        ]
      }
    },
    "/api/v1/presets/dedicated-servers": {
      "get": {
        "summary": "Получение списка тарифов для выделенного сервера",
        "description": "Чтобы получить список всех тарифов выделенных серверов, отправьте GET запрос на `/api/v1/presets/dedicated-servers`.",
        "x-codeSamples": [
          {
            "lang": "cURL",
            "label": "cURL",
            "source": "curl -X GET \\\n  -H \"Content-Type: application/json\" \\\n  -H \"Authorization: Bearer ${TIMEWEB_CLOUD_TOKEN}\" \\\n  \"https://api.timeweb.cloud/api/v1/presets/dedicated-servers\""
          }
        ],
        "parameters": [
          {
            "description": "Получение тарифов определенной локации.",
            "in": "query",
            "name": "location",
            "required": false,
            "schema": {
              "type": "string",
              "enum": [
                "ru-1",
                "ru-2",
                "kz-1",
                "pl-1"
              ]
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Объект JSON c ключем `dedicated_servers_presets`",
            "content": {
              "application/json": {
                "schema": {
                  "allOf": [
                    {
                      "type": "object",
                      "properties": {
                        "meta": {
                          "$ref": "#/components/schemas/meta"
                        },
                        "dedicated_servers_presets": {
                          "type": "array",
                          "items": {
                            "$ref": "#/components/schemas/dedicated-server-preset"
                          }
                        }
                      },
                      "required": [
                        "meta",
                        "dedicated_servers_presets"
                      ]
                    },
                    {
                      "type": "object",
                      "properties": {
                        "response_id": {
                          "$ref": "#/components/schemas/response_id"
                        }
                      },
                      "required": [
                        "response_id"
                      ]
                    }
                  ]
                }
              }
            }
          },
          "400": {
            "$ref": "#/components/responses/400"
          },
          "401": {
            "$ref": "#/components/responses/401"
          },
          "403": {
            "$ref": "#/components/responses/403"
          },
          "404": {
            "$ref": "#/components/responses/404"
          },
          "429": {
            "$ref": "#/components/responses/429"
          },
          "500": {
            "$ref": "#/components/responses/500"
          }
        },
        "tags": [
          "Выделенные серверы"
        ]
      }
    },
    "/api/v1/presets/dedicated-servers/{preset_id}/additional-services": {
      "get": {
        "summary": "Получение дополнительных услуг для выделенного сервера",
        "description": "Чтобы получить список всех дополнительных услуг для выделенных серверов, отправьте GET запрос на `/api/v1/presets/dedicated-servers/{preset_id}/additional-services`.",
        "parameters": [
          {
            "$ref": "#/components/parameters/preset-id"
          }
        ],
        "x-codeSamples": [
          {
            "lang": "cURL",
            "label": "cURL",
            "source": "curl -X GET \\\n  -H \"Content-Type: application/json\" \\\n  -H \"Authorization: Bearer ${TIMEWEB_CLOUD_TOKEN}\" \\\n  \"https://api.timeweb.cloud/api/v1/presets/dedicated-servers/3017/additional-services\""
          }
        ],
        "responses": {
          "200": {
            "description": "Объект JSON c ключем `dedicated_server_additional_services`",
            "content": {
              "application/json": {
                "schema": {
                  "allOf": [
                    {
                      "type": "object",
                      "properties": {
                        "meta": {
                          "$ref": "#/components/schemas/meta"
                        },
                        "dedicated_server_additional_services": {
                          "type": "array",
                          "items": {
                            "$ref": "#/components/schemas/dedicated-server-additional-service"
                          }
                        }
                      },
                      "required": [
                        "meta",
                        "dedicated_server_additional_services"
                      ]
                    },
                    {
                      "type": "object",
                      "properties": {
                        "response_id": {
                          "$ref": "#/components/schemas/response_id"
                        }
                      },
                      "required": [
                        "response_id"
                      ]
                    }
                  ]
                }
              }
            }
          },
          "400": {
            "$ref": "#/components/responses/400"
          },
          "401": {
            "$ref": "#/components/responses/401"
          },
          "403": {
            "$ref": "#/components/responses/403"
          },
          "404": {
            "$ref": "#/components/responses/404"
          },
          "429": {
            "$ref": "#/components/responses/429"
          },
          "500": {
            "$ref": "#/components/responses/500"
          }
        },
        "tags": [
          "Выделенные серверы"
        ]
      }
    },
    "/api/v1/k8s/clusters": {
      "get": {
        "tags": [
          "Kubernetes"
        ],
        "summary": "Получение списка кластеров",
        "description": "Чтобы получить список кластеров, отправьте GET запрос на `/api/v1/k8s/clusters`.",
        "operationId": "Получение_списка_кластеров_api_v1__customer__clusters_get",
        "parameters": [
          {
            "description": "Обозначает количество записей, которое необходимо вернуть.",
            "required": false,
            "schema": {
              "title": "Limit",
              "type": "integer",
              "description": "Обозначает количество записей, которое необходимо вернуть.",
              "default": 100
            },
            "name": "limit",
            "in": "query"
          },
          {
            "description": "Указывает на смещение, относительно начала списка.",
            "required": false,
            "schema": {
              "title": "Offset",
              "type": "integer",
              "description": "Указывает на смещение, относительно начала списка.",
              "default": 0
            },
            "name": "offset",
            "in": "query"
          }
        ],
        "responses": {
          "200": {
            "description": "Список кластеров",
            "content": {
              "application/json": {
                "schema": {
                  "allOf": [
                    {
                      "$ref": "#/components/schemas/ClustersResponse"
                    },
                    {
                      "type": "object",
                      "properties": {
                        "response_id": {
                          "$ref": "#/components/schemas/response_id"
                        }
                      },
                      "required": [
                        "response_id"
                      ]
                    }
                  ]
                },
                "example": {
                  "response_id": "68c76353-f100-455b-a4e9-52734f877861",
                  "meta": {
                    "total": 1
                  },
                  "clusters": [
                    {
                      "id": 73835,
                      "name": "Кластер 73835",
                      "created_at": "2023-01-13T10:10:29.729822",
                      "status": "active",
                      "description": "Описание кластера",
                      "ha": false,
                      "k8s_version": "v1.22.16",
                      "network_driver": "canal",
                      "ingress": false,
                      "preset_id": 403,
                      "cpu": 1,
                      "ram": 10240,
                      "disk": 100
                    }
                  ]
                }
              }
            }
          },
          "400": {
            "$ref": "#/components/responses/400"
          },
          "401": {
            "$ref": "#/components/responses/401"
          },
          "429": {
            "$ref": "#/components/responses/429"
          },
          "500": {
            "$ref": "#/components/responses/500"
          }
        },
        "x-codeSamples": [
          {
            "lang": "cURL",
            "label": "cURL",
            "source": "curl -X GET \\\n  -H \"Content-Type: application/json\" \\\n  -H \"Authorization: Bearer ${TIMEWEB_CLOUD_TOKEN}\" \\\n  \"https://api.timeweb.cloud/api/v1/k8s/clusters\""
          }
        ]
      },
      "post": {
        "tags": [
          "Kubernetes"
        ],
        "summary": "Создание кластера",
        "description": "Чтобы создать кластер, отправьте POST запрос на `/api/v1/k8s/clusters`.",
        "operationId": "Создание_кластера_api_v1__customer__clusters_post",
        "parameters": [],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/ClusterIn"
              }
            }
          },
          "required": true
        },
        "responses": {
          "201": {
            "description": "Информация о кластере",
            "content": {
              "application/json": {
                "schema": {
                  "allOf": [
                    {
                      "$ref": "#/components/schemas/ClusterResponse"
                    },
                    {
                      "type": "object",
                      "properties": {
                        "response_id": {
                          "$ref": "#/components/schemas/response_id"
                        }
                      },
                      "required": [
                        "response_id"
                      ]
                    }
                  ]
                },
                "example": {
                  "response_id": "2b71e17b-2118-4f81-90d8-c8c4b9e8e4e3",
                  "cluster": {
                    "id": 18685,
                    "name": "Кластер 18685",
                    "created_at": "2023-01-13T10:10:29.742918",
                    "status": "active",
                    "description": "Описание кластера",
                    "ha": false,
                    "k8s_version": "v1.22.16",
                    "network_driver": "canal",
                    "ingress": true,
                    "preset_id": 403,
                    "cpu": 1,
                    "ram": 10240,
                    "disk": 100
                  }
                }
              }
            }
          },
          "400": {
            "$ref": "#/components/responses/400"
          },
          "401": {
            "$ref": "#/components/responses/401"
          },
          "429": {
            "$ref": "#/components/responses/429"
          },
          "500": {
            "$ref": "#/components/responses/500"
          }
        },
        "x-codeSamples": [
          {
            "lang": "cURL",
            "label": "cURL",
            "source": "curl -X POST \\\n  -H \"Content-Type: application/json\" \\\n  -H \"Authorization: Bearer ${TIMEWEB_CLOUD_TOKEN}\" \\\n  -d '{\"name\": \"Fervent Pascal\", \"ha\": false, \"k8s_version\": \"v1.22.16\", \"network_driver\": \"canal\", \"ingress\": false, \"preset_id\": 403, \"worker_groups\": {\"name\": \"new group\", \"preset_id\": 399, \"node_count\": 1}}' \\\n  \"https://api.timeweb.cloud/api/v1/k8s/clusters\""
          }
        ]
      }
    },
    "/api/v1/k8s/clusters/{cluster_id}": {
      "get": {
        "tags": [
          "Kubernetes"
        ],
        "summary": "Получение информации о кластере",
        "description": "Чтобы получить информацию о кластере, отправьте GET запрос в `/api/v1/k8s/clusters/{cluster_id}`",
        "operationId": "Получение_информации_о_кластере_api_v1__customer__clusters__cluster_id__get",
        "parameters": [
          {
            "description": "Уникальный идентификатор кластера",
            "required": true,
            "schema": {
              "title": "Cluster Id",
              "type": "integer",
              "description": "Уникальный идентификатор кластера"
            },
            "name": "cluster_id",
            "in": "path"
          }
        ],
        "responses": {
          "200": {
            "description": "Информация о кластере",
            "content": {
              "application/json": {
                "schema": {
                  "allOf": [
                    {
                      "$ref": "#/components/schemas/ClusterResponse"
                    },
                    {
                      "type": "object",
                      "properties": {
                        "response_id": {
                          "$ref": "#/components/schemas/response_id"
                        }
                      },
                      "required": [
                        "response_id"
                      ]
                    }
                  ]
                },
                "example": {
                  "response_id": "511cf606-ab89-4105-891a-e6914608cd3e",
                  "cluster": {
                    "id": 45059,
                    "name": "Кластер 45059",
                    "created_at": "2023-01-13T10:10:29.737755",
                    "status": "active",
                    "description": "Описание кластера",
                    "ha": false,
                    "k8s_version": "v1.22.16",
                    "network_driver": "canal",
                    "ingress": true,
                    "preset_id": 403,
                    "cpu": 1,
                    "ram": 10240,
                    "disk": 100
                  }
                }
              }
            }
          },
          "400": {
            "$ref": "#/components/responses/400"
          },
          "401": {
            "$ref": "#/components/responses/401"
          },
          "403": {
            "$ref": "#/components/responses/403"
          },
          "404": {
            "$ref": "#/components/responses/404"
          },
          "429": {
            "$ref": "#/components/responses/429"
          },
          "500": {
            "$ref": "#/components/responses/500"
          }
        },
        "x-codeSamples": [
          {
            "lang": "cURL",
            "label": "cURL",
            "source": "curl -X GET \\\n  -H \"Content-Type: application/json\" \\\n  -H \"Authorization: Bearer ${TIMEWEB_CLOUD_TOKEN}\" \\\n  \"https://api.timeweb.cloud/api/v1/k8s/clusters/46\""
          }
        ]
      },
      "delete": {
        "tags": [
          "Kubernetes"
        ],
        "summary": "Удаление кластера",
        "description": "Чтобы удалить кластер, отправьте DELETE запрос в `/api/v1/k8s/clusters/{cluster_id}`",
        "operationId": "Удаление_кластера_api_v1__customer__clusters__cluster_id__delete",
        "parameters": [
          {
            "description": "Уникальный идентификатор кластера",
            "required": true,
            "schema": {
              "title": "Cluster Id",
              "type": "integer",
              "description": "Уникальный идентификатор кластера"
            },
            "name": "cluster_id",
            "in": "path"
          }
        ],
        "responses": {
          "204": {
            "description": "Кластер удален"
          },
          "400": {
            "$ref": "#/components/responses/400"
          },
          "401": {
            "$ref": "#/components/responses/401"
          },
          "403": {
            "$ref": "#/components/responses/403"
          },
          "404": {
            "$ref": "#/components/responses/404"
          },
          "429": {
            "$ref": "#/components/responses/429"
          },
          "500": {
            "$ref": "#/components/responses/500"
          }
        },
        "x-codeSamples": [
          {
            "lang": "cURL",
            "label": "cURL",
            "source": "curl -X DELETE \\\n  -H \"Content-Type: application/json\" \\\n  -H \"Authorization: Bearer ${TIMEWEB_CLOUD_TOKEN}\" \\\n  \"https://api.timeweb.cloud/api/v1/k8s/clusters/10\""
          }
        ]
      },
      "patch": {
        "tags": [
          "Kubernetes"
        ],
        "summary": "Обновление информации о кластере",
        "description": "Чтобы обновить информацию о кластере, отправьте PATCH запрос в `/api/v1/k8s/clusters/{cluster_id}`",
        "operationId": "Обновление_информации_о_кластере_api_v1__customer__clusters__cluster_id__patch",
        "parameters": [
          {
            "description": "Уникальный идентификатор кластера",
            "required": true,
            "schema": {
              "title": "Cluster Id",
              "type": "integer",
              "description": "Уникальный идентификатор кластера"
            },
            "name": "cluster_id",
            "in": "path"
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/ClusterEdit"
              }
            }
          },
          "required": true
        },
        "responses": {
          "200": {
            "description": "Информация о кластере",
            "content": {
              "application/json": {
                "schema": {
                  "allOf": [
                    {
                      "$ref": "#/components/schemas/ClusterResponse"
                    },
                    {
                      "type": "object",
                      "properties": {
                        "response_id": {
                          "$ref": "#/components/schemas/response_id"
                        }
                      },
                      "required": [
                        "response_id"
                      ]
                    }
                  ]
                },
                "example": {
                  "response_id": "383c587c-f421-45bd-9ac1-a890f13ac6dc",
                  "cluster": {
                    "id": 13649,
                    "name": "Кластер 13649",
                    "created_at": "2023-01-13T10:10:29.748020",
                    "status": "active",
                    "description": "Описание кластера",
                    "ha": false,
                    "k8s_version": "v1.22.16",
                    "network_driver": "canal",
                    "ingress": false,
                    "preset_id": 403,
                    "cpu": 1,
                    "ram": 10240,
                    "disk": 100
                  }
                }
              }
            }
          },
          "400": {
            "$ref": "#/components/responses/400"
          },
          "401": {
            "$ref": "#/components/responses/401"
          },
          "403": {
            "$ref": "#/components/responses/403"
          },
          "404": {
            "$ref": "#/components/responses/404"
          },
          "429": {
            "$ref": "#/components/responses/429"
          },
          "500": {
            "$ref": "#/components/responses/500"
          }
        },
        "x-codeSamples": [
          {
            "lang": "cURL",
            "label": "cURL",
            "source": "curl -X PATCH \\\n  -H \"Content-Type: application/json\" \\\n  -H \"Authorization: Bearer ${TIMEWEB_CLOUD_TOKEN}\" \\\n  -d '{\"description\": \"new description\"}' \\\n  \"https://api.timeweb.cloud/api/v1/k8s/clusters/45\""
          }
        ]
      }
    },
    "/api/v1/k8s/clusters/{cluster_id}/resources": {
      "get": {
        "tags": [
          "Kubernetes"
        ],
        "summary": "Получение ресурсов кластера",
        "description": "Чтобы получить ресурсы кластера, отправьте GET запрос в `/api/v1/k8s/clusters/{cluster_id}/resources`.",
        "operationId": "Получение_ресурсов_кластера_api_v1__customer__clusters__cluster_id__resources_get",
        "parameters": [
          {
            "description": "Уникальный идентификатор кластера",
            "required": true,
            "schema": {
              "title": "Cluster Id",
              "type": "integer",
              "description": "Уникальный идентификатор кластера"
            },
            "name": "cluster_id",
            "in": "path"
          }
        ],
        "responses": {
          "200": {
            "description": "Список ресурсов",
            "content": {
              "application/json": {
                "schema": {
                  "allOf": [
                    {
                      "$ref": "#/components/schemas/ResourcesResponse"
                    },
                    {
                      "type": "object",
                      "properties": {
                        "response_id": {
                          "$ref": "#/components/schemas/response_id"
                        }
                      },
                      "required": [
                        "response_id"
                      ]
                    }
                  ]
                },
                "example": {
                  "response_id": "a3044ff0-182f-42d5-aa05-d5c8367e72ae",
                  "resources": {
                    "nodes": 10,
                    "cores": {
                      "requested": 10,
                      "allocatable": 10,
                      "capacity": 10,
                      "used": 5.5
                    },
                    "memory": {
                      "requested": 10240,
                      "allocatable": 9216,
                      "capacity": 9216,
                      "used": 5632
                    },
                    "pods": {
                      "requested": 10,
                      "allocatable": 10,
                      "capacity": 10,
                      "used": 5
                    }
                  }
                }
              }
            }
          },
          "400": {
            "$ref": "#/components/responses/400"
          },
          "401": {
            "$ref": "#/components/responses/401"
          },
          "403": {
            "$ref": "#/components/responses/403"
          },
          "404": {
            "$ref": "#/components/responses/404"
          },
          "429": {
            "$ref": "#/components/responses/429"
          },
          "500": {
            "$ref": "#/components/responses/500"
          }
        },
        "x-codeSamples": [
          {
            "lang": "cURL",
            "label": "cURL",
            "source": "curl -X GET \\\n  -H \"Content-Type: application/json\" \\\n  -H \"Authorization: Bearer ${TIMEWEB_CLOUD_TOKEN}\" \\\n  \"https://api.timeweb.cloud/api/v1/k8s/clusters/41/resources\""
          }
        ]
      }
    },
    "/api/v1/k8s/clusters/{cluster_id}/kubeconfig": {
      "get": {
        "tags": [
          "Kubernetes"
        ],
        "summary": "Получение файла kubeconfig",
        "description": "Чтобы получить файл kubeconfig, отправьте GET запрос в `/api/v1/k8s/clusters/{cluster_id}/kubeconfig`.",
        "operationId": "Получение_файла_kubeconfig_api_v1__customer__clusters__cluster_id__kubeconfig_get",
        "parameters": [
          {
            "description": "Уникальный идентификатор кластера",
            "required": true,
            "schema": {
              "title": "Cluster Id",
              "type": "integer",
              "description": "Уникальный идентификатор кластера"
            },
            "name": "cluster_id",
            "in": "path"
          }
        ],
        "responses": {
          "200": {
            "description": "Загрузка конфигурации подключения к кластеру",
            "content": {
              "application/yaml": {
                "schema": {
                  "title": "Response 200 Получение Файла Kubeconfig Api V1  Customer  Clusters  Cluster Id  Kubeconfig Get",
                  "type": "string"
                },
                "example": {
                  "apiVersion": "v1",
                  "kind": "Config",
                  "clusters": [
                    {
                      "name": "examply-example",
                      "cluster": {
                        "server": "https://k8saas.timeweb.com/k8s/clusters/c-12345"
                      }
                    }
                  ],
                  "users": [
                    {
                      "name": "examply-example",
                      "user": {
                        "token": "kubeconfig-user-example:exampleexampleexample"
                      }
                    }
                  ],
                  "contexts": [
                    {
                      "name": "example-example",
                      "context": {
                        "user": "example-example",
                        "cluster": "example-example"
                      }
                    }
                  ],
                  "current-context": "example-example"
                }
              }
            }
          },
          "400": {
            "$ref": "#/components/responses/400"
          },
          "401": {
            "$ref": "#/components/responses/401"
          },
          "403": {
            "$ref": "#/components/responses/403"
          },
          "404": {
            "$ref": "#/components/responses/404"
          },
          "429": {
            "$ref": "#/components/responses/429"
          },
          "500": {
            "$ref": "#/components/responses/500"
          }
        },
        "x-codeSamples": [
          {
            "lang": "cURL",
            "label": "cURL",
            "source": "curl -X GET \\\n  -H \"Content-Type: application/json\" \\\n  -H \"Authorization: Bearer ${TIMEWEB_CLOUD_TOKEN}\" \\\n  \"https://api.timeweb.cloud/api/v1/k8s/clusters/7/kubeconfig\""
          }
        ]
      }
    },
    "/api/v1/k8s/clusters/{cluster_id}/groups": {
      "get": {
        "tags": [
          "Kubernetes"
        ],
        "summary": "Получение групп нод кластера",
        "description": "Чтобы получить группы нод кластера, отправьте GET запрос в `/api/v1/k8s/clusters/{cluster_id}/groups`.",
        "operationId": "Получение_групп_нод_кластера_api_v1__customer__clusters__cluster_id__groups_get",
        "parameters": [
          {
            "description": "Уникальный идентификатор кластера",
            "required": true,
            "schema": {
              "title": "Cluster Id",
              "type": "integer",
              "description": "Уникальный идентификатор кластера"
            },
            "name": "cluster_id",
            "in": "path"
          }
        ],
        "responses": {
          "200": {
            "description": "Список групп нод",
            "content": {
              "application/json": {
                "schema": {
                  "allOf": [
                    {
                      "$ref": "#/components/schemas/NodeGroupsResponse"
                    },
                    {
                      "type": "object",
                      "properties": {
                        "response_id": {
                          "$ref": "#/components/schemas/response_id"
                        }
                      },
                      "required": [
                        "response_id"
                      ]
                    }
                  ]
                },
                "example": {
                  "response_id": "aed71c10-95d8-4e35-85fc-acc5d916e1c3",
                  "meta": {
                    "total": 3
                  },
                  "node_groups": [
                    {
                      "id": 2026,
                      "name": "Группа нод 2026",
                      "created_at": "2023-01-13T10:10:29.753143",
                      "preset_id": 399,
                      "node_count": 7
                    },
                    {
                      "id": 7844,
                      "name": "Группа нод 7844",
                      "created_at": "2023-01-13T10:10:29.753229",
                      "preset_id": 399,
                      "node_count": 3
                    },
                    {
                      "id": 2802,
                      "name": "Группа нод 2802",
                      "created_at": "2023-01-13T10:10:29.753297",
                      "preset_id": 399,
                      "node_count": 7
                    }
                  ]
                }
              }
            }
          },
          "400": {
            "$ref": "#/components/responses/400"
          },
          "401": {
            "$ref": "#/components/responses/401"
          },
          "403": {
            "$ref": "#/components/responses/403"
          },
          "404": {
            "$ref": "#/components/responses/404"
          },
          "429": {
            "$ref": "#/components/responses/429"
          },
          "500": {
            "$ref": "#/components/responses/500"
          }
        },
        "x-codeSamples": [
          {
            "lang": "cURL",
            "label": "cURL",
            "source": "curl -X GET \\\n  -H \"Content-Type: application/json\" \\\n  -H \"Authorization: Bearer ${TIMEWEB_CLOUD_TOKEN}\" \\\n  \"https://api.timeweb.cloud/api/v1/k8s/clusters/64/groups\""
          }
        ]
      },
      "post": {
        "tags": [
          "Kubernetes"
        ],
        "summary": "Создание группы нод",
        "description": "Чтобы создать группу нод кластера, отправьте POST запрос в `/api/v1/k8s/clusters/{cluster_id}/groups`.",
        "operationId": "Создание_группы_нод_api_v1__customer__clusters__cluster_id__groups_post",
        "parameters": [
          {
            "description": "Уникальный идентификатор кластера",
            "required": true,
            "schema": {
              "title": "Cluster Id",
              "type": "integer",
              "description": "Уникальный идентификатор кластера"
            },
            "name": "cluster_id",
            "in": "path"
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/NodeGroupIn"
              }
            }
          },
          "required": true
        },
        "responses": {
          "201": {
            "description": "Информация о группе нод",
            "content": {
              "application/json": {
                "schema": {
                  "allOf": [
                    {
                      "$ref": "#/components/schemas/NodeGroupResponse"
                    },
                    {
                      "type": "object",
                      "properties": {
                        "response_id": {
                          "$ref": "#/components/schemas/response_id"
                        }
                      },
                      "required": [
                        "response_id"
                      ]
                    }
                  ]
                },
                "example": {
                  "response_id": "89e6b1c9-14b2-443e-b5c5-84914346ea79",
                  "node_group": {
                    "id": 1509,
                    "name": "Группа нод 1509",
                    "created_at": "2023-01-13T10:10:29.753638",
                    "preset_id": 399,
                    "node_count": 8
                  }
                }
              }
            }
          },
          "400": {
            "$ref": "#/components/responses/400"
          },
          "401": {
            "$ref": "#/components/responses/401"
          },
          "403": {
            "$ref": "#/components/responses/403"
          },
          "404": {
            "$ref": "#/components/responses/404"
          },
          "429": {
            "$ref": "#/components/responses/429"
          },
          "500": {
            "$ref": "#/components/responses/500"
          }
        },
        "x-codeSamples": [
          {
            "lang": "cURL",
            "label": "cURL",
            "source": "curl -X POST \\\n  -H \"Content-Type: application/json\" \\\n  -H \"Authorization: Bearer ${TIMEWEB_CLOUD_TOKEN}\" \\\n  -d '{\"name\": \"group name\", \"preset_id\": 399, \"node_count\": 1}' \\\n  \"https://api.timeweb.cloud/api/v1/k8s/clusters/64/groups\""
          }
        ]
      }
    },
    "/api/v1/k8s/clusters/{cluster_id}/groups/{group_id}": {
      "get": {
        "tags": [
          "Kubernetes"
        ],
        "summary": "Получение информации о группе нод",
        "description": "Чтобы получить информацию о группе нод, отправьте GET запрос в `/api/v1/k8s/clusters/{cluster_id}/groups/{group_id}`.",
        "operationId": "Получение_информации_о_группе_нод_api_v1__customer__clusters__cluster_id__groups__group_id__get",
        "parameters": [
          {
            "description": "Уникальный идентификатор кластера",
            "required": true,
            "schema": {
              "title": "Cluster Id",
              "type": "integer",
              "description": "Уникальный идентификатор кластера"
            },
            "name": "cluster_id",
            "in": "path"
          },
          {
            "description": "Уникальный идентификатор группы",
            "required": true,
            "schema": {
              "title": "Group Id",
              "type": "integer",
              "description": "Уникальный идентификатор группы"
            },
            "name": "group_id",
            "in": "path"
          }
        ],
        "responses": {
          "200": {
            "description": "Информация о группе нод",
            "content": {
              "application/json": {
                "schema": {
                  "allOf": [
                    {
                      "$ref": "#/components/schemas/NodeGroupResponse"
                    },
                    {
                      "type": "object",
                      "properties": {
                        "response_id": {
                          "$ref": "#/components/schemas/response_id"
                        }
                      },
                      "required": [
                        "response_id"
                      ]
                    }
                  ]
                },
                "example": {
                  "response_id": "96118bab-77d1-4681-9b4c-6c3b89cbbf90",
                  "node_group": {
                    "id": 341,
                    "name": "Группа нод 341",
                    "created_at": "2023-01-13T10:10:29.753519",
                    "preset_id": 399,
                    "node_count": 8
                  }
                }
              }
            }
          },
          "400": {
            "$ref": "#/components/responses/400"
          },
          "401": {
            "$ref": "#/components/responses/401"
          },
          "403": {
            "$ref": "#/components/responses/403"
          },
          "404": {
            "$ref": "#/components/responses/404"
          },
          "429": {
            "$ref": "#/components/responses/429"
          },
          "500": {
            "$ref": "#/components/responses/500"
          }
        },
        "x-codeSamples": [
          {
            "lang": "cURL",
            "label": "cURL",
            "source": "curl -X GET \\\n  -H \"Content-Type: application/json\" \\\n  -H \"Authorization: Bearer ${TIMEWEB_CLOUD_TOKEN}\" \\\n  \"https://api.timeweb.cloud/api/v1/k8s/clusters/14/groups/12\""
          }
        ]
      },
      "delete": {
        "tags": [
          "Kubernetes"
        ],
        "summary": "Удаление группы нод",
        "description": "Чтобы удалить группу нод, отправьте DELETE запрос в `/api/v1/k8s/clusters/{cluster_id}/groups/{group_id}`.",
        "operationId": "Удаление_группы_нод_api_v1__customer__clusters__cluster_id__groups__group_id__delete",
        "parameters": [
          {
            "description": "Уникальный идентификатор кластера",
            "required": true,
            "schema": {
              "title": "Cluster Id",
              "type": "integer",
              "description": "Уникальный идентификатор кластера"
            },
            "name": "cluster_id",
            "in": "path"
          },
          {
            "description": "Уникальный идентификатор группы",
            "required": true,
            "schema": {
              "title": "Group Id",
              "type": "integer",
              "description": "Уникальный идентификатор группы"
            },
            "name": "group_id",
            "in": "path"
          }
        ],
        "responses": {
          "204": {
            "description": "Группа нод удалена"
          },
          "400": {
            "$ref": "#/components/responses/400"
          },
          "401": {
            "$ref": "#/components/responses/401"
          },
          "403": {
            "$ref": "#/components/responses/403"
          },
          "404": {
            "$ref": "#/components/responses/404"
          },
          "429": {
            "$ref": "#/components/responses/429"
          },
          "500": {
            "$ref": "#/components/responses/500"
          }
        },
        "x-codeSamples": [
          {
            "lang": "cURL",
            "label": "cURL",
            "source": "curl -X DELETE \\\n  -H \"Content-Type: application/json\" \\\n  -H \"Authorization: Bearer ${TIMEWEB_CLOUD_TOKEN}\" \\\n  \"https://api.timeweb.cloud/api/v1/k8s/clusters/85/groups/46\""
          }
        ]
      }
    },
    "/api/v1/k8s/clusters/{cluster_id}/groups/{group_id}/nodes": {
      "get": {
        "tags": [
          "Kubernetes"
        ],
        "summary": "Получение списка нод принадлежащих группе",
        "description": "Чтобы получить список нод принадлежащих группе, отправьте GET запрос в `/api/v1/k8s/clusters/{cluster_id}/groups/{group_id}/nodes`.",
        "operationId": "Получение_списка_нод_принадлежащих_группе_api_v1__customer__clusters__cluster_id__groups__group_id__nodes_get",
        "parameters": [
          {
            "description": "Уникальный идентификатор кластера",
            "required": true,
            "schema": {
              "title": "Cluster Id",
              "type": "integer",
              "description": "Уникальный идентификатор кластера"
            },
            "name": "cluster_id",
            "in": "path"
          },
          {
            "description": "Уникальный идентификатор группы",
            "required": true,
            "schema": {
              "title": "Group Id",
              "type": "integer",
              "description": "Уникальный идентификатор группы"
            },
            "name": "group_id",
            "in": "path"
          },
          {
            "description": "Обозначает количество записей, которое необходимо вернуть.",
            "required": false,
            "schema": {
              "title": "Limit",
              "type": "integer",
              "description": "Обозначает количество записей, которое необходимо вернуть.",
              "default": 100
            },
            "name": "limit",
            "in": "query"
          },
          {
            "description": "Указывает на смещение, относительно начала списка.",
            "required": false,
            "schema": {
              "title": "Offset",
              "type": "integer",
              "description": "Указывает на смещение, относительно начала списка.",
              "default": 0
            },
            "name": "offset",
            "in": "query"
          }
        ],
        "responses": {
          "200": {
            "description": "Список нод",
            "content": {
              "application/json": {
                "schema": {
                  "allOf": [
                    {
                      "$ref": "#/components/schemas/NodesResponse"
                    },
                    {
                      "type": "object",
                      "properties": {
                        "response_id": {
                          "$ref": "#/components/schemas/response_id"
                        }
                      },
                      "required": [
                        "response_id"
                      ]
                    }
                  ]
                },
                "example": {
                  "response_id": "9a5f84ec-47e7-485e-86f0-357d70c92c27",
                  "meta": {
                    "total": 3
                  },
                  "nodes": [
                    {
                      "id": 5373,
                      "created_at": "2023-01-13T10:10:29.753764",
                      "type": "worker",
                      "group_id": 1,
                      "status": "active",
                      "preset_id": 399,
                      "cpu": 1,
                      "ram": 1024,
                      "disk": 10,
                      "network": 200
                    },
                    {
                      "id": 2240,
                      "created_at": "2023-01-13T10:10:29.753879",
                      "type": "worker",
                      "group_id": 1,
                      "status": "active",
                      "preset_id": 399,
                      "cpu": 1,
                      "ram": 1024,
                      "disk": 10,
                      "network": 200
                    },
                    {
                      "id": 6584,
                      "created_at": "2023-01-13T10:10:29.753984",
                      "type": "worker",
                      "group_id": 1,
                      "status": "active",
                      "preset_id": 399,
                      "cpu": 1,
                      "ram": 1024,
                      "disk": 10,
                      "network": 200
                    }
                  ]
                }
              }
            }
          },
          "400": {
            "$ref": "#/components/responses/400"
          },
          "401": {
            "$ref": "#/components/responses/401"
          },
          "403": {
            "$ref": "#/components/responses/403"
          },
          "404": {
            "$ref": "#/components/responses/404"
          },
          "429": {
            "$ref": "#/components/responses/429"
          },
          "500": {
            "$ref": "#/components/responses/500"
          }
        },
        "x-codeSamples": [
          {
            "lang": "cURL",
            "label": "cURL",
            "source": "curl -X GET \\\n  -H \"Content-Type: application/json\" \\\n  -H \"Authorization: Bearer ${TIMEWEB_CLOUD_TOKEN}\" \\\n  \"https://api.timeweb.cloud/api/v1/k8s/clusters/84/groups/63/nodes\""
          }
        ]
      },
      "post": {
        "tags": [
          "Kubernetes"
        ],
        "summary": "Увеличение количество нод в группе на указанное количество",
        "description": "Чтобы увеличить количество нод в группе на указанное значение, отправьте POST запрос на `/api/v1/k8s/clusters/{cluster_id}/groups/{group_id}/nodes",
        "operationId": "Увеличение_количество_нод_в_группе_на_указанное_количество_api_v1__customer__clusters__cluster_id__groups__group_id__nodes_post",
        "parameters": [
          {
            "description": "Уникальный идентификатор кластера",
            "required": true,
            "schema": {
              "title": "Cluster Id",
              "type": "integer",
              "description": "Уникальный идентификатор кластера"
            },
            "name": "cluster_id",
            "in": "path"
          },
          {
            "description": "Уникальный идентификатор группы",
            "required": true,
            "schema": {
              "title": "Group Id",
              "type": "integer",
              "description": "Уникальный идентификатор группы"
            },
            "name": "group_id",
            "in": "path"
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/NodeCount"
              }
            }
          },
          "required": true
        },
        "responses": {
          "201": {
            "description": "Список нод",
            "content": {
              "application/json": {
                "schema": {
                  "allOf": [
                    {
                      "$ref": "#/components/schemas/NodesResponse"
                    },
                    {
                      "type": "object",
                      "properties": {
                        "response_id": {
                          "$ref": "#/components/schemas/response_id"
                        }
                      },
                      "required": [
                        "response_id"
                      ]
                    }
                  ]
                },
                "example": {
                  "response_id": "25f53867-85e1-4425-9125-3860b39e1402",
                  "meta": {
                    "total": 3
                  },
                  "nodes": [
                    {
                      "id": 804,
                      "created_at": "2023-01-13T10:10:29.754400",
                      "type": "worker",
                      "group_id": 1,
                      "status": "active",
                      "preset_id": 399,
                      "cpu": 1,
                      "ram": 1024,
                      "disk": 10,
                      "network": 200
                    },
                    {
                      "id": 899,
                      "created_at": "2023-01-13T10:10:29.754504",
                      "type": "worker",
                      "group_id": 1,
                      "status": "active",
                      "preset_id": 399,
                      "cpu": 1,
                      "ram": 1024,
                      "disk": 10,
                      "network": 200
                    },
                    {
                      "id": 5066,
                      "created_at": "2023-01-13T10:10:29.754614",
                      "type": "worker",
                      "group_id": 1,
                      "status": "active",
                      "preset_id": 399,
                      "cpu": 1,
                      "ram": 1024,
                      "disk": 10,
                      "network": 200
                    }
                  ]
                }
              }
            }
          },
          "400": {
            "$ref": "#/components/responses/400"
          },
          "401": {
            "$ref": "#/components/responses/401"
          },
          "403": {
            "$ref": "#/components/responses/403"
          },
          "404": {
            "$ref": "#/components/responses/404"
          },
          "429": {
            "$ref": "#/components/responses/429"
          },
          "500": {
            "$ref": "#/components/responses/500"
          }
        },
        "x-codeSamples": [
          {
            "lang": "cURL",
            "label": "cURL",
            "source": "curl -X POST \\\n  -H \"Content-Type: application/json\" \\\n  -H \"Authorization: Bearer ${TIMEWEB_CLOUD_TOKEN}\" \\\n  -d '{\"count\": 2}' \\\n  \"https://api.timeweb.cloud/api/v1/k8s/clusters/17/groups/56/nodes\""
          }
        ]
      },
      "delete": {
        "tags": [
          "Kubernetes"
        ],
        "summary": "Уменьшение количества нод в группе на указанное количество",
        "description": "Чтобы уменьшить количество нод в группе на указанное значение, отправьте DELETE запрос в `/api/v1/k8s/clusters/{cluster_id}/groups/{group_id}/nodes`.",
        "operationId": "Уменьшение_количества_нод_в_группе_на_указанное_количество_api_v1__customer__clusters__cluster_id__groups__group_id__nodes_delete",
        "parameters": [
          {
            "description": "Уникальный идентификатор кластера",
            "required": true,
            "schema": {
              "title": "Cluster Id",
              "type": "integer",
              "description": "Уникальный идентификатор кластера"
            },
            "name": "cluster_id",
            "in": "path"
          },
          {
            "description": "Уникальный идентификатор группы",
            "required": true,
            "schema": {
              "title": "Group Id",
              "type": "integer",
              "description": "Уникальный идентификатор группы"
            },
            "name": "group_id",
            "in": "path"
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/NodeCount"
              }
            }
          },
          "required": true
        },
        "responses": {
          "204": {
            "description": "Количество нод уменьшено"
          },
          "400": {
            "$ref": "#/components/responses/400"
          },
          "401": {
            "$ref": "#/components/responses/401"
          },
          "403": {
            "$ref": "#/components/responses/403"
          },
          "404": {
            "$ref": "#/components/responses/404"
          },
          "429": {
            "$ref": "#/components/responses/429"
          },
          "500": {
            "$ref": "#/components/responses/500"
          }
        },
        "x-codeSamples": [
          {
            "lang": "cURL",
            "label": "cURL",
            "source": "curl -X DELETE \\\n  -H \"Content-Type: application/json\" \\\n  -H \"Authorization: Bearer ${TIMEWEB_CLOUD_TOKEN}\" \\\n  -d '{\"count\": 2}' \\\n  \"https://api.timeweb.cloud/api/v1/k8s/clusters/31/groups/90/nodes\""
          }
        ]
      }
    },
    "/api/v1/k8s/clusters/{cluster_id}/nodes": {
      "get": {
        "tags": [
          "Kubernetes"
        ],
        "summary": "Получение списка нод",
        "description": "Чтобы получить список нод, отправьте GET запрос в `/api/v1/k8s/clusters/{cluster_id}/nodes`.",
        "operationId": "Получение_списка_нод_api_v1__customer__clusters__cluster_id__nodes_get",
        "parameters": [
          {
            "description": "Уникальный идентификатор кластера",
            "required": true,
            "schema": {
              "title": "Cluster Id",
              "type": "integer",
              "description": "Уникальный идентификатор кластера"
            },
            "name": "cluster_id",
            "in": "path"
          }
        ],
        "responses": {
          "200": {
            "description": "Список нод",
            "content": {
              "application/json": {
                "schema": {
                  "allOf": [
                    {
                      "$ref": "#/components/schemas/NodesResponse"
                    },
                    {
                      "type": "object",
                      "properties": {
                        "response_id": {
                          "$ref": "#/components/schemas/response_id"
                        }
                      },
                      "required": [
                        "response_id"
                      ]
                    }
                  ]
                },
                "example": {
                  "response_id": "9a5f84ec-47e7-485e-86f0-357d70c92c27",
                  "meta": {
                    "total": 3
                  },
                  "nodes": [
                    {
                      "id": 5373,
                      "created_at": "2023-01-13T10:10:29.753764",
                      "type": "worker",
                      "group_id": 1,
                      "status": "active",
                      "preset_id": 399,
                      "cpu": 1,
                      "ram": 1024,
                      "disk": 10,
                      "network": 200
                    },
                    {
                      "id": 2240,
                      "created_at": "2023-01-13T10:10:29.753879",
                      "type": "worker",
                      "group_id": 1,
                      "status": "active",
                      "preset_id": 399,
                      "cpu": 1,
                      "ram": 1024,
                      "disk": 10,
                      "network": 200
                    },
                    {
                      "id": 6584,
                      "created_at": "2023-01-13T10:10:29.753984",
                      "type": "worker",
                      "group_id": 1,
                      "status": "active",
                      "preset_id": 399,
                      "cpu": 1,
                      "ram": 1024,
                      "disk": 10,
                      "network": 200
                    }
                  ]
                }
              }
            }
          },
          "400": {
            "$ref": "#/components/responses/400"
          },
          "401": {
            "$ref": "#/components/responses/401"
          },
          "403": {
            "$ref": "#/components/responses/403"
          },
          "404": {
            "$ref": "#/components/responses/404"
          },
          "429": {
            "$ref": "#/components/responses/429"
          },
          "500": {
            "$ref": "#/components/responses/500"
          }
        },
        "x-codeSamples": [
          {
            "lang": "cURL",
            "label": "cURL",
            "source": "curl -X GET \\\n  -H \"Content-Type: application/json\" \\\n  -H \"Authorization: Bearer ${TIMEWEB_CLOUD_TOKEN}\" \\\n  \"https://api.timeweb.cloud/api/v1/k8s/clusters/93/nodes\""
          }
        ]
      }
    },
    "/api/v1/k8s/clusters/{cluster_id}/nodes/{node_id}": {
      "delete": {
        "tags": [
          "Kubernetes"
        ],
        "summary": "Удаление ноды",
        "description": "Чтобы удалить ноду, отправьте DELETE запрос в `/api/v1/k8s/clusters/{cluster_id}/nodes/{node_id}`.",
        "operationId": "Удаление_ноды_api_v1__customer__clusters__cluster_id__nodes__node_id__delete",
        "parameters": [
          {
            "description": "Уникальный идентификатор кластера",
            "required": true,
            "schema": {
              "title": "Cluster Id",
              "type": "integer",
              "description": "Уникальный идентификатор кластера"
            },
            "name": "cluster_id",
            "in": "path"
          },
          {
            "description": "Уникальный идентификатор группы нод",
            "required": true,
            "schema": {
              "title": "Node Id",
              "type": "integer",
              "description": "Уникальный идентификатор группы нод"
            },
            "name": "node_id",
            "in": "path"
          }
        ],
        "responses": {
          "204": {
            "description": "Нода удалена"
          },
          "400": {
            "$ref": "#/components/responses/400"
          },
          "401": {
            "$ref": "#/components/responses/401"
          },
          "403": {
            "$ref": "#/components/responses/403"
          },
          "404": {
            "$ref": "#/components/responses/404"
          },
          "429": {
            "$ref": "#/components/responses/429"
          },
          "500": {
            "$ref": "#/components/responses/500"
          }
        },
        "x-codeSamples": [
          {
            "lang": "cURL",
            "label": "cURL",
            "source": "curl -X DELETE \\\n  -H \"Content-Type: application/json\" \\\n  -H \"Authorization: Bearer ${TIMEWEB_CLOUD_TOKEN}\" \\\n  \"https://api.timeweb.cloud/api/v1/k8s/clusters/46/nodes/76\""
          }
        ]
      }
    },
    "/api/v1/k8s/k8s_versions": {
      "get": {
        "tags": [
          "Kubernetes"
        ],
        "summary": "Получение списка версий k8s",
        "description": "Чтобы получить список версий k8s, отправьте GET запрос в `/api/v1/k8s/k8s_versions`.",
        "operationId": "Получение_списка_версий_k8s_api_v1_k8s_versions_get",
        "responses": {
          "200": {
            "description": "Список версий k8s",
            "content": {
              "application/json": {
                "schema": {
                  "allOf": [
                    {
                      "$ref": "#/components/schemas/K8SVersionsResponse"
                    },
                    {
                      "type": "object",
                      "properties": {
                        "response_id": {
                          "$ref": "#/components/schemas/response_id"
                        }
                      },
                      "required": [
                        "response_id"
                      ]
                    }
                  ]
                }
              }
            }
          },
          "400": {
            "$ref": "#/components/responses/400"
          },
          "401": {
            "$ref": "#/components/responses/401"
          },
          "429": {
            "$ref": "#/components/responses/429"
          },
          "500": {
            "$ref": "#/components/responses/500"
          }
        },
        "x-codeSamples": [
          {
            "lang": "cURL",
            "label": "cURL",
            "source": "curl -X GET \\\n  -H \"Content-Type: application/json\" \\\n  -H \"Authorization: Bearer ${TIMEWEB_CLOUD_TOKEN}\" \\\n  \"https://api.timeweb.cloud/api/v1/k8s/k8s-versions\""
          }
        ]
      }
    },
    "/api/v1/k8s/network_drivers": {
      "get": {
        "tags": [
          "Kubernetes"
        ],
        "summary": "Получение списка сетевых драйверов k8s",
        "description": "Чтобы получить список сетевых драйверов k8s, отправьте GET запрос в `/api/v1/k8s/network_drivers`.",
        "operationId": "Получение_списка_сетевых_драйверов_k8s_api_v1_network_drivers_get",
        "responses": {
          "200": {
            "description": "Список сетевых драйверов k8s",
            "content": {
              "application/json": {
                "schema": {
                  "allOf": [
                    {
                      "$ref": "#/components/schemas/NetworkDriversResponse"
                    },
                    {
                      "type": "object",
                      "properties": {
                        "response_id": {
                          "$ref": "#/components/schemas/response_id"
                        }
                      },
                      "required": [
                        "response_id"
                      ]
                    }
                  ]
                }
              }
            }
          },
          "400": {
            "$ref": "#/components/responses/400"
          },
          "401": {
            "$ref": "#/components/responses/401"
          },
          "429": {
            "$ref": "#/components/responses/429"
          },
          "500": {
            "$ref": "#/components/responses/500"
          }
        },
        "x-codeSamples": [
          {
            "lang": "cURL",
            "label": "cURL",
            "source": "curl -X GET \\\n  -H \"Content-Type: application/json\" \\\n  -H \"Authorization: Bearer ${TIMEWEB_CLOUD_TOKEN}\" \\\n  \"https://api.timeweb.cloud/api/v1/k8s/network-drivers\""
          }
        ]
      }
    },
    "/api/v1/presets/k8s": {
      "get": {
        "tags": [
          "Kubernetes"
        ],
        "summary": "Получение списка тарифов",
        "description": "Чтобы получить список тарифов, отправьте GET запрос в `/api/v1/presets/k8s`.",
        "operationId": "Получение_списка_тарифов_api_v1_presets_get",
        "responses": {
          "200": {
            "description": "Список тарифов",
            "content": {
              "application/json": {
                "schema": {
                  "allOf": [
                    {
                      "$ref": "#/components/schemas/PresetsResponse"
                    },
                    {
                      "type": "object",
                      "properties": {
                        "response_id": {
                          "$ref": "#/components/schemas/response_id"
                        }
                      },
                      "required": [
                        "response_id"
                      ]
                    }
                  ]
                }
              }
            }
          },
          "400": {
            "$ref": "#/components/responses/400"
          },
          "401": {
            "$ref": "#/components/responses/401"
          },
          "429": {
            "$ref": "#/components/responses/429"
          },
          "500": {
            "$ref": "#/components/responses/500"
          }
        },
        "x-codeSamples": [
          {
            "lang": "cURL",
            "label": "cURL",
            "source": "curl -X GET \\\n  -H \"Content-Type: application/json\" \\\n  -H \"Authorization: Bearer ${TIMEWEB_CLOUD_TOKEN}\" \\\n  \"https://api.timeweb.cloud/api/v1/k8s/presets\""
          }
        ]
      }
    },
    "/api/v1/servers": {
      "get": {
        "summary": "Получение списка серверов",
        "description": "Чтобы получить серверов, отправьте GET запрос на `/api/v1/servers`.\n\n Тело ответа будет представлять собой объект JSON с ключом `servers`.",
        "parameters": [
          {
            "$ref": "#/components/parameters/limit"
          },
          {
            "$ref": "#/components/parameters/offset"
          }
        ],
        "x-codeSamples": [
          {
            "lang": "cURL",
            "label": "cURL",
            "source": "curl -X GET \\\n  -H \"Content-Type: application/json\" \\\n  -H \"Authorization: Bearer ${TIMEWEB_CLOUD_TOKEN}\" \\\n  \"https://api.timeweb.cloud/api/v1/servers\""
          }
        ],
        "responses": {
          "200": {
            "description": "Объект JSON c ключом `servers`",
            "content": {
              "application/json": {
                "schema": {
                  "allOf": [
                    {
                      "type": "object",
                      "properties": {
                        "meta": {
                          "$ref": "#/components/schemas/meta"
                        },
                        "servers": {
                          "type": "array",
                          "items": {
                            "$ref": "#/components/schemas/vds"
                          }
                        }
                      },
                      "required": [
                        "servers",
                        "meta"
                      ]
                    },
                    {
                      "type": "object",
                      "properties": {
                        "response_id": {
                          "$ref": "#/components/schemas/response_id"
                        }
                      },
                      "required": [
                        "response_id"
                      ]
                    }
                  ]
                }
              }
            }
          },
          "400": {
            "$ref": "#/components/responses/400"
          },
          "401": {
            "$ref": "#/components/responses/401"
          },
          "403": {
            "$ref": "#/components/responses/403"
          },
          "404": {
            "$ref": "#/components/responses/404"
          },
          "429": {
            "$ref": "#/components/responses/429"
          },
          "500": {
            "$ref": "#/components/responses/500"
          }
        },
        "tags": [
          "Облачные серверы"
        ]
      },
      "post": {
        "summary": "Создание сервера",
        "description": "Чтобы создать сервер, отправьте POST запрос в `api/v1/servers`, задав необходимые атрибуты. Обязательно должен присутствовать один из параметров `configuration` или `preset_id`.\n\nCервер будет создан с использованием предоставленной информации. Тело ответа будет содержать объект JSON с информацией о созданном сервере.\n\n",
        "x-codeSamples": [
          {
            "lang": "cURL",
            "label": "cURL",
            "source": "curl -X POST \\\n  -H \"Content-Type: application/json\" \\\n  -H \"Authorization: Bearer ${TIMEWEB_CLOUD_TOKEN}\" \\\n  -d '{\n  \"is_ddos_guard\": false,\n  \"os_id\": 65,\n  \"bandwidth\": 200,\n  \"comment\": \"comment\",\n  \"name\": \"name\",\n  \"preset_id\": 122,\n  \"is_local_network\": false\n}' \"https://api.timeweb.cloud/api/v1/servers\""
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/create-server"
              }
            }
          },
          "required": true
        },
        "responses": {
          "201": {
            "description": "Объект JSON c ключом `server`",
            "content": {
              "application/json": {
                "schema": {
                  "allOf": [
                    {
                      "type": "object",
                      "properties": {
                        "server": {
                          "$ref": "#/components/schemas/vds"
                        }
                      },
                      "required": [
                        "server"
                      ]
                    },
                    {
                      "type": "object",
                      "properties": {
                        "response_id": {
                          "$ref": "#/components/schemas/response_id"
                        }
                      },
                      "required": [
                        "response_id"
                      ]
                    }
                  ]
                }
              }
            }
          },
          "400": {
            "$ref": "#/components/responses/400"
          },
          "401": {
            "$ref": "#/components/responses/401"
          },
          "403": {
            "$ref": "#/components/responses/403"
          },
          "409": {
            "$ref": "#/components/responses/conflict"
          },
          "429": {
            "$ref": "#/components/responses/429"
          },
          "500": {
            "$ref": "#/components/responses/500"
          }
        },
        "tags": [
          "Облачные серверы"
        ]
      }
    },
    "/api/v1/servers/{server_id}": {
      "get": {
        "summary": "Получение сервера",
        "description": "Чтобы получить сервер, отправьте запрос GET в `/api/v1/servers/{server_id}`.\n",
        "parameters": [
          {
            "$ref": "#/components/parameters/server-id"
          }
        ],
        "x-codeSamples": [
          {
            "lang": "cURL",
            "label": "cURL",
            "source": "curl -X GET \\\n  -H \"Content-Type: application/json\" \\\n  -H \"Authorization: Bearer ${TIMEWEB_CLOUD_TOKEN}\" \\\n \"https://api.timeweb.cloud/api/v1/servers/{server_id}\""
          }
        ],
        "responses": {
          "200": {
            "description": "Объект JSON c ключом `server`",
            "content": {
              "application/json": {
                "schema": {
                  "allOf": [
                    {
                      "type": "object",
                      "properties": {
                        "server": {
                          "$ref": "#/components/schemas/vds"
                        }
                      },
                      "required": [
                        "server"
                      ]
                    },
                    {
                      "type": "object",
                      "properties": {
                        "response_id": {
                          "$ref": "#/components/schemas/response_id"
                        }
                      },
                      "required": [
                        "response_id"
                      ]
                    }
                  ]
                }
              }
            }
          },
          "400": {
            "$ref": "#/components/responses/400"
          },
          "401": {
            "$ref": "#/components/responses/401"
          },
          "403": {
            "$ref": "#/components/responses/403"
          },
          "404": {
            "$ref": "#/components/responses/404"
          },
          "409": {
            "$ref": "#/components/responses/conflict"
          },
          "429": {
            "$ref": "#/components/responses/429"
          },
          "500": {
            "$ref": "#/components/responses/500"
          }
        },
        "tags": [
          "Облачные серверы"
        ]
      },
      "delete": {
        "summary": "Удаление сервера",
        "description": "Чтобы удалить сервер, отправьте запрос DELETE в `/api/v1/servers/{server_id}`.\\\n Обратите внимание, если на аккаунте включено удаление серверов по смс, то вернется ошибка 423.",
        "parameters": [
          {
            "$ref": "#/components/parameters/server-id"
          }
        ],
        "x-codeSamples": [
          {
            "lang": "cURL",
            "label": "cURL",
            "source": "curl -X DELETE \\\n  -H \"Content-Type: application/json\" \\\n  -H \"Authorization: Bearer ${TIMEWEB_CLOUD_TOKEN}\" \\\n  \"https://api.timeweb.cloud/api/v1/servers/{server_id}\""
          }
        ],
        "responses": {
          "204": {
            "description": "Успешное удаление сервера"
          },
          "400": {
            "$ref": "#/components/responses/400"
          },
          "401": {
            "$ref": "#/components/responses/401"
          },
          "403": {
            "$ref": "#/components/responses/403"
          },
          "404": {
            "$ref": "#/components/responses/404"
          },
          "409": {
            "$ref": "#/components/responses/conflict"
          },
          "429": {
            "$ref": "#/components/responses/429"
          },
          "500": {
            "$ref": "#/components/responses/500"
          }
        },
        "tags": [
          "Облачные серверы"
        ]
      },
      "patch": {
        "summary": "Изменение сервера",
        "description": "Чтобы обновить только определенные атрибуты сервера, отправьте запрос PATCH в `/api/v1/servers/{server_id}`.\n",
        "parameters": [
          {
            "$ref": "#/components/parameters/server-id"
          }
        ],
        "x-codeSamples": [
          {
            "lang": "cURL",
            "label": "cURL",
            "source": "curl -X PATCH \\\n  -H \"Content-Type: application/json\" \\\n  -H \"Authorization: Bearer ${TIMEWEB_CLOUD_TOKEN}\" \\\n  -d '{\n  \"os_id\": 65,\n  \"bandwidth\": 200,\n  \"comment\": \"comment\",\n  \"name\": \"name\",\n  \"preset_id\": 122,\n}' \"https://api.timeweb.cloud/api/v1/servers/{server_id}\""
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/update-server"
              }
            }
          },
          "required": true
        },
        "responses": {
          "200": {
            "description": "Объект JSON c ключом `server`",
            "content": {
              "application/json": {
                "schema": {
                  "allOf": [
                    {
                      "type": "object",
                      "properties": {
                        "server": {
                          "$ref": "#/components/schemas/vds"
                        }
                      },
                      "required": [
                        "server"
                      ]
                    },
                    {
                      "type": "object",
                      "properties": {
                        "response_id": {
                          "$ref": "#/components/schemas/response_id"
                        }
                      },
                      "required": [
                        "response_id"
                      ]
                    }
                  ]
                }
              }
            }
          },
          "400": {
            "$ref": "#/components/responses/400"
          },
          "401": {
            "$ref": "#/components/responses/401"
          },
          "403": {
            "$ref": "#/components/responses/403"
          },
          "404": {
            "$ref": "#/components/responses/404"
          },
          "409": {
            "$ref": "#/components/responses/conflict"
          },
          "429": {
            "$ref": "#/components/responses/429"
          },
          "500": {
            "$ref": "#/components/responses/500"
          }
        },
        "tags": [
          "Облачные серверы"
        ]
      }
    },
    "/api/v1/servers/{server_id}/action": {
      "post": {
        "summary": "Выполнение действия над сервером",
        "description": "Чтобы выполнить действие над сервером, отправьте POST запрос на `/api/v1/servers/{server_id}/action`.",
        "parameters": [
          {
            "$ref": "#/components/parameters/server-id"
          }
        ],
        "x-codeSamples": [
          {
            "lang": "cURL",
            "label": "cURL",
            "source": "curl -X POST \\\n  -H \"Content-Type: application/json\" \\\n  -H \"Authorization: Bearer ${TIMEWEB_CLOUD_TOKEN}\" \\\n  -d '{\n  \"action\": \"shutdown\",\n}' \"https://api.timeweb.cloud/api/v1/servers/{server_id}/action\""
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "description": "Действие над сервером",
                "properties": {
                  "action": {
                    "type": "string",
                    "enum": [
                      "hard_reboot",
                      "hard_shutdown",
                      "install",
                      "reboot",
                      "remove",
                      "reset_password",
                      "shutdown",
                      "start",
                      "clone"
                    ]
                  }
                },
                "required": [
                  "action"
                ]
              }
            }
          },
          "required": true
        },
        "responses": {
          "204": {
            "description": "Успешное выполнение действия"
          },
          "400": {
            "$ref": "#/components/responses/400"
          },
          "401": {
            "$ref": "#/components/responses/401"
          },
          "403": {
            "$ref": "#/components/responses/403"
          },
          "404": {
            "$ref": "#/components/responses/404"
          },
          "409": {
            "$ref": "#/components/responses/conflict"
          },
          "429": {
            "$ref": "#/components/responses/429"
          },
          "500": {
            "$ref": "#/components/responses/500"
          }
        },
        "tags": [
          "Облачные серверы"
        ]
      }
    },
    "/api/v1/os/servers": {
      "get": {
        "summary": "Получение списка операционных систем",
        "description": "Чтобы получить список всех операционных систем, отправьте GET запрос на `/api/v1/os/servers`.\n\n Тело ответа будет представлять собой объект JSON с ключом `servers_os`.",
        "x-codeSamples": [
          {
            "lang": "cURL",
            "label": "cURL",
            "source": "curl -X GET \\\n  -H \"Content-Type: application/json\" \\\n  -H \"Authorization: Bearer ${TIMEWEB_CLOUD_TOKEN}\" \\\n  \"https://api.timeweb.cloud/api/v1/os/servers\""
          }
        ],
        "responses": {
          "200": {
            "description": "Объект JSON c ключом `servers_os`",
            "content": {
              "application/json": {
                "schema": {
                  "allOf": [
                    {
                      "type": "object",
                      "properties": {
                        "meta": {
                          "$ref": "#/components/schemas/meta"
                        },
                        "servers_os": {
                          "type": "array",
                          "items": {
                            "$ref": "#/components/schemas/servers-os"
                          }
                        }
                      },
                      "required": [
                        "servers_os",
                        "meta"
                      ]
                    },
                    {
                      "type": "object",
                      "properties": {
                        "response_id": {
                          "$ref": "#/components/schemas/response_id"
                        }
                      },
                      "required": [
                        "response_id"
                      ]
                    }
                  ]
                }
              }
            }
          },
          "400": {
            "$ref": "#/components/responses/400"
          },
          "401": {
            "$ref": "#/components/responses/401"
          },
          "403": {
            "$ref": "#/components/responses/403"
          },
          "404": {
            "$ref": "#/components/responses/404"
          },
          "429": {
            "$ref": "#/components/responses/429"
          },
          "500": {
            "$ref": "#/components/responses/500"
          }
        },
        "tags": [
          "Облачные серверы"
        ]
      }
    },
    "/api/v1/presets/servers": {
      "get": {
        "summary": "Получение списка тарифов серверов",
        "description": "Чтобы получить список всех тарифов серверов, отправьте GET запрос на `/api/v1/presets/servers`.\n\n Тело ответа будет представлять собой объект JSON с ключом `server_presets`.",
        "x-codeSamples": [
          {
            "lang": "cURL",
            "label": "cURL",
            "source": "curl -X GET \\\n  -H \"Content-Type: application/json\" \\\n  -H \"Authorization: Bearer ${TIMEWEB_CLOUD_TOKEN}\" \\\n  \"https://api.timeweb.cloud/api/v1/presets/servers\""
          }
        ],
        "responses": {
          "200": {
            "description": "Объект JSON c ключом `server_presets",
            "content": {
              "application/json": {
                "schema": {
                  "allOf": [
                    {
                      "type": "object",
                      "properties": {
                        "meta": {
                          "$ref": "#/components/schemas/meta"
                        },
                        "server_presets": {
                          "type": "array",
                          "items": {
                            "$ref": "#/components/schemas/servers-preset"
                          }
                        }
                      },
                      "required": [
                        "meta",
                        "server_presets"
                      ]
                    },
                    {
                      "type": "object",
                      "properties": {
                        "response_id": {
                          "$ref": "#/components/schemas/response_id"
                        }
                      },
                      "required": [
                        "response_id"
                      ]
                    }
                  ]
                }
              }
            }
          },
          "400": {
            "$ref": "#/components/responses/400"
          },
          "401": {
            "$ref": "#/components/responses/401"
          },
          "403": {
            "$ref": "#/components/responses/403"
          },
          "429": {
            "$ref": "#/components/responses/429"
          },
          "500": {
            "$ref": "#/components/responses/500"
          }
        },
        "tags": [
          "Облачные серверы"
        ]
      }
    },
    "/api/v1/configurator/servers": {
      "get": {
        "summary": "Получение списка конфигураторов серверов",
        "description": "Чтобы получить список всех конфигураторов серверов, отправьте GET запрос на `/api/v1/configurator/servers`.\n\n Тело ответа будет представлять собой объект JSON с ключом `server_configurators`.",
        "x-codeSamples": [
          {
            "lang": "cURL",
            "label": "cURL",
            "source": "curl -X GET \\\n  -H \"Content-Type: application/json\" \\\n  -H \"Authorization: Bearer ${TIMEWEB_CLOUD_TOKEN}\" \\\n  \"https://api.timeweb.cloud/api/v1/configurator/servers\""
          }
        ],
        "responses": {
          "200": {
            "description": "Объект JSON c ключом `server_configurators",
            "content": {
              "application/json": {
                "schema": {
                  "allOf": [
                    {
                      "type": "object",
                      "properties": {
                        "meta": {
                          "$ref": "#/components/schemas/meta"
                        },
                        "server_configurators": {
                          "type": "array",
                          "items": {
                            "$ref": "#/components/schemas/servers-configurator"
                          }
                        }
                      },
                      "required": [
                        "meta",
                        "server_configurators"
                      ]
                    },
                    {
                      "type": "object",
                      "properties": {
                        "response_id": {
                          "$ref": "#/components/schemas/response_id"
                        }
                      },
                      "required": [
                        "response_id"
                      ]
                    }
                  ]
                }
              }
            }
          },
          "400": {
            "$ref": "#/components/responses/400"
          },
          "401": {
            "$ref": "#/components/responses/401"
          },
          "403": {
            "$ref": "#/components/responses/403"
          },
          "429": {
            "$ref": "#/components/responses/429"
          },
          "500": {
            "$ref": "#/components/responses/500"
          }
        },
        "tags": [
          "Облачные серверы"
        ]
      }
    },
    "/api/v1/software/servers": {
      "get": {
        "summary": "Получение списка ПО из маркетплейса",
        "description": "Чтобы получить список ПО из маркетплейса, отправьте GET запрос на `/api/v1/software/servers`.\n\n Тело ответа будет представлять собой объект JSON с ключом `servers_software`.",
        "x-codeSamples": [
          {
            "lang": "cURL",
            "label": "cURL",
            "source": "curl -X GET \\\n  -H \"Content-Type: application/json\" \\\n  -H \"Authorization: Bearer ${TIMEWEB_CLOUD_TOKEN}\" \\\n  \"https://api.timeweb.cloud/api/v1/software/servers\""
          }
        ],
        "responses": {
          "200": {
            "description": "Объект JSON c ключом `servers_software`",
            "content": {
              "application/json": {
                "schema": {
                  "allOf": [
                    {
                      "type": "object",
                      "properties": {
                        "meta": {
                          "$ref": "#/components/schemas/meta"
                        },
                        "servers_software": {
                          "type": "array",
                          "items": {
                            "$ref": "#/components/schemas/servers-software"
                          }
                        }
                      },
                      "required": [
                        "servers_software",
                        "meta"
                      ]
                    },
                    {
                      "type": "object",
                      "properties": {
                        "response_id": {
                          "$ref": "#/components/schemas/response_id"
                        }
                      },
                      "required": [
                        "response_id"
                      ]
                    }
                  ]
                }
              }
            }
          },
          "400": {
            "$ref": "#/components/responses/400"
          },
          "401": {
            "$ref": "#/components/responses/401"
          },
          "403": {
            "$ref": "#/components/responses/403"
          },
          "404": {
            "$ref": "#/components/responses/404"
          },
          "429": {
            "$ref": "#/components/responses/429"
          },
          "500": {
            "$ref": "#/components/responses/500"
          }
        },
        "tags": [
          "Облачные серверы"
        ]
      }
    },
    "/api/v1/servers/{server_id}/boot-mode": {
      "post": {
        "summary": "Выбор типа загрузки операционной системы сервера",
        "description": "Чтобы изменить тип загрузки операционной системы сервера, отправьте POST запрос на `/api/v1/servers/{server_id}/boot-mode`. \\\n После смены типа загрузки сервер будет перезапущен.",
        "parameters": [
          {
            "$ref": "#/components/parameters/server-id"
          }
        ],
        "x-codeSamples": [
          {
            "lang": "cURL",
            "label": "cURL",
            "source": "curl -X POST \\\n  -H \"Content-Type: application/json\" \\\n  -H \"Authorization: Bearer ${TIMEWEB_CLOUD_TOKEN}\" -d '{ \"boot_mode\": \"default\" }' \\\n  \"https://api.timeweb.cloud/api/v1/servers/{server_id}/boot-mode\""
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "properties": {
                  "boot_mode": {
                    "type": "string",
                    "description": "Тип загрузки операционной системы. \\\n Параметры: `default` - стандартный режим, `single` - однопользовательский режим, `recovery_disk` - загрузка с диска восстановления",
                    "enum": [
                      "default",
                      "single",
                      "recovery_disk"
                    ],
                    "example": "default"
                  }
                },
                "required": [
                  "boot_mode"
                ]
              }
            }
          }
        },
        "responses": {
          "204": {
            "description": "Успешная смена загрузки операционной системы сервера"
          },
          "400": {
            "$ref": "#/components/responses/400"
          },
          "401": {
            "$ref": "#/components/responses/401"
          },
          "403": {
            "$ref": "#/components/responses/403"
          },
          "404": {
            "$ref": "#/components/responses/404"
          },
          "409": {
            "$ref": "#/components/responses/conflict"
          },
          "429": {
            "$ref": "#/components/responses/429"
          },
          "500": {
            "$ref": "#/components/responses/500"
          }
        },
        "tags": [
          "Облачные серверы"
        ]
      }
    },
    "/api/v1/servers/{server_id}/local-networks/nat-mode": {
      "patch": {
        "summary": "Изменение правил маршрутизации трафика сервера (NAT)",
        "description": "Чтобы измененить правила маршрутизации трафика сервера (NAT), отправьте PATCH запрос на `/api/v1/servers/{server_id}/local-networks/nat-mode`.",
        "parameters": [
          {
            "$ref": "#/components/parameters/server-id"
          }
        ],
        "x-codeSamples": [
          {
            "lang": "cURL",
            "label": "cURL",
            "source": "curl -X PATCH \\\n  -H \"Content-Type: application/json\" \\\n  -H \"Authorization: Bearer ${TIMEWEB_CLOUD_TOKEN}\" -d '{ \"nat_mode\": \"no_nat\" }' \\\n  \"https://api.timeweb.cloud/api/v1/servers/{server_id}/local-networks/nat-mode\""
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "properties": {
                  "nat_mode": {
                    "type": "string",
                    "description": "Правило для маршрутизации трафика. \\\n Досутпные правила: `dnat_and_snat` - разрешен входящий и исходящий трафик, `snat` - разрешен только исходящий трафик, `no_nat` - разрешен трафик только в локальной сети",
                    "enum": [
                      "dnat_and_snat",
                      "snat",
                      "no_nat"
                    ],
                    "example": "no_nat"
                  }
                },
                "required": [
                  "nat_mode"
                ]
              }
            }
          }
        },
        "responses": {
          "204": {
            "description": "Успешна смена правила маршрутизации трафика"
          },
          "400": {
            "$ref": "#/components/responses/400"
          },
          "401": {
            "$ref": "#/components/responses/401"
          },
          "403": {
            "$ref": "#/components/responses/403"
          },
          "404": {
            "$ref": "#/components/responses/404"
          },
          "409": {
            "$ref": "#/components/responses/conflict"
          },
          "429": {
            "$ref": "#/components/responses/429"
          },
          "500": {
            "$ref": "#/components/responses/500"
          }
        },
        "tags": [
          "Облачные серверы"
        ]
      }
    },
    "/api/v1/servers/{server_id}/ips": {
      "get": {
        "summary": "Получение списка IP-адресов сервера",
        "description": "Чтобы получить список IP-адресов сервера, отправьте GET запрос на `/api/v1/servers/{server_id}/ips`. \\\n На данный момент IPv6 доступны только для локации `ru-1`",
        "parameters": [
          {
            "$ref": "#/components/parameters/server-id"
          }
        ],
        "x-codeSamples": [
          {
            "lang": "cURL",
            "label": "cURL",
            "source": "curl -X GET \\\n  -H \"Content-Type: application/json\" \\\n  -H \"Authorization: Bearer ${TIMEWEB_CLOUD_TOKEN}\" \\\n \"https://api.timeweb.cloud/api/v1/servers/{server_id}/ips\""
          }
        ],
        "responses": {
          "200": {
            "description": "Объект JSON c ключом `server_ips`",
            "content": {
              "application/json": {
                "schema": {
                  "allOf": [
                    {
                      "type": "object",
                      "properties": {
                        "meta": {
                          "$ref": "#/components/schemas/meta"
                        },
                        "server_ips": {
                          "type": "array",
                          "items": {
                            "$ref": "#/components/schemas/server-ip"
                          }
                        }
                      },
                      "required": [
                        "meta",
                        "server_ips"
                      ]
                    },
                    {
                      "type": "object",
                      "properties": {
                        "response_id": {
                          "$ref": "#/components/schemas/response_id"
                        }
                      },
                      "required": [
                        "response_id"
                      ]
                    }
                  ]
                }
              }
            }
          },
          "400": {
            "$ref": "#/components/responses/400"
          },
          "401": {
            "$ref": "#/components/responses/401"
          },
          "403": {
            "$ref": "#/components/responses/403"
          },
          "404": {
            "$ref": "#/components/responses/404"
          },
          "409": {
            "$ref": "#/components/responses/conflict"
          },
          "429": {
            "$ref": "#/components/responses/429"
          },
          "500": {
            "$ref": "#/components/responses/500"
          }
        },
        "tags": [
          "Облачные серверы"
        ]
      },
      "post": {
        "summary": "Добавление IP-адреса сервера",
        "description": "Чтобы добавить IP-адрес сервера, отправьте POST запрос на `/api/v1/servers/{server_id}/ips`. \\\n На данный момент IPv6 доступны только для серверов с локецией `ru-1`",
        "parameters": [
          {
            "$ref": "#/components/parameters/server-id"
          }
        ],
        "x-codeSamples": [
          {
            "lang": "cURL",
            "label": "cURL",
            "source": "curl -X POST \\\n  -H \"Content-Type: application/json\" \\\n  -H \"Authorization: Bearer ${TIMEWEB_CLOUD_TOKEN}\" \\\n  -d '{\n  \"type\": \"ipv4\"\n}' \"https://api.timeweb.cloud/api/v1/servers/{server_id}/ips\""
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "properties": {
                  "type": {
                    "type": "string",
                    "description": "Тип IP-адреса",
                    "enum": [
                      "ipv4",
                      "ipv6"
                    ],
                    "example": "ipv6"
                  },
                  "ptr": {
                    "type": "string",
                    "description": "Ptr запись IP-адреса",
                    "example": "1197521-cl1233.tw1.ru"
                  }
                },
                "required": [
                  "type"
                ]
              }
            }
          },
          "required": true
        },
        "responses": {
          "201": {
            "description": "Объект JSON c ключом `server_ip`",
            "content": {
              "application/json": {
                "schema": {
                  "allOf": [
                    {
                      "type": "object",
                      "properties": {
                        "server_ip": {
                          "$ref": "#/components/schemas/server-ip"
                        }
                      },
                      "required": [
                        "server_ip"
                      ]
                    },
                    {
                      "type": "object",
                      "properties": {
                        "response_id": {
                          "$ref": "#/components/schemas/response_id"
                        }
                      },
                      "required": [
                        "response_id"
                      ]
                    }
                  ]
                }
              }
            }
          },
          "400": {
            "$ref": "#/components/responses/400"
          },
          "401": {
            "$ref": "#/components/responses/401"
          },
          "403": {
            "$ref": "#/components/responses/403"
          },
          "404": {
            "$ref": "#/components/responses/404"
          },
          "409": {
            "$ref": "#/components/responses/conflict"
          },
          "429": {
            "$ref": "#/components/responses/429"
          },
          "500": {
            "$ref": "#/components/responses/500"
          }
        },
        "tags": [
          "Облачные серверы"
        ]
      },
      "delete": {
        "summary": "Удаление IP-адреса сервера",
        "description": "Чтобы удалить IP-адрес сервера, отправьте DELETE запрос на `/api/v1/servers/{server_id}/ips`. Нельзя удалить основной IP-адрес",
        "parameters": [
          {
            "$ref": "#/components/parameters/server-id"
          }
        ],
        "x-codeSamples": [
          {
            "lang": "cURL",
            "label": "cURL",
            "source": "curl -X PATCH \\\n  -H \"Content-Type: application/json\" \\\n  -H \"Authorization: Bearer ${TIMEWEB_CLOUD_TOKEN}\" \\\n  -d '{\n  \"ip\": \"1.1.1.1\"\n}' \"https://api.timeweb.cloud/api/v1/servers/{server_id}/ips\""
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "properties": {
                  "ip": {
                    "type": "string",
                    "description": "IPv4 или IPv6 IP-адрес",
                    "example": "1.1.1.1"
                  }
                },
                "required": [
                  "ip"
                ]
              }
            }
          },
          "required": true
        },
        "responses": {
          "204": {
            "description": "IP-адрес успешно удален"
          },
          "400": {
            "$ref": "#/components/responses/400"
          },
          "401": {
            "$ref": "#/components/responses/401"
          },
          "403": {
            "$ref": "#/components/responses/403"
          },
          "404": {
            "$ref": "#/components/responses/404"
          },
          "409": {
            "$ref": "#/components/responses/conflict"
          },
          "429": {
            "$ref": "#/components/responses/429"
          },
          "500": {
            "$ref": "#/components/responses/500"
          }
        },
        "tags": [
          "Облачные серверы"
        ]
      },
      "patch": {
        "summary": "Изменение IP-адреса сервера",
        "description": "Чтобы изменить IP-адрес сервера, отправьте POST запрос на `/api/v1/servers/{server_id}/ips`.",
        "parameters": [
          {
            "$ref": "#/components/parameters/server-id"
          }
        ],
        "x-codeSamples": [
          {
            "lang": "cURL",
            "label": "cURL",
            "source": "curl -X PATCH \\\n  -H \"Content-Type: application/json\" \\\n  -H \"Authorization: Bearer ${TIMEWEB_CLOUD_TOKEN}\" \\\n  -d '{\n  \"ptr\": \"1197521-cl1233.tw1.ru\", \n  \"ip\": \"1.1.1.1\"\n}' \"https://api.timeweb.cloud/api/v1/servers/{server_id}/ips\""
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "properties": {
                  "ip": {
                    "type": "string",
                    "description": "IPv4 или IPv6 IP-адрес",
                    "example": "1.1.1.1"
                  },
                  "ptr": {
                    "type": "string",
                    "description": "Ptr запись IP-адреса",
                    "example": "1197521-cl1233.tw1.ru"
                  }
                },
                "required": [
                  "ip",
                  "ptr"
                ]
              }
            }
          },
          "required": true
        },
        "responses": {
          "200": {
            "description": "Объект JSON c ключом `server_ip`",
            "content": {
              "application/json": {
                "schema": {
                  "allOf": [
                    {
                      "type": "object",
                      "properties": {
                        "server_ip": {
                          "$ref": "#/components/schemas/server-ip"
                        }
                      },
                      "required": [
                        "server_ip"
                      ]
                    },
                    {
                      "type": "object",
                      "properties": {
                        "response_id": {
                          "$ref": "#/components/schemas/response_id"
                        }
                      },
                      "required": [
                        "response_id"
                      ]
                    }
                  ]
                }
              }
            }
          },
          "400": {
            "$ref": "#/components/responses/400"
          },
          "401": {
            "$ref": "#/components/responses/401"
          },
          "403": {
            "$ref": "#/components/responses/403"
          },
          "404": {
            "$ref": "#/components/responses/404"
          },
          "409": {
            "$ref": "#/components/responses/conflict"
          },
          "429": {
            "$ref": "#/components/responses/429"
          },
          "500": {
            "$ref": "#/components/responses/500"
          }
        },
        "tags": [
          "Облачные серверы"
        ]
      }
    },
    "/api/v1/servers/{server_id}/logs": {
      "get": {
        "summary": "Получение списка логов сервера",
        "description": "Чтобы получить список дисков сервера, отправьте GET запрос на `/api/v1/servers/{server_id}/logs`.",
        "parameters": [
          {
            "$ref": "#/components/parameters/server-id"
          },
          {
            "$ref": "#/components/parameters/limit"
          },
          {
            "$ref": "#/components/parameters/offset"
          },
          {
            "description": "Сортировка элементов по дате",
            "in": "query",
            "name": "order",
            "enum": [
              "asc",
              "desc"
            ],
            "required": false,
            "schema": {
              "type": "string",
              "default": "asc"
            }
          }
        ],
        "x-codeSamples": [
          {
            "lang": "cURL",
            "label": "cURL",
            "source": "curl -X GET \\\n  -H \"Content-Type: application/json\" \\\n  -H \"Authorization: Bearer ${TIMEWEB_CLOUD_TOKEN}\" \\\n \"https://api.timeweb.cloud/api/v1/servers/{server_id}/logs\""
          }
        ],
        "responses": {
          "200": {
            "description": "Объект JSON c ключом `server_logs`",
            "content": {
              "application/json": {
                "schema": {
                  "allOf": [
                    {
                      "type": "object",
                      "properties": {
                        "meta": {
                          "$ref": "#/components/schemas/meta"
                        },
                        "server_logs": {
                          "type": "array",
                          "items": {
                            "$ref": "#/components/schemas/server-log"
                          }
                        }
                      },
                      "required": [
                        "meta",
                        "server_logs"
                      ]
                    },
                    {
                      "type": "object",
                      "properties": {
                        "response_id": {
                          "$ref": "#/components/schemas/response_id"
                        }
                      },
                      "required": [
                        "response_id"
                      ]
                    }
                  ]
                }
              }
            }
          },
          "400": {
            "$ref": "#/components/responses/400"
          },
          "401": {
            "$ref": "#/components/responses/401"
          },
          "403": {
            "$ref": "#/components/responses/403"
          },
          "404": {
            "$ref": "#/components/responses/404"
          },
          "409": {
            "$ref": "#/components/responses/conflict"
          },
          "429": {
            "$ref": "#/components/responses/429"
          },
          "500": {
            "$ref": "#/components/responses/500"
          }
        },
        "tags": [
          "Облачные серверы"
        ]
      }
    },
    "/api/v1/servers/{server_id}/disks": {
      "get": {
        "summary": "Получение списка дисков сервера",
        "description": "Чтобы получить список дисков сервера, отправьте GET запрос на `/api/v1/servers/{server_id}/disks`.",
        "parameters": [
          {
            "$ref": "#/components/parameters/server-id"
          }
        ],
        "x-codeSamples": [
          {
            "lang": "cURL",
            "label": "cURL",
            "source": "curl -X GET \\\n  -H \"Content-Type: application/json\" \\\n  -H \"Authorization: Bearer ${TIMEWEB_CLOUD_TOKEN}\" \\\n \"https://api.timeweb.cloud/api/v1/servers/{server_id}/disks\""
          }
        ],
        "responses": {
          "200": {
            "description": "Объект JSON c ключом `server_disks`",
            "content": {
              "application/json": {
                "schema": {
                  "allOf": [
                    {
                      "type": "object",
                      "properties": {
                        "meta": {
                          "$ref": "#/components/schemas/meta"
                        },
                        "server_disks": {
                          "type": "array",
                          "items": {
                            "$ref": "#/components/schemas/server-disk"
                          }
                        }
                      },
                      "required": [
                        "meta",
                        "server_disks"
                      ]
                    },
                    {
                      "type": "object",
                      "properties": {
                        "response_id": {
                          "$ref": "#/components/schemas/response_id"
                        }
                      },
                      "required": [
                        "response_id"
                      ]
                    }
                  ]
                }
              }
            }
          },
          "400": {
            "$ref": "#/components/responses/400"
          },
          "401": {
            "$ref": "#/components/responses/401"
          },
          "403": {
            "$ref": "#/components/responses/403"
          },
          "404": {
            "$ref": "#/components/responses/404"
          },
          "409": {
            "$ref": "#/components/responses/conflict"
          },
          "429": {
            "$ref": "#/components/responses/429"
          },
          "500": {
            "$ref": "#/components/responses/500"
          }
        },
        "tags": [
          "Облачные серверы"
        ]
      },
      "post": {
        "summary": "Создание диска сервера",
        "description": "Чтобы создать диск сервера, отправьте POST запрос на `/api/v1/servers/{server_id}/disks`. Системный диск создать нельзя.",
        "parameters": [
          {
            "$ref": "#/components/parameters/server-id"
          }
        ],
        "x-codeSamples": [
          {
            "lang": "cURL",
            "label": "cURL",
            "source": "curl -X POST \\\n  -H \"Content-Type: application/json\" \\\n  -H \"Authorization: Bearer ${TIMEWEB_CLOUD_TOKEN}\" -d '{ \"size\": 10240 }' \\\n  \"https://api.timeweb.cloud/api/v1/servers/{server_id}/disks\""
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "properties": {
                  "size": {
                    "type": "number",
                    "description": "Минимальный размер 5120. Максимальный размер 512000. Шаг 5120",
                    "example": 10240
                  }
                },
                "required": [
                  "size"
                ]
              }
            }
          }
        },
        "responses": {
          "201": {
            "description": "Успешное создание диска сервера",
            "content": {
              "application/json": {
                "schema": {
                  "allOf": [
                    {
                      "type": "object",
                      "properties": {
                        "server_disk": {
                          "$ref": "#/components/schemas/server-disk"
                        }
                      },
                      "required": [
                        "server_disk"
                      ]
                    },
                    {
                      "type": "object",
                      "properties": {
                        "response_id": {
                          "$ref": "#/components/schemas/response_id"
                        }
                      },
                      "required": [
                        "response_id"
                      ]
                    }
                  ]
                }
              }
            }
          },
          "400": {
            "$ref": "#/components/responses/400"
          },
          "401": {
            "$ref": "#/components/responses/401"
          },
          "403": {
            "$ref": "#/components/responses/403"
          },
          "404": {
            "$ref": "#/components/responses/404"
          },
          "409": {
            "$ref": "#/components/responses/conflict"
          },
          "429": {
            "$ref": "#/components/responses/429"
          },
          "500": {
            "$ref": "#/components/responses/500"
          }
        },
        "tags": [
          "Облачные серверы"
        ]
      }
    },
    "/api/v1/servers/{server_id}/disks/{disk_id}": {
      "get": {
        "summary": "Получение диска сервера",
        "description": "Чтобы получить диск сервера, отправьте GET запрос на `/api/v1/servers/{server_id}/disks/{disk_id}`.",
        "parameters": [
          {
            "$ref": "#/components/parameters/server-id"
          },
          {
            "$ref": "#/components/parameters/disk-id"
          }
        ],
        "x-codeSamples": [
          {
            "lang": "cURL",
            "label": "cURL",
            "source": "curl -X GET \\\n  -H \"Content-Type: application/json\" \\\n  -H \"Authorization: Bearer ${TIMEWEB_CLOUD_TOKEN}\" \\\n  \"https://api.timeweb.cloud/api/v1/servers/{server_id}/disks/{disk_id}\""
          }
        ],
        "responses": {
          "200": {
            "description": "Успешное получение диска сервера",
            "content": {
              "application/json": {
                "schema": {
                  "allOf": [
                    {
                      "type": "object",
                      "properties": {
                        "server_disk": {
                          "$ref": "#/components/schemas/server-disk"
                        }
                      },
                      "required": [
                        "server_disk"
                      ]
                    },
                    {
                      "type": "object",
                      "properties": {
                        "response_id": {
                          "$ref": "#/components/schemas/response_id"
                        }
                      },
                      "required": [
                        "response_id"
                      ]
                    }
                  ]
                }
              }
            }
          },
          "400": {
            "$ref": "#/components/responses/400"
          },
          "401": {
            "$ref": "#/components/responses/401"
          },
          "403": {
            "$ref": "#/components/responses/403"
          },
          "404": {
            "$ref": "#/components/responses/404"
          },
          "409": {
            "$ref": "#/components/responses/conflict"
          },
          "429": {
            "$ref": "#/components/responses/429"
          },
          "500": {
            "$ref": "#/components/responses/500"
          }
        },
        "tags": [
          "Облачные серверы"
        ]
      },
      "patch": {
        "summary": "Изменение параметров диска сервера",
        "description": "Чтобы изменить параметры диска сервера, отправьте PATCH запрос на `/api/v1/servers/{server_id}/disks/{disk_id}`.",
        "parameters": [
          {
            "$ref": "#/components/parameters/server-id"
          },
          {
            "$ref": "#/components/parameters/disk-id"
          }
        ],
        "x-codeSamples": [
          {
            "lang": "cURL",
            "label": "cURL",
            "source": "curl -X PATCH \\\n  -H \"Content-Type: application/json\" \\\n  -H \"Authorization: Bearer ${TIMEWEB_CLOUD_TOKEN}\" -d '{ \"size\": 10240 }' \\\n  \"https://api.timeweb.cloud/api/v1/servers/{server_id}/disks/{disk_id}\""
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "properties": {
                  "size": {
                    "type": "number",
                    "description": "Минимальный размер 5120. Максимальный размер 512000. Шаг 5120. Нельзя передавать значение меньше текущего размера диска.",
                    "example": 10240
                  }
                },
                "required": [
                  "size"
                ]
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Успешное изменение параметров диска сервера",
            "content": {
              "application/json": {
                "schema": {
                  "allOf": [
                    {
                      "type": "object",
                      "properties": {
                        "server_disk": {
                          "$ref": "#/components/schemas/server-disk"
                        }
                      },
                      "required": [
                        "server_disk"
                      ]
                    },
                    {
                      "type": "object",
                      "properties": {
                        "response_id": {
                          "$ref": "#/components/schemas/response_id"
                        }
                      },
                      "required": [
                        "response_id"
                      ]
                    }
                  ]
                }
              }
            }
          },
          "400": {
            "$ref": "#/components/responses/400"
          },
          "401": {
            "$ref": "#/components/responses/401"
          },
          "403": {
            "$ref": "#/components/responses/403"
          },
          "404": {
            "$ref": "#/components/responses/404"
          },
          "409": {
            "$ref": "#/components/responses/conflict"
          },
          "429": {
            "$ref": "#/components/responses/429"
          },
          "500": {
            "$ref": "#/components/responses/500"
          }
        },
        "tags": [
          "Облачные серверы"
        ]
      },
      "delete": {
        "summary": "Удаление диска сервера",
        "description": "Чтобы удалить диск сервера, отправьте DELETE запрос на `/api/v1/servers/{server_id}/disks/{disk_id}`. Нельзя удалять системный диск.",
        "parameters": [
          {
            "$ref": "#/components/parameters/server-id"
          },
          {
            "$ref": "#/components/parameters/disk-id"
          }
        ],
        "x-codeSamples": [
          {
            "lang": "cURL",
            "label": "cURL",
            "source": "curl -X DELETE \\\n  -H \"Content-Type: application/json\" \\\n  -H \"Authorization: Bearer ${TIMEWEB_CLOUD_TOKEN}\" \\\n  \"https://api.timeweb.cloud/api/v1/servers/{server_id}/disks/{disk_id}\""
          }
        ],
        "responses": {
          "204": {
            "description": "Успешное удаление диска сервера"
          },
          "400": {
            "$ref": "#/components/responses/400"
          },
          "401": {
            "$ref": "#/components/responses/401"
          },
          "403": {
            "$ref": "#/components/responses/403"
          },
          "404": {
            "$ref": "#/components/responses/404"
          },
          "409": {
            "$ref": "#/components/responses/conflict"
          },
          "429": {
            "$ref": "#/components/responses/429"
          },
          "500": {
            "$ref": "#/components/responses/500"
          }
        },
        "tags": [
          "Облачные серверы"
        ]
      }
    },
    "/api/v1/servers/{server_id}/disks/{disk_id}/auto-backups": {
      "get": {
        "summary": "Получение настроек автобэкапов диска сервера",
        "description": "Чтобы полученить настройки автобэкапов диска сервера, отправьте GET запрос на `/api/v1/servers/{server_id}/disks/{disk_id}/auto-backups`.",
        "parameters": [
          {
            "$ref": "#/components/parameters/server-id"
          },
          {
            "$ref": "#/components/parameters/disk-id"
          }
        ],
        "x-codeSamples": [
          {
            "lang": "cURL",
            "label": "cURL",
            "source": "curl -X GET \\\n  -H \"Content-Type: application/json\" \\\n  -H \"Authorization: Bearer ${TIMEWEB_CLOUD_TOKEN}\" \\\n  \"https://api.timeweb.cloud/api/v1/servers/{server_id}/disks/{disk_id}/auto-backups\""
          }
        ],
        "responses": {
          "200": {
            "description": "Объект JSON c ключом `auto_backups_settings`",
            "content": {
              "application/json": {
                "schema": {
                  "allOf": [
                    {
                      "type": "object",
                      "properties": {
                        "auto_backups_settings": {
                          "$ref": "#/components/schemas/auto-backup"
                        }
                      },
                      "required": [
                        "auto_backups_settings"
                      ]
                    },
                    {
                      "type": "object",
                      "properties": {
                        "response_id": {
                          "$ref": "#/components/schemas/response_id"
                        }
                      },
                      "required": [
                        "response_id"
                      ]
                    }
                  ]
                }
              }
            }
          },
          "400": {
            "$ref": "#/components/responses/400"
          },
          "401": {
            "$ref": "#/components/responses/401"
          },
          "403": {
            "$ref": "#/components/responses/403"
          },
          "404": {
            "$ref": "#/components/responses/404"
          },
          "429": {
            "$ref": "#/components/responses/429"
          },
          "500": {
            "$ref": "#/components/responses/500"
          }
        },
        "tags": [
          "Облачные серверы"
        ]
      },
      "patch": {
        "summary": "Изменение настроек автобэкапов диска сервера",
        "description": "Чтобы изменить настройки автобэкапов диска сервера, отправьте PATCH запрос на `/api/v1/servers/{server_id}/disks/{disk_id}/auto-backups`.",
        "parameters": [
          {
            "$ref": "#/components/parameters/server-id"
          },
          {
            "$ref": "#/components/parameters/disk-id"
          }
        ],
        "x-codeSamples": [
          {
            "lang": "cURL",
            "label": "cURL",
            "source": "curl -X PATCH \\\n  -H \"Content-Type: application/json\" \\\n  -H \"Authorization: Bearer ${TIMEWEB_CLOUD_TOKEN}\" -d '{ \"copy_count\": 1, \n \"creation_start_at\": \"2024-02-02T00:00:00.000Z\", \n \"is_enabled\": true, \n \"interval\": \"week\"}' \\\n  \"https://api.timeweb.cloud/api/v1/servers/{server_id}/disks/{disk_id}/auto-backups\""
          }
        ],
        "requestBody": {
          "description": "При значении `is_enabled`: `true`, поля `copy_count`, `creation_start_at`, `interval` являются обязательными",
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/auto-backup"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Объект JSON c ключом `auto_backups_settings`",
            "content": {
              "application/json": {
                "schema": {
                  "allOf": [
                    {
                      "type": "object",
                      "properties": {
                        "auto_backups_settings": {
                          "$ref": "#/components/schemas/auto-backup"
                        }
                      },
                      "required": [
                        "auto_backups_settings"
                      ]
                    },
                    {
                      "type": "object",
                      "properties": {
                        "response_id": {
                          "$ref": "#/components/schemas/response_id"
                        }
                      },
                      "required": [
                        "response_id"
                      ]
                    }
                  ]
                }
              }
            }
          },
          "400": {
            "$ref": "#/components/responses/400"
          },
          "401": {
            "$ref": "#/components/responses/401"
          },
          "403": {
            "$ref": "#/components/responses/403"
          },
          "404": {
            "$ref": "#/components/responses/404"
          },
          "429": {
            "$ref": "#/components/responses/429"
          },
          "500": {
            "$ref": "#/components/responses/500"
          }
        },
        "tags": [
          "Облачные серверы"
        ]
      }
    },
    "/api/v1/servers/{server_id}/disks/{disk_id}/backups/{backup_id}": {
      "patch": {
        "summary": "Изменение бэкапа диска сервера",
        "description": "Чтобы изменить бэкап диска сервера, отправьте PATCH запрос на `/api/v1/servers/{server_id}/disks/{disk_id}/backups/{backup_id}`.",
        "parameters": [
          {
            "$ref": "#/components/parameters/server-id"
          },
          {
            "$ref": "#/components/parameters/disk-id"
          },
          {
            "$ref": "#/components/parameters/server-backup-id"
          }
        ],
        "x-codeSamples": [
          {
            "lang": "cURL",
            "label": "cURL",
            "source": "curl -X PATCH \\\n  -H \"Content-Type: application/json\" \\\n  -H \"Authorization: Bearer ${TIMEWEB_CLOUD_TOKEN}\" -d '{ \"comment\": \"comment\"}' \\\n  \"https://api.timeweb.cloud/api/v1/servers/{server_id}/disks/{disk_id}/backups/{backup_id}\""
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "properties": {
                  "comment": {
                    "type": "string",
                    "description": "Комментарий к бэкапу.",
                    "example": "comment"
                  }
                },
                "required": [
                  "comment"
                ]
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Объект JSON c ключом `backup`",
            "content": {
              "application/json": {
                "schema": {
                  "allOf": [
                    {
                      "type": "object",
                      "properties": {
                        "backup": {
                          "$ref": "#/components/schemas/server-backup"
                        }
                      },
                      "required": [
                        "backup"
                      ]
                    },
                    {
                      "type": "object",
                      "properties": {
                        "response_id": {
                          "$ref": "#/components/schemas/response_id"
                        }
                      },
                      "required": [
                        "response_id"
                      ]
                    }
                  ]
                }
              }
            }
          },
          "400": {
            "$ref": "#/components/responses/400"
          },
          "401": {
            "$ref": "#/components/responses/401"
          },
          "403": {
            "$ref": "#/components/responses/403"
          },
          "404": {
            "$ref": "#/components/responses/404"
          },
          "429": {
            "$ref": "#/components/responses/429"
          },
          "500": {
            "$ref": "#/components/responses/500"
          }
        },
        "tags": [
          "Облачные серверы"
        ]
      },
      "delete": {
        "summary": "Удаление бэкапа диска сервера",
        "description": "Чтобы удалить бэкап диска сервера, отправьте DELETE запрос на `/api/v1/servers/{server_id}/disks/{disk_id}/backups/{backup_id}`.",
        "parameters": [
          {
            "$ref": "#/components/parameters/server-id"
          },
          {
            "$ref": "#/components/parameters/disk-id"
          },
          {
            "$ref": "#/components/parameters/server-backup-id"
          }
        ],
        "x-codeSamples": [
          {
            "lang": "cURL",
            "label": "cURL",
            "source": "curl -X DELETE \\\n  -H \"Content-Type: application/json\" \\\n  -H \"Authorization: Bearer ${TIMEWEB_CLOUD_TOKEN}\" \\\n  \"https://api.timeweb.cloud/api/v1/servers/{server_id}/disks/{disk_id}/backups/{backup_id}\""
          }
        ],
        "responses": {
          "204": {
            "description": "Успешное удаление бэкапа."
          },
          "400": {
            "$ref": "#/components/responses/400"
          },
          "401": {
            "$ref": "#/components/responses/401"
          },
          "403": {
            "$ref": "#/components/responses/403"
          },
          "404": {
            "$ref": "#/components/responses/404"
          },
          "409": {
            "$ref": "#/components/responses/conflict"
          },
          "429": {
            "$ref": "#/components/responses/429"
          },
          "500": {
            "$ref": "#/components/responses/500"
          }
        },
        "tags": [
          "Облачные серверы"
        ]
      },
      "get": {
        "summary": "Получение бэкапа диска сервера",
        "description": "Чтобы получить бэкап диска сервера, отправьте GET запрос на `/api/v1/servers/{server_id}/disks/{disk_id}/backups/{backup_id}`.\n\n Тело ответа будет представлять собой объект JSON с ключом `backup`.",
        "parameters": [
          {
            "$ref": "#/components/parameters/server-id"
          },
          {
            "$ref": "#/components/parameters/disk-id"
          },
          {
            "$ref": "#/components/parameters/server-backup-id"
          }
        ],
        "x-codeSamples": [
          {
            "lang": "cURL",
            "label": "cURL",
            "source": "curl -X GET \\\n  -H \"Content-Type: application/json\" \\\n  -H \"Authorization: Bearer ${TIMEWEB_CLOUD_TOKEN}\" \\\n  \"https://api.timeweb.cloud/api/v1/servers/{server_id}/disks/{disk_id}/backups/{backup_id}\""
          }
        ],
        "responses": {
          "200": {
            "description": "Объект JSON c ключом `backup`",
            "content": {
              "application/json": {
                "schema": {
                  "allOf": [
                    {
                      "type": "object",
                      "properties": {
                        "backup": {
                          "$ref": "#/components/schemas/server-backup"
                        }
                      },
                      "required": [
                        "backup"
                      ]
                    },
                    {
                      "type": "object",
                      "properties": {
                        "response_id": {
                          "$ref": "#/components/schemas/response_id"
                        }
                      },
                      "required": [
                        "response_id"
                      ]
                    }
                  ]
                }
              }
            }
          },
          "400": {
            "$ref": "#/components/responses/400"
          },
          "401": {
            "$ref": "#/components/responses/401"
          },
          "403": {
            "$ref": "#/components/responses/403"
          },
          "404": {
            "$ref": "#/components/responses/404"
          },
          "429": {
            "$ref": "#/components/responses/429"
          },
          "500": {
            "$ref": "#/components/responses/500"
          }
        },
        "tags": [
          "Облачные серверы"
        ]
      }
    },
    "/api/v1/servers/{server_id}/disks/{disk_id}/backups/{backup_id}/action": {
      "post": {
        "summary": "Выполнение действия над бэкапом диска сервера",
        "description": "Чтобы выполнить действие над бэкапом диска сервера, отправьте POST запрос на `/api/v1/servers/{server_id}/disks/{disk_id}/backups/{backup_id}/action`.",
        "parameters": [
          {
            "$ref": "#/components/parameters/server-id"
          },
          {
            "$ref": "#/components/parameters/disk-id"
          },
          {
            "$ref": "#/components/parameters/server-backup-id"
          }
        ],
        "x-codeSamples": [
          {
            "lang": "cURL",
            "label": "cURL",
            "source": "curl -X POST \\\n  -H \"Content-Type: application/json\" \\\n  -H \"Authorization: Bearer ${TIMEWEB_CLOUD_TOKEN}\" -d '{ \"action\": \"mount\"}' \\\n  \"https://api.timeweb.cloud/api/v1/servers/{server_id}/disks/{disk_id}/backups/{backup_id}/action\""
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "properties": {
                  "action": {
                    "type": "string",
                    "description": "Действие над бэкапом.",
                    "enum": [
                      "restore",
                      "mount",
                      "unmount"
                    ],
                    "example": "mount"
                  }
                },
                "required": [
                  "action"
                ]
              }
            }
          }
        },
        "responses": {
          "204": {
            "description": "Успешное выполнение действия"
          },
          "400": {
            "$ref": "#/components/responses/400"
          },
          "401": {
            "$ref": "#/components/responses/401"
          },
          "403": {
            "$ref": "#/components/responses/403"
          },
          "404": {
            "$ref": "#/components/responses/404"
          },
          "409": {
            "$ref": "#/components/responses/conflict"
          },
          "429": {
            "$ref": "#/components/responses/429"
          },
          "500": {
            "$ref": "#/components/responses/500"
          }
        },
        "tags": [
          "Облачные серверы"
        ]
      }
    },
    "/api/v1/projects": {
      "get": {
        "summary": "Получение списка проектов",
        "description": "Чтобы получить список всех проектов на вашем аккаунте, отправьте GET запрос на `/api/v1/dedicated-servers`.\n\n Тело ответа будет представлять собой объект JSON с ключом `projects`.",
        "x-codeSamples": [
          {
            "lang": "cURL",
            "label": "cURL",
            "source": "curl -X GET \\\n  -H \"Content-Type: application/json\" \\\n  -H \"Authorization: Bearer ${TIMEWEB_CLOUD_TOKEN}\" \\\n  \"https://api.timeweb.cloud/api/v1/projects\""
          }
        ],
        "responses": {
          "200": {
            "description": "Объект JSON c ключом `projects`",
            "content": {
              "application/json": {
                "schema": {
                  "allOf": [
                    {
                      "type": "object",
                      "properties": {
                        "projects": {
                          "type": "array",
                          "items": {
                            "$ref": "#/components/schemas/project"
                          }
                        },
                        "meta": {
                          "$ref": "#/components/schemas/meta"
                        }
                      },
                      "required": [
                        "projects",
                        "meta"
                      ]
                    },
                    {
                      "type": "object",
                      "properties": {
                        "response_id": {
                          "$ref": "#/components/schemas/response_id"
                        }
                      },
                      "required": [
                        "response_id"
                      ]
                    }
                  ]
                }
              }
            }
          },
          "400": {
            "$ref": "#/components/responses/400"
          },
          "401": {
            "$ref": "#/components/responses/401"
          },
          "429": {
            "$ref": "#/components/responses/429"
          },
          "500": {
            "$ref": "#/components/responses/500"
          }
        },
        "tags": [
          "Проекты"
        ]
      },
      "post": {
        "summary": "Создание проекта",
        "description": "Чтобы создать проект, отправьте POST запрос в `api/v1/projects`, задав необходимые атрибуты.\n\nПроект будет создан с использованием предоставленной информации. Тело ответа будет содержать объект JSON с информацией о созданном проекте.",
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/create-project"
              }
            }
          },
          "required": true
        },
        "x-codeSamples": [
          {
            "lang": "cURL",
            "label": "cURL",
            "source": "curl -X POST \\\n  -H \"Content-Type: application/json\" \\\n  -H \"Authorization: Bearer ${TIMEWEB_CLOUD_TOKEN}\" \\\n  -d '{\"name\":\"Project\"}' \\\n  \"https://api.timeweb.cloud/api/v1/projects\""
          }
        ],
        "responses": {
          "201": {
            "description": "Объект JSON c ключом `project`",
            "content": {
              "application/json": {
                "schema": {
                  "allOf": [
                    {
                      "type": "object",
                      "properties": {
                        "project": {
                          "$ref": "#/components/schemas/project"
                        }
                      },
                      "required": [
                        "project"
                      ]
                    },
                    {
                      "type": "object",
                      "properties": {
                        "response_id": {
                          "$ref": "#/components/schemas/response_id"
                        }
                      },
                      "required": [
                        "response_id"
                      ]
                    }
                  ]
                }
              }
            }
          },
          "400": {
            "$ref": "#/components/responses/400"
          },
          "401": {
            "$ref": "#/components/responses/401"
          },
          "429": {
            "$ref": "#/components/responses/429"
          },
          "500": {
            "$ref": "#/components/responses/500"
          }
        },
        "tags": [
          "Проекты"
        ]
      }
    },
    "/api/v1/projects/{project_id}": {
      "get": {
        "summary": "Получение проекта по идентификатору",
        "description": "Чтобы получить проект по идентификатору, отправьте GET запрос на `/api/v1/projects/{project_id}`.",
        "parameters": [
          {
            "$ref": "#/components/parameters/project-id"
          }
        ],
        "x-codeSamples": [
          {
            "lang": "cURL",
            "label": "cURL",
            "source": "curl -X GET \\\n  -H \"Content-Type: application/json\" \\\n  -H \"Authorization: Bearer ${TIMEWEB_CLOUD_TOKEN}\" \\\n  \"https://api.timeweb.cloud/api/v1/projects/99\""
          }
        ],
        "responses": {
          "200": {
            "description": "Объект JSON c ключом `project`",
            "content": {
              "application/json": {
                "schema": {
                  "allOf": [
                    {
                      "type": "object",
                      "properties": {
                        "project": {
                          "$ref": "#/components/schemas/project"
                        }
                      },
                      "required": [
                        "project"
                      ]
                    },
                    {
                      "type": "object",
                      "properties": {
                        "response_id": {
                          "$ref": "#/components/schemas/response_id"
                        }
                      },
                      "required": [
                        "response_id"
                      ]
                    }
                  ]
                }
              }
            }
          },
          "400": {
            "$ref": "#/components/responses/400"
          },
          "401": {
            "$ref": "#/components/responses/401"
          },
          "404": {
            "$ref": "#/components/responses/404"
          },
          "429": {
            "$ref": "#/components/responses/429"
          },
          "500": {
            "$ref": "#/components/responses/500"
          }
        },
        "tags": [
          "Проекты"
        ]
      },
      "delete": {
        "summary": "Удаление проекта",
        "description": "Чтобы удалить проект, отправьте запрос DELETE в `api/v1/projects/{project_id}`.\n",
        "parameters": [
          {
            "$ref": "#/components/parameters/project-id"
          }
        ],
        "x-codeSamples": [
          {
            "lang": "cURL",
            "label": "cURL",
            "source": "curl -X DELETE \\\n  -H \"Content-Type: application/json\" \\\n  -H \"Authorization: Bearer ${TIMEWEB_CLOUD_TOKEN}\" \\\n  \"https://api.timeweb.cloud/api/v1/projects/99\""
          }
        ],
        "responses": {
          "204": {
            "description": "Проект успешно удален"
          },
          "400": {
            "$ref": "#/components/responses/400"
          },
          "401": {
            "$ref": "#/components/responses/401"
          },
          "404": {
            "$ref": "#/components/responses/404"
          },
          "429": {
            "$ref": "#/components/responses/429"
          },
          "500": {
            "$ref": "#/components/responses/500"
          }
        },
        "tags": [
          "Проекты"
        ]
      },
      "put": {
        "summary": "Изменение проекта",
        "description": "Чтобы изменить проект, отправьте запрос PUT в `api/v1/projects/{project_id}`.\n",
        "parameters": [
          {
            "$ref": "#/components/parameters/project-id"
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/update-project"
              }
            }
          },
          "required": true
        },
        "x-codeSamples": [
          {
            "lang": "cURL",
            "label": "cURL",
            "source": "curl -X PUT \\\n  -H \"Content-Type: application/json\" \\\n  -H \"Authorization: Bearer ${TIMEWEB_CLOUD_TOKEN}\" \\\n  -d '{\"name\":\"Project\"}' \\\n  \"https://api.timeweb.cloud/api/v1/projects/99\""
          }
        ],
        "responses": {
          "200": {
            "description": "Объект JSON c ключом `project`",
            "content": {
              "application/json": {
                "schema": {
                  "allOf": [
                    {
                      "type": "object",
                      "properties": {
                        "project": {
                          "$ref": "#/components/schemas/project"
                        }
                      },
                      "required": [
                        "project"
                      ]
                    },
                    {
                      "type": "object",
                      "properties": {
                        "response_id": {
                          "$ref": "#/components/schemas/response_id"
                        }
                      },
                      "required": [
                        "response_id"
                      ]
                    }
                  ]
                }
              }
            }
          },
          "400": {
            "$ref": "#/components/responses/400"
          },
          "401": {
            "$ref": "#/components/responses/401"
          },
          "404": {
            "$ref": "#/components/responses/404"
          },
          "429": {
            "$ref": "#/components/responses/429"
          },
          "500": {
            "$ref": "#/components/responses/500"
          }
        },
        "tags": [
          "Проекты"
        ]
      }
    },
    "/api/v1/projects/{project_id}/resources/balancers": {
      "get": {
        "summary": "Получение списка балансировщиков проекта",
        "description": "Чтобы получить список балансировщиков проекта, отправьте GET запрос на `/api/v1/projects/{project_id}/resources/balancers`.",
        "parameters": [
          {
            "$ref": "#/components/parameters/project-id"
          }
        ],
        "x-codeSamples": [
          {
            "lang": "cURL",
            "label": "cURL",
            "source": "curl -X GET \\\n  -H \"Content-Type: application/json\" \\\n  -H \"Authorization: Bearer ${TIMEWEB_CLOUD_TOKEN}\" \\\n  \"https://api.timeweb.cloud/api/v1/projects/99/resources/balancers\""
          }
        ],
        "responses": {
          "200": {
            "description": "Объект JSON c ключом `balancers`",
            "content": {
              "application/json": {
                "schema": {
                  "allOf": [
                    {
                      "type": "object",
                      "properties": {
                        "balancers": {
                          "type": "array",
                          "items": {
                            "$ref": "#/components/schemas/balancer"
                          }
                        },
                        "meta": {
                          "$ref": "#/components/schemas/meta"
                        }
                      },
                      "required": [
                        "balancers",
                        "meta"
                      ]
                    },
                    {
                      "type": "object",
                      "properties": {
                        "response_id": {
                          "$ref": "#/components/schemas/response_id"
                        }
                      },
                      "required": [
                        "response_id"
                      ]
                    }
                  ]
                }
              }
            }
          },
          "400": {
            "$ref": "#/components/responses/400"
          },
          "401": {
            "$ref": "#/components/responses/401"
          },
          "404": {
            "$ref": "#/components/responses/404"
          },
          "429": {
            "$ref": "#/components/responses/429"
          },
          "500": {
            "$ref": "#/components/responses/500"
          }
        },
        "tags": [
          "Проекты"
        ]
      },
      "post": {
        "summary": "Добавление балансировщика в проект",
        "description": "Чтобы добавить балансировщик в проект, отправьте POST запрос на `/api/v1/projects/{project_id}/resources/balancers`, задав необходимые атрибуты.\n\nБалансировщик будет добавлен в указанный проект. Тело ответа будет содержать объект JSON с информацией о добавленном балансировщике.",
        "parameters": [
          {
            "$ref": "#/components/parameters/project-id"
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "properties": {
                  "resource_id": {
                    "type": "number",
                    "description": "Идентификатор добавляемого балансировщика.",
                    "example": 1
                  }
                },
                "required": [
                  "resource_id"
                ]
              }
            }
          },
          "required": true
        },
        "x-codeSamples": [
          {
            "lang": "cURL",
            "label": "cURL",
            "source": "curl -X POST \\\n  -H \"Content-Type: application/json\" \\\n  -H \"Authorization: Bearer ${TIMEWEB_CLOUD_TOKEN}\" \\\n  -d '{\"resource_id\":1}' \\\n  \"https://api.timeweb.cloud/api/v1/projects/99/resources/balancers\""
          }
        ],
        "responses": {
          "201": {
            "description": "Объект JSON c ключом `resource`",
            "content": {
              "application/json": {
                "schema": {
                  "allOf": [
                    {
                      "type": "object",
                      "properties": {
                        "resource": {
                          "$ref": "#/components/schemas/project-resource"
                        }
                      },
                      "required": [
                        "resource"
                      ]
                    },
                    {
                      "type": "object",
                      "properties": {
                        "response_id": {
                          "$ref": "#/components/schemas/response_id"
                        }
                      },
                      "required": [
                        "response_id"
                      ]
                    }
                  ]
                }
              }
            }
          },
          "400": {
            "$ref": "#/components/responses/400"
          },
          "401": {
            "$ref": "#/components/responses/401"
          },
          "404": {
            "$ref": "#/components/responses/404"
          },
          "429": {
            "$ref": "#/components/responses/429"
          },
          "500": {
            "$ref": "#/components/responses/500"
          }
        },
        "tags": [
          "Проекты"
        ]
      }
    },
    "/api/v1/projects/{project_id}/resources/buckets": {
      "get": {
        "summary": "Получение списка хранилищ проекта",
        "description": "Чтобы получить список хранилищ проекта, отправьте GET запрос на `/api/v1/projects/{project_id}/resources/buckets`.",
        "parameters": [
          {
            "$ref": "#/components/parameters/project-id"
          }
        ],
        "x-codeSamples": [
          {
            "lang": "cURL",
            "label": "cURL",
            "source": "curl -X GET \\\n  -H \"Content-Type: application/json\" \\\n  -H \"Authorization: Bearer ${TIMEWEB_CLOUD_TOKEN}\" \\\n  \"https://api.timeweb.cloud/api/v1/projects/99/resources/buckets\""
          }
        ],
        "responses": {
          "200": {
            "description": "Объект JSON c ключом `buckets`",
            "content": {
              "application/json": {
                "schema": {
                  "allOf": [
                    {
                      "type": "object",
                      "properties": {
                        "buckets": {
                          "type": "array",
                          "items": {
                            "$ref": "#/components/schemas/bucket"
                          }
                        },
                        "meta": {
                          "$ref": "#/components/schemas/meta"
                        }
                      },
                      "required": [
                        "buckets",
                        "meta"
                      ]
                    },
                    {
                      "type": "object",
                      "properties": {
                        "response_id": {
                          "$ref": "#/components/schemas/response_id"
                        }
                      },
                      "required": [
                        "response_id"
                      ]
                    }
                  ]
                }
              }
            }
          },
          "400": {
            "$ref": "#/components/responses/400"
          },
          "401": {
            "$ref": "#/components/responses/401"
          },
          "404": {
            "$ref": "#/components/responses/404"
          },
          "429": {
            "$ref": "#/components/responses/429"
          },
          "500": {
            "$ref": "#/components/responses/500"
          }
        },
        "tags": [
          "Проекты"
        ]
      },
      "post": {
        "summary": "Добавление хранилища в проект",
        "description": "Чтобы добавить хранилище в проект, отправьте POST запрос на `/api/v1/projects/{project_id}/resources/buckets`, задав необходимые атрибуты.\n\nХранилище будет добавлено в указанный проект. Тело ответа будет содержать объект JSON с информацией о добавленном хранилище.",
        "parameters": [
          {
            "$ref": "#/components/parameters/project-id"
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "properties": {
                  "resource_id": {
                    "type": "number",
                    "description": "Идентификатор добавляемого хранилища.",
                    "example": 1
                  }
                },
                "required": [
                  "resource_id"
                ]
              }
            }
          },
          "required": true
        },
        "x-codeSamples": [
          {
            "lang": "cURL",
            "label": "cURL",
            "source": "curl -X POST \\\n  -H \"Content-Type: application/json\" \\\n  -H \"Authorization: Bearer ${TIMEWEB_CLOUD_TOKEN}\" \\\n  -d '{\"resource_id\":1}' \\\n  \"https://api.timeweb.cloud/api/v1/projects/99/resources/buckets\""
          }
        ],
        "responses": {
          "201": {
            "description": "Объект JSON c ключом `resource`",
            "content": {
              "application/json": {
                "schema": {
                  "allOf": [
                    {
                      "type": "object",
                      "properties": {
                        "resource": {
                          "$ref": "#/components/schemas/project-resource"
                        }
                      },
                      "required": [
                        "resource"
                      ]
                    },
                    {
                      "type": "object",
                      "properties": {
                        "response_id": {
                          "$ref": "#/components/schemas/response_id"
                        }
                      },
                      "required": [
                        "response_id"
                      ]
                    }
                  ]
                }
              }
            }
          },
          "400": {
            "$ref": "#/components/responses/400"
          },
          "401": {
            "$ref": "#/components/responses/401"
          },
          "404": {
            "$ref": "#/components/responses/404"
          },
          "429": {
            "$ref": "#/components/responses/429"
          },
          "500": {
            "$ref": "#/components/responses/500"
          }
        },
        "tags": [
          "Проекты"
        ]
      }
    },
    "/api/v1/projects/{project_id}/resources/clusters": {
      "get": {
        "summary": "Получение списка кластеров проекта",
        "description": "Чтобы получить список кластеров проекта, отправьте GET запрос на `/api/v1/projects/{project_id}/resources/clusters`.",
        "parameters": [
          {
            "$ref": "#/components/parameters/project-id"
          }
        ],
        "x-codeSamples": [
          {
            "lang": "cURL",
            "label": "cURL",
            "source": "curl -X GET \\\n  -H \"Content-Type: application/json\" \\\n  -H \"Authorization: Bearer ${TIMEWEB_CLOUD_TOKEN}\" \\\n  \"https://api.timeweb.cloud/api/v1/projects/99/resources/clusters\""
          }
        ],
        "responses": {
          "200": {
            "description": "Объект JSON c ключом `clusters`",
            "content": {
              "application/json": {
                "schema": {
                  "allOf": [
                    {
                      "type": "object",
                      "properties": {
                        "clusters": {
                          "type": "array",
                          "items": {
                            "$ref": "#/components/schemas/clusterk8s"
                          }
                        },
                        "meta": {
                          "$ref": "#/components/schemas/meta"
                        }
                      },
                      "required": [
                        "clusters",
                        "meta"
                      ]
                    },
                    {
                      "type": "object",
                      "properties": {
                        "response_id": {
                          "$ref": "#/components/schemas/response_id"
                        }
                      },
                      "required": [
                        "response_id"
                      ]
                    }
                  ]
                }
              }
            }
          },
          "400": {
            "$ref": "#/components/responses/400"
          },
          "401": {
            "$ref": "#/components/responses/401"
          },
          "404": {
            "$ref": "#/components/responses/404"
          },
          "429": {
            "$ref": "#/components/responses/429"
          },
          "500": {
            "$ref": "#/components/responses/500"
          }
        },
        "tags": [
          "Проекты"
        ]
      },
      "post": {
        "summary": "Добавление кластера в проект",
        "description": "Чтобы добавить кластер в проект, отправьте POST запрос на `/api/v1/projects/{project_id}/resources/clusters`, задав необходимые атрибуты.\n\nКластер будет добавлен в указанный проект. Тело ответа будет содержать объект JSON с информацией о добавленном кластере.",
        "parameters": [
          {
            "$ref": "#/components/parameters/project-id"
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "properties": {
                  "resource_id": {
                    "type": "number",
                    "description": "Идентификатор добавляемого кластера.",
                    "example": 1
                  }
                },
                "required": [
                  "resource_id"
                ]
              }
            }
          },
          "required": true
        },
        "x-codeSamples": [
          {
            "lang": "cURL",
            "label": "cURL",
            "source": "curl -X POST \\\n  -H \"Content-Type: application/json\" \\\n  -H \"Authorization: Bearer ${TIMEWEB_CLOUD_TOKEN}\" \\\n  -d '{\"resource_id\":1}' \\\n  \"https://api.timeweb.cloud/api/v1/projects/99/resources/clusters\""
          }
        ],
        "responses": {
          "201": {
            "description": "Объект JSON c ключом `resource`",
            "content": {
              "application/json": {
                "schema": {
                  "allOf": [
                    {
                      "type": "object",
                      "properties": {
                        "resource": {
                          "$ref": "#/components/schemas/project-resource"
                        }
                      },
                      "required": [
                        "resource"
                      ]
                    },
                    {
                      "type": "object",
                      "properties": {
                        "response_id": {
                          "$ref": "#/components/schemas/response_id"
                        }
                      },
                      "required": [
                        "response_id"
                      ]
                    }
                  ]
                }
              }
            }
          },
          "400": {
            "$ref": "#/components/responses/400"
          },
          "401": {
            "$ref": "#/components/responses/401"
          },
          "404": {
            "$ref": "#/components/responses/404"
          },
          "429": {
            "$ref": "#/components/responses/429"
          },
          "500": {
            "$ref": "#/components/responses/500"
          }
        },
        "tags": [
          "Проекты"
        ]
      }
    },
    "/api/v1/projects/{project_id}/resources/servers": {
      "get": {
        "summary": "Получение списка серверов проекта",
        "description": "Чтобы получить список серверов проекта, отправьте GET запрос на `/api/v1/projects/{project_id}/resources/servers`.",
        "parameters": [
          {
            "$ref": "#/components/parameters/project-id"
          }
        ],
        "x-codeSamples": [
          {
            "lang": "cURL",
            "label": "cURL",
            "source": "curl -X GET \\\n  -H \"Content-Type: application/json\" \\\n  -H \"Authorization: Bearer ${TIMEWEB_CLOUD_TOKEN}\" \\\n  \"https://api.timeweb.cloud/api/v1/projects/99/resources/servers\""
          }
        ],
        "responses": {
          "200": {
            "description": "Объект JSON c ключом `servers`",
            "content": {
              "application/json": {
                "schema": {
                  "allOf": [
                    {
                      "type": "object",
                      "properties": {
                        "servers": {
                          "type": "array",
                          "items": {
                            "$ref": "#/components/schemas/vds"
                          }
                        },
                        "meta": {
                          "$ref": "#/components/schemas/meta"
                        }
                      },
                      "required": [
                        "meta",
                        "servers"
                      ]
                    },
                    {
                      "type": "object",
                      "properties": {
                        "response_id": {
                          "$ref": "#/components/schemas/response_id"
                        }
                      },
                      "required": [
                        "response_id"
                      ]
                    }
                  ]
                }
              }
            }
          },
          "400": {
            "$ref": "#/components/responses/400"
          },
          "401": {
            "$ref": "#/components/responses/401"
          },
          "404": {
            "$ref": "#/components/responses/404"
          },
          "429": {
            "$ref": "#/components/responses/429"
          },
          "500": {
            "$ref": "#/components/responses/500"
          }
        },
        "tags": [
          "Проекты"
        ]
      },
      "post": {
        "summary": "Добавление сервера в проект",
        "description": "Чтобы добавить сервер в проект, отправьте POST запрос на `/api/v1/projects/{project_id}/resources/servers`, задав необходимые атрибуты.\n\nСервер будет добавлен в указанный проект. Тело ответа будет содержать объект JSON с информацией о добавленном сервере.",
        "parameters": [
          {
            "$ref": "#/components/parameters/project-id"
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "properties": {
                  "resource_id": {
                    "type": "number",
                    "description": "Идентификатор добавляемого сервера.",
                    "example": 1
                  }
                },
                "required": [
                  "resource_id"
                ]
              }
            }
          },
          "required": true
        },
        "x-codeSamples": [
          {
            "lang": "cURL",
            "label": "cURL",
            "source": "curl -X POST \\\n  -H \"Content-Type: application/json\" \\\n  -H \"Authorization: Bearer ${TIMEWEB_CLOUD_TOKEN}\" \\\n  -d '{\"resource_id\":1}' \\\n  \"https://api.timeweb.cloud/api/v1/projects/99/resources/servers\""
          }
        ],
        "responses": {
          "201": {
            "description": "Объект JSON c ключом `resource`",
            "content": {
              "application/json": {
                "schema": {
                  "allOf": [
                    {
                      "type": "object",
                      "properties": {
                        "resource": {
                          "$ref": "#/components/schemas/project-resource"
                        }
                      },
                      "required": [
                        "resource"
                      ]
                    },
                    {
                      "type": "object",
                      "properties": {
                        "response_id": {
                          "$ref": "#/components/schemas/response_id"
                        }
                      },
                      "required": [
                        "response_id"
                      ]
                    }
                  ]
                }
              }
            }
          },
          "400": {
            "$ref": "#/components/responses/400"
          },
          "401": {
            "$ref": "#/components/responses/401"
          },
          "404": {
            "$ref": "#/components/responses/404"
          },
          "429": {
            "$ref": "#/components/responses/429"
          },
          "500": {
            "$ref": "#/components/responses/500"
          }
        },
        "tags": [
          "Проекты"
        ]
      }
    },
    "/api/v1/projects/{project_id}/resources/databases": {
      "get": {
        "summary": "Получение списка баз данных проекта",
        "description": "Чтобы получить список баз данных проекта, отправьте GET запрос на `/api/v1/projects/{project_id}/resources/databases`.",
        "parameters": [
          {
            "$ref": "#/components/parameters/project-id"
          }
        ],
        "x-codeSamples": [
          {
            "lang": "cURL",
            "label": "cURL",
            "source": "curl -X GET \\\n  -H \"Content-Type: application/json\" \\\n  -H \"Authorization: Bearer ${TIMEWEB_CLOUD_TOKEN}\" \\\n  \"https://api.timeweb.cloud/api/v1/projects/99/resources/databases\""
          }
        ],
        "responses": {
          "200": {
            "description": "Объект JSON c ключом `databases`",
            "content": {
              "application/json": {
                "schema": {
                  "allOf": [
                    {
                      "type": "object",
                      "properties": {
                        "databases": {
                          "type": "array",
                          "items": {
                            "$ref": "#/components/schemas/db"
                          }
                        },
                        "meta": {
                          "$ref": "#/components/schemas/meta"
                        }
                      },
                      "required": [
                        "databases",
                        "meta"
                      ]
                    },
                    {
                      "type": "object",
                      "properties": {
                        "response_id": {
                          "$ref": "#/components/schemas/response_id"
                        }
                      },
                      "required": [
                        "response_id"
                      ]
                    }
                  ]
                }
              }
            }
          },
          "400": {
            "$ref": "#/components/responses/400"
          },
          "401": {
            "$ref": "#/components/responses/401"
          },
          "404": {
            "$ref": "#/components/responses/404"
          },
          "429": {
            "$ref": "#/components/responses/429"
          },
          "500": {
            "$ref": "#/components/responses/500"
          }
        },
        "tags": [
          "Проекты"
        ]
      },
      "post": {
        "summary": "Добавление базы данных в проект",
        "description": "Чтобы добавить базу данных в проект, отправьте POST запрос на `/api/v1/projects/{project_id}/resources/databases`, задав необходимые атрибуты.\n\nБаза данных будет добавлена в указанный проект. Тело ответа будет содержать объект JSON с информацией о добавленной базе данных.",
        "parameters": [
          {
            "$ref": "#/components/parameters/project-id"
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "properties": {
                  "resource_id": {
                    "type": "number",
                    "description": "Идентификатор добавляемой базы данных.",
                    "example": 1
                  }
                },
                "required": [
                  "resource_id"
                ]
              }
            }
          },
          "required": true
        },
        "x-codeSamples": [
          {
            "lang": "cURL",
            "label": "cURL",
            "source": "curl -X POST \\\n  -H \"Content-Type: application/json\" \\\n  -H \"Authorization: Bearer ${TIMEWEB_CLOUD_TOKEN}\" \\\n  -d '{\"resource_id\":1}' \\\n  \"https://api.timeweb.cloud/api/v1/projects/99/resources/databases\""
          }
        ],
        "responses": {
          "201": {
            "description": "Объект JSON c ключом `resource`",
            "content": {
              "application/json": {
                "schema": {
                  "allOf": [
                    {
                      "type": "object",
                      "properties": {
                        "resource": {
                          "$ref": "#/components/schemas/project-resource"
                        }
                      },
                      "required": [
                        "resource"
                      ]
                    },
                    {
                      "type": "object",
                      "properties": {
                        "response_id": {
                          "$ref": "#/components/schemas/response_id"
                        }
                      },
                      "required": [
                        "response_id"
                      ]
                    }
                  ]
                }
              }
            }
          },
          "400": {
            "$ref": "#/components/responses/400"
          },
          "401": {
            "$ref": "#/components/responses/401"
          },
          "404": {
            "$ref": "#/components/responses/404"
          },
          "429": {
            "$ref": "#/components/responses/429"
          },
          "500": {
            "$ref": "#/components/responses/500"
          }
        },
        "tags": [
          "Проекты"
        ]
      }
    },
    "/api/v1/projects/{project_id}/resources/dedicated": {
      "get": {
        "summary": "Получение списка выделенных серверов проекта",
        "description": "Чтобы получить список выделенных серверов проекта, отправьте GET запрос на `/api/v1/projects/{project_id}/resources/dedicated`.",
        "parameters": [
          {
            "$ref": "#/components/parameters/project-id"
          }
        ],
        "x-codeSamples": [
          {
            "lang": "cURL",
            "label": "cURL",
            "source": "curl -X GET \\\n  -H \"Content-Type: application/json\" \\\n  -H \"Authorization: Bearer ${TIMEWEB_CLOUD_TOKEN}\" \\\n  \"https://api.timeweb.cloud/api/v1/projects/99/resources/dedicated\""
          }
        ],
        "responses": {
          "200": {
            "description": "Объект JSON c ключом `dedicated_servers`",
            "content": {
              "application/json": {
                "schema": {
                  "allOf": [
                    {
                      "type": "object",
                      "properties": {
                        "dedicated_servers": {
                          "type": "array",
                          "items": {
                            "$ref": "#/components/schemas/dedicated-server"
                          }
                        },
                        "meta": {
                          "$ref": "#/components/schemas/meta"
                        }
                      },
                      "required": [
                        "dedicated_servers",
                        "meta"
                      ]
                    },
                    {
                      "type": "object",
                      "properties": {
                        "response_id": {
                          "$ref": "#/components/schemas/response_id"
                        }
                      },
                      "required": [
                        "response_id"
                      ]
                    }
                  ]
                }
              }
            }
          },
          "400": {
            "$ref": "#/components/responses/400"
          },
          "401": {
            "$ref": "#/components/responses/401"
          },
          "404": {
            "$ref": "#/components/responses/404"
          },
          "429": {
            "$ref": "#/components/responses/429"
          },
          "500": {
            "$ref": "#/components/responses/500"
          }
        },
        "tags": [
          "Проекты"
        ]
      },
      "post": {
        "summary": "Добавление выделенного сервера в проект",
        "description": "Чтобы добавить выделенный сервер в проект, отправьте POST запрос на `/api/v1/projects/{project_id}/resources/dedicated`, задав необходимые атрибуты.\n\nВыделенный сервер будет добавлен в указанный проект. Тело ответа будет содержать объект JSON с информацией о добавленном выделенном сервере.",
        "parameters": [
          {
            "$ref": "#/components/parameters/project-id"
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "properties": {
                  "resource_id": {
                    "type": "number",
                    "description": "Идентификатор добавляемого выделенного сервера.",
                    "example": 1
                  }
                },
                "required": [
                  "resource_id"
                ]
              }
            }
          },
          "required": true
        },
        "x-codeSamples": [
          {
            "lang": "cURL",
            "label": "cURL",
            "source": "curl -X POST \\\n  -H \"Content-Type: application/json\" \\\n  -H \"Authorization: Bearer ${TIMEWEB_CLOUD_TOKEN}\" \\\n  -d '{\"resource_id\":1}' \\\n  \"https://api.timeweb.cloud/api/v1/projects/99/resources/databases\""
          }
        ],
        "responses": {
          "201": {
            "description": "Объект JSON c ключом `resource`",
            "content": {
              "application/json": {
                "schema": {
                  "allOf": [
                    {
                      "type": "object",
                      "properties": {
                        "resource": {
                          "$ref": "#/components/schemas/project-resource"
                        }
                      },
                      "required": [
                        "resource"
                      ]
                    },
                    {
                      "type": "object",
                      "properties": {
                        "response_id": {
                          "$ref": "#/components/schemas/response_id"
                        }
                      },
                      "required": [
                        "response_id"
                      ]
                    }
                  ]
                }
              }
            }
          },
          "400": {
            "$ref": "#/components/responses/400"
          },
          "401": {
            "$ref": "#/components/responses/401"
          },
          "404": {
            "$ref": "#/components/responses/404"
          },
          "429": {
            "$ref": "#/components/responses/429"
          },
          "500": {
            "$ref": "#/components/responses/500"
          }
        },
        "tags": [
          "Проекты"
        ]
      }
    },
    "/api/v1/projects/{project_id}/resources": {
      "get": {
        "summary": "Получение всех ресурсов проекта",
        "description": "Чтобы получить все ресурсы проекта, отправьте GET запрос на `/api/v1/projects/{project_id}/resources`.",
        "parameters": [
          {
            "$ref": "#/components/parameters/project-id"
          }
        ],
        "x-codeSamples": [
          {
            "lang": "cURL",
            "label": "cURL",
            "source": "curl -X GET \\\n  -H \"Content-Type: application/json\" \\\n  -H \"Authorization: Bearer ${TIMEWEB_CLOUD_TOKEN}\" \\\n  \"https://api.timeweb.cloud/api/v1/projects/99/resources\""
          }
        ],
        "responses": {
          "200": {
            "description": "Объект JSON c ключами: `servers`, `balancers`, `buckets`, `clusters`, `databases`, `dedicated_servers`",
            "content": {
              "application/json": {
                "schema": {
                  "allOf": [
                    {
                      "type": "object",
                      "properties": {
                        "servers": {
                          "type": "array",
                          "items": {
                            "$ref": "#/components/schemas/vds"
                          }
                        },
                        "balancers": {
                          "type": "array",
                          "items": {
                            "$ref": "#/components/schemas/balancer"
                          }
                        },
                        "buckets": {
                          "type": "array",
                          "items": {
                            "$ref": "#/components/schemas/bucket"
                          }
                        },
                        "clusters": {
                          "type": "array",
                          "items": {
                            "$ref": "#/components/schemas/clusterk8s"
                          }
                        },
                        "databases": {
                          "type": "array",
                          "items": {
                            "$ref": "#/components/schemas/db"
                          }
                        },
                        "dedicated_servers": {
                          "type": "array",
                          "items": {
                            "$ref": "#/components/schemas/dedicated-server"
                          }
                        },
                        "meta": {
                          "$ref": "#/components/schemas/meta"
                        }
                      },
                      "required": [
                        "servers",
                        "balancers",
                        "buckets",
                        "clusters",
                        "databases",
                        "dedicated_servers",
                        "meta"
                      ]
                    },
                    {
                      "type": "object",
                      "properties": {
                        "response_id": {
                          "$ref": "#/components/schemas/response_id"
                        }
                      },
                      "required": [
                        "response_id"
                      ]
                    }
                  ]
                }
              }
            }
          },
          "400": {
            "$ref": "#/components/responses/400"
          },
          "401": {
            "$ref": "#/components/responses/401"
          },
          "404": {
            "$ref": "#/components/responses/404"
          },
          "429": {
            "$ref": "#/components/responses/429"
          },
          "500": {
            "$ref": "#/components/responses/500"
          }
        },
        "tags": [
          "Проекты"
        ]
      }
    },
    "/api/v1/projects/resources/balancers": {
      "get": {
        "summary": "Получение списка всех балансировщиков на аккаунте",
        "description": "Чтобы получить список всех балансировщиков на аккаунте, отправьте GET запрос на `/api/v1/projects/resources/balancers`.",
        "x-codeSamples": [
          {
            "lang": "cURL",
            "label": "cURL",
            "source": "curl -X GET \\\n  -H \"Content-Type: application/json\" \\\n  -H \"Authorization: Bearer ${TIMEWEB_CLOUD_TOKEN}\" \\\n  \"https://api.timeweb.cloud/api/v1/projects/resources/balancers\""
          }
        ],
        "responses": {
          "200": {
            "description": "Объект JSON c ключом `balancers`",
            "content": {
              "application/json": {
                "schema": {
                  "allOf": [
                    {
                      "type": "object",
                      "properties": {
                        "balancers": {
                          "type": "array",
                          "items": {
                            "$ref": "#/components/schemas/balancer"
                          }
                        },
                        "meta": {
                          "$ref": "#/components/schemas/meta"
                        }
                      },
                      "required": [
                        "balancers",
                        "meta"
                      ]
                    },
                    {
                      "type": "object",
                      "properties": {
                        "response_id": {
                          "$ref": "#/components/schemas/response_id"
                        }
                      },
                      "required": [
                        "response_id"
                      ]
                    }
                  ]
                }
              }
            }
          },
          "400": {
            "$ref": "#/components/responses/400"
          },
          "401": {
            "$ref": "#/components/responses/401"
          },
          "404": {
            "$ref": "#/components/responses/404"
          },
          "429": {
            "$ref": "#/components/responses/429"
          },
          "500": {
            "$ref": "#/components/responses/500"
          }
        },
        "tags": [
          "Проекты"
        ]
      }
    },
    "/api/v1/projects/resources/servers": {
      "get": {
        "summary": "Получение списка всех серверов на аккаунте",
        "description": "Чтобы получить список всех серверов на аккаунте, отправьте GET запрос на `/api/v1/projects/resources/servers`.",
        "x-codeSamples": [
          {
            "lang": "cURL",
            "label": "cURL",
            "source": "curl -X GET \\\n  -H \"Content-Type: application/json\" \\\n  -H \"Authorization: Bearer ${TIMEWEB_CLOUD_TOKEN}\" \\\n  \"https://api.timeweb.cloud/api/v1/projects/resources/servers\""
          }
        ],
        "responses": {
          "200": {
            "description": "Объект JSON c ключом `servers`",
            "content": {
              "application/json": {
                "schema": {
                  "allOf": [
                    {
                      "type": "object",
                      "properties": {
                        "servers": {
                          "type": "array",
                          "items": {
                            "$ref": "#/components/schemas/vds"
                          }
                        },
                        "meta": {
                          "$ref": "#/components/schemas/meta"
                        }
                      },
                      "required": [
                        "meta",
                        "servers"
                      ]
                    },
                    {
                      "type": "object",
                      "properties": {
                        "response_id": {
                          "$ref": "#/components/schemas/response_id"
                        }
                      },
                      "required": [
                        "response_id"
                      ]
                    }
                  ]
                }
              }
            }
          },
          "400": {
            "$ref": "#/components/responses/400"
          },
          "401": {
            "$ref": "#/components/responses/401"
          },
          "404": {
            "$ref": "#/components/responses/404"
          },
          "429": {
            "$ref": "#/components/responses/429"
          },
          "500": {
            "$ref": "#/components/responses/500"
          }
        },
        "tags": [
          "Проекты"
        ]
      }
    },
    "/api/v1/projects/resources/buckets": {
      "get": {
        "summary": "Получение списка всех хранилищ на аккаунте",
        "description": "Чтобы получить список всех хранилищ на аккаунте, отправьте GET запрос на `/api/v1/projects/resources/buckets`.",
        "x-codeSamples": [
          {
            "lang": "cURL",
            "label": "cURL",
            "source": "curl -X GET \\\n  -H \"Content-Type: application/json\" \\\n  -H \"Authorization: Bearer ${TIMEWEB_CLOUD_TOKEN}\" \\\n  \"https://api.timeweb.cloud/api/v1/projects/resources/buckets\""
          }
        ],
        "responses": {
          "200": {
            "description": "Объект JSON c ключом `buckets`",
            "content": {
              "application/json": {
                "schema": {
                  "allOf": [
                    {
                      "type": "object",
                      "properties": {
                        "buckets": {
                          "type": "array",
                          "items": {
                            "$ref": "#/components/schemas/bucket"
                          }
                        },
                        "meta": {
                          "$ref": "#/components/schemas/meta"
                        }
                      },
                      "required": [
                        "buckets",
                        "meta"
                      ]
                    },
                    {
                      "type": "object",
                      "properties": {
                        "response_id": {
                          "$ref": "#/components/schemas/response_id"
                        }
                      },
                      "required": [
                        "response_id"
                      ]
                    }
                  ]
                }
              }
            }
          },
          "400": {
            "$ref": "#/components/responses/400"
          },
          "401": {
            "$ref": "#/components/responses/401"
          },
          "404": {
            "$ref": "#/components/responses/404"
          },
          "429": {
            "$ref": "#/components/responses/429"
          },
          "500": {
            "$ref": "#/components/responses/500"
          }
        },
        "tags": [
          "Проекты"
        ]
      }
    },
    "/api/v1/projects/resources/clusters": {
      "get": {
        "summary": "Получение списка всех кластеров на аккаунте",
        "description": "Чтобы получить список всех кластеров на аккаунте, отправьте GET запрос на `/api/v1/projects/resources/clusters`.",
        "x-codeSamples": [
          {
            "lang": "cURL",
            "label": "cURL",
            "source": "curl -X GET \\\n  -H \"Content-Type: application/json\" \\\n  -H \"Authorization: Bearer ${TIMEWEB_CLOUD_TOKEN}\" \\\n  \"https://api.timeweb.cloud/api/v1/projects/resources/clusters\""
          }
        ],
        "responses": {
          "200": {
            "description": "Объект JSON c ключом `clusters`",
            "content": {
              "application/json": {
                "schema": {
                  "allOf": [
                    {
                      "type": "object",
                      "properties": {
                        "clusters": {
                          "type": "array",
                          "items": {
                            "$ref": "#/components/schemas/clusterk8s"
                          }
                        },
                        "meta": {
                          "$ref": "#/components/schemas/meta"
                        }
                      },
                      "required": [
                        "clusters",
                        "meta"
                      ]
                    },
                    {
                      "type": "object",
                      "properties": {
                        "response_id": {
                          "$ref": "#/components/schemas/response_id"
                        }
                      },
                      "required": [
                        "response_id"
                      ]
                    }
                  ]
                }
              }
            }
          },
          "400": {
            "$ref": "#/components/responses/400"
          },
          "401": {
            "$ref": "#/components/responses/401"
          },
          "404": {
            "$ref": "#/components/responses/404"
          },
          "429": {
            "$ref": "#/components/responses/429"
          },
          "500": {
            "$ref": "#/components/responses/500"
          }
        },
        "tags": [
          "Проекты"
        ]
      }
    },
    "/api/v1/projects/resources/databases": {
      "get": {
        "summary": "Получение списка всех баз данных на аккаунте",
        "description": "Чтобы получить список всех баз данных на аккаунте, отправьте GET запрос на `/api/v1/projects/resources/databases`.",
        "x-codeSamples": [
          {
            "lang": "cURL",
            "label": "cURL",
            "source": "curl -X GET \\\n  -H \"Content-Type: application/json\" \\\n  -H \"Authorization: Bearer ${TIMEWEB_CLOUD_TOKEN}\" \\\n  \"https://api.timeweb.cloud/api/v1/projects/resources/databases\""
          }
        ],
        "responses": {
          "200": {
            "description": "Объект JSON c ключом `databases`",
            "content": {
              "application/json": {
                "schema": {
                  "allOf": [
                    {
                      "type": "object",
                      "properties": {
                        "databases": {
                          "type": "array",
                          "items": {
                            "$ref": "#/components/schemas/db"
                          }
                        },
                        "meta": {
                          "$ref": "#/components/schemas/meta"
                        }
                      },
                      "required": [
                        "databases",
                        "meta"
                      ]
                    },
                    {
                      "type": "object",
                      "properties": {
                        "response_id": {
                          "$ref": "#/components/schemas/response_id"
                        }
                      },
                      "required": [
                        "response_id"
                      ]
                    }
                  ]
                }
              }
            }
          },
          "400": {
            "$ref": "#/components/responses/400"
          },
          "401": {
            "$ref": "#/components/responses/401"
          },
          "404": {
            "$ref": "#/components/responses/404"
          },
          "429": {
            "$ref": "#/components/responses/429"
          },
          "500": {
            "$ref": "#/components/responses/500"
          }
        },
        "tags": [
          "Проекты"
        ]
      }
    },
    "/api/v1/projects/resources/dedicated": {
      "get": {
        "summary": "Получение списка всех выделенных серверов на аккаунте",
        "description": "Чтобы получить список всех выделенных серверов на аккаунте, отправьте GET запрос на `/api/v1/projects/resources/dedicated`.",
        "x-codeSamples": [
          {
            "lang": "cURL",
            "label": "cURL",
            "source": "curl -X GET \\\n  -H \"Content-Type: application/json\" \\\n  -H \"Authorization: Bearer ${TIMEWEB_CLOUD_TOKEN}\" \\\n  \"https://api.timeweb.cloud/api/v1/projects/resources/dedicated\""
          }
        ],
        "responses": {
          "200": {
            "description": "Объект JSON c ключом `dedicated_servers`",
            "content": {
              "application/json": {
                "schema": {
                  "allOf": [
                    {
                      "type": "object",
                      "properties": {
                        "dedicated_servers": {
                          "type": "array",
                          "items": {
                            "$ref": "#/components/schemas/dedicated-server"
                          }
                        },
                        "meta": {
                          "$ref": "#/components/schemas/meta"
                        }
                      },
                      "required": [
                        "dedicated_servers",
                        "meta"
                      ]
                    },
                    {
                      "type": "object",
                      "properties": {
                        "response_id": {
                          "$ref": "#/components/schemas/response_id"
                        }
                      },
                      "required": [
                        "response_id"
                      ]
                    }
                  ]
                }
              }
            }
          },
          "400": {
            "$ref": "#/components/responses/400"
          },
          "401": {
            "$ref": "#/components/responses/401"
          },
          "404": {
            "$ref": "#/components/responses/404"
          },
          "429": {
            "$ref": "#/components/responses/429"
          },
          "500": {
            "$ref": "#/components/responses/500"
          }
        },
        "security": [
          {
            "Bearer": []
          }
        ],
        "tags": [
          "Проекты"
        ]
      }
    },
    "/api/v1/projects/{project_id}/resources/transfer": {
      "put": {
        "summary": "Перенести ресурс в другой проект",
        "description": "Чтобы перенести ресурс в другой проект, отправьте запрос PUT в `api/v1/projects/{project_id}/resources/transfer`.\n",
        "parameters": [
          {
            "$ref": "#/components/parameters/project-id"
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/resource-transfer"
              }
            }
          },
          "required": true
        },
        "x-codeSamples": [
          {
            "lang": "cURL",
            "label": "cURL",
            "source": "curl -X PUT \\\n  -H \"Content-Type: application/json\" \\\n  -H \"Authorization: Bearer ${TIMEWEB_CLOUD_TOKEN}\" \\\n  -d '{\"to_project\":1,\"resource_id\":1,\"resource_type\":\"server\"}' \\\n  \"https://api.timeweb.cloud/api/v1/projects/99/resources/transfer\""
          }
        ],
        "responses": {
          "200": {
            "description": "Объект JSON c ключом `resource`",
            "content": {
              "application/json": {
                "schema": {
                  "allOf": [
                    {
                      "type": "object",
                      "properties": {
                        "resource": {
                          "$ref": "#/components/schemas/project-resource"
                        }
                      },
                      "required": [
                        "resource"
                      ]
                    },
                    {
                      "type": "object",
                      "properties": {
                        "response_id": {
                          "$ref": "#/components/schemas/response_id"
                        }
                      },
                      "required": [
                        "response_id"
                      ]
                    }
                  ]
                }
              }
            }
          },
          "400": {
            "$ref": "#/components/responses/400"
          },
          "401": {
            "$ref": "#/components/responses/401"
          },
          "403": {
            "$ref": "#/components/responses/403"
          },
          "404": {
            "$ref": "#/components/responses/404"
          },
          "429": {
            "$ref": "#/components/responses/429"
          },
          "500": {
            "$ref": "#/components/responses/500"
          }
        },
        "tags": [
          "Проекты"
        ]
      }
    },
    "/api/v1/storages/buckets": {
      "get": {
        "summary": "Получение списка хранилищ аккаунта",
        "description": "Чтобы получить список хранилищ аккаунта, отправьте GET запрос на `/api/v1/storages/buckets`.",
        "x-codeSamples": [
          {
            "lang": "cURL",
            "label": "cURL",
            "source": "curl -X GET \\\n  -H \"Content-Type: application/json\" \\\n  -H \"Authorization: Bearer ${TIMEWEB_CLOUD_TOKEN}\" \\\n  \"https://api.timeweb.cloud/api/v1/storages/buckets\""
          }
        ],
        "responses": {
          "200": {
            "description": "Объект JSON c ключом `buckets`",
            "content": {
              "application/json": {
                "schema": {
                  "allOf": [
                    {
                      "type": "object",
                      "properties": {
                        "buckets": {
                          "type": "array",
                          "items": {
                            "$ref": "#/components/schemas/bucket"
                          }
                        },
                        "meta": {
                          "$ref": "#/components/schemas/meta"
                        }
                      },
                      "required": [
                        "buckets",
                        "meta"
                      ]
                    },
                    {
                      "type": "object",
                      "properties": {
                        "response_id": {
                          "$ref": "#/components/schemas/response_id"
                        }
                      },
                      "required": [
                        "response_id"
                      ]
                    }
                  ]
                }
              }
            }
          },
          "400": {
            "$ref": "#/components/responses/400"
          },
          "401": {
            "$ref": "#/components/responses/401"
          },
          "403": {
            "$ref": "#/components/responses/403"
          },
          "404": {
            "$ref": "#/components/responses/404"
          },
          "429": {
            "$ref": "#/components/responses/429"
          },
          "500": {
            "$ref": "#/components/responses/500"
          }
        },
        "tags": [
          "S3-хранилище"
        ]
      },
      "post": {
        "summary": "Создание хранилища",
        "description": "Чтобы создать хранилище, отправьте POST запрос на `/api/v1/storages/buckets`.",
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "properties": {
                  "name": {
                    "type": "string",
                    "description": "Название хранилища.",
                    "minLength": 1,
                    "maxLength": 255,
                    "example": "test"
                  },
                  "type": {
                    "type": "string",
                    "description": "Тип хранилища.",
                    "enum": [
                      "private",
                      "public"
                    ],
                    "example": "private"
                  },
                  "preset_id": {
                    "type": "number",
                    "description": "Идентификатор тарифа.",
                    "example": 1
                  }
                },
                "required": [
                  "name",
                  "type",
                  "preset_id"
                ]
              }
            }
          },
          "required": true
        },
        "x-codeSamples": [
          {
            "lang": "cURL",
            "label": "cURL",
            "source": "curl -X POST \\\n  -H \"Content-Type: application/json\" \\\n  -H \"Authorization: Bearer ${TIMEWEB_CLOUD_TOKEN}\" \\\n  -d '{\"name\":\"test\",\"type\":\"private\",\"preset_id\":1}' \\\n  \"https://api.timeweb.cloud/api/v1/storages/buckets\""
          }
        ],
        "responses": {
          "201": {
            "description": "Объект JSON c ключом `bucket`",
            "content": {
              "application/json": {
                "schema": {
                  "allOf": [
                    {
                      "type": "object",
                      "properties": {
                        "bucket": {
                          "$ref": "#/components/schemas/bucket"
                        }
                      },
                      "required": [
                        "bucket"
                      ]
                    },
                    {
                      "type": "object",
                      "properties": {
                        "response_id": {
                          "$ref": "#/components/schemas/response_id"
                        }
                      },
                      "required": [
                        "response_id"
                      ]
                    }
                  ]
                }
              }
            }
          },
          "400": {
            "$ref": "#/components/responses/400"
          },
          "401": {
            "$ref": "#/components/responses/401"
          },
          "403": {
            "$ref": "#/components/responses/403"
          },
          "404": {
            "$ref": "#/components/responses/404"
          },
          "429": {
            "$ref": "#/components/responses/429"
          },
          "500": {
            "$ref": "#/components/responses/500"
          }
        },
        "tags": [
          "S3-хранилище"
        ]
      }
    },
    "/api/v1/storages/buckets/{bucket_id}": {
      "delete": {
        "summary": "Удаление хранилища на аккаунте",
        "description": "Чтобы удалить хранилище, отправьте DELETE запрос на `/api/v1/storages/buckets/{bucket_id}`.",
        "parameters": [
          {
            "$ref": "#/components/parameters/bucket-id"
          }
        ],
        "x-codeSamples": [
          {
            "lang": "cURL",
            "label": "cURL",
            "source": "curl -X DELETE \\\n  -H \"Content-Type: application/json\" \\\n  -H \"Authorization: Bearer ${TIMEWEB_CLOUD_TOKEN}\" \\\n  \"https://api.timeweb.cloud/api/v1/storages/buckets/1\""
          }
        ],
        "responses": {
          "204": {
            "description": "Хранилище успешно удалено"
          },
          "400": {
            "$ref": "#/components/responses/400"
          },
          "401": {
            "$ref": "#/components/responses/401"
          },
          "403": {
            "$ref": "#/components/responses/403"
          },
          "404": {
            "$ref": "#/components/responses/404"
          },
          "429": {
            "$ref": "#/components/responses/429"
          },
          "500": {
            "$ref": "#/components/responses/500"
          }
        },
        "tags": [
          "S3-хранилище"
        ]
      },
      "patch": {
        "summary": "Изменение хранилища на аккаунте",
        "description": "Чтобы изменить хранилище, отправьте PATCH запрос на `/api/v1/storages/buckets/{bucket_id}`.",
        "parameters": [
          {
            "$ref": "#/components/parameters/bucket-id"
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "properties": {
                  "preset_id": {
                    "type": "number",
                    "description": "Идентификатор тарифа.",
                    "example": 1
                  },
                  "bucket_type": {
                    "type": "string",
                    "description": "Тип хранилища.",
                    "enum": [
                      "private",
                      "public"
                    ],
                    "example": "public"
                  }
                }
              }
            }
          },
          "required": true
        },
        "x-codeSamples": [
          {
            "lang": "cURL",
            "label": "cURL",
            "source": "curl -X PATCH \\\n  -H \"Content-Type: application/json\" \\\n  -H \"Authorization: Bearer ${TIMEWEB_CLOUD_TOKEN}\" \\\n  -d '{\"preset_id\":1}' \\\n  \"https://api.timeweb.cloud/api/v1/storages/buckets\""
          }
        ],
        "responses": {
          "200": {
            "description": "Объект JSON c ключом `bucket`",
            "content": {
              "application/json": {
                "schema": {
                  "allOf": [
                    {
                      "type": "object",
                      "properties": {
                        "bucket": {
                          "$ref": "#/components/schemas/bucket"
                        }
                      },
                      "required": [
                        "bucket"
                      ]
                    },
                    {
                      "type": "object",
                      "properties": {
                        "response_id": {
                          "$ref": "#/components/schemas/response_id"
                        }
                      },
                      "required": [
                        "response_id"
                      ]
                    }
                  ]
                }
              }
            }
          },
          "400": {
            "$ref": "#/components/responses/400"
          },
          "401": {
            "$ref": "#/components/responses/401"
          },
          "403": {
            "$ref": "#/components/responses/403"
          },
          "404": {
            "$ref": "#/components/responses/404"
          },
          "429": {
            "$ref": "#/components/responses/429"
          },
          "500": {
            "$ref": "#/components/responses/500"
          }
        },
        "tags": [
          "S3-хранилище"
        ]
      }
    },
    "/api/v1/presets/storages": {
      "get": {
        "summary": "Получение списка тарифов для хранилищ",
        "description": "Чтобы получить список тарифов для хранилищ, отправьте GET запрос на `/api/v1/presets/storages`.\n\n Тело ответа будет представлять собой объект JSON с ключом `storages_presets`.",
        "x-codeSamples": [
          {
            "lang": "cURL",
            "label": "cURL",
            "source": "curl -X GET \\\n  -H \"Content-Type: application/json\" \\\n  -H \"Authorization: Bearer ${TIMEWEB_CLOUD_TOKEN}\" \\\n  \"https://api.timeweb.cloud/api/v1/presets/storages\""
          }
        ],
        "responses": {
          "200": {
            "description": "Объект JSON с ключом `storages_presets`",
            "content": {
              "application/json": {
                "schema": {
                  "allOf": [
                    {
                      "type": "object",
                      "properties": {
                        "storages_presets": {
                          "type": "array",
                          "items": {
                            "$ref": "#/components/schemas/presets-storage"
                          }
                        },
                        "meta": {
                          "$ref": "#/components/schemas/meta"
                        }
                      },
                      "required": [
                        "storages_presets",
                        "meta"
                      ]
                    },
                    {
                      "type": "object",
                      "properties": {
                        "response_id": {
                          "$ref": "#/components/schemas/response_id"
                        }
                      },
                      "required": [
                        "response_id"
                      ]
                    }
                  ]
                }
              }
            }
          },
          "400": {
            "$ref": "#/components/responses/400"
          },
          "401": {
            "$ref": "#/components/responses/401"
          },
          "403": {
            "$ref": "#/components/responses/403"
          },
          "404": {
            "$ref": "#/components/responses/404"
          },
          "429": {
            "$ref": "#/components/responses/429"
          },
          "500": {
            "$ref": "#/components/responses/500"
          }
        },
        "tags": [
          "S3-хранилище"
        ]
      }
    },
    "/api/v1/storages/users": {
      "get": {
        "summary": "Получение списка пользователей хранилищ аккаунта",
        "description": "Чтобы получить список пользователей хранилищ аккаунта, отправьте GET запрос на `/api/v1/storages/users`.",
        "x-codeSamples": [
          {
            "lang": "cURL",
            "label": "cURL",
            "source": "curl -X GET \\\n  -H \"Content-Type: application/json\" \\\n  -H \"Authorization: Bearer ${TIMEWEB_CLOUD_TOKEN}\" \\\n  \"https://api.timeweb.cloud/api/v1/storages/users\""
          }
        ],
        "responses": {
          "200": {
            "description": "Объект JSON c ключом `users`",
            "content": {
              "application/json": {
                "schema": {
                  "allOf": [
                    {
                      "type": "object",
                      "properties": {
                        "users": {
                          "type": "array",
                          "items": {
                            "$ref": "#/components/schemas/bucket-user"
                          }
                        },
                        "meta": {
                          "$ref": "#/components/schemas/meta"
                        }
                      },
                      "required": [
                        "users",
                        "meta"
                      ]
                    },
                    {
                      "type": "object",
                      "properties": {
                        "response_id": {
                          "$ref": "#/components/schemas/response_id"
                        }
                      },
                      "required": [
                        "response_id"
                      ]
                    }
                  ]
                }
              }
            }
          },
          "400": {
            "$ref": "#/components/responses/400"
          },
          "401": {
            "$ref": "#/components/responses/401"
          },
          "403": {
            "$ref": "#/components/responses/403"
          },
          "404": {
            "$ref": "#/components/responses/404"
          },
          "429": {
            "$ref": "#/components/responses/429"
          },
          "500": {
            "$ref": "#/components/responses/500"
          }
        },
        "tags": [
          "S3-хранилище"
        ]
      }
    },
    "/api/v1/storages/users/{user_id}": {
      "patch": {
        "summary": "Изменение пароля пользователя-администратора хранилища",
        "description": "Чтобы изменить пароль пользователя-администратора хранилища, отправьте POST запрос на `/api/v1/storages/users/{user_id}`.",
        "parameters": [
          {
            "$ref": "#/components/parameters/user-id"
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "properties": {
                  "secret_key": {
                    "type": "string",
                    "description": "Новый пароль пользователя-администратора хранилища.",
                    "minLength": 1,
                    "maxLength": 255,
                    "example": "password"
                  }
                },
                "required": [
                  "secret_key"
                ]
              }
            }
          },
          "required": true
        },
        "x-codeSamples": [
          {
            "lang": "cURL",
            "label": "cURL",
            "source": "curl -X POST \\\n  -H \"Content-Type: application/json\" \\\n  -H \"Authorization: Bearer ${TIMEWEB_CLOUD_TOKEN}\" \\\n  -d '{\"secret_key\":\"password\"}' \\\n  \"https://api.timeweb.cloud/api/v1/storages/users/1\""
          }
        ],
        "responses": {
          "200": {
            "description": "Объект JSON c ключом `user`",
            "content": {
              "application/json": {
                "schema": {
                  "allOf": [
                    {
                      "type": "object",
                      "properties": {
                        "user": {
                          "$ref": "#/components/schemas/bucket-user"
                        }
                      },
                      "required": [
                        "user"
                      ]
                    },
                    {
                      "type": "object",
                      "properties": {
                        "response_id": {
                          "$ref": "#/components/schemas/response_id"
                        }
                      },
                      "required": [
                        "response_id"
                      ]
                    }
                  ]
                }
              }
            }
          },
          "400": {
            "$ref": "#/components/responses/400"
          },
          "401": {
            "$ref": "#/components/responses/401"
          },
          "403": {
            "$ref": "#/components/responses/403"
          },
          "404": {
            "$ref": "#/components/responses/404"
          },
          "429": {
            "$ref": "#/components/responses/429"
          },
          "500": {
            "$ref": "#/components/responses/500"
          }
        },
        "tags": [
          "S3-хранилище"
        ]
      }
    },
    "/api/v1/storages/buckets/{bucket_id}/transfer-status": {
      "get": {
        "summary": "Получение статуса переноса хранилища от стороннего S3 в Timeweb Cloud",
        "description": "Чтобы получить статус переноса хранилища от стороннего S3 в Timeweb Cloud, отправьте GET запрос на `/api/v1/storages/buckets/{bucket_id}/transfer-status`.",
        "parameters": [
          {
            "$ref": "#/components/parameters/bucket-id"
          }
        ],
        "x-codeSamples": [
          {
            "lang": "cURL",
            "label": "cURL",
            "source": "curl -X GET \\\n  -H \"Content-Type: application/json\" \\\n  -H \"Authorization: Bearer ${TIMEWEB_CLOUD_TOKEN}\" \\\n  \"https://api.timeweb.cloud/api/v1/storages/buckets/1051/transfer-status\""
          }
        ],
        "responses": {
          "200": {
            "description": "Объект JSON c ключом `transfer_status`",
            "content": {
              "application/json": {
                "schema": {
                  "allOf": [
                    {
                      "type": "object",
                      "properties": {
                        "transfer_status": {
                          "$ref": "#/components/schemas/transfer-status"
                        }
                      },
                      "required": [
                        "transfer_status"
                      ]
                    },
                    {
                      "type": "object",
                      "properties": {
                        "response_id": {
                          "$ref": "#/components/schemas/response_id"
                        }
                      },
                      "required": [
                        "response_id"
                      ]
                    }
                  ]
                }
              }
            }
          },
          "400": {
            "$ref": "#/components/responses/400"
          },
          "401": {
            "$ref": "#/components/responses/401"
          },
          "403": {
            "$ref": "#/components/responses/403"
          },
          "404": {
            "$ref": "#/components/responses/404"
          },
          "429": {
            "$ref": "#/components/responses/429"
          },
          "500": {
            "$ref": "#/components/responses/500"
          }
        },
        "tags": [
          "S3-хранилище"
        ]
      }
    },
    "/api/v1/storages/transfer": {
      "post": {
        "summary": "Перенос хранилища от стороннего провайдера S3 в Timeweb Cloud",
        "description": "Чтобы перенести хранилище от стороннего провайдера S3 в Timeweb Cloud, отправьте POST запрос на `/api/v1/storages/transfer`.",
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "properties": {
                  "access_key": {
                    "type": "string",
                    "description": "Идентификатор доступа стороннего s3 хранилища.",
                    "example": "access_key"
                  },
                  "secret_key": {
                    "type": "string",
                    "description": "Пароль доступа стороннего s3 хранилища.",
                    "example": "secret_key"
                  },
                  "location": {
                    "type": "string",
                    "description": "Регион хранилища источника.",
                    "example": "ru-1"
                  },
                  "is_force_path_style": {
                    "type": "boolean",
                    "description": "Это логическое значение, которое показывает, следует ли принудительно указывать URL-адреса для объектов S3.",
                    "example": true
                  },
                  "endpoint": {
                    "type": "string",
                    "description": "URL s3 хранилища источника.",
                    "example": "https://s3.test.ru"
                  },
                  "bucket_name": {
                    "type": "string",
                    "description": "Имя хранилища источника.",
                    "example": "bucket_name"
                  },
                  "new_bucket_name": {
                    "type": "string",
                    "description": "Имя хранилища получателя.",
                    "example": "new_bucket_name"
                  }
                },
                "required": [
                  "access_key",
                  "secret_key",
                  "location",
                  "is_force_path_style",
                  "endpoint",
                  "bucket_name",
                  "new_bucket_name"
                ]
              }
            }
          },
          "required": true
        },
        "x-codeSamples": [
          {
            "lang": "cURL",
            "label": "cURL",
            "source": "curl -X POST \\\n  -H \"Content-Type: application/json\" \\\n  -H \"Authorization: Bearer ${TIMEWEB_CLOUD_TOKEN}\" \\\n  -d '{\"access_key\":\"access_key\",\"secret_key\":\"secret_key\",\"location\":\"ru-1\",\"path_style\":true,\"endpoint\":\"https://s3.test.ru\",\"bucket_name\":\"bucket_name\",\"new_bucket_name\":\"new_bucket_name\"}' \\\n  \"https://api.timeweb.cloud/api/v1/storages/transfer\""
          }
        ],
        "responses": {
          "204": {
            "description": "Задание на перенос отправлено"
          },
          "400": {
            "$ref": "#/components/responses/400"
          },
          "401": {
            "$ref": "#/components/responses/401"
          },
          "403": {
            "$ref": "#/components/responses/403"
          },
          "404": {
            "$ref": "#/components/responses/404"
          },
          "429": {
            "$ref": "#/components/responses/429"
          },
          "500": {
            "$ref": "#/components/responses/500"
          }
        },
        "tags": [
          "S3-хранилище"
        ]
      }
    },
    "/api/v1/storages/buckets/{bucket_id}/subdomains": {
      "get": {
        "summary": "Получение списка поддоменов хранилища",
        "description": "Чтобы получить список поддоменов хранилища, отправьте GET запрос на `/api/v1/storages/buckets/{bucket_id}/subdomains`.",
        "parameters": [
          {
            "$ref": "#/components/parameters/bucket-id"
          }
        ],
        "x-codeSamples": [
          {
            "lang": "cURL",
            "label": "cURL",
            "source": "curl -X GET \\\n  -H \"Content-Type: application/json\" \\\n  -H \"Authorization: Bearer ${TIMEWEB_CLOUD_TOKEN}\" \\\n  \"https://api.timeweb.cloud/api/v1/storages/buckets/1051/subdomains\""
          }
        ],
        "responses": {
          "200": {
            "description": "Объект JSON c ключом `subdomains`",
            "content": {
              "application/json": {
                "schema": {
                  "allOf": [
                    {
                      "type": "object",
                      "properties": {
                        "subdomains": {
                          "type": "array",
                          "items": {
                            "$ref": "#/components/schemas/s3-subdomain"
                          }
                        },
                        "meta": {
                          "$ref": "#/components/schemas/meta"
                        }
                      },
                      "required": [
                        "subdomains",
                        "meta"
                      ]
                    },
                    {
                      "type": "object",
                      "properties": {
                        "response_id": {
                          "$ref": "#/components/schemas/response_id"
                        }
                      },
                      "required": [
                        "response_id"
                      ]
                    }
                  ]
                }
              }
            }
          },
          "400": {
            "$ref": "#/components/responses/400"
          },
          "401": {
            "$ref": "#/components/responses/401"
          },
          "403": {
            "$ref": "#/components/responses/403"
          },
          "404": {
            "$ref": "#/components/responses/404"
          },
          "429": {
            "$ref": "#/components/responses/429"
          },
          "500": {
            "$ref": "#/components/responses/500"
          }
        },
        "tags": [
          "S3-хранилище"
        ]
      },
      "post": {
        "summary": "Добавление поддоменов для хранилища",
        "description": "Добавить поддомены для хранилища, отправьте POST запрос на `/api/v1/storages/buckets/{bucket_id}/subdomains`.",
        "parameters": [
          {
            "$ref": "#/components/parameters/bucket-id"
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "properties": {
                  "subdomains": {
                    "type": "array",
                    "items": {
                      "type": "string",
                      "example": "test.example.com"
                    }
                  }
                },
                "required": [
                  "subdomains"
                ]
              }
            }
          },
          "required": true
        },
        "x-codeSamples": [
          {
            "lang": "cURL",
            "label": "cURL",
            "source": "curl -X POST \\\n  -H \"Content-Type: application/json\" \\\n  -H \"Authorization: Bearer ${TIMEWEB_CLOUD_TOKEN}\" \\\n  -d '{\"subdomains\":[\"test.example.com\"]}' \\\n  \"https://api.timeweb.cloud/api/v1/storages/buckets/1051/subdomains\""
          }
        ],
        "responses": {
          "200": {
            "description": "Объект JSON c ключом `subdomains`",
            "content": {
              "application/json": {
                "schema": {
                  "allOf": [
                    {
                      "type": "object",
                      "properties": {
                        "subdomains": {
                          "type": "array",
                          "items": {
                            "$ref": "#/components/schemas/added-subdomain"
                          }
                        },
                        "meta": {
                          "$ref": "#/components/schemas/meta"
                        }
                      },
                      "required": [
                        "subdomains",
                        "meta"
                      ]
                    },
                    {
                      "type": "object",
                      "properties": {
                        "response_id": {
                          "$ref": "#/components/schemas/response_id"
                        }
                      },
                      "required": [
                        "response_id"
                      ]
                    }
                  ]
                }
              }
            }
          },
          "400": {
            "$ref": "#/components/responses/400"
          },
          "401": {
            "$ref": "#/components/responses/401"
          },
          "403": {
            "$ref": "#/components/responses/403"
          },
          "404": {
            "$ref": "#/components/responses/404"
          },
          "429": {
            "$ref": "#/components/responses/429"
          },
          "500": {
            "$ref": "#/components/responses/500"
          }
        },
        "tags": [
          "S3-хранилище"
        ]
      },
      "delete": {
        "summary": "Удаление поддоменов хранилища",
        "description": "Чтобы удалить поддомены хранилища, отправьте DELETE запрос на `/api/v1/storages/buckets/{bucket_id}/subdomains`.",
        "parameters": [
          {
            "$ref": "#/components/parameters/bucket-id"
          }
        ],
        "x-codeSamples": [
          {
            "lang": "cURL",
            "label": "cURL",
            "source": "curl -X DELETE \\\n  -H \"Content-Type: application/json\" \\\n  -H \"Authorization: Bearer ${TIMEWEB_CLOUD_TOKEN}\" \\\n  -d '{\"subdomains\":[\"test.example.com\"]}' \\\n  \"https://api.timeweb.cloud/api/v1/storages/buckets/1051/subdomains\""
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "properties": {
                  "subdomains": {
                    "type": "array",
                    "items": {
                      "type": "string",
                      "example": "test.example.com"
                    }
                  }
                },
                "required": [
                  "subdomains"
                ]
              }
            }
          },
          "required": true
        },
        "responses": {
          "200": {
            "description": "Объект JSON c ключом `subdomains`",
            "content": {
              "application/json": {
                "schema": {
                  "allOf": [
                    {
                      "type": "object",
                      "properties": {
                        "subdomains": {
                          "type": "array",
                          "items": {
                            "$ref": "#/components/schemas/added-subdomain"
                          }
                        },
                        "meta": {
                          "$ref": "#/components/schemas/meta"
                        }
                      },
                      "required": [
                        "subdomains",
                        "meta"
                      ]
                    },
                    {
                      "type": "object",
                      "properties": {
                        "response_id": {
                          "$ref": "#/components/schemas/response_id"
                        }
                      },
                      "required": [
                        "response_id"
                      ]
                    }
                  ]
                }
              }
            }
          },
          "400": {
            "$ref": "#/components/responses/400"
          },
          "401": {
            "$ref": "#/components/responses/401"
          },
          "403": {
            "$ref": "#/components/responses/403"
          },
          "404": {
            "$ref": "#/components/responses/404"
          },
          "429": {
            "$ref": "#/components/responses/429"
          },
          "500": {
            "$ref": "#/components/responses/500"
          }
        },
        "tags": [
          "S3-хранилище"
        ]
      }
    },
    "/api/v1/storages/buckets/{bucket_id}/object-manager/list": {
      "get": {
        "summary": "Получение списка файлов в хранилище по префиксу",
        "description": "Чтобы получить список файлов в хранилище по префиксу, отправьте GET запрос на `/api/v1/storages/buckets/{bucket_id}/object-manager/list`.",
        "parameters": [
          {
            "$ref": "#/components/parameters/bucket-id"
          },
          {
            "$ref": "#/components/parameters/prefix"
          },
          {
            "$ref": "#/components/parameters/multipart"
          }
        ],
        "x-codeSamples": [
          {
            "lang": "cURL",
            "label": "cURL",
            "source": "curl -X GET \\\n  -H \"Content-Type: application/json\" \\\n  -H \"Authorization: Bearer ${TIMEWEB_CLOUD_TOKEN}\" \\\n  \"https://api.timeweb.cloud/api/v1/storages/buckets/1051/object-manager/list\""
          }
        ],
        "responses": {
          "200": {
            "description": "Объект JSON c ключом `files`",
            "content": {
              "application/json": {
                "schema": {
                  "allOf": [
                    {
                      "type": "object",
                      "properties": {
                        "files": {
                          "type": "array",
                          "items": {
                            "$ref": "#/components/schemas/s3-object"
                          }
                        },
                        "meta": {
                          "$ref": "#/components/schemas/meta"
                        }
                      },
                      "required": [
                        "files",
                        "meta"
                      ]
                    },
                    {
                      "type": "object",
                      "properties": {
                        "response_id": {
                          "$ref": "#/components/schemas/response_id"
                        }
                      },
                      "required": [
                        "response_id"
                      ]
                    }
                  ]
                }
              }
            }
          },
          "400": {
            "$ref": "#/components/responses/400"
          },
          "401": {
            "$ref": "#/components/responses/401"
          },
          "403": {
            "$ref": "#/components/responses/403"
          },
          "404": {
            "$ref": "#/components/responses/404"
          },
          "429": {
            "$ref": "#/components/responses/429"
          },
          "500": {
            "$ref": "#/components/responses/500"
          }
        },
        "tags": [
          "S3-хранилище"
        ]
      }
    },
    "/api/v1/storages/buckets/{bucket_id}/object-manager/rename": {
      "post": {
        "summary": "Переименование файла/директории в хранилище",
        "description": "Чтобы переименовать файл/директорию в хранилище, отправьте POST запрос на `/api/v1/storages/buckets/{bucket_id}/object-manager/rename`.",
        "parameters": [
          {
            "$ref": "#/components/parameters/bucket-id"
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "properties": {
                  "new_filename": {
                    "type": "string",
                    "description": "Новое название файла или папки. Названия папок должны быть указаны с \"/\" в конце, например: \"dirname/\".",
                    "example": "new_filename"
                  },
                  "old_filename": {
                    "type": "string",
                    "description": "Старое название файла или папки. Названия папок должны быть указаны с \"/\" в конце, например: \"dirname/\".",
                    "example": "old_filename"
                  }
                },
                "required": [
                  "new_filename",
                  "old_filename"
                ]
              }
            }
          },
          "required": true
        },
        "x-codeSamples": [
          {
            "lang": "cURL",
            "label": "cURL",
            "source": "curl -X POST \\\n  -H \"Content-Type: application/json\" \\\n  -H \"Authorization: Bearer ${TIMEWEB_CLOUD_TOKEN}\" \\\n  -d '{\"new_filename\":\"new_name\",\"old_filename\":\"old_name\"}' \\\n  \"https://api.timeweb.cloud/api/v1/storages/buckets/1051/object-manager/rename\""
          }
        ],
        "responses": {
          "204": {
            "description": "Файл успешно переименован"
          },
          "400": {
            "$ref": "#/components/responses/400"
          },
          "401": {
            "$ref": "#/components/responses/401"
          },
          "403": {
            "$ref": "#/components/responses/403"
          },
          "404": {
            "$ref": "#/components/responses/404"
          },
          "429": {
            "$ref": "#/components/responses/429"
          },
          "500": {
            "$ref": "#/components/responses/500"
          }
        },
        "tags": [
          "S3-хранилище"
        ]
      }
    },
    "/api/v1/storages/buckets/{bucket_id}/object-manager/remove": {
      "delete": {
        "summary": "Удаление файла/директории в хранилище",
        "description": "Чтобы удалить файл или директорию с вложениями, отправьте DELETE запрос на `/api/v1/storages/buckets/{bucket_id}/object-manager/remove`.",
        "parameters": [
          {
            "$ref": "#/components/parameters/bucket-id"
          },
          {
            "$ref": "#/components/parameters/multipart"
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "properties": {
                  "source": {
                    "type": "array",
                    "items": {
                      "type": "string",
                      "example": "test1/test2"
                    }
                  }
                },
                "required": [
                  "source"
                ]
              }
            }
          },
          "required": true
        },
        "x-codeSamples": [
          {
            "lang": "cURL",
            "label": "cURL",
            "source": "curl -X DELETE \\\n  -H \"Content-Type: application/json\" \\\n  -H \"Authorization: Bearer ${TIMEWEB_CLOUD_TOKEN}\" \\\n  -d '{\"source\":[\"test1/test2\"]}' \\\n  \"https://api.timeweb.cloud/api/v1/storages/buckets/1051/object-manager/remove\""
          }
        ],
        "responses": {
          "204": {
            "description": "Задание на удаление отправлено"
          },
          "400": {
            "$ref": "#/components/responses/400"
          },
          "401": {
            "$ref": "#/components/responses/401"
          },
          "403": {
            "$ref": "#/components/responses/403"
          },
          "404": {
            "$ref": "#/components/responses/404"
          },
          "429": {
            "$ref": "#/components/responses/429"
          },
          "500": {
            "$ref": "#/components/responses/500"
          }
        },
        "tags": [
          "S3-хранилище"
        ]
      }
    },
    "/api/v1/storages/buckets/{bucket_id}/object-manager/copy": {
      "post": {
        "summary": "Копирование файла/директории в хранилище",
        "description": "Чтобы скопировать файла или директорию с вложениями, отправьте POST запрос на `/api/v1/storages/buckets/{bucket_id}/object-manager/copy`.",
        "parameters": [
          {
            "$ref": "#/components/parameters/bucket-id"
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "properties": {
                  "destination": {
                    "type": "string",
                    "description": "Новый путь до файлов.",
                    "example": "new_path"
                  },
                  "source": {
                    "type": "array",
                    "items": {
                      "type": "string",
                      "description": "Путь до файла или папки, содержимое которой нужно скопировать. Название папки должно быть указано с \"/\" в конце, например: \"dirname/\".",
                      "example": "test1/test2"
                    }
                  }
                },
                "required": [
                  "destination",
                  "source"
                ]
              }
            }
          },
          "required": true
        },
        "x-codeSamples": [
          {
            "lang": "cURL",
            "label": "cURL",
            "source": "curl -X POST \\\n  -H \"Content-Type: application/json\" \\\n  -H \"Authorization: Bearer ${TIMEWEB_CLOUD_TOKEN}\" \\\n  -d '{\"destination\":\"new_path\",\"source\":[\"test1/test2\"]}' \\\n  \"https://api.timeweb.cloud/api/v1/storages/buckets/1051/object-manager/copy\""
          }
        ],
        "responses": {
          "204": {
            "description": "Задание на копирование отправлено"
          },
          "400": {
            "$ref": "#/components/responses/400"
          },
          "401": {
            "$ref": "#/components/responses/401"
          },
          "403": {
            "$ref": "#/components/responses/403"
          },
          "404": {
            "$ref": "#/components/responses/404"
          },
          "429": {
            "$ref": "#/components/responses/429"
          },
          "500": {
            "$ref": "#/components/responses/500"
          }
        },
        "tags": [
          "S3-хранилище"
        ]
      }
    },
    "/api/v1/storages/buckets/{bucket_id}/object-manager/upload": {
      "post": {
        "summary": "Загрузка файлов в хранилище",
        "description": "Чтобы загрузить файлы в хранилище, отправьте POST запрос на `/api/v1/storages/buckets/{bucket_id}/object-manager/upload`.",
        "parameters": [
          {
            "$ref": "#/components/parameters/bucket-id"
          },
          {
            "$ref": "#/components/parameters/path"
          }
        ],
        "requestBody": {
          "content": {
            "multipart/form-data": {
              "schema": {
                "type": "object",
                "properties": {
                  "files": {
                    "type": "array",
                    "items": {
                      "type": "string",
                      "format": "binary"
                    }
                  }
                },
                "required": [
                  "files"
                ]
              }
            }
          },
          "required": true
        },
        "x-codeSamples": [
          {
            "lang": "cURL",
            "label": "cURL",
            "source": "curl -X POST \\\n  -H \"Content-Type: multipart/form-data\" \\\n  -H \"Authorization: Bearer ${TIMEWEB_CLOUD_TOKEN}\" \\\n  -F \"files=@path/to/local/file.jpg\" \\\n  \"https://api.timeweb.cloud/api/v1/storages/buckets/1051/object-manager/upload\""
          }
        ],
        "responses": {
          "204": {
            "description": "Файл успешно загружен"
          },
          "400": {
            "$ref": "#/components/responses/400"
          },
          "401": {
            "$ref": "#/components/responses/401"
          },
          "403": {
            "$ref": "#/components/responses/403"
          },
          "404": {
            "$ref": "#/components/responses/404"
          },
          "429": {
            "$ref": "#/components/responses/429"
          },
          "500": {
            "$ref": "#/components/responses/500"
          }
        },
        "tags": [
          "S3-хранилище"
        ]
      }
    },
    "/api/v1/storages/buckets/{bucket_id}/object-manager/mkdir": {
      "post": {
        "summary": "Создание директории в хранилище",
        "description": "Чтобы создать директорию в хранилище, отправьте POST запрос на `/api/v1/storages/buckets/{bucket_id}/object-manager/mkdir`.",
        "parameters": [
          {
            "$ref": "#/components/parameters/bucket-id"
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "properties": {
                  "dir_name": {
                    "type": "string",
                    "description": "Название директории.",
                    "example": "dir"
                  }
                },
                "required": [
                  "dir_name"
                ]
              }
            }
          },
          "required": true
        },
        "x-codeSamples": [
          {
            "lang": "cURL",
            "label": "cURL",
            "source": "curl -X POST \\\n  -H \"Content-Type: application/json\" \\\n  -H \"Authorization: Bearer ${TIMEWEB_CLOUD_TOKEN}\" \\\n  -d '{\"dir_name\":\"dir\"}' \\\n  \"https://api.timeweb.cloud/api/v1/storages/buckets/1051/object-manager/mkdir\""
          }
        ],
        "responses": {
          "201": {
            "description": "Директория успешно создана"
          },
          "400": {
            "$ref": "#/components/responses/400"
          },
          "401": {
            "$ref": "#/components/responses/401"
          },
          "403": {
            "$ref": "#/components/responses/403"
          },
          "404": {
            "$ref": "#/components/responses/404"
          },
          "409": {},
          "429": {
            "$ref": "#/components/responses/429"
          },
          "500": {
            "$ref": "#/components/responses/500"
          }
        },
        "tags": [
          "S3-хранилище"
        ]
      }
    },
    "/api/v1/storages/certificates/generate": {
      "post": {
        "summary": "Добавление сертификата для поддомена хранилища",
        "description": "Чтобы добавить сертификат для поддомена хранилища, отправьте POST запрос на `/api/v1/storages/certificates/generate`.",
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "properties": {
                  "subdomain": {
                    "type": "string",
                    "example": "test.example.com"
                  }
                }
              }
            }
          },
          "required": true
        },
        "x-codeSamples": [
          {
            "lang": "cURL",
            "label": "cURL",
            "source": "curl -X POST \\\n  -H \"Content-Type: application/json\" \\\n  -H \"Authorization: Bearer ${TIMEWEB_CLOUD_TOKEN}\" \\\n  -d '{\"subdomain\":\"test.example.com\"}' \\\n  \"https://api.timeweb.cloud/api/v1/storages/certificates/generate\""
          }
        ],
        "responses": {
          "200": {
            "description": "Сертификат добавлен"
          },
          "400": {
            "$ref": "#/components/responses/400"
          },
          "401": {
            "$ref": "#/components/responses/401"
          },
          "403": {
            "$ref": "#/components/responses/403"
          },
          "404": {
            "$ref": "#/components/responses/404"
          },
          "429": {
            "$ref": "#/components/responses/429"
          },
          "500": {
            "$ref": "#/components/responses/500"
          }
        },
        "tags": [
          "S3-хранилище"
        ]
      }
    },
    "/api/v1/auth/api-keys": {
      "get": {
        "summary": "Получение списка выпущенных токенов",
        "description": "Чтобы получить список выпущенных токенов, отправьте GET запрос на `/api/v1/auth/api-keys`.",
        "x-codeSamples": [
          {
            "lang": "cURL",
            "label": "cURL",
            "source": "curl -X GET \\\n  -H \"Content-Type: application/json\" \\\n  -H \"Authorization: Bearer ${TIMEWEB_CLOUD_TOKEN}\" \\\n  \"https://api.timeweb.cloud/api/v1/auth/api-keys\""
          }
        ],
        "responses": {
          "200": {
            "description": "Объект JSON c ключом `api_keys`",
            "content": {
              "application/json": {
                "schema": {
                  "allOf": [
                    {
                      "type": "object",
                      "properties": {
                        "meta": {
                          "$ref": "#/components/schemas/meta"
                        },
                        "api_keys": {
                          "type": "array",
                          "items": {
                            "$ref": "#/components/schemas/api-key"
                          }
                        }
                      },
                      "required": [
                        "meta",
                        "api_keys"
                      ]
                    },
                    {
                      "type": "object",
                      "properties": {
                        "response_id": {
                          "$ref": "#/components/schemas/response_id"
                        }
                      },
                      "required": [
                        "response_id"
                      ]
                    }
                  ]
                }
              }
            }
          },
          "400": {
            "$ref": "#/components/responses/400"
          },
          "401": {
            "$ref": "#/components/responses/401"
          },
          "403": {
            "$ref": "#/components/responses/403"
          },
          "404": {
            "$ref": "#/components/responses/404"
          },
          "429": {
            "$ref": "#/components/responses/429"
          },
          "500": {
            "$ref": "#/components/responses/500"
          }
        },
        "tags": [
          "Токены API"
        ]
      },
      "post": {
        "summary": "Создание токена",
        "description": "Чтобы создать токен, отправьте POST запрос на `/api/v1/auth/api-keys` задав необходимые атрибуты.\n\nТокен будет создан с использованием предоставленной информации. Тело ответа будет содержать объект JSON с информацией о созданном токене.",
        "x-codeSamples": [
          {
            "lang": "cURL",
            "label": "cURL",
            "source": "curl -X POST \\\n  -H \"Content-Type: application/json\" \\\n  -H \"Authorization: Bearer ${TIMEWEB_CLOUD_TOKEN}\" \\\n  -d '{\"name\":\"example\",\"expire\":\"2023-12-20T12:03:53.755Z\"}' \\\n  \"https://api.timeweb.cloud/api/v1/auth/api-keys\""
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/create-api-key"
              }
            }
          },
          "required": true
        },
        "responses": {
          "201": {
            "description": "Ответ будет представлять собой объект JSON c ключом `api_key`.",
            "content": {
              "application/json": {
                "schema": {
                  "allOf": [
                    {
                      "type": "object",
                      "properties": {
                        "api_key": {
                          "$ref": "#/components/schemas/created-api-key"
                        }
                      },
                      "required": [
                        "api_key"
                      ]
                    },
                    {
                      "type": "object",
                      "properties": {
                        "response_id": {
                          "$ref": "#/components/schemas/response_id"
                        }
                      },
                      "required": [
                        "response_id"
                      ]
                    }
                  ]
                }
              }
            }
          },
          "400": {
            "$ref": "#/components/responses/400"
          },
          "401": {
            "$ref": "#/components/responses/401"
          },
          "403": {
            "$ref": "#/components/responses/403"
          },
          "404": {
            "$ref": "#/components/responses/404"
          },
          "429": {
            "$ref": "#/components/responses/429"
          },
          "500": {
            "$ref": "#/components/responses/500"
          }
        },
        "tags": [
          "Токены API"
        ]
      }
    },
    "/api/v1/auth/api-keys/{token_id}": {
      "patch": {
        "summary": "Переименовать токен",
        "description": "Чтобы переименовать токен, отправьте PATCH запрос на `/api/v1/auth/api-keys/{token_id}` задав необходимые атрибуты.",
        "parameters": [
          {
            "$ref": "#/components/parameters/api-key-id"
          }
        ],
        "x-codeSamples": [
          {
            "lang": "cURL",
            "label": "cURL",
            "source": "curl -X PATCH \\\n  -H \"Content-Type: application/json\" \\\n  -H \"Authorization: Bearer ${TIMEWEB_CLOUD_TOKEN}\" \\\n  -d '{\"name\":\"example\"}' \\\n  \"https://api.timeweb.cloud/api/v1/auth/api-keys/913a3a06-1eb9-4e9c-bc63-6ca6944e883b\""
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/rename-api-key"
              }
            }
          },
          "required": true
        },
        "responses": {
          "200": {
            "description": "Ответ будет представлять собой объект JSON c ключом `api_key`.",
            "content": {
              "application/json": {
                "schema": {
                  "allOf": [
                    {
                      "type": "object",
                      "properties": {
                        "api_key": {
                          "$ref": "#/components/schemas/api-key"
                        }
                      },
                      "required": [
                        "api_key"
                      ]
                    },
                    {
                      "type": "object",
                      "properties": {
                        "response_id": {
                          "$ref": "#/components/schemas/response_id"
                        }
                      },
                      "required": [
                        "response_id"
                      ]
                    }
                  ]
                }
              }
            }
          },
          "400": {
            "$ref": "#/components/responses/400"
          },
          "401": {
            "$ref": "#/components/responses/401"
          },
          "403": {
            "$ref": "#/components/responses/403"
          },
          "404": {
            "$ref": "#/components/responses/404"
          },
          "429": {
            "$ref": "#/components/responses/429"
          },
          "500": {
            "$ref": "#/components/responses/500"
          }
        },
        "tags": [
          "Токены API"
        ]
      },
      "put": {
        "summary": "Перевыпустить токен",
        "description": "Чтобы перевыпустить токен, отправьте PUT запрос на `/api/v1/auth/api-keys/{token_id}` задав необходимые атрибуты.",
        "parameters": [
          {
            "$ref": "#/components/parameters/api-key-id"
          }
        ],
        "x-codeSamples": [
          {
            "lang": "cURL",
            "label": "cURL",
            "source": "curl -X PUT \\\n  -H \"Content-Type: application/json\" \\\n  -H \"Authorization: Bearer ${TIMEWEB_CLOUD_TOKEN}\" \\\n  \"https://api.timeweb.cloud/api/v1/auth/api-keys/913a3a06-1eb9-4e9c-bc63-6ca6944e883b\""
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/refresh-api-key"
              }
            }
          },
          "required": true
        },
        "responses": {
          "200": {
            "description": "Ответ будет представлять собой объект JSON c ключом `api_key`.",
            "content": {
              "application/json": {
                "schema": {
                  "allOf": [
                    {
                      "type": "object",
                      "properties": {
                        "api_key": {
                          "$ref": "#/components/schemas/created-api-key"
                        }
                      },
                      "required": [
                        "api_key"
                      ]
                    },
                    {
                      "type": "object",
                      "properties": {
                        "response_id": {
                          "$ref": "#/components/schemas/response_id"
                        }
                      },
                      "required": [
                        "response_id"
                      ]
                    }
                  ]
                }
              }
            }
          },
          "400": {
            "$ref": "#/components/responses/400"
          },
          "401": {
            "$ref": "#/components/responses/401"
          },
          "403": {
            "$ref": "#/components/responses/403"
          },
          "404": {
            "$ref": "#/components/responses/404"
          },
          "429": {
            "$ref": "#/components/responses/429"
          },
          "500": {
            "$ref": "#/components/responses/500"
          }
        },
        "tags": [
          "Токены API"
        ]
      },
      "delete": {
        "summary": "Удалить токен",
        "description": "Чтобы удалить токен, отправьте DELETE запрос на `/api/v1/auth/api-keys/{token_id}`.",
        "parameters": [
          {
            "$ref": "#/components/parameters/api-key-id"
          }
        ],
        "x-codeSamples": [
          {
            "lang": "cURL",
            "label": "cURL",
            "source": "curl -X DELETE \\\n  -H \"Content-Type: application/json\" \\\n  -H \"Authorization: Bearer ${TIMEWEB_CLOUD_TOKEN}\" \\\n  \"https://api.timeweb.cloud/api/v1/auth/api-keys/913a3a06-1eb9-4e9c-bc63-6ca6944e883b\""
          }
        ],
        "responses": {
          "204": {
            "description": "Токен успешно удален."
          },
          "400": {
            "$ref": "#/components/responses/400"
          },
          "401": {
            "$ref": "#/components/responses/401"
          },
          "403": {
            "$ref": "#/components/responses/403"
          },
          "404": {
            "$ref": "#/components/responses/404"
          },
          "429": {
            "$ref": "#/components/responses/429"
          },
          "500": {
            "$ref": "#/components/responses/500"
          }
        },
        "tags": [
          "Токены API"
        ]
      }
    },
    "/api/v1/auth/access": {
      "get": {
        "summary": "Получение информацию о ограничениях авторизации пользователя",
        "description": "Чтобы получить информацию о ограничениях авторизации пользователя, отправьте GET запрос на `/api/v1/auth/access`.\n\n Тело ответа будет представлять собой объект JSON с ключами `is_ip_restrictions_enabled`, `is_country_restrictions_enabled` и `white_list`.",
        "x-codeSamples": [
          {
            "lang": "cURL",
            "label": "cURL",
            "source": "curl -X GET \\\n  -H \"Content-Type: application/json\" \\\n  -H \"Authorization: Bearer ${TIMEWEB_CLOUD_TOKEN}\" \\\n  \"https://api.timeweb.cloud/api/v1/auth/access\""
          }
        ],
        "responses": {
          "200": {
            "description": "Объект JSON c ключами `is_ip_restrictions_enabled`, `is_country_restrictions_enabled` и `white_list`",
            "content": {
              "application/json": {
                "schema": {
                  "allOf": [
                    {
                      "type": "object",
                      "properties": {
                        "is_ip_restrictions_enabled": {
                          "type": "boolean",
                          "description": "Это логическое значение, которое показывает, включено ли ограничение доступа по IP-адресу.",
                          "example": true
                        },
                        "is_country_restrictions_enabled": {
                          "type": "boolean",
                          "description": "Это логическое значение, которое показывает, включено ли ограничение доступа по стране.",
                          "example": true
                        },
                        "white_list": {
                          "type": "object",
                          "properties": {
                            "ips": {
                              "type": "array",
                              "description": "Список разрешенных IP-адресов.",
                              "items": {
                                "type": "string",
                                "format": "ipv4",
                                "example": "123.231.125.128"
                              }
                            },
                            "countries": {
                              "type": "array",
                              "description": "Список разрешенных стран.",
                              "items": {
                                "type": "string",
                                "example": "RU"
                              }
                            }
                          },
                          "required": [
                            "ips",
                            "countries"
                          ]
                        }
                      },
                      "required": [
                        "is_ip_restrictions_enabled",
                        "is_country_restrictions_enabled",
                        "white_list"
                      ]
                    },
                    {
                      "type": "object",
                      "properties": {
                        "response_id": {
                          "$ref": "#/components/schemas/response_id"
                        }
                      },
                      "required": [
                        "response_id"
                      ]
                    }
                  ]
                }
              }
            }
          },
          "400": {
            "$ref": "#/components/responses/400"
          },
          "401": {
            "$ref": "#/components/responses/401"
          },
          "429": {
            "$ref": "#/components/responses/429"
          },
          "500": {
            "$ref": "#/components/responses/500"
          }
        },
        "tags": [
          "Аккаунт"
        ]
      }
    },
    "/api/v1/auth/access/countries/enabled": {
      "post": {
        "summary": "Включение/отключение ограничений по стране",
        "description": "Чтобы включить/отключить ограничения по стране, отправьте POST запрос в `api/v1/access/countries/enabled`, передав в теле запроса параметр `is_enabled`",
        "x-codeSamples": [
          {
            "lang": "cURL",
            "label": "cURL",
            "source": "curl -X POST \\\n  -H \"Content-Type: application/json\" \\\n  -H \"Authorization: Bearer ${TIMEWEB_CLOUD_TOKEN}\" \\\n  -d '{\n  \"is_enabled\": true\n}' \"https://api.timeweb.cloud/api/v1/access/countries/enabled\""
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "properties": {
                  "is_enabled": {
                    "type": "boolean",
                    "description": "Это логическое значение, которое показывает, включены ли ограничения по IP-адресу.",
                    "example": true
                  }
                },
                "required": [
                  "is_enabled"
                ]
              }
            }
          },
          "required": true
        },
        "responses": {
          "204": {},
          "400": {
            "$ref": "#/components/responses/400"
          },
          "401": {
            "$ref": "#/components/responses/401"
          },
          "429": {
            "$ref": "#/components/responses/429"
          },
          "500": {
            "$ref": "#/components/responses/500"
          }
        },
        "tags": [
          "Аккаунт"
        ]
      }
    },
    "/api/v1/auth/access/countries": {
      "get": {
        "summary": "Получение списка стран",
        "description": "Чтобы получить список стран, отправьте GET запрос на `/api/v1/auth/access/countries`.\n\n Тело ответа будет представлять собой объект JSON с ключом `countries`.",
        "x-codeSamples": [
          {
            "lang": "cURL",
            "label": "cURL",
            "source": "curl -X GET \\\n  -H \"Content-Type: application/json\" \\\n  -H \"Authorization: Bearer ${TIMEWEB_CLOUD_TOKEN}\" \\\n  \"https://api.timeweb.cloud/api/v1/auth/access/countries\""
          }
        ],
        "responses": {
          "200": {
            "description": "Объект JSON c ключом `countries`",
            "content": {
              "application/json": {
                "schema": {
                  "allOf": [
                    {
                      "type": "object",
                      "properties": {
                        "countries": {
                          "type": "object",
                          "description": "Список стран, приходит в виде объекта, где ключ - код страны в формате Alpha-2 ISO 3166-1, а значение - название страны в удобочитаемом формате.",
                          "example": {
                            "RU": "Россия",
                            "KZ": "Казахстан",
                            "BY": "Беларусь"
                          }
                        }
                      },
                      "required": [
                        "countries"
                      ]
                    },
                    {
                      "type": "object",
                      "properties": {
                        "response_id": {
                          "$ref": "#/components/schemas/response_id"
                        }
                      },
                      "required": [
                        "response_id"
                      ]
                    }
                  ]
                }
              }
            }
          },
          "400": {
            "$ref": "#/components/responses/400"
          },
          "401": {
            "$ref": "#/components/responses/401"
          },
          "429": {
            "$ref": "#/components/responses/429"
          },
          "500": {
            "$ref": "#/components/responses/500"
          }
        },
        "tags": [
          "Аккаунт"
        ]
      },
      "post": {
        "summary": "Добавление стран в список разрешенных",
        "description": "Чтобы добавить страны в список разрешенных, отправьте POST запрос в `api/v1/access/countries`, передав в теле запроса параметр `countries` со списком стран.",
        "x-codeSamples": [
          {
            "lang": "cURL",
            "label": "cURL",
            "source": "curl -X POST \\\n  -H \"Content-Type: application/json\" \\\n  -H \"Authorization: Bearer ${TIMEWEB_CLOUD_TOKEN}\" \\\n  -d '{\n  \"countries\": [\"RU\"]\n}' \"https://api.timeweb.cloud/api/v1/access/countries\""
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "properties": {
                  "countries": {
                    "type": "array",
                    "description": "Список разрешенных стран",
                    "items": {
                      "type": "string",
                      "example": "RU"
                    }
                  }
                },
                "required": [
                  "countries"
                ]
              }
            }
          },
          "required": true
        },
        "responses": {
          "201": {
            "description": "Объект JSON c ключом `countries`",
            "content": {
              "application/json": {
                "schema": {
                  "allOf": [
                    {
                      "type": "object",
                      "properties": {
                        "countries": {
                          "$ref": "#/components/schemas/add-countries"
                        }
                      },
                      "required": [
                        "countries"
                      ]
                    },
                    {
                      "type": "object",
                      "properties": {
                        "response_id": {
                          "$ref": "#/components/schemas/response_id"
                        }
                      },
                      "required": [
                        "response_id"
                      ]
                    }
                  ]
                }
              }
            }
          },
          "400": {
            "$ref": "#/components/responses/400"
          },
          "401": {
            "$ref": "#/components/responses/401"
          },
          "429": {
            "$ref": "#/components/responses/429"
          },
          "500": {
            "$ref": "#/components/responses/500"
          }
        },
        "tags": [
          "Аккаунт"
        ]
      },
      "delete": {
        "summary": "Удаление стран из списка разрешенных",
        "description": "Чтобы удалить страны из списка разрешенных, отправьте DELETE запрос в `api/v1/access/countries`, передав в теле запроса параметр `countries` со списком стран.",
        "x-codeSamples": [
          {
            "lang": "cURL",
            "label": "cURL",
            "source": "curl -X DELETE \\\n  -H \"Content-Type: application/json\" \\\n  -H \"Authorization: Bearer ${TIMEWEB_CLOUD_TOKEN}\" \\\n  -d '{\n  \"countries\": [\"RU\"]\n}' \"https://api.timeweb.cloud/api/v1/access/countries\""
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "properties": {
                  "countries": {
                    "type": "array",
                    "description": "Список удаляемых из списка разрешенных стран.",
                    "items": {
                      "type": "string",
                      "example": "RU"
                    }
                  }
                },
                "required": [
                  "countries"
                ]
              }
            }
          },
          "required": true
        },
        "responses": {
          "200": {
            "description": "Объект JSON c ключом `countries`",
            "content": {
              "application/json": {
                "schema": {
                  "allOf": [
                    {
                      "type": "object",
                      "properties": {
                        "countries": {
                          "$ref": "#/components/schemas/remove-countries"
                        }
                      },
                      "required": [
                        "countries"
                      ]
                    },
                    {
                      "type": "object",
                      "properties": {
                        "response_id": {
                          "$ref": "#/components/schemas/response_id"
                        }
                      },
                      "required": [
                        "response_id"
                      ]
                    }
                  ]
                }
              }
            }
          },
          "400": {
            "$ref": "#/components/responses/400"
          },
          "401": {
            "$ref": "#/components/responses/401"
          },
          "429": {
            "$ref": "#/components/responses/429"
          },
          "500": {
            "$ref": "#/components/responses/500"
          }
        },
        "tags": [
          "Аккаунт"
        ]
      }
    },
    "/api/v1/auth/access/ips/enabled": {
      "post": {
        "summary": "Включение/отключение ограничений по IP-адресу",
        "description": "Чтобы включить/отключить ограничения по IP-адресу, отправьте POST запрос в `api/v1/access/ips/enabled`, передав в теле запроса параметр `is_enabled`",
        "x-codeSamples": [
          {
            "lang": "cURL",
            "label": "cURL",
            "source": "curl -X POST \\\n  -H \"Content-Type: application/json\" \\\n  -H \"Authorization: Bearer ${TIMEWEB_CLOUD_TOKEN}\" \\\n  -d '{\n  \"is_enabled\": true\n}' \"https://api.timeweb.cloud/api/v1/access/ips/enabled\""
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "properties": {
                  "is_enabled": {
                    "type": "boolean",
                    "description": "Это логическое значение, которое показывает, включены ли ограничения по IP-адресу.",
                    "example": true
                  }
                },
                "required": [
                  "is_enabled"
                ]
              }
            }
          },
          "required": true
        },
        "responses": {
          "204": {},
          "400": {
            "$ref": "#/components/responses/400"
          },
          "401": {
            "$ref": "#/components/responses/401"
          },
          "429": {
            "$ref": "#/components/responses/429"
          },
          "500": {
            "$ref": "#/components/responses/500"
          }
        },
        "tags": [
          "Аккаунт"
        ]
      }
    },
    "/api/v1/auth/access/ips": {
      "post": {
        "summary": "Добавление IP-адресов в список разрешенных",
        "description": "Чтобы добавить IP-адреса в список разрешенных, отправьте POST запрос в `api/v1/access/ips`, передав в теле запроса параметр `ips` со списком IP-адресов.",
        "x-codeSamples": [
          {
            "lang": "cURL",
            "label": "cURL",
            "source": "curl -X POST \\\n  -H \"Content-Type: application/json\" \\\n  -H \"Authorization: Bearer ${TIMEWEB_CLOUD_TOKEN}\" \\\n  -d '{\n  \"ips\": [\"123.231.125.128\"]\n}' \"https://api.timeweb.cloud/api/v1/access/ips\""
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "properties": {
                  "ips": {
                    "type": "array",
                    "description": "Список разрешенных IP-адресов.",
                    "items": {
                      "type": "string",
                      "format": "ipv4",
                      "example": "123.231.125.128"
                    }
                  }
                },
                "required": [
                  "ips"
                ]
              }
            }
          },
          "required": true
        },
        "responses": {
          "201": {
            "description": "Объект JSON c ключом `ips`",
            "content": {
              "application/json": {
                "schema": {
                  "allOf": [
                    {
                      "type": "object",
                      "properties": {
                        "ips": {
                          "$ref": "#/components/schemas/add-ips"
                        }
                      },
                      "required": [
                        "ips"
                      ]
                    },
                    {
                      "type": "object",
                      "properties": {
                        "response_id": {
                          "$ref": "#/components/schemas/response_id"
                        }
                      },
                      "required": [
                        "response_id"
                      ]
                    }
                  ]
                }
              }
            }
          },
          "400": {
            "$ref": "#/components/responses/400"
          },
          "401": {
            "$ref": "#/components/responses/401"
          },
          "429": {
            "$ref": "#/components/responses/429"
          },
          "500": {
            "$ref": "#/components/responses/500"
          }
        },
        "tags": [
          "Аккаунт"
        ]
      },
      "delete": {
        "summary": "Удаление IP-адресов из списка разрешенных",
        "description": "Чтобы удалить IP-адреса из списка разрешенных, отправьте DELETE запрос в `api/v1/access/ips`, передав в теле запроса параметр `ips` со списком IP-адресов.",
        "x-codeSamples": [
          {
            "lang": "cURL",
            "label": "cURL",
            "source": "curl -X DELETE \\\n  -H \"Content-Type: application/json\" \\\n  -H \"Authorization: Bearer ${TIMEWEB_CLOUD_TOKEN}\" \\\n  -d '{\n  \"ips\": [\"123.231.125.128\"]\n}' \"https://api.timeweb.cloud/api/v1/access/ips\""
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "properties": {
                  "ips": {
                    "type": "array",
                    "description": "Список удаляемых из списка разрешенных IP-адресов.",
                    "items": {
                      "type": "string",
                      "format": "ipv4",
                      "example": "123.231.125.128"
                    }
                  }
                },
                "required": [
                  "ips"
                ]
              }
            }
          },
          "required": true
        },
        "responses": {
          "200": {
            "description": "Объект JSON c ключом `ips`.",
            "content": {
              "application/json": {
                "schema": {
                  "allOf": [
                    {
                      "type": "object",
                      "properties": {
                        "ips": {
                          "$ref": "#/components/schemas/remove-ips"
                        }
                      },
                      "required": [
                        "ips"
                      ]
                    },
                    {
                      "type": "object",
                      "properties": {
                        "response_id": {
                          "$ref": "#/components/schemas/response_id"
                        }
                      },
                      "required": [
                        "response_id"
                      ]
                    }
                  ]
                }
              }
            }
          },
          "400": {
            "$ref": "#/components/responses/400"
          },
          "401": {
            "$ref": "#/components/responses/401"
          },
          "429": {
            "$ref": "#/components/responses/429"
          },
          "500": {
            "$ref": "#/components/responses/500"
          }
        },
        "tags": [
          "Аккаунт"
        ]
      }
    },
    "/api/v1/domains": {
      "get": {
        "summary": "Получение списка всех доменов",
        "description": "Чтобы получить список всех доменов на вашем аккаунте, отправьте GET запрос на `/api/v1/domains`.\n\n Тело ответа будет представлять собой объект JSON с ключом `domains`.",
        "parameters": [
          {
            "$ref": "#/components/parameters/limit"
          },
          {
            "$ref": "#/components/parameters/offset"
          },
          {
            "$ref": "#/components/parameters/idn-name"
          },
          {
            "$ref": "#/components/parameters/linked-ip"
          },
          {
            "$ref": "#/components/parameters/order"
          },
          {
            "$ref": "#/components/parameters/sort"
          }
        ],
        "x-codeSamples": [
          {
            "lang": "cURL",
            "label": "cURL",
            "source": "curl -X GET \\\n  -H \"Content-Type: application/json\" \\\n  -H \"Authorization: Bearer ${TIMEWEB_CLOUD_TOKEN}\" \\\n  \"https://api.timeweb.cloud/api/v1/domains\""
          }
        ],
        "responses": {
          "200": {
            "description": "Ответ будет представлять собой объект JSON c ключом `domains`.",
            "content": {
              "application/json": {
                "schema": {
                  "allOf": [
                    {
                      "type": "object",
                      "properties": {
                        "meta": {
                          "$ref": "#/components/schemas/meta"
                        },
                        "domains": {
                          "type": "array",
                          "items": {
                            "$ref": "#/components/schemas/domain"
                          }
                        }
                      },
                      "required": [
                        "meta",
                        "domains"
                      ]
                    },
                    {
                      "type": "object",
                      "properties": {
                        "response_id": {
                          "$ref": "#/components/schemas/response_id"
                        }
                      },
                      "required": [
                        "response_id"
                      ]
                    }
                  ]
                }
              }
            }
          },
          "400": {
            "$ref": "#/components/responses/400"
          },
          "401": {
            "$ref": "#/components/responses/401"
          },
          "429": {
            "$ref": "#/components/responses/429"
          },
          "500": {
            "$ref": "#/components/responses/500"
          }
        },
        "tags": [
          "Домены"
        ]
      }
    },
    "/api/v1/domains/{fqdn}": {
      "get": {
        "summary": "Получение информации о домене",
        "description": "Чтобы отобразить информацию об отдельном домене, отправьте запрос GET на `/api/v1/domains/{fqdn}`.",
        "parameters": [
          {
            "$ref": "#/components/parameters/domain-fqdn"
          }
        ],
        "x-codeSamples": [
          {
            "lang": "cURL",
            "label": "cURL",
            "source": "curl -X GET \\\n  -H \"Content-Type: application/json\" \\\n  -H \"Authorization: Bearer ${TIMEWEB_CLOUD_TOKEN}\" \\\n  \"https://api.timeweb.cloud/api/v1/domains/somedomain.ru\""
          }
        ],
        "responses": {
          "200": {
            "description": "Ответ будет представлять собой объект JSON c ключом `domain`.",
            "content": {
              "application/json": {
                "schema": {
                  "allOf": [
                    {
                      "type": "object",
                      "properties": {
                        "meta": {
                          "$ref": "#/components/schemas/meta"
                        },
                        "domain": {
                          "$ref": "#/components/schemas/domain"
                        }
                      },
                      "required": [
                        "meta",
                        "domain"
                      ]
                    },
                    {
                      "type": "object",
                      "properties": {
                        "response_id": {
                          "$ref": "#/components/schemas/response_id"
                        }
                      },
                      "required": [
                        "response_id"
                      ]
                    }
                  ]
                }
              }
            }
          },
          "400": {
            "$ref": "#/components/responses/400"
          },
          "401": {
            "$ref": "#/components/responses/401"
          },
          "404": {
            "$ref": "#/components/responses/404"
          },
          "429": {
            "$ref": "#/components/responses/429"
          },
          "500": {
            "$ref": "#/components/responses/500"
          }
        },
        "tags": [
          "Домены"
        ]
      },
      "patch": {
        "summary": "Включение/выключение автопродления домена",
        "description": "Чтобы включить/выключить автопродление домена, отправьте запрос PATCH на `/api/v1/domains/{fqdn}`, передав в теле запроса параметр `is_autoprolong_enabled`",
        "parameters": [
          {
            "$ref": "#/components/parameters/domain-fqdn"
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/update-domain"
              }
            }
          },
          "required": true
        },
        "x-codeSamples": [
          {
            "lang": "cURL",
            "label": "cURL",
            "source": "curl -X PATCH \\\n  -H \"Content-Type: application/json\" \\\n  -H \"Authorization: Bearer ${TIMEWEB_CLOUD_TOKEN}\" \\\n  -d '{\"is_autoprolong_enabled\":true}' \\\n  \"https://api.timeweb.cloud/api/v1/domains/somedomain.ru\""
          }
        ],
        "responses": {
          "200": {
            "description": "Объект JSON c ключом `domain`",
            "content": {
              "application/json": {
                "schema": {
                  "allOf": [
                    {
                      "type": "object",
                      "properties": {
                        "domain": {
                          "$ref": "#/components/schemas/domain"
                        }
                      },
                      "required": [
                        "domain"
                      ]
                    },
                    {
                      "type": "object",
                      "properties": {
                        "response_id": {
                          "$ref": "#/components/schemas/response_id"
                        }
                      },
                      "required": [
                        "response_id"
                      ]
                    }
                  ]
                }
              }
            }
          },
          "400": {
            "$ref": "#/components/responses/400"
          },
          "401": {
            "$ref": "#/components/responses/401"
          },
          "404": {
            "$ref": "#/components/responses/404"
          },
          "409": {
            "$ref": "#/components/responses/conflict"
          },
          "429": {
            "$ref": "#/components/responses/429"
          },
          "500": {
            "$ref": "#/components/responses/500"
          }
        },
        "tags": [
          "Домены"
        ]
      },
      "delete": {
        "summary": "Удаление домена",
        "description": "Чтобы удалить домен, отправьте запрос DELETE на `/api/v1/domains/{fqdn}`.",
        "parameters": [
          {
            "$ref": "#/components/parameters/domain-fqdn"
          }
        ],
        "x-codeSamples": [
          {
            "lang": "cURL",
            "label": "cURL",
            "source": "curl -X DELETE \\\n  -H \"Content-Type: application/json\" \\\n  -H \"Authorization: Bearer ${TIMEWEB_CLOUD_TOKEN}\" \\\n  \"https://api.timeweb.cloud/api/v1/domains/somedomain.ru\""
          }
        ],
        "responses": {
          "204": {
            "description": "Домен успешно удален."
          },
          "400": {
            "$ref": "#/components/responses/400"
          },
          "401": {
            "$ref": "#/components/responses/401"
          },
          "404": {
            "$ref": "#/components/responses/404"
          },
          "409": {
            "$ref": "#/components/responses/conflict"
          },
          "429": {
            "$ref": "#/components/responses/429"
          },
          "500": {
            "$ref": "#/components/responses/500"
          }
        },
        "tags": [
          "Домены"
        ]
      }
    },
    "/api/v1/domains/{fqdn}/dns-records": {
      "get": {
        "summary": "Получить информацию обо всех пользовательских DNS-записях домена или поддомена",
        "description": "Чтобы получить информацию обо всех пользовательских DNS-записях домена или поддомена, отправьте запрос GET на `/api/v1/domains/{fqdn}/dns-records`.",
        "parameters": [
          {
            "$ref": "#/components/parameters/domain-subdomain-fqdn"
          },
          {
            "$ref": "#/components/parameters/limit"
          },
          {
            "$ref": "#/components/parameters/offset"
          }
        ],
        "x-codeSamples": [
          {
            "lang": "cURL",
            "label": "cURL",
            "source": "curl -X GET \\\n  -H \"Content-Type: application/json\" \\\n  -H \"Authorization: Bearer ${TIMEWEB_CLOUD_TOKEN}\" \\\n  \"https://api.timeweb.cloud/api/v1/domains/somedomain.ru/dns-records\""
          }
        ],
        "responses": {
          "200": {
            "description": "Ответ будет представлять собой объект JSON c ключом `dns_records`.",
            "content": {
              "application/json": {
                "schema": {
                  "allOf": [
                    {
                      "type": "object",
                      "properties": {
                        "meta": {
                          "$ref": "#/components/schemas/meta"
                        },
                        "dns_records": {
                          "type": "array",
                          "items": {
                            "$ref": "#/components/schemas/dns-record"
                          }
                        }
                      },
                      "required": [
                        "meta",
                        "dns_records"
                      ]
                    },
                    {
                      "type": "object",
                      "properties": {
                        "response_id": {
                          "$ref": "#/components/schemas/response_id"
                        }
                      },
                      "required": [
                        "response_id"
                      ]
                    }
                  ]
                }
              }
            }
          },
          "400": {
            "$ref": "#/components/responses/400"
          },
          "401": {
            "$ref": "#/components/responses/401"
          },
          "404": {
            "$ref": "#/components/responses/404"
          },
          "429": {
            "$ref": "#/components/responses/429"
          },
          "500": {
            "$ref": "#/components/responses/500"
          }
        },
        "tags": [
          "Домены"
        ]
      },
      "post": {
        "summary": "Добавить информацию о DNS-записи для домена или поддомена",
        "description": "Чтобы добавить информацию о DNS-записи для домена или поддомена, отправьте запрос POST на `/api/v1/domains/{fqdn}/dns-records`, задав необходимые атрибуты.\n\nDNS-запись будет добавлена с использованием предоставленной информации. Тело ответа будет содержать объект JSON с информацией о добавленной DNS-записи.",
        "parameters": [
          {
            "$ref": "#/components/parameters/domain-subdomain-fqdn"
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/create-dns"
              }
            }
          },
          "required": true
        },
        "x-codeSamples": [
          {
            "lang": "cURL",
            "label": "cURL",
            "source": "curl -X POST \\\n  -H \"Content-Type: application/json\" \\\n  -H \"Authorization: Bearer ${TIMEWEB_CLOUD_TOKEN}\" \\\n  -d '{\"type\":\"A\",\"value\":\"172.168.1.1\"}' \\\n  \"https://api.timeweb.cloud/api/v1/domains/somedomain.ru/dns-records\""
          }
        ],
        "responses": {
          "201": {
            "description": "Ответ будет представлять собой объект JSON c ключом `dns_record`.",
            "content": {
              "application/json": {
                "schema": {
                  "allOf": [
                    {
                      "type": "object",
                      "properties": {
                        "dns_record": {
                          "$ref": "#/components/schemas/dns-record"
                        }
                      },
                      "required": [
                        "dns_record"
                      ]
                    },
                    {
                      "type": "object",
                      "properties": {
                        "response_id": {
                          "$ref": "#/components/schemas/response_id"
                        }
                      },
                      "required": [
                        "response_id"
                      ]
                    }
                  ]
                }
              }
            }
          },
          "400": {
            "$ref": "#/components/responses/400"
          },
          "401": {
            "$ref": "#/components/responses/401"
          },
          "404": {
            "$ref": "#/components/responses/404"
          },
          "429": {
            "$ref": "#/components/responses/429"
          },
          "500": {
            "$ref": "#/components/responses/500"
          }
        },
        "tags": [
          "Домены"
        ]
      }
    },
    "/api/v1/domains/{fqdn}/dns-records/{record_id}": {
      "patch": {
        "summary": "Обновить информацию о DNS-записи домена или поддомена",
        "description": "Чтобы обновить информацию о DNS-записи для домена или поддомена, отправьте запрос PATCH на `/api/v1/domains/{fqdn}/dns-records/{record_id}`, задав необходимые атрибуты.\n\nDNS-запись будет обновлена с использованием предоставленной информации. Тело ответа будет содержать объект JSON с информацией об добавленной DNS-записи.",
        "parameters": [
          {
            "$ref": "#/components/parameters/domain-subdomain-fqdn"
          },
          {
            "$ref": "#/components/parameters/record-id"
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/create-dns"
              }
            }
          },
          "required": true
        },
        "x-codeSamples": [
          {
            "lang": "cURL",
            "label": "cURL",
            "source": "curl -X PATCH \\\n  -H \"Content-Type: application/json\" \\\n  -H \"Authorization: Bearer ${TIMEWEB_CLOUD_TOKEN}\" \\\n  -d '{\"type\":\"A\",\"value\":\"172.168.1.1\"}' \\\n  \"https://api.timeweb.cloud/api/v1/domains/somedomain.ru/dns-records/123\""
          }
        ],
        "responses": {
          "200": {
            "description": "Ответ будет представлять собой объект JSON c ключом `dns_record`.",
            "content": {
              "application/json": {
                "schema": {
                  "allOf": [
                    {
                      "type": "object",
                      "properties": {
                        "dns_record": {
                          "$ref": "#/components/schemas/dns-record"
                        }
                      },
                      "required": [
                        "dns_record"
                      ]
                    },
                    {
                      "type": "object",
                      "properties": {
                        "response_id": {
                          "$ref": "#/components/schemas/response_id"
                        }
                      },
                      "required": [
                        "response_id"
                      ]
                    }
                  ]
                }
              }
            }
          },
          "400": {
            "$ref": "#/components/responses/400"
          },
          "401": {
            "$ref": "#/components/responses/401"
          },
          "404": {
            "$ref": "#/components/responses/404"
          },
          "429": {
            "$ref": "#/components/responses/429"
          },
          "500": {
            "$ref": "#/components/responses/500"
          }
        },
        "tags": [
          "Домены"
        ]
      },
      "delete": {
        "summary": "Удалить информацию о DNS-записи для домена или поддомена",
        "description": "Чтобы удалить информацию о DNS-записи для домена или поддомена, отправьте запрос DELETE на `/api/v1/domains/{fqdn}/dns-records/{record_id}`.",
        "parameters": [
          {
            "$ref": "#/components/parameters/domain-subdomain-fqdn"
          },
          {
            "$ref": "#/components/parameters/record-id"
          }
        ],
        "x-codeSamples": [
          {
            "lang": "cURL",
            "label": "cURL",
            "source": "curl -X DELETE \\\n  -H \"Content-Type: application/json\" \\\n  -H \"Authorization: Bearer ${TIMEWEB_CLOUD_TOKEN}\" \\\n  \"https://api.timeweb.cloud/api/v1/domains/somedomain.ru/dns-records/123\""
          }
        ],
        "responses": {
          "204": {
            "description": "Информация о DNS-записи успешно удалена."
          },
          "400": {
            "$ref": "#/components/responses/400"
          },
          "401": {
            "$ref": "#/components/responses/401"
          },
          "404": {
            "$ref": "#/components/responses/404"
          },
          "429": {
            "$ref": "#/components/responses/429"
          },
          "500": {
            "$ref": "#/components/responses/500"
          }
        },
        "tags": [
          "Домены"
        ]
      }
    },
    "/api/v1/domains/{fqdn}/default-dns-records": {
      "get": {
        "summary": "Получение информацию обо всех DNS-записях по умолчанию домена или поддомена",
        "description": "Чтобы получить информацию обо всех DNS-записях по умолчанию домена или поддомена, отправьте запрос GET на `/api/v1/domains/{fqdn}/default-dns-records`.",
        "parameters": [
          {
            "$ref": "#/components/parameters/domain-subdomain-fqdn"
          },
          {
            "$ref": "#/components/parameters/limit"
          },
          {
            "$ref": "#/components/parameters/offset"
          }
        ],
        "x-codeSamples": [
          {
            "lang": "cURL",
            "label": "cURL",
            "source": "curl -X GET \\\n  -H \"Content-Type: application/json\" \\\n  -H \"Authorization: Bearer ${TIMEWEB_CLOUD_TOKEN}\" \\\n  \"https://api.timeweb.cloud/api/v1/domains/somedomain.ru/default-dns-records\""
          }
        ],
        "responses": {
          "200": {
            "description": "Ответ будет представлять собой объект JSON c ключом `dns_records`.",
            "content": {
              "application/json": {
                "schema": {
                  "allOf": [
                    {
                      "type": "object",
                      "properties": {
                        "meta": {
                          "$ref": "#/components/schemas/meta"
                        },
                        "dns_records": {
                          "type": "array",
                          "items": {
                            "$ref": "#/components/schemas/dns-record"
                          }
                        }
                      },
                      "required": [
                        "meta",
                        "dns_records"
                      ]
                    },
                    {
                      "type": "object",
                      "properties": {
                        "response_id": {
                          "$ref": "#/components/schemas/response_id"
                        }
                      },
                      "required": [
                        "response_id"
                      ]
                    }
                  ]
                }
              }
            }
          },
          "400": {
            "$ref": "#/components/responses/400"
          },
          "401": {
            "$ref": "#/components/responses/401"
          },
          "404": {
            "$ref": "#/components/responses/404"
          },
          "429": {
            "$ref": "#/components/responses/429"
          },
          "500": {
            "$ref": "#/components/responses/500"
          }
        },
        "tags": [
          "Домены"
        ]
      }
    },
    "/api/v1/domains/{fqdn}/subdomains/{subdomain_fqdn}": {
      "post": {
        "summary": "Добавление поддомена",
        "description": "Чтобы добавить поддомен, отправьте запрос POST на `/api/v1/domains/{fqdn}/subdomains/{subdomain_fqdn}`, задав необходимые атрибуты.\n\nПоддомен будет добавлен с использованием предоставленной информации. Тело ответа будет содержать объект JSON с информацией о добавленном поддомене.",
        "parameters": [
          {
            "$ref": "#/components/parameters/domain-fqdn"
          },
          {
            "$ref": "#/components/parameters/subdomain-fqdn"
          }
        ],
        "x-codeSamples": [
          {
            "lang": "cURL",
            "label": "cURL",
            "source": "curl -X POST \\\n  -H \"Content-Type: application/json\" \\\n  -H \"Authorization: Bearer ${TIMEWEB_CLOUD_TOKEN}\" \\\n  \"https://api.timeweb.cloud/api/v1/domains/somedomain.ru/subdomains/sub.somedomain.ru\""
          }
        ],
        "responses": {
          "201": {
            "description": "Ответ будет представлять собой объект JSON c ключом `subdomain`.",
            "content": {
              "application/json": {
                "schema": {
                  "allOf": [
                    {
                      "type": "object",
                      "properties": {
                        "subdomain": {
                          "$ref": "#/components/schemas/subdomain"
                        }
                      },
                      "required": [
                        "subdomain"
                      ]
                    },
                    {
                      "type": "object",
                      "properties": {
                        "response_id": {
                          "$ref": "#/components/schemas/response_id"
                        }
                      },
                      "required": [
                        "response_id"
                      ]
                    }
                  ]
                }
              }
            }
          },
          "400": {
            "$ref": "#/components/responses/400"
          },
          "401": {
            "$ref": "#/components/responses/401"
          },
          "404": {
            "$ref": "#/components/responses/404"
          },
          "429": {
            "$ref": "#/components/responses/429"
          },
          "500": {
            "$ref": "#/components/responses/500"
          }
        },
        "tags": [
          "Домены"
        ]
      },
      "delete": {
        "summary": "Удаление поддомена",
        "description": "Чтобы удалить поддомен, отправьте запрос DELETE на `/api/v1/domains/{fqdn}/subdomains/{subdomain_fqdn}`.",
        "parameters": [
          {
            "$ref": "#/components/parameters/domain-fqdn"
          },
          {
            "$ref": "#/components/parameters/subdomain-fqdn"
          }
        ],
        "x-codeSamples": [
          {
            "lang": "cURL",
            "label": "cURL",
            "source": "curl -X DELETE \\\n  -H \"Content-Type: application/json\" \\\n  -H \"Authorization: Bearer ${TIMEWEB_CLOUD_TOKEN}\" \\\n  \"https://api.timeweb.cloud/api/v1/domains/somedomain.ru/subdomains/sub.somedomain.ru\""
          }
        ],
        "responses": {
          "204": {
            "description": "Поддомен успешно удален"
          },
          "400": {
            "$ref": "#/components/responses/400"
          },
          "401": {
            "$ref": "#/components/responses/401"
          },
          "404": {
            "$ref": "#/components/responses/404"
          },
          "409": {
            "$ref": "#/components/responses/conflict"
          },
          "429": {
            "$ref": "#/components/responses/429"
          },
          "500": {
            "$ref": "#/components/responses/500"
          }
        },
        "tags": [
          "Домены"
        ]
      }
    },
    "/api/v1/domains/{fqdn}/name-servers": {
      "get": {
        "summary": "Получение списка name-серверов домена",
        "description": "Чтобы получить список name-серверов домена, отправьте запрос GET на `/api/v1/domains/{fqdn}/name-servers`.",
        "parameters": [
          {
            "$ref": "#/components/parameters/domain-fqdn"
          }
        ],
        "x-codeSamples": [
          {
            "lang": "cURL",
            "label": "cURL",
            "source": "curl -X GET \\\n  -H \"Content-Type: application/json\" \\\n  -H \"Authorization: Bearer ${TIMEWEB_CLOUD_TOKEN}\" \\\n  \"https://api.timeweb.cloud/api/v1/domains/somedomain.ru/name-servers\""
          }
        ],
        "responses": {
          "200": {
            "description": "Ответ будет представлять собой объект JSON c ключом `name_servers`.",
            "content": {
              "application/json": {
                "schema": {
                  "allOf": [
                    {
                      "type": "object",
                      "properties": {
                        "meta": {
                          "$ref": "#/components/schemas/meta"
                        },
                        "name_servers": {
                          "type": "array",
                          "items": {
                            "$ref": "#/components/schemas/domain-name-server"
                          }
                        }
                      },
                      "required": [
                        "meta",
                        "name_servers"
                      ]
                    },
                    {
                      "type": "object",
                      "properties": {
                        "response_id": {
                          "$ref": "#/components/schemas/response_id"
                        }
                      },
                      "required": [
                        "response_id"
                      ]
                    }
                  ]
                }
              }
            }
          },
          "400": {
            "$ref": "#/components/responses/400"
          },
          "401": {
            "$ref": "#/components/responses/401"
          },
          "404": {
            "$ref": "#/components/responses/404"
          },
          "429": {
            "$ref": "#/components/responses/429"
          },
          "500": {
            "$ref": "#/components/responses/500"
          }
        },
        "tags": [
          "Домены"
        ]
      },
      "put": {
        "summary": "Изменение name-серверов домена",
        "description": "Чтобы изменить name-серверы домена, отправьте запрос PUT на `/api/v1/domains/{fqdn}/name-servers`, задав необходимые атрибуты.\n\nName-серверы будут изменены с использованием предоставленной информации. Тело ответа будет содержать объект JSON с информацией о name-серверах домена.",
        "parameters": [
          {
            "$ref": "#/components/parameters/domain-fqdn"
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/update-domain-name-servers"
              }
            }
          },
          "required": true
        },
        "x-codeSamples": [
          {
            "lang": "cURL",
            "label": "cURL",
            "source": "curl -X PUT \\\n  -H \"Content-Type: application/json\" \\\n  -H \"Authorization: Bearer ${TIMEWEB_CLOUD_TOKEN}\" \\\n  -d '{\"name_servers\":[{\"host\":\"ns1.timeweb.ru\"},{\"host\":\"ns2.timeweb.ru\"}]}' \\\n  \"https://api.timeweb.cloud/api/v1/domains/somedomain.ru/name-servers\""
          }
        ],
        "responses": {
          "200": {
            "description": "Ответ будет представлять собой объект JSON c ключом `name_servers`.",
            "content": {
              "application/json": {
                "schema": {
                  "allOf": [
                    {
                      "type": "object",
                      "properties": {
                        "meta": {
                          "$ref": "#/components/schemas/meta"
                        },
                        "name_servers": {
                          "type": "array",
                          "items": {
                            "$ref": "#/components/schemas/domain-name-server"
                          }
                        }
                      },
                      "required": [
                        "meta",
                        "name_servers"
                      ]
                    },
                    {
                      "type": "object",
                      "properties": {
                        "response_id": {
                          "$ref": "#/components/schemas/response_id"
                        }
                      },
                      "required": [
                        "response_id"
                      ]
                    }
                  ]
                }
              }
            }
          },
          "400": {
            "$ref": "#/components/responses/400"
          },
          "401": {
            "$ref": "#/components/responses/401"
          },
          "404": {
            "$ref": "#/components/responses/404"
          },
          "429": {
            "$ref": "#/components/responses/429"
          },
          "500": {
            "$ref": "#/components/responses/500"
          }
        },
        "tags": [
          "Домены"
        ]
      }
    },
    "/api/v1/domains-requests": {
      "get": {
        "summary": "Получение списка заявок на регистрацию/продление/трансфер домена",
        "description": "Чтобы получить список заявок на регистрацию/продление/трансфер домена, отправьте запрос GET на `/api/v1/domains-requests`.",
        "parameters": [
          {
            "$ref": "#/components/parameters/person-id"
          }
        ],
        "x-codeSamples": [
          {
            "lang": "cURL",
            "label": "cURL",
            "source": "curl -X GET \\\n  -H \"Content-Type: application/json\" \\\n  -H \"Authorization: Bearer ${TIMEWEB_CLOUD_TOKEN}\" \\\n  \"https://api.timeweb.cloud/api/v1/domains-requests\""
          }
        ],
        "responses": {
          "200": {
            "description": "Ответ будет представлять собой объект JSON c ключом `requests`.",
            "content": {
              "application/json": {
                "schema": {
                  "allOf": [
                    {
                      "type": "object",
                      "properties": {
                        "meta": {
                          "$ref": "#/components/schemas/meta"
                        },
                        "requests": {
                          "type": "array",
                          "items": {
                            "$ref": "#/components/schemas/domain-request"
                          }
                        }
                      },
                      "required": [
                        "meta",
                        "requests"
                      ]
                    },
                    {
                      "type": "object",
                      "properties": {
                        "response_id": {
                          "$ref": "#/components/schemas/response_id"
                        }
                      },
                      "required": [
                        "response_id"
                      ]
                    }
                  ]
                }
              }
            }
          },
          "400": {
            "$ref": "#/components/responses/400"
          },
          "401": {
            "$ref": "#/components/responses/401"
          },
          "429": {
            "$ref": "#/components/responses/429"
          },
          "500": {
            "$ref": "#/components/responses/500"
          }
        },
        "tags": [
          "Домены"
        ]
      },
      "post": {
        "summary": "Создание заявки на регистрацию/продление/трансфер домена",
        "description": "Чтобы заявку на регистрацию/продление/трансфер домена, отправьте POST запрос в `api/v1/domains-requests`, задав необходимые атрибуты.\n\nЗаявка будет создана с использованием предоставленной информации. Тело ответа будет содержать объект JSON с информацией о созданной заявке.",
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "oneOf": [
                  {
                    "$ref": "#/components/schemas/register"
                  },
                  {
                    "$ref": "#/components/schemas/prolong"
                  },
                  {
                    "$ref": "#/components/schemas/transfer"
                  }
                ]
              }
            }
          },
          "required": true
        },
        "x-codeSamples": [
          {
            "lang": "cURL",
            "label": "cURL",
            "source": "curl -X POST \\\n  -H \"Content-Type: application/json\" \\\n  -H \"Authorization: Bearer ${TIMEWEB_CLOUD_TOKEN}\" \\\n  -d '{\"action\":\"register\",\"fqdn\":\"somedomain.ru\",\"person_id\":123,\"is_autoprolong_enabled\":true,\"period\":\"P1Y\"}' \\\n  \"https://api.timeweb.cloud/api/v1/domains-requests\""
          }
        ],
        "responses": {
          "201": {
            "description": "Ответ будет представлять собой объект JSON c ключом `request`.",
            "content": {
              "application/json": {
                "schema": {
                  "allOf": [
                    {
                      "type": "object",
                      "properties": {
                        "request": {
                          "$ref": "#/components/schemas/domain-request"
                        }
                      },
                      "required": [
                        "request"
                      ]
                    },
                    {
                      "type": "object",
                      "properties": {
                        "response_id": {
                          "$ref": "#/components/schemas/response_id"
                        }
                      },
                      "required": [
                        "response_id"
                      ]
                    }
                  ]
                }
              }
            }
          },
          "400": {
            "$ref": "#/components/responses/400"
          },
          "401": {
            "$ref": "#/components/responses/401"
          },
          "409": {
            "$ref": "#/components/responses/conflict"
          },
          "429": {
            "$ref": "#/components/responses/429"
          },
          "500": {
            "$ref": "#/components/responses/500"
          }
        },
        "tags": [
          "Домены"
        ]
      }
    },
    "/api/v1/domains-requests/{request_id}": {
      "get": {
        "summary": "Получение заявки на регистрацию/продление/трансфер домена",
        "description": "Чтобы получить заявку на регистрацию/продление/трансфер домена, отправьте запрос GET на `/api/v1/domains-requests/{request_id}`.",
        "parameters": [
          {
            "$ref": "#/components/parameters/request-id"
          }
        ],
        "x-codeSamples": [
          {
            "lang": "cURL",
            "label": "cURL",
            "source": "curl -X GET \\\n  -H \"Content-Type: application/json\" \\\n  -H \"Authorization: Bearer ${TIMEWEB_CLOUD_TOKEN}\" \\\n  \"https://api.timeweb.cloud/api/v1/domains-requests/123\""
          }
        ],
        "responses": {
          "200": {
            "description": "Ответ будет представлять собой объект JSON c ключом `request`.",
            "content": {
              "application/json": {
                "schema": {
                  "allOf": [
                    {
                      "type": "object",
                      "properties": {
                        "request": {
                          "$ref": "#/components/schemas/domain-request"
                        }
                      },
                      "required": [
                        "request"
                      ]
                    },
                    {
                      "type": "object",
                      "properties": {
                        "response_id": {
                          "$ref": "#/components/schemas/response_id"
                        }
                      },
                      "required": [
                        "response_id"
                      ]
                    }
                  ]
                }
              }
            }
          },
          "400": {
            "$ref": "#/components/responses/400"
          },
          "401": {
            "$ref": "#/components/responses/401"
          },
          "404": {
            "$ref": "#/components/responses/404"
          },
          "429": {
            "$ref": "#/components/responses/429"
          },
          "500": {
            "$ref": "#/components/responses/500"
          }
        },
        "tags": [
          "Домены"
        ]
      },
      "patch": {
        "summary": "Оплата/обновление заявки на регистрацию/продление/трансфер домена",
        "description": "Чтобы оплатить/обновить заявку на регистрацию/продление/трансфер домена, отправьте запрос PATCH на `/api/v1/domains-requests/{request_id}`, задав необходимые атрибуты.\n\nЗаявка будет обновлена с использованием предоставленной информации. Тело ответа будет содержать объект JSON с информацией о обновленной заявке.",
        "parameters": [
          {
            "$ref": "#/components/parameters/request-id"
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "oneOf": [
                  {
                    "$ref": "#/components/schemas/use"
                  },
                  {
                    "$ref": "#/components/schemas/invoice"
                  },
                  {
                    "$ref": "#/components/schemas/free"
                  },
                  {
                    "$ref": "#/components/schemas/bonus"
                  }
                ]
              }
            }
          },
          "required": true
        },
        "x-codeSamples": [
          {
            "lang": "cURL",
            "label": "cURL",
            "source": "curl -X PATCH \\\n  -H \"Content-Type: application/json\" \\\n  -H \"Authorization: Bearer ${TIMEWEB_CLOUD_TOKEN}\" \\\n  -d '{\"money_source\":\"use\"}' \\\n  \"https://api.timeweb.cloud/api/v1/domains-requests/123\""
          }
        ],
        "responses": {
          "200": {
            "description": "Ответ будет представлять собой объект JSON c ключом `request`.",
            "content": {
              "application/json": {
                "schema": {
                  "allOf": [
                    {
                      "type": "object",
                      "properties": {
                        "request": {
                          "$ref": "#/components/schemas/domain-request"
                        }
                      },
                      "required": [
                        "request"
                      ]
                    },
                    {
                      "type": "object",
                      "properties": {
                        "response_id": {
                          "$ref": "#/components/schemas/response_id"
                        }
                      },
                      "required": [
                        "response_id"
                      ]
                    }
                  ]
                }
              }
            }
          },
          "400": {
            "$ref": "#/components/responses/400"
          },
          "401": {
            "$ref": "#/components/responses/401"
          },
          "404": {
            "$ref": "#/components/responses/404"
          },
          "409": {
            "$ref": "#/components/responses/conflict"
          },
          "429": {
            "$ref": "#/components/responses/429"
          },
          "500": {
            "$ref": "#/components/responses/500"
          }
        },
        "tags": [
          "Домены"
        ]
      }
    },
    "/api/v1/tlds": {
      "get": {
        "summary": "Получить информацию о доменных зонах",
        "description": "Чтобы получить информацию о доменных зонах, отправьте запрос GET на `/api/v1/tlds`.",
        "parameters": [
          {
            "$ref": "#/components/parameters/is-published"
          },
          {
            "$ref": "#/components/parameters/is-registered"
          }
        ],
        "x-codeSamples": [
          {
            "lang": "cURL",
            "label": "cURL",
            "source": "curl -X GET \\\n  -H \"Content-Type: application/json\" \\\n  -H \"Authorization: Bearer ${TIMEWEB_CLOUD_TOKEN}\" \\\n  \"https://api.timeweb.cloud/api/v1/tlds\""
          }
        ],
        "responses": {
          "200": {
            "description": "Ответ будет представлять собой объект JSON c ключом `top_level_domains`.",
            "content": {
              "application/json": {
                "schema": {
                  "allOf": [
                    {
                      "type": "object",
                      "properties": {
                        "meta": {
                          "$ref": "#/components/schemas/meta"
                        },
                        "top_level_domains": {
                          "type": "array",
                          "items": {
                            "$ref": "#/components/schemas/top-level-domain"
                          }
                        }
                      },
                      "required": [
                        "meta",
                        "top_level_domains"
                      ]
                    },
                    {
                      "type": "object",
                      "properties": {
                        "response_id": {
                          "$ref": "#/components/schemas/response_id"
                        }
                      },
                      "required": [
                        "response_id"
                      ]
                    }
                  ]
                }
              }
            }
          },
          "400": {
            "$ref": "#/components/responses/400"
          },
          "401": {
            "$ref": "#/components/responses/401"
          },
          "429": {
            "$ref": "#/components/responses/429"
          },
          "500": {
            "$ref": "#/components/responses/500"
          }
        },
        "tags": [
          "Домены"
        ]
      }
    },
    "/api/v1/tlds/{tld_id}": {
      "get": {
        "summary": "Получить информацию о доменной зоне по идентификатору",
        "description": "Чтобы получить информацию о доменной зоне по идентификатору, отправьте запрос GET на `/api/v1/tlds/{tld_id}`.",
        "parameters": [
          {
            "$ref": "#/components/parameters/tld-id"
          }
        ],
        "x-codeSamples": [
          {
            "lang": "cURL",
            "label": "cURL",
            "source": "curl -X GET \\\n  -H \"Content-Type: application/json\" \\\n  -H \"Authorization: Bearer ${TIMEWEB_CLOUD_TOKEN}\" \\\n  \"https://api.timeweb.cloud/api/v1/tlds/123\""
          }
        ],
        "responses": {
          "200": {
            "description": "Ответ будет представлять собой объект JSON c ключом `top_level_domain`.",
            "content": {
              "application/json": {
                "schema": {
                  "allOf": [
                    {
                      "type": "object",
                      "properties": {
                        "top_level_domain": {
                          "$ref": "#/components/schemas/top-level-domain"
                        }
                      },
                      "required": [
                        "top_level_domain"
                      ]
                    },
                    {
                      "type": "object",
                      "properties": {
                        "response_id": {
                          "$ref": "#/components/schemas/response_id"
                        }
                      },
                      "required": [
                        "response_id"
                      ]
                    }
                  ]
                }
              }
            }
          },
          "400": {
            "$ref": "#/components/responses/400"
          },
          "401": {
            "$ref": "#/components/responses/401"
          },
          "404": {
            "$ref": "#/components/responses/404"
          },
          "429": {
            "$ref": "#/components/responses/429"
          },
          "500": {
            "$ref": "#/components/responses/500"
          }
        },
        "tags": [
          "Домены"
        ]
      }
    },
    "/api/v1/check-domain/{fqdn}": {
      "get": {
        "summary": "Проверить доступен ли домен для регистрации",
        "description": "Чтобы проверить доступен ли домен для регистрации, отправьте запрос GET на `/api/v1/check-domain/{fqdn}`.",
        "parameters": [
          {
            "$ref": "#/components/parameters/domain-fqdn"
          }
        ],
        "x-codeSamples": [
          {
            "lang": "cURL",
            "label": "cURL",
            "source": "curl -X GET \\\n  -H \"Content-Type: application/json\" \\\n  -H \"Authorization: Bearer ${TIMEWEB_CLOUD_TOKEN}\" \\\n  \"https://api.timeweb.cloud/api/v1/check-domain/somedomain.ru\""
          }
        ],
        "responses": {
          "200": {
            "description": "Ответ будет представлять собой объект JSON c ключом `is_domain_available`.",
            "content": {
              "application/json": {
                "schema": {
                  "allOf": [
                    {
                      "type": "object",
                      "properties": {
                        "is_domain_available": {
                          "description": "Это логическое значение, которое показывает, доступен ли домен для регистрации.",
                          "type": "boolean",
                          "example": true
                        }
                      },
                      "required": [
                        "is_domain_available"
                      ]
                    },
                    {
                      "type": "object",
                      "properties": {
                        "response_id": {
                          "$ref": "#/components/schemas/response_id"
                        }
                      },
                      "required": [
                        "response_id"
                      ]
                    }
                  ]
                }
              }
            }
          },
          "400": {
            "$ref": "#/components/responses/400"
          },
          "401": {
            "$ref": "#/components/responses/401"
          },
          "429": {
            "$ref": "#/components/responses/429"
          },
          "500": {
            "$ref": "#/components/responses/500"
          }
        },
        "tags": [
          "Домены"
        ]
      }
    },
    "/api/v1/add-domain/{fqdn}": {
      "post": {
        "summary": "Добавление домена на аккаунт",
        "description": "Чтобы добавление домена на свой аккаунт, отправьте запрос POST на `/api/v1/add-domain/{fqdn}`.",
        "parameters": [
          {
            "$ref": "#/components/parameters/domain-fqdn"
          }
        ],
        "x-codeSamples": [
          {
            "lang": "cURL",
            "label": "cURL",
            "source": "curl -X POST \\\n  -H \"Content-Type: application/json\" \\\n  -H \"Authorization: Bearer ${TIMEWEB_CLOUD_TOKEN}\" \\\n  \"https://api.timeweb.cloud/api/v1/add-domain/somedomain.ru\""
          }
        ],
        "responses": {
          "204": {
            "description": "Домен успешно добавлен на ваш аккаунт."
          },
          "400": {
            "$ref": "#/components/responses/400"
          },
          "401": {
            "$ref": "#/components/responses/401"
          },
          "409": {
            "$ref": "#/components/responses/conflict"
          },
          "429": {
            "$ref": "#/components/responses/429"
          },
          "500": {
            "$ref": "#/components/responses/500"
          }
        },
        "tags": [
          "Домены"
        ]
      }
    },
    "/api/v1/ssh-keys": {
      "get": {
        "summary": "Получение списка SSH-ключей",
        "description": "Чтобы получить список SSH-ключей, отправьте GET запрос на `/api/v1/ssh-keys`.",
        "x-codeSamples": [
          {
            "lang": "cURL",
            "label": "cURL",
            "source": "curl -X GET \\\n  -H \"Content-Type: application/json\" \\\n  -H \"Authorization: Bearer ${TIMEWEB_CLOUD_TOKEN}\" \\\n  \"https://api.timeweb.cloud/api/v1/ssh-keys\""
          }
        ],
        "responses": {
          "200": {
            "description": "Объект JSON c ключом `ssh_keys`",
            "content": {
              "application/json": {
                "schema": {
                  "allOf": [
                    {
                      "type": "object",
                      "properties": {
                        "meta": {
                          "$ref": "#/components/schemas/meta"
                        },
                        "ssh-keys": {
                          "type": "array",
                          "items": {
                            "$ref": "#/components/schemas/ssh-key"
                          }
                        }
                      },
                      "required": [
                        "ssh-keys",
                        "meta"
                      ]
                    },
                    {
                      "type": "object",
                      "properties": {
                        "response_id": {
                          "$ref": "#/components/schemas/response_id"
                        }
                      },
                      "required": [
                        "response_id"
                      ]
                    }
                  ]
                }
              }
            }
          },
          "400": {
            "$ref": "#/components/responses/400"
          },
          "401": {
            "$ref": "#/components/responses/401"
          },
          "403": {
            "$ref": "#/components/responses/403"
          },
          "404": {
            "$ref": "#/components/responses/404"
          },
          "429": {
            "$ref": "#/components/responses/429"
          },
          "500": {
            "$ref": "#/components/responses/500"
          }
        },
        "tags": [
          "SSH-ключи"
        ]
      },
      "post": {
        "summary": "Создание SSH-ключа",
        "description": "Чтобы создать создать SSH-ключ, отправьте POST запрос в `/api/v1/ssh-keys`, задав необходимые атрибуты.\n\n",
        "x-codeSamples": [
          {
            "lang": "cURL",
            "label": "cURL",
            "source": "curl -X POST \\\n  -H \"Content-Type: application/json\" \\\n  -H \"Authorization: Bearer ${TIMEWEB_CLOUD_TOKEN}\" \\\n  -d '{\n  \"body\": \"\"ssh-dss AAAAB3NzaC1kc3MAAACBALixbc+uF2kuv83LiB3gg200vHJ7hH0QCC77fqlu+5raX6Y1PJZZORwzWbvU6k8gfrmjMRwQFDNncu3aXUiM9TleOBxFsQ2Hg5hDblSr2bnnyVP0jjPzsYye+0Ebaa+IjEqZz8y0qu8zejCpHqhLP/PlRDS9vtTsadrVvNwFFCyhAAAAFQD7m0AZOd/lHraIgBjXJvfN+qGiAQAAAIAdXSV0n47akGC/g0ejkNzHDSdRFf2fR0FsOos/7f5j+QfstijVBMwzA4Ti+dNJv3BQqQv3Bk5X3o5yUTUL+cM6fa4KSyIhGi14RL0kqjJrNjqVAhwjPH8K9aHDouqQEz56UL72+iGhMxwBHBMWq7cZ2k31mmFgEoYgwNcYuNmtlAAAAIBxIebJMItpq3ez5Hg5GyhpnSU7h0kshh+D5UAAlPmJo8OUQH6avQGf6gpxs3CnQ/im/aCKcb/bYm4V5Y9a7Zq+LrZGQZ79GLWsu/oK0HfQiP+oWwzCGmsdIGblsTRzrKU0FFo7zGmyTsBU48OeD76nKsc5EJ9F9wQC3S2KK38Ynw== test@MBP-test.office.timeweb.ru\"\n\",\n  \"is_default\": false,\n  \"name\": \"test\"\n}' \"https://api.timeweb.cloud/api/v1/ssh-keys\""
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "properties": {
                  "body": {
                    "type": "string",
                    "description": "Тело SSH-ключа",
                    "example": "ssh-dss AAAAB3NzaC1kc3MAAACBALixbc+uF2kuv83LiB3gg200vHJ7hH0QCC77fqlu+5raX6Y1PJZZORwzWbvU6k8gfrmjMRwQFDNncu3aXUiM9TleOBxFsQ2Hg5hDblSr2bnnyVP0jjPzsYye+0Ebaa+IjEqZz8y0qu8zejCpHqhLP/PlRDS9vtTsadrVvNwFFCyhAAAAFQD7m0AZOd/lHraIgBjXJvfN+qGiAQAAAIAdXSV0n47akGC/g0ejkNzHDSdRFf2fR0FsOos/7f5j+QfstijVBMwzA4Ti+dNJv3BQqQv3Bk5X3o5yUTUL+cM6fa4KSyIhGi14RL0kqjJrNjqVAhwjPH8K9aHDouqQEz56UL72+iGhMxwBHBMWq7cZ2k31mmFgEoYgwNcYuNmtlAAAAIBxIebJMItpq3ez5Hg5GyhpnSU7h0kshh+D5UAAlPmJo8OUQH6avQGf6gpxs3CnQ/im/aCKcb/bYm4V5Y9a7Zq+LrZGQZ79GLWsu/oK0HfQiP+oWwzCGmsdIGblsTRzrKU0FFo7zGmyTsBU48OeD76nKsc5EJ9F9wQC3S2KK38Ynw== test@MBP-test.office.timeweb.ru"
                  },
                  "is_default": {
                    "type": "boolean",
                    "description": "Будет ли выбираться SSH-ключ по умолчанию при создании сервера\n\n",
                    "example": false
                  },
                  "name": {
                    "type": "string",
                    "description": "Название SSH-ключа",
                    "example": "test"
                  }
                },
                "required": [
                  "body",
                  "is_default",
                  "name"
                ]
              }
            }
          },
          "required": true
        },
        "responses": {
          "201": {
            "description": "Объект JSON c ключом `ssh-key`",
            "content": {
              "application/json": {
                "schema": {
                  "allOf": [
                    {
                      "type": "object",
                      "properties": {
                        "ssh-key": {
                          "$ref": "#/components/schemas/ssh-key"
                        }
                      },
                      "required": [
                        "ssh-key"
                      ]
                    },
                    {
                      "type": "object",
                      "properties": {
                        "response_id": {
                          "$ref": "#/components/schemas/response_id"
                        }
                      },
                      "required": [
                        "response_id"
                      ]
                    }
                  ]
                }
              }
            }
          },
          "400": {
            "$ref": "#/components/responses/400"
          },
          "401": {
            "$ref": "#/components/responses/401"
          },
          "403": {
            "$ref": "#/components/responses/403"
          },
          "409": {
            "$ref": "#/components/responses/conflict"
          },
          "429": {
            "$ref": "#/components/responses/429"
          },
          "500": {
            "$ref": "#/components/responses/500"
          }
        },
        "tags": [
          "SSH-ключи"
        ]
      }
    },
    "/api/v1/ssh-keys/{ssh_key_id}": {
      "get": {
        "summary": "Получение SSH-ключа по уникальному идентификатору",
        "description": "Чтобы получить SSH-ключ, отправьте GET запрос на `/api/v1/ssh-keys/{ssh_key_id}`",
        "x-codeSamples": [
          {
            "lang": "cURL",
            "label": "cURL",
            "source": "curl -X GET \\\n  -H \"Content-Type: application/json\" \\\n  -H \"Authorization: Bearer ${TIMEWEB_CLOUD_TOKEN}\" \\\n  \"https://api.timeweb.cloud/api/v1/ssh-keys/{ssh_key_id}\""
          }
        ],
        "parameters": [
          {
            "$ref": "#/components/parameters/ssh-key-id"
          }
        ],
        "responses": {
          "200": {
            "description": "Объект JSON c ключом `ssh_key`",
            "content": {
              "application/json": {
                "schema": {
                  "allOf": [
                    {
                      "type": "object",
                      "properties": {
                        "meta": {
                          "$ref": "#/components/schemas/meta"
                        },
                        "ssh-key": {
                          "$ref": "#/components/schemas/ssh-key"
                        }
                      },
                      "required": [
                        "ssh-key",
                        "meta"
                      ]
                    },
                    {
                      "type": "object",
                      "properties": {
                        "response_id": {
                          "$ref": "#/components/schemas/response_id"
                        }
                      },
                      "required": [
                        "response_id"
                      ]
                    }
                  ]
                }
              }
            }
          },
          "400": {
            "$ref": "#/components/responses/400"
          },
          "401": {
            "$ref": "#/components/responses/401"
          },
          "403": {
            "$ref": "#/components/responses/403"
          },
          "404": {
            "$ref": "#/components/responses/404"
          },
          "429": {
            "$ref": "#/components/responses/429"
          },
          "500": {
            "$ref": "#/components/responses/500"
          }
        },
        "tags": [
          "SSH-ключи"
        ]
      },
      "patch": {
        "summary": "Изменение SSH-ключа по уникальному идентификатору",
        "description": "Чтобы изменить SSH-ключ, отправьте PATCH запрос на `/api/v1/ssh-keys/{ssh_key_id}`",
        "x-codeSamples": [
          {
            "lang": "cURL",
            "label": "cURL",
            "source": "curl -X PATCH \\\n  -H \"Content-Type: application/json\" \\\n  -H \"Authorization: Bearer ${TIMEWEB_CLOUD_TOKEN}\" \\\n  -d '{\n  \"is_default\": true \n}' \"https://api.timeweb.cloud/api/v1/ssh-keys/{ssh_key_id}\""
          }
        ],
        "parameters": [
          {
            "$ref": "#/components/parameters/ssh-key-id"
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "properties": {
                  "body": {
                    "type": "string",
                    "description": "Тело SSH-ключа",
                    "example": "ssh-dss AAAAB3NzaC1kc3MAAACBALixbc+uF2kuv83LiB3gg200vHJ7hH0QCC77fqlu+5raX6Y1PJZZORwzWbvU6k8gfrmjMRwQFDNncu3aXUiM9TleOBxFsQ2Hg5hDblSr2bnnyVP0jjPzsYye+0Ebaa+IjEqZz8y0qu8zejCpHqhLP/PlRDS9vtTsadrVvNwFFCyhAAAAFQD7m0AZOd/lHraIgBjXJvfN+qGiAQAAAIAdXSV0n47akGC/g0ejkNzHDSdRFf2fR0FsOos/7f5j+QfstijVBMwzA4Ti+dNJv3BQqQv3Bk5X3o5yUTUL+cM6fa4KSyIhGi14RL0kqjJrNjqVAhwjPH8K9aHDouqQEz56UL72+iGhMxwBHBMWq7cZ2k31mmFgEoYgwNcYuNmtlAAAAIBxIebJMItpq3ez5Hg5GyhpnSU7h0kshh+D5UAAlPmJo8OUQH6avQGf6gpxs3CnQ/im/aCKcb/bYm4V5Y9a7Zq+LrZGQZ79GLWsu/oK0HfQiP+oWwzCGmsdIGblsTRzrKU0FFo7zGmyTsBU48OeD76nKsc5EJ9F9wQC3S2KK38Ynw== test@MBP-test.office.timeweb.ru"
                  },
                  "is_default": {
                    "type": "boolean",
                    "description": "Будет ли выбираться SSh-ключ по умолчанию при создании сервера",
                    "example": false
                  },
                  "name": {
                    "type": "string",
                    "description": "Название SSH-ключа",
                    "example": "test"
                  }
                }
              }
            }
          },
          "required": true
        },
        "responses": {
          "200": {
            "description": "Объект JSON c ключом `ssh_key`",
            "content": {
              "application/json": {
                "schema": {
                  "allOf": [
                    {
                      "type": "object",
                      "properties": {
                        "meta": {
                          "$ref": "#/components/schemas/meta"
                        },
                        "ssh-key": {
                          "$ref": "#/components/schemas/ssh-key"
                        }
                      },
                      "required": [
                        "ssh-key",
                        "meta"
                      ]
                    },
                    {
                      "type": "object",
                      "properties": {
                        "response_id": {
                          "$ref": "#/components/schemas/response_id"
                        }
                      },
                      "required": [
                        "response_id"
                      ]
                    }
                  ]
                }
              }
            }
          },
          "400": {
            "$ref": "#/components/responses/400"
          },
          "401": {
            "$ref": "#/components/responses/401"
          },
          "403": {
            "$ref": "#/components/responses/403"
          },
          "404": {
            "$ref": "#/components/responses/404"
          },
          "429": {
            "$ref": "#/components/responses/429"
          },
          "500": {
            "$ref": "#/components/responses/500"
          }
        },
        "tags": [
          "SSH-ключи"
        ]
      },
      "delete": {
        "summary": "Удаление SSH-ключа по уникальному идентификатору",
        "description": "Чтобы удалить SSH-ключ, отправьте DELETE запрос на `/api/v1/ssh-keys/{ssh_key_id}`",
        "x-codeSamples": [
          {
            "lang": "cURL",
            "label": "cURL",
            "source": "curl -X DELETE \\\n  -H \"Content-Type: application/json\" \\\n  -H \"Authorization: Bearer ${TIMEWEB_CLOUD_TOKEN}\" \\\n  \"https://api.timeweb.cloud/api/v1/ssh-keys/{ssh_key_id}\""
          }
        ],
        "parameters": [
          {
            "$ref": "#/components/parameters/ssh-key-id"
          }
        ],
        "responses": {
          "204": {
            "description": "Успешное удаление SSH-ключа"
          },
          "400": {
            "$ref": "#/components/responses/400"
          },
          "401": {
            "$ref": "#/components/responses/401"
          },
          "403": {
            "$ref": "#/components/responses/403"
          },
          "404": {
            "$ref": "#/components/responses/404"
          },
          "429": {
            "$ref": "#/components/responses/429"
          },
          "500": {
            "$ref": "#/components/responses/500"
          }
        },
        "tags": [
          "SSH-ключи"
        ]
      }
    },
    "/api/v1/servers/{server_id}/ssh-keys": {
      "post": {
        "summary": "Добавление SSH-ключей на сервер",
        "description": "Чтобы добавить SSH-ключи на сервер, отправьте POST запрос на `/api/v1/servers/{server_id}/ssh-keys`",
        "x-codeSamples": [
          {
            "lang": "cURL",
            "label": "cURL",
            "source": "curl -X POST \\\n  -H \"Content-Type: application/json\" \\\n  -H \"Authorization: Bearer ${TIMEWEB_CLOUD_TOKEN}\" \\\n  -d '{\n  \"ssh_keys\": [1, 2] \n}' \"https://api.timeweb.cloud/api/v1/servers/{server_id}/ssh-keys\""
          }
        ],
        "parameters": [
          {
            "$ref": "#/components/parameters/server-id"
          }
        ],
        "responses": {
          "204": {
            "description": "Успешное добавление SSH-ключей на сервер"
          },
          "400": {
            "$ref": "#/components/responses/400"
          },
          "401": {
            "$ref": "#/components/responses/401"
          },
          "403": {
            "$ref": "#/components/responses/403"
          },
          "404": {
            "$ref": "#/components/responses/404"
          },
          "429": {
            "$ref": "#/components/responses/429"
          },
          "500": {
            "$ref": "#/components/responses/500"
          }
        },
        "tags": [
          "SSH-ключи"
        ]
      }
    },
    "/api/v1/servers/{server_id}/ssh-keys/{ssh_key_id}": {
      "delete": {
        "summary": "Удаление SSH-ключей с сервера",
        "description": "Чтобы удалить SSH-ключ с сервера, отправьте DELETE запрос на `/api/v1/servers/{server_id}/ssh-keys/{ssh_key_id}`",
        "x-codeSamples": [
          {
            "lang": "cURL",
            "label": "cURL",
            "source": "curl -X DELETE \\\n  -H \"Content-Type: application/json\" \\\n  -H \"Authorization: Bearer ${TIMEWEB_CLOUD_TOKEN}\" \\\n  \"https://api.timeweb.cloud/api/v1/servers/{server_id}/ssh-keys/{ssh_key_id}\""
          }
        ],
        "parameters": [
          {
            "$ref": "#/components/parameters/server-id"
          },
          {
            "$ref": "#/components/parameters/ssh-key-id"
          }
        ],
        "responses": {
          "204": {
            "description": "Успешное удаление SSH-ключа с сервера"
          },
          "400": {
            "$ref": "#/components/responses/400"
          },
          "401": {
            "$ref": "#/components/responses/401"
          },
          "403": {
            "$ref": "#/components/responses/403"
          },
          "404": {
            "$ref": "#/components/responses/404"
          },
          "429": {
            "$ref": "#/components/responses/429"
          },
          "500": {
            "$ref": "#/components/responses/500"
          }
        },
        "tags": [
          "SSH-ключи"
        ]
      }
    }
  },
  "components": {
    "responses": {
      "400": {
        "$ref": "#/components/responses/bad-request"
      },
      "401": {
        "$ref": "#/components/responses/unauthorized"
      },
      "403": {
        "$ref": "#/components/responses/forbidden"
      },
      "404": {
        "$ref": "#/components/responses/not-found"
      },
      "409": {
        "$ref": "#/components/responses/conflict"
      },
      "429": {
        "$ref": "#/components/responses/too-many-requests"
      },
      "500": {
        "$ref": "#/components/responses/internal-server-error"
      },
      "conflict": {
        "description": "Конфликт",
        "content": {
          "application/json": {
            "schema": {
              "type": "object",
              "properties": {
                "status_code": {
                  "type": "number",
                  "example": 409,
                  "description": "Короткий идентификатор, соответствующий возвращаемому коду состояния HTTP."
                },
                "message": {
                  "description": "Сообщение, предоставляющее дополнительную информацию об ошибке, в том числе сведения, помогающие устранить ее, когда это возможно.",
                  "oneOf": [
                    {
                      "type": "string"
                    },
                    {
                      "type": "array",
                      "items": {
                        "type": "string"
                      }
                    }
                  ],
                  "example": "Conflict"
                },
                "error_code": {
                  "type": "string",
                  "example": "conflict",
                  "description": "Краткое описание ошибки HTTP на основе статуса."
                },
                "response_id": {
                  "$ref": "#/components/schemas/response-id_response_id"
                }
              },
              "required": [
                "status_code",
                "error_code",
                "response_id"
              ]
            }
          }
        }
      },
      "bad-request": {
        "description": "Некорректный запрос",
        "content": {
          "application/json": {
            "schema": {
              "type": "object",
              "properties": {
                "status_code": {
                  "type": "number",
                  "description": "Короткий идентификатор, соответствующий возвращаемому коду состояния HTTP.",
                  "example": 400
                },
                "message": {
                  "example": "Value must be a number conforming to the specified constraints",
                  "description": "Сообщение, предоставляющее дополнительную информацию об ошибке, в том числе сведения, помогающие устранить ее, когда это возможно.",
                  "oneOf": [
                    {
                      "type": "string",
                      "description": " "
                    },
                    {
                      "type": "array",
                      "items": {
                        "type": "string"
                      }
                    }
                  ]
                },
                "error_code": {
                  "type": "string",
                  "example": "bad_request",
                  "description": "Краткое описание ошибки HTTP на основе статуса."
                },
                "response_id": {
                  "$ref": "#/components/schemas/response_id"
                }
              },
              "required": [
                "status_code",
                "error_code",
                "response_id"
              ]
            }
          }
        }
      },
      "unauthorized": {
        "description": "Не авторизован",
        "content": {
          "application/json": {
            "schema": {
              "type": "object",
              "properties": {
                "status_code": {
                  "type": "number",
                  "description": "Короткий идентификатор, соответствующий возвращаемому коду состояния HTTP.",
                  "example": 401
                },
                "message": {
                  "description": "Сообщение, предоставляющее дополнительную информацию об ошибке, в том числе сведения, помогающие устранить ее, когда это возможно.",
                  "oneOf": [
                    {
                      "type": "string"
                    },
                    {
                      "type": "array",
                      "items": {
                        "type": "string"
                      }
                    }
                  ],
                  "example": "Unauthorized"
                },
                "error_code": {
                  "type": "string",
                  "example": "unauthorized",
                  "description": "Краткое описание ошибки HTTP на основе статуса."
                },
                "response_id": {
                  "$ref": "#/components/schemas/response_id"
                }
              },
              "required": [
                "status_code",
                "error_code",
                "response_id"
              ]
            }
          }
        }
      },
      "forbidden": {
        "description": "Запрещено",
        "content": {
          "application/json": {
            "schema": {
              "type": "object",
              "properties": {
                "status_code": {
                  "type": "number",
                  "example": 403,
                  "description": "Короткий идентификатор, соответствующий возвращаемому коду состояния HTTP."
                },
                "message": {
                  "description": "Сообщение, предоставляющее дополнительную информацию об ошибке, в том числе сведения, помогающие устранить ее, когда это возможно.",
                  "oneOf": [
                    {
                      "type": "string"
                    },
                    {
                      "type": "array",
                      "items": {
                        "type": "string"
                      }
                    }
                  ],
                  "example": "Forbidden"
                },
                "error_code": {
                  "type": "string",
                  "example": "forbidden",
                  "description": "Краткое описание ошибки HTTP на основе статуса."
                },
                "response_id": {
                  "$ref": "#/components/schemas/response_id"
                }
              },
              "required": [
                "status_code",
                "error_code",
                "response_id"
              ]
            }
          }
        }
      },
      "not-found": {
        "description": "Не найдено",
        "content": {
          "application/json": {
            "schema": {
              "type": "object",
              "properties": {
                "status_code": {
                  "type": "number",
                  "example": 404,
                  "description": "Короткий идентификатор, соответствующий возвращаемому коду состояния HTTP."
                },
                "message": {
                  "description": "Сообщение, предоставляющее дополнительную информацию об ошибке, в том числе сведения, помогающие устранить ее, когда это возможно.",
                  "oneOf": [
                    {
                      "type": "string"
                    },
                    {
                      "type": "array",
                      "items": {
                        "type": "string"
                      }
                    }
                  ],
                  "example": "Resource not found"
                },
                "error_code": {
                  "type": "string",
                  "example": "not_found",
                  "description": "Краткое описание ошибки HTTP на основе статуса."
                },
                "response_id": {
                  "$ref": "#/components/schemas/response_id"
                }
              },
              "required": [
                "status_code",
                "error_code",
                "response_id"
              ]
            }
          }
        }
      },
      "too-many-requests": {
        "description": "Слишком много запросов",
        "content": {
          "application/json": {
            "schema": {
              "type": "object",
              "properties": {
                "status_code": {
                  "type": "number",
                  "example": 429,
                  "description": "Короткий идентификатор, соответствующий возвращаемому коду состояния HTTP."
                },
                "message": {
                  "description": "Сообщение, предоставляющее дополнительную информацию об ошибке, в том числе сведения, помогающие устранить ее, когда это возможно.",
                  "oneOf": [
                    {
                      "type": "string"
                    },
                    {
                      "type": "array",
                      "items": {
                        "type": "string"
                      }
                    }
                  ],
                  "example": "Too many requests"
                },
                "error_code": {
                  "type": "string",
                  "example": "too_many_requests",
                  "description": "Краткое описание ошибки HTTP на основе статуса."
                },
                "response_id": {
                  "$ref": "#/components/schemas/response_id"
                }
              },
              "required": [
                "status_code",
                "error_code",
                "response_id"
              ]
            }
          }
        }
      },
      "internal-server-error": {
        "description": "Внутренняя ошибка сервера",
        "content": {
          "application/json": {
            "schema": {
              "type": "object",
              "properties": {
                "status_code": {
                  "type": "number",
                  "example": 500,
                  "description": "Короткий идентификатор, соответствующий возвращаемому коду состояния HTTP."
                },
                "message": {
                  "description": "Сообщение, предоставляющее дополнительную информацию об ошибке, в том числе сведения, помогающие устранить ее, когда это возможно.",
                  "oneOf": [
                    {
                      "type": "string"
                    },
                    {
                      "type": "array",
                      "items": {
                        "type": "string"
                      }
                    }
                  ],
                  "example": "Internal server error"
                },
                "error_code": {
                  "type": "string",
                  "example": "internal_server_error",
                  "description": "Краткое описание ошибки HTTP на основе статуса."
                },
                "response_id": {
                  "$ref": "#/components/schemas/response_id"
                }
              },
              "required": [
                "status_code",
                "error_code",
                "response_id"
              ]
            }
          }
        }
      }
    },
    "securitySchemes": {
      "Bearer": {
        "type": "http",
        "scheme": "bearer",
        "bearerFormat": "JWT"
      },
      "Basic": {
        "type": "http",
        "scheme": "basic"
      },
      "ApiKey": {
        "type": "apiKey",
        "in": "header",
        "name": "X-API-Key"
      }
    },
    "schemas": {
      "response_id": {
        "description": "Идентификатор запроса, который можно указывать при обращении в службу технической поддержки, чтобы помочь определить проблему.",
        "type": "string",
        "format": "uuid",
        "example": "15095f25-aac3-4d60-a788-96cb5136f186"
      },
      "finances": {
        "description": "Платежная информация",
        "type": "object",
        "properties": {
          "balance": {
            "type": "number",
            "description": "Баланс аккаунта.",
            "example": 7378.3
          },
          "currency": {
            "type": "string",
            "description": "Валюта, которая используется на аккаунте.",
            "example": "RUB"
          },
          "discount_end_date_at": {
            "type": "string",
            "nullable": true,
            "description": "Значение времени, указанное в комбинированном формате даты и времени ISO8601, которое представляет, когда заканчивается скидка для аккаунта.",
            "example": "2021-02-25T11:04:15Z"
          },
          "discount_percent": {
            "type": "number",
            "description": "Процент скидки для аккаунта.",
            "example": 5
          },
          "hourly_cost": {
            "type": "number",
            "description": "Стоимость услуг на аккаунте в час.",
            "example": 33.192622950819676
          },
          "hourly_fee": {
            "type": "number",
            "description": "Абонентская плата в час (с учетом скидок).",
            "example": 33.192622950819676
          },
          "monthly_cost": {
            "type": "number",
            "description": "Стоимость услуг на аккаунте в месяц.",
            "example": 24297
          },
          "monthly_fee": {
            "type": "number",
            "description": "Абонентская плата в месяц (с учетом скидок).",
            "example": 24297
          },
          "total_paid": {
            "type": "number",
            "description": "Общая сумма платежей на аккаунте.",
            "example": 29191.51
          },
          "hours_left": {
            "type": "number",
            "nullable": true,
            "description": "Сколько часов работы услуг оплачено на аккаунте.",
            "example": 10
          },
          "autopay_card_info": {
            "type": "string",
            "nullable": true,
            "description": "Информация о карте, используемой для автоплатежей.",
            "example": "553611XXXXXX1111"
          }
        },
        "required": [
          "balance",
          "currency",
          "discount_end_date_at",
          "discount_percent",
          "hourly_cost",
          "hourly_fee",
          "monthly_cost",
          "monthly_fee",
          "total_paid",
          "hours_left",
          "autopay_card_info"
        ]
      },
      "status": {
        "description": "Статус аккаунта",
        "type": "object",
        "properties": {
          "is_blocked": {
            "type": "boolean",
            "description": "Это логическое значение, которое показывает, заблокирован ли аккаунт.",
            "example": false
          },
          "is_
Clone this wiki locally