Quickstart
This quickstart takes you from zero to your first API calls. You need a Meetingize account with at least one processed meeting.
1. Create an API key
Section titled “1. Create an API key”- Sign in to the Meetingize web app.
- Open the user menu, then Developers (Settings > Developers).
- Click Create a key, give it a name and choose its scopes. For this quickstart keep
read:meetings,read:transcripts,read:documents,write:meetingsandwrite:documents. - Copy the key now: it is shown only once. It looks like
mtgz_live_k7Hq2x9a_....
export MEETINGIZE_API_KEY="mtgz_live_..."export MEETINGIZE_API="https://app.meetingize.com/api/v1"2. Check who you are
Section titled “2. Check who you are”curl -s "$MEETINGIZE_API/me" -H "Authorization: Bearer $MEETINGIZE_API_KEY"The response tells you the account, the plan, the credential type (api_key or oauth), its scopes and your rate
limit.
3. List and search meetings
Section titled “3. List and search meetings”curl -s "$MEETINGIZE_API/meetings?limit=5" -H "Authorization: Bearer $MEETINGIZE_API_KEY"curl -s "$MEETINGIZE_API/meetings?q=budget&created_after=2026-07-01T00:00:00Z" \ -H "Authorization: Bearer $MEETINGIZE_API_KEY"q searches titles, AI reports and transcripts (case-insensitive). Results are paginated with a cursor:
pass next_cursor back as cursor while has_more is true.
4. Read a transcript and the AI report
Section titled “4. Read a transcript and the AI report”MEETING_ID="1b9e..." # an id from the previous callcurl -s "$MEETINGIZE_API/meetings/$MEETING_ID/transcript?format=md" -H "Authorization: Bearer $MEETINGIZE_API_KEY"curl -s "$MEETINGIZE_API/meetings/$MEETING_ID/summary?format=md" -H "Authorization: Bearer $MEETINGIZE_API_KEY"Transcripts come as structured JSON segments (start, end, speaker, speaker_name, text) by default, or as
md, txt, srt and vtt. Need everything for an LLM? Use the LLM-ready export.
5. Send a recording
Section titled “5. Send a recording”curl -s -X POST "$MEETINGIZE_API/meetings" \ -H "Authorization: Bearer $MEETINGIZE_API_KEY" \ -H "Idempotency-Key: $(uuidgen)" \ -F file=@my-meeting.m4a -F title="Weekly sync" -F language=enYou get 202 Accepted with the new meeting (status: "queued") and its processing job. The full walkthrough
(statuses, polling or webhooks, what you receive at each step) is in
Create a meeting and get the results. Your key needs the write:meetings scope.
6. Generate a document
Section titled “6. Generate a document”curl -s -X POST "$MEETINGIZE_API/meetings/$MEETING_ID/documents" \ -H "Authorization: Bearer $MEETINGIZE_API_KEY" \ -H "Content-Type: application/json" \ -H "Idempotency-Key: $(uuidgen)" \ -d '{"prompt": "Write a client follow-up email with the decisions and next steps", "title": "Follow-up"}'The answer is 202 Accepted with a job. Poll it until status is completed, then read the document:
curl -s "$MEETINGIZE_API/jobs/job_..." -H "Authorization: Bearer $MEETINGIZE_API_KEY"curl -s "$MEETINGIZE_API/documents/doc_...?format=md" -H "Authorization: Bearer $MEETINGIZE_API_KEY"Document generation consumes LLM tokens, billed on your API allowance.
7. Get notified instead of polling
Section titled “7. Get notified instead of polling”Register a webhook endpoint in Settings > Developers (or with POST /v1/webhook_endpoints and the webhooks
scope), subscribe to document.generated, and verify the signature of
each delivery.
Prefer Python, Node or your AI assistant?
Section titled “Prefer Python, Node or your AI assistant?”- The API explorer generates code in many languages and lets you try calls with your key.
- The
meetingizeCLI wraps all of the above in one command line. - To use your meetings from Claude or ChatGPT without writing code, connect the MCP server.