How to migrate from GatewayAPI to Vonage
A developer-focused guide to moving SMS and messaging traffic from GatewayAPI to Vonage, covering channel and compliance differences, request-format mapping, and a step-by-step migration checklist.
GatewayAPI is a Danish SMS gateway and messaging platform (by ONLINECITY.IO) offering SMS, RCS and email APIs with pay-as-you-go pricing and EU data hosting. Vonage is a communications-API provider (part of Ericsson) covering SMS, voice, video and multi-channel messaging. On the messaging.dev Score, GatewayAPI rates 54/100 and Vonage 89/100 — the gap reflects broader channel coverage, more certifications and richer tooling on the Vonage side, which this guide walks through concretely.
What changes when you move
Channels you gain: MMS, WhatsApp, Viber, Facebook Messenger and Voice all become available on Vonage. Channels you keep: SMS and RCS are supported on both. The one channel you lose: GatewayAPI offers an Email API; Vonage does not, so any email sending has to move to a separate provider. Neither platform offers Telegram or Apple Messages for Business.
Compliance: both are GDPR-aligned. Vonage additionally holds ISO 27001, SOC 2 and HIPAA, none of which GatewayAPI lists — so you lose no certification by moving.
Data residency: both offer EU hosting and a data-residency choice. GatewayAPI is EU-only (no US servers); Vonage adds US servers plus APAC and Australia regions.
Pricing: both are pay-as-you-go with volume discounts. GatewayAPI runs on prepaid credit with no monthly fees, from €0.0061 per SMS. Vonage quotes from about $0.0072 per US SMS segment plus carrier fees, so re-model costs against your own destinations.
Tooling: GatewayAPI lists no official SDKs and no sandbox, with docs rated medium. Vonage ships SDKs for Node.js, Python, PHP, Java, C#, Ruby and Kotlin, offers a sandbox, and has docs rated high. Free credit exists on both sides — GatewayAPI grants test credits on request, Vonage a €2 trial credit. Note that GatewayAPI also exposes SMPP and Email-to-SMS interfaces; Vonage is REST-only.
How the request format differs
GatewayAPI — JSON body, token header:
curl https://gatewayapi.com/rest/mtsms \
-H "Authorization: Token YOUR_API_TOKEN" \
-H "Content-Type: application/json" \
-d '{"sender": "ExampleSMS", "message": "Hello World", "recipients": [{"msisdn": 4512345678}]}'
Vonage — form-encoded body, key/secret:
curl -X POST 'https://rest.nexmo.com/sms/json' \
-d 'api_key=YOUR_API_KEY' \
-d 'api_secret=YOUR_API_SECRET' \
-d 'from=Vonage' \
-d 'to=15551234567' \
-d 'text=Hello from Vonage'
The endpoint changes from https://gatewayapi.com/rest/mtsms to https://rest.nexmo.com/sms/json (the legacy SMS API) or https://api.nexmo.com/v1/messages (the newer Messages API). Authentication moves from an Authorization: Token header to api_key + api_secret sent as request parameters on the SMS API, or JWT auth on the Messages API. Payload mapping: GatewayAPI’s sender becomes Vonage’s from; the message field becomes text; and GatewayAPI’s recipients array of { "msisdn": ... } objects collapses to a single to string. You also switch from a JSON request body to form-encoded parameters.
Migration checklist
- Create a Vonage account and generate an API key and secret (or a JWT/application for the Messages API).
- Map each request field:
sender→from,message→text,recipients[].msisdn→to, and swap JSON for form-encoded parameters. - Re-point your sending code to the new base URL and replace the
Authorization: Tokenheader with key/secret (or JWT). - Re-test against Vonage’s sandbox before sending live traffic.
- Update delivery-receipt/webhook callbacks to Vonage’s format and endpoints.
- Run both providers in parallel and compare delivery on your real destinations.
- Cut over once metrics match, then decommission the GatewayAPI path.
For a from-scratch setup, see How to start with Vonage; for a full field-by-field breakdown, see the GatewayAPI vs Vonage comparison.
Watch out for
- No Email channel. GatewayAPI’s Email API has no Vonage equivalent — email sending needs another provider.
- REST-only. Vonage drops the SMPP and Email-to-SMS interfaces GatewayAPI supports; any SMPP integration has to be rebuilt on REST.
- Two APIs, two auth models. Decide up front between the legacy SMS API (key + secret) and the Messages API (JWT) — they differ in payload and authentication.
- Pricing is quoted in USD per US segment plus carrier fees. Rebuild your cost model for your own routes rather than assuming parity with GatewayAPI’s EUR rates.