**With the [Papo](https://papo.global/) REST API, you can list existing inboxes and create new connections for channels such as WhatsApp and Instagram — all through authenticated requests, without opening the dashboard. It is the programmatic way to provision service channels, integrate external systems, and keep your multichannel operation aligned with automation.**

The Papo API exposes inbox resources that let you check the current configuration and add new channels. This allows IT teams, integrators, and white label resellers to manage connections in bulk, replicate setups between accounts, and automate channel activation without relying on the interface.

## Summary of inbox operations via API

| Operation | What it does | When to use |
| :--- | :--- | :--- |
| List inboxes | Returns the account's inboxes, with the associated channel (WhatsApp, Instagram, email, etc.) and configuration details. | Audit active channels, sync with monitoring systems, or prepare migrations. |
| Create inbox | Creates a new inbox, defining the channel, name, and agents who will have access. | Automatically provision channels when onboarding new clients, units, or brands. |

## How API authentication works

All API calls, including inbox listing, require the account's **secret key**. It must be sent as a Bearer token in the `Authorization` header. The account's **public key** is optional, but if sent, it must match the same account as the secret key.

The API base URL is `https://app.papo.global/api/v1`. Keys are generated in the developer area of the Papo dashboard. The secret key appears only once at creation; store it in a safe place and revoke it if you suspect a leak.

To validate authentication, you can call the `GET /api/v1/me` endpoint, which returns the account data. The authentication pattern is the same used in all other endpoints:

```
curl https://app.papo.global/api/v1/me \
  -H "Authorization: Bearer sk_live_…" \
  -H "X-Papo-Public-Key: pk_live_…"
```

## How to manage inboxes in practice

1. Go to the developer/API area in the Papo dashboard and generate a secret key. Also copy the account's public key.
2. In each request, authenticate with the secret key as a Bearer token. If you want to reinforce validation, send the public key in the `X-Papo-Public-Key` header.
3. To **list inboxes**, call the inbox listing endpoint. The response includes each inbox's identifier, the configured channel, and other properties, letting you map what already exists before creating new ones.
4. To **create a new inbox**, send a JSON payload with the desired channel information — for example, WhatsApp (Meta's official API), Instagram, email, or Telegram. Include the inbox name and the identifiers of the agents who should have access. See the official documentation for the exact format of fields and accepted values.
5. After creation, the inbox is immediately available in the dashboard and starts receiving messages as soon as the channel connection is completed (for channels that require pairing, such as WhatsApp, the API returns the necessary instructions).

Because the API is REST and uses JSON, any language with HTTP support can be used to integrate inbox management into scripts, automation tools (such as n8n), or provisioning systems. The official documentation at `https://papo.global/pt/docs` provides details on authentication, parameters, responses, and code examples.

## Who this integration makes sense for

- **IT teams that provision channels in bulk** for new units, franchises, or brands, without having to access the dashboard one by one.
- **White label resellers** who want to automate inbox creation for each new client while keeping configuration standardized.
- **Operations that migrate or replicate configurations** between accounts, using listing to audit and creation to mirror channels.
- **Integrators who connect Papo to external systems** for channel management, ensuring the service environment automatically reflects changes.

## Frequently asked questions

### Do I need the secret key to list inboxes?

Yes. Inbox listing requires authentication with the account's secret key, because it returns sensitive configuration information. The pattern is the same as other API calls: send the Bearer token in the `Authorization` header.

### Can I create a WhatsApp inbox via API?

Yes. When creating an inbox, you specify the desired channel type — including WhatsApp (Meta's official API) and other supported channels. The payload must follow the expected format for the chosen channel, according to the official documentation.

### Is it possible to update an existing inbox via the API?

The current API allows you to list and create inboxes. To change settings for an existing inbox (such as swapping agents or renaming), you can use the Papo dashboard or, if necessary, recreate the inbox with the new parameters.

### How do I associate agents with an inbox during creation?

In the creation payload, you can provide the identifiers of the agents who should have access to the inbox. These IDs can be obtained through the teams and members API. See the documentation for the exact format.

### Is authentication the same as used in other Papo endpoints?

Yes. All calls that access account resources use the secret key as a Bearer token. The public key is optional and, if sent, must match the same account.

### Where can I find the exact paths and payload format?

In the official API documentation, available at `https://papo.global/pt/docs`. There you'll find details on authentication, parameters, responses, and code examples for inboxes and other resources.

## Read also

- [How to use the Papo API to manage teams and members](/hc/papo/articles/how-to-use-papo-api-to-manage-teams-and-members)
- [How to use the Papo API to create and manage labels (tags)](/hc/papo/articles/how-to-use-papo-api-create-manage-tags)

---

**[Start automating your connections right now →](https://chat.papo.global/app/auth/signup?papo_lp=home&utm_source=lp&utm_medium=landing&utm_campaign=home&utm_content=start-free&papo_lp_v=start-free)**

Create your free account and integrate channels via API without opening the dashboard.