Skip to content

API & SDKs

A small API, deliberately

Fewer concepts, fewer calls and fewer ways to get it wrong, whether a person or an agent is writing the code.

API & SDKs

  • Plain REST

    Projects, sessions, tokens, exports, webhooks and billing. Every response is { data, error }.

  • Idempotency-Key

    Creates are safe to retry. The same key returns the same result.

  • Signed webhooks

    HMAC-SHA256 signatures, a delivery log, pause and resume, and retries with exponential backoff.

  • OpenAPI 3.1

    A spec checked against the live route table on every test run, so it can't drift from the real API.

  • Programmatic keys

    Create, label and revoke API keys over the API. Secrets are shown once and stored as peppered hashes.

  • Rate limits per caller

    Keyed per API key and per client, so one noisy integration never throttles another.

terminal
# Create a session. Retrying with the same key returns the same session.
curl -X POST https://api.synento.com/v1/sessions \
  -H "Authorization: Bearer $SYNENTO_API_KEY" \
  -H "Idempotency-Key: standup-2026-09-23" \
  -H "Content-Type: application/json" \
  -d '{"name": "Standup"}'

# Mint a connection token for one participant.
curl -X POST https://api.synento.com/v1/sessions/$SESSION_ID/connection \
  -H "Authorization: Bearer $SYNENTO_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"user_id": "alice"}'

Packages

Published on npm
PackageWhat it does
@synento/clientBrowser SDK: publish and receive audio, video and screen share, with reconnection and chat.
@synento/reactHooks and components over @synento/client.
@synento/nodeServer-side REST client: sessions, tokens, projects, webhooks and billing.
@synento/playerReplay engine and layout composition for recordings.
@synento/cliLog in, create projects and create sessions from your terminal.

Give your agent a video platform it can verify.

Sign up, point your agent at llms.txt, and have a recorded call running before lunch.