---
title: "List WhatsApp accounts"
method: GET
path: "/v1/accounts"
tags: ["Accounts"]
---

# List WhatsApp accounts

`GET /v1/accounts`

## Request

- Base URL: `https://api.whatsmcp.com`
- URL: `https://api.whatsmcp.com/v1/accounts`
- Auth: one of:
  - HTTP bearer
  - API key in header `X-API-Key`

The WhatsApp accounts you can use. Every other call needs an account id from here; an account is usable only while its state is "connected". Mirrors the wa_list_accounts MCP tool.

## Response `200`

OK

- ListAccountsOutput
  - `accounts` AccountView[], nullable, required: the WhatsApp accounts this API key can use
    - `account_id` string, required: the id to pass to other wa_ tools
    - `backend` string, required: the account's backend: official (WhatsApp Business API) or personal (a linked device)
    - `country` string: the country the account's phone number belongs to
    - `egress` string: how this account actually reaches WhatsApp: direct, socks5 or wireguard; absent until a bridge reports one
    - `egress_configured` string: the egress this account is configured to use: direct, socks5 or wireguard
    - `egress_ip` string: the public IP this account's traffic leaves from
    - `features` string[], nullable, required: the functions this number supports, e.g. messaging, templates, groups, calls; call only tools whose function is listed here
    - `phone` string, required: the account's phone number in E.164
    - `push_name` string, required: the display name WhatsApp shows for this account
    - `reason` string: why the account is locked, when it is
    - `state` string, required: pairing, connected, disconnected, locked or unlinked; logged_out and pairing_failed rows exist but are not listed
    - `status` string: whether the number is actually working: live, connecting, starting, not_running, whatsapp_down, suspended, pairing, unlinked or locked
    - `status_reason` string: the detail when it is not live, e.g. no_egress, no_plan, stopped
    - `status_since` string: when it stopped working, RFC3339, when known
    - `what_to_do` string: what is wrong and what to do, when it is not live; tell the user

## Other responses

- `401`: Unauthorized
- `403`: Forbidden
- `500`: Internal Server Error

---

[API](https://skmtc.dev/whatsmcp/apis/whatsmcp-api.md) · [All operations](https://skmtc.dev/whatsmcp/apis/whatsmcp-api/llms.txt) · [OpenAPI document](https://skmtc.dev/whatsmcp/apis/whatsmcp-api/revisions/719dc99224ce?raw)
