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

# Status do número

> Espelho de `GET /{waba_id}/phone_numbers` da Meta Cloud API. Retorna os números da conta com status de conexão, qualidade e limite de mensagens.

Retorna os números da conta com o status de conexão, a classificação de qualidade e o limite de mensagens em vigor. É a consulta usada para verificar se o número está apto a enviar mensagens e quantos destinatários ele alcança por dia.

```json theme={null}
{
  "data": [
    {
      "id": "1234567890123456",
      "display_phone_number": "+55 11 99999-9999",
      "verified_name": "Minha Empresa",
      "quality_rating": "GREEN",
      "status": "CONNECTED",
      "whatsapp_business_manager_messaging_limit": "TIER_2K",
      "throughput": { "level": "STANDARD" },
      "platform_type": "CLOUD_API"
    }
  ]
}
```

## Campos

| Campo | Descrição |
| - | - |
| `id` | O `phone_number_id`, usado nas URLs de envio |
| `display_phone_number` | Número no formato internacional |
| `verified_name` | Nome de exibição aprovado pela Meta |
| `quality_rating` | Qualidade do número: `GREEN`, `YELLOW` ou `RED` |
| `status` | Situação do número, como `CONNECTED` |
| `whatsapp_business_manager_messaging_limit` | Limite de mensagens em vigor |
| `throughput` | Capacidade de envio por segundo, em `level` |
| `platform_type` | `CLOUD_API` ou `ON_PREMISE` |
| `name_status` | Situação do nome de exibição, como `APPROVED` ou `NON_EXISTS` |
| `code_verification_status` | Situação da verificação do número |
| `is_official_business_account` | Indica se a conta possui o selo oficial |

Os campos são selecionados pelo parâmetro `fields`. Sem ele, a Meta retorna um conjunto reduzido, que não inclui `status` nem o limite de mensagens.

> [!NOTE]
>
> O campo `messaging_limit_tier` foi descontinuado pela Meta e substituído por `whatsapp_business_manager_messaging_limit`. Requisições que utilizam o nome antigo retornam apenas o `id`, sem o limite.

## Limite de mensagens

O limite define quantos destinatários distintos o número pode alcançar em um período móvel de 24 horas, considerando apenas conversas iniciadas pela empresa.

| Valor | Destinatários por dia |
| - | - |
| `TIER_250` | 250 |
| `TIER_2K` | 2.000 |
| `TIER_10K` | 10.000 |
| `TIER_100K` | 100.000 |
| `TIER_UNLIMITED` | Sem limite |

O aumento de nível depende da verificação da empresa e do volume de mensagens entregues com qualidade alta. As regras estão em [limites de mensagens da Meta](https://developers.facebook.com/documentation/business-messaging/whatsapp/messaging-limits).

## Consultar um número específico

Para consultar apenas um número, use o `phone_number_id` diretamente:

```bash theme={null}
curl 'https://cloud.datafyapi.com.br/v1/{phone_number_id}?fields=display_phone_number,quality_rating,whatsapp_business_manager_messaging_limit,throughput' \
  -H 'Authorization: Bearer sk_live_xxx'
```

## Saúde do número

O campo `health_status` informa se o número está apto a enviar mensagens e, quando não está, qual entidade impede o envio:

```bash theme={null}
curl 'https://cloud.datafyapi.com.br/v1/{phone_number_id}?fields=health_status' \
  -H 'Authorization: Bearer sk_live_xxx'
```

```json theme={null}
{
  "health_status": {
    "can_send_message": "LIMITED",
    "entities": [
      {
        "entity_type": "PHONE_NUMBER",
        "id": "1234567890123456",
        "can_send_message": "LIMITED",
        "additional_info": [
          "Your display name has not been approved yet. Your message limit will increase after the display name is approved."
        ]
      },
      { "entity_type": "WABA", "id": "1804533510429086", "can_send_message": "AVAILABLE" },
      { "entity_type": "BUSINESS", "id": "7284633064948531", "can_send_message": "AVAILABLE" },
      { "entity_type": "APP", "id": "941602968688733", "can_send_message": "AVAILABLE" }
    ]
  }
}
```

O campo `can_send_message` assume `AVAILABLE`, `LIMITED` ou `BLOCKED`, e é informado tanto no resultado geral quanto em cada entidade: o número, a conta do WhatsApp Business, o portfólio comercial e o aplicativo. Quando há restrição, `errors` e `additional_info` descrevem a causa e a solução.

> [!NOTE]
>
> A entidade `APP` refere-se ao aplicativo da Datafy, responsável pela conexão com a Meta.


## OpenAPI

````yaml api-reference/whatsapp/openapi.json GET /v1/{waba_id}/phone_numbers
openapi: 3.1.0
info:
  title: Datafy API — WhatsApp
  version: 1.0.0
  description: Espelho da Meta Cloud API e endpoints próprios da Datafy.
servers:
  - url: https://cloud.datafyapi.com.br
    description: Produção
security:
  - bearerAuth: []
tags:
  - name: Templates
  - name: Mídia
  - name: Datafy
paths:
  /v1/{waba_id}/phone_numbers:
    get:
      tags:
        - Número
      summary: Status e limites do número
      description: >-
        Espelho de `GET /{waba_id}/phone_numbers` da Meta Cloud API. Retorna os
        números da conta com status de conexão, qualidade e limite de mensagens.
      operationId: listarNumeros
      parameters:
        - $ref: '#/components/parameters/WabaId'
        - name: fields
          in: query
          required: false
          schema:
            type: string
          example: >-
            id,display_phone_number,verified_name,quality_rating,status,whatsapp_business_manager_messaging_limit,throughput,platform_type
          description: Campos retornados, separados por vírgula.
      responses:
        '200':
          description: Números da conta.
          content:
            application/json:
              example:
                data:
                  - id: '1234567890123456'
                    display_phone_number: +55 11 99999-9999
                    verified_name: Minha Empresa
                    quality_rating: GREEN
                    status: CONNECTED
                    whatsapp_business_manager_messaging_limit: TIER_2K
                    throughput:
                      level: STANDARD
                    platform_type: CLOUD_API
                paging:
                  cursors:
                    before: QVFIU...
                    after: QVFIU...
        '400':
          $ref: '#/components/responses/MetaError'
        '401':
          $ref: '#/components/responses/Unauthorized'
        '402':
          $ref: '#/components/responses/PaymentRequired'
        '429':
          $ref: '#/components/responses/TooManyRequests'
      externalDocs:
        description: Limites de mensagens da Meta
        url: >-
          https://developers.facebook.com/documentation/business-messaging/whatsapp/messaging-limits
components:
  parameters:
    WabaId:
      name: waba_id
      in: path
      required: true
      schema:
        type: string
      description: ID da conta do WhatsApp Business. Descubra com `GET /me`.
  responses:
    MetaError:
      description: Erro retornado pela Meta, repassado sem alteração.
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/MetaError'
          example:
            error:
              message: (#131030) Recipient phone number not in allowed list
              type: OAuthException
              code: 131030
              fbtrace_id: AbCdEfGhIjK
    Unauthorized:
      description: Token ausente ou inválido.
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/DatafyError'
          example:
            statusCode: 401
            message: Token inválido ou não encontrado.
    PaymentRequired:
      description: Assinatura da Datafy inativa.
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/DatafyError'
          example:
            statusCode: 402
            message: >-
              Assinatura inativa. Ative sua assinatura no painel para voltar a
              usar a API.
    TooManyRequests:
      description: Limite de requisições excedido.
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/DatafyError'
          example:
            statusCode: 429
            message: Rate limit excedido (60 req/min). Tente novamente em 12s.
  schemas:
    MetaError:
      type: object
      properties:
        error:
          type: object
          properties:
            message:
              type: string
            type:
              type: string
            code:
              type: integer
            error_subcode:
              type: integer
            fbtrace_id:
              type: string
    DatafyError:
      type: object
      properties:
        statusCode:
          type: integer
        message:
          type: string
  securitySchemes:
    bearerAuth:
      type: http
      scheme: bearer
      description: >-
        Token gerado no painel da Datafy ao criar o canal. Formato:
        `sk_live_xxx`.

````

This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.