{"openapi":"3.1.0","info":{"title":"Gladly (BYOK) API","version":"0.1.0","description":"Gladly (BYOK) lets an AI assistant read your own Gladly data through the Gladly API with a key you supply (Gladly agent email address of the API user). Read-only: 11 tools (get_organization, list_teams, list_agents, list_inboxes, list_topics, list_business_hours, list_audiences, list_answers, list_channel_endpoints, list_export_schedules, list_export_jobs). The BYOK key travels with each request,...\n\nEvery operation is read-only or compute-only. The same tools are available over MCP (streamable HTTP) at https://byok-gladly.connectorbay.com/mcp.","contact":{"name":"Unify Dynamics LLC","email":"agent@connectorbay.com","url":"https://connectorbay.com/byok-gladly/docs"},"termsOfService":"https://connectorbay.com/byok-gladly/terms"},"servers":[{"url":"https://byok-gladly.connectorbay.com"}],"externalDocs":{"url":"https://connectorbay.com/byok-gladly/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/get_organization":{"post":{"operationId":"get_organization","summary":"Show the Gladly organization: name, time zone, login domain and Gladly URL. Use for \"Which Gladly organization is my API","description":"Show the Gladly organization: name, time zone, login domain and Gladly URL. Use for \"Which Gladly organization is my API token for\".","tags":["tools"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"properties":{"organization":{"description":"Your Gladly organization subdomain, the first part of <organization>.gladly.com.","maxLength":200,"pattern":"^[a-z0-9]([a-z0-9-]{0,61}[a-z0-9])?$","title":"Organization","type":"string"}},"required":["organization"],"title":"get_organizationArguments","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_teams":{"post":{"operationId":"list_teams","summary":"List teams with description and the ids of their member agents. Use for \"What support teams exist in Gladly\".","description":"List teams with description and the ids of their member agents. Use for \"What support teams exist in Gladly\".","tags":["tools"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"properties":{"organization":{"description":"Your Gladly organization subdomain, the first part of <organization>.gladly.com.","maxLength":200,"pattern":"^[a-z0-9]([a-z0-9-]{0,61}[a-z0-9])?$","title":"Organization","type":"string"}},"required":["organization"],"title":"list_teamsArguments","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_agents":{"post":{"operationId":"list_agents","summary":"List agents (id and name only; email addresses are left out). Use for \"Who are the agents in our Gladly organization\".","description":"List agents (id and name only; email addresses are left out). Use for \"Who are the agents in our Gladly organization\".","tags":["tools"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"properties":{"organization":{"description":"Your Gladly organization subdomain, the first part of <organization>.gladly.com.","maxLength":200,"pattern":"^[a-z0-9]([a-z0-9-]{0,61}[a-z0-9])?$","title":"Organization","type":"string"}},"required":["organization"],"title":"list_agentsArguments","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_inboxes":{"post":{"operationId":"list_inboxes","summary":"List inboxes with their id, name and disabled flag. Use for \"Which inboxes are set up in Gladly\".","description":"List inboxes with their id, name and disabled flag. Use for \"Which inboxes are set up in Gladly\".","tags":["tools"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"properties":{"organization":{"description":"Your Gladly organization subdomain, the first part of <organization>.gladly.com.","maxLength":200,"pattern":"^[a-z0-9]([a-z0-9-]{0,61}[a-z0-9])?$","title":"Organization","type":"string"}},"required":["organization"],"title":"list_inboxesArguments","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_topics":{"post":{"operationId":"list_topics","summary":"List conversation topics with parent topic and disabled flag. Use for \"What topics can conversations be tagged with in G","description":"List conversation topics with parent topic and disabled flag. Use for \"What topics can conversations be tagged with in Gladly\".","tags":["tools"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"properties":{"organization":{"description":"Your Gladly organization subdomain, the first part of <organization>.gladly.com.","maxLength":200,"pattern":"^[a-z0-9]([a-z0-9-]{0,61}[a-z0-9])?$","title":"Organization","type":"string"}},"required":["organization"],"title":"list_topicsArguments","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_business_hours":{"post":{"operationId":"list_business_hours","summary":"List business hour schedules with time zone, primary flag and weekly office hours. Use for \"What are our support busines","description":"List business hour schedules with time zone, primary flag and weekly office hours. Use for \"What are our support business hours in Gladly\".","tags":["tools"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"properties":{"organization":{"description":"Your Gladly organization subdomain, the first part of <organization>.gladly.com.","maxLength":200,"pattern":"^[a-z0-9]([a-z0-9-]{0,61}[a-z0-9])?$","title":"Organization","type":"string"}},"required":["organization"],"title":"list_business_hoursArguments","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_audiences":{"post":{"operationId":"list_audiences","summary":"List audiences (customer groups used to target help center answers). Use for \"What audiences are defined in Gladly\".","description":"List audiences (customer groups used to target help center answers). Use for \"What audiences are defined in Gladly\".","tags":["tools"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"properties":{"organization":{"description":"Your Gladly organization subdomain, the first part of <organization>.gladly.com.","maxLength":200,"pattern":"^[a-z0-9]([a-z0-9-]{0,61}[a-z0-9])?$","title":"Organization","type":"string"}},"required":["organization"],"title":"list_audiencesArguments","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_answers":{"post":{"operationId":"list_answers","summary":"List help center answers (titles and descriptions) with the audiences they apply to and creation and update times. Use f","description":"List help center answers (titles and descriptions) with the audiences they apply to and creation and update times. Use for \"Which help center answers do we have in Gladly\".","tags":["tools"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"properties":{"organization":{"description":"Your Gladly organization subdomain, the first part of <organization>.gladly.com.","maxLength":200,"pattern":"^[a-z0-9]([a-z0-9-]{0,61}[a-z0-9])?$","title":"Organization","type":"string"}},"required":["organization"],"title":"list_answersArguments","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_channel_endpoints":{"post":{"operationId":"list_channel_endpoints","summary":"List the channel endpoints the organization uses (phone numbers, email addresses and similar) with their channel type. U","description":"List the channel endpoints the organization uses (phone numbers, email addresses and similar) with their channel type. Use for \"Which phone numbers and email addresses does our Gladly account receive on\".","tags":["tools"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"properties":{"organization":{"description":"Your Gladly organization subdomain, the first part of <organization>.gladly.com.","maxLength":200,"pattern":"^[a-z0-9]([a-z0-9-]{0,61}[a-z0-9])?$","title":"Organization","type":"string"}},"required":["organization"],"title":"list_channel_endpointsArguments","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_export_schedules":{"post":{"operationId":"list_export_schedules","summary":"List data export schedules (hourly or daily conversation exports) with next start time. Use for \"How often are Gladly co","description":"List data export schedules (hourly or daily conversation exports) with next start time. Use for \"How often are Gladly conversation exports scheduled\".","tags":["tools"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"properties":{"organization":{"description":"Your Gladly organization subdomain, the first part of <organization>.gladly.com.","maxLength":200,"pattern":"^[a-z0-9]([a-z0-9-]{0,61}[a-z0-9])?$","title":"Organization","type":"string"}},"required":["organization"],"title":"list_export_schedulesArguments","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_export_jobs":{"post":{"operationId":"list_export_jobs","summary":"List data export jobs with status, schedule and the time window exported (file names only, not contents). Use for \"Did t","description":"List data export jobs with status, schedule and the time window exported (file names only, not contents). Use for \"Did the latest Gladly export job complete\".","tags":["tools"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"properties":{"organization":{"description":"Your Gladly organization subdomain, the first part of <organization>.gladly.com.","maxLength":200,"pattern":"^[a-z0-9]([a-z0-9-]{0,61}[a-z0-9])?$","title":"Organization","type":"string"},"status":{"anyOf":[{"enum":["PENDING","IN_PROGRESS","COMPLETED","FAILED"],"type":"string"},{"type":"null"}],"default":null,"description":"Only jobs in this status.","title":"Status"},"start_at":{"anyOf":[{"maxLength":200,"type":"string"},{"type":"null"}],"default":null,"description":"Only jobs updated at or after this ISO 8601 time.","title":"Start At"},"end_at":{"anyOf":[{"maxLength":200,"type":"string"},{"type":"null"}],"default":null,"description":"Only jobs updated at or before this ISO 8601 time.","title":"End At"}},"required":["organization"],"title":"list_export_jobsArguments","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}}}}