Unified Meeting API
Knit's Unified Meeting API gives you a single integration to read meeting recordings, transcripts, and metadata across Gong, Chorus, Fireflies, Fathom, Google Meet, and Microsoft Teams. Build once - support every conversation-intelligence and meeting tool your customers already use.
What Is a Unified Meeting API?
A unified meeting API is a single, standardized programming interface that lets your product read meeting recordings, transcripts, and participant data across multiple meeting and conversation-intelligence platforms without building a separate integration for each one.
Knit's Unified Meeting API instead reads recordings, transcripts, and metadata that already exist inside the tools your customers have adopted — Gong and Chorus for revenue intelligence, Fireflies and Fathom for AI notetaking, and native recordings from Google Meet and Microsoft Teams. If your customers already run one of these tools, Knit gets you their data without asking them to add a second bot to every call.
Knit normalizes four things across all providers:
| Layer | What Knit handles |
|---|---|
| Data models | Consistent field names and structures — meetings, transcripts, and users from Gong, Fireflies, and Google Meet return the same schema |
| Authentication | OAuth and API keys managed per-provider; you pass a single X-Integration-Id header |
| Pagination | Cursor-based pagination works identically regardless of how the provider implements it |
| Error formats | Standardized error responses with provider context where available |
Building AI agents?Knit is MCP-compatible (Model Context Protocol). Your agents can perform authenticated read and write actions across every connected meeting platform with zero per-provider logic. Try MCP Hub →
How It Works
1. Your customer connects their meeting or conversation-intelligence tool
Knit's pre-built embedded auth UI handles OAuth and token management per provider. Your team writes zero auth code.
2. Knit normalizes the data
Meetings, transcripts, and participant records are all mapped to Knit's unified schema — regardless of how each platform stores or names them internally.
3. Your product calls one API
Use a single set of endpoints and data models across your entire product. Add a new meeting platform later? No code changes on your side.
4. Read transcripts and recordings as they land
Fetch meeting details, download or playback URLs, and full speaker-level transcripts through the same interface whether the source is Gong, Fireflies, or a native Google Meet recording.
Meeting Data Objects
The following objects are available through the unified schema. All fields are normalized across providers.
Meetings
Meeting details including recordings, agenda, scheduling, and participant information.
id, title, participants[]: { id, email, name }, scheduledStartDateTime,
scheduledEndDateTime, startDateTime, durationInSeconds, meetingDownloadURL,
meetingPlaybackURL, calendarEventId, language, host: { id, email, name },
agenda, type, mediaType, masterMeetingIdtype distinguishes EXTERNAL from INTERNAL meetings. mediaType is VIDEO or AUDIO. masterMeetingId links individual occurrences of a recurring meeting back to the parent series.
→ Get meetings · Get meeting by ID · Create meeting · Delete meeting · Get meeting instances list
Transcripts
Full speaker-level transcript data with timestamps, normalized the same way whether the source auto-generated the transcript (Gong, Fireflies, Fathom) or it came from a native platform recording.
meetingTranscripts[]: {
speakerId,
sentences[]: { startedAt, endedAt, relativeStartedAt, relativeEndedAt, text }
}→ Get transcript for a meeting · Get transcript metadata for a meeting
Users
The people inside a connected meeting or conversation-intelligence platform — reps, hosts, and team members — with role and personal meeting link detail.
id, emails[]: { address, type }, phones[]: { number, type },
firstName, lastName, title, role, language, createdAt, lastLoginAt,
teamIds[], managerId, active, personalMeetingUrls[]role reflects the platform's own role taxonomy (e.g. SALES_REP in Gong). personalMeetingUrls surfaces a user's default meeting link where the platform exposes one.
Custom fieldsFields outside the unified schema are accessible via custom fields that you could map to the unified model, or the Passthrough API that lets you make direct calls to the underlying meeting platform using Knit's auth layer without giving up the unified platform.
API Reference
All meeting endpoints are organized by category. Each endpoint works identically regardless of the underlying platform — pass your API key and the customer's X-Integration-Id, and the response schema is consistent across all providers.
Meeting APIs
| Endpoint | Description |
|---|---|
| Get meetings | Retrieve meeting details — recordings, agenda, participants, scheduling — for a specified time range |
| Get meeting by ID | Retrieve a single meeting by its ID |
| Create meeting | Schedule a new meeting with title, time, participants, and host — available where the provider supports it (e.g. Google Meet, Microsoft Teams) |
| Delete meeting | Delete a meeting by its ID |
| Get meeting instances list | Retrieve individual occurrences of a recurring meeting within a time range |
Transcript APIs
| Endpoint | Description |
|---|---|
| Get transcript for a meeting | Fetch the full speaker-wise transcript with timestamps |
| Get transcript metadata for a meeting | Retrieve transcript ID, transcript URL, and speaker-grouped content |
User APIs
| Endpoint | Description |
|---|---|
| Get users | List users with basic details — name, emails, phones, team, role |
| Get user by ID | Fetch a richer, single-user record by ID |
Supported Platforms
Knit connects to the meeting and conversation-intelligence platforms your customers have already adopted.
| Category | Platforms |
|---|---|
| Revenue / conversation intelligence | Gong, Chorus |
| AI meeting notetakers | Fireflies, Fathom |
| Native video conferencing | Google Meet, Microsoft Teams Meeting |
Don't see a platform? Use the Connector Builder / Integration Agent to add it yourself in hours, not weeks.
Key Capabilities
Real-Time Sync & Webhooks
Knit supports both native webhooks (forwarded directly from platforms that emit them) and virtual webhooks (Knit polls the source, detects changes, and emits events). Both use the same subscription interface and event schema — your integration code is identical either way.
Supported event types include: record.new, record.modified, record.deleted, and more.
Zero Data Storage
Knit never stores your customers' meeting recordings or transcripts at rest. Every API request passes through to the source platform in real time. This reduces your GDPR, CCPA, and SOC 2 compliance scope — there are no replicated call recordings sitting in a third-party system.
Recurring Meeting Support
The Meeting object carries a masterMeetingId so recurring series and their individual occurrences are normalized the same way across every connected platform — no per-provider logic to detect whether a meeting is part of a series.
AI Connector Builder / Integration Agent
When a customer's meeting or conversation-intelligence platform isn't in Knit's library, the AI Connector Builder lets your team define a new connector in hours. Specify the platform's API structure and data mapping; Knit's AI generates the connector.
Passthrough API
Need a field outside the unified APIs — a Gong-specific call score, a Fireflies AI summary field? Passthrough lets you make direct calls to the underlying platform using Knit's authentication layer.
MCP Compatibility
Knit is MCP-compatible, giving AI agents authenticated read access to meetings, transcripts, and users across every connected platform through the same unified layer — no per-provider auth or endpoint logic in your agent code.
Quick Start
Authentication
All requests require two headers:
Authorization: Bearer YOUR_API_KEY
X-Integration-Id: YOUR_CUSTOMER_INTEGRATION_IDThe X-Integration-Id is the unique identifier for a specific customer's connected meeting platform, issued after they complete the Knit auth flow.
Fetch meetings
curl --request GET \
--url 'https://api.getknit.dev/v1.0/meeting.meetings.get?startDateTime=2026-08-01T00:00:00Z&endDateTime=2026-08-31T23:59:59Z' \
--header 'accept: application/json' \
--header 'Authorization: Bearer YOUR_API_KEY' \
--header 'X-Knit-Integration-Id: YOUR_CUSTOMER_INTEGRATION_ID'Response — same schema whether the customer uses Gong, Fireflies, or Google Meet:
{
"success": true,
"data": {
"meetings": [
{
"id": "EE8ED5BBBC254177B8201B9D84855949",
"title": "Quarterly Business Review",
"participants": [
{ "id": "305921", "email": "[email protected]", "name": "Mike Gorman" },
{ "id": "123456", "email": "[email protected]", "name": "Sara Jones" }
],
"scheduledStartDateTime": "2026-08-17T10:00:00Z",
"scheduledEndDateTime": "2026-08-17T10:30:00Z",
"durationInSeconds": 1500,
"meetingDownloadURL": "https://provider.example.com/call?id=EE8ED5BBBC254177B8201B9D84855949",
"meetingPlaybackURL": "https://provider.example.com/call?id=EE8ED5BBBC254177B8201B9D84855949",
"host": { "id": "305921", "email": "[email protected]", "name": "Mike Gorman" },
"agenda": "Discuss quarterly performance and align on next steps.",
"type": "EXTERNAL",
"mediaType": "VIDEO"
}
],
"pageToken": "jaladksd2192929"
}
}Fetch a transcript
curl --request GET \
--url 'https://api.getknit.dev/v1.0/meeting.transcript.get?meetingId=EE8ED5BBBC254177B8201B9D84855949' \
--header 'accept: application/json' \
--header 'Authorization: Bearer YOUR_API_KEY' \
--header 'X-Knit-Integration-Id: YOUR_CUSTOMER_INTEGRATION_ID'Response:
{
"success": true,
"data": {
"meetingTranscripts": [
{
"speakerId": "speaker1",
"sentences": [
{
"startedAt": "2026-08-17T10:00:00Z",
"endedAt": "2026-08-17T10:00:05Z",
"text": "Hello, thank you for joining the meeting."
}
]
},
{
"speakerId": "speaker2",
"sentences": [
{
"startedAt": "2026-08-17T10:00:05Z",
"endedAt": "2026-08-17T10:00:09Z",
"text": "Thank you. Could you clarify the project deadlines?"
}
]
}
]
}
}Create a meeting
curl --request POST \
--url https://api.getknit.dev/v1.0/meeting.meeting.create \
--header 'accept: application/json' \
--header 'content-type: application/json' \
--header 'Authorization: Bearer YOUR_API_KEY' \
--header 'X-Knit-Integration-Id: YOUR_CUSTOMER_INTEGRATION_ID' \
--data '
{
"title": "Customer Onboarding Call",
"startDateTime": "2026-08-20T15:00:00Z",
"durationInSeconds": 1800,
"participants": [{ "email": "[email protected]", "name": "Customer" }],
"host": { "email": "[email protected]", "name": "Your Rep" }
}'
Rate limitsKnit applies per-provider rate limits based on the underlying platform's constraints and manages it automatically if you've set up a sync. If you hit a limit, the API returns a
429response with aRetry-Afterheader.
Use Cases
AI Sales Coaching & Call Review
Pull normalized transcripts and recordings across every conversation-intelligence tool your customers use to power coaching, call scoring, or deal-risk analysis — without building separate parsers for Gong's data model versus Chorus's.
Typical flow: fetch meetings by date range → fetch transcript per meeting → feed into scoring or coaching model → surface insights back in your product
Meeting-to-CRM Automation
Combine the Unified Meeting API with Knit's Unified CRM API to automatically log call summaries, update deal stages, or create follow-up tasks from meeting content.
Typical flow: record.new webhook on meeting → fetch transcript → summarize → write engagement + update deal via CRM API
AI Meeting Assistants & Copilots
Feed real-time meeting and transcript data into LLM pipelines and MCP-compatible agents to build assistants that answer questions about what was discussed, across whichever notetaker or platform a customer's team already uses.
Typical flow: sync meetings + transcripts → embed into vector store → ground LLM responses in meeting context → use MCP tools to search across past calls
Revenue Intelligence Aggregation
For teams using more than one conversation-intelligence tool (common after M&A, or across sales and customer success orgs), normalize Gong and Chorus data into one reporting layer.
Typical flow: fetch meetings + users from both platforms → normalize speaker and participant data → aggregate into a single revenue-intelligence dashboard
Customer Success & Onboarding Visibility
Surface meeting history and transcripts from a customer's connected notetaker (Fireflies, Fathom) inside your product to give CS teams full context without switching tools.
Typical flow: fetch meetings by participant email → fetch transcript → display in customer timeline
FAQ
What is a unified meeting API?
A unified meeting API is a single, standardized interface that lets your product read meeting recordings, transcripts, and participant data across multiple meeting and conversation-intelligence platforms without building a separate integration for each one.
Is this the same as a "meeting bot" API?
No. A meeting bot API (like Recall.ai) joins a live call as a participant to capture audio and video in real time — it works even if the customer has no existing recording tool. Knit's Unified Meeting API reads data that already exists inside a tool your customer has adopted (Gong, Chorus, Fireflies, Fathom, Google Meet, or Microsoft Teams). If your customer already records meetings through one of those platforms, Knit gets you the data without adding a second bot to the call.
How long does it take to integrate?
Most teams go live in 1–3 days with Knit. Building a production-ready 1:1 native integration against a single platform like Gong typically takes several weeks — but when you build with Knit, one integration unlocks every connected meeting platform, and Knit maintains all connectors as providers update their APIs.
Does Knit store meeting recordings or transcripts?
No. Knit is a pass-through layer — requests hit the source platform in real time and no recording or transcript data is stored at rest. This reduces your GDPR, CCPA, and SOC 2 compliance scope.
Can I create meetings through the API, or only read them?
Both, where the underlying provider supports it. Google Meet and Microsoft Teams support creating and deleting meetings through their native APIs. Gong, Chorus, Fireflies, and Fathom are conversation-intelligence tools that capture calls automatically — for those, the Meeting API is primarily a read interface for retrieving meetings, transcripts, and users.
What if a customer's meeting platform isn't on the list?
Using the Connector Builder, we can add a new connector in hours.
Is Knit compatible with AI agents and MCP?
Yes. Knit is MCP-compatible, so agents in MCP-compatible frameworks can perform authenticated meeting data access via Knit with no per-provider logic.
What's the passthrough API?
The passthrough API lets you make direct calls to the underlying meeting platform using Knit's authentication layer. Use it for fields outside the unified schema.
Next Steps
| 🚀 Get your API key | Start building in minutes |
| 📅 Meeting data model | Full field reference for the core object |
| 📝 Transcript data model | Speaker-level transcript field reference |
| 👤 User data model | Meeting platform user field reference |
| 🔗 Supported meeting integrations | Full list of connected platforms |
Updated about 2 hours ago

