{
  "openapi": "3.1.0",
  "info": {
    "title": "Yandex Music API",
    "version": "3.2.0",
    "description": "Неофициальное описание API Яндекс Музыки, сгенерированное автоматически из Python-библиотеки\n**[yandex-music](https://github.com/MarshalX/yandex-music-api)**. Все методы ниже уже реализованы в библиотеке: синхронный\nи асинхронный клиенты, типизированные модели ответов, [Ynison](https://ym.marshal.dev/ynison) и [сессии радио](https://ym.marshal.dev/radio).\n\n```bash\npip install yandex-music\n```\n\n```python\nfrom yandex_music import Client\n\nclient = Client('TOKEN').init()\nclient.users_likes_tracks()[0].fetch_track().download('example.mp3')\n```\n\n- 📖 [Документация библиотеки](https://ym.marshal.dev)\n- ⭐ [Исходный код на GitHub](https://github.com/MarshalX/yandex-music-api)\n- 📦 [Пакет на PyPI](https://pypi.org/project/yandex-music)\n- 💬 [Telegram-чат сообщества](https://t.me/yandex_music_api)\n\n## Ограничения\n\nОписание построено автоматически по коду библиотеки, поэтому возможны неточности:\n\n- Имена полей ответов приведены к camelCase. Часть ключей API на самом деле в kebab-case, например `bar-below`.\n- Поля тела запроса описаны как строки, без точных типов.\n- В примерах кода вместо значений аргументов указано `...`.\n- Если один эндпоинт используют несколько методов библиотеки, он описан один раз,\n  а остальные методы перечислены в поле `x-library-methods`.\n- Отправка запросов прямо со страницы отключена, для вызовов используйте библиотеку.\n\nНашли ошибку? Создайте [issue на GitHub](https://github.com/MarshalX/yandex-music-api/issues).\n\nАвтор: [Ilya (Marshal)](https://github.com/MarshalX) 🦁\n\nЕсли библиотека или это описание пригодились, поставьте ⭐ [репозиторию на GitHub](https://github.com/MarshalX/yandex-music-api).\n",
    "contact": {
      "name": "Ilya (Marshal)",
      "url": "https://github.com/MarshalX"
    },
    "license": {
      "name": "LGPL-3.0",
      "identifier": "LGPL-3.0-only"
    }
  },
  "externalDocs": {
    "description": "Документация библиотеки",
    "url": "https://ym.marshal.dev"
  },
  "servers": [
    {
      "url": "https://api.music.yandex.net"
    }
  ],
  "security": [
    {
      "OAuth": []
    }
  ],
  "tags": [
    {
      "name": "OAuth Device Flow",
      "x-displayName": "🔑 OAuth Device Flow",
      "description": "Миксин для получения OAuth-токена Яндекса без сторонних инструментов."
    },
    {
      "name": "Авторы контента",
      "x-displayName": "👥 Авторы контента",
      "description": "Миксин для методов, связанных с получением участников создания контента."
    },
    {
      "name": "Аккаунт",
      "x-displayName": "👤 Аккаунт",
      "description": "Миксин для методов, связанных с аккаунтом и настройками."
    },
    {
      "name": "Альбомы",
      "x-displayName": "💿 Альбомы",
      "description": "Миксин для методов, связанных с альбомами."
    },
    {
      "name": "Артисты",
      "x-displayName": "🎤 Артисты",
      "description": "Миксин для методов, связанных с артистами."
    },
    {
      "name": "Видеоклипы",
      "x-displayName": "🎬 Видеоклипы",
      "description": "Миксин для методов, связанных с видеоклипами."
    },
    {
      "name": "Волна",
      "x-displayName": "🌊 Волна",
      "description": "Миксин для методов, связанных с волной (последняя волна пользователя и её настройки)."
    },
    {
      "name": "Дисклеймеры",
      "x-displayName": "🚫 Дисклеймеры",
      "description": "Миксин для методов, связанных с получением дисклеймеров контента."
    },
    {
      "name": "Закреплённые",
      "x-displayName": "📌 Закреплённые",
      "description": "Миксин для методов, связанных с закреплёнными элементами."
    },
    {
      "name": "История прослушивания",
      "x-displayName": "🕘 История прослушивания",
      "description": "Миксин для методов, связанных с историей прослушивания."
    },
    {
      "name": "Концерты",
      "x-displayName": "🎫 Концерты",
      "description": "Миксин для методов, связанных с концертами и афишей."
    },
    {
      "name": "Лайки и дизлайки",
      "x-displayName": "👍 Лайки и дизлайки",
      "description": "Миксин для методов, связанных с лайками и дизлайками."
    },
    {
      "name": "Лейблы",
      "x-displayName": "🏢 Лейблы",
      "description": "Миксин для методов, связанных с лейблами."
    },
    {
      "name": "Лендинг и фид",
      "x-displayName": "🏠 Лендинг и фид",
      "description": "Миксин для методов, связанных с лендингом и фидом."
    },
    {
      "name": "Метатеги",
      "x-displayName": "🔖 Метатеги",
      "description": "Миксин для методов, связанных с метатегами (подборки по настроениям, занятиям, жанрам и эпохам)."
    },
    {
      "name": "Очередь",
      "x-displayName": "📋 Очередь",
      "description": "Миксин для методов, связанных с очередью прослушивания."
    },
    {
      "name": "Плейлисты",
      "x-displayName": "🎶 Плейлисты",
      "description": "Миксин для методов, связанных с плейлистами."
    },
    {
      "name": "Поиск",
      "x-displayName": "🔍 Поиск",
      "description": "Миксин для методов поиска."
    },
    {
      "name": "Предсохранения",
      "x-displayName": "⏳ Предсохранения",
      "description": "Миксин для методов, связанных с предсохранениями альбомов."
    },
    {
      "name": "Радио",
      "x-displayName": "📻 Радио",
      "description": "Миксин для методов, связанных с радио (rotor)."
    },
    {
      "name": "Сессии радио",
      "x-displayName": "📡 Сессии радио",
      "description": "Миксин для методов, связанных с сессиями радио (rotor session) и комбинированными сессиями (треки и клипы)."
    },
    {
      "name": "Треки",
      "x-displayName": "🎵 Треки",
      "description": "Миксин для методов, связанных с треками."
    }
  ],
  "paths": {
    "/account/consume-promo-code": {
      "post": {
        "operationId": "consume_promo_code",
        "summary": "Активация промо-кода.",
        "description": "Метод библиотеки: [`Client.consume_promo_code`](https://ym.marshal.dev/yandex_music._client.account/#yandex_music._client.account.AccountMixin.consume_promo_code)",
        "tags": [
          "Аккаунт"
        ],
        "parameters": [
          {
            "$ref": "#/components/parameters/X-Yandex-Music-Client"
          },
          {
            "$ref": "#/components/parameters/Accept-Language"
          }
        ],
        "requestBody": {
          "content": {
            "application/x-www-form-urlencoded": {
              "schema": {
                "type": "object",
                "properties": {
                  "code": {
                    "type": "string",
                    "description": "Промо-код."
                  },
                  "language": {
                    "type": "string",
                    "description": "Язык ответа API в ISO 639-1. По умолчанию язык клиента."
                  }
                }
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Успешный ответ.",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "invocationInfo": {
                      "$ref": "#/components/schemas/InvocationInfo"
                    },
                    "result": {
                      "$ref": "#/components/schemas/PromoCodeStatus"
                    }
                  }
                }
              }
            }
          }
        },
        "x-codeSamples": [
          {
            "lang": "python",
            "label": "yandex-music",
            "source": "# pip install yandex-music\nfrom yandex_music import Client\n\nclient = Client('TOKEN').init()\nclient.consume_promo_code(code=...)"
          },
          {
            "lang": "python",
            "label": "yandex-music (async)",
            "source": "# pip install yandex-music\nfrom yandex_music import ClientAsync\n\nclient = await ClientAsync('TOKEN').init()\nawait client.consume_promo_code(code=...)"
          }
        ]
      }
    },
    "/account/experiments": {
      "get": {
        "operationId": "account_experiments",
        "summary": "Получение значений экспериментальных функций аккаунта.",
        "description": "Метод библиотеки: [`Client.account_experiments`](https://ym.marshal.dev/yandex_music._client.account/#yandex_music._client.account.AccountMixin.account_experiments)",
        "tags": [
          "Аккаунт"
        ],
        "parameters": [
          {
            "$ref": "#/components/parameters/X-Yandex-Music-Client"
          },
          {
            "$ref": "#/components/parameters/Accept-Language"
          }
        ],
        "responses": {
          "200": {
            "description": "Успешный ответ.",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "invocationInfo": {
                      "$ref": "#/components/schemas/InvocationInfo"
                    },
                    "result": {
                      "$ref": "#/components/schemas/Experiments"
                    }
                  }
                }
              }
            }
          }
        },
        "x-codeSamples": [
          {
            "lang": "python",
            "label": "yandex-music",
            "source": "# pip install yandex-music\nfrom yandex_music import Client\n\nclient = Client('TOKEN').init()\nclient.account_experiments()"
          },
          {
            "lang": "python",
            "label": "yandex-music (async)",
            "source": "# pip install yandex-music\nfrom yandex_music import ClientAsync\n\nclient = await ClientAsync('TOKEN').init()\nawait client.account_experiments()"
          }
        ]
      }
    },
    "/account/experiments/details": {
      "get": {
        "operationId": "account_experiments_details",
        "summary": "Получение детальной информации об экспериментальных функциях аккаунта.",
        "description": "Метод библиотеки: [`Client.account_experiments_details`](https://ym.marshal.dev/yandex_music._client.account/#yandex_music._client.account.AccountMixin.account_experiments_details)",
        "tags": [
          "Аккаунт"
        ],
        "parameters": [
          {
            "$ref": "#/components/parameters/X-Yandex-Music-Client"
          },
          {
            "$ref": "#/components/parameters/Accept-Language"
          }
        ],
        "responses": {
          "200": {
            "description": "Успешный ответ.",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "invocationInfo": {
                      "$ref": "#/components/schemas/InvocationInfo"
                    },
                    "result": {
                      "$ref": "#/components/schemas/ExperimentsDetails"
                    }
                  }
                }
              }
            }
          }
        },
        "x-codeSamples": [
          {
            "lang": "python",
            "label": "yandex-music",
            "source": "# pip install yandex-music\nfrom yandex_music import Client\n\nclient = Client('TOKEN').init()\nclient.account_experiments_details()"
          },
          {
            "lang": "python",
            "label": "yandex-music (async)",
            "source": "# pip install yandex-music\nfrom yandex_music import ClientAsync\n\nclient = await ClientAsync('TOKEN').init()\nawait client.account_experiments_details()"
          }
        ]
      }
    },
    "/account/settings": {
      "get": {
        "operationId": "account_settings",
        "summary": "Получение настроек текущего пользователя.",
        "description": "Метод библиотеки: [`Client.account_settings`](https://ym.marshal.dev/yandex_music._client.account/#yandex_music._client.account.AccountMixin.account_settings)",
        "tags": [
          "Аккаунт"
        ],
        "parameters": [
          {
            "$ref": "#/components/parameters/X-Yandex-Music-Client"
          },
          {
            "$ref": "#/components/parameters/Accept-Language"
          }
        ],
        "responses": {
          "200": {
            "description": "Успешный ответ.",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "invocationInfo": {
                      "$ref": "#/components/schemas/InvocationInfo"
                    },
                    "result": {
                      "$ref": "#/components/schemas/UserSettings"
                    }
                  }
                }
              }
            }
          }
        },
        "x-codeSamples": [
          {
            "lang": "python",
            "label": "yandex-music",
            "source": "# pip install yandex-music\nfrom yandex_music import Client\n\nclient = Client('TOKEN').init()\nclient.account_settings()"
          },
          {
            "lang": "python",
            "label": "yandex-music (async)",
            "source": "# pip install yandex-music\nfrom yandex_music import ClientAsync\n\nclient = await ClientAsync('TOKEN').init()\nawait client.account_settings()"
          }
        ]
      },
      "post": {
        "operationId": "account_settings_set",
        "summary": "Изменение настроек текущего пользователя.",
        "description": "Метод библиотеки: [`Client.account_settings_set`](https://ym.marshal.dev/yandex_music._client.account/#yandex_music._client.account.AccountMixin.account_settings_set)",
        "tags": [
          "Аккаунт"
        ],
        "parameters": [
          {
            "$ref": "#/components/parameters/X-Yandex-Music-Client"
          },
          {
            "$ref": "#/components/parameters/Accept-Language"
          }
        ],
        "responses": {
          "200": {
            "description": "Успешный ответ.",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "invocationInfo": {
                      "$ref": "#/components/schemas/InvocationInfo"
                    },
                    "result": {
                      "$ref": "#/components/schemas/UserSettings"
                    }
                  }
                }
              }
            }
          }
        },
        "x-codeSamples": [
          {
            "lang": "python",
            "label": "yandex-music",
            "source": "# pip install yandex-music\nfrom yandex_music import Client\n\nclient = Client('TOKEN').init()\nclient.account_settings_set()"
          },
          {
            "lang": "python",
            "label": "yandex-music (async)",
            "source": "# pip install yandex-music\nfrom yandex_music import ClientAsync\n\nclient = await ClientAsync('TOKEN').init()\nawait client.account_settings_set()"
          }
        ]
      }
    },
    "/account/status": {
      "get": {
        "operationId": "account_status",
        "summary": "Получение статуса аккаунта. Нет обязательных параметров.",
        "description": "Метод библиотеки: [`Client.account_status`](https://ym.marshal.dev/yandex_music._client.account/#yandex_music._client.account.AccountMixin.account_status)",
        "tags": [
          "Аккаунт"
        ],
        "parameters": [
          {
            "$ref": "#/components/parameters/X-Yandex-Music-Client"
          },
          {
            "$ref": "#/components/parameters/Accept-Language"
          }
        ],
        "responses": {
          "200": {
            "description": "Успешный ответ.",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "invocationInfo": {
                      "$ref": "#/components/schemas/InvocationInfo"
                    },
                    "result": {
                      "$ref": "#/components/schemas/Status"
                    }
                  }
                }
              }
            }
          }
        },
        "x-codeSamples": [
          {
            "lang": "python",
            "label": "yandex-music",
            "source": "# pip install yandex-music\nfrom yandex_music import Client\n\nclient = Client('TOKEN').init()\nclient.account_status()"
          },
          {
            "lang": "python",
            "label": "yandex-music (async)",
            "source": "# pip install yandex-music\nfrom yandex_music import ClientAsync\n\nclient = await ClientAsync('TOKEN').init()\nawait client.account_status()"
          }
        ]
      }
    },
    "/after-track": {
      "get": {
        "operationId": "after_track",
        "summary": "Получение рекламы или шота от Алисы после трека.",
        "description": "Метод библиотеки: [`Client.after_track`](https://ym.marshal.dev/yandex_music._client.tracks/#yandex_music._client.tracks.TracksMixin.after_track)",
        "tags": [
          "Треки"
        ],
        "parameters": [
          {
            "$ref": "#/components/parameters/X-Yandex-Music-Client"
          },
          {
            "$ref": "#/components/parameters/Accept-Language"
          },
          {
            "name": "from",
            "in": "query",
            "required": false,
            "description": "Место, с которого попали в контекст.",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "prevTrackId",
            "in": "query",
            "required": false,
            "description": "Уникальный идентификатор предыдущего трека.",
            "schema": {
              "type": [
                "string",
                "integer"
              ]
            }
          },
          {
            "name": "nextTrackId",
            "in": "query",
            "required": false,
            "description": "Уникальный идентификатор следующего трека.",
            "schema": {
              "type": [
                "string",
                "integer"
              ]
            }
          },
          {
            "name": "context",
            "in": "query",
            "required": false,
            "description": "Место, откуда было вызвано получение.",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "contextItem",
            "in": "query",
            "required": false,
            "description": "Уникальный идентификатор контекста.",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "types",
            "in": "query",
            "required": false,
            "description": "Тип того, что вернуть после трека.",
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Успешный ответ.",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "invocationInfo": {
                      "$ref": "#/components/schemas/InvocationInfo"
                    },
                    "result": {
                      "$ref": "#/components/schemas/ShotEvent"
                    }
                  }
                }
              }
            }
          }
        },
        "x-codeSamples": [
          {
            "lang": "python",
            "label": "yandex-music",
            "source": "# pip install yandex-music\nfrom yandex_music import Client\n\nclient = Client('TOKEN').init()\nclient.after_track(next_track_id=..., context_item=...)"
          },
          {
            "lang": "python",
            "label": "yandex-music (async)",
            "source": "# pip install yandex-music\nfrom yandex_music import ClientAsync\n\nclient = await ClientAsync('TOKEN').init()\nawait client.after_track(next_track_id=..., context_item=...)"
          }
        ]
      }
    },
    "/albums": {
      "post": {
        "operationId": "albums",
        "summary": "Получение альбома/альбомов.",
        "description": "Метод библиотеки: [`Client.albums`](https://ym.marshal.dev/yandex_music._client.albums/#yandex_music._client.albums.AlbumsMixin.albums)",
        "tags": [
          "Альбомы"
        ],
        "parameters": [
          {
            "$ref": "#/components/parameters/X-Yandex-Music-Client"
          },
          {
            "$ref": "#/components/parameters/Accept-Language"
          }
        ],
        "requestBody": {
          "content": {
            "application/x-www-form-urlencoded": {
              "schema": {
                "type": "object",
                "properties": {
                  "album-ids": {
                    "type": "string",
                    "description": ""
                  }
                }
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Успешный ответ.",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "invocationInfo": {
                      "$ref": "#/components/schemas/InvocationInfo"
                    },
                    "result": {
                      "type": "array",
                      "items": {
                        "$ref": "#/components/schemas/Album"
                      }
                    }
                  }
                }
              }
            }
          }
        },
        "x-codeSamples": [
          {
            "lang": "python",
            "label": "yandex-music",
            "source": "# pip install yandex-music\nfrom yandex_music import Client\n\nclient = Client('TOKEN').init()\nclient.albums(album_ids=...)"
          },
          {
            "lang": "python",
            "label": "yandex-music (async)",
            "source": "# pip install yandex-music\nfrom yandex_music import ClientAsync\n\nclient = await ClientAsync('TOKEN').init()\nawait client.albums(album_ids=...)"
          }
        ]
      }
    },
    "/albums/{album_id}/disclaimer": {
      "get": {
        "operationId": "albums_disclaimer",
        "summary": "Получение дисклеймера альбома.",
        "description": "Метод библиотеки: [`Client.albums_disclaimer`](https://ym.marshal.dev/yandex_music._client.disclaimers/#yandex_music._client.disclaimers.DisclaimersMixin.albums_disclaimer)",
        "tags": [
          "Дисклеймеры"
        ],
        "parameters": [
          {
            "$ref": "#/components/parameters/X-Yandex-Music-Client"
          },
          {
            "$ref": "#/components/parameters/Accept-Language"
          },
          {
            "name": "album_id",
            "in": "path",
            "required": true,
            "description": "Уникальный идентификатор альбома.",
            "schema": {
              "type": [
                "string",
                "integer"
              ]
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Успешный ответ.",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "invocationInfo": {
                      "$ref": "#/components/schemas/InvocationInfo"
                    },
                    "result": {
                      "$ref": "#/components/schemas/Disclaimer"
                    }
                  }
                }
              }
            }
          }
        },
        "x-codeSamples": [
          {
            "lang": "python",
            "label": "yandex-music",
            "source": "# pip install yandex-music\nfrom yandex_music import Client\n\nclient = Client('TOKEN').init()\nclient.albums_disclaimer(album_id=...)"
          },
          {
            "lang": "python",
            "label": "yandex-music (async)",
            "source": "# pip install yandex-music\nfrom yandex_music import ClientAsync\n\nclient = await ClientAsync('TOKEN').init()\nawait client.albums_disclaimer(album_id=...)"
          }
        ]
      }
    },
    "/albums/{album_id}/similar-entities": {
      "get": {
        "operationId": "albums_similar_entities",
        "summary": "Получение похожих сущностей для альбома.",
        "description": "Метод библиотеки: [`Client.albums_similar_entities`](https://ym.marshal.dev/yandex_music._client.albums/#yandex_music._client.albums.AlbumsMixin.albums_similar_entities)",
        "tags": [
          "Альбомы"
        ],
        "parameters": [
          {
            "$ref": "#/components/parameters/X-Yandex-Music-Client"
          },
          {
            "$ref": "#/components/parameters/Accept-Language"
          },
          {
            "name": "album_id",
            "in": "path",
            "required": true,
            "description": "Уникальный идентификатор альбома.",
            "schema": {
              "type": [
                "string",
                "integer"
              ]
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Успешный ответ.",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "invocationInfo": {
                      "$ref": "#/components/schemas/InvocationInfo"
                    },
                    "result": {
                      "$ref": "#/components/schemas/AlbumSimilarEntities"
                    }
                  }
                }
              }
            }
          }
        },
        "x-codeSamples": [
          {
            "lang": "python",
            "label": "yandex-music",
            "source": "# pip install yandex-music\nfrom yandex_music import Client\n\nclient = Client('TOKEN').init()\nclient.albums_similar_entities(album_id=...)"
          },
          {
            "lang": "python",
            "label": "yandex-music (async)",
            "source": "# pip install yandex-music\nfrom yandex_music import ClientAsync\n\nclient = await ClientAsync('TOKEN').init()\nawait client.albums_similar_entities(album_id=...)"
          }
        ]
      }
    },
    "/albums/{album_id}/trailer": {
      "get": {
        "operationId": "albums_trailer",
        "summary": "Получение трейлера альбома.",
        "description": "Метод библиотеки: [`Client.albums_trailer`](https://ym.marshal.dev/yandex_music._client.albums/#yandex_music._client.albums.AlbumsMixin.albums_trailer)",
        "tags": [
          "Альбомы"
        ],
        "parameters": [
          {
            "$ref": "#/components/parameters/X-Yandex-Music-Client"
          },
          {
            "$ref": "#/components/parameters/Accept-Language"
          },
          {
            "name": "album_id",
            "in": "path",
            "required": true,
            "description": "Уникальный идентификатор альбома.",
            "schema": {
              "type": [
                "string",
                "integer"
              ]
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Успешный ответ.",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "invocationInfo": {
                      "$ref": "#/components/schemas/InvocationInfo"
                    },
                    "result": {
                      "$ref": "#/components/schemas/AlbumTrailer"
                    }
                  }
                }
              }
            }
          }
        },
        "x-codeSamples": [
          {
            "lang": "python",
            "label": "yandex-music",
            "source": "# pip install yandex-music\nfrom yandex_music import Client\n\nclient = Client('TOKEN').init()\nclient.albums_trailer(album_id=...)"
          },
          {
            "lang": "python",
            "label": "yandex-music (async)",
            "source": "# pip install yandex-music\nfrom yandex_music import ClientAsync\n\nclient = await ClientAsync('TOKEN').init()\nawait client.albums_trailer(album_id=...)"
          }
        ]
      }
    },
    "/albums/{album_id}/with-tracks": {
      "get": {
        "operationId": "albums_with_tracks",
        "summary": "Получение альбома по его уникальному идентификатору вместе с треками.",
        "description": "Метод библиотеки: [`Client.albums_with_tracks`](https://ym.marshal.dev/yandex_music._client.albums/#yandex_music._client.albums.AlbumsMixin.albums_with_tracks)",
        "tags": [
          "Альбомы"
        ],
        "parameters": [
          {
            "$ref": "#/components/parameters/X-Yandex-Music-Client"
          },
          {
            "$ref": "#/components/parameters/Accept-Language"
          },
          {
            "name": "album_id",
            "in": "path",
            "required": true,
            "description": "Уникальный идентификатор альбома.",
            "schema": {
              "type": [
                "string",
                "integer"
              ]
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Успешный ответ.",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "invocationInfo": {
                      "$ref": "#/components/schemas/InvocationInfo"
                    },
                    "result": {
                      "$ref": "#/components/schemas/Album"
                    }
                  }
                }
              }
            }
          }
        },
        "x-codeSamples": [
          {
            "lang": "python",
            "label": "yandex-music",
            "source": "# pip install yandex-music\nfrom yandex_music import Client\n\nclient = Client('TOKEN').init()\nclient.albums_with_tracks(album_id=...)"
          },
          {
            "lang": "python",
            "label": "yandex-music (async)",
            "source": "# pip install yandex-music\nfrom yandex_music import ClientAsync\n\nclient = await ClientAsync('TOKEN').init()\nawait client.albums_with_tracks(album_id=...)"
          }
        ]
      }
    },
    "/artists": {
      "post": {
        "operationId": "artists",
        "summary": "Получение исполнителя/исполнителей.",
        "description": "Метод библиотеки: [`Client.artists`](https://ym.marshal.dev/yandex_music._client.artists/#yandex_music._client.artists.ArtistsMixin.artists)",
        "tags": [
          "Артисты"
        ],
        "parameters": [
          {
            "$ref": "#/components/parameters/X-Yandex-Music-Client"
          },
          {
            "$ref": "#/components/parameters/Accept-Language"
          }
        ],
        "requestBody": {
          "content": {
            "application/x-www-form-urlencoded": {
              "schema": {
                "type": "object",
                "properties": {
                  "artist-ids": {
                    "type": "string",
                    "description": ""
                  }
                }
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Успешный ответ.",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "invocationInfo": {
                      "$ref": "#/components/schemas/InvocationInfo"
                    },
                    "result": {
                      "type": "array",
                      "items": {
                        "$ref": "#/components/schemas/Artist"
                      }
                    }
                  }
                }
              }
            }
          }
        },
        "x-codeSamples": [
          {
            "lang": "python",
            "label": "yandex-music",
            "source": "# pip install yandex-music\nfrom yandex_music import Client\n\nclient = Client('TOKEN').init()\nclient.artists(artist_ids=...)"
          },
          {
            "lang": "python",
            "label": "yandex-music (async)",
            "source": "# pip install yandex-music\nfrom yandex_music import ClientAsync\n\nclient = await ClientAsync('TOKEN').init()\nawait client.artists(artist_ids=...)"
          }
        ]
      }
    },
    "/artists/{artist_id}/about-artist": {
      "get": {
        "operationId": "artists_about",
        "summary": "Получение информации «Об артисте».",
        "description": "Метод библиотеки: [`Client.artists_about`](https://ym.marshal.dev/yandex_music._client.artists/#yandex_music._client.artists.ArtistsMixin.artists_about)",
        "tags": [
          "Артисты"
        ],
        "parameters": [
          {
            "$ref": "#/components/parameters/X-Yandex-Music-Client"
          },
          {
            "$ref": "#/components/parameters/Accept-Language"
          },
          {
            "name": "artist_id",
            "in": "path",
            "required": true,
            "description": "Уникальный идентификатор артиста.",
            "schema": {
              "type": [
                "string",
                "integer"
              ]
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Успешный ответ.",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "invocationInfo": {
                      "$ref": "#/components/schemas/InvocationInfo"
                    },
                    "result": {
                      "$ref": "#/components/schemas/ArtistAbout"
                    }
                  }
                }
              }
            }
          }
        },
        "x-codeSamples": [
          {
            "lang": "python",
            "label": "yandex-music",
            "source": "# pip install yandex-music\nfrom yandex_music import Client\n\nclient = Client('TOKEN').init()\nclient.artists_about(artist_id=...)"
          },
          {
            "lang": "python",
            "label": "yandex-music (async)",
            "source": "# pip install yandex-music\nfrom yandex_music import ClientAsync\n\nclient = await ClientAsync('TOKEN').init()\nawait client.artists_about(artist_id=...)"
          }
        ]
      }
    },
    "/artists/{artist_id}/also-albums": {
      "get": {
        "operationId": "artists_also_albums",
        "summary": "Получение сборников и альбомов, в которых участвовал артист.",
        "description": "Метод библиотеки: [`Client.artists_also_albums`](https://ym.marshal.dev/yandex_music._client.artists/#yandex_music._client.artists.ArtistsMixin.artists_also_albums)",
        "tags": [
          "Артисты"
        ],
        "parameters": [
          {
            "$ref": "#/components/parameters/X-Yandex-Music-Client"
          },
          {
            "$ref": "#/components/parameters/Accept-Language"
          },
          {
            "name": "artist_id",
            "in": "path",
            "required": true,
            "description": "Уникальный идентификатор артиста.",
            "schema": {
              "type": [
                "string",
                "integer"
              ]
            }
          },
          {
            "name": "sort-by",
            "in": "query",
            "required": false,
            "description": "",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "page",
            "in": "query",
            "required": false,
            "description": "Номер страницы.",
            "schema": {
              "type": "integer"
            }
          },
          {
            "name": "page-size",
            "in": "query",
            "required": false,
            "description": "",
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Успешный ответ.",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "invocationInfo": {
                      "$ref": "#/components/schemas/InvocationInfo"
                    },
                    "result": {
                      "$ref": "#/components/schemas/ArtistAlbums"
                    }
                  }
                }
              }
            }
          }
        },
        "x-codeSamples": [
          {
            "lang": "python",
            "label": "yandex-music",
            "source": "# pip install yandex-music\nfrom yandex_music import Client\n\nclient = Client('TOKEN').init()\nclient.artists_also_albums(artist_id=...)"
          },
          {
            "lang": "python",
            "label": "yandex-music (async)",
            "source": "# pip install yandex-music\nfrom yandex_music import ClientAsync\n\nclient = await ClientAsync('TOKEN').init()\nawait client.artists_also_albums(artist_id=...)"
          }
        ]
      }
    },
    "/artists/{artist_id}/artist-links": {
      "get": {
        "operationId": "artists_links",
        "summary": "Получение ссылок на страницы артиста.",
        "description": "Метод библиотеки: [`Client.artists_links`](https://ym.marshal.dev/yandex_music._client.artists/#yandex_music._client.artists.ArtistsMixin.artists_links)",
        "tags": [
          "Артисты"
        ],
        "parameters": [
          {
            "$ref": "#/components/parameters/X-Yandex-Music-Client"
          },
          {
            "$ref": "#/components/parameters/Accept-Language"
          },
          {
            "name": "artist_id",
            "in": "path",
            "required": true,
            "description": "Уникальный идентификатор артиста.",
            "schema": {
              "type": [
                "string",
                "integer"
              ]
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Успешный ответ.",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "invocationInfo": {
                      "$ref": "#/components/schemas/InvocationInfo"
                    },
                    "result": {
                      "$ref": "#/components/schemas/ArtistLinks"
                    }
                  }
                }
              }
            }
          }
        },
        "x-codeSamples": [
          {
            "lang": "python",
            "label": "yandex-music",
            "source": "# pip install yandex-music\nfrom yandex_music import Client\n\nclient = Client('TOKEN').init()\nclient.artists_links(artist_id=...)"
          },
          {
            "lang": "python",
            "label": "yandex-music (async)",
            "source": "# pip install yandex-music\nfrom yandex_music import ClientAsync\n\nclient = await ClientAsync('TOKEN').init()\nawait client.artists_links(artist_id=...)"
          }
        ]
      }
    },
    "/artists/{artist_id}/blocks/artist-clips": {
      "get": {
        "operationId": "artists_clips",
        "summary": "Получение клипов артиста.",
        "description": "Метод библиотеки: [`Client.artists_clips`](https://ym.marshal.dev/yandex_music._client.artists/#yandex_music._client.artists.ArtistsMixin.artists_clips)",
        "tags": [
          "Артисты"
        ],
        "parameters": [
          {
            "$ref": "#/components/parameters/X-Yandex-Music-Client"
          },
          {
            "$ref": "#/components/parameters/Accept-Language"
          },
          {
            "name": "artist_id",
            "in": "path",
            "required": true,
            "description": "Уникальный идентификатор артиста.",
            "schema": {
              "type": [
                "string",
                "integer"
              ]
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Успешный ответ.",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "invocationInfo": {
                      "$ref": "#/components/schemas/InvocationInfo"
                    },
                    "result": {
                      "$ref": "#/components/schemas/ArtistClips"
                    }
                  }
                }
              }
            }
          }
        },
        "x-codeSamples": [
          {
            "lang": "python",
            "label": "yandex-music",
            "source": "# pip install yandex-music\nfrom yandex_music import Client\n\nclient = Client('TOKEN').init()\nclient.artists_clips(artist_id=...)"
          },
          {
            "lang": "python",
            "label": "yandex-music (async)",
            "source": "# pip install yandex-music\nfrom yandex_music import ClientAsync\n\nclient = await ClientAsync('TOKEN').init()\nawait client.artists_clips(artist_id=...)"
          }
        ]
      }
    },
    "/artists/{artist_id}/blocks/artist-donation": {
      "get": {
        "operationId": "artists_donation",
        "summary": "Получение информации о донатах артиста.",
        "description": "Метод библиотеки: [`Client.artists_donation`](https://ym.marshal.dev/yandex_music._client.artists/#yandex_music._client.artists.ArtistsMixin.artists_donation)",
        "tags": [
          "Артисты"
        ],
        "parameters": [
          {
            "$ref": "#/components/parameters/X-Yandex-Music-Client"
          },
          {
            "$ref": "#/components/parameters/Accept-Language"
          },
          {
            "name": "artist_id",
            "in": "path",
            "required": true,
            "description": "Уникальный идентификатор артиста.",
            "schema": {
              "type": [
                "string",
                "integer"
              ]
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Успешный ответ.",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "invocationInfo": {
                      "$ref": "#/components/schemas/InvocationInfo"
                    },
                    "result": {
                      "$ref": "#/components/schemas/ArtistDonations"
                    }
                  }
                }
              }
            }
          }
        },
        "x-codeSamples": [
          {
            "lang": "python",
            "label": "yandex-music",
            "source": "# pip install yandex-music\nfrom yandex_music import Client\n\nclient = Client('TOKEN').init()\nclient.artists_donation(artist_id=...)"
          },
          {
            "lang": "python",
            "label": "yandex-music (async)",
            "source": "# pip install yandex-music\nfrom yandex_music import ClientAsync\n\nclient = await ClientAsync('TOKEN').init()\nawait client.artists_donation(artist_id=...)"
          }
        ]
      }
    },
    "/artists/{artist_id}/brief-info": {
      "get": {
        "operationId": "artists_brief_info",
        "summary": "Получение информации об артисте.",
        "description": "Метод библиотеки: [`Client.artists_brief_info`](https://ym.marshal.dev/yandex_music._client.artists/#yandex_music._client.artists.ArtistsMixin.artists_brief_info)",
        "tags": [
          "Артисты"
        ],
        "parameters": [
          {
            "$ref": "#/components/parameters/X-Yandex-Music-Client"
          },
          {
            "$ref": "#/components/parameters/Accept-Language"
          },
          {
            "name": "artist_id",
            "in": "path",
            "required": true,
            "description": "Уникальный идентификатор исполнителя.",
            "schema": {
              "type": [
                "string",
                "integer"
              ]
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Успешный ответ.",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "invocationInfo": {
                      "$ref": "#/components/schemas/InvocationInfo"
                    },
                    "result": {
                      "$ref": "#/components/schemas/BriefInfo"
                    }
                  }
                }
              }
            }
          }
        },
        "x-codeSamples": [
          {
            "lang": "python",
            "label": "yandex-music",
            "source": "# pip install yandex-music\nfrom yandex_music import Client\n\nclient = Client('TOKEN').init()\nclient.artists_brief_info(artist_id=...)"
          },
          {
            "lang": "python",
            "label": "yandex-music (async)",
            "source": "# pip install yandex-music\nfrom yandex_music import ClientAsync\n\nclient = await ClientAsync('TOKEN').init()\nawait client.artists_brief_info(artist_id=...)"
          }
        ]
      }
    },
    "/artists/{artist_id}/concerts": {
      "get": {
        "operationId": "artists_concerts",
        "summary": "Получение концертов артиста.",
        "description": "Метод библиотеки: [`Client.artists_concerts`](https://ym.marshal.dev/yandex_music._client.concerts/#yandex_music._client.concerts.ConcertsMixin.artists_concerts)",
        "tags": [
          "Концерты"
        ],
        "parameters": [
          {
            "$ref": "#/components/parameters/X-Yandex-Music-Client"
          },
          {
            "$ref": "#/components/parameters/Accept-Language"
          },
          {
            "name": "artist_id",
            "in": "path",
            "required": true,
            "description": "Уникальный идентификатор артиста.",
            "schema": {
              "type": [
                "string",
                "integer"
              ]
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Успешный ответ.",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "invocationInfo": {
                      "$ref": "#/components/schemas/InvocationInfo"
                    },
                    "result": {
                      "$ref": "#/components/schemas/ArtistConcerts"
                    }
                  }
                }
              }
            }
          }
        },
        "x-codeSamples": [
          {
            "lang": "python",
            "label": "yandex-music",
            "source": "# pip install yandex-music\nfrom yandex_music import Client\n\nclient = Client('TOKEN').init()\nclient.artists_concerts(artist_id=...)"
          },
          {
            "lang": "python",
            "label": "yandex-music (async)",
            "source": "# pip install yandex-music\nfrom yandex_music import ClientAsync\n\nclient = await ClientAsync('TOKEN').init()\nawait client.artists_concerts(artist_id=...)"
          }
        ]
      }
    },
    "/artists/{artist_id}/direct-albums": {
      "get": {
        "operationId": "artists_direct_albums",
        "summary": "Получение альбомов артиста.",
        "description": "Метод библиотеки: [`Client.artists_direct_albums`](https://ym.marshal.dev/yandex_music._client.artists/#yandex_music._client.artists.ArtistsMixin.artists_direct_albums)",
        "tags": [
          "Артисты"
        ],
        "parameters": [
          {
            "$ref": "#/components/parameters/X-Yandex-Music-Client"
          },
          {
            "$ref": "#/components/parameters/Accept-Language"
          },
          {
            "name": "artist_id",
            "in": "path",
            "required": true,
            "description": "Уникальный идентификатор артиста.",
            "schema": {
              "type": [
                "string",
                "integer"
              ]
            }
          },
          {
            "name": "sort-by",
            "in": "query",
            "required": false,
            "description": "",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "page",
            "in": "query",
            "required": false,
            "description": "Номер страницы.",
            "schema": {
              "type": "integer"
            }
          },
          {
            "name": "page-size",
            "in": "query",
            "required": false,
            "description": "",
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Успешный ответ.",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "invocationInfo": {
                      "$ref": "#/components/schemas/InvocationInfo"
                    },
                    "result": {
                      "$ref": "#/components/schemas/ArtistAlbums"
                    }
                  }
                }
              }
            }
          }
        },
        "x-codeSamples": [
          {
            "lang": "python",
            "label": "yandex-music",
            "source": "# pip install yandex-music\nfrom yandex_music import Client\n\nclient = Client('TOKEN').init()\nclient.artists_direct_albums(artist_id=...)"
          },
          {
            "lang": "python",
            "label": "yandex-music (async)",
            "source": "# pip install yandex-music\nfrom yandex_music import ClientAsync\n\nclient = await ClientAsync('TOKEN').init()\nawait client.artists_direct_albums(artist_id=...)"
          }
        ]
      }
    },
    "/artists/{artist_id}/disclaimer": {
      "get": {
        "operationId": "artists_disclaimer",
        "summary": "Получение дисклеймера артиста.",
        "description": "Метод библиотеки: [`Client.artists_disclaimer`](https://ym.marshal.dev/yandex_music._client.disclaimers/#yandex_music._client.disclaimers.DisclaimersMixin.artists_disclaimer)",
        "tags": [
          "Дисклеймеры"
        ],
        "parameters": [
          {
            "$ref": "#/components/parameters/X-Yandex-Music-Client"
          },
          {
            "$ref": "#/components/parameters/Accept-Language"
          },
          {
            "name": "artist_id",
            "in": "path",
            "required": true,
            "description": "Уникальный идентификатор артиста.",
            "schema": {
              "type": [
                "string",
                "integer"
              ]
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Успешный ответ.",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "invocationInfo": {
                      "$ref": "#/components/schemas/InvocationInfo"
                    },
                    "result": {
                      "$ref": "#/components/schemas/Disclaimer"
                    }
                  }
                }
              }
            }
          }
        },
        "x-codeSamples": [
          {
            "lang": "python",
            "label": "yandex-music",
            "source": "# pip install yandex-music\nfrom yandex_music import Client\n\nclient = Client('TOKEN').init()\nclient.artists_disclaimer(artist_id=...)"
          },
          {
            "lang": "python",
            "label": "yandex-music (async)",
            "source": "# pip install yandex-music\nfrom yandex_music import ClientAsync\n\nclient = await ClientAsync('TOKEN').init()\nawait client.artists_disclaimer(artist_id=...)"
          }
        ]
      }
    },
    "/artists/{artist_id}/discography-albums": {
      "get": {
        "operationId": "artists_discography_albums",
        "summary": "Получение дискографии артиста.",
        "description": "Метод библиотеки: [`Client.artists_discography_albums`](https://ym.marshal.dev/yandex_music._client.artists/#yandex_music._client.artists.ArtistsMixin.artists_discography_albums)",
        "tags": [
          "Артисты"
        ],
        "parameters": [
          {
            "$ref": "#/components/parameters/X-Yandex-Music-Client"
          },
          {
            "$ref": "#/components/parameters/Accept-Language"
          },
          {
            "name": "artist_id",
            "in": "path",
            "required": true,
            "description": "Уникальный идентификатор артиста.",
            "schema": {
              "type": [
                "string",
                "integer"
              ]
            }
          },
          {
            "name": "sort-by",
            "in": "query",
            "required": false,
            "description": "",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "page",
            "in": "query",
            "required": false,
            "description": "Номер страницы.",
            "schema": {
              "type": "integer"
            }
          },
          {
            "name": "page-size",
            "in": "query",
            "required": false,
            "description": "",
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Успешный ответ.",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "invocationInfo": {
                      "$ref": "#/components/schemas/InvocationInfo"
                    },
                    "result": {
                      "$ref": "#/components/schemas/ArtistAlbums"
                    }
                  }
                }
              }
            }
          }
        },
        "x-codeSamples": [
          {
            "lang": "python",
            "label": "yandex-music",
            "source": "# pip install yandex-music\nfrom yandex_music import Client\n\nclient = Client('TOKEN').init()\nclient.artists_discography_albums(artist_id=...)"
          },
          {
            "lang": "python",
            "label": "yandex-music (async)",
            "source": "# pip install yandex-music\nfrom yandex_music import ClientAsync\n\nclient = await ClientAsync('TOKEN').init()\nawait client.artists_discography_albums(artist_id=...)"
          }
        ]
      }
    },
    "/artists/{artist_id}/info": {
      "get": {
        "operationId": "artists_info",
        "summary": "Получение подробной информации об артисте.",
        "description": "Метод библиотеки: [`Client.artists_info`](https://ym.marshal.dev/yandex_music._client.artists/#yandex_music._client.artists.ArtistsMixin.artists_info)",
        "tags": [
          "Артисты"
        ],
        "parameters": [
          {
            "$ref": "#/components/parameters/X-Yandex-Music-Client"
          },
          {
            "$ref": "#/components/parameters/Accept-Language"
          },
          {
            "name": "artist_id",
            "in": "path",
            "required": true,
            "description": "Уникальный идентификатор артиста.",
            "schema": {
              "type": [
                "string",
                "integer"
              ]
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Успешный ответ.",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "invocationInfo": {
                      "$ref": "#/components/schemas/InvocationInfo"
                    },
                    "result": {
                      "$ref": "#/components/schemas/ArtistInfo"
                    }
                  }
                }
              }
            }
          }
        },
        "x-codeSamples": [
          {
            "lang": "python",
            "label": "yandex-music",
            "source": "# pip install yandex-music\nfrom yandex_music import Client\n\nclient = Client('TOKEN').init()\nclient.artists_info(artist_id=...)"
          },
          {
            "lang": "python",
            "label": "yandex-music (async)",
            "source": "# pip install yandex-music\nfrom yandex_music import ClientAsync\n\nclient = await ClientAsync('TOKEN').init()\nawait client.artists_info(artist_id=...)"
          }
        ]
      }
    },
    "/artists/{artist_id}/safe-direct-albums": {
      "get": {
        "operationId": "artists_safe_direct_albums",
        "summary": "Получение безопасных альбомов артиста.",
        "description": "Метод библиотеки: [`Client.artists_safe_direct_albums`](https://ym.marshal.dev/yandex_music._client.artists/#yandex_music._client.artists.ArtistsMixin.artists_safe_direct_albums)",
        "tags": [
          "Артисты"
        ],
        "parameters": [
          {
            "$ref": "#/components/parameters/X-Yandex-Music-Client"
          },
          {
            "$ref": "#/components/parameters/Accept-Language"
          },
          {
            "name": "artist_id",
            "in": "path",
            "required": true,
            "description": "Уникальный идентификатор артиста.",
            "schema": {
              "type": [
                "string",
                "integer"
              ]
            }
          },
          {
            "name": "sort-by",
            "in": "query",
            "required": false,
            "description": "",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "sort-order",
            "in": "query",
            "required": false,
            "description": "",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "limit",
            "in": "query",
            "required": false,
            "description": "Количество альбомов.",
            "schema": {
              "type": "integer"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Успешный ответ.",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "invocationInfo": {
                      "$ref": "#/components/schemas/InvocationInfo"
                    },
                    "result": {
                      "$ref": "#/components/schemas/ArtistAlbums"
                    }
                  }
                }
              }
            }
          }
        },
        "x-codeSamples": [
          {
            "lang": "python",
            "label": "yandex-music",
            "source": "# pip install yandex-music\nfrom yandex_music import Client\n\nclient = Client('TOKEN').init()\nclient.artists_safe_direct_albums(artist_id=...)"
          },
          {
            "lang": "python",
            "label": "yandex-music (async)",
            "source": "# pip install yandex-music\nfrom yandex_music import ClientAsync\n\nclient = await ClientAsync('TOKEN').init()\nawait client.artists_safe_direct_albums(artist_id=...)"
          }
        ]
      }
    },
    "/artists/{artist_id}/similar": {
      "get": {
        "operationId": "artists_similar",
        "summary": "Получение похожих артистов.",
        "description": "Метод библиотеки: [`Client.artists_similar`](https://ym.marshal.dev/yandex_music._client.artists/#yandex_music._client.artists.ArtistsMixin.artists_similar)",
        "tags": [
          "Артисты"
        ],
        "parameters": [
          {
            "$ref": "#/components/parameters/X-Yandex-Music-Client"
          },
          {
            "$ref": "#/components/parameters/Accept-Language"
          },
          {
            "name": "artist_id",
            "in": "path",
            "required": true,
            "description": "Уникальный идентификатор артиста.",
            "schema": {
              "type": [
                "string",
                "integer"
              ]
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Успешный ответ.",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "invocationInfo": {
                      "$ref": "#/components/schemas/InvocationInfo"
                    },
                    "result": {
                      "$ref": "#/components/schemas/ArtistSimilar"
                    }
                  }
                }
              }
            }
          }
        },
        "x-codeSamples": [
          {
            "lang": "python",
            "label": "yandex-music",
            "source": "# pip install yandex-music\nfrom yandex_music import Client\n\nclient = Client('TOKEN').init()\nclient.artists_similar(artist_id=...)"
          },
          {
            "lang": "python",
            "label": "yandex-music (async)",
            "source": "# pip install yandex-music\nfrom yandex_music import ClientAsync\n\nclient = await ClientAsync('TOKEN').init()\nawait client.artists_similar(artist_id=...)"
          }
        ]
      }
    },
    "/artists/{artist_id}/skeletons/web-artist-default": {
      "get": {
        "operationId": "artists_skeleton",
        "summary": "Получение скелетона страницы артиста.",
        "description": "Метод библиотеки: [`Client.artists_skeleton`](https://ym.marshal.dev/yandex_music._client.artists/#yandex_music._client.artists.ArtistsMixin.artists_skeleton)",
        "tags": [
          "Артисты"
        ],
        "parameters": [
          {
            "$ref": "#/components/parameters/X-Yandex-Music-Client"
          },
          {
            "$ref": "#/components/parameters/Accept-Language"
          },
          {
            "name": "artist_id",
            "in": "path",
            "required": true,
            "description": "Уникальный идентификатор артиста.",
            "schema": {
              "type": [
                "string",
                "integer"
              ]
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Успешный ответ.",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "invocationInfo": {
                      "$ref": "#/components/schemas/InvocationInfo"
                    },
                    "result": {
                      "$ref": "#/components/schemas/ArtistSkeleton"
                    }
                  }
                }
              }
            }
          }
        },
        "x-codeSamples": [
          {
            "lang": "python",
            "label": "yandex-music",
            "source": "# pip install yandex-music\nfrom yandex_music import Client\n\nclient = Client('TOKEN').init()\nclient.artists_skeleton(artist_id=...)"
          },
          {
            "lang": "python",
            "label": "yandex-music (async)",
            "source": "# pip install yandex-music\nfrom yandex_music import ClientAsync\n\nclient = await ClientAsync('TOKEN').init()\nawait client.artists_skeleton(artist_id=...)"
          }
        ]
      }
    },
    "/artists/{artist_id}/track-ids": {
      "get": {
        "operationId": "artists_track_ids",
        "summary": "Получение идентификаторов треков артиста.",
        "description": "Метод библиотеки: [`Client.artists_track_ids`](https://ym.marshal.dev/yandex_music._client.artists/#yandex_music._client.artists.ArtistsMixin.artists_track_ids)",
        "tags": [
          "Артисты"
        ],
        "parameters": [
          {
            "$ref": "#/components/parameters/X-Yandex-Music-Client"
          },
          {
            "$ref": "#/components/parameters/Accept-Language"
          },
          {
            "name": "artist_id",
            "in": "path",
            "required": true,
            "description": "Уникальный идентификатор артиста.",
            "schema": {
              "type": [
                "string",
                "integer"
              ]
            }
          },
          {
            "name": "page",
            "in": "query",
            "required": false,
            "description": "Номер страницы.",
            "schema": {
              "type": "integer"
            }
          },
          {
            "name": "page-size",
            "in": "query",
            "required": false,
            "description": "",
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Успешный ответ.",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "invocationInfo": {
                      "$ref": "#/components/schemas/InvocationInfo"
                    },
                    "result": {
                      "type": "array",
                      "items": {
                        "type": "string"
                      }
                    }
                  }
                }
              }
            }
          }
        },
        "x-codeSamples": [
          {
            "lang": "python",
            "label": "yandex-music",
            "source": "# pip install yandex-music\nfrom yandex_music import Client\n\nclient = Client('TOKEN').init()\nclient.artists_track_ids(artist_id=...)"
          },
          {
            "lang": "python",
            "label": "yandex-music (async)",
            "source": "# pip install yandex-music\nfrom yandex_music import ClientAsync\n\nclient = await ClientAsync('TOKEN').init()\nawait client.artists_track_ids(artist_id=...)"
          }
        ]
      }
    },
    "/artists/{artist_id}/tracks": {
      "get": {
        "operationId": "artists_tracks",
        "summary": "Получение треков артиста.",
        "description": "Метод библиотеки: [`Client.artists_tracks`](https://ym.marshal.dev/yandex_music._client.artists/#yandex_music._client.artists.ArtistsMixin.artists_tracks)",
        "tags": [
          "Артисты"
        ],
        "parameters": [
          {
            "$ref": "#/components/parameters/X-Yandex-Music-Client"
          },
          {
            "$ref": "#/components/parameters/Accept-Language"
          },
          {
            "name": "artist_id",
            "in": "path",
            "required": true,
            "description": "Уникальный идентификатор артиста.",
            "schema": {
              "type": [
                "string",
                "integer"
              ]
            }
          },
          {
            "name": "page",
            "in": "query",
            "required": false,
            "description": "Номер страницы.",
            "schema": {
              "type": "integer"
            }
          },
          {
            "name": "page-size",
            "in": "query",
            "required": false,
            "description": "",
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Успешный ответ.",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "invocationInfo": {
                      "$ref": "#/components/schemas/InvocationInfo"
                    },
                    "result": {
                      "$ref": "#/components/schemas/ArtistTracks"
                    }
                  }
                }
              }
            }
          }
        },
        "x-codeSamples": [
          {
            "lang": "python",
            "label": "yandex-music",
            "source": "# pip install yandex-music\nfrom yandex_music import Client\n\nclient = Client('TOKEN').init()\nclient.artists_tracks(artist_id=...)"
          },
          {
            "lang": "python",
            "label": "yandex-music (async)",
            "source": "# pip install yandex-music\nfrom yandex_music import ClientAsync\n\nclient = await ClientAsync('TOKEN').init()\nawait client.artists_tracks(artist_id=...)"
          }
        ]
      }
    },
    "/artists/{artist_id}/trailer": {
      "get": {
        "operationId": "artists_trailer",
        "summary": "Получение трейлера артиста.",
        "description": "Метод библиотеки: [`Client.artists_trailer`](https://ym.marshal.dev/yandex_music._client.artists/#yandex_music._client.artists.ArtistsMixin.artists_trailer)",
        "tags": [
          "Артисты"
        ],
        "parameters": [
          {
            "$ref": "#/components/parameters/X-Yandex-Music-Client"
          },
          {
            "$ref": "#/components/parameters/Accept-Language"
          },
          {
            "name": "artist_id",
            "in": "path",
            "required": true,
            "description": "Уникальный идентификатор артиста.",
            "schema": {
              "type": [
                "string",
                "integer"
              ]
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Успешный ответ.",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "invocationInfo": {
                      "$ref": "#/components/schemas/InvocationInfo"
                    },
                    "result": {
                      "$ref": "#/components/schemas/ArtistTrailer"
                    }
                  }
                }
              }
            }
          }
        },
        "x-codeSamples": [
          {
            "lang": "python",
            "label": "yandex-music",
            "source": "# pip install yandex-music\nfrom yandex_music import Client\n\nclient = Client('TOKEN').init()\nclient.artists_trailer(artist_id=...)"
          },
          {
            "lang": "python",
            "label": "yandex-music (async)",
            "source": "# pip install yandex-music\nfrom yandex_music import ClientAsync\n\nclient = await ClientAsync('TOKEN').init()\nawait client.artists_trailer(artist_id=...)"
          }
        ]
      }
    },
    "/clips": {
      "get": {
        "operationId": "clips",
        "summary": "Получение клипов по идентификаторам.",
        "description": "Метод библиотеки: [`Client.clips`](https://ym.marshal.dev/yandex_music._client.clips/#yandex_music._client.clips.ClipsMixin.clips)",
        "tags": [
          "Видеоклипы"
        ],
        "parameters": [
          {
            "$ref": "#/components/parameters/X-Yandex-Music-Client"
          },
          {
            "$ref": "#/components/parameters/Accept-Language"
          },
          {
            "name": "clipIds",
            "in": "query",
            "required": false,
            "description": "Уникальный идентификатор клипа или список идентификаторов.",
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Успешный ответ.",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "invocationInfo": {
                      "$ref": "#/components/schemas/InvocationInfo"
                    },
                    "result": {
                      "type": "array",
                      "items": {
                        "$ref": "#/components/schemas/Clip"
                      }
                    }
                  }
                }
              }
            }
          }
        },
        "x-codeSamples": [
          {
            "lang": "python",
            "label": "yandex-music",
            "source": "# pip install yandex-music\nfrom yandex_music import Client\n\nclient = Client('TOKEN').init()\nclient.clips(clip_ids=...)"
          },
          {
            "lang": "python",
            "label": "yandex-music (async)",
            "source": "# pip install yandex-music\nfrom yandex_music import ClientAsync\n\nclient = await ClientAsync('TOKEN').init()\nawait client.clips(clip_ids=...)"
          }
        ]
      }
    },
    "/clips/will/like": {
      "get": {
        "operationId": "clips_will_like",
        "summary": "Получение подборки рекомендуемых клипов.",
        "description": "Метод библиотеки: [`Client.clips_will_like`](https://ym.marshal.dev/yandex_music._client.clips/#yandex_music._client.clips.ClipsMixin.clips_will_like)",
        "tags": [
          "Видеоклипы"
        ],
        "parameters": [
          {
            "$ref": "#/components/parameters/X-Yandex-Music-Client"
          },
          {
            "$ref": "#/components/parameters/Accept-Language"
          },
          {
            "name": "page",
            "in": "query",
            "required": false,
            "description": "Номер страницы.",
            "schema": {
              "type": "integer"
            }
          },
          {
            "name": "pageSize",
            "in": "query",
            "required": false,
            "description": "Количество клипов на странице.",
            "schema": {
              "type": "integer"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Успешный ответ.",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "invocationInfo": {
                      "$ref": "#/components/schemas/InvocationInfo"
                    },
                    "result": {
                      "$ref": "#/components/schemas/ClipsWillLike"
                    }
                  }
                }
              }
            }
          }
        },
        "x-codeSamples": [
          {
            "lang": "python",
            "label": "yandex-music",
            "source": "# pip install yandex-music\nfrom yandex_music import Client\n\nclient = Client('TOKEN').init()\nclient.clips_will_like()"
          },
          {
            "lang": "python",
            "label": "yandex-music (async)",
            "source": "# pip install yandex-music\nfrom yandex_music import ClientAsync\n\nclient = await ClientAsync('TOKEN').init()\nawait client.clips_will_like()"
          }
        ]
      }
    },
    "/clips/{clip_id}/credits": {
      "get": {
        "operationId": "clips_credits",
        "summary": "Получение информации об участниках создания клипа.",
        "description": "Метод библиотеки: [`Client.clips_credits`](https://ym.marshal.dev/yandex_music._client.credits/#yandex_music._client.credits.CreditsMixin.clips_credits)",
        "tags": [
          "Авторы контента"
        ],
        "parameters": [
          {
            "$ref": "#/components/parameters/X-Yandex-Music-Client"
          },
          {
            "$ref": "#/components/parameters/Accept-Language"
          },
          {
            "name": "clip_id",
            "in": "path",
            "required": true,
            "description": "Уникальный идентификатор клипа.",
            "schema": {
              "type": [
                "string",
                "integer"
              ]
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Успешный ответ.",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "invocationInfo": {
                      "$ref": "#/components/schemas/InvocationInfo"
                    },
                    "result": {
                      "$ref": "#/components/schemas/Credits"
                    }
                  }
                }
              }
            }
          }
        },
        "x-codeSamples": [
          {
            "lang": "python",
            "label": "yandex-music",
            "source": "# pip install yandex-music\nfrom yandex_music import Client\n\nclient = Client('TOKEN').init()\nclient.clips_credits(clip_id=...)"
          },
          {
            "lang": "python",
            "label": "yandex-music (async)",
            "source": "# pip install yandex-music\nfrom yandex_music import ClientAsync\n\nclient = await ClientAsync('TOKEN').init()\nawait client.clips_credits(clip_id=...)"
          }
        ]
      }
    },
    "/clips/{clip_id}/disclaimer": {
      "get": {
        "operationId": "clips_disclaimer",
        "summary": "Получение дисклеймера клипа.",
        "description": "Метод библиотеки: [`Client.clips_disclaimer`](https://ym.marshal.dev/yandex_music._client.disclaimers/#yandex_music._client.disclaimers.DisclaimersMixin.clips_disclaimer)",
        "tags": [
          "Дисклеймеры"
        ],
        "parameters": [
          {
            "$ref": "#/components/parameters/X-Yandex-Music-Client"
          },
          {
            "$ref": "#/components/parameters/Accept-Language"
          },
          {
            "name": "clip_id",
            "in": "path",
            "required": true,
            "description": "Уникальный идентификатор клипа.",
            "schema": {
              "type": [
                "string",
                "integer"
              ]
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Успешный ответ.",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "invocationInfo": {
                      "$ref": "#/components/schemas/InvocationInfo"
                    },
                    "result": {
                      "$ref": "#/components/schemas/Disclaimer"
                    }
                  }
                }
              }
            }
          }
        },
        "x-codeSamples": [
          {
            "lang": "python",
            "label": "yandex-music",
            "source": "# pip install yandex-music\nfrom yandex_music import Client\n\nclient = Client('TOKEN').init()\nclient.clips_disclaimer(clip_id=...)"
          },
          {
            "lang": "python",
            "label": "yandex-music (async)",
            "source": "# pip install yandex-music\nfrom yandex_music import ClientAsync\n\nclient = await ClientAsync('TOKEN').init()\nawait client.clips_disclaimer(clip_id=...)"
          }
        ]
      }
    },
    "/concerts/feed": {
      "get": {
        "operationId": "concerts_feed",
        "summary": "Получение ленты концертов.",
        "description": "Метод библиотеки: [`Client.concerts_feed`](https://ym.marshal.dev/yandex_music._client.concerts/#yandex_music._client.concerts.ConcertsMixin.concerts_feed)",
        "tags": [
          "Концерты"
        ],
        "parameters": [
          {
            "$ref": "#/components/parameters/X-Yandex-Music-Client"
          },
          {
            "$ref": "#/components/parameters/Accept-Language"
          },
          {
            "name": "locations",
            "in": "query",
            "required": false,
            "description": "Список идентификаторов местоположений (geoId) для фильтрации ленты.",
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Успешный ответ.",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "invocationInfo": {
                      "$ref": "#/components/schemas/InvocationInfo"
                    },
                    "result": {
                      "$ref": "#/components/schemas/ConcertFeed"
                    }
                  }
                }
              }
            }
          }
        },
        "x-codeSamples": [
          {
            "lang": "python",
            "label": "yandex-music",
            "source": "# pip install yandex-music\nfrom yandex_music import Client\n\nclient = Client('TOKEN').init()\nclient.concerts_feed()"
          },
          {
            "lang": "python",
            "label": "yandex-music (async)",
            "source": "# pip install yandex-music\nfrom yandex_music import ClientAsync\n\nclient = await ClientAsync('TOKEN').init()\nawait client.concerts_feed()"
          }
        ]
      }
    },
    "/concerts/locations": {
      "get": {
        "operationId": "concerts_locations",
        "summary": "Получение списка местоположений для фильтрации концертов.",
        "description": "Метод библиотеки: [`Client.concerts_locations`](https://ym.marshal.dev/yandex_music._client.concerts/#yandex_music._client.concerts.ConcertsMixin.concerts_locations)",
        "tags": [
          "Концерты"
        ],
        "parameters": [
          {
            "$ref": "#/components/parameters/X-Yandex-Music-Client"
          },
          {
            "$ref": "#/components/parameters/Accept-Language"
          }
        ],
        "responses": {
          "200": {
            "description": "Успешный ответ.",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "invocationInfo": {
                      "$ref": "#/components/schemas/InvocationInfo"
                    },
                    "result": {
                      "$ref": "#/components/schemas/ConcertLocations"
                    }
                  }
                }
              }
            }
          }
        },
        "x-codeSamples": [
          {
            "lang": "python",
            "label": "yandex-music",
            "source": "# pip install yandex-music\nfrom yandex_music import Client\n\nclient = Client('TOKEN').init()\nclient.concerts_locations()"
          },
          {
            "lang": "python",
            "label": "yandex-music (async)",
            "source": "# pip install yandex-music\nfrom yandex_music import ClientAsync\n\nclient = await ClientAsync('TOKEN').init()\nawait client.concerts_locations()"
          }
        ]
      }
    },
    "/concerts/tab-config": {
      "get": {
        "operationId": "concerts_tab_config",
        "summary": "Получение конфигурации вкладок концертов.",
        "description": "Метод библиотеки: [`Client.concerts_tab_config`](https://ym.marshal.dev/yandex_music._client.concerts/#yandex_music._client.concerts.ConcertsMixin.concerts_tab_config)",
        "tags": [
          "Концерты"
        ],
        "parameters": [
          {
            "$ref": "#/components/parameters/X-Yandex-Music-Client"
          },
          {
            "$ref": "#/components/parameters/Accept-Language"
          }
        ],
        "responses": {
          "200": {
            "description": "Успешный ответ.",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "invocationInfo": {
                      "$ref": "#/components/schemas/InvocationInfo"
                    },
                    "result": {
                      "$ref": "#/components/schemas/ConcertTabConfig"
                    }
                  }
                }
              }
            }
          }
        },
        "x-codeSamples": [
          {
            "lang": "python",
            "label": "yandex-music",
            "source": "# pip install yandex-music\nfrom yandex_music import Client\n\nclient = Client('TOKEN').init()\nclient.concerts_tab_config()"
          },
          {
            "lang": "python",
            "label": "yandex-music (async)",
            "source": "# pip install yandex-music\nfrom yandex_music import ClientAsync\n\nclient = await ClientAsync('TOKEN').init()\nawait client.concerts_tab_config()"
          }
        ]
      }
    },
    "/concerts/{concert_id}/info": {
      "get": {
        "operationId": "concert_info",
        "summary": "Получение информации о концерте.",
        "description": "Метод библиотеки: [`Client.concert_info`](https://ym.marshal.dev/yandex_music._client.concerts/#yandex_music._client.concerts.ConcertsMixin.concert_info)",
        "tags": [
          "Концерты"
        ],
        "parameters": [
          {
            "$ref": "#/components/parameters/X-Yandex-Music-Client"
          },
          {
            "$ref": "#/components/parameters/Accept-Language"
          },
          {
            "name": "concert_id",
            "in": "path",
            "required": true,
            "description": "Уникальный идентификатор концерта (UUID).",
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Успешный ответ.",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "invocationInfo": {
                      "$ref": "#/components/schemas/InvocationInfo"
                    },
                    "result": {
                      "$ref": "#/components/schemas/ConcertInfo"
                    }
                  }
                }
              }
            }
          }
        },
        "x-codeSamples": [
          {
            "lang": "python",
            "label": "yandex-music",
            "source": "# pip install yandex-music\nfrom yandex_music import Client\n\nclient = Client('TOKEN').init()\nclient.concert_info(concert_id=...)"
          },
          {
            "lang": "python",
            "label": "yandex-music (async)",
            "source": "# pip install yandex-music\nfrom yandex_music import ClientAsync\n\nclient = await ClientAsync('TOKEN').init()\nawait client.concert_info(concert_id=...)"
          }
        ]
      }
    },
    "/concerts/{concert_id}/skeletons/concert_page": {
      "get": {
        "operationId": "concert_skeleton",
        "summary": "Получение скелетона страницы концерта.",
        "description": "Метод библиотеки: [`Client.concert_skeleton`](https://ym.marshal.dev/yandex_music._client.concerts/#yandex_music._client.concerts.ConcertsMixin.concert_skeleton)",
        "tags": [
          "Концерты"
        ],
        "parameters": [
          {
            "$ref": "#/components/parameters/X-Yandex-Music-Client"
          },
          {
            "$ref": "#/components/parameters/Accept-Language"
          },
          {
            "name": "concert_id",
            "in": "path",
            "required": true,
            "description": "Уникальный идентификатор концерта (UUID).",
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Успешный ответ.",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "invocationInfo": {
                      "$ref": "#/components/schemas/InvocationInfo"
                    },
                    "result": {
                      "$ref": "#/components/schemas/ConcertSkeleton"
                    }
                  }
                }
              }
            }
          }
        },
        "x-codeSamples": [
          {
            "lang": "python",
            "label": "yandex-music",
            "source": "# pip install yandex-music\nfrom yandex_music import Client\n\nclient = Client('TOKEN').init()\nclient.concert_skeleton(concert_id=...)"
          },
          {
            "lang": "python",
            "label": "yandex-music (async)",
            "source": "# pip install yandex-music\nfrom yandex_music import ClientAsync\n\nclient = await ClientAsync('TOKEN').init()\nawait client.concert_skeleton(concert_id=...)"
          }
        ]
      }
    },
    "/device/code": {
      "post": {
        "operationId": "request_device_code",
        "summary": "Запрос кода устройства для OAuth Device Flow.",
        "description": "Метод библиотеки: [`Client.request_device_code`](https://ym.marshal.dev/yandex_music._client.device_auth/#yandex_music._client.device_auth.DeviceAuthMixin.request_device_code)",
        "tags": [
          "OAuth Device Flow"
        ],
        "requestBody": {
          "content": {
            "application/x-www-form-urlencoded": {
              "schema": {
                "type": "object",
                "properties": {
                  "client_id": {
                    "type": "string",
                    "description": "OAuth client_id. По умолчанию — встроенный client_id Android-приложения Яндекс.Музыки."
                  },
                  "device_id": {
                    "type": "string",
                    "description": "Идентификатор устройства. По умолчанию — случайная строка из 10 символов."
                  },
                  "device_name": {
                    "type": "string",
                    "description": "Человекочитаемое имя устройства. По умолчанию — ``YandexMusicAPI``."
                  }
                }
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Успешный ответ.",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "invocationInfo": {
                      "$ref": "#/components/schemas/InvocationInfo"
                    },
                    "result": {
                      "$ref": "#/components/schemas/DeviceCode"
                    }
                  }
                }
              }
            }
          }
        },
        "x-codeSamples": [
          {
            "lang": "python",
            "label": "yandex-music",
            "source": "# pip install yandex-music\nfrom yandex_music import Client\n\nclient = Client('TOKEN').init()\nclient.request_device_code()"
          },
          {
            "lang": "python",
            "label": "yandex-music (async)",
            "source": "# pip install yandex-music\nfrom yandex_music import ClientAsync\n\nclient = await ClientAsync('TOKEN').init()\nawait client.request_device_code()"
          }
        ],
        "servers": [
          {
            "url": "https://oauth.yandex.ru"
          }
        ],
        "security": []
      }
    },
    "/feed": {
      "get": {
        "operationId": "feed",
        "summary": "Получение потока информации (фида) подобранного под пользователя. Содержит умные плейлисты.",
        "description": "Метод библиотеки: [`Client.feed`](https://ym.marshal.dev/yandex_music._client.landing/#yandex_music._client.landing.LandingMixin.feed)",
        "tags": [
          "Лендинг и фид"
        ],
        "parameters": [
          {
            "$ref": "#/components/parameters/X-Yandex-Music-Client"
          },
          {
            "$ref": "#/components/parameters/Accept-Language"
          }
        ],
        "responses": {
          "200": {
            "description": "Успешный ответ.",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "invocationInfo": {
                      "$ref": "#/components/schemas/InvocationInfo"
                    },
                    "result": {
                      "$ref": "#/components/schemas/Feed"
                    }
                  }
                }
              }
            }
          }
        },
        "x-codeSamples": [
          {
            "lang": "python",
            "label": "yandex-music",
            "source": "# pip install yandex-music\nfrom yandex_music import Client\n\nclient = Client('TOKEN').init()\nclient.feed()"
          },
          {
            "lang": "python",
            "label": "yandex-music (async)",
            "source": "# pip install yandex-music\nfrom yandex_music import ClientAsync\n\nclient = await ClientAsync('TOKEN').init()\nawait client.feed()"
          }
        ]
      }
    },
    "/feed/wizard/is-passed": {
      "get": {
        "operationId": "feed_wizard_is_passed",
        "summary": "Получение информации о прохождении визарда.",
        "description": "Метод библиотеки: [`Client.feed_wizard_is_passed`](https://ym.marshal.dev/yandex_music._client.landing/#yandex_music._client.landing.LandingMixin.feed_wizard_is_passed)",
        "tags": [
          "Лендинг и фид"
        ],
        "parameters": [
          {
            "$ref": "#/components/parameters/X-Yandex-Music-Client"
          },
          {
            "$ref": "#/components/parameters/Accept-Language"
          }
        ],
        "responses": {
          "200": {
            "description": "Успешный ответ.",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "invocationInfo": {
                      "$ref": "#/components/schemas/InvocationInfo"
                    },
                    "result": {
                      "type": "boolean"
                    }
                  }
                }
              }
            }
          }
        },
        "x-codeSamples": [
          {
            "lang": "python",
            "label": "yandex-music",
            "source": "# pip install yandex-music\nfrom yandex_music import Client\n\nclient = Client('TOKEN').init()\nclient.feed_wizard_is_passed()"
          },
          {
            "lang": "python",
            "label": "yandex-music (async)",
            "source": "# pip install yandex-music\nfrom yandex_music import ClientAsync\n\nclient = await ClientAsync('TOKEN').init()\nawait client.feed_wizard_is_passed()"
          }
        ]
      }
    },
    "/genres": {
      "get": {
        "operationId": "genres",
        "summary": "Получение жанров музыки.",
        "description": "Метод библиотеки: [`Client.genres`](https://ym.marshal.dev/yandex_music._client.landing/#yandex_music._client.landing.LandingMixin.genres)",
        "tags": [
          "Лендинг и фид"
        ],
        "parameters": [
          {
            "$ref": "#/components/parameters/X-Yandex-Music-Client"
          },
          {
            "$ref": "#/components/parameters/Accept-Language"
          }
        ],
        "responses": {
          "200": {
            "description": "Успешный ответ.",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "invocationInfo": {
                      "$ref": "#/components/schemas/InvocationInfo"
                    },
                    "result": {
                      "type": "array",
                      "items": {
                        "$ref": "#/components/schemas/Genre"
                      }
                    }
                  }
                }
              }
            }
          }
        },
        "x-codeSamples": [
          {
            "lang": "python",
            "label": "yandex-music",
            "source": "# pip install yandex-music\nfrom yandex_music import Client\n\nclient = Client('TOKEN').init()\nclient.genres()"
          },
          {
            "lang": "python",
            "label": "yandex-music (async)",
            "source": "# pip install yandex-music\nfrom yandex_music import ClientAsync\n\nclient = await ClientAsync('TOKEN').init()\nawait client.genres()"
          }
        ]
      }
    },
    "/get-file-info": {
      "get": {
        "operationId": "tracks_file_info",
        "summary": "Получение информации о файле трека, в том числе в lossless качестве.",
        "description": "Метод библиотеки: [`Client.tracks_file_info`](https://ym.marshal.dev/yandex_music._client.tracks/#yandex_music._client.tracks.TracksMixin.tracks_file_info)",
        "tags": [
          "Треки"
        ],
        "parameters": [
          {
            "$ref": "#/components/parameters/X-Yandex-Music-Client"
          },
          {
            "$ref": "#/components/parameters/Accept-Language"
          },
          {
            "name": "ts",
            "in": "query",
            "required": false,
            "description": "",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "trackId",
            "in": "query",
            "required": false,
            "description": "Уникальный идентификатор трека.",
            "schema": {
              "type": [
                "string",
                "integer"
              ]
            }
          },
          {
            "name": "quality",
            "in": "query",
            "required": false,
            "description": "Качество.",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "codecs",
            "in": "query",
            "required": false,
            "description": "Допустимые кодеки. По умолчанию все известные.",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "transports",
            "in": "query",
            "required": false,
            "description": "",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "sign",
            "in": "query",
            "required": false,
            "description": "",
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Успешный ответ.",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "invocationInfo": {
                      "$ref": "#/components/schemas/InvocationInfo"
                    },
                    "result": {
                      "$ref": "#/components/schemas/FileInfo"
                    }
                  }
                }
              }
            }
          }
        },
        "x-codeSamples": [
          {
            "lang": "python",
            "label": "yandex-music",
            "source": "# pip install yandex-music\nfrom yandex_music import Client\n\nclient = Client('TOKEN').init()\nclient.tracks_file_info(track_id=...)"
          },
          {
            "lang": "python",
            "label": "yandex-music (async)",
            "source": "# pip install yandex-music\nfrom yandex_music import ClientAsync\n\nclient = await ClientAsync('TOKEN').init()\nawait client.tracks_file_info(track_id=...)"
          }
        ]
      }
    },
    "/labels/{label_id}": {
      "get": {
        "operationId": "label",
        "summary": "Получение информации о лейбле.",
        "description": "Метод библиотеки: [`Client.label`](https://ym.marshal.dev/yandex_music._client.labels/#yandex_music._client.labels.LabelsMixin.label)",
        "tags": [
          "Лейблы"
        ],
        "parameters": [
          {
            "$ref": "#/components/parameters/X-Yandex-Music-Client"
          },
          {
            "$ref": "#/components/parameters/Accept-Language"
          },
          {
            "name": "label_id",
            "in": "path",
            "required": true,
            "description": "Уникальный идентификатор лейбла.",
            "schema": {
              "type": [
                "string",
                "integer"
              ]
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Успешный ответ.",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "invocationInfo": {
                      "$ref": "#/components/schemas/InvocationInfo"
                    },
                    "result": {
                      "$ref": "#/components/schemas/Label"
                    }
                  }
                }
              }
            }
          }
        },
        "x-codeSamples": [
          {
            "lang": "python",
            "label": "yandex-music",
            "source": "# pip install yandex-music\nfrom yandex_music import Client\n\nclient = Client('TOKEN').init()\nclient.label(label_id=...)"
          },
          {
            "lang": "python",
            "label": "yandex-music (async)",
            "source": "# pip install yandex-music\nfrom yandex_music import ClientAsync\n\nclient = await ClientAsync('TOKEN').init()\nawait client.label(label_id=...)"
          }
        ]
      }
    },
    "/labels/{label_id}/albums": {
      "get": {
        "operationId": "label_albums",
        "summary": "Получение альбомов лейбла.",
        "description": "Метод библиотеки: [`Client.label_albums`](https://ym.marshal.dev/yandex_music._client.labels/#yandex_music._client.labels.LabelsMixin.label_albums)",
        "tags": [
          "Лейблы"
        ],
        "parameters": [
          {
            "$ref": "#/components/parameters/X-Yandex-Music-Client"
          },
          {
            "$ref": "#/components/parameters/Accept-Language"
          },
          {
            "name": "label_id",
            "in": "path",
            "required": true,
            "description": "Уникальный идентификатор лейбла.",
            "schema": {
              "type": [
                "string",
                "integer"
              ]
            }
          },
          {
            "name": "page",
            "in": "query",
            "required": false,
            "description": "Номер страницы.",
            "schema": {
              "type": "integer"
            }
          },
          {
            "name": "pageSize",
            "in": "query",
            "required": false,
            "description": "Количество альбомов на странице.",
            "schema": {
              "type": "integer"
            }
          },
          {
            "name": "sortBy",
            "in": "query",
            "required": false,
            "description": "Параметр для сортировки.",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "sortOrder",
            "in": "query",
            "required": false,
            "description": "Порядок сортировки.",
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Успешный ответ.",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "invocationInfo": {
                      "$ref": "#/components/schemas/InvocationInfo"
                    },
                    "result": {
                      "$ref": "#/components/schemas/LabelAlbums"
                    }
                  }
                }
              }
            }
          }
        },
        "x-codeSamples": [
          {
            "lang": "python",
            "label": "yandex-music",
            "source": "# pip install yandex-music\nfrom yandex_music import Client\n\nclient = Client('TOKEN').init()\nclient.label_albums(label_id=...)"
          },
          {
            "lang": "python",
            "label": "yandex-music (async)",
            "source": "# pip install yandex-music\nfrom yandex_music import ClientAsync\n\nclient = await ClientAsync('TOKEN').init()\nawait client.label_albums(label_id=...)"
          }
        ]
      }
    },
    "/labels/{label_id}/artists": {
      "get": {
        "operationId": "label_artists",
        "summary": "Получение артистов лейбла.",
        "description": "Метод библиотеки: [`Client.label_artists`](https://ym.marshal.dev/yandex_music._client.labels/#yandex_music._client.labels.LabelsMixin.label_artists)",
        "tags": [
          "Лейблы"
        ],
        "parameters": [
          {
            "$ref": "#/components/parameters/X-Yandex-Music-Client"
          },
          {
            "$ref": "#/components/parameters/Accept-Language"
          },
          {
            "name": "label_id",
            "in": "path",
            "required": true,
            "description": "Уникальный идентификатор лейбла.",
            "schema": {
              "type": [
                "string",
                "integer"
              ]
            }
          },
          {
            "name": "page",
            "in": "query",
            "required": false,
            "description": "Номер страницы.",
            "schema": {
              "type": "integer"
            }
          },
          {
            "name": "pageSize",
            "in": "query",
            "required": false,
            "description": "Количество артистов на странице.",
            "schema": {
              "type": "integer"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Успешный ответ.",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "invocationInfo": {
                      "$ref": "#/components/schemas/InvocationInfo"
                    },
                    "result": {
                      "$ref": "#/components/schemas/LabelArtists"
                    }
                  }
                }
              }
            }
          }
        },
        "x-codeSamples": [
          {
            "lang": "python",
            "label": "yandex-music",
            "source": "# pip install yandex-music\nfrom yandex_music import Client\n\nclient = Client('TOKEN').init()\nclient.label_artists(label_id=...)"
          },
          {
            "lang": "python",
            "label": "yandex-music (async)",
            "source": "# pip install yandex-music\nfrom yandex_music import ClientAsync\n\nclient = await ClientAsync('TOKEN').init()\nawait client.label_artists(label_id=...)"
          }
        ]
      }
    },
    "/landing3": {
      "get": {
        "operationId": "landing",
        "summary": "Получение лендинг-страницы содержащий блоки с новыми релизами, чартами, плейлистами с новинками и т.д.",
        "description": "Метод библиотеки: [`Client.landing`](https://ym.marshal.dev/yandex_music._client.landing/#yandex_music._client.landing.LandingMixin.landing)",
        "tags": [
          "Лендинг и фид"
        ],
        "parameters": [
          {
            "$ref": "#/components/parameters/X-Yandex-Music-Client"
          },
          {
            "$ref": "#/components/parameters/Accept-Language"
          },
          {
            "name": "blocks",
            "in": "query",
            "required": false,
            "description": "Блок или список блоков необходимых для выдачи.",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "eitherUserId",
            "in": "query",
            "required": false,
            "description": "",
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Успешный ответ.",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "invocationInfo": {
                      "$ref": "#/components/schemas/InvocationInfo"
                    },
                    "result": {
                      "$ref": "#/components/schemas/Landing"
                    }
                  }
                }
              }
            }
          }
        },
        "x-codeSamples": [
          {
            "lang": "python",
            "label": "yandex-music",
            "source": "# pip install yandex-music\nfrom yandex_music import Client\n\nclient = Client('TOKEN').init()\nclient.landing(blocks=...)"
          },
          {
            "lang": "python",
            "label": "yandex-music (async)",
            "source": "# pip install yandex-music\nfrom yandex_music import ClientAsync\n\nclient = await ClientAsync('TOKEN').init()\nawait client.landing(blocks=...)"
          }
        ]
      }
    },
    "/landing3/chart": {
      "get": {
        "operationId": "chart",
        "summary": "Получение чарта.",
        "description": "Метод библиотеки: [`Client.chart`](https://ym.marshal.dev/yandex_music._client.landing/#yandex_music._client.landing.LandingMixin.chart)",
        "tags": [
          "Лендинг и фид"
        ],
        "parameters": [
          {
            "$ref": "#/components/parameters/X-Yandex-Music-Client"
          },
          {
            "$ref": "#/components/parameters/Accept-Language"
          }
        ],
        "responses": {
          "200": {
            "description": "Успешный ответ.",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "invocationInfo": {
                      "$ref": "#/components/schemas/InvocationInfo"
                    },
                    "result": {
                      "$ref": "#/components/schemas/ChartInfo"
                    }
                  }
                }
              }
            }
          }
        },
        "x-codeSamples": [
          {
            "lang": "python",
            "label": "yandex-music",
            "source": "# pip install yandex-music\nfrom yandex_music import Client\n\nclient = Client('TOKEN').init()\nclient.chart()"
          },
          {
            "lang": "python",
            "label": "yandex-music (async)",
            "source": "# pip install yandex-music\nfrom yandex_music import ClientAsync\n\nclient = await ClientAsync('TOKEN').init()\nawait client.chart()"
          }
        ]
      }
    },
    "/landing3/metatags": {
      "get": {
        "operationId": "metatags",
        "summary": "Получение дерева метатегов.",
        "description": "Метод библиотеки: [`Client.metatags`](https://ym.marshal.dev/yandex_music._client.metatags/#yandex_music._client.metatags.MetatagsMixin.metatags)",
        "tags": [
          "Метатеги"
        ],
        "parameters": [
          {
            "$ref": "#/components/parameters/X-Yandex-Music-Client"
          },
          {
            "$ref": "#/components/parameters/Accept-Language"
          }
        ],
        "responses": {
          "200": {
            "description": "Успешный ответ.",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "invocationInfo": {
                      "$ref": "#/components/schemas/InvocationInfo"
                    },
                    "result": {
                      "$ref": "#/components/schemas/Metatags"
                    }
                  }
                }
              }
            }
          }
        },
        "x-codeSamples": [
          {
            "lang": "python",
            "label": "yandex-music",
            "source": "# pip install yandex-music\nfrom yandex_music import Client\n\nclient = Client('TOKEN').init()\nclient.metatags()"
          },
          {
            "lang": "python",
            "label": "yandex-music (async)",
            "source": "# pip install yandex-music\nfrom yandex_music import ClientAsync\n\nclient = await ClientAsync('TOKEN').init()\nawait client.metatags()"
          }
        ]
      }
    },
    "/landing3/new-playlists": {
      "get": {
        "operationId": "new_playlists",
        "summary": "Получение полного списка всех новых плейлистов.",
        "description": "Метод библиотеки: [`Client.new_playlists`](https://ym.marshal.dev/yandex_music._client.landing/#yandex_music._client.landing.LandingMixin.new_playlists)",
        "tags": [
          "Лендинг и фид"
        ],
        "parameters": [
          {
            "$ref": "#/components/parameters/X-Yandex-Music-Client"
          },
          {
            "$ref": "#/components/parameters/Accept-Language"
          }
        ],
        "responses": {
          "200": {
            "description": "Успешный ответ.",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "invocationInfo": {
                      "$ref": "#/components/schemas/InvocationInfo"
                    },
                    "result": {
                      "$ref": "#/components/schemas/LandingList"
                    }
                  }
                }
              }
            }
          }
        },
        "x-codeSamples": [
          {
            "lang": "python",
            "label": "yandex-music",
            "source": "# pip install yandex-music\nfrom yandex_music import Client\n\nclient = Client('TOKEN').init()\nclient.new_playlists()"
          },
          {
            "lang": "python",
            "label": "yandex-music (async)",
            "source": "# pip install yandex-music\nfrom yandex_music import ClientAsync\n\nclient = await ClientAsync('TOKEN').init()\nawait client.new_playlists()"
          }
        ]
      }
    },
    "/landing3/new-releases": {
      "get": {
        "operationId": "new_releases",
        "summary": "Получение полного списка всех новых релизов (альбомов).",
        "description": "Метод библиотеки: [`Client.new_releases`](https://ym.marshal.dev/yandex_music._client.landing/#yandex_music._client.landing.LandingMixin.new_releases)",
        "tags": [
          "Лендинг и фид"
        ],
        "parameters": [
          {
            "$ref": "#/components/parameters/X-Yandex-Music-Client"
          },
          {
            "$ref": "#/components/parameters/Accept-Language"
          }
        ],
        "responses": {
          "200": {
            "description": "Успешный ответ.",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "invocationInfo": {
                      "$ref": "#/components/schemas/InvocationInfo"
                    },
                    "result": {
                      "$ref": "#/components/schemas/LandingList"
                    }
                  }
                }
              }
            }
          }
        },
        "x-codeSamples": [
          {
            "lang": "python",
            "label": "yandex-music",
            "source": "# pip install yandex-music\nfrom yandex_music import Client\n\nclient = Client('TOKEN').init()\nclient.new_releases()"
          },
          {
            "lang": "python",
            "label": "yandex-music (async)",
            "source": "# pip install yandex-music\nfrom yandex_music import ClientAsync\n\nclient = await ClientAsync('TOKEN').init()\nawait client.new_releases()"
          }
        ]
      }
    },
    "/landing3/podcasts": {
      "get": {
        "operationId": "podcasts",
        "summary": "Получение подкастов с лендинга.",
        "description": "Метод библиотеки: [`Client.podcasts`](https://ym.marshal.dev/yandex_music._client.landing/#yandex_music._client.landing.LandingMixin.podcasts)",
        "tags": [
          "Лендинг и фид"
        ],
        "parameters": [
          {
            "$ref": "#/components/parameters/X-Yandex-Music-Client"
          },
          {
            "$ref": "#/components/parameters/Accept-Language"
          }
        ],
        "responses": {
          "200": {
            "description": "Успешный ответ.",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "invocationInfo": {
                      "$ref": "#/components/schemas/InvocationInfo"
                    },
                    "result": {
                      "$ref": "#/components/schemas/LandingList"
                    }
                  }
                }
              }
            }
          }
        },
        "x-codeSamples": [
          {
            "lang": "python",
            "label": "yandex-music",
            "source": "# pip install yandex-music\nfrom yandex_music import Client\n\nclient = Client('TOKEN').init()\nclient.podcasts()"
          },
          {
            "lang": "python",
            "label": "yandex-music (async)",
            "source": "# pip install yandex-music\nfrom yandex_music import ClientAsync\n\nclient = await ClientAsync('TOKEN').init()\nawait client.podcasts()"
          }
        ]
      }
    },
    "/metatags/{metatag_id}": {
      "get": {
        "operationId": "metatag",
        "summary": "Получение информации о метатеге.",
        "description": "Метод библиотеки: [`Client.metatag`](https://ym.marshal.dev/yandex_music._client.metatags/#yandex_music._client.metatags.MetatagsMixin.metatag)",
        "tags": [
          "Метатеги"
        ],
        "parameters": [
          {
            "$ref": "#/components/parameters/X-Yandex-Music-Client"
          },
          {
            "$ref": "#/components/parameters/Accept-Language"
          },
          {
            "name": "metatag_id",
            "in": "path",
            "required": true,
            "description": "Идентификатор метатега.",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "tracksCount",
            "in": "query",
            "required": false,
            "description": "Количество треков в ответе.",
            "schema": {
              "type": "integer"
            }
          },
          {
            "name": "artistsCount",
            "in": "query",
            "required": false,
            "description": "Количество артистов в ответе.",
            "schema": {
              "type": "integer"
            }
          },
          {
            "name": "composersCount",
            "in": "query",
            "required": false,
            "description": "Количество композиторов в ответе.",
            "schema": {
              "type": "integer"
            }
          },
          {
            "name": "albumsCount",
            "in": "query",
            "required": false,
            "description": "Количество альбомов в ответе.",
            "schema": {
              "type": "integer"
            }
          },
          {
            "name": "promotionsCount",
            "in": "query",
            "required": false,
            "description": "Количество промоакций в ответе.",
            "schema": {
              "type": "integer"
            }
          },
          {
            "name": "featuresCount",
            "in": "query",
            "required": false,
            "description": "Количество фич в ответе.",
            "schema": {
              "type": "integer"
            }
          },
          {
            "name": "playlistsCount",
            "in": "query",
            "required": false,
            "description": "Количество плейлистов в ответе.",
            "schema": {
              "type": "integer"
            }
          },
          {
            "name": "concertsCount",
            "in": "query",
            "required": false,
            "description": "Количество концертов в ответе.",
            "schema": {
              "type": "integer"
            }
          },
          {
            "name": "tracksSortBy",
            "in": "query",
            "required": false,
            "description": "Параметр сортировки треков.",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "albumsSortBy",
            "in": "query",
            "required": false,
            "description": "Параметр сортировки альбомов.",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "withLikesCount",
            "in": "query",
            "required": false,
            "description": "Возвращать ли количество лайков.",
            "schema": {
              "type": "boolean"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Успешный ответ.",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "invocationInfo": {
                      "$ref": "#/components/schemas/InvocationInfo"
                    },
                    "result": {
                      "$ref": "#/components/schemas/Metatag"
                    }
                  }
                }
              }
            }
          }
        },
        "x-codeSamples": [
          {
            "lang": "python",
            "label": "yandex-music",
            "source": "# pip install yandex-music\nfrom yandex_music import Client\n\nclient = Client('TOKEN').init()\nclient.metatag(metatag_id=...)"
          },
          {
            "lang": "python",
            "label": "yandex-music (async)",
            "source": "# pip install yandex-music\nfrom yandex_music import ClientAsync\n\nclient = await ClientAsync('TOKEN').init()\nawait client.metatag(metatag_id=...)"
          }
        ]
      }
    },
    "/metatags/{metatag_id}/albums": {
      "get": {
        "operationId": "metatag_albums",
        "summary": "Получение альбомов метатега.",
        "description": "Метод библиотеки: [`Client.metatag_albums`](https://ym.marshal.dev/yandex_music._client.metatags/#yandex_music._client.metatags.MetatagsMixin.metatag_albums)",
        "tags": [
          "Метатеги"
        ],
        "parameters": [
          {
            "$ref": "#/components/parameters/X-Yandex-Music-Client"
          },
          {
            "$ref": "#/components/parameters/Accept-Language"
          },
          {
            "name": "metatag_id",
            "in": "path",
            "required": true,
            "description": "Идентификатор метатега.",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "offset",
            "in": "query",
            "required": false,
            "description": "Смещение от начала списка.",
            "schema": {
              "type": "integer"
            }
          },
          {
            "name": "limit",
            "in": "query",
            "required": false,
            "description": "Количество альбомов на странице.",
            "schema": {
              "type": "integer"
            }
          },
          {
            "name": "period",
            "in": "query",
            "required": false,
            "description": "Период выборки.",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "sortBy",
            "in": "query",
            "required": false,
            "description": "Параметр сортировки.",
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Успешный ответ.",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "invocationInfo": {
                      "$ref": "#/components/schemas/InvocationInfo"
                    },
                    "result": {
                      "$ref": "#/components/schemas/MetatagAlbums"
                    }
                  }
                }
              }
            }
          }
        },
        "x-codeSamples": [
          {
            "lang": "python",
            "label": "yandex-music",
            "source": "# pip install yandex-music\nfrom yandex_music import Client\n\nclient = Client('TOKEN').init()\nclient.metatag_albums(metatag_id=...)"
          },
          {
            "lang": "python",
            "label": "yandex-music (async)",
            "source": "# pip install yandex-music\nfrom yandex_music import ClientAsync\n\nclient = await ClientAsync('TOKEN').init()\nawait client.metatag_albums(metatag_id=...)"
          }
        ]
      }
    },
    "/metatags/{metatag_id}/artists": {
      "get": {
        "operationId": "metatag_artists",
        "summary": "Получение артистов метатега.",
        "description": "Метод библиотеки: [`Client.metatag_artists`](https://ym.marshal.dev/yandex_music._client.metatags/#yandex_music._client.metatags.MetatagsMixin.metatag_artists)",
        "tags": [
          "Метатеги"
        ],
        "parameters": [
          {
            "$ref": "#/components/parameters/X-Yandex-Music-Client"
          },
          {
            "$ref": "#/components/parameters/Accept-Language"
          },
          {
            "name": "metatag_id",
            "in": "path",
            "required": true,
            "description": "Идентификатор метатега.",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "period",
            "in": "query",
            "required": false,
            "description": "Период выборки.",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "offset",
            "in": "query",
            "required": false,
            "description": "Смещение от начала списка.",
            "schema": {
              "type": "integer"
            }
          },
          {
            "name": "limit",
            "in": "query",
            "required": false,
            "description": "Количество артистов на странице.",
            "schema": {
              "type": "integer"
            }
          },
          {
            "name": "sortBy",
            "in": "query",
            "required": false,
            "description": "Параметр сортировки.",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "tracksPerArtist",
            "in": "query",
            "required": false,
            "description": "Количество популярных треков на артиста.",
            "schema": {
              "type": "integer"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Успешный ответ.",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "invocationInfo": {
                      "$ref": "#/components/schemas/InvocationInfo"
                    },
                    "result": {
                      "$ref": "#/components/schemas/MetatagArtists"
                    }
                  }
                }
              }
            }
          }
        },
        "x-codeSamples": [
          {
            "lang": "python",
            "label": "yandex-music",
            "source": "# pip install yandex-music\nfrom yandex_music import Client\n\nclient = Client('TOKEN').init()\nclient.metatag_artists(metatag_id=...)"
          },
          {
            "lang": "python",
            "label": "yandex-music (async)",
            "source": "# pip install yandex-music\nfrom yandex_music import ClientAsync\n\nclient = await ClientAsync('TOKEN').init()\nawait client.metatag_artists(metatag_id=...)"
          }
        ]
      }
    },
    "/metatags/{metatag_id}/playlists": {
      "get": {
        "operationId": "metatag_playlists",
        "summary": "Получение плейлистов метатега.",
        "description": "Метод библиотеки: [`Client.metatag_playlists`](https://ym.marshal.dev/yandex_music._client.metatags/#yandex_music._client.metatags.MetatagsMixin.metatag_playlists)",
        "tags": [
          "Метатеги"
        ],
        "parameters": [
          {
            "$ref": "#/components/parameters/X-Yandex-Music-Client"
          },
          {
            "$ref": "#/components/parameters/Accept-Language"
          },
          {
            "name": "metatag_id",
            "in": "path",
            "required": true,
            "description": "Идентификатор метатега.",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "offset",
            "in": "query",
            "required": false,
            "description": "Смещение от начала списка.",
            "schema": {
              "type": "integer"
            }
          },
          {
            "name": "limit",
            "in": "query",
            "required": false,
            "description": "Количество плейлистов на странице.",
            "schema": {
              "type": "integer"
            }
          },
          {
            "name": "sortBy",
            "in": "query",
            "required": false,
            "description": "Параметр сортировки.",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "withLikesCount",
            "in": "query",
            "required": false,
            "description": "Возвращать ли количество лайков.",
            "schema": {
              "type": "boolean"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Успешный ответ.",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "invocationInfo": {
                      "$ref": "#/components/schemas/InvocationInfo"
                    },
                    "result": {
                      "$ref": "#/components/schemas/MetatagPlaylists"
                    }
                  }
                }
              }
            }
          }
        },
        "x-codeSamples": [
          {
            "lang": "python",
            "label": "yandex-music",
            "source": "# pip install yandex-music\nfrom yandex_music import Client\n\nclient = Client('TOKEN').init()\nclient.metatag_playlists(metatag_id=...)"
          },
          {
            "lang": "python",
            "label": "yandex-music (async)",
            "source": "# pip install yandex-music\nfrom yandex_music import ClientAsync\n\nclient = await ClientAsync('TOKEN').init()\nawait client.metatag_playlists(metatag_id=...)"
          }
        ]
      }
    },
    "/music-history": {
      "get": {
        "operationId": "music_history",
        "summary": "Получение истории прослушивания.",
        "description": "Метод библиотеки: [`Client.music_history`](https://ym.marshal.dev/yandex_music._client.music_history/#yandex_music._client.music_history.MusicHistoryMixin.music_history)",
        "tags": [
          "История прослушивания"
        ],
        "parameters": [
          {
            "$ref": "#/components/parameters/X-Yandex-Music-Client"
          },
          {
            "$ref": "#/components/parameters/Accept-Language"
          },
          {
            "name": "fullModelsCount",
            "in": "query",
            "required": false,
            "description": "Количество полных моделей для возврата.",
            "schema": {
              "type": "integer"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Успешный ответ.",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "invocationInfo": {
                      "$ref": "#/components/schemas/InvocationInfo"
                    },
                    "result": {
                      "$ref": "#/components/schemas/MusicHistory"
                    }
                  }
                }
              }
            }
          }
        },
        "x-codeSamples": [
          {
            "lang": "python",
            "label": "yandex-music",
            "source": "# pip install yandex-music\nfrom yandex_music import Client\n\nclient = Client('TOKEN').init()\nclient.music_history()"
          },
          {
            "lang": "python",
            "label": "yandex-music (async)",
            "source": "# pip install yandex-music\nfrom yandex_music import ClientAsync\n\nclient = await ClientAsync('TOKEN').init()\nawait client.music_history()"
          }
        ]
      }
    },
    "/music-history/items": {
      "post": {
        "operationId": "music_history_items",
        "summary": "Получение элементов истории прослушивания по списку идентификаторов.",
        "description": "Метод библиотеки: [`Client.music_history_items`](https://ym.marshal.dev/yandex_music._client.music_history/#yandex_music._client.music_history.MusicHistoryMixin.music_history_items)",
        "tags": [
          "История прослушивания"
        ],
        "parameters": [
          {
            "$ref": "#/components/parameters/X-Yandex-Music-Client"
          },
          {
            "$ref": "#/components/parameters/Accept-Language"
          }
        ],
        "responses": {
          "200": {
            "description": "Успешный ответ.",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "invocationInfo": {
                      "$ref": "#/components/schemas/InvocationInfo"
                    },
                    "result": {
                      "$ref": "#/components/schemas/MusicHistoryItems"
                    }
                  }
                }
              }
            }
          }
        },
        "x-codeSamples": [
          {
            "lang": "python",
            "label": "yandex-music",
            "source": "# pip install yandex-music\nfrom yandex_music import Client\n\nclient = Client('TOKEN').init()\nclient.music_history_items()"
          },
          {
            "lang": "python",
            "label": "yandex-music (async)",
            "source": "# pip install yandex-music\nfrom yandex_music import ClientAsync\n\nclient = await ClientAsync('TOKEN').init()\nawait client.music_history_items()"
          }
        ]
      }
    },
    "/permission-alerts": {
      "get": {
        "operationId": "permission_alerts",
        "summary": "Получение оповещений. Нет обязательных параметров.",
        "description": "Метод библиотеки: [`Client.permission_alerts`](https://ym.marshal.dev/yandex_music._client.account/#yandex_music._client.account.AccountMixin.permission_alerts)",
        "tags": [
          "Аккаунт"
        ],
        "parameters": [
          {
            "$ref": "#/components/parameters/X-Yandex-Music-Client"
          },
          {
            "$ref": "#/components/parameters/Accept-Language"
          }
        ],
        "responses": {
          "200": {
            "description": "Успешный ответ.",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "invocationInfo": {
                      "$ref": "#/components/schemas/InvocationInfo"
                    },
                    "result": {
                      "$ref": "#/components/schemas/PermissionAlerts"
                    }
                  }
                }
              }
            }
          }
        },
        "x-codeSamples": [
          {
            "lang": "python",
            "label": "yandex-music",
            "source": "# pip install yandex-music\nfrom yandex_music import Client\n\nclient = Client('TOKEN').init()\nclient.permission_alerts()"
          },
          {
            "lang": "python",
            "label": "yandex-music (async)",
            "source": "# pip install yandex-music\nfrom yandex_music import ClientAsync\n\nclient = await ClientAsync('TOKEN').init()\nawait client.permission_alerts()"
          }
        ]
      }
    },
    "/pin/album": {
      "put": {
        "operationId": "pin_album",
        "summary": "Закрепление альбома.",
        "description": "Метод библиотеки: [`Client.pin_album`](https://ym.marshal.dev/yandex_music._client.pins/#yandex_music._client.pins.PinsMixin.pin_album)",
        "tags": [
          "Закреплённые"
        ],
        "parameters": [
          {
            "$ref": "#/components/parameters/X-Yandex-Music-Client"
          },
          {
            "$ref": "#/components/parameters/Accept-Language"
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "properties": {
                  "id": {
                    "type": "string",
                    "description": ""
                  }
                }
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Успешный ответ.",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "invocationInfo": {
                      "$ref": "#/components/schemas/InvocationInfo"
                    },
                    "result": {
                      "$ref": "#/components/schemas/Pin"
                    }
                  }
                }
              }
            }
          }
        },
        "x-codeSamples": [
          {
            "lang": "python",
            "label": "yandex-music",
            "source": "# pip install yandex-music\nfrom yandex_music import Client\n\nclient = Client('TOKEN').init()\nclient.pin_album(album_id=...)"
          },
          {
            "lang": "python",
            "label": "yandex-music (async)",
            "source": "# pip install yandex-music\nfrom yandex_music import ClientAsync\n\nclient = await ClientAsync('TOKEN').init()\nawait client.pin_album(album_id=...)"
          }
        ]
      },
      "delete": {
        "operationId": "unpin_album",
        "summary": "Открепление альбома.",
        "description": "Метод библиотеки: [`Client.unpin_album`](https://ym.marshal.dev/yandex_music._client.pins/#yandex_music._client.pins.PinsMixin.unpin_album)",
        "tags": [
          "Закреплённые"
        ],
        "parameters": [
          {
            "$ref": "#/components/parameters/X-Yandex-Music-Client"
          },
          {
            "$ref": "#/components/parameters/Accept-Language"
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "properties": {
                  "id": {
                    "type": "string",
                    "description": ""
                  }
                }
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Успешный ответ.",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "invocationInfo": {
                      "$ref": "#/components/schemas/InvocationInfo"
                    },
                    "result": {
                      "type": "boolean"
                    }
                  }
                }
              }
            }
          }
        },
        "x-codeSamples": [
          {
            "lang": "python",
            "label": "yandex-music",
            "source": "# pip install yandex-music\nfrom yandex_music import Client\n\nclient = Client('TOKEN').init()\nclient.unpin_album(album_id=...)"
          },
          {
            "lang": "python",
            "label": "yandex-music (async)",
            "source": "# pip install yandex-music\nfrom yandex_music import ClientAsync\n\nclient = await ClientAsync('TOKEN').init()\nawait client.unpin_album(album_id=...)"
          }
        ]
      }
    },
    "/pin/artist": {
      "put": {
        "operationId": "pin_artist",
        "summary": "Закрепление артиста.",
        "description": "Метод библиотеки: [`Client.pin_artist`](https://ym.marshal.dev/yandex_music._client.pins/#yandex_music._client.pins.PinsMixin.pin_artist)",
        "tags": [
          "Закреплённые"
        ],
        "parameters": [
          {
            "$ref": "#/components/parameters/X-Yandex-Music-Client"
          },
          {
            "$ref": "#/components/parameters/Accept-Language"
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "properties": {
                  "id": {
                    "type": "string",
                    "description": ""
                  }
                }
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Успешный ответ.",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "invocationInfo": {
                      "$ref": "#/components/schemas/InvocationInfo"
                    },
                    "result": {
                      "$ref": "#/components/schemas/Pin"
                    }
                  }
                }
              }
            }
          }
        },
        "x-codeSamples": [
          {
            "lang": "python",
            "label": "yandex-music",
            "source": "# pip install yandex-music\nfrom yandex_music import Client\n\nclient = Client('TOKEN').init()\nclient.pin_artist(artist_id=...)"
          },
          {
            "lang": "python",
            "label": "yandex-music (async)",
            "source": "# pip install yandex-music\nfrom yandex_music import ClientAsync\n\nclient = await ClientAsync('TOKEN').init()\nawait client.pin_artist(artist_id=...)"
          }
        ]
      },
      "delete": {
        "operationId": "unpin_artist",
        "summary": "Открепление артиста.",
        "description": "Метод библиотеки: [`Client.unpin_artist`](https://ym.marshal.dev/yandex_music._client.pins/#yandex_music._client.pins.PinsMixin.unpin_artist)",
        "tags": [
          "Закреплённые"
        ],
        "parameters": [
          {
            "$ref": "#/components/parameters/X-Yandex-Music-Client"
          },
          {
            "$ref": "#/components/parameters/Accept-Language"
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "properties": {
                  "id": {
                    "type": "string",
                    "description": ""
                  }
                }
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Успешный ответ.",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "invocationInfo": {
                      "$ref": "#/components/schemas/InvocationInfo"
                    },
                    "result": {
                      "type": "boolean"
                    }
                  }
                }
              }
            }
          }
        },
        "x-codeSamples": [
          {
            "lang": "python",
            "label": "yandex-music",
            "source": "# pip install yandex-music\nfrom yandex_music import Client\n\nclient = Client('TOKEN').init()\nclient.unpin_artist(artist_id=...)"
          },
          {
            "lang": "python",
            "label": "yandex-music (async)",
            "source": "# pip install yandex-music\nfrom yandex_music import ClientAsync\n\nclient = await ClientAsync('TOKEN').init()\nawait client.unpin_artist(artist_id=...)"
          }
        ]
      }
    },
    "/pin/playlist": {
      "put": {
        "operationId": "pin_playlist",
        "summary": "Закрепление плейлиста.",
        "description": "Метод библиотеки: [`Client.pin_playlist`](https://ym.marshal.dev/yandex_music._client.pins/#yandex_music._client.pins.PinsMixin.pin_playlist)",
        "tags": [
          "Закреплённые"
        ],
        "parameters": [
          {
            "$ref": "#/components/parameters/X-Yandex-Music-Client"
          },
          {
            "$ref": "#/components/parameters/Accept-Language"
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "properties": {
                  "uid": {
                    "type": "string",
                    "description": "Уникальный идентификатор владельца плейлиста."
                  },
                  "kind": {
                    "type": "string",
                    "description": "Номер плейлиста."
                  }
                }
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Успешный ответ.",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "invocationInfo": {
                      "$ref": "#/components/schemas/InvocationInfo"
                    },
                    "result": {
                      "$ref": "#/components/schemas/Pin"
                    }
                  }
                }
              }
            }
          }
        },
        "x-codeSamples": [
          {
            "lang": "python",
            "label": "yandex-music",
            "source": "# pip install yandex-music\nfrom yandex_music import Client\n\nclient = Client('TOKEN').init()\nclient.pin_playlist(uid=..., kind=...)"
          },
          {
            "lang": "python",
            "label": "yandex-music (async)",
            "source": "# pip install yandex-music\nfrom yandex_music import ClientAsync\n\nclient = await ClientAsync('TOKEN').init()\nawait client.pin_playlist(uid=..., kind=...)"
          }
        ]
      },
      "delete": {
        "operationId": "unpin_playlist",
        "summary": "Открепление плейлиста.",
        "description": "Метод библиотеки: [`Client.unpin_playlist`](https://ym.marshal.dev/yandex_music._client.pins/#yandex_music._client.pins.PinsMixin.unpin_playlist)",
        "tags": [
          "Закреплённые"
        ],
        "parameters": [
          {
            "$ref": "#/components/parameters/X-Yandex-Music-Client"
          },
          {
            "$ref": "#/components/parameters/Accept-Language"
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "properties": {
                  "uid": {
                    "type": "string",
                    "description": "Уникальный идентификатор владельца плейлиста."
                  },
                  "kind": {
                    "type": "string",
                    "description": "Номер плейлиста."
                  }
                }
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Успешный ответ.",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "invocationInfo": {
                      "$ref": "#/components/schemas/InvocationInfo"
                    },
                    "result": {
                      "type": "boolean"
                    }
                  }
                }
              }
            }
          }
        },
        "x-codeSamples": [
          {
            "lang": "python",
            "label": "yandex-music",
            "source": "# pip install yandex-music\nfrom yandex_music import Client\n\nclient = Client('TOKEN').init()\nclient.unpin_playlist(uid=..., kind=...)"
          },
          {
            "lang": "python",
            "label": "yandex-music (async)",
            "source": "# pip install yandex-music\nfrom yandex_music import ClientAsync\n\nclient = await ClientAsync('TOKEN').init()\nawait client.unpin_playlist(uid=..., kind=...)"
          }
        ]
      }
    },
    "/pin/wave": {
      "put": {
        "operationId": "pin_wave",
        "summary": "Закрепление волны.",
        "description": "Метод библиотеки: [`Client.pin_wave`](https://ym.marshal.dev/yandex_music._client.pins/#yandex_music._client.pins.PinsMixin.pin_wave)",
        "tags": [
          "Закреплённые"
        ],
        "parameters": [
          {
            "$ref": "#/components/parameters/X-Yandex-Music-Client"
          },
          {
            "$ref": "#/components/parameters/Accept-Language"
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "properties": {
                  "seeds": {
                    "type": "string",
                    "description": "Идентификатор волны (например, \"artist:12345\")."
                  }
                }
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Успешный ответ.",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "invocationInfo": {
                      "$ref": "#/components/schemas/InvocationInfo"
                    },
                    "result": {
                      "$ref": "#/components/schemas/Pin"
                    }
                  }
                }
              }
            }
          }
        },
        "x-codeSamples": [
          {
            "lang": "python",
            "label": "yandex-music",
            "source": "# pip install yandex-music\nfrom yandex_music import Client\n\nclient = Client('TOKEN').init()\nclient.pin_wave(seeds=...)"
          },
          {
            "lang": "python",
            "label": "yandex-music (async)",
            "source": "# pip install yandex-music\nfrom yandex_music import ClientAsync\n\nclient = await ClientAsync('TOKEN').init()\nawait client.pin_wave(seeds=...)"
          }
        ]
      },
      "delete": {
        "operationId": "unpin_wave",
        "summary": "Открепление волны.",
        "description": "Метод библиотеки: [`Client.unpin_wave`](https://ym.marshal.dev/yandex_music._client.pins/#yandex_music._client.pins.PinsMixin.unpin_wave)",
        "tags": [
          "Закреплённые"
        ],
        "parameters": [
          {
            "$ref": "#/components/parameters/X-Yandex-Music-Client"
          },
          {
            "$ref": "#/components/parameters/Accept-Language"
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "properties": {
                  "seeds": {
                    "type": "string",
                    "description": "Идентификатор волны."
                  }
                }
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Успешный ответ.",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "invocationInfo": {
                      "$ref": "#/components/schemas/InvocationInfo"
                    },
                    "result": {
                      "type": "boolean"
                    }
                  }
                }
              }
            }
          }
        },
        "x-codeSamples": [
          {
            "lang": "python",
            "label": "yandex-music",
            "source": "# pip install yandex-music\nfrom yandex_music import Client\n\nclient = Client('TOKEN').init()\nclient.unpin_wave(seeds=...)"
          },
          {
            "lang": "python",
            "label": "yandex-music (async)",
            "source": "# pip install yandex-music\nfrom yandex_music import ClientAsync\n\nclient = await ClientAsync('TOKEN').init()\nawait client.unpin_wave(seeds=...)"
          }
        ]
      }
    },
    "/pins": {
      "get": {
        "operationId": "pins",
        "summary": "Получение списка закреплённых элементов.",
        "description": "Метод библиотеки: [`Client.pins`](https://ym.marshal.dev/yandex_music._client.pins/#yandex_music._client.pins.PinsMixin.pins)",
        "tags": [
          "Закреплённые"
        ],
        "parameters": [
          {
            "$ref": "#/components/parameters/X-Yandex-Music-Client"
          },
          {
            "$ref": "#/components/parameters/Accept-Language"
          }
        ],
        "responses": {
          "200": {
            "description": "Успешный ответ.",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "invocationInfo": {
                      "$ref": "#/components/schemas/InvocationInfo"
                    },
                    "result": {
                      "$ref": "#/components/schemas/PinsList"
                    }
                  }
                }
              }
            }
          }
        },
        "x-codeSamples": [
          {
            "lang": "python",
            "label": "yandex-music",
            "source": "# pip install yandex-music\nfrom yandex_music import Client\n\nclient = Client('TOKEN').init()\nclient.pins()"
          },
          {
            "lang": "python",
            "label": "yandex-music (async)",
            "source": "# pip install yandex-music\nfrom yandex_music import ClientAsync\n\nclient = await ClientAsync('TOKEN').init()\nawait client.pins()"
          }
        ]
      }
    },
    "/play-audio": {
      "post": {
        "operationId": "play_audio",
        "summary": "Метод для отправки текущего состояния прослушиваемого трека.",
        "description": "Метод библиотеки: [`Client.play_audio`](https://ym.marshal.dev/yandex_music._client.tracks/#yandex_music._client.tracks.TracksMixin.play_audio)",
        "tags": [
          "Треки"
        ],
        "parameters": [
          {
            "$ref": "#/components/parameters/X-Yandex-Music-Client"
          },
          {
            "$ref": "#/components/parameters/Accept-Language"
          }
        ],
        "requestBody": {
          "content": {
            "application/x-www-form-urlencoded": {
              "schema": {
                "type": "object",
                "properties": {
                  "track-id": {
                    "type": "string",
                    "description": ""
                  },
                  "from-cache": {
                    "type": "string",
                    "description": ""
                  },
                  "from": {
                    "type": "string",
                    "description": "Наименования клиента с которого происходит прослушивание."
                  },
                  "play-id": {
                    "type": "string",
                    "description": ""
                  },
                  "uid": {
                    "type": "string",
                    "description": "Уникальный идентификатор пользователя."
                  },
                  "timestamp": {
                    "type": "string",
                    "description": "Текущая дата и время в ISO."
                  },
                  "track-length-seconds": {
                    "type": "string",
                    "description": ""
                  },
                  "total-played-seconds": {
                    "type": "string",
                    "description": ""
                  },
                  "end-position-seconds": {
                    "type": "string",
                    "description": ""
                  },
                  "album-id": {
                    "type": "string",
                    "description": ""
                  },
                  "playlist-id": {
                    "type": "string",
                    "description": ""
                  },
                  "client-now": {
                    "type": "string",
                    "description": ""
                  }
                }
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Успешный ответ.",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "invocationInfo": {
                      "$ref": "#/components/schemas/InvocationInfo"
                    },
                    "result": {
                      "type": "boolean"
                    }
                  }
                }
              }
            }
          }
        },
        "x-codeSamples": [
          {
            "lang": "python",
            "label": "yandex-music",
            "source": "# pip install yandex-music\nfrom yandex_music import Client\n\nclient = Client('TOKEN').init()\nclient.play_audio(track_id=..., from_=..., album_id=...)"
          },
          {
            "lang": "python",
            "label": "yandex-music (async)",
            "source": "# pip install yandex-music\nfrom yandex_music import ClientAsync\n\nclient = await ClientAsync('TOKEN').init()\nawait client.play_audio(track_id=..., from_=..., album_id=...)"
          }
        ]
      }
    },
    "/playlist/{playlist_uuid}": {
      "get": {
        "operationId": "playlist",
        "summary": "Получение плейлиста по его UUID.",
        "description": "Метод библиотеки: [`Client.playlist`](https://ym.marshal.dev/yandex_music._client.playlists/#yandex_music._client.playlists.PlaylistsMixin.playlist)",
        "tags": [
          "Плейлисты"
        ],
        "parameters": [
          {
            "$ref": "#/components/parameters/X-Yandex-Music-Client"
          },
          {
            "$ref": "#/components/parameters/Accept-Language"
          },
          {
            "name": "playlist_uuid",
            "in": "path",
            "required": true,
            "description": "UUID плейлиста.",
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Успешный ответ.",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "invocationInfo": {
                      "$ref": "#/components/schemas/InvocationInfo"
                    },
                    "result": {
                      "$ref": "#/components/schemas/Playlist"
                    }
                  }
                }
              }
            }
          }
        },
        "x-codeSamples": [
          {
            "lang": "python",
            "label": "yandex-music",
            "source": "# pip install yandex-music\nfrom yandex_music import Client\n\nclient = Client('TOKEN').init()\nclient.playlist(playlist_uuid=...)"
          },
          {
            "lang": "python",
            "label": "yandex-music (async)",
            "source": "# pip install yandex-music\nfrom yandex_music import ClientAsync\n\nclient = await ClientAsync('TOKEN').init()\nawait client.playlist(playlist_uuid=...)"
          }
        ]
      }
    },
    "/playlist/{playlist_uuid}/similar-entities": {
      "get": {
        "operationId": "playlist_similar_entities",
        "summary": "Получение похожих сущностей для плейлиста.",
        "description": "Метод библиотеки: [`Client.playlist_similar_entities`](https://ym.marshal.dev/yandex_music._client.playlists/#yandex_music._client.playlists.PlaylistsMixin.playlist_similar_entities)",
        "tags": [
          "Плейлисты"
        ],
        "parameters": [
          {
            "$ref": "#/components/parameters/X-Yandex-Music-Client"
          },
          {
            "$ref": "#/components/parameters/Accept-Language"
          },
          {
            "name": "playlist_uuid",
            "in": "path",
            "required": true,
            "description": "UUID плейлиста.",
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Успешный ответ.",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "invocationInfo": {
                      "$ref": "#/components/schemas/InvocationInfo"
                    },
                    "result": {
                      "$ref": "#/components/schemas/PlaylistSimilarEntities"
                    }
                  }
                }
              }
            }
          }
        },
        "x-codeSamples": [
          {
            "lang": "python",
            "label": "yandex-music",
            "source": "# pip install yandex-music\nfrom yandex_music import Client\n\nclient = Client('TOKEN').init()\nclient.playlist_similar_entities(playlist_uuid=...)"
          },
          {
            "lang": "python",
            "label": "yandex-music (async)",
            "source": "# pip install yandex-music\nfrom yandex_music import ClientAsync\n\nclient = await ClientAsync('TOKEN').init()\nawait client.playlist_similar_entities(playlist_uuid=...)"
          }
        ]
      }
    },
    "/playlists": {
      "get": {
        "operationId": "playlists",
        "summary": "Получение списка плейлистов по идентификаторам.",
        "description": "Метод библиотеки: [`Client.playlists`](https://ym.marshal.dev/yandex_music._client.playlists/#yandex_music._client.playlists.PlaylistsMixin.playlists)",
        "tags": [
          "Плейлисты"
        ],
        "parameters": [
          {
            "$ref": "#/components/parameters/X-Yandex-Music-Client"
          },
          {
            "$ref": "#/components/parameters/Accept-Language"
          },
          {
            "name": "playlistIds",
            "in": "query",
            "required": false,
            "description": "Идентификатор плейлиста или список идентификаторов в формате ``uid:kind``.",
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Успешный ответ.",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "invocationInfo": {
                      "$ref": "#/components/schemas/InvocationInfo"
                    },
                    "result": {
                      "$ref": "#/components/schemas/PlaylistsList"
                    }
                  }
                }
              }
            }
          }
        },
        "x-codeSamples": [
          {
            "lang": "python",
            "label": "yandex-music",
            "source": "# pip install yandex-music\nfrom yandex_music import Client\n\nclient = Client('TOKEN').init()\nclient.playlists(playlist_ids=...)"
          },
          {
            "lang": "python",
            "label": "yandex-music (async)",
            "source": "# pip install yandex-music\nfrom yandex_music import ClientAsync\n\nclient = await ClientAsync('TOKEN').init()\nawait client.playlists(playlist_ids=...)"
          }
        ]
      }
    },
    "/playlists/collective/join": {
      "post": {
        "operationId": "playlists_collective_join",
        "summary": "Присоединение к плейлисту как соавтор.",
        "description": "Метод библиотеки: [`Client.playlists_collective_join`](https://ym.marshal.dev/yandex_music._client.playlists/#yandex_music._client.playlists.PlaylistsMixin.playlists_collective_join)",
        "tags": [
          "Плейлисты"
        ],
        "parameters": [
          {
            "$ref": "#/components/parameters/X-Yandex-Music-Client"
          },
          {
            "$ref": "#/components/parameters/Accept-Language"
          },
          {
            "name": "uid",
            "in": "query",
            "required": false,
            "description": "",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "token",
            "in": "query",
            "required": false,
            "description": "Токен для присоединения.",
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Успешный ответ.",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "invocationInfo": {
                      "$ref": "#/components/schemas/InvocationInfo"
                    },
                    "result": {
                      "type": "boolean"
                    }
                  }
                }
              }
            }
          }
        },
        "x-codeSamples": [
          {
            "lang": "python",
            "label": "yandex-music",
            "source": "# pip install yandex-music\nfrom yandex_music import Client\n\nclient = Client('TOKEN').init()\nclient.playlists_collective_join(user_id=..., token=...)"
          },
          {
            "lang": "python",
            "label": "yandex-music (async)",
            "source": "# pip install yandex-music\nfrom yandex_music import ClientAsync\n\nclient = await ClientAsync('TOKEN').init()\nawait client.playlists_collective_join(user_id=..., token=...)"
          }
        ]
      }
    },
    "/playlists/list": {
      "post": {
        "operationId": "playlists_list",
        "summary": "Получение плейлиста/плейлистов.",
        "description": "Метод библиотеки: [`Client.playlists_list`](https://ym.marshal.dev/yandex_music._client.playlists/#yandex_music._client.playlists.PlaylistsMixin.playlists_list)",
        "tags": [
          "Плейлисты"
        ],
        "parameters": [
          {
            "$ref": "#/components/parameters/X-Yandex-Music-Client"
          },
          {
            "$ref": "#/components/parameters/Accept-Language"
          }
        ],
        "requestBody": {
          "content": {
            "application/x-www-form-urlencoded": {
              "schema": {
                "type": "object",
                "properties": {
                  "playlist-ids": {
                    "type": "string",
                    "description": ""
                  }
                }
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Успешный ответ.",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "invocationInfo": {
                      "$ref": "#/components/schemas/InvocationInfo"
                    },
                    "result": {
                      "type": "array",
                      "items": {
                        "$ref": "#/components/schemas/Playlist"
                      }
                    }
                  }
                }
              }
            }
          }
        },
        "x-codeSamples": [
          {
            "lang": "python",
            "label": "yandex-music",
            "source": "# pip install yandex-music\nfrom yandex_music import Client\n\nclient = Client('TOKEN').init()\nclient.playlists_list(playlist_ids=...)"
          },
          {
            "lang": "python",
            "label": "yandex-music (async)",
            "source": "# pip install yandex-music\nfrom yandex_music import ClientAsync\n\nclient = await ClientAsync('TOKEN').init()\nawait client.playlists_list(playlist_ids=...)"
          }
        ]
      }
    },
    "/playlists/personal/{playlist_id}": {
      "get": {
        "operationId": "playlists_personal",
        "summary": "Получение персонального плейлиста.",
        "description": "Метод библиотеки: [`Client.playlists_personal`](https://ym.marshal.dev/yandex_music._client.playlists/#yandex_music._client.playlists.PlaylistsMixin.playlists_personal)",
        "tags": [
          "Плейлисты"
        ],
        "parameters": [
          {
            "$ref": "#/components/parameters/X-Yandex-Music-Client"
          },
          {
            "$ref": "#/components/parameters/Accept-Language"
          },
          {
            "name": "playlist_id",
            "in": "path",
            "required": true,
            "description": "Идентификатор персонального плейлиста.",
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Успешный ответ.",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "invocationInfo": {
                      "$ref": "#/components/schemas/InvocationInfo"
                    },
                    "result": {
                      "$ref": "#/components/schemas/GeneratedPlaylist"
                    }
                  }
                }
              }
            }
          }
        },
        "x-codeSamples": [
          {
            "lang": "python",
            "label": "yandex-music",
            "source": "# pip install yandex-music\nfrom yandex_music import Client\n\nclient = Client('TOKEN').init()\nclient.playlists_personal(playlist_id=...)"
          },
          {
            "lang": "python",
            "label": "yandex-music (async)",
            "source": "# pip install yandex-music\nfrom yandex_music import ClientAsync\n\nclient = await ClientAsync('TOKEN').init()\nawait client.playlists_personal(playlist_id=...)"
          }
        ]
      }
    },
    "/queues": {
      "post": {
        "operationId": "queue_create",
        "summary": "Создание новой очереди треков.",
        "description": "Метод библиотеки: [`Client.queue_create`](https://ym.marshal.dev/yandex_music._client.queue/#yandex_music._client.queue.QueueMixin.queue_create)",
        "tags": [
          "Очередь"
        ],
        "parameters": [
          {
            "$ref": "#/components/parameters/X-Yandex-Music-Client"
          },
          {
            "$ref": "#/components/parameters/Accept-Language"
          }
        ],
        "responses": {
          "200": {
            "description": "Успешный ответ.",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "invocationInfo": {
                      "$ref": "#/components/schemas/InvocationInfo"
                    },
                    "result": {
                      "type": "string"
                    }
                  }
                }
              }
            }
          }
        },
        "x-codeSamples": [
          {
            "lang": "python",
            "label": "yandex-music",
            "source": "# pip install yandex-music\nfrom yandex_music import Client\n\nclient = Client('TOKEN').init()\nclient.queue_create(queue=...)"
          },
          {
            "lang": "python",
            "label": "yandex-music (async)",
            "source": "# pip install yandex-music\nfrom yandex_music import ClientAsync\n\nclient = await ClientAsync('TOKEN').init()\nawait client.queue_create(queue=...)"
          }
        ]
      },
      "get": {
        "operationId": "queues_list",
        "summary": "Получение всех очередей треков с разных устройств для синхронизации между ними.",
        "description": "Метод библиотеки: [`Client.queues_list`](https://ym.marshal.dev/yandex_music._client.queue/#yandex_music._client.queue.QueueMixin.queues_list)",
        "tags": [
          "Очередь"
        ],
        "parameters": [
          {
            "$ref": "#/components/parameters/X-Yandex-Music-Client"
          },
          {
            "$ref": "#/components/parameters/Accept-Language"
          }
        ],
        "responses": {
          "200": {
            "description": "Успешный ответ.",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "invocationInfo": {
                      "$ref": "#/components/schemas/InvocationInfo"
                    },
                    "result": {
                      "type": "array",
                      "items": {
                        "$ref": "#/components/schemas/QueueItem"
                      }
                    }
                  }
                }
              }
            }
          }
        },
        "x-codeSamples": [
          {
            "lang": "python",
            "label": "yandex-music",
            "source": "# pip install yandex-music\nfrom yandex_music import Client\n\nclient = Client('TOKEN').init()\nclient.queues_list()"
          },
          {
            "lang": "python",
            "label": "yandex-music (async)",
            "source": "# pip install yandex-music\nfrom yandex_music import ClientAsync\n\nclient = await ClientAsync('TOKEN').init()\nawait client.queues_list()"
          }
        ]
      }
    },
    "/queues/{queue_id}": {
      "get": {
        "operationId": "queue",
        "summary": "Получение информации об очереди треков и самих треков в ней.",
        "description": "Метод библиотеки: [`Client.queue`](https://ym.marshal.dev/yandex_music._client.queue/#yandex_music._client.queue.QueueMixin.queue)",
        "tags": [
          "Очередь"
        ],
        "parameters": [
          {
            "$ref": "#/components/parameters/X-Yandex-Music-Client"
          },
          {
            "$ref": "#/components/parameters/Accept-Language"
          },
          {
            "name": "queue_id",
            "in": "path",
            "required": true,
            "description": "Уникальный идентификатор очереди.",
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Успешный ответ.",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "invocationInfo": {
                      "$ref": "#/components/schemas/InvocationInfo"
                    },
                    "result": {
                      "$ref": "#/components/schemas/Queue"
                    }
                  }
                }
              }
            }
          }
        },
        "x-codeSamples": [
          {
            "lang": "python",
            "label": "yandex-music",
            "source": "# pip install yandex-music\nfrom yandex_music import Client\n\nclient = Client('TOKEN').init()\nclient.queue(queue_id=...)"
          },
          {
            "lang": "python",
            "label": "yandex-music (async)",
            "source": "# pip install yandex-music\nfrom yandex_music import ClientAsync\n\nclient = await ClientAsync('TOKEN').init()\nawait client.queue(queue_id=...)"
          }
        ]
      }
    },
    "/queues/{queue_id}/update-position": {
      "post": {
        "operationId": "queue_update_position",
        "summary": "Установка текущего индекса проигрываемого трека в очереди треков.",
        "description": "Метод библиотеки: [`Client.queue_update_position`](https://ym.marshal.dev/yandex_music._client.queue/#yandex_music._client.queue.QueueMixin.queue_update_position)",
        "tags": [
          "Очередь"
        ],
        "parameters": [
          {
            "$ref": "#/components/parameters/X-Yandex-Music-Client"
          },
          {
            "$ref": "#/components/parameters/Accept-Language"
          },
          {
            "name": "queue_id",
            "in": "path",
            "required": true,
            "description": "Уникальный идентификатор очереди.",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "currentIndex",
            "in": "query",
            "required": false,
            "description": "Текущий индекс.",
            "schema": {
              "type": "integer"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/x-www-form-urlencoded": {
              "schema": {
                "type": "object",
                "properties": {
                  "isInteractive": {
                    "type": "string",
                    "description": ""
                  }
                }
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Успешный ответ.",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "invocationInfo": {
                      "$ref": "#/components/schemas/InvocationInfo"
                    },
                    "result": {
                      "type": "boolean"
                    }
                  }
                }
              }
            }
          }
        },
        "x-codeSamples": [
          {
            "lang": "python",
            "label": "yandex-music",
            "source": "# pip install yandex-music\nfrom yandex_music import Client\n\nclient = Client('TOKEN').init()\nclient.queue_update_position(queue_id=..., current_index=...)"
          },
          {
            "lang": "python",
            "label": "yandex-music (async)",
            "source": "# pip install yandex-music\nfrom yandex_music import ClientAsync\n\nclient = await ClientAsync('TOKEN').init()\nawait client.queue_update_position(queue_id=..., current_index=...)"
          }
        ]
      }
    },
    "/rotor/account/status": {
      "get": {
        "operationId": "rotor_account_status",
        "summary": "Получение статуса пользователя с дополнительными полями.",
        "description": "Метод библиотеки: [`Client.rotor_account_status`](https://ym.marshal.dev/yandex_music._client.radio/#yandex_music._client.radio.RadioMixin.rotor_account_status)",
        "tags": [
          "Радио"
        ],
        "parameters": [
          {
            "$ref": "#/components/parameters/X-Yandex-Music-Client"
          },
          {
            "$ref": "#/components/parameters/Accept-Language"
          }
        ],
        "responses": {
          "200": {
            "description": "Успешный ответ.",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "invocationInfo": {
                      "$ref": "#/components/schemas/InvocationInfo"
                    },
                    "result": {
                      "$ref": "#/components/schemas/Status"
                    }
                  }
                }
              }
            }
          }
        },
        "x-codeSamples": [
          {
            "lang": "python",
            "label": "yandex-music",
            "source": "# pip install yandex-music\nfrom yandex_music import Client\n\nclient = Client('TOKEN').init()\nclient.rotor_account_status()"
          },
          {
            "lang": "python",
            "label": "yandex-music (async)",
            "source": "# pip install yandex-music\nfrom yandex_music import ClientAsync\n\nclient = await ClientAsync('TOKEN').init()\nawait client.rotor_account_status()"
          }
        ]
      }
    },
    "/rotor/combined/session/landing": {
      "post": {
        "operationId": "rotor_combined_session_landing",
        "summary": "Получение витрины комбинированной сессии радио (например, «Время клипов»).",
        "description": "Метод библиотеки: [`Client.rotor_combined_session_landing`](https://ym.marshal.dev/yandex_music._client.rotor_sessions/#yandex_music._client.rotor_sessions.RotorSessionsMixin.rotor_combined_session_landing)",
        "tags": [
          "Сессии радио"
        ],
        "parameters": [
          {
            "$ref": "#/components/parameters/X-Yandex-Music-Client"
          },
          {
            "$ref": "#/components/parameters/Accept-Language"
          }
        ],
        "responses": {
          "200": {
            "description": "Успешный ответ.",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "invocationInfo": {
                      "$ref": "#/components/schemas/InvocationInfo"
                    },
                    "result": {
                      "$ref": "#/components/schemas/CombinedSessionLanding"
                    }
                  }
                }
              }
            }
          }
        },
        "x-codeSamples": [
          {
            "lang": "python",
            "label": "yandex-music",
            "source": "# pip install yandex-music\nfrom yandex_music import Client\n\nclient = Client('TOKEN').init()\nclient.rotor_combined_session_landing()"
          },
          {
            "lang": "python",
            "label": "yandex-music (async)",
            "source": "# pip install yandex-music\nfrom yandex_music import ClientAsync\n\nclient = await ClientAsync('TOKEN').init()\nawait client.rotor_combined_session_landing()"
          }
        ]
      }
    },
    "/rotor/combined/session/new": {
      "post": {
        "operationId": "rotor_combined_session_new",
        "summary": "Создание комбинированной сессии радио (треки и клипы).",
        "description": "Метод библиотеки: [`Client.rotor_combined_session_new`](https://ym.marshal.dev/yandex_music._client.rotor_sessions/#yandex_music._client.rotor_sessions.RotorSessionsMixin.rotor_combined_session_new)",
        "tags": [
          "Сессии радио"
        ],
        "parameters": [
          {
            "$ref": "#/components/parameters/X-Yandex-Music-Client"
          },
          {
            "$ref": "#/components/parameters/Accept-Language"
          }
        ],
        "responses": {
          "200": {
            "description": "Успешный ответ.",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "invocationInfo": {
                      "$ref": "#/components/schemas/InvocationInfo"
                    },
                    "result": {
                      "$ref": "#/components/schemas/CombinedSession"
                    }
                  }
                }
              }
            }
          }
        },
        "x-codeSamples": [
          {
            "lang": "python",
            "label": "yandex-music",
            "source": "# pip install yandex-music\nfrom yandex_music import Client\n\nclient = Client('TOKEN').init()\nclient.rotor_combined_session_new()"
          },
          {
            "lang": "python",
            "label": "yandex-music (async)",
            "source": "# pip install yandex-music\nfrom yandex_music import ClientAsync\n\nclient = await ClientAsync('TOKEN').init()\nawait client.rotor_combined_session_new()"
          }
        ]
      }
    },
    "/rotor/combined/session/{session_id}/next": {
      "post": {
        "operationId": "rotor_combined_session_next",
        "summary": "Получение следующих элементов комбинированной сессии радио.",
        "description": "Метод библиотеки: [`Client.rotor_combined_session_next`](https://ym.marshal.dev/yandex_music._client.rotor_sessions/#yandex_music._client.rotor_sessions.RotorSessionsMixin.rotor_combined_session_next)",
        "tags": [
          "Сессии радио"
        ],
        "parameters": [
          {
            "$ref": "#/components/parameters/X-Yandex-Music-Client"
          },
          {
            "$ref": "#/components/parameters/Accept-Language"
          },
          {
            "name": "session_id",
            "in": "path",
            "required": true,
            "description": "Уникальный идентификатор комбинированной сессии.",
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Успешный ответ.",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "invocationInfo": {
                      "$ref": "#/components/schemas/InvocationInfo"
                    },
                    "result": {
                      "$ref": "#/components/schemas/CombinedSession"
                    }
                  }
                }
              }
            }
          }
        },
        "x-codeSamples": [
          {
            "lang": "python",
            "label": "yandex-music",
            "source": "# pip install yandex-music\nfrom yandex_music import Client\n\nclient = Client('TOKEN').init()\nclient.rotor_combined_session_next(session_id=...)"
          },
          {
            "lang": "python",
            "label": "yandex-music (async)",
            "source": "# pip install yandex-music\nfrom yandex_music import ClientAsync\n\nclient = await ClientAsync('TOKEN').init()\nawait client.rotor_combined_session_next(session_id=...)"
          }
        ]
      }
    },
    "/rotor/session/new": {
      "post": {
        "operationId": "rotor_session_new",
        "summary": "Создание новой сессии радио.",
        "description": "Метод библиотеки: [`Client.rotor_session_new`](https://ym.marshal.dev/yandex_music._client.rotor_sessions/#yandex_music._client.rotor_sessions.RotorSessionsMixin.rotor_session_new)",
        "tags": [
          "Сессии радио"
        ],
        "parameters": [
          {
            "$ref": "#/components/parameters/X-Yandex-Music-Client"
          },
          {
            "$ref": "#/components/parameters/Accept-Language"
          }
        ],
        "responses": {
          "200": {
            "description": "Успешный ответ.",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "invocationInfo": {
                      "$ref": "#/components/schemas/InvocationInfo"
                    },
                    "result": {
                      "$ref": "#/components/schemas/RotorSession"
                    }
                  }
                }
              }
            }
          }
        },
        "x-codeSamples": [
          {
            "lang": "python",
            "label": "yandex-music",
            "source": "# pip install yandex-music\nfrom yandex_music import Client\n\nclient = Client('TOKEN').init()\nclient.rotor_session_new(seeds=...)"
          },
          {
            "lang": "python",
            "label": "yandex-music (async)",
            "source": "# pip install yandex-music\nfrom yandex_music import ClientAsync\n\nclient = await ClientAsync('TOKEN').init()\nawait client.rotor_session_new(seeds=...)"
          }
        ]
      }
    },
    "/rotor/session/{radio_session_id}/clone": {
      "post": {
        "operationId": "rotor_session_clone",
        "summary": "Создание новой сессии радио на основе существующей (с теми же сидами).",
        "description": "Метод библиотеки: [`Client.rotor_session_clone`](https://ym.marshal.dev/yandex_music._client.rotor_sessions/#yandex_music._client.rotor_sessions.RotorSessionsMixin.rotor_session_clone)",
        "tags": [
          "Сессии радио"
        ],
        "parameters": [
          {
            "$ref": "#/components/parameters/X-Yandex-Music-Client"
          },
          {
            "$ref": "#/components/parameters/Accept-Language"
          },
          {
            "name": "radio_session_id",
            "in": "path",
            "required": true,
            "description": "Уникальный идентификатор исходной сессии.",
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Успешный ответ.",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "invocationInfo": {
                      "$ref": "#/components/schemas/InvocationInfo"
                    },
                    "result": {
                      "$ref": "#/components/schemas/RotorSession"
                    }
                  }
                }
              }
            }
          }
        },
        "x-codeSamples": [
          {
            "lang": "python",
            "label": "yandex-music",
            "source": "# pip install yandex-music\nfrom yandex_music import Client\n\nclient = Client('TOKEN').init()\nclient.rotor_session_clone(radio_session_id=...)"
          },
          {
            "lang": "python",
            "label": "yandex-music (async)",
            "source": "# pip install yandex-music\nfrom yandex_music import ClientAsync\n\nclient = await ClientAsync('TOKEN').init()\nawait client.rotor_session_clone(radio_session_id=...)"
          }
        ]
      }
    },
    "/rotor/session/{radio_session_id}/feedback": {
      "post": {
        "operationId": "rotor_session_feedback",
        "summary": "Отправка обратной связи сессии радио.",
        "description": "Метод библиотеки: [`Client.rotor_session_feedback`](https://ym.marshal.dev/yandex_music._client.rotor_sessions/#yandex_music._client.rotor_sessions.RotorSessionsMixin.rotor_session_feedback)",
        "tags": [
          "Сессии радио"
        ],
        "parameters": [
          {
            "$ref": "#/components/parameters/X-Yandex-Music-Client"
          },
          {
            "$ref": "#/components/parameters/Accept-Language"
          },
          {
            "name": "radio_session_id",
            "in": "path",
            "required": true,
            "description": "Уникальный идентификатор сессии.",
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Успешный ответ.",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "invocationInfo": {
                      "$ref": "#/components/schemas/InvocationInfo"
                    },
                    "result": {
                      "type": "boolean"
                    }
                  }
                }
              }
            }
          }
        },
        "x-codeSamples": [
          {
            "lang": "python",
            "label": "yandex-music",
            "source": "# pip install yandex-music\nfrom yandex_music import Client\n\nclient = Client('TOKEN').init()\nclient.rotor_session_feedback(radio_session_id=..., event=...)"
          },
          {
            "lang": "python",
            "label": "yandex-music (async)",
            "source": "# pip install yandex-music\nfrom yandex_music import ClientAsync\n\nclient = await ClientAsync('TOKEN').init()\nawait client.rotor_session_feedback(radio_session_id=..., event=...)"
          }
        ],
        "x-library-methods": [
          "rotor_session_feedback_radio_started",
          "rotor_session_feedback_skip",
          "rotor_session_feedback_track_finished",
          "rotor_session_feedback_track_started"
        ]
      }
    },
    "/rotor/session/{radio_session_id}/feedbacks": {
      "post": {
        "operationId": "rotor_session_feedbacks",
        "summary": "Отправка нескольких событий обратной связи сессии радио одним запросом.",
        "description": "Метод библиотеки: [`Client.rotor_session_feedbacks`](https://ym.marshal.dev/yandex_music._client.rotor_sessions/#yandex_music._client.rotor_sessions.RotorSessionsMixin.rotor_session_feedbacks)",
        "tags": [
          "Сессии радио"
        ],
        "parameters": [
          {
            "$ref": "#/components/parameters/X-Yandex-Music-Client"
          },
          {
            "$ref": "#/components/parameters/Accept-Language"
          },
          {
            "name": "radio_session_id",
            "in": "path",
            "required": true,
            "description": "Уникальный идентификатор сессии.",
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Успешный ответ.",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "invocationInfo": {
                      "$ref": "#/components/schemas/InvocationInfo"
                    },
                    "result": {
                      "type": "boolean"
                    }
                  }
                }
              }
            }
          }
        },
        "x-codeSamples": [
          {
            "lang": "python",
            "label": "yandex-music",
            "source": "# pip install yandex-music\nfrom yandex_music import Client\n\nclient = Client('TOKEN').init()\nclient.rotor_session_feedbacks(radio_session_id=..., feedbacks=...)"
          },
          {
            "lang": "python",
            "label": "yandex-music (async)",
            "source": "# pip install yandex-music\nfrom yandex_music import ClientAsync\n\nclient = await ClientAsync('TOKEN').init()\nawait client.rotor_session_feedbacks(radio_session_id=..., feedbacks=...)"
          }
        ]
      }
    },
    "/rotor/session/{radio_session_id}/tracks": {
      "post": {
        "operationId": "rotor_session_tracks",
        "summary": "Получение следующей партии треков сессии радио.",
        "description": "Метод библиотеки: [`Client.rotor_session_tracks`](https://ym.marshal.dev/yandex_music._client.rotor_sessions/#yandex_music._client.rotor_sessions.RotorSessionsMixin.rotor_session_tracks)",
        "tags": [
          "Сессии радио"
        ],
        "parameters": [
          {
            "$ref": "#/components/parameters/X-Yandex-Music-Client"
          },
          {
            "$ref": "#/components/parameters/Accept-Language"
          },
          {
            "name": "radio_session_id",
            "in": "path",
            "required": true,
            "description": "Уникальный идентификатор сессии.",
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Успешный ответ.",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "invocationInfo": {
                      "$ref": "#/components/schemas/InvocationInfo"
                    },
                    "result": {
                      "$ref": "#/components/schemas/RotorSessionTracks"
                    }
                  }
                }
              }
            }
          }
        },
        "x-codeSamples": [
          {
            "lang": "python",
            "label": "yandex-music",
            "source": "# pip install yandex-music\nfrom yandex_music import Client\n\nclient = Client('TOKEN').init()\nclient.rotor_session_tracks(radio_session_id=...)"
          },
          {
            "lang": "python",
            "label": "yandex-music (async)",
            "source": "# pip install yandex-music\nfrom yandex_music import ClientAsync\n\nclient = await ClientAsync('TOKEN').init()\nawait client.rotor_session_tracks(radio_session_id=...)"
          }
        ]
      }
    },
    "/rotor/sessions/feedbacks": {
      "post": {
        "operationId": "rotor_sessions_feedbacks",
        "summary": "Отправка обратной связи сразу по нескольким сессиям радио.",
        "description": "Метод библиотеки: [`Client.rotor_sessions_feedbacks`](https://ym.marshal.dev/yandex_music._client.rotor_sessions/#yandex_music._client.rotor_sessions.RotorSessionsMixin.rotor_sessions_feedbacks)",
        "tags": [
          "Сессии радио"
        ],
        "parameters": [
          {
            "$ref": "#/components/parameters/X-Yandex-Music-Client"
          },
          {
            "$ref": "#/components/parameters/Accept-Language"
          }
        ],
        "responses": {
          "200": {
            "description": "Успешный ответ.",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "invocationInfo": {
                      "$ref": "#/components/schemas/InvocationInfo"
                    },
                    "result": {
                      "type": "boolean"
                    }
                  }
                }
              }
            }
          }
        },
        "x-codeSamples": [
          {
            "lang": "python",
            "label": "yandex-music",
            "source": "# pip install yandex-music\nfrom yandex_music import Client\n\nclient = Client('TOKEN').init()\nclient.rotor_sessions_feedbacks(sessions=...)"
          },
          {
            "lang": "python",
            "label": "yandex-music (async)",
            "source": "# pip install yandex-music\nfrom yandex_music import ClientAsync\n\nclient = await ClientAsync('TOKEN').init()\nawait client.rotor_sessions_feedbacks(sessions=...)"
          }
        ]
      }
    },
    "/rotor/station/{station}/feedback": {
      "post": {
        "operationId": "rotor_station_feedback",
        "summary": "Отправка обратной связи на действия при прослушивании радио.",
        "description": "Метод библиотеки: [`Client.rotor_station_feedback`](https://ym.marshal.dev/yandex_music._client.radio/#yandex_music._client.radio.RadioMixin.rotor_station_feedback)",
        "tags": [
          "Радио"
        ],
        "parameters": [
          {
            "$ref": "#/components/parameters/X-Yandex-Music-Client"
          },
          {
            "$ref": "#/components/parameters/Accept-Language"
          },
          {
            "name": "station",
            "in": "path",
            "required": true,
            "description": "Станция.",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "batch-id",
            "in": "query",
            "required": false,
            "description": "",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "streamId",
            "in": "query",
            "required": false,
            "description": "Уникальный идентификатор потока генеративной станции (`yandex_music.GenerativeStreamInfo.id`).",
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Успешный ответ.",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "invocationInfo": {
                      "$ref": "#/components/schemas/InvocationInfo"
                    },
                    "result": {
                      "type": "boolean"
                    }
                  }
                }
              }
            }
          }
        },
        "x-codeSamples": [
          {
            "lang": "python",
            "label": "yandex-music",
            "source": "# pip install yandex-music\nfrom yandex_music import Client\n\nclient = Client('TOKEN').init()\nclient.rotor_station_feedback(station=..., type_=...)"
          },
          {
            "lang": "python",
            "label": "yandex-music (async)",
            "source": "# pip install yandex-music\nfrom yandex_music import ClientAsync\n\nclient = await ClientAsync('TOKEN').init()\nawait client.rotor_station_feedback(station=..., type_=...)"
          }
        ],
        "x-library-methods": [
          "rotor_station_feedback_radio_started",
          "rotor_station_feedback_skip",
          "rotor_station_feedback_track_finished",
          "rotor_station_feedback_track_started",
          "rotor_station_stream_feedback"
        ]
      }
    },
    "/rotor/station/{station}/info": {
      "get": {
        "operationId": "rotor_station_info",
        "summary": "Получение информации о станции и пользовательских настроек на неё.",
        "description": "Метод библиотеки: [`Client.rotor_station_info`](https://ym.marshal.dev/yandex_music._client.radio/#yandex_music._client.radio.RadioMixin.rotor_station_info)",
        "tags": [
          "Радио"
        ],
        "parameters": [
          {
            "$ref": "#/components/parameters/X-Yandex-Music-Client"
          },
          {
            "$ref": "#/components/parameters/Accept-Language"
          },
          {
            "name": "station",
            "in": "path",
            "required": true,
            "description": "Станция.",
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Успешный ответ.",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "invocationInfo": {
                      "$ref": "#/components/schemas/InvocationInfo"
                    },
                    "result": {
                      "type": "array",
                      "items": {
                        "$ref": "#/components/schemas/StationResult"
                      }
                    }
                  }
                }
              }
            }
          }
        },
        "x-codeSamples": [
          {
            "lang": "python",
            "label": "yandex-music",
            "source": "# pip install yandex-music\nfrom yandex_music import Client\n\nclient = Client('TOKEN').init()\nclient.rotor_station_info(station=...)"
          },
          {
            "lang": "python",
            "label": "yandex-music (async)",
            "source": "# pip install yandex-music\nfrom yandex_music import ClientAsync\n\nclient = await ClientAsync('TOKEN').init()\nawait client.rotor_station_info(station=...)"
          }
        ]
      }
    },
    "/rotor/station/{station}/settings3": {
      "post": {
        "operationId": "rotor_station_settings2",
        "summary": "Изменение настроек определённой станции.",
        "description": "Метод библиотеки: [`Client.rotor_station_settings2`](https://ym.marshal.dev/yandex_music._client.radio/#yandex_music._client.radio.RadioMixin.rotor_station_settings2)",
        "tags": [
          "Радио"
        ],
        "parameters": [
          {
            "$ref": "#/components/parameters/X-Yandex-Music-Client"
          },
          {
            "$ref": "#/components/parameters/Accept-Language"
          },
          {
            "name": "station",
            "in": "path",
            "required": true,
            "description": "Станция.",
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Успешный ответ.",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "invocationInfo": {
                      "$ref": "#/components/schemas/InvocationInfo"
                    },
                    "result": {
                      "type": "boolean"
                    }
                  }
                }
              }
            }
          }
        },
        "x-codeSamples": [
          {
            "lang": "python",
            "label": "yandex-music",
            "source": "# pip install yandex-music\nfrom yandex_music import Client\n\nclient = Client('TOKEN').init()\nclient.rotor_station_settings2(station=..., mood_energy=..., diversity=...)"
          },
          {
            "lang": "python",
            "label": "yandex-music (async)",
            "source": "# pip install yandex-music\nfrom yandex_music import ClientAsync\n\nclient = await ClientAsync('TOKEN').init()\nawait client.rotor_station_settings2(station=..., mood_energy=..., diversity=...)"
          }
        ]
      }
    },
    "/rotor/station/{station}/stream": {
      "get": {
        "operationId": "rotor_station_stream",
        "summary": "Получение информации о генеративной станции и её потока.",
        "description": "Метод библиотеки: [`Client.rotor_station_stream`](https://ym.marshal.dev/yandex_music._client.radio/#yandex_music._client.radio.RadioMixin.rotor_station_stream)",
        "tags": [
          "Радио"
        ],
        "parameters": [
          {
            "$ref": "#/components/parameters/X-Yandex-Music-Client"
          },
          {
            "$ref": "#/components/parameters/Accept-Language"
          },
          {
            "name": "station",
            "in": "path",
            "required": true,
            "description": "Генеративная станция.",
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Успешный ответ.",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "invocationInfo": {
                      "$ref": "#/components/schemas/InvocationInfo"
                    },
                    "result": {
                      "$ref": "#/components/schemas/GenerativeStream"
                    }
                  }
                }
              }
            }
          }
        },
        "x-codeSamples": [
          {
            "lang": "python",
            "label": "yandex-music",
            "source": "# pip install yandex-music\nfrom yandex_music import Client\n\nclient = Client('TOKEN').init()\nclient.rotor_station_stream(station=...)"
          },
          {
            "lang": "python",
            "label": "yandex-music (async)",
            "source": "# pip install yandex-music\nfrom yandex_music import ClientAsync\n\nclient = await ClientAsync('TOKEN').init()\nawait client.rotor_station_stream(station=...)"
          }
        ]
      }
    },
    "/rotor/station/{station}/tracks": {
      "get": {
        "operationId": "rotor_station_tracks",
        "summary": "Получение цепочки треков определённой станции.",
        "description": "Метод библиотеки: [`Client.rotor_station_tracks`](https://ym.marshal.dev/yandex_music._client.radio/#yandex_music._client.radio.RadioMixin.rotor_station_tracks)",
        "tags": [
          "Радио"
        ],
        "parameters": [
          {
            "$ref": "#/components/parameters/X-Yandex-Music-Client"
          },
          {
            "$ref": "#/components/parameters/Accept-Language"
          },
          {
            "name": "station",
            "in": "path",
            "required": true,
            "description": "Станция.",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "queue",
            "in": "query",
            "required": false,
            "description": "Уникальной идентификатор трека, который только что был.",
            "schema": {
              "type": [
                "string",
                "integer"
              ]
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Успешный ответ.",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "invocationInfo": {
                      "$ref": "#/components/schemas/InvocationInfo"
                    },
                    "result": {
                      "$ref": "#/components/schemas/StationTracksResult"
                    }
                  }
                }
              }
            }
          }
        },
        "x-codeSamples": [
          {
            "lang": "python",
            "label": "yandex-music",
            "source": "# pip install yandex-music\nfrom yandex_music import Client\n\nclient = Client('TOKEN').init()\nclient.rotor_station_tracks(station=...)"
          },
          {
            "lang": "python",
            "label": "yandex-music (async)",
            "source": "# pip install yandex-music\nfrom yandex_music import ClientAsync\n\nclient = await ClientAsync('TOKEN').init()\nawait client.rotor_station_tracks(station=...)"
          }
        ]
      }
    },
    "/rotor/stations/dashboard": {
      "get": {
        "operationId": "rotor_stations_dashboard",
        "summary": "Получение рекомендованных станций текущего пользователя.",
        "description": "Метод библиотеки: [`Client.rotor_stations_dashboard`](https://ym.marshal.dev/yandex_music._client.radio/#yandex_music._client.radio.RadioMixin.rotor_stations_dashboard)",
        "tags": [
          "Радио"
        ],
        "parameters": [
          {
            "$ref": "#/components/parameters/X-Yandex-Music-Client"
          },
          {
            "$ref": "#/components/parameters/Accept-Language"
          }
        ],
        "responses": {
          "200": {
            "description": "Успешный ответ.",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "invocationInfo": {
                      "$ref": "#/components/schemas/InvocationInfo"
                    },
                    "result": {
                      "$ref": "#/components/schemas/Dashboard"
                    }
                  }
                }
              }
            }
          }
        },
        "x-codeSamples": [
          {
            "lang": "python",
            "label": "yandex-music",
            "source": "# pip install yandex-music\nfrom yandex_music import Client\n\nclient = Client('TOKEN').init()\nclient.rotor_stations_dashboard()"
          },
          {
            "lang": "python",
            "label": "yandex-music (async)",
            "source": "# pip install yandex-music\nfrom yandex_music import ClientAsync\n\nclient = await ClientAsync('TOKEN').init()\nawait client.rotor_stations_dashboard()"
          }
        ]
      }
    },
    "/rotor/stations/list": {
      "get": {
        "operationId": "rotor_stations_list",
        "summary": "Получение всех радиостанций с настройками пользователя.",
        "description": "Метод библиотеки: [`Client.rotor_stations_list`](https://ym.marshal.dev/yandex_music._client.radio/#yandex_music._client.radio.RadioMixin.rotor_stations_list)",
        "tags": [
          "Радио"
        ],
        "parameters": [
          {
            "$ref": "#/components/parameters/X-Yandex-Music-Client"
          },
          {
            "$ref": "#/components/parameters/Accept-Language"
          },
          {
            "name": "language",
            "in": "query",
            "required": false,
            "description": "Язык, на котором будет информация о станциях. По умолчанию язык клиента.",
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Успешный ответ.",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "invocationInfo": {
                      "$ref": "#/components/schemas/InvocationInfo"
                    },
                    "result": {
                      "type": "array",
                      "items": {
                        "$ref": "#/components/schemas/StationResult"
                      }
                    }
                  }
                }
              }
            }
          }
        },
        "x-codeSamples": [
          {
            "lang": "python",
            "label": "yandex-music",
            "source": "# pip install yandex-music\nfrom yandex_music import Client\n\nclient = Client('TOKEN').init()\nclient.rotor_stations_list()"
          },
          {
            "lang": "python",
            "label": "yandex-music (async)",
            "source": "# pip install yandex-music\nfrom yandex_music import ClientAsync\n\nclient = await ClientAsync('TOKEN').init()\nawait client.rotor_stations_list()"
          }
        ]
      }
    },
    "/rotor/wave/last": {
      "get": {
        "operationId": "rotor_wave_last",
        "summary": "Получение последней запущенной волны пользователя.",
        "description": "Метод библиотеки: [`Client.rotor_wave_last`](https://ym.marshal.dev/yandex_music._client.wave/#yandex_music._client.wave.WaveMixin.rotor_wave_last)",
        "tags": [
          "Волна"
        ],
        "parameters": [
          {
            "$ref": "#/components/parameters/X-Yandex-Music-Client"
          },
          {
            "$ref": "#/components/parameters/Accept-Language"
          }
        ],
        "responses": {
          "200": {
            "description": "Успешный ответ.",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "invocationInfo": {
                      "$ref": "#/components/schemas/InvocationInfo"
                    },
                    "result": {
                      "$ref": "#/components/schemas/Wave"
                    }
                  }
                }
              }
            }
          }
        },
        "x-codeSamples": [
          {
            "lang": "python",
            "label": "yandex-music",
            "source": "# pip install yandex-music\nfrom yandex_music import Client\n\nclient = Client('TOKEN').init()\nclient.rotor_wave_last()"
          },
          {
            "lang": "python",
            "label": "yandex-music (async)",
            "source": "# pip install yandex-music\nfrom yandex_music import ClientAsync\n\nclient = await ClientAsync('TOKEN').init()\nawait client.rotor_wave_last()"
          }
        ]
      }
    },
    "/rotor/wave/last/reset": {
      "post": {
        "operationId": "rotor_wave_last_reset",
        "summary": "Сброс последней запущенной волны пользователя на «Мою волну».",
        "description": "Метод библиотеки: [`Client.rotor_wave_last_reset`](https://ym.marshal.dev/yandex_music._client.wave/#yandex_music._client.wave.WaveMixin.rotor_wave_last_reset)",
        "tags": [
          "Волна"
        ],
        "parameters": [
          {
            "$ref": "#/components/parameters/X-Yandex-Music-Client"
          },
          {
            "$ref": "#/components/parameters/Accept-Language"
          }
        ],
        "responses": {
          "200": {
            "description": "Успешный ответ.",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "invocationInfo": {
                      "$ref": "#/components/schemas/InvocationInfo"
                    },
                    "result": {
                      "type": "boolean"
                    }
                  }
                }
              }
            }
          }
        },
        "x-codeSamples": [
          {
            "lang": "python",
            "label": "yandex-music",
            "source": "# pip install yandex-music\nfrom yandex_music import Client\n\nclient = Client('TOKEN').init()\nclient.rotor_wave_last_reset()"
          },
          {
            "lang": "python",
            "label": "yandex-music (async)",
            "source": "# pip install yandex-music\nfrom yandex_music import ClientAsync\n\nclient = await ClientAsync('TOKEN').init()\nawait client.rotor_wave_last_reset()"
          }
        ]
      }
    },
    "/rotor/wave/settings": {
      "get": {
        "operationId": "rotor_wave_settings",
        "summary": "Получение настроек волны: контекстов (занятий) и доступных значений настроек.",
        "description": "Метод библиотеки: [`Client.rotor_wave_settings`](https://ym.marshal.dev/yandex_music._client.wave/#yandex_music._client.wave.WaveMixin.rotor_wave_settings)",
        "tags": [
          "Волна"
        ],
        "parameters": [
          {
            "$ref": "#/components/parameters/X-Yandex-Music-Client"
          },
          {
            "$ref": "#/components/parameters/Accept-Language"
          },
          {
            "name": "seeds",
            "in": "query",
            "required": false,
            "description": "Сиды волны (например, `user:onyourwave`).",
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Успешный ответ.",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "invocationInfo": {
                      "$ref": "#/components/schemas/InvocationInfo"
                    },
                    "result": {
                      "$ref": "#/components/schemas/WaveSettings"
                    }
                  }
                }
              }
            }
          }
        },
        "x-codeSamples": [
          {
            "lang": "python",
            "label": "yandex-music",
            "source": "# pip install yandex-music\nfrom yandex_music import Client\n\nclient = Client('TOKEN').init()\nclient.rotor_wave_settings()"
          },
          {
            "lang": "python",
            "label": "yandex-music (async)",
            "source": "# pip install yandex-music\nfrom yandex_music import ClientAsync\n\nclient = await ClientAsync('TOKEN').init()\nawait client.rotor_wave_settings()"
          }
        ]
      }
    },
    "/search": {
      "get": {
        "operationId": "search",
        "summary": "Осуществление поиска по запросу и типу, получение результатов.",
        "description": "Метод библиотеки: [`Client.search`](https://ym.marshal.dev/yandex_music._client.search/#yandex_music._client.search.SearchMixin.search)",
        "tags": [
          "Поиск"
        ],
        "parameters": [
          {
            "$ref": "#/components/parameters/X-Yandex-Music-Client"
          },
          {
            "$ref": "#/components/parameters/Accept-Language"
          },
          {
            "name": "text",
            "in": "query",
            "required": false,
            "description": "Текст запроса.",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "nocorrect",
            "in": "query",
            "required": false,
            "description": "Если `False`, то ошибочный запрос будет исправлен. Например, запрос \"Гражданская абарона\" будет исправлен на \"Гражданская оборона\".",
            "schema": {
              "type": "boolean"
            }
          },
          {
            "name": "type",
            "in": "query",
            "required": false,
            "description": "Среди какого типа искать (трек, плейлист, альбом, исполнитель, пользователь, подкаст).",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "page",
            "in": "query",
            "required": false,
            "description": "Номер страницы.",
            "schema": {
              "type": "integer"
            }
          },
          {
            "name": "playlist-in-best",
            "in": "query",
            "required": false,
            "description": "",
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Успешный ответ.",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "invocationInfo": {
                      "$ref": "#/components/schemas/InvocationInfo"
                    },
                    "result": {
                      "$ref": "#/components/schemas/Search"
                    }
                  }
                }
              }
            }
          }
        },
        "x-codeSamples": [
          {
            "lang": "python",
            "label": "yandex-music",
            "source": "# pip install yandex-music\nfrom yandex_music import Client\n\nclient = Client('TOKEN').init()\nclient.search(text=...)"
          },
          {
            "lang": "python",
            "label": "yandex-music (async)",
            "source": "# pip install yandex-music\nfrom yandex_music import ClientAsync\n\nclient = await ClientAsync('TOKEN').init()\nawait client.search(text=...)"
          }
        ]
      }
    },
    "/search/suggest": {
      "get": {
        "operationId": "search_suggest",
        "summary": "Получение подсказок по введенной части поискового запроса.",
        "description": "Метод библиотеки: [`Client.search_suggest`](https://ym.marshal.dev/yandex_music._client.search/#yandex_music._client.search.SearchMixin.search_suggest)",
        "tags": [
          "Поиск"
        ],
        "parameters": [
          {
            "$ref": "#/components/parameters/X-Yandex-Music-Client"
          },
          {
            "$ref": "#/components/parameters/Accept-Language"
          },
          {
            "name": "part",
            "in": "query",
            "required": false,
            "description": "Часть поискового запроса.",
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Успешный ответ.",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "invocationInfo": {
                      "$ref": "#/components/schemas/InvocationInfo"
                    },
                    "result": {
                      "$ref": "#/components/schemas/Suggestions"
                    }
                  }
                }
              }
            }
          }
        },
        "x-codeSamples": [
          {
            "lang": "python",
            "label": "yandex-music",
            "source": "# pip install yandex-music\nfrom yandex_music import Client\n\nclient = Client('TOKEN').init()\nclient.search_suggest(part=...)"
          },
          {
            "lang": "python",
            "label": "yandex-music (async)",
            "source": "# pip install yandex-music\nfrom yandex_music import ClientAsync\n\nclient = await ClientAsync('TOKEN').init()\nawait client.search_suggest(part=...)"
          }
        ]
      }
    },
    "/settings": {
      "get": {
        "operationId": "settings",
        "summary": "Получение предложений по покупке. Нет обязательных параметров.",
        "description": "Метод библиотеки: [`Client.settings`](https://ym.marshal.dev/yandex_music._client.account/#yandex_music._client.account.AccountMixin.settings)",
        "tags": [
          "Аккаунт"
        ],
        "parameters": [
          {
            "$ref": "#/components/parameters/X-Yandex-Music-Client"
          },
          {
            "$ref": "#/components/parameters/Accept-Language"
          }
        ],
        "responses": {
          "200": {
            "description": "Успешный ответ.",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "invocationInfo": {
                      "$ref": "#/components/schemas/InvocationInfo"
                    },
                    "result": {
                      "$ref": "#/components/schemas/Settings"
                    }
                  }
                }
              }
            }
          }
        },
        "x-codeSamples": [
          {
            "lang": "python",
            "label": "yandex-music",
            "source": "# pip install yandex-music\nfrom yandex_music import Client\n\nclient = Client('TOKEN').init()\nclient.settings()"
          },
          {
            "lang": "python",
            "label": "yandex-music (async)",
            "source": "# pip install yandex-music\nfrom yandex_music import ClientAsync\n\nclient = await ClientAsync('TOKEN').init()\nawait client.settings()"
          }
        ]
      }
    },
    "/tags/{tag_id}/playlist-ids": {
      "get": {
        "operationId": "tags",
        "summary": "Получение тега (подборки).",
        "description": "Метод библиотеки: [`Client.tags`](https://ym.marshal.dev/yandex_music._client.landing/#yandex_music._client.landing.LandingMixin.tags)",
        "tags": [
          "Лендинг и фид"
        ],
        "parameters": [
          {
            "$ref": "#/components/parameters/X-Yandex-Music-Client"
          },
          {
            "$ref": "#/components/parameters/Accept-Language"
          },
          {
            "name": "tag_id",
            "in": "path",
            "required": true,
            "description": "Уникальный идентификатор тега.",
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Успешный ответ.",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "invocationInfo": {
                      "$ref": "#/components/schemas/InvocationInfo"
                    },
                    "result": {
                      "$ref": "#/components/schemas/TagResult"
                    }
                  }
                }
              }
            }
          }
        },
        "x-codeSamples": [
          {
            "lang": "python",
            "label": "yandex-music",
            "source": "# pip install yandex-music\nfrom yandex_music import Client\n\nclient = Client('TOKEN').init()\nclient.tags(tag_id=...)"
          },
          {
            "lang": "python",
            "label": "yandex-music (async)",
            "source": "# pip install yandex-music\nfrom yandex_music import ClientAsync\n\nclient = await ClientAsync('TOKEN').init()\nawait client.tags(tag_id=...)"
          }
        ]
      }
    },
    "/token": {
      "post": {
        "operationId": "poll_device_token",
        "summary": "Однократный опрос статуса подтверждения кода устройства.",
        "description": "Метод библиотеки: [`Client.poll_device_token`](https://ym.marshal.dev/yandex_music._client.device_auth/#yandex_music._client.device_auth.DeviceAuthMixin.poll_device_token)",
        "tags": [
          "OAuth Device Flow"
        ],
        "requestBody": {
          "content": {
            "application/x-www-form-urlencoded": {
              "schema": {
                "type": "object",
                "properties": {
                  "grant_type": {
                    "type": "string",
                    "description": ""
                  },
                  "code": {
                    "type": "string",
                    "description": ""
                  },
                  "client_id": {
                    "type": "string",
                    "description": "OAuth client_id."
                  },
                  "client_secret": {
                    "type": "string",
                    "description": "OAuth client_secret."
                  }
                }
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Успешный ответ.",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "invocationInfo": {
                      "$ref": "#/components/schemas/InvocationInfo"
                    },
                    "result": {
                      "$ref": "#/components/schemas/OAuthToken"
                    }
                  }
                }
              }
            }
          }
        },
        "x-codeSamples": [
          {
            "lang": "python",
            "label": "yandex-music",
            "source": "# pip install yandex-music\nfrom yandex_music import Client\n\nclient = Client('TOKEN').init()\nclient.poll_device_token(device_code=...)"
          },
          {
            "lang": "python",
            "label": "yandex-music (async)",
            "source": "# pip install yandex-music\nfrom yandex_music import ClientAsync\n\nclient = await ClientAsync('TOKEN').init()\nawait client.poll_device_token(device_code=...)"
          }
        ],
        "servers": [
          {
            "url": "https://oauth.yandex.ru"
          }
        ],
        "security": []
      }
    },
    "/tracks": {
      "post": {
        "operationId": "tracks",
        "summary": "Получение трека/треков.",
        "description": "Метод библиотеки: [`Client.tracks`](https://ym.marshal.dev/yandex_music._client.tracks/#yandex_music._client.tracks.TracksMixin.tracks)",
        "tags": [
          "Треки"
        ],
        "parameters": [
          {
            "$ref": "#/components/parameters/X-Yandex-Music-Client"
          },
          {
            "$ref": "#/components/parameters/Accept-Language"
          }
        ],
        "requestBody": {
          "content": {
            "application/x-www-form-urlencoded": {
              "schema": {
                "type": "object",
                "properties": {
                  "with-positions": {
                    "type": "string",
                    "description": ""
                  },
                  "track-ids": {
                    "type": "string",
                    "description": ""
                  }
                }
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Успешный ответ.",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "invocationInfo": {
                      "$ref": "#/components/schemas/InvocationInfo"
                    },
                    "result": {
                      "type": "array",
                      "items": {
                        "$ref": "#/components/schemas/Track"
                      }
                    }
                  }
                }
              }
            }
          }
        },
        "x-codeSamples": [
          {
            "lang": "python",
            "label": "yandex-music",
            "source": "# pip install yandex-music\nfrom yandex_music import Client\n\nclient = Client('TOKEN').init()\nclient.tracks(track_ids=...)"
          },
          {
            "lang": "python",
            "label": "yandex-music (async)",
            "source": "# pip install yandex-music\nfrom yandex_music import ClientAsync\n\nclient = await ClientAsync('TOKEN').init()\nawait client.tracks(track_ids=...)"
          }
        ]
      }
    },
    "/tracks/{track_id}/credits": {
      "get": {
        "operationId": "tracks_credits",
        "summary": "Получение информации об участниках создания трека.",
        "description": "Метод библиотеки: [`Client.tracks_credits`](https://ym.marshal.dev/yandex_music._client.credits/#yandex_music._client.credits.CreditsMixin.tracks_credits)",
        "tags": [
          "Авторы контента"
        ],
        "parameters": [
          {
            "$ref": "#/components/parameters/X-Yandex-Music-Client"
          },
          {
            "$ref": "#/components/parameters/Accept-Language"
          },
          {
            "name": "track_id",
            "in": "path",
            "required": true,
            "description": "Уникальный идентификатор трека.",
            "schema": {
              "type": [
                "string",
                "integer"
              ]
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Успешный ответ.",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "invocationInfo": {
                      "$ref": "#/components/schemas/InvocationInfo"
                    },
                    "result": {
                      "$ref": "#/components/schemas/Credits"
                    }
                  }
                }
              }
            }
          }
        },
        "x-codeSamples": [
          {
            "lang": "python",
            "label": "yandex-music",
            "source": "# pip install yandex-music\nfrom yandex_music import Client\n\nclient = Client('TOKEN').init()\nclient.tracks_credits(track_id=...)"
          },
          {
            "lang": "python",
            "label": "yandex-music (async)",
            "source": "# pip install yandex-music\nfrom yandex_music import ClientAsync\n\nclient = await ClientAsync('TOKEN').init()\nawait client.tracks_credits(track_id=...)"
          }
        ]
      }
    },
    "/tracks/{track_id}/disclaimer": {
      "get": {
        "operationId": "tracks_disclaimer",
        "summary": "Получение дисклеймера трека.",
        "description": "Метод библиотеки: [`Client.tracks_disclaimer`](https://ym.marshal.dev/yandex_music._client.disclaimers/#yandex_music._client.disclaimers.DisclaimersMixin.tracks_disclaimer)",
        "tags": [
          "Дисклеймеры"
        ],
        "parameters": [
          {
            "$ref": "#/components/parameters/X-Yandex-Music-Client"
          },
          {
            "$ref": "#/components/parameters/Accept-Language"
          },
          {
            "name": "track_id",
            "in": "path",
            "required": true,
            "description": "Уникальный идентификатор трека.",
            "schema": {
              "type": [
                "string",
                "integer"
              ]
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Успешный ответ.",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "invocationInfo": {
                      "$ref": "#/components/schemas/InvocationInfo"
                    },
                    "result": {
                      "$ref": "#/components/schemas/Disclaimer"
                    }
                  }
                }
              }
            }
          }
        },
        "x-codeSamples": [
          {
            "lang": "python",
            "label": "yandex-music",
            "source": "# pip install yandex-music\nfrom yandex_music import Client\n\nclient = Client('TOKEN').init()\nclient.tracks_disclaimer(track_id=...)"
          },
          {
            "lang": "python",
            "label": "yandex-music (async)",
            "source": "# pip install yandex-music\nfrom yandex_music import ClientAsync\n\nclient = await ClientAsync('TOKEN').init()\nawait client.tracks_disclaimer(track_id=...)"
          }
        ]
      }
    },
    "/tracks/{track_id}/download-info": {
      "get": {
        "operationId": "tracks_download_info",
        "summary": "Получение информации о доступных вариантах загрузки трека.",
        "description": "Метод библиотеки: [`Client.tracks_download_info`](https://ym.marshal.dev/yandex_music._client.tracks/#yandex_music._client.tracks.TracksMixin.tracks_download_info)",
        "tags": [
          "Треки"
        ],
        "parameters": [
          {
            "$ref": "#/components/parameters/X-Yandex-Music-Client"
          },
          {
            "$ref": "#/components/parameters/Accept-Language"
          },
          {
            "name": "track_id",
            "in": "path",
            "required": true,
            "description": "Уникальный идентификатор трека или треков.",
            "schema": {
              "type": [
                "string",
                "integer"
              ]
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Успешный ответ.",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "invocationInfo": {
                      "$ref": "#/components/schemas/InvocationInfo"
                    },
                    "result": {
                      "type": "array",
                      "items": {
                        "$ref": "#/components/schemas/DownloadInfo"
                      }
                    }
                  }
                }
              }
            }
          }
        },
        "x-codeSamples": [
          {
            "lang": "python",
            "label": "yandex-music",
            "source": "# pip install yandex-music\nfrom yandex_music import Client\n\nclient = Client('TOKEN').init()\nclient.tracks_download_info(track_id=...)"
          },
          {
            "lang": "python",
            "label": "yandex-music (async)",
            "source": "# pip install yandex-music\nfrom yandex_music import ClientAsync\n\nclient = await ClientAsync('TOKEN').init()\nawait client.tracks_download_info(track_id=...)"
          }
        ]
      }
    },
    "/tracks/{track_id}/full-info": {
      "get": {
        "operationId": "tracks_full_info",
        "summary": "Получение полной информации о треке.",
        "description": "Метод библиотеки: [`Client.tracks_full_info`](https://ym.marshal.dev/yandex_music._client.tracks/#yandex_music._client.tracks.TracksMixin.tracks_full_info)",
        "tags": [
          "Треки"
        ],
        "parameters": [
          {
            "$ref": "#/components/parameters/X-Yandex-Music-Client"
          },
          {
            "$ref": "#/components/parameters/Accept-Language"
          },
          {
            "name": "track_id",
            "in": "path",
            "required": true,
            "description": "Уникальный идентификатор трека.",
            "schema": {
              "type": [
                "string",
                "integer"
              ]
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Успешный ответ.",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "invocationInfo": {
                      "$ref": "#/components/schemas/InvocationInfo"
                    },
                    "result": {
                      "$ref": "#/components/schemas/TrackFullInfo"
                    }
                  }
                }
              }
            }
          }
        },
        "x-codeSamples": [
          {
            "lang": "python",
            "label": "yandex-music",
            "source": "# pip install yandex-music\nfrom yandex_music import Client\n\nclient = Client('TOKEN').init()\nclient.tracks_full_info(track_id=...)"
          },
          {
            "lang": "python",
            "label": "yandex-music (async)",
            "source": "# pip install yandex-music\nfrom yandex_music import ClientAsync\n\nclient = await ClientAsync('TOKEN').init()\nawait client.tracks_full_info(track_id=...)"
          }
        ]
      }
    },
    "/tracks/{track_id}/lyrics": {
      "get": {
        "operationId": "tracks_lyrics",
        "summary": "Получение текста трека.",
        "description": "Метод библиотеки: [`Client.tracks_lyrics`](https://ym.marshal.dev/yandex_music._client.tracks/#yandex_music._client.tracks.TracksMixin.tracks_lyrics)",
        "tags": [
          "Треки"
        ],
        "parameters": [
          {
            "$ref": "#/components/parameters/X-Yandex-Music-Client"
          },
          {
            "$ref": "#/components/parameters/Accept-Language"
          },
          {
            "name": "track_id",
            "in": "path",
            "required": true,
            "description": "Уникальный идентификатор трека.",
            "schema": {
              "type": [
                "string",
                "integer"
              ]
            }
          },
          {
            "name": "format",
            "in": "query",
            "required": false,
            "description": "Формат текста.",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "timeStamp",
            "in": "query",
            "required": false,
            "description": "",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "sign",
            "in": "query",
            "required": false,
            "description": "",
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Успешный ответ.",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "invocationInfo": {
                      "$ref": "#/components/schemas/InvocationInfo"
                    },
                    "result": {
                      "$ref": "#/components/schemas/TrackLyrics"
                    }
                  }
                }
              }
            }
          }
        },
        "x-codeSamples": [
          {
            "lang": "python",
            "label": "yandex-music",
            "source": "# pip install yandex-music\nfrom yandex_music import Client\n\nclient = Client('TOKEN').init()\nclient.tracks_lyrics(track_id=...)"
          },
          {
            "lang": "python",
            "label": "yandex-music (async)",
            "source": "# pip install yandex-music\nfrom yandex_music import ClientAsync\n\nclient = await ClientAsync('TOKEN').init()\nawait client.tracks_lyrics(track_id=...)"
          }
        ]
      }
    },
    "/tracks/{track_id}/similar": {
      "get": {
        "operationId": "tracks_similar",
        "summary": "Получение похожих треков.",
        "description": "Метод библиотеки: [`Client.tracks_similar`](https://ym.marshal.dev/yandex_music._client.tracks/#yandex_music._client.tracks.TracksMixin.tracks_similar)",
        "tags": [
          "Треки"
        ],
        "parameters": [
          {
            "$ref": "#/components/parameters/X-Yandex-Music-Client"
          },
          {
            "$ref": "#/components/parameters/Accept-Language"
          },
          {
            "name": "track_id",
            "in": "path",
            "required": true,
            "description": "Уникальный идентификатор трека.",
            "schema": {
              "type": [
                "string",
                "integer"
              ]
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Успешный ответ.",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "invocationInfo": {
                      "$ref": "#/components/schemas/InvocationInfo"
                    },
                    "result": {
                      "$ref": "#/components/schemas/SimilarTracks"
                    }
                  }
                }
              }
            }
          }
        },
        "x-codeSamples": [
          {
            "lang": "python",
            "label": "yandex-music",
            "source": "# pip install yandex-music\nfrom yandex_music import Client\n\nclient = Client('TOKEN').init()\nclient.tracks_similar(track_id=...)"
          },
          {
            "lang": "python",
            "label": "yandex-music (async)",
            "source": "# pip install yandex-music\nfrom yandex_music import ClientAsync\n\nclient = await ClientAsync('TOKEN').init()\nawait client.tracks_similar(track_id=...)"
          }
        ]
      }
    },
    "/tracks/{track_id}/supplement": {
      "get": {
        "operationId": "track_supplement",
        "summary": "Получение дополнительной информации о треке.",
        "description": "Метод библиотеки: [`Client.track_supplement`](https://ym.marshal.dev/yandex_music._client.tracks/#yandex_music._client.tracks.TracksMixin.track_supplement)",
        "tags": [
          "Треки"
        ],
        "parameters": [
          {
            "$ref": "#/components/parameters/X-Yandex-Music-Client"
          },
          {
            "$ref": "#/components/parameters/Accept-Language"
          },
          {
            "name": "track_id",
            "in": "path",
            "required": true,
            "description": "Уникальный идентификатор трека.",
            "schema": {
              "type": [
                "string",
                "integer"
              ]
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Успешный ответ.",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "invocationInfo": {
                      "$ref": "#/components/schemas/InvocationInfo"
                    },
                    "result": {
                      "$ref": "#/components/schemas/Supplement"
                    }
                  }
                }
              }
            }
          }
        },
        "x-codeSamples": [
          {
            "lang": "python",
            "label": "yandex-music",
            "source": "# pip install yandex-music\nfrom yandex_music import Client\n\nclient = Client('TOKEN').init()\nclient.track_supplement(track_id=...)"
          },
          {
            "lang": "python",
            "label": "yandex-music (async)",
            "source": "# pip install yandex-music\nfrom yandex_music import ClientAsync\n\nclient = await ClientAsync('TOKEN').init()\nawait client.track_supplement(track_id=...)"
          }
        ]
      }
    },
    "/tracks/{track_id}/trailer": {
      "get": {
        "operationId": "tracks_trailer",
        "summary": "Получение трейлера трека.",
        "description": "Метод библиотеки: [`Client.tracks_trailer`](https://ym.marshal.dev/yandex_music._client.tracks/#yandex_music._client.tracks.TracksMixin.tracks_trailer)",
        "tags": [
          "Треки"
        ],
        "parameters": [
          {
            "$ref": "#/components/parameters/X-Yandex-Music-Client"
          },
          {
            "$ref": "#/components/parameters/Accept-Language"
          },
          {
            "name": "track_id",
            "in": "path",
            "required": true,
            "description": "Уникальный идентификатор трека.",
            "schema": {
              "type": [
                "string",
                "integer"
              ]
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Успешный ответ.",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "invocationInfo": {
                      "$ref": "#/components/schemas/InvocationInfo"
                    },
                    "result": {
                      "$ref": "#/components/schemas/TrackTrailer"
                    }
                  }
                }
              }
            }
          }
        },
        "x-codeSamples": [
          {
            "lang": "python",
            "label": "yandex-music",
            "source": "# pip install yandex-music\nfrom yandex_music import Client\n\nclient = Client('TOKEN').init()\nclient.tracks_trailer(track_id=...)"
          },
          {
            "lang": "python",
            "label": "yandex-music (async)",
            "source": "# pip install yandex-music\nfrom yandex_music import ClientAsync\n\nclient = await ClientAsync('TOKEN').init()\nawait client.tracks_trailer(track_id=...)"
          }
        ]
      }
    },
    "/users/{user_id}/dislikes/artists": {
      "get": {
        "operationId": "users_dislikes_artists",
        "summary": "Получение исполнителей с отметкой \"Не рекомендовать\".",
        "description": "Метод библиотеки: [`Client.users_dislikes_artists`](https://ym.marshal.dev/yandex_music._client.likes/#yandex_music._client.likes.LikesMixin.users_dislikes_artists)",
        "tags": [
          "Лайки и дизлайки"
        ],
        "parameters": [
          {
            "$ref": "#/components/parameters/X-Yandex-Music-Client"
          },
          {
            "$ref": "#/components/parameters/Accept-Language"
          },
          {
            "name": "user_id",
            "in": "path",
            "required": true,
            "description": "Уникальный идентификатор пользователя. Если не указан используется ID текущего пользователя.",
            "schema": {
              "type": [
                "string",
                "integer"
              ]
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Успешный ответ.",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "invocationInfo": {
                      "$ref": "#/components/schemas/InvocationInfo"
                    },
                    "result": {
                      "type": "array",
                      "items": {
                        "$ref": "#/components/schemas/Artist"
                      }
                    }
                  }
                }
              }
            }
          }
        },
        "x-codeSamples": [
          {
            "lang": "python",
            "label": "yandex-music",
            "source": "# pip install yandex-music\nfrom yandex_music import Client\n\nclient = Client('TOKEN').init()\nclient.users_dislikes_artists()"
          },
          {
            "lang": "python",
            "label": "yandex-music (async)",
            "source": "# pip install yandex-music\nfrom yandex_music import ClientAsync\n\nclient = await ClientAsync('TOKEN').init()\nawait client.users_dislikes_artists()"
          }
        ]
      }
    },
    "/users/{user_id}/dislikes/artists/add-multiple": {
      "post": {
        "operationId": "users_dislikes_artists_add",
        "summary": "Поставить отметку \"Не рекомендовать\" исполнителю.",
        "description": "Метод библиотеки: [`Client.users_dislikes_artists_add`](https://ym.marshal.dev/yandex_music._client.likes/#yandex_music._client.likes.LikesMixin.users_dislikes_artists_add)",
        "tags": [
          "Лайки и дизлайки"
        ],
        "parameters": [
          {
            "$ref": "#/components/parameters/X-Yandex-Music-Client"
          },
          {
            "$ref": "#/components/parameters/Accept-Language"
          },
          {
            "name": "user_id",
            "in": "path",
            "required": true,
            "description": "Уникальный идентификатор пользователя. Если не указан используется ID текущего пользователя.",
            "schema": {
              "type": [
                "string",
                "integer"
              ]
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/x-www-form-urlencoded": {
              "schema": {
                "type": "object",
                "properties": {
                  "artist-ids": {
                    "type": "string",
                    "description": ""
                  }
                }
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Успешный ответ.",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "invocationInfo": {
                      "$ref": "#/components/schemas/InvocationInfo"
                    },
                    "result": {
                      "type": "boolean"
                    }
                  }
                }
              }
            }
          }
        },
        "x-codeSamples": [
          {
            "lang": "python",
            "label": "yandex-music",
            "source": "# pip install yandex-music\nfrom yandex_music import Client\n\nclient = Client('TOKEN').init()\nclient.users_dislikes_artists_add(artist_id=...)"
          },
          {
            "lang": "python",
            "label": "yandex-music (async)",
            "source": "# pip install yandex-music\nfrom yandex_music import ClientAsync\n\nclient = await ClientAsync('TOKEN').init()\nawait client.users_dislikes_artists_add(artist_id=...)"
          }
        ]
      }
    },
    "/users/{user_id}/dislikes/artists/remove": {
      "post": {
        "operationId": "users_dislikes_artists_remove",
        "summary": "Снять отметку \"Не рекомендовать\" у исполнителя.",
        "description": "Метод библиотеки: [`Client.users_dislikes_artists_remove`](https://ym.marshal.dev/yandex_music._client.likes/#yandex_music._client.likes.LikesMixin.users_dislikes_artists_remove)",
        "tags": [
          "Лайки и дизлайки"
        ],
        "parameters": [
          {
            "$ref": "#/components/parameters/X-Yandex-Music-Client"
          },
          {
            "$ref": "#/components/parameters/Accept-Language"
          },
          {
            "name": "user_id",
            "in": "path",
            "required": true,
            "description": "Уникальный идентификатор пользователя. Если не указан используется ID текущего пользователя.",
            "schema": {
              "type": [
                "string",
                "integer"
              ]
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/x-www-form-urlencoded": {
              "schema": {
                "type": "object",
                "properties": {
                  "artist-ids": {
                    "type": "string",
                    "description": ""
                  }
                }
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Успешный ответ.",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "invocationInfo": {
                      "$ref": "#/components/schemas/InvocationInfo"
                    },
                    "result": {
                      "type": "boolean"
                    }
                  }
                }
              }
            }
          }
        },
        "x-codeSamples": [
          {
            "lang": "python",
            "label": "yandex-music",
            "source": "# pip install yandex-music\nfrom yandex_music import Client\n\nclient = Client('TOKEN').init()\nclient.users_dislikes_artists_remove(artist_id=...)"
          },
          {
            "lang": "python",
            "label": "yandex-music (async)",
            "source": "# pip install yandex-music\nfrom yandex_music import ClientAsync\n\nclient = await ClientAsync('TOKEN').init()\nawait client.users_dislikes_artists_remove(artist_id=...)"
          }
        ]
      }
    },
    "/users/{user_id}/dislikes/tracks": {
      "get": {
        "operationId": "users_dislikes_tracks",
        "summary": "Получение треков с отметкой \"Не рекомендовать\".",
        "description": "Метод библиотеки: [`Client.users_dislikes_tracks`](https://ym.marshal.dev/yandex_music._client.likes/#yandex_music._client.likes.LikesMixin.users_dislikes_tracks)",
        "tags": [
          "Лайки и дизлайки"
        ],
        "parameters": [
          {
            "$ref": "#/components/parameters/X-Yandex-Music-Client"
          },
          {
            "$ref": "#/components/parameters/Accept-Language"
          },
          {
            "name": "user_id",
            "in": "path",
            "required": true,
            "description": "Уникальный идентификатор пользователя. Если не указан используется ID текущего пользователя.",
            "schema": {
              "type": [
                "string",
                "integer"
              ]
            }
          },
          {
            "name": "if_modified_since_revision",
            "in": "query",
            "required": false,
            "description": "TODO.",
            "schema": {
              "type": "integer"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Успешный ответ.",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "invocationInfo": {
                      "$ref": "#/components/schemas/InvocationInfo"
                    },
                    "result": {
                      "$ref": "#/components/schemas/TracksList"
                    }
                  }
                }
              }
            }
          }
        },
        "x-codeSamples": [
          {
            "lang": "python",
            "label": "yandex-music",
            "source": "# pip install yandex-music\nfrom yandex_music import Client\n\nclient = Client('TOKEN').init()\nclient.users_dislikes_tracks()"
          },
          {
            "lang": "python",
            "label": "yandex-music (async)",
            "source": "# pip install yandex-music\nfrom yandex_music import ClientAsync\n\nclient = await ClientAsync('TOKEN').init()\nawait client.users_dislikes_tracks()"
          }
        ]
      }
    },
    "/users/{user_id}/dislikes/tracks/add-multiple": {
      "post": {
        "operationId": "users_dislikes_tracks_add",
        "summary": "Поставить отметку \"Не рекомендовать\" треку/трекам.",
        "description": "Метод библиотеки: [`Client.users_dislikes_tracks_add`](https://ym.marshal.dev/yandex_music._client.likes/#yandex_music._client.likes.LikesMixin.users_dislikes_tracks_add)",
        "tags": [
          "Лайки и дизлайки"
        ],
        "parameters": [
          {
            "$ref": "#/components/parameters/X-Yandex-Music-Client"
          },
          {
            "$ref": "#/components/parameters/Accept-Language"
          },
          {
            "name": "user_id",
            "in": "path",
            "required": true,
            "description": "Уникальный идентификатор пользователя. Если не указан используется ID текущего пользователя.",
            "schema": {
              "type": [
                "string",
                "integer"
              ]
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/x-www-form-urlencoded": {
              "schema": {
                "type": "object",
                "properties": {
                  "track-ids": {
                    "type": "string",
                    "description": ""
                  }
                }
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Успешный ответ.",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "invocationInfo": {
                      "$ref": "#/components/schemas/InvocationInfo"
                    },
                    "result": {
                      "type": "boolean"
                    }
                  }
                }
              }
            }
          }
        },
        "x-codeSamples": [
          {
            "lang": "python",
            "label": "yandex-music",
            "source": "# pip install yandex-music\nfrom yandex_music import Client\n\nclient = Client('TOKEN').init()\nclient.users_dislikes_tracks_add(track_ids=...)"
          },
          {
            "lang": "python",
            "label": "yandex-music (async)",
            "source": "# pip install yandex-music\nfrom yandex_music import ClientAsync\n\nclient = await ClientAsync('TOKEN').init()\nawait client.users_dislikes_tracks_add(track_ids=...)"
          }
        ]
      }
    },
    "/users/{user_id}/dislikes/tracks/remove": {
      "post": {
        "operationId": "users_dislikes_tracks_remove",
        "summary": "Снять отметку \"Не рекомендовать\" у трека/треков.",
        "description": "Метод библиотеки: [`Client.users_dislikes_tracks_remove`](https://ym.marshal.dev/yandex_music._client.likes/#yandex_music._client.likes.LikesMixin.users_dislikes_tracks_remove)",
        "tags": [
          "Лайки и дизлайки"
        ],
        "parameters": [
          {
            "$ref": "#/components/parameters/X-Yandex-Music-Client"
          },
          {
            "$ref": "#/components/parameters/Accept-Language"
          },
          {
            "name": "user_id",
            "in": "path",
            "required": true,
            "description": "Уникальный идентификатор пользователя. Если не указан используется ID текущего пользователя.",
            "schema": {
              "type": [
                "string",
                "integer"
              ]
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/x-www-form-urlencoded": {
              "schema": {
                "type": "object",
                "properties": {
                  "track-ids": {
                    "type": "string",
                    "description": ""
                  }
                }
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Успешный ответ.",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "invocationInfo": {
                      "$ref": "#/components/schemas/InvocationInfo"
                    },
                    "result": {
                      "type": "boolean"
                    }
                  }
                }
              }
            }
          }
        },
        "x-codeSamples": [
          {
            "lang": "python",
            "label": "yandex-music",
            "source": "# pip install yandex-music\nfrom yandex_music import Client\n\nclient = Client('TOKEN').init()\nclient.users_dislikes_tracks_remove(track_ids=...)"
          },
          {
            "lang": "python",
            "label": "yandex-music (async)",
            "source": "# pip install yandex-music\nfrom yandex_music import ClientAsync\n\nclient = await ClientAsync('TOKEN').init()\nawait client.users_dislikes_tracks_remove(track_ids=...)"
          }
        ]
      }
    },
    "/users/{user_id}/likes/albums": {
      "get": {
        "operationId": "users_likes_albums",
        "summary": "Получение альбомов с отметкой \"Мне нравится\".",
        "description": "Метод библиотеки: [`Client.users_likes_albums`](https://ym.marshal.dev/yandex_music._client.likes/#yandex_music._client.likes.LikesMixin.users_likes_albums)",
        "tags": [
          "Лайки и дизлайки"
        ],
        "parameters": [
          {
            "$ref": "#/components/parameters/X-Yandex-Music-Client"
          },
          {
            "$ref": "#/components/parameters/Accept-Language"
          },
          {
            "name": "user_id",
            "in": "path",
            "required": true,
            "description": "Уникальный идентификатор пользователя. Если не указан используется ID текущего пользователя.",
            "schema": {
              "type": [
                "string",
                "integer"
              ]
            }
          },
          {
            "name": "rich",
            "in": "query",
            "required": false,
            "description": "Если False, то приходит укороченная версия.",
            "schema": {
              "type": "boolean"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Успешный ответ.",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "invocationInfo": {
                      "$ref": "#/components/schemas/InvocationInfo"
                    },
                    "result": {
                      "type": "array",
                      "items": {
                        "$ref": "#/components/schemas/Like"
                      }
                    }
                  }
                }
              }
            }
          }
        },
        "x-codeSamples": [
          {
            "lang": "python",
            "label": "yandex-music",
            "source": "# pip install yandex-music\nfrom yandex_music import Client\n\nclient = Client('TOKEN').init()\nclient.users_likes_albums()"
          },
          {
            "lang": "python",
            "label": "yandex-music (async)",
            "source": "# pip install yandex-music\nfrom yandex_music import ClientAsync\n\nclient = await ClientAsync('TOKEN').init()\nawait client.users_likes_albums()"
          }
        ]
      }
    },
    "/users/{user_id}/likes/albums/add-multiple": {
      "post": {
        "operationId": "users_likes_albums_add",
        "summary": "Поставить отметку \"Мне нравится\" альбому/альбомам.",
        "description": "Метод библиотеки: [`Client.users_likes_albums_add`](https://ym.marshal.dev/yandex_music._client.likes/#yandex_music._client.likes.LikesMixin.users_likes_albums_add)",
        "tags": [
          "Лайки и дизлайки"
        ],
        "parameters": [
          {
            "$ref": "#/components/parameters/X-Yandex-Music-Client"
          },
          {
            "$ref": "#/components/parameters/Accept-Language"
          },
          {
            "name": "user_id",
            "in": "path",
            "required": true,
            "description": "Уникальный идентификатор пользователя. Если не указан используется ID текущего пользователя.",
            "schema": {
              "type": [
                "string",
                "integer"
              ]
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/x-www-form-urlencoded": {
              "schema": {
                "type": "object",
                "properties": {
                  "album-ids": {
                    "type": "string",
                    "description": ""
                  }
                }
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Успешный ответ.",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "invocationInfo": {
                      "$ref": "#/components/schemas/InvocationInfo"
                    },
                    "result": {
                      "type": "boolean"
                    }
                  }
                }
              }
            }
          }
        },
        "x-codeSamples": [
          {
            "lang": "python",
            "label": "yandex-music",
            "source": "# pip install yandex-music\nfrom yandex_music import Client\n\nclient = Client('TOKEN').init()\nclient.users_likes_albums_add(album_ids=...)"
          },
          {
            "lang": "python",
            "label": "yandex-music (async)",
            "source": "# pip install yandex-music\nfrom yandex_music import ClientAsync\n\nclient = await ClientAsync('TOKEN').init()\nawait client.users_likes_albums_add(album_ids=...)"
          }
        ]
      }
    },
    "/users/{user_id}/likes/albums/remove": {
      "post": {
        "operationId": "users_likes_albums_remove",
        "summary": "Снять отметку \"Мне нравится\" у альбома/альбомов.",
        "description": "Метод библиотеки: [`Client.users_likes_albums_remove`](https://ym.marshal.dev/yandex_music._client.likes/#yandex_music._client.likes.LikesMixin.users_likes_albums_remove)",
        "tags": [
          "Лайки и дизлайки"
        ],
        "parameters": [
          {
            "$ref": "#/components/parameters/X-Yandex-Music-Client"
          },
          {
            "$ref": "#/components/parameters/Accept-Language"
          },
          {
            "name": "user_id",
            "in": "path",
            "required": true,
            "description": "Уникальный идентификатор пользователя. Если не указан используется ID текущего пользователя.",
            "schema": {
              "type": [
                "string",
                "integer"
              ]
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/x-www-form-urlencoded": {
              "schema": {
                "type": "object",
                "properties": {
                  "album-ids": {
                    "type": "string",
                    "description": ""
                  }
                }
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Успешный ответ.",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "invocationInfo": {
                      "$ref": "#/components/schemas/InvocationInfo"
                    },
                    "result": {
                      "type": "boolean"
                    }
                  }
                }
              }
            }
          }
        },
        "x-codeSamples": [
          {
            "lang": "python",
            "label": "yandex-music",
            "source": "# pip install yandex-music\nfrom yandex_music import Client\n\nclient = Client('TOKEN').init()\nclient.users_likes_albums_remove(album_ids=...)"
          },
          {
            "lang": "python",
            "label": "yandex-music (async)",
            "source": "# pip install yandex-music\nfrom yandex_music import ClientAsync\n\nclient = await ClientAsync('TOKEN').init()\nawait client.users_likes_albums_remove(album_ids=...)"
          }
        ]
      }
    },
    "/users/{user_id}/likes/artists": {
      "get": {
        "operationId": "users_likes_artists",
        "summary": "Получение артистов с отметкой \"Мне нравится\".",
        "description": "Метод библиотеки: [`Client.users_likes_artists`](https://ym.marshal.dev/yandex_music._client.likes/#yandex_music._client.likes.LikesMixin.users_likes_artists)",
        "tags": [
          "Лайки и дизлайки"
        ],
        "parameters": [
          {
            "$ref": "#/components/parameters/X-Yandex-Music-Client"
          },
          {
            "$ref": "#/components/parameters/Accept-Language"
          },
          {
            "name": "user_id",
            "in": "path",
            "required": true,
            "description": "Уникальный идентификатор пользователя. Если не указан используется ID текущего пользователя.",
            "schema": {
              "type": [
                "string",
                "integer"
              ]
            }
          },
          {
            "name": "with-timestamps",
            "in": "query",
            "required": false,
            "description": "",
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Успешный ответ.",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "invocationInfo": {
                      "$ref": "#/components/schemas/InvocationInfo"
                    },
                    "result": {
                      "type": "array",
                      "items": {
                        "$ref": "#/components/schemas/Like"
                      }
                    }
                  }
                }
              }
            }
          }
        },
        "x-codeSamples": [
          {
            "lang": "python",
            "label": "yandex-music",
            "source": "# pip install yandex-music\nfrom yandex_music import Client\n\nclient = Client('TOKEN').init()\nclient.users_likes_artists()"
          },
          {
            "lang": "python",
            "label": "yandex-music (async)",
            "source": "# pip install yandex-music\nfrom yandex_music import ClientAsync\n\nclient = await ClientAsync('TOKEN').init()\nawait client.users_likes_artists()"
          }
        ]
      }
    },
    "/users/{user_id}/likes/artists/add-multiple": {
      "post": {
        "operationId": "users_likes_artists_add",
        "summary": "Поставить отметку \"Мне нравится\" исполнителю/исполнителям.",
        "description": "Метод библиотеки: [`Client.users_likes_artists_add`](https://ym.marshal.dev/yandex_music._client.likes/#yandex_music._client.likes.LikesMixin.users_likes_artists_add)",
        "tags": [
          "Лайки и дизлайки"
        ],
        "parameters": [
          {
            "$ref": "#/components/parameters/X-Yandex-Music-Client"
          },
          {
            "$ref": "#/components/parameters/Accept-Language"
          },
          {
            "name": "user_id",
            "in": "path",
            "required": true,
            "description": "Уникальный идентификатор пользователя. Если не указан используется ID текущего пользователя.",
            "schema": {
              "type": [
                "string",
                "integer"
              ]
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/x-www-form-urlencoded": {
              "schema": {
                "type": "object",
                "properties": {
                  "artist-ids": {
                    "type": "string",
                    "description": ""
                  }
                }
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Успешный ответ.",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "invocationInfo": {
                      "$ref": "#/components/schemas/InvocationInfo"
                    },
                    "result": {
                      "type": "boolean"
                    }
                  }
                }
              }
            }
          }
        },
        "x-codeSamples": [
          {
            "lang": "python",
            "label": "yandex-music",
            "source": "# pip install yandex-music\nfrom yandex_music import Client\n\nclient = Client('TOKEN').init()\nclient.users_likes_artists_add(artist_ids=...)"
          },
          {
            "lang": "python",
            "label": "yandex-music (async)",
            "source": "# pip install yandex-music\nfrom yandex_music import ClientAsync\n\nclient = await ClientAsync('TOKEN').init()\nawait client.users_likes_artists_add(artist_ids=...)"
          }
        ]
      }
    },
    "/users/{user_id}/likes/artists/remove": {
      "post": {
        "operationId": "users_likes_artists_remove",
        "summary": "Снять отметку \"Мне нравится\" у исполнителя/исполнителей.",
        "description": "Метод библиотеки: [`Client.users_likes_artists_remove`](https://ym.marshal.dev/yandex_music._client.likes/#yandex_music._client.likes.LikesMixin.users_likes_artists_remove)",
        "tags": [
          "Лайки и дизлайки"
        ],
        "parameters": [
          {
            "$ref": "#/components/parameters/X-Yandex-Music-Client"
          },
          {
            "$ref": "#/components/parameters/Accept-Language"
          },
          {
            "name": "user_id",
            "in": "path",
            "required": true,
            "description": "Уникальный идентификатор пользователя. Если не указан используется ID текущего пользователя.",
            "schema": {
              "type": [
                "string",
                "integer"
              ]
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/x-www-form-urlencoded": {
              "schema": {
                "type": "object",
                "properties": {
                  "artist-ids": {
                    "type": "string",
                    "description": ""
                  }
                }
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Успешный ответ.",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "invocationInfo": {
                      "$ref": "#/components/schemas/InvocationInfo"
                    },
                    "result": {
                      "type": "boolean"
                    }
                  }
                }
              }
            }
          }
        },
        "x-codeSamples": [
          {
            "lang": "python",
            "label": "yandex-music",
            "source": "# pip install yandex-music\nfrom yandex_music import Client\n\nclient = Client('TOKEN').init()\nclient.users_likes_artists_remove(artist_ids=...)"
          },
          {
            "lang": "python",
            "label": "yandex-music (async)",
            "source": "# pip install yandex-music\nfrom yandex_music import ClientAsync\n\nclient = await ClientAsync('TOKEN').init()\nawait client.users_likes_artists_remove(artist_ids=...)"
          }
        ]
      }
    },
    "/users/{user_id}/likes/clips": {
      "get": {
        "operationId": "users_likes_clips",
        "summary": "Получение клипов с отметкой \"Мне нравится\".",
        "description": "Метод библиотеки: [`Client.users_likes_clips`](https://ym.marshal.dev/yandex_music._client.likes/#yandex_music._client.likes.LikesMixin.users_likes_clips)",
        "tags": [
          "Лайки и дизлайки"
        ],
        "parameters": [
          {
            "$ref": "#/components/parameters/X-Yandex-Music-Client"
          },
          {
            "$ref": "#/components/parameters/Accept-Language"
          },
          {
            "name": "user_id",
            "in": "path",
            "required": true,
            "description": "Уникальный идентификатор пользователя. Если не указан используется ID текущего пользователя.",
            "schema": {
              "type": [
                "string",
                "integer"
              ]
            }
          },
          {
            "name": "page",
            "in": "query",
            "required": false,
            "description": "Номер страницы.",
            "schema": {
              "type": "integer"
            }
          },
          {
            "name": "pageSize",
            "in": "query",
            "required": false,
            "description": "Количество элементов на странице.",
            "schema": {
              "type": "integer"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Успешный ответ.",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "invocationInfo": {
                      "$ref": "#/components/schemas/InvocationInfo"
                    },
                    "result": {
                      "$ref": "#/components/schemas/ClipsWillLike"
                    }
                  }
                }
              }
            }
          }
        },
        "x-codeSamples": [
          {
            "lang": "python",
            "label": "yandex-music",
            "source": "# pip install yandex-music\nfrom yandex_music import Client\n\nclient = Client('TOKEN').init()\nclient.users_likes_clips()"
          },
          {
            "lang": "python",
            "label": "yandex-music (async)",
            "source": "# pip install yandex-music\nfrom yandex_music import ClientAsync\n\nclient = await ClientAsync('TOKEN').init()\nawait client.users_likes_clips()"
          }
        ]
      }
    },
    "/users/{user_id}/likes/clips/add": {
      "post": {
        "operationId": "users_likes_clips_add",
        "summary": "Поставить отметку \"Мне нравится\" клипу.",
        "description": "Метод библиотеки: [`Client.users_likes_clips_add`](https://ym.marshal.dev/yandex_music._client.likes/#yandex_music._client.likes.LikesMixin.users_likes_clips_add)",
        "tags": [
          "Лайки и дизлайки"
        ],
        "parameters": [
          {
            "$ref": "#/components/parameters/X-Yandex-Music-Client"
          },
          {
            "$ref": "#/components/parameters/Accept-Language"
          },
          {
            "name": "user_id",
            "in": "path",
            "required": true,
            "description": "Уникальный идентификатор пользователя. Если не указан используется ID текущего пользователя.",
            "schema": {
              "type": [
                "string",
                "integer"
              ]
            }
          },
          {
            "name": "clip-id",
            "in": "query",
            "required": false,
            "description": "",
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Успешный ответ.",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "invocationInfo": {
                      "$ref": "#/components/schemas/InvocationInfo"
                    },
                    "result": {
                      "type": "boolean"
                    }
                  }
                }
              }
            }
          }
        },
        "x-codeSamples": [
          {
            "lang": "python",
            "label": "yandex-music",
            "source": "# pip install yandex-music\nfrom yandex_music import Client\n\nclient = Client('TOKEN').init()\nclient.users_likes_clips_add(clip_id=...)"
          },
          {
            "lang": "python",
            "label": "yandex-music (async)",
            "source": "# pip install yandex-music\nfrom yandex_music import ClientAsync\n\nclient = await ClientAsync('TOKEN').init()\nawait client.users_likes_clips_add(clip_id=...)"
          }
        ]
      }
    },
    "/users/{user_id}/likes/clips/{clip_id}/remove": {
      "post": {
        "operationId": "users_likes_clips_remove",
        "summary": "Снять отметку \"Мне нравится\" у клипа.",
        "description": "Метод библиотеки: [`Client.users_likes_clips_remove`](https://ym.marshal.dev/yandex_music._client.likes/#yandex_music._client.likes.LikesMixin.users_likes_clips_remove)",
        "tags": [
          "Лайки и дизлайки"
        ],
        "parameters": [
          {
            "$ref": "#/components/parameters/X-Yandex-Music-Client"
          },
          {
            "$ref": "#/components/parameters/Accept-Language"
          },
          {
            "name": "user_id",
            "in": "path",
            "required": true,
            "description": "Уникальный идентификатор пользователя. Если не указан используется ID текущего пользователя.",
            "schema": {
              "type": [
                "string",
                "integer"
              ]
            }
          },
          {
            "name": "clip_id",
            "in": "path",
            "required": true,
            "description": "Уникальный идентификатор клипа.",
            "schema": {
              "type": [
                "string",
                "integer"
              ]
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Успешный ответ.",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "invocationInfo": {
                      "$ref": "#/components/schemas/InvocationInfo"
                    },
                    "result": {
                      "type": "boolean"
                    }
                  }
                }
              }
            }
          }
        },
        "x-codeSamples": [
          {
            "lang": "python",
            "label": "yandex-music",
            "source": "# pip install yandex-music\nfrom yandex_music import Client\n\nclient = Client('TOKEN').init()\nclient.users_likes_clips_remove(clip_id=...)"
          },
          {
            "lang": "python",
            "label": "yandex-music (async)",
            "source": "# pip install yandex-music\nfrom yandex_music import ClientAsync\n\nclient = await ClientAsync('TOKEN').init()\nawait client.users_likes_clips_remove(clip_id=...)"
          }
        ]
      }
    },
    "/users/{user_id}/likes/playlists": {
      "get": {
        "operationId": "users_likes_playlists",
        "summary": "Получение плейлистов с отметкой \"Мне нравится\".",
        "description": "Метод библиотеки: [`Client.users_likes_playlists`](https://ym.marshal.dev/yandex_music._client.likes/#yandex_music._client.likes.LikesMixin.users_likes_playlists)",
        "tags": [
          "Лайки и дизлайки"
        ],
        "parameters": [
          {
            "$ref": "#/components/parameters/X-Yandex-Music-Client"
          },
          {
            "$ref": "#/components/parameters/Accept-Language"
          },
          {
            "name": "user_id",
            "in": "path",
            "required": true,
            "description": "Уникальный идентификатор пользователя. Если не указан используется ID текущего пользователя.",
            "schema": {
              "type": [
                "string",
                "integer"
              ]
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Успешный ответ.",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "invocationInfo": {
                      "$ref": "#/components/schemas/InvocationInfo"
                    },
                    "result": {
                      "type": "array",
                      "items": {
                        "$ref": "#/components/schemas/Like"
                      }
                    }
                  }
                }
              }
            }
          }
        },
        "x-codeSamples": [
          {
            "lang": "python",
            "label": "yandex-music",
            "source": "# pip install yandex-music\nfrom yandex_music import Client\n\nclient = Client('TOKEN').init()\nclient.users_likes_playlists()"
          },
          {
            "lang": "python",
            "label": "yandex-music (async)",
            "source": "# pip install yandex-music\nfrom yandex_music import ClientAsync\n\nclient = await ClientAsync('TOKEN').init()\nawait client.users_likes_playlists()"
          }
        ]
      }
    },
    "/users/{user_id}/likes/playlists/add-multiple": {
      "post": {
        "operationId": "users_likes_playlists_add",
        "summary": "Поставить отметку \"Мне нравится\" плейлисту/плейлистам.",
        "description": "Метод библиотеки: [`Client.users_likes_playlists_add`](https://ym.marshal.dev/yandex_music._client.likes/#yandex_music._client.likes.LikesMixin.users_likes_playlists_add)",
        "tags": [
          "Лайки и дизлайки"
        ],
        "parameters": [
          {
            "$ref": "#/components/parameters/X-Yandex-Music-Client"
          },
          {
            "$ref": "#/components/parameters/Accept-Language"
          },
          {
            "name": "user_id",
            "in": "path",
            "required": true,
            "description": "Уникальный идентификатор пользователя. Если не указан используется ID текущего пользователя.",
            "schema": {
              "type": [
                "string",
                "integer"
              ]
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/x-www-form-urlencoded": {
              "schema": {
                "type": "object",
                "properties": {
                  "playlist-ids": {
                    "type": "string",
                    "description": ""
                  }
                }
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Успешный ответ.",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "invocationInfo": {
                      "$ref": "#/components/schemas/InvocationInfo"
                    },
                    "result": {
                      "type": "boolean"
                    }
                  }
                }
              }
            }
          }
        },
        "x-codeSamples": [
          {
            "lang": "python",
            "label": "yandex-music",
            "source": "# pip install yandex-music\nfrom yandex_music import Client\n\nclient = Client('TOKEN').init()\nclient.users_likes_playlists_add(playlist_ids=...)"
          },
          {
            "lang": "python",
            "label": "yandex-music (async)",
            "source": "# pip install yandex-music\nfrom yandex_music import ClientAsync\n\nclient = await ClientAsync('TOKEN').init()\nawait client.users_likes_playlists_add(playlist_ids=...)"
          }
        ]
      }
    },
    "/users/{user_id}/likes/playlists/remove": {
      "post": {
        "operationId": "users_likes_playlists_remove",
        "summary": "Снять отметку \"Мне нравится\" у плейлиста/плейлистов.",
        "description": "Метод библиотеки: [`Client.users_likes_playlists_remove`](https://ym.marshal.dev/yandex_music._client.likes/#yandex_music._client.likes.LikesMixin.users_likes_playlists_remove)",
        "tags": [
          "Лайки и дизлайки"
        ],
        "parameters": [
          {
            "$ref": "#/components/parameters/X-Yandex-Music-Client"
          },
          {
            "$ref": "#/components/parameters/Accept-Language"
          },
          {
            "name": "user_id",
            "in": "path",
            "required": true,
            "description": "Уникальный идентификатор пользователя. Если не указан используется ID текущего пользователя.",
            "schema": {
              "type": [
                "string",
                "integer"
              ]
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/x-www-form-urlencoded": {
              "schema": {
                "type": "object",
                "properties": {
                  "playlist-ids": {
                    "type": "string",
                    "description": ""
                  }
                }
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Успешный ответ.",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "invocationInfo": {
                      "$ref": "#/components/schemas/InvocationInfo"
                    },
                    "result": {
                      "type": "boolean"
                    }
                  }
                }
              }
            }
          }
        },
        "x-codeSamples": [
          {
            "lang": "python",
            "label": "yandex-music",
            "source": "# pip install yandex-music\nfrom yandex_music import Client\n\nclient = Client('TOKEN').init()\nclient.users_likes_playlists_remove(playlist_ids=...)"
          },
          {
            "lang": "python",
            "label": "yandex-music (async)",
            "source": "# pip install yandex-music\nfrom yandex_music import ClientAsync\n\nclient = await ClientAsync('TOKEN').init()\nawait client.users_likes_playlists_remove(playlist_ids=...)"
          }
        ]
      }
    },
    "/users/{user_id}/likes/tracks": {
      "get": {
        "operationId": "users_likes_tracks",
        "summary": "Получение треков с отметкой \"Мне нравится\".",
        "description": "Метод библиотеки: [`Client.users_likes_tracks`](https://ym.marshal.dev/yandex_music._client.likes/#yandex_music._client.likes.LikesMixin.users_likes_tracks)",
        "tags": [
          "Лайки и дизлайки"
        ],
        "parameters": [
          {
            "$ref": "#/components/parameters/X-Yandex-Music-Client"
          },
          {
            "$ref": "#/components/parameters/Accept-Language"
          },
          {
            "name": "user_id",
            "in": "path",
            "required": true,
            "description": "Уникальный идентификатор пользователя. Если не указан используется ID текущего пользователя.",
            "schema": {
              "type": [
                "string",
                "integer"
              ]
            }
          },
          {
            "name": "if-modified-since-revision",
            "in": "query",
            "required": false,
            "description": "",
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Успешный ответ.",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "invocationInfo": {
                      "$ref": "#/components/schemas/InvocationInfo"
                    },
                    "result": {
                      "$ref": "#/components/schemas/TracksList"
                    }
                  }
                }
              }
            }
          }
        },
        "x-codeSamples": [
          {
            "lang": "python",
            "label": "yandex-music",
            "source": "# pip install yandex-music\nfrom yandex_music import Client\n\nclient = Client('TOKEN').init()\nclient.users_likes_tracks()"
          },
          {
            "lang": "python",
            "label": "yandex-music (async)",
            "source": "# pip install yandex-music\nfrom yandex_music import ClientAsync\n\nclient = await ClientAsync('TOKEN').init()\nawait client.users_likes_tracks()"
          }
        ]
      }
    },
    "/users/{user_id}/likes/tracks/add-multiple": {
      "post": {
        "operationId": "users_likes_tracks_add",
        "summary": "Поставить отметку \"Мне нравится\" треку/трекам.",
        "description": "Метод библиотеки: [`Client.users_likes_tracks_add`](https://ym.marshal.dev/yandex_music._client.likes/#yandex_music._client.likes.LikesMixin.users_likes_tracks_add)",
        "tags": [
          "Лайки и дизлайки"
        ],
        "parameters": [
          {
            "$ref": "#/components/parameters/X-Yandex-Music-Client"
          },
          {
            "$ref": "#/components/parameters/Accept-Language"
          },
          {
            "name": "user_id",
            "in": "path",
            "required": true,
            "description": "Уникальный идентификатор пользователя. Если не указан используется ID текущего пользователя.",
            "schema": {
              "type": [
                "string",
                "integer"
              ]
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/x-www-form-urlencoded": {
              "schema": {
                "type": "object",
                "properties": {
                  "track-ids": {
                    "type": "string",
                    "description": ""
                  }
                }
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Успешный ответ.",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "invocationInfo": {
                      "$ref": "#/components/schemas/InvocationInfo"
                    },
                    "result": {
                      "type": "boolean"
                    }
                  }
                }
              }
            }
          }
        },
        "x-codeSamples": [
          {
            "lang": "python",
            "label": "yandex-music",
            "source": "# pip install yandex-music\nfrom yandex_music import Client\n\nclient = Client('TOKEN').init()\nclient.users_likes_tracks_add(track_ids=...)"
          },
          {
            "lang": "python",
            "label": "yandex-music (async)",
            "source": "# pip install yandex-music\nfrom yandex_music import ClientAsync\n\nclient = await ClientAsync('TOKEN').init()\nawait client.users_likes_tracks_add(track_ids=...)"
          }
        ]
      }
    },
    "/users/{user_id}/likes/tracks/remove": {
      "post": {
        "operationId": "users_likes_tracks_remove",
        "summary": "Снять отметку \"Мне нравится\" у трека/треков.",
        "description": "Метод библиотеки: [`Client.users_likes_tracks_remove`](https://ym.marshal.dev/yandex_music._client.likes/#yandex_music._client.likes.LikesMixin.users_likes_tracks_remove)",
        "tags": [
          "Лайки и дизлайки"
        ],
        "parameters": [
          {
            "$ref": "#/components/parameters/X-Yandex-Music-Client"
          },
          {
            "$ref": "#/components/parameters/Accept-Language"
          },
          {
            "name": "user_id",
            "in": "path",
            "required": true,
            "description": "Уникальный идентификатор пользователя. Если не указан используется ID текущего пользователя.",
            "schema": {
              "type": [
                "string",
                "integer"
              ]
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/x-www-form-urlencoded": {
              "schema": {
                "type": "object",
                "properties": {
                  "track-ids": {
                    "type": "string",
                    "description": ""
                  }
                }
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Успешный ответ.",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "invocationInfo": {
                      "$ref": "#/components/schemas/InvocationInfo"
                    },
                    "result": {
                      "type": "boolean"
                    }
                  }
                }
              }
            }
          }
        },
        "x-codeSamples": [
          {
            "lang": "python",
            "label": "yandex-music",
            "source": "# pip install yandex-music\nfrom yandex_music import Client\n\nclient = Client('TOKEN').init()\nclient.users_likes_tracks_remove(track_ids=...)"
          },
          {
            "lang": "python",
            "label": "yandex-music (async)",
            "source": "# pip install yandex-music\nfrom yandex_music import ClientAsync\n\nclient = await ClientAsync('TOKEN').init()\nawait client.users_likes_tracks_remove(track_ids=...)"
          }
        ]
      }
    },
    "/users/{user_id}/playlists": {
      "post": {
        "operationId": "users_playlists",
        "summary": "Получение плейлиста или списка плейлистов по уникальным идентификаторам.",
        "description": "Метод библиотеки: [`Client.users_playlists`](https://ym.marshal.dev/yandex_music._client.playlists/#yandex_music._client.playlists.PlaylistsMixin.users_playlists)",
        "tags": [
          "Плейлисты"
        ],
        "parameters": [
          {
            "$ref": "#/components/parameters/X-Yandex-Music-Client"
          },
          {
            "$ref": "#/components/parameters/Accept-Language"
          },
          {
            "name": "user_id",
            "in": "path",
            "required": true,
            "description": "Уникальный идентификатор пользователя владеющим плейлистом.",
            "schema": {
              "type": [
                "string",
                "integer"
              ]
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/x-www-form-urlencoded": {
              "schema": {
                "type": "object",
                "properties": {
                  "kinds": {
                    "type": "string",
                    "description": ""
                  }
                }
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Успешный ответ.",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "invocationInfo": {
                      "$ref": "#/components/schemas/InvocationInfo"
                    },
                    "result": {
                      "anyOf": [
                        {
                          "$ref": "#/components/schemas/Playlist"
                        },
                        {
                          "type": "array",
                          "items": {
                            "$ref": "#/components/schemas/Playlist"
                          }
                        }
                      ]
                    }
                  }
                }
              }
            }
          }
        },
        "x-codeSamples": [
          {
            "lang": "python",
            "label": "yandex-music",
            "source": "# pip install yandex-music\nfrom yandex_music import Client\n\nclient = Client('TOKEN').init()\nclient.users_playlists(kind=...)"
          },
          {
            "lang": "python",
            "label": "yandex-music (async)",
            "source": "# pip install yandex-music\nfrom yandex_music import ClientAsync\n\nclient = await ClientAsync('TOKEN').init()\nawait client.users_playlists(kind=...)"
          }
        ]
      }
    },
    "/users/{user_id}/playlists/create": {
      "post": {
        "operationId": "users_playlists_create",
        "summary": "Создание плейлиста.",
        "description": "Метод библиотеки: [`Client.users_playlists_create`](https://ym.marshal.dev/yandex_music._client.playlists/#yandex_music._client.playlists.PlaylistsMixin.users_playlists_create)",
        "tags": [
          "Плейлисты"
        ],
        "parameters": [
          {
            "$ref": "#/components/parameters/X-Yandex-Music-Client"
          },
          {
            "$ref": "#/components/parameters/Accept-Language"
          },
          {
            "name": "user_id",
            "in": "path",
            "required": true,
            "description": "Уникальный идентификатор пользователя владеющим плейлистом.",
            "schema": {
              "type": [
                "string",
                "integer"
              ]
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/x-www-form-urlencoded": {
              "schema": {
                "type": "object",
                "properties": {
                  "title": {
                    "type": "string",
                    "description": "Название."
                  },
                  "visibility": {
                    "type": "string",
                    "description": "Модификатор доступа."
                  }
                }
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Успешный ответ.",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "invocationInfo": {
                      "$ref": "#/components/schemas/InvocationInfo"
                    },
                    "result": {
                      "$ref": "#/components/schemas/Playlist"
                    }
                  }
                }
              }
            }
          }
        },
        "x-codeSamples": [
          {
            "lang": "python",
            "label": "yandex-music",
            "source": "# pip install yandex-music\nfrom yandex_music import Client\n\nclient = Client('TOKEN').init()\nclient.users_playlists_create(title=...)"
          },
          {
            "lang": "python",
            "label": "yandex-music (async)",
            "source": "# pip install yandex-music\nfrom yandex_music import ClientAsync\n\nclient = await ClientAsync('TOKEN').init()\nawait client.users_playlists_create(title=...)"
          }
        ]
      }
    },
    "/users/{user_id}/playlists/list": {
      "get": {
        "operationId": "users_playlists_list",
        "summary": "Получение списка плейлистов пользователя.",
        "description": "Метод библиотеки: [`Client.users_playlists_list`](https://ym.marshal.dev/yandex_music._client.playlists/#yandex_music._client.playlists.PlaylistsMixin.users_playlists_list)",
        "tags": [
          "Плейлисты"
        ],
        "parameters": [
          {
            "$ref": "#/components/parameters/X-Yandex-Music-Client"
          },
          {
            "$ref": "#/components/parameters/Accept-Language"
          },
          {
            "name": "user_id",
            "in": "path",
            "required": true,
            "description": "Уникальный идентификатор пользователя. Если не указан используется ID текущего пользователя.",
            "schema": {
              "type": [
                "string",
                "integer"
              ]
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Успешный ответ.",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "invocationInfo": {
                      "$ref": "#/components/schemas/InvocationInfo"
                    },
                    "result": {
                      "type": "array",
                      "items": {
                        "$ref": "#/components/schemas/Playlist"
                      }
                    }
                  }
                }
              }
            }
          }
        },
        "x-codeSamples": [
          {
            "lang": "python",
            "label": "yandex-music",
            "source": "# pip install yandex-music\nfrom yandex_music import Client\n\nclient = Client('TOKEN').init()\nclient.users_playlists_list()"
          },
          {
            "lang": "python",
            "label": "yandex-music (async)",
            "source": "# pip install yandex-music\nfrom yandex_music import ClientAsync\n\nclient = await ClientAsync('TOKEN').init()\nawait client.users_playlists_list()"
          }
        ]
      }
    },
    "/users/{user_id}/playlists/list/kinds": {
      "get": {
        "operationId": "users_playlists_kinds",
        "summary": "Получение списка идентификаторов (kind) плейлистов пользователя.",
        "description": "Метод библиотеки: [`Client.users_playlists_kinds`](https://ym.marshal.dev/yandex_music._client.playlists/#yandex_music._client.playlists.PlaylistsMixin.users_playlists_kinds)",
        "tags": [
          "Плейлисты"
        ],
        "parameters": [
          {
            "$ref": "#/components/parameters/X-Yandex-Music-Client"
          },
          {
            "$ref": "#/components/parameters/Accept-Language"
          },
          {
            "name": "user_id",
            "in": "path",
            "required": true,
            "description": "Уникальный идентификатор пользователя. Если не указан используется ID текущего пользователя.",
            "schema": {
              "type": [
                "string",
                "integer"
              ]
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Успешный ответ.",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "invocationInfo": {
                      "$ref": "#/components/schemas/InvocationInfo"
                    },
                    "result": {
                      "type": "array",
                      "items": {
                        "type": "integer"
                      }
                    }
                  }
                }
              }
            }
          }
        },
        "x-codeSamples": [
          {
            "lang": "python",
            "label": "yandex-music",
            "source": "# pip install yandex-music\nfrom yandex_music import Client\n\nclient = Client('TOKEN').init()\nclient.users_playlists_kinds()"
          },
          {
            "lang": "python",
            "label": "yandex-music (async)",
            "source": "# pip install yandex-music\nfrom yandex_music import ClientAsync\n\nclient = await ClientAsync('TOKEN').init()\nawait client.users_playlists_kinds()"
          }
        ]
      }
    },
    "/users/{user_id}/playlists/{kind}/change": {
      "post": {
        "operationId": "users_playlists_change",
        "summary": "Изменение плейлиста.",
        "description": "Метод библиотеки: [`Client.users_playlists_change`](https://ym.marshal.dev/yandex_music._client.playlists/#yandex_music._client.playlists.PlaylistsMixin.users_playlists_change)",
        "tags": [
          "Плейлисты"
        ],
        "parameters": [
          {
            "$ref": "#/components/parameters/X-Yandex-Music-Client"
          },
          {
            "$ref": "#/components/parameters/Accept-Language"
          },
          {
            "name": "user_id",
            "in": "path",
            "required": true,
            "description": "Уникальный идентификатор пользователя владеющим плейлистом.",
            "schema": {
              "type": [
                "string",
                "integer"
              ]
            }
          },
          {
            "name": "kind",
            "in": "path",
            "required": true,
            "description": "Уникальный идентификатор плейлиста.",
            "schema": {
              "type": [
                "string",
                "integer"
              ]
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/x-www-form-urlencoded": {
              "schema": {
                "type": "object",
                "properties": {
                  "kind": {
                    "type": "string",
                    "description": "Уникальный идентификатор плейлиста."
                  },
                  "revision": {
                    "type": "string",
                    "description": "TODO."
                  },
                  "diff": {
                    "type": "string",
                    "description": "JSON представления отличий старого и нового плейлиста."
                  }
                }
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Успешный ответ.",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "invocationInfo": {
                      "$ref": "#/components/schemas/InvocationInfo"
                    },
                    "result": {
                      "$ref": "#/components/schemas/Playlist"
                    }
                  }
                }
              }
            }
          }
        },
        "x-codeSamples": [
          {
            "lang": "python",
            "label": "yandex-music",
            "source": "# pip install yandex-music\nfrom yandex_music import Client\n\nclient = Client('TOKEN').init()\nclient.users_playlists_change(kind=..., diff=...)"
          },
          {
            "lang": "python",
            "label": "yandex-music (async)",
            "source": "# pip install yandex-music\nfrom yandex_music import ClientAsync\n\nclient = await ClientAsync('TOKEN').init()\nawait client.users_playlists_change(kind=..., diff=...)"
          }
        ],
        "x-library-methods": [
          "users_playlists_delete_track",
          "users_playlists_insert_track"
        ]
      }
    },
    "/users/{user_id}/playlists/{kind}/delete": {
      "post": {
        "operationId": "users_playlists_delete",
        "summary": "Удаление плейлиста.",
        "description": "Метод библиотеки: [`Client.users_playlists_delete`](https://ym.marshal.dev/yandex_music._client.playlists/#yandex_music._client.playlists.PlaylistsMixin.users_playlists_delete)",
        "tags": [
          "Плейлисты"
        ],
        "parameters": [
          {
            "$ref": "#/components/parameters/X-Yandex-Music-Client"
          },
          {
            "$ref": "#/components/parameters/Accept-Language"
          },
          {
            "name": "user_id",
            "in": "path",
            "required": true,
            "description": "Уникальный идентификатор пользователя владеющим плейлистом.",
            "schema": {
              "type": [
                "string",
                "integer"
              ]
            }
          },
          {
            "name": "kind",
            "in": "path",
            "required": true,
            "description": "Уникальный идентификатор плейлиста.",
            "schema": {
              "type": [
                "string",
                "integer"
              ]
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Успешный ответ.",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "invocationInfo": {
                      "$ref": "#/components/schemas/InvocationInfo"
                    },
                    "result": {
                      "type": "boolean"
                    }
                  }
                }
              }
            }
          }
        },
        "x-codeSamples": [
          {
            "lang": "python",
            "label": "yandex-music",
            "source": "# pip install yandex-music\nfrom yandex_music import Client\n\nclient = Client('TOKEN').init()\nclient.users_playlists_delete(kind=...)"
          },
          {
            "lang": "python",
            "label": "yandex-music (async)",
            "source": "# pip install yandex-music\nfrom yandex_music import ClientAsync\n\nclient = await ClientAsync('TOKEN').init()\nawait client.users_playlists_delete(kind=...)"
          }
        ]
      }
    },
    "/users/{user_id}/playlists/{kind}/description": {
      "post": {
        "operationId": "users_playlists_description",
        "summary": "Изменение описания плейлиста.",
        "description": "Метод библиотеки: [`Client.users_playlists_description`](https://ym.marshal.dev/yandex_music._client.playlists/#yandex_music._client.playlists.PlaylistsMixin.users_playlists_description)",
        "tags": [
          "Плейлисты"
        ],
        "parameters": [
          {
            "$ref": "#/components/parameters/X-Yandex-Music-Client"
          },
          {
            "$ref": "#/components/parameters/Accept-Language"
          },
          {
            "name": "user_id",
            "in": "path",
            "required": true,
            "description": "Уникальный идентификатор пользователя владеющим плейлистом.",
            "schema": {
              "type": [
                "string",
                "integer"
              ]
            }
          },
          {
            "name": "kind",
            "in": "path",
            "required": true,
            "description": "Уникальный идентификатор плейлиста.",
            "schema": {
              "type": [
                "string",
                "integer"
              ]
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/x-www-form-urlencoded": {
              "schema": {
                "type": "object",
                "properties": {
                  "value": {
                    "type": "string",
                    "description": ""
                  }
                }
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Успешный ответ.",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "invocationInfo": {
                      "$ref": "#/components/schemas/InvocationInfo"
                    },
                    "result": {
                      "$ref": "#/components/schemas/Playlist"
                    }
                  }
                }
              }
            }
          }
        },
        "x-codeSamples": [
          {
            "lang": "python",
            "label": "yandex-music",
            "source": "# pip install yandex-music\nfrom yandex_music import Client\n\nclient = Client('TOKEN').init()\nclient.users_playlists_description(kind=..., description=...)"
          },
          {
            "lang": "python",
            "label": "yandex-music (async)",
            "source": "# pip install yandex-music\nfrom yandex_music import ClientAsync\n\nclient = await ClientAsync('TOKEN').init()\nawait client.users_playlists_description(kind=..., description=...)"
          }
        ]
      }
    },
    "/users/{user_id}/playlists/{kind}/name": {
      "post": {
        "operationId": "users_playlists_name",
        "summary": "Изменение названия плейлиста.",
        "description": "Метод библиотеки: [`Client.users_playlists_name`](https://ym.marshal.dev/yandex_music._client.playlists/#yandex_music._client.playlists.PlaylistsMixin.users_playlists_name)",
        "tags": [
          "Плейлисты"
        ],
        "parameters": [
          {
            "$ref": "#/components/parameters/X-Yandex-Music-Client"
          },
          {
            "$ref": "#/components/parameters/Accept-Language"
          },
          {
            "name": "user_id",
            "in": "path",
            "required": true,
            "description": "Уникальный идентификатор пользователя владеющим плейлистом.",
            "schema": {
              "type": [
                "string",
                "integer"
              ]
            }
          },
          {
            "name": "kind",
            "in": "path",
            "required": true,
            "description": "Уникальный идентификатор плейлиста.",
            "schema": {
              "type": [
                "string",
                "integer"
              ]
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/x-www-form-urlencoded": {
              "schema": {
                "type": "object",
                "properties": {
                  "value": {
                    "type": "string",
                    "description": ""
                  }
                }
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Успешный ответ.",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "invocationInfo": {
                      "$ref": "#/components/schemas/InvocationInfo"
                    },
                    "result": {
                      "$ref": "#/components/schemas/Playlist"
                    }
                  }
                }
              }
            }
          }
        },
        "x-codeSamples": [
          {
            "lang": "python",
            "label": "yandex-music",
            "source": "# pip install yandex-music\nfrom yandex_music import Client\n\nclient = Client('TOKEN').init()\nclient.users_playlists_name(kind=..., name=...)"
          },
          {
            "lang": "python",
            "label": "yandex-music (async)",
            "source": "# pip install yandex-music\nfrom yandex_music import ClientAsync\n\nclient = await ClientAsync('TOKEN').init()\nawait client.users_playlists_name(kind=..., name=...)"
          }
        ]
      }
    },
    "/users/{user_id}/playlists/{kind}/recommendations": {
      "get": {
        "operationId": "users_playlists_recommendations",
        "summary": "Получение рекомендаций для плейлиста.",
        "description": "Метод библиотеки: [`Client.users_playlists_recommendations`](https://ym.marshal.dev/yandex_music._client.playlists/#yandex_music._client.playlists.PlaylistsMixin.users_playlists_recommendations)",
        "tags": [
          "Плейлисты"
        ],
        "parameters": [
          {
            "$ref": "#/components/parameters/X-Yandex-Music-Client"
          },
          {
            "$ref": "#/components/parameters/Accept-Language"
          },
          {
            "name": "user_id",
            "in": "path",
            "required": true,
            "description": "Уникальный идентификатор пользователя владеющим плейлистом.",
            "schema": {
              "type": [
                "string",
                "integer"
              ]
            }
          },
          {
            "name": "kind",
            "in": "path",
            "required": true,
            "description": "Уникальный идентификатор плейлиста.",
            "schema": {
              "type": [
                "string",
                "integer"
              ]
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Успешный ответ.",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "invocationInfo": {
                      "$ref": "#/components/schemas/InvocationInfo"
                    },
                    "result": {
                      "$ref": "#/components/schemas/PlaylistRecommendations"
                    }
                  }
                }
              }
            }
          }
        },
        "x-codeSamples": [
          {
            "lang": "python",
            "label": "yandex-music",
            "source": "# pip install yandex-music\nfrom yandex_music import Client\n\nclient = Client('TOKEN').init()\nclient.users_playlists_recommendations(kind=...)"
          },
          {
            "lang": "python",
            "label": "yandex-music (async)",
            "source": "# pip install yandex-music\nfrom yandex_music import ClientAsync\n\nclient = await ClientAsync('TOKEN').init()\nawait client.users_playlists_recommendations(kind=...)"
          }
        ]
      }
    },
    "/users/{user_id}/playlists/{kind}/trailer": {
      "get": {
        "operationId": "users_playlists_trailer",
        "summary": "Получение трейлера плейлиста.",
        "description": "Метод библиотеки: [`Client.users_playlists_trailer`](https://ym.marshal.dev/yandex_music._client.playlists/#yandex_music._client.playlists.PlaylistsMixin.users_playlists_trailer)",
        "tags": [
          "Плейлисты"
        ],
        "parameters": [
          {
            "$ref": "#/components/parameters/X-Yandex-Music-Client"
          },
          {
            "$ref": "#/components/parameters/Accept-Language"
          },
          {
            "name": "user_id",
            "in": "path",
            "required": true,
            "description": "Уникальный идентификатор пользователя владеющим плейлистом.",
            "schema": {
              "type": [
                "string",
                "integer"
              ]
            }
          },
          {
            "name": "kind",
            "in": "path",
            "required": true,
            "description": "Уникальный идентификатор плейлиста.",
            "schema": {
              "type": [
                "string",
                "integer"
              ]
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Успешный ответ.",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "invocationInfo": {
                      "$ref": "#/components/schemas/InvocationInfo"
                    },
                    "result": {
                      "$ref": "#/components/schemas/PlaylistTrailer"
                    }
                  }
                }
              }
            }
          }
        },
        "x-codeSamples": [
          {
            "lang": "python",
            "label": "yandex-music",
            "source": "# pip install yandex-music\nfrom yandex_music import Client\n\nclient = Client('TOKEN').init()\nclient.users_playlists_trailer(kind=...)"
          },
          {
            "lang": "python",
            "label": "yandex-music (async)",
            "source": "# pip install yandex-music\nfrom yandex_music import ClientAsync\n\nclient = await ClientAsync('TOKEN').init()\nawait client.users_playlists_trailer(kind=...)"
          }
        ]
      }
    },
    "/users/{user_id}/playlists/{kind}/visibility": {
      "post": {
        "operationId": "users_playlists_visibility",
        "summary": "Изменение видимости плейлиста.",
        "description": "Метод библиотеки: [`Client.users_playlists_visibility`](https://ym.marshal.dev/yandex_music._client.playlists/#yandex_music._client.playlists.PlaylistsMixin.users_playlists_visibility)",
        "tags": [
          "Плейлисты"
        ],
        "parameters": [
          {
            "$ref": "#/components/parameters/X-Yandex-Music-Client"
          },
          {
            "$ref": "#/components/parameters/Accept-Language"
          },
          {
            "name": "user_id",
            "in": "path",
            "required": true,
            "description": "Уникальный идентификатор пользователя владеющим плейлистом.",
            "schema": {
              "type": [
                "string",
                "integer"
              ]
            }
          },
          {
            "name": "kind",
            "in": "path",
            "required": true,
            "description": "Уникальный идентификатор плейлиста.",
            "schema": {
              "type": [
                "string",
                "integer"
              ]
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/x-www-form-urlencoded": {
              "schema": {
                "type": "object",
                "properties": {
                  "value": {
                    "type": "string",
                    "description": ""
                  }
                }
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Успешный ответ.",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "invocationInfo": {
                      "$ref": "#/components/schemas/InvocationInfo"
                    },
                    "result": {
                      "$ref": "#/components/schemas/Playlist"
                    }
                  }
                }
              }
            }
          }
        },
        "x-codeSamples": [
          {
            "lang": "python",
            "label": "yandex-music",
            "source": "# pip install yandex-music\nfrom yandex_music import Client\n\nclient = Client('TOKEN').init()\nclient.users_playlists_visibility(kind=..., visibility=...)"
          },
          {
            "lang": "python",
            "label": "yandex-music (async)",
            "source": "# pip install yandex-music\nfrom yandex_music import ClientAsync\n\nclient = await ClientAsync('TOKEN').init()\nawait client.users_playlists_visibility(kind=..., visibility=...)"
          }
        ]
      }
    },
    "/users/{user_id}/presaves": {
      "get": {
        "operationId": "users_presaves",
        "summary": "Получение списка предсохранённых альбомов.",
        "description": "Метод библиотеки: [`Client.users_presaves`](https://ym.marshal.dev/yandex_music._client.presaves/#yandex_music._client.presaves.PresavesMixin.users_presaves)",
        "tags": [
          "Предсохранения"
        ],
        "parameters": [
          {
            "$ref": "#/components/parameters/X-Yandex-Music-Client"
          },
          {
            "$ref": "#/components/parameters/Accept-Language"
          },
          {
            "name": "user_id",
            "in": "path",
            "required": true,
            "description": "Уникальный идентификатор пользователя. Если не указан используется ID текущего пользователя.",
            "schema": {
              "type": [
                "string",
                "integer"
              ]
            }
          },
          {
            "name": "includeReleased",
            "in": "query",
            "required": false,
            "description": "Включить вышедшие альбомы.",
            "schema": {
              "type": "boolean"
            }
          },
          {
            "name": "includeUpcoming",
            "in": "query",
            "required": false,
            "description": "Включить предстоящие альбомы.",
            "schema": {
              "type": "boolean"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Успешный ответ.",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "invocationInfo": {
                      "$ref": "#/components/schemas/InvocationInfo"
                    },
                    "result": {
                      "$ref": "#/components/schemas/Presaves"
                    }
                  }
                }
              }
            }
          }
        },
        "x-codeSamples": [
          {
            "lang": "python",
            "label": "yandex-music",
            "source": "# pip install yandex-music\nfrom yandex_music import Client\n\nclient = Client('TOKEN').init()\nclient.users_presaves()"
          },
          {
            "lang": "python",
            "label": "yandex-music (async)",
            "source": "# pip install yandex-music\nfrom yandex_music import ClientAsync\n\nclient = await ClientAsync('TOKEN').init()\nawait client.users_presaves()"
          }
        ]
      }
    },
    "/users/{user_id}/presaves/add": {
      "post": {
        "operationId": "users_presaves_add",
        "summary": "Предсохранение альбома.",
        "description": "Метод библиотеки: [`Client.users_presaves_add`](https://ym.marshal.dev/yandex_music._client.presaves/#yandex_music._client.presaves.PresavesMixin.users_presaves_add)",
        "tags": [
          "Предсохранения"
        ],
        "parameters": [
          {
            "$ref": "#/components/parameters/X-Yandex-Music-Client"
          },
          {
            "$ref": "#/components/parameters/Accept-Language"
          },
          {
            "name": "user_id",
            "in": "path",
            "required": true,
            "description": "Уникальный идентификатор пользователя. Если не указан используется ID текущего пользователя.",
            "schema": {
              "type": [
                "string",
                "integer"
              ]
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/x-www-form-urlencoded": {
              "schema": {
                "type": "object",
                "properties": {
                  "albumId": {
                    "type": "string",
                    "description": "Уникальный идентификатор альбома."
                  },
                  "likeAfterRelease": {
                    "type": "string",
                    "description": "Автоматически поставить лайк после выхода альбома."
                  }
                }
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Успешный ответ.",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "invocationInfo": {
                      "$ref": "#/components/schemas/InvocationInfo"
                    },
                    "result": {
                      "type": "boolean"
                    }
                  }
                }
              }
            }
          }
        },
        "x-codeSamples": [
          {
            "lang": "python",
            "label": "yandex-music",
            "source": "# pip install yandex-music\nfrom yandex_music import Client\n\nclient = Client('TOKEN').init()\nclient.users_presaves_add(album_id=...)"
          },
          {
            "lang": "python",
            "label": "yandex-music (async)",
            "source": "# pip install yandex-music\nfrom yandex_music import ClientAsync\n\nclient = await ClientAsync('TOKEN').init()\nawait client.users_presaves_add(album_id=...)"
          }
        ]
      }
    },
    "/users/{user_id}/presaves/remove": {
      "post": {
        "operationId": "users_presaves_remove",
        "summary": "Удаление предсохранения альбома.",
        "description": "Метод библиотеки: [`Client.users_presaves_remove`](https://ym.marshal.dev/yandex_music._client.presaves/#yandex_music._client.presaves.PresavesMixin.users_presaves_remove)",
        "tags": [
          "Предсохранения"
        ],
        "parameters": [
          {
            "$ref": "#/components/parameters/X-Yandex-Music-Client"
          },
          {
            "$ref": "#/components/parameters/Accept-Language"
          },
          {
            "name": "user_id",
            "in": "path",
            "required": true,
            "description": "Уникальный идентификатор пользователя. Если не указан используется ID текущего пользователя.",
            "schema": {
              "type": [
                "string",
                "integer"
              ]
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/x-www-form-urlencoded": {
              "schema": {
                "type": "object",
                "properties": {
                  "albumId": {
                    "type": "string",
                    "description": "Уникальный идентификатор альбома."
                  }
                }
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Успешный ответ.",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "invocationInfo": {
                      "$ref": "#/components/schemas/InvocationInfo"
                    },
                    "result": {
                      "type": "boolean"
                    }
                  }
                }
              }
            }
          }
        },
        "x-codeSamples": [
          {
            "lang": "python",
            "label": "yandex-music",
            "source": "# pip install yandex-music\nfrom yandex_music import Client\n\nclient = Client('TOKEN').init()\nclient.users_presaves_remove(album_id=...)"
          },
          {
            "lang": "python",
            "label": "yandex-music (async)",
            "source": "# pip install yandex-music\nfrom yandex_music import ClientAsync\n\nclient = await ClientAsync('TOKEN').init()\nawait client.users_presaves_remove(album_id=...)"
          }
        ]
      }
    },
    "/users/{user_id}/settings": {
      "get": {
        "operationId": "users_settings",
        "summary": "Получение настроек пользователя.",
        "description": "Метод библиотеки: [`Client.users_settings`](https://ym.marshal.dev/yandex_music._client.playlists/#yandex_music._client.playlists.PlaylistsMixin.users_settings)",
        "tags": [
          "Плейлисты"
        ],
        "parameters": [
          {
            "$ref": "#/components/parameters/X-Yandex-Music-Client"
          },
          {
            "$ref": "#/components/parameters/Accept-Language"
          },
          {
            "name": "user_id",
            "in": "path",
            "required": true,
            "description": "Уникальный идентификатор пользователя чьи настройки хотим получить.",
            "schema": {
              "type": [
                "string",
                "integer"
              ]
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Успешный ответ.",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "invocationInfo": {
                      "$ref": "#/components/schemas/InvocationInfo"
                    },
                    "result": {
                      "$ref": "#/components/schemas/UserSettings"
                    }
                  }
                }
              }
            }
          }
        },
        "x-codeSamples": [
          {
            "lang": "python",
            "label": "yandex-music",
            "source": "# pip install yandex-music\nfrom yandex_music import Client\n\nclient = Client('TOKEN').init()\nclient.users_settings()"
          },
          {
            "lang": "python",
            "label": "yandex-music (async)",
            "source": "# pip install yandex-music\nfrom yandex_music import ClientAsync\n\nclient = await ClientAsync('TOKEN').init()\nawait client.users_settings()"
          }
        ]
      }
    }
  },
  "components": {
    "securitySchemes": {
      "OAuth": {
        "type": "apiKey",
        "in": "header",
        "name": "Authorization",
        "description": "Значение вида `OAuth <token>`."
      }
    },
    "parameters": {
      "X-Yandex-Music-Client": {
        "name": "X-Yandex-Music-Client",
        "in": "header",
        "required": true,
        "description": "Заголовок, который библиотека отправляет в каждом запросе.",
        "schema": {
          "type": "string"
        },
        "example": "YandexMusicAndroid/24023621"
      },
      "Accept-Language": {
        "name": "Accept-Language",
        "in": "header",
        "required": true,
        "description": "Заголовок, который библиотека отправляет в каждом запросе.",
        "schema": {
          "type": "string"
        },
        "example": "ru"
      }
    },
    "schemas": {
      "Account": {
        "type": "object",
        "description": "Класс, представляющий основную информацию об аккаунте пользователя.",
        "properties": {
          "now": {
            "type": "string",
            "description": "Текущая дата и время."
          },
          "serviceAvailable": {
            "type": "boolean",
            "description": "Доступен ли сервис."
          },
          "region": {
            "type": "integer",
            "description": "Регион."
          },
          "uid": {
            "type": "integer",
            "description": "Уникальный идентификатор."
          },
          "login": {
            "type": "string",
            "description": "Виртуальное имя (обычно e-mail)."
          },
          "fullName": {
            "type": "string",
            "description": "Полное имя (имя и фамилия)."
          },
          "secondName": {
            "type": "string",
            "description": "Фамилия."
          },
          "firstName": {
            "type": "string",
            "description": "Имя."
          },
          "displayName": {
            "type": "string",
            "description": "Отображаемое имя."
          },
          "hostedUser": {
            "type": "boolean",
            "description": "Является ли пользователем чьим-то другим."
          },
          "birthday": {
            "type": "string",
            "description": "Дата рождения."
          },
          "passportPhones": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/PassportPhone"
            },
            "description": "Мобильные номера."
          },
          "registeredAt": {
            "type": "string",
            "description": "Дата создания учётной записи."
          },
          "hasInfoForAppMetrica": {
            "type": "boolean",
            "description": "Наличие информации для App Metrica."
          },
          "child": {
            "type": "boolean",
            "description": "Дочерний / детский аккаунт (скорее детский, позволяет ограничить доступный контент ребенку на Кинопоиске)."
          },
          "regionCode": {
            "type": "string",
            "description": "Код региона пользователя (например, `ru`)."
          },
          "nonOwnerFamilyMember": {
            "type": "boolean",
            "description": "Является ли пользователь участником семьи, но не её владельцем."
          }
        },
        "required": [
          "now",
          "serviceAvailable"
        ]
      },
      "AdParams": {
        "type": "object",
        "description": "Класс, представляющий параметры рекламного объявления.",
        "properties": {
          "partnerId": {
            "type": [
              "string",
              "integer"
            ],
            "description": "Уникальный идентификатор заказчика рекламы."
          },
          "categoryId": {
            "type": [
              "string",
              "integer"
            ],
            "description": "Уникальный идентификатор категории рекламы."
          },
          "pageRef": {
            "type": "string",
            "description": "Ссылка на ссылающуюся страницу."
          },
          "targetRef": {
            "type": "string",
            "description": "Ссылка на целевую страницу."
          },
          "otherParams": {
            "type": "string",
            "description": "Другие параметры."
          },
          "adVolume": {
            "type": "integer",
            "description": "Громкость воспроизводимой рекламы."
          },
          "genreId": {
            "type": "string",
            "description": "Уникальный идентификатор жанра."
          },
          "genreName": {
            "type": "string",
            "description": "Название жанра."
          }
        },
        "required": [
          "partnerId",
          "categoryId",
          "pageRef",
          "targetRef",
          "otherParams",
          "adVolume"
        ]
      },
      "Album": {
        "type": "object",
        "description": "Класс, представляющий альбом.",
        "properties": {
          "id": {
            "type": "integer",
            "description": "Идентификатор альбома."
          },
          "error": {
            "type": "string",
            "description": "Ошибка получения альбома."
          },
          "title": {
            "type": "string",
            "description": "Название альбома."
          },
          "trackCount": {
            "type": "integer",
            "description": "Количество треков."
          },
          "artists": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/Artist"
            },
            "description": "Артисты."
          },
          "labels": {
            "anyOf": [
              {
                "type": "array",
                "items": {
                  "$ref": "#/components/schemas/Label"
                }
              },
              {
                "type": "array",
                "items": {
                  "type": "string"
                }
              }
            ],
            "description": "Лейблы."
          },
          "available": {
            "type": "boolean",
            "description": "Доступен ли альбом."
          },
          "availableForPremiumUsers": {
            "type": "boolean",
            "description": "Доступен ли альбом для пользователей с подпиской."
          },
          "version": {
            "type": "string",
            "description": "Дополнительная информация об альбоме."
          },
          "coverUri": {
            "type": "string",
            "description": "Ссылка на обложку."
          },
          "contentWarning": {
            "type": "string",
            "description": "Предупреждение о содержимом альбома."
          },
          "originalReleaseYear": {
            "type": "integer",
            "description": "Год оригинального релиза."
          },
          "genre": {
            "type": "string",
            "description": "Жанр музыки."
          },
          "textColor": {
            "type": "string",
            "description": "Цвет текста описания."
          },
          "shortDescription": {
            "type": "string",
            "description": "Короткое описание."
          },
          "description": {
            "type": "string",
            "description": "Описание."
          },
          "isPremiere": {
            "type": "boolean",
            "description": "Премьера ли."
          },
          "isBanner": {
            "type": "boolean",
            "description": "Является ли баннером."
          },
          "metaType": {
            "type": "string",
            "description": "Мета тип TODO."
          },
          "storageDir": {
            "type": "string",
            "description": "В какой папке на сервере хранится файл TODO."
          },
          "ogImage": {
            "type": "string",
            "description": "Ссылка на превью Open Graph."
          },
          "buy": {
            "type": "array",
            "items": {
              "anyOf": [
                {
                  "type": "object",
                  "additionalProperties": {}
                },
                {
                  "type": "array",
                  "items": {}
                },
                {
                  "type": "string"
                },
                {
                  "type": "integer"
                },
                {
                  "type": "number"
                },
                {
                  "type": "boolean"
                }
              ]
            }
          },
          "recent": {
            "type": "boolean",
            "description": "Является ли альбом новым."
          },
          "veryImportant": {
            "type": "boolean",
            "description": "Популярен ли альбом у слушателей."
          },
          "availableForMobile": {
            "type": "boolean",
            "description": "Доступен ли альбом из приложения для телефона."
          },
          "availablePartially": {
            "type": "boolean",
            "description": "Доступен ли альбом частично для пользователей без подписки."
          },
          "bests": {
            "type": "array",
            "items": {
              "type": "integer"
            },
            "description": "ID лучших треков альбома."
          },
          "duplicates": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/Album"
            },
            "description": "Альбомы-дубликаты."
          },
          "prerolls": {
            "type": "array",
            "items": {
              "anyOf": [
                {
                  "type": "object",
                  "additionalProperties": {}
                },
                {
                  "type": "array",
                  "items": {}
                },
                {
                  "type": "string"
                },
                {
                  "type": "integer"
                },
                {
                  "type": "number"
                },
                {
                  "type": "boolean"
                }
              ]
            },
            "description": "Прероллы TODO."
          },
          "volumes": {
            "type": "array",
            "items": {
              "type": "array",
              "items": {
                "$ref": "#/components/schemas/Track"
              }
            },
            "description": "Треки альбома, разделённые по дискам."
          },
          "year": {
            "type": "integer",
            "description": "Год релиза."
          },
          "releaseDate": {
            "type": "string",
            "description": "Дата релиза в формате ISO 8601."
          },
          "type": {
            "type": "string",
            "description": "Тип альбома."
          },
          "trackPosition": {
            "$ref": "#/components/schemas/TrackPosition",
            "description": "Позиция трека в альбоме. Возвращается при получении альбома в составе трека."
          },
          "regions": {
            "type": "array",
            "items": {
              "type": "string"
            },
            "description": "Список регионов в которых доступен альбом."
          },
          "availableAsRbt": {
            "type": "boolean",
            "description": "TODO."
          },
          "lyricsAvailable": {
            "type": "boolean",
            "description": "Доступны ли слова TODO."
          },
          "rememberPosition": {
            "type": "boolean",
            "description": "Запоминание позиции TODO."
          },
          "albums": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/Album"
            },
            "description": "Альбомы TODO."
          },
          "durationMs": {
            "type": "integer",
            "description": "Длительность в миллисекундах."
          },
          "explicit": {
            "type": "boolean",
            "description": "Есть ли в треке ненормативная лексика."
          },
          "startDate": {
            "type": "string",
            "description": "Дата начала в формате ISO 8601 TODO."
          },
          "likesCount": {
            "type": "integer",
            "description": "Количество лайков TODO."
          },
          "deprecation": {
            "$ref": "#/components/schemas/Deprecation",
            "description": "TODO."
          },
          "availableRegions": {
            "type": "array",
            "items": {
              "type": "string"
            },
            "description": "Регионы, где доступен альбом."
          },
          "availableForOptions": {
            "type": "array",
            "items": {
              "type": "string"
            },
            "description": "Возможные опции для альбома."
          },
          "listeningFinished": {
            "type": "boolean"
          },
          "disclaimers": {
            "type": "array",
            "items": {
              "type": "string"
            },
            "description": "Список дисклеймеров альбома."
          },
          "actionButton": {
            "$ref": "#/components/schemas/AlbumActionButton",
            "description": "Кнопка-действие для перехода по ссылке."
          },
          "cover": {
            "$ref": "#/components/schemas/Cover",
            "description": "Обложка альбома."
          },
          "derivedColors": {
            "$ref": "#/components/schemas/CoverDerivedColors",
            "description": "Производные цвета обложки альбома."
          },
          "metaTagId": {
            "type": "string",
            "description": "Идентификатор метатега альбома."
          },
          "childContent": {
            "type": "boolean",
            "description": "Является ли альбом детским контентом."
          }
        }
      },
      "AlbumActionButton": {
        "type": "object",
        "description": "Класс, представляющий кнопку-действие альбома.",
        "properties": {
          "text": {
            "type": "string",
            "description": "Текст кнопки."
          },
          "url": {
            "type": "string",
            "description": "URL-ссылка."
          },
          "color": {
            "type": "string",
            "description": "HEX-цвет кнопки."
          }
        }
      },
      "AlbumEvent": {
        "type": "object",
        "description": "Класс, представляющий альбом в событии фида.",
        "properties": {
          "album": {
            "$ref": "#/components/schemas/Album",
            "description": "Альбом."
          },
          "tracks": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/Track"
            },
            "description": "Треки."
          }
        },
        "required": [
          "album",
          "tracks"
        ]
      },
      "AlbumSimilarEntities": {
        "type": "object",
        "description": "Класс, представляющий похожие сущности для альбома.",
        "properties": {
          "items": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/SimilarEntityItem"
            },
            "description": "Список похожих сущностей."
          }
        }
      },
      "AlbumTrailer": {
        "type": "object",
        "description": "Класс, представляющий трейлер альбома.",
        "properties": {
          "album": {
            "$ref": "#/components/schemas/Album",
            "description": "Альбом."
          },
          "artists": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/Artist"
            },
            "description": "Список артистов."
          },
          "trailer": {
            "$ref": "#/components/schemas/TrailerInfo",
            "description": "Информация о трейлере."
          }
        }
      },
      "Alert": {
        "type": "object",
        "description": "Класс, представляющий блок с предупреждением.",
        "properties": {
          "alertId": {
            "type": "string",
            "description": "Уникальный идентификатор."
          },
          "text": {
            "type": "string",
            "description": "Текст предупреждения."
          },
          "bgColor": {
            "type": "string",
            "description": "Цвет заднего фона."
          },
          "textColor": {
            "type": "string",
            "description": "Цвет текста."
          },
          "alertType": {
            "type": "string",
            "description": "Тип предупреждения."
          },
          "button": {
            "$ref": "#/components/schemas/AlertButton",
            "description": "Кнопка с ссылкой."
          },
          "closeButton": {
            "type": "boolean",
            "description": "Наличие кнопки \"Закрыть\"."
          }
        },
        "required": [
          "alertId",
          "text",
          "bgColor",
          "textColor",
          "alertType",
          "button",
          "closeButton"
        ]
      },
      "AlertButton": {
        "type": "object",
        "description": "Класс, представляющий кнопку в предупреждении.",
        "properties": {
          "text": {
            "type": "string",
            "description": "Текст кнопки."
          },
          "bgColor": {
            "type": "string",
            "description": "Цвет заднего фона."
          },
          "textColor": {
            "type": "string",
            "description": "Цвет текста."
          },
          "uri": {
            "type": "string",
            "description": "Ссылка куда ведёт кнопка."
          }
        },
        "required": [
          "text",
          "bgColor",
          "textColor",
          "uri"
        ]
      },
      "Artist": {
        "type": "object",
        "description": "Класс, представляющий исполнителя.",
        "properties": {
          "id": {
            "type": "integer",
            "description": "Уникальный идентификатор."
          },
          "error": {
            "type": "string",
            "description": "Сообщение об ошибке с объяснением почему не вернуло исполнителя."
          },
          "reason": {
            "type": "string",
            "description": "Причина отсутствия исполнителя (сообщение об ошибке)."
          },
          "name": {
            "type": "string",
            "description": "Название."
          },
          "cover": {
            "$ref": "#/components/schemas/Cover",
            "description": "Обложка."
          },
          "various": {
            "type": "boolean",
            "description": "TODO."
          },
          "composer": {
            "type": "boolean",
            "description": "TODO."
          },
          "genres": {
            "type": "array",
            "items": {
              "type": "string"
            },
            "description": "Жанры."
          },
          "ogImage": {
            "type": "string",
            "description": "Ссылка на изображение для Open Graph."
          },
          "opImage": {
            "type": "string",
            "description": "Ссылка на изображение обложки. Используется когда не указано поле cover."
          },
          "noPicturesFromSearch": {},
          "counts": {
            "$ref": "#/components/schemas/Counts",
            "description": "Счётчики."
          },
          "available": {
            "type": "boolean",
            "description": "Доступен ли для прослушивания."
          },
          "ratings": {
            "$ref": "#/components/schemas/Ratings",
            "description": "Рейтинги."
          },
          "links": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/Link"
            },
            "description": "Ссылки на ресурсы исполнителя."
          },
          "ticketsAvailable": {
            "type": "boolean",
            "description": "Имеются ли в продаже билеты на концерт."
          },
          "likesCount": {
            "type": "integer",
            "description": "Количество лайков."
          },
          "popularTracks": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/Track"
            },
            "description": "Популярные треки."
          },
          "regions": {
            "type": "array",
            "items": {
              "type": "string"
            },
            "description": "Регион TODO."
          },
          "decomposed": {
            "type": "array",
            "items": {
              "anyOf": [
                {
                  "type": "string"
                },
                {
                  "$ref": "#/components/schemas/Artist"
                }
              ]
            },
            "description": "Декомпозиция всех исполнителей. Лист, где чередуется разделитель и артист. Фиты и прочее."
          },
          "fullNames": {},
          "handMadeDescription": {
            "type": "string",
            "description": "Описание от Яндекс TODO."
          },
          "description": {
            "$ref": "#/components/schemas/Description",
            "description": "Описание."
          },
          "countries": {
            "type": "array",
            "items": {
              "type": "string"
            },
            "description": "Страны."
          },
          "enWikipediaLink": {
            "type": "string",
            "description": "Адрес страницы на wikipedia.org."
          },
          "dbAliases": {
            "type": "array",
            "items": {
              "type": "string"
            },
            "description": "Другие названия. Как правило названия на разных языках."
          },
          "aliases": {},
          "initDate": {
            "type": "string",
            "description": "Дата начала в формате YYYY-MM-DD или YYYY."
          },
          "endDate": {
            "type": "string",
            "description": "Дата окончания в формате YYYY-MM-DD или YYYY."
          },
          "yaMoneyId": {
            "type": "string",
            "description": "Номер кошеляка Яндекс.Деньги TODO."
          },
          "disclaimers": {
            "type": "array",
            "items": {
              "type": "string"
            },
            "description": "Дисклеймеры, например [\"foreignAgent\"]."
          },
          "contentRestrictions": {
            "$ref": "#/components/schemas/ContentRestrictions",
            "description": "Ограничения контента."
          },
          "cutoutCover": {
            "$ref": "#/components/schemas/Cover",
            "description": "Вырезанная обложка артиста."
          }
        }
      },
      "ArtistAbout": {
        "type": "object",
        "description": "Класс, представляющий информацию «Об артисте».",
        "properties": {
          "artist": {
            "$ref": "#/components/schemas/Artist",
            "description": "Артист."
          },
          "stats": {
            "$ref": "#/components/schemas/Stats",
            "description": "Статистика прослушиваний."
          },
          "description": {
            "type": "string",
            "description": "Текстовое описание артиста."
          },
          "links": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/ArtistLink"
            },
            "description": "Ссылки на внешние ресурсы."
          },
          "covers": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/Cover"
            },
            "description": "Список обложек артиста."
          },
          "artistType": {
            "type": "string",
            "description": "Тип артиста."
          }
        }
      },
      "ArtistAlbums": {
        "type": "object",
        "description": "Класс, представляющий страницу списка альбомов артиста.",
        "properties": {
          "albums": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/Album"
            },
            "description": "Список альбомов артиста."
          },
          "pager": {
            "$ref": "#/components/schemas/Pager",
            "description": "Пагинатор."
          }
        },
        "required": [
          "albums",
          "pager"
        ]
      },
      "ArtistClipData": {
        "type": "object",
        "description": "Класс, представляющий данные клипа артиста.",
        "properties": {
          "clip": {
            "$ref": "#/components/schemas/Clip",
            "description": "Клип."
          },
          "artists": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/Artist"
            },
            "description": "Список артистов клипа."
          }
        }
      },
      "ArtistClipItem": {
        "type": "object",
        "description": "Класс, представляющий элемент блока клипов артиста.",
        "properties": {
          "type": {
            "type": "string",
            "description": "Тип элемента."
          },
          "data": {
            "$ref": "#/components/schemas/ArtistClipData",
            "description": "Данные клипа."
          }
        }
      },
      "ArtistClips": {
        "type": "object",
        "description": "Класс, представляющий блок клипов артиста.",
        "properties": {
          "items": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/ArtistClipItem"
            },
            "description": "Список элементов клипов."
          },
          "pager": {
            "$ref": "#/components/schemas/Pager",
            "description": "Пагинация."
          }
        }
      },
      "ArtistConcerts": {
        "type": "object",
        "description": "Класс, представляющий список концертов артиста.",
        "properties": {
          "artistTitle": {
            "type": "string",
            "description": "Название артиста."
          },
          "concerts": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/Concert"
            },
            "description": "Список концертов."
          }
        }
      },
      "ArtistDonationData": {
        "type": "object",
        "description": "Класс, представляющий данные доната артисту.",
        "properties": {
          "tipUrl": {
            "type": "string",
            "description": "Ссылка на страницу доната."
          },
          "artist": {
            "$ref": "#/components/schemas/Artist",
            "description": "Артист."
          },
          "goal": {
            "$ref": "#/components/schemas/ArtistDonationGoal",
            "description": "Цель доната."
          }
        }
      },
      "ArtistDonationGoal": {
        "type": "object",
        "description": "Класс, представляющий цель доната артисту.",
        "properties": {
          "title": {
            "type": "string",
            "description": "Описание цели доната."
          }
        }
      },
      "ArtistDonationItem": {
        "type": "object",
        "description": "Класс, представляющий элемент блока донатов артиста.",
        "properties": {
          "type": {
            "type": "string",
            "description": "Тип элемента."
          },
          "data": {
            "$ref": "#/components/schemas/ArtistDonationData",
            "description": "Данные доната."
          }
        }
      },
      "ArtistDonations": {
        "type": "object",
        "description": "Класс, представляющий блок донатов артиста.",
        "properties": {
          "donations": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/ArtistDonationItem"
            },
            "description": "Список донатов."
          }
        }
      },
      "ArtistEvent": {
        "type": "object",
        "description": "Класс, представляющий артиста в событии фида.",
        "properties": {
          "artist": {
            "$ref": "#/components/schemas/Artist",
            "description": "Артист."
          },
          "tracks": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/Track"
            },
            "description": "Треки."
          },
          "similarToArtistsFromHistory": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/Artist"
            },
            "description": "Похожие артисты из истории."
          },
          "subscribed": {
            "type": "boolean",
            "description": "Подписан ли на событие."
          }
        },
        "required": [
          "artist",
          "tracks",
          "similarToArtistsFromHistory"
        ]
      },
      "ArtistInfo": {
        "type": "object",
        "description": "Класс, представляющий подробную информацию об артисте.",
        "properties": {
          "artist": {
            "$ref": "#/components/schemas/Artist",
            "description": "Артист."
          },
          "likesCount": {
            "type": "integer",
            "description": "Количество лайков."
          },
          "stats": {
            "$ref": "#/components/schemas/Stats",
            "description": "Статистика прослушиваний."
          },
          "trailer": {
            "$ref": "#/components/schemas/ArtistTrailerStatus",
            "description": "Статус доступности трейлера."
          },
          "covers": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/Cover"
            },
            "description": "Список обложек артиста."
          },
          "description": {
            "type": "string",
            "description": "Текстовое описание артиста."
          },
          "artistType": {
            "type": "string",
            "description": "Тип артиста."
          }
        }
      },
      "ArtistLink": {
        "type": "object",
        "description": "Класс, представляющий ссылку на страницу артиста.",
        "properties": {
          "title": {
            "type": "string",
            "description": "Название ссылки."
          },
          "subtitle": {
            "type": "string",
            "description": "Подзаголовок ссылки."
          },
          "url": {
            "type": "string",
            "description": "URL ссылки."
          },
          "imgUrl": {
            "type": "string",
            "description": "URL изображения."
          }
        },
        "required": [
          "title"
        ]
      },
      "ArtistLinks": {
        "type": "object",
        "description": "Класс, представляющий ссылки на страницы артиста.",
        "properties": {
          "links": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/ArtistLink"
            },
            "description": "Список ссылок."
          }
        }
      },
      "ArtistSimilar": {
        "type": "object",
        "description": "Класс, представляющий похожих артистов.",
        "properties": {
          "artist": {
            "$ref": "#/components/schemas/Artist",
            "description": "Артист, для которого найдены похожие."
          },
          "similarArtists": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/Artist"
            },
            "description": "Список похожих артистов."
          }
        }
      },
      "ArtistSkeleton": {
        "type": "object",
        "description": "Класс, представляющий скелетон страницы артиста.",
        "properties": {
          "id": {
            "type": "string",
            "description": "Идентификатор скелетона."
          },
          "title": {
            "type": "string",
            "description": "Заголовок скелетона."
          },
          "blocks": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/SkeletonBlock"
            },
            "description": "Блоки скелетона."
          }
        }
      },
      "ArtistTracks": {
        "type": "object",
        "description": "Класс, представляющий страницу списка треков артиста.",
        "properties": {
          "tracks": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/Track"
            },
            "description": "Список треков артиста."
          },
          "pager": {
            "$ref": "#/components/schemas/Pager",
            "description": "Пагинатор."
          }
        },
        "required": [
          "tracks",
          "pager"
        ]
      },
      "ArtistTrailer": {
        "type": "object",
        "description": "Класс, представляющий трейлер артиста.",
        "properties": {
          "artist": {
            "$ref": "#/components/schemas/Artist",
            "description": "Артист."
          },
          "trailer": {
            "$ref": "#/components/schemas/TrailerInfo",
            "description": "Информация о трейлере."
          }
        }
      },
      "ArtistTrailerStatus": {
        "type": "object",
        "description": "Класс, представляющий статус доступности трейлера артиста.",
        "properties": {
          "available": {
            "type": "boolean",
            "description": "Доступен ли трейлер."
          }
        }
      },
      "AutoRenewable": {
        "type": "object",
        "description": "Класс, представляющий информацию об автопродлении подписки.",
        "properties": {
          "expires": {
            "type": "string",
            "description": "Дата истечения подписки."
          },
          "vendor": {
            "type": "string",
            "description": "Продавец."
          },
          "vendorHelpUrl": {
            "type": "string",
            "description": "Ссылка на страницу помощи продавца."
          },
          "product": {
            "$ref": "#/components/schemas/Product",
            "description": "Продукт."
          },
          "finished": {
            "type": "boolean",
            "description": "Завершенность автопродления."
          },
          "masterInfo": {
            "$ref": "#/components/schemas/User",
            "description": "Главный в семейной подписке."
          },
          "productId": {
            "type": "string",
            "description": "Уникальный идентификатор продукта."
          },
          "orderId": {
            "type": "integer",
            "description": "Уникальный идентификатор заказа."
          }
        },
        "required": [
          "expires",
          "vendor",
          "vendorHelpUrl",
          "product",
          "finished"
        ]
      },
      "Best": {
        "type": "object",
        "description": "Класс, представляющий лучший результат поиска.",
        "properties": {
          "type": {
            "type": "string",
            "description": "Тип лучшего результата."
          },
          "result": {
            "anyOf": [
              {
                "$ref": "#/components/schemas/Track"
              },
              {
                "$ref": "#/components/schemas/Artist"
              },
              {
                "$ref": "#/components/schemas/Album"
              },
              {
                "$ref": "#/components/schemas/Playlist"
              },
              {
                "$ref": "#/components/schemas/Video"
              },
              {
                "$ref": "#/components/schemas/User"
              }
            ],
            "description": "Лучший результат."
          },
          "text": {
            "type": "string",
            "description": "TODO."
          }
        },
        "required": [
          "type",
          "result"
        ]
      },
      "Block": {
        "type": "object",
        "description": "Класс, представляющий блок лендинга.",
        "properties": {
          "id": {
            "type": "string",
            "description": "Уникальный идентификатор блока."
          },
          "type": {
            "type": "string",
            "description": "Тип блока."
          },
          "typeForFrom": {
            "type": "string",
            "description": "Откуда получен блок (как к нему пришли)."
          },
          "title": {
            "type": "string",
            "description": "Заголовок."
          },
          "entities": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/BlockEntity"
            },
            "description": "Содержимое блока (сущности, объекты)."
          },
          "description": {
            "type": "string",
            "description": "Описание."
          },
          "data": {
            "anyOf": [
              {
                "$ref": "#/components/schemas/PersonalPlaylistsData"
              },
              {
                "$ref": "#/components/schemas/PlayContextsData"
              }
            ],
            "description": " Дополнительные данные."
          }
        },
        "required": [
          "id",
          "type",
          "typeForFrom",
          "title",
          "entities"
        ]
      },
      "BlockEntity": {
        "type": "object",
        "description": "Класс, представляющий содержимое блока.",
        "properties": {
          "id": {
            "type": "string",
            "description": "Уникальный идентификатор содержимого."
          },
          "type": {
            "type": "string",
            "description": "Тип содержимого. `yandex_music.Playlist` | `yandex_music.ChartItem` | `yandex_music.PlayContext`  | `yandex_music.MixLink`): Содержимое."
          },
          "data": {
            "anyOf": [
              {
                "$ref": "#/components/schemas/GeneratedPlaylist"
              },
              {
                "$ref": "#/components/schemas/Promotion"
              },
              {
                "$ref": "#/components/schemas/Album"
              },
              {
                "$ref": "#/components/schemas/Playlist"
              },
              {
                "$ref": "#/components/schemas/ChartItem"
              },
              {
                "$ref": "#/components/schemas/PlayContext"
              },
              {
                "$ref": "#/components/schemas/MixLink"
              }
            ]
          }
        },
        "required": [
          "id",
          "type",
          "data"
        ]
      },
      "Brand": {
        "type": "object",
        "description": "Класс, представляющий бренд плейлиста.",
        "properties": {
          "image": {
            "type": "string",
            "description": "Ссылка на изображение."
          },
          "background": {
            "type": "string",
            "description": "Цвет заднего фона."
          },
          "reference": {
            "type": "string",
            "description": "URI ссылка на содержимое."
          },
          "pixels": {
            "type": "array",
            "items": {
              "type": "string"
            },
            "description": "Ссылки на gif изображения для отслеживания просмотров (web beacon)."
          },
          "theme": {
            "type": "string",
            "description": "Тема оформления."
          },
          "playlistTheme": {
            "type": "string",
            "description": "Тема плейлиста TODO."
          },
          "button": {
            "type": "string",
            "description": "Текст кнопки."
          }
        },
        "required": [
          "image",
          "background",
          "reference",
          "pixels",
          "theme",
          "playlistTheme",
          "button"
        ]
      },
      "BriefInfo": {
        "type": "object",
        "description": "Класс, представляющий информацию об артисте.",
        "properties": {
          "artist": {
            "$ref": "#/components/schemas/Artist",
            "description": "Артист."
          },
          "albums": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/Album"
            },
            "description": "Альбомы."
          },
          "playlists": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/Playlist"
            },
            "description": "Плейлисты."
          },
          "alsoAlbums": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/Album"
            },
            "description": "Сборники."
          },
          "lastReleaseIds": {
            "type": "array",
            "items": {
              "type": "integer"
            },
            "description": "Уникальные идентификаторы последних выпущенных альбомов."
          },
          "lastReleases": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/Album"
            },
            "description": "Последние выпущенные альбомы."
          },
          "popularTracks": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/Track"
            },
            "description": "Популярные треки."
          },
          "similarArtists": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/Artist"
            },
            "description": "Похожие артисты."
          },
          "allCovers": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/Cover"
            },
            "description": "Все обложки."
          },
          "concerts": {
            "anyOf": [
              {
                "type": "object",
                "additionalProperties": {}
              },
              {
                "type": "array",
                "items": {}
              },
              {
                "type": "string"
              },
              {
                "type": "integer"
              },
              {
                "type": "number"
              },
              {
                "type": "boolean"
              }
            ],
            "description": "Концерты (тест-кейс с ними потерялся, мало у кого есть)."
          },
          "videos": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/Video"
            },
            "description": "Видео."
          },
          "vinyls": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/Vinyl"
            },
            "description": "Пластинки."
          },
          "hasPromotions": {
            "type": "boolean",
            "description": "Рекламируется ли TODO."
          },
          "playlistIds": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/PlaylistId"
            },
            "description": "Уникальные идентификаторы плейлистов."
          },
          "stats": {
            "$ref": "#/components/schemas/Stats",
            "description": "Статистика прослушиваний за месяц."
          },
          "tracksInChart": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/Chart"
            },
            "description": "Треки в чарте."
          }
        },
        "required": [
          "artist",
          "albums",
          "playlists",
          "alsoAlbums",
          "lastReleaseIds",
          "lastReleases",
          "popularTracks",
          "similarArtists",
          "allCovers",
          "concerts",
          "videos",
          "vinyls",
          "hasPromotions",
          "playlistIds"
        ]
      },
      "CaseForms": {
        "type": "object",
        "description": "Класс, представляющий склонение имени.",
        "properties": {
          "nominative": {
            "type": "string",
            "description": "Именительный."
          },
          "genitive": {
            "type": "string",
            "description": "Родительный."
          },
          "dative": {
            "type": "string",
            "description": "Дательный."
          },
          "accusative": {
            "type": "string",
            "description": "Винительный."
          },
          "instrumental": {
            "type": "string",
            "description": "Творительный."
          },
          "prepositional": {
            "type": "string",
            "description": "Предложный."
          }
        },
        "required": [
          "nominative",
          "genitive",
          "dative",
          "accusative",
          "instrumental",
          "prepositional"
        ]
      },
      "Chart": {
        "type": "object",
        "description": "Класс, представляющий элемент чарта.",
        "properties": {
          "position": {
            "type": "integer",
            "description": "Позиция."
          },
          "progress": {
            "type": "string",
            "description": "TODO."
          },
          "listeners": {
            "type": "integer",
            "description": "Количество слушателей."
          },
          "shift": {
            "type": "integer",
            "description": "Смещение."
          },
          "bgColor": {
            "type": "string",
            "description": "Цвет заднего фона."
          },
          "trackId": {
            "$ref": "#/components/schemas/TrackId",
            "description": "Уникальный идентификатор трека."
          }
        },
        "required": [
          "position",
          "progress",
          "listeners",
          "shift"
        ]
      },
      "ChartInfo": {
        "type": "object",
        "description": "Класс, представляющий чарт.",
        "properties": {
          "id": {
            "type": "string",
            "description": "Уникальный идентификатор блока."
          },
          "type": {
            "type": "string",
            "description": "Тип блока."
          },
          "typeForFrom": {
            "type": "string",
            "description": "Откуда получен блок (как к нему пришли)."
          },
          "title": {
            "type": "string",
            "description": "Заголовок."
          },
          "menu": {
            "$ref": "#/components/schemas/ChartInfoMenu",
            "description": "Меню TODO."
          },
          "chart": {
            "$ref": "#/components/schemas/Playlist",
            "description": "Плейлист."
          },
          "chartDescription": {
            "type": "string",
            "description": "Описание."
          }
        },
        "required": [
          "id",
          "type",
          "typeForFrom",
          "title",
          "menu",
          "chart"
        ]
      },
      "ChartInfoMenu": {
        "type": "object",
        "description": "Класс, представляющий меню чарта.",
        "properties": {
          "items": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/ChartInfoMenuItem"
            },
            "description": "Список элементов меню."
          }
        },
        "required": [
          "items"
        ]
      },
      "ChartInfoMenuItem": {
        "type": "object",
        "description": "Класс, представляющий элемент меню чарта.",
        "properties": {
          "title": {
            "type": "string",
            "description": "Заголовок."
          },
          "url": {
            "type": "string",
            "description": "Постфикс для запроса чарта."
          },
          "selected": {
            "type": "boolean",
            "description": "Текущий ли элемент."
          }
        },
        "required": [
          "title",
          "url"
        ]
      },
      "ChartItem": {
        "type": "object",
        "description": "Класс, представляющий трек в чарте.",
        "properties": {
          "track": {
            "$ref": "#/components/schemas/Track",
            "description": "Трек."
          },
          "chart": {
            "$ref": "#/components/schemas/Chart",
            "description": "Элемент чарт."
          }
        },
        "required": [
          "track",
          "chart"
        ]
      },
      "Clip": {
        "type": "object",
        "description": "Класс, представляющий видеоклип.",
        "properties": {
          "clipId": {
            "type": "integer",
            "description": "Уникальный идентификатор клипа."
          },
          "title": {
            "type": "string",
            "description": "Название клипа."
          },
          "version": {
            "type": "string",
            "description": "Версия клипа."
          },
          "playerId": {
            "type": "string",
            "description": "Идентификатор видеоплеера."
          },
          "uuid": {
            "type": "string",
            "description": "UUID клипа."
          },
          "thumbnail": {
            "type": "string",
            "description": "URL обложки клипа."
          },
          "previewUrl": {
            "type": "string",
            "description": "URL превью видео."
          },
          "duration": {
            "type": "integer",
            "description": "Длительность клипа в секундах."
          },
          "trackIds": {
            "type": "array",
            "items": {
              "type": "integer"
            },
            "description": "Список идентификаторов связанных треков."
          },
          "artists": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/Artist"
            },
            "description": "Список артистов клипа."
          },
          "disclaimers": {
            "type": "array",
            "items": {
              "type": "string"
            },
            "description": "Список дисклеймеров."
          },
          "explicit": {
            "type": "boolean",
            "description": "Содержит ли клип ненормативный контент."
          },
          "cover": {
            "$ref": "#/components/schemas/Cover",
            "description": "Обложка клипа."
          },
          "contentRestrictions": {
            "$ref": "#/components/schemas/ContentRestrictions",
            "description": "Ограничения контента."
          }
        }
      },
      "ClipsWillLike": {
        "type": "object",
        "description": "Класс, представляющий подборку рекомендуемых клипов.",
        "properties": {
          "clips": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/Clip"
            },
            "description": "Список клипов."
          },
          "pager": {
            "$ref": "#/components/schemas/Pager",
            "description": "Пагинация."
          }
        }
      },
      "CombinedSession": {
        "type": "object",
        "description": "Класс, представляющий комбинированную сессию радио (треки и клипы).",
        "properties": {
          "sessionId": {
            "type": "string",
            "description": "Уникальный идентификатор сессии."
          },
          "batchId": {
            "type": "string",
            "description": "Уникальный идентификатор партии элементов."
          },
          "pumpkin": {
            "type": "boolean",
            "description": "TODO."
          },
          "list": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/CombinedSessionItem"
            },
            "description": "Элементы сессии."
          }
        }
      },
      "CombinedSessionItem": {
        "type": "object",
        "description": "Класс, представляющий элемент комбинированной сессии радио.",
        "properties": {
          "type": {
            "type": "string",
            "description": "Тип элемента."
          },
          "data": {
            "anyOf": [
              {
                "$ref": "#/components/schemas/Clip"
              },
              {
                "$ref": "#/components/schemas/Track"
              }
            ],
            "description": "Содержимое элемента."
          }
        }
      },
      "CombinedSessionLanding": {
        "type": "object",
        "description": "Класс, представляющий витрину комбинированной сессии радио (например, «Время клипов»).",
        "properties": {
          "title": {
            "type": "string",
            "description": "Заголовок."
          },
          "description": {
            "type": "string",
            "description": "Описание."
          },
          "button": {
            "type": "string",
            "description": "Текст кнопки."
          },
          "list": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/CombinedSessionItem"
            },
            "description": "Элементы витрины."
          }
        }
      },
      "Concert": {
        "type": "object",
        "description": "Класс, представляющий концерт.",
        "properties": {
          "id": {
            "type": "string",
            "description": "UUID концерта."
          },
          "images": {
            "type": "array",
            "items": {
              "type": "string"
            },
            "description": "Список URL изображений."
          },
          "imageUrl": {
            "type": "string",
            "description": "URL основного изображения."
          },
          "concertTitle": {
            "type": "string",
            "description": "Название концерта/фестиваля."
          },
          "afishaUrl": {
            "type": "string",
            "description": "Ссылка на страницу Афиши."
          },
          "city": {
            "type": "string",
            "description": "Город."
          },
          "place": {
            "type": "string",
            "description": "Площадка."
          },
          "address": {
            "type": "string",
            "description": "Адрес."
          },
          "datetime": {
            "type": "string",
            "description": "Дата и время (ISO 8601)."
          },
          "contentRating": {
            "type": "string",
            "description": "Возрастной рейтинг, например \"16+\"."
          },
          "minPrice": {
            "$ref": "#/components/schemas/ConcertMinPrice",
            "description": "Минимальная цена билета."
          },
          "cashback": {
            "$ref": "#/components/schemas/ConcertCashback",
            "description": "Информация о кешбэке."
          },
          "eventInfo": {
            "$ref": "#/components/schemas/ConcertEventInfo",
            "description": "Информация о типе события."
          },
          "cover": {
            "$ref": "#/components/schemas/Cover",
            "description": "Обложка концерта."
          },
          "dataSessionId": {
            "type": "string",
            "description": "Идентификатор сессии данных, используется Афишей."
          }
        }
      },
      "ConcertCashback": {
        "type": "object",
        "description": "Класс, представляющий информацию о кешбэке за покупку билета.",
        "properties": {
          "title": {
            "type": "string",
            "description": "Текст кешбэка, например \"Кешбэк до 20%\"."
          },
          "valuePercent": {
            "type": "integer",
            "description": "Процент кешбэка."
          }
        }
      },
      "ConcertDescription": {
        "type": "object",
        "description": "Класс, представляющий описание концерта.",
        "properties": {
          "text": {
            "type": "string",
            "description": "Текст описания."
          },
          "source": {
            "type": "string",
            "description": "Источник описания (например, доменное имя)."
          }
        }
      },
      "ConcertEventInfo": {
        "type": "object",
        "description": "Класс, представляющий информацию о типе события.",
        "properties": {
          "type": {
            "type": "string",
            "description": "Тип события."
          }
        }
      },
      "ConcertFeed": {
        "type": "object",
        "description": "Класс, представляющий ленту концертов.",
        "properties": {
          "items": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/ConcertFeedItem"
            },
            "description": "Элементы ленты."
          }
        }
      },
      "ConcertFeedItem": {
        "type": "object",
        "description": "Класс, представляющий элемент ленты концертов.",
        "properties": {
          "type": {
            "type": "string",
            "description": "Тип элемента ленты."
          },
          "data": {
            "$ref": "#/components/schemas/ConcertFeedItemData",
            "description": "Данные элемента ленты."
          }
        }
      },
      "ConcertFeedItemData": {
        "type": "object",
        "description": "Класс, представляющий данные элемента ленты концертов.",
        "properties": {
          "concert": {
            "$ref": "#/components/schemas/Concert",
            "description": "Концерт."
          },
          "minPrice": {
            "$ref": "#/components/schemas/ConcertMinPrice",
            "description": "Минимальная цена билета."
          }
        }
      },
      "ConcertInfo": {
        "type": "object",
        "description": "Класс, представляющий информацию о концерте.",
        "properties": {
          "concert": {
            "$ref": "#/components/schemas/Concert",
            "description": "Концерт."
          },
          "minPrice": {
            "$ref": "#/components/schemas/ConcertMinPrice",
            "description": "Минимальная цена билета."
          },
          "covers": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/Cover"
            },
            "description": "Дополнительные обложки концерта."
          },
          "description": {
            "$ref": "#/components/schemas/ConcertDescription",
            "description": "Описание концерта."
          },
          "leadArtistId": {
            "type": "integer",
            "description": "Уникальный идентификатор ведущего артиста."
          }
        }
      },
      "ConcertLocation": {
        "type": "object",
        "description": "Класс, представляющий местоположение (город), доступное для фильтрации концертов.",
        "properties": {
          "id": {
            "type": "integer",
            "description": "Уникальный идентификатор местоположения (geoId)."
          },
          "name": {
            "type": "string",
            "description": "Название местоположения."
          }
        }
      },
      "ConcertLocations": {
        "type": "object",
        "description": "Класс, представляющий список местоположений для фильтрации концертов.",
        "properties": {
          "locations": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/ConcertLocation"
            },
            "description": "Список местоположений."
          }
        }
      },
      "ConcertMinPrice": {
        "type": "object",
        "description": "Класс, представляющий минимальную цену билета на концерт.",
        "properties": {
          "value": {
            "type": "integer",
            "description": "Значение цены."
          },
          "currency": {
            "type": "string",
            "description": "Код валюты, например \"RUB\"."
          },
          "currencySymbol": {
            "type": "string",
            "description": "Символ валюты, например \"₽\"."
          }
        }
      },
      "ConcertSkeleton": {
        "type": "object",
        "description": "Класс, представляющий скелетон страницы концерта.",
        "properties": {
          "id": {
            "type": "string",
            "description": "Идентификатор скелетона."
          },
          "title": {
            "type": "string",
            "description": "Заголовок скелетона."
          },
          "blocks": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/SkeletonBlock"
            },
            "description": "Блоки скелетона."
          }
        }
      },
      "ConcertTabConfig": {
        "type": "object",
        "description": "Класс, представляющий конфигурацию вкладок ленты концертов.",
        "properties": {
          "config": {
            "$ref": "#/components/schemas/ConcertTabConfigData",
            "description": "Конфигурация вкладок концертов."
          }
        }
      },
      "ConcertTabConfigData": {
        "type": "object",
        "description": "Класс, представляющий конфигурацию вкладок концертов.",
        "properties": {
          "top": {
            "$ref": "#/components/schemas/ConcertTabRange",
            "description": "Диапазон для блока «Топ»."
          },
          "feed": {
            "$ref": "#/components/schemas/ConcertTabRange",
            "description": "Диапазон для ленты концертов."
          }
        }
      },
      "ConcertTabRange": {
        "type": "object",
        "description": "Класс, представляющий диапазон пагинации вкладки концертов.",
        "properties": {
          "offset": {
            "type": "integer",
            "description": "Смещение от начала выборки."
          },
          "limit": {
            "type": "integer",
            "description": "Количество элементов, ``-1`` означает «до конца»."
          }
        }
      },
      "ContentRestrictions": {
        "type": "object",
        "description": "Класс, представляющий ограничения контента.",
        "properties": {
          "available": {
            "type": "boolean",
            "description": "Доступен ли контент."
          },
          "disclaimers": {
            "type": "array",
            "items": {
              "type": "string"
            },
            "description": "Список дисклеймеров."
          }
        }
      },
      "Contest": {
        "type": "object",
        "description": "Класс, представляющий контест TODO.",
        "properties": {
          "contestId": {
            "type": "string",
            "description": "Уникальный идентификатор."
          },
          "status": {
            "type": "string",
            "description": "Статус."
          },
          "canEdit": {
            "type": "boolean",
            "description": "Разрешено ли редактирование."
          },
          "sent": {
            "type": "string",
            "description": "Дата отправки."
          },
          "withdrawn": {
            "type": "string",
            "description": "Дата вывода (окончания)."
          }
        },
        "required": [
          "contestId",
          "status",
          "canEdit"
        ]
      },
      "Context": {
        "type": "object",
        "description": "Класс, представляющий содержимое очереди.",
        "properties": {
          "type": {
            "type": "string",
            "description": "Тип содержимого (по чём построена очередь)."
          },
          "id": {
            "type": "string",
            "description": "Уникальный идентификатор типа содержимого (плейлиста, альбома и т.д.)."
          },
          "description": {
            "type": "string",
            "description": "Описание содержимого (например, название плейлиста, радиостанции)."
          }
        },
        "required": [
          "type"
        ]
      },
      "Counts": {
        "type": "object",
        "description": "Класс, представляющий счётчик некоторых значений исполнителя.",
        "properties": {
          "tracks": {
            "type": "integer",
            "description": "Количество треков."
          },
          "directAlbums": {
            "type": "integer",
            "description": "Количество альбомов."
          },
          "alsoAlbums": {
            "type": "integer",
            "description": "Количество дополнительных треков."
          },
          "alsoTracks": {
            "type": "integer",
            "description": "Количество дополнительных альбомов."
          }
        },
        "required": [
          "tracks",
          "directAlbums",
          "alsoAlbums",
          "alsoTracks"
        ]
      },
      "Cover": {
        "type": "object",
        "description": "Класс, представляющий обложку.",
        "properties": {
          "type": {
            "type": "string",
            "description": "Тип обложки."
          },
          "uri": {
            "type": "string",
            "description": "Ссылка на изображение."
          },
          "itemsUri": {
            "type": "array",
            "items": {
              "type": "string"
            },
            "description": "Список ссылок на изображения."
          },
          "dir": {
            "type": "string",
            "description": "Директория хранения изображения на сервере."
          },
          "version": {
            "type": "string",
            "description": "Версия."
          },
          "custom": {
            "type": "boolean",
            "description": "Является ли обложка пользовательской."
          },
          "isCustom": {
            "type": "boolean",
            "description": "Является ли обложка пользовательской."
          },
          "copyrightName": {
            "type": "string",
            "description": "Название владельца авторским правом."
          },
          "copyrightCline": {
            "type": "string",
            "description": "Владелец прав на музыку (автор текста и т.д.), а не её записи."
          },
          "prefix": {
            "type": "string",
            "description": "Уникальный идентификатор."
          },
          "error": {
            "type": "string",
            "description": "Сообщение об ошибке."
          },
          "color": {
            "type": "string",
            "description": "Основной цвет обложки, например \"#6d6e72\"."
          },
          "derivedColors": {
            "$ref": "#/components/schemas/CoverDerivedColors",
            "description": "Производные цвета обложки."
          },
          "videoUrl": {
            "type": "string",
            "description": "URL видео обложки."
          }
        }
      },
      "CoverDerivedColors": {
        "type": "object",
        "description": "Класс, представляющий производные цвета обложки.",
        "properties": {
          "average": {
            "type": "string",
            "description": "Средний цвет."
          },
          "waveText": {
            "type": "string",
            "description": "Цвет текста волны."
          },
          "miniPlayer": {
            "type": "string",
            "description": "Цвет мини-плеера."
          },
          "accent": {
            "type": "string",
            "description": "Акцентный цвет."
          }
        }
      },
      "Credit": {
        "type": "object",
        "description": "Класс, представляющий информацию об участнике создания контента (трека, клипа и т.д.).",
        "properties": {
          "title": {
            "type": "string",
            "description": "Роль участника (например, «Автор музыки», «Лейбл»)."
          },
          "value": {
            "type": "string",
            "description": "Имя или название участника."
          }
        }
      },
      "Credits": {
        "type": "object",
        "description": "Класс, представляющий список участников создания контента (трека, клипа и т.д.).",
        "properties": {
          "credits": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/Credit"
            },
            "description": "Список участников."
          }
        }
      },
      "CustomWave": {
        "type": "object",
        "description": "Класс, представляющий дополнительное описание плейлиста.",
        "properties": {
          "title": {
            "type": "string",
            "description": "Название плейлиста."
          },
          "animationUrl": {
            "type": "string",
            "description": "JSON анимация Lottie."
          },
          "position": {
            "type": "string",
            "description": "Позиция TODO."
          },
          "header": {
            "type": "string",
            "description": "Заголовок волны."
          },
          "backgroundImageUrl": {
            "type": "string",
            "description": "Ссылка на фоновое изображение."
          }
        },
        "required": [
          "title",
          "animationUrl",
          "position"
        ]
      },
      "Dashboard": {
        "type": "object",
        "description": "Класс, представляющий рекомендованные станций пользователя.",
        "properties": {
          "dashboardId": {
            "type": "string",
            "description": "Уникальный идентификатор панели."
          },
          "stations": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/StationResult"
            },
            "description": "Станции со всеми возможными настройками и параметрами."
          },
          "pumpkin": {
            "type": "boolean",
            "description": "Хэллоуин."
          }
        },
        "required": [
          "dashboardId",
          "stations",
          "pumpkin"
        ]
      },
      "Day": {
        "type": "object",
        "description": "Класс, представляющий день в фиде.",
        "properties": {
          "day": {
            "type": "string",
            "description": "Дата в формате YYYY-MM-DD."
          },
          "events": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/Event"
            },
            "description": "События TODO."
          },
          "tracksToPlayWithAds": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/TrackWithAds"
            },
            "description": "Треки для проигрывания с рекламой."
          },
          "tracksToPlay": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/Track"
            },
            "description": "Треки для проигрывания."
          }
        },
        "required": [
          "day",
          "events",
          "tracksToPlayWithAds",
          "tracksToPlay"
        ]
      },
      "Deactivation": {
        "type": "object",
        "description": "Класс, представляющий способы деактивации мобильной услуги.",
        "properties": {
          "method": {
            "type": "string",
            "description": "Метод отключения."
          },
          "instructions": {
            "type": "string",
            "description": "Инструкция."
          }
        },
        "required": [
          "method"
        ]
      },
      "Deprecation": {
        "type": "object",
        "description": "Класс, представляющий TODO.",
        "properties": {
          "targetAlbumId": {
            "type": "integer",
            "description": "Идентификатор альбома TODO."
          },
          "status": {
            "type": "string",
            "description": "Состояние TODO."
          },
          "done": {
            "type": "boolean",
            "description": "Выполнен ли TODO."
          }
        },
        "required": [
          "targetAlbumId",
          "status",
          "done"
        ]
      },
      "Description": {
        "type": "object",
        "description": "Класс, представляющий описание исполнителя из другого источника.",
        "properties": {
          "text": {
            "type": "string",
            "description": "Описание исполнителя."
          },
          "uri": {
            "type": "string",
            "description": "Ссылка на источник."
          }
        },
        "required": [
          "text"
        ]
      },
      "DeviceCode": {
        "type": "object",
        "description": "Класс, представляющий код устройства для OAuth Device Flow.",
        "properties": {
          "deviceCode": {
            "type": "string",
            "description": "Непрозрачный идентификатор устройства для опроса токена."
          },
          "userCode": {
            "type": "string",
            "description": "Код, который пользователь вводит на странице подтверждения."
          },
          "verificationUrl": {
            "type": "string",
            "description": "URL страницы подтверждения."
          },
          "expiresIn": {
            "type": "integer",
            "description": "Через сколько секунд истекает device_code."
          },
          "interval": {
            "type": "integer",
            "description": "Рекомендованный сервером интервал опроса в секундах."
          }
        },
        "required": [
          "deviceCode",
          "userCode",
          "verificationUrl",
          "expiresIn",
          "interval"
        ]
      },
      "Disclaimer": {
        "type": "object",
        "description": "Класс, представляющий дисклеймер.",
        "properties": {
          "foreignAgent": {
            "$ref": "#/components/schemas/ForeignAgent",
            "description": "Информация о статусе иноагента."
          }
        }
      },
      "DiscreteScale": {
        "type": "object",
        "description": "Класс, представляющий дискретное значение.",
        "properties": {
          "type": {
            "type": "string",
            "description": "Тип."
          },
          "name": {
            "type": "string",
            "description": "Название."
          },
          "min": {
            "$ref": "#/components/schemas/Value",
            "description": "Минимальное значение."
          },
          "max": {
            "$ref": "#/components/schemas/Value",
            "description": "Максимальное значение."
          }
        },
        "required": [
          "type",
          "name",
          "min",
          "max"
        ]
      },
      "DownloadInfo": {
        "type": "object",
        "description": "Класс, представляющий информацию о вариантах загрузки трека.",
        "properties": {
          "codec": {
            "type": "string",
            "description": "Кодек аудиофайла."
          },
          "bitrateInKbps": {
            "type": "integer",
            "description": "Битрейт аудиофайла в кбит/с."
          },
          "gain": {
            "type": "boolean",
            "description": "Усиление TODO."
          },
          "preview": {
            "type": "boolean",
            "description": "Предварительный просмотр TODO."
          },
          "downloadInfoUrl": {
            "type": "string",
            "description": "Ссылка на XML документ содержащий данные для загрузки трека."
          },
          "direct": {
            "type": "boolean",
            "description": "Прямая ли ссылка."
          }
        },
        "required": [
          "codec",
          "bitrateInKbps",
          "gain",
          "preview",
          "downloadInfoUrl",
          "direct"
        ]
      },
      "Enum": {
        "type": "object",
        "description": "Класс, представляющий перечисления.",
        "properties": {
          "type": {
            "type": "string",
            "description": "Тип перечисления."
          },
          "name": {
            "type": "string",
            "description": "Название перечисления."
          },
          "possibleValues": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/Value"
            },
            "description": "Доступные значения."
          }
        },
        "required": [
          "type",
          "name",
          "possibleValues"
        ]
      },
      "Event": {
        "type": "object",
        "description": "Класс, представляющий событие фида.",
        "properties": {
          "id": {
            "type": "string",
            "description": "Уникальный идентификатор события."
          },
          "type": {
            "type": "string",
            "description": "Тип события."
          },
          "typeForFrom": {
            "type": "string",
            "description": "Откуда пришло событие."
          },
          "title": {
            "type": "string",
            "description": "Заголовок."
          },
          "tracks": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/Track"
            },
            "description": "Список треков."
          },
          "artists": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/ArtistEvent"
            },
            "description": "Список артистов с похожими и популярными треками."
          },
          "albums": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/AlbumEvent"
            },
            "description": "Список альбомов с треками."
          },
          "message": {
            "type": "string",
            "description": "Сообщение уведомления."
          },
          "device": {
            "type": "string",
            "description": "Устройство, с которого пришло уведомление."
          },
          "tracksCount": {
            "type": "integer",
            "description": "Количество треков (возможно, уже не используется)."
          },
          "genre": {
            "type": "string",
            "description": "Жанр треков."
          }
        },
        "required": [
          "id",
          "type"
        ]
      },
      "ExperimentDetail": {
        "type": "object",
        "description": "Класс, представляющий один эксперимент в детализированном ответе.",
        "properties": {
          "group": {
            "type": "string",
            "description": "Название выбранной группы эксперимента."
          },
          "value": {
            "$ref": "#/components/schemas/ExperimentDetailValue",
            "description": "Конфигурация выбранной группы эксперимента."
          }
        }
      },
      "ExperimentDetailValue": {
        "type": "object",
        "description": "Класс, представляющий значение (конфигурацию) эксперимента.",
        "properties": {
          "title": {
            "type": "string",
            "description": "Название/идентификатор группы эксперимента."
          }
        }
      },
      "Experiments": {
        "type": "object",
        "description": "Класс, представляющий какие-то свистелки и перделки, флажки, режимы экспериментальных функций.",
        "properties": {}
      },
      "ExperimentsDetails": {
        "type": "object",
        "description": "Класс, представляющий детальные значения экспериментальных функций аккаунта.",
        "properties": {
          "experiments": {
            "type": "object",
            "additionalProperties": {
              "$ref": "#/components/schemas/ExperimentDetail"
            },
            "description": " Словарь экспериментов, ключ — название эксперимента."
          }
        }
      },
      "Fade": {
        "type": "object",
        "description": "Класс, представляющий параметры затухания трека.",
        "properties": {
          "inStart": {
            "type": "number",
            "description": "Начало нарастания звука в секундах."
          },
          "inStop": {
            "type": "number",
            "description": "Конец нарастания звука в секундах."
          },
          "outStart": {
            "type": "number",
            "description": "Начало затухания звука в секундах."
          },
          "outStop": {
            "type": "number",
            "description": "Конец затухания звука в секундах."
          }
        }
      },
      "Feed": {
        "type": "object",
        "description": "Класс, представляющий фид.",
        "properties": {
          "canGetMoreEvents": {
            "type": "boolean",
            "description": "Можно ли получить больше событий."
          },
          "pumpkin": {
            "type": "boolean",
            "description": "Хэллоуин."
          },
          "isWizardPassed": {
            "type": "boolean",
            "description": "TODO."
          },
          "generatedPlaylists": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/GeneratedPlaylist"
            },
            "description": "Сгенерированные плейлисты."
          },
          "headlines": {
            "type": "array",
            "items": {
              "type": "string"
            },
            "description": "Заголовки."
          },
          "today": {
            "type": "string",
            "description": "Сегодняшняя дата в формате YYYY-MM-DD."
          },
          "days": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/Day"
            },
            "description": "Дни."
          },
          "nextRevision": {
            "type": "string",
            "description": "Дата следующих изменений в формате YYYY-MM-DD."
          }
        },
        "required": [
          "canGetMoreEvents",
          "pumpkin",
          "isWizardPassed",
          "generatedPlaylists",
          "headlines",
          "today",
          "days"
        ]
      },
      "FileDownloadInfo": {
        "type": "object",
        "description": "Класс, представляющий информацию о файле трека для загрузки.",
        "properties": {
          "trackId": {
            "type": "string",
            "description": "Уникальный идентификатор трека из запроса."
          },
          "quality": {
            "type": "string",
            "description": "Качество."
          },
          "codec": {
            "type": "string",
            "description": "Кодек."
          },
          "bitrate": {
            "type": "integer",
            "description": "Битрейт в кбит/с."
          },
          "transport": {
            "type": "string",
            "description": "Способ доставки файла."
          },
          "url": {
            "type": "string",
            "description": "Ссылка на файл."
          },
          "urls": {
            "type": "array",
            "items": {
              "type": "string"
            },
            "description": "Ссылки на файл на разных серверах."
          },
          "realId": {
            "type": "string",
            "description": "Уникальный идентификатор трека."
          },
          "gain": {
            "type": "boolean",
            "description": "Усиление."
          },
          "key": {
            "type": "string",
            "description": "Ключ расшифровки в шестнадцатеричном виде для `encraw`."
          }
        },
        "required": [
          "trackId",
          "quality",
          "codec",
          "bitrate",
          "transport",
          "url",
          "urls"
        ]
      },
      "FileInfo": {
        "type": "object",
        "description": "Класс, представляющий информацию о файле трека.",
        "properties": {
          "downloadInfo": {
            "$ref": "#/components/schemas/FileDownloadInfo",
            "description": "Информация для загрузки файла."
          }
        }
      },
      "ForeignAgent": {
        "type": "object",
        "description": "Класс, представляющий информацию о статусе иноагента.",
        "properties": {
          "reason": {
            "type": "string",
            "description": "Причина присвоения статуса."
          },
          "title": {
            "type": "string",
            "description": "Текст предупреждения."
          }
        }
      },
      "GeneratedPlaylist": {
        "type": "object",
        "description": "Класс, представляющий автоматически сгенерированный плейлист.",
        "properties": {
          "type": {
            "type": "string",
            "description": "Тип сгенерированного плейлиста."
          },
          "ready": {
            "type": "boolean",
            "description": "Готовность плейлиста."
          },
          "notify": {
            "type": "boolean",
            "description": "Уведомлён ли пользователь об обновлении содержания."
          },
          "data": {
            "$ref": "#/components/schemas/Playlist",
            "description": "Сгенерированный плейлист."
          },
          "description": {
            "type": "array",
            "items": {
              "anyOf": [
                {
                  "type": "object",
                  "additionalProperties": {}
                },
                {
                  "type": "array",
                  "items": {}
                },
                {
                  "type": "string"
                },
                {
                  "type": "integer"
                },
                {
                  "type": "number"
                },
                {
                  "type": "boolean"
                }
              ]
            },
            "description": "Описание TODO."
          },
          "previewDescription": {
            "type": "string",
            "description": "Короткое описание под блоком лендинга."
          }
        },
        "required": [
          "type",
          "ready",
          "notify",
          "data"
        ]
      },
      "GenerativeStream": {
        "type": "object",
        "description": "Класс, представляющий информацию о генеративной станции.",
        "properties": {
          "data": {
            "$ref": "#/components/schemas/GenerativeStreamData",
            "description": "Оформление станции."
          },
          "version": {
            "type": "string",
            "description": "Версия генеративной модели."
          },
          "stream": {
            "$ref": "#/components/schemas/GenerativeStreamInfo",
            "description": "Поток станции."
          }
        }
      },
      "GenerativeStreamData": {
        "type": "object",
        "description": "Класс, представляющий оформление генеративной станции.",
        "properties": {
          "title": {
            "type": "string",
            "description": "Название станции."
          },
          "subtitle": {
            "type": "string",
            "description": "Подзаголовок станции."
          },
          "backgroundColor": {
            "type": "string",
            "description": "Цвет фона в HEX."
          },
          "derivedColors": {
            "$ref": "#/components/schemas/CoverDerivedColors",
            "description": "Производные цвета."
          },
          "imageUrl": {
            "type": "string",
            "description": "Ссылка на изображение."
          },
          "videoCoverUri": {
            "type": "string",
            "description": "Ссылка на видеообложку."
          },
          "explanations": {
            "type": "string",
            "description": "Описание станции."
          }
        }
      },
      "GenerativeStreamInfo": {
        "type": "object",
        "description": "Класс, представляющий поток генеративной станции.",
        "properties": {
          "id": {
            "type": "string",
            "description": "Уникальный идентификатор потока. Передаётся в обратную связь станции как `stream_id`."
          },
          "url": {
            "type": "string",
            "description": "Ссылка на поток."
          }
        }
      },
      "Genre": {
        "type": "object",
        "description": "Класс, представляющий жанр музыки.",
        "properties": {
          "id": {
            "type": "string",
            "description": "Уникальный идентификатор жанра."
          },
          "weight": {
            "type": "integer",
            "description": "Вес TODO (возможно, чем выше показатель, тем больше нравится пользователю)."
          },
          "composerTop": {
            "type": "boolean",
            "description": "TODO."
          },
          "title": {
            "type": "string",
            "description": "Заголовок жанра."
          },
          "titles": {
            "type": "object",
            "additionalProperties": {
              "$ref": "#/components/schemas/Title"
            },
            "description": "Словарь заголовков на разных языках, где ключ - язык."
          },
          "images": {
            "$ref": "#/components/schemas/Images",
            "description": "Изображение жанра."
          },
          "showInMenu": {
            "type": "boolean",
            "description": "Показывать в меню."
          },
          "showInRegions": {
            "type": "array",
            "items": {
              "type": "integer"
            },
            "description": "Список регионов в которых отображается жанр в списках."
          },
          "fullTitle": {
            "type": "string",
            "description": "Полный заголовок."
          },
          "urlPart": {
            "type": "string",
            "description": "Часть ссылки на жанр для открытия в браузере."
          },
          "color": {
            "type": "string",
            "description": "Цвет фона изображения."
          },
          "radioIcon": {
            "$ref": "#/components/schemas/Icon",
            "description": "Иконка радио жанра."
          },
          "subGenres": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/Genre"
            },
            "description": "Поджанры текущего жанра музыки."
          },
          "hideInRegions": {
            "type": "array",
            "items": {
              "type": "integer"
            },
            "description": "В каких регионах скрывать жанр."
          }
        },
        "required": [
          "id",
          "weight",
          "composerTop",
          "title",
          "titles",
          "images",
          "showInMenu"
        ]
      },
      "Icon": {
        "type": "object",
        "description": "Класс, представляющий иконку.",
        "properties": {
          "backgroundColor": {
            "type": "string",
            "description": "Цвет заднего фона в HEX."
          },
          "imageUrl": {
            "type": "string",
            "description": "Ссылка на изображение."
          }
        },
        "required": [
          "backgroundColor",
          "imageUrl"
        ]
      },
      "Id": {
        "type": "object",
        "description": "Класс, представляющий уникальный идентификатор станции.",
        "properties": {
          "type": {
            "type": "string",
            "description": "Тип станции."
          },
          "tag": {
            "type": "string",
            "description": "Тег станции."
          }
        },
        "required": [
          "type",
          "tag"
        ]
      },
      "Images": {
        "type": "object",
        "description": "Класс, представляющий изображение жанра.",
        "properties": {}
      },
      "InvocationInfo": {
        "type": "object",
        "description": "Класс, представляющий информацию о запросе.",
        "properties": {
          "hostname": {
            "type": "string",
            "description": "Имя удалённого сервера."
          },
          "reqId": {
            "type": "string",
            "description": "Номер запроса."
          },
          "execDurationMillis": {
            "type": "integer",
            "description": "Время выполнения в миллисекундах."
          },
          "appName": {
            "type": "string",
            "description": "Название сервиса, обработавшего запрос (например, `music-wave`)."
          }
        },
        "required": [
          "hostname",
          "reqId"
        ]
      },
      "Label": {
        "type": "object",
        "description": "Класс, представляющий лейбл.",
        "properties": {
          "id": {
            "type": "integer",
            "description": "Уникальный идентификатор лейбла."
          },
          "name": {
            "type": "string",
            "description": "Название лейбла."
          },
          "description": {
            "type": "string",
            "description": "Описание."
          },
          "descriptionFormatted": {
            "type": "string",
            "description": "Отформатированное описание."
          },
          "image": {
            "type": "string",
            "description": "Ссылка на изображение."
          },
          "links": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/Link"
            },
            "description": "Ссылки на ресурсы лейбла."
          },
          "type": {
            "type": "string",
            "description": "Тип лейбла."
          }
        },
        "required": [
          "id",
          "name"
        ]
      },
      "LabelAlbums": {
        "type": "object",
        "description": "Класс, представляющий страницу списка альбомов лейбла.",
        "properties": {
          "albums": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/Album"
            },
            "description": "Список альбомов лейбла."
          },
          "pager": {
            "$ref": "#/components/schemas/Pager",
            "description": "Пагинатор."
          }
        },
        "required": [
          "albums",
          "pager"
        ]
      },
      "LabelArtists": {
        "type": "object",
        "description": "Класс, представляющий страницу списка артистов лейбла.",
        "properties": {
          "artists": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/Artist"
            },
            "description": "Список артистов лейбла."
          },
          "pager": {
            "$ref": "#/components/schemas/Pager",
            "description": "Пагинатор."
          }
        },
        "required": [
          "artists",
          "pager"
        ]
      },
      "Landing": {
        "type": "object",
        "description": "Класс, представляющий лендинг.",
        "properties": {
          "pumpkin": {
            "type": "boolean",
            "description": "Хэллоуин."
          },
          "contentId": {
            "type": [
              "string",
              "integer"
            ],
            "description": "Уникальный идентификатор контента."
          },
          "blocks": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/Block"
            },
            "description": "Блоки лендинга."
          }
        },
        "required": [
          "pumpkin",
          "contentId",
          "blocks"
        ]
      },
      "LandingList": {
        "type": "object",
        "description": "Класс, представляющий список объектов лендинга.",
        "properties": {
          "type": {
            "type": "string",
            "description": "Тип результата."
          },
          "typeForFrom": {
            "type": "string",
            "description": "Откуда пришло событие."
          },
          "title": {
            "type": "string",
            "description": "Заголовок страницы."
          },
          "id": {
            "type": "string",
            "description": "Уникальный идентификатор списка."
          },
          "newReleases": {
            "type": "array",
            "items": {
              "type": "integer"
            },
            "description": "Новые альбомы."
          },
          "newPlaylists": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/PlaylistId"
            },
            "description": "Новые плейлисты."
          },
          "podcasts": {
            "type": "array",
            "items": {
              "type": "integer"
            },
            "description": "Подкасты."
          }
        },
        "required": [
          "type",
          "typeForFrom",
          "title"
        ]
      },
      "LicenceTextPart": {
        "type": "object",
        "description": "Класс, представляющий часть текста с ссылкой на лицензионное соглашение.",
        "properties": {
          "text": {
            "type": "string",
            "description": "Часть текста (строка)."
          },
          "url": {
            "type": "string",
            "description": "Ссылка на лицензионное соглашение."
          }
        },
        "required": [
          "text"
        ]
      },
      "Like": {
        "type": "object",
        "description": "Класс, представляющий объект с отметкой \"мне нравится\".",
        "properties": {
          "type": {
            "type": "string",
            "description": "Тип объекта с отметкой."
          },
          "id": {
            "type": "integer",
            "description": "Уникальный идентификатор отметки."
          },
          "timestamp": {
            "type": "string",
            "description": "Дата и время добавления отметки."
          },
          "album": {
            "$ref": "#/components/schemas/Album",
            "description": "Понравившейся альбом."
          },
          "artist": {
            "$ref": "#/components/schemas/Artist",
            "description": "Понравившейся артист."
          },
          "playlist": {
            "$ref": "#/components/schemas/Playlist",
            "description": "Понравившейся плейлист."
          },
          "shortDescription": {
            "type": "string",
            "description": "Короткое описание."
          },
          "description": {
            "type": "string",
            "description": "Описание."
          },
          "isPremiere": {
            "type": "boolean",
            "description": "Премьера ли."
          },
          "isBanner": {
            "type": "boolean",
            "description": "Является ли баннером."
          }
        },
        "required": [
          "type"
        ]
      },
      "Link": {
        "type": "object",
        "description": "Класс, представляющий ссылку на официальную страницу исполнителя.",
        "properties": {
          "title": {
            "type": "string",
            "description": "Название страницы."
          },
          "href": {
            "type": "string",
            "description": "URL страницы."
          },
          "type": {
            "type": "string",
            "description": "Тип страницы."
          },
          "socialNetwork": {
            "type": "string",
            "description": "Название социальной сети."
          }
        },
        "required": [
          "title",
          "href",
          "type"
        ]
      },
      "Lyrics": {
        "type": "object",
        "description": "Класс, представляющий текст трека.",
        "properties": {
          "id": {
            "type": "integer",
            "description": "Уникальный идентификатор текста трека."
          },
          "lyrics": {
            "type": "string",
            "description": "Первые строки текст песни."
          },
          "fullLyrics": {
            "type": "string",
            "description": "Текст песни."
          },
          "hasRights": {
            "type": "boolean",
            "description": "Есть ли права."
          },
          "showTranslation": {
            "type": "boolean",
            "description": "Доступен ли перевод."
          },
          "textLanguage": {
            "type": "string",
            "description": "Язык песни."
          },
          "url": {
            "type": "string",
            "description": "Ссылка на источник перевода. Обычно genius.com."
          }
        },
        "required": [
          "id",
          "lyrics",
          "fullLyrics",
          "hasRights",
          "showTranslation"
        ]
      },
      "LyricsInfo": {
        "type": "object",
        "description": "Класс, описывающий доступные тексты трека.",
        "properties": {
          "hasAvailableSyncLyrics": {
            "type": "boolean",
            "description": "Наличие синхронизированного текста."
          },
          "hasAvailableTextLyrics": {
            "type": "boolean",
            "description": "Наличие текста трека."
          }
        },
        "required": [
          "hasAvailableSyncLyrics",
          "hasAvailableTextLyrics"
        ]
      },
      "LyricsMajor": {
        "type": "object",
        "description": "Класс, представляющий сервис-источник текстов к трекам.",
        "properties": {
          "id": {
            "type": "integer"
          },
          "name": {
            "type": "string"
          },
          "prettyName": {
            "type": "string"
          }
        },
        "required": [
          "id",
          "name",
          "prettyName"
        ]
      },
      "MadeFor": {
        "type": "object",
        "description": "Класс, представляющий пользователя, для которого был сделан плейлист.",
        "properties": {
          "userInfo": {
            "$ref": "#/components/schemas/User",
            "description": "Пользователь, для которого был сделан плейлист."
          },
          "caseForms": {
            "$ref": "#/components/schemas/CaseForms",
            "description": "Склонение имени пользователя, для которого был сделан плейлист."
          }
        },
        "required": [
          "userInfo",
          "caseForms"
        ]
      },
      "Major": {
        "type": "object",
        "description": "Класс, представляющий мейджор-лейбл звукозаписи.",
        "properties": {
          "id": {
            "type": "integer",
            "description": "Уникальный идентификатор."
          },
          "name": {
            "type": "string",
            "description": "Название."
          }
        },
        "required": [
          "id",
          "name"
        ]
      },
      "MetaData": {
        "type": "object",
        "description": "Класс, представляющий метаданные трека.",
        "properties": {
          "album": {
            "type": "string",
            "description": "Название альбома."
          },
          "volume": {
            "type": "integer",
            "description": "Диск (раздел)."
          },
          "year": {
            "type": "integer",
            "description": "Год выхода."
          },
          "number": {
            "type": "integer",
            "description": "Позиция в альбоме."
          },
          "genre": {
            "type": "string",
            "description": "Жанр."
          },
          "lyricist": {
            "type": "string",
            "description": "Текст песни. Есть только у пользовательских треков."
          },
          "version": {
            "type": "string",
            "description": "Версия TODO."
          },
          "composer": {
            "type": "string",
            "description": "Композитор TODO."
          }
        }
      },
      "Metatag": {
        "type": "object",
        "description": "Класс, представляющий метатег.",
        "properties": {
          "id": {
            "type": "string",
            "description": "Уникальный идентификатор метатега."
          },
          "coverUri": {
            "type": "string",
            "description": "Ссылка на обложку."
          },
          "color": {
            "type": "string",
            "description": "Цвет оформления."
          },
          "title": {
            "$ref": "#/components/schemas/MetatagTitle",
            "description": "Заголовок метатега."
          },
          "liked": {
            "type": "boolean",
            "description": "Отмечен ли метатег как понравившийся пользователем."
          },
          "stationId": {
            "type": "string",
            "description": "Идентификатор радиостанции."
          },
          "customWaveAnimationUrl": {
            "type": "string",
            "description": "Ссылка на анимацию вайба."
          },
          "artists": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/Artist"
            },
            "description": "Список артистов метатега."
          },
          "albums": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/Album"
            },
            "description": "Список альбомов метатега."
          },
          "playlists": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/Playlist"
            },
            "description": "Список плейлистов метатега."
          },
          "tracksSortByValues": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/MetatagSortByValue"
            },
            "description": " Допустимые значения сортировки списка треков."
          },
          "albumsSortByValues": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/MetatagSortByValue"
            },
            "description": " Допустимые значения сортировки списка альбомов."
          },
          "playlistsSortByValues": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/MetatagSortByValue"
            },
            "description": " Допустимые значения сортировки списка плейлистов."
          }
        }
      },
      "MetatagAlbums": {
        "type": "object",
        "description": "Класс, представляющий страницу списка альбомов метатега.",
        "properties": {
          "id": {
            "type": "string",
            "description": "Уникальный идентификатор метатега."
          },
          "coverUri": {
            "type": "string",
            "description": "Ссылка на обложку."
          },
          "color": {
            "type": "string",
            "description": "Цвет оформления."
          },
          "title": {
            "$ref": "#/components/schemas/MetatagTitle",
            "description": "Заголовок метатега."
          },
          "stationId": {
            "type": "string",
            "description": "Идентификатор радиостанции."
          },
          "pager": {
            "$ref": "#/components/schemas/Pager",
            "description": "Пагинатор."
          },
          "albums": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/Album"
            },
            "description": "Альбомы метатега."
          },
          "sortByValues": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/MetatagSortByValue"
            },
            "description": " Допустимые значения сортировки."
          }
        }
      },
      "MetatagArtistEntry": {
        "type": "object",
        "description": "Класс, представляющий запись артиста в списке метатега.",
        "properties": {
          "artist": {
            "$ref": "#/components/schemas/Artist",
            "description": "Артист."
          },
          "popularTracks": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/Track"
            },
            "description": "Популярные треки артиста."
          }
        }
      },
      "MetatagArtists": {
        "type": "object",
        "description": "Класс, представляющий страницу списка артистов метатега.",
        "properties": {
          "id": {
            "type": "string",
            "description": "Уникальный идентификатор метатега."
          },
          "coverUri": {
            "type": "string",
            "description": "Ссылка на обложку."
          },
          "color": {
            "type": "string",
            "description": "Цвет оформления."
          },
          "title": {
            "$ref": "#/components/schemas/MetatagTitle",
            "description": "Заголовок метатега."
          },
          "stationId": {
            "type": "string",
            "description": "Идентификатор радиостанции."
          },
          "pager": {
            "$ref": "#/components/schemas/Pager",
            "description": "Пагинатор."
          },
          "artists": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/MetatagArtistEntry"
            },
            "description": "Артисты метатега с популярными треками."
          },
          "sortByValues": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/MetatagSortByValue"
            },
            "description": " Допустимые значения сортировки."
          }
        }
      },
      "MetatagLeaf": {
        "type": "object",
        "description": "Класс, представляющий лист дерева метатегов.",
        "properties": {
          "tag": {
            "type": "string",
            "description": "Идентификатор метатега."
          },
          "title": {
            "type": "string",
            "description": "Название метатега для отображения."
          },
          "leaves": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/MetatagLeaf"
            },
            "description": "Вложенные листы метатега."
          }
        }
      },
      "MetatagPlaylists": {
        "type": "object",
        "description": "Класс, представляющий страницу списка плейлистов метатега.",
        "properties": {
          "id": {
            "type": "string",
            "description": "Уникальный идентификатор метатега."
          },
          "coverUri": {
            "type": "string",
            "description": "Ссылка на обложку."
          },
          "color": {
            "type": "string",
            "description": "Цвет оформления."
          },
          "title": {
            "$ref": "#/components/schemas/MetatagTitle",
            "description": "Заголовок метатега."
          },
          "stationId": {
            "type": "string",
            "description": "Идентификатор радиостанции."
          },
          "pager": {
            "$ref": "#/components/schemas/Pager",
            "description": "Пагинатор."
          },
          "playlists": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/Playlist"
            },
            "description": "Плейлисты метатега."
          },
          "sortByValues": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/MetatagSortByValue"
            },
            "description": " Допустимые значения сортировки."
          }
        }
      },
      "MetatagSortByValue": {
        "type": "object",
        "description": "Класс, представляющий доступное значение сортировки списка метатега.",
        "properties": {
          "value": {
            "type": "string",
            "description": "Идентификатор значения сортировки."
          },
          "title": {
            "type": "string",
            "description": "Отображаемое название сортировки."
          },
          "active": {
            "type": "boolean",
            "description": "Применена ли эта сортировка в текущем ответе."
          }
        }
      },
      "MetatagTitle": {
        "type": "object",
        "description": "Класс, представляющий заголовок метатега.",
        "properties": {
          "title": {
            "type": "string",
            "description": "Короткий заголовок."
          },
          "fullTitle": {
            "type": "string",
            "description": "Полный заголовок."
          }
        }
      },
      "MetatagTree": {
        "type": "object",
        "description": "Класс, представляющий раздел дерева метатегов.",
        "properties": {
          "title": {
            "type": "string",
            "description": "Название раздела."
          },
          "navigationId": {
            "type": "string",
            "description": "Идентификатор раздела навигации."
          },
          "leaves": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/MetatagLeaf"
            },
            "description": "Листы раздела с метатегами."
          }
        }
      },
      "Metatags": {
        "type": "object",
        "description": "Класс, представляющий дерево метатегов.",
        "properties": {
          "trees": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/MetatagTree"
            },
            "description": "Разделы дерева метатегов."
          }
        }
      },
      "MixLink": {
        "type": "object",
        "description": "Класс, представляющий ссылку (кликабельный блок) на подборку.",
        "properties": {
          "title": {
            "type": "string",
            "description": "Заголовок ссылки."
          },
          "url": {
            "type": "string",
            "description": "Ссылка на подборку."
          },
          "urlScheme": {
            "type": "string",
            "description": "Ссылка со схемой на подборку."
          },
          "textColor": {
            "type": "string",
            "description": "Цвет текста (HEX)."
          },
          "backgroundColor": {
            "type": "string",
            "description": "Цвет заднего фона."
          },
          "backgroundImageUri": {
            "type": "string",
            "description": "Ссылка на изображение заднего фона."
          },
          "coverWhite": {
            "type": "string",
            "description": "Ссылка на изображение с обложкой TODO."
          },
          "coverUri": {
            "type": "string",
            "description": "Ссылка на изображение с обложкой."
          }
        },
        "required": [
          "title",
          "url",
          "urlScheme",
          "textColor",
          "backgroundColor",
          "backgroundImageUri"
        ]
      },
      "MusicHistory": {
        "type": "object",
        "description": "Класс, представляющий историю прослушивания.",
        "properties": {
          "historyTabs": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/MusicHistoryTab"
            },
            "description": " Список вкладок (дней) истории прослушивания."
          }
        }
      },
      "MusicHistoryContextFullModel": {
        "type": "object",
        "description": "Класс, представляющий полную модель контекста истории прослушивания.",
        "properties": {
          "album": {
            "$ref": "#/components/schemas/Album",
            "description": "Альбом контекста."
          },
          "artist": {
            "$ref": "#/components/schemas/Artist",
            "description": "Исполнитель контекста."
          },
          "playlist": {
            "$ref": "#/components/schemas/Playlist",
            "description": "Плейлист контекста."
          },
          "wave": {
            "$ref": "#/components/schemas/Wave",
            "description": "Волна контекста."
          },
          "artists": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/Artist"
            },
            "description": "Список исполнителей (для альбома)."
          },
          "available": {
            "type": "boolean",
            "description": "Доступность."
          },
          "tracksCount": {
            "type": "integer",
            "description": "Количество треков (для плейлиста)."
          },
          "simpleWaveForegroundImageUrl": {
            "type": "string",
            "description": "URL изображения волны."
          },
          "simpleWaveBackgroundColor": {
            "type": "string",
            "description": "Цвет фона волны."
          }
        }
      },
      "MusicHistoryGroup": {
        "type": "object",
        "description": "Класс, представляющий группу элементов истории прослушивания.",
        "properties": {
          "context": {
            "$ref": "#/components/schemas/MusicHistoryItem",
            "description": "Контекст прослушивания (альбом, плейлист и т.д.)."
          },
          "tracks": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/MusicHistoryItem"
            },
            "description": "Список прослушанных треков."
          }
        }
      },
      "MusicHistoryItem": {
        "type": "object",
        "description": "Класс, представляющий элемент истории прослушивания.",
        "properties": {
          "type": {
            "type": "string",
            "description": "Тип элемента."
          },
          "data": {
            "$ref": "#/components/schemas/MusicHistoryItemData",
            "description": "Данные элемента."
          }
        },
        "required": [
          "type"
        ]
      },
      "MusicHistoryItemData": {
        "type": "object",
        "description": "Класс, представляющий данные элемента истории прослушивания.",
        "properties": {
          "itemId": {
            "$ref": "#/components/schemas/MusicHistoryItemId",
            "description": "Идентификатор элемента."
          },
          "fullModel": {
            "anyOf": [
              {
                "$ref": "#/components/schemas/Track"
              },
              {
                "$ref": "#/components/schemas/MusicHistoryContextFullModel"
              }
            ],
            "description": " Полная модель элемента."
          }
        }
      },
      "MusicHistoryItemId": {
        "type": "object",
        "description": "Класс, представляющий идентификатор элемента истории прослушивания.",
        "properties": {
          "id": {
            "type": "string",
            "description": "Идентификатор альбома или исполнителя."
          },
          "trackId": {
            "type": "string",
            "description": "Идентификатор трека."
          },
          "albumId": {
            "type": "string",
            "description": "Идентификатор альбома трека."
          },
          "uid": {
            "type": [
              "string",
              "integer"
            ],
            "description": "Идентификатор владельца плейлиста."
          },
          "kind": {
            "type": [
              "string",
              "integer"
            ],
            "description": "Идентификатор плейлиста."
          },
          "seeds": {
            "type": "array",
            "items": {
              "type": "string"
            },
            "description": "Семена волны."
          }
        }
      },
      "MusicHistoryItems": {
        "type": "object",
        "description": "Класс, представляющий результат запроса элементов истории прослушивания.",
        "properties": {
          "items": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/MusicHistoryItem"
            },
            "description": "Список элементов истории."
          }
        }
      },
      "MusicHistoryTab": {
        "type": "object",
        "description": "Класс, представляющий вкладку (день) истории прослушивания.",
        "properties": {
          "date": {
            "type": "string",
            "description": "Дата в формате ``YYYY-MM-DD``."
          },
          "items": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/MusicHistoryGroup"
            },
            "description": "Список групп прослушивания за день."
          }
        }
      },
      "NonAutoRenewable": {
        "type": "object",
        "description": "Класс, представляющий отключённое автопродление.",
        "properties": {
          "start": {
            "type": "string",
            "description": "Дата начала подписки."
          },
          "end": {
            "type": "string",
            "description": "Дата окончания подписки."
          }
        },
        "required": [
          "start",
          "end"
        ]
      },
      "Normalization": {
        "type": "object",
        "description": "Класс, представляющий значения для нормализации трека.",
        "properties": {
          "gain": {
            "type": "number",
            "description": "Значение гейна, которое нужно применить к аудиосигналу."
          },
          "peak": {
            "type": "integer",
            "description": "Пиковая точка волны аудиосигнала."
          }
        },
        "required": [
          "gain",
          "peak"
        ]
      },
      "OAuthToken": {
        "type": "object",
        "description": "Класс, представляющий OAuth-токен, полученный через Device Flow.",
        "properties": {
          "accessToken": {
            "type": "string",
            "description": "OAuth-токен доступа."
          },
          "refreshToken": {
            "type": "string",
            "description": "Токен для обновления access_token."
          },
          "expiresIn": {
            "type": "integer",
            "description": "Срок жизни access_token в секундах."
          },
          "tokenType": {
            "type": "string",
            "description": "Тип токена (обычно ``bearer``)."
          }
        },
        "required": [
          "accessToken"
        ]
      },
      "OpenGraphData": {
        "type": "object",
        "description": "Класс, представляющий данные для Open Graph.",
        "properties": {
          "title": {
            "type": "string",
            "description": "Заголовок."
          },
          "description": {
            "type": "string",
            "description": "Описание."
          },
          "image": {
            "$ref": "#/components/schemas/Cover",
            "description": "Изображение."
          }
        },
        "required": [
          "title",
          "description",
          "image"
        ]
      },
      "Operator": {
        "type": "object",
        "description": "Класс, представляющий услугу сотового оператора.",
        "properties": {
          "productId": {
            "type": "string",
            "description": "Уникальный идентификатор продукта сервиса Яндекс.Музыка."
          },
          "phone": {
            "type": "string",
            "description": "Мобильный номер, на который подключена услуга."
          },
          "paymentRegularity": {
            "type": "string",
            "description": "Регулярность оплаты."
          },
          "deactivation": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/Deactivation"
            },
            "description": "Способы деактивации."
          },
          "title": {
            "type": "string",
            "description": "Название услуги."
          },
          "suspended": {
            "type": "boolean",
            "description": "Приостановлено."
          }
        },
        "required": [
          "productId",
          "phone",
          "paymentRegularity",
          "deactivation",
          "title",
          "suspended"
        ]
      },
      "Pager": {
        "type": "object",
        "description": "Класс, представляющий пагинацию.",
        "properties": {
          "total": {
            "type": "integer",
            "description": "Всего треков."
          },
          "page": {
            "type": "integer",
            "description": "Номер страницы."
          },
          "perPage": {
            "type": "integer",
            "description": "Количество треков на странице."
          }
        },
        "required": [
          "total",
          "page",
          "perPage"
        ]
      },
      "PassportPhone": {
        "type": "object",
        "description": "Класс, представляющий номер телефона пользователя.",
        "properties": {
          "phone": {
            "type": "string",
            "description": "Номер телефона."
          }
        },
        "required": [
          "phone"
        ]
      },
      "PermissionAlerts": {
        "type": "object",
        "description": "Класс, представляющий оповещения.",
        "properties": {
          "alerts": {
            "type": "array",
            "items": {
              "type": "string"
            },
            "description": "Список оповещений."
          }
        },
        "required": [
          "alerts"
        ]
      },
      "Permissions": {
        "type": "object",
        "description": "Класс, представляющий информацию о правах пользователя, их изначальных значениях и даты окончания.",
        "properties": {
          "until": {
            "type": "string",
            "description": "Дата окончания прав."
          },
          "values": {
            "type": "array",
            "items": {
              "type": "string"
            },
            "description": "Список прав."
          },
          "default": {
            "type": "array",
            "items": {
              "type": "string"
            },
            "description": "Список изначальных прав."
          }
        },
        "required": [
          "until",
          "values",
          "default"
        ]
      },
      "PersonalPlaylistsData": {
        "type": "object",
        "description": "Класс, представляющий дополнительную информацию о персональном плейлисте.",
        "properties": {
          "isWizardPassed": {
            "type": "boolean",
            "description": "TODO."
          }
        },
        "required": [
          "isWizardPassed"
        ]
      },
      "Pin": {
        "type": "object",
        "description": "Класс, представляющий закреплённый элемент.",
        "properties": {
          "type": {
            "type": "string",
            "description": "Тип закреплённого элемента."
          },
          "data": {
            "$ref": "#/components/schemas/PinData",
            "description": "Данные закреплённого элемента."
          }
        },
        "required": [
          "type"
        ]
      },
      "PinData": {
        "type": "object",
        "description": "Класс, представляющий данные закреплённого элемента.",
        "properties": {
          "id": {
            "type": "integer",
            "description": "Уникальный идентификатор (для артистов и альбомов)."
          },
          "uid": {
            "type": "integer",
            "description": "Уникальный идентификатор пользователя (для плейлистов)."
          },
          "kind": {
            "type": "integer",
            "description": "Номер плейлиста."
          },
          "playlistUuid": {
            "type": "string",
            "description": "UUID плейлиста."
          },
          "name": {
            "type": "string",
            "description": "Имя артиста."
          },
          "title": {
            "type": "string",
            "description": "Название альбома или плейлиста."
          },
          "cover": {
            "$ref": "#/components/schemas/Cover",
            "description": "Обложка."
          },
          "contentRestrictions": {
            "$ref": "#/components/schemas/ContentRestrictions",
            "description": "Ограничения контента."
          }
        }
      },
      "PinsList": {
        "type": "object",
        "description": "Класс, представляющий список закреплённых элементов.",
        "properties": {
          "pins": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/Pin"
            },
            "description": "Список закреплённых элементов."
          }
        }
      },
      "PlayContext": {
        "type": "object",
        "description": "Класс, представляющий проигрываемый контекст.",
        "properties": {
          "client": {
            "type": "string",
            "description": "Клиент."
          },
          "context": {
            "type": "string",
            "description": "Тип контекста."
          },
          "contextItem": {
            "type": "string",
            "description": "Предмет контекста."
          },
          "tracks": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/TrackShortOld"
            },
            "description": "Треки."
          }
        },
        "required": [
          "client",
          "context",
          "contextItem",
          "tracks"
        ]
      },
      "PlayContextsData": {
        "type": "object",
        "description": "Класс, представляющий данные проигрываемого контекста.",
        "properties": {
          "otherTracks": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/TrackShortOld"
            },
            "description": "Другие треки."
          }
        },
        "required": [
          "otherTracks"
        ]
      },
      "PlayCounter": {
        "type": "object",
        "description": "Класс, представляющий счётчик дней.",
        "properties": {
          "value": {
            "type": "integer",
            "description": "Значение (количество дней)."
          },
          "description": {
            "type": "string",
            "description": "Описание счётчика."
          },
          "updated": {
            "type": "boolean",
            "description": "Обновлён ли сегодня (в этих сутках)."
          }
        },
        "required": [
          "value",
          "description",
          "updated"
        ]
      },
      "Playlist": {
        "type": "object",
        "description": "Класс, представляющий плейлист.",
        "properties": {
          "owner": {
            "$ref": "#/components/schemas/User",
            "description": "Владелец плейлиста."
          },
          "cover": {
            "$ref": "#/components/schemas/Cover",
            "description": "Обложка альбома."
          },
          "madeFor": {
            "$ref": "#/components/schemas/MadeFor",
            "description": "Пользователь для которого был создан плейлист. Присутствует только у персональных плейлистов."
          },
          "playCounter": {
            "$ref": "#/components/schemas/PlayCounter",
            "description": "Счётчик дней. Присутствует только у плейлиста дня."
          },
          "playlistAbsence": {
            "$ref": "#/components/schemas/PlaylistAbsence",
            "description": "Причина отсутствия плейлиста."
          },
          "uid": {
            "type": "integer",
            "description": "Идентификатор владельца плейлиста."
          },
          "kind": {
            "type": "integer",
            "description": "Идентификатор плейлиста."
          },
          "title": {
            "type": "string",
            "description": "Название плейлиста."
          },
          "trackCount": {
            "type": "integer",
            "description": "Количество треков."
          },
          "tags": {
            "type": "array",
            "items": {
              "type": "object",
              "additionalProperties": {
                "type": "string"
              }
            },
            "description": "Список тегов плейлиста."
          },
          "revision": {
            "type": "integer",
            "description": "Актуальность данных TODO."
          },
          "snapshot": {
            "type": "integer",
            "description": "Версия плейлиста. Увеличивается на 1 при каждом изменении."
          },
          "visibility": {
            "type": "string",
            "description": "Видимость плейлиста."
          },
          "collective": {
            "type": "boolean",
            "description": "Есть ли у плейлиста соавторы."
          },
          "urlPart": {
            "type": "string",
            "description": "Часть ссылки на плейлист ('daily`)."
          },
          "created": {
            "type": "string",
            "description": "Дата создания в формате ISO 8601."
          },
          "modified": {
            "type": "string",
            "description": "Дата последнего изменения в формате ISO 8601."
          },
          "available": {
            "type": "boolean",
            "description": "Доступен TODO."
          },
          "isBanner": {
            "type": "boolean",
            "description": "Является ли банером TODO."
          },
          "isPremiere": {
            "type": "boolean",
            "description": "Является ли премьерой TODO."
          },
          "durationMs": {
            "type": "integer",
            "description": "Длительность в миллисекундах."
          },
          "ogImage": {
            "type": "string",
            "description": "Ссылка на превью Open Graph."
          },
          "ogTitle": {
            "type": "string",
            "description": "Заголовок Open Graph."
          },
          "ogDescription": {
            "type": "string",
            "description": "Описание Open Graph."
          },
          "image": {
            "type": "string",
            "description": "Изображение TODO."
          },
          "coverWithoutText": {
            "$ref": "#/components/schemas/Cover",
            "description": "Обложка без текста."
          },
          "contest": {
            "$ref": "#/components/schemas/Contest",
            "description": "Контест TODO."
          },
          "backgroundColor": {
            "type": "string",
            "description": "Цвет заднего фона TODO."
          },
          "textColor": {
            "type": "string",
            "description": "Цвет текста TODO."
          },
          "idForFrom": {
            "type": "string",
            "description": "Откуда пришло событие (уникальный идентификатор объекта) TODO."
          },
          "dummyDescription": {
            "type": "string",
            "description": "Описание-заглушка плейлиста."
          },
          "dummyPageDescription": {
            "type": "string",
            "description": "Описание-заглушка страницы."
          },
          "dummyCover": {
            "$ref": "#/components/schemas/Cover",
            "description": "Обложка-заглушка."
          },
          "dummyRolloverCover": {
            "$ref": "#/components/schemas/Cover",
            "description": "Обложка-заглушка TODO."
          },
          "ogData": {
            "$ref": "#/components/schemas/OpenGraphData",
            "description": "Данные для OpenGraph."
          },
          "branding": {
            "$ref": "#/components/schemas/Brand",
            "description": "Бренд."
          },
          "metrikaId": {
            "type": "integer",
            "description": "Уникальный идентификатор счётчика на Яндекс.Метрика."
          },
          "coauthors": {
            "type": "array",
            "items": {
              "type": "integer"
            },
            "description": "Перечень ID аккаунтов соавторов плейлиста."
          },
          "topArtist": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/Artist"
            },
            "description": "Топ артистов TODO."
          },
          "recentTracks": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/TrackId"
            },
            "description": "Список ID недавних треков."
          },
          "tracks": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/TrackShort"
            },
            "description": "Список треков."
          },
          "prerolls": {
            "type": "array",
            "items": {
              "anyOf": [
                {
                  "type": "object",
                  "additionalProperties": {}
                },
                {
                  "type": "array",
                  "items": {}
                },
                {
                  "type": "string"
                },
                {
                  "type": "integer"
                },
                {
                  "type": "number"
                },
                {
                  "type": "boolean"
                }
              ]
            },
            "description": "Прерол, проигрываемый перед плейлистом. Присутствует только у персональных плейлистов."
          },
          "likesCount": {
            "type": "integer",
            "description": "Количество лайков."
          },
          "similarPlaylists": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/Playlist"
            },
            "description": "Похожие плейлисты."
          },
          "lastOwnerPlaylists": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/Playlist"
            },
            "description": "Последние плейлисты владельца."
          },
          "generatedPlaylistType": {
            "type": "string",
            "description": "Тип генерируемого плейлиста."
          },
          "animatedCoverUri": {
            "type": "string",
            "description": "Ссылка на анимированную обложку."
          },
          "everPlayed": {
            "type": "boolean",
            "description": "Играл ли этот плейлист. Присутствует только у персональных плейлистов. TODO"
          },
          "description": {
            "type": "string",
            "description": "Описание плейлиста с разметкой Markdown."
          },
          "descriptionFormatted": {
            "type": "string",
            "description": "Описание плейлиста. Только текст, без разметки."
          },
          "playlistUuid": {
            "type": "string",
            "description": "TODO."
          },
          "type": {
            "type": "string",
            "description": "TODO."
          },
          "ready": {
            "type": "boolean",
            "description": "Готовность TODO."
          },
          "isForFrom": {},
          "regions": {},
          "customWave": {
            "$ref": "#/components/schemas/CustomWave",
            "description": "Описание плейлиста. TODO."
          },
          "pager": {
            "$ref": "#/components/schemas/Pager",
            "description": "Пагинатор."
          },
          "hasTrailer": {
            "type": "boolean",
            "description": "Есть ли у плейлиста трейлер."
          },
          "trailer": {
            "$ref": "#/components/schemas/PlaylistAvailability",
            "description": "Доступность трейлера плейлиста."
          },
          "backgroundVideoUrl": {
            "type": "string",
            "description": "Ссылка на фоновое видео."
          },
          "backgroundVideoId": {
            "type": "string",
            "description": "Идентификатор фонового видео."
          },
          "backgroundImageUrl": {
            "type": "string",
            "description": "Ссылка на фоновое изображение."
          }
        },
        "required": [
          "owner",
          "cover",
          "madeFor",
          "playCounter",
          "playlistAbsence"
        ]
      },
      "PlaylistAbsence": {
        "type": "object",
        "description": "Класс, представляющий причину отсутствия плейлиста.",
        "properties": {
          "kind": {
            "type": "integer",
            "description": "Уникальный идентификатор плейлиста."
          },
          "reason": {
            "type": "string",
            "description": "Причина отсутствия."
          }
        },
        "required": [
          "kind",
          "reason"
        ]
      },
      "PlaylistAvailability": {
        "type": "object",
        "description": "Класс, представляющий доступность трейлера плейлиста.",
        "properties": {
          "available": {
            "type": "boolean",
            "description": "Доступен ли трейлер."
          }
        }
      },
      "PlaylistId": {
        "type": "object",
        "description": "Класс, представляющий уникальный идентификатор плейлиста.",
        "properties": {
          "uid": {
            "type": "integer",
            "description": "Уникальный идентификатор пользователя владеющим плейлистом."
          },
          "kind": {
            "type": "integer",
            "description": "Уникальный идентификатор плейлиста."
          }
        },
        "required": [
          "uid",
          "kind"
        ]
      },
      "PlaylistRecommendations": {
        "type": "object",
        "description": "Класс, представляющий рекомендации для плейлиста.",
        "properties": {
          "tracks": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/Track"
            },
            "description": "Список рекомендованных треков."
          },
          "batchId": {
            "type": "string",
            "description": "Уникальный идентификатор партии треков."
          }
        },
        "required": [
          "tracks"
        ]
      },
      "PlaylistSimilarEntities": {
        "type": "object",
        "description": "Класс, представляющий похожие сущности для плейлиста.",
        "properties": {
          "items": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/SimilarEntityItem"
            },
            "description": "Список похожих сущностей."
          }
        }
      },
      "PlaylistTrailer": {
        "type": "object",
        "description": "Класс, представляющий трейлер плейлиста.",
        "properties": {
          "playlist": {
            "$ref": "#/components/schemas/Playlist",
            "description": "Плейлист."
          },
          "trailer": {
            "$ref": "#/components/schemas/TrailerInfo",
            "description": "Информация о трейлере."
          },
          "shareable": {
            "type": "boolean",
            "description": "Можно ли поделиться трейлером."
          }
        }
      },
      "PlaylistsList": {
        "type": "object",
        "description": "Класс, представляющий список плейлистов.",
        "properties": {
          "playlists": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/Playlist"
            },
            "description": "Список плейлистов."
          }
        }
      },
      "Plus": {
        "type": "object",
        "description": "Класс, представляющий `Plus` подписку.",
        "properties": {
          "hasPlus": {
            "type": "boolean",
            "description": "Наличие."
          },
          "isTutorialCompleted": {
            "type": "boolean",
            "description": "Закончено ли руководство."
          },
          "migrated": {
            "type": "boolean",
            "description": "TODO. Приходит в статусе аккаунта радио."
          }
        },
        "required": [
          "hasPlus",
          "isTutorialCompleted"
        ]
      },
      "PoetryLoverMatch": {
        "type": "object",
        "description": "Класс, представляющий слова в тексте TODO.",
        "properties": {
          "begin": {
            "type": "integer",
            "description": "Индекс начала."
          },
          "end": {
            "type": "integer",
            "description": "Индекс конца."
          },
          "line": {
            "type": "integer",
            "description": "Индекс строки."
          }
        },
        "required": [
          "begin",
          "end",
          "line"
        ]
      },
      "Presaves": {
        "type": "object",
        "description": "Класс, представляющий список предсохранённых альбомов.",
        "properties": {
          "upcomingAlbums": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/Album"
            },
            "description": "Список предстоящих альбомов."
          },
          "releasedAlbums": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/Album"
            },
            "description": "Список вышедших альбомов."
          }
        }
      },
      "Price": {
        "type": "object",
        "description": "Класс, представляющий цену.",
        "properties": {
          "amount": {
            "type": "integer",
            "description": "Количество единиц."
          },
          "currency": {
            "type": "string",
            "description": "Валюта."
          }
        },
        "required": [
          "amount",
          "currency"
        ]
      },
      "Product": {
        "type": "object",
        "description": "Класс, представляющий продаваемый продукт.",
        "properties": {
          "productId": {
            "type": "string",
            "description": "Уникальный идентификатор."
          },
          "type": {
            "type": "string",
            "description": "Тип продаваемого."
          },
          "duration": {
            "type": "integer",
            "description": "Длительность."
          },
          "trialDuration": {
            "type": "integer",
            "description": "Длительность испытательного срока."
          },
          "feature": {
            "type": "string",
            "description": "Предоставляемая возможность."
          },
          "debug": {
            "type": "boolean",
            "description": "Отладочный продукт."
          },
          "plus": {
            "type": "boolean",
            "description": "Даёт ли подписку \"Плюс\"."
          },
          "price": {
            "$ref": "#/components/schemas/Price",
            "description": "Цена."
          },
          "commonPeriodDuration": {
            "type": "string",
            "description": "Длительность общего периода."
          },
          "cheapest": {
            "type": "boolean",
            "description": "Самый дешёвый (лучшее предложение)."
          },
          "title": {
            "type": "string",
            "description": "Заголовок продукта."
          },
          "familySub": {
            "type": "boolean",
            "description": "Семейная ли подписка."
          },
          "fbImage": {
            "type": "string",
            "description": "Картинка для превью на facebook."
          },
          "fbName": {
            "type": "string",
            "description": "Заголовок превью на facebook."
          },
          "family": {
            "type": "boolean",
            "description": "Доступно ли для семьи."
          },
          "features": {
            "type": "array",
            "items": {
              "type": "string"
            },
            "description": "Список предоставляемых возможностей."
          },
          "description": {
            "type": "string",
            "description": "Описание."
          },
          "available": {
            "type": "boolean",
            "description": "Доступна ли покупка."
          },
          "trialAvailable": {
            "type": "boolean",
            "description": "Доступен ли пробный период."
          },
          "trialPeriodDuration": {
            "type": "string",
            "description": "Длительность пробного периода."
          },
          "introPeriodDuration": {
            "type": "string",
            "description": "Длительность вступительного периода TODO."
          },
          "introPrice": {
            "$ref": "#/components/schemas/Price",
            "description": "Цена вступительного периода."
          },
          "startPeriodDuration": {
            "type": "string",
            "description": "Длительность первого срока (за меньшую цену)."
          },
          "startPrice": {
            "$ref": "#/components/schemas/Price",
            "description": "Цена за первый срок."
          },
          "licenceTextParts": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/LicenceTextPart"
            },
            "description": " Длительность пробного периода."
          },
          "vendorTrialAvailable": {
            "type": "boolean",
            "description": "Доступен испытательный срок продавца TODO."
          },
          "buttonText": {
            "type": "string",
            "description": "Текст кнопки."
          },
          "buttonAdditionalText": {
            "type": "string",
            "description": "Дополнительный текст кнопки."
          },
          "paymentMethodTypes": {
            "type": "array",
            "items": {
              "type": "string"
            },
            "description": "Способы оплаты."
          }
        },
        "required": [
          "productId",
          "type",
          "duration",
          "trialDuration",
          "feature",
          "debug",
          "plus"
        ]
      },
      "PromoCodeStatus": {
        "type": "object",
        "description": "Класс, представляющий статус активации промо-кода.",
        "properties": {
          "status": {
            "type": "string",
            "description": "Статус операции."
          },
          "statusDesc": {
            "type": "string",
            "description": "Описание статуса."
          },
          "accountStatus": {
            "$ref": "#/components/schemas/Status",
            "description": "Информация об аккаунте пользователя."
          }
        },
        "required": [
          "status",
          "statusDesc",
          "accountStatus"
        ]
      },
      "Promotion": {
        "type": "object",
        "description": "Класс, представляющий продвижение (рекламу).",
        "properties": {
          "promoId": {
            "type": "string",
            "description": "Уникальный идентификатор рекламы."
          },
          "title": {
            "type": "string",
            "description": "Заголовок."
          },
          "subtitle": {
            "type": "string",
            "description": "Подзаголовок."
          },
          "heading": {
            "type": "string",
            "description": "Верхний заголовок."
          },
          "url": {
            "type": "string",
            "description": "Ссылка."
          },
          "urlScheme": {
            "type": "string",
            "description": "Ссылка с схемой."
          },
          "textColor": {
            "type": "string",
            "description": "Цвет текста."
          },
          "gradient": {
            "type": "string",
            "description": "Градиент TODO."
          },
          "image": {
            "type": "string",
            "description": "Ссылка на рекламное изображение."
          }
        },
        "required": [
          "promoId",
          "title",
          "subtitle",
          "heading",
          "url",
          "urlScheme",
          "textColor",
          "gradient",
          "image"
        ]
      },
      "Queue": {
        "type": "object",
        "description": "Класс, представляющий очередь треков.",
        "properties": {
          "context": {
            "$ref": "#/components/schemas/Context",
            "description": "Объект по которому построена очередь."
          },
          "tracks": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/TrackId"
            },
            "description": "Список треков."
          },
          "currentIndex": {
            "type": "integer",
            "description": "Текущий проигрываемый трек."
          },
          "modified": {
            "type": "string",
            "description": "Дата последнего изменения."
          },
          "id": {
            "type": "string",
            "description": "Уникальный идентификатор очереди."
          },
          "from": {
            "type": "string",
            "description": "Откуда был получен этот объект."
          }
        },
        "required": [
          "context",
          "tracks",
          "currentIndex",
          "modified"
        ]
      },
      "QueueItem": {
        "type": "object",
        "description": "Класс, представляющий очередь треков в списке очередей устройств.",
        "properties": {
          "id": {
            "type": "string",
            "description": "Уникальный идентификатор очереди."
          },
          "context": {
            "$ref": "#/components/schemas/Context",
            "description": "Объект по которому построена очередь."
          },
          "modified": {
            "type": "string",
            "description": "Дата последнего изменения."
          }
        },
        "required": [
          "id",
          "context",
          "modified"
        ]
      },
      "R128": {
        "type": "object",
        "description": "Класс, описывающий параметры нормализации громкости трека в соответствии с рекомендацией EBU R 128.",
        "properties": {
          "i": {
            "type": "number",
            "description": "Интегрированная громкость. Совокупная громкость от начала до конца."
          },
          "tp": {
            "type": "number",
            "description": "True Peak. Реконструкция пикового уровня сигнала между выборками (пикового уровня, генерируемого между двумя выборками ), рассчитанного с помощью передискретизации."
          },
          "importantSecs": {
            "type": "integer",
            "description": "Количество значимых секунд трека."
          }
        },
        "required": [
          "i",
          "tp"
        ]
      },
      "Ratings": {
        "type": "object",
        "description": "Класс, представляющий рейтинг исполнителя.",
        "properties": {
          "month": {
            "type": "integer",
            "description": "Значение ежемесячного рейтинга."
          },
          "week": {
            "type": "integer",
            "description": "Значение еженедельного рейтинга."
          },
          "day": {
            "type": "integer",
            "description": "Значение дневного рейтинга."
          }
        },
        "required": [
          "month"
        ]
      },
      "RenewableRemainder": {
        "type": "object",
        "description": "Класс, представляющий напоминания о продлении подписки.",
        "properties": {
          "days": {
            "type": "integer",
            "description": "Количество дней (до окончания подписки, по всей видимости)."
          }
        },
        "required": [
          "days"
        ]
      },
      "Restrictions": {
        "type": "object",
        "description": "Класс, представляющий ограничения для настроек станции.",
        "properties": {
          "language": {
            "$ref": "#/components/schemas/Enum",
            "description": "Перечисление значений для языков."
          },
          "diversity": {
            "$ref": "#/components/schemas/Enum",
            "description": "Перечисление значений для разнообразия (треков)."
          },
          "mood": {
            "$ref": "#/components/schemas/DiscreteScale",
            "description": "Ограничение для значений настроения."
          },
          "energy": {
            "$ref": "#/components/schemas/DiscreteScale",
            "description": "Ограничение для значений энергичности."
          },
          "moodEnergy": {
            "$ref": "#/components/schemas/Enum",
            "description": "Значения для настроения."
          }
        },
        "required": [
          "language",
          "diversity"
        ]
      },
      "RotorSeed": {
        "type": "object",
        "description": "Класс, представляющий сид радио.",
        "properties": {
          "type": {
            "type": "string",
            "description": "Тип сида."
          },
          "tag": {
            "type": "string",
            "description": "Тег сида."
          },
          "value": {
            "type": "string",
            "description": "Значение сида."
          }
        }
      },
      "RotorSession": {
        "type": "object",
        "description": "Класс, представляющий сессию радио.",
        "properties": {
          "radioSessionId": {
            "type": "string",
            "description": "Уникальный идентификатор сессии радио."
          },
          "batchId": {
            "type": "string",
            "description": "Уникальный идентификатор партии треков."
          },
          "pumpkin": {
            "type": "boolean",
            "description": "TODO."
          },
          "sequence": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/Sequence"
            },
            "description": "Последовательность треков."
          },
          "acceptedSeeds": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/RotorSeed"
            },
            "description": "Принятые сиды."
          },
          "descriptionSeed": {
            "$ref": "#/components/schemas/RotorSeed",
            "description": "Сид, описывающий сессию."
          },
          "terminated": {
            "type": "boolean",
            "description": "Завершена ли сессия."
          },
          "wave": {
            "$ref": "#/components/schemas/Wave",
            "description": "Волна сессии. Возвращается при `include_wave_model`."
          },
          "offlineRecommenderData": {
            "type": "array",
            "items": {
              "type": "integer"
            },
            "description": "Данные для офлайн-рекомендаций."
          },
          "interactive": {
            "type": "boolean",
            "description": "Является ли сессия интерактивной."
          }
        }
      },
      "RotorSessionTracks": {
        "type": "object",
        "description": "Класс, представляющий следующую партию треков сессии радио.",
        "properties": {
          "batchId": {
            "type": "string",
            "description": "Уникальный идентификатор партии треков."
          },
          "pumpkin": {
            "type": "boolean",
            "description": "TODO."
          },
          "sequence": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/Sequence"
            },
            "description": "Последовательность треков."
          },
          "terminated": {
            "type": "boolean",
            "description": "Завершена ли сессия."
          },
          "unknownSession": {
            "type": "boolean",
            "description": "Не найдена ли сессия с переданным идентификатором."
          },
          "offlineRecommenderData": {
            "type": "array",
            "items": {
              "type": "integer"
            },
            "description": "Данные для офлайн-рекомендаций."
          }
        }
      },
      "RotorSettings": {
        "type": "object",
        "description": "Класс, представляющий настройки станции.",
        "properties": {
          "language": {
            "type": "string",
            "description": "Язык."
          },
          "diversity": {
            "type": "string",
            "description": "Разнообразие (треки)."
          },
          "mood": {
            "type": "integer",
            "description": "Настроение (старое)."
          },
          "energy": {
            "type": "integer",
            "description": "Энергичное."
          },
          "moodEnergy": {
            "type": "string",
            "description": "Настроение."
          }
        },
        "required": [
          "language",
          "diversity"
        ]
      },
      "Search": {
        "type": "object",
        "description": "Класс, представляющий результаты поиска.",
        "properties": {
          "searchRequestId": {
            "type": "string",
            "description": "ID запроса."
          },
          "text": {
            "type": "string",
            "description": "Текст запроса."
          },
          "best": {
            "$ref": "#/components/schemas/Best",
            "description": "Лучший результат."
          },
          "albums": {
            "description": "Найденные альбомы."
          },
          "artists": {
            "description": "Найденные исполнители."
          },
          "playlists": {
            "description": "Найденные плейлисты."
          },
          "tracks": {
            "description": "Найденные треки."
          },
          "videos": {
            "description": "Найденные видео."
          },
          "users": {
            "description": "Найденные пользователи."
          },
          "podcasts": {
            "description": "Найденные подкасты."
          },
          "podcastEpisodes": {
            "description": "Найденные выпуски подкастов."
          },
          "type": {
            "type": "string",
            "description": "Тип результата по которому искали (аргумент в Client.search)."
          },
          "page": {
            "type": "integer",
            "description": "Текущая страница."
          },
          "perPage": {
            "type": "integer",
            "description": "Результатов на странице."
          },
          "misspellResult": {
            "type": "string",
            "description": "Запрос с автоматическим исправлением."
          },
          "misspellOriginal": {
            "type": "string",
            "description": "Оригинальный запрос."
          },
          "misspellCorrected": {
            "type": "boolean",
            "description": "Был ли исправлен запрос."
          },
          "nocorrect": {
            "type": "boolean",
            "description": "Было ли отключено исправление результата."
          }
        },
        "required": [
          "searchRequestId",
          "text",
          "best",
          "albums",
          "artists",
          "playlists",
          "tracks",
          "videos",
          "users",
          "podcasts",
          "podcastEpisodes"
        ]
      },
      "Sequence": {
        "type": "object",
        "description": "Класс, представляющий звено последовательности.",
        "properties": {
          "type": {
            "type": "string",
            "description": "Тип звена."
          },
          "track": {
            "$ref": "#/components/schemas/Track",
            "description": "Трек."
          },
          "liked": {
            "type": "boolean",
            "description": "Связанное ли."
          },
          "trackParameters": {
            "$ref": "#/components/schemas/TrackParameters",
            "description": "Параметры трека в радио."
          }
        },
        "required": [
          "type",
          "track",
          "liked"
        ]
      },
      "Settings": {
        "type": "object",
        "description": "Класс, представляющий предложения по покупке.",
        "properties": {
          "inAppProducts": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/Product"
            },
            "description": "Продаваемые продукты внутри приложения."
          },
          "nativeProducts": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/Product"
            }
          },
          "webPaymentUrl": {
            "type": "string",
            "description": "Ссылка для осуществления платежа."
          },
          "promoCodesEnabled": {
            "type": "boolean",
            "description": "Доступно ли использование промо-кодов."
          },
          "webPaymentMonthProductPrice": {
            "$ref": "#/components/schemas/Price",
            "description": "Цена продукта за месяц."
          }
        },
        "required": [
          "inAppProducts",
          "nativeProducts",
          "webPaymentUrl",
          "promoCodesEnabled"
        ]
      },
      "Shot": {
        "type": "object",
        "description": "Класс, представляющий шот от Алисы.",
        "properties": {
          "order": {
            "type": "integer",
            "description": "Порядковый номер при воспроизведении."
          },
          "played": {
            "type": "boolean",
            "description": "Был ли проигран шот."
          },
          "shotData": {
            "$ref": "#/components/schemas/ShotData",
            "description": "Основная информация о шоте."
          },
          "shotId": {
            "type": "string",
            "description": "Уникальный идентификатор шота."
          },
          "status": {
            "type": "string",
            "description": "Статус шота."
          }
        },
        "required": [
          "order",
          "played",
          "shotData",
          "shotId",
          "status"
        ]
      },
      "ShotData": {
        "type": "object",
        "description": "Класс, представляющий основную информацию о шоте.",
        "properties": {
          "coverUri": {
            "type": "string",
            "description": "Ссылка на обложку шота (иконка Алисы)."
          },
          "mdsUrl": {
            "type": "string",
            "description": "Ссылка на аудиоверсию шота в озвучке от Алисы."
          },
          "shotText": {
            "type": "string",
            "description": "Текстовая версия шота."
          },
          "shotType": {
            "$ref": "#/components/schemas/ShotType",
            "description": "Тип шота."
          }
        },
        "required": [
          "coverUri",
          "mdsUrl",
          "shotText",
          "shotType"
        ]
      },
      "ShotEvent": {
        "type": "object",
        "description": "Класс, представляющий событие-шот перед началом следующего трека.",
        "properties": {
          "eventId": {
            "type": "string",
            "description": "Уникальный идентификатор события."
          },
          "shots": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/Shot"
            },
            "description": "Шоты от Алисы."
          }
        },
        "required": [
          "eventId",
          "shots"
        ]
      },
      "ShotType": {
        "type": "object",
        "description": "Класс, представляющий тип шота от Алисы.",
        "properties": {
          "id": {
            "type": "string",
            "description": "Уникальный идентификатор типа."
          },
          "title": {
            "type": "string",
            "description": "Заголовок шота."
          }
        },
        "required": [
          "id",
          "title"
        ]
      },
      "SimilarEntityData": {
        "type": "object",
        "description": "Класс, представляющий данные похожей сущности.",
        "properties": {
          "wave": {
            "$ref": "#/components/schemas/Wave",
            "description": "Волна."
          },
          "agent": {
            "$ref": "#/components/schemas/WaveAgent",
            "description": "Агент волны."
          }
        }
      },
      "SimilarEntityItem": {
        "type": "object",
        "description": "Класс, представляющий элемент списка похожих сущностей.",
        "properties": {
          "type": {
            "type": "string",
            "description": "Тип элемента."
          },
          "data": {
            "$ref": "#/components/schemas/SimilarEntityData",
            "description": "Данные элемента."
          }
        }
      },
      "SimilarTracks": {
        "type": "object",
        "description": "Класс, представляющий список похожих треков на другой трек.",
        "properties": {
          "track": {
            "$ref": "#/components/schemas/Track",
            "description": "Трек."
          },
          "similarTracks": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/Track"
            },
            "description": "Похожие треки на `track`."
          }
        },
        "required": [
          "track",
          "similarTracks"
        ]
      },
      "SkeletonBlock": {
        "type": "object",
        "description": "Класс, представляющий блок скелетона.",
        "properties": {
          "id": {
            "type": "string",
            "description": "Идентификатор блока."
          },
          "type": {
            "type": "string",
            "description": "Тип блока."
          },
          "data": {
            "$ref": "#/components/schemas/SkeletonBlockData",
            "description": "Данные блока."
          }
        }
      },
      "SkeletonBlockData": {
        "type": "object",
        "description": "Класс, представляющий данные блока скелетона.",
        "properties": {
          "tabs": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/SkeletonTab"
            },
            "description": "Список вкладок."
          },
          "selectedTabIndex": {
            "type": "integer",
            "description": "Индекс выбранной вкладки."
          },
          "source": {
            "$ref": "#/components/schemas/SkeletonSource",
            "description": "Источник данных."
          },
          "title": {
            "type": "string",
            "description": "Заголовок блока."
          },
          "showPolicy": {
            "type": "string",
            "description": "Политика отображения."
          },
          "viewAllAction": {
            "$ref": "#/components/schemas/SkeletonViewAllAction",
            "description": "Действие «Показать все»."
          }
        }
      },
      "SkeletonSource": {
        "type": "object",
        "description": "Класс, представляющий источник данных блока скелетона.",
        "properties": {
          "uri": {
            "type": "string",
            "description": "URI для загрузки данных блока."
          },
          "countWeb": {
            "type": "integer",
            "description": "Количество элементов для веб-версии."
          },
          "count": {
            "type": "integer",
            "description": "Количество элементов."
          }
        }
      },
      "SkeletonTab": {
        "type": "object",
        "description": "Класс, представляющий вкладку скелетона.",
        "properties": {
          "id": {
            "type": "string",
            "description": "Идентификатор вкладки."
          },
          "title": {
            "type": "string",
            "description": "Заголовок вкладки."
          },
          "blocks": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/SkeletonBlock"
            },
            "description": "Блоки вкладки."
          }
        }
      },
      "SkeletonViewAllAction": {
        "type": "object",
        "description": "Класс, представляющий действие «Показать все» в блоке скелетона.",
        "properties": {
          "deeplink": {
            "type": "string",
            "description": "Диплинк для мобильного приложения."
          },
          "weblink": {
            "type": "string",
            "description": "Ссылка для веб-версии."
          }
        }
      },
      "SmartPreviewParams": {
        "type": "object",
        "description": "Класс, представляющий параметры умного превью трека.",
        "properties": {
          "durationMs": {
            "type": "integer",
            "description": "Длительность превью в миллисекундах."
          },
          "fade": {
            "$ref": "#/components/schemas/Fade",
            "description": "Параметры затухания превью."
          }
        }
      },
      "Station": {
        "type": "object",
        "description": "Класс, представляющий станцию.",
        "properties": {
          "id": {
            "$ref": "#/components/schemas/Id",
            "description": "Уникальный идентификатор станции."
          },
          "name": {
            "type": "string",
            "description": "Название станции."
          },
          "icon": {
            "$ref": "#/components/schemas/Icon",
            "description": "Иконка станции."
          },
          "mtsIcon": {
            "$ref": "#/components/schemas/Icon",
            "description": "Иконка TODO."
          },
          "geocellIcon": {
            "$ref": "#/components/schemas/Icon",
            "description": "Иконка TODO."
          },
          "idForFrom": {
            "type": "string",
            "description": "Категория (тип) станции."
          },
          "restrictions": {
            "$ref": "#/components/schemas/Restrictions",
            "description": "Ограничения для настроек станции старого формата."
          },
          "restrictions2": {
            "$ref": "#/components/schemas/Restrictions",
            "description": "Ограничения для настроек станции."
          },
          "fullImageUrl": {
            "type": "string",
            "description": "Ссылка на полное изображение."
          },
          "mtsFullImageUrl": {
            "type": "string",
            "description": "Ссылка на полную иконку."
          },
          "parentId": {
            "$ref": "#/components/schemas/Id",
            "description": "Уникальный идентификатор станции, являющейся предком текущей."
          },
          "specialContext": {
            "type": "boolean",
            "description": "Является ли станция особым контекстом волны."
          },
          "listeners": {
            "type": "integer",
            "description": "Количество слушателей персональной станции."
          },
          "login": {
            "type": "string",
            "description": "Логин владельца персональной станции."
          },
          "fullName": {
            "type": "string",
            "description": "Полное имя владельца персональной станции."
          },
          "displayName": {
            "type": "string",
            "description": "Отображаемое имя владельца персональной станции."
          },
          "visibility": {
            "type": "string",
            "description": "Видимость персональной станции (например, `public`)."
          }
        },
        "required": [
          "id",
          "name",
          "icon",
          "mtsIcon",
          "geocellIcon",
          "idForFrom",
          "restrictions",
          "restrictions2"
        ]
      },
      "StationData": {
        "type": "object",
        "description": "Класс, представляющий информацию о личной станции.",
        "properties": {
          "name": {
            "type": "string",
            "description": "Название станции."
          }
        },
        "required": [
          "name"
        ]
      },
      "StationResult": {
        "type": "object",
        "description": "Класс, представляющий радиостанцию с настройками.",
        "properties": {
          "station": {
            "$ref": "#/components/schemas/Station",
            "description": "Станция."
          },
          "settings": {
            "$ref": "#/components/schemas/RotorSettings",
            "description": "Первый набор настроек."
          },
          "settings2": {
            "$ref": "#/components/schemas/RotorSettings",
            "description": "Второй набор настроек."
          },
          "adParams": {
            "$ref": "#/components/schemas/AdParams",
            "description": "Настройки рекламы."
          },
          "explanation": {
            "type": "string",
            "description": "TODO."
          },
          "prerolls": {
            "type": "array",
            "items": {
              "type": "string"
            },
            "description": "Прероллы TODO."
          },
          "rupTitle": {
            "type": "string",
            "description": "Название станции / Моя волна TODO."
          },
          "rupDescription": {
            "type": "string",
            "description": "Описание станции."
          },
          "customName": {
            "type": "string",
            "description": "Название станции TODO."
          }
        },
        "required": [
          "station",
          "settings",
          "settings2",
          "adParams"
        ]
      },
      "StationTracksResult": {
        "type": "object",
        "description": "Класс, представляющий последовательность треков станции.",
        "properties": {
          "id": {
            "$ref": "#/components/schemas/Id",
            "description": "Уникальный идентификатор станции."
          },
          "sequence": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/Sequence"
            },
            "description": "Последовательность треков."
          },
          "batchId": {
            "type": "string",
            "description": "Уникальный идентификатор партии (последовательности)."
          },
          "pumpkin": {
            "type": "boolean",
            "description": "Хэллоуин."
          },
          "radioSessionId": {
            "type": "string",
            "description": "Уникальный идентификатор сессии радио, в рамках которой выданы треки."
          }
        },
        "required": [
          "id",
          "sequence",
          "batchId",
          "pumpkin"
        ]
      },
      "Stats": {
        "type": "object",
        "description": "Класс, представляющий статистику слушателей артиста.",
        "properties": {
          "lastMonthListeners": {
            "type": "integer",
            "description": "Количество слушателей за последний месяц."
          },
          "lastMonthListenersDelta": {
            "type": "integer",
            "description": "Изменение количества слушателей за последний месяц."
          }
        },
        "required": [
          "lastMonthListeners",
          "lastMonthListenersDelta"
        ]
      },
      "Status": {
        "type": "object",
        "description": "Класс, представляющий подробную информацию об аккаунте пользователя.",
        "properties": {
          "account": {
            "$ref": "#/components/schemas/Account",
            "description": "Основная информация об аккаунте"
          },
          "permissions": {
            "$ref": "#/components/schemas/Permissions",
            "description": "Информация о правах пользователя."
          },
          "advertisement": {
            "type": "string",
            "description": "Рекламное объявление."
          },
          "subscription": {
            "$ref": "#/components/schemas/Subscription",
            "description": "Информация о подписках."
          },
          "cacheLimit": {
            "type": "integer",
            "description": "Максимальное количество загруженных треков."
          },
          "subeditor": {
            "type": "boolean",
            "description": "Наличие статуса модератора проверки корректности информации."
          },
          "subeditorLevel": {
            "type": "integer",
            "description": "Уровень статуса модератора."
          },
          "plus": {
            "$ref": "#/components/schemas/Plus",
            "description": "Информация о Plus подписке."
          },
          "defaultEmail": {
            "type": "string",
            "description": "Основной e-mail адрес аккаунта."
          },
          "skipsPerHour": {
            "type": "integer",
            "description": "Количество переключение треков на радио в час."
          },
          "stationExists": {
            "type": "boolean",
            "description": "Наличие личной станции."
          },
          "stationData": {
            "$ref": "#/components/schemas/StationData",
            "description": "Информация о личной станции."
          },
          "barBelow": {
            "$ref": "#/components/schemas/Alert",
            "description": "Блок с предупреждениями о конце подписке и подарках."
          },
          "premiumRegion": {
            "type": "integer",
            "description": "Регион TODO."
          },
          "experiment": {
            "type": "integer",
            "description": "Включенная новая фича на аккаунте (её ID) TODO."
          },
          "pretrialActive": {
            "type": "boolean",
            "description": "TODO."
          },
          "userhash": {
            "type": "string",
            "description": "Хэш-код идентификатора пользователя."
          },
          "hasOptions": {
            "type": "array",
            "items": {
              "type": "string"
            },
            "description": "Подключённые опции (например, `bookmate`)."
          }
        },
        "required": [
          "account",
          "permissions"
        ]
      },
      "Subscription": {
        "type": "object",
        "description": "Класс, представляющий информацию о подписках пользователя.",
        "properties": {
          "nonAutoRenewableRemainder": {
            "$ref": "#/components/schemas/RenewableRemainder",
            "description": "Напоминание о продлении."
          },
          "autoRenewable": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/AutoRenewable"
            },
            "description": "Автопродление."
          },
          "familyAutoRenewable": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/AutoRenewable"
            },
            "description": "Автопродление семейной подписки."
          },
          "hadAnySubscription": {
            "type": "boolean",
            "description": "Наличие какой-либо подписки в прошлом. Не приходит в статусе аккаунта радио (`yandex_music.Client.rotor_account_status`)."
          },
          "operator": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/Operator"
            },
            "description": "Услуги сотового оператора."
          },
          "nonAutoRenewable": {
            "$ref": "#/components/schemas/NonAutoRenewable",
            "description": "Отключённое автопродление."
          },
          "canStartTrial": {
            "type": "boolean",
            "description": "Есть ли возможность начать пробный период."
          },
          "mcdonalds": {
            "type": "boolean",
            "description": "mcdonalds TODO."
          },
          "end": {
            "type": "string",
            "description": "Дата окончания."
          }
        },
        "required": [
          "nonAutoRenewableRemainder",
          "autoRenewable",
          "familyAutoRenewable"
        ]
      },
      "Suggestions": {
        "type": "object",
        "description": "Класс, представляющий подсказки при поиске.",
        "properties": {
          "best": {
            "$ref": "#/components/schemas/Best",
            "description": "Лучший результат."
          },
          "suggestions": {
            "type": "array",
            "items": {
              "type": "string"
            },
            "description": "Список подсказок-дополнений для поискового запроса."
          }
        },
        "required": [
          "best",
          "suggestions"
        ]
      },
      "Supplement": {
        "type": "object",
        "description": "Класс, представляющий дополнительную информацию о треке.",
        "properties": {
          "id": {
            "type": "integer",
            "description": "Уникальный идентификатор дополнительной информации."
          },
          "lyrics": {
            "$ref": "#/components/schemas/Lyrics",
            "description": "Текст песни."
          },
          "videos": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/VideoSupplement"
            },
            "description": "Видео."
          },
          "radioIsAvailable": {
            "type": "boolean",
            "description": "Доступно ли радио."
          },
          "description": {
            "type": "string",
            "description": "Полное описание эпизода подкаста."
          }
        },
        "required": [
          "id",
          "lyrics",
          "videos"
        ]
      },
      "Tag": {
        "type": "object",
        "description": "Класс, представляющий тег (подборку).",
        "properties": {
          "id": {
            "type": "string",
            "description": "Уникальный идентификатор тега."
          },
          "value": {
            "type": "string",
            "description": "Значение тега (название в lower case)."
          },
          "name": {
            "type": "string",
            "description": "Название тега (отображаемое)."
          },
          "ogDescription": {
            "type": "string",
            "description": "Описание тега для OpenGraph."
          },
          "ogImage": {
            "type": "string",
            "description": "Ссылка на изображение для OpenGraph."
          }
        },
        "required": [
          "id",
          "value",
          "name",
          "ogDescription"
        ]
      },
      "TagResult": {
        "type": "object",
        "description": "Класс, представляющий тег и его плейлисты.",
        "properties": {
          "tag": {
            "$ref": "#/components/schemas/Tag",
            "description": "Тег."
          },
          "ids": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/PlaylistId"
            },
            "description": "Уникальные идентификаторы плейлистов тега."
          }
        },
        "required": [
          "tag",
          "ids"
        ]
      },
      "Title": {
        "type": "object",
        "description": "Класс, представляющий заголовок жанра.",
        "properties": {
          "title": {
            "type": "string",
            "description": "Заголовок."
          },
          "fullTitle": {
            "type": "string",
            "description": "Полный заголовок."
          }
        },
        "required": [
          "title"
        ]
      },
      "Track": {
        "type": "object",
        "description": "Класс, представляющий трек.",
        "properties": {
          "id": {
            "type": [
              "string",
              "integer"
            ],
            "description": "Уникальный идентификатор."
          },
          "title": {
            "type": "string",
            "description": "Название."
          },
          "available": {
            "type": "boolean",
            "description": "Доступен ли для прослушивания."
          },
          "artists": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/Artist"
            },
            "description": "Исполнители."
          },
          "albums": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/Album"
            },
            "description": "Альбомы."
          },
          "availableForPremiumUsers": {
            "type": "boolean",
            "description": "Доступен ли для пользователей с подпиской."
          },
          "lyricsAvailable": {
            "type": "boolean",
            "description": "Доступен ли текст песни."
          },
          "poetryLoverMatches": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/PoetryLoverMatch"
            },
            "description": "Список слов TODO."
          },
          "best": {
            "type": "boolean",
            "description": "Лучшей ли трек TODO."
          },
          "realId": {
            "type": [
              "string",
              "integer"
            ],
            "description": "TODO."
          },
          "ogImage": {
            "type": "string",
            "description": "Ссылка на превью Open Graph."
          },
          "type": {
            "type": "string",
            "description": "Тип."
          },
          "coverUri": {
            "type": "string",
            "description": "Ссылка на изображение с обложкой."
          },
          "major": {
            "$ref": "#/components/schemas/Major",
            "description": "Мейджор-лейбл."
          },
          "durationMs": {
            "type": "integer",
            "description": "Длительность трека в миллисекундах."
          },
          "storageDir": {
            "type": "string",
            "description": "В какой папке на сервере хранится файл TODO."
          },
          "fileSize": {
            "type": "integer",
            "description": "Размер файла. TODO добавить единицу измерения."
          },
          "substituted": {
            "$ref": "#/components/schemas/Track",
            "description": "Замещённый трек."
          },
          "matchedTrack": {
            "$ref": "#/components/schemas/Track",
            "description": "Соответствующий трек TODO."
          },
          "normalization": {
            "$ref": "#/components/schemas/Normalization",
            "description": "Значения для нормализации трека."
          },
          "error": {
            "type": "string",
            "description": "Сообщение об ошибке."
          },
          "canPublish": {
            "type": "boolean",
            "description": "Может ли быть опубликован."
          },
          "state": {
            "type": "string",
            "description": "Состояние, например, playable."
          },
          "desiredVisibility": {
            "type": "string",
            "description": "Видимость трека."
          },
          "filename": {
            "type": "string",
            "description": "Название файла."
          },
          "userInfo": {
            "$ref": "#/components/schemas/User",
            "description": "Информация о пользователе, который загрузил трек."
          },
          "metaData": {
            "$ref": "#/components/schemas/MetaData",
            "description": "Информация о метаданных трека."
          },
          "regions": {
            "type": "array",
            "items": {
              "type": "string"
            },
            "description": "Регион TODO."
          },
          "availableAsRbt": {
            "type": "boolean",
            "description": "TODO."
          },
          "contentWarning": {
            "type": "string",
            "description": "Тип откровенного контента."
          },
          "explicit": {
            "type": "boolean",
            "description": "Содержит ли откровенный контент."
          },
          "previewDurationMs": {
            "type": "integer",
            "description": "TODO."
          },
          "availableFullWithoutPermission": {
            "type": "boolean",
            "description": "Доступен ли без подписки."
          },
          "version": {
            "type": "string",
            "description": "Версия."
          },
          "rememberPosition": {
            "type": "boolean",
            "description": "Если `True`, то запоминается последняя позиция прослушивания, иначе позиция не запоминается."
          },
          "backgroundVideoUri": {
            "type": "string",
            "description": "Ссылка на видеошот."
          },
          "shortDescription": {
            "type": "string",
            "description": "Краткое описание эпизода подкаста."
          },
          "isSuitableForChildren": {
            "type": "boolean",
            "description": "Подходит ли для детей TODO."
          },
          "trackSource": {
            "type": "string",
            "description": "Источник трека."
          },
          "availableForOptions": {
            "type": "array",
            "items": {
              "type": "string"
            },
            "description": "Возможные опции для трека."
          },
          "r128": {
            "$ref": "#/components/schemas/R128",
            "description": "Параметры нормализации громкости трека в соответствии с рекомендацией EBU R 128."
          },
          "lyricsInfo": {
            "$ref": "#/components/schemas/LyricsInfo",
            "description": "Данные о наличии текстов трека."
          },
          "trackSharingFlag": {
            "type": "string",
            "description": "TODO."
          },
          "derivedColors": {
            "$ref": "#/components/schemas/CoverDerivedColors",
            "description": "Производные цвета обложки трека."
          },
          "fade": {
            "$ref": "#/components/schemas/Fade",
            "description": "Параметры затухания трека."
          },
          "smartPreviewParams": {
            "$ref": "#/components/schemas/SmartPreviewParams",
            "description": "Параметры умного превью трека."
          },
          "specialAudioResources": {
            "type": "array",
            "items": {
              "type": "string"
            },
            "description": "Специальные аудиоресурсы."
          },
          "disclaimers": {
            "type": "array",
            "items": {
              "type": "string"
            },
            "description": "Список дисклеймеров."
          },
          "backgroundVideoId": {
            "type": "string",
            "description": "Уникальный идентификатор видеошота."
          },
          "playerId": {
            "type": "string",
            "description": "Идентификатор плеера видеошота."
          },
          "mixFade": {
            "$ref": "#/components/schemas/Fade",
            "description": "Параметры затухания трека при сведении в радио."
          }
        },
        "required": [
          "id"
        ]
      },
      "TrackFullInfo": {
        "type": "object",
        "description": "Класс, представляющий полную информацию о треке.",
        "properties": {
          "track": {
            "$ref": "#/components/schemas/Track",
            "description": "Трек."
          },
          "similarTracks": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/Track"
            },
            "description": "Список похожих треков."
          },
          "alsoInAlbums": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/Track"
            },
            "description": "Список треков из других альбомов."
          },
          "aliases": {
            "type": "array",
            "items": {
              "type": "string"
            },
            "description": "Список псевдонимов трека."
          },
          "artists": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/Artist"
            },
            "description": "Список артистов с подробной информацией."
          }
        }
      },
      "TrackId": {
        "type": "object",
        "description": "Класс, представляющий уникальный идентификатор трека.",
        "properties": {
          "id": {
            "type": "integer",
            "description": "Уникальный идентификатор трека."
          },
          "trackId": {
            "type": "integer",
            "description": "Уникальный идентификатор трека."
          },
          "albumId": {
            "type": "integer",
            "description": "Уникальный идентификатор альбома."
          },
          "from": {
            "type": "string",
            "description": "Откуда был получен этот объект."
          }
        }
      },
      "TrackLyrics": {
        "type": "object",
        "description": "Класс, представляющий текст трека.",
        "properties": {
          "downloadUrl": {
            "type": "string",
            "description": "Ссылка на скачивание текста."
          },
          "lyricId": {
            "type": "integer",
            "description": "Уникальный идентификатор текста."
          },
          "externalLyricId": {
            "type": "string",
            "description": "Уникальный идентификатор текста на сервисе предоставляющий текст."
          },
          "writers": {
            "type": "array",
            "items": {
              "type": "string"
            },
            "description": "Авторы текста."
          },
          "major": {
            "$ref": "#/components/schemas/LyricsMajor",
            "description": "Сервис, откуда был получен текст."
          }
        },
        "required": [
          "downloadUrl",
          "lyricId",
          "externalLyricId",
          "writers",
          "major"
        ]
      },
      "TrackParameters": {
        "type": "object",
        "description": "Класс, представляющий параметры трека в радио.",
        "properties": {
          "bpm": {
            "type": "integer",
            "description": "Темп трека (ударов в минуту)."
          },
          "energy": {
            "type": "number",
            "description": "Энергичность трека."
          },
          "hue": {
            "type": "number",
            "description": "Оттенок трека."
          },
          "userCollectionHue": {
            "type": "integer",
            "description": "Оттенок коллекции пользователя."
          },
          "mixFade": {
            "$ref": "#/components/schemas/Fade",
            "description": "Параметры затухания трека при сведении."
          }
        }
      },
      "TrackPosition": {
        "type": "object",
        "description": "Класс, представляющий позицию трека.",
        "properties": {
          "volume": {
            "type": "integer",
            "description": "Номер альбома."
          },
          "index": {
            "type": "integer",
            "description": "Порядковый номер трека."
          }
        },
        "required": [
          "volume",
          "index"
        ]
      },
      "TrackShort": {
        "type": "object",
        "description": "Класс, представляющий укороченную версию трека с неполными данными.",
        "properties": {
          "id": {
            "type": [
              "string",
              "integer"
            ],
            "description": "Уникальный идентификатор трека."
          },
          "timestamp": {
            "type": "string",
            "description": "Дата TODO."
          },
          "albumId": {
            "type": "string",
            "description": "Уникальный идентификатор альбома."
          },
          "playCount": {
            "type": "integer",
            "description": "Количество проигрываний."
          },
          "recent": {
            "type": "boolean",
            "description": "Недавний."
          },
          "chart": {
            "$ref": "#/components/schemas/Chart",
            "description": "Позиция в чарте."
          },
          "track": {
            "$ref": "#/components/schemas/Track",
            "description": "Полная версия трека."
          },
          "originalIndex": {
            "type": "integer",
            "description": "Индекс в плейлисте или альбоме. TODO уточнить про альбом."
          }
        },
        "required": [
          "id",
          "timestamp"
        ]
      },
      "TrackShortOld": {
        "type": "object",
        "description": "Класс, представляющий сокращённую версию трека.",
        "properties": {
          "trackId": {
            "$ref": "#/components/schemas/TrackId",
            "description": "Уникальный идентификатор трека."
          },
          "timestamp": {
            "type": "string",
            "description": "Дата TODO."
          }
        },
        "required": [
          "trackId",
          "timestamp"
        ]
      },
      "TrackTrailer": {
        "type": "object",
        "description": "Класс, представляющий трейлер трека.",
        "properties": {
          "title": {
            "type": "string",
            "description": "Заголовок трейлера."
          },
          "track": {
            "$ref": "#/components/schemas/Track",
            "description": "Трек."
          }
        }
      },
      "TrackWithAds": {
        "type": "object",
        "description": "Класс, представляющий трек с рекламой.",
        "properties": {
          "type": {
            "type": "string",
            "description": "Тип TODO."
          },
          "track": {
            "$ref": "#/components/schemas/Track",
            "description": "Трек."
          }
        },
        "required": [
          "type",
          "track"
        ]
      },
      "TracksList": {
        "type": "object",
        "description": "Класс, представляющий список треков.",
        "properties": {
          "uid": {
            "type": "integer",
            "description": "Уникальный идентификатор пользователя."
          },
          "revision": {
            "type": "integer",
            "description": "Актуальность данных TODO."
          },
          "tracks": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/TrackShort"
            },
            "description": "Список треков в укороченной версии."
          }
        },
        "required": [
          "uid",
          "revision",
          "tracks"
        ]
      },
      "TrailerInfo": {
        "type": "object",
        "description": "Класс, представляющий информацию о трейлере.",
        "properties": {
          "title": {
            "type": "string",
            "description": "Заголовок трейлера."
          },
          "tracks": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/Track"
            },
            "description": "Список треков трейлера."
          }
        }
      },
      "User": {
        "type": "object",
        "description": "Класс, представляющий пользователя.",
        "properties": {
          "uid": {
            "type": "integer",
            "description": "Идентификатор пользователя."
          },
          "login": {
            "type": "string",
            "description": "Логин пользователя."
          },
          "name": {
            "type": "string",
            "description": "Имя пользователя."
          },
          "displayName": {
            "type": "string",
            "description": "Отображаемое пользователя."
          },
          "fullName": {
            "type": "string",
            "description": "Полное имя пользователя."
          },
          "sex": {
            "type": "string",
            "description": "Пол пользователя."
          },
          "verified": {
            "type": "boolean",
            "description": "Участвует ли пользователь в генерации плейлистов дня и т.д., и т.п."
          },
          "regions": {
            "type": "array",
            "items": {
              "type": "string"
            },
            "description": "Список регионов TODO."
          }
        },
        "required": [
          "uid"
        ]
      },
      "UserSettings": {
        "type": "object",
        "description": "Класс, представляющий настройки пользователя.",
        "properties": {
          "uid": {
            "type": "integer",
            "description": "Уникальный идентификатор пользователя."
          },
          "lastFmScrobblingEnabled": {
            "type": "boolean",
            "description": "Скробблинг lastfm."
          },
          "shuffleEnabled": {
            "type": "boolean",
            "description": "Переключать треки в случайном порядке."
          },
          "volumePercents": {
            "type": "integer",
            "description": "Громкость звука в процентах."
          },
          "modified": {
            "type": "string",
            "description": "Дата изменения настроек."
          },
          "facebookScrobblingEnabled": {
            "type": "boolean",
            "description": "Скробблинг facebook."
          },
          "addNewTrackOnPlaylistTop": {
            "type": "boolean",
            "description": "Добавлять новые треки в начало плейлиста."
          },
          "userMusicVisibility": {
            "type": "string",
            "description": "Публичный доступ к моей фонотеке."
          },
          "userSocialVisibility": {
            "type": "string",
            "description": "Показывать соцсети на странице."
          },
          "rbtDisabled": {
            "type": "boolean",
            "description": "TODO (неиспользуемая фича)."
          },
          "theme": {
            "type": "string",
            "description": "Тема оформления."
          },
          "promosDisabled": {
            "type": "boolean",
            "description": "Не показывать рекламируемый контент)."
          },
          "autoPlayRadio": {
            "type": "boolean",
            "description": "Бесконечный поток музыки."
          },
          "syncQueueEnabled": {
            "type": "boolean",
            "description": "Синхронизация очередей между устройствами."
          },
          "adsDisabled": {
            "type": "boolean",
            "description": "Не показывать рекламу."
          },
          "diskEnabled": {
            "type": "boolean",
            "description": "TODO."
          },
          "showDiskTracksInLibrary": {
            "type": "boolean",
            "description": "Показывать локальные треки в библиотеке."
          }
        },
        "required": [
          "uid",
          "lastFmScrobblingEnabled",
          "shuffleEnabled",
          "volumePercents",
          "modified",
          "facebookScrobblingEnabled",
          "addNewTrackOnPlaylistTop",
          "userMusicVisibility",
          "userSocialVisibility",
          "rbtDisabled",
          "theme",
          "promosDisabled",
          "autoPlayRadio",
          "syncQueueEnabled"
        ]
      },
      "Value": {
        "type": "object",
        "description": "Класс, представляющий значение(переменную).",
        "properties": {
          "value": {
            "type": [
              "string",
              "integer"
            ],
            "description": "Значение."
          },
          "name": {
            "type": "string",
            "description": "Название."
          },
          "imageUrl": {
            "type": "string",
            "description": "Ссылка на изображение значения."
          },
          "serializedSeed": {
            "type": "string",
            "description": "Значение в виде сида для радио (например, `settingDiversity:favorite`)."
          },
          "unspecified": {
            "type": "boolean",
            "description": "Является ли значение значением по умолчанию («Любое»)."
          }
        },
        "required": [
          "value",
          "name"
        ]
      },
      "Video": {
        "type": "object",
        "description": "Класс, представляющий видео.",
        "properties": {
          "title": {
            "type": "string"
          },
          "cover": {
            "type": "string"
          },
          "embedUrl": {
            "type": "string"
          },
          "provider": {
            "type": "string"
          },
          "providerVideoId": {
            "type": [
              "string",
              "integer"
            ]
          },
          "youtubeUrl": {
            "type": "string"
          },
          "thumbnailUrl": {
            "type": "string"
          },
          "duration": {
            "type": "integer"
          },
          "text": {
            "type": "string"
          },
          "htmlAutoPlayVideoPlayer": {
            "type": "string"
          },
          "regions": {
            "type": "array",
            "items": {
              "type": "string"
            }
          }
        },
        "required": [
          "title"
        ]
      },
      "VideoSupplement": {
        "type": "object",
        "description": "Класс, представляющий видеоклипы.",
        "properties": {
          "cover": {
            "type": "string",
            "description": "URL на обложку видео."
          },
          "provider": {
            "type": "string",
            "description": "Сервис поставляющий видео."
          },
          "title": {
            "type": "string",
            "description": "Название видео."
          },
          "providerVideoId": {
            "type": "string",
            "description": "Уникальный идентификатор видео на сервисе."
          },
          "url": {
            "type": "string",
            "description": "URL на видео."
          },
          "embedUrl": {
            "type": "string",
            "description": "URL на видео, находящегося на серверах Яндекса."
          },
          "embed": {
            "type": "string",
            "description": "HTML тег для встраивания видео."
          }
        },
        "required": [
          "cover",
          "provider"
        ]
      },
      "Vinyl": {
        "type": "object",
        "description": "Класс, представляющий виниловую пластинку.",
        "properties": {
          "url": {
            "type": "string",
            "description": "Ссылка на пластинку в магазине."
          },
          "title": {
            "type": "string",
            "description": "Заголовок."
          },
          "year": {
            "type": "integer",
            "description": "Год выпуска."
          },
          "price": {
            "type": "integer",
            "description": "Цена."
          },
          "media": {
            "type": "string",
            "description": "Средство распространения."
          },
          "offerId": {
            "type": "integer",
            "description": "Уникальный идентификатор предложения."
          },
          "artistIds": {
            "type": "array",
            "items": {
              "type": "integer"
            },
            "description": "Перечень уникальный идентификаторов исполнителей."
          },
          "picture": {
            "type": "string",
            "description": "Ссылка на обложку."
          }
        },
        "required": [
          "url",
          "title",
          "year",
          "price",
          "media",
          "offerId",
          "artistIds"
        ]
      },
      "Wave": {
        "type": "object",
        "description": "Класс, представляющий волну (персональную радиостанцию).",
        "properties": {
          "name": {
            "type": "string",
            "description": "Название волны."
          },
          "description": {
            "type": "string",
            "description": "Описание волны."
          },
          "seeds": {
            "type": "array",
            "items": {
              "type": "string"
            },
            "description": "Список сидов волны (например, ``album:12345``)."
          },
          "stationId": {
            "type": "string",
            "description": "Идентификатор станции волны (например, ``user:onyourwave``)."
          },
          "idForFrom": {
            "type": "string",
            "description": "Идентификатор волны для поля `from` в обратной связи."
          },
          "type": {
            "type": "string",
            "description": "Тип волны."
          }
        }
      },
      "WaveAgent": {
        "type": "object",
        "description": "Класс, представляющий агента волны.",
        "properties": {
          "animationUri": {
            "type": "string",
            "description": "URI анимации агента."
          },
          "cover": {
            "$ref": "#/components/schemas/Cover",
            "description": "Обложка агента."
          },
          "entity": {
            "$ref": "#/components/schemas/WaveAgentEntity",
            "description": "Сущность, связанная с агентом."
          }
        }
      },
      "WaveAgentEntity": {
        "type": "object",
        "description": "Класс, представляющий сущность агента волны.",
        "properties": {
          "type": {
            "type": "string",
            "description": "Тип сущности."
          }
        }
      },
      "WaveDefaultStation": {
        "type": "object",
        "description": "Класс, представляющий станцию волны по умолчанию.",
        "properties": {
          "stationId": {
            "type": "string",
            "description": "Идентификатор станции (например, ``user:12345``)."
          },
          "title": {
            "type": "string",
            "description": "Название станции."
          },
          "rupTitle": {
            "type": "string",
            "description": "Заголовок станции."
          },
          "rupDescription": {
            "type": "string",
            "description": "Описание станции."
          }
        }
      },
      "WaveSettings": {
        "type": "object",
        "description": "Класс, представляющий настройки волны.",
        "properties": {
          "defaultStation": {
            "$ref": "#/components/schemas/WaveDefaultStation",
            "description": "Станция волны по умолчанию."
          },
          "blocks": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/WaveSettingsBlock"
            },
            "description": "Блоки настроек."
          },
          "settingRestrictions": {
            "$ref": "#/components/schemas/Restrictions",
            "description": "Доступные значения настроек волны."
          }
        }
      },
      "WaveSettingsBlock": {
        "type": "object",
        "description": "Класс, представляющий блок настроек волны.",
        "properties": {
          "type": {
            "type": "string",
            "description": "Тип блока."
          },
          "items": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/Station"
            },
            "description": "Станции-контексты блока (например, занятия)."
          }
        }
      }
    }
  }
}
