Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Original file line number Diff line number Diff line change
Expand Up @@ -50,8 +50,8 @@ _openapi:
}
],
\"speakers\": [
\"John Doe\",
\"Jane Smith\"
\"Jane Smith\",
\"John Doe\"
],
\"mp4\": \"https://storage.example.com/recordings/video123.mp4?token=abc\",
\"audio\": \"https://storage.example.com/recordings/audio123.wav?token=abc\",
Expand Down Expand Up @@ -236,8 +236,8 @@ Sent when a bot successfully completes recording a meeting.
}
],
\"speakers\": [
\"John Doe\",
\"Jane Smith\"
\"Jane Smith\",
\"John Doe\"
],
\"mp4\": \"https://storage.example.com/recordings/video123.mp4?token=abc\",
\"audio\": \"https://storage.example.com/recordings/audio123.wav?token=abc\",
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,6 @@ title: Create Zoom OAuth Connection
full: true
_openapi:
method: POST
route: /zoom_oauth_connections/
toc: []
structuredData:
headings: []
Expand All @@ -24,4 +23,4 @@ _openapi:

Exchanges a Zoom OAuth authorization code for access and refresh tokens, retrieves the Zoom user's profile, and stores the connection for managed OBF token generation. The authorization code is obtained by directing a Zoom user through the OAuth consent flow for your Zoom OAuth app. Once stored, you can reference this connection's `zoom_user_id` as the `zoom_obf_token_user_id` parameter when creating a bot, and the system will automatically fetch a fresh OBF token at join time. Note: the authorization code is single-use and expires in approximately 10 minutes.

<APIPage document={"./openapi.json"} operations={[{"path":"/zoom_oauth_connections/","method":"post"}]} webhooks={[]} hasHead={false} />
<APIPage document={"./openapi.json"} operations={[{"path":"/zoom_oauth_connections/","method":"post"}]} />
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,6 @@ title: Delete Zoom OAuth Connection
full: true
_openapi:
method: DELETE
route: /zoom_oauth_connections/{uuid}
toc: []
structuredData:
headings: []
Expand All @@ -20,4 +19,4 @@ _openapi:

Permanently deletes a Zoom OAuth connection by its UUID, removing all stored tokens. After deletion, bots using this connection's `zoom_user_id` as `zoom_obf_token_user_id` will no longer be able to automatically fetch OBF tokens. The Zoom user would need to re-authorize to create a new connection.

<APIPage document={"./openapi.json"} operations={[{"path":"/zoom_oauth_connections/{uuid}","method":"delete"}]} webhooks={[]} hasHead={false} />
<APIPage document={"./openapi.json"} operations={[{"path":"/zoom_oauth_connections/{uuid}","method":"delete"}]} />
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,6 @@ title: Get Zoom OAuth Connection
full: true
_openapi:
method: GET
route: /zoom_oauth_connections/{uuid}
toc: []
structuredData:
headings: []
Expand All @@ -19,4 +18,4 @@ _openapi:

Retrieves a specific Zoom OAuth connection by its UUID. Returns the connection details including the Zoom user ID, account ID, connection state, and granted scopes. Sensitive token data is never included in the response.

<APIPage document={"./openapi.json"} operations={[{"path":"/zoom_oauth_connections/{uuid}","method":"get"}]} webhooks={[]} hasHead={false} />
<APIPage document={"./openapi.json"} operations={[{"path":"/zoom_oauth_connections/{uuid}","method":"get"}]} />
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,6 @@ title: List Zoom OAuth Connections
full: true
_openapi:
method: GET
route: /zoom_oauth_connections/
toc: []
structuredData:
headings: []
Expand All @@ -20,4 +19,4 @@ _openapi:

Retrieves all Zoom OAuth connections associated with the authenticated account. Each connection represents a Zoom user who has authorized your app via OAuth. Use this to display connected users or to find the `zoom_user_id` needed for the `zoom_obf_token_user_id` bot parameter. Sensitive token data is never included in the response.

<APIPage document={"./openapi.json"} operations={[{"path":"/zoom_oauth_connections/","method":"get"}]} webhooks={[]} hasHead={false} />
<APIPage document={"./openapi.json"} operations={[{"path":"/zoom_oauth_connections/","method":"get"}]} />
24 changes: 12 additions & 12 deletions openapi.json
Original file line number Diff line number Diff line change
Expand Up @@ -1276,7 +1276,7 @@
"null"
],
"format": "uint32",
"minimum": 0
"minimum": 0.0
},
"silence_timeout": {
"description": "The timeout in seconds for the bot to leave the meeting if no speaker activity is detected, defaults to 600 seconds (10 minutes). Minimum: 300 seconds (5 minutes). Maximum: 1800 seconds (30 minutes). This timeout becomes active after participants are detected. The bot monitors for audio activity, and if no sound is detected for the duration of this timeout, it will automatically leave the meeting. Important: Configure these timeouts carefully to ensure the bot doesn't leave too early - the noone_joined_timeout should be long enough to wait for late joiners, and the silence_timeout should account for intentional pauses. Applies to Google Meet and Microsoft Teams only.",
Expand All @@ -1285,7 +1285,7 @@
"null"
],
"format": "uint32",
"minimum": 0
"minimum": 0.0
},
"waiting_room_timeout": {
"description": "The timeout in seconds for the bot to wait in the waiting room before leaving the meeting, defaults to 600 seconds (10 minutes). Minimum: 120 seconds (2 minutes). Maximum: 1800 seconds (30 minutes). Note: Google Meet also has it's own waiting room timeout (about ~10 minutes). Setting a higher value for such meetings would have no effect because Google Meet will deny entry to the bot after its own timeout.",
Expand All @@ -1294,7 +1294,7 @@
"null"
],
"format": "uint32",
"minimum": 0
"minimum": 0.0
}
}
},
Expand Down Expand Up @@ -2568,20 +2568,20 @@
"bot_exited_at": {
"type": "integer",
"format": "uint64",
"minimum": 0
"minimum": 0.0
},
"bot_joined_at": {
"type": "integer",
"format": "uint64",
"minimum": 0
"minimum": 0.0
},
"diarization_fail_count": {
"type": [
"integer",
"null"
],
"format": "uint",
"minimum": 0
"minimum": 0.0
},
"diarization_v2": {
"type": "boolean"
Expand All @@ -2594,7 +2594,7 @@
"null"
],
"format": "uint64",
"minimum": 0
"minimum": 0.0
},
"files_generated": {
"anyOf": [
Expand All @@ -2612,7 +2612,7 @@
"null"
],
"format": "uint",
"minimum": 0
"minimum": 0.0
}
}
},
Expand Down Expand Up @@ -2730,7 +2730,7 @@
"null"
],
"format": "uint64",
"minimum": 0
"minimum": 0.0
},
"error_code": {
"default": null,
Expand Down Expand Up @@ -3135,7 +3135,7 @@
"null"
],
"format": "uint64",
"minimum": 0
"minimum": 0.0
},
"streaming": {
"description": "WebSocket streams for 16 kHz audio. Input stream receives audio sent to the bot. Output stream receives audio from the bot.",
Expand Down Expand Up @@ -4196,12 +4196,12 @@
"nanos_since_epoch": {
"type": "integer",
"format": "uint32",
"minimum": 0
"minimum": 0.0
},
"secs_since_epoch": {
"type": "integer",
"format": "uint64",
"minimum": 0
"minimum": 0.0
}
}
},
Expand Down