{"openapi":"3.1.0","info":{"title":"Carbone (BYOK) API","version":"0.1.0","description":"Carbone (BYOK) lets an AI assistant read your own Carbone data through the Carbone API with a key you supply (API token (production or test)). Read-only: 5 tools (list_templates, search_templates, list_template_versions, list_template_categories, list_template_tags). The BYOK key travels with each request, is used for that one call only and is never stored, logged or cached; it is only ever sent...\n\nEvery operation is read-only or compute-only. The same tools are available over MCP (streamable HTTP) at https://byok-carbone.connectorbay.com/mcp.","contact":{"name":"Unify Dynamics LLC","email":"agent@connectorbay.com","url":"https://connectorbay.com/byok-carbone/docs"},"termsOfService":"https://connectorbay.com/byok-carbone/terms"},"servers":[{"url":"https://byok-carbone.connectorbay.com"}],"externalDocs":{"url":"https://connectorbay.com/byok-carbone/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_templates":{"post":{"operationId":"list_templates","summary":"List the deployed Carbone templates, newest first. Each template has ID, version ID, name, file type, category, comment,","description":"List the deployed Carbone templates, newest first. Each template has ID, version ID, name, file type, category, comment, tags, upload origin (0 API, 1 Studio, 2 Salesforce, 3 Odoo, 4 HubSpot), size and timestamps. Use for \"What Carbone templates do I have\".","tags":["tools"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"properties":{"category":{"anyOf":[{"maxLength":100,"type":"string"},{"type":"null"}],"default":null,"description":"Only templates in this category (folder-like label).","title":"Category"},"origin":{"anyOf":[{"maximum":4,"minimum":0,"type":"integer"},{"type":"null"}],"default":null,"description":"Only templates uploaded through this channel: 0 API, 1 Studio, 2 Salesforce, 3 Odoo, 4 HubSpot.","title":"Origin"},"limit":{"anyOf":[{"maximum":100,"minimum":1,"type":"integer"},{"type":"null"}],"default":50,"description":"How many templates to return (1 to 100).","title":"Limit"},"cursor":{"anyOf":[{"maxLength":500,"type":"string"},{"type":"null"}],"default":null,"description":"Cursor for the next page: nextCursor from the previous answer, used while hasMore is true. Leave out for the first page.","title":"Cursor"}},"title":"list_templatesArguments","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/search_templates":{"post":{"operationId":"search_templates","summary":"Search Carbone templates by name (fuzzy), or by exact template ID or version ID. Each template has ID, version ID, name,","description":"Search Carbone templates by name (fuzzy), or by exact template ID or version ID. Each template has ID, version ID, name, file type, category, comment, tags, upload origin (0 API, 1 Studio, 2 Salesforce, 3 Odoo, 4 HubSpot), size and timestamps. Use for \"Find the Carbone template called invoice\".","tags":["tools"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"properties":{"search":{"description":"Name words (fuzzy), or an exact template ID or version ID.","maxLength":200,"title":"Search","type":"string"},"limit":{"anyOf":[{"maximum":100,"minimum":1,"type":"integer"},{"type":"null"}],"default":50,"description":"How many templates to return (1 to 100).","title":"Limit"}},"required":["search"],"title":"search_templatesArguments","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_template_versions":{"post":{"operationId":"list_template_versions","summary":"List every deployed version of one Carbone template, newest first, with version ID and timestamps. Use for \"What version","description":"List every deployed version of one Carbone template, newest first, with version ID and timestamps. Use for \"What versions of Carbone template 6f8e1d2c3b4a5968 exist\".","tags":["tools"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"properties":{"id":{"description":"Template ID (64-bit ID of the template).","maxLength":64,"title":"Id","type":"string"},"include_versions":{"anyOf":[{"type":"boolean"},{"type":"null"}],"default":true,"description":"True to list all versions of the template, false for the latest only.","title":"Include Versions"},"limit":{"anyOf":[{"maximum":100,"minimum":1,"type":"integer"},{"type":"null"}],"default":50,"description":"How many templates to return (1 to 100).","title":"Limit"}},"required":["id"],"title":"list_template_versionsArguments","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_template_categories":{"post":{"operationId":"list_template_categories","summary":"List the categories used by your Carbone templates, sorted by name. Use for \"What template categories exist in Carbone\".","description":"List the categories used by your Carbone templates, sorted by name. Use for \"What template categories exist in Carbone\".","tags":["tools"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"properties":{},"title":"list_template_categoriesArguments","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_template_tags":{"post":{"operationId":"list_template_tags","summary":"List the tags used by your Carbone templates, sorted by name. Use for \"What tags are used on Carbone templates\".","description":"List the tags used by your Carbone templates, sorted by name. Use for \"What tags are used on Carbone templates\".","tags":["tools"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"properties":{},"title":"list_template_tagsArguments","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}}}}