{"openapi":"3.1.0","info":{"title":"Twilio Queues and Conferences (BYOK) API","version":"0.1.0","description":"Twilio Queues and Conferences (BYOK) lets an AI assistant read your own Twilio Queues and Conferences data through the Twilio Queues and Conferences API with a key you supply (Account SID or API key SID (use a restricted API key, SID starts with SK, rather than the main Auth Token where possible)). Read-only: 8 tools (list_queues, get_queue, list_queue_members, list_conferences, get_conference,...\n\nEvery operation is read-only or compute-only. The same tools are available over MCP (streamable HTTP) at https://byok-twilio-queues-conferences.connectorbay.com/mcp.","contact":{"name":"Unify Dynamics LLC","email":"agent@connectorbay.com","url":"https://connectorbay.com/byok-twilio-queues-conferences/docs"},"termsOfService":"https://connectorbay.com/byok-twilio-queues-conferences/terms"},"servers":[{"url":"https://byok-twilio-queues-conferences.connectorbay.com"}],"externalDocs":{"url":"https://connectorbay.com/byok-twilio-queues-conferences/docs"},"security":[{"upstreamKey":[]}],"components":{"securitySchemes":{"bearer":{"type":"http","scheme":"bearer","description":"Optional. A Pro API key raises rate limits; no credentials are required."},"upstreamKey":{"type":"apiKey","in":"header","name":"X-Upstream-Key","description":"Your own key for the service this connector wraps (bring your own key). Used for that one call only; never stored, logged or cached."}},"schemas":{"Error":{"type":"object","properties":{"ok":{"const":false},"error":{"type":"object"}}}}},"paths":{"/v1/tools/list_queues":{"post":{"operationId":"list_queues","summary":"List call queues with current size, maximum size and average wait time in seconds. Use for \"How many callers are waiting","description":"List call queues with current size, maximum size and average wait time in seconds. Use for \"How many callers are waiting in my Twilio queues\".","tags":["tools"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"properties":{"account_sid":{"description":"The Twilio Account SID: 'AC' followed by 32 hex characters (shown on the Twilio console home page).","maxLength":34,"title":"Account Sid","type":"string"},"page_size":{"anyOf":[{"maximum":1000,"minimum":1,"type":"integer"},{"type":"null"}],"default":50,"description":"How many results to return (1 to 1000).","title":"Page Size"},"page_token":{"anyOf":[{"maxLength":300,"type":"string"},{"type":"null"}],"default":null,"description":"Paging token: take the PageToken value from next_page_uri in the previous answer (leave empty for the first page).","title":"Page Token"}},"required":["account_sid"],"title":"list_queuesArguments","type":"object"}}}},"responses":{"200":{"description":"Tool result. `ok: true` on success; `ok: false` with a structured `error` (provider_unavailable, upstream_error, bad_input) when the tool could not answer.","content":{"application/json":{"schema":{"type":"object","additionalProperties":true}}}},"422":{"description":"Arguments failed validation","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"429":{"description":"Rate limit exceeded (see Retry-After)","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}},"x-read-only":true}},"/v1/tools/get_queue":{"post":{"operationId":"get_queue","summary":"Get one queue: current size, maximum size and average wait time. Use for \"How long is the wait in queue QU\".","description":"Get one queue: current size, maximum size and average wait time. Use for \"How long is the wait in queue QU\".","tags":["tools"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"properties":{"account_sid":{"description":"The Twilio Account SID: 'AC' followed by 32 hex characters (shown on the Twilio console home page).","maxLength":34,"title":"Account Sid","type":"string"},"sid":{"description":"The SID of the queue: 'QU' followed by 32 hex characters.","maxLength":34,"title":"Sid","type":"string"}},"required":["account_sid","sid"],"title":"get_queueArguments","type":"object"}}}},"responses":{"200":{"description":"Tool result. `ok: true` on success; `ok: false` with a structured `error` (provider_unavailable, upstream_error, bad_input) when the tool could not answer.","content":{"application/json":{"schema":{"type":"object","additionalProperties":true}}}},"422":{"description":"Arguments failed validation","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"429":{"description":"Rate limit exceeded (see Retry-After)","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}},"x-read-only":true}},"/v1/tools/list_queue_members":{"post":{"operationId":"list_queue_members","summary":"List the calls waiting in one queue with position and wait time in seconds. Caller numbers are not returned. Use for \"Wh","description":"List the calls waiting in one queue with position and wait time in seconds. Caller numbers are not returned. Use for \"Who is waiting in queue QU... and for how long\".","tags":["tools"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"properties":{"account_sid":{"description":"The Twilio Account SID: 'AC' followed by 32 hex characters (shown on the Twilio console home page).","maxLength":34,"title":"Account Sid","type":"string"},"queue_sid":{"description":"The SID of the queue: 'QU' followed by 32 hex characters.","maxLength":34,"title":"Queue Sid","type":"string"},"page_size":{"anyOf":[{"maximum":1000,"minimum":1,"type":"integer"},{"type":"null"}],"default":50,"description":"How many results to return (1 to 1000).","title":"Page Size"},"page_token":{"anyOf":[{"maxLength":300,"type":"string"},{"type":"null"}],"default":null,"description":"Paging token: take the PageToken value from next_page_uri in the previous answer (leave empty for the first page).","title":"Page Token"}},"required":["account_sid","queue_sid"],"title":"list_queue_membersArguments","type":"object"}}}},"responses":{"200":{"description":"Tool result. `ok: true` on success; `ok: false` with a structured `error` (provider_unavailable, upstream_error, bad_input) when the tool could not answer.","content":{"application/json":{"schema":{"type":"object","additionalProperties":true}}}},"422":{"description":"Arguments failed validation","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"429":{"description":"Rate limit exceeded (see Retry-After)","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}},"x-read-only":true}},"/v1/tools/list_conferences":{"post":{"operationId":"list_conferences","summary":"List conferences with name, status (init, in-progress, completed), region and why they ended. Use for \"Which Twilio conf","description":"List conferences with name, status (init, in-progress, completed), region and why they ended. Use for \"Which Twilio conferences are in progress\".","tags":["tools"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"properties":{"account_sid":{"description":"The Twilio Account SID: 'AC' followed by 32 hex characters (shown on the Twilio console home page).","maxLength":34,"title":"Account Sid","type":"string"},"status":{"anyOf":[{"enum":["init","in-progress","completed"],"type":"string"},{"type":"null"}],"default":null,"description":"Only conferences with this status.","title":"Status"},"friendly_name":{"anyOf":[{"maxLength":128,"type":"string"},{"type":"null"}],"default":null,"description":"Only conferences with exactly this name.","title":"Friendly Name"},"date_created":{"anyOf":[{"maxLength":10,"type":"string"},{"type":"null"}],"default":null,"description":"Only conferences created on this day (YYYY-MM-DD, UTC).","title":"Date Created"},"page_size":{"anyOf":[{"maximum":1000,"minimum":1,"type":"integer"},{"type":"null"}],"default":50,"description":"How many results to return (1 to 1000).","title":"Page Size"},"page_token":{"anyOf":[{"maxLength":300,"type":"string"},{"type":"null"}],"default":null,"description":"Paging token: take the PageToken value from next_page_uri in the previous answer (leave empty for the first page).","title":"Page Token"}},"required":["account_sid"],"title":"list_conferencesArguments","type":"object"}}}},"responses":{"200":{"description":"Tool result. `ok: true` on success; `ok: false` with a structured `error` (provider_unavailable, upstream_error, bad_input) when the tool could not answer.","content":{"application/json":{"schema":{"type":"object","additionalProperties":true}}}},"422":{"description":"Arguments failed validation","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"429":{"description":"Rate limit exceeded (see Retry-After)","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}},"x-read-only":true}},"/v1/tools/get_conference":{"post":{"operationId":"get_conference","summary":"Get one conference: name, status, region, end reason and dates. Use for \"Why did conference CF... end\".","description":"Get one conference: name, status, region, end reason and dates. Use for \"Why did conference CF... end\".","tags":["tools"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"properties":{"account_sid":{"description":"The Twilio Account SID: 'AC' followed by 32 hex characters (shown on the Twilio console home page).","maxLength":34,"title":"Account Sid","type":"string"},"sid":{"description":"The SID of the conference: 'CF' followed by 32 hex characters.","maxLength":34,"title":"Sid","type":"string"}},"required":["account_sid","sid"],"title":"get_conferenceArguments","type":"object"}}}},"responses":{"200":{"description":"Tool result. `ok: true` on success; `ok: false` with a structured `error` (provider_unavailable, upstream_error, bad_input) when the tool could not answer.","content":{"application/json":{"schema":{"type":"object","additionalProperties":true}}}},"422":{"description":"Arguments failed validation","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"429":{"description":"Rate limit exceeded (see Retry-After)","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}},"x-read-only":true}},"/v1/tools/list_conference_participants":{"post":{"operationId":"list_conference_participants","summary":"List the participants of one conference with call SID, label, muted, hold and coaching flags and status. Phone numbers a","description":"List the participants of one conference with call SID, label, muted, hold and coaching flags and status. Phone numbers are not returned. Use for \"Who is muted in conference CF\".","tags":["tools"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"properties":{"account_sid":{"description":"The Twilio Account SID: 'AC' followed by 32 hex characters (shown on the Twilio console home page).","maxLength":34,"title":"Account Sid","type":"string"},"conference_sid":{"description":"The SID of the conference: 'CF' followed by 32 hex characters.","maxLength":34,"title":"Conference Sid","type":"string"},"muted":{"anyOf":[{"type":"boolean"},{"type":"null"}],"default":null,"description":"True to return only muted participants.","title":"Muted"},"hold":{"anyOf":[{"type":"boolean"},{"type":"null"}],"default":null,"description":"True to return only participants on hold.","title":"Hold"},"coaching":{"anyOf":[{"type":"boolean"},{"type":"null"}],"default":null,"description":"True to return only participants who are coaching.","title":"Coaching"},"page_size":{"anyOf":[{"maximum":1000,"minimum":1,"type":"integer"},{"type":"null"}],"default":50,"description":"How many results to return (1 to 1000).","title":"Page Size"},"page_token":{"anyOf":[{"maxLength":300,"type":"string"},{"type":"null"}],"default":null,"description":"Paging token: take the PageToken value from next_page_uri in the previous answer (leave empty for the first page).","title":"Page Token"}},"required":["account_sid","conference_sid"],"title":"list_conference_participantsArguments","type":"object"}}}},"responses":{"200":{"description":"Tool result. `ok: true` on success; `ok: false` with a structured `error` (provider_unavailable, upstream_error, bad_input) when the tool could not answer.","content":{"application/json":{"schema":{"type":"object","additionalProperties":true}}}},"422":{"description":"Arguments failed validation","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"429":{"description":"Rate limit exceeded (see Retry-After)","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}},"x-read-only":true}},"/v1/tools/list_applications":{"post":{"operationId":"list_applications","summary":"List TwiML applications with voice and SMS webhook URLs. Use for \"Which TwiML applications are in my Twilio account\".","description":"List TwiML applications with voice and SMS webhook URLs. Use for \"Which TwiML applications are in my Twilio account\".","tags":["tools"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"properties":{"account_sid":{"description":"The Twilio Account SID: 'AC' followed by 32 hex characters (shown on the Twilio console home page).","maxLength":34,"title":"Account Sid","type":"string"},"friendly_name":{"anyOf":[{"maxLength":64,"type":"string"},{"type":"null"}],"default":null,"description":"Only applications with this name.","title":"Friendly Name"},"page_size":{"anyOf":[{"maximum":1000,"minimum":1,"type":"integer"},{"type":"null"}],"default":50,"description":"How many results to return (1 to 1000).","title":"Page Size"},"page_token":{"anyOf":[{"maxLength":300,"type":"string"},{"type":"null"}],"default":null,"description":"Paging token: take the PageToken value from next_page_uri in the previous answer (leave empty for the first page).","title":"Page Token"}},"required":["account_sid"],"title":"list_applicationsArguments","type":"object"}}}},"responses":{"200":{"description":"Tool result. `ok: true` on success; `ok: false` with a structured `error` (provider_unavailable, upstream_error, bad_input) when the tool could not answer.","content":{"application/json":{"schema":{"type":"object","additionalProperties":true}}}},"422":{"description":"Arguments failed validation","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"429":{"description":"Rate limit exceeded (see Retry-After)","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}},"x-read-only":true}},"/v1/tools/list_recordings":{"post":{"operationId":"list_recordings","summary":"List recording metadata (call, conference, duration, status, source, price). The audio and media URL are not returned. U","description":"List recording metadata (call, conference, duration, status, source, price). The audio and media URL are not returned. Use for \"How many call recordings do I have from last week\".","tags":["tools"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"properties":{"account_sid":{"description":"The Twilio Account SID: 'AC' followed by 32 hex characters (shown on the Twilio console home page).","maxLength":34,"title":"Account Sid","type":"string"},"call_sid":{"anyOf":[{"maxLength":34,"type":"string"},{"type":"null"}],"default":null,"description":"Only recordings of this call (CA followed by 32 hex characters).","title":"Call Sid"},"conference_sid":{"anyOf":[{"maxLength":34,"type":"string"},{"type":"null"}],"default":null,"description":"Only recordings of this conference (CF followed by 32 hex characters).","title":"Conference Sid"},"date_created":{"anyOf":[{"maxLength":10,"type":"string"},{"type":"null"}],"default":null,"description":"Only recordings created on this day (YYYY-MM-DD, GMT).","title":"Date Created"},"page_size":{"anyOf":[{"maximum":1000,"minimum":1,"type":"integer"},{"type":"null"}],"default":50,"description":"How many results to return (1 to 1000).","title":"Page Size"},"page_token":{"anyOf":[{"maxLength":300,"type":"string"},{"type":"null"}],"default":null,"description":"Paging token: take the PageToken value from next_page_uri in the previous answer (leave empty for the first page).","title":"Page Token"}},"required":["account_sid"],"title":"list_recordingsArguments","type":"object"}}}},"responses":{"200":{"description":"Tool result. `ok: true` on success; `ok: false` with a structured `error` (provider_unavailable, upstream_error, bad_input) when the tool could not answer.","content":{"application/json":{"schema":{"type":"object","additionalProperties":true}}}},"422":{"description":"Arguments failed validation","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"429":{"description":"Rate limit exceeded (see Retry-After)","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}},"x-read-only":true}}}}