Crear una Validación de Teléfono
Endpoint
POST https://api.verifik.co/v2/phone-validations
Una Validación de Teléfono es una instancia dentro del sistema de Verifik que permite procesar y validar números telefónicos durante los procesos de autenticación y registro. Este proceso asegura la autenticidad de los números de teléfono de los usuarios y proporciona verificación segura mediante métodos de entrega por SMS o WhatsApp.
Encabezados
Content-Type
Tipo: String
Requerido: Sí
Valor: application/json
Authorization
Tipo: String
Requerido: Sí
Valor: Bearer {YOUR_ACCESS_TOKEN}
Parámetros del Cuerpo
project
Tipo: String
Requerido: Sí
El identificador único del proyecto donde se utilizará esta validación de teléfono.
validationMethod
Tipo: String
Requerido: Sí
El método de validación, establecido en verificationCode o manual.
phone
Tipo: String
Requerido: Sí
El número de teléfono que será validado (los espacios se eliminarán automáticamente).
countryCode
Tipo: String
Requerido: Sí
El código de país del número telefónico en formato +XXX (por ejemplo, +507 para Panamá).
type
Tipo: String
Requerido: Sí
Tipo de validación: validation, login, onboarding o oneTimeLink.
expiresAt
Tipo: String
Requerido: No
Fecha de expiración opcional para el código de validación.
redirectUrl
Tipo: String
Requerido: No
URL opcional para redirigir después de la validación.
webhookUrl
Tipo: String
Requerido: No
URL opcional de webhook para notificaciones de validación.
identityUrl
Tipo: String
Requerido: No
URL opcional de verificación de identidad.
requires2FA
Tipo: Boolean
Requerido: No
Indicador opcional que señala si se requiere autenticación de dos factores.
ipAddress
Tipo: String
Requerido: No
Dirección IP opcional del usuario.
Valores de validationMethod
| Valor | Descripción |
|---|---|
verificationCode | Envía una contraseña de un solo uso (OTP) al número de teléfono para verificación. |
manual | Proceso de verificación manual sin OTP. |
Valores de type
| Valor | Descripción |
|---|---|
validation | Validación general de número telefónico. |
login | Verificación de teléfono durante el inicio de sesión. |
onboarding | Verificación de teléfono durante el registro de usuario. Para onboarding, debes usar create-an-app-registration-phone-validation |
Ejemplo de Solicitud
- Node.js
const axios = require("axios");
const config = {
method: "post",
url: "https://api.verifik.co/v2/phone-validations",
headers: {
"Content-Type": "application/json",
Authorization: "Bearer YOUR_ACCESS_TOKEN",
},
data: {
project: "project_123456789",
validationMethod: "verificationCode",
phone: "1234567890",
countryCode: "+1",
type: "validation",
expiresAt: "2024-01-15T11:30:00Z",
redirectUrl: "https://example.com/success",
webhookUrl: "https://example.com/webhook",
requires2FA: false,
ipAddress: "192.168.1.1",
},
};
axios
.request(config)
.then((response) => {
console.log(JSON.stringify(response.data));
})
.catch((error) => {
console.log(error);
});
Ejemplo de Respuesta
- 200 OK
- Error
{
"success": true,
"data": {
"_id": "phone_validation_123456789",
"client": "client_123456789",
"project": "project_123456789",
"projectFlow": "flow_123456789",
"status": "sent",
"countryCode": "+1",
"phone": "1234567890",
"type": "validation",
"validationMethod": "verificationCode",
"verificationCode": "123456",
"expiresAt": "2024-01-15T11:30:00Z",
"redirectUrl": "https://example.com/success",
"webhookUrl": "https://example.com/webhook",
"requires2FA": false,
"ipAddress": "192.168.1.1",
"attempts": 0,
"maxAttempts": 3,
"createdAt": "2024-01-15T10:30:00Z",
"updatedAt": "2024-01-15T10:30:00Z"
},
"signature": {
"dateTime": "April 11, 2023 12:25 PM",
"message": "Certified by Verifik.co"
}
}
{
"success": false,
"error": "Invalid phone number",
"code": "INVALID_PHONE"
}
Características
- Múltiples lenguajes: Soporte para JavaScript, Python, PHP y Swift
- Manejo de errores: Respuestas de error detalladas para distintos escenarios