# MiniMoth > WhatsApp/SMS OTP authentication API for Indian developers and startups. Send and verify OTPs via two REST endpoints — no WhatsApp Business Account setup, no TRAI DLT registration, no telecom paperwork. MiniMoth handles all regulatory complexity for both channels. MiniMoth is built for Indian phone numbers (+91). Every OTP is sent over WhatsApp first, falling back to SMS automatically if WhatsApp delivery fails — both channels run on MiniMoth's own infrastructure, so customers never set up a WhatsApp Business Account, register an SMS sender ID, or manage compliance for either. API keys are prefixed `mm_live_` for live and `mm_test_` for test mode (test mode returns fixed OTP `000000`, no message sent, no credits consumed). Projects can also opt in, per region, to send OTPs to US and EU-area phone numbers over WhatsApp — see [International WhatsApp OTP](https://minimoth.dev/docs/international-whatsapp). International sends are WhatsApp-only, with no SMS fallback. Base URL: `https://api.minimoth.dev` Authentication: Pass your API key in the `X-Api-Key` header on every request. ## Docs - [Quickstart](https://minimoth.dev/docs/quickstart): Get an API key and send your first OTP in under 5 minutes. - [Authentication](https://minimoth.dev/docs/authentication): How to use your API key and what the rate limits are. - [Sessions](https://minimoth.dev/docs/sessions): Validate, refresh, and log out user sessions. - [Identity](https://minimoth.dev/docs/identity): Recognise the same phone number across logins, and delete an identity on request. - [Node.js SDK](https://minimoth.dev/docs/sdk-nodejs): Integrate MiniMoth into Node.js, Express, and Next.js apps using the official SDK. - [Recipes](https://minimoth.dev/docs/recipes): Common integration patterns: OTP-only delivery, protecting routes, and handling token refresh. - [Error Codes](https://minimoth.dev/docs/error-codes): Complete list of MiniMoth API error codes and their meanings. - [International WhatsApp OTP](https://minimoth.dev/docs/international-whatsapp): Send OTPs to US and EU phone numbers over WhatsApp — opt-in per region, no SMS fallback. - [API Reference](https://minimoth.dev/docs/api-reference): Every MiniMoth API endpoint at a glance — method, path, and where to find the full details. - [Dashboard](https://minimoth.dev/docs/dashboard): A tour of the MiniMoth dashboard: what each page is for, and the built-in conveniences — Playground, Test Group, spend cap, alerts, themes and Streamer mode. - [Branding](https://minimoth.dev/docs/branding): Powered by MiniMoth badges — help your users recognise the OTP sender before the message arrives. - [Firebase](https://minimoth.dev/docs/integrations/firebase): Verify a phone number with MiniMoth, then mint a Firebase custom token from your own backend. - [Supabase](https://minimoth.dev/docs/integrations/supabase): Use MiniMoth as Supabase Auth's Send SMS Hook for WhatsApp-first, SMS-fallback OTP delivery to Indian phone numbers. - [Auth0](https://minimoth.dev/docs/integrations/auth0): Use MiniMoth as Auth0's custom phone provider for WhatsApp-first, SMS-fallback OTP delivery to Indian phone numbers. - [Test Group](https://minimoth.dev/docs/integrations/test-group): Let up to 5 real testers preview OTPs sent through your Supabase or Auth0 Test Hook, with no real messages sent and no charge for the previews themselves. Full page content for every doc above: https://minimoth.dev/llms-full.txt