{"openapi":"3.1.0","info":{"title":"Partnero (BYOK) API","version":"0.1.0","description":"Partnero (BYOK) lets an AI assistant read your own Partnero data through the Partnero API with a key you supply (Partnero program API key). Read-only: 8 tools (get_program_stats, list_partners, list_transactions, list_payout_requests, search_payout_requests, list_coupons, list_promotion_codes, list_partner_referral_links). The BYOK key travels with each request, is used for that one call only and...\n\nEvery operation is read-only or compute-only. The same tools are available over MCP (streamable HTTP) at https://byok-partnero.connectorbay.com/mcp.","contact":{"name":"Unify Dynamics LLC","email":"agent@connectorbay.com","url":"https://connectorbay.com/byok-partnero/docs"},"termsOfService":"https://connectorbay.com/byok-partnero/terms"},"servers":[{"url":"https://byok-partnero.connectorbay.com"}],"externalDocs":{"url":"https://connectorbay.com/byok-partnero/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_program_stats":{"post":{"operationId":"get_program_stats","summary":"Get the program's headline numbers: type, name, partners, signups, purchases, paid accounts, revenue, rewards, click-to-","description":"Get the program's headline numbers: type, name, partners, signups, purchases, paid accounts, revenue, rewards, click-to-signup and signup-to-sale conversion, plus the commission and cookie settings. Fields differ between affiliate and refer-a-friend programs. Use for \"How is my Partnero affiliate program performing\".","tags":["tools"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"properties":{},"title":"get_program_statsArguments","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_partners":{"post":{"operationId":"list_partners","summary":"List the program's affiliate partners with id, status, approval flag and join date. Names and email addresses are not re","description":"List the program's affiliate partners with id, status, approval flag and join date. Names and email addresses are not returned. Use for \"How many affiliate partners are active in Partnero\".","tags":["tools"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"properties":{"limit":{"anyOf":[{"maximum":100,"minimum":10,"type":"integer"},{"type":"null"}],"default":10,"description":"How many results per page (10 to 100).","title":"Limit"},"page":{"anyOf":[{"maximum":10000,"minimum":1,"type":"integer"},{"type":"null"}],"default":1,"description":"Page number, starting at 1.","title":"Page"}},"title":"list_partnersArguments","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":{"post":{"operationId":"list_transactions","summary":"List recorded sales transactions with action, amount, currency, partner key and date, 10 to 100 per page, optionally for","description":"List recorded sales transactions with action, amount, currency, partner key and date, 10 to 100 per page, optionally for one partner referral key. Use for \"What affiliate sales were recorded recently in Partnero\".","tags":["tools"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"properties":{"limit":{"anyOf":[{"maximum":100,"minimum":10,"type":"integer"},{"type":"null"}],"default":10,"description":"How many results per page (10 to 100).","title":"Limit"},"page":{"anyOf":[{"maximum":10000,"minimum":1,"type":"integer"},{"type":"null"}],"default":1,"description":"Page number, starting at 1.","title":"Page"},"partner_key":{"anyOf":[{"maxLength":200,"type":"string"},{"type":"null"}],"default":null,"description":"Only transactions of the partner with this referral key.","title":"Partner Key"}},"title":"list_transactionsArguments","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_payout_requests":{"post":{"operationId":"list_payout_requests","summary":"List partner payout requests with partner id, status, amount, currency, payout gateway and who created them, newest firs","description":"List partner payout requests with partner id, status, amount, currency, payout gateway and who created them, newest first by default. Use for \"Which Partnero payout requests are waiting\".","tags":["tools"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"properties":{"limit":{"anyOf":[{"maximum":100,"minimum":10,"type":"integer"},{"type":"null"}],"default":10,"description":"How many results per page (10 to 100).","title":"Limit"},"page":{"anyOf":[{"maximum":10000,"minimum":1,"type":"integer"},{"type":"null"}],"default":1,"description":"Page number, starting at 1.","title":"Page"},"sort":{"anyOf":[{"enum":["asc","desc"],"type":"string"},{"type":"null"}],"default":"desc","description":"Order by creation date: desc (newest first) or asc.","title":"Sort"}},"title":"list_payout_requestsArguments","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_payout_requests":{"post":{"operationId":"search_payout_requests","summary":"Search payout requests by partner id, status or currency (filters combine with AND). Use for \"Show approved USD payout r","description":"Search payout requests by partner id, status or currency (filters combine with AND). Use for \"Show approved USD payout requests from Partnero\".","tags":["tools"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"properties":{"limit":{"anyOf":[{"maximum":100,"minimum":10,"type":"integer"},{"type":"null"}],"default":10,"description":"How many results per page (10 to 100).","title":"Limit"},"page":{"anyOf":[{"maximum":10000,"minimum":1,"type":"integer"},{"type":"null"}],"default":1,"description":"Page number, starting at 1.","title":"Page"},"partner_id":{"anyOf":[{"maxLength":200,"type":"string"},{"type":"null"}],"default":null,"description":"Only requests of this partner id.","title":"Partner Id"},"status":{"anyOf":[{"maxLength":200,"type":"string"},{"type":"null"}],"default":null,"description":"Only requests with this status, for example requested, approved, paid or rejected.","title":"Status"},"amount_units":{"anyOf":[{"maxLength":200,"type":"string"},{"type":"null"}],"default":null,"description":"Only requests in this currency code (case-insensitive), for example usd.","title":"Amount Units"}},"title":"search_payout_requestsArguments","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_coupons":{"post":{"operationId":"list_coupons","summary":"List discount coupons used for coupon-based partner tracking with discount type and amount, duration, active flag and re","description":"List discount coupons used for coupon-based partner tracking with discount type and amount, duration, active flag and redemption count. Use for \"Which Partnero coupons exist and how often were they redeemed\".","tags":["tools"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"properties":{"limit":{"anyOf":[{"maximum":100,"minimum":10,"type":"integer"},{"type":"null"}],"default":10,"description":"How many results per page (10 to 100).","title":"Limit"},"page":{"anyOf":[{"maximum":10000,"minimum":1,"type":"integer"},{"type":"null"}],"default":1,"description":"Page number, starting at 1.","title":"Page"}},"title":"list_couponsArguments","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_promotion_codes":{"post":{"operationId":"list_promotion_codes","summary":"List promotion codes that link coupons to partners, with minimum order, expiry and redemption settings and times redeeme","description":"List promotion codes that link coupons to partners, with minimum order, expiry and redemption settings and times redeemed. Use for \"Which Partnero promotion codes are set up\".","tags":["tools"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"properties":{"limit":{"anyOf":[{"maximum":100,"minimum":10,"type":"integer"},{"type":"null"}],"default":10,"description":"How many results per page (10 to 100).","title":"Limit"},"page":{"anyOf":[{"maximum":10000,"minimum":1,"type":"integer"},{"type":"null"}],"default":1,"description":"Page number, starting at 1.","title":"Page"}},"title":"list_promotion_codesArguments","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_partner_referral_links":{"post":{"operationId":"list_partner_referral_links","summary":"List the referral links of one partner (key, tracked URL, default flag and direct-tracking setting). Use for \"What refer","description":"List the referral links of one partner (key, tracked URL, default flag and direct-tracking setting). Use for \"What referral links does partner_123 have\".","tags":["tools"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"properties":{"partner_id":{"description":"Partner id from list_partners.","maxLength":200,"title":"Partner Id","type":"string"},"limit":{"anyOf":[{"maximum":100,"minimum":10,"type":"integer"},{"type":"null"}],"default":10,"description":"How many results per page (10 to 100).","title":"Limit"},"page":{"anyOf":[{"maximum":10000,"minimum":1,"type":"integer"},{"type":"null"}],"default":1,"description":"Page number, starting at 1.","title":"Page"}},"required":["partner_id"],"title":"list_partner_referral_linksArguments","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}}}}