Key Takeaways
- Versioning integrations on a core Android SMS gateway means pinning *your* send adapter to today’s Bearer JSON — not inventing /v2 on the handset.
- Blogs drift. https://docs.sms-gateway.app/ wins. Idempotency-Key and webhook HMAC are part of the version.
- An APK bump that breaks pairing is not “API v2.” It is an ops incident.
- Do not scatter curl snippets across twenty services. One module, one changelog.
- Service pricing is based on device count and total SMS sent through the gateway. You need a working Android phone with a SIM and SMS credit from your mobile operator. Operator message costs are yours—we do not sell carrier SMS balance.
How to version your integrations on a core Android SMS gateway is Hub A hygiene: one send module, a pinned OpenAPI snapshot, and a changelog when you change retries or webhook handling. The SIM does not speak semver.
Service pricing is based on device count and total SMS sent through the gateway. Contract: API docs. Product: Android SMS gateway. App sibling: APK-side versioning.
Copy-pasting last year’s curl into a new microservice is not a version. It is archaeology with airtime attached.
Version your adapter, not the phone
Wrap POST /messages once. OTP, receipts, and promo all import it. When docs move, you change one file. Retry backoff belongs in that module too.
What actually versions
| Layer | You version | You do not |
|---|---|---|
| Your adapter | JSON fields, auth header, idempotency | Invent /api/v2/send-sms |
| Webhooks | Signature verify, event-id dedupe | Two competing consumers |
| Android APK | Canary pairing after upgrade | Call it a breaking API change |
| Plans | — | Pretend a new version includes airtime |
Pin OpenAPI the week you ship
Today’s send shape (docs win if this drifts):
curl -X POST "https://app.sms-gateway.app/api/v1/messages" \
-H "Authorization: Bearer $SMS_GATEWAY_API_KEY" \
-H "Content-Type: application/json" \
-H "Idempotency-Key: 3f1b0c8a-9d2e-4c77-9f5a-2b6d1e0f4a83" \
-d '{"to":["+14155552671"],"text":"Your verification code is 481920","type":"sms"}'Freeze a copy of the OpenAPI in your repo with a date. Re-diff before launch. You need a working Android phone with a SIM and SMS credit from your mobile operator. Operator message costs are yours—we do not sell carrier SMS balance.
APK updates are pairing tests
After every app update, send + DLR on a canary device. Downloads. Setup.
Events are part of the contract
message.delivered / failed / received plus HMAC. Webhooks. Changing verify logic is a version bump for every consumer.
Checklist
- Single adapter package.
- OpenAPI snapshot dated.
- OTP uses the adapter, not raw curl in a controller.
- Webhook consumers listed.
- APK canary after upgrades.
Next steps
Grep the repo for old ?key= and send.php. Delete them. Then bump the adapter changelog like it was a real dependency — because it is.
Related product pages
Jump to the live product docs for this topic—not another long-form article.
- SMS API documentationLive endpoint reference
- device and SMS volume pricingPlans and allowances
- Android SMS gateway product guideDefinition, product, and how to buy
- download the Android gateway appGet the APK





