{"openapi":"3.1.0","info":{"title":"CloudPayments (BYOK) API","version":"0.1.0","description":"CloudPayments (BYOK) lets an AI assistant read your own CloudPayments data through the CloudPayments API with a key you supply (Public ID of the site (login)). Read-only: 6 tools (test_connection, get_transaction, find_payment_by_invoice, list_transactions_by_day, get_subscription, find_subscriptions). The BYOK key travels with each request, is used for that one call only and is never stored,...\n\nEvery operation is read-only or compute-only. The same tools are available over MCP (streamable HTTP) at https://byok-cloudpayments.connectorbay.com/mcp.","contact":{"name":"Unify Dynamics LLC","email":"agent@connectorbay.com","url":"https://connectorbay.com/byok-cloudpayments/docs"},"termsOfService":"https://connectorbay.com/byok-cloudpayments/terms"},"servers":[{"url":"https://byok-cloudpayments.connectorbay.com"}],"externalDocs":{"url":"https://connectorbay.com/byok-cloudpayments/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/test_connection":{"post":{"operationId":"test_connection","summary":"Check that the Public ID and API secret work; returns a success flag and a request id. Use for \"Do my CloudPayments cred","description":"Check that the Public ID and API secret work; returns a success flag and a request id. Use for \"Do my CloudPayments credentials work\".","tags":["tools"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"properties":{},"title":"test_connectionArguments","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_transaction":{"post":{"operationId":"get_transaction","summary":"Get one transaction by its number: amount, currency, order id, status and reason, payout amount, dates, card brand and i","description":"Get one transaction by its number: amount, currency, order id, status and reason, payout amount, dates, card brand and issuing country. Card numbers, names and IP addresses are not returned by this tool. Use for \"What is the status of CloudPayments transaction 504\".","tags":["tools"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"properties":{"transaction_id":{"description":"Transaction number (integer).","minimum":1,"title":"Transaction Id","type":"integer"}},"required":["transaction_id"],"title":"get_transactionArguments","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/find_payment_by_invoice":{"post":{"operationId":"find_payment_by_invoice","summary":"Find the payment for an order or invoice number and return its status; if several attempts exist, all payments for the o","description":"Find the payment for an order or invoice number and return its status; if several attempts exist, all payments for the order are searched. Use for \"Was CloudPayments order 1234567 paid\".","tags":["tools"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"properties":{"invoice_id":{"description":"Order or invoice number used when the payment was created.","maxLength":100,"title":"Invoice Id","type":"string"}},"required":["invoice_id"],"title":"find_payment_by_invoiceArguments","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_transactions_by_day":{"post":{"operationId":"list_transactions_by_day","summary":"List all transactions registered on one day, with amount, order id, status and reason, payout amount and dates (card num","description":"List all transactions registered on one day, with amount, order id, status and reason, payout amount and dates (card numbers are not returned by this tool). Use for \"Which CloudPayments transactions happened on 2026-10-01\".","tags":["tools"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"properties":{"date":{"description":"Day to list, YYYY-MM-DD.","maxLength":10,"title":"Date","type":"string"},"time_zone":{"anyOf":[{"maxLength":10,"type":"string"},{"type":"null"}],"default":null,"description":"Time zone code such as MSK (default UTC).","title":"Time Zone"}},"required":["date"],"title":"list_transactions_by_dayArguments","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_subscription":{"post":{"operationId":"get_subscription","summary":"Get one recurring-payment subscription by id: amount, interval, status, number of successful and failed charges and next","description":"Get one recurring-payment subscription by id: amount, interval, status, number of successful and failed charges and next charge date. Use for \"What is the state of CloudPayments subscription sc_8cf8a9338fb8ebf7202b08d09c938\".","tags":["tools"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"properties":{"subscription_id":{"description":"Subscription id starting with 'sc_'.","maxLength":64,"title":"Subscription Id","type":"string"}},"required":["subscription_id"],"title":"get_subscriptionArguments","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/find_subscriptions":{"post":{"operationId":"find_subscriptions","summary":"List the subscriptions of one payer account id (the AccountId the shop used, often a user id or email) with amount, inte","description":"List the subscriptions of one payer account id (the AccountId the shop used, often a user id or email) with amount, interval and status. Use for \"Which CloudPayments subscriptions does account user_x have\".","tags":["tools"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"properties":{"account_id":{"description":"The payer's account id as sent by the shop when the payment was made.","maxLength":100,"title":"Account Id","type":"string"}},"required":["account_id"],"title":"find_subscriptionsArguments","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}}}}