get_console_logs
ChatGPTGrab console logs from a specific Birdie recording. Returned events include: - absolute timestamps (timestamp_ms) - recording-relative timing (recording_time_ms, recording_timecode) Supported filters: - log_level: error, warning, info, log, debug - limit: cap the number of returned results
get_console_logs
ChatGPTGrab console logs from a specific Birdie recording. Returned events include: - absolute timestamps (timestamp_ms) - recording-relative timing (recording_time_ms, recording_timecode) Supported filters: - log_level: error, warning, info, log, debug - limit: cap the number of returned results
get_metadata
ChatGPTRead structured metadata and context for a specific Birdie recording. This includes: - core recording information such as date, duration, direction, and origin - people context such as who recorded it and who requested it - browser and device details - page and location context when available - custom metadata payloads and compatible legacy metadata when present Use this tool when the user wants general structured context about a recording. Do NOT use this tool for transcript text, console logs, network requests, or user-step analysis.
get_metadata
ChatGPTRead structured metadata and context for a specific Birdie recording. This includes: - core recording information such as date, duration, direction, and origin - people context such as who recorded it and who requested it - browser and device details - page and location context when available - custom metadata payloads and compatible legacy metadata when present Use this tool when the user wants general structured context about a recording. Do NOT use this tool for transcript text, console logs, network requests, or user-step analysis.
get_network_requests
ChatGPTList network requests from a specific Birdie recording as JSON. Returned events include: - absolute timestamps (timestamp_ms) - recording-relative timing (recording_time_ms, recording_timecode) Supported filters: - status_code: 500 or "5xx" - content_type: for example application/json - host: for example api.example.com - limit
get_network_requests
ChatGPTList network requests from a specific Birdie recording as JSON. Returned events include: - absolute timestamps (timestamp_ms) - recording-relative timing (recording_time_ms, recording_timecode) Supported filters: - status_code: 500 or "5xx" - content_type: for example application/json - host: for example api.example.com - limit
get_recording_diagnostics
ChatGPTInspect a specific Birdie recording and return a normalized evidence bundle. Use this tool only when the user provides a single recording identifier directly. The identifier can be: - numeric id (e.g. 631060) - uuid - short public code (e.g. w2uqNMG) - or a full url whose last part is the identifier, uuid or short code This tool returns: - recording context - browser and environment details - transcript text when available - user steps - console events - network events - network summary Returned events include: - absolute timestamps (timestamp_ms) - recording-relative timing (recording_time_ms, recording_timecode) Use this tool when the AI should review all recording signals together and decide what is meaningful. Do NOT use this tool for searching, browsing, or listing multiple recordings.
get_recording_diagnostics
ChatGPTInspect a specific Birdie recording and return a normalized evidence bundle. Use this tool only when the user provides a single recording identifier directly. The identifier can be: - numeric id (e.g. 631060) - uuid - short public code (e.g. w2uqNMG) - or a full url whose last part is the identifier, uuid or short code This tool returns: - recording context - browser and environment details - transcript text when available - user steps - console events - network events - network summary Returned events include: - absolute timestamps (timestamp_ms) - recording-relative timing (recording_time_ms, recording_timecode) Use this tool when the AI should review all recording signals together and decide what is meaningful. Do NOT use this tool for searching, browsing, or listing multiple recordings.
get_user_events
ChatGPTRead clicks, inputs, and page navigation changes from a specific Birdie recording in plain language. Returned events include: - absolute timestamps (timestamp_ms) - recording-relative timing (recording_time_ms, recording_timecode)
get_user_events
ChatGPTRead clicks, inputs, and page navigation changes from a specific Birdie recording in plain language. Returned events include: - absolute timestamps (timestamp_ms) - recording-relative timing (recording_time_ms, recording_timecode)
get_video_transcript
ChatGPTGet the spoken transcript from a specific Birdie recording. When timestamped captions are available, this tool returns WebVTT. Otherwise it returns the plain transcript text and clearly reports that WebVTT was not available.
get_video_transcript
ChatGPTGet the spoken transcript from a specific Birdie recording. When timestamped captions are available, this tool returns WebVTT. Otherwise it returns the plain transcript text and clearly reports that WebVTT was not available.
list_recordings
ChatGPTList Birdie recordings. Use this tool when the user does NOT already know the exact recording identifier. Typical use cases: - find recordings by text, title, tag name, tag slug, or metadata - search by ticket id using the "ticket" parameter - search recordings from a specific email (user, requester, or contact) - narrow results by folder - narrow results by recording date - browse multiple recordings IMPORTANT: - If filtering by email, folder, date, or ticket only, DO NOT provide a query. - Do NOT use generic words like "video", "recording", "latest", or "*". - Only provide "query" when you have meaningful search text (e.g. error message, keyword, feature name, tag name, or tag slug). Examples: - GOOD: { "from_email": "john@company.com" } - GOOD: { "query": "checkout error" } - GOOD: { "query": "freshchat" } - GOOD: { "ticket": "12345" } - GOOD: { "ticket": "12345", "folder": "Customer Escalations" } - GOOD: { "query": "checkout error", "date": "2026-03-24" } - BAD: { "query": "video", "from_email": "john@company.com" } Query matching: - The "query" field can match recording title, uuid, metadata, tag name, and tag slug. - Tag matching is performed on both the human-readable tag name and the normalized tag slug. Ticket search: - If the user provides a ticket id, use the "ticket" field. - Do NOT prefix ticket ids with "#". - Example: user says "ticket 12345" → use { "ticket": "12345" } Folder search: - If the user mentions a folder, use the "folder" field. - Folder is normalized and matched against the folder slug. Date search: - Use the "date" field to narrow by recording date. - Accepted formats include: - YYYY-MM-DD - YYYY-MM-DD HH - YYYY-MM-DD HH:MM - ISO datetime strings Do NOT use this tool if the user provides a specific recording identifier (id, uuid, or shortlink like w2uqMNG). In that case, use get_recording_diagnostics instead.
list_recordings
ChatGPTList Birdie recordings. Use this tool when the user does NOT already know the exact recording identifier. Typical use cases: - find recordings by text, title, tag name, tag slug, or metadata - search by ticket id using the "ticket" parameter - search recordings from a specific email (user, requester, or contact) - narrow results by folder - narrow results by recording date - browse multiple recordings IMPORTANT: - If filtering by email, folder, date, or ticket only, DO NOT provide a query. - Do NOT use generic words like "video", "recording", "latest", or "*". - Only provide "query" when you have meaningful search text (e.g. error message, keyword, feature name, tag name, or tag slug). Examples: - GOOD: { "from_email": "john@company.com" } - GOOD: { "query": "checkout error" } - GOOD: { "query": "freshchat" } - GOOD: { "ticket": "12345" } - GOOD: { "ticket": "12345", "folder": "Customer Escalations" } - GOOD: { "query": "checkout error", "date": "2026-03-24" } - BAD: { "query": "video", "from_email": "john@company.com" } Query matching: - The "query" field can match recording title, uuid, metadata, tag name, and tag slug. - Tag matching is performed on both the human-readable tag name and the normalized tag slug. Ticket search: - If the user provides a ticket id, use the "ticket" field. - Do NOT prefix ticket ids with "#". - Example: user says "ticket 12345" → use { "ticket": "12345" } Folder search: - If the user mentions a folder, use the "folder" field. - Folder is normalized and matched against the folder slug. Date search: - Use the "date" field to narrow by recording date. - Accepted formats include: - YYYY-MM-DD - YYYY-MM-DD HH - YYYY-MM-DD HH:MM - ISO datetime strings Do NOT use this tool if the user provides a specific recording identifier (id, uuid, or shortlink like w2uqMNG). In that case, use get_recording_diagnostics instead.