> For the complete documentation index, see [llms.txt](https://docs.sms4sats.com/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.sms4sats.com/introduction.md).

# Introduction

Build Lightning-powered SMS, number-rental, and email activation workflows with sms4sats API v2.

Use sms4sats to receive one-time SMS codes, rent temporary phone numbers, or receive email activation codes. Pay per order over the Bitcoin Lightning Network—no customer account or prepaid balance required.

Prefer a user interface? Open the [sms4sats web app](https://sms4sats.com).

{% hint style="warning" %}
**API v2 cutover:** `https://api.sms4sats.com` is the canonical API. The legacy API is offline and no longer available. Update every integration to the endpoints documented here.
{% endhint %}

## Choose your integration

| API                                                                  | Best for                                 | Payment proof                     | Order access                                         |
| -------------------------------------------------------------------- | ---------------------------------------- | --------------------------------- | ---------------------------------------------------- |
| [Bearer-token API](/getting-started/api-options.md#bearer-token-api) | Web, mobile, backend apps, and most bots | LNbits hold invoice               | Opaque bearer token returned at creation             |
| [L402 API](/getting-started/api-options.md#l402-api)                 | AI agents and Lightning-native services  | BOLT11 invoice + payment preimage | L402 macaroon and preimage                           |
| [Email API](/api-reference/emails.md)                                | Temporary email activation codes         | LNbits hold invoice               | Bearer token when the capability header is requested |

All APIs use this origin:

```
https://api.sms4sats.com
```

## Fastest path: receive an SMS

1. Discover service codes with [`GET /v2/receive-sms/catalog`](/api-reference/catalog-and-quotes.md).
2. Get a live quote with [`POST /v2/receive-sms/quote`](/api-reference/catalog-and-quotes.md#quote-a-receive-sms-order).
3. Create an idempotent order with [`POST /v2/receive-sms/orders`](/api-reference/create-order.md).
4. Save the returned `orderId` and `accessToken`, then pay the invoice.
5. Poll [`GET /v2/receive-sms/orders/{orderId}`](/api-reference/get-order.md) every 5–10 seconds.
6. Stop when the order reaches a [terminal state](/api-reference/order-states.md).

{% hint style="success" %}
Receive-SMS and email orders use **hold invoices**. Payment remains held while fulfillment is in progress and is settled on successful fulfillment. Cancellation and failure behavior depends on the product; see [Hold Invoices & Payment Safety](/getting-started/hold-invoices.md).
{% endhint %}

## Live discovery

```bash
curl -sS https://api.sms4sats.com/health
curl -sS https://api.sms4sats.com/v2/browser
curl -sS https://api.sms4sats.com/v2/l402
```

## Support

| Channel  | Contact                                                                      |
| -------- | ---------------------------------------------------------------------------- |
| Telegram | [@sms4sats](https://t.me/sms4sats) or [@pseudozach](https://t.me/pseudozach) |
| Email    | <support@sms4sats.com>                                                       |
| Sales    | <sales@sms4sats.com>                                                         |
| X        | [@sms4sats](https://twitter.com/sms4sats)                                    |
