Поиск креативов
GET /creatives — поиск по фильтрам, курсорная пагинация, дельта-фид.
GET /public/v1/creativesСписок креативов по фильтрам с курсорной пагинацией. Списывает api_limit по числу
отданных объектов. Гемблинг скрыт по умолчанию — кроме явного vertical=gambling,
store или app_id.
curl -G https://app.mtwspy.com/public/v1/creatives \
-H "Authorization: Bearer mtw_live_ваш_ключ" \
-d geo=PL,DE -d vertical=nutra -d since=2026-07-20 -d sort=reach -d limit=50Список — это дискавери: domain, метрики, гео. Ссылка на лендинг оффера и файлы
лендинга отдаются только на карточке.
Параметры
Списки — через запятую; где отмечено, работает | как ИЛИ (до 50 значений, категорий — 30).
Фильтры
| Параметр | Значения |
|---|---|
geo | ISO-2 (PL,DE…) + регионы EUROPE,LATAM,NORTH_AMERICA,ASIA,AFRICA,OCEANIA |
vertical | all, nutra, crypto, gambling, ecom |
category | слаги тематик (см. ниже) |
format | video, image |
gender | all, male, female |
platform | площадки (facebook,instagram…) |
cta | тип кнопки (SEE_DETAILS,LEARN_MORE…) |
store | маркетплейс |
language | коды языков |
offer domain q | оффер / домен / полнотекст (| = ИЛИ) |
url fanpage app_id ip | по footer-ссылке / странице / приложению / IP |
min_reach…max_reach | охват (аналогично _likes, _views, _age) |
published_from published_to | диапазон публикации, YYYY-MM-DD / unix |
since | дельта-фид по дате добавления в базу |
has_landing | 1 / 0 — только с лендингом / без |
Управление выдачей
| Параметр | Значения |
|---|---|
sort | added (деф.), published, reach, reactions |
limit | 1–200 (деф. 50) |
cursor | токен следующей страницы (meta.next_cursor) |
Слаги категорий
alcoholism, infertility, varicose, hair_loss, gastritis, hemorrhoids,
hypertension, fungus, diabetes, vision, teeth, smoking, lungs,
urination, rejuvenation, parasites, liver, digestion, potency,
weight_loss, prostatitis, psoriasis, hearing, joints,
breast_enlargement, penis_enlargement, cystitis.
Ответ
{
"data": [
{
"id": 2255582,
"uuid": "4499ba18-431e-45a6-bf60-c0a0d2e1ac77",
"vertical": "nutra",
"category": "hearing",
"offer": "Otinax Max",
"geo": "PL",
"format": "video",
"media": { "type": "video", "preview": "https://.../vpreview/....jpg",
"items": [{ "url": "https://.../creative/....mp4", "type": "video", "index": 1 }] },
"text": null,
"cta": "SEE_DETAILS",
"domain": "ad-domain.com",
"has_landing": true,
"app_id": null,
"platforms": "facebook, instagram, audience_network, messenger",
"page": { "id": "100094758680183", "name": "Concrete Canvas" },
"ad_library_id": "120249694299460433",
"metrics": { "reach": 1601, "views": 0, "likes": 0, "shares": 0, "comments": 0, "spend_usd_est": 31.72 },
"targeting": { "gender": "all", "age_min": 25, "age_max": 65 },
"is_active": false,
"published_at": "2026-07-21T10:00:00+03:00",
"stopped_at": "2026-07-24T07:00:00+03:00",
"last_seen_at": null,
"added_at": "2026-07-22T09:14:00+03:00"
}
],
"meta": {
"delivered": 50,
"has_more": true,
"next_cursor": "eyJzIjoiYWRkZWRhdCIsInYiOjE3ODQ4NzAxMDMsImkiOjIyNTU1ODJ9",
"sort": "added",
"api_limit": { "period": "2026-07", "limit": 50000, "used": 12390, "remaining": 37610, "plan": "team_api" }
}
}Пагинация курсором
Прыгать на произвольную страницу нельзя — только последовательно. Передавайте
meta.next_cursor в параметр cursor, пока has_more не станет false:
const BASE = 'https://app.mtwspy.com/public/v1';
const headers = { Authorization: 'Bearer mtw_live_ваш_ключ' };
async function* all(params) {
let cursor = null;
do {
const qs = new URLSearchParams({ ...params, limit: '100', ...(cursor ? { cursor } : {}) });
const { data, meta } = await (await fetch(`${BASE}/creatives?${qs}`, { headers })).json();
yield* data;
cursor = meta.has_more ? meta.next_cursor : null;
} while (cursor);
}Курсор привязан к sort. Сменили сортировку — начинайте с запроса без cursor
(иначе 422 invalid_parameter).
Дельта-фид (since)
since фильтрует по дате добавления в базу (added_at) — забирайте только то,
что появилось с прошлой проверки. Храните last_checked, при следующем прогоне
передавайте его в since, затем сдвигайте на текущий момент.
curl -G https://app.mtwspy.com/public/v1/creatives \
-H "Authorization: Bearer mtw_live_ваш_ключ" \
-d since=2026-07-27 -d vertical=nutra -d geo=PL -d limit=100