This external phone provider (EPP) sample connects Microsoft Entra ID to a phone provider for SMS and voice one-time passwords (OTPs). It includes Infobip, Soprano, and Telesign adapters that use OAuth through managed identity federation.
Guided setup deploys one regional endpoint with one provider. Choose JavaScript, C#, or Python; JavaScript is the default.
Start onboarding: download and run the setup script
Guided setup creates your application registration, deploys the Azure resources, and configures the endpoint. Check the required access and tools first, then follow the download-and-run instructions. The guide continues with provider authorization, testing, and activation.
- One Send OTP API for SMS, voice, and evaluation requests.
- Guided deployment with Azure Functions authentication (Easy Auth), Key Vault, and monitoring.
- Evaluation mode to check authentication and decryption without sending a message.
- A Microsoft Entra ID tenant and Azure subscription with the required roles, tools, regional availability, and quota.
- A provider account with access to the intended channels and destinations. Check Microsoft's telephony-provider guidance for current availability and onboarding requirements.
- A separate test environment and resource prefix. Guided setup creates the dedicated application registration for you.
- A budget for Azure hosting and provider charges.
Easy Auth validates the Microsoft caller. The Function decrypts the request and, in live mode, submits it to the configured provider. A successful response confirms provider acceptance; confirm recipient delivery separately.
Follow the deployment guide:
- Prepare access, tools, and budget.
- Download and run the setup script.
- Authorize the provider and test.
- Activate and hand over.
| Task | Guide |
|---|---|
| Deploy or rerun setup | Setup reference |
| Configure provider access | Configuration and validation |
| Understand settings and provider behavior | Technical reference |
| Resolve a problem | Troubleshooting |
| Monitor requests and failures | Monitoring |
| Review the request and response | Send OTP API |
| Develop or extend the sample | JavaScript, C#, Python, or add a provider |
See the documentation index for all guides.
For provider access and account issues, use your provider's support channel. For Microsoft Entra ID configuration, use Microsoft support. Report sample issues in GitHub Issues.
Keep credentials, phone numbers, OTPs, encrypted request bodies, and raw provider responses out of issues and support requests.
