Requires Admin or Owner and the same Agent Builder user and workspace that started the connection. This is an authenticated application endpoint, not a public provider webhook. The Agent Builder callback page normally calls it after the browser returns from Calendly.Send the returned state and authorization code. If Calendly denied authorization, send its error instead. Values in generated examples are placeholders; only a result from the pending authorization attempt can succeed. Do not log authorization codes or state.State is single-use and is consumed before token exchange. Invalid, expired, cancelled, or wrong-user/workspace attempts return 400. Replaced attempts or authorization requiring reconnection can return 409; provider failures can return 502. After a failed exchange, start a new connection rather than replaying the callback.Success returns the connection status. Inspect state: HTTP 200 can contain discovery-failed or reconnect-required. A connected result includes the discovered tool catalog; agents must still select the linked tools. Connecting a different Calendly account disables the old tool link instead of giving existing agent selections access to the new account.
Bandwidth Labs OAuth access token. Uses the user's selected workspace; the workspace header is not required. Do not also send an API key. Bearer-only operations may additionally require the Labs super_user role.
Required with X-BW-LABS-AGENTS-API-KEY: the positive local workspace ID to access. The key owner must be a current member. Missing or invalid IDs return 400; non-member workspaces return 403. Not required for bearer authentication, which uses the user's selected workspace.
Cached provider tool catalog. Use only while state is connected; discovery is not permission to execute every tool.
Show child attributes
{"docsConfig":{"theme":"mint","$schema":"https://mintlify.com/docs.json","name":"Bandwidth Agent Builder","colors":{"primary":"#005EB8","light":"#0099D6","dark":"#005EB8"},"logo":{"light":"https://mintcdn.com/harmonair/JkEwLaC7cZDc9A3-/logo/light.svg?fit=max\u0026auto=format\u0026n=JkEwLaC7cZDc9A3-\u0026q=85\u0026s=6636082101afd784cb46a6fba1624fc7","dark":"https://mintcdn.com/harmonair/JkEwLaC7cZDc9A3-/logo/dark.svg?fit=max\u0026auto=format\u0026n=JkEwLaC7cZDc9A3-\u0026q=85\u0026s=8bab76a8ee0963c0a9a7890055ce3900","href":"/getting-started/index"},"favicon":"https://mintcdn.com/harmonair/JkEwLaC7cZDc9A3-/favicon.png?fit=max\u0026auto=format\u0026n=JkEwLaC7cZDc9A3-\u0026q=85\u0026s=a7cd5945297fa4480145aa817887ba88","api":{"openapi":"api-reference/openapi.json","examples":{"defaults":"all","languages":["curl","python","javascript"]}},"navbar":{"links":[{"href":"https://labs.bandwidth.com/","label":"Bandwidth Labs"}],"primary":{"type":"button","label":"Open console","href":"https://agents.labs.bandwidth.com"}},"footer":{"socials":{"linkedin":"https://www.linkedin.com/company/bandwidth-inc"}},"search":{"prompt":"Search guides, API endpoints, and MCP tools"},"contextual":{"options":["copy","view"],"display":"header"},"styling":{"latex":false},"navigation":{"pages":[]}},"deployment":{"deploymentMetadataValue":{"subdomain":"harmonair","hasAudioNarration":false,"actualSubdomain":"harmonair","customDomains":["docs.agents.labs.bandwidth.com"],"gitSource":{"type":"github","owner":"bandwidth","repo":"innovation-studio-voai-docs","deployBranch":"main","contentDirectory":"","isPrivate":true,"mountPath":"","label":""},"chroma":{"latestBuiltDeploymentHistoryId":"6ae7aec9b26903148c75c820","collectionId":"5b33fd57-cc8f-489a-b9bd-7cf5307390b0","liveDeploymentHistoryId":"6ae7aec9b26903148c75c820","schemaVersion":"v3"},"entitlements":{"AI_CHAT":{"status":"DISABLED"},"WEB_MCP":{"status":"DISABLED"},"NARRATION":{"status":"DISABLED"}},"buildId":"6ae7aec9b26903148c75c820","clientVersion":"0.0.4074","searchFilterCounts":[{"language":"default","tag":"API Reference","count":169},{"language":"default","tag":"User guides","count":45},{"language":"default","tag":"MCP","count":35},{"language":"default","tag":"Agents","count":34},{"language":"default","tag":"Build and test agents","count":20},{"language":"default","tag":"Get started","count":16},{"language":"default","tag":"Campaigns","count":15},{"language":"default","tag":"Telephony Configurations","count":15},{"language":"default","tag":"Tools","count":15},{"language":"default","tag":"Reports","count":13}]},"assistantConfig":{"enableAskAiButton":false,"enableStarterQuestions":false,"enableContextualStarterQuestions":false,"enableAskAiSearchBar":true},"basePath":"","hasChatPermissions":false,"hasWebMcpPermissions":false,"toggles":[{"name":"kill-isr","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"agent-mintlify-slack","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"agent-integrations-settings","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"rbac-expansion","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"automations-pr-grouping","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"custom-prefix","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"analytics-v7","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"user-flows-analytics","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"no-publish-flow","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"workos-onboarding","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"llms-txt-v2","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"snapshot-serving-live","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"stripTemperatureMiddleware","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"support-platform-pylon-zendesk","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"snapshot-serving","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"instant-rollback","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"granular-notifications-server","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"granular-notifications","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"automations-fable","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"fixed-ai-action-pricing","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"automation-resolve-merge-conflict","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"scoped-publishing","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"mintql","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"page-level-analytics","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"editor-version-history-v2","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"billing-page-v2","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"full-page-search","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"workspace-projects","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"assistant-v5","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"fork-pr-previews","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"revalidation-jwt","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"vite-origin","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"workos-sso-scim","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"hobby-abuse-scan","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"dashboard-inbox","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"workos-signup","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"turbopuffer-dual-write","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"workos-enabled","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"approve-review-flow","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"sso-setup-deadline-banner","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"turbopuffer-serve","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"live-agents","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"comment-mode","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false}],"googleFontsInlined":false},"customCss":[],"page":{"pagePath":"api-reference/calendly/callback","slug":"/api-reference/calendly/callback","pageMetadata":{"title":"Complete Calendly authorization","description":"Exchange a pending authorization result and discover workspace Calendly tools.","openapi":"POST /api/v1/integrations/calendly/callback","href":"/api-reference/calendly/callback"},"description":{"compiledSource":"\"use strict\";\nconst {jsx: _jsx} = arguments[0];\nconst {useMDXComponents: _provideComponents} = arguments[0];\nfunction _createMdxContent(props) {\n const _components = {\n p: \"p\",\n ..._provideComponents(),\n ...props.components\n };\n return _jsx(_components.p, {\n children: \"Exchange a pending authorization result and discover workspace Calendly tools.\"\n });\n}\nfunction MDXContent(props = {}) {\n const {wrapper: MDXLayout} = {\n ..._provideComponents(),\n ...props.components\n };\n return MDXLayout ? _jsx(MDXLayout, {\n ...props,\n children: _jsx(_createMdxContent, {\n ...props\n })\n }) : _createMdxContent(props);\n}\nreturn {\n default: MDXContent\n};\n","frontmatter":{},"scope":{}},"pageType":"default","mdx":{"mdxSource":{"compiledSource":"\"use strict\";const{Fragment:_Fragment,jsx:_jsx,jsxs:_jsxs}=arguments[0];const{useMDXComponents:_provideComponents}=arguments[0];function _createMdxContent(props){const _components={a:`a`,code:`code`,p:`p`,..._provideComponents(),...props.components};return _jsxs(_Fragment,{children:[_jsxs(_components.p,{children:[`Requires Admin or Owner and the same Agent Builder user and workspace that started `,_jsx(_components.a,{href:`/api-reference/calendly/connect`,children:`the connection`}),`. This is an authenticated application endpoint, not a public provider webhook. The Agent Builder callback page normally calls it after the browser returns from Calendly.`]}),`\n`,_jsxs(_components.p,{children:[`Send the returned `,_jsx(_components.code,{children:`state`}),` and authorization `,_jsx(_components.code,{children:`code`}),`. If Calendly denied authorization, send its `,_jsx(_components.code,{children:`error`}),` instead. Values in generated examples are placeholders; only a result from the pending authorization attempt can succeed. Do not log authorization codes or state.`]}),`\n`,_jsxs(_components.p,{children:[`State is single-use and is consumed before token exchange. Invalid, expired, cancelled, or wrong-user/workspace attempts return `,_jsx(_components.code,{children:`400`}),`. Replaced attempts or authorization requiring reconnection can return `,_jsx(_components.code,{children:`409`}),`; provider failures can return `,_jsx(_components.code,{children:`502`}),`. After a failed exchange, start a new connection rather than replaying the callback.`]}),`\n`,_jsxs(_components.p,{children:[`Success returns the `,_jsx(_components.a,{href:`/api-reference/calendly/status`,children:`connection status`}),`. Inspect `,_jsx(_components.code,{children:`state`}),`: HTTP `,_jsx(_components.code,{children:`200`}),` can contain `,_jsx(_components.code,{children:`discovery-failed`}),` or `,_jsx(_components.code,{children:`reconnect-required`}),`. A connected result includes the discovered tool catalog; agents must still select the linked tools. Connecting a different Calendly account disables the old tool link instead of giving existing agent selections access to the new account.`]})]})}function MDXContent(props={}){const{wrapper:MDXLayout}={..._provideComponents(),...props.components};return MDXLayout?_jsx(MDXLayout,{...props,children:_jsx(_createMdxContent,{...props})}):_createMdxContent(props)}return{default:MDXContent}","frontmatter":{},"scope":{"config":{},"pageMetadata":{"title":"Complete Calendly authorization","description":"Exchange a pending authorization result and discover workspace Calendly tools.","openapi":"POST /api/v1/integrations/calendly/callback","href":"/api-reference/calendly/callback"}}},"mdxSourceWithNoJs":null},"mdxExtracts":{"tableOfContents":[],"codeExamples":{}},"jsLinks":[],"openApiReferenceData":{"operation":{"description":"Exchange a pending authorization result and discover workspace Calendly tools.","operationId":"complete_calendly_api_v1_integrations_calendly_callback_post","parameters":["76ad624f-072d-4b82-838b-c19e1886cce5"],"requestBody":"bdf8cb5c-9d6b-4e89-b43d-3f7cc97e341f","responses":{"200":"34e9f26f-96a7-457b-9799-44010365b961","400":"c60da205-81b1-413e-b71e-51229be2ec4f","401":"3c608c81-350f-462d-90a5-8437e8274a18","403":"d141ee5f-4bee-4390-a7b7-32e01f2ebd69","404":"a4744c36-5419-456d-bbc5-6ebb987b2739","409":"19c5b63c-863e-4a6d-9f33-49292e215bff","422":"a36ba4f8-3d31-42c8-9a6a-c787c35ea4b0","502":"db0870ad-49b6-4035-a9cf-bc0a0ece58e2"},"security":["c71dda12-5304-4d9c-b568-eefc9c8d27d8","734f6872-8c62-41a6-b238-80e5f77edd1c"],"summary":"Complete Calendly authorization","tags":["calendly"],"method":"post","type":"path","servers":["864d1b67-b892-495f-83bc-cd0d89836ea3"],"path":"/api/v1/integrations/calendly/callback","baseUrlOptions":["https://agents.labs.bandwidth.com"],"title":"Complete Calendly authorization","codeSamples":[],"requestExampleLanguages":["bash","python","javascript"],"requiredOnlyExamples":false,"requestExampleType":"generated","responseExampleType":"generated"},"dependencies":{"parameters":{"76ad624f-072d-4b82-838b-c19e1886cce5":{"description":"Required with X-BW-LABS-AGENTS-API-KEY: the positive local workspace ID to access. The key owner must be a current member. Missing or invalid IDs return 400; non-member workspaces return 403. Not required for bearer authentication, which uses the user's selected workspace.","in":"header","name":"X-VOAI-ORGANIZATION-ID","required":false,"schema":{"oneOf":[{"type":"string","title":"X-Voai-Organization-Id","description":"Required with X-BW-LABS-AGENTS-API-KEY: the positive local workspace ID to access. The key owner must be a current member. Missing or invalid IDs return 400; non-member workspaces return 403. Not required for bearer authentication, which uses the user's selected workspace.","uniqueKey":"oneOf.0","typeLabel":"string"},{"type":"null","title":"X-Voai-Organization-Id","description":"Required with X-BW-LABS-AGENTS-API-KEY: the positive local workspace ID to access. The key owner must be a current member. Missing or invalid IDs return 400; non-member workspaces return 403. Not required for bearer authentication, which uses the user's selected workspace.","uniqueKey":"oneOf.1","typeLabel":"null"}],"isRequired":false,"uniqueKey":"","typeLabel":"string | null"}}},"requestBody":{"content":{"application/json":{"schema":{"properties":{"state":{"maxLength":256,"minLength":1,"title":"State","type":"string","description":"Single-use state returned by the pending authorization attempt for this user and workspace.","isRequired":true,"uniqueKey":"state","typeLabel":"string"},"code":{"oneOf":[{"type":"string","title":"Code","description":"Authorization code returned by Calendly after consent; omit when sending an authorization error.","maxLength":4096,"uniqueKey":"code.oneOf.0","typeLabel":"string"},{"type":"null","title":"Code","description":"Authorization code returned by Calendly after consent; omit when sending an authorization error.","uniqueKey":"code.oneOf.1","typeLabel":"null"}],"uniqueKey":"code","typeLabel":"string | null"},"error":{"oneOf":[{"type":"string","title":"Error","description":"Provider authorization error, such as access_denied, when consent did not complete.","maxLength":256,"uniqueKey":"error.oneOf.0","typeLabel":"string"},{"type":"null","title":"Error","description":"Provider authorization error, such as access_denied, when consent did not complete.","uniqueKey":"error.oneOf.1","typeLabel":"null"}],"uniqueKey":"error","typeLabel":"string | null"}},"required":["state"],"title":"CalendlyCallback","type":"object","uniqueKey":"","typeLabel":"CalendlyCallback · object"},"example":{"state":"state-from-your-pending-authorization","code":"code-returned-by-calendly"},"examples":{"Example":{"title":"Example","value":{"state":"state-from-your-pending-authorization","code":"code-returned-by-calendly"}}},"exampleType":"examples"}},"required":true,"exampleType":"examples"},"responses":{"34e9f26f-96a7-457b-9799-44010365b961":{"content":{"application/json":{"schema":{"properties":{"can_manage":{"title":"Can Manage","type":"boolean","description":"Whether the caller is an Admin or Owner who can change this workspace connection.","isRequired":true,"uniqueKey":"can_manage","typeLabel":"boolean"},"state":{"enum":["not-connected","connected","reconnect-required","discovery-failed"],"title":"State","type":"string","description":"Connection readiness. Inspect this field even after HTTP 200; cached tools may remain while the connection is unusable.","isRequired":true,"uniqueKey":"state","typeLabel":"enum\u003cstring>"},"account_name":{"oneOf":[{"type":"string","title":"Account Name","description":"Connected account display name; may remain after disconnect.","uniqueKey":"account_name.oneOf.0","typeLabel":"string"},{"type":"null","title":"Account Name","description":"Connected account display name; may remain after disconnect.","uniqueKey":"account_name.oneOf.1","typeLabel":"null"}],"uniqueKey":"account_name","typeLabel":"string | null"},"integration_id":{"oneOf":[{"type":"string","title":"Integration Id","description":"Workspace integration identifier, or null before a connection record exists.","uniqueKey":"integration_id.oneOf.0","typeLabel":"string"},{"type":"null","title":"Integration Id","description":"Workspace integration identifier, or null before a connection record exists.","uniqueKey":"integration_id.oneOf.1","typeLabel":"null"}],"uniqueKey":"integration_id","typeLabel":"string | null"},"last_synced_at":{"oneOf":[{"type":"number","title":"Last Synced At","description":"Unix timestamp in seconds of the last successful discovery, or null.","uniqueKey":"last_synced_at.oneOf.0","typeLabel":"number"},{"type":"null","title":"Last Synced At","description":"Unix timestamp in seconds of the last successful discovery, or null.","uniqueKey":"last_synced_at.oneOf.1","typeLabel":"null"}],"uniqueKey":"last_synced_at","typeLabel":"number | null"},"tool_uuid":{"oneOf":[{"type":"string","title":"Tool Uuid","description":"Linked managed tool group UUID. Select its tools for agents explicitly.","uniqueKey":"tool_uuid.oneOf.0","typeLabel":"string"},{"type":"null","title":"Tool Uuid","description":"Linked managed tool group UUID. Select its tools for agents explicitly.","uniqueKey":"tool_uuid.oneOf.1","typeLabel":"null"}],"uniqueKey":"tool_uuid","typeLabel":"string | null"},"tools":{"items":{"properties":{"annotations":{"additionalProperties":true,"title":"Annotations","type":"object","description":"Provider behavior hints; these do not grant execution permission.","isRequired":true,"uniqueKey":"tools.items.[INDEX].annotations","typeLabel":"Annotations · object"},"description":{"title":"Description","type":"string","description":"Provider description of the tool.","isRequired":true,"uniqueKey":"tools.items.[INDEX].description","typeLabel":"string"},"input_schema":{"additionalProperties":true,"title":"Input Schema","type":"object","description":"JSON Schema for the provider tool arguments.","isRequired":true,"uniqueKey":"tools.items.[INDEX].input_schema","typeLabel":"Input Schema · object"},"name":{"title":"Name","type":"string","description":"Provider tool name used for agent tool selection.","isRequired":true,"uniqueKey":"tools.items.[INDEX].name","typeLabel":"string"},"title":{"title":"Title","type":"string","description":"Provider display title, falling back to the tool name.","isRequired":true,"uniqueKey":"tools.items.[INDEX].title","typeLabel":"string"}},"required":["name","title","description","input_schema","annotations"],"title":"CalendlyTool","type":"object","uniqueKey":"tools.items.[INDEX]","typeLabel":"CalendlyTool · object"},"title":"Tools","type":"array","description":"Cached provider tool catalog. Use only while state is connected; discovery is not permission to execute every tool.","uniqueKey":"tools","typeLabel":"CalendlyTool · object[]"}},"required":["state","can_manage"],"title":"CalendlyStatus","type":"object","uniqueKey":"","typeLabel":"CalendlyStatus · object"},"examples":{"Example":{"title":"Example","value":{"can_manage":true,"state":"not-connected","account_name":"\u003cstring>","integration_id":"\u003cstring>","last_synced_at":123,"tool_uuid":"\u003cstring>","tools":[{"annotations":{},"description":"\u003cstring>","input_schema":{},"name":"\u003cstring>","title":"\u003cstring>"}]}}},"exampleType":"generated"}},"description":"Successful Response","exampleType":"generated"},"c60da205-81b1-413e-b71e-51229be2ec4f":{"description":"Invalid request or missing/invalid workspace header with an API key.","content":{"_mintlify/placeholder":{"schema":{"type":"object","description":""}}}},"3c608c81-350f-462d-90a5-8437e8274a18":{"description":"Missing, invalid, or expired credential.","content":{"_mintlify/placeholder":{"schema":{"type":"object","description":""}}}},"d141ee5f-4bee-4390-a7b7-32e01f2ebd69":{"description":"The account lacks access to the workspace, resource, or required role.","content":{"_mintlify/placeholder":{"schema":{"type":"object","description":""}}}},"a4744c36-5419-456d-bbc5-6ebb987b2739":{"description":"Not found","content":{"_mintlify/placeholder":{"schema":{"type":"object","description":""}}}},"19c5b63c-863e-4a6d-9f33-49292e215bff":{"description":"Reconnect is required or a newer connection attempt replaced this attempt.","content":{"_mintlify/placeholder":{"schema":{"type":"object","description":""}}}},"a36ba4f8-3d31-42c8-9a6a-c787c35ea4b0":{"content":{"application/json":{"schema":{"properties":{"detail":{"items":{"properties":{"loc":{"items":{"oneOf":[{"type":"string","uniqueKey":"detail.items.[INDEX].loc.items.[INDEX].oneOf.0","typeLabel":"string"},{"type":"integer","uniqueKey":"detail.items.[INDEX].loc.items.[INDEX].oneOf.1","typeLabel":"integer"}],"uniqueKey":"detail.items.[INDEX].loc.items.[INDEX]","typeLabel":"string | integer"},"title":"Location","type":"array","isRequired":true,"uniqueKey":"detail.items.[INDEX].loc","typeLabel":"(string | integer)[]"},"msg":{"title":"Message","type":"string","isRequired":true,"uniqueKey":"detail.items.[INDEX].msg","typeLabel":"string"},"type":{"title":"Error Type","type":"string","isRequired":true,"uniqueKey":"detail.items.[INDEX].type","typeLabel":"string"},"ctx":{"title":"Context","type":"object","uniqueKey":"detail.items.[INDEX].ctx","typeLabel":"Context · object"},"input":{"oneOf":[{"title":"Input"}],"uniqueKey":"detail.items.[INDEX].input","typeLabel":"any"}},"required":["loc","msg","type"],"title":"ValidationError","type":"object","uniqueKey":"detail.items.[INDEX]","typeLabel":"ValidationError · object"},"title":"Detail","type":"array","uniqueKey":"detail","typeLabel":"ValidationError · object[]"}},"title":"HTTPValidationError","type":"object","uniqueKey":"","typeLabel":"HTTPValidationError · object"},"examples":{"Example":{"title":"Example","value":{"detail":[{"loc":["\u003cstring>"],"msg":"\u003cstring>","type":"\u003cstring>","ctx":{},"input":"\u003cunknown>"}]}}},"exampleType":"generated"}},"description":"Validation Error","exampleType":"generated"},"db0870ad-49b6-4035-a9cf-bc0a0ece58e2":{"description":"Calendly could not complete the request.","content":{"_mintlify/placeholder":{"schema":{"type":"object","description":""}}}}},"security":{"c71dda12-5304-4d9c-b568-eefc9c8d27d8":{"LabsAuth":{"description":"Bandwidth Labs OAuth access token. Uses the user's selected workspace; the workspace header is not required. Do not also send an API key. Bearer-only operations may additionally require the Labs `super_user` role.","scheme":"bearer","type":"http","scopes":[],"schemeName":"LabsAuth"}},"734f6872-8c62-41a6-b238-80e5f77edd1c":{"LabsApiKey":{"description":"Bandwidth Labs API key. Also send `X-VOAI-ORGANIZATION-ID` with a positive local workspace ID belonging to the key owner. Access follows the owner's current workspace role. Do not also send a bearer token. API keys cannot access bearer-only or Labs `super_user` operations.","in":"header","name":"X-BW-LABS-AGENTS-API-KEY","type":"apiKey","scopes":[],"schemeName":"LabsApiKey"}}},"servers":{"864d1b67-b892-495f-83bc-cd0d89836ea3":{"url":"https://agents.labs.bandwidth.com","description":"Workspace API"}},"processedSecurityOptions":[{"schemes":[{"scheme":{"description":"Bandwidth Labs OAuth access token. Uses the user's selected workspace; the workspace header is not required. Do not also send an API key. Bearer-only operations may additionally require the Labs `super_user` role.","scheme":"bearer","type":"http","scopes":[],"schemeName":"LabsAuth"},"schema":{"title":"Bearer Auth","type":"string","isRequired":true,"description":"Bandwidth Labs OAuth access token. Uses the user's selected workspace; the workspace header is not required. Do not also send an API key. Bearer-only operations may additionally require the Labs `super_user` role.","format":"bearer","typeLabel":"string\u003cbearer>","deprecated":false},"schemeName":"LabsAuth","name":"Authorization"}],"title":"LabsAuth"},{"schemes":[{"scheme":{"description":"Bandwidth Labs API key. Also send `X-VOAI-ORGANIZATION-ID` with a positive local workspace ID belonging to the key owner. Access follows the owner's current workspace role. Do not also send a bearer token. API keys cannot access bearer-only or Labs `super_user` operations.","in":"header","name":"X-BW-LABS-AGENTS-API-KEY","type":"apiKey","scopes":[],"schemeName":"LabsApiKey"},"schema":{"title":"X-BW-LABS-AGENTS-API-KEY","type":"string","description":"Bandwidth Labs API key. Also send `X-VOAI-ORGANIZATION-ID` with a positive local workspace ID belonging to the key owner. Access follows the owner's current workspace role. Do not also send a bearer token. API keys cannot access bearer-only or Labs `super_user` operations.","isRequired":true,"typeLabel":"string","deprecated":false},"schemeName":"LabsApiKey","name":"X-BW-LABS-AGENTS-API-KEY"}],"title":"LabsApiKey"}]},"originalFileLocation":"api-reference/openapi.json"},"subdomain":"harmonair","siteName":"Bandwidth Agent Builder","title":"Complete Calendly authorization - Bandwidth Agent Builder","navMaps":{"firstHrefInVersion":{},"firstHrefInLanguage":{}},"lastModified":"2026-11-01T21:03:18.158Z","originalFileLocation":"api-reference/calendly/callback.mdx"},"headHtml":"\u003cscript data-mint-head>(function(){var d=document.documentElement,p=null;if(!p){try{p=localStorage.getItem(\"isDarkMode\")}catch(e){}if(p==='true')p='dark';else if(p==='false')p='light';if(p!=='light'\u0026\u0026p!=='dark'\u0026\u0026p!=='system')p=\"system\"}var r=p==='system'?(matchMedia(\"(prefers-color-scheme: dark)\").matches?'dark':'light'):p;d.classList.remove(r==='dark'?'light':'dark');d.classList.add(r);d.setAttribute(\"data-theme-preference\",p)})();\u003c/script>\u003cmeta data-mint-head name=\"description\" content=\"Exchange a pending authorization result and discover workspace Calendly tools.\">\u003cmeta data-mint-head name=\"application-name\" content=\"Bandwidth Agent Builder\">\u003cmeta data-mint-head name=\"generator\" content=\"Mintlify\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"192x192\" href=\"/mintlify-assets/_mintlify/favicons/harmonair/H2rLokpOBJgewPcX/_generated/favicon/android-chrome-192x192.png\" media=\"(prefers-color-scheme: light)\">\u003clink data-mint-head rel=\"apple-touch-icon\" type=\"image/png\" sizes=\"180x180\" href=\"/mintlify-assets/_mintlify/favicons/harmonair/H2rLokpOBJgewPcX/_generated/favicon/apple-touch-icon.png\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"16x16\" href=\"/mintlify-assets/_mintlify/favicons/harmonair/H2rLokpOBJgewPcX/_generated/favicon/favicon-16x16.png\" media=\"(prefers-color-scheme: light)\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"32x32\" href=\"/mintlify-assets/_mintlify/favicons/harmonair/H2rLokpOBJgewPcX/_generated/favicon/favicon-32x32.png\" media=\"(prefers-color-scheme: light)\">\u003clink data-mint-head rel=\"shortcut icon\" type=\"image/x-icon\" href=\"/mintlify-assets/_mintlify/favicons/harmonair/H2rLokpOBJgewPcX/_generated/favicon/favicon.ico\" media=\"(prefers-color-scheme: light)\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"192x192\" href=\"/mintlify-assets/_mintlify/favicons/harmonair/H2rLokpOBJgewPcX/_generated/favicon-dark/android-chrome-192x192.png\" media=\"(prefers-color-scheme: dark)\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"16x16\" href=\"/mintlify-assets/_mintlify/favicons/harmonair/H2rLokpOBJgewPcX/_generated/favicon-dark/favicon-16x16.png\" media=\"(prefers-color-scheme: dark)\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"32x32\" href=\"/mintlify-assets/_mintlify/favicons/harmonair/H2rLokpOBJgewPcX/_generated/favicon-dark/favicon-32x32.png\" media=\"(prefers-color-scheme: dark)\">\u003clink data-mint-head rel=\"shortcut icon\" type=\"image/x-icon\" href=\"/mintlify-assets/_mintlify/favicons/harmonair/H2rLokpOBJgewPcX/_generated/favicon-dark/favicon.ico\" media=\"(prefers-color-scheme: dark)\">\u003cmeta data-mint-head property=\"og:title\" content=\"Complete Calendly authorization - Bandwidth Agent Builder\">\u003cmeta data-mint-head property=\"og:description\" content=\"Exchange a pending authorization result and discover workspace Calendly tools.\">\u003cmeta data-mint-head property=\"og:site_name\" content=\"Bandwidth Agent Builder\">\u003cmeta data-mint-head property=\"og:url\" content=\"https://docs.agents.labs.bandwidth.com/api-reference/calendly/callback\">\u003cmeta data-mint-head property=\"og:type\" content=\"website\">\u003cmeta data-mint-head property=\"og:image\" content=\"https://harmonair.mintlify.site/_mintlify/api/og/v2?division=Calendly\u0026amp;title=Complete+Calendly+authorization\u0026amp;description=Exchange+a+pending+authorization+result+and+discover+workspace+Calendly+tools.\u0026amp;theme=17ecdc8190b2c51f07b9a393\u0026amp;signature=f1418e364ab772c5140ff3e57d6b39e4a614a26792c951c12f59da1f7790ab52\">\u003cmeta data-mint-head property=\"og:image:width\" content=\"1200\">\u003cmeta data-mint-head property=\"og:image:height\" content=\"630\">\u003cmeta data-mint-head name=\"twitter:card\" content=\"summary_large_image\">\u003cmeta data-mint-head name=\"twitter:title\" content=\"Complete Calendly authorization - Bandwidth Agent Builder\">\u003cmeta data-mint-head name=\"twitter:description\" content=\"Exchange a pending authorization result and discover workspace Calendly tools.\">\u003cmeta data-mint-head name=\"twitter:image\" content=\"https://harmonair.mintlify.site/_mintlify/api/og/v2?division=Calendly\u0026amp;title=Complete+Calendly+authorization\u0026amp;description=Exchange+a+pending+authorization+result+and+discover+workspace+Calendly+tools.\u0026amp;theme=17ecdc8190b2c51f07b9a393\u0026amp;signature=f1418e364ab772c5140ff3e57d6b39e4a614a26792c951c12f59da1f7790ab52\">\u003cmeta data-mint-head name=\"twitter:image:width\" content=\"1200\">\u003cmeta data-mint-head name=\"twitter:image:height\" content=\"630\">\u003cmeta data-mint-head name=\"msapplication-config\" content=\"/mintlify-assets/_mintlify/favicons/harmonair/H2rLokpOBJgewPcX/_generated/favicon/browserconfig.xml\">\u003cmeta data-mint-head name=\"apple-mobile-web-app-title\" content=\"Bandwidth Agent Builder\">\u003cmeta data-mint-head name=\"msapplication-TileColor\" content=\"#005EB8\">\u003clink data-mint-head rel=\"canonical\" href=\"https://docs.agents.labs.bandwidth.com/api-reference/calendly/callback\">\u003clink data-mint-head rel=\"alternate\" type=\"application/xml\" href=\"/sitemap.xml\">\u003clink data-mint-head rel=\"alternate\" type=\"text/markdown\" href=\"/api-reference/calendly/callback.md\">\u003cscript data-mint-head type=\"application/ld+json\">{\"@context\":\"https://schema.org\",\"@graph\":[{\"@type\":\"Organization\",\"@id\":\"https://docs.agents.labs.bandwidth.com/#organization\",\"name\":\"Bandwidth Agent Builder\",\"url\":\"https://docs.agents.labs.bandwidth.com\",\"logo\":{\"@type\":\"ImageObject\",\"url\":\"https://mintcdn.com/harmonair/JkEwLaC7cZDc9A3-/logo/light.svg?fit=max\u0026auto=format\u0026n=JkEwLaC7cZDc9A3-\u0026q=85\u0026s=6636082101afd784cb46a6fba1624fc7\"}},{\"@type\":\"WebSite\",\"@id\":\"https://docs.agents.labs.bandwidth.com#website\",\"name\":\"Bandwidth Agent Builder\",\"url\":\"https://docs.agents.labs.bandwidth.com\",\"publisher\":{\"@id\":\"https://docs.agents.labs.bandwidth.com/#organization\"}},{\"@type\":\"WebPage\",\"@id\":\"https://docs.agents.labs.bandwidth.com/api-reference/calendly/callback#webpage\",\"url\":\"https://docs.agents.labs.bandwidth.com/api-reference/calendly/callback\",\"name\":\"Complete Calendly authorization\",\"description\":\"Exchange a pending authorization result and discover workspace Calendly tools.\",\"dateModified\":\"2026-11-01T21:03:18.158Z\",\"isPartOf\":{\"@id\":\"https://docs.agents.labs.bandwidth.com#website\"},\"breadcrumb\":{\"@id\":\"https://docs.agents.labs.bandwidth.com/api-reference/calendly/callback#breadcrumb\"}},{\"@type\":\"BreadcrumbList\",\"@id\":\"https://docs.agents.labs.bandwidth.com/api-reference/calendly/callback#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Calendly\",\"item\":\"https://docs.agents.labs.bandwidth.com/api-reference/calendly/status\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Complete Calendly authorization\",\"item\":\"https://docs.agents.labs.bandwidth.com/api-reference/calendly/callback\"}]},{\"@type\":[\"TechArticle\",\"APIReference\"],\"@id\":\"https://docs.agents.labs.bandwidth.com/api-reference/calendly/callback#apireference\",\"headline\":\"Complete Calendly authorization\",\"name\":\"Complete Calendly authorization\",\"description\":\"Exchange a pending authorization result and discover workspace Calendly tools.\",\"url\":\"https://docs.agents.labs.bandwidth.com/api-reference/calendly/callback\",\"mainEntityOfPage\":{\"@id\":\"https://docs.agents.labs.bandwidth.com/api-reference/calendly/callback#webpage\"},\"dateModified\":\"2026-11-01T21:03:18.158Z\",\"publisher\":{\"@id\":\"https://docs.agents.labs.bandwidth.com/#organization\"},\"isPartOf\":{\"@id\":\"https://docs.agents.labs.bandwidth.com#website\"}}]}\u003c/script>\u003cscript data-mint-head type=\"application/ld+json\">{\"@context\":\"https://schema.org\",\"@type\":\"WebSite\",\"name\":\"Bandwidth Agent Builder\",\"creator\":{\"@type\":\"Organization\",\"name\":\"Mintlify\",\"url\":\"https://mintlify.com\"}}\u003c/script>","siteName":"Bandwidth Agent Builder","nav":{"global":null,"tabs":[{"tab":"User guides","icon":"book-open","pages":[{"title":"User guides","href":"/getting-started"}]},{"tab":"API Reference","icon":"square-terminal","groups":[{"group":"Get started","pages":[{"title":"API overview","href":"/api-reference/overview"},{"title":"REST API quickstart","href":"/developer/quickstart"},{"title":"Create and manage API keys","href":"/api-reference/api-keys"},{"title":"Authentication","href":"/api-reference/authentication"},{"title":"Workspaces and permissions","href":"/api-reference/workspaces"},{"title":"Errors and retries","href":"/api-reference/errors"}]},{"group":"Agents","pages":[{"title":"Overview","href":"/api-reference/agents"},{"title":"List agents","openapi":"GET /api/v1/workflow/fetch","href":"/api-reference/agents/list"},{"title":"List agent names","openapi":"GET /api/v1/workflow/summary","href":"/api-reference/agents/summary"},{"title":"Get Agent Count","openapi":"GET /api/v1/workflow/count","href":"/api-reference/agents/count"},{"title":"Get Agent","openapi":"GET /api/v1/workflow/fetch/{workflow_id}","href":"/api-reference/agents/get"},{"title":"Create an agent from a definition","openapi":"POST /api/v1/workflow/create/definition","href":"/api-reference/agents/create-from-definition"},{"title":"Create from Template","openapi":"POST /api/v1/workflow/create/template","href":"/api-reference/agents/create-from-template"},{"title":"Create from a catalog template","openapi":"POST /api/v1/workflow/create/from-catalog","href":"/api-reference/agents/create-from-catalog"},{"title":"Update Agent","openapi":"PUT /api/v1/workflow/{workflow_id}","href":"/api-reference/agents/update"},{"title":"Create a draft","openapi":"POST /api/v1/workflow/{workflow_id}/create-draft","href":"/api-reference/agents/create-draft"},{"title":"Duplicate an agent","openapi":"POST /api/v1/workflow/{workflow_id}/duplicate","href":"/api-reference/agents/duplicate"},{"title":"Move an agent to a folder","openapi":"PUT /api/v1/workflow/{workflow_id}/folder","href":"/api-reference/agents/move-folder"},{"title":"Archive Agent","openapi":"PUT /api/v1/workflow/{workflow_id}/status","href":"/api-reference/agents/archive"},{"title":"Delete an agent","openapi":"DELETE /api/v1/workflow/{workflow_id}","href":"/api-reference/agents/delete"},{"title":"Validate Workflow","openapi":"POST /api/v1/workflow/{workflow_id}/validate","href":"/api-reference/agents/validate"},{"title":"Publish an agent","openapi":"POST /api/v1/workflow/{workflow_id}/publish","href":"/api-reference/agents/publish"},{"title":"List agent versions","openapi":"GET /api/v1/workflow/{workflow_id}/versions","href":"/api-reference/agents/versions"},{"title":"Restore a previous version to draft","openapi":"POST /api/v1/workflow/{workflow_id}/versions/{definition_id}/rollback","href":"/api-reference/agents/rollback"},{"title":"List saved templates","openapi":"GET /api/v1/workflow/templates","href":"/api-reference/agents/templates"},{"title":"Duplicate a saved template","openapi":"POST /api/v1/workflow/templates/duplicate","href":"/api-reference/agents/duplicate-template"},{"group":"Agent runs","pages":[{"title":"List Runs","openapi":"GET /api/v1/workflow/{workflow_id}/runs","href":"/api-reference/agents/runs/list"},{"title":"Get Run","openapi":"GET /api/v1/workflow/{workflow_id}/runs/{run_id}","href":"/api-reference/agents/runs/get"},{"title":"Create a browser run","openapi":"POST /api/v1/workflow/{workflow_id}/runs","href":"/api-reference/agents/runs/create"},{"title":"Get a run trace","openapi":"GET /api/v1/workflow/{workflow_id}/runs/{run_id}/trace","href":"/api-reference/agents/runs/trace"},{"title":"Download an agent run report","openapi":"GET /api/v1/workflow/{workflow_id}/report","href":"/api-reference/agents/runs/report"}]}]},{"group":"Node types","pages":[{"title":"List node types","openapi":"GET /api/v1/node-types","href":"/api-reference/node-types/list"},{"title":"Get a node type","openapi":"GET /api/v1/node-types/{name}","href":"/api-reference/node-types/get"}]},{"group":"Conversations","pages":[{"title":"List conversations","openapi":"GET /api/v1/conversations","href":"/api-reference/conversations/list"},{"title":"List conversation agents","openapi":"GET /api/v1/conversations/agents","href":"/api-reference/conversations/agents"},{"title":"Get a conversation","openapi":"GET /api/v1/conversations/{run_id}","href":"/api-reference/conversations/get"},{"title":"Update a conversation review","openapi":"PATCH /api/v1/conversations/{run_id}/review","href":"/api-reference/conversations/review"},{"title":"Export conversations","openapi":"GET /api/v1/conversations/export","href":"/api-reference/conversations/export"}]},{"group":"Text testing","pages":[{"title":"Create a text test session","openapi":"POST /api/v1/workflow/{workflow_id}/text-chat/sessions","href":"/api-reference/text-chat/create"},{"title":"Get a text test session","openapi":"GET /api/v1/workflow/{workflow_id}/text-chat/sessions/{run_id}","href":"/api-reference/text-chat/get"},{"title":"Send a test message","openapi":"POST /api/v1/workflow/{workflow_id}/text-chat/sessions/{run_id}/messages","href":"/api-reference/text-chat/message"},{"title":"Rewind a text test session","openapi":"POST /api/v1/workflow/{workflow_id}/text-chat/sessions/{run_id}/rewind","href":"/api-reference/text-chat/rewind"}]},{"group":"Tools","pages":[{"title":"List tools","openapi":"GET /api/v1/tools/","href":"/api-reference/tools/list"},{"title":"Create a tool","openapi":"POST /api/v1/tools/","href":"/api-reference/tools/create"},{"title":"Get a tool","openapi":"GET /api/v1/tools/{tool_uuid}","href":"/api-reference/tools/get"},{"title":"Update a tool","openapi":"PUT /api/v1/tools/{tool_uuid}","href":"/api-reference/tools/update"},{"title":"Duplicate a tool","openapi":"POST /api/v1/tools/{tool_uuid}/duplicate","href":"/api-reference/tools/duplicate"},{"title":"Archive a tool","openapi":"DELETE /api/v1/tools/{tool_uuid}","href":"/api-reference/tools/archive"},{"title":"Restore a tool","openapi":"POST /api/v1/tools/{tool_uuid}/unarchive","href":"/api-reference/tools/unarchive"},{"title":"List tool execution logs","openapi":"GET /api/v1/tools/{tool_uuid}/logs","href":"/api-reference/tools/logs"},{"title":"Test an HTTP tool","openapi":"POST /api/v1/tools/{tool_uuid}/test","href":"/api-reference/tools/test"},{"title":"Refresh an MCP tool catalog","openapi":"POST /api/v1/tools/{tool_uuid}/mcp/refresh","href":"/api-reference/tools/refresh"}]},{"group":"Credentials","pages":[{"title":"List outbound credentials","openapi":"GET /api/v1/credentials/","href":"/api-reference/credentials/list"},{"title":"Get outbound credential metadata","openapi":"GET /api/v1/credentials/{credential_uuid}","href":"/api-reference/credentials/get"},{"title":"Create an outbound credential","openapi":"POST /api/v1/credentials/","href":"/api-reference/credentials/create"},{"title":"Update an outbound credential","openapi":"PUT /api/v1/credentials/{credential_uuid}","href":"/api-reference/credentials/update"},{"title":"Delete an outbound credential","openapi":"DELETE /api/v1/credentials/{credential_uuid}","href":"/api-reference/credentials/delete"}]},{"group":"Folders","pages":[{"title":"List folders","openapi":"GET /api/v1/folder/","href":"/api-reference/folders/list"},{"title":"Create a folder","openapi":"POST /api/v1/folder/","href":"/api-reference/folders/create"},{"title":"Rename a folder","openapi":"PUT /api/v1/folder/{folder_id}","href":"/api-reference/folders/rename"},{"title":"Delete a folder","openapi":"DELETE /api/v1/folder/{folder_id}","href":"/api-reference/folders/delete"}]},{"group":"Knowledge base","pages":[{"title":"Create a document upload URL","openapi":"POST /api/v1/knowledge-base/upload-url","href":"/api-reference/knowledge-base/upload"},{"title":"Process a document","openapi":"POST /api/v1/knowledge-base/process-document","href":"/api-reference/knowledge-base/process"},{"title":"List documents","openapi":"GET /api/v1/knowledge-base/documents","href":"/api-reference/knowledge-base/list"},{"title":"Get a document","openapi":"GET /api/v1/knowledge-base/documents/{document_uuid}","href":"/api-reference/knowledge-base/get"},{"title":"Delete a document","openapi":"DELETE /api/v1/knowledge-base/documents/{document_uuid}","href":"/api-reference/knowledge-base/delete"},{"title":"Search knowledge-base chunks","openapi":"POST /api/v1/knowledge-base/search","href":"/api-reference/knowledge-base/search"}]},{"group":"Audio library","pages":[{"title":"List audio recordings","openapi":"GET /api/v1/workflow-recordings/","href":"/api-reference/audio/list"},{"title":"Create audio upload URLs","openapi":"POST /api/v1/workflow-recordings/upload-url","href":"/api-reference/audio/upload"},{"title":"Register uploaded recordings","openapi":"POST /api/v1/workflow-recordings/","href":"/api-reference/audio/create"},{"title":"Rename a recording ID","openapi":"PATCH /api/v1/workflow-recordings/{id}","href":"/api-reference/audio/rename"},{"title":"Delete a recording","openapi":"DELETE /api/v1/workflow-recordings/{recording_id}","href":"/api-reference/audio/delete"},{"title":"Transcribe an audio file","openapi":"POST /api/v1/workflow-recordings/transcribe","href":"/api-reference/audio/transcribe"},{"title":"Create an ambient audio upload URL","openapi":"POST /api/v1/workflow/ambient-noise/upload-url","href":"/api-reference/audio/ambient"}]},{"group":"Runs","pages":[{"title":"Overview","href":"/api-reference/runs"},{"title":"Trigger an Outbound Agent Run by API Trigger Node","openapi":"POST /api/v1/public/agent/{uuid}","href":"/api-reference/runs/trigger"},{"title":"Trigger an Outbound Agent Run by Agent UUID","openapi":"POST /api/v1/public/agent/workflow/{workflow_uuid}","href":"/api-reference/runs/trigger-workflow"}]},{"group":"Campaigns","pages":[{"title":"Overview","href":"/api-reference/campaigns"},{"title":"Upload Contacts CSV","openapi":"POST /api/v1/s3/presigned-upload-url","href":"/api-reference/campaigns/upload-contacts"},{"title":"Create Campaign","openapi":"POST /api/v1/campaign/create","href":"/api-reference/campaigns/create"},{"title":"List Campaigns","openapi":"GET /api/v1/campaign/","href":"/api-reference/campaigns/list"},{"title":"Get Campaign","openapi":"GET /api/v1/campaign/{campaign_id}","href":"/api-reference/campaigns/get"},{"title":"Update Campaign","openapi":"PATCH /api/v1/campaign/{campaign_id}","href":"/api-reference/campaigns/update"},{"title":"Start Campaign","openapi":"POST /api/v1/campaign/{campaign_id}/start","href":"/api-reference/campaigns/start"},{"title":"Pause Campaign","openapi":"POST /api/v1/campaign/{campaign_id}/pause","href":"/api-reference/campaigns/pause"},{"title":"Resume Campaign","openapi":"POST /api/v1/campaign/{campaign_id}/resume","href":"/api-reference/campaigns/resume"},{"title":"Get Campaign Progress","openapi":"GET /api/v1/campaign/{campaign_id}/progress","href":"/api-reference/campaigns/progress"},{"title":"Get Campaign Runs","openapi":"GET /api/v1/campaign/{campaign_id}/runs","href":"/api-reference/campaigns/runs"},{"title":"Create a redial campaign","openapi":"POST /api/v1/campaign/{campaign_id}/redial","href":"/api-reference/campaigns/redial"},{"title":"Download campaign source","openapi":"GET /api/v1/campaign/{campaign_id}/source-download-url","href":"/api-reference/campaigns/source"},{"title":"Download a campaign report","openapi":"GET /api/v1/campaign/{campaign_id}/report","href":"/api-reference/campaigns/report"},{"title":"Get campaign defaults","openapi":"GET /api/v1/organizations/campaign-defaults","href":"/api-reference/campaigns/defaults"}]},{"group":"Telephony Configurations","pages":[{"title":"Overview","href":"/api-reference/telephony-configs"},{"title":"List Supported Providers","openapi":"GET /api/v1/organizations/telephony-providers/metadata","href":"/api-reference/telephony-configs/providers"},{"title":"List Configurations","openapi":"GET /api/v1/organizations/telephony-configs","href":"/api-reference/telephony-configs/list"},{"title":"Create Configuration","openapi":"POST /api/v1/organizations/telephony-configs","href":"/api-reference/telephony-configs/create"},{"title":"Get Configuration","openapi":"GET /api/v1/organizations/telephony-configs/{config_id}","href":"/api-reference/telephony-configs/get"},{"title":"Update Configuration","openapi":"PUT /api/v1/organizations/telephony-configs/{config_id}","href":"/api-reference/telephony-configs/update"},{"title":"Delete Configuration","openapi":"DELETE /api/v1/organizations/telephony-configs/{config_id}","href":"/api-reference/telephony-configs/delete"},{"title":"Set Default Outbound","openapi":"POST /api/v1/organizations/telephony-configs/{config_id}/set-default-outbound","href":"/api-reference/telephony-configs/set-default-outbound"},{"group":"Phone Numbers","pages":[{"title":"List Phone Numbers","openapi":"GET /api/v1/organizations/telephony-configs/{config_id}/phone-numbers","href":"/api-reference/telephony-configs/phone-numbers/list"},{"title":"Add Phone Number","openapi":"POST /api/v1/organizations/telephony-configs/{config_id}/phone-numbers","href":"/api-reference/telephony-configs/phone-numbers/create"},{"title":"Get Phone Number","openapi":"GET /api/v1/organizations/telephony-configs/{config_id}/phone-numbers/{phone_number_id}","href":"/api-reference/telephony-configs/phone-numbers/get"},{"title":"Update Phone Number","openapi":"PUT /api/v1/organizations/telephony-configs/{config_id}/phone-numbers/{phone_number_id}","href":"/api-reference/telephony-configs/phone-numbers/update"},{"title":"Delete Phone Number","openapi":"DELETE /api/v1/organizations/telephony-configs/{config_id}/phone-numbers/{phone_number_id}","href":"/api-reference/telephony-configs/phone-numbers/delete"},{"title":"Set Default Caller","openapi":"POST /api/v1/organizations/telephony-configs/{config_id}/phone-numbers/{phone_number_id}/set-default-caller","href":"/api-reference/telephony-configs/phone-numbers/set-default-caller"}]},{"title":"Get telephony configuration warnings","openapi":"GET /api/v1/organizations/telephony-config-warnings","href":"/api-reference/telephony-configs/warnings"}]},{"group":"Account","pages":[{"title":"Get your profile","openapi":"GET /api/v1/user/profile","href":"/api-reference/account/profile"},{"title":"Update your profile","openapi":"PATCH /api/v1/user/profile","href":"/api-reference/account/update-profile"},{"title":"Get notification preferences","openapi":"GET /api/v1/user/notifications","href":"/api-reference/account/notifications"},{"title":"Update notification preferences","openapi":"PATCH /api/v1/user/notifications","href":"/api-reference/account/update-notifications"}]},{"group":"Workspace management","pages":[{"title":"List your workspaces","openapi":"GET /api/v1/user/workspaces","href":"/api-reference/workspace-management/list"},{"title":"Switch the selected workspace group","openapi":"POST /api/v1/user/groups/{group_id}/switch","href":"/api-reference/workspace-management/switch"},{"title":"Create a workspace","openapi":"POST /api/v1/user/tenants","href":"/api-reference/workspace-management/create"},{"title":"Rename a workspace","openapi":"PATCH /api/v1/user/workspaces/{tenant_id}","href":"/api-reference/workspace-management/rename"},{"title":"Create a workspace group","openapi":"POST /api/v1/user/groups","href":"/api-reference/workspace-management/create-group"}]},{"group":"AI connections","pages":[{"title":"Get AI configuration options","openapi":"GET /api/v1/user/configurations/defaults","href":"/api-reference/ai-connections/defaults"},{"title":"Get AI connections","openapi":"GET /api/v1/user/configurations/user","href":"/api-reference/ai-connections/get"},{"title":"Update AI connections","openapi":"PUT /api/v1/user/configurations/user","href":"/api-reference/ai-connections/update"},{"title":"Check AI connection status","openapi":"GET /api/v1/user/configurations/user/validate","href":"/api-reference/ai-connections/validate"},{"title":"List AI credential metadata","openapi":"GET /api/v1/user/configurations/credentials","href":"/api-reference/ai-connections/credentials"},{"title":"Create an AI credential","openapi":"POST /api/v1/user/configurations/credentials","href":"/api-reference/ai-connections/create-credential"},{"title":"List provider voices","openapi":"GET /api/v1/user/configurations/voices/{provider}","href":"/api-reference/ai-connections/voices"}]},{"group":"Calendly","pages":[{"title":"Get Calendly connection","openapi":"GET /api/v1/integrations/calendly","href":"/api-reference/calendly/status"},{"title":"Start a Calendly connection","description":"Start interactive Calendly authorization for the selected workspace.","openapi":"POST /api/v1/integrations/calendly/connect","href":"/api-reference/calendly/connect"},{"title":"Complete Calendly authorization","openapi":"POST /api/v1/integrations/calendly/callback","href":"/api-reference/calendly/callback"},{"title":"Refresh Calendly tools","description":"Discover the connected account’s current Calendly tool catalog.","openapi":"POST /api/v1/integrations/calendly/refresh","href":"/api-reference/calendly/refresh"},{"title":"Disconnect Calendly","openapi":"POST /api/v1/integrations/calendly/disconnect","href":"/api-reference/calendly/disconnect"}]},{"group":"Members and invitations","pages":[{"title":"List members","openapi":"GET /api/v1/organizations/members","href":"/api-reference/members/list"},{"title":"Get membership counts","openapi":"GET /api/v1/organizations/members/stats","href":"/api-reference/members/stats"},{"title":"Change a member role","openapi":"PUT /api/v1/organizations/members/{member_id}/role","href":"/api-reference/members/role"},{"title":"Remove a member","openapi":"DELETE /api/v1/organizations/members/{member_id}","href":"/api-reference/members/remove"},{"title":"List pending invitations","openapi":"GET /api/v1/organizations/invites","href":"/api-reference/members/invites"},{"title":"Invite members","openapi":"POST /api/v1/organizations/invites","href":"/api-reference/members/invite"},{"title":"Revoke an invitation","openapi":"DELETE /api/v1/organizations/invites/{invite_id}","href":"/api-reference/members/revoke-invite"},{"title":"Get invitation details","openapi":"GET /api/v1/organizations/invites/{token}/details","href":"/api-reference/members/invite-details"},{"title":"Accept an invitation","openapi":"POST /api/v1/organizations/invites/{token}/accept","href":"/api-reference/members/accept-invite"}]},{"group":"Observability connections","pages":[{"title":"Get the Datadog connection","openapi":"GET /api/v1/organizations/datadog","href":"/api-reference/observability/datadog"},{"title":"Save the Datadog connection","openapi":"PUT /api/v1/organizations/datadog","href":"/api-reference/observability/save-datadog"},{"title":"Test the Datadog credential","openapi":"POST /api/v1/organizations/datadog/test","href":"/api-reference/observability/test-datadog"},{"title":"Remove the Datadog connection","openapi":"DELETE /api/v1/organizations/datadog","href":"/api-reference/observability/delete-datadog"},{"title":"Get the Langfuse connection","openapi":"GET /api/v1/organizations/langfuse-credentials","href":"/api-reference/observability/langfuse"},{"title":"Save the Langfuse connection","openapi":"POST /api/v1/organizations/langfuse-credentials","href":"/api-reference/observability/save-langfuse"},{"title":"Remove the Langfuse connection","openapi":"DELETE /api/v1/organizations/langfuse-credentials","href":"/api-reference/observability/delete-langfuse"}]},{"group":"Reports","pages":[{"title":"Get a daily report","openapi":"GET /api/v1/organizations/reports/daily","href":"/api-reference/reports/daily"},{"title":"List report agents","openapi":"GET /api/v1/organizations/reports/workflows","href":"/api-reference/reports/workflows"},{"title":"Get top agents by recent activity","openapi":"GET /api/v1/organizations/reports/top-workflows","href":"/api-reference/reports/top-workflows"},{"title":"Get analytics overview","openapi":"GET /api/v1/organizations/reports/overview","href":"/api-reference/reports/overview"},{"title":"Get call volume","openapi":"GET /api/v1/organizations/reports/call-volume","href":"/api-reference/reports/call-volume"},{"title":"Get call outcomes","openapi":"GET /api/v1/organizations/reports/outcomes","href":"/api-reference/reports/outcomes"},{"title":"Get provider usage","openapi":"GET /api/v1/organizations/reports/providers","href":"/api-reference/reports/providers"},{"title":"Get call activity heatmap","openapi":"GET /api/v1/organizations/reports/heatmap","href":"/api-reference/reports/heatmap"},{"title":"Get usage by model","openapi":"GET /api/v1/organizations/reports/usage-by-model","href":"/api-reference/reports/usage-by-model"},{"title":"Rank agents for a reporting period","openapi":"GET /api/v1/organizations/reports/top-workflows-extended","href":"/api-reference/reports/top-workflows-extended"},{"title":"Get daily run details","openapi":"GET /api/v1/organizations/reports/daily/runs","href":"/api-reference/reports/daily-runs"},{"title":"List analytics runs","openapi":"GET /api/v1/organizations/reports/runs","href":"/api-reference/reports/runs"},{"title":"Get call performance","openapi":"GET /api/v1/organizations/reports/call-performance","href":"/api-reference/reports/call-performance"}]},{"group":"Usage","pages":[{"title":"Get current-period usage","openapi":"GET /api/v1/organizations/usage/current-period","href":"/api-reference/usage/current"},{"title":"List usage runs","openapi":"GET /api/v1/organizations/usage/runs","href":"/api-reference/usage/runs"},{"title":"Export usage runs","openapi":"GET /api/v1/organizations/usage/runs/report","href":"/api-reference/usage/export"},{"title":"Get daily usage","openapi":"GET /api/v1/organizations/usage/daily-breakdown","href":"/api-reference/usage/daily"}]},{"group":"Files","pages":[{"title":"Create a file download URL","openapi":"GET /api/v1/s3/signed-url","href":"/api-reference/files/download"},{"title":"Get file metadata","openapi":"GET /api/v1/s3/file-metadata","href":"/api-reference/files/metadata"}]},{"group":"Calls","pages":[{"title":"Test a call by trigger","openapi":"POST /api/v1/public/agent/test/{uuid}","href":"/api-reference/calls/test-trigger"},{"title":"Test a call by agent UUID","openapi":"POST /api/v1/public/agent/test/workflow/{workflow_uuid}","href":"/api-reference/calls/test-agent"},{"title":"Place a draft test call","openapi":"POST /api/v1/telephony/initiate-call","href":"/api-reference/calls/test-phone"}]},{"group":"Integration guides","pages":[{"title":"Agent UUID","href":"/configurations/agent-uuid"},{"title":"Receive call results","href":"/developer/webhooks"},{"title":"Workflow Definition Schema","href":"/developer/workflow-schema"}]}]},{"tab":"MCP","icon":"plug","pages":[{"title":"MCP","href":"/integrations/mcp"}]}]},"basePath":"","title":"Complete Calendly authorization - Bandwidth Agent Builder","buildId":"dpl_BLQvU86QFwq3AhPofSTw6q8dGWKm","deploymentId":"dpl_BLQvU86QFwq3AhPofSTw6q8dGWKm","dynamics":["c2aa737661","2b790eda92","b0f84f53ff","a9bb46feb3"],"chunks":["OpenApiReferenceProvider-Myd8dsju.js","utils-C2HkQgW0.js","cloneDeep-izs3Hzxb.js","_Uint8Array-BVIqJ90l.js","isObjectLike-C8vmzPEN.js","isArray-Dcu1dQ5t.js","utils-8rSppmTv.js","toString-BX-iyh8G.js","isSymbol-CSH9U2Gm.js","addUniqueKeysToSchema-B6MjiCFm.js","snippetPresets-DwrSAONL.js","style-to-object-BY3JEAdk.js","v4-DIgz8zy6.js","ApiExamples-1-a5UQKQ.js","isEqual-BfaiBbcl.js","usePlaygroundInputsStore-C541m7wZ.js","shallow-CWELCZ77.js","getApiPlaygroundDisplay-CTo5Zn03.js","CodeSnippet-D--dzvnl.js","CodeSnippets-DM3cXEDh.js","Page-CxAy5y67.js","getPastedJson-C-VECgcL.js","icon-BPq2-Mg3.js","MethodPill-D9J5cUHd.js","DuplicateIcon-BqHaxUnD.js","createIcon-CIbcZHp9.js","DynamicMarkdown-BKiHAm_d.js","SectionHeading-DstQXt3H.js","axios-vUo_bRtp.js","Markdown-CpxgzsKA.js","clsx-C5EfhVm0.js","lib-DuNMoZ05.js","lib-B8HbPgcC.js","html-void-elements-mCSPHezU.js","dist-CJ9Oly2E.js","katex-YMM-FMeD.js","marked.esm-CZWythHk.js","AssistantPageLink-Mk6P3qvh.js"]}