Novo O Safe Mode aquece números novos para reduzir o risco de banimento no WhatsApp. Saiba mais →

Maytapi/Documentação/Guia de Java

Guia de JavaCerca de 10 minutos

Como enviar uma mensagem no WhatsApp com Java

Envie mensagens de texto e mídia pelo Java com uma única requisição HTTP e receba as respostas no seu próprio webhook. REST e JSON puros — sem SDK, sem aprovação de templates.

Última atualização:

  • Java
  • REST + JSON
  • sem SDK
  • respostas via webhook
Java
// Java 15+ (java.net.http, text blocks)
import java.net.URI;
import java.net.http.*;

String pid = "your-pid";
String phoneId = "your-phone-id";
String token = "your-token";

String body = """
    {"to_number": "55119xxxxxx67", "type": "text", "message": "Hello from Java!"}
    """;

HttpRequest request = HttpRequest.newBuilder()
    .uri(URI.create("https://api.maytapi.com/api/" + pid + "/" + phoneId + "/sendMessage"))
    .header("x-maytapi-key", token)
    .header("Content-Type", "application/json")
    .POST(HttpRequest.BodyPublishers.ofString(body))
    .build();

HttpResponse<String> response = HttpClient.newHttpClient()
    .send(request, HttpResponse.BodyHandlers.ofString());
System.out.println(response.body());
Antes de começar

O que você precisa

Quatro coisas, todas disponíveis no console em poucos minutos.

  • conta

    Uma conta Maytapi

    Cadastre-se e comece o teste grátis — sem cartão.

  • telefone

    Um número pareado

    Escaneie o QR code com o WhatsApp do seu celular. Seu número continua funcionando normalmente.

  • token

    pid e token

    Copie da página de token do console; o phone_id aparece ao lado do seu número.

  • Java

    Um ambiente Java

    Basta uma versão recente do Java e seu cliente HTTP padrão.

Enviar texto

Envie uma mensagem de texto com Java

Faça um POST com corpo JSON para /sendMessage com o token no cabeçalho x-maytapi-key. A mensagem entra na fila do seu celular e a resposta volta na hora.

  • ✓to_number em formato internacional, ex.: 55119xxxxxx67
  • ✓type: text e o texto da mensagem
  • ✓A resposta traz o id da mensagem
curl -X POST "https://api.maytapi.com/api/$PID/$PHONE_ID/sendMessage" \
  -H "x-maytapi-key: $TOKEN" \
  -H "Content-Type: application/json" \
  -d '{"to_number": "55119xxxxxx67", "type": "text", "message": "Hello from Java!"}'
Enviar mídia

Envie imagem, vídeo ou documento

Use o mesmo endpoint com type media e uma URL pública ou um data URI em base64. Adicione legenda e nome de arquivo opcionais.

  • ✓Imagens, vídeo, áudio, PDF e outros documentos
  • ✓Legenda no campo text
  • ✓Data URIs em base64 funcionam como URLs
Java
String body = """
    {
      "to_number": "55119xxxxxx67",
      "type": "media",
      "message": "https://example.com/invoice-10482.pdf",
      "text": "Your invoice for order #10482",
      "filename": "invoice-10482.pdf"
    }
    """;

HttpRequest request = HttpRequest.newBuilder()
    .uri(URI.create("https://api.maytapi.com/api/" + pid + "/" + phoneId + "/sendMessage"))
    .header("x-maytapi-key", token)
    .header("Content-Type", "application/json")
    .POST(HttpRequest.BodyPublishers.ofString(body))
    .build();

HttpClient.newHttpClient().send(request, HttpResponse.BodyHandlers.ofString());
Receber

Receba respostas com um webhook em Java

Registre a URL do webhook uma vez. Mensagens recebidas e confirmações de entrega e leitura chegam em JSON; responda pela URL reply de cada evento.

  • ✓Retorne 200 rápido e depois processe o evento
  • ✓Ignore suas próprias mensagens com fromMe
  • ✓Use event.reply para responder no mesmo chat
HttpRequest request = HttpRequest.newBuilder()
    .uri(URI.create("https://api.maytapi.com/api/" + pid + "/setWebhook"))
    .header("x-maytapi-key", token)
    .header("Content-Type", "application/json")
    .POST(HttpRequest.BodyPublishers.ofString("{\"webhook\": \"https://example.com/maytapi/webhook\"}"))
    .build();

HttpClient.newHttpClient().send(request, HttpResponse.BodyHandlers.ofString());
FAQ

FAQ da WhatsApp API com Java

Pergunte o que quiser ao nosso suporte pelo WhatsApp. O tempo médio de resposta é inferior a 24 horas.

Central de ajuda →
Existe um SDK oficial para Java?

Não é necessário. A API é REST com JSON, então o cliente HTTP padrão do Java basta, como mostram os exemplos desta página.

Posso enviar mensagens para grupos com Java?

Sim. Use o id do grupo (termina em @g.us) como to_number; os endpoints de grupos estão disponíveis em todos os planos.

Por que minha mensagem não chegou?

Verifique se o status do telefone está ativo e confira a fila e os logs no console. Números novos devem ser aquecidos antes de envios em volume.

Comece a usar a API do WhatsApp

Pegue sua chave e envie a primeira mensagem em dez minutos

Sem aprovação, sem templates, sem cartão. Todos os endpoints liberados por três dias.