Pular para o conteúdo

Listagem de números

Liste todos os números da sua conta (o principal e os extras) para consultar id, alias, número de telefone e status de cada um em uma única chamada.

Listar números

turbo-notify.sh
curl -X GET \
https://api.turbonotify.com/v1/numbers \
-H "Authorization: Bearer SUA_CHAVE"
Status HTTP: 200
{
  "data": [
    {
      "id": "num_0a1b2c3d4e5f60718293a4b5c6d7e8f9",
      "contact_id": "ct_a1b2c3d4e5f6a1b2c3d4e5f6a1b2c3d4",
      "name": "Turbo Notify",
      "type": "main",
      "alias": "main",
      "number": "5511973117056",
      "description": null,
      "status": {
        "status": "connected",
        "at": "2025-07-16T09:00:00Z",
        "reason": null
      },
      "scheduled_deletion_at": null
    },
    {
      "id": "num_1b2c3d4e5f60718293a4b5c6d7e8f90a",
      "contact_id": "ct_c7abb1f5ee9640bf86a0a20290810ae9",
      "name": "Condomínio Alpha",
      "type": "extra",
      "alias": "condominio_1",
      "number": "5511988887777",
      "description": "Avisos do condomínio 1",
      "status": {
        "status": "connected",
        "at": "2025-07-16T10:01:00Z",
        "reason": null
      },
      "scheduled_deletion_at": "2025-08-16T10:00:00Z"
    },
    {
      "id": "num_2c3d4e5f60718293a4b5c6d7e8f90a1b",
      "contact_id": null,
      "name": null,
      "type": "extra",
      "alias": "condominio_2",
      "number": "5511977776666",
      "description": null,
      "status": {
        "status": "connecting",
        "at": "2025-07-16T10:05:00Z",
        "reason": null
      },
      "scheduled_deletion_at": null
    },
    {
      "id": "num_3d4e5f60718293a4b5c6d7e8f90a1b2c",
      "contact_id": null,
      "name": null,
      "type": "extra",
      "alias": "condominio_3",
      "number": "5511966665555",
      "description": null,
      "status": {
        "status": "pending",
        "at": "2025-07-16T10:10:00Z",
        "reason": null
      },
      "scheduled_deletion_at": null
    }
  ],
  "cursor": null,
  "has_more": false
}

Sem filtros, GET /v1/numbers retorna todos os números cadastrados na organização: o principal primeiro, seguido pelos extras em ordem de criação.

Escopo obrigatório: numbers:read

Filtro

Um filtro opcional na query string reduz a lista:

ParâmetroDescrição
statusSó os números neste status. Aceita um dos valores da Tabela de status, por exemplo ?status=failed. Um valor fora da tabela responde 422 validation_error.

O número principal só aparece na lista quando atende ao filtro.

turbo-notify.sh
# Números da conta que falharam no pareamento
curl -X GET \
"https://api.turbonotify.com/v1/numbers?status=failed" \
-H "Authorization: Bearer SUA_CHAVE"
# O número do seu cliente 4821, pelo alias ou pelo id
curl -X GET \
"https://api.turbonotify.com/v1/numbers/cliente_4821" \
-H "Authorization: Bearer SUA_CHAVE"

Para achar um número específico, consulte-o direto: GET /v1/numbers/{ref}, com o alias ou o id (veja Status).

Campos da resposta

CampoTipoDescrição
dataarrayLista de números da conta (principal + extras)
cursorstring|nullSempre null: esta rota não pagina
has_morebooleanSempre false: esta rota devolve todos os números em uma única página
data[].idstringIdentificador do número (num_ e 32 caracteres). Gerado pelo Turbo Notify, nunca muda e continua o mesmo se o alias for renomeado. Pode ser usado no lugar do alias em qualquer rota /v1/numbers/{ref}/...
data[].contact_idstring|nullIdentificador público (ct_…) do contato próprio do número; null enquanto não resolvido
data[].namestring|nullNome da conta WhatsApp do número (capturado na conexão); null enquanto não houver conexão estabelecida
data[].typestring"main" para o número principal (sempre o primeiro item) ou "extra" para números extras
data[].aliasstringIdentificador único do número na conta ("main" para o principal)
data[].numberstringNúmero de telefone em dígitos E.164 (sem +)
data[].descriptionstring|nullDescrição livre definida por você
data[].statusobject{status, at, reason?}: estado atual do número
data[].status.statusstringpending, pairing, inactive, connecting, connected, disconnected, reconnecting, failed ou revoked, veja Tabela de status
data[].status.atstringTimestamp ISO 8601 do momento em que o número entrou no status atual (data[].status.status): atualiza a cada transição.
data[].status.reasonstring|nullMotivo da falha quando status.status é "failed" (mesmos valores de Motivos de falha); null em qualquer outro status.
data[].scheduled_deletion_atstring|nullTimestamp ISO 8601 da exclusão agendada (veja Remoção); null no número principal e em todo número extra sem exclusão agendada. O número continua funcionando, com o status de sempre, até essa data

Erros possíveis

GET /v1/numbers não depende do plano: o número principal sempre pode ser listado, e a listagem retorna qualquer número extra que já exista na conta independente do plano atual.

A listagem é a única operação de números extras liberada em qualquer plano. Todas as demais (criar, consultar status, conectar/desconectar e remover) exigem um plano com suporte a números extras e retornam 402 feature_not_available caso contrário. Em uma conta que mudou para um plano sem números extras, você continua enxergando os números extras existentes, mas não consegue gerenciá-los.

StatusCódigo de erroDescrição
401not_authenticatedA chave de API está inválida ou ausente.
403insufficient_scopeA chave de API não possui o escopo numbers:read (resposta inclui required_scope).
422validation_errorO filtro status tem um valor que não está na Tabela de status.
500internal_errorErro interno inesperado no servidor.