/api/v1/bots/scheduleCreates a scheduled bot that will automatically launch at `scheduled_start_at + join_offset_seconds`. The platform is auto-detected from `meeting_url`. `scheduled_start_at` must be strictly in the future (UTC). Naive datetimes are treated as UTC.
Headers
X-API-KeystringrequiredYour workspace API key.
Content-TypestringrequiredMust be `application/json`.
Request Body
application/json
meeting_urlstringrequiredFull meeting URL. Platform auto-detected.
Example: "https://meet.google.com/abc-defg-hij"
scheduled_start_atstringrequiredISO 8601 UTC datetime for the meeting start. Must be in the future.
Example: "2026-05-15T14:00:00Z"
titlestringDisplay title for this scheduled slot.
Example: "Weekly Team Standup"
join_offset_secondsintegerSeconds before `scheduled_start_at` to join. Default: -60.
Example: -120
bot_namestringBot display name in meeting.
Example: "Notetaker"
languagestringWhisper language code.
Example: "en"
recording_enabledbooleanEnable recording. Default: false.
Example: true
transcribe_enabledbooleanEnable transcription. Default: true.
Example: true
voice_agent_enabledbooleanEnable TTS/voice agent.
Example: false
capture_modesarrayCapture modes. Default: ["audio"].
Example: ["audio"]
recording_formatstringRecording output format.
Example: "mp4"
mp4mp3webmResponses
{
"id": 7,
"status": "scheduled",
"scheduled_start_at": "2026-05-15T14:00:00Z",
"meeting_url": "https://meet.google.com/abc-defg-hij",
"settings": {},
"created_at": "2026-05-12T10:00:00Z"
}Try it live
https://api.serveka.com/api/v1/bots/scheduleRequest Body
curl -X POST 'https://api.serveka.com/api/v1/bots/schedule' \
-H "Content-Type: application/json"\
-d '{
"meeting_url": "https://meet.google.com/abc-defg-hij",
"scheduled_start_at": "2026-05-15T14:00:00Z",
"title": "Weekly Team Standup",
"join_offset_seconds": -120,
"bot_name": "Notetaker",
"language": "en",
"recording_enabled": true,
"transcribe_enabled": true,
"voice_agent_enabled": false,
"capture_modes": [
"audio"
],
"recording_format": "mp4"
}'