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
4 changes: 2 additions & 2 deletions content/docs/api-v2/reference/bots/createBot.mdx
Original file line number Diff line number Diff line change
Expand Up @@ -166,7 +166,7 @@ _openapi:
participants when first joining the meeting, and finally switches to
silence_timeout monitoring once participants are detected. Zoom only
uses waiting_room_timeout. Optional max_recording_duration sets a hard
cap on total recording time (up to 6 hours).
cap on total recording time (up to 12 hours).
- content: >-
timeout_config.grace_period: The grace period in seconds at the start
of the meeting during which no timeout conditions (waiting room, no
Expand All @@ -183,7 +183,7 @@ _openapi:
When null, the default 4-hour internal timeout applies.


Range: 7200–21600 seconds (2–6 hours)
Range: 7200–43200 seconds (2–12 hours)
- content: >-
timeout_config.no_one_joined_timeout: The timeout in seconds for the
bot to wait for participants to join before leaving the meeting.
Expand Down
4 changes: 2 additions & 2 deletions content/docs/api-v2/reference/bots/createScheduledBot.mdx
Original file line number Diff line number Diff line change
Expand Up @@ -165,7 +165,7 @@ _openapi:
participants when first joining the meeting, and finally switches to
silence_timeout monitoring once participants are detected. Zoom only
uses waiting_room_timeout. Optional max_recording_duration sets a hard
cap on total recording time (up to 6 hours).
cap on total recording time (up to 12 hours).
- content: >-
timeout_config.grace_period: The grace period in seconds at the start
of the meeting during which no timeout conditions (waiting room, no
Expand All @@ -182,7 +182,7 @@ _openapi:
When null, the default 4-hour internal timeout applies.


Range: 7200–21600 seconds (2–6 hours)
Range: 7200–43200 seconds (2–12 hours)
- content: >-
timeout_config.no_one_joined_timeout: The timeout in seconds for the
bot to wait for participants to join before leaving the meeting.
Expand Down
4 changes: 2 additions & 2 deletions content/docs/api-v2/reference/bots/updateScheduledBot.mdx
Original file line number Diff line number Diff line change
Expand Up @@ -176,7 +176,7 @@ _openapi:
participants when first joining the meeting, and finally switches to
silence_timeout monitoring once participants are detected. Zoom only
uses waiting_room_timeout. Optional max_recording_duration sets a hard
cap on total recording time (up to 6 hours).
cap on total recording time (up to 12 hours).
- content: >-
timeout_config.grace_period: The grace period in seconds at the start
of the meeting during which no timeout conditions (waiting room, no
Expand All @@ -193,7 +193,7 @@ _openapi:
When null, the default 4-hour internal timeout applies.


Range: 7200–21600 seconds (2–6 hours)
Range: 7200–43200 seconds (2–12 hours)
- content: >-
timeout_config.no_one_joined_timeout: The timeout in seconds for the
bot to wait for participants to join before leaving the meeting.
Expand Down
4 changes: 2 additions & 2 deletions content/docs/api-v2/reference/calendars/createCalendarBot.mdx
Original file line number Diff line number Diff line change
Expand Up @@ -145,7 +145,7 @@ _openapi:
participants when first joining the meeting, and finally switches to
silence_timeout monitoring once participants are detected. Zoom only
uses waiting_room_timeout. Optional max_recording_duration sets a hard
cap on total recording time (up to 6 hours).
cap on total recording time (up to 12 hours).
- content: >-
timeout_config.grace_period: The grace period in seconds at the start
of the meeting during which no timeout conditions (waiting room, no
Expand All @@ -162,7 +162,7 @@ _openapi:
When null, the default 4-hour internal timeout applies.


Range: 7200–21600 seconds (2–6 hours)
Range: 7200–43200 seconds (2–12 hours)
- content: >-
timeout_config.no_one_joined_timeout: The timeout in seconds for the
bot to wait for participants to join before leaving the meeting.
Expand Down
4 changes: 2 additions & 2 deletions content/docs/api-v2/reference/calendars/updateCalendarBot.mdx
Original file line number Diff line number Diff line change
Expand Up @@ -257,7 +257,7 @@ _openapi:
participants when first joining the meeting, and finally switches to
silence_timeout monitoring once participants are detected. Zoom only
uses waiting_room_timeout. Optional max_recording_duration sets a hard
cap on total recording time (up to 6 hours).
cap on total recording time (up to 12 hours).
- content: >-
timeout_config.grace_period: The grace period in seconds at the start
of the meeting during which no timeout conditions (waiting room, no
Expand All @@ -274,7 +274,7 @@ _openapi:
When null, the default 4-hour internal timeout applies.


Range: 7200–21600 seconds (2–6 hours)
Range: 7200–43200 seconds (2–12 hours)
- content: >-
timeout_config.no_one_joined_timeout: The timeout in seconds for the
bot to wait for participants to join before leaving the meeting.
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -24,11 +24,10 @@ _openapi:

**After creation, you must:**
1. Upload the returned `cert_pem` to Google Admin Console → Security → Set up SSO with third-party IdP → Legacy SSO profile.
2. Set Sign-in URL to `https://api.meetingbaas.com/v2/meet-sso/sign-in` and Sign-out URL to `https://api.meetingbaas.com/v2/meet-sso/sign-out` in the same SSO profile. Enable "Use a domain-specific issuer". Do not assign the profile yet.
3. Create one or more Workspace users that bots will sign in as. Sign in to each new account in a browser and complete the "Welcome to Workspace" first-run flow before the SSO profile is assigned to it — once SSO applies, the account password stops working and this flow can no longer be completed. Set language to "English (United States)".
4. Assign the SSO profile to the bot group or organizational unit only (never to all users), now that each bot account has completed its welcome flow.
5. Add `meet_logins` (one per Workspace user) referencing this `workspace_id`.
6. Optionally call `POST /v2/meet-workspaces/:workspace_id/verify` to run pre-flight checks.
2. Set Sign-in URL to `https://api.meetingbaas.com/v2/meet-sso/sign-in` and Sign-out URL to `https://api.meetingbaas.com/v2/meet-sso/sign-out` in the same SSO profile. Enable "Use a domain-specific issuer" and assign the SSO profile to all users.
3. Create one or more Workspace users that bots will sign in as, complete the "Welcome to Workspace" interactive login for each, and set language to "English (United States)".
4. Add `meet_logins` (one per Workspace user) referencing this `workspace_id`.
5. Optionally call `POST /v2/meet-workspaces/:workspace_id/verify` to run pre-flight checks.

**Security:** The cert and key are encrypted at rest using AES-256-GCM. `private_key_pem` is never echoed in any response — including subsequent GETs. If you need it back, you must rotate via PATCH.

Expand Down Expand Up @@ -115,11 +114,10 @@ Create a meet workspace — the parent resource that holds your SAML cert + priv

**After creation, you must:**
1. Upload the returned `cert_pem` to Google Admin Console → Security → Set up SSO with third-party IdP → Legacy SSO profile.
2. Set Sign-in URL to `https://api.meetingbaas.com/v2/meet-sso/sign-in` and Sign-out URL to `https://api.meetingbaas.com/v2/meet-sso/sign-out` in the same SSO profile. Enable "Use a domain-specific issuer". Do not assign the profile yet.
3. Create one or more Workspace users that bots will sign in as. Sign in to each new account in a browser and complete the "Welcome to Workspace" first-run flow before the SSO profile is assigned to it — once SSO applies, the account password stops working and this flow can no longer be completed. Set language to "English (United States)".
4. Assign the SSO profile to the bot group or organizational unit only (never to all users), now that each bot account has completed its welcome flow.
5. Add `meet_logins` (one per Workspace user) referencing this `workspace_id`.
6. Optionally call `POST /v2/meet-workspaces/:workspace_id/verify` to run pre-flight checks.
2. Set Sign-in URL to `https://api.meetingbaas.com/v2/meet-sso/sign-in` and Sign-out URL to `https://api.meetingbaas.com/v2/meet-sso/sign-out` in the same SSO profile. Enable "Use a domain-specific issuer" and assign the SSO profile to all users.
3. Create one or more Workspace users that bots will sign in as, complete the "Welcome to Workspace" interactive login for each, and set language to "English (United States)".
4. Add `meet_logins` (one per Workspace user) referencing this `workspace_id`.
5. Optionally call `POST /v2/meet-workspaces/:workspace_id/verify` to run pre-flight checks.

**Security:** The cert and key are encrypted at rest using AES-256-GCM. `private_key_pem` is never echoed in any response — including subsequent GETs. If you need it back, you must rotate via PATCH.

Expand Down
60 changes: 60 additions & 0 deletions content/docs/api-v2/reference/sub-accounts/createSubAccount.mdx
Original file line number Diff line number Diff line change
@@ -0,0 +1,60 @@
---
title: Create a sub-account
full: true
_openapi:
method: POST
toc: []
structuredData:
headings: []
contents:
- content: >-
Creates a sub-account under your master account and returns its API
key. The key is shown once: store it server-side, keyed to your
customer.
- content: >-
external_id: Your own identifier for this customer, returned as-is on
reads
- content: name
- content: data
- content: 'data.api_key: Shown once; store it now, it cannot be retrieved later'
- content: data.external_id
- content: data.name
- content: data.sub_account_id
- content: success
- content: 'code: Error code for programmatic handling'
- content: 'error: Error name'
- content: 'message: Human-readable error message'
- content: 'statusCode: HTTP status code'
- content: success
- content: 'code: Error code for programmatic handling'
- content: 'details: Additional error details (string or null)'
- content: 'error: Human-readable error message'
- content: 'message: Human-readable error message'
- content: 'statusCode: HTTP status code'
- content: success
- content: 'code: Error code for programmatic handling'
- content: 'details: Additional error details (string or null)'
- content: 'error: Human-readable error message'
- content: 'message: Human-readable error message'
- content: 'statusCode: HTTP status code'
- content: success
- content: 'code: Error code for programmatic handling'
- content: 'details: Additional error details (string or null)'
- content: 'error: Human-readable error message'
- content: 'message: Human-readable error message'
- content: 'retryAfter: Number of seconds to wait before retrying'
- content: 'statusCode: HTTP status code'
- content: success
- content: 'code: Error code for programmatic handling'
- content: 'details: Additional error details (string or null)'
- content: 'error: Human-readable error message'
- content: 'message: Human-readable error message'
- content: 'statusCode: HTTP status code'
- content: success
---

{/* This file was generated by Fumadocs. Do not edit this file directly. Any changes should be made by running the generation command again. */}

Creates a sub-account under your master account and returns its API key. The key is shown once: store it server-side, keyed to your customer.

<APIPage document={"./openapi-v2.json"} operations={[{"path":"/v2/sub_accounts","method":"post"}]} />
53 changes: 53 additions & 0 deletions content/docs/api-v2/reference/sub-accounts/deleteSubAccount.mdx
Original file line number Diff line number Diff line change
@@ -0,0 +1,53 @@
---
title: Delete a sub-account
full: true
_openapi:
method: DELETE
toc: []
structuredData:
headings: []
contents:
- content: >-
Soft-deletes the sub-account and disables its API keys. Recorded data
follows the normal retention policy.
- content: data
- content: data.deleted
- content: data.sub_account_id
- content: success
- content: 'code: Error code for programmatic handling'
- content: 'error: Error name'
- content: 'message: Human-readable error message'
- content: 'statusCode: HTTP status code'
- content: success
- content: 'code: Error code for programmatic handling'
- content: 'details: Additional error details (string or null)'
- content: 'error: Human-readable error message'
- content: 'message: Human-readable error message'
- content: 'statusCode: HTTP status code'
- content: success
- content: 'code: Error code for programmatic handling'
- content: 'details: Additional error details (string or null)'
- content: 'error: Human-readable error message'
- content: 'message: Human-readable error message'
- content: 'statusCode: HTTP status code'
- content: success
- content: 'code: Error code for programmatic handling'
- content: 'details: Additional error details (string or null)'
- content: 'error: Human-readable error message'
- content: 'message: Human-readable error message'
- content: 'retryAfter: Number of seconds to wait before retrying'
- content: 'statusCode: HTTP status code'
- content: success
- content: 'code: Error code for programmatic handling'
- content: 'details: Additional error details (string or null)'
- content: 'error: Human-readable error message'
- content: 'message: Human-readable error message'
- content: 'statusCode: HTTP status code'
- content: success
---

{/* This file was generated by Fumadocs. Do not edit this file directly. Any changes should be made by running the generation command again. */}

Soft-deletes the sub-account and disables its API keys. Recorded data follows the normal retention policy.

<APIPage document={"./openapi-v2.json"} operations={[{"path":"/v2/sub_accounts/{sub_account_id}","method":"delete"}]} />
Original file line number Diff line number Diff line change
@@ -0,0 +1,54 @@
---
title: Remove a sub-account's webhook endpoint
full: true
_openapi:
method: DELETE
toc: []
structuredData:
headings: []
contents:
- content: data
- content: data.deleted
- content: data.sub_account_id
- content: success
- content: 'code: Error code for programmatic handling'
- content: 'error: Error name'
- content: 'message: Human-readable error message'
- content: 'statusCode: HTTP status code'
- content: success
- content: 'code: Error code for programmatic handling'
- content: 'details: Additional error details (string or null)'
- content: 'error: Human-readable error message'
- content: 'message: Human-readable error message'
- content: 'statusCode: HTTP status code'
- content: success
- content: 'code: Error code for programmatic handling'
- content: 'details: Additional error details (string or null)'
- content: 'error: Human-readable error message'
- content: 'message: Human-readable error message'
- content: 'statusCode: HTTP status code'
- content: success
- content: 'code: Error code for programmatic handling'
- content: 'details: Additional error details (string or null)'
- content: 'error: Human-readable error message'
- content: 'message: Human-readable error message'
- content: 'retryAfter: Number of seconds to wait before retrying'
- content: 'statusCode: HTTP status code'
- content: success
- content: 'code: Error code for programmatic handling'
- content: 'details: Additional error details (string or null)'
- content: 'error: Human-readable error message'
- content: 'message: Human-readable error message'
- content: 'statusCode: HTTP status code'
- content: success
- content: 'code: Error code for programmatic handling'
- content: 'details: Additional error details (string or null)'
- content: 'error: Human-readable error message'
- content: 'message: Human-readable error message'
- content: 'statusCode: HTTP status code'
- content: success
---

{/* This file was generated by Fumadocs. Do not edit this file directly. Any changes should be made by running the generation command again. */}

<APIPage document={"./openapi-v2.json"} operations={[{"path":"/v2/sub_accounts/{sub_account_id}/webhook","method":"delete"}]} />
53 changes: 53 additions & 0 deletions content/docs/api-v2/reference/sub-accounts/getSubAccount.mdx
Original file line number Diff line number Diff line change
@@ -0,0 +1,53 @@
---
title: Get a sub-account
full: true
_openapi:
method: GET
toc: []
structuredData:
headings: []
contents:
- content: data
- content: data.calendar_integrations_limit
- content: data.created_at
- content: data.daily_bot_cap
- content: data.external_id
- content: data.name
- content: data.status
- content: data.sub_account_id
- content: success
- content: 'code: Error code for programmatic handling'
- content: 'error: Error name'
- content: 'message: Human-readable error message'
- content: 'statusCode: HTTP status code'
- content: success
- content: 'code: Error code for programmatic handling'
- content: 'details: Additional error details (string or null)'
- content: 'error: Human-readable error message'
- content: 'message: Human-readable error message'
- content: 'statusCode: HTTP status code'
- content: success
- content: 'code: Error code for programmatic handling'
- content: 'details: Additional error details (string or null)'
- content: 'error: Human-readable error message'
- content: 'message: Human-readable error message'
- content: 'statusCode: HTTP status code'
- content: success
- content: 'code: Error code for programmatic handling'
- content: 'details: Additional error details (string or null)'
- content: 'error: Human-readable error message'
- content: 'message: Human-readable error message'
- content: 'retryAfter: Number of seconds to wait before retrying'
- content: 'statusCode: HTTP status code'
- content: success
- content: 'code: Error code for programmatic handling'
- content: 'details: Additional error details (string or null)'
- content: 'error: Human-readable error message'
- content: 'message: Human-readable error message'
- content: 'statusCode: HTTP status code'
- content: success
---

{/* This file was generated by Fumadocs. Do not edit this file directly. Any changes should be made by running the generation command again. */}

<APIPage document={"./openapi-v2.json"} operations={[{"path":"/v2/sub_accounts/{sub_account_id}","method":"get"}]} />
Loading