Builder Resources

Everything you need to build with Sakura SMS

Guides, references, SDKs, and tutorials to help you go from zero to production. Whether you are sending your first OTP or building a multi-channel messaging platform, start here.

Frequently asked questions

Common questions about building with the Sakura SMS platform.

We provide official SDKs for JavaScript/TypeScript (Node.js and browser), Python, PHP, Java, Go, and Ruby. All SDKs are open source and available on GitHub. They handle authentication, request signing, error handling, and automatic retries. If your language is not listed, you can use our REST API directly with any HTTP client.

Default rate limits are 100 requests per second for messaging endpoints and 50 requests per second for Lookup and Verify endpoints. These limits apply per API key. If you need higher throughput, contact our sales team to discuss enterprise rate limits. The API returns a 429 status code with a Retry-After header when limits are exceeded.

Yes. Every account includes a sandbox environment with test API keys (prefixed with sk_test_). Sandbox messages are simulated -- they follow the full API flow but are not delivered to real handsets. You can use magic phone numbers to trigger specific responses: +255700000001 always succeeds, +255700000002 always fails, and +255700000003 simulates a timeout.

Webhooks are delivered with at-least-once semantics and automatic retries. If your endpoint returns a non-2xx response, we retry with exponential backoff for up to 24 hours (attempts at 1, 5, 30, 60, 360, and 1440 minutes). All webhook payloads include a unique event ID for deduplication. You can verify webhook authenticity using the HMAC-SHA256 signature in the X-Sakura-Signature header.

Yes. Sender IDs must be registered with TCRA before use in production (3-5 business days). SMS messages to Tanzanian numbers are limited to 160 characters for single-part messages (70 characters for Unicode). Promotional SMS is restricted to 7:00-21:00 EAT. Our SDKs automatically handle character encoding and message segmentation for Swahili and other local languages.

All developers get access to our documentation, community Discord, and Stack Overflow tag (sakura-sms). Paid plans include email support with 24-hour response times. Business and Enterprise plans add priority support with 4-hour and 1-hour response times respectively, plus a dedicated Slack channel and named technical account manager.

The API changelog is published at docs.sakuragroup.co.tz/changelog and updated with every release. We follow semantic versioning -- breaking changes are announced at least 90 days in advance. You can subscribe to changelog updates via RSS, email, or our Discord announcements channel. SDK changelogs are maintained in each repository's CHANGELOG.md file.

Our standard SLA guarantees 99.95% API uptime measured monthly. The Messaging API targets sub-3-second delivery for domestic (Tanzania) messages. The Verify API targets sub-2-second OTP delivery. Enterprise plans include custom SLAs with financial credits for downtime. Current and historical uptime is published at status.sakuragroup.co.tz.

Ready to start building?

Create a free account, grab your API key, and send your first message in under five minutes.