{"openapi":"3.1.0","info":{"title":"Unbounce (BYOK) API","version":"0.1.0","description":"Unbounce (BYOK) lets an AI assistant read your own Unbounce data through the Unbounce API with a key you supply (Unbounce API key). Read-only: 10 tools (get_current_user, list_accounts, list_sub_accounts, list_pages, get_page, list_form_fields, list_page_leads, list_domains, list_page_groups, list_sub_account_pages). The BYOK key travels with each request, is used for that one call only and is...\n\nEvery operation is read-only or compute-only. The same tools are available over MCP (streamable HTTP) at https://byok-unbounce.connectorbay.com/mcp.","contact":{"name":"Unify Dynamics LLC","email":"agent@connectorbay.com","url":"https://connectorbay.com/byok-unbounce/docs"},"termsOfService":"https://connectorbay.com/byok-unbounce/terms"},"servers":[{"url":"https://byok-unbounce.connectorbay.com"}],"externalDocs":{"url":"https://connectorbay.com/byok-unbounce/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_current_user":{"post":{"operationId":"get_current_user","summary":"Show the Unbounce user the API key belongs to: name, email and id. Use for \"Which Unbounce user does my API key belong t","description":"Show the Unbounce user the API key belongs to: name, email and id. Use for \"Which Unbounce user does my API key belong to\".","tags":["tools"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"properties":{},"title":"get_current_userArguments","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_accounts":{"post":{"operationId":"list_accounts","summary":"List the Unbounce accounts the key can see (the primary account and its clients' owner) with state and creation date. Us","description":"List the Unbounce accounts the key can see (the primary account and its clients' owner) with state and creation date. Use for \"Which Unbounce accounts can I reach\".","tags":["tools"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"properties":{"sort_order":{"anyOf":[{"enum":["asc","desc"],"type":"string"},{"type":"null"}],"default":"asc","description":"Sort by creation date: asc (default) or desc.","title":"Sort Order"}},"title":"list_accountsArguments","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_sub_accounts":{"post":{"operationId":"list_sub_accounts","summary":"List the sub-accounts (clients) of an Unbounce account with domain counts. Use for \"Which client sub-accounts does Unbou","description":"List the sub-accounts (clients) of an Unbounce account with domain counts. Use for \"Which client sub-accounts does Unbounce account 1456243 have\".","tags":["tools"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"properties":{"account_id":{"description":"Unbounce account id, from list_accounts.","maxLength":30,"title":"Account Id","type":"string"},"sort_order":{"anyOf":[{"enum":["asc","desc"],"type":"string"},{"type":"null"}],"default":"asc","description":"Sort by creation date: asc (default) or desc.","title":"Sort Order"},"limit":{"anyOf":[{"maximum":1000,"minimum":1,"type":"integer"},{"type":"null"}],"default":50,"description":"How many results to return (default 50, up to 1000).","title":"Limit"},"offset":{"anyOf":[{"maximum":100000,"minimum":0,"type":"integer"},{"type":"null"}],"default":0,"description":"How many results to skip (default 0).","title":"Offset"},"created_after":{"anyOf":[{"maxLength":40,"type":"string"},{"type":"null"}],"default":null,"description":"Only items created after this ISO 8601 time, for example 2026-01-01T00:00:00.000Z.","title":"Created After"},"created_before":{"anyOf":[{"maxLength":40,"type":"string"},{"type":"null"}],"default":null,"description":"Only items created before this ISO 8601 time.","title":"Created Before"}},"required":["account_id"],"title":"list_sub_accountsArguments","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_pages":{"post":{"operationId":"list_pages","summary":"List all landing pages of the account with state, URL, domain, last publish time and integration counts; optionally with","description":"List all landing pages of the account with state, URL, domain, last publish time and integration counts; optionally with visit and conversion stats. Use for \"Which Unbounce landing pages are published\".","tags":["tools"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"properties":{"sort_order":{"anyOf":[{"enum":["asc","desc"],"type":"string"},{"type":"null"}],"default":"asc","description":"Sort by creation date: asc (default) or desc.","title":"Sort Order"},"limit":{"anyOf":[{"maximum":1000,"minimum":1,"type":"integer"},{"type":"null"}],"default":50,"description":"How many results to return (default 50, up to 1000).","title":"Limit"},"offset":{"anyOf":[{"maximum":100000,"minimum":0,"type":"integer"},{"type":"null"}],"default":0,"description":"How many results to skip (default 0).","title":"Offset"},"created_after":{"anyOf":[{"maxLength":40,"type":"string"},{"type":"null"}],"default":null,"description":"Only items created after this ISO 8601 time, for example 2026-01-01T00:00:00.000Z.","title":"Created After"},"created_before":{"anyOf":[{"maxLength":40,"type":"string"},{"type":"null"}],"default":null,"description":"Only items created before this ISO 8601 time.","title":"Created Before"},"with_stats":{"anyOf":[{"type":"boolean"},{"type":"null"}],"default":false,"description":"True to include the page statistics.","title":"With Stats"},"role":{"anyOf":[{"enum":["viewer","author"],"type":"string"},{"type":"null"}],"default":null,"description":"Only pages where the key's user is a viewer or an author.","title":"Role"}},"title":"list_pagesArguments","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_page":{"post":{"operationId":"get_page","summary":"Get one landing page with its current test statistics: visitors, visits, form submits, conversions and conversion rate. ","description":"Get one landing page with its current test statistics: visitors, visits, form submits, conversions and conversion rate. Use for \"What is the conversion rate of Unbounce page a0a3ffdf-5965-4ef2-8414-8afcded91f70\".","tags":["tools"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"properties":{"page_id":{"description":"Unbounce page id (UUID), from list_pages.","maxLength":60,"title":"Page Id","type":"string"}},"required":["page_id"],"title":"get_pageArguments","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_form_fields":{"post":{"operationId":"list_form_fields","summary":"List the form fields (id, label, type, validation) used across all variants of a page. Use for \"Which form fields does U","description":"List the form fields (id, label, type, validation) used across all variants of a page. Use for \"Which form fields does Unbounce page a0a3ffdf-5965-4ef2-8414-8afcded91f70 collect\".","tags":["tools"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"properties":{"page_id":{"description":"Unbounce page id (UUID), from list_pages.","maxLength":60,"title":"Page Id","type":"string"},"sort_order":{"anyOf":[{"enum":["asc","desc"],"type":"string"},{"type":"null"}],"default":"asc","description":"Sort by creation date: asc (default) or desc.","title":"Sort Order"},"include_sub_pages":{"anyOf":[{"type":"boolean"},{"type":"null"}],"default":false,"description":"True to include form fields of sub pages.","title":"Include Sub Pages"}},"required":["page_id"],"title":"list_form_fieldsArguments","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_page_leads":{"post":{"operationId":"list_page_leads","summary":"List the leads captured by one page: submitted form data, variant and creation time (tracking cookies and IP addresses a","description":"List the leads captured by one page: submitted form data, variant and creation time (tracking cookies and IP addresses are left out). Use for \"Show the latest leads from Unbounce page a0a3ffdf-5965-4ef2-8414-8afcded91f70\".","tags":["tools"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"properties":{"page_id":{"description":"Unbounce page id (UUID), from list_pages.","maxLength":60,"title":"Page Id","type":"string"},"sort_order":{"anyOf":[{"enum":["asc","desc"],"type":"string"},{"type":"null"}],"default":"asc","description":"Sort by creation date: asc (default) or desc.","title":"Sort Order"},"limit":{"anyOf":[{"maximum":1000,"minimum":1,"type":"integer"},{"type":"null"}],"default":50,"description":"How many results to return (default 50, up to 1000).","title":"Limit"},"offset":{"anyOf":[{"maximum":100000,"minimum":0,"type":"integer"},{"type":"null"}],"default":0,"description":"How many results to skip (default 0).","title":"Offset"},"created_after":{"anyOf":[{"maxLength":40,"type":"string"},{"type":"null"}],"default":null,"description":"Only items created after this ISO 8601 time, for example 2026-01-01T00:00:00.000Z.","title":"Created After"},"created_before":{"anyOf":[{"maxLength":40,"type":"string"},{"type":"null"}],"default":null,"description":"Only items created before this ISO 8601 time.","title":"Created Before"}},"required":["page_id"],"title":"list_page_leadsArguments","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_domains":{"post":{"operationId":"list_domains","summary":"List the custom domains of a sub-account. Use for \"Which custom domains does Unbounce sub-account 1552433 use\".","description":"List the custom domains of a sub-account. Use for \"Which custom domains does Unbounce sub-account 1552433 use\".","tags":["tools"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"properties":{"sub_account_id":{"description":"Unbounce sub-account (client) id, from list_sub_accounts.","maxLength":30,"title":"Sub Account Id","type":"string"},"sort_order":{"anyOf":[{"enum":["asc","desc"],"type":"string"},{"type":"null"}],"default":"asc","description":"Sort by creation date: asc (default) or desc.","title":"Sort Order"},"limit":{"anyOf":[{"maximum":1000,"minimum":1,"type":"integer"},{"type":"null"}],"default":50,"description":"How many results to return (default 50, up to 1000).","title":"Limit"},"offset":{"anyOf":[{"maximum":100000,"minimum":0,"type":"integer"},{"type":"null"}],"default":0,"description":"How many results to skip (default 0).","title":"Offset"},"created_after":{"anyOf":[{"maxLength":40,"type":"string"},{"type":"null"}],"default":null,"description":"Only items created after this ISO 8601 time, for example 2026-01-01T00:00:00.000Z.","title":"Created After"},"created_before":{"anyOf":[{"maxLength":40,"type":"string"},{"type":"null"}],"default":null,"description":"Only items created before this ISO 8601 time.","title":"Created Before"}},"required":["sub_account_id"],"title":"list_domainsArguments","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_page_groups":{"post":{"operationId":"list_page_groups","summary":"List the page groups of a sub-account. Use for \"Which page groups does Unbounce sub-account 1552433 have\".","description":"List the page groups of a sub-account. Use for \"Which page groups does Unbounce sub-account 1552433 have\".","tags":["tools"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"properties":{"sub_account_id":{"description":"Unbounce sub-account (client) id, from list_sub_accounts.","maxLength":30,"title":"Sub Account Id","type":"string"},"sort_order":{"anyOf":[{"enum":["asc","desc"],"type":"string"},{"type":"null"}],"default":"asc","description":"Sort by creation date: asc (default) or desc.","title":"Sort Order"},"limit":{"anyOf":[{"maximum":1000,"minimum":1,"type":"integer"},{"type":"null"}],"default":50,"description":"How many results to return (default 50, up to 1000).","title":"Limit"},"offset":{"anyOf":[{"maximum":100000,"minimum":0,"type":"integer"},{"type":"null"}],"default":0,"description":"How many results to skip (default 0).","title":"Offset"},"created_after":{"anyOf":[{"maxLength":40,"type":"string"},{"type":"null"}],"default":null,"description":"Only items created after this ISO 8601 time, for example 2026-01-01T00:00:00.000Z.","title":"Created After"},"created_before":{"anyOf":[{"maxLength":40,"type":"string"},{"type":"null"}],"default":null,"description":"Only items created before this ISO 8601 time.","title":"Created Before"}},"required":["sub_account_id"],"title":"list_page_groupsArguments","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_sub_account_pages":{"post":{"operationId":"list_sub_account_pages","summary":"List the landing pages of one sub-account (client) with state, URL and publish time. Use for \"Which landing pages does U","description":"List the landing pages of one sub-account (client) with state, URL and publish time. Use for \"Which landing pages does Unbounce client 1552433 have\".","tags":["tools"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"properties":{"sub_account_id":{"description":"Unbounce sub-account (client) id, from list_sub_accounts.","maxLength":30,"title":"Sub Account Id","type":"string"},"sort_order":{"anyOf":[{"enum":["asc","desc"],"type":"string"},{"type":"null"}],"default":"asc","description":"Sort by creation date: asc (default) or desc.","title":"Sort Order"},"limit":{"anyOf":[{"maximum":1000,"minimum":1,"type":"integer"},{"type":"null"}],"default":50,"description":"How many results to return (default 50, up to 1000).","title":"Limit"},"offset":{"anyOf":[{"maximum":100000,"minimum":0,"type":"integer"},{"type":"null"}],"default":0,"description":"How many results to skip (default 0).","title":"Offset"},"created_after":{"anyOf":[{"maxLength":40,"type":"string"},{"type":"null"}],"default":null,"description":"Only items created after this ISO 8601 time, for example 2026-01-01T00:00:00.000Z.","title":"Created After"},"created_before":{"anyOf":[{"maxLength":40,"type":"string"},{"type":"null"}],"default":null,"description":"Only items created before this ISO 8601 time.","title":"Created Before"},"with_stats":{"anyOf":[{"type":"boolean"},{"type":"null"}],"default":false,"description":"True to include the page statistics.","title":"With Stats"}},"required":["sub_account_id"],"title":"list_sub_account_pagesArguments","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}}}}