openapi: 3.0.0
info:
title: BigCommerce Abandoned Cart Emails Pages (Single) API
version: 3.0.0
termsOfService: https://www.bigcommerce.com/terms
description: Abandoned Cart Emails V3 API managing Handlebars-based emails.
contact:
name: BigCommerce
url: https://www.bigcommerce.com
email: support@bigcommerce.com
servers:
- url: https://api.bigcommerce.com/stores/{store_hash}/v3
variables:
store_hash:
default: store_hash
description: Permanent ID of the BigCommerce store.
description: BigCommerce API Gateway
security:
- X-Auth-Token: []
tags:
- name: Pages (Single)
paths:
/content/pages/{pageId}:
parameters:
- $ref: '#/components/parameters/Accept'
- $ref: '#/components/parameters/pageIdPath'
get:
operationId: getPage
tags:
- Pages (Single)
description: 'Returns one content page.
> #### Warning
> **Pay attention to query parameters**
> This endpoint recognizes the same query parameters as [Get Multiple Pages](/docs/rest-content/pages#get-pages). If the requested page does not meet the query parameters you specify, you will receive a 404 response even if the requested `pageId` does exist.'
responses:
'200':
description: ''
content:
application/json:
schema:
$ref: '#/components/schemas/PageResponse'
examples:
several data types:
value:
data:
- id: 3
channel_id: 1
name: Blog
meta_title: Blog
is_visible: false
parent_id: 0
sort_order: 4
meta_keywords: ''
type: blog
meta_description: ''
is_homepage: false
is_customers_only: false
search_keywords: '0'
url: /blog/
- id: 5
channel_id: 1
name: Contact Us
meta_title: ''
email: ''
is_visible: true
parent_id: 0
sort_order: 3
meta_keywords: contact keyword
contact_fields: fullname,companyname,phone,orderno,rma
type: contact_form
meta_description: contact meta desc
is_homepage: false
is_customers_only: true
search_keywords: contact search keyword
- id: 16
channel_id: 1
name: all about powder detergents 2
meta_title: ''
is_visible: false
parent_id: 0
sort_order: 0
meta_keywords: null
type: page
meta_description: ''
is_homepage: false
is_customers_only: false
search_keywords: ''
- id: 17
channel_id: 1
name: one hundred million red balloons 3
is_visible: false
parent_id: 0
sort_order: 0
type: raw
is_homepage: false
is_customers_only: false
search_keywords: ''
content_type: text/html
- id: 18
channel_id: 1
name: diaper pin purveyors 3
is_visible: false
parent_id: 0
sort_order: 0
link: https://example.com/diaper-pins
type: link
is_homepage: false
is_customers_only: false
- id: 19
channel_id: 1
name: sign up to crush dreams 3
meta_title: ''
email: ''
is_visible: false
parent_id: 0
sort_order: 0
meta_keywords: null
contact_fields: ''
type: contact_form
meta_description: ''
is_homepage: false
is_customers_only: false
search_keywords: ''
- id: 20
channel_id: 1
name: all about powder detergents 3
meta_title: ''
is_visible: false
parent_id: 0
sort_order: 0
meta_keywords: null
type: page
meta_description: ''
is_homepage: false
is_customers_only: false
search_keywords: ''
- id: 21
channel_id: 1
name: feed monsters 3
meta_title: ''
is_visible: false
parent_id: 0
sort_order: 0
meta_keywords: null
feed: /rss/monsters
type: feed
meta_description: ''
is_homepage: false
is_customers_only: false
search_keywords: ''
- id: 22
channel_id: 1
name: one hundred million red balloons 4
is_visible: false
parent_id: 0
sort_order: 0
type: raw
is_homepage: false
is_customers_only: false
search_keywords: ''
content_type: text/html
- id: 23
channel_id: 1
name: diaper pin purveyors 4
is_visible: false
parent_id: 0
sort_order: 0
link: https://example.com/diaper-pins
type: link
is_homepage: false
is_customers_only: false
meta:
pagination:
total: 6
count: 6
per_page: 50
current_page: 1
total_pages: 1
links:
current: ?page=1&limit=50
'404':
description: Not Found.
content:
application/problem+json:
schema:
$ref: '#/components/schemas/ResponseErrorBrief'
examples:
pageId does not exist:
value:
status: 404
title: A Page was not found with an ID of 99
type: https://developer.bigcommerce.com/api-docs/getting-started/api-status-codes
'422':
description: Invalid input. One or more path parameter(s) did not have the correct datatype.
content:
application/problem+json:
schema:
$ref: '#/components/schemas/ResponseErrorItemized'
examples:
pageId is bar:
value:
status: 422
title: Invalid Input.
type: https://developer.bigcommerce.com/api-docs/getting-started/api-status-codes
errors:
- bar
parameters:
- $ref: '#/components/parameters/includeQuery'
summary: BigCommerce Get a Page
put:
operationId: updatePage
tags:
- Pages (Single)
description: Updates one content page.
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/PagePut'
description: ''
required: true
responses:
'200':
description: '
'
content:
application/json:
schema:
$ref: '#/components/schemas/PageResponse'
'400':
description: Bad Request; reasons for failure include invalid query parameters. See the response for more details.
content:
application/problem+json:
schema:
$ref: '#/components/schemas/ResponseErrorDetailed'
'404':
description: Not Found
content:
application/problem+json:
schema:
$ref: '#/components/schemas/ResponseErrorBrief'
examples:
not found:
value:
status: 404
title: A Page was not found with an ID of 99
type: https://developer.bigcommerce.com/api-docs/getting-started/api-status-codes
'422':
description: The input was not valid. This error is the result of missing required fields or other invalid arguments. See the response for more details.
content:
application/problem+json:
schema:
$ref: '#/components/schemas/ResponseErrorDetailed'
parameters:
- $ref: '#/components/parameters/ContentType'
- $ref: '#/components/parameters/includeQuery'
summary: BigCommerce Update a Page
delete:
operationId: deletePage
tags:
- Pages (Single)
description: 'Deletes one content page.
> #### Warning
> **Query parameters not recognized**
> This endpoint does not recognize query parameters.'
responses:
'204':
$ref: '#/components/responses/HTTP204'
'404':
description: The page specified for deletion did not exist.
content:
application/problem+json:
schema:
$ref: '#/components/schemas/ResponseErrorBrief'
examples:
example-1:
value:
status: 404
title: A Page was not found with an ID of 99
type: https://developer.bigcommerce.com/api-docs/getting-started/api-status-codes
parameters: []
summary: BigCommerce Delete a Page
components:
schemas:
Page:
allOf:
- type: object
properties:
email:
type: string
description: 'Applicable when the page type is `contact_form`: contact email address that receives messages sent via the form. Must be unique.'
maxLength: 255
default: ''
meta_title:
type: string
nullable: true
body:
type: string
description: 'HTML or variable that populates this page’s element, in default/desktop view. Required in a `POST` request if the page type is `raw`.
'
example:
Hello World!
nullable: true
feed:
type: string
description: 'The URL of the RSS feed. Required in a `POST` request if the page type is `rss_feed`.
'
link:
type: string
description: 'Required in a `POST` request to create a link if the page type is `link`.
'
contact_fields:
type: string
description: 'Applicable when the page type is `contact_form`: comma-separated list of keywords representing the fields enabled in the control panel for storefront display. Possible fields include:
|Field|Description|
|-|-|
|`fullname`|Full name of the customer submitting the form|
|`phone`|Customer’s phone number, as submitted on the form|
|`companyname`|Customer’s submitted company name|
|`orderno`|Customer’s submitted order number|
|`rma`|Customer’s submitted RMA (Return Merchandise Authorization) number|
'
example: fullname,orderno,rma
default: ''
meta_keywords:
description: 'Comma-separated list of SEO-relevant keywords to include in the page’s element.
'
default: ''
type: string
nullable: true
meta_description:
type: string
description: 'Description contained within this page’s element.
'
nullable: true
search_keywords:
type: string
description: 'Comma-separated list of keywords that shoppers can use to locate this page when searching the store.
'
example: trousers,pockets,luxury
nullable: true
url:
type: string
description: 'Relative URL on the storefront for this page.
'
example: /my-store-page
channel_id:
type: integer
description: 'The Id of the channel where this page should be shown.
'
example: 12
default: 1
- $ref: '#/components/schemas/PageBase'
title: ''
description: ''
PageResponse:
description: 'Response payload for the BigCommerce API.
'
x-examples: {}
allOf:
- properties:
data:
type: object
items:
$ref: '#/components/schemas/Page'
meta:
$ref: '#/components/schemas/ResponseMeta'
title: PageResponseObject
type: object
ResponseErrorBrief:
type: object
description: 'Error payload for the BigCommerce API.
'
properties:
status:
description: 'The HTTP status code.
'
type: integer
title:
description: 'The error title describing the particular error.
'
type: string
type:
type: string
required:
- status
PagePut:
type: object
description: Properties of the page modification request body.
properties:
name:
type: string
description: 'The name of the page. Must be unique.
'
minLength: 1
maxLength: 100
example: My Store Page
is_visible:
type: boolean
description: 'Boolean value that specifies the visibility of the page in the storefront’s navigation menu.
'
parent_id:
type: integer
description: 'ID of any parent Web page.
'
example: 0
default: 0
sort_order:
type: integer
description: 'Specifies the order in which the page is displayed on the storefront. (Lower integers specify earlier display.)
'
example: 0
default: 0
type:
type: string
description: 'Specifies the type of the page.
|Value|Description|
|-|-|
| `blog` | blog page. Read-only; blog pages can only be created in the store control panel. |
|`contact_form`|hosts the store''s contact form|
|`link`|link to another absolute URL|
|`page`|user-defined plain-text page|
|`raw`|page that contains markup, such as HTML.|
|`rss_feed`|contains syndicated content from an RSS feed|'
example: page
enum:
- page
- raw
- contact_form
- feed
- link
- blog
is_homepage:
type: boolean
description: 'Boolean value that specifies whether this page is the storefront’s home page.
'
is_customers_only:
type: boolean
description: 'Boolean value. If this value is set to `true`, this page will not be visible when the user is logged in to the store control panel.
'
email:
type: string
description: 'Applicable when the page type is `contact_form`: contact email address that receives messages sent via the form. Must be unique.'
maxLength: 255
meta_title:
type: string
nullable: true
body:
type: string
description: 'HTML or variable that populates the elment of this page, in default/desktop view. Required in a `POST` request if the page type is `raw`.
'
example: Hello World!
nullable: true
feed:
type: string
description: 'The URL of the RSS feed. Required in a `POST` request if the page type is `rss_feed`.
'
link:
type: string
description: 'Required in a `POST` request to create a link if the page type is `link`.
'
contact_fields:
type: string
description: 'Applicable when the page type is `contact_form`: comma-separated list of keywords representing the fields enabled in the control panel for storefront display. Possible fields include:
|Field|Description|
|-|-|
|`fullname`|Full name of the customer submitting the form|
|`phone`|Customer’s phone number, as submitted on the form|
|`companyname`|Customer’s submitted company name|
|`orderno`|Customer’s submitted order number|
|`rma`|Customer’s submitted RMA (Return Merchandise Authorization) number|
'
example: fullname,companyname,phone,orderno,rma
meta_keywords:
default: ''
type: string
description: 'Comma-separated list of SEO-relevant keywords to include in the element of this page.
'
nullable: true
meta_description:
type: string
description: 'Description contained within the element of this page.
'
nullable: true
search_keywords:
type: string
description: 'Comma-separated list of keywords that shoppers can use to locate this page when searching the store.
'
example: trousers,pockets,luxury
nullable: true
url:
type: string
description: 'Relative URL on the storefront for this page.
'
example: /my-store-page
channel_id:
type: integer
description: 'The ID of the channel where this page should be shown.
'
example: 12
default: 0
required:
- id
ResponseErrorDetailed:
type: object
description: 'Error payload for the BigCommerce API.
'
properties:
status:
description: 'The HTTP status code.
'
type: integer
title:
description: 'The error title describing the particular error.
'
type: string
type:
type: string
detail:
type: string
required:
- status
PageBase:
type: object
description: Common Page properties.
properties:
name:
type: string
description: 'The name of the page. Must be unique.
'
minLength: 1
maxLength: 100
example: My Store Page
is_visible:
type: boolean
description: "Determines the visibility of the page in the storefront’s navigation menu.\n\nBoolean value that specifies the visibility of the page in the storefront’s navigation menu.\n \nIndicates whether the page is available to users and visible in any menus.\n"
parent_id:
type: integer
description: 'ID of any parent Web page.
'
example: 0
default: 0
sort_order:
type: integer
description: 'Determines the order in which the page is displayed on the storefront. (Lower integers specify earlier display.)
'
example: 0
default: 0
type:
type: string
description: 'Determines the type of the page.
|Value|Description|
|-|-|
| `blog` | blog page. Read-only; blog pages can only be created in the store control panel. |
|`contact_form`|hosts the store''s contact form|
|`link`|link to another absolute URL|
|`page`|user-defined plain-text page|
|`raw`|page that contains markup, such as HTML.|
|`rss_feed`|contains syndicated content from an RSS feed|'
example: page
enum:
- page
- raw
- contact_form
- feed
- link
- blog
is_homepage:
type: boolean
description: 'Determines whether this page is the storefront’s home page.
'
is_customers_only:
type: boolean
description: 'If `true`, this page will only be visible to customers that are logged in to the store.
'
required:
- name
- type
ResponseErrorItemized:
type: object
description: 'Error payload for the BigCommerce API.
'
title: ResponseErrorItemized
properties:
status:
description: 'The HTTP status code.
'
type: integer
title:
description: 'The error title describing the particular error.
'
type: string
type:
type: string
errors:
type: array
items:
type: string
required:
- status
ResponseMeta:
type: object
description: 'Data about the response, including pagination and collection totals.
'
properties:
pagination:
type: object
description: 'Data about the response, including pagination and collection totals.
'
properties:
total:
type: integer
description: 'Total number of items in the result set.
'
count:
type: integer
description: 'Total number of items in the collection response.
'
per_page:
type: integer
description: 'The amount of items returned in the collection per page, controlled by the limit parameter.
'
current_page:
type: integer
description: 'The page you are currently on within the collection.
'
total_pages:
type: integer
description: 'The total number of pages in the collection.
'
links:
type: object
description: 'Pagination links for the previous and next parts of the whole collection.
'
properties:
previous:
type: string
description: 'Link to the previous page returned in the response.
'
current:
type: string
description: 'Link to the current page returned in the response.
'
next:
type: string
description: 'Link to the next page returned in the response.
'
responses:
HTTP204:
description: No content. A 204 response with no payload indicates successful deletion of all specified pages.
parameters:
Accept:
name: Accept
in: header
required: true
schema:
type: string
default: application/json
includeQuery:
schema:
type: string
enum:
- body
in: query
name: include
description: Include the requested property in the response. The `body` property returns the page’s markup, text, or raw content.
ContentType:
name: Content-Type
in: header
required: true
schema:
type: string
default: application/json
pageIdPath:
schema:
type: string
name: pageId
in: path
required: true
description: The ID of the page to be operated on.
securitySchemes:
X-Auth-Token:
name: X-Auth-Token
description: '### OAuth scopes
| UI Name | Permission | Parameter |
|:--|:--|:-|
| Information & Settings | read-only | `store_v2_information_read_only`|
| Information & Settings | modify | `store_v2_information` |
### Authentication header
| Header | Argument | Description |
|:-|:|:|
| `X-Auth-Token` | `access_token` | For more about API accounts that generate `access_token`s, see our [Guide to API Accounts](/docs/start/authentication/api-accounts). |
### Further reading
For example requests and more information about authenticating BigCommerce APIs, see [Authentication and Example Requests](/docs/start/authentication#x-auth-token-header-example-requests).
For more about BigCommerce OAuth scopes, see our [Guide to API Accounts](/docs/start/authentication/api-accounts#oauth-scopes).
For a list of API status codes, see [API Status Codes](/docs/start/about/status-codes).'
type: apiKey
in: header