The Zentrix Agent Studio REST API gives you programmatic access to voice agent features. Use it to embed voice widgets on your website, receive call event notifications, and query agent data from your own applications.
All API requests are made to:
https://agentstudio.brtneura.com/api
Every API request must include an API key in the Authorization header:
Authorization: Bearer nas_your_api_key_hereAPI keys use the nas_ prefix (Zentrix Agent Studio) and are generated from the API Keys page in your customer portal. See Authentication for detailed instructions.
| Endpoint | Method | Description |
|---|---|---|
/api/widget/token | POST | Generate a web call access token for the voice widget |
/api/calls/webhooks | POST | Receive call lifecycle events (configured in admin) |
/api/payments/webhooks | POST | Receive payment and subscription events from Razorpay |
/api/catalog | GET | Public agent catalog for corporate site embedding |
API requests are rate-limited to 100 requests per minute per API key. If you exceed this limit, the API returns a 429 Too Many Requests response with a Retry-After header indicating how many seconds to wait.
HTTP/1.1 429 Too Many Requests
Retry-After: 30
Content-Type: application/json
{ "error": "Rate limit exceeded", "retryAfter": 30 }All API responses use JSON. Successful responses return a 200 status code with the response data:
{
"accessToken": "rt_abc123...",
"callId": "call_xyz789...",
"agentName": "Customer Support"
}Error responses include an error field with a human-readable message:
{
"error": "Invalid API key",
"code": "UNAUTHORIZED"
}| Code | Meaning |
|---|---|
200 | Success |
400 | Bad request -- check your request body |
401 | Unauthorized -- invalid or missing API key |
404 | Resource not found |
429 | Rate limit exceeded |
500 | Internal server error -- contact support |
Generate a voice widget token and start a web call:
const response = await fetch('https://agentstudio.brtneura.com/api/widget/token', {
method: 'POST',
headers: {
'Authorization': 'Bearer nas_your_api_key',
'Content-Type': 'application/json',
},
body: JSON.stringify({
agentId: 'your-agent-uuid',
callerName: 'Website Visitor',
}),
});
const { accessToken, callId } = await response.json();
// Use accessToken with the Voice Web SDK to start a browser callSee Widget Token for the full endpoint reference and Webhooks for event-driven integrations.
The voice widget uses the Voice Web SDK for browser-based WebRTC calls. Install it via npm:
npm install neura-voice-sdkFor phone-based calls, no client SDK is needed -- callers dial your assigned phone number and the AI agent handles everything server-side via our voice AI engine.
A Product by BRTNeura Technology LLP
Last updated: 2026-03-05