Ensimmäinen kutsusi viidessä minuutissa

Nollasta API:n kautta luotuun live-istuntoon poistumatta tältä sivulta.

Ennen kuin aloitat

  • Tili maksullisessa tilauksessa: API ei kuulu FREE-tilaukseen (voit silti selata koko referenssin maksutta).
  • Esitys työtilassasi: luomasi istunto ajaa olemassa olevan esityksen.
  1. Luo API-tunnuksesi

    Avaa työtilassasi Organisaatio → API ja luo API-tunnus, jolla on content:write-käyttöoikeus. Salaisuus näytetään kerran: tallenna se.

    Hanki API-avaimesi

    API-tunnus kuuluu organisaatiolle, ei käyttäjällesi: kuka tahansa ylläpitäjä voi mitätöidä sen, ja jokainen käyttö kirjautuu valvontalokiin. Pyydä vain tarvitsemasi käyttöoikeudet – results:read lukemiseen, content:write luomiseen ja ohjaamiseen.

  2. Luo ja avaa istunto

    Kun avaimesi on X-API-Key-otsakkeessa, luo istunto olemassa olevaan esitykseen ja avaa se.

    curl -X POST https://api.votinova.prd.atbionapps.com/public/v1/sessions \
      -H "X-API-Key: vz_live_…" \
      -d '{ "presentation_id": "prs_8f3k2" }'
    
    curl -X POST https://api.votinova.prd.atbionapps.com/public/v1/sessions/ses_71xw9/open \
      -H "X-API-Key: vz_live_…"

    Istunto syntyy tilaan DRAFT; avaaminen luo sen join_code-arvon ja istuntohuone on valmis. Seuraa vastauksen X-RateLimit-*-otsakkeita: ne kulkevat jokaisessa vastauksessa ja kertovat, paljonko pyyntöbudjettia on jäljellä 60 sekunnin ikkunassa.

  3. Vastaanota tulokset

    Rekisteröi webhook tapahtumalle question.results.finalized, niin saat allekirjoitetut koosteet omaan taustajärjestelmääsi.

    curl -X POST https://api.votinova.prd.atbionapps.com/public/v1/webhooks \
      -H "X-API-Key: vz_live_…" \
      -d '{ "url": "https://example.com/hooks/votinova",
            "event_types": ["question.results.finalized"] }'

    Tallenna signing_secret, jonka rekisteröinti palauttaa: se näytetään kerran, ja juuri sillä varmistat jokaisen toimituksen. Webhook-oppaassa varmennus on valmiina liitettäväksi kolmella kielellä.

Jos jokin näyttää oudolta

  • 401 – X-API-Key-otsake tai käyttöoikeus puuttuu: runko kertoo täsmällisen arvon kentässä required_scope.
  • 402 – tilauksesi ei sisällä API:a: rungossa on upgrade_to ja se tilaus, joka avaa sen.
  • 429 – tämän ikkunan budjetti on käytetty: odota retry_after_seconds ja yritä uudelleen porrastetusti.

Mitä seuraavaksi?

Selaa koko referenssiä, kokeile jokaista päätepistettä selaimessa ja yhdistä Zapier tai agenttisi MCP:n kautta.

API-referenssi