API REST — Votari v1

Gerencie votações e leia resultados por HTTP. Autenticação por API key (plano Pro+).

Autenticação

Crie uma chave em /painel/integracoes e envie no header:

Authorization: Bearer votari_sk_xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx

Base URL: https://votari.com.br/api/v1 · Limite: 120 req/min por chave.

Erros

{ "error": { "code": "unprocessable", "message": "Título obrigatório." } }

Códigos: 400 (malformado), 401 (sem/má chave), 403 (scope/plano), 404 (inexistente), 409 (estado inválido), 422 (validação), 429 (limite).

Endpoints

POST/pollsCria votação (rascunho)
GET/pollsLista suas votações
GET/polls/{id}Detalhe
PATCH/polls/{id}Edita rascunho
POST/polls/{id}/publishPublica
POST/polls/{id}/closeEncerra (gera ATA)
GET/polls/{id}/resultsResultado agregado
GET/polls/{id}/ataMetadados da ATA
GET/polls/{id}/votersVotantes (vazio se voto secreto)

Exemplo — criar

POST /api/v1/polls
{
  "title": "Eleição da diretoria",
  "options": ["Chapa A", "Chapa B"],
  "secret_ballot": true,
  "results_visibility": "after_close"
}

Resposta 201: { "data": { "id": 42, "slug": "eleicao-da-diretoria", "status": "draft", "options": [...] } }

Observação: nesta versão a API cria votações abertas ou privadas por lista de e-mails; modos avançados (certificado, validação por API) ficam no painel.