openapi: 3.1.0 info: title: Unbounce REST Accounts Pages API version: 0.4.0 summary: Programmatic access to Unbounce accounts, pages, leads, and domains. description: 'The Unbounce REST API provides programmatic access to accounts, sub-accounts, domains, pages, page groups, and leads. Authentication uses an API key (available to all Unbounce pricing plans) or OAuth 2.0 Authorization Code flow (granted case-by-case). Clients send a custom Accept header indicating the API version. Endpoint surface and authentication confirmed against https://developer.unbounce.com/api_reference/. ' contact: name: Unbounce Developers url: https://developer.unbounce.com/ license: name: Proprietary url: https://unbounce.com/legal servers: - url: https://api.unbounce.com description: Unbounce REST API security: - apiKeyAuth: [] - oauth2: [] tags: - name: Pages description: Landing pages and form fields paths: /accounts/{account_id}/pages: get: tags: - Pages summary: List pages for an account operationId: listAccountPages parameters: - $ref: '#/components/parameters/AccountId' responses: '200': description: Page collection content: application/json: schema: $ref: '#/components/schemas/PageCollection' /sub_accounts/{sub_account_id}/pages: get: tags: - Pages summary: List pages for a sub-account operationId: listSubAccountPages parameters: - $ref: '#/components/parameters/SubAccountId' responses: '200': description: Page collection content: application/json: schema: $ref: '#/components/schemas/PageCollection' /domains/{domain_id}/pages: get: tags: - Pages summary: List pages on a domain operationId: listPagesForDomain parameters: - $ref: '#/components/parameters/DomainId' responses: '200': description: Page collection content: application/json: schema: $ref: '#/components/schemas/PageCollection' /pages: get: tags: - Pages summary: List all accessible pages operationId: listPages responses: '200': description: Page collection content: application/json: schema: $ref: '#/components/schemas/PageCollection' /pages/{page_id}: get: tags: - Pages summary: Retrieve a page operationId: getPage parameters: - $ref: '#/components/parameters/PageId' responses: '200': description: Page content: application/json: schema: $ref: '#/components/schemas/Page' /pages/{page_id}/form_fields: get: tags: - Pages summary: Retrieve form fields for a page operationId: listFormFields parameters: - $ref: '#/components/parameters/PageId' responses: '200': description: Form field collection content: application/json: schema: type: object properties: form_fields: type: array items: $ref: '#/components/schemas/FormField' components: schemas: FormField: type: object properties: id: type: string name: type: string type: type: string required: type: boolean PageCollection: type: object properties: pages: type: array items: $ref: '#/components/schemas/Page' Page: type: object properties: id: type: string name: type: string sub_account_id: type: string domain_id: type: string url: type: string state: type: string created_at: type: string format: date-time parameters: AccountId: name: account_id in: path required: true schema: type: string SubAccountId: name: sub_account_id in: path required: true schema: type: string DomainId: name: domain_id in: path required: true schema: type: string PageId: name: page_id in: path required: true schema: type: string securitySchemes: apiKeyAuth: type: http scheme: basic description: HTTP Basic auth using the Unbounce API key as the username. oauth2: type: oauth2 description: OAuth 2.0 Authorization Code (granted case-by-case by Unbounce). flows: authorizationCode: authorizationUrl: https://api.unbounce.com/oauth/authorize tokenUrl: https://api.unbounce.com/oauth/token scopes: read: Read access to account resources write: Write access to account resources