If you are a partner, Start building is the longer
version of this page. It has the same first call, plus your first campaign and
the go-live checklist.
1
Create a key
Open the sandbox. There is nothing to
sign up for, and you can look around first. When you are ready, go to
Developers and press Create key.The first time, the console asks for your work email. We send you an access
code and a confirmation link. Open the link, press Continue to your
workspace, then press Create key again. If we already gave you an access
code, press Have an access code? and enter it instead of your email.You get three things on the spot:
The key is shown once. We store only its SHA-256, so we cannot recover a
lost key; you rotate it instead. Keep both secrets in your secret manager and
out of git.You can rotate and revoke keys on the same page. Rotating issues the
replacement before it revokes the old key, so there is never a moment when
neither key works. Deploy the new key, then revoke the old one.Every request on this page goes to the sandbox at
https://sandbox.voice.miraiminds.co. Once your company has
gone live, send the same requests to
https://prod.voice.miraiminds.co. On the production address, a key from a
workspace that has not gone live is refused with
403 production_workspace_required.Check that it works:2
Create an agent
An agent is the reusable configuration a call runs: its prompt, opening line,
voice, language and limits. You create it once and use it for thousands of
calls.Keep that
- cURL
- Python
- Node.js
201 Created
id.3
Place a call
variables fill the {{placeholders}} in system_prompt and
first_message. webhook_url is where lifecycle events land.- cURL
- Python
- Node.js
202 Accepted
202 means the call is accepted but not yet connected, so the phone has not
rung. Poll GET /v2/calls/{id}, or better, wait for
the webhook.4
Receive the webhook
We POST a signed JSON event to your The final event for a connected call:96 seconds is billed as 10 blocks of 10 seconds. On T5 that is ₹8.34, which
leaves ₹191.66 of the starting ₹200.
Blocks are whole and rounded up, with a one-block
minimum.
webhook_url at each lifecycle
transition. Verify the signature before you trust the body.- Python
- Node.js
POST https://example.com/mirai/webhook
Next
- In Python,
pip install --extra-index-url https://sandbox.voice.miraiminds.co/pypi/simple mirai-voicegives you the same four requests asmirai.agents.create/mirai.calls.create, with idempotency, retries and signature verification already handled. - Campaigns: upload a list and let the platform dial it, with windows, retries, budgets and a report.
- Webhooks: every event type, retries and replay protection.
- Calls: statuses,
ended_reason, transcripts, recordings and abort. - Billing & tiers: the price ladder and what a minute costs.
- Limits: rate limits, concurrency and India calling-window rules.