# Roistat Reports API

> Чтение отчётов Roistat, воспроизводимая сверка с сырыми сделками и коллтрекингом, а также строго ограждённая запись сохранённых отчётов.

- Skill: `hashgraph-online/roistat-reports-api` (Agent Skill, multi-file: 6 files)
- Install (CLI): `npx skillmds@latest add hashgraph-online/roistat-reports-api`
- Raw SKILL.md: https://api.skillmd.com/api/skills/hashgraph-online/roistat-reports-api/raw
- Safety review: pending
- Works with: Claude Code, Claude.ai, OpenAI Codex
- Category: Integrations & APIs
- Author: hashgraph-online (https://skillmd.com/u/hashgraph-online)
- Updated: 2026-09-08
- Page: https://skillmd.com/skills/hashgraph-online/roistat-reports-api

---



# Отчёты Roistat

## Обязательный порядок

1. Доступ бери из `ROISTAT_PROJECT` и `ROISTAT_API_KEY` либо из указанного закрытого файла JSON с правами `0600`. Никогда не передавай ключ аргументом.
2. Точно задай период, окно, модель атрибуции, канал, фильтры и валюту.
3. Считай три источника разными: аналитический отчёт, сырые сделки и коллтрекинг. У каждого есть собственное состояние полноты.
4. Сырые сделки и коллтрекинг запрашивай только с явным `--include-personal-data`; полученные пакеты остаются закрытыми.
5. Проходи всю постраничную выдачу. Статус `partial` не превращай в полный отчёт.
6. Каждое число должно воспроизводиться из сохранённых ответов и `report-context.json`.

## Чтение и сверка

Используй `scripts/build_roistat_report_pack.py`. Он сохраняет исходный ответ аналитики, нормализованные строки, параметры и отдельный расчёт расхождений.

В сверке хранятся обе исходные суммы и разница. Расхождение может быть связано с окном атрибуции, поздним событием CRM, валютой или неполной выгрузкой; причину подтверждай доказательствами.

## Запись

`scripts/save_roistat_report.py` до сетевого вызова проверяет:

- точную контрольную сумму спецификации;
- закрытое подтверждение владельца не старше 24 часов;
- точное совпадение проекта, действия и целевого отчёта;
- `ROISTAT_WRITE_ARMED=1` и отдельный `ROISTAT_WRITE_API_KEY`;
- чтение до записи, чтение после записи, неизменность посторонних отчётов и кандидат на откат.

Без `--apply` выполняется только местная проверка. Любой откат требует нового подтверждения.

## Граница публикации

Не публикуй номера проектов, ключи, выгрузки, телефоны, домены, клиентские названия и местные пути. Публичные примеры должны быть только синтетическими.

---

**Source:** [`hashgraph-online/awesome-codex-plugins`](https://github.com/hashgraph-online/awesome-codex-plugins) → `plugins/nebelov/yandex-direct-for-all/skills/roistat-reports-api/SKILL.md`

