Year 1 FREE | No per-agent fees, unlimited callsView Pricing Plans
API Reference

Build With the AnrizVoIP API

RESTful APIs to manage tenants, agents, campaigns, calls, CDRs, IVRs, and every aspect of your contact center programmatically. Real-time webhooks for event-driven architectures.

60+
API Endpoints
<120ms
Avg Response Time
99.9%
Uptime SLA
1000/min
Rate Limit
Base URL:https://api.anrizvoip.com/v1

Quick Start

Step 1

Get Your API Key

Navigate to Settings > API Keys in your admin dashboard. Generate a new key and store it securely.

Step 2

Make Your First Call

Use the API key in the X-API-Key header to authenticate. Start with GET /v1/tenants to verify access.

Step 3

Set Up Webhooks

Subscribe to real-time events via POST /v1/webhooks. Receive call, agent, and campaign notifications instantly.

Authentication

Authenticate Your Requests

All API requests require authentication. Choose between API Key authentication for server-side integrations or JWT tokens for session-based access.

API Key Authentication

Recommended

Use your API key in the X-API-Key header for server-to-server integrations. Best for backend services and automated workflows.

Example
curl -X GET https://api.anrizvoip.com/v1/tenants \
  -H "X-API-Key: your_api_key_here" \
  -H "Content-Type: application/json"

Bearer Token (JWT)

Session-Based

Authenticate via the /auth/token endpoint to receive a JWT. Pass it as a Bearer token. Best for frontend apps and session-based access.

Example
curl -X POST https://api.anrizvoip.com/v1/auth/token \
  -H "Content-Type: application/json" \
  -d '{"username": "admin", "password": "your_password"}'

# Response: { "token": "eyJhbG...", "expires_in": 3600 }

curl -X GET https://api.anrizvoip.com/v1/agents \
  -H "Authorization: Bearer eyJhbG..."
Endpoints

API Endpoints

Complete reference for all available endpoints organized by resource type. Click any group to expand its endpoint list.

Tenants

Create, manage, and configure tenants in a multi-tenant environment.

GET/v1/tenantsAdmin
POST/v1/tenantsAdmin
GET/v1/tenants/{id}Admin
PUT/v1/tenants/{id}Admin
DELETE/v1/tenants/{id}Admin
GET/v1/tenants/{id}/statsAdmin

Agents & Users

Manage agents, supervisors, and admin users within tenants.

Campaigns

Create and manage inbound, outbound, and blended calling campaigns.

Calls & Dialer

Initiate calls, manage active calls, and control the dialer engine.

Leads & Contacts

Manage lead lists, import contacts, and handle DNC lists for campaigns.

IVR & Call Routing

Manage IVR flows, ring groups, queues, and time-based routing rules.

CDR & Analytics

Access call detail records, real-time metrics, agent performance data, and campaign analytics.

SIP Trunks & DIDs

Configure SIP trunk connections, manage DIDs, and route inbound calls.

Webhooks & Events

Subscribe to real-time event notifications for calls, agents, campaigns, and system events.

Code Examples

Copy, Paste, Ship

Production-ready code examples for the most common API operations. Copy the code and start integrating in minutes.

Create an Agent
curl -X POST https://api.anrizvoip.com/v1/agents \
  -H "X-API-Key: your_api_key_here" \
  -H "Content-Type: application/json" \
  -d '{
    "name": "John Smith",
    "email": "john@company.com",
    "extension": "1001",
    "role": "agent",
    "campaigns": ["campaign_abc123"],
    "skills": ["english", "sales"],
    "max_concurrent_calls": 1
  }'

# Response (201 Created):
{
  "id": "agent_xyz789",
  "name": "John Smith",
  "extension": "1001",
  "status": "offline",
  "created_at": "2026-04-03T10:30:00Z"
}
Real-Time Events

Webhook Events

Subscribe to events and receive real-time HTTP POST notifications to your endpoint whenever something happens in the platform.

EventDescription
call.startedFired when a new call is initiated (inbound or outbound)
call.answeredFired when a call is answered by an agent or endpoint
call.endedFired when a call ends, includes duration and disposition
call.transferredFired when a call is transferred to another agent or queue
agent.loginFired when an agent logs into the system
agent.logoutFired when an agent logs out or is automatically logged out
agent.status_changeFired when agent status changes (Available, Busy, Paused, etc.)
campaign.startedFired when a campaign is started
campaign.completedFired when all leads in a campaign have been processed
lead.dispositionFired when a lead is dispositioned after a call

Example Webhook Payload

POST https://your-app.com/webhooks/anrizvoip
{
  "event": "call.ended",
  "timestamp": "2026-04-03T10:35:00Z",
  "data": {
    "call_id": "call_def456",
    "direction": "outbound",
    "from": "+14155551234",
    "to": "+14155559876",
    "duration": 245,
    "disposition": "answered",
    "agent_id": "agent_xyz789",
    "agent_name": "John Smith",
    "campaign_id": "campaign_abc123",
    "recording_url": "https://storage.anrizvoip.com/recordings/call_def456.mp3",
    "hangup_cause": "normal_clearing"
  },
  "signature": "sha256=a1b2c3d4e5f6..."
}
Official SDKs

Client Libraries

Official SDKs in popular languages to accelerate your integration. Type-safe, well-documented, and maintained by our engineering team.

{ }

JavaScript / Node.js

npm install @anrizvoip/sdk
Py

Python

pip install anrizvoip
PHP

PHP

composer require anrizvoip/sdk
Go

Go

go get github.com/anrizvoip/go-sdk

Rate Limits

PlanLimitBurst
Standard1,000 requests/min50 requests/sec
Professional5,000 requests/min200 requests/sec
EnterpriseCustomCustom

Rate limit headers are included in every response: X-RateLimit-Remaining

HTTP Status Codes

CodeMeaning
200OK

Request succeeded

201Created

Resource created successfully

400Bad Request

Invalid request body or parameters

401Unauthorized

Missing or invalid API key / token

403Forbidden

Insufficient permissions for this resource

404Not Found

Resource does not exist

409Conflict

Resource already exists or state conflict

429Rate Limited

Too many requests, retry after cooldown

500Server Error

Internal server error, contact support

Start Building

Ready to Integrate?

Get your API key from the admin dashboard and start building. Our engineering team is available for integration support.