Relatório de Chamadas com Erro (CDR Error)
Endereço de Chamada da API:
/api/cdrError/API_TOKEN/API_KEY(/id_cliente)
Este Ponto de Acesso fornece a listagem e totalizadores do CDR Error (Relatório de Ligações que não foram completadas devido a erros, ocupado, cancelamentos, rotas não encontradas, etc).
Nível Assinante: Retorna apenas as falhas de chamadas do próprio assinante autenticado (não é necessário informar ID na URL).
Nível Revenda: Retorna as falhas de todos os clientes pertencentes à revenda. É possível especificar o ID do Cliente como último parâmetro da URL para filtrar um assinante específico.
Nível Master (Admin): Retorna os erros de todo o sistema. Permite filtrar por Cliente (passando o ID na URL) e por Provedor/Terminador (via parâmetro
id_provider).
Para os exemplos abaixo, deduziremos que o endereço do servidor seja sip.nextbilling.com.br.
Exemplo de Endereços da API
Sem filtro específico (Traz dados de acordo com o nível da credencial):
[https://sip.nextbilling.com.br/api/cdrError/API_TOKEN/API_KEY](https://sip.nextbilling.com.br/api/cdrError/API_TOKEN/API_KEY)
Com filtros de data, hora e paginação:
[https://sip.nextbilling.com.br/api/cdrError/API_TOKEN/API_KEY?date_ini=2023-10-01&date_end=2023-10-31&limit=100&offset=0](https://sip.nextbilling.com.br/api/cdrError/API_TOKEN/API_KEY?date_ini=2023-10-01&date_end=2023-10-31&limit=100&offset=0)
Parâmetros Suportados
A chamada para obter os dados é realizada utilizando o método HTTP GET.
Parâmetros de Rota (Path)
Parâmetro | Tipo | Descrição |
|
| (Opcional) Passado no final da URL. Filtra o relatório para um Assinante específico. Válido apenas para credenciais Nível Revenda ou Admin. |
Parâmetros de Consulta (Query String)
Parâmetro | Tipo | Padrão | Descrição |
|
| Data atual | Data Inicial da busca no formato |
|
| Data atual | Data Final da busca no formato |
|
|
| Hora Inicial da busca no formato |
|
|
| Hora Final da busca no formato |
|
|
| Filtra as falhas por um ID de Terminador/Provedor específico. (Apenas Nível Admin) |
|
| (Padrão da API) | Limite de registros a serem retornados na chamada. |
|
|
| Exibir registros a partir desta contagem (Paginação). |
Exemplo de Requisição (cURL)
curl -X GET "https://sip.nextbilling.com.br/api/cdrError/7cb40d54-4ebf-55a6-875a-5f57234e97cc-9990/b12c8?date_ini=2023-10-01&date_end=2023-10-15"
Estrutura de Retorno (JSON)
A API retornará um objeto JSON contendo o bloco de informações da requisição, um bloco totals com estatísticas agregadas do período, e um array data com os registros.
Dicionário de Dados do Retorno
Campo | Descrição |
|
|
|
|
| Limite de paginação aplicado na consulta. |
| Deslocamento (offset) atual da paginação. |
| Total de registros retornados especificamente nesta chamada/página. |
| Objeto contendo os totalizadores globais do filtro aplicado. |
| Quantidade total de chamadas com erro no período filtrado. |
| Quantidade de erros do tipo "404 Not Found" (Destino não encontrado). |
| Quantidade de chamadas "Não Atendidas". |
| Quantidade de chamadas com destino "Ocupado". |
| Quantidade de chamadas "Canceladas" pelo originador antes do atendimento. |
| Quantidade de chamadas que falharam por "Congestionamento" ou outros motivos não listados acima. |
Dicionário do array data (Detalhes da Chamada)
Campo | Descrição |
| ID único do registro do erro. |
| ID do Cliente (Assinante). |
| ID do Terminador/Provedor utilizado na tentativa. |
| Data e hora em que a tentativa de chamada ocorreu. |
| Identificador de chamadas (Bina) utilizado na origem. |
| Ramal ou conta SIP de origem da chamada. |
| Número de destino discado (limpo, sem caracteres especiais). |
| Cidade/Região identificada pela tarifação (se aplicável). |
| Tipo de chamada tentada (Ex: Fixo, Móvel, DDI, Interna). |
| Status principal da falha (Ex: |
| Descrição técnica detalhada ou código SIP do motivo do desligamento/falha. |
|
|
| Endereço IP externo do dispositivo/ramal que tentou originar a chamada. |
| User-Agent (Software/Telefone IP) do dispositivo de origem. |
Exemplo de Resposta de Sucesso
{
"error": 0,
"reason": "OK",
"limit": 100,
"offset": 0,
"records": 2,
"totals": {
"total_records": 2,
"total_404": 0,
"total_noanswer": 1,
"total_busy": 1,
"total_cancel": 0,
"total_congestion": 0
},
"data": [
{
"id": 10452,
"customer_id": 45,
"provider_id": 2,
"calldate": "2023-10-05 14:32:01",
"callerid": "11999999999",
"source": "1001",
"destination": "1133334444",
"city": "Sao Paulo",
"type": "Fixo",
"disposition": "BUSY",
"hangup_desc": "Destino Ocupado",
"is_404": 0,
"ip_address": "177.10.20.30",
"useragent": "Yealink SIP-T21P_E2"
},
{
"id": 10453,
"customer_id": 45,
"provider_id": 3,
"calldate": "2023-10-05 15:10:45",
"callerid": "11999999999",
"source": "1002",
"destination": "11988887777",
"city": "Sao Paulo",
"type": "Movel",
"disposition": "NOANSWER",
"hangup_desc": "Ninguem Atendeu",
"is_404": 0,
"ip_address": "177.10.20.30",
"useragent": "Zoiper rv2.10.11"
}
]
}