> ## Documentation Index
> Fetch the complete documentation index at: https://docs.pilotstatus.com.br/llms.txt
> Use this file to discover all available pages before exploring further.

# WhatsApp Numbers and Multi-Tenant Architecture in Pilot Status

> Manage multiple WhatsApp numbers and build multi-tenant SaaS with Pilot Status. Each number is isolated with its own API, webhooks, and message history.

In Pilot Status, every WhatsApp-connected phone number is represented as a **number** — the core unit around which your entire project is organized. Whether you're connecting a single business line or managing hundreds of customer accounts, numbers are how you identify, configure, and address WhatsApp connections in your API calls, webhooks, and dashboard.

## What Is a Number?

A number represents one WhatsApp-connected phone number inside your Pilot Status project. When you connect a phone number — either by scanning a QR code (Unofficial API) or linking your WABA credentials (Official API) — Pilot Status creates a number object and assigns it a unique identifier.

Each number is fully isolated from every other number in your project:

* **Separate message history** — Conversations and logs for one number are never mixed with another.
* **Independent webhooks** — You configure webhook URLs per number, so each line can route events to a different endpoint.
* **Dedicated logs** — Connection status, errors, and activity are tracked individually.
* **Its own API key** — Each number has a number-scoped `ps_` key; requests made with that key act on that number.

## Multi-Number Projects

Your Pilot Status plan defines the maximum number of WhatsApp numbers you can connect simultaneously. Within that limit, you can connect as many numbers as you need and manage them all from a single dashboard and API.

Running multiple numbers in a single project is useful for a range of scenarios:

<CardGroup cols={3}>
  <Card title="Load Distribution" icon="arrow-right-arrow-left">
    Spread high message volumes across several numbers to stay within WhatsApp rate limits and keep throughput high.
  </Card>

  <Card title="Separate Brand Lines" icon="tag">
    Keep distinct brands or product lines on their own numbers, each with its own message history and identity.
  </Card>

  <Card title="Department Routing" icon="sitemap">
    Give your sales, support, and operations teams individual numbers so conversations stay organized and accountable.
  </Card>
</CardGroup>

## Multi-Tenant SaaS

If you're building a SaaS product on top of Pilot Status, the multi-tenant model lets each of your customers connect their own WhatsApp number under your single Pilot Status project. You don't need to create a separate Pilot Status account for every customer — you manage the full fleet from one place.

From your dashboard and API, you see every connected number across all your customers. You can inspect message history, configure webhooks, and trigger sends for any customer number. Each customer's data remains isolated from every other customer's.

To send a message on behalf of a specific customer, use that number's **number-scoped API key** in the `x-api-key` header — the key itself selects which WhatsApp connection sends:

```bash theme={null}
curl -X POST "https://pilotstatus.com.br/v1/messages/send" \
  -H "x-api-key: ps_customer_number_key" \
  -H "Content-Type: application/json" \
  -d '{ "text": "Hello from your app!", "destinationNumber": "+5511999999999" }'
```

Pilot Status routes the message through the correct WhatsApp connection automatically. Your customers never interact with Pilot Status directly — they only see your product.

## Number Identifiers

Every number has a unique ID (e.g. `cmm0abc123`) that appears in webhook payloads (`numberId`) and management endpoints. There are two ways to find a number's ID:

<Tabs>
  <Tab title="Dashboard">
    Navigate to **Dashboard → Numbers**. The ID for each connected number is displayed in the number's detail panel. You can copy it directly from the interface.
  </Tab>

  <Tab title="API">
    Send a `GET` request to the numbers endpoint with your **tenant-scoped** key to retrieve all connected numbers in your project, including their IDs, status, and connection type.

    ```bash theme={null}
    curl "https://pilotstatus.com.br/v1/numbers" \
      -H "x-api-key: ps_your_tenant_key"
    ```

    The response returns an array of number objects, each containing the `id` field you use in management calls and webhook correlation.
  </Tab>
</Tabs>

<Info>
  Each plan includes a fixed number of connected numbers, and you can buy extra numbers as a recurring add-on. If your project requires a higher limit, contact Pilot Status to discuss a custom plan.
</Info>
