Integração
API de WhatsApp para Java e Spring
Integre WhatsApp em aplicações Java com o HttpClient nativo do JDK 11+.
import java.net.URI;
import java.net.http.*;
import java.time.Duration;
public class ZapixoClient {
private static final HttpClient CLIENTE = HttpClient.newBuilder()
.connectTimeout(Duration.ofSeconds(10))
.build();
private final String apiKey;
public ZapixoClient(String apiKey) {
this.apiKey = apiKey;
}
public String enviarTexto(String instancia, String numero, String texto)
throws Exception {
String corpo = """
{"instance":"%s","number":"%s","text":"%s"}
""".formatted(instancia, numero, escapar(texto));
HttpRequest req = HttpRequest.newBuilder()
.uri(URI.create("https://zapixo.com.br/api/v1/messages/text"))
.header("Authorization", "Bearer " + apiKey)
.header("Content-Type", "application/json")
.timeout(Duration.ofSeconds(30))
.POST(HttpRequest.BodyPublishers.ofString(corpo))
.build();
HttpResponse<String> res =
CLIENTE.send(req, HttpResponse.BodyHandlers.ofString());
if (res.statusCode() != 200) {
throw new IllegalStateException(
"Zapixo " + res.statusCode() + ": " + res.body());
}
return res.body();
}
// em produção, use Jackson em vez de montar JSON na mão
private static String escapar(String s) {
return s.replace("\\", "\\\\").replace("\"", "\\\"");
}
}