Integration

CRM integration, API and telephony

OperatorAI connects to the systems you already use: your CRM sends a call request and the result comes back on its own. Calls go through your SIP line or corporate PBX.

REST API

A call request in one API call

Your CRM or accounting system sends the customers to call every day on its own. Each call has a unique ID: you can check its status at any time, but you don’t need to — the result arrives by webhook.

RequestWhat it does
POST/api/v1/callsOne call request
POST/api/v1/calls/batchUp to 1,000 calls in one request
GET/api/v1/calls/{id}Call status, result and transcript
GET/api/v1/calls/external/{externalId}Look up by the ID from your system
GET/api/v1/callsChanges: cursor-based sync
DELETE/api/v1/calls/{id}Cancel a request
GET/api/v1/calls/{id}/recordingCall recording
GET/api/v1/campaignsCampaigns and their IDs
GET/api/v1/openapi.jsonOpenAPI document (imports into Postman)
POST/api/v1/calls
X-Api-Key: oai_••••••••••••
Content-Type: application/json

{
  "campaignId": "7f3c2a90-…",
  "phone": "+994501234567",
  "name": "Elvin Mammadov",
  "externalId": "loan-48213-2026-10",
  "data": {
    "Debt amount": "320 AZN",
    "Due date": "28.10.2026"
  }
}
Response201 Created
{
  "id": "c9a1e5d2-…",
  "object": "call",
  "status": "queued",
  "externalId": "loan-48213-2026-10"
}

Results arrive by webhook

When a call ends, a call.completed or call.failed event is sent to your URL: status, outcome (for example, promised_to_pay), analysis answers, transcript and a recording link.

  • Signature: X-OperatorAI-Signature (HMAC-SHA256)
  • If not accepted, it is retried at growing intervals for ~2 days
  • The delivery log is kept in the dashboard for 30 days

Documentation inside the product

Documentation and a test console live in the dashboard, with curl, C#, PHP, Python and 1C examples. A simple integration usually takes your developer 1⁠–⁠3 days.

It works without the API too: upload lists from Excel or CSV and download results to Excel.

The API comes with the monthly “Support with API” plan: training your developers and reviewing integration errors is on us.

POSTWebhook: call completed
X-OperatorAI-Event: call.completed
X-OperatorAI-Signature: v1=4be1…

{
  "id": "evt_5f0c…",
  "type": "call.completed",
  "data": {
    "id": "c9a1e5d2-…",
    "externalId": "loan-48213-2026-10",
    "status": "completed",
    "outcome": "promised_to_pay",
    "result": {
      "durationSeconds": 74,
      "answers": [
        {
          "tool": "Promise to pay",
          "answer": "Yes",
          "status": "done"
        },
        {
          "tool": "Payment date",
          "answer": "October 30",
          "status": "done"
        }
      ],
      "recordingUrl": "https://…/calls/c9a1e5d2-…/recording"
    }
  }
}

Keys

Keys, permissions and limits

Created in the dashboard

Scopes: calls:write, calls:read, campaigns:read. Restrict by campaign, IP/CIDR and expiry date.

Only a hash is stored

The key itself is never stored, only its SHA-256 hash. Keys can be revoked at any time.

Duplicate protection

externalId: if the same request arrives twice, no new call is created.

Rate limit

600 requests per minute per key; above that, 429 with Retry-After.

Telephony

Your line, your number

Calls go out on your SIP line: customers see a familiar number, and you pay your carrier for minutes directly.

SIP line

Any SIP provider or telecom operator line. G.711 audio codec.

Corporate PBX

A step-by-step guide for connecting to Cisco CUCM as a Third-Party SIP Device.

Concurrent calls

Your line’s channel count sets how many calls run in parallel; campaigns never open more.

Self-healing

If SIP registration drops, the primary and fallback addresses are tried in turn, then dialing resumes.

AI providers. Google Gemini, xAI Grok, ElevenLabs and Azure Speech are supported. The accounts and keys are yours and you pay the provider directly. When you switch models, call costs follow the price table in the dashboard.

Questions about integration

How long does integration take?

A simple integration (sending a list and receiving results) usually takes your developer 1⁠–⁠3 days. We can also do the integration work for you.

Does it work with 1C?

Yes, the documentation includes a 1C example. Any system that can send HTTP requests can connect.

Can we use it without the API?

Yes. Upload lists from Excel or CSV and download results to Excel.

Which number do the calls come from?

From your SIP line’s number. You get the line from a telecom operator or SIP provider; we help connect it.

Let us call your number

Send us your scenario or current script. Within 3 business days we make a demo call with your scenario and send a written proposal.

Contact us directly

Sahib Babaliyev+994 50 788 77 90

Tural Hamzayev+994 55 552 54 41

Email[email protected]