1. Conventions
PressOne eSIM Developer Platform
  • OVERVIEW
    • Introduction
    • Attribute descriptions
    • FAQ
    • User journeys
      • Top-up Journey
      • Purchase Journey
    • Guides
      • eSIM installation methods for API Partners
      • How to generate the QR code for an eSIM
  • REST API
    • Data / Data + Voice + SMS eSIM
      • Introduction
      • Error handling
      • Endpoints
        • Authenticate
          • Get token information
          • Refresh access token
          • Request access token
        • Check balance
          • Get balance
        • Compatible devices
          • Get compatible device lite list
        • Browse packages
          • Get packages
        • Place order
          • Submit order
        • Manage orders
          • Get order list
          • Get order
        • Manage eSIMs
          • Get eSIM by ICCID
          • Get eSIMs list
          • Get eSIM package history
        • Install eSIM
          • Get installation instructions
        • Monitor usage
          • Get usage (data, text & voice)
        • Place top up order
          • Get top-up package list
          • Submit top-up order
    • Voice-only eSIM
      • Getting Started
      • Error handling
      • Endpoints
        • List Available Numbers
        • Claim Number
        • Renew Number
        • List User
    • SMS
      • Introduction
      • Authentication
      • Conventions
        • Response envelope
        • Errors
        • Rate limits
        • Idempotency
        • Date ranges & timezone
        • Pagination
      • Endpoints
        • Send an SMS
          • Send SMS /api/sms/send
        • List message logs
          • List message logs /api/sms/logs
        • Get statistics
          • Get statistics /api/sms/statistics
        • Export logs (CSV)
          • Export logs (CSV) /api/sms/export
        • Analytics
          • Overview
            • Overview /api/sms/analytics/overview
          • Message volume
            • Message volume /api/sms/analytics/message-volume
          • Delivery status distribution
            • Delivery status distribution /api/sms/analytics/delivery-status
          • Delivery report
            • Delivery report - /api/sms/analytics/delivery-report
        • Check wallet balance
          • Check wallet balance /api/sms/balance
        • Send an OTP
          • Send an OTP /api/sms/otp/send
        • Verify an OTP
          • Verify an OTP /api/sms/otp/verify
      • Delivery webhooks
        • Delivery webhooks
      • Message lifecycle & statuses
        • Message lifecycle & statuses
      • Appendix: message object
        • Appendix: message object
  1. Conventions

Idempotency

Money/message mutations support opt-in idempotency. Send an Idempotency-Key
header (any unique string you generate, e.g. a UUID) with POST /sms/send or
POST /sms/otp/send:
Idempotency-Key: 6f1c2e94-1c2a-4b3d-9b77-7a0e2f6a1234
First call runs normally; on success the response is stored for 24 hours.
Retry with the same key (after a dropped connection, app restart, etc.) replays
the original response
verbatim with the header Idempotent-Replay: true — so a
network retry can't send/charge twice.
Retry after a failure is not blocked — a failed send was never charged, so you
can safely retry it.
A retry while the original is still in flight returns 409:
{ "success": false, "message": "A request with this Idempotency-Key is already being processed." }
Keys are scoped to your organisation. Requests without the header behave normally.
Modified at 2026-06-23 13:55:12
Previous
Rate limits
Next
Date ranges & timezone
Built with