Skip to main content
All errors follow a consistent structure:
Some error types include a detail map with extra context. The most common case is validation errors, which surface per-field errors:

Authentication and authorization


Resource errors


Validation errors


State and business rule errors


Rate and quota errors


Server errors


Messaging-layer errors

These errors appear as failure_reason in message.failed webhook events after a message was accepted. They come from the carrier network or Surge’s delivery pipeline, not from the Surge API directly. Permanently undeliverable numbers. When Surge records invalid_mobile_number or unreachable_carrier for a destination, that number is flagged globally. All future sends to it (from any account) are cancelled immediately without reaching the carrier. This prevents wasted volume quota. The flag clears automatically if a future send to that number succeeds. See Handle Failures for per-reason remediation guidance.

Phone number purchase errors


Quick lookup