Integración CNAM

Referencia API REST CNAM

Solicite un nombre de llamante mediante HTTPS y gestione el resultado, el cargo y los errores.

Elija el comportamiento de consulta

NivelPrecio público por consultaQué hace
Starter0,0026 US$Utiliza información de nombre de llamante propietaria y en caché.
Standard0,0037 US$Realiza una búsqueda en tiempo real en la red para cada consulta.
Mixed0,004 US$Intenta primero una consulta en tiempo real y, si no encuentra un nombre, recurre a los datos de Starter.

El servicio seleccionado determina el comportamiento de consulta; Mixed no consulta primero la caché. Revise la tarifa asignada a su cuenta antes de usarla en producción. Un nombre de llamante no es prueba de identidad ni de propiedad.

Envíe una consulta autenticada

Punto final: GET https://api.multitel.net/v3/cnam/NUMBER. Use números telefónicos en formato internacional, solo con dígitos e incluido el código de país, sin puntuación ni signo más inicial. Ejecute esto desde su servidor de aplicación usando credenciales API aprobadas.

curl --fail-with-body \
  --user "$MULTITEL_API_USERNAME:$MULTITEL_API_PASSWORD" \
  --header "Accept: application/json" \
  "https://api.multitel.net/v3/cnam/12025550123"

Proporcione las dos variables de entorno a través de la configuración de secretos del servidor. Una credencial bearer provisionada es una alternativa solo cuando ese acceso está habilitado y se cumplen sus restricciones de IP de origen. Nunca incluya un secreto API en un paquete público de código para el navegador.

Guía de autenticación API y primera solicitud

Lea la respuesta JSON

Esta respuesta es ilustrativa. El nombre devuelto y el cargo dependen de la búsqueda y del servicio seleccionado.

{
  "status": {
    "code": 200,
    "msg": ""
  },
  "response": {
    "number": "12025550123",
    "name": "EXAMPLE CALLER",
    "cost": "0.004",
    "balance": "24.9960"
  }
}
status.code
Código de resultado de la aplicación; normalice los valores de cadena o número antes de comparar con 200.
status.msg
El mensaje de resultado o rechazo correspondiente.
response.number
El número consultado.
response.name
El nombre de llamante disponible.
response.cost
El cargo notificado para esta consulta; trátelo como un importe decimal.
response.balance
El saldo de cuenta reportado, cuando esté presente.

Resultados sin nombre y errores

Una solicitud exitosa no garantiza un nombre de llamante útil. Gestione un nombre vacío, un número devuelto en lugar de un nombre y una consulta rechazada. El código de aplicación 403 puede describir crédito insuficiente, una compra prohibida o un número sin resultado; examine el mensaje.

Verifique tanto el estado HTTP como status en JSON antes de acceder a response.name. El objeto de respuesta puede estar ausente en caso de error. Un nombre faltante no debe impedir que la llamada normal se encamine.

Facturación, reintentos y la diferencia con la actualización de ID de llamante

Una nueva consulta puede generar un cargo. Estas interfaces no documentan una clave de idempotencia, por lo que un nuevo reintento puede ser una segunda consulta facturable. Use un número limitado de reintentos con espera progresiva ante fallos de transporte o servicio, resuelva primero los errores de cuenta y concilie los cargos de consulta notificados. Guarde los datos en caché solo durante un período apropiado para su aplicación; los datos del nombre de llamante pueden cambiar.

Una consulta CNAM lee un nombre. No cambia el nombre presentado en sus llamadas salientes. Una actualización del nombre de llamante en LIDB es una operación separada con sus propios campos, autorización, precio y procesamiento.