Video
Coviu
API integration
Ship Video features without building the integration. Full Coviu API access via Proxy and 10+ MCP-ready tools for AI agents — extend models and mappings to fit your product.
Talk to usUse Cases
Why integrate with Coviu
Common scenarios for SaaS companies building Coviu integrations for their customers.
Embed native telehealth in your PMS or EHR
Practice management and EHR platforms can offer built-in video consults instead of forcing clinicians to copy-paste links from a separate tool. Truto handles Coviu auth and API quirks so you can provision sessions and participant entry URLs directly from your appointment booking flow.
Power AI scribes with secure session audio
AI medical scribe and clinical documentation SaaS can ingest audio recordings from completed Coviu consults to generate SOAP notes and summaries. Truto exposes the binary recording and session summary endpoints in a consistent way across your customer base.
Build a virtual reception dashboard
Front-desk and triage tools can surface live Coviu waiting queue state inside their own UI, so receptionists never have to log into Coviu. Truto handles polling, pagination, and auth for the waiting call endpoints.
Sync clinical artifacts into the patient record
Compliance-focused EHRs can automatically pull consent forms, submissions, and recordings produced during a Coviu session and attach them to the correct patient file. Truto normalizes access to collections, submissions, and submission file downloads.
Automate billing and consult duration logging
Billing and revenue cycle SaaS can use Coviu session summaries to capture actual consult start and end times for accurate Medicare and insurance claims. Truto gives you a single, reliable path to fetch session metadata across all of your tenants.
What You Can Build
Ship these features with Truto + Coviu
Concrete product features your team can ship faster by leveraging Truto’s Coviu integration instead of building from scratch.
One-click consult provisioning from your scheduler
When an appointment is booked in your product, automatically create a Coviu session with the right start_time, end_time, and feature flags, and return a branded entry URL.
Role-aware participant links for patients and clinicians
Mint distinct participant entry URLs per session with the correct role, so hosts and guests get different permissions inside the same embedded room.
Live waiting room widget
Render a real-time queue of patients who have joined Coviu's virtual waiting room inside your reception dashboard, with joined, answered, and transferred timestamps.
Post-call recording ingestion pipeline
Automatically pull audio recordings and submission files from finished sessions and pipe them into your storage, transcription, or EHR attachment workflow.
Consult duration auto-logging for billing
Fetch session summaries after each call to capture actual call duration and attach it to invoices, billing codes, or claim submissions in your platform.
Session lifecycle management UI
Let your users view, reschedule (update), or cancel (delete) Coviu sessions and participants from inside your app without touching the Coviu console.
SuperAI
Coviu AI agent tools
Comprehensive AI agent toolset with fine-grained control. Integrates with MCP clients like Cursor and Claude, or frameworks like LangChain.
create_a_coviu_session
Create a new coviu session. Returns: session_id, session_name, start_time, end_time, participants. Required: session_name, start_time, end_time. Optionally supply participants and feature_flags to customise the call interface (exit-url, return-url, disable-menu, enforce-participant-uniqueness, etc.).
list_all_coviu_sessions
List coviu sessions. Returns per session: session_id, session_name, start_time, end_time, actual_end_time, team_id, client_id, participants. Filter by start_time, end_time, order, state, include_canceled, or deleted_participants.
get_single_coviu_session_by_id
Get a single coviu session by id. Returns: session_id, session_name, start_time, end_time, actual_end_time, team_id, client_id, participants. Required: id.
update_a_coviu_session_by_id
Update a coviu session by id. Returns: session_id, session_name, start_time, end_time, actual_end_time, team_id, client_id, participants. Required: id.
delete_a_coviu_session_by_id
Cancel a coviu session by id. Returns: ok (boolean confirming the cancellation succeeded). Required: id.
list_all_coviu_participants
List coviu participants for a session. Returns: participant_id, display_name, role, session_id, entry_url, client_id, created. Required: session_id.
create_a_coviu_participant
Add a participant to a coviu session. Returns: participant_id, display_name, role, session_id, entry_url, client_id, created. Required: session_id. Cannot add to a session that has already finished.
get_single_coviu_participant_by_id
Get a single coviu participant by id. Returns: participant_id, display_name, role, session_id, entry_url, client_id, created. Required: id.
update_a_coviu_participant_by_id
Update a coviu participant by id. Returns: participant_id, display_name, role, session_id, entry_url, client_id, created. Required: id.
delete_a_coviu_participant_by_id
Cancel a coviu participant by id. Returns: ok. Required: id. Cannot cancel a participant belonging to a session that has already started.
list_all_coviu_waiting_calls
List currently waiting calls in coviu for a specific team. Returns: callId, teamId, peerId, joinedAt, lastActivityAt, callType, and additional call state fields including socketId, sessionId, details, and transfer/hold timestamps. Required: team_id.
list_all_coviu_waiting_queue_calls
List currently waiting calls for a specific coviu queue. Returns each call record including callId, teamId, peerId, callType, joinedAt, lastActivityAt, and additional lifecycle timestamps such as answeredAt, transferredAt, and finishedAt. Required: team_id, waiting_queue_id.
get_single_coviu_call_by_id
Get a single waiting area call in coviu by its call ID within a given team. Returns: callId, teamId, peerId, callType, joinedAt, lastActivityAt, and additional timing/state fields such as answeredAt, finishedAt, transferredAt, and startedAt. Required: team_id, id.
list_all_coviu_collections
List all collections belonging to a Coviu team. Returns: id, team_id, name, collection_reference, read_setting, delete_setting, and created_at for each collection. Required: team_id.
list_all_coviu_submissions
List submissions for a Coviu collection. Returns: item_submission_id, session_id, secure_collection_id, submitting_user_id, created_at, updated_at, locked_at, collection_location, and action_status. Required: team_id, collection_id. Optionally filter by date range (from/until), a filter string, and sort via order/orderBy.
get_single_coviu_submission_by_id
Get a single Coviu submission by id. Returns the full submission detail including item_submission_id, session_id, secure_collection_id, submitting_user_id, created_at, updated_at, locked_at, action_status, collection_location, and an array of associated files (each with id, metadata, size, created_at, updated_at). Required: team_id, collection_id, id.
get_single_coviu_submission_file_by_id
Get the binary video recording file for a specific submission file in Coviu. Returns a video/webm binary stream of the recording (HTTP 200 or 206 partial content). Required: team_id, collection_id, submission_id, id.
get_single_coviu_audio_recording_by_id
Get the binary audio recording file for a specific coviu collection submission. Returns a binary audio/webm file stream (not a JSON object). Required: id, team_id, collection_id.
get_single_coviu_session_summary_by_id
Get the summary of a coviu session by id. Returns session details including session_id, session_name, start_time, end_time, actual_end_time, team_id, client_id, and participants. Required: id.
Why Truto
Why use Truto’s MCP server for Coviu
Other MCP servers give you a static tool list for one app. Truto gives you a managed, multi-tenant MCP infrastructure across 500+ integrations.
Auto-generated, always up to date
Tools are dynamically generated from curated documentation — not hand-coded. As integrations evolve, tools stay current without manual maintenance.
Fine-grained access control
Scope each MCP server to read-only, write-only, specific methods, or tagged tool groups. Expose only what your AI agent needs — nothing more.
Multi-tenant by design
Each MCP server is scoped to a single connected account with its own credentials. The URL itself is the auth token — no shared secrets, no credential leaking across tenants.
Works with every MCP client
Standard JSON-RPC 2.0 protocol. Paste the URL into Claude, ChatGPT, Cursor, or any MCP-compatible agent framework — tools are discovered automatically.
Built-in auth, rate limits, and error handling
Tool calls execute through Truto’s proxy layer with automatic OAuth refresh, rate-limit handling, and normalized error responses. No raw API plumbing in your agent.
Expiring and auditable servers
Create time-limited MCP servers for contractors or automated workflows. Optional dual-auth requires both the URL and a Truto API token for high-security environments.
How It Works
From zero to integrated
Go live with Coviu in under an hour. No boilerplate, no maintenance burden.
Link your customer’s Coviu account
Use Truto’s frontend SDK to connect your customer’s Coviu account. We handle all OAuth and API key flows — you don’t need to create the OAuth app.
We handle authentication
Don’t spend time refreshing access tokens or figuring out secure storage. We handle it and inject credentials into every API request.
Call our API, we call Coviu
Truto’s Proxy API is a 1-to-1 mapping of the Coviu API. You call us, we call Coviu, and pass the response back in the same cycle.
Unified response format
Every response follows a single format across all integrations. We translate Coviu’s pagination into unified cursor-based pagination. Data is always in the result attribute.
FAQs
Common questions about Coviu on Truto
Authentication, rate limits, data freshness, and everything else you need to know before you integrate.
How does Truto handle authentication with Coviu for our end users?
Your end users connect their Coviu account once through Truto, and Truto manages credential storage, refresh, and request signing. Your application calls Truto's unified interface and never has to handle Coviu API keys directly.
Which Coviu resources can we read and write through Truto today?
Truto exposes tools for sessions (list, get, create, update, delete), participants (list, get, create, update, delete), waiting calls and waiting queue calls, individual calls, collections, submissions, submission files, audio recordings, and session summaries.
Can we download the actual video or audio recordings from a session?
Yes. You can fetch audio recordings via get_single_coviu_audio_recording_by_id and submission files via get_single_coviu_submission_file_by_id, which return the underlying binary streams for ingestion into your storage.
How fresh is the waiting room data for reception dashboards?
Coviu's waiting queue endpoints are polled on demand, so freshness is determined by your polling cadence through Truto. For receptionist-style dashboards, frequent polling of list_all_coviu_waiting_queue_calls and get_single_coviu_call_by_id is the recommended pattern.
Does Truto support real-time webhooks for Coviu events?
The current Coviu integration is built around the REST tools listed above. If you need event-driven flows like session completion or participant joined, reach out and Truto can scope additional capabilities on request.
Can we customize the embedded Coviu experience for our users?
Yes. When you create or update a session via Truto, you can pass through Coviu's feature flags (such as disable-menu, exit-url, and return-url) so the embedded room matches your product's UX and routes users back into your app after the call.
Is there a Unified Video API we can use to abstract Coviu alongside other providers?
Coviu is currently available as a direct integration with its own tools rather than through a Unified API. You can build against the Coviu-specific tools today, and request unified abstractions if you plan to support multiple video providers.
Coviu
Get Coviu integrated into your app
Our team understands what it takes to make a Coviu integration successful. A short, crisp 30 minute call with folks who understand the problem.