Acesso à conta e ao projeto
Use uma conta de API habilitada por meio de HTTPS a partir de um endereço IP permitido. O projeto deve pertencer a essa conta e não pode estar excluído. Use o identificador único do projeto obtido no fluxo de solicitação de portabilidade, não seu identificador numérico no banco de dados nem um número de telefone. Aplique a codificação de URL ao identificador do projeto ao montar uma requisição.
Requisição
curl --silent --show-error --user "$API_USER:$API_PASSWORD" \
"https://api.multitel.net/v3/lnp/project/$PROJECT_ID/events"Resposta
Exemplo fictício de resposta.
{
"status": {
"code": 200,
"msg": "Project Events",
"results": 1
},
"response": [
{
"id": 31,
"subject": "Example project update",
"event": "{\"type\":\"comment\",\"value\":\"Example update\",\"source\":\"Example source\"}",
"type": "comment",
"value": "Example update",
"source": "Example source",
"date_created": "2026-10-23 12:00:00"
}
]
}Um projeto existente sem eventos retorna o código 200 da API, uma lista vazia e status.results igual a 0. Os resultados são solicitados em ordem decrescente de data e hora de criação, sem ordenação adicional para empates, paginação, cursor ou filtro de data.
Leia a carga do evento com atenção
id é o identificador numérico da linha do evento, subject é o assunto armazenado e date_created é o valor de data e hora armazenado. O ponto de acesso preserva sem alterações a cadeia de caracteres event e também tenta decodificar suas propriedades type, value e source. Se a carga não for um objeto JSON ou se uma propriedade estiver ausente, o campo correspondente obtido na análise será uma cadeia de caracteres vazia.
A carga não é uma enumeração fixa nem segue um esquema garantido de texto simples. Não trate o texto de origem como uma identidade verificada nem renderize o conteúdo do evento como HTML. Mantenha os eventos brutos em fluxos de trabalho autorizados no servidor e exiba apenas o texto apropriado aos usuários autorizados. Este ponto de acesso não tem filtro de visibilidade de eventos diferenciado para funcionários e clientes, nem ocultação de conteúdo.
O histórico não garante a entrega
Trata-se do histórico armazenado do projeto, não de um fluxo de webhooks, um cursor de sincronização imutável ou um registro completo de cada alteração no banco de dados. Por exemplo, adicionar números por meio do manipulador de adição de números revisado não cria, por si só, um evento. Além de consultar os eventos, faça a conciliação da lista de números e das contagens por estado.
Erros e limites
Verifique tanto a resposta HTTP quanto status.code/status.msg. Um projeto inexistente, excluído ou que não pertença à conta retorna o código 404 da API com uma mensagem de projeto não encontrado. A autenticação e as restrições de IP de origem também se aplicam. Os exemplos não fazem uma requisição real, e uma resposta bem-sucedida não comprova que uma operadora tenha aceitado ou concluído uma transferência.
Efeitos
O manipulador revisado lê os eventos armazenados e não altera o projeto, não inicia uma transferência nem debita a conta. A visibilidade dos componentes que gravam eventos e os testes com contas autenticadas continuam fazendo parte da revisão pendente do contrato da API.