Tutorial de validación masiva de números de teléfono de WhatsApp

15 de julio de 2024

¿Alguna vez has querido asegurarte de que los números de los clientes de tu empresa estén correctamente guardados en tu lista de contactos? Bueno, con Wassenger eso cambia las reglas del juego para la comunicación directa. Para las empresas, verificar la validez, los dígitos y el formato de números de teléfono aleatorios y no normalizados al formato internacional E164 es esencial para maximizar los esfuerzos de marketing, ahorrar tiempo y reducir costos al comunicarse con clientes potenciales en los negocios digitales a escala global de hoy.

Siguiendo este tutorial, puedes depurar y validar los números de teléfono de tu base de datos usando la API de Wassenger y obtener números normalizados, filtrados y válidos en formato E164 que puedes usar para hacer llamadas telefónicas, enviar mensajes de WhatsApp o SMS a tu base de usuarios (por cierto, Wassenger puede ayudarte a comunicarte mejor en WhatsApp, aprende más aquí)

Wassenger ofrece una solución confiable para validar números de teléfono en WhatsApp, simplificando la comunicación y mejorando el engagement con los clientes. En este artículo, profundizaremos en la importancia de la validación de números y en cómo Wassenger puede ayudar a optimizar tus estrategias de alcance.

🤩 🤖 Wassenger es una plataforma de comunicación completa y una solución API para WhatsApp. Explora más de 100+ casos de uso de API y automatiza cualquier cosa en WhatsApp registrándote para una prueba gratuita y comienza en minutos

Requisitos

  • Tener un número de WhatsApp ya vinculado a la plataforma y en línea.
  • El API key token del usuario debe usarse en cada solicitud de la API que requiera autenticación.

En este tutorial usaremos el siguiente endpoint de la API:

¡Últimas noticias! Ahora puedes validar una lista de números en una sola solicitud API pasándolos en el cuerpo de la llamada. Haz clic aquí para probarlo

Validar los números

valida y normaliza una lista de números de teléfono, opcionalmente forzando el código de país o el prefijo local.

La validación solo se realiza a nivel de formato de dígitos; no verifica si un número de teléfono dado existe en WhatsApp.

URL objetivo de la API (POST)

El API key token del usuario debe usarse en cada solicitud de la API que requiera autenticación

https://api.wassenger.com/v1/numbers/validate

Encabezados HTTPS requeridos

Puedes definirlo mediante el parámetro de consulta "token" en la URL o el encabezado HTTP "Token".

Content-Type: application/json
Token: $API-TOKEN

Cuerpo de la petición en formato JSON

{
  "country": "US",
  "numbers": [
    {
      "phone": "202-456-1414"
    },
    {
      "phone": "+1 202 456 1414"
    },
    {
      "phone": "1 415(858-6273)"
    }
  ]
}

Obtener la respuesta de la API

{
  "numbers": [
    {
      "valid": true,
      "error": null,
      "phone": "+12024561414",
      "wid": "12024561414@c.us",
      "input": "202-456-1414",
      "kind": "fixed_line",
      "countryPrefix": 1,
      "country": "US",
      "formats": {
        "local": "2024561414",
        "national": "2024561414",
        "international": "+12024561414"
      }
    }
  ],
  "summary": {
    "valid": 3,
    "invalid": 0
  }
}

Validar números usando código

Explora cómo usar el código en tu navegador sin instalar software.

Además, puedes encontrar diferentes lenguajes que puedes probar en Replit.com:

# Estos ejemplos requieren tener instalado el paquete requests para Python. # Instálalo ejecutando: pip install requests

import requests

url = "https://api.wassenger.com/v1/numbers/validate"

payload = { "country": "US", "numbers": [{ "phone": "202-456-1414" }, { "phone": "+1 202 456 1414" }, { "phone": "1 415 (858-6273)" }] } headers = { "Content-Type": "application/json", "Token": "$API_KEY" }

response = requests.post(url, json=payload, headers=headers)

print(response.json())

"https://api.wassenger.com/v1/numbers/validate", CURLOPT\_RETURNTRANSFER => true, CURLOPT\_ENCODING => "", CURLOPT\_MAXREDIRS => 10, CURLOPT\_TIMEOUT => 30, CURLOPT\_HTTP\_VERSION => CURL\_HTTP\_VERSION\_1\_1, CURLOPT\_CUSTOMREQUEST => "POST", CURLOPT\_POSTFIELDS => json\_encode(\[ 'country' => 'US', 'numbers' => \[ \[ 'phone' => '202-456-1414' \], \[ 'phone' => '+1 202 456 1414' \], \[ 'phone' => '1 415 (858-6273)' \] \] \]), CURLOPT\_HTTPHEADER => \[ "Content-Type: application/json", "Token: $API\_KEY" \], \]); $response = curl\_exec($curl); $err = curl\_error($curl); curl\_close($curl); if ($err) { echo "cURL Error #:" . $err; } else { echo $response; } - [PHP](https://replit.com/new) \# Estos ejemplos requieren tener instalado el paquete pecl\_http, un cliente HTTP simple y elegante para PHP. \# Instálalo ejecutando: pecl install pecl\_http \# Más información: https://pecl.php.net/package/pecl\_http/3.2.0 append(json\_encode(\[ 'country' => 'US', 'numbers' => \[ \[ 'phone' => '202-456-1414' \], \[ 'phone' => '+1 202 456 1414' \], \[ 'phone' => '1 415 (858-6273)' \] \] \])); $request->setRequestUrl('https://api.wassenger.com/v1/numbers/validate'); $request->setRequestMethod('POST'); $request->setBody($body); $request->setHeaders(\[ 'Content-Type' => 'application/json', 'Token' => '$API\_KEY' \]); $client->enqueue($request)->send(); $response = $client->getResponse(); echo $response->getBody(); - [Go](https://replit.com/new) ```swift package main import( "fmt" "strings" "net/http" "io" ) func main() { url:= "https://api.wassenger.com/v1/numbers/validate" payload:= strings.NewReader("{\"country\":\"US\", \"numbers\":[{\"phone\":\"202-456-1414\"}, {\"phone\":\"+1 202 456 1414\"}, {\"phone\":\"1 415(858-6273)\"}]}") req, _:= http.NewRequest("POST", url, payload) req.Header.Add("Content-Type", "application/json") req.Header.Add("Token", "$API_KEY") res, _:= http.DefaultClient.Do(req) defer res.Body.Close() body, _:= io.ReadAll(res.Body) fmt.Println(res) fmt.Println(string(body)) } ``` - [C#](https://replit.com/new) (RestClient) ```swift // This code requires you to have installed RestSharp package. // Documentation: https://restsharp.dev // Installation: https://www.nuget.org/packages/RestSharp var client = new RestClient("https://api.wassenger.com/v1/numbers/validate"); var request = new RestRequest(Method.POST); request.AddHeader("Content-Type", "application/json"); request.AddHeader("Token", "$API_KEY"); request.AddParameter("application/json", "{\"country\":\"US\", \"numbers\":[{\"phone\":\"202-456-1414\"}, {\"phone\":\"+1 202 456 1414\"}, {\"phone\":\"1 415(858-6273)\"}]}", ParameterType.RequestBody); IRestResponse response = client.Execute(request); ``` - [Ruby](https://replit.com/new) require 'uri' require 'net/http' url = URI("https://api.wassenger.com/v1/numbers/validate") http = Net::HTTP.new(url.host, url.port) http.use\_ssl = true request = Net::HTTP::Post.new(url) request\["Content-Type"\] = 'application/json' request\["Token"\] = '$API\_KEY' request.body = "{\\"country\\":\\"US\\",\\"numbers\\":\[{\\"phone\\":\\"202-456-1414\\"},{\\"phone\\":\\"+1 202 456 1414\\"},{\\"phone\\":\\"1 415 (858-6273)\\"}\]}" response = http.request(request) puts response.read\_body - [Java](https://replit.com/new) ```swift // This code requires you to have installed Unirest package. // Documentation: https://kong.github.io/unirest-java/#requests // Installation: http://kong.github.io/unirest-java/ HttpResponse response = Unirest.post("https://api.wassenger.com/v1/numbers/validate") .header("Content-Type", "application/json") .header("Token", "$API_KEY") .body("{\"country\":\"US\", \"numbers\":[{\"phone\":\"202-456-1414\"}, {\"phone\":\"+1 202 456 1414\"}, {\"phone\":\"1 415(858-6273)\"}]}") .asString(); ``` > 🤩 🤖 [**Wassenger**](https://wassenger.com/) es una plataforma de comunicación completa y una solución API para WhatsApp. [**Explora más de 100+ casos de uso de API y automatiza cualquier cosa en WhatsApp**](https://wassenger.com/) registrándote [**para una prueba gratuita y comienza en minutos**](https://wassenger.com/register) #### Prueba en vivo de la carga de archivos usando la API ![](/images/blog/whatsapp-phone-numbers-bulk-validation-tuto-02.png) [Explora nuestro probador de API en vivo](https://app.wassenger.com/help/api-tester) ### Preguntas frecuentes #### ¿Necesito una cuenta de WhatsApp Business? Nuestro sistema funciona igual tanto si tienes una cuenta Personal como una cuenta Business de WhatsApp. #### ¿Puedo usar Wassenger para chatbots? Sí, puedes crear tu chatbot con nuestra API y webhooks. Para ello, necesitas suscribirte a cualquier plan de Plataforma que te permita implementar chatbots sobre la API. Explora más en nuestro artículo relacionado [**aquí**](https://medium.com/@wassenger/build-a-whatsapp-chatgpt-powered-ai-chatbot-for-your-business-595a60eb17da). #### ¿De dónde puedo obtener los ejemplos de código de la API? Consulta la [documentación de la API](https://app.wassenger.com/docs) y selecciona el ejemplo de código listo para usar en el lenguaje deseado. Proporcionamos ejemplos de código para los lenguajes y herramientas CLI más comunes, como JavaScript, Node.js, Python, Ruby, PHP, Java, C#, Swift, Go y más. > ***¿Buscas más respuestas?*** [***Consulta las Preguntas frecuentes ampliadas***](https://app.wassenger.com/help/category/faq)***.*** #### Recursos útiles adicionales #### Documentación de la API 🖥️ Para más detalles sobre el endpoint de la API, consulta la documentación donde encontrarás todos los detalles sobre los parámetros de solicitud aceptados, posibles respuestas de éxito o error y ejemplos de código listos para usar en múltiples lenguajes de programación: [https://app.wassenger.com/docs/#tag/Numbers/operation/validateNumbers](https://app.wassenger.com/docs/#tag/Numbers/operation/validateNumbers)

Ready to transform your WhatsApp communication?

Start automating your customer interactions today with Wassenger

Get Started Free