1. Base URL
Todos os exemplos desta documentacao usam a API publica de producao:
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: