API
REST & WebSocket API
Dispatch calls, stream duplex audio, and subscribe to entity events.
Base URL
Production: https://api.shris.ai/v1 — configure PUBLIC_VOICE_API_ENDPOINT in the website and SHRIS_API_BASE in Shris-ai-app. Local default: http://127.0.0.1:8787/v1
Auth
POST /v1/auth/login with SHRIS_DEV_EMAIL / SHRIS_DEV_PASSWORD from .env.example returns a tenant JWT. Send Authorization: Bearer on /v1/calls*, /v1/analytics, /v1/kpis, and /v1/campaigns. Health, conversation demo turns, and inbound CRM/calendar webhooks stay public (HMAC optional via SHRIS_WEBHOOK_SECRET). Never put production carrier keys in the Astro bundle.
Voice loop
POST /v1/conversations (optional domain) then POST /v1/conversations/:id/turns with { text }, or POST /v1/conversations/:id/audio with WAV (JSON wavBase64 or multipart). Response includes processingMs. JWT optional for demo turns. GET /v1/kpis returns attempted/connected/qualified/booked. GET /v1/agents (JWT) and PUT /v1/agents/:id (admin) store per-tenant disclosure and qualify scripts. Lab SIP: /docs/sip-lab.
Leads & warm handoff
POST /v1/leads (operator JWT or X-Api-Key matching SHRIS_API_KEY) accepts name, phone, source, domain. It stores the lead, starts a conversation with AI disclosure, and dispatches a simulator outbound call (TRAI/DND still apply). GET /v1/handoffs lists conversations in handoff. Operators POST /v1/handoffs/:id/accept, /reply { text }, and /resolve. Console: /app.
Privacy (DPDP)
POST /v1/privacy/export and POST /v1/privacy/erase require admin JWT. Body: { e164 } or { subject } (SHA-256 of E.164). POST /v1/privacy/expire runs transcript retention. Docs: /docs/dpdp-security.
Python
Install the forthcoming SDK or call REST directly.
from shris import ShrisClient
client = ShrisClient(api_key=os.environ["SHRIS_API_KEY"])
session = client.calls.create(phone_number="+91...", agent_id="agent_re_falcon_city") Integrations status
GET /v1/integrations (admin JWT) returns provider modes from env presence. Use it to confirm which human-held keys are loaded before switching SHRIS_MODE=live. Docs: /docs/connect-checklist.
Book a demo or open the operations console to inspect campaigns, TRAI gates, and CRM actions.