Node.js: Parse DLR from an Android SMS Gateway API

Featured illustration for Node.js: Parse DLR from an Android SMS Gateway API

Parse DLR in Node.js for an Android SMS Gateway API: status mapping, precedence, checklist, and bulk/geo monitoring notes.

Written by the SMS Gateway team for operators who run phones and airtime themselves — not for theoretical cloud SMS demos.

InformationAndroid SMS GatewayAPIDevelopers
Article
Published
May 26, 2026
Updated
June 3, 2026
Reading time
17 minute read

Key Takeaways

  • Node DLR parsing is fetch/undici + JSON into your store — not an official Node SMS SDK or npm product we sell.
  • HTTP 200 on send is accepted, not delivered. Persist the message id.
  • Unknown status strings fail closed. Confirm enums in Developer Center.
  • Do not clone the Java parse-DLR spoke; same physics, different runtime.
  • Webhook HMAC plus a poll repair job for phones that were offline.
  • You bring the Android and operator credit. We meter devices and send volume.

JSON.parse the radio, not npm

Node.js parse DLR from an Android SMS gateway API is how your worker maps a status payload onto the message id you stored at accept time. It is REST HTTPS/JSON. It is not a branded SDK, not a rewrite of the API guide, and not a clone of Java parse DLR.

If unknown strings become “delivered” in your mapper, npm was never the problem.
A scan bar moving across DLR status cells
Scanning “queued” in Redis is not a handset ack.

Not a Node SDK product

fetch or undici plus JSON.parse is a sample. Language cousins: PHP HTTPS/JSON, C# HTTPS/JSON. Live enums: Developer Center. Product DLR: SMS delivery reports.

Status families

FamilyMeansNode handler
Accepted / queuedControl plane has the jobStore id; do not mark delivered
SentModem handed to operatorStill wait for DLR
DeliveredHandset ack when providedIdempotent upsert; never regress
Failed / expiredRadio, voucher, or operatorTerminal for that id; no blind OTP retry
UnknownSchema driftFail closed; alert

Webhook vs poll repair

Signed webhooks for near-real-time. Poll rows stuck in accepted after the phone was offline. Duplicate callbacks must not double-count. USA canaries catch carrier quirks — USA SMS gateway notes.

Cost

You bring the Android and operator SMS credit. Failed sends still often hit the voucher. Free: 1 device / 300 SMS lifetime / 300 contacts — a bad DLR soak test. See device and SMS volume pricing.

Checklist

  • No Node SDK branding.
  • Message id persisted at accept.
  • Unknown status fails closed.
  • HMAC on webhooks.
  • Poll repair for stuck accepted.
  • Delivered never regresses to pending.
  • OTP retries not driven by DLR noise.
  • Developer Center for live enums.

Next steps

Pair a handset in the device setup guide. n8n can POST the same JSON — it is not a substitute for this mapper.

Jump to the live product docs for this topic—not another long-form article.

FAQ

Frequently asked questions

Direct answers about android sms gateway api.

Is there an official SMS Gateway Node SDK?

No. Use Node’s HTTP client and JSON.parse (or a mapper you own). Live fields live in Developer Center. PHP/C# pages are HTTPS/JSON samples, not SDKs either.

Does a successful fetch mean delivered?

No. The control plane accepted the request. Delivery is radio plus operator. Parse DLR or status webhooks.

Does parsing DLR include carrier credit?

No. You still pay the operator for airtime. Service pricing is devices plus SMS send volume.
Keep learning

Topically related guides—chosen by subject overlap, not a fixed sitewide footer.

Information
node.js android sms gateway api

Node.Js Android Sms Gateway Api: In-Depth Guide

Node.Js Android Sms Gateway Api: In-Depth Guide. Long-tail article focused on exact query "node.js android sms gateway api". Expand with examples, limits, FAQ, and links to hub C. Priced by devices and SMS send volume; BYO phone and operator credit. Developer Center owns live API parameters.

Feb 19, 202616 min
Read article

Browse the full Android SMS gateway knowledge base or return to how an Android SMS gateway works.

Get started

Test the gateway on your own Android phone

Install the app, pair one device, and validate your API flow before choosing a paid plan.

You supply the phone, SIM, and operator SMS credit.