PollsLivePollsLive
← All posts

June 28, 2026 · 8 min read

Integre enquetes ao vivo ao seu produto com a API do PollsLive

Crie enquetes, conduza sessões ao vivo, leia resultados e receba webhooks a partir do seu próprio código: um guia para desenvolvedores integrarem enquetes interativas dentro do seu SaaS ou app de comunidade.

By Tom Becker · Full-stack developer·DevelopersHow-to

Se o seu produto tem público — uma ferramenta de webinars, um LMS, uma plataforma de comunidade, um app de eventos — mais cedo ou mais tarde você vai querer enquetes dentro dele. Construir votação em tempo real, antifraude e uma interface de resultados do zero são meses de trabalho. Integrar o PollsLive é uma tarde. Este é o caminho para desenvolvedores: crie uma enquete, insira o embed, leia resultados e receba webhooks, com chamadas reais à /api/v1.

Autenticação: um único token Bearer

Gere uma chave de API de workspace em Studio → Developers (elas se parecem com `plv_live_…`) e envie-a como token Bearer. Sem dança de OAuth para uso servidor-a-servidor; OAuth client-credentials está disponível quando você precisa de escopo por tenant.

auth
export POLLSLIVE_API=https://pollslive.com/api/v1
export POLLSLIVE_KEY=plv_live_xxxxxxxxxxxxxxxxxxxx

# Every request carries the key as a Bearer token:
#   Authorization: Bearer $POLLSLIVE_KEY
# Rate limit: 120 requests/min per key (HTTP 429 if exceeded).

Passo 1 — Crie uma enquete a partir do seu código

Uma enquete é um deck tipado: content.questions é um array de slides, cada um com um discriminador kind. POST /polls retorna a nova enquete, incluindo seu slug, que é tudo o que você precisa para inseri-la.

POST /polls
curl -sS -X POST "$POLLSLIVE_API/polls" \
  -H "Authorization: Bearer $POLLSLIVE_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "title": "Which feature should we build next?",
    "renderingMode": "ASYNC",
    "content": {
      "questions": [{
        "id": "next",
        "kind": "multiple_choice",
        "text": "Which feature should we build next?",
        "options": [
          { "id": "a", "label": "Dark mode" },
          { "id": "b", "label": "Mobile app" },
          { "id": "c", "label": "Public API" }
        ]
      }]
    }
  }'
# → { "poll": { "slug": "which-feature-x7f2", ... } }

Passo 2 — Insira-a na sua interface

Coloque a enquete em qualquer página com um iframe de uma linha: sem SDK, sem biblioteca cliente e sem rastreadores de terceiros viajando junto. Ela se adapta ao seu contêiner e funciona dentro de React, WordPress, Webflow ou HTML puro.

embed
<iframe
  src="https://pollslive.com/embed/which-feature-x7f2"
  width="100%" height="520"
  style="border:0;border-radius:12px"
  loading="lazy" title="PollsLive poll"></iframe>

Passo 3 — Leia os resultados quando precisar

Obtenha as contagens sob demanda para os seus próprios painéis, ou exporte um CSV para relatórios. Os resultados voltam por slide com contagens e (para escalas) médias.

GET results
curl -sS "$POLLSLIVE_API/polls/POLL_ID/results" \
  -H "Authorization: Bearer $POLLSLIVE_KEY"
# → { "questions": [ { "id": "next", "options": [
#       { "id": "a", "label": "Dark mode",  "count": 64 },
#       { "id": "b", "label": "Mobile app", "count": 41 },
#       { "id": "c", "label": "Public API", "count": 95 } ] } ] }

Passo 4 — Receba atualizações com webhooks

Fazer polling na API funciona, mas os webhooks são melhores. Registre um endpoint e o PollsLive envia eventos assinados com HMAC — vote.created, poll.published, session.started/ended — para que o seu app reaja em tempo real. Verifique a assinatura e depois atualize a sua interface ou repasse o evento.

verify a webhook (Node)
import crypto from "node:crypto";

export function verify(rawBody, signature, secret) {
  const expected = crypto
    .createHmac("sha256", secret)
    .update(rawBody)
    .digest("hex");
  return crypto.timingSafeEqual(
    Buffer.from(signature),
    Buffer.from(expected)
  );
}

Esse é o ciclo todo: criar, inserir, ler, reagir. Para a referência completa — cada endpoint, escopo e tipo de evento — consulte a documentação para desenvolvedores, e para um exemplo prático, levar resultados ao vivo a um painel interno com webhooks.

Construa sobre o PollsLive: crie enquetes, conduza sessões ao vivo, obtenha resultados e receba webhooks a partir do seu próprio código.

Leia a documentação para desenvolvedores