API v3

GET /activity

Calls, SMS and data across SIMs, numbers and the voice trunk, newest first. Each source gives at most 5000 records per window; has_more then pages into older records. Voice trunk records cover at most the last 92 days.

Addresshttps://api.voicepro.plus/v3/activity
Key permissionread

Fields

NameInType
limitqueryinteger
cursorquerystringnext_cursor from the previous page.
fromquerystringDefault: 24 hours before to.
toquerystringDefault: now.
kindquerycall | sms | data
viaqueryall | sim | number | trunk
numberquerystringDigits matched in from or to.
resultqueryall | ok | failed

* required

Example

curl -X GET "https://api.voicepro.plus/v3/activity?kind=call" \
  -H "Authorization: Bearer vpkey_YOUR_KEY"
Response
{
  "object": "list",
  "data": [
    {
      "object": "activity",
      "id": "act_5mq2k7xw",
      "at": "2026-10-27T14:03:22Z",
      "kind": "call",
      "direction": "out",
      "via": {
        "type": "sim",
        "id": "sim_K7M2Q9",
        "label": "Warehouse van 3"
      },
      "from": "+447700900123",
      "to": "+442079460555",
      "country": "GB",
      "roaming_country": null,
      "seconds": 95,
      "bytes": null,
      "result": "answered",
      "ok": true,
      "charge": null
    }
  ],
  "has_more": false,
  "next_cursor": null
}

Errors

Every error has the same shape: { "error": { "type", "code", "message", "param", "request_id" } }.

missing_api_key401: No Authorization header, or not a Bearer key.
invalid_api_key401: The key is not recognised.
api_key_revoked401: The key was revoked in the portal.
api_key_expired401: The key passed the expiry date set on it.
missing_scope403: The key lacks the scope this endpoint needs; param names the scope.
ip_not_allowed403: The key has an IP allowlist and this request came from elsewhere.
account_not_active403: The workspace is suspended or closed.
rate_limited429: Too many requests for this key or for the whole account (the message says which); wait Retry-After seconds.
internal_error500: Our fault. Quote the request_id to support.