ChatNeuron
Sections

for developers

REST API

Read your company's leads and conversations and create leads from your own systems: ERP, website, CRM, scripts. The API speaks JSON.

API key

  • The account owner or an admin issues keys in the dashboard: Settings → API and webhooks → API keys. A cn_live_… key is shown once — save it right away. We store only its hash.
  • Key scope: read only or read and write (write means creating leads).
  • Revoking a key takes effect immediately: the next request gets 401. Up to 20 active keys per company.

Requests

Base URL — https://app.chatneuron.ru/api/v1. Send the key in Authorization: Bearer cn_live_… (or X-Api-Key). Up to 120 requests per minute per key; above that you get 429 with a Retry-After header.

curl https://app.chatneuron.ru/api/v1/me \
  -H "Authorization: Bearer cn_live_…"

Errors

Errors come with an HTTP status and this body:

{
  "error": {
    "code": "unauthorized",
    "message": "Ключ не найден или отозван"
  }
}
StatuscodeWhen
400invalid_requestInvalid body or parameters
401unauthorizedMissing, invalid or revoked key
403forbiddenThe key lacks the scope (write with a read-only key)
429rate_limitedMore than 120 requests per minute

Lists and pagination

Lists are returned newest first. Parameters: limit — 1 to 100 (default 50), since — an ISO 8601 date to start from, cursor — nextCursor from the previous response. When nextCursor is null, there are no more pages.

GET /me — check the key

The company the key belongs to and its scope.

curl https://app.chatneuron.ru/api/v1/me \
  -H "Authorization: Bearer cn_live_…"

Response

{
  "company": { "accountId": "NC-123456", "name": "Ромашка" },
  "scope": "read"
}

GET /leads — leads

Company leads. Leads hidden until the plan is paid are not returned.

curl "https://app.chatneuron.ru/api/v1/leads?since=2026-10-01T00:00:00Z&limit=50" \
  -H "Authorization: Bearer cn_live_…"

Response

{
  "data": [
    {
      "id": "cmv…",
      "agentId": "cmu…",
      "name": "Анна",
      "phone": "+79991234567",
      "email": null,
      "message": "Нужна консультация по доставке",
      "status": "NEW",
      "source": "chat",
      "topic": "Доставка",
      "score": 72,
      "createdAt": "2026-10-27T09:15:02.114Z"
    }
  ],
  "nextCursor": "cmv…"
}

Fields: id, agentId, name, phone, email, message, status, stage, source, type, topic, score, createdAt.

GET /dialogs — conversations

Customer conversations across all channels, test ones excluded. Same parameters as leads.

curl "https://app.chatneuron.ru/api/v1/dialogs?limit=20" \
  -H "Authorization: Bearer cn_live_…"

Fields: id, agentId, channel, status, topic, handedOff, resolved, startedAt, lastMessageAt, closedAt.

POST /leads — create a lead

Requires a read and write key. JSON body: name, phone, email, message, topic, agentId (the AI employee to attribute the lead to). A phone or an email is required. The lead is delivered like any other: to the CRM, Telegram, email and webhooks. locked: true means the lead was created but is hidden until the plan is paid.

curl -X POST https://app.chatneuron.ru/api/v1/leads \
  -H "Authorization: Bearer cn_live_…" \
  -H "Content-Type: application/json" \
  -d '{"name":"Анна","phone":"+79991234567","message":"Заявка с сайта"}'

Response · 201

{ "data": { "id": "cmv…", "locked": false } }

Next

To learn about new leads and conversations right away instead of polling, set up outgoing webhooks.