Dla programistów

Twórz z platformą Votinova

REST API, webhooki, konektory i serwer MCP. Wszystko, co robi aplikacja webowa, jest też dostępne w API: utworzenie sesji, otwarcie jej i pobranie wyników do własnego systemu zajmuje mniej niż pięć minut.

  1. Prosimy utworzyć poświadczenie w przestrzeni roboczej – dwa zakresy, dla całej organizacji.
  2. Pierwsze wywołanie: utworzenie i otwarcie sesji z poziomu curl.
  3. Zasubskrybuj webhooka i odbieraj wyniki po zamknięciu każdego pytania.
curl -X POST https://api.votinova.prd.atbionapps.com/public/v1/sessions \  -H "X-API-Key: vz_live_…" \  -d '{ "presentation_id": "prs_8f3k2" }' 200 OK   · X-RateLimit-Remaining: 119{  "id": "ses_71xw9",  "join_code": "482913",  "state": "LIVE"}

Każda powierzchnia, jeden kontrakt

Każda integracja wywodzi się z tego samego dokumentu OpenAPI. Nowy endpoint pojawia się wszędzie naraz.

REST API

Publiczne endpointy z zakresami, limitami zależnymi od planu i paginacją kursorową.

Dokumentacja API

Webhooki

Zdarzenia podpisane HMAC, ponawiane z narastającym odstępem, z ręcznym ponownym dostarczeniem.

Przewodnik po webhookach

Zapier

Wyzwalacze i akcje do automatyzacji bez pisania kodu.

Zobacz integrację

Power Automate

Konektor z wyzwalaczem webhooka dla ekosystemu Microsoft.

Zobacz integrację

Serwer MCP

Narzędzia wyprowadzone z dokumentu OpenAPI dla Państwa agentów. Zdalnie, bez instalacji.

Skonfiguruj MCP

Dodatki

PowerPoint, Google Slides, Teams, Zoom i Webex.

Zobacz dodatki

Co się na tym buduje

Wyniki w Państwa CRM
Synchronizacja odpowiedzi i obecności do Państwa CRM albo hurtowni danych w chwili zamknięcia każdego pytania – informuje o tym webhook, bez odpytywania.
Własne raportowanie
Wskaźniki KPI, uczestnicy i wyniki przez API z paginacją kursorową: raport można zbudować dokładnie tak, jak chce tego Państwa organizacja.
Sesje z Państwa oprogramowania
Tworzenie, otwieranie i prowadzenie sesji z Państwa backendu, narzędzi wewnętrznych albo agenta – przez to samo API, z którego korzysta ta aplikacja webowa.
Stworzone dla agentów

Państwa agent już zna platformę Votinova

Zdalny serwer MCP z narzędziami wyprowadzonymi z dokumentu OpenAPI, filtrowanymi według zakresów Państwa poświadczenia. Do tego plik llms.txt, dzięki któremu każdy model odnajdzie dokumentację.

Skonfiguruj serwer MCP
{  "mcpServers": {    "votinova": {      "url": "https://mcp.votinova.com/mcp",      "headers": { "Authorization": "Bearer vz_live_…" }    }  }}

Najnowsze zmiany w API

Historia zmian
  • ADDITIVE

    The plan codes gain STARTER, the tier between FREE and PRO introduced with the 2026-08 pricing. upgrade_to, on a 402 and on a question the caller's plan does not cover, can name it, and so can quota_tiers[].plan_code on GET /public/v1/limits. A client that switches over plan codes needs a branch for STARTER; the other codes keep their meaning and their order.

  • ADDITIVE

    An event stranded by an auto-disable is now dead-lettered, so it can be replayed once the endpoint is back. Recovering from a bad afternoon is supposed to be: the platform pauses the endpoint, you fix it, you re-enable it, you redeliver what never arrived. Redelivery only accepts a dead-lettered delivery, and the queue of an auto-disabled endpoint was being terminated as merely failed — so there was nothing to replay and nothing said so. The arithmetic hid it: a delivery gets 8 attempts and an endpoint is paused after 10 consecutive failures, so a single event in flight always dead-letters first. The counter is per endpoint, and one ordinary session emits three events. Deliveries for an endpoint its owner REMOVED are still terminated without a dead letter: nobody is coming back for those.

  • ADDITIVE

    Three corrections found by driving this API the way an integration does. A bad request body now answers the envelope this surface documents ({ error, code: INVALID_REQUEST_BODY, invalid_fields }) naming the PUBLISHED field: it used to fall through to a shape the API emits nowhere else, which named the internal property (TargetUrl for target_url) and carried no error member for a generated client to read. session.ended is delivered ONCE per close; closing a live session through this API delivered it twice, so anything that posts a summary or books a room did it twice, and the event now always names presentation_id whichever surface closed the session. And enabling an endpoint only revives one the platform paused after failures: it used to undo a DELETE too, so a connector's unsubscribe could be reversed by one call while the connector itself could no longer remove it. Enabling an endpoint that was removed now answers 400 WEBHOOK_NOT_AUTO_DISABLED; register it again instead.

Limity według planu

  • STARTERŻądania: 120 na 60 s
  • PROŻądania: 120 na 60 s
  • TEAMŻądania: 600 na 60 s
  • ENTERPRISEŻądania: 3000 na 60 s

Państwa limit jest zwracany w każdej odpowiedzi (nagłówki X-RateLimit-*).