GameSport
FollowPulse
Потоки
Пользователи
LTV по потокам
API
Токен не выдан. Его выдает владелец кабинета в разделе «Пользователи» — карточка человека, блок «Доступ по API».
Токен открывает доступ только к вашим потокам и только на чтение. Не публикуйте его и не кладите в код на клиенте — любой, у кого он есть, видит вашу статистику. Если токен утек, попросите владельца перевыпустить его: старый сразу перестанет работать.
С чего начать
Один запрос, который сразу работает — подставьте свой токен:
# все потоки за неделю curl -s 'https://stat.gonew.click/api/buyer/v1/streams?frm=2026-08-20&to=2026-08-26' \ -H 'Authorization: Bearer ВАШ_ТОКЕН'
Базовый адрес: https://stat.gonew.click/api/buyer/v1. Только HTTPS, только GET, ответ всегда JSON в UTF-8.
Авторизация
Токен передается заголовком Authorization. В параметрах запроса он не принимается — иначе попал бы в логи прокси.
Authorization: Bearer a3f1...9c2e
Методы
| Параметр | Тип | Описание |
|---|---|---|
| frmобяз. | дата | Первый день периода, ГГГГ-ММ-ДД. Включительно. |
| toобяз. | дата | Последний день периода. Тоже включительно. |
| product | строка | gamesport (по умолчанию) или followpulse. |
| account | строка | Аккаунт внутри продукта: main, ek, dn или список через запятую. По умолчанию все. |
| buyer | строка | Суффикс баера (aa, av, ak, den, iv) — только его потоки. Полезно тимлиду. |
| pay_type | строка | cpa или rs — только потоки этой схемы оплаты. |
# все потоки за неделю curl -s 'https://stat.gonew.click/api/buyer/v1/streams?frm=2026-08-20&to=2026-08-26' \ -H 'Authorization: Bearer ВАШ_ТОКЕН'
import requests r = requests.get( "https://stat.gonew.click/api/buyer/v1/streams", params={"frm": "2026-08-20", "to": "2026-08-26", "product": "gamesport"}, headers={"Authorization": "Bearer ВАШ_ТОКЕН"}, timeout=30) for s in r.json()["rows"]: print(s["title"], s["acts"], s["profit"])
// на сервере, не в браузере: в браузерный код токен класть нельзя const r = await fetch( "https://stat.gonew.click/api/buyer/v1/streams?frm=2026-08-20&to=2026-08-26", {{ headers: {{ Authorization: `Bearer ${{process.env.CABINET_TOKEN}}` }} }}); const {{ rows, as_of }} = await r.json(); console.log(as_of, rows.length);
{
"buyer": "Andrey K.",
"money": "rs_only",
"as_of": "2026-08-27T00:21:58+03:00",
"rows": [
{
"stream_id": 53466,
"title": "rsru250ak",
"pay_type": "rs",
"visits": 1235, "regs": 741, "acts": 182,
"subs": 298, "cancels": 91,
"refunds": 11685.0, "profit": 76400.0
},
{
"stream_id": 52355,
"title": "cpruwb250ak",
"pay_type": "cpa",
"visits": 1, "regs": 2, "acts": 12,
"subs": 19, "cancels": 23,
"refunds": 0.0, "profit": 0.0 // CPA: деньги скрыты
}
]
}
Параметры те же. Дни считаются как сумма ваших потоков, поэтому итог всегда сходится с методом streams за тот же период.
curl -s 'https://stat.gonew.click/api/buyer/v1/days?frm=2026-08-24&to=2026-08-26' \ -H 'Authorization: Bearer ВАШ_ТОКЕН'
{
"buyer": "Andrey K.",
"money": "rs_only",
"as_of": "2026-08-27T00:21:58+03:00",
"rows": [
{ "date": "2026-08-26", "visits": 237, "regs": 144, "acts": 40,
"subs": 62, "cancels": 18, "refunds": 2655.0, "profit": 10150.0 },
{ "date": "2026-08-25", "visits": 44, "regs": 26, "acts": 11,
"subs": 19, "cancels": 14, "refunds": 0.0, "profit": 9290.0 },
{ "date": "2026-08-24", "visits": 122, "regs": 72, "acts": 18,
"subs": 30, "cancels": 14, "refunds": 140.0, "profit": 12705.0 }
]
}
Без параметров. Этим же методом удобно проверять, что токен рабочий.
{
"name": "Andrey K.",
"role": "buy",
"suffixes": ["ak"],
"products": [
{ "key": "gamesport", "title": "GameSport", "money": "rs_only" },
{ "key": "gamesport_dn", "title": "GameSport DN", "money": "none" },
{ "key": "followpulse", "title": "FollowPulse", "money": "rs_only" }
],
"as_of": "2026-08-27T11:19:25+03:00"
}
Тот же список продуктов отдельно: GET /api/buyer/v1/products — подставляйте key в параметр product остальных методов.
Параметры те же, что у streams и days. Неполный месяц на краю периода считается по его дням внутри периода.
{ "month": "2026-08", "visits": 3905, "acts": 567, "profit": 314410.0, ... },
{ "month": "2026-07", "visits": 7787, "acts": 1070, "profit": 426215.0, ... }
| Параметр | Тип | Описание |
|---|---|---|
| product | строка | gamesport (по умолчанию) или followpulse. |
| frm / to | дата | Диапазон КОГОРТ (когда пришла активация). Без них — вся история. |
| account | строка | main, ek, dn или список через запятую. |
| buyer | строка | Суффикс баера — только его потоки. |
| pay_type | строка | cpa или rs. |
Значения — ₽ на активацию в партнерских отчислениях, та же математика, что на странице «LTV по потокам»: каждое окно считается только по зрелым когортам (возраст не меньше окна), незрелое окно приходит как null. Смотрите на mature_acts: LTV по паре десятков активаций — шум.
{
"partner_share": 0.5,
"windows": [5, 7, 10, 15, 30, 45, 60, 75, 90, 120, 150],
"as_of": "2026-08-27T11:34:07+03:00",
"rows": [
{
"stream_id": 53466, "title": "rsru250ak", "cohort_acts": 7581,
"ltv": { "7": 37.9, "30": 163.72, "90": 238.62, "150": 251.7, ... },
"mature_acts": { "7": 7215, "30": 6512, "90": 4230, ... }
}
]
}
Поля ответа
| Поле | Тип | Что означает |
|---|---|---|
| stream_id | число | ID потока в gamesport.partners. |
| owner | строка | Чей поток — имя баера или null у неразобранных (в streams и ltv). |
| title | строка | Название потока. |
| pay_type | строка | cpa или rs — схема оплаты потока. |
| date | дата | День (только в методе days). |
| visits | число | Клики. |
| regs | число | Регистрации. |
| acts | число | Активации. |
| subs | число | Подписки. |
| cancels | число | Отписки. |
| refunds | ₽ | Возвраты за период. |
| profit | ₽ | Получено. Чистыми = profit − refunds. |
| as_of | время | На какой момент данные, МСК. |
| money | строка | Что видно по деньгам — см. ниже. |
Почему деньги приходят нулями
Поле money говорит, что именно вам показано:
| rs_only | Деньги видны только по ревшарным потокам. По CPA refunds и profit приходят нулями — это не ошибка и не отсутствие дохода. |
| none | Деньги по этому продукту закрыты целиком. Клики, активации и подписки приходят как обычно. |
| all | Видно все. |
Ограничение режется в самом запросе к базе, поэтому обойти его подбором параметров нельзя — закрытых сумм в ответе нет физически.
Ошибки
# токена нет в заголовке {"detail": "bearer token required"} // 401 # токен неизвестен или человек отключен {"detail": "bad token"} // 401 # product не из списка {"detail": "bad product"} // 400 # frm или to не в формате ГГГГ-ММ-ДД {"detail": "bad date: use YYYY-MM-DD"} // 400 # даты перепутаны местами {"detail": "frm is after to"} // 400 # период длиннее 400 дней {"detail": "period too long: max 400 days"} // 400 # деньги по продукту скрыты (ltv по gamesport_dn) {"detail": "money for this product is hidden"} // 403 # незнакомый параметр — API не игнорирует его молча {"detail": "unknown params: acount. allowed: account, buyer, frm, pay_type, product, to"} // 400 # суффикс баера не существует {"detail": "unknown buyer suffix"} // 400 # больше 120 запросов за минуту {"detail": "rate limit: 120 requests per minute"} // 429
Как часто обновляются данные
Свежие сутки пересобираются каждые 15 минут, вся история — раз в сутки ночью. Момент последнего обновления всегда лежит в поле as_of: если оно не сдвинулось, повторный запрос вернет те же числа, и дергать чаще смысла нет.
Лимит — 120 запросов в минуту на токен, сверх него приходит 429. Данные меняются раз в 15 минут, так что и опрашивать чаще нет смысла.