для разработчиков API v2

API LeadPlan

Сайты, виджеты, заявки и статистика LeadPlan — из своих программ: CRM, отчётов, скриптов. Те же данные, что в кабинете, в формате JSON.

Что можно #

  • получить сайты аккаунта, код установки и состояние кода на сайте;
  • смотреть виджеты, включать и выключать их;
  • забирать заявки и данные посетителей, выгружать их в CSV, повторять доставку заявки;
  • читать статистику показов, заявок и конверсии — по сайту, по виджетам, по A/B-тестам;
  • настраивать вебхуки, на которые уходят заявки.

Вид и текст виджетов, A/B-тесты и тариф меняются только в кабинете. Все методы — в справочнике «Сайты и виджеты».

Ключ #

Кабинет LeadPlan → меню аккаунта → API. Выберите доступ к сайтам и к заявкам — чтение или изменение, при желании срок, и нажмите «Выпустить ключ». Скопируйте его сразу: второй раз он не покажется. Ключи выпускает владелец аккаунта.

Ключ — как пароль. Не вставляйте его в код страниц сайта: его увидит любой посетитель. Ходите в API только со своего сервера. Ключ, который мог утечь, отзовите в том же разделе — он перестанет работать в течение минуты.

Первый запрос #

Адрес API — https://api.leadplan.ru/v2, ключ — в заголовке Authorization:

curl 'https://api.leadplan.ru/v2/sites' \
  -H 'Authorization: Bearer YOUR_API_KEY'

Ответ — список сайтов в конверте:

{
  "response": {
    "msg": {"err_code": 0, "text": "OK", "type": "message"},
    "data": [{"id": 100842, "name": "Магазин", "url": "example.ru", "status": "enabled", …}]
  }
}

id сайта нужен всем остальным методам: виджеты, заявки и статистика вложены в сайт — /sites/{site_id}/widgets, /sites/{site_id}/leads и так далее.

Формат #

  • Тело запросов POST и PUT — JSON, заголовок Content-Type: application/json.
  • Списки постраничные: limit и offset. Пустой список — "data": [], это не ошибка.
  • Время — московское, YYYY-MM-DD HH:MM:SS.
  • Заявки и посетители выгружаются файлом: ?format=csv.

Когда запрос не проходит #

Отказ приходит с HTTP-статусом и объектом error: в нём code — он точнее статуса — и текст. У кода 69 в details цифры лимита, у кода 67 — список полей с ошибками.

СтатусКодЧто случилось
401—ключа нет, он отозван или истёк
40362у ключа нет права на эту операцию
40365нет доступа к разделу
4044такого сайта, виджета или заявки нет
4044адрес подтверждения почты из письма после регистрации ещё не открыт
40968конфликт: например, домен уже занят другим сайтом
40969исчерпан лимит тарифа
42267данные не прошли проверку
42958слишком много запросов — подождите минуту
50370сервис временно недоступен — повторите позже

ИИ-ассистенты #

Claude, ChatGPT, Cursor и другие ассистенты работают с теми же данными без программирования — через MCP-сервер https://mcp.leadplan.ru/. Как подключить — на странице «Подключение ассистентов».