144 lines
3.9 KiB
YAML
Executable File
144 lines
3.9 KiB
YAML
Executable File
_id: spc_2b420b2bed1d4d868807303a581fb8c1
|
||
type: ApiSpec
|
||
parentId: wrk_cd1160cf39f5497fa4711fe4fd6567de
|
||
modified: 1679919342812
|
||
created: 1679916396495
|
||
fileName: youtubekids.yaml
|
||
contents: >+
|
||
openapi: 3.0.3
|
||
|
||
|
||
info:
|
||
title: YouTube Kids Public API
|
||
description: For generate API REST clients for Feelter UGC
|
||
contact:
|
||
email: garin1221@yandex.ru
|
||
version: 1.0.0
|
||
|
||
servers:
|
||
- url: https://www.youtubekids.com/youtubei/v1
|
||
|
||
tags:
|
||
- name: browse
|
||
description: Browse resource content
|
||
|
||
paths:
|
||
|
||
# Получение контента определенного ресурса, {browseId}
|
||
/browse:
|
||
post:
|
||
tags:
|
||
- browse
|
||
summary: Browse resource content
|
||
description: Get content for resource
|
||
operationId: browse
|
||
requestBody:
|
||
content:
|
||
application/json:
|
||
schema:
|
||
$ref: '#/components/schemas/BrowseRequestPayload'
|
||
responses:
|
||
'200':
|
||
description: Successful operation
|
||
|
||
|
||
# Компоненты
|
||
|
||
components:
|
||
# Схемы данных
|
||
schemas:
|
||
|
||
# Параметры контента
|
||
KidsAppContentSettings:
|
||
type: object
|
||
properties:
|
||
corpusPreference:
|
||
type: string
|
||
example: KIDS_CORPUS_PREFERENCE_TWEEN
|
||
kidsNoSearchMode:
|
||
type: string
|
||
example: YT_KIDS_NO_SEARCH_MODE_OFF
|
||
|
||
# Конфигурация категорий
|
||
KidsAppCategorySettings:
|
||
type: object
|
||
properties:
|
||
enabledCategories:
|
||
type: array
|
||
example: ["approved_for_you", "black_joy", "camp", "collections", "earth", "explore", "favorites", "gaming", "halloween", "hero", "learning", "making", "move", "music", "reading", "shared_by_parents", "shows", "soccer", "sports", "spotlight", "winter"]
|
||
items:
|
||
type: string
|
||
|
||
# Параметры приложения
|
||
KidsAppInfo:
|
||
type: object
|
||
description: Kids application configuration
|
||
properties:
|
||
contentSettings:
|
||
$ref: '#/components/schemas/KidsAppContentSettings'
|
||
categorySettings:
|
||
$ref: '#/components/schemas/KidsAppCategorySettings'
|
||
|
||
# Информация о клиенте в запросе
|
||
RequestClient:
|
||
type: object
|
||
description: Client information
|
||
properties:
|
||
clientName:
|
||
type: string
|
||
example: WEB_KIDS
|
||
clientVersion:
|
||
type: string
|
||
example: 2.20230202.00.00
|
||
hl:
|
||
type: string
|
||
example: ru
|
||
gl:
|
||
type: string
|
||
example: RU
|
||
experimentsToken:
|
||
type: string
|
||
browserName:
|
||
type: string
|
||
example: Safari
|
||
deviceMake:
|
||
type: string
|
||
example: apple
|
||
browserVersion:
|
||
type: string
|
||
example: '16.2'
|
||
osName:
|
||
type: string
|
||
example: Macintosh
|
||
osVersion:
|
||
type: string
|
||
example: 10_15_7
|
||
platform:
|
||
type: string
|
||
example: DESKTOP
|
||
kidsAppInfo:
|
||
$ref: '#/components/schemas/KidsAppInfo'
|
||
|
||
# Контекст запроса
|
||
RequestContext:
|
||
type: object
|
||
description: Request context
|
||
properties:
|
||
client:
|
||
$ref: '#/components/schemas/RequestClient'
|
||
|
||
# Данные для запроса на получение контента определенного ресурса
|
||
BrowseRequestPayload:
|
||
type: object
|
||
properties:
|
||
context:
|
||
$ref: '#/components/schemas/RequestContext'
|
||
browseId:
|
||
type: string
|
||
example: FEkids_home
|
||
|
||
|
||
|
||
|
||
contentType: yaml
|