Enviar mensajes de audio automatizados usando la API de WhatsApp

14 de abril de 2025

¿Necesitas ayuda con las consultas de clientes, promociones y actualizaciones que debes enviar? Imagina si pudieras automatizar estas tareas, como enviar mensajes de voz tipo grabación de audio en WhatsApp directamente a clientes o chats grupales, para hacer todo rápida y eficientemente. Con Wassenger, ¡esto se hace fácilmente!

Ya sea un recordatorio, notificación o promoción, tus mensajes de audio aseguran una entrega efectiva y mejoran la experiencia del cliente. Usar audio en lugar de texto también ahorra tiempo y ofrece una mejor experiencia de usuario.

En este tutorial, te guiaremos paso a paso sobre cómo configurar y usar la Wassenger API para automatizar la entrega de mensajes de audio de WhatsApp (tipo grabación de voz) para🚀

Ejemplos de código listos para usar en Python, C#, PHP, JavaScript, Ruby, Java, Go y cURL están disponibles aquí.

🫣 ¿No quieres programar? ¡No hay problema! Explora nuestra nueva función de Campañas de WhatsApp sin código. Importa tus contactos, define un mensaje, establece una fecha de entrega y relájate! 🥳 🥳

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

Este tutorial te enseñará cómo enviar mensajes de audio a números de teléfono y listas de chats grupales usando la API.

Puedes enviar archivos de audio en cualquiera de los siguientes formatos: MP3, OGG, MP4, ACC.

Si necesitas enviar mensajes desde código, puedes usar cualquier lenguaje de programación para realizar solicitudes HTTPS a la API. A continuación está el probador de API en vivo con ejemplos de código listos para usar en varios lenguajes de programación.

Requisitos

Endpoints de la API

En este tutorial, usaremos el siguiente endpoint de la API:

Puedes enviar mensajes de audio en una sola solicitud a la API pasando la URL remota donde se almacena el archivo. Haz clic aquí para probarlo

Enviar mensaje de audio desde URL

Para enviar un mensaje de audio como una grabación de voz (PTT o Push-To-Talk) como mensaje multimedia, en este caso un archivo de audio, debes proporcionar una URL pública remota (accesible por Internet) que apunte al contenido del archivo de audio.

Para enviar un mensaje de audio (PTT) usando las siguientes opciones con la API:

  • URL remota usando JSON con un campo url que contenga la URL públicamente accesible para descargar el archivo de audio.

Ejemplo de archivo de audio MP3 audio file para usar

https://download.samplelib.com/mp3/sample-9s.mp3

Nota: en caso de que la URL no sea públicamente accesible, devuelva un estado HTTP no válido (>=400) o devuelva contenido no binario, como HTML o texto, la API retornará un error.

URL objetivo de la API (POST)

https://api.wassenger.com/v1/messages

Encabezados HTTPS requeridos

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

Cuerpo de la petición en formato JSON

{
  "phone": "+1234567890",
  "media": {
    "url": "https://download.samplelib.com/mp3/sample-9s.mp3",
    "format": "ptt"
  }
}

Dependiendo del lenguaje de programación o del cliente HTTP que estés usando, el proceso puede variar. Para simplificarlo, necesitamos resaltar las herramientas más populares, como Postman, y cualquier otro lenguaje de programación.

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

Enviar audio usando código

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

También puedes encontrar diferentes lenguajes que puedes probar en Replit.com:

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

import requests

url = "https://api.wassenger.com/v1/messages"

payload = { "phone": "+1234567890", "media": { "url": "https://download.samplelib.com/mp3/sample-9s.mp3", "format": "ptt" } } headers = { "Content-Type": "application/json", "Token": "ENTER API KEY HERE" }

response = requests.request("POST", url, json=payload, headers=headers)

print(response.text)

var axios = require('axios');
var options = {
  method: 'POST',
  url: 'https://api.wassenger.com/v1/messages',
  headers: { 'Content-Type': 'application/json', Token: 'ENTER API KEY HERE' },
  data: {
    phone: '+1234567890',
    media: {
      url: 'https://download.samplelib.com/mp3/sample-9s.mp3',
      format: 'ptt'
    }
  }
};
axios
  .request(options)
  .then(function (response) {
    console.log(response.data);
  })
  .catch(function (error) {
    console.error(error);
  });
<?php
$curl = curl_init();
curl_setopt_array($curl, [
  CURLOPT_URL => 'https://api.wassenger.com/v1/messages',
  CURLOPT_RETURNTRANSFER => true,
  CURLOPT_ENCODING => '',
  CURLOPT_MAXREDIRS => 10,
  CURLOPT_TIMEOUT => 30,
  CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
  CURLOPT_CUSTOMREQUEST => 'POST',
  CURLOPT_POSTFIELDS => "{\"phone\":\"+1234567890\", \"media\":{\"url\":\"https://download.samplelib.com/mp3/sample-9s.mp3\", \"format\":\"ptt\"}}",
  CURLOPT_HTTPHEADER => [
    'Content-Type: application/json',
    'Token: ENTER API KEY HERE',
  ],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
  echo 'cURL Error #:' . $err;
} else {
  echo $response;
}
// Examples requires to have installed pecl_http package, a simple and elegant HTTP client for PHP.
// Install it by running: pecl install pecl_http
// More information: https://pecl.php.net/package/pecl_http/3.2.0
<?php
$client = new http\Client();
$request = new http\Client\Request();
$body = new http\Message\Body();
$body->append(
  '{"phone":"+1234567890", "media":{"url":"https://download.samplelib.com/mp3/sample-9s.mp3", "format":"ptt"}}'
);
$request->setRequestUrl('https://api.wassenger.com/v1/messages');
$request->setRequestMethod('POST');
$request->setBody($body);
$request->setHeaders([
  'Content-Type' => 'application/json',
  'Token' => 'ENTER API KEY HERE',
]);
$client->enqueue($request)->send();
$response = $client->getResponse();
echo $response->getBody();
package main
import(
"fmt"
"strings"
"net/http"
"io/ioutil"
)
func main() {
url:= "https://api.wassenger.com/v1/messages"
payload:= strings.NewReader("{\"phone\":\"+1234567890\", \"media\":{\"url\":\"https://download.samplelib.com/mp3/sample-9s.mp3\", \"format\":\"ptt\"}}")
req, _:= http.NewRequest("POST", url, payload)
req.Header.Add("Content-Type", "application/json")
req.Header.Add("Token", "ENTER API KEY HERE")
res, _:= http.DefaultClient.Do(req)
defer res.Body.Close()
body, _:= ioutil.ReadAll(res.Body)
fmt.Println(res)
fmt.Println(string(body))
}
  • C# (RestClient)
// 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/messages");
var request = new RestRequest(Method.POST);
request.AddHeader("Content-Type", "application/json");
request.AddHeader("Token", "ENTER API KEY HERE");
request.AddParameter("application/json", "{\"phone\":\"+1234567890\", \"media\":{\"url\":\"https://download.samplelib.com/mp3/sample-9s.mp3\", \"format\":\"ptt\"}}", ParameterType.RequestBody);
IRestResponse response = client.Execute(request);
require 'uri'
require 'net/http'
require 'openssl'
url = URI("https://api.wassenger.com/v1/messages")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
http.verify_mode = OpenSSL::SSL::VERIFY_NONE
request = Net::HTTP::Post.new(url)
request["Content-Type"] = 'application/json'
request["Token"] = 'ENTER API KEY HERE'
request.body = "{\"phone\":\"+1234567890\", \"media\":{\"url\":\"https://download.samplelib.com/mp3/sample-9s.mp3\", \"format\":\"ptt\"}}"
response = http.request(request)
puts response.read_body
// 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<String> response = Unirest.post("https://api.wassenger.com/v1/messages")
.header("Content-Type", "application/json")
.header("Token", "ENTER API KEY HERE")
.body("{\"phone\":\"+1234567890\", \"media\":{\"url\":\"https://download.samplelib.com/mp3/sample-9s.mp3\", \"format\":\"ptt\"}}")
.asString();

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

Enviar mensajes de audio a un número de teléfono

Enviar un nuevo mensaje multimedia vía API es fácil; solo necesitas conocer el número de teléfono destino en formato E164 y la URL del archivo de audio.

Puedes enviar mensajes a cualquier número de teléfono en todo el mundo que tenga una cuenta de WhatsApp, no es necesario agregar el número como contacto en la agenda o lista de contactos de tu dispositivo móvil.

Enviar mensajes de audio a un chat grupal en WhatsApp

De manera similar al escenario anterior, también puedes enviar mensajes multimedia a chats grupales.

Para hacerlo, necesitas conocer el ID del chat grupal de destino y la URL remota del archivo de audio.

Para enviar mensajes a un grupo, debes ser participante del mismo con permisos para enviar mensajes. Si no eres el administrador del grupo, deberías tener permiso para enviar mensajes.

Preparar la petición

URL objetivo de la API (POST)

https://api.wassenger.com/v1/messages

Encabezados HTTPS requeridos

Content-Type: application/json
Token: $API_KEY

Cuerpo de la petición en formato JSON

Enviando un mensaje a un chat grupal:

{
  "group": "1234567890-100000000@g.us",
  "media": {
    "url": "https://download.samplelib.com/mp3/sample-9s.mp3",
    "format": "ptt"
  }
}

Enviar mensajes de audio a un Canal de WhatsApp

De manera similar al escenario anterior, también puedes enviar mensajes multimedia a Canales de WhatsApp.

Para hacerlo, necesitas conocer el ID del Canal de WhatsApp de destino y la URL del archivo de audio.

Para enviar mensajes a un Canal de WhatsApp, debes ser el propietario del canal.

URL objetivo de la API (POST)

https://api.wassenger.com/v1/messages

Encabezados HTTPS requeridos

Content-Type: application/json
Token: $API_KEY

Cuerpo de la petición en formato JSON

Enviando un mensaje a un Canal de WhatsApp:

{
  "channel": "12345678901234567@newsletter",
  "media": {
    "url": "https://download.samplelib.com/mp3/sample-9s.mp3",
    "format": "ptt"
  }
}

Prueba en vivo: enviar mensajes multimedia usando la API

Ahora puedes reproducir, depurar y probar la API en vivo directamente desde tu navegador, explorar y probar más ejemplos de la API y obtener con un clic fragmentos de código listos para usar disponibles en más de 15 lenguajes de programación 😎

Prueba el probador de API en vivo

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

Preguntas frecuentes (FAQ)

¿Puedo usar Wassenger para chatbots?

Sí, puedes construir tu chatbot con nuestra API y webhooks. Para ello, necesitas suscribirte a cualquier plan Platform que te permita implementar chatbots sobre la API.

Explora más en nuestro artículo relacionado aquí.

¿Qué tipo de archivos multimedia se pueden enviar?

Puedes enviar imágenes (JPEG, PNG, WEBP), videos (MP4, 3GPP), audios (MP3, OGG, MP4, ACC), gifs (MP4) y documentos (PDF, PPT, PPTX, DOCX, DOC, ZIP, RAR, otros tipos binarios).

Consulta la documentación de la API para más detalles.

¿Cómo puedo validar números de teléfono?

Puedes validar si un número de teléfono dado existe en WhatsApp o no, y por lo tanto puede recibir mensajes en WhatsApp, usando el endpoint de la API Number exists (Number exists API endpoint).

Ten en cuenta que debes tener al menos un número de WhatsApp conectado a la plataforma para poder realizar la validación.

¿Buscas más respuestas? Consulta las FAQs extendidas.

Recursos útiles adicionales

Documentación de la API

Para más detalles sobre el endpoint de la API, por favor revisa la documentación, donde encontrarás todos los detalles sobre los parámetros de la petición 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/Files

Ready to transform your WhatsApp communication?

Start automating your customer interactions today with Wassenger

Get Started Free