Verificación de la ubicación [Developer Preview]
La herramienta de verificación de la ubicación le permite verificar la ubicación de un dispositivo de usuario final dentro de un área especificada. Utiliza técnicas de posicionamiento de redes celulares para localizar el dispositivo, lo que proporciona varias ventajas sobre el posicionamiento GPS, entre ellas:
- Seguro y de confianza: La localización mediante redes móviles utiliza información procedente directamente de las redes de los operadores de telefonía móvil, lo que elimina el riesgo de falsificación de la señal GPS y de elusión a través de una VPN.
- Integración simplificada: Identity Insights se puede integrar fácilmente en tus aplicaciones, lo que reduce la complejidad y el esfuerzo que supone el desarrollo de software.
Algunos casos de uso de la prevención del fraude en los que resulta útil la verificación de la ubicación:
- Verificación de usuarios en el comercio electrónico: Las plataformas de comercio electrónico y de contenidos se enfrentan al reto de que los usuarios consuman servicios, contenidos y licencias fuera de la región para la que se les ha concedido la licencia. La función Verify de ubicación permite a estas plataformas comprobar si la ubicación de un usuario final se encuentra dentro de la región autorizada para el servicio, el contenido o la licencia.
- Verificación en el punto de venta: Cuando un usuario realiza una compra en una tienda utilizando su tarjeta de crédito o débito, en ocasiones su entidad financiera querrá verificar si dicha transacción es fraudulenta. La verificación de la ubicación podría utilizarse junto con el número de teléfono introducido en su aplicación bancaria para consultar el lugar desde donde se inició la transacción, con el fin de confirmar que el usuario se encuentra en ese lugar.
- Contenidos basados en la localización: Verify la ubicación de un usuario durante eventos deportivos o conciertos para mejorar su experiencia con contenido personalizado, como repeticiones de goles, diferentes ángulos, información útil y mucho más.
Nota: El uso de esta información en entorno de producción requiere la autorización de los operadores de telefonía móvil, que se gestiona a través del «Registro de redes». Para saber cómo solicitar el acceso, sigue esta guía.
Requisitos previos
Para utilizar Identity Insights, debe asegurarse de que su Account está configurado correctamente; consulte la sección Primeros pasos para obtener más información:
- Crear tu Account,
- Creación de una aplicación de Vonage para su uso con la API Identity Insights,
- Los distintos entornos disponibles y cómo configurar tu Account para utilizarlos,
- Y cómo utilizar la interfaz de usuario «Primeros pasos» del panel de control para utilizar la API sin tener que escribir código.
Esta guía explicará cómo utilizar el programa Location Verification Insight utilizando cURL.
La API de Identity Insights está disponible a través de varios puntos de conexión regionales. Los ejemplos de esta guía utilizan el punto de conexión de la UE, pero puedes consultar la lista completa en Detalles técnicos.
Realizar una llamada a la API
La autenticación para la API Identity Insights se realiza mediante JWT, un token JSON compacto y autocontenido. Para generar un JWT, puede utilizar nuestra herramienta generador en línea, o bien utiliza el CLI de Vonage. Necesitará su ID de aplicación y su clave privada para generar el JWT. Una vez que tenga su JWT, puede enviar una solicitud a la API.
Este ejemplo muestra una solicitud cURL para la métrica «Verificación de ubicación», con el fin de comprobar si la ubicación de un dispositivo de usuario concreto se encuentra dentro del área especificada:
curl -X POST https://api-eu.vonage.com/identity-insights/v1/requests \
-H "Authorization: Bearer $JWT" \
-H "Content-Type: application/json" \
-d '{
"phone_number": "14040000000",
"purpose": "FraudPreventionAndDetection",
"insights": {
"location_verification": {
"location": {
"type": "CIRCLE",
"radius": 3000,
"center": {
"latitude": -90,
"longitude": -180
}
}
}
}
}'
A continuación, la API comparará la zona facilitada como dato de entrada para ese usuario de teléfono móvil concreto con la ubicación disponible en los propios sistemas del operador de dicho usuario, y devolverá una confirmación en caso de que coincidan:
{
"request_id": "c2cc7a65-9b10-493f-9c0a-1c86751a91c4",
"insights": {
"location_verification": {
"is_verified": "TRUE",
"latest_location_at": "2024-07-08T09:30:27.504Z",
"match_rate": 1,
"status": {
"code": "OK",
"message": "Success"
}
}
}
}
Aquí, el status indica el estado de la información devuelta para el número de teléfono especificado:
| Campo | Descripción |
|---|---|
status.code |
Código que indica el estado de la solicitud. Debe ser uno de los siguientes: NO_COVERAGE: El país o la red móvil no son compatibles con los proveedores disponibles. INVALID_PURPOSE: El propósito utilizado no es válido o no está permitido para este Insight. UNAUTHORIZED: No se ha podido autorizar la solicitud para la combinación de solicitud, proveedor y número de teléfono. INTERNAL_ERROR: Se ha producido un error interno al procesar la solicitud. SUPPLIER_ERROR: El proveedor ha devuelto un error al procesar la solicitud. NOT_FOUND: No se ha podido encontrar el número de teléfono correspondiente a este Insight. UNSUPPORTED_NETWORK_TYPE: El tipo de red no es compatible con este Insight. INVALID_NUMBER_FORMAT: El formato de número de teléfono no es válido para que las operadoras lo asignen a los usuarios. OK: La entrada se ha procesado correctamente. |
status.message |
Descripción más detallada del estado. |
Si status.code en la respuesta se indica que OK, también es posible que aparezcan los campos descritos en la tabla siguiente. Si un campo aparece marcado como «Sí» en la columna «Obligatorio», siempre se mostrará cuando el estado sea «OK». Si un campo aparece marcado como «No», puede que se muestre o puede que no.
| Campo | Descripción | Obligatorio |
|---|---|---|
is_verified |
Resultado de una solicitud de verificación: TRUE: cuando la red localiza el dispositivo dentro de la zona solicitada. FALSE: cuando la zona solicitada no coincide con la zona en la que la red localiza el dispositivo. UNKNOWN: cuando la red no puede localizar el dispositivo. PARTIAL: cuando la zona solicitada coincide parcialmente con la zona en la que la red localiza el dispositivo. A match_rate podría incluirse en la respuesta. |
Sí |
latest_location_at |
Fecha y hora en UTC ISO 8601 de la última ubicación. | Sí |
match_rate |
Estimación de la tasa de coincidencia entre el área indicada en la solicitud (R) y el área en la que la red localiza el dispositivo (N), calculada como el porcentaje que representa la intersección de ambas áreas dividido por el área de la red, es decir: (R ∩ N) / N * 100. Incluido sólo si se verifica es PARTIAL. |
No |
Lecturas complementarias
- Para obtener más información sobre la API de Identity Insights, consulta la Referencia API.
- Si tiene alguna pregunta, puede ponerse en contacto con nosotros en el Comunidad de Vonage Slack.