Why this step exists
Exotel routes calls through Apps — small flow definitions in their App Bazaar that describe what should happen when a call rings in or out. Bolna's integration uses two apps:
- Outbound app: tells Exotel "when Bolna dials out, hand the audio stream to Bolna's media socket."
- Inbound app: tells Exotel "when an inbound call hits this ExoPhone, route the audio to Bolna's agent webhook."
Without these two apps configured + their SIDs registered on Bolna, you'll see dispatch errors like "Exotel App ID not configured" or "ExoPhone has no handler attached." Most customers hit this after connecting Exotel for the first time — the main Connect Exotel guide mentions it but links here for the actual steps.
Step 1 — Create the outbound app
- Sign in at my.exotel.com
- Left sidebar → App Bazaar
- Click "+ Create app" → pick Outbound template
- Name the app something identifiable:
Bolna outbound - Leave the default applet as-is (Bolna's integration overrides it per-call via the API)
- Click Save. Note the App SID shown at the top of the saved app page — it looks like
http://my.exotel.com/yourcompany/exoml/start_voice/12345. The number at the end is the App ID.
Step 2 — Create the inbound app
Skip this step if you only want outbound calling and aren't receiving inbound on the ExoPhone.
- App Bazaar → "+ Create app" → pick Receive and forward call
- Name it:
Bolna inbound - Connect Applet: set the destination to Bolna's agent webhook URL. Get this URL from Bolna → Providers → Exotel → Webhook URL (looks like
https://api.bolna.ai/v1/exotel/incoming/{agent_id}). - Save. Copy the App ID (same format as outbound).
Step 3 — Attach the inbound app to your ExoPhone
Your ExoPhone needs to know which app to invoke when an inbound call rings.
- Exotel sidebar → ExoPhones
- Click on your number
- Set Incoming call action → Connect to App → pick the Bolna inbound app you created in step 2
- Save
Step 4 — Register both SIDs in Bolna
- Sign in at platform.bolna.ai
- Providers → click your Exotel provider
- Paste the Outbound App ID from step 1
- Paste the Inbound App ID from step 2 (or leave blank if outbound-only)
- Save. Bolna immediately retries number sync — your ExoPhone should now appear in My Numbers within 1 minute.
Verifying the setup
From Cualify, dispatch a test call to your own phone via any playbook. The recipient (you) should hear:
- Your ExoPhone number on caller ID
- The AI disclosure clip (~5 seconds)
- The agent's greeting in your selected language
If the call connects but you hear silence, the outbound app SID is probably wrong or stale — re-copy from App Bazaar and re-paste in Bolna.
Troubleshooting
App Bazaar shows my apps but no SID
Click the app to open its detail page; the SID appears in the URL bar and in the "Applet URL" field at the top.
Bolna says "App ID format invalid"
Paste only the numeric ID (the last segment of the App SID URL), not the full URL. E.g. paste 12345 not http://my.exotel.com/yourcompany/exoml/start_voice/12345.
Inbound calls go to a busy tone
The Connect Applet on the inbound app is pointing at the wrong webhook URL. Re-fetch the URL from Bolna's Exotel provider page — it's agent-specific so make sure the {agent_id} in the URL matches the agent that should answer.