Довідник XML-фіду¶
XML-фід — це щоденний список усіх відеооб'єктів MEGOGO, відкритих в одному регіоні. За фідом ви створюєте й оновлюєте свій каталог, а потік і дані для конкретного користувача отримуєте через Content API.
Схема: megogo-catalog-feed.xsd (XML Schema 1.1).
Файли фіду¶
MEGOGO формує окремий фід для кожного партнера, і у вашому фіді є лише ті об'єкти, які ви можете показувати. URL має такий вигляд:
https://xml.megogo.net/assets/files/{region}/{partner_number}/{file}
{region}— код вашого регіону (див. таблицю нижче).{partner_number}— номер вашого партнерського облікового запису. Він збігається зі значеннямpartner_idу відповіді/configuration. Повний URL вам надасть MEGOGO.
Використовуйте лише файл all_mgg.xml. Він містить усі об'єкти вашого
фіду, крім телеканалів, музичних кліпів і новин. Крім того, у
налаштуваннях вашого партнерського облікового запису MEGOGO може
виключити з фіду окремі групи об'єктів, наприклад прямі трансляції або
ексклюзивні об'єкти. Які налаштування діють для вас, уточніть у свого
менеджера MEGOGO.
УВАГА
Не використовуйте регіональний фід без {partner_number}, наприклад
…/files/ua/all_mgg.xml: у ньому є об'єкти, які ваші ключі не можуть
відтворити. Виняток — Польща (див. примітку під таблицею регіонів).
| Файл | Мова текстів |
|---|---|
all_mgg.xml |
Російська |
all_mgg_ua.xml |
Українська (лише регіон ua) |
all_mgg_pl.xml |
Польська (лише регіон pl) |
Регіони ({region}), валюти й тестові фіди тестових партнерських
облікових записів testprod_{region}:
ПРИМІТКА
Окремих партнерських фідів для Польщі MEGOGO наразі не формує.
Використовуйте регіональний фід pl/all_mgg.xml (польською —
pl/all_mgg_pl.xml).
Розклад оновлення¶
- MEGOGO формує нові файли раз на день. Завантажуйте фід після 05:00 UTC. Поки новий файл не готовий, доступний попередній. Увесь час у фіді вказано в UTC.
- Кожен новий файл повністю замінює каталог: об'єкти можуть з'являтися, зникати або змінюватися, а змінитися може будь-яке поле.
- Перший рядок після XML-декларації — коментар із часом генерації файлу
(UTC):
<!--2026.10.29 03:04:57-->. - Іноді новий файл з'являється на кілька годин пізніше, ніж зазвичай. Якщо дата в коментарі не сьогоднішня, залиште каталог без змін і завантажте фід пізніше, наприклад через годину.
- Оновлюйте каталог щодня з останнього фіду. Не приховуйте об'єкти за
closing_date: які об'єкти вилучити, покаже наступний фід.
УВАГА
Не показуйте об'єкт, якого немає в останньому фіді: його відео не відтворюється.
Мова фіду¶
Тексти у фіді (назви, описи, назви категорій і мов) подано російською мовою. Для України й Польщі є також фід місцевою мовою (див. Файли фіду).
Правила для клієнта¶
- Ігноруйте елементи й атрибути, не описані на цій сторінці. MEGOGO може додавати нові елементи й атрибути, але задокументовані без попередження не вилучає.
- Ігноруйте об'єкти зі значенням
type, якого ваш застосунок не підтримує. - Як користувач може отримати об'єкт, визначайте за
<distributions>, а не лише заobject@vod. - Тривалість беріть із
duration_sec:info@duration— це довільний текст. - Фід може бути великим (приблизно до 200 МБ), тому використовуйте потоковий XML-парсер.
Структура¶
<?xml version="1.0" encoding="UTF-8"?><!--2026.10.29 03:04:57-->
<objects>
<object id="..." title="..." type="FILM" serial="false" vod="svod" ...>
<qualities>...</qualities>
<info .../>
...
<distributions>...</distributions>
</object>
<object id="..." type="SERIAL" serial="true" ...>
...
<season id="..." title="...">
<seria id="..." index="1" .../>
</season>
</object>
</objects>
Порядок дочірніх елементів не фіксований.
Атрибути object¶
| Атрибут | Обов'язковий | Опис |
|---|---|---|
id |
Так | ID об'єкта. Збігається з id у Content API |
title |
Так | Назва мовою фіду |
title_en |
Ні | Оригінальна або міжнародна назва. Може бути порожньою |
type |
Так | Тип об'єкта: FILM, SERIAL, SHOW, SHOWFILM, MULTFILM, MULTSERIAL, FILMSERIAL. Трапляються й інші значення |
serial |
Так | true — об'єкт має сезони й серії (<season>), false — об'єкт є одним відео |
vod |
Так | Основна модель доступу: svod, tvod, dto, fvod, advod. Усі моделі наведено в <distributions> |
categories |
Так | Назви категорій через кому — ті самі, що й у <categories> |
genres |
Так | Назви жанрів через кому |
page |
Ні | Посилання на сторінку об'єкта на megogo.net |
Дочірні елементи object¶
| Елемент | Обов'язковий | Опис |
|---|---|---|
qualities/quality@value |
Так | Доступна якість відео: SD, HD, Full HD, UHD. @hdr="true" — доступний HDR |
info@year, @country, @duration |
Так | Рік випуску, країни (текстом), тривалість (довільний текст) |
categories/category |
Так | Категорія: @id і назва |
actors/actor, directors/director |
Ні | Особа: @id та ім'я |
like, dislike, comments_num |
Ні | Лічильники користувачів MEGOGO |
ratings@imdb, @imdb_id, @megogo |
Ні | Рейтинг та ID в IMDb, рейтинг користувачів MEGOGO від 0 до 10. 0 або порожнє значення — рейтингу немає |
story |
Так | Опис мовою фіду (CDATA) |
poster |
Так | URL зображень. Див. Зображення |
gallery-image@url |
Ні | Кадри з відео. Елементів може бути 0 або більше |
trailer |
Ні | Трейлер. Див. Трейлери |
age_limit |
Ні | Мінімальний вік глядача: 0, 6, 12, 16, 18 |
ios_allowed |
Так | 1 — права дозволяють показувати об'єкт на мобільних пристроях (на всіх мобільних платформах, а не лише на iOS) |
smart_tv_allowed |
Так | 1 — права дозволяють показувати об'єкт на великих екранах (Smart TV, телеприставки) |
web_allowed |
Так | 1 — права дозволяють показувати об'єкт у вебі |
protection |
Так | 0 — без DRM. Будь-яке інше значення — об'єкт захищено DRM. PMF = PlayReady, Modular (Widevine), FairPlay |
closing_date |
Так | Запланована дата завершення прав, UTC, ISO 8601. Лише для довідки: не приховуйте об'єкт у цей момент |
contract_id |
Ні | ID контракту на права. Потрібен, лише якщо MEGOGO повідомить, що частина об'єктів із DRM доступна вам тільки за певними контрактами. У такому разі показуйте лише об'єкти з цими значеннями contract_id |
duration_sec |
Так | Тривалість у секундах. Для серіалів — сумарна тривалість серій або порожнє значення |
finger_language |
Ні | 1 — доступний переклад жестовою мовою |
audio_description |
Ні | 1 — доступна доріжка з аудіоописом |
audio_list/audio_lang |
Ні | Аудіодоріжки. Текст — назва доріжки. @index — те саме значення, що й audio_tracks[].index у /stream |
subtitles/subtitle_lang |
Ні | Мови субтитрів (назви) |
distributions |
Так | Моделі доступу й ціни. Див. Моделі доступу та ціни |
season |
Для serial="true" |
Сезон. Див. Серіали |
Зображення¶
Атрибути poster:
| Атрибут | Є завжди | Опис |
|---|---|---|
url, original |
Так | Вертикальний постер, пропорція приблизно 1 : 1,41. Розмір різний (від 500 × 706 до 2 500 × 3 525 px) |
thumbnail, small |
Так | Вертикальний постер, 162 × 228 px |
big |
Майже завжди | Вертикальний постер, 300 × 423 px |
fullscreen, original_wide |
Майже завжди | Горизонтальне зображення 16 : 9 (від 1 920 × 1 080 до 3 840 × 2 160 px) |
type215x120, type470x270 |
Ні | Горизонтальне зображення, 215 × 120 і 470 × 270 px |
Розміри можуть змінюватися, тому не прив'язуйте макет до точних розмірів у пікселях.
Вписуйте зображення в рамку зі збереженням пропорцій, за потреби обрізаючи краї.
Щоб отримати зображення потрібного вашому екрану розміру й формату, додайте до його URL операцію зміни розміру або обрізання. Див. Зображення.
Трейлери¶
Атрибути trailer: id, title, duration_sec, age_limit,
priority. В об'єкта може бути один трейлер або жодного.
Щоб відтворити трейлер, передайте його id в Content API:
GET /v1/stream?video_id={trailer_id}&sign={sign}
access_token користувача для трейлера не потрібен.
Моделі доступу та ціни¶
distributions містить по одному елементу distribution на кожну
модель доступу. Для SVOD елементів distribution може бути кілька — по
одному на кожну передплату (у фіді ua — до 8).
distribution@vod_type |
Значення | Елементи price |
|---|---|---|
svod |
У передплаті | По одному на кожен період передплати |
tvod |
Оренда на обмежений строк | По одному на кожну якість (HD, SD) |
dto |
Купівля без обмеження строку. Користувачеві показуйте як «назавжди». watch_period — 5 або 10 років |
По одному на кожну якість (HD, SD) |
fvod, advod |
Безкоштовно в застосунках MEGOGO. У вашому застосунку — частина передплати | Немає |
Атрибути price:
| Атрибут | Опис |
|---|---|
price |
Ціна у валюті регіону |
currency |
Код валюти (ISO 4217, малими літерами) |
watch_period |
Період доступу в секундах |
tariff_id |
ID тарифу |
service_id |
ID послуги MEGOGO. Може відрізнятися від ID ваших послуг і від ID у /video/info |
service_name |
Назва передплати. Лише для SVOD |
quality |
Максимальна якість за цією ціною. Лише для TVOD і DTO |
УВАГА
Content API видає потік об'єкта fvod або advod без користувача й
без передплати. Ваша передплата охоплює об'єкти svod, fvod і
advod, тому перш ніж запитувати потік, обов'язково перевірте доступ
користувача у своєму застосунку.
ОБЕРЕЖНО
Ціни, tariff_id і service_id у фіді стосуються тарифів MEGOGO.
Тарифи ваших партнерських послуг можуть мати інші ID і ціни.
Наприклад, фід і API повернули однакову ціну TVOD з різними ID
тарифів. Не показуйте ці ціни користувачам і не передавайте ці ID у
buyMovie. Ціни й tariff_id для buyMovie беріть із /video/info.
Типові значення watch_period:
watch_period (секунди) |
Період |
|---|---|
| 172 800 | 48 годин |
| 2 592 000 | 30 днів |
| 7 776 000 | 90 днів |
| 15 552 000 | 180 днів |
| 31 104 000 | 360 днів |
| 157 680 000 | 5 років (DTO) |
| 315 360 000 | 10 років (DTO) |
Для DTO показуйте «назавжди».
Серіали¶
Об'єкти з serial="true" мають один або кілька елементів season.
| Елемент | Атрибути | Опис |
|---|---|---|
season |
id, title |
Сезон |
season/seria |
id, index, title, poster, duration_sec |
Серія. index — номер серії в сезоні |
season/seria/qualities |
— | Доступна якість серії |
Відео є лише в seria. Використовуйте seria@id як video_id у
/stream.
season може не містити жодного елемента seria. Сезон без серій не
показуйте.
Версія посібника 1.4.1, 2026-10-31 · Повідомити про проблему на цій сторінці