From 304f3dca3adf6dd3c432c7f61276c4d8272739b2 Mon Sep 17 00:00:00 2001 From: Mathieu Virbel Date: Wed, 10 Sep 2025 19:04:09 -0600 Subject: [PATCH] feat: add room by name endpoint for non-authenticated access - Add GET /rooms/name/{room_name} backend endpoint - Endpoint supports non-authenticated access for public rooms - Returns RoomDetails with webhook fields hidden for non-owners - Update useRoomGetByName hook to use new direct endpoint - Remove authentication requirement from frontend hook - Regenerate API client types Fixes: Non-authenticated users can now access room lobbies --- server/reflector/views/rooms.py | 24 + www/app/lib/apiHooks.ts | 9 +- www/app/reflector-api.d.ts | 5698 ++++++++++++++++--------------- 3 files changed, 2888 insertions(+), 2843 deletions(-) diff --git a/server/reflector/views/rooms.py b/server/reflector/views/rooms.py index ee123e8e..6c55d995 100644 --- a/server/reflector/views/rooms.py +++ b/server/reflector/views/rooms.py @@ -155,6 +155,30 @@ async def rooms_get( return room +@router.get("/rooms/name/{room_name}", response_model=RoomDetails) +async def rooms_get_by_name( + room_name: str, + user: Annotated[Optional[auth.UserInfo], Depends(auth.current_user_optional)], +): + user_id = user["sub"] if user else None + room = await rooms_controller.get_by_name(room_name) + if not room: + raise HTTPException(status_code=404, detail="Room not found") + + # Convert to RoomDetails format (add webhook fields if user is owner) + room_dict = room.__dict__.copy() + if user_id == room.user_id: + # User is owner, include webhook details if available + room_dict["webhook_url"] = getattr(room, "webhook_url", None) + room_dict["webhook_secret"] = getattr(room, "webhook_secret", None) + else: + # Non-owner, hide webhook details + room_dict["webhook_url"] = None + room_dict["webhook_secret"] = None + + return RoomDetails(**room_dict) + + @router.post("/rooms", response_model=Room) async def rooms_create( room: CreateRoom, diff --git a/www/app/lib/apiHooks.ts b/www/app/lib/apiHooks.ts index 671a8163..975f7525 100644 --- a/www/app/lib/apiHooks.ts +++ b/www/app/lib/apiHooks.ts @@ -642,19 +642,16 @@ export function useRoomsCreateMeeting() { // Calendar integration hooks export function useRoomGetByName(roomName: string | null) { - const { isAuthenticated } = useAuthReady(); - return $api.useQuery( "get", - "/v1/rooms", + "/v1/rooms/name/{room_name}", { params: { - query: { page: 1 }, // We'll need to filter by room name on the client side + path: { room_name: roomName || "" }, }, }, { - enabled: !!roomName && isAuthenticated, - select: (data) => data.items?.find((room) => room.name === roomName), + enabled: !!roomName, }, ); } diff --git a/www/app/reflector-api.d.ts b/www/app/reflector-api.d.ts index 669b88e9..d44dfa1b 100644 --- a/www/app/reflector-api.d.ts +++ b/www/app/reflector-api.d.ts @@ -4,2884 +4,2908 @@ */ export interface paths { - "/metrics": { - parameters: { - query?: never; - header?: never; - path?: never; - cookie?: never; + "/metrics": { + parameters: { + query?: never; + header?: never; + path?: never; + cookie?: never; + }; + /** + * Metrics + * @description Endpoint that serves Prometheus metrics. + */ + get: operations["metrics"]; + put?: never; + post?: never; + delete?: never; + options?: never; + head?: never; + patch?: never; + trace?: never; }; - /** - * Metrics - * @description Endpoint that serves Prometheus metrics. - */ - get: operations["metrics"]; - put?: never; - post?: never; - delete?: never; - options?: never; - head?: never; - patch?: never; - trace?: never; - }; - "/v1/meetings/{meeting_id}/consent": { - parameters: { - query?: never; - header?: never; - path?: never; - cookie?: never; + "/v1/meetings/{meeting_id}/consent": { + parameters: { + query?: never; + header?: never; + path?: never; + cookie?: never; + }; + get?: never; + put?: never; + /** Meeting Audio Consent */ + post: operations["v1_meeting_audio_consent"]; + delete?: never; + options?: never; + head?: never; + patch?: never; + trace?: never; }; - get?: never; - put?: never; - /** Meeting Audio Consent */ - post: operations["v1_meeting_audio_consent"]; - delete?: never; - options?: never; - head?: never; - patch?: never; - trace?: never; - }; - "/v1/meetings/{meeting_id}/deactivate": { - parameters: { - query?: never; - header?: never; - path?: never; - cookie?: never; + "/v1/meetings/{meeting_id}/deactivate": { + parameters: { + query?: never; + header?: never; + path?: never; + cookie?: never; + }; + get?: never; + put?: never; + post?: never; + delete?: never; + options?: never; + head?: never; + /** + * Meeting Deactivate + * @description Deactivate a meeting (owner only) + */ + patch: operations["v1_meeting_deactivate"]; + trace?: never; }; - get?: never; - put?: never; - post?: never; - delete?: never; - options?: never; - head?: never; - /** - * Meeting Deactivate - * @description Deactivate a meeting (owner only) - */ - patch: operations["v1_meeting_deactivate"]; - trace?: never; - }; - "/v1/rooms": { - parameters: { - query?: never; - header?: never; - path?: never; - cookie?: never; + "/v1/rooms": { + parameters: { + query?: never; + header?: never; + path?: never; + cookie?: never; + }; + /** Rooms List */ + get: operations["v1_rooms_list"]; + put?: never; + /** Rooms Create */ + post: operations["v1_rooms_create"]; + delete?: never; + options?: never; + head?: never; + patch?: never; + trace?: never; }; - /** Rooms List */ - get: operations["v1_rooms_list"]; - put?: never; - /** Rooms Create */ - post: operations["v1_rooms_create"]; - delete?: never; - options?: never; - head?: never; - patch?: never; - trace?: never; - }; - "/v1/rooms/{room_id}": { - parameters: { - query?: never; - header?: never; - path?: never; - cookie?: never; + "/v1/rooms/{room_id}": { + parameters: { + query?: never; + header?: never; + path?: never; + cookie?: never; + }; + /** Rooms Get */ + get: operations["v1_rooms_get"]; + put?: never; + post?: never; + /** Rooms Delete */ + delete: operations["v1_rooms_delete"]; + options?: never; + head?: never; + /** Rooms Update */ + patch: operations["v1_rooms_update"]; + trace?: never; }; - /** Rooms Get */ - get: operations["v1_rooms_get"]; - put?: never; - post?: never; - /** Rooms Delete */ - delete: operations["v1_rooms_delete"]; - options?: never; - head?: never; - /** Rooms Update */ - patch: operations["v1_rooms_update"]; - trace?: never; - }; - "/v1/rooms/{room_name}/meeting": { - parameters: { - query?: never; - header?: never; - path?: never; - cookie?: never; + "/v1/rooms/name/{room_name}": { + parameters: { + query?: never; + header?: never; + path?: never; + cookie?: never; + }; + /** Rooms Get By Name */ + get: operations["v1_rooms_get_by_name"]; + put?: never; + post?: never; + delete?: never; + options?: never; + head?: never; + patch?: never; + trace?: never; }; - get?: never; - put?: never; - /** Rooms Create Meeting */ - post: operations["v1_rooms_create_meeting"]; - delete?: never; - options?: never; - head?: never; - patch?: never; - trace?: never; - }; - "/v1/rooms/{room_id}/webhook/test": { - parameters: { - query?: never; - header?: never; - path?: never; - cookie?: never; + "/v1/rooms/{room_name}/meeting": { + parameters: { + query?: never; + header?: never; + path?: never; + cookie?: never; + }; + get?: never; + put?: never; + /** Rooms Create Meeting */ + post: operations["v1_rooms_create_meeting"]; + delete?: never; + options?: never; + head?: never; + patch?: never; + trace?: never; }; - get?: never; - put?: never; - /** - * Rooms Test Webhook - * @description Test webhook configuration by sending a sample payload. - */ - post: operations["v1_rooms_test_webhook"]; - delete?: never; - options?: never; - head?: never; - patch?: never; - trace?: never; - }; - "/v1/rooms/{room_name}/ics/sync": { - parameters: { - query?: never; - header?: never; - path?: never; - cookie?: never; + "/v1/rooms/{room_id}/webhook/test": { + parameters: { + query?: never; + header?: never; + path?: never; + cookie?: never; + }; + get?: never; + put?: never; + /** + * Rooms Test Webhook + * @description Test webhook configuration by sending a sample payload. + */ + post: operations["v1_rooms_test_webhook"]; + delete?: never; + options?: never; + head?: never; + patch?: never; + trace?: never; }; - get?: never; - put?: never; - /** Rooms Sync Ics */ - post: operations["v1_rooms_sync_ics"]; - delete?: never; - options?: never; - head?: never; - patch?: never; - trace?: never; - }; - "/v1/rooms/{room_name}/ics/status": { - parameters: { - query?: never; - header?: never; - path?: never; - cookie?: never; + "/v1/rooms/{room_name}/ics/sync": { + parameters: { + query?: never; + header?: never; + path?: never; + cookie?: never; + }; + get?: never; + put?: never; + /** Rooms Sync Ics */ + post: operations["v1_rooms_sync_ics"]; + delete?: never; + options?: never; + head?: never; + patch?: never; + trace?: never; }; - /** Rooms Ics Status */ - get: operations["v1_rooms_ics_status"]; - put?: never; - post?: never; - delete?: never; - options?: never; - head?: never; - patch?: never; - trace?: never; - }; - "/v1/rooms/{room_name}/meetings": { - parameters: { - query?: never; - header?: never; - path?: never; - cookie?: never; + "/v1/rooms/{room_name}/ics/status": { + parameters: { + query?: never; + header?: never; + path?: never; + cookie?: never; + }; + /** Rooms Ics Status */ + get: operations["v1_rooms_ics_status"]; + put?: never; + post?: never; + delete?: never; + options?: never; + head?: never; + patch?: never; + trace?: never; }; - /** Rooms List Meetings */ - get: operations["v1_rooms_list_meetings"]; - put?: never; - post?: never; - delete?: never; - options?: never; - head?: never; - patch?: never; - trace?: never; - }; - "/v1/rooms/{room_name}/meetings/upcoming": { - parameters: { - query?: never; - header?: never; - path?: never; - cookie?: never; + "/v1/rooms/{room_name}/meetings": { + parameters: { + query?: never; + header?: never; + path?: never; + cookie?: never; + }; + /** Rooms List Meetings */ + get: operations["v1_rooms_list_meetings"]; + put?: never; + post?: never; + delete?: never; + options?: never; + head?: never; + patch?: never; + trace?: never; }; - /** Rooms List Upcoming Meetings */ - get: operations["v1_rooms_list_upcoming_meetings"]; - put?: never; - post?: never; - delete?: never; - options?: never; - head?: never; - patch?: never; - trace?: never; - }; - "/v1/rooms/{room_name}/meetings/active": { - parameters: { - query?: never; - header?: never; - path?: never; - cookie?: never; + "/v1/rooms/{room_name}/meetings/upcoming": { + parameters: { + query?: never; + header?: never; + path?: never; + cookie?: never; + }; + /** Rooms List Upcoming Meetings */ + get: operations["v1_rooms_list_upcoming_meetings"]; + put?: never; + post?: never; + delete?: never; + options?: never; + head?: never; + patch?: never; + trace?: never; }; - /** - * Rooms List Active Meetings - * @description List all active meetings for a room (supports multiple active meetings) - */ - get: operations["v1_rooms_list_active_meetings"]; - put?: never; - post?: never; - delete?: never; - options?: never; - head?: never; - patch?: never; - trace?: never; - }; - "/v1/rooms/{room_name}/meetings/{meeting_id}/join": { - parameters: { - query?: never; - header?: never; - path?: never; - cookie?: never; + "/v1/rooms/{room_name}/meetings/active": { + parameters: { + query?: never; + header?: never; + path?: never; + cookie?: never; + }; + /** + * Rooms List Active Meetings + * @description List all active meetings for a room (supports multiple active meetings) + */ + get: operations["v1_rooms_list_active_meetings"]; + put?: never; + post?: never; + delete?: never; + options?: never; + head?: never; + patch?: never; + trace?: never; }; - get?: never; - put?: never; - /** - * Rooms Join Meeting - * @description Join a specific meeting by ID - */ - post: operations["v1_rooms_join_meeting"]; - delete?: never; - options?: never; - head?: never; - patch?: never; - trace?: never; - }; - "/v1/transcripts": { - parameters: { - query?: never; - header?: never; - path?: never; - cookie?: never; + "/v1/rooms/{room_name}/meetings/{meeting_id}/join": { + parameters: { + query?: never; + header?: never; + path?: never; + cookie?: never; + }; + get?: never; + put?: never; + /** + * Rooms Join Meeting + * @description Join a specific meeting by ID + */ + post: operations["v1_rooms_join_meeting"]; + delete?: never; + options?: never; + head?: never; + patch?: never; + trace?: never; }; - /** Transcripts List */ - get: operations["v1_transcripts_list"]; - put?: never; - /** Transcripts Create */ - post: operations["v1_transcripts_create"]; - delete?: never; - options?: never; - head?: never; - patch?: never; - trace?: never; - }; - "/v1/transcripts/search": { - parameters: { - query?: never; - header?: never; - path?: never; - cookie?: never; + "/v1/transcripts": { + parameters: { + query?: never; + header?: never; + path?: never; + cookie?: never; + }; + /** Transcripts List */ + get: operations["v1_transcripts_list"]; + put?: never; + /** Transcripts Create */ + post: operations["v1_transcripts_create"]; + delete?: never; + options?: never; + head?: never; + patch?: never; + trace?: never; }; - /** - * Transcripts Search - * @description Full-text search across transcript titles and content. - */ - get: operations["v1_transcripts_search"]; - put?: never; - post?: never; - delete?: never; - options?: never; - head?: never; - patch?: never; - trace?: never; - }; - "/v1/transcripts/{transcript_id}": { - parameters: { - query?: never; - header?: never; - path?: never; - cookie?: never; + "/v1/transcripts/search": { + parameters: { + query?: never; + header?: never; + path?: never; + cookie?: never; + }; + /** + * Transcripts Search + * @description Full-text search across transcript titles and content. + */ + get: operations["v1_transcripts_search"]; + put?: never; + post?: never; + delete?: never; + options?: never; + head?: never; + patch?: never; + trace?: never; }; - /** Transcript Get */ - get: operations["v1_transcript_get"]; - put?: never; - post?: never; - /** Transcript Delete */ - delete: operations["v1_transcript_delete"]; - options?: never; - head?: never; - /** Transcript Update */ - patch: operations["v1_transcript_update"]; - trace?: never; - }; - "/v1/transcripts/{transcript_id}/topics": { - parameters: { - query?: never; - header?: never; - path?: never; - cookie?: never; + "/v1/transcripts/{transcript_id}": { + parameters: { + query?: never; + header?: never; + path?: never; + cookie?: never; + }; + /** Transcript Get */ + get: operations["v1_transcript_get"]; + put?: never; + post?: never; + /** Transcript Delete */ + delete: operations["v1_transcript_delete"]; + options?: never; + head?: never; + /** Transcript Update */ + patch: operations["v1_transcript_update"]; + trace?: never; }; - /** Transcript Get Topics */ - get: operations["v1_transcript_get_topics"]; - put?: never; - post?: never; - delete?: never; - options?: never; - head?: never; - patch?: never; - trace?: never; - }; - "/v1/transcripts/{transcript_id}/topics/with-words": { - parameters: { - query?: never; - header?: never; - path?: never; - cookie?: never; + "/v1/transcripts/{transcript_id}/topics": { + parameters: { + query?: never; + header?: never; + path?: never; + cookie?: never; + }; + /** Transcript Get Topics */ + get: operations["v1_transcript_get_topics"]; + put?: never; + post?: never; + delete?: never; + options?: never; + head?: never; + patch?: never; + trace?: never; }; - /** Transcript Get Topics With Words */ - get: operations["v1_transcript_get_topics_with_words"]; - put?: never; - post?: never; - delete?: never; - options?: never; - head?: never; - patch?: never; - trace?: never; - }; - "/v1/transcripts/{transcript_id}/topics/{topic_id}/words-per-speaker": { - parameters: { - query?: never; - header?: never; - path?: never; - cookie?: never; + "/v1/transcripts/{transcript_id}/topics/with-words": { + parameters: { + query?: never; + header?: never; + path?: never; + cookie?: never; + }; + /** Transcript Get Topics With Words */ + get: operations["v1_transcript_get_topics_with_words"]; + put?: never; + post?: never; + delete?: never; + options?: never; + head?: never; + patch?: never; + trace?: never; }; - /** Transcript Get Topics With Words Per Speaker */ - get: operations["v1_transcript_get_topics_with_words_per_speaker"]; - put?: never; - post?: never; - delete?: never; - options?: never; - head?: never; - patch?: never; - trace?: never; - }; - "/v1/transcripts/{transcript_id}/zulip": { - parameters: { - query?: never; - header?: never; - path?: never; - cookie?: never; + "/v1/transcripts/{transcript_id}/topics/{topic_id}/words-per-speaker": { + parameters: { + query?: never; + header?: never; + path?: never; + cookie?: never; + }; + /** Transcript Get Topics With Words Per Speaker */ + get: operations["v1_transcript_get_topics_with_words_per_speaker"]; + put?: never; + post?: never; + delete?: never; + options?: never; + head?: never; + patch?: never; + trace?: never; }; - get?: never; - put?: never; - /** Transcript Post To Zulip */ - post: operations["v1_transcript_post_to_zulip"]; - delete?: never; - options?: never; - head?: never; - patch?: never; - trace?: never; - }; - "/v1/transcripts/{transcript_id}/audio/mp3": { - parameters: { - query?: never; - header?: never; - path?: never; - cookie?: never; + "/v1/transcripts/{transcript_id}/zulip": { + parameters: { + query?: never; + header?: never; + path?: never; + cookie?: never; + }; + get?: never; + put?: never; + /** Transcript Post To Zulip */ + post: operations["v1_transcript_post_to_zulip"]; + delete?: never; + options?: never; + head?: never; + patch?: never; + trace?: never; }; - /** Transcript Get Audio Mp3 */ - get: operations["v1_transcript_get_audio_mp3"]; - put?: never; - post?: never; - delete?: never; - options?: never; - /** Transcript Get Audio Mp3 */ - head: operations["v1_transcript_head_audio_mp3"]; - patch?: never; - trace?: never; - }; - "/v1/transcripts/{transcript_id}/audio/waveform": { - parameters: { - query?: never; - header?: never; - path?: never; - cookie?: never; + "/v1/transcripts/{transcript_id}/audio/mp3": { + parameters: { + query?: never; + header?: never; + path?: never; + cookie?: never; + }; + /** Transcript Get Audio Mp3 */ + get: operations["v1_transcript_get_audio_mp3"]; + put?: never; + post?: never; + delete?: never; + options?: never; + /** Transcript Get Audio Mp3 */ + head: operations["v1_transcript_head_audio_mp3"]; + patch?: never; + trace?: never; }; - /** Transcript Get Audio Waveform */ - get: operations["v1_transcript_get_audio_waveform"]; - put?: never; - post?: never; - delete?: never; - options?: never; - head?: never; - patch?: never; - trace?: never; - }; - "/v1/transcripts/{transcript_id}/participants": { - parameters: { - query?: never; - header?: never; - path?: never; - cookie?: never; + "/v1/transcripts/{transcript_id}/audio/waveform": { + parameters: { + query?: never; + header?: never; + path?: never; + cookie?: never; + }; + /** Transcript Get Audio Waveform */ + get: operations["v1_transcript_get_audio_waveform"]; + put?: never; + post?: never; + delete?: never; + options?: never; + head?: never; + patch?: never; + trace?: never; }; - /** Transcript Get Participants */ - get: operations["v1_transcript_get_participants"]; - put?: never; - /** Transcript Add Participant */ - post: operations["v1_transcript_add_participant"]; - delete?: never; - options?: never; - head?: never; - patch?: never; - trace?: never; - }; - "/v1/transcripts/{transcript_id}/participants/{participant_id}": { - parameters: { - query?: never; - header?: never; - path?: never; - cookie?: never; + "/v1/transcripts/{transcript_id}/participants": { + parameters: { + query?: never; + header?: never; + path?: never; + cookie?: never; + }; + /** Transcript Get Participants */ + get: operations["v1_transcript_get_participants"]; + put?: never; + /** Transcript Add Participant */ + post: operations["v1_transcript_add_participant"]; + delete?: never; + options?: never; + head?: never; + patch?: never; + trace?: never; }; - /** Transcript Get Participant */ - get: operations["v1_transcript_get_participant"]; - put?: never; - post?: never; - /** Transcript Delete Participant */ - delete: operations["v1_transcript_delete_participant"]; - options?: never; - head?: never; - /** Transcript Update Participant */ - patch: operations["v1_transcript_update_participant"]; - trace?: never; - }; - "/v1/transcripts/{transcript_id}/speaker/assign": { - parameters: { - query?: never; - header?: never; - path?: never; - cookie?: never; + "/v1/transcripts/{transcript_id}/participants/{participant_id}": { + parameters: { + query?: never; + header?: never; + path?: never; + cookie?: never; + }; + /** Transcript Get Participant */ + get: operations["v1_transcript_get_participant"]; + put?: never; + post?: never; + /** Transcript Delete Participant */ + delete: operations["v1_transcript_delete_participant"]; + options?: never; + head?: never; + /** Transcript Update Participant */ + patch: operations["v1_transcript_update_participant"]; + trace?: never; }; - get?: never; - put?: never; - post?: never; - delete?: never; - options?: never; - head?: never; - /** Transcript Assign Speaker */ - patch: operations["v1_transcript_assign_speaker"]; - trace?: never; - }; - "/v1/transcripts/{transcript_id}/speaker/merge": { - parameters: { - query?: never; - header?: never; - path?: never; - cookie?: never; + "/v1/transcripts/{transcript_id}/speaker/assign": { + parameters: { + query?: never; + header?: never; + path?: never; + cookie?: never; + }; + get?: never; + put?: never; + post?: never; + delete?: never; + options?: never; + head?: never; + /** Transcript Assign Speaker */ + patch: operations["v1_transcript_assign_speaker"]; + trace?: never; }; - get?: never; - put?: never; - post?: never; - delete?: never; - options?: never; - head?: never; - /** Transcript Merge Speaker */ - patch: operations["v1_transcript_merge_speaker"]; - trace?: never; - }; - "/v1/transcripts/{transcript_id}/record/upload": { - parameters: { - query?: never; - header?: never; - path?: never; - cookie?: never; + "/v1/transcripts/{transcript_id}/speaker/merge": { + parameters: { + query?: never; + header?: never; + path?: never; + cookie?: never; + }; + get?: never; + put?: never; + post?: never; + delete?: never; + options?: never; + head?: never; + /** Transcript Merge Speaker */ + patch: operations["v1_transcript_merge_speaker"]; + trace?: never; }; - get?: never; - put?: never; - /** Transcript Record Upload */ - post: operations["v1_transcript_record_upload"]; - delete?: never; - options?: never; - head?: never; - patch?: never; - trace?: never; - }; - "/v1/transcripts/{transcript_id}/events": { - parameters: { - query?: never; - header?: never; - path?: never; - cookie?: never; + "/v1/transcripts/{transcript_id}/record/upload": { + parameters: { + query?: never; + header?: never; + path?: never; + cookie?: never; + }; + get?: never; + put?: never; + /** Transcript Record Upload */ + post: operations["v1_transcript_record_upload"]; + delete?: never; + options?: never; + head?: never; + patch?: never; + trace?: never; }; - /** Transcript Get Websocket Events */ - get: operations["v1_transcript_get_websocket_events"]; - put?: never; - post?: never; - delete?: never; - options?: never; - head?: never; - patch?: never; - trace?: never; - }; - "/v1/transcripts/{transcript_id}/record/webrtc": { - parameters: { - query?: never; - header?: never; - path?: never; - cookie?: never; + "/v1/transcripts/{transcript_id}/events": { + parameters: { + query?: never; + header?: never; + path?: never; + cookie?: never; + }; + /** Transcript Get Websocket Events */ + get: operations["v1_transcript_get_websocket_events"]; + put?: never; + post?: never; + delete?: never; + options?: never; + head?: never; + patch?: never; + trace?: never; }; - get?: never; - put?: never; - /** Transcript Record Webrtc */ - post: operations["v1_transcript_record_webrtc"]; - delete?: never; - options?: never; - head?: never; - patch?: never; - trace?: never; - }; - "/v1/transcripts/{transcript_id}/process": { - parameters: { - query?: never; - header?: never; - path?: never; - cookie?: never; + "/v1/transcripts/{transcript_id}/record/webrtc": { + parameters: { + query?: never; + header?: never; + path?: never; + cookie?: never; + }; + get?: never; + put?: never; + /** Transcript Record Webrtc */ + post: operations["v1_transcript_record_webrtc"]; + delete?: never; + options?: never; + head?: never; + patch?: never; + trace?: never; }; - get?: never; - put?: never; - /** Transcript Process */ - post: operations["v1_transcript_process"]; - delete?: never; - options?: never; - head?: never; - patch?: never; - trace?: never; - }; - "/v1/me": { - parameters: { - query?: never; - header?: never; - path?: never; - cookie?: never; + "/v1/transcripts/{transcript_id}/process": { + parameters: { + query?: never; + header?: never; + path?: never; + cookie?: never; + }; + get?: never; + put?: never; + /** Transcript Process */ + post: operations["v1_transcript_process"]; + delete?: never; + options?: never; + head?: never; + patch?: never; + trace?: never; }; - /** User Me */ - get: operations["v1_user_me"]; - put?: never; - post?: never; - delete?: never; - options?: never; - head?: never; - patch?: never; - trace?: never; - }; - "/v1/zulip/streams": { - parameters: { - query?: never; - header?: never; - path?: never; - cookie?: never; + "/v1/me": { + parameters: { + query?: never; + header?: never; + path?: never; + cookie?: never; + }; + /** User Me */ + get: operations["v1_user_me"]; + put?: never; + post?: never; + delete?: never; + options?: never; + head?: never; + patch?: never; + trace?: never; }; - /** - * Zulip Get Streams - * @description Get all Zulip streams. - */ - get: operations["v1_zulip_get_streams"]; - put?: never; - post?: never; - delete?: never; - options?: never; - head?: never; - patch?: never; - trace?: never; - }; - "/v1/zulip/streams/{stream_id}/topics": { - parameters: { - query?: never; - header?: never; - path?: never; - cookie?: never; + "/v1/zulip/streams": { + parameters: { + query?: never; + header?: never; + path?: never; + cookie?: never; + }; + /** + * Zulip Get Streams + * @description Get all Zulip streams. + */ + get: operations["v1_zulip_get_streams"]; + put?: never; + post?: never; + delete?: never; + options?: never; + head?: never; + patch?: never; + trace?: never; }; - /** - * Zulip Get Topics - * @description Get all topics for a specific Zulip stream. - */ - get: operations["v1_zulip_get_topics"]; - put?: never; - post?: never; - delete?: never; - options?: never; - head?: never; - patch?: never; - trace?: never; - }; - "/v1/whereby": { - parameters: { - query?: never; - header?: never; - path?: never; - cookie?: never; + "/v1/zulip/streams/{stream_id}/topics": { + parameters: { + query?: never; + header?: never; + path?: never; + cookie?: never; + }; + /** + * Zulip Get Topics + * @description Get all topics for a specific Zulip stream. + */ + get: operations["v1_zulip_get_topics"]; + put?: never; + post?: never; + delete?: never; + options?: never; + head?: never; + patch?: never; + trace?: never; + }; + "/v1/whereby": { + parameters: { + query?: never; + header?: never; + path?: never; + cookie?: never; + }; + get?: never; + put?: never; + /** Whereby Webhook */ + post: operations["v1_whereby_webhook"]; + delete?: never; + options?: never; + head?: never; + patch?: never; + trace?: never; }; - get?: never; - put?: never; - /** Whereby Webhook */ - post: operations["v1_whereby_webhook"]; - delete?: never; - options?: never; - head?: never; - patch?: never; - trace?: never; - }; } export type webhooks = Record; export interface components { - schemas: { - /** AudioWaveform */ - AudioWaveform: { - /** Data */ - data: number[]; + schemas: { + /** AudioWaveform */ + AudioWaveform: { + /** Data */ + data: number[]; + }; + /** Body_transcript_record_upload_v1_transcripts__transcript_id__record_upload_post */ + Body_transcript_record_upload_v1_transcripts__transcript_id__record_upload_post: { + /** + * Chunk + * Format: binary + */ + chunk: string; + }; + /** CalendarEventResponse */ + CalendarEventResponse: { + /** Id */ + id: string; + /** Room Id */ + room_id: string; + /** Ics Uid */ + ics_uid: string; + /** Title */ + title?: string | null; + /** Description */ + description?: string | null; + /** + * Start Time + * Format: date-time + */ + start_time: string; + /** + * End Time + * Format: date-time + */ + end_time: string; + /** Attendees */ + attendees?: { + [key: string]: unknown; + }[] | null; + /** Location */ + location?: string | null; + /** + * Last Synced + * Format: date-time + */ + last_synced: string; + /** + * Created At + * Format: date-time + */ + created_at: string; + /** + * Updated At + * Format: date-time + */ + updated_at: string; + }; + /** CreateParticipant */ + CreateParticipant: { + /** Speaker */ + speaker?: number | null; + /** Name */ + name: string; + }; + /** CreateRoom */ + CreateRoom: { + /** Name */ + name: string; + /** Zulip Auto Post */ + zulip_auto_post: boolean; + /** Zulip Stream */ + zulip_stream: string; + /** Zulip Topic */ + zulip_topic: string; + /** Is Locked */ + is_locked: boolean; + /** Room Mode */ + room_mode: string; + /** Recording Type */ + recording_type: string; + /** Recording Trigger */ + recording_trigger: string; + /** Is Shared */ + is_shared: boolean; + /** Webhook Url */ + webhook_url: string; + /** Webhook Secret */ + webhook_secret: string; + /** Ics Url */ + ics_url?: string | null; + /** + * Ics Fetch Interval + * @default 300 + */ + ics_fetch_interval: number; + /** + * Ics Enabled + * @default false + */ + ics_enabled: boolean; + }; + /** CreateTranscript */ + CreateTranscript: { + /** Name */ + name: string; + /** + * Source Language + * @default en + */ + source_language: string; + /** + * Target Language + * @default en + */ + target_language: string; + source_kind?: components["schemas"]["SourceKind"] | null; + }; + /** DeletionStatus */ + DeletionStatus: { + /** Status */ + status: string; + }; + /** GetTranscript */ + GetTranscript: { + /** Id */ + id: string; + /** User Id */ + user_id: string | null; + /** Name */ + name: string; + /** + * Status + * @enum {string} + */ + status: "idle" | "uploaded" | "recording" | "processing" | "error" | "ended"; + /** Locked */ + locked: boolean; + /** Duration */ + duration: number; + /** Title */ + title: string | null; + /** Short Summary */ + short_summary: string | null; + /** Long Summary */ + long_summary: string | null; + /** Created At */ + created_at: string; + /** + * Share Mode + * @default private + */ + share_mode: string; + /** Source Language */ + source_language: string | null; + /** Target Language */ + target_language: string | null; + /** Reviewed */ + reviewed: boolean; + /** Meeting Id */ + meeting_id: string | null; + source_kind: components["schemas"]["SourceKind"]; + /** Room Id */ + room_id?: string | null; + /** Room Name */ + room_name?: string | null; + /** Audio Deleted */ + audio_deleted?: boolean | null; + /** Participants */ + participants: components["schemas"]["TranscriptParticipant"][] | null; + }; + /** GetTranscriptMinimal */ + GetTranscriptMinimal: { + /** Id */ + id: string; + /** User Id */ + user_id: string | null; + /** Name */ + name: string; + /** + * Status + * @enum {string} + */ + status: "idle" | "uploaded" | "recording" | "processing" | "error" | "ended"; + /** Locked */ + locked: boolean; + /** Duration */ + duration: number; + /** Title */ + title: string | null; + /** Short Summary */ + short_summary: string | null; + /** Long Summary */ + long_summary: string | null; + /** Created At */ + created_at: string; + /** + * Share Mode + * @default private + */ + share_mode: string; + /** Source Language */ + source_language: string | null; + /** Target Language */ + target_language: string | null; + /** Reviewed */ + reviewed: boolean; + /** Meeting Id */ + meeting_id: string | null; + source_kind: components["schemas"]["SourceKind"]; + /** Room Id */ + room_id?: string | null; + /** Room Name */ + room_name?: string | null; + /** Audio Deleted */ + audio_deleted?: boolean | null; + }; + /** GetTranscriptSegmentTopic */ + GetTranscriptSegmentTopic: { + /** Text */ + text: string; + /** Start */ + start: number; + /** Speaker */ + speaker: number; + }; + /** GetTranscriptTopic */ + GetTranscriptTopic: { + /** Id */ + id: string; + /** Title */ + title: string; + /** Summary */ + summary: string; + /** Timestamp */ + timestamp: number; + /** Duration */ + duration: number | null; + /** Transcript */ + transcript: string; + /** + * Segments + * @default [] + */ + segments: components["schemas"]["GetTranscriptSegmentTopic"][]; + }; + /** GetTranscriptTopicWithWords */ + GetTranscriptTopicWithWords: { + /** Id */ + id: string; + /** Title */ + title: string; + /** Summary */ + summary: string; + /** Timestamp */ + timestamp: number; + /** Duration */ + duration: number | null; + /** Transcript */ + transcript: string; + /** + * Segments + * @default [] + */ + segments: components["schemas"]["GetTranscriptSegmentTopic"][]; + /** + * Words + * @default [] + */ + words: components["schemas"]["Word"][]; + }; + /** GetTranscriptTopicWithWordsPerSpeaker */ + GetTranscriptTopicWithWordsPerSpeaker: { + /** Id */ + id: string; + /** Title */ + title: string; + /** Summary */ + summary: string; + /** Timestamp */ + timestamp: number; + /** Duration */ + duration: number | null; + /** Transcript */ + transcript: string; + /** + * Segments + * @default [] + */ + segments: components["schemas"]["GetTranscriptSegmentTopic"][]; + /** + * Words Per Speaker + * @default [] + */ + words_per_speaker: components["schemas"]["SpeakerWords"][]; + }; + /** HTTPValidationError */ + HTTPValidationError: { + /** Detail */ + detail?: components["schemas"]["ValidationError"][]; + }; + /** ICSStatus */ + ICSStatus: { + /** Status */ + status: string; + /** Last Sync */ + last_sync?: string | null; + /** Next Sync */ + next_sync?: string | null; + /** Last Etag */ + last_etag?: string | null; + /** + * Events Count + * @default 0 + */ + events_count: number; + }; + /** ICSSyncResult */ + ICSSyncResult: { + status: components["schemas"]["SyncStatus"]; + /** Hash */ + hash?: string | null; + /** + * Events Found + * @default 0 + */ + events_found: number; + /** + * Total Events + * @default 0 + */ + total_events: number; + /** + * Events Created + * @default 0 + */ + events_created: number; + /** + * Events Updated + * @default 0 + */ + events_updated: number; + /** + * Events Deleted + * @default 0 + */ + events_deleted: number; + /** Error */ + error?: string | null; + /** Reason */ + reason?: string | null; + }; + /** Meeting */ + Meeting: { + /** Id */ + id: string; + /** Room Name */ + room_name: string; + /** Room Url */ + room_url: string; + /** Host Room Url */ + host_room_url: string; + /** + * Start Date + * Format: date-time + */ + start_date: string; + /** + * End Date + * Format: date-time + */ + end_date: string; + /** User Id */ + user_id?: string | null; + /** Room Id */ + room_id?: string | null; + /** + * Is Locked + * @default false + */ + is_locked: boolean; + /** + * Room Mode + * @default normal + * @enum {string} + */ + room_mode: "normal" | "group"; + /** + * Recording Type + * @default cloud + * @enum {string} + */ + recording_type: "none" | "local" | "cloud"; + /** + * Recording Trigger + * @default automatic-2nd-participant + * @enum {string} + */ + recording_trigger: "none" | "prompt" | "automatic" | "automatic-2nd-participant"; + /** + * Num Clients + * @default 0 + */ + num_clients: number; + /** + * Is Active + * @default true + */ + is_active: boolean; + /** Calendar Event Id */ + calendar_event_id?: string | null; + /** Calendar Metadata */ + calendar_metadata?: { + [key: string]: unknown; + } | null; + /** Last Participant Left At */ + last_participant_left_at?: string | null; + /** + * Grace Period Minutes + * @default 15 + */ + grace_period_minutes: number; + }; + /** MeetingConsentRequest */ + MeetingConsentRequest: { + /** Consent Given */ + consent_given: boolean; + }; + /** Page[GetTranscriptMinimal] */ + Page_GetTranscriptMinimal_: { + /** Items */ + items: components["schemas"]["GetTranscriptMinimal"][]; + /** Total */ + total?: number | null; + /** Page */ + page: number | null; + /** Size */ + size: number | null; + /** Pages */ + pages?: number | null; + }; + /** Page[RoomDetails] */ + Page_RoomDetails_: { + /** Items */ + items: components["schemas"]["RoomDetails"][]; + /** Total */ + total?: number | null; + /** Page */ + page: number | null; + /** Size */ + size: number | null; + /** Pages */ + pages?: number | null; + }; + /** Participant */ + Participant: { + /** Id */ + id: string; + /** Speaker */ + speaker: number | null; + /** Name */ + name: string; + }; + /** Room */ + Room: { + /** Id */ + id: string; + /** Name */ + name: string; + /** User Id */ + user_id: string; + /** + * Created At + * Format: date-time + */ + created_at: string; + /** Zulip Auto Post */ + zulip_auto_post: boolean; + /** Zulip Stream */ + zulip_stream: string; + /** Zulip Topic */ + zulip_topic: string; + /** Is Locked */ + is_locked: boolean; + /** Room Mode */ + room_mode: string; + /** Recording Type */ + recording_type: string; + /** Recording Trigger */ + recording_trigger: string; + /** Is Shared */ + is_shared: boolean; + /** Ics Url */ + ics_url?: string | null; + /** + * Ics Fetch Interval + * @default 300 + */ + ics_fetch_interval: number; + /** + * Ics Enabled + * @default false + */ + ics_enabled: boolean; + /** Ics Last Sync */ + ics_last_sync?: string | null; + /** Ics Last Etag */ + ics_last_etag?: string | null; + }; + /** RoomDetails */ + RoomDetails: { + /** Id */ + id: string; + /** Name */ + name: string; + /** User Id */ + user_id: string; + /** + * Created At + * Format: date-time + */ + created_at: string; + /** Zulip Auto Post */ + zulip_auto_post: boolean; + /** Zulip Stream */ + zulip_stream: string; + /** Zulip Topic */ + zulip_topic: string; + /** Is Locked */ + is_locked: boolean; + /** Room Mode */ + room_mode: string; + /** Recording Type */ + recording_type: string; + /** Recording Trigger */ + recording_trigger: string; + /** Is Shared */ + is_shared: boolean; + /** Ics Url */ + ics_url?: string | null; + /** + * Ics Fetch Interval + * @default 300 + */ + ics_fetch_interval: number; + /** + * Ics Enabled + * @default false + */ + ics_enabled: boolean; + /** Ics Last Sync */ + ics_last_sync?: string | null; + /** Ics Last Etag */ + ics_last_etag?: string | null; + /** Webhook Url */ + webhook_url: string | null; + /** Webhook Secret */ + webhook_secret: string | null; + }; + /** RtcOffer */ + RtcOffer: { + /** Sdp */ + sdp: string; + /** Type */ + type: string; + }; + /** SearchResponse */ + SearchResponse: { + /** Results */ + results: components["schemas"]["SearchResult"][]; + /** + * Total + * @description Total number of search results + */ + total: number; + /** Query */ + query?: string | null; + /** + * Limit + * @description Results per page + */ + limit: number; + /** + * Offset + * @description Number of results to skip + */ + offset: number; + }; + /** + * SearchResult + * @description Public search result model with computed fields. + */ + SearchResult: { + /** Id */ + id: string; + /** Title */ + title?: string | null; + /** User Id */ + user_id?: string | null; + /** Room Id */ + room_id?: string | null; + /** Room Name */ + room_name?: string | null; + source_kind: components["schemas"]["SourceKind"]; + /** Created At */ + created_at: string; + /** + * Status + * @enum {string} + */ + status: "idle" | "uploaded" | "recording" | "processing" | "error" | "ended"; + /** Rank */ + rank: number; + /** + * Duration + * @description Duration in seconds + */ + duration: number | null; + /** + * Search Snippets + * @description Text snippets around search matches + */ + search_snippets: string[]; + /** + * Total Match Count + * @description Total number of matches found in the transcript + * @default 0 + */ + total_match_count: number; + }; + /** + * SourceKind + * @enum {string} + */ + SourceKind: "room" | "live" | "file"; + /** SpeakerAssignment */ + SpeakerAssignment: { + /** Speaker */ + speaker?: number | null; + /** Participant */ + participant?: string | null; + /** Timestamp From */ + timestamp_from: number; + /** Timestamp To */ + timestamp_to: number; + }; + /** SpeakerAssignmentStatus */ + SpeakerAssignmentStatus: { + /** Status */ + status: string; + }; + /** SpeakerMerge */ + SpeakerMerge: { + /** Speaker From */ + speaker_from: number; + /** Speaker To */ + speaker_to: number; + }; + /** SpeakerWords */ + SpeakerWords: { + /** Speaker */ + speaker: number; + /** Words */ + words: components["schemas"]["Word"][]; + }; + /** Stream */ + Stream: { + /** Stream Id */ + stream_id: number; + /** Name */ + name: string; + }; + /** + * SyncStatus + * @enum {string} + */ + SyncStatus: "success" | "unchanged" | "error" | "skipped"; + /** Topic */ + Topic: { + /** Name */ + name: string; + }; + /** TranscriptParticipant */ + TranscriptParticipant: { + /** Id */ + id?: string; + /** Speaker */ + speaker: number | null; + /** Name */ + name: string; + }; + /** UpdateParticipant */ + UpdateParticipant: { + /** Speaker */ + speaker?: number | null; + /** Name */ + name?: string | null; + }; + /** UpdateRoom */ + UpdateRoom: { + /** Name */ + name?: string | null; + /** Zulip Auto Post */ + zulip_auto_post?: boolean | null; + /** Zulip Stream */ + zulip_stream?: string | null; + /** Zulip Topic */ + zulip_topic?: string | null; + /** Is Locked */ + is_locked?: boolean | null; + /** Room Mode */ + room_mode?: string | null; + /** Recording Type */ + recording_type?: string | null; + /** Recording Trigger */ + recording_trigger?: string | null; + /** Is Shared */ + is_shared?: boolean | null; + /** Webhook Url */ + webhook_url?: string | null; + /** Webhook Secret */ + webhook_secret?: string | null; + /** Ics Url */ + ics_url?: string | null; + /** Ics Fetch Interval */ + ics_fetch_interval?: number | null; + /** Ics Enabled */ + ics_enabled?: boolean | null; + }; + /** UpdateTranscript */ + UpdateTranscript: { + /** Name */ + name?: string | null; + /** Locked */ + locked?: boolean | null; + /** Title */ + title?: string | null; + /** Short Summary */ + short_summary?: string | null; + /** Long Summary */ + long_summary?: string | null; + /** Share Mode */ + share_mode?: ("public" | "semi-private" | "private") | null; + /** Participants */ + participants?: components["schemas"]["TranscriptParticipant"][] | null; + /** Reviewed */ + reviewed?: boolean | null; + /** Audio Deleted */ + audio_deleted?: boolean | null; + }; + /** UserInfo */ + UserInfo: { + /** Sub */ + sub: string; + /** Email */ + email: string | null; + /** Email Verified */ + email_verified: boolean | null; + }; + /** ValidationError */ + ValidationError: { + /** Location */ + loc: (string | number)[]; + /** Message */ + msg: string; + /** Error Type */ + type: string; + }; + /** WebhookTestResult */ + WebhookTestResult: { + /** Success */ + success: boolean; + /** + * Message + * @default + */ + message: string; + /** + * Error + * @default + */ + error: string; + /** Status Code */ + status_code?: number | null; + /** Response Preview */ + response_preview?: string | null; + }; + /** WherebyWebhookEvent */ + WherebyWebhookEvent: { + /** Apiversion */ + apiVersion: string; + /** Id */ + id: string; + /** + * Createdat + * Format: date-time + */ + createdAt: string; + /** Type */ + type: string; + /** Data */ + data: { + [key: string]: unknown; + }; + }; + /** Word */ + Word: { + /** Text */ + text: string; + /** + * Start + * @description Time in seconds with float part + */ + start: number; + /** + * End + * @description Time in seconds with float part + */ + end: number; + /** + * Speaker + * @default 0 + */ + speaker: number; + }; }; - /** Body_transcript_record_upload_v1_transcripts__transcript_id__record_upload_post */ - Body_transcript_record_upload_v1_transcripts__transcript_id__record_upload_post: { - /** - * Chunk - * Format: binary - */ - chunk: string; - }; - /** CalendarEventResponse */ - CalendarEventResponse: { - /** Id */ - id: string; - /** Room Id */ - room_id: string; - /** Ics Uid */ - ics_uid: string; - /** Title */ - title?: string | null; - /** Description */ - description?: string | null; - /** - * Start Time - * Format: date-time - */ - start_time: string; - /** - * End Time - * Format: date-time - */ - end_time: string; - /** Attendees */ - attendees?: - | { - [key: string]: unknown; - }[] - | null; - /** Location */ - location?: string | null; - /** - * Last Synced - * Format: date-time - */ - last_synced: string; - /** - * Created At - * Format: date-time - */ - created_at: string; - /** - * Updated At - * Format: date-time - */ - updated_at: string; - }; - /** CreateParticipant */ - CreateParticipant: { - /** Speaker */ - speaker?: number | null; - /** Name */ - name: string; - }; - /** CreateRoom */ - CreateRoom: { - /** Name */ - name: string; - /** Zulip Auto Post */ - zulip_auto_post: boolean; - /** Zulip Stream */ - zulip_stream: string; - /** Zulip Topic */ - zulip_topic: string; - /** Is Locked */ - is_locked: boolean; - /** Room Mode */ - room_mode: string; - /** Recording Type */ - recording_type: string; - /** Recording Trigger */ - recording_trigger: string; - /** Is Shared */ - is_shared: boolean; - /** Webhook Url */ - webhook_url: string; - /** Webhook Secret */ - webhook_secret: string; - /** Ics Url */ - ics_url?: string | null; - /** - * Ics Fetch Interval - * @default 300 - */ - ics_fetch_interval: number; - /** - * Ics Enabled - * @default false - */ - ics_enabled: boolean; - }; - /** CreateTranscript */ - CreateTranscript: { - /** Name */ - name: string; - /** - * Source Language - * @default en - */ - source_language: string; - /** - * Target Language - * @default en - */ - target_language: string; - source_kind?: components["schemas"]["SourceKind"] | null; - }; - /** DeletionStatus */ - DeletionStatus: { - /** Status */ - status: string; - }; - /** GetTranscript */ - GetTranscript: { - /** Id */ - id: string; - /** User Id */ - user_id: string | null; - /** Name */ - name: string; - /** - * Status - * @enum {string} - */ - status: - | "idle" - | "uploaded" - | "recording" - | "processing" - | "error" - | "ended"; - /** Locked */ - locked: boolean; - /** Duration */ - duration: number; - /** Title */ - title: string | null; - /** Short Summary */ - short_summary: string | null; - /** Long Summary */ - long_summary: string | null; - /** Created At */ - created_at: string; - /** - * Share Mode - * @default private - */ - share_mode: string; - /** Source Language */ - source_language: string | null; - /** Target Language */ - target_language: string | null; - /** Reviewed */ - reviewed: boolean; - /** Meeting Id */ - meeting_id: string | null; - source_kind: components["schemas"]["SourceKind"]; - /** Room Id */ - room_id?: string | null; - /** Room Name */ - room_name?: string | null; - /** Audio Deleted */ - audio_deleted?: boolean | null; - /** Participants */ - participants: components["schemas"]["TranscriptParticipant"][] | null; - }; - /** GetTranscriptMinimal */ - GetTranscriptMinimal: { - /** Id */ - id: string; - /** User Id */ - user_id: string | null; - /** Name */ - name: string; - /** - * Status - * @enum {string} - */ - status: - | "idle" - | "uploaded" - | "recording" - | "processing" - | "error" - | "ended"; - /** Locked */ - locked: boolean; - /** Duration */ - duration: number; - /** Title */ - title: string | null; - /** Short Summary */ - short_summary: string | null; - /** Long Summary */ - long_summary: string | null; - /** Created At */ - created_at: string; - /** - * Share Mode - * @default private - */ - share_mode: string; - /** Source Language */ - source_language: string | null; - /** Target Language */ - target_language: string | null; - /** Reviewed */ - reviewed: boolean; - /** Meeting Id */ - meeting_id: string | null; - source_kind: components["schemas"]["SourceKind"]; - /** Room Id */ - room_id?: string | null; - /** Room Name */ - room_name?: string | null; - /** Audio Deleted */ - audio_deleted?: boolean | null; - }; - /** GetTranscriptSegmentTopic */ - GetTranscriptSegmentTopic: { - /** Text */ - text: string; - /** Start */ - start: number; - /** Speaker */ - speaker: number; - }; - /** GetTranscriptTopic */ - GetTranscriptTopic: { - /** Id */ - id: string; - /** Title */ - title: string; - /** Summary */ - summary: string; - /** Timestamp */ - timestamp: number; - /** Duration */ - duration: number | null; - /** Transcript */ - transcript: string; - /** - * Segments - * @default [] - */ - segments: components["schemas"]["GetTranscriptSegmentTopic"][]; - }; - /** GetTranscriptTopicWithWords */ - GetTranscriptTopicWithWords: { - /** Id */ - id: string; - /** Title */ - title: string; - /** Summary */ - summary: string; - /** Timestamp */ - timestamp: number; - /** Duration */ - duration: number | null; - /** Transcript */ - transcript: string; - /** - * Segments - * @default [] - */ - segments: components["schemas"]["GetTranscriptSegmentTopic"][]; - /** - * Words - * @default [] - */ - words: components["schemas"]["Word"][]; - }; - /** GetTranscriptTopicWithWordsPerSpeaker */ - GetTranscriptTopicWithWordsPerSpeaker: { - /** Id */ - id: string; - /** Title */ - title: string; - /** Summary */ - summary: string; - /** Timestamp */ - timestamp: number; - /** Duration */ - duration: number | null; - /** Transcript */ - transcript: string; - /** - * Segments - * @default [] - */ - segments: components["schemas"]["GetTranscriptSegmentTopic"][]; - /** - * Words Per Speaker - * @default [] - */ - words_per_speaker: components["schemas"]["SpeakerWords"][]; - }; - /** HTTPValidationError */ - HTTPValidationError: { - /** Detail */ - detail?: components["schemas"]["ValidationError"][]; - }; - /** ICSStatus */ - ICSStatus: { - /** Status */ - status: string; - /** Last Sync */ - last_sync?: string | null; - /** Next Sync */ - next_sync?: string | null; - /** Last Etag */ - last_etag?: string | null; - /** - * Events Count - * @default 0 - */ - events_count: number; - }; - /** ICSSyncResult */ - ICSSyncResult: { - status: components["schemas"]["SyncStatus"]; - /** Hash */ - hash?: string | null; - /** - * Events Found - * @default 0 - */ - events_found: number; - /** - * Total Events - * @default 0 - */ - total_events: number; - /** - * Events Created - * @default 0 - */ - events_created: number; - /** - * Events Updated - * @default 0 - */ - events_updated: number; - /** - * Events Deleted - * @default 0 - */ - events_deleted: number; - /** Error */ - error?: string | null; - /** Reason */ - reason?: string | null; - }; - /** Meeting */ - Meeting: { - /** Id */ - id: string; - /** Room Name */ - room_name: string; - /** Room Url */ - room_url: string; - /** Host Room Url */ - host_room_url: string; - /** - * Start Date - * Format: date-time - */ - start_date: string; - /** - * End Date - * Format: date-time - */ - end_date: string; - /** User Id */ - user_id?: string | null; - /** Room Id */ - room_id?: string | null; - /** - * Is Locked - * @default false - */ - is_locked: boolean; - /** - * Room Mode - * @default normal - * @enum {string} - */ - room_mode: "normal" | "group"; - /** - * Recording Type - * @default cloud - * @enum {string} - */ - recording_type: "none" | "local" | "cloud"; - /** - * Recording Trigger - * @default automatic-2nd-participant - * @enum {string} - */ - recording_trigger: - | "none" - | "prompt" - | "automatic" - | "automatic-2nd-participant"; - /** - * Num Clients - * @default 0 - */ - num_clients: number; - /** - * Is Active - * @default true - */ - is_active: boolean; - /** Calendar Event Id */ - calendar_event_id?: string | null; - /** Calendar Metadata */ - calendar_metadata?: { - [key: string]: unknown; - } | null; - /** Last Participant Left At */ - last_participant_left_at?: string | null; - /** - * Grace Period Minutes - * @default 15 - */ - grace_period_minutes: number; - }; - /** MeetingConsentRequest */ - MeetingConsentRequest: { - /** Consent Given */ - consent_given: boolean; - }; - /** Page[GetTranscriptMinimal] */ - Page_GetTranscriptMinimal_: { - /** Items */ - items: components["schemas"]["GetTranscriptMinimal"][]; - /** Total */ - total?: number | null; - /** Page */ - page: number | null; - /** Size */ - size: number | null; - /** Pages */ - pages?: number | null; - }; - /** Page[RoomDetails] */ - Page_RoomDetails_: { - /** Items */ - items: components["schemas"]["RoomDetails"][]; - /** Total */ - total?: number | null; - /** Page */ - page: number | null; - /** Size */ - size: number | null; - /** Pages */ - pages?: number | null; - }; - /** Participant */ - Participant: { - /** Id */ - id: string; - /** Speaker */ - speaker: number | null; - /** Name */ - name: string; - }; - /** Room */ - Room: { - /** Id */ - id: string; - /** Name */ - name: string; - /** User Id */ - user_id: string; - /** - * Created At - * Format: date-time - */ - created_at: string; - /** Zulip Auto Post */ - zulip_auto_post: boolean; - /** Zulip Stream */ - zulip_stream: string; - /** Zulip Topic */ - zulip_topic: string; - /** Is Locked */ - is_locked: boolean; - /** Room Mode */ - room_mode: string; - /** Recording Type */ - recording_type: string; - /** Recording Trigger */ - recording_trigger: string; - /** Is Shared */ - is_shared: boolean; - /** Ics Url */ - ics_url?: string | null; - /** - * Ics Fetch Interval - * @default 300 - */ - ics_fetch_interval: number; - /** - * Ics Enabled - * @default false - */ - ics_enabled: boolean; - /** Ics Last Sync */ - ics_last_sync?: string | null; - /** Ics Last Etag */ - ics_last_etag?: string | null; - }; - /** RoomDetails */ - RoomDetails: { - /** Id */ - id: string; - /** Name */ - name: string; - /** User Id */ - user_id: string; - /** - * Created At - * Format: date-time - */ - created_at: string; - /** Zulip Auto Post */ - zulip_auto_post: boolean; - /** Zulip Stream */ - zulip_stream: string; - /** Zulip Topic */ - zulip_topic: string; - /** Is Locked */ - is_locked: boolean; - /** Room Mode */ - room_mode: string; - /** Recording Type */ - recording_type: string; - /** Recording Trigger */ - recording_trigger: string; - /** Is Shared */ - is_shared: boolean; - /** Ics Url */ - ics_url?: string | null; - /** - * Ics Fetch Interval - * @default 300 - */ - ics_fetch_interval: number; - /** - * Ics Enabled - * @default false - */ - ics_enabled: boolean; - /** Ics Last Sync */ - ics_last_sync?: string | null; - /** Ics Last Etag */ - ics_last_etag?: string | null; - /** Webhook Url */ - webhook_url: string | null; - /** Webhook Secret */ - webhook_secret: string | null; - }; - /** RtcOffer */ - RtcOffer: { - /** Sdp */ - sdp: string; - /** Type */ - type: string; - }; - /** SearchResponse */ - SearchResponse: { - /** Results */ - results: components["schemas"]["SearchResult"][]; - /** - * Total - * @description Total number of search results - */ - total: number; - /** Query */ - query?: string | null; - /** - * Limit - * @description Results per page - */ - limit: number; - /** - * Offset - * @description Number of results to skip - */ - offset: number; - }; - /** - * SearchResult - * @description Public search result model with computed fields. - */ - SearchResult: { - /** Id */ - id: string; - /** Title */ - title?: string | null; - /** User Id */ - user_id?: string | null; - /** Room Id */ - room_id?: string | null; - /** Room Name */ - room_name?: string | null; - source_kind: components["schemas"]["SourceKind"]; - /** Created At */ - created_at: string; - /** - * Status - * @enum {string} - */ - status: - | "idle" - | "uploaded" - | "recording" - | "processing" - | "error" - | "ended"; - /** Rank */ - rank: number; - /** - * Duration - * @description Duration in seconds - */ - duration: number | null; - /** - * Search Snippets - * @description Text snippets around search matches - */ - search_snippets: string[]; - /** - * Total Match Count - * @description Total number of matches found in the transcript - * @default 0 - */ - total_match_count: number; - }; - /** - * SourceKind - * @enum {string} - */ - SourceKind: "room" | "live" | "file"; - /** SpeakerAssignment */ - SpeakerAssignment: { - /** Speaker */ - speaker?: number | null; - /** Participant */ - participant?: string | null; - /** Timestamp From */ - timestamp_from: number; - /** Timestamp To */ - timestamp_to: number; - }; - /** SpeakerAssignmentStatus */ - SpeakerAssignmentStatus: { - /** Status */ - status: string; - }; - /** SpeakerMerge */ - SpeakerMerge: { - /** Speaker From */ - speaker_from: number; - /** Speaker To */ - speaker_to: number; - }; - /** SpeakerWords */ - SpeakerWords: { - /** Speaker */ - speaker: number; - /** Words */ - words: components["schemas"]["Word"][]; - }; - /** Stream */ - Stream: { - /** Stream Id */ - stream_id: number; - /** Name */ - name: string; - }; - /** - * SyncStatus - * @enum {string} - */ - SyncStatus: "success" | "unchanged" | "error" | "skipped"; - /** Topic */ - Topic: { - /** Name */ - name: string; - }; - /** TranscriptParticipant */ - TranscriptParticipant: { - /** Id */ - id?: string; - /** Speaker */ - speaker: number | null; - /** Name */ - name: string; - }; - /** UpdateParticipant */ - UpdateParticipant: { - /** Speaker */ - speaker?: number | null; - /** Name */ - name?: string | null; - }; - /** UpdateRoom */ - UpdateRoom: { - /** Name */ - name?: string | null; - /** Zulip Auto Post */ - zulip_auto_post?: boolean | null; - /** Zulip Stream */ - zulip_stream?: string | null; - /** Zulip Topic */ - zulip_topic?: string | null; - /** Is Locked */ - is_locked?: boolean | null; - /** Room Mode */ - room_mode?: string | null; - /** Recording Type */ - recording_type?: string | null; - /** Recording Trigger */ - recording_trigger?: string | null; - /** Is Shared */ - is_shared?: boolean | null; - /** Webhook Url */ - webhook_url?: string | null; - /** Webhook Secret */ - webhook_secret?: string | null; - /** Ics Url */ - ics_url?: string | null; - /** Ics Fetch Interval */ - ics_fetch_interval?: number | null; - /** Ics Enabled */ - ics_enabled?: boolean | null; - }; - /** UpdateTranscript */ - UpdateTranscript: { - /** Name */ - name?: string | null; - /** Locked */ - locked?: boolean | null; - /** Title */ - title?: string | null; - /** Short Summary */ - short_summary?: string | null; - /** Long Summary */ - long_summary?: string | null; - /** Share Mode */ - share_mode?: ("public" | "semi-private" | "private") | null; - /** Participants */ - participants?: components["schemas"]["TranscriptParticipant"][] | null; - /** Reviewed */ - reviewed?: boolean | null; - /** Audio Deleted */ - audio_deleted?: boolean | null; - }; - /** UserInfo */ - UserInfo: { - /** Sub */ - sub: string; - /** Email */ - email: string | null; - /** Email Verified */ - email_verified: boolean | null; - }; - /** ValidationError */ - ValidationError: { - /** Location */ - loc: (string | number)[]; - /** Message */ - msg: string; - /** Error Type */ - type: string; - }; - /** WebhookTestResult */ - WebhookTestResult: { - /** Success */ - success: boolean; - /** - * Message - * @default - */ - message: string; - /** - * Error - * @default - */ - error: string; - /** Status Code */ - status_code?: number | null; - /** Response Preview */ - response_preview?: string | null; - }; - /** WherebyWebhookEvent */ - WherebyWebhookEvent: { - /** Apiversion */ - apiVersion: string; - /** Id */ - id: string; - /** - * Createdat - * Format: date-time - */ - createdAt: string; - /** Type */ - type: string; - /** Data */ - data: { - [key: string]: unknown; - }; - }; - /** Word */ - Word: { - /** Text */ - text: string; - /** - * Start - * @description Time in seconds with float part - */ - start: number; - /** - * End - * @description Time in seconds with float part - */ - end: number; - /** - * Speaker - * @default 0 - */ - speaker: number; - }; - }; - responses: never; - parameters: never; - requestBodies: never; - headers: never; - pathItems: never; + responses: never; + parameters: never; + requestBodies: never; + headers: never; + pathItems: never; } export type $defs = Record; export interface operations { - metrics: { - parameters: { - query?: never; - header?: never; - path?: never; - cookie?: never; - }; - requestBody?: never; - responses: { - /** @description Successful Response */ - 200: { - headers: { - [name: string]: unknown; - }; - content: { - "application/json": unknown; - }; - }; - }; - }; - v1_meeting_audio_consent: { - parameters: { - query?: never; - header?: never; - path: { - meeting_id: string; - }; - cookie?: never; - }; - requestBody: { - content: { - "application/json": components["schemas"]["MeetingConsentRequest"]; - }; - }; - responses: { - /** @description Successful Response */ - 200: { - headers: { - [name: string]: unknown; - }; - content: { - "application/json": unknown; - }; - }; - /** @description Validation Error */ - 422: { - headers: { - [name: string]: unknown; - }; - content: { - "application/json": components["schemas"]["HTTPValidationError"]; - }; - }; - }; - }; - v1_meeting_deactivate: { - parameters: { - query?: never; - header?: never; - path: { - meeting_id: string; - }; - cookie?: never; - }; - requestBody?: never; - responses: { - /** @description Successful Response */ - 200: { - headers: { - [name: string]: unknown; - }; - content: { - "application/json": unknown; - }; - }; - /** @description Validation Error */ - 422: { - headers: { - [name: string]: unknown; - }; - content: { - "application/json": components["schemas"]["HTTPValidationError"]; - }; - }; - }; - }; - v1_rooms_list: { - parameters: { - query?: { - /** @description Page number */ - page?: number; - /** @description Page size */ - size?: number; - }; - header?: never; - path?: never; - cookie?: never; - }; - requestBody?: never; - responses: { - /** @description Successful Response */ - 200: { - headers: { - [name: string]: unknown; - }; - content: { - "application/json": components["schemas"]["Page_RoomDetails_"]; - }; - }; - /** @description Validation Error */ - 422: { - headers: { - [name: string]: unknown; - }; - content: { - "application/json": components["schemas"]["HTTPValidationError"]; - }; - }; - }; - }; - v1_rooms_create: { - parameters: { - query?: never; - header?: never; - path?: never; - cookie?: never; - }; - requestBody: { - content: { - "application/json": components["schemas"]["CreateRoom"]; - }; - }; - responses: { - /** @description Successful Response */ - 200: { - headers: { - [name: string]: unknown; - }; - content: { - "application/json": components["schemas"]["Room"]; - }; - }; - /** @description Validation Error */ - 422: { - headers: { - [name: string]: unknown; - }; - content: { - "application/json": components["schemas"]["HTTPValidationError"]; - }; - }; - }; - }; - v1_rooms_get: { - parameters: { - query?: never; - header?: never; - path: { - room_id: string; - }; - cookie?: never; - }; - requestBody?: never; - responses: { - /** @description Successful Response */ - 200: { - headers: { - [name: string]: unknown; - }; - content: { - "application/json": components["schemas"]["RoomDetails"]; - }; - }; - /** @description Validation Error */ - 422: { - headers: { - [name: string]: unknown; - }; - content: { - "application/json": components["schemas"]["HTTPValidationError"]; - }; - }; - }; - }; - v1_rooms_delete: { - parameters: { - query?: never; - header?: never; - path: { - room_id: string; - }; - cookie?: never; - }; - requestBody?: never; - responses: { - /** @description Successful Response */ - 200: { - headers: { - [name: string]: unknown; - }; - content: { - "application/json": components["schemas"]["DeletionStatus"]; - }; - }; - /** @description Validation Error */ - 422: { - headers: { - [name: string]: unknown; - }; - content: { - "application/json": components["schemas"]["HTTPValidationError"]; - }; - }; - }; - }; - v1_rooms_update: { - parameters: { - query?: never; - header?: never; - path: { - room_id: string; - }; - cookie?: never; - }; - requestBody: { - content: { - "application/json": components["schemas"]["UpdateRoom"]; - }; - }; - responses: { - /** @description Successful Response */ - 200: { - headers: { - [name: string]: unknown; - }; - content: { - "application/json": components["schemas"]["RoomDetails"]; - }; - }; - /** @description Validation Error */ - 422: { - headers: { - [name: string]: unknown; - }; - content: { - "application/json": components["schemas"]["HTTPValidationError"]; - }; - }; - }; - }; - v1_rooms_create_meeting: { - parameters: { - query?: never; - header?: never; - path: { - room_name: string; - }; - cookie?: never; - }; - requestBody?: never; - responses: { - /** @description Successful Response */ - 200: { - headers: { - [name: string]: unknown; - }; - content: { - "application/json": components["schemas"]["Meeting"]; - }; - }; - /** @description Validation Error */ - 422: { - headers: { - [name: string]: unknown; - }; - content: { - "application/json": components["schemas"]["HTTPValidationError"]; - }; - }; - }; - }; - v1_rooms_test_webhook: { - parameters: { - query?: never; - header?: never; - path: { - room_id: string; - }; - cookie?: never; - }; - requestBody?: never; - responses: { - /** @description Successful Response */ - 200: { - headers: { - [name: string]: unknown; - }; - content: { - "application/json": components["schemas"]["WebhookTestResult"]; - }; - }; - /** @description Validation Error */ - 422: { - headers: { - [name: string]: unknown; - }; - content: { - "application/json": components["schemas"]["HTTPValidationError"]; - }; - }; - }; - }; - v1_rooms_sync_ics: { - parameters: { - query?: never; - header?: never; - path: { - room_name: string; - }; - cookie?: never; - }; - requestBody?: never; - responses: { - /** @description Successful Response */ - 200: { - headers: { - [name: string]: unknown; - }; - content: { - "application/json": components["schemas"]["ICSSyncResult"]; - }; - }; - /** @description Validation Error */ - 422: { - headers: { - [name: string]: unknown; - }; - content: { - "application/json": components["schemas"]["HTTPValidationError"]; - }; - }; - }; - }; - v1_rooms_ics_status: { - parameters: { - query?: never; - header?: never; - path: { - room_name: string; - }; - cookie?: never; - }; - requestBody?: never; - responses: { - /** @description Successful Response */ - 200: { - headers: { - [name: string]: unknown; - }; - content: { - "application/json": components["schemas"]["ICSStatus"]; - }; - }; - /** @description Validation Error */ - 422: { - headers: { - [name: string]: unknown; - }; - content: { - "application/json": components["schemas"]["HTTPValidationError"]; - }; - }; - }; - }; - v1_rooms_list_meetings: { - parameters: { - query?: never; - header?: never; - path: { - room_name: string; - }; - cookie?: never; - }; - requestBody?: never; - responses: { - /** @description Successful Response */ - 200: { - headers: { - [name: string]: unknown; - }; - content: { - "application/json": components["schemas"]["CalendarEventResponse"][]; - }; - }; - /** @description Validation Error */ - 422: { - headers: { - [name: string]: unknown; - }; - content: { - "application/json": components["schemas"]["HTTPValidationError"]; - }; - }; - }; - }; - v1_rooms_list_upcoming_meetings: { - parameters: { - query?: { - minutes_ahead?: number; - }; - header?: never; - path: { - room_name: string; - }; - cookie?: never; - }; - requestBody?: never; - responses: { - /** @description Successful Response */ - 200: { - headers: { - [name: string]: unknown; - }; - content: { - "application/json": components["schemas"]["CalendarEventResponse"][]; - }; - }; - /** @description Validation Error */ - 422: { - headers: { - [name: string]: unknown; - }; - content: { - "application/json": components["schemas"]["HTTPValidationError"]; - }; - }; - }; - }; - v1_rooms_list_active_meetings: { - parameters: { - query?: never; - header?: never; - path: { - room_name: string; - }; - cookie?: never; - }; - requestBody?: never; - responses: { - /** @description Successful Response */ - 200: { - headers: { - [name: string]: unknown; - }; - content: { - "application/json": components["schemas"]["Meeting"][]; - }; - }; - /** @description Validation Error */ - 422: { - headers: { - [name: string]: unknown; - }; - content: { - "application/json": components["schemas"]["HTTPValidationError"]; - }; - }; - }; - }; - v1_rooms_join_meeting: { - parameters: { - query?: never; - header?: never; - path: { - room_name: string; - meeting_id: string; - }; - cookie?: never; - }; - requestBody?: never; - responses: { - /** @description Successful Response */ - 200: { - headers: { - [name: string]: unknown; - }; - content: { - "application/json": components["schemas"]["Meeting"]; - }; - }; - /** @description Validation Error */ - 422: { - headers: { - [name: string]: unknown; - }; - content: { - "application/json": components["schemas"]["HTTPValidationError"]; - }; - }; - }; - }; - v1_transcripts_list: { - parameters: { - query?: { - source_kind?: components["schemas"]["SourceKind"] | null; - room_id?: string | null; - search_term?: string | null; - /** @description Page number */ - page?: number; - /** @description Page size */ - size?: number; - }; - header?: never; - path?: never; - cookie?: never; - }; - requestBody?: never; - responses: { - /** @description Successful Response */ - 200: { - headers: { - [name: string]: unknown; - }; - content: { - "application/json": components["schemas"]["Page_GetTranscriptMinimal_"]; - }; - }; - /** @description Validation Error */ - 422: { - headers: { - [name: string]: unknown; - }; - content: { - "application/json": components["schemas"]["HTTPValidationError"]; - }; - }; - }; - }; - v1_transcripts_create: { - parameters: { - query?: never; - header?: never; - path?: never; - cookie?: never; - }; - requestBody: { - content: { - "application/json": components["schemas"]["CreateTranscript"]; - }; - }; - responses: { - /** @description Successful Response */ - 200: { - headers: { - [name: string]: unknown; - }; - content: { - "application/json": components["schemas"]["GetTranscript"]; - }; - }; - /** @description Validation Error */ - 422: { - headers: { - [name: string]: unknown; - }; - content: { - "application/json": components["schemas"]["HTTPValidationError"]; - }; - }; - }; - }; - v1_transcripts_search: { - parameters: { - query: { - /** @description Search query text */ - q: string; - /** @description Results per page */ - limit?: number; - /** @description Number of results to skip */ - offset?: number; - room_id?: string | null; - source_kind?: components["schemas"]["SourceKind"] | null; - }; - header?: never; - path?: never; - cookie?: never; - }; - requestBody?: never; - responses: { - /** @description Successful Response */ - 200: { - headers: { - [name: string]: unknown; - }; - content: { - "application/json": components["schemas"]["SearchResponse"]; - }; - }; - /** @description Validation Error */ - 422: { - headers: { - [name: string]: unknown; - }; - content: { - "application/json": components["schemas"]["HTTPValidationError"]; - }; - }; - }; - }; - v1_transcript_get: { - parameters: { - query?: never; - header?: never; - path: { - transcript_id: string; - }; - cookie?: never; - }; - requestBody?: never; - responses: { - /** @description Successful Response */ - 200: { - headers: { - [name: string]: unknown; - }; - content: { - "application/json": components["schemas"]["GetTranscript"]; - }; - }; - /** @description Validation Error */ - 422: { - headers: { - [name: string]: unknown; - }; - content: { - "application/json": components["schemas"]["HTTPValidationError"]; - }; - }; - }; - }; - v1_transcript_delete: { - parameters: { - query?: never; - header?: never; - path: { - transcript_id: string; - }; - cookie?: never; - }; - requestBody?: never; - responses: { - /** @description Successful Response */ - 200: { - headers: { - [name: string]: unknown; - }; - content: { - "application/json": components["schemas"]["DeletionStatus"]; - }; - }; - /** @description Validation Error */ - 422: { - headers: { - [name: string]: unknown; - }; - content: { - "application/json": components["schemas"]["HTTPValidationError"]; - }; - }; - }; - }; - v1_transcript_update: { - parameters: { - query?: never; - header?: never; - path: { - transcript_id: string; - }; - cookie?: never; - }; - requestBody: { - content: { - "application/json": components["schemas"]["UpdateTranscript"]; - }; - }; - responses: { - /** @description Successful Response */ - 200: { - headers: { - [name: string]: unknown; - }; - content: { - "application/json": components["schemas"]["GetTranscript"]; - }; - }; - /** @description Validation Error */ - 422: { - headers: { - [name: string]: unknown; - }; - content: { - "application/json": components["schemas"]["HTTPValidationError"]; - }; - }; - }; - }; - v1_transcript_get_topics: { - parameters: { - query?: never; - header?: never; - path: { - transcript_id: string; - }; - cookie?: never; - }; - requestBody?: never; - responses: { - /** @description Successful Response */ - 200: { - headers: { - [name: string]: unknown; - }; - content: { - "application/json": components["schemas"]["GetTranscriptTopic"][]; - }; - }; - /** @description Validation Error */ - 422: { - headers: { - [name: string]: unknown; - }; - content: { - "application/json": components["schemas"]["HTTPValidationError"]; - }; - }; - }; - }; - v1_transcript_get_topics_with_words: { - parameters: { - query?: never; - header?: never; - path: { - transcript_id: string; - }; - cookie?: never; - }; - requestBody?: never; - responses: { - /** @description Successful Response */ - 200: { - headers: { - [name: string]: unknown; - }; - content: { - "application/json": components["schemas"]["GetTranscriptTopicWithWords"][]; - }; - }; - /** @description Validation Error */ - 422: { - headers: { - [name: string]: unknown; - }; - content: { - "application/json": components["schemas"]["HTTPValidationError"]; - }; - }; - }; - }; - v1_transcript_get_topics_with_words_per_speaker: { - parameters: { - query?: never; - header?: never; - path: { - transcript_id: string; - topic_id: string; - }; - cookie?: never; - }; - requestBody?: never; - responses: { - /** @description Successful Response */ - 200: { - headers: { - [name: string]: unknown; - }; - content: { - "application/json": components["schemas"]["GetTranscriptTopicWithWordsPerSpeaker"]; - }; - }; - /** @description Validation Error */ - 422: { - headers: { - [name: string]: unknown; - }; - content: { - "application/json": components["schemas"]["HTTPValidationError"]; - }; - }; - }; - }; - v1_transcript_post_to_zulip: { - parameters: { - query: { - stream: string; - topic: string; - include_topics: boolean; - }; - header?: never; - path: { - transcript_id: string; - }; - cookie?: never; - }; - requestBody?: never; - responses: { - /** @description Successful Response */ - 200: { - headers: { - [name: string]: unknown; - }; - content: { - "application/json": unknown; - }; - }; - /** @description Validation Error */ - 422: { - headers: { - [name: string]: unknown; - }; - content: { - "application/json": components["schemas"]["HTTPValidationError"]; - }; - }; - }; - }; - v1_transcript_get_audio_mp3: { - parameters: { - query?: { - token?: string | null; - }; - header?: never; - path: { - transcript_id: string; - }; - cookie?: never; - }; - requestBody?: never; - responses: { - /** @description Successful Response */ - 200: { - headers: { - [name: string]: unknown; - }; - content: { - "application/json": unknown; - }; - }; - /** @description Validation Error */ - 422: { - headers: { - [name: string]: unknown; - }; - content: { - "application/json": components["schemas"]["HTTPValidationError"]; - }; - }; - }; - }; - v1_transcript_head_audio_mp3: { - parameters: { - query?: { - token?: string | null; - }; - header?: never; - path: { - transcript_id: string; - }; - cookie?: never; - }; - requestBody?: never; - responses: { - /** @description Successful Response */ - 200: { - headers: { - [name: string]: unknown; - }; - content: { - "application/json": unknown; - }; - }; - /** @description Validation Error */ - 422: { - headers: { - [name: string]: unknown; - }; - content: { - "application/json": components["schemas"]["HTTPValidationError"]; - }; - }; - }; - }; - v1_transcript_get_audio_waveform: { - parameters: { - query?: never; - header?: never; - path: { - transcript_id: string; - }; - cookie?: never; - }; - requestBody?: never; - responses: { - /** @description Successful Response */ - 200: { - headers: { - [name: string]: unknown; - }; - content: { - "application/json": components["schemas"]["AudioWaveform"]; - }; - }; - /** @description Validation Error */ - 422: { - headers: { - [name: string]: unknown; - }; - content: { - "application/json": components["schemas"]["HTTPValidationError"]; - }; - }; - }; - }; - v1_transcript_get_participants: { - parameters: { - query?: never; - header?: never; - path: { - transcript_id: string; - }; - cookie?: never; - }; - requestBody?: never; - responses: { - /** @description Successful Response */ - 200: { - headers: { - [name: string]: unknown; - }; - content: { - "application/json": components["schemas"]["Participant"][]; - }; - }; - /** @description Validation Error */ - 422: { - headers: { - [name: string]: unknown; - }; - content: { - "application/json": components["schemas"]["HTTPValidationError"]; - }; - }; - }; - }; - v1_transcript_add_participant: { - parameters: { - query?: never; - header?: never; - path: { - transcript_id: string; - }; - cookie?: never; - }; - requestBody: { - content: { - "application/json": components["schemas"]["CreateParticipant"]; - }; - }; - responses: { - /** @description Successful Response */ - 200: { - headers: { - [name: string]: unknown; - }; - content: { - "application/json": components["schemas"]["Participant"]; - }; - }; - /** @description Validation Error */ - 422: { - headers: { - [name: string]: unknown; - }; - content: { - "application/json": components["schemas"]["HTTPValidationError"]; - }; - }; - }; - }; - v1_transcript_get_participant: { - parameters: { - query?: never; - header?: never; - path: { - transcript_id: string; - participant_id: string; - }; - cookie?: never; - }; - requestBody?: never; - responses: { - /** @description Successful Response */ - 200: { - headers: { - [name: string]: unknown; - }; - content: { - "application/json": components["schemas"]["Participant"]; - }; - }; - /** @description Validation Error */ - 422: { - headers: { - [name: string]: unknown; - }; - content: { - "application/json": components["schemas"]["HTTPValidationError"]; - }; - }; - }; - }; - v1_transcript_delete_participant: { - parameters: { - query?: never; - header?: never; - path: { - transcript_id: string; - participant_id: string; - }; - cookie?: never; - }; - requestBody?: never; - responses: { - /** @description Successful Response */ - 200: { - headers: { - [name: string]: unknown; - }; - content: { - "application/json": components["schemas"]["DeletionStatus"]; - }; - }; - /** @description Validation Error */ - 422: { - headers: { - [name: string]: unknown; - }; - content: { - "application/json": components["schemas"]["HTTPValidationError"]; - }; - }; - }; - }; - v1_transcript_update_participant: { - parameters: { - query?: never; - header?: never; - path: { - transcript_id: string; - participant_id: string; - }; - cookie?: never; - }; - requestBody: { - content: { - "application/json": components["schemas"]["UpdateParticipant"]; - }; - }; - responses: { - /** @description Successful Response */ - 200: { - headers: { - [name: string]: unknown; - }; - content: { - "application/json": components["schemas"]["Participant"]; - }; - }; - /** @description Validation Error */ - 422: { - headers: { - [name: string]: unknown; - }; - content: { - "application/json": components["schemas"]["HTTPValidationError"]; - }; - }; - }; - }; - v1_transcript_assign_speaker: { - parameters: { - query?: never; - header?: never; - path: { - transcript_id: string; - }; - cookie?: never; - }; - requestBody: { - content: { - "application/json": components["schemas"]["SpeakerAssignment"]; - }; - }; - responses: { - /** @description Successful Response */ - 200: { - headers: { - [name: string]: unknown; - }; - content: { - "application/json": components["schemas"]["SpeakerAssignmentStatus"]; - }; - }; - /** @description Validation Error */ - 422: { - headers: { - [name: string]: unknown; - }; - content: { - "application/json": components["schemas"]["HTTPValidationError"]; - }; - }; - }; - }; - v1_transcript_merge_speaker: { - parameters: { - query?: never; - header?: never; - path: { - transcript_id: string; - }; - cookie?: never; - }; - requestBody: { - content: { - "application/json": components["schemas"]["SpeakerMerge"]; - }; - }; - responses: { - /** @description Successful Response */ - 200: { - headers: { - [name: string]: unknown; - }; - content: { - "application/json": components["schemas"]["SpeakerAssignmentStatus"]; - }; - }; - /** @description Validation Error */ - 422: { - headers: { - [name: string]: unknown; - }; - content: { - "application/json": components["schemas"]["HTTPValidationError"]; - }; - }; - }; - }; - v1_transcript_record_upload: { - parameters: { - query: { - chunk_number: number; - total_chunks: number; - }; - header?: never; - path: { - transcript_id: string; - }; - cookie?: never; - }; - requestBody: { - content: { - "multipart/form-data": components["schemas"]["Body_transcript_record_upload_v1_transcripts__transcript_id__record_upload_post"]; - }; - }; - responses: { - /** @description Successful Response */ - 200: { - headers: { - [name: string]: unknown; - }; - content: { - "application/json": unknown; - }; - }; - /** @description Validation Error */ - 422: { - headers: { - [name: string]: unknown; - }; - content: { - "application/json": components["schemas"]["HTTPValidationError"]; - }; - }; - }; - }; - v1_transcript_get_websocket_events: { - parameters: { - query?: never; - header?: never; - path: { - transcript_id: string; - }; - cookie?: never; - }; - requestBody?: never; - responses: { - /** @description Successful Response */ - 200: { - headers: { - [name: string]: unknown; - }; - content: { - "application/json": unknown; - }; - }; - /** @description Validation Error */ - 422: { - headers: { - [name: string]: unknown; - }; - content: { - "application/json": components["schemas"]["HTTPValidationError"]; - }; - }; - }; - }; - v1_transcript_record_webrtc: { - parameters: { - query?: never; - header?: never; - path: { - transcript_id: string; - }; - cookie?: never; - }; - requestBody: { - content: { - "application/json": components["schemas"]["RtcOffer"]; - }; - }; - responses: { - /** @description Successful Response */ - 200: { - headers: { - [name: string]: unknown; - }; - content: { - "application/json": unknown; - }; - }; - /** @description Validation Error */ - 422: { - headers: { - [name: string]: unknown; - }; - content: { - "application/json": components["schemas"]["HTTPValidationError"]; - }; - }; - }; - }; - v1_transcript_process: { - parameters: { - query?: never; - header?: never; - path: { - transcript_id: string; - }; - cookie?: never; - }; - requestBody?: never; - responses: { - /** @description Successful Response */ - 200: { - headers: { - [name: string]: unknown; - }; - content: { - "application/json": unknown; - }; - }; - /** @description Validation Error */ - 422: { - headers: { - [name: string]: unknown; - }; - content: { - "application/json": components["schemas"]["HTTPValidationError"]; - }; - }; - }; - }; - v1_user_me: { - parameters: { - query?: never; - header?: never; - path?: never; - cookie?: never; - }; - requestBody?: never; - responses: { - /** @description Successful Response */ - 200: { - headers: { - [name: string]: unknown; - }; - content: { - "application/json": components["schemas"]["UserInfo"] | null; - }; - }; - }; - }; - v1_zulip_get_streams: { - parameters: { - query?: never; - header?: never; - path?: never; - cookie?: never; - }; - requestBody?: never; - responses: { - /** @description Successful Response */ - 200: { - headers: { - [name: string]: unknown; - }; - content: { - "application/json": components["schemas"]["Stream"][]; - }; - }; - }; - }; - v1_zulip_get_topics: { - parameters: { - query?: never; - header?: never; - path: { - stream_id: number; - }; - cookie?: never; - }; - requestBody?: never; - responses: { - /** @description Successful Response */ - 200: { - headers: { - [name: string]: unknown; - }; - content: { - "application/json": components["schemas"]["Topic"][]; - }; - }; - /** @description Validation Error */ - 422: { - headers: { - [name: string]: unknown; - }; - content: { - "application/json": components["schemas"]["HTTPValidationError"]; - }; - }; - }; - }; - v1_whereby_webhook: { - parameters: { - query?: never; - header?: never; - path?: never; - cookie?: never; - }; - requestBody: { - content: { - "application/json": components["schemas"]["WherebyWebhookEvent"]; - }; - }; - responses: { - /** @description Successful Response */ - 200: { - headers: { - [name: string]: unknown; - }; - content: { - "application/json": unknown; - }; - }; - /** @description Validation Error */ - 422: { - headers: { - [name: string]: unknown; - }; - content: { - "application/json": components["schemas"]["HTTPValidationError"]; + metrics: { + parameters: { + query?: never; + header?: never; + path?: never; + cookie?: never; + }; + requestBody?: never; + responses: { + /** @description Successful Response */ + 200: { + headers: { + [name: string]: unknown; + }; + content: { + "application/json": unknown; + }; + }; + }; + }; + v1_meeting_audio_consent: { + parameters: { + query?: never; + header?: never; + path: { + meeting_id: string; + }; + cookie?: never; + }; + requestBody: { + content: { + "application/json": components["schemas"]["MeetingConsentRequest"]; + }; + }; + responses: { + /** @description Successful Response */ + 200: { + headers: { + [name: string]: unknown; + }; + content: { + "application/json": unknown; + }; + }; + /** @description Validation Error */ + 422: { + headers: { + [name: string]: unknown; + }; + content: { + "application/json": components["schemas"]["HTTPValidationError"]; + }; + }; + }; + }; + v1_meeting_deactivate: { + parameters: { + query?: never; + header?: never; + path: { + meeting_id: string; + }; + cookie?: never; + }; + requestBody?: never; + responses: { + /** @description Successful Response */ + 200: { + headers: { + [name: string]: unknown; + }; + content: { + "application/json": unknown; + }; + }; + /** @description Validation Error */ + 422: { + headers: { + [name: string]: unknown; + }; + content: { + "application/json": components["schemas"]["HTTPValidationError"]; + }; + }; + }; + }; + v1_rooms_list: { + parameters: { + query?: { + /** @description Page number */ + page?: number; + /** @description Page size */ + size?: number; + }; + header?: never; + path?: never; + cookie?: never; + }; + requestBody?: never; + responses: { + /** @description Successful Response */ + 200: { + headers: { + [name: string]: unknown; + }; + content: { + "application/json": components["schemas"]["Page_RoomDetails_"]; + }; + }; + /** @description Validation Error */ + 422: { + headers: { + [name: string]: unknown; + }; + content: { + "application/json": components["schemas"]["HTTPValidationError"]; + }; + }; + }; + }; + v1_rooms_create: { + parameters: { + query?: never; + header?: never; + path?: never; + cookie?: never; + }; + requestBody: { + content: { + "application/json": components["schemas"]["CreateRoom"]; + }; + }; + responses: { + /** @description Successful Response */ + 200: { + headers: { + [name: string]: unknown; + }; + content: { + "application/json": components["schemas"]["Room"]; + }; + }; + /** @description Validation Error */ + 422: { + headers: { + [name: string]: unknown; + }; + content: { + "application/json": components["schemas"]["HTTPValidationError"]; + }; + }; + }; + }; + v1_rooms_get: { + parameters: { + query?: never; + header?: never; + path: { + room_id: string; + }; + cookie?: never; + }; + requestBody?: never; + responses: { + /** @description Successful Response */ + 200: { + headers: { + [name: string]: unknown; + }; + content: { + "application/json": components["schemas"]["RoomDetails"]; + }; + }; + /** @description Validation Error */ + 422: { + headers: { + [name: string]: unknown; + }; + content: { + "application/json": components["schemas"]["HTTPValidationError"]; + }; + }; + }; + }; + v1_rooms_delete: { + parameters: { + query?: never; + header?: never; + path: { + room_id: string; + }; + cookie?: never; + }; + requestBody?: never; + responses: { + /** @description Successful Response */ + 200: { + headers: { + [name: string]: unknown; + }; + content: { + "application/json": components["schemas"]["DeletionStatus"]; + }; + }; + /** @description Validation Error */ + 422: { + headers: { + [name: string]: unknown; + }; + content: { + "application/json": components["schemas"]["HTTPValidationError"]; + }; + }; + }; + }; + v1_rooms_update: { + parameters: { + query?: never; + header?: never; + path: { + room_id: string; + }; + cookie?: never; + }; + requestBody: { + content: { + "application/json": components["schemas"]["UpdateRoom"]; + }; + }; + responses: { + /** @description Successful Response */ + 200: { + headers: { + [name: string]: unknown; + }; + content: { + "application/json": components["schemas"]["RoomDetails"]; + }; + }; + /** @description Validation Error */ + 422: { + headers: { + [name: string]: unknown; + }; + content: { + "application/json": components["schemas"]["HTTPValidationError"]; + }; + }; + }; + }; + v1_rooms_get_by_name: { + parameters: { + query?: never; + header?: never; + path: { + room_name: string; + }; + cookie?: never; + }; + requestBody?: never; + responses: { + /** @description Successful Response */ + 200: { + headers: { + [name: string]: unknown; + }; + content: { + "application/json": components["schemas"]["RoomDetails"]; + }; + }; + /** @description Validation Error */ + 422: { + headers: { + [name: string]: unknown; + }; + content: { + "application/json": components["schemas"]["HTTPValidationError"]; + }; + }; + }; + }; + v1_rooms_create_meeting: { + parameters: { + query?: never; + header?: never; + path: { + room_name: string; + }; + cookie?: never; + }; + requestBody?: never; + responses: { + /** @description Successful Response */ + 200: { + headers: { + [name: string]: unknown; + }; + content: { + "application/json": components["schemas"]["Meeting"]; + }; + }; + /** @description Validation Error */ + 422: { + headers: { + [name: string]: unknown; + }; + content: { + "application/json": components["schemas"]["HTTPValidationError"]; + }; + }; + }; + }; + v1_rooms_test_webhook: { + parameters: { + query?: never; + header?: never; + path: { + room_id: string; + }; + cookie?: never; + }; + requestBody?: never; + responses: { + /** @description Successful Response */ + 200: { + headers: { + [name: string]: unknown; + }; + content: { + "application/json": components["schemas"]["WebhookTestResult"]; + }; + }; + /** @description Validation Error */ + 422: { + headers: { + [name: string]: unknown; + }; + content: { + "application/json": components["schemas"]["HTTPValidationError"]; + }; + }; + }; + }; + v1_rooms_sync_ics: { + parameters: { + query?: never; + header?: never; + path: { + room_name: string; + }; + cookie?: never; + }; + requestBody?: never; + responses: { + /** @description Successful Response */ + 200: { + headers: { + [name: string]: unknown; + }; + content: { + "application/json": components["schemas"]["ICSSyncResult"]; + }; + }; + /** @description Validation Error */ + 422: { + headers: { + [name: string]: unknown; + }; + content: { + "application/json": components["schemas"]["HTTPValidationError"]; + }; + }; + }; + }; + v1_rooms_ics_status: { + parameters: { + query?: never; + header?: never; + path: { + room_name: string; + }; + cookie?: never; + }; + requestBody?: never; + responses: { + /** @description Successful Response */ + 200: { + headers: { + [name: string]: unknown; + }; + content: { + "application/json": components["schemas"]["ICSStatus"]; + }; + }; + /** @description Validation Error */ + 422: { + headers: { + [name: string]: unknown; + }; + content: { + "application/json": components["schemas"]["HTTPValidationError"]; + }; + }; + }; + }; + v1_rooms_list_meetings: { + parameters: { + query?: never; + header?: never; + path: { + room_name: string; + }; + cookie?: never; + }; + requestBody?: never; + responses: { + /** @description Successful Response */ + 200: { + headers: { + [name: string]: unknown; + }; + content: { + "application/json": components["schemas"]["CalendarEventResponse"][]; + }; + }; + /** @description Validation Error */ + 422: { + headers: { + [name: string]: unknown; + }; + content: { + "application/json": components["schemas"]["HTTPValidationError"]; + }; + }; + }; + }; + v1_rooms_list_upcoming_meetings: { + parameters: { + query?: { + minutes_ahead?: number; + }; + header?: never; + path: { + room_name: string; + }; + cookie?: never; + }; + requestBody?: never; + responses: { + /** @description Successful Response */ + 200: { + headers: { + [name: string]: unknown; + }; + content: { + "application/json": components["schemas"]["CalendarEventResponse"][]; + }; + }; + /** @description Validation Error */ + 422: { + headers: { + [name: string]: unknown; + }; + content: { + "application/json": components["schemas"]["HTTPValidationError"]; + }; + }; + }; + }; + v1_rooms_list_active_meetings: { + parameters: { + query?: never; + header?: never; + path: { + room_name: string; + }; + cookie?: never; + }; + requestBody?: never; + responses: { + /** @description Successful Response */ + 200: { + headers: { + [name: string]: unknown; + }; + content: { + "application/json": components["schemas"]["Meeting"][]; + }; + }; + /** @description Validation Error */ + 422: { + headers: { + [name: string]: unknown; + }; + content: { + "application/json": components["schemas"]["HTTPValidationError"]; + }; + }; + }; + }; + v1_rooms_join_meeting: { + parameters: { + query?: never; + header?: never; + path: { + room_name: string; + meeting_id: string; + }; + cookie?: never; + }; + requestBody?: never; + responses: { + /** @description Successful Response */ + 200: { + headers: { + [name: string]: unknown; + }; + content: { + "application/json": components["schemas"]["Meeting"]; + }; + }; + /** @description Validation Error */ + 422: { + headers: { + [name: string]: unknown; + }; + content: { + "application/json": components["schemas"]["HTTPValidationError"]; + }; + }; + }; + }; + v1_transcripts_list: { + parameters: { + query?: { + source_kind?: components["schemas"]["SourceKind"] | null; + room_id?: string | null; + search_term?: string | null; + /** @description Page number */ + page?: number; + /** @description Page size */ + size?: number; + }; + header?: never; + path?: never; + cookie?: never; + }; + requestBody?: never; + responses: { + /** @description Successful Response */ + 200: { + headers: { + [name: string]: unknown; + }; + content: { + "application/json": components["schemas"]["Page_GetTranscriptMinimal_"]; + }; + }; + /** @description Validation Error */ + 422: { + headers: { + [name: string]: unknown; + }; + content: { + "application/json": components["schemas"]["HTTPValidationError"]; + }; + }; + }; + }; + v1_transcripts_create: { + parameters: { + query?: never; + header?: never; + path?: never; + cookie?: never; + }; + requestBody: { + content: { + "application/json": components["schemas"]["CreateTranscript"]; + }; + }; + responses: { + /** @description Successful Response */ + 200: { + headers: { + [name: string]: unknown; + }; + content: { + "application/json": components["schemas"]["GetTranscript"]; + }; + }; + /** @description Validation Error */ + 422: { + headers: { + [name: string]: unknown; + }; + content: { + "application/json": components["schemas"]["HTTPValidationError"]; + }; + }; + }; + }; + v1_transcripts_search: { + parameters: { + query: { + /** @description Search query text */ + q: string; + /** @description Results per page */ + limit?: number; + /** @description Number of results to skip */ + offset?: number; + room_id?: string | null; + source_kind?: components["schemas"]["SourceKind"] | null; + }; + header?: never; + path?: never; + cookie?: never; + }; + requestBody?: never; + responses: { + /** @description Successful Response */ + 200: { + headers: { + [name: string]: unknown; + }; + content: { + "application/json": components["schemas"]["SearchResponse"]; + }; + }; + /** @description Validation Error */ + 422: { + headers: { + [name: string]: unknown; + }; + content: { + "application/json": components["schemas"]["HTTPValidationError"]; + }; + }; + }; + }; + v1_transcript_get: { + parameters: { + query?: never; + header?: never; + path: { + transcript_id: string; + }; + cookie?: never; + }; + requestBody?: never; + responses: { + /** @description Successful Response */ + 200: { + headers: { + [name: string]: unknown; + }; + content: { + "application/json": components["schemas"]["GetTranscript"]; + }; + }; + /** @description Validation Error */ + 422: { + headers: { + [name: string]: unknown; + }; + content: { + "application/json": components["schemas"]["HTTPValidationError"]; + }; + }; + }; + }; + v1_transcript_delete: { + parameters: { + query?: never; + header?: never; + path: { + transcript_id: string; + }; + cookie?: never; + }; + requestBody?: never; + responses: { + /** @description Successful Response */ + 200: { + headers: { + [name: string]: unknown; + }; + content: { + "application/json": components["schemas"]["DeletionStatus"]; + }; + }; + /** @description Validation Error */ + 422: { + headers: { + [name: string]: unknown; + }; + content: { + "application/json": components["schemas"]["HTTPValidationError"]; + }; + }; + }; + }; + v1_transcript_update: { + parameters: { + query?: never; + header?: never; + path: { + transcript_id: string; + }; + cookie?: never; + }; + requestBody: { + content: { + "application/json": components["schemas"]["UpdateTranscript"]; + }; + }; + responses: { + /** @description Successful Response */ + 200: { + headers: { + [name: string]: unknown; + }; + content: { + "application/json": components["schemas"]["GetTranscript"]; + }; + }; + /** @description Validation Error */ + 422: { + headers: { + [name: string]: unknown; + }; + content: { + "application/json": components["schemas"]["HTTPValidationError"]; + }; + }; + }; + }; + v1_transcript_get_topics: { + parameters: { + query?: never; + header?: never; + path: { + transcript_id: string; + }; + cookie?: never; + }; + requestBody?: never; + responses: { + /** @description Successful Response */ + 200: { + headers: { + [name: string]: unknown; + }; + content: { + "application/json": components["schemas"]["GetTranscriptTopic"][]; + }; + }; + /** @description Validation Error */ + 422: { + headers: { + [name: string]: unknown; + }; + content: { + "application/json": components["schemas"]["HTTPValidationError"]; + }; + }; + }; + }; + v1_transcript_get_topics_with_words: { + parameters: { + query?: never; + header?: never; + path: { + transcript_id: string; + }; + cookie?: never; + }; + requestBody?: never; + responses: { + /** @description Successful Response */ + 200: { + headers: { + [name: string]: unknown; + }; + content: { + "application/json": components["schemas"]["GetTranscriptTopicWithWords"][]; + }; + }; + /** @description Validation Error */ + 422: { + headers: { + [name: string]: unknown; + }; + content: { + "application/json": components["schemas"]["HTTPValidationError"]; + }; + }; + }; + }; + v1_transcript_get_topics_with_words_per_speaker: { + parameters: { + query?: never; + header?: never; + path: { + transcript_id: string; + topic_id: string; + }; + cookie?: never; + }; + requestBody?: never; + responses: { + /** @description Successful Response */ + 200: { + headers: { + [name: string]: unknown; + }; + content: { + "application/json": components["schemas"]["GetTranscriptTopicWithWordsPerSpeaker"]; + }; + }; + /** @description Validation Error */ + 422: { + headers: { + [name: string]: unknown; + }; + content: { + "application/json": components["schemas"]["HTTPValidationError"]; + }; + }; + }; + }; + v1_transcript_post_to_zulip: { + parameters: { + query: { + stream: string; + topic: string; + include_topics: boolean; + }; + header?: never; + path: { + transcript_id: string; + }; + cookie?: never; + }; + requestBody?: never; + responses: { + /** @description Successful Response */ + 200: { + headers: { + [name: string]: unknown; + }; + content: { + "application/json": unknown; + }; + }; + /** @description Validation Error */ + 422: { + headers: { + [name: string]: unknown; + }; + content: { + "application/json": components["schemas"]["HTTPValidationError"]; + }; + }; + }; + }; + v1_transcript_get_audio_mp3: { + parameters: { + query?: { + token?: string | null; + }; + header?: never; + path: { + transcript_id: string; + }; + cookie?: never; + }; + requestBody?: never; + responses: { + /** @description Successful Response */ + 200: { + headers: { + [name: string]: unknown; + }; + content: { + "application/json": unknown; + }; + }; + /** @description Validation Error */ + 422: { + headers: { + [name: string]: unknown; + }; + content: { + "application/json": components["schemas"]["HTTPValidationError"]; + }; + }; + }; + }; + v1_transcript_head_audio_mp3: { + parameters: { + query?: { + token?: string | null; + }; + header?: never; + path: { + transcript_id: string; + }; + cookie?: never; + }; + requestBody?: never; + responses: { + /** @description Successful Response */ + 200: { + headers: { + [name: string]: unknown; + }; + content: { + "application/json": unknown; + }; + }; + /** @description Validation Error */ + 422: { + headers: { + [name: string]: unknown; + }; + content: { + "application/json": components["schemas"]["HTTPValidationError"]; + }; + }; + }; + }; + v1_transcript_get_audio_waveform: { + parameters: { + query?: never; + header?: never; + path: { + transcript_id: string; + }; + cookie?: never; + }; + requestBody?: never; + responses: { + /** @description Successful Response */ + 200: { + headers: { + [name: string]: unknown; + }; + content: { + "application/json": components["schemas"]["AudioWaveform"]; + }; + }; + /** @description Validation Error */ + 422: { + headers: { + [name: string]: unknown; + }; + content: { + "application/json": components["schemas"]["HTTPValidationError"]; + }; + }; + }; + }; + v1_transcript_get_participants: { + parameters: { + query?: never; + header?: never; + path: { + transcript_id: string; + }; + cookie?: never; + }; + requestBody?: never; + responses: { + /** @description Successful Response */ + 200: { + headers: { + [name: string]: unknown; + }; + content: { + "application/json": components["schemas"]["Participant"][]; + }; + }; + /** @description Validation Error */ + 422: { + headers: { + [name: string]: unknown; + }; + content: { + "application/json": components["schemas"]["HTTPValidationError"]; + }; + }; + }; + }; + v1_transcript_add_participant: { + parameters: { + query?: never; + header?: never; + path: { + transcript_id: string; + }; + cookie?: never; + }; + requestBody: { + content: { + "application/json": components["schemas"]["CreateParticipant"]; + }; + }; + responses: { + /** @description Successful Response */ + 200: { + headers: { + [name: string]: unknown; + }; + content: { + "application/json": components["schemas"]["Participant"]; + }; + }; + /** @description Validation Error */ + 422: { + headers: { + [name: string]: unknown; + }; + content: { + "application/json": components["schemas"]["HTTPValidationError"]; + }; + }; + }; + }; + v1_transcript_get_participant: { + parameters: { + query?: never; + header?: never; + path: { + transcript_id: string; + participant_id: string; + }; + cookie?: never; + }; + requestBody?: never; + responses: { + /** @description Successful Response */ + 200: { + headers: { + [name: string]: unknown; + }; + content: { + "application/json": components["schemas"]["Participant"]; + }; + }; + /** @description Validation Error */ + 422: { + headers: { + [name: string]: unknown; + }; + content: { + "application/json": components["schemas"]["HTTPValidationError"]; + }; + }; + }; + }; + v1_transcript_delete_participant: { + parameters: { + query?: never; + header?: never; + path: { + transcript_id: string; + participant_id: string; + }; + cookie?: never; + }; + requestBody?: never; + responses: { + /** @description Successful Response */ + 200: { + headers: { + [name: string]: unknown; + }; + content: { + "application/json": components["schemas"]["DeletionStatus"]; + }; + }; + /** @description Validation Error */ + 422: { + headers: { + [name: string]: unknown; + }; + content: { + "application/json": components["schemas"]["HTTPValidationError"]; + }; + }; + }; + }; + v1_transcript_update_participant: { + parameters: { + query?: never; + header?: never; + path: { + transcript_id: string; + participant_id: string; + }; + cookie?: never; + }; + requestBody: { + content: { + "application/json": components["schemas"]["UpdateParticipant"]; + }; + }; + responses: { + /** @description Successful Response */ + 200: { + headers: { + [name: string]: unknown; + }; + content: { + "application/json": components["schemas"]["Participant"]; + }; + }; + /** @description Validation Error */ + 422: { + headers: { + [name: string]: unknown; + }; + content: { + "application/json": components["schemas"]["HTTPValidationError"]; + }; + }; + }; + }; + v1_transcript_assign_speaker: { + parameters: { + query?: never; + header?: never; + path: { + transcript_id: string; + }; + cookie?: never; + }; + requestBody: { + content: { + "application/json": components["schemas"]["SpeakerAssignment"]; + }; + }; + responses: { + /** @description Successful Response */ + 200: { + headers: { + [name: string]: unknown; + }; + content: { + "application/json": components["schemas"]["SpeakerAssignmentStatus"]; + }; + }; + /** @description Validation Error */ + 422: { + headers: { + [name: string]: unknown; + }; + content: { + "application/json": components["schemas"]["HTTPValidationError"]; + }; + }; + }; + }; + v1_transcript_merge_speaker: { + parameters: { + query?: never; + header?: never; + path: { + transcript_id: string; + }; + cookie?: never; + }; + requestBody: { + content: { + "application/json": components["schemas"]["SpeakerMerge"]; + }; + }; + responses: { + /** @description Successful Response */ + 200: { + headers: { + [name: string]: unknown; + }; + content: { + "application/json": components["schemas"]["SpeakerAssignmentStatus"]; + }; + }; + /** @description Validation Error */ + 422: { + headers: { + [name: string]: unknown; + }; + content: { + "application/json": components["schemas"]["HTTPValidationError"]; + }; + }; + }; + }; + v1_transcript_record_upload: { + parameters: { + query: { + chunk_number: number; + total_chunks: number; + }; + header?: never; + path: { + transcript_id: string; + }; + cookie?: never; + }; + requestBody: { + content: { + "multipart/form-data": components["schemas"]["Body_transcript_record_upload_v1_transcripts__transcript_id__record_upload_post"]; + }; + }; + responses: { + /** @description Successful Response */ + 200: { + headers: { + [name: string]: unknown; + }; + content: { + "application/json": unknown; + }; + }; + /** @description Validation Error */ + 422: { + headers: { + [name: string]: unknown; + }; + content: { + "application/json": components["schemas"]["HTTPValidationError"]; + }; + }; + }; + }; + v1_transcript_get_websocket_events: { + parameters: { + query?: never; + header?: never; + path: { + transcript_id: string; + }; + cookie?: never; + }; + requestBody?: never; + responses: { + /** @description Successful Response */ + 200: { + headers: { + [name: string]: unknown; + }; + content: { + "application/json": unknown; + }; + }; + /** @description Validation Error */ + 422: { + headers: { + [name: string]: unknown; + }; + content: { + "application/json": components["schemas"]["HTTPValidationError"]; + }; + }; + }; + }; + v1_transcript_record_webrtc: { + parameters: { + query?: never; + header?: never; + path: { + transcript_id: string; + }; + cookie?: never; + }; + requestBody: { + content: { + "application/json": components["schemas"]["RtcOffer"]; + }; + }; + responses: { + /** @description Successful Response */ + 200: { + headers: { + [name: string]: unknown; + }; + content: { + "application/json": unknown; + }; + }; + /** @description Validation Error */ + 422: { + headers: { + [name: string]: unknown; + }; + content: { + "application/json": components["schemas"]["HTTPValidationError"]; + }; + }; + }; + }; + v1_transcript_process: { + parameters: { + query?: never; + header?: never; + path: { + transcript_id: string; + }; + cookie?: never; + }; + requestBody?: never; + responses: { + /** @description Successful Response */ + 200: { + headers: { + [name: string]: unknown; + }; + content: { + "application/json": unknown; + }; + }; + /** @description Validation Error */ + 422: { + headers: { + [name: string]: unknown; + }; + content: { + "application/json": components["schemas"]["HTTPValidationError"]; + }; + }; + }; + }; + v1_user_me: { + parameters: { + query?: never; + header?: never; + path?: never; + cookie?: never; + }; + requestBody?: never; + responses: { + /** @description Successful Response */ + 200: { + headers: { + [name: string]: unknown; + }; + content: { + "application/json": components["schemas"]["UserInfo"] | null; + }; + }; + }; + }; + v1_zulip_get_streams: { + parameters: { + query?: never; + header?: never; + path?: never; + cookie?: never; + }; + requestBody?: never; + responses: { + /** @description Successful Response */ + 200: { + headers: { + [name: string]: unknown; + }; + content: { + "application/json": components["schemas"]["Stream"][]; + }; + }; + }; + }; + v1_zulip_get_topics: { + parameters: { + query?: never; + header?: never; + path: { + stream_id: number; + }; + cookie?: never; + }; + requestBody?: never; + responses: { + /** @description Successful Response */ + 200: { + headers: { + [name: string]: unknown; + }; + content: { + "application/json": components["schemas"]["Topic"][]; + }; + }; + /** @description Validation Error */ + 422: { + headers: { + [name: string]: unknown; + }; + content: { + "application/json": components["schemas"]["HTTPValidationError"]; + }; + }; + }; + }; + v1_whereby_webhook: { + parameters: { + query?: never; + header?: never; + path?: never; + cookie?: never; + }; + requestBody: { + content: { + "application/json": components["schemas"]["WherebyWebhookEvent"]; + }; + }; + responses: { + /** @description Successful Response */ + 200: { + headers: { + [name: string]: unknown; + }; + content: { + "application/json": unknown; + }; + }; + /** @description Validation Error */ + 422: { + headers: { + [name: string]: unknown; + }; + content: { + "application/json": components["schemas"]["HTTPValidationError"]; + }; + }; }; - }; }; - }; }