ResoneraDocs

Conventions

Formats, pagination and ids used across the API.

Requests

  • Base URL: https://api.resonera.ai
  • Bodies are JSON. Send Content-Type: application/json with every request that has a body.
  • Authenticate with the X-API-Key header. See Authentication.

IDs

Agents, campaigns, voices and phone numbers have UUID ids. Calls are identified by call_id, which also appears on campaign contacts once they've been dialed.

Phone numbers

E.164 everywhere: a +, the country code, then the number, with no spaces. For example +919876543210.

Timestamps

ISO 8601. Responses are in UTC. In filters such as since, a time without an offset is read as UTC.

Pagination

List endpoints take limit (1 to 200, default 50) and offset (default 0), and return the page along with total, the number of matching items across all pages.

{ "calls": [ … ], "total": 312, "limit": 200, "offset": 200 }

Keep requesting with offset += limit until offset >= total.

The exception is GET /campaigns/{campaign_id}/contacts, which returns every contact as a plain array.

Partial updates

PATCH changes only the fields you send. Sending null for a field is rejected rather than treated as "clear it".

Ownership

A key sees its own organization's data. Anything else returns 404, exactly as if it didn't exist, so ids can't be probed.

On this page