2023-04-04 19:45:55 +00:00
|
|
|
|
openapi: 3.0.3
|
|
|
|
|
|
|
|
|
|
info:
|
|
|
|
|
title: YouTube Kids Public API
|
|
|
|
|
description: For generate API REST clients for Feelter UGC
|
|
|
|
|
contact:
|
|
|
|
|
email: garin1221@yandex.ru
|
2023-08-22 14:46:51 +00:00
|
|
|
|
version: 0.0.2
|
2023-04-04 19:45:55 +00:00
|
|
|
|
|
|
|
|
|
servers:
|
|
|
|
|
- url: https://www.youtubekids.com/youtubei/v1
|
2023-08-22 14:46:51 +00:00
|
|
|
|
description: Original YoutubeKids API Server V1
|
2023-04-04 19:45:55 +00:00
|
|
|
|
|
|
|
|
|
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:
|
|
|
|
|
required: true
|
|
|
|
|
content:
|
|
|
|
|
application/json:
|
|
|
|
|
schema:
|
|
|
|
|
$ref: '#/components/schemas/BrowseRequestPayload'
|
|
|
|
|
responses:
|
|
|
|
|
'200':
|
|
|
|
|
description: OK
|
|
|
|
|
content:
|
|
|
|
|
'application/json':
|
|
|
|
|
"schema":
|
|
|
|
|
$ref: '#/components/schemas/BrowseResponsePayload'
|
2023-08-22 14:46:51 +00:00
|
|
|
|
default:
|
|
|
|
|
description: Unexpected error
|
2023-04-04 19:45:55 +00:00
|
|
|
|
content:
|
|
|
|
|
'application/json':
|
|
|
|
|
"schema":
|
|
|
|
|
$ref: '#/components/schemas/ErrorResponsePayload'
|
|
|
|
|
|
|
|
|
|
# Компоненты
|
|
|
|
|
components:
|
|
|
|
|
# Схемы данных
|
|
|
|
|
schemas:
|
|
|
|
|
|
|
|
|
|
# Ошибка
|
|
|
|
|
Error:
|
|
|
|
|
type: object
|
2023-08-22 14:46:51 +00:00
|
|
|
|
required:
|
|
|
|
|
- message
|
2023-04-04 19:45:55 +00:00
|
|
|
|
properties:
|
|
|
|
|
message:
|
|
|
|
|
type: string
|
|
|
|
|
domain:
|
|
|
|
|
type: string
|
|
|
|
|
reason:
|
|
|
|
|
type: string
|
|
|
|
|
|
|
|
|
|
# Доступность данных
|
|
|
|
|
AccessibilityData:
|
|
|
|
|
type: object
|
|
|
|
|
properties:
|
|
|
|
|
label:
|
|
|
|
|
type: string
|
|
|
|
|
|
|
|
|
|
# Доступность
|
|
|
|
|
Accessibility:
|
|
|
|
|
type: object
|
|
|
|
|
properties:
|
|
|
|
|
accessibilityData:
|
|
|
|
|
$ref: '#/components/schemas/AccessibilityData'
|
|
|
|
|
|
|
|
|
|
# WatchEndpoint
|
|
|
|
|
WatchEndpoint:
|
|
|
|
|
type: object
|
|
|
|
|
properties:
|
|
|
|
|
videoId:
|
|
|
|
|
type: string
|
|
|
|
|
|
|
|
|
|
# BrowseEndpoint
|
|
|
|
|
BrowseEndpoint:
|
|
|
|
|
type: object
|
|
|
|
|
properties:
|
|
|
|
|
browseId:
|
|
|
|
|
type: string
|
|
|
|
|
canonicalBaseUrl:
|
|
|
|
|
type: string
|
|
|
|
|
|
|
|
|
|
# Конечная точка навигации
|
|
|
|
|
NavigationEndpoint:
|
|
|
|
|
type: object
|
|
|
|
|
properties:
|
|
|
|
|
clickTrackingParams:
|
|
|
|
|
type: string
|
|
|
|
|
watchEndpoint:
|
|
|
|
|
$ref: '#/components/schemas/WatchEndpoint'
|
|
|
|
|
browseEndpoint:
|
|
|
|
|
$ref: '#/components/schemas/BrowseEndpoint'
|
|
|
|
|
|
|
|
|
|
# Текст -> Runs
|
|
|
|
|
TextRun:
|
|
|
|
|
type: object
|
2023-08-22 14:46:51 +00:00
|
|
|
|
required:
|
|
|
|
|
- text
|
2023-04-04 19:45:55 +00:00
|
|
|
|
properties:
|
|
|
|
|
text:
|
|
|
|
|
type: string
|
|
|
|
|
navigationEndpoint:
|
|
|
|
|
$ref: '#/components/schemas/NavigationEndpoint'
|
|
|
|
|
|
|
|
|
|
# Текст
|
|
|
|
|
Text:
|
|
|
|
|
type: object
|
2023-08-22 14:46:51 +00:00
|
|
|
|
required:
|
|
|
|
|
- runs
|
2023-04-04 19:45:55 +00:00
|
|
|
|
properties:
|
|
|
|
|
runs:
|
|
|
|
|
type: array
|
|
|
|
|
items:
|
|
|
|
|
$ref: '#/components/schemas/TextRun'
|
|
|
|
|
accessibility:
|
|
|
|
|
$ref: '#/components/schemas/Accessibility'
|
|
|
|
|
|
|
|
|
|
# Строковый параметр ключ-зачение
|
|
|
|
|
KeyStringValue:
|
|
|
|
|
type: object
|
2023-08-22 14:46:51 +00:00
|
|
|
|
required:
|
|
|
|
|
- key
|
|
|
|
|
- value
|
2023-04-04 19:45:55 +00:00
|
|
|
|
properties:
|
|
|
|
|
key:
|
|
|
|
|
type: string
|
|
|
|
|
value:
|
|
|
|
|
type: string
|
|
|
|
|
|
|
|
|
|
# Ассеты категории
|
|
|
|
|
CategoryAssets:
|
|
|
|
|
type: object
|
2023-08-22 14:46:51 +00:00
|
|
|
|
required:
|
|
|
|
|
- assetKey
|
2023-04-04 19:45:55 +00:00
|
|
|
|
properties:
|
|
|
|
|
assetKey:
|
|
|
|
|
type: string
|
|
|
|
|
backgroundColor:
|
|
|
|
|
type: string
|
|
|
|
|
|
|
|
|
|
# Расширение для владельцев детских видео
|
|
|
|
|
KidsVideoOwnerExtension:
|
|
|
|
|
type: object
|
2023-08-22 14:46:51 +00:00
|
|
|
|
required:
|
|
|
|
|
- externalChannelId
|
2023-04-04 19:45:55 +00:00
|
|
|
|
properties:
|
|
|
|
|
externalChannelId:
|
|
|
|
|
type: string
|
|
|
|
|
|
|
|
|
|
# Thumbnail
|
|
|
|
|
Thumbnail:
|
|
|
|
|
type: object
|
2023-08-22 14:46:51 +00:00
|
|
|
|
required:
|
|
|
|
|
- url
|
|
|
|
|
- width
|
|
|
|
|
- height
|
2023-04-04 19:45:55 +00:00
|
|
|
|
properties:
|
|
|
|
|
url:
|
|
|
|
|
type: string
|
|
|
|
|
width:
|
2023-08-22 14:46:51 +00:00
|
|
|
|
type: integer
|
2023-04-04 19:45:55 +00:00
|
|
|
|
height:
|
2023-08-22 14:46:51 +00:00
|
|
|
|
type: integer
|
2023-04-04 19:45:55 +00:00
|
|
|
|
|
2023-08-22 14:46:51 +00:00
|
|
|
|
# Рендер карточки с видео
|
2023-04-04 19:45:55 +00:00
|
|
|
|
CompactVideoRenderer:
|
|
|
|
|
type: object
|
2023-08-22 14:46:51 +00:00
|
|
|
|
required:
|
|
|
|
|
- videoId
|
|
|
|
|
- title
|
|
|
|
|
- viewCountText
|
|
|
|
|
- trackingParams
|
|
|
|
|
- kidsVideoOwnerExtension
|
2023-04-04 19:45:55 +00:00
|
|
|
|
properties:
|
|
|
|
|
videoId:
|
|
|
|
|
type: string
|
|
|
|
|
thumbnail:
|
|
|
|
|
type: object
|
|
|
|
|
properties:
|
|
|
|
|
thumbnails:
|
|
|
|
|
type: array
|
|
|
|
|
items:
|
|
|
|
|
$ref: '#/components/schemas/Thumbnail'
|
|
|
|
|
title:
|
|
|
|
|
$ref: '#/components/schemas/Text'
|
|
|
|
|
longBylineText:
|
|
|
|
|
$ref: '#/components/schemas/Text'
|
|
|
|
|
publishedTimeText:
|
|
|
|
|
$ref: '#/components/schemas/Text'
|
|
|
|
|
viewCountText:
|
|
|
|
|
$ref: '#/components/schemas/Text'
|
|
|
|
|
lengthText:
|
|
|
|
|
$ref: '#/components/schemas/Text'
|
|
|
|
|
navigationEndpoint:
|
|
|
|
|
$ref: '#/components/schemas/NavigationEndpoint'
|
|
|
|
|
shortBylineText:
|
|
|
|
|
$ref: '#/components/schemas/Text'
|
|
|
|
|
channelThumbnail:
|
|
|
|
|
type: object
|
|
|
|
|
properties:
|
|
|
|
|
thumbnails:
|
|
|
|
|
type: array
|
|
|
|
|
items:
|
|
|
|
|
$ref: '#/components/schemas/Thumbnail'
|
|
|
|
|
trackingParams:
|
|
|
|
|
type: string
|
|
|
|
|
shortViewCountText:
|
|
|
|
|
$ref: '#/components/schemas/Text'
|
|
|
|
|
accessibility:
|
|
|
|
|
$ref: '#/components/schemas/Accessibility'
|
|
|
|
|
kidsVideoOwnerExtension:
|
|
|
|
|
$ref: '#/components/schemas/KidsVideoOwnerExtension'
|
|
|
|
|
|
2023-08-22 14:46:51 +00:00
|
|
|
|
# Рендер карточки с плейлистом
|
|
|
|
|
CompactPlaylistRenderer:
|
|
|
|
|
type: object
|
|
|
|
|
required:
|
|
|
|
|
- playlistId
|
|
|
|
|
- title
|
|
|
|
|
- viewCountText
|
|
|
|
|
- trackingParams
|
|
|
|
|
properties:
|
|
|
|
|
playlistId:
|
|
|
|
|
type: string
|
|
|
|
|
thumbnail:
|
|
|
|
|
type: object
|
|
|
|
|
properties:
|
|
|
|
|
thumbnails:
|
|
|
|
|
type: array
|
|
|
|
|
items:
|
|
|
|
|
$ref: '#/components/schemas/Thumbnail'
|
|
|
|
|
title:
|
|
|
|
|
$ref: '#/components/schemas/Text'
|
|
|
|
|
shortBylineText:
|
|
|
|
|
$ref: '#/components/schemas/Text'
|
|
|
|
|
videoCountText:
|
|
|
|
|
$ref: '#/components/schemas/Text'
|
|
|
|
|
navigationEndpoint:
|
|
|
|
|
$ref: '#/components/schemas/NavigationEndpoint'
|
|
|
|
|
videoCountShortText:
|
|
|
|
|
$ref: '#/components/schemas/Text'
|
|
|
|
|
trackingParams:
|
|
|
|
|
type: string
|
|
|
|
|
sidebarThumbnails:
|
|
|
|
|
type: array
|
|
|
|
|
items:
|
|
|
|
|
type: object
|
|
|
|
|
properties:
|
|
|
|
|
thumbnails:
|
|
|
|
|
type: array
|
|
|
|
|
items:
|
|
|
|
|
$ref: '#/components/schemas/Thumbnail'
|
|
|
|
|
thumbnailText:
|
|
|
|
|
$ref: '#/components/schemas/Text'
|
|
|
|
|
shareUrl:
|
|
|
|
|
type: string
|
|
|
|
|
longBylineText:
|
|
|
|
|
$ref: '#/components/schemas/Text'
|
|
|
|
|
tvBanner:
|
|
|
|
|
type: object
|
|
|
|
|
properties:
|
|
|
|
|
thumbnails:
|
|
|
|
|
type: array
|
|
|
|
|
items:
|
|
|
|
|
$ref: '#/components/schemas/Thumbnail'
|
|
|
|
|
|
|
|
|
|
# Рендер карточки с каналом
|
|
|
|
|
CompactChannelRenderer:
|
|
|
|
|
type: object
|
|
|
|
|
required:
|
|
|
|
|
- channelId
|
|
|
|
|
- displayName
|
|
|
|
|
- videoCountText
|
|
|
|
|
- title
|
|
|
|
|
- trackingParams
|
|
|
|
|
properties:
|
|
|
|
|
channelId:
|
|
|
|
|
type: string
|
|
|
|
|
thumbnail:
|
|
|
|
|
type: object
|
|
|
|
|
properties:
|
|
|
|
|
thumbnails:
|
|
|
|
|
type: array
|
|
|
|
|
items:
|
|
|
|
|
$ref: '#/components/schemas/Thumbnail'
|
|
|
|
|
displayName:
|
|
|
|
|
$ref: '#/components/schemas/Text'
|
|
|
|
|
videoCountText:
|
|
|
|
|
$ref: '#/components/schemas/Text'
|
|
|
|
|
subscriberCountText:
|
|
|
|
|
$ref: '#/components/schemas/Text'
|
|
|
|
|
navigationEndpoint:
|
|
|
|
|
$ref: '#/components/schemas/NavigationEndpoint'
|
|
|
|
|
title:
|
|
|
|
|
$ref: '#/components/schemas/Text'
|
|
|
|
|
trackingParams:
|
|
|
|
|
type: string
|
|
|
|
|
|
2023-04-04 19:45:55 +00:00
|
|
|
|
# Средство визуализации раздела элемента
|
|
|
|
|
ItemSectionRenderer:
|
|
|
|
|
type: object
|
2023-08-22 14:46:51 +00:00
|
|
|
|
required:
|
|
|
|
|
- contents
|
|
|
|
|
- trackingParams
|
2023-04-04 19:45:55 +00:00
|
|
|
|
properties:
|
|
|
|
|
contents:
|
|
|
|
|
type: array
|
|
|
|
|
items:
|
|
|
|
|
type: object
|
|
|
|
|
properties:
|
2023-08-22 14:46:51 +00:00
|
|
|
|
compactPlaylistRenderer:
|
|
|
|
|
$ref: '#/components/schemas/CompactPlaylistRenderer'
|
|
|
|
|
compactChannelRenderer:
|
|
|
|
|
$ref: '#/components/schemas/CompactChannelRenderer'
|
2023-04-04 19:45:55 +00:00
|
|
|
|
compactVideoRenderer:
|
|
|
|
|
$ref: '#/components/schemas/CompactVideoRenderer'
|
|
|
|
|
trackingParams:
|
|
|
|
|
type: string
|
|
|
|
|
|
|
|
|
|
# Рендер списка разделов
|
|
|
|
|
SectionListRenderer:
|
|
|
|
|
type: object
|
|
|
|
|
properties:
|
|
|
|
|
contents:
|
|
|
|
|
type: array
|
|
|
|
|
items:
|
|
|
|
|
type: object
|
|
|
|
|
properties:
|
|
|
|
|
itemSectionRenderer:
|
|
|
|
|
$ref: '#/components/schemas/ItemSectionRenderer'
|
|
|
|
|
trackingParams:
|
|
|
|
|
type: string
|
|
|
|
|
|
|
|
|
|
# Визуализатор закрепленных сечений
|
|
|
|
|
AnchoredSectionRenderer:
|
|
|
|
|
type: object
|
|
|
|
|
properties:
|
|
|
|
|
title:
|
|
|
|
|
type: string
|
|
|
|
|
content:
|
|
|
|
|
type: object
|
|
|
|
|
properties:
|
|
|
|
|
sectionListRenderer:
|
|
|
|
|
$ref: '#/components/schemas/SectionListRenderer'
|
|
|
|
|
trackingParams:
|
|
|
|
|
type: string
|
|
|
|
|
navigationEndpoint:
|
|
|
|
|
$ref: '#/components/schemas/NavigationEndpoint'
|
|
|
|
|
categoryAssets:
|
|
|
|
|
$ref: '#/components/schemas/CategoryAssets'
|
|
|
|
|
categoryType:
|
|
|
|
|
type: string
|
|
|
|
|
|
|
|
|
|
# Якорь экрана
|
|
|
|
|
ScreenAnchor:
|
|
|
|
|
type: object
|
|
|
|
|
properties:
|
|
|
|
|
anchoredSectionRenderer:
|
|
|
|
|
$ref: '#/components/schemas/AnchoredSectionRenderer'
|
|
|
|
|
|
|
|
|
|
# Рендерер экрана
|
|
|
|
|
ScreenRenderer:
|
|
|
|
|
type: object
|
|
|
|
|
properties:
|
|
|
|
|
anchors:
|
|
|
|
|
type: array
|
|
|
|
|
items:
|
|
|
|
|
$ref: '#/components/schemas/ScreenAnchor'
|
|
|
|
|
|
|
|
|
|
# Средство визуализации заголовка категории
|
|
|
|
|
CategoriesHeaderRenderer:
|
|
|
|
|
type: object
|
|
|
|
|
properties:
|
|
|
|
|
trackingParams:
|
|
|
|
|
type: string
|
|
|
|
|
# TODO
|
|
|
|
|
|
|
|
|
|
# Параметры контента
|
|
|
|
|
KidsAppContentSettings:
|
|
|
|
|
type: object
|
2023-08-22 14:46:51 +00:00
|
|
|
|
required:
|
|
|
|
|
- corpusPreference
|
|
|
|
|
- kidsNoSearchMode
|
2023-04-04 19:45:55 +00:00
|
|
|
|
properties:
|
|
|
|
|
corpusPreference:
|
|
|
|
|
type: string
|
2023-08-22 14:46:51 +00:00
|
|
|
|
enum:
|
|
|
|
|
- KIDS_CORPUS_PREFERENCE_UNKNOWN # unknown
|
|
|
|
|
- KIDS_CORPUS_PREFERENCE_YOUNGER # (0-4 years)
|
|
|
|
|
- KIDS_CORPUS_PREFERENCE_TWEEN # (5-7)
|
|
|
|
|
- KIDS_CORPUS_PREFERENCE_PAM_YOUNGER
|
|
|
|
|
- KIDS_CORPUS_PREFERENCE_PAM_TWEEN
|
|
|
|
|
- KIDS_CORPUS_PREFERENCE_PRESCHOOL # (8-12)
|
2023-04-04 19:45:55 +00:00
|
|
|
|
example: KIDS_CORPUS_PREFERENCE_TWEEN
|
2023-08-22 14:46:51 +00:00
|
|
|
|
default: KIDS_CORPUS_PREFERENCE_TWEEN
|
2023-04-04 19:45:55 +00:00
|
|
|
|
kidsNoSearchMode:
|
|
|
|
|
type: string
|
2023-08-22 14:46:51 +00:00
|
|
|
|
enum:
|
|
|
|
|
- YT_KIDS_NO_SEARCH_MODE_UNKNOWN # unknown
|
|
|
|
|
- YT_KIDS_NO_SEARCH_MODE_ON
|
|
|
|
|
- YT_KIDS_NO_SEARCH_MODE_OFF
|
2023-04-04 19:45:55 +00:00
|
|
|
|
example: YT_KIDS_NO_SEARCH_MODE_OFF
|
2023-08-22 14:46:51 +00:00
|
|
|
|
default: YT_KIDS_NO_SEARCH_MODE_OFF
|
2023-04-04 19:45:55 +00:00
|
|
|
|
|
|
|
|
|
# Конфигурация категорий
|
|
|
|
|
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
|
2023-08-22 14:46:51 +00:00
|
|
|
|
required:
|
|
|
|
|
- kidsAppInfo
|
2023-04-04 19:45:55 +00:00
|
|
|
|
properties:
|
|
|
|
|
clientName:
|
|
|
|
|
type: string
|
|
|
|
|
example: WEB_KIDS
|
2023-08-22 14:46:51 +00:00
|
|
|
|
default: WEB_KIDS
|
2023-04-04 19:45:55 +00:00
|
|
|
|
clientVersion:
|
|
|
|
|
type: string
|
2023-08-22 14:46:51 +00:00
|
|
|
|
example: 2.20230817.00.00
|
|
|
|
|
default: 2.20230817.00.00
|
2023-04-04 19:45:55 +00:00
|
|
|
|
hl:
|
|
|
|
|
type: string
|
|
|
|
|
example: ru
|
2023-08-22 14:46:51 +00:00
|
|
|
|
default: ru
|
2023-04-04 19:45:55 +00:00
|
|
|
|
gl:
|
|
|
|
|
type: string
|
|
|
|
|
example: RU
|
2023-08-22 14:46:51 +00:00
|
|
|
|
default: RU
|
2023-04-04 19:45:55 +00:00
|
|
|
|
experimentsToken:
|
|
|
|
|
type: string
|
|
|
|
|
browserName:
|
|
|
|
|
type: string
|
|
|
|
|
example: Safari
|
2023-08-22 14:46:51 +00:00
|
|
|
|
default: Safari
|
2023-04-04 19:45:55 +00:00
|
|
|
|
deviceMake:
|
|
|
|
|
type: string
|
|
|
|
|
example: apple
|
2023-08-22 14:46:51 +00:00
|
|
|
|
default: apple
|
2023-04-04 19:45:55 +00:00
|
|
|
|
browserVersion:
|
|
|
|
|
type: string
|
|
|
|
|
example: '16.2'
|
2023-08-22 14:46:51 +00:00
|
|
|
|
default: '16.2'
|
2023-04-04 19:45:55 +00:00
|
|
|
|
osName:
|
|
|
|
|
type: string
|
|
|
|
|
example: Macintosh
|
2023-08-22 14:46:51 +00:00
|
|
|
|
default: Macintosh
|
2023-04-04 19:45:55 +00:00
|
|
|
|
osVersion:
|
|
|
|
|
type: string
|
2023-08-22 14:46:51 +00:00
|
|
|
|
example: '10_15_7'
|
|
|
|
|
default: '10_15_7'
|
2023-04-04 19:45:55 +00:00
|
|
|
|
platform:
|
|
|
|
|
type: string
|
|
|
|
|
example: DESKTOP
|
2023-08-22 14:46:51 +00:00
|
|
|
|
default: DESKTOP
|
2023-04-04 19:45:55 +00:00
|
|
|
|
kidsAppInfo:
|
|
|
|
|
$ref: '#/components/schemas/KidsAppInfo'
|
|
|
|
|
|
|
|
|
|
# Контекст запроса
|
|
|
|
|
RequestContext:
|
|
|
|
|
type: object
|
|
|
|
|
description: Request context
|
2023-08-22 14:46:51 +00:00
|
|
|
|
required:
|
|
|
|
|
- client
|
2023-04-04 19:45:55 +00:00
|
|
|
|
properties:
|
|
|
|
|
client:
|
|
|
|
|
$ref: '#/components/schemas/RequestClient'
|
|
|
|
|
|
|
|
|
|
# Контекст ответа
|
|
|
|
|
ResponseContext:
|
|
|
|
|
type: object
|
|
|
|
|
description: Response context
|
|
|
|
|
properties:
|
|
|
|
|
visitorData:
|
|
|
|
|
type: string
|
|
|
|
|
maxAgeSeconds:
|
2023-08-22 14:46:51 +00:00
|
|
|
|
type: integer
|
2023-04-04 19:45:55 +00:00
|
|
|
|
serviceTrackingParams:
|
|
|
|
|
type: array
|
|
|
|
|
items:
|
|
|
|
|
type: object
|
|
|
|
|
properties:
|
|
|
|
|
service:
|
|
|
|
|
type: string
|
|
|
|
|
params:
|
|
|
|
|
type: array
|
|
|
|
|
items:
|
|
|
|
|
$ref: '#/components/schemas/KeyStringValue'
|
|
|
|
|
|
|
|
|
|
# Данные для запроса на получение контента определенного ресурса
|
|
|
|
|
BrowseRequestPayload:
|
|
|
|
|
type: object
|
2023-08-22 14:46:51 +00:00
|
|
|
|
required:
|
|
|
|
|
- context
|
|
|
|
|
- browseId
|
2023-04-04 19:45:55 +00:00
|
|
|
|
properties:
|
|
|
|
|
context:
|
|
|
|
|
$ref: '#/components/schemas/RequestContext'
|
2023-08-22 14:46:51 +00:00
|
|
|
|
params:
|
|
|
|
|
type: string
|
2023-04-04 19:45:55 +00:00
|
|
|
|
browseId:
|
|
|
|
|
type: string
|
|
|
|
|
example: FEkids_home
|
|
|
|
|
|
|
|
|
|
# Ответ на запрос получения контента определенного ресурса
|
|
|
|
|
BrowseResponsePayload:
|
|
|
|
|
type: object
|
2023-08-22 14:46:51 +00:00
|
|
|
|
required:
|
|
|
|
|
- header
|
|
|
|
|
- contents
|
|
|
|
|
- responseContext
|
2023-04-04 19:45:55 +00:00
|
|
|
|
properties:
|
|
|
|
|
responseContext:
|
|
|
|
|
$ref: '#/components/schemas/ResponseContext'
|
|
|
|
|
header:
|
|
|
|
|
type: object
|
|
|
|
|
properties:
|
|
|
|
|
kidsCategoriesHeaderRenderer:
|
|
|
|
|
$ref: '#/components/schemas/CategoriesHeaderRenderer'
|
|
|
|
|
contents:
|
|
|
|
|
type: object
|
|
|
|
|
properties:
|
|
|
|
|
kidsHomeScreenRenderer:
|
|
|
|
|
$ref: '#/components/schemas/ScreenRenderer'
|
|
|
|
|
trackingParams:
|
|
|
|
|
type: string
|
|
|
|
|
|
|
|
|
|
# Ответ с ошибкой
|
|
|
|
|
ErrorResponsePayload:
|
|
|
|
|
type: object
|
2023-08-22 14:46:51 +00:00
|
|
|
|
required:
|
|
|
|
|
- error
|
2023-04-04 19:45:55 +00:00
|
|
|
|
properties:
|
|
|
|
|
error:
|
|
|
|
|
type: object
|
2023-08-22 14:46:51 +00:00
|
|
|
|
required:
|
|
|
|
|
- code
|
|
|
|
|
- status
|
|
|
|
|
- message
|
2023-04-04 19:45:55 +00:00
|
|
|
|
properties:
|
|
|
|
|
code:
|
2023-08-22 14:46:51 +00:00
|
|
|
|
type: integer
|
2023-04-04 19:45:55 +00:00
|
|
|
|
example: 400
|
|
|
|
|
message:
|
|
|
|
|
type: string
|
|
|
|
|
errors:
|
|
|
|
|
type: array
|
|
|
|
|
items:
|
|
|
|
|
$ref: '#/components/schemas/Error'
|
|
|
|
|
status:
|
|
|
|
|
type: string
|
|
|
|
|
example: FAILED_PRECONDITION
|