Documentação da API

Base URL: https://api.nextsy.lat

Introdução

A Nextsy API permite enviar mensagens WhatsApp de qualquer sistema externo usando chamadas HTTP simples.

O fluxo básico é:

  1. Crie uma conta em nextsy.lat/register
  2. Acesse o Dashboard e crie uma instância WhatsApp
  3. Escaneie o QR Code com seu celular
  4. Copie o token da instância
  5. Use o token nas chamadas à API

Autenticação

Todas as rotas da API de mensagens requerem o token da instância WhatsApp no header:

http
Authorization: Bearer SEU_TOKEN_AQUI
⚠️ O token é por instância WhatsApp, não por usuário. Cada número conectado tem seu próprio token.

Enviar mensagem de texto

POST/message/send

Envia uma mensagem de texto para um número WhatsApp.

Parâmetros

CampoTipoObrigatórioDescrição
numberstring✓ SimNúmero com DDI, apenas dígitos. Ex: 5511999999999
bodystring✓ SimTexto da mensagem
msdelaynumberNãoDelay em ms antes de enviar

Exemplo cURL

bash
curl -X POST https://api.nextsy.lat/message/send \
  -H "Authorization: Bearer SEU_TOKEN_AQUI" \
  -H "Content-Type: application/json" \
  -d '{
    "number": "5511999999999",
    "body": "Olá! Mensagem do meu sistema."
  }'

Exemplo JavaScript

javascript
const response = await fetch('https://api.nextsy.lat/message/send', {
  method: 'POST',
  headers: {
    'Authorization': 'Bearer SEU_TOKEN_AQUI',
    'Content-Type': 'application/json'
  },
  body: JSON.stringify({
    number: '5511999999999',
    body: 'Olá! Mensagem do meu sistema.'
  })
});

const data = await response.json();
console.log(data); // { "status": "SUCCESS" }

Exemplo Python

python
import requests

response = requests.post(
    'https://api.nextsy.lat/message/send',
    headers={
        'Authorization': 'Bearer SEU_TOKEN_AQUI',
        'Content-Type': 'application/json'
    },
    json={
        'number': '5511999999999',
        'body': 'Olá! Mensagem do meu sistema.'
    }
)

print(response.json())  # {'status': 'SUCCESS'}

Resposta

json
{ "status": "SUCCESS" }

Enviar imagem por URL

POST/message/send/image
bash
curl -X POST https://api.nextsy.lat/message/send/image \
  -H "Authorization: Bearer SEU_TOKEN_AQUI" \
  -H "Content-Type: application/json" \
  -d '{
    "number": "5511999999999",
    "url": "https://exemplo.com/foto.jpg",
    "caption": "Confira nossa promoção!"
  }'

Verificar número

POST/message/check

Verifica se um número está registrado no WhatsApp.

bash
curl -X POST https://api.nextsy.lat/message/check \
  -H "Authorization: Bearer SEU_TOKEN_AQUI" \
  -H "Content-Type: application/json" \
  -d '{ "number": "5511999999999" }'

Resposta (existe)

json
{
  "existsInWhatsapp": true,
  "number": "5511999999999",
  "numberFormatted": "5511999999999@s.whatsapp.net"
}

Resposta (não existe)

json
{
  "existsInWhatsapp": false,
  "number": "5511999999999",
  "numberFormatted": "5511999999999@s.whatsapp.net"
}

WebSocket (tempo real)

Conecte via Socket.io para receber eventos em tempo real (QR Code, conexão, desconexão).

javascript
import { io } from 'socket.io-client';

const socket = io('https://api.nextsy.lat');

// Assinar eventos de uma instância específica
socket.emit('subscribe:instance', INSTANCE_ID);

// Receber eventos
socket.on('instance:' + INSTANCE_ID, (data) => {
  console.log(data);
  // { action: 'qr', qr: '...', status: 'qrcode' }
  // { action: 'connected', status: 'CONNECTED', number: '5511999999999' }
  // { action: 'disconnected', status: 'DISCONNECTED' }
});

Códigos de erro

CódigoSignificado
200Sucesso
400Parâmetros inválidos ou instância não conectada
401Token inválido ou não fornecido
404Recurso não encontrado
500Erro interno do servidor

Exemplos de integração

PHP

php
<?php
$token = 'SEU_TOKEN_AQUI';
$data = ['number' => '5511999999999', 'body' => 'Olá!'];

$ch = curl_init('https://api.nextsy.lat/message/send');
curl_setopt($ch, CURLOPT_POST, true);
curl_setopt($ch, CURLOPT_POSTFIELDS, json_encode($data));
curl_setopt($ch, CURLOPT_HTTPHEADER, [
    'Authorization: Bearer ' . $token,
    'Content-Type: application/json'
]);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
$response = curl_exec($ch);
echo $response; // {"status":"SUCCESS"}
?>

Node.js (axios)

javascript
const axios = require('axios');

await axios.post('https://api.nextsy.lat/message/send', {
  number: '5511999999999',
  body: 'Pedido confirmado! 🎉'
}, {
  headers: { 'Authorization': 'Bearer SEU_TOKEN_AQUI' }
});