Pular para o conteúdo principal

1. Base URL

Todos os exemplos desta documentacao usam a API publica de producao:
https://api.vzaps.com

2. Tenha suas credenciais em maos

  • Um JWT (Authorization: Bearer ...) para endpoints de instancia e billing, inclusive POST /instances/list. Integradores obtem JWT com POST /token usando client_token e client_secret (painel Seguranca); o app web continua usando login com e-mail e senha.
  • X-Client-Token para integracoes server-to-server e chamadas autenticadas por token (deve coincidir com o token da conta).
  • X-Instance-Token para operar uma instancia especifica sem depender de JWT.
curl -X POST "https://api.vzaps.com/token" \
  -H "Content-Type: application/json" \
  -d '{"client_token":"SEU_CLIENT_TOKEN","client_secret":"SEU_CLIENT_SECRET"}'
Se o seu fluxo for server-to-server, priorize guardar client_token, client_secret e o token da instancia em ambiente seguro. Nao exponha esses valores em front-end publico.

3. Crie a instancia

Use PUT /instances/create para criar a instancia e obter o token da instancia.
curl -X PUT "https://api.vzaps.com/instances/create" \
  -H "Authorization: Bearer SEU_JWT" \
  -H "Content-Type: application/json" \
  -d '{
    "name": "Minha instancia",
    "webhook": "https://cliente.exemplo.com/webhooks/vzaps",
    "events_subscribe": ["Message", "Connected", "Disconnected"],
    "reject_calls": false,
    "auto_read_messages": false
  }'
O response devolve, entre outros campos, id, token, url, billing_status e datas de ciclo.

4. Assine ou confirme o billing da instancia

Use POST /instances/{id}/subscribe com Authorization: Bearer <jwt> do dono da instancia. O fluxo padrao da API e o modo direct: a assinatura e criada e cobrada no cartao de credito cadastrado como metodo de pagamento padrao do cliente no Stripe. Para integrar contando com essa resposta, cadastre o cartao antes (por exemplo no app VZaps em Billing / pagamento). Chamadas tipicas usam corpo vazio {}: esse e o caminho padrao para criar a assinatura cobrando o metodo de pagamento padrao. Exemplo:
curl -X POST "https://api.vzaps.com/instances/INSTANCE_ID/subscribe" \
  -H "Authorization: Bearer SEU_JWT" \
  -H "Content-Type: application/json" \
  -d '{}'
Resposta tipica em caso de sucesso com cobranca direta:
{
  "url": "",
  "sessionId": "sub_xxxxxxxx",
  "mode": "direct",
  "subscriptionId": "sub_xxxxxxxx"
}

5. Inicie a sessao

Depois de criar a instancia, voce pode:
  • usar POST /instances/{id}/connect para iniciar o fluxo de conexao da instancia na API;
  • usar os endpoints de sessao, como GET /instances/{id}/session/qr e GET /instances/{id}/session/status.
Exemplo para buscar o QR code:
curl -X GET "https://api.vzaps.com/instances/INSTANCE_ID/session/qr" \
  -H "X-Instance-Token: TOKEN_DA_INSTANCIA" \
  -H "X-Client-Token: SEU_CLIENT_TOKEN"

6. Prossiga para os endpoints especificos

Depois do setup inicial, siga para: