Skip to main content

API Overview

MeetBot provides a RESTful API for managing meeting bots.

Base URL

Sandbox:

https://noncivilized-lorelei-rattly.ngrok-free.dev/api/v1

Production:

https://api.meetbot.dev/v1

Authentication

All API requests require authentication via Bearer token:

curl -H "Authorization: Bearer YOUR_API_KEY" \
https://api.meetbot.dev/v1/bots

See Authentication for details on obtaining tokens.

Request Format

  • Content-Type: application/json
  • Accept: application/json
curl -X POST https://api.meetbot.dev/v1/bots \
-H "Authorization: Bearer YOUR_API_KEY" \
-H "Content-Type: application/json" \
-d '{"meetingInfo": {"platform": "google", "meetingUrl": "..."}}'

Response Format

All responses are JSON:

{
"id": 1,
"status": "READY_TO_DEPLOY",
"createdAt": "2024-01-15T10:30:00Z"
}

Error Responses

{
"detail": "Bot not found"
}

Or with validation errors:

{
"detail": [
{
"loc": ["body", "meetingInfo", "platform"],
"msg": "field required",
"type": "value_error.missing"
}
]
}

HTTP Status Codes

CodeDescription
200Success
201Created
204No Content (successful deletion)
400Bad Request (validation error)
401Unauthorized (invalid/missing token)
403Forbidden (insufficient permissions)
404Not Found
409Conflict (e.g., bot already deployed)
422Unprocessable Entity
429Rate Limited
500Internal Server Error

Pagination

List endpoints support pagination:

GET /api/v1/bots?page=1&page_size=20

Response includes pagination metadata:

{
"bots": [...],
"total": 150,
"page": 1,
"page_size": 20
}

Rate Limiting

Coming Soon: Rate limiting is planned but not yet enforced. The following limits will apply in a future release.

  • 60 requests/minute per API key
  • 1000 requests/hour per API key

Rate limit headers (planned):

X-RateLimit-Limit: 60
X-RateLimit-Remaining: 45
X-RateLimit-Reset: 1705312800

API Endpoints

Authentication

MethodEndpointDescription
POST/auth/registerRegister new user
POST/auth/loginLogin with email/password
POST/auth/logoutInvalidate tokens
POST/auth/refreshRefresh access token

Users

MethodEndpointDescription
GET/users/meGet current user
PATCH/users/meUpdate profile
GET/users/me/usageGet usage statistics

Bots

MethodEndpointDescription
GET/botsList all bots
POST/botsCreate new bot
GET/bots/{id}Get bot details
PATCH/bots/{id}Update bot
DELETE/bots/{id}Delete bot
POST/bots/{id}/deployDeploy bot
POST/bots/{id}/killForce stop bot
GET/bots/{id}/logsGet bot logs
GET/bots/{id}/eventsGet bot events

Recordings

MethodEndpointDescription
GET/recordingsList recordings
GET/recordings/{bot_id}Get recording info
GET/recordings/{bot_id}/downloadGet download URL
GET/recordings/{bot_id}/transcriptionGet transcription
GET/recordings/{bot_id}/streamStream recording video
DELETE/recordings/{bot_id}Delete recording
POST/recordings/{bot_id}/shareCreate share link
GET/recordings/{bot_id}/shareGet share link
DELETE/recordings/{bot_id}/shareDelete share link

Webhooks

MethodEndpointDescription
GET/webhooksList webhooks
POST/webhooksCreate webhook
GET/webhooks/{id}Get webhook details
PATCH/webhooks/{id}Update webhook
DELETE/webhooks/{id}Delete webhook
POST/webhooks/{id}/testTest webhook
GET/webhooks/{id}/deliveriesGet delivery history

Transcripts

MethodEndpointDescription
POST/transcripts/{bot_id}/transcribeStart transcription
GET/transcripts/{bot_id}Get full transcript
GET/transcripts/{bot_id}/statusGet transcript status
DELETE/transcripts/{bot_id}Delete transcript

Summaries

MethodEndpointDescription
POST/summaries/{bot_id}/summarizeGenerate summary
GET/summaries/{bot_id}Get summary
GET/summaries/{bot_id}/statusGet summary status
DELETE/summaries/{bot_id}Delete summary

Events

MethodEndpointDescription
GET/eventsList aggregated events

API Keys

MethodEndpointDescription
GET/api-keysList API keys
POST/api-keysCreate API key
DELETE/api-keys/{id}Revoke API key
GET/api-keys/{id}/usageGet key usage stats

Analytics & Usage

MethodEndpointDescription
GET/users/me/analyticsUsage analytics dashboard
GET/users/me/api-logsAPI request logs

Public Endpoints

These endpoints do not require authentication:

MethodEndpointDescription
GET/share/{token}Access shared recording

SDKs

Coming soon:

  • Python SDK
  • JavaScript/TypeScript SDK
  • Go SDK

OpenAPI Specification

Interactive API documentation is available at: