Enviar mensagens de áudio usando a API do WhatsApp

3 de junho de 2024

Precisa de ajuda com atendimentos ao cliente, promoções e atualizações que precisa enviar? Imagine se você pudesse automatizar essas tarefas, como enviar mensagens de áudio com gravação semelhante a voz no WhatsApp diretamente para clientes ou chats em grupo, para fazer tudo de forma rápida e eficiente. Com Wassenger, isso é facilmente feito!

Seja um lembrete, notificação ou promoção, suas mensagens de áudio garantem entrega eficaz e melhoram a experiência do cliente. Além disso, você economiza tempo e oferece uma melhor experiência usando áudio em vez de texto.

Neste tutorial, vamos guiá-lo passo a passo sobre como configurar e usar a Wassenger API para automatizar a entrega de áudios do WhatsApp (semelhantes a gravações de voz) para🚀

Exemplos de código prontos para uso em Python, C#, PHP, JavaScript, Ruby, Java, Go e cURL estão disponíveis aqui.

🫣 Não quer usar programação? Sem problema! Explore nosso novo recurso de Campanhas no WhatsApp sem código. Importe seus contatos, defina uma mensagem, agende uma data de envio e relaxe! 🥳 🥳

🤩 🤖 Wassenger é uma plataforma completa de comunicação e solução de API para WhatsApp. Explore mais de 100+ casos de uso da API e automatize qualquer coisa no WhatsApp inscrevendo-se para um teste gratuito e comece em minutos**!**

Este tutorial ensinará como enviar mensagens de áudio para números de telefone e listas de chats de grupo usando a API.

Você pode enviar arquivos de áudio em qualquer um dos seguintes formatos: MP3, OGG, MP4, ACC.

Se precisar enviar mensagens a partir de código, você pode usar qualquer linguagem de programação para realizar requisições HTTPS à API. Abaixo está o testador de API ao vivo com exemplos de código prontos para uso em várias linguagens de programação.

Requisitos

Endpoints da API

Neste tutorial, usaremos o seguinte endpoint da API:

Você pode enviar mensagens de áudio em uma única requisição à API passando a URL remota onde o arquivo está armazenado. Clique aqui para testar

Enviar mensagem de áudio a partir de URL

Para enviar uma mensagem de áudio semelhante a uma gravação de voz (PTT ou Push-To-Talk) como mensagem multimídia, neste caso, um arquivo de áudio, você deve fornecer uma URL pública remota (acessível pela Internet) apontando para o conteúdo do arquivo de áudio.

Para enviar uma mensagem de áudio (PTT) usando os seguintes métodos através da API:

  • URL remota usando JSON com um campo url contendo a URL publicamente acessível para baixar o arquivo de áudio.

Exemplo de arquivo de áudio MP3 audio file para usar

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

Observação: caso a URL não seja publicamente acessível, retorne um status HTTP inválido (>=400), ou retorne conteúdo não binário, como HTML ou texto, a API retornará um erro.

URL da API de destino (POST)

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

Cabeçalhos HTTPS obrigatórios

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

Corpo da requisição em formato JSON

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

Dependendo da linguagem de programação ou do cliente HTTP que você estiver utilizando, o processo pode variar. Para simplificar, precisamos destacar as ferramentas mais populares, como o Postman, e qualquer outra linguagem de programação.

🤩 🤖 Wassenger é uma plataforma completa de comunicação e solução de API para WhatsApp. Explore mais de 100+ casos de uso da API e automatize qualquer coisa no WhatsApp inscrevendo-se para um teste gratuito e começando em minutos!

Enviar áudio usando código

Veja como usar o código no seu navegador sem instalar nenhum software.

Além disso, você pode encontrar diferentes linguagens que pode testar no Replit.com:

# Examples requires to have installed requests Python package. # Install it by running: 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 é uma plataforma completa de comunicação e solução de API para WhatsApp. Explore mais de 100+ casos de uso da API e automatize qualquer coisa no WhatsApp inscrevendo-se para um teste gratuito e começando em minutos!

Enviar mensagens de áudio para um número de telefone

Enviar uma nova mensagem de mídia via API é fácil, você só precisa saber o número de telefone de destino no formato E164 e a URL do arquivo de áudio.

Você pode enviar mensagens para qualquer número de telefone no mundo que possua uma conta no WhatsApp, não é necessário adicionar o número como contato na agenda do seu dispositivo móvel.

Enviar mensagens de áudio para um chat em grupo no WhatsApp

Semelhante ao cenário anterior, você também pode enviar mensagens de mídia para chats em grupo.

Para isso, você precisa saber o ID do chat em grupo de destino e a URL remota do arquivo de áudio.

Para enviar mensagens para um grupo, você deve ser participante dele com permissão para enviar mensagens. Se você não for o administrador do grupo, deve ter permissão para enviar mensagens.

Preparar a requisição

URL da API de destino (POST)

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

Cabeçalhos HTTPS obrigatórios

Content-Type: application/json
Token: $API_KEY

Corpo da requisição em formato JSON

Enviando uma mensagem para um chat em grupo:

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

Enviar mensagens de áudio para um Canal do WhatsApp

Semelhante ao cenário anterior, você também pode enviar mensagens de mídia para Canais do WhatsApp.

Para isso, você precisa saber o ID do Canal do WhatsApp de destino e a URL do arquivo de áudio.

Para enviar mensagens para um Canal do WhatsApp, você deve ser o proprietário do canal.

URL da API de destino (POST)

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

Cabeçalhos HTTPS obrigatórios

Content-Type: application/json
Token: $API_KEY

Corpo da requisição em formato JSON

Enviando uma mensagem para um Canal do WhatsApp:

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

Teste ao vivo envia mensagens de mídia usando a API

Você agora pode tocar, depurar e testar a API ao vivo diretamente do seu navegador, explorar e experimentar mais exemplos da API e obter com um clique snippets de código prontos para uso disponíveis em mais de 15 linguagens de programação 😎

Testar o testador de API ao vivo

🤩 🤖 Wassenger é uma plataforma completa de comunicação e solução de API para WhatsApp. Explore mais de 100+ casos de uso da API e automatize qualquer coisa no WhatsApp inscrevendo-se para um teste gratuito e começando em minutos**!**

FAQ

Posso usar o Wassenger para chatbots?

Sim, você pode construir seu chatbot com nossa API e webhooks. Para isso, é necessário assinar qualquer plano Platform que permita implementar chatbots sobre a API.

Explore mais em nosso artigo relacionado aqui.

Que tipo de arquivos de mídia podem ser enviados?

Você pode enviar imagens (JPEG, PNG, WEBP), vídeos (MP4, 3GPP), áudios (MP3, OGG, MP4, ACC), gifs (MP4) e documentos (PDF, PPT, PPTX, DOCX, DOC, ZIP, RAR, outros tipos binários).

Consulte a documentação da API para mais detalhes.

Como posso validar números de telefone?

Você pode validar se um determinado número de telefone existe no WhatsApp ou não, e portanto pode receber mensagens no WhatsApp, usando o endpoint Number exists da API (Number exists API endpoint).

Por favor, note que você deve ter pelo menos um número do WhatsApp conectado à plataforma para realizar a validação.

Procurando mais respostas? Consulte as FAQs estendidas.

Recursos adicionais úteis

Documentação da API

Para mais detalhes sobre os endpoints da API, por favor verifique a documentação onde você encontrará todos os detalhes sobre os parâmetros de requisição aceitos, possíveis respostas de sucesso ou erro e exemplos de código prontos para uso em múltiplas linguagens de programação:

https://app.wassenger.com/docs/#tag/Files

Ready to transform your WhatsApp communication?

Start automating your customer interactions today with Wassenger

Get Started Free