Get Bot
/bot/{id}https://platform.skribby.io/api/v1/bot/{id}Retrieve information about a specific bot, including its current status, transcript (if available), participants, and lifecycle events.
Path Parameters
| Name | Type | Description |
|---|---|---|
idrequired | string<uuid> | Bot ID |
Query Parameters
| Name | Type | Description |
|---|---|---|
with-speaker-events | boolean | Include participant timeline events |
Responses
idstring<uuid>Unique bot identifier
"3c09b2aa-6708-42c1-8145-aa55ee223613"statusstringThe current lifecycle status of the bot.
Refer to the Bot Lifecycle guide for a detailed explanation of each state.
*Note on bot_detected:* This is often non-terminal. Skribby automatically retries up to 3 times. You may see the status toggle between bot_detected and booting during retries.
scheduledbootingjoiningwaiting_to_recordrecordingprocessingtranscribingleavingfinishednot_admittedbot_detectedauth_requiredinvalid_credentialsfailedstop_reasonstring | nullThe reason why the bot stopped. This field is only populated when the status is finished or not_admitted.
Refer to the Bot Lifecycle guide for the machine-to-human mapping of these codes.
invalid_meeting_urlcall_already_finishedwaiting_room_timeoutrequest_deniedhost_in_another_meetingmanually_stoppedkickedmeeting_endedrecording_start_timeoutempty_meeting_timeoutlast_person_detectedsilence_detection_triggeredrecording_start_modestringWhether recording starts automatically or waits for a start-recording WebSocket action.
Manual mode requires a realtime transcription model or the Realtime features addon (realtime_audio: true).
automaticmanualservicestringService the bot joined
gmeetteamszoomscheduled_forstring<date-time> | nullWhen the bot is scheduled to join (for scheduled bots)
time_limitinteger | nullUse time_limit property in stop_options.
stop_optionsobjectDefined options when the bot should stop on certain conditions.
bot_namestringName of the bot as it appears in the meeting. This may be truncated from the original input
if it exceeded platform limits (Teams: 50, Meet: 60, Zoom: 64 characters).
bot_avatarstring<uri> | nullURL to bot avatar image
meeting_urlstring<uri>URL of the meeting
webhook_urlstring<uri> | nullWebhook URL for receiving updates.
Refer to the Webhooks section for details on webhook format and available events.
custom_metadataobjectMetadata attached to the bot for tracking requests in your system.
Keys and values must be strings. Up to 50 keys, each value up to 500 characters.
Clearing metadata returns an empty object in responses.
recording_urlstring<uri> | nullURL to download the recording
recording_available_untilstring<date-time> | nullWhen the recording will be automatically deleted
websocket_urlstring<uri> | nullWebSocket URL for realtime meeting events and control actions. Available with a realtime transcription model or the Realtime features addon.
websocket_read_only_urlstring<uri> | nullRead-only WebSocket URL for realtime meeting events. It does not allow actions.
Useful if you want to use the websocket directly in your front-end without providing access to the user.
websocket_audio_urlstring<uri> | nullWebSocket URL for receiving realtime audio data from the bot.
Available with a realtime transcription model or the Realtime features addon (realtime_audio: true).
Audio is streamed as 16-bit PCM at 16kHz sample rate.
videobooleanWhether video is recorded for this meeting
langstring | nullLanguage specified when creating the bot
detected_langstring | nullLanguage detected from the conversation (if supported by the model)
transcriptTranscriptSegment[]Array of transcript segments
transcription_modelstringExact transcription model identifier provided in the request. This may be an alias.
"soniox/latest"transcription_model_keystringResolved official transcription model key used by Skribby.
"soniox/stt-async-v5"participantsParticipant[]List of meeting participants
eventsEvent[]List of bot lifecycle events
profanity_filterbooleanWhether profanity filter was enabled
custom_vocabularystring[]Words or phrases provided when creating meeting bot for transcription model
created_atstring<date-time>When the bot was created
finished_atstring<date-time> | nullWhen the bot finished
Request
curl -X GET \
"https://platform.skribby.io/api/v1/bot/{id}" \
-H "Authorization: Bearer YOUR_API_KEY" \
-H "Content-Type: application/json"Response
{
"id": "3c09b2aa-6708-42c1-8145-aa55ee223613",
"status": "scheduled",
"stop_reason": "invalid_meeting_url",
"recording_start_mode": "automatic",
"service": "gmeet",
"scheduled_for": null,
"time_limit": null,
"stop_options": {
"time_limit": 5,
"waiting_room_timeout": 1,
"recording_start_timeout": 1,
"last_person_detection": 0,
"empty_meeting_timeout": 0,
"silence_detection": 0
},
"transcription_model": "soniox/latest",
"transcription_model_key": "soniox/stt-async-v5"
}