Necesitas verificar números de teléfono antes de enviar OTPs, notificaciones SMS o habilitar el registro de usuarios. Al final de esta guía, validarás un número de teléfono, inspeccionarás los metadatos de operador/país/formato y probarás todo en Postman usando la API de Validación de Teléfonos en Zyla API Hub.
Qué hace la API de Validación de Teléfonos
La API de Validación de Teléfonos verifica si un número de teléfono es válido y devuelve metadatos ricos que puedes usar para enrutar, formatear o bloquear mensajes. La respuesta incluye indicadores de validez, operador/proveedor, códigos de país e ISO, formatos nacionales/internacionales, zonas horarias, tipo de línea (por ejemplo, móvil) y más.
Casos de uso típicos:
- Bloquear números inválidos o desechables antes de crear cuentas.
- Formatear números en estilo E.164 o internacional para un procesamiento consistente a nivel posterior.
- Decidir si enviar SMS o voz según el tipo de línea.
- Mostrar información geográfica (país, zona horaria) en herramientas administrativas.
Como todos los servicios en Zyla API Hub, usas una cuenta y una clave API a través del mercado, con un modelo de suscripción y cuota (no pago por llamada). Para esta API, el primer plan ofrece una prueba de 7 días o 50 solicitudes, y no hay Plan Gratuito. Consulta la página de la API para opciones de acceso y precios actuales.
Comenzando en Zyla API Hub
Para probar la API de Validación de Teléfonos en minutos:
- Abre la página de la API: API de Validación de Teléfonos.
- Haz clic en Suscribirse (o Iniciar Prueba Gratuita cuando esté disponible). El primer plan proporciona una prueba de 7 días o 50 solicitudes; no hay Plan Gratuito.
- Copia tu clave API desde tu panel de control. Todas las llamadas utilizan el encabezado Authorization: Bearer YOUR_API_KEY.
Si aún no tienes una cuenta, puedes Registrarte para crear una y obtener una clave API.
Endpoint que usarás
La API de Validación de Teléfonos expone este endpoint en Zyla API Hub:
-
Validación de Teléfono
Método: GET
URL: https://zylalabs.com/api/10138/phone-validator-api/26579/phone-validation
Parámetro de consulta requerido:phone(string): Número de teléfono a validar, por ejemplo,+41799530236
Prueba con Postman
1) Crea una solicitud
Configura una nueva solicitud GET en Postman con lo siguiente:
- Método: GET
- URL:
https://zylalabs.com/api/10138/phone-validator-api/26579/phone-validation?phone=%2B41799530236
2) Agrega autorización
Bajo Encabezados, agrega:
Authorization:Bearer YOUR_API_KEY
3) Envía e inspecciona la respuesta
Haz clic en Enviar. Deberías recibir una respuesta JSON con validez y metadatos para el número.
cURL oficial que puedes copiar
curl -s -X GET "https://zylalabs.com/api/10138/phone-validator-api/26579/phone-validation?phone=%2B41799530236"
-H "Authorization: Bearer YOUR_API_KEY"
Ejemplo de respuesta oficial
{
"is_valid": true,
"is_disposable": false,
"provider": "Swisscom",
"location": "Suiza",
"country": "Suiza",
"country_iso2": "CH",
"country_iso3": "CHE",
"country_code": 41,
"continent": "Europa",
"time_zones": [
"Europe/Zurich"
],
"format_national": "079 953 02 36",
"format_e164": "+41799530236",
"format_international": "+41 79 953 02 36",
"format_rfc3966": "tel:+41-79-953-02-36",
"line_type": "móvil",
"is_mobile": true,
"is_possible": true,
"national_number": "799530236",
"country_flag": "🇨🇭",
"currency_code": "CHF",
"utc_offset": "+02:00"
}
Aspectos destacados de los campos que probablemente usarás:
is_validyis_possible: Controlan la creación de cuentas y el envío de mensajes.line_typeyis_mobile: Rutan notificaciones a través de SMS o canales alternativos.format_e164yformat_international: Persisten un formato canónico en tu base de datos y muestran una versión amigable para el usuario en las interfaces administrativas.providerycountry_iso2: Lógica de análisis y enrutamiento.time_zonesyutc_offset: Evitan el envío de mensajes por la noche en la localidad del destinatario.
Ejemplo de JavaScript (Node.js)
Este ejemplo llama al mismo endpoint y utiliza los campos que comúnmente necesitarás para decidir si continuar con un SMS:
import fetch from "node-fetch";
async function validatePhone(phone) {
const url = new URL("https://zylalabs.com/api/10138/phone-validator-api/26579/phone-validation");
url.searchParams.set("phone", phone);
const res = await fetch(url.toString(), {
method: "GET",
headers: {
"Authorization": "Bearer YOUR_API_KEY"
}
});
if (!res.ok) {
const text = await res.text();
throw new Error(`HTTP ${res.status}: ${text}`);
}
const data = await res.json();
// Lógica mínima de control
if (!data.is_valid || !data.is_possible) {
return { ok: false, reason: "Número inválido o imposible", data };
}
if (data.line_type !== "mobile" || !data.is_mobile) {
return { ok: false, reason: "Línea no móvil; el SMS puede fallar", data };
}
// Usa E.164 canónico para almacenamiento y sistemas posteriores
return {
ok: true,
e164: data.format_e164,
provider: data.provider,
country: data.country,
iso2: data.country_iso2,
timeZones: data.time_zones,
rfc3966: data.format_rfc3966,
data
};
}
validatePhone("+41799530236")
.then(result => console.log(JSON.stringify(result, null, 2)))
.catch(err => console.error(err));
Patrones de flujo de trabajo que se envían
- Control de registro: Al registrarse el usuario, llama al endpoint. Si
!is_valido!is_possible, bloquea la presentación y solicita corrección. - Normalización de números: Almacena
format_e164como el valor canónico. Usaformat_internationalpara vistas orientadas al operador yformat_nationalpara visualización local. - Controles de mensajería: Solo encola SMS cuando
is_mobile === trueyline_type === "mobile". Opcionalmente, retrasa los mensajes hasta que lastime_zoneslocales estén dentro del horario laboral. - Consciencia de enrutamiento y costos: Segmenta el tráfico por
country_iso2,country_codeyproviderpara análisis o estrategias de envío por región.
Notas de implementación que ahorran tiempo
- Autorización: Siempre incluye
Authorization: Bearer YOUR_API_KEYen las solicitudes. - Idempotencia: La validación es de solo lectura; puedes reintentar de manera segura en errores transitorios de red.
- Cacheo: Dado que los metadatos del número son relativamente estables, almacena en caché las validaciones positivas indexadas por
format_e164para reducir búsquedas repetidas. - Formateo internacional: Prefiere
format_e164para uso programático. Elimina espacios y guiones e incluye el “+” inicial. - Hora y localidad:
utc_offsetse devuelve como una cadena (por ejemplo, +02:00). Usatime_zonespara conversiones precisas. - Manejo de errores: Trata las respuestas HTTP no 2xx como fallos operacionales; registra los cuerpos de respuesta para ayudar a diagnosticar problemas de cuota o autorización.
- Modelo de suscripción: Zyla utiliza suscripción + cuota, no pago por llamada. El primer plan de esta API ofrece una prueba de 7 días o 50 solicitudes; no hay Plan Gratuito. Monitorea tu uso en tu panel de Zyla.
Lista de verificación de solución de problemas
- 401/403? Confirma que el encabezado de Autorización esté presente y que la clave API sea válida.
- 4xx con contenido de mensaje? Verifica que se haya proporcionado el parámetro de consulta
phoney que esté codificado en URL. - Campos vacíos o inesperados? Valida con un número diferente para descartar casos extremos. Persiste
format_e164y vuelve a ejecutar. - Problemas específicos de la aplicación? Registra la respuesta JSON en bruto para una comparación rápida con el código de análisis local.
Llama a la API desde agentes de IA a través de MCP
Cada API en Zyla puede ser llamada desde herramientas compatibles con MCP como Claude Code, Cursor y Windsurf. Dirige tu agente o cliente al endpoint MCP y pasa tu clave API en la cadena de consulta:
https://mcp.zylalabs.com/mcp?apikey=YOUR_API_KEY
Desde allí, tu agente puede invocar el mismo endpoint de Validación de Teléfonos usando el enrutamiento del mercado. Para detalles de integración y configuración del cliente, consulta la documentación de MCP. Esto es útil cuando deseas que un asistente de IA valide números en línea durante la generación de código o pruebas.
Receta de Postman de extremo a extremo que puedes reutilizar
Configuración de solicitud
- Nueva Solicitud → GET
- URL:
https://zylalabs.com/api/10138/phone-validator-api/26579/phone-validation?phone=%2B41799530236 - Encabezados:
Authorization: Bearer YOUR_API_KEY - Enviar
Scripts de prueba rápidos (opcional)
Si usas pruebas de Postman, puedes agregar afirmaciones rápidas como:
pm.test("HTTP 200", function () {
pm.response.to.have.status(200);
});
const body = pm.response.json();
pm.test("Número móvil válido", function () {
pm.expect(body.is_valid).to.eql(true);
pm.expect(body.is_mobile).to.eql(true);
});
Por qué usar Zyla API Hub para esta integración
- Una cuenta, una clave API, un modelo de suscripción a través de más de 10,000 APIs públicas en el hub.
- Facturación centralizada con suscripción + cuota (no pago por llamada), y paneles para monitorear el uso.
- Autenticación consistente a través de endpoints: Encabezado de autorización con tu clave.
Explora servicios adicionales en Zyla API Hub cuando estés listo para expandir este flujo de trabajo (por ejemplo, mensajería, enriquecimiento o herramientas de fraude) sin cambiar modelos de autenticación.
FAQ
¿Cuál es el endpoint exacto para la validación?
Usa GET https://zylalabs.com/api/10138/phone-validator-api/26579/phone-validation con el parámetro de consulta phone.
¿Cómo me autentico?
Pasa tu clave en el encabezado: Authorization: Bearer YOUR_API_KEY.
¿Hay un plan gratuito?
No. El primer plan proporciona una prueba de 7 días o 50 solicitudes. Consulta la página de la API para opciones de acceso y precios actuales.
¿Qué campos debo almacenar?
Persiste format_e164 como el número canónico. Almacena is_valid, is_possible, line_type, country_iso2 y provider si son relevantes para tu enrutamiento o análisis.
¿Puedo llamar a esto desde un agente de IA?
Sí, a través del endpoint MCP en https://mcp.zylalabs.com/mcp?apikey=YOUR_API_KEY. Consulta la documentación de MCP para detalles específicos del cliente.
¿Listo para probar la API de Validación de Teléfonos en tu stack? Abre la página de la API de Validación de Teléfonos, suscríbete y comienza a llamarla desde Postman o código. Si necesitas una cuenta, Regístrate para obtener tu clave API y completar tu integración esta semana.