Jamy Meeting Data Export API
Version: 1.0 API Type: Read-only REST API Authentication: Bearer Token Base URL: https://app.jamy.ai/
Written By Tuba Raj
Last updated About 3 hours ago
1. Introduction
The Jamy Meeting Data Export API allows you to programmatically retrieve your meeting data and integrate it with your own applications, databases, CRMs, data warehouses, or internal systems.
With this API, you can:
Retrieve a list of your meetings.
Export complete meeting information.
Access meeting summaries, transcripts, and action items.
Retrieve meeting topics and reports.
Download meeting recordings.
Synchronize newly created or updated meetings.
Manage your API credentials through Jamy.
The API provides read-only access to your meeting data. You can retrieve and export information without modifying or deleting anything in your Jamy account.
2. Getting Started
Step 1: Generate your API key
To start using the API, you need to generate a Meeting Data Export API key.
Log in to your Jamy account.
Navigate to Settings → API Keys.
Locate the Meeting Data Export API section.
Enter a name for your API key.
Click Create export key.
Copy and securely store your generated API key.
Your key will look similar to:
jamy_live_xxxxxxxxxxxxxxxxxxxxxxxxxImportant:
Your complete API key is displayed only once during creation.
Your key is stored securely, and its original value cannot be retrieved later.
If you lose your key, revoke it and generate a new one.
You can view your key's name, prefix, and last-used information from the dashboard.
You can revoke your API key at any time.
Step 2: Configure authentication
Every API request must include your export key in the HTTP Authorization header.
Required headers:
Authorization: Bearer jamy_live_YOUR_API_KEY Accept: application/jsonYour Meeting Data Export API key is separate from your existing Jamy Settings API key.
Use the export key for all endpoints documented in this guide.
Step 3: API configuration
All requests use the following production base URL:
https://api.jamy.aiFor example, the meeting list endpoint is:
https://api.jamy.ai/v1/export/meetings/3. Available API Endpoints
Both endpoints require a valid Meeting Data Export API key.
4. Retrieve Your Meetings
Endpoint
GET /v1/export/meetings/
Retrieve a paginated list of meetings available to your Jamy account.
This endpoint returns meeting metadata rather than the complete meeting content. To retrieve transcripts, summaries, and recordings, use the individual meeting details endpoint.
Request parameters
Example request: Retrieve the latest 20 meetings
Request URL
GET https://api.jamy.ai/v1/export/meetings/?limit=20cURL
curl --request GET \ --url "https://api.jamy.ai/v1/export/meetings/?limit=20" \ --header "Authorization: Bearer jamy_live_YOUR_API_KEY" \ --header "Accept: application/json"Example response
HTTP Status: 200 OK
"results": [
{
"id": "meeting_123",
"name": "Product Strategy Meeting",
"start_time": "2026-11-03T09:00:00Z",
"created_at": "2026-11-03T09:00:00Z",
"updated_at": "2026-11-03T10:30:00Z",
"duration": 3600,
"status": "completed",
"platform": "Google Meet",
"participants": [
"john@example.com",
"sarah@example.com"
],
"content_flags": {
"has_transcript": true,
"has_recording": true
}
}
],
"next_cursor": "NEXT_PAGE_CURSOR"
}Illustrative response. The actual response contains the meeting records available to your account. The example shows the documented fields and pagination concept.
Response field descriptions
Note: The meeting list endpoint does not return full transcripts, summaries, or recording download URLs.
5. Retrieve Complete Meeting Details
Endpoint
GET /v1/export/meetings/{meeting_id}/
Retrieve the complete exportable information associated with a specific meeting.
Use the meeting ID obtained from the meeting list endpoint.
Path parameters
Example request
Request URL
GET https://api.jamy.ai/v1/export/meetings/meeting_123/cURL
curl --request GET \ --url "https://api.jamy.ai/v1/export/meetings/meeting_123/" \ --header "Authorization: Bearer jamy_live_YOUR_API_KEY" \ --header "Accept: application/json"Example response
HTTP Status: 200 OK
{
"id": "meeting_123",
"name": "Product Strategy Meeting",
"start_time": "2026-11-03T09:00:00Z",
"duration": 3600,
"status": "completed",
"platform": "Google Meet",
"summary": "The team discussed product development priorities, upcoming releases, and customer feedback.",
"tasks": [
{
"title": "Finalize product roadmap",
"description": "Prepare the roadmap for the next release."
},
{
"title": "Review customer feedback",
"description": "Analyze feedback and identify improvements."
}
],
"topics": [
"Product roadmap",
"Customer feedback",
"Upcoming releases"
],
"transcript": "John: Welcome everyone. Today we will discuss the product roadmap. Sarah: We should prioritize the upcoming release...",
"transcript_segments": [
{
"text": "Welcome everyone.",
"speaker": "John",
"start": 0.0,
"end": 2.5
},
{
"text": "Today we will discuss the product roadmap.",
"speaker": "John",
"start": 2.5,
"end": 5.8
}
],
"report": {
"sections": []
},
"recording": {
"url": "https://example.com/signed-recording-url",
"expires_at": "2026-11-03T10:45:00Z"
}
}Illustrative response showing the available content categories. Individual field structures and optional values depend on the actual meeting response.
Response field descriptions
Understanding the transcript
The API provides two transcript representations:
1. Full transcript
The transcript field contains the readable meeting conversation.
You can use it to:
Display meeting conversations.
Search meeting content.
Generate additional insights.
Store meeting transcripts in your own database.
2. Transcript segments
The transcript_segments field provides detailed transcript information.
You can use it for:
Speaker-level conversation analysis.
Word-level transcript processing.
Timestamp-based playback synchronization.
Building custom meeting transcription interfaces.
6. Download Meeting Recordings
Meeting recordings can be accessed through the recording object returned by the meeting details endpoint.
When a recording is stored in Jamy's private storage, the API provides a temporary signed download URL.
Example recording response
{ "recording": { "url": "https://example.com/signed-recording-url", "expires_at": "2026-11-03T10:45:00Z" } }Download instructions
Request the meeting details endpoint.
Extract
recording.urlfrom the response.Send an HTTP GET request to that URL.
Save the returned recording file.
Example download request
curl -L \ "SIGNED_RECORDING_URL" \ -o meeting.mp4Important recording information
Signed recording URLs are temporary and expire after approximately 15 minutes.
Download your recording as soon as you receive the URL.
You do not need access to Jamy's AWS account to download recordings.
Do not permanently store signed URLs in your application. Store the downloaded recording instead.
For YouTube meetings, the API returns the YouTube URL instead of an S3 signed download URL.
If a signed URL expires before you download the recording, request the meeting details again to obtain a fresh URL.
7. Pagination
If your Jamy account contains a large number of meetings, you can retrieve them in smaller batches using cursor-based pagination.
The default page size is 20 meetings, and the maximum allowed page size is 100.
First request
GET https://api.jamy.ai/v1/export/meetings/?limit=20If additional results exist, the response provides a next_cursor.
Retrieve the next page
Use the returned cursor in your next request.
GET https://api.jamy.ai/v1/export/meetings/?limit=20&cursor=YOUR_NEXT_CURSORExample cURL
curl --request GET \ --url "https://api.jamy.ai/v1/export/meetings/?limit=20&cursor=YOUR_NEXT_CURSOR" \ --header "Authorization: Bearer jamy_live_YOUR_API_KEY" \ --header "Accept: application/json"Continue requesting subsequent pages until there are no more results.
Important: Always use the cursor returned by the API. Do not generate or modify cursor values yourself.
8. Incremental Synchronization
The Meeting Data Export API supports incremental synchronization through the updated_after parameter.
This allows you to retrieve meetings that have been updated since a particular timestamp instead of repeatedly downloading your entire meeting history.
Example request
GET https://api.jamy.ai/v1/export/meetings/?updated_after=2026-11-01T00:00:00ZExample cURL
curl --request GET \ --url "https://api.jamy.ai/v1/export/meetings/?updated_after=2026-11-01T00:00:00Z" \ --header "Authorization: Bearer jamy_live_YOUR_API_KEY" \ --header "Accept: application/json"This retrieves meetings updated after November 1, 2026, at 00:00 UTC.
Recommended synchronization workflow
If you maintain your own meeting database, we recommend the following approach.
Initial synchronization
Request the meeting list endpoint.
Retrieve all pages using cursor pagination.
Store the meeting IDs and metadata in your database.
Request the meeting details endpoint for each meeting you want to import.
Store the complete meeting content in your system.
Subsequent synchronization
Maintain a record of your last successful synchronization timestamp.
Periodically call the meeting list endpoint using
updated_after.Retrieve the meetings that have changed.
Fetch their latest details using the individual meeting endpoint.
Update your local database.
Recommended practices
Store timestamps in UTC.
Use ISO 8601 timestamp formatting.
Keep track of your last successful synchronization.
Allow a small overlap between synchronization windows to avoid missing updates near timestamp boundaries.
Use meeting IDs as unique identifiers in your database.
Process pagination until all available results have been retrieved.
The API provides incremental retrieval based on meeting update timestamps. It does not automatically synchronize data into your application or push updates to your system.
9. Meeting Access and Permissions
The API only returns meetings that you are authorized to access through your Jamy account.
Meeting visibility follows Jamy's existing access permissions.
Organization owners
Organization owners can access meetings belonging to their organization.
Regular users
Regular users can access meetings they:
Organized.
Participated in.
Received.
Can access through a Space within the same organization.
If you attempt to retrieve a meeting you are not authorized to access, the API returns 404 Not Found.
Deleted meetings are excluded from meeting listings and cannot be retrieved through the details endpoint.
10. Rate Limits
The Meeting Data Export API enforces rate limits to maintain performance and availability.
If you exceed the applicable limits, your requests may be rate-limited.
We recommend:
Avoiding unnecessary repeated requests.
Using incremental synchronization instead of repeatedly retrieving your entire meeting history.
Implementing retry handling with appropriate delays.
Avoiding excessive parallel requests.
11. Error Handling
The API uses standard HTTP status codes to communicate request results.
When implementing your integration, always check the HTTP response status before processing the response body.
Managing your API keys
You can manage your export keys from:
Jamy → Settings → API Keys → Meeting Data Export API
If you believe your key has been compromised:
Log in to Jamy.
Open the Meeting Data Export API section.
Revoke the affected key.
Generate a new key.
Update your integration with the new credential.
Revoked credentials can no longer authenticate against the Meeting Data Export API.
12. Quick API Reference
Production Base URL
https://api.jamy.aiAuthentication header
Authorization: Bearer jamy_live_YOUR_API_KEYAccept header
Accept: application/json16. Support
If you experience issues integrating with the Meeting Data Export API, contact the Jamy support team.
When reporting an issue, please include:
The API endpoint being accessed.
The HTTP response status code.
The approximate time of the request.
The error response, if available.
For security reasons, never share your complete API key, passwords, or temporary signed recording URLs when requesting support.
Jamy Meeting Data Export API
Your meeting data. Your integrations. Your workflow.
Was this helpful?
Still need help? Ask the team