Перейти к содержанию

Справочник по 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}:

Регион Код Валюта Тестовый фид
Армения am amd https://xml.megogo.net/assets/files/am/6206/all_mgg.xml
Азербайджан az azn https://xml.megogo.net/assets/files/az/1841/all_mgg.xml
Эстония ee eur https://xml.megogo.net/assets/files/ee/3101/all_mgg.xml
Грузия ge gel https://xml.megogo.net/assets/files/ge/6286/all_mgg.xml
Казахстан kz kzt https://xml.megogo.net/assets/files/kz/1761/all_mgg.xml
Кыргызстан kg kgs https://xml.megogo.net/assets/files/kg/1661/all_mgg.xml
Латвия lv eur https://xml.megogo.net/assets/files/lv/5835/all_mgg.xml
Литва lt eur https://xml.megogo.net/assets/files/lt/3175/all_mgg.xml
Молдова md mdl https://xml.megogo.net/assets/files/md/3225/all_mgg.xml
Польша pl pln https://xml.megogo.net/assets/files/pl/all_mgg.xml (региональный фид, см. примечание ниже)
Таджикистан tj tjs https://xml.megogo.net/assets/files/tj/2181/all_mgg.xml
Украина ua uah https://xml.megogo.net/assets/files/ua/2331/all_mgg.xml, на украинском: https://xml.megogo.net/assets/files/ua/2331/all_mgg_ua.xml
Узбекистан uz uzs https://xml.megogo.net/assets/files/uz/2591/all_mgg.xml
Другие страны ww — https://xml.megogo.net/assets/files/ww/5745/all_mgg.xml

ПРИМЕЧАНИЕ

Для Польши 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 до 2500 × 3525 px)
thumbnail, small Да Вертикальный постер, 162 × 228 px
big Почти всегда Вертикальный постер, 300 × 423 px
fullscreen, original_wide Почти всегда Горизонтальное изображение 16 : 9 (от 1920 × 1080 до 3840 × 2160 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

ВНИМАНИЕ

Поток объекта fvod или advod Content API отдает без привязки к пользователю и без проверки подписки. В вашу подписку входят объекты 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 в /stream как video_id.

Сезон (season) может не содержать ни одного элемента seria. Сезоны без серий не показывайте.


Версия руководства 1.4.1, 2026-10-31 · Сообщить о проблеме на этой странице