{"openapi":"3.1.0","info":{"title":"GoCardless (BYOK) API","version":"0.1.0","description":"GoCardless (BYOK) lets an AI assistant read your own GoCardless data through the GoCardless API with a key you supply (GoCardless live access token (read-only scope is enough)). Read-only: 7 tools (list_tax_rates, get_tax_rate, list_currency_exchange_rates, list_billing_request_templates, get_billing_request_template, list_scheme_identifiers, list_negative_balance_limits). The BYOK key travels...\n\nEvery operation is read-only or compute-only. The same tools are available over MCP (streamable HTTP) at https://byok-gocardless-config.connectorbay.com/mcp.","contact":{"name":"Unify Dynamics LLC","email":"agent@connectorbay.com","url":"https://connectorbay.com/byok-gocardless-config/docs"},"termsOfService":"https://connectorbay.com/byok-gocardless-config/terms"},"servers":[{"url":"https://byok-gocardless-config.connectorbay.com"}],"externalDocs":{"url":"https://connectorbay.com/byok-gocardless-config/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_tax_rates":{"post":{"operationId":"list_tax_rates","summary":"List the tax rates GoCardless applies to its fees: jurisdiction, percentage, type and validity dates. Use for \"What tax ","description":"List the tax rates GoCardless applies to its fees: jurisdiction, percentage, type and validity dates. Use for \"What tax rates does GoCardless use for GB\".","tags":["tools"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"properties":{"limit":{"anyOf":[{"maximum":500,"minimum":1,"type":"integer"},{"type":"null"}],"default":50,"description":"How many records to return (1 to 500; provider default 50).","title":"Limit"},"after":{"anyOf":[{"maxLength":100,"type":"string"},{"type":"null"}],"default":null,"description":"Cursor from the previous answer's meta.cursors.after, for the next page.","title":"After"},"jurisdiction":{"anyOf":[{"maxLength":20,"type":"string"},{"type":"null"}],"default":null,"description":"Only rates for this jurisdiction, for example 'GB'.","title":"Jurisdiction"}},"title":"list_tax_ratesArguments","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_tax_rate":{"post":{"operationId":"get_tax_rate","summary":"Get one tax rate by id: jurisdiction, percentage, type and validity dates. Use for \"Show GoCardless tax rate TXR000\".","description":"Get one tax rate by id: jurisdiction, percentage, type and validity dates. Use for \"Show GoCardless tax rate TXR000\".","tags":["tools"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"properties":{"identity":{"description":"GoCardless tax rate id, for example 'TXR000'.","maxLength":200,"title":"Identity","type":"string"}},"required":["identity"],"title":"get_tax_rateArguments","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_currency_exchange_rates":{"post":{"operationId":"list_currency_exchange_rates","summary":"List currency exchange rates GoCardless uses for conversion, newest first, filtered by source and target currency. Use f","description":"List currency exchange rates GoCardless uses for conversion, newest first, filtered by source and target currency. Use for \"What is the current GBP to EUR exchange rate in GoCardless\".","tags":["tools"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"properties":{"limit":{"anyOf":[{"maximum":500,"minimum":1,"type":"integer"},{"type":"null"}],"default":50,"description":"How many records to return (1 to 500; provider default 50).","title":"Limit"},"after":{"anyOf":[{"maxLength":100,"type":"string"},{"type":"null"}],"default":null,"description":"Cursor from the previous answer's meta.cursors.after, for the next page.","title":"After"},"source":{"anyOf":[{"maxLength":3,"type":"string"},{"type":"null"}],"default":null,"description":"Only rates from this three-letter currency code, for example 'GBP'.","title":"Source"},"target":{"anyOf":[{"maxLength":3,"type":"string"},{"type":"null"}],"default":null,"description":"Only rates to this three-letter currency code, for example 'EUR'.","title":"Target"}},"title":"list_currency_exchange_ratesArguments","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_billing_request_templates":{"post":{"operationId":"list_billing_request_templates","summary":"List billing request templates (reusable mandate and payment setups) with scheme, currency, description, fixed payment a","description":"List billing request templates (reusable mandate and payment setups) with scheme, currency, description, fixed payment amount and verification mode. Use for \"Which billing request templates are defined in GoCardless\".","tags":["tools"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"properties":{"limit":{"anyOf":[{"maximum":500,"minimum":1,"type":"integer"},{"type":"null"}],"default":50,"description":"How many records to return (1 to 500; provider default 50).","title":"Limit"},"after":{"anyOf":[{"maxLength":100,"type":"string"},{"type":"null"}],"default":null,"description":"Cursor from the previous answer's meta.cursors.after, for the next page.","title":"After"}},"title":"list_billing_request_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/get_billing_request_template":{"post":{"operationId":"get_billing_request_template","summary":"Get one billing request template by id: scheme, currency, descriptions, payment amount and verification mode. Use for \"S","description":"Get one billing request template by id: scheme, currency, descriptions, payment amount and verification mode. Use for \"Show GoCardless billing request template BRT000\".","tags":["tools"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"properties":{"identity":{"description":"GoCardless billing request template id, for example 'BRT000'.","maxLength":200,"title":"Identity","type":"string"}},"required":["identity"],"title":"get_billing_request_templateArguments","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_scheme_identifiers":{"post":{"operationId":"list_scheme_identifiers","summary":"List the scheme identifiers (such as Bacs service user numbers or SEPA creditor identifiers) with scheme, currency, stat","description":"List the scheme identifiers (such as Bacs service user numbers or SEPA creditor identifiers) with scheme, currency, status and advance notice. Contact details are not returned. Use for \"Which scheme identifiers does my GoCardless account have\".","tags":["tools"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"properties":{"limit":{"anyOf":[{"maximum":500,"minimum":1,"type":"integer"},{"type":"null"}],"default":50,"description":"How many records to return (1 to 500; provider default 50).","title":"Limit"},"after":{"anyOf":[{"maxLength":100,"type":"string"},{"type":"null"}],"default":null,"description":"Cursor from the previous answer's meta.cursors.after, for the next page.","title":"After"},"creditor":{"anyOf":[{"maxLength":40,"type":"string"},{"type":"null"}],"default":null,"description":"Only identifiers of this creditor id.","title":"Creditor"}},"title":"list_scheme_identifiersArguments","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_negative_balance_limits":{"post":{"operationId":"list_negative_balance_limits","summary":"List the negative balance limits set per creditor and currency (how far a balance may go below zero). Use for \"What nega","description":"List the negative balance limits set per creditor and currency (how far a balance may go below zero). Use for \"What negative balance limits are set in GoCardless\".","tags":["tools"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"properties":{"limit":{"anyOf":[{"maximum":500,"minimum":1,"type":"integer"},{"type":"null"}],"default":50,"description":"How many records to return (1 to 500; provider default 50).","title":"Limit"},"after":{"anyOf":[{"maxLength":100,"type":"string"},{"type":"null"}],"default":null,"description":"Cursor from the previous answer's meta.cursors.after, for the next page.","title":"After"},"currency":{"anyOf":[{"maxLength":3,"type":"string"},{"type":"null"}],"default":null,"description":"Only limits in this three-letter currency code.","title":"Currency"},"creditor":{"anyOf":[{"maxLength":40,"type":"string"},{"type":"null"}],"default":null,"description":"Only limits of this creditor id.","title":"Creditor"}},"title":"list_negative_balance_limitsArguments","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}}}}