Skip to main content
Use the SMS REST API for direct text delivery. SMS is text-only; use a WhatsApp API for media, documents, location, buttons, or lists.

Endpoint

Headers

Send SMS

Parameters

Phone numbers may include a leading +; KarFlows normalizes the value before sending.

Sender name rules

KarFlows rejects SMS requests when:
  • The sender name is not approved for the account.
  • The recipient’s mobile network is not approved for that sender.
  • Sender name belongs to another customer.
  • The account has no SMS balance.
  • The plan does not allow SMS.
  • SMS API is disabled by an administrator.
Sender names are matched without case or spacing differences, but KarFlows sends the exact approved value. For example, DMBLUEWAVE can resolve to the approved sender DM BLUEWAVE.

Check balance

The response includes available, used, and temporarily reserved SMS segments.

SMS logs

limit defaults to 50 and is capped at 200.

Success response

success: true means the delivery network accepted the SMS and returned a message ID. It does not confirm delivery to the handset.

Error response

Charging and refunds

KarFlows reserves the required SMS segments before submission. An accepted message consumed the upstream SMS submission even when a later carrier or handset failure occurs. Do not automatically resend a 200 response; doing so can create duplicate messages and charges.

Final delivery

Use GET /api/sms/logs to inspect the current status:
  • sent: accepted, waiting for a final report.
  • delivered: confirmed delivered by the network.
  • failed: rejected synchronously or failed in a later delivery report.