{"openapi":"3.1.0","info":{"title":"PawaPay (BYOK) API","version":"0.1.0","description":"PawaPay (BYOK) lets an AI assistant read your own PawaPay data through the PawaPay API with a key you supply (production API token). Read-only: 9 tools (get_wallet_balances, get_deposit_status, get_payout_status, get_refund_status, get_remittance_status, get_checkout_status, get_statement_status, get_provider_availability, get_active_configuration). The BYOK key travels with each request, is used...\n\nEvery operation is read-only or compute-only. The same tools are available over MCP (streamable HTTP) at https://byok-pawapay.connectorbay.com/mcp.","contact":{"name":"Unify Dynamics LLC","email":"agent@connectorbay.com","url":"https://connectorbay.com/byok-pawapay/docs"},"termsOfService":"https://connectorbay.com/byok-pawapay/terms"},"servers":[{"url":"https://byok-pawapay.connectorbay.com"}],"externalDocs":{"url":"https://connectorbay.com/byok-pawapay/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_wallet_balances":{"post":{"operationId":"get_wallet_balances","summary":"List PawaPay wallet balances per country, currency and provider, optionally for one country. Use for \"What are my PawaPa","description":"List PawaPay wallet balances per country, currency and provider, optionally for one country. Use for \"What are my PawaPay wallet balances\".","tags":["tools"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"properties":{"country":{"anyOf":[{"maxLength":3,"type":"string"},{"type":"null"}],"default":null,"description":"Limit to one country, ISO 3166-1 alpha-3 code such as 'ZMB' or 'GHA'.","title":"Country"}},"title":"get_wallet_balancesArguments","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_deposit_status":{"post":{"operationId":"get_deposit_status","summary":"Get the status of one deposit (customer payment) by id: status, amount, currency, country, mobile money provider, your c","description":"Get the status of one deposit (customer payment) by id: status, amount, currency, country, mobile money provider, your client reference and failure reason. The payer's phone number is not returned. Use for \"Was PawaPay deposit 8917c345-4791-4285-a416-62f24b6982db completed\".","tags":["tools"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"properties":{"deposit_id":{"description":"Deposit id (UUID, 36 characters) that you chose when creating the deposit.","maxLength":36,"title":"Deposit Id","type":"string"}},"required":["deposit_id"],"title":"get_deposit_statusArguments","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_payout_status":{"post":{"operationId":"get_payout_status","summary":"Get the status of one payout by id: status, amount, currency, country, provider, your client reference and failure reaso","description":"Get the status of one payout by id: status, amount, currency, country, provider, your client reference and failure reason. The recipient's phone number is not returned. Use for \"Did PawaPay payout 8917c345-4791-4285-a416-62f24b6982db go through\".","tags":["tools"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"properties":{"payout_id":{"description":"Payout id (UUID, 36 characters).","maxLength":36,"title":"Payout Id","type":"string"}},"required":["payout_id"],"title":"get_payout_statusArguments","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_refund_status":{"post":{"operationId":"get_refund_status","summary":"Get the status of one refund by id: status, amount, currency, country, provider and failure reason. Use for \"What is the","description":"Get the status of one refund by id: status, amount, currency, country, provider and failure reason. Use for \"What is the status of PawaPay refund 8917c345-4791-4285-a416-62f24b6982db\".","tags":["tools"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"properties":{"refund_id":{"description":"Refund id (UUID, 36 characters).","maxLength":36,"title":"Refund Id","type":"string"}},"required":["refund_id"],"title":"get_refund_statusArguments","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_remittance_status":{"post":{"operationId":"get_remittance_status","summary":"Get the status of one remittance by id: status, amount, currency, country, provider and failure reason. Use for \"Has Paw","description":"Get the status of one remittance by id: status, amount, currency, country, provider and failure reason. Use for \"Has PawaPay remittance 8917c345-4791-4285-a416-62f24b6982db completed\".","tags":["tools"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"properties":{"remittance_id":{"description":"Remittance id (UUID, 36 characters).","maxLength":36,"title":"Remittance Id","type":"string"}},"required":["remittance_id"],"title":"get_remittance_statusArguments","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_checkout_status":{"post":{"operationId":"get_checkout_status","summary":"Get the state of one hosted checkout by id: status, redirect URL, creation time and the deposits attempted through it. U","description":"Get the state of one hosted checkout by id: status, redirect URL, creation time and the deposits attempted through it. Use for \"What is the state of PawaPay checkout afb57b93-7849-49aa-babb-4c3ccbfe3d79\".","tags":["tools"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"properties":{"checkout_id":{"description":"Checkout id (UUID, 36 characters).","maxLength":36,"title":"Checkout Id","type":"string"}},"required":["checkout_id"],"title":"get_checkout_statusArguments","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_statement_status":{"post":{"operationId":"get_statement_status","summary":"Check a previously requested wallet statement by id: status, wallet, period and, when completed, a short-lived download ","description":"Check a previously requested wallet statement by id: status, wallet, period and, when completed, a short-lived download link. Statements cannot be requested with this connector. Use for \"Is PawaPay statement 8917c345-4791-4285-a416-62f24b6982db ready\".","tags":["tools"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"properties":{"statement_id":{"description":"Statement id (UUID, 36 characters).","maxLength":36,"title":"Statement Id","type":"string"}},"required":["statement_id"],"title":"get_statement_statusArguments","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_provider_availability":{"post":{"operationId":"get_provider_availability","summary":"Show whether mobile money providers are operational, delayed or closed per country and operation type, optionally for on","description":"Show whether mobile money providers are operational, delayed or closed per country and operation type, optionally for one country or operation. Use for \"Are PawaPay payouts in Ghana operational right now\".","tags":["tools"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"properties":{"country":{"anyOf":[{"maxLength":3,"type":"string"},{"type":"null"}],"default":null,"description":"Limit to one country, ISO 3166-1 alpha-3 code such as 'ZMB' or 'GHA'.","title":"Country"},"operation_type":{"anyOf":[{"enum":["DEPOSIT","PAYOUT","REFUND","REMITTANCE"],"type":"string"},{"type":"null"}],"default":null,"description":"Limit to one operation.","title":"Operation Type"}},"title":"get_provider_availabilityArguments","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_active_configuration":{"post":{"operationId":"get_active_configuration","summary":"Show your account configuration: company name and the countries, providers, currencies and operation types enabled, opti","description":"Show your account configuration: company name and the countries, providers, currencies and operation types enabled, optionally filtered by country or operation. Use for \"Which countries and providers are enabled on my PawaPay account\".","tags":["tools"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"properties":{"country":{"anyOf":[{"maxLength":3,"type":"string"},{"type":"null"}],"default":null,"description":"Limit to one country, ISO 3166-1 alpha-3 code such as 'ZMB' or 'GHA'.","title":"Country"},"operation_type":{"anyOf":[{"enum":["DEPOSIT","PAYOUT","REMITTANCE","PUSH_DEPOSIT","REFUND","NAME_LOOKUP"],"type":"string"},{"type":"null"}],"default":null,"description":"Limit to one operation type.","title":"Operation Type"}},"title":"get_active_configurationArguments","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}}}}