openapi: 3.0.0
info:
title: BigCommerce Themes
version: ''
description: >-
Backup, restore, download, and activate themes; and, get the status of theme
jobs and read theme configurations.
termsOfService: https://www.bigcommerce.com/terms
contact:
name: BigCommerce
url: https://www.bigcommerce.com
email: [email protected]
license:
name: ''
tags:
- name: Theme Actions
- name: Theme Configurations
- name: Theme Custom Templates
- name: Theme Jobs
- name: Themes
security:
- X-Auth-Token: []
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
paths:
/themes:
parameters:
- $ref: '#/components/parameters/Accept'
get:
tags:
- Themes
operationId: getStoreThemes
summary: BigCommerce Get all Themes
responses:
'200':
description: ''
content:
application/json:
schema:
$ref: '#/components/schemas/ThemesCollectionResponse'
examples:
response:
value:
data:
- uuid: 872b3e20-731f-0136-9d2f-633ff0d6ced1
variations:
- uuid: 877427a0-731f-0136-9d2f-633ff0d6ced1
name: Light
description: >-
Ideal for a wide range of businesses and brands,
this design is fully responsive, simple, and ready
for you to add your branding, logo, and products.
It comes ready to build a clean looking and
beautiful store with features such as homepage
carousel, social media icons, featured and top
selling products, and faceted search (which is
available on select BigCommerce plans). Fully
express your brand by using our Theme Editor to
quickly and easily style your site’s fonts and
colors, all without the need to write code.
external_id: light
- uuid: 87be3180-731f-0136-9d2f-633ff0d6ced1
name: Bold
description: >-
Ideal for a wide range of businesses and brands,
this design is fully responsive, simple, and ready
for you to add your branding, logo, and products.
It comes ready to build a clean looking and
beautiful store with features such as homepage
carousel, social media icons, featured and top
selling products, and faceted search (which is
available on select BigCommerce plans). Fully
express your brand by using our Theme Editor to
quickly and easily style your site’s fonts and
colors, all without the need to write code.
external_id: bold
- uuid: 87d48e90-731f-0136-9d2f-633ff0d6ced1
name: Warm
description: >-
Ideal for a wide range of businesses and brands,
this design is fully responsive, simple, and ready
for you to add your branding, logo, and products.
It comes ready to build a clean looking and
beautiful store with features such as homepage
carousel, social media icons, featured and top
selling products, and faceted search (which is
available on select BigCommerce plans). Fully
express your brand by using our Theme Editor to
quickly and easily style your site’s fonts and
colors, all without the need to write code.
external_id: warm
name: Cornerstone-blog
is_private: true
is_active: false
- uuid: e3d82ce0-9bae-0133-0de7-525400970412
variations:
- uuid: b16c3fe0-7bcb-0136-b5fc-07fe54a9e639
name: Light
description: >-
Ideal for a wide range of businesses and brands,
this design is fully responsive, simple, and ready
for you to add your branding, logo, and products.
It comes ready to build a clean looking and
beautiful store with features such as homepage
carousel, social media icons, featured and top
selling products, and faceted search (which is
available on select BigCommerce plans). Fully
express your brand by using our Theme Editor to
quickly and easily style your site’s fonts and
colors, all without the need to write code.
external_id: light
- uuid: b17d57e0-7bcb-0136-b5fc-07fe54a9e639
name: Bold
description: >-
Ideal for a wide range of businesses and brands,
this design is fully responsive, simple, and ready
for you to add your branding, logo, and products.
It comes ready to build a clean looking and
beautiful store with features such as homepage
carousel, social media icons, featured and top
selling products, and faceted search (which is
available on select BigCommerce plans). Fully
express your brand by using our Theme Editor to
quickly and easily style your site’s fonts and
colors, all without the need to write code.
external_id: bold
- uuid: b18ad610-7bcb-0136-b5fc-07fe54a9e639
name: Warm
description: >-
Ideal for a wide range of businesses and brands,
this design is fully responsive, simple, and ready
for you to add your branding, logo, and products.
It comes ready to build a clean looking and
beautiful store with features such as homepage
carousel, social media icons, featured and top
selling products, and faceted search (which is
available on select BigCommerce plans). Fully
express your brand by using our Theme Editor to
quickly and easily style your site’s fonts and
colors, all without the need to write code.
external_id: warm
name: Cornerstone
is_private: false
is_active: true
- uuid: 1242c920-a5a6-0133-a20e-525400970412
variations:
- uuid: fec9fe60-7ede-0136-effe-0cbd49ed50aa
name: Minimal
description: >-
Fortune is a standout theme for cutting-edge
online stores. Customers will be transfixed by its
striking hero area, which puts your imagery on
full display, along with its sleek navigation and
unique product grid. Ideal for
small-to-medium-sized catalogs, Fortune has
everything you need to command and convert
shoppers.
external_id: minimal
- uuid: fee26530-7ede-0136-effe-0cbd49ed50aa
name: Bright
description: >-
Fortune is a standout theme for cutting-edge
online stores. Customers will be transfixed by its
striking hero area, which puts your imagery on
full display, along with its sleek navigation and
unique product grid. Ideal for
small-to-medium-sized catalogs, Fortune has
everything you need to command and convert
shoppers.
external_id: bright
- uuid: fef38820-7ede-0136-effe-0cbd49ed50aa
name: Contrast
description: >-
Fortune is a standout theme for cutting-edge
online stores. Customers will be transfixed by its
striking hero area, which puts your imagery on
full display, along with its sleek navigation and
unique product grid. Ideal for
small-to-medium-sized catalogs, Fortune has
everything you need to command and convert
shoppers.
external_id: contrast
- uuid: ff085ab0-7ede-0136-effe-0cbd49ed50aa
name: Highlight
description: >-
Fortune is a standout theme for cutting-edge
online stores. Customers will be transfixed by its
striking hero area, which puts your imagery on
full display, along with its sleek navigation and
unique product grid. Ideal for
small-to-medium-sized catalogs, Fortune has
everything you need to command and convert
shoppers.
external_id: highlight
name: Fortune
is_private: false
is_active: false
meta: {}
description: Returns a list of store *Themes*.
post:
tags:
- Themes
operationId: uploadStoreTheme
summary: BigCommerce Upload a Theme
parameters:
- $ref: '#/components/parameters/ContentType'
requestBody:
content:
multipart/form-data:
schema:
type: object
properties:
file:
description: The file.
type: string
format: binary
required:
- file
required: true
responses:
'201':
description: Job ID for the background job processing the theme upload.
content:
application/json:
schema:
$ref: '#/components/schemas/JobId'
examples:
response:
value:
job_id: ceea1917b1518f5ae491da6ad8a56336
default:
description: Error message.
content:
application/json:
schema:
allOf:
- 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
instance:
type: string
title: Base Error
- type: object
properties:
errors:
type: object
properties: {}
additionalProperties: true
title: DetailedErrors
title: Error Response
description: |-
Uploads a new *Theme* to your BigCommerce store.
**Required Fields**
* file
/themes/{uuid}:
get:
tags:
- Themes
operationId: getStoreTheme
summary: BigCommerce Get a Theme
responses:
'200':
description: ''
content:
application/json:
schema:
$ref: '#/components/schemas/ThemeResponse'
examples:
response:
value:
data:
uuid: e3d82ce0-9bae-0133-0de7-525400970412
variations:
- uuid: b16c3fe0-7bcb-0136-b5fc-07fe54a9e639
name: Light
description: >-
Ideal for a wide range of businesses and brands,
this design is fully responsive, simple, and ready
for you to add your branding, logo, and products. It
comes ready to build a clean looking and beautiful
store with features such as homepage carousel,
social media icons, featured and top selling
products, and faceted search (which is available on
select BigCommerce plans). Fully express your brand
by using our Theme Editor to quickly and easily
style your site’s fonts and colors, all without the
need to write code.
external_id: light
- uuid: b17d57e0-7bcb-0136-b5fc-07fe54a9e639
name: Bold
description: >-
Ideal for a wide range of businesses and brands,
this design is fully responsive, simple, and ready
for you to add your branding, logo, and products. It
comes ready to build a clean looking and beautiful
store with features such as homepage carousel,
social media icons, featured and top selling
products, and faceted search (which is available on
select BigCommerce plans). Fully express your brand
by using our Theme Editor to quickly and easily
style your site’s fonts and colors, all without the
need to write code.
external_id: bold
- uuid: b18ad610-7bcb-0136-b5fc-07fe54a9e639
name: Warm
description: >-
Ideal for a wide range of businesses and brands,
this design is fully responsive, simple, and ready
for you to add your branding, logo, and products. It
comes ready to build a clean looking and beautiful
store with features such as homepage carousel,
social media icons, featured and top selling
products, and faceted search (which is available on
select BigCommerce plans). Fully express your brand
by using our Theme Editor to quickly and easily
style your site’s fonts and colors, all without the
need to write code.
external_id: warm
name: Cornerstone
is_private: false
is_active: false
meta: {}
default:
description: Error message.
content:
application/json:
schema:
allOf:
- 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
instance:
type: string
title: Base Error
- type: object
properties:
errors:
type: object
properties: {}
additionalProperties: true
title: Detailed Errors
title: Error Response
description: >-
Returns a store *Theme*. The theme variation is not available at this
endpoint.
delete:
tags:
- Themes
operationId: deleteStoreTheme
summary: BigCommerce Delete a Theme
responses:
'204':
description: ''
default:
description: Error message.
content:
application/json:
schema:
allOf:
- 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
instance:
type: string
title: Base Error
- type: object
properties:
errors:
type: object
properties: {}
additionalProperties: true
title: DetailedErrors
title: Error Response
description: >-
Deletes a store *Theme*.
Theme variations can not be deleted using this endpoint. This will
delete the theme and all variations.
parameters:
- $ref: '#/components/parameters/Accept'
- $ref: '#/components/parameters/ThemeIdParam'
/themes/{uuid}/actions/download:
parameters:
- $ref: '#/components/parameters/Accept'
- $ref: '#/components/parameters/ThemeIdParam'
post:
tags:
- Theme Actions
operationId: downloadStoreTheme
summary: BigCommerce Download a Theme
parameters:
- $ref: '#/components/parameters/ContentType'
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/WhichThemeToDownload'
required: true
x-examples:
application/json:
which: last_created
responses:
'200':
description: Job ID for the background job processing the download.
content:
application/json:
schema:
$ref: '#/components/schemas/JobId'
examples:
response:
value:
job_id: ceea1917b1518f5ae491da6ad8a56336
default:
description: Error message.
content:
application/json:
schema:
allOf:
- 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
instance:
type: string
title: Base Error
- type: object
properties:
errors:
type: object
properties: {}
additionalProperties: true
title: Detailed Errors
title: Error Response
description: Downloads a stores *Theme*.
/themes/actions/activate:
parameters:
- $ref: '#/components/parameters/Accept'
- name: channel_id
in: query
schema:
type: integer
description: The ID for the channel where you want to activate the theme.
post:
tags:
- Theme Actions
operationId: activateStoreTheme
summary: BigCommerce Activate a Theme
parameters:
- $ref: '#/components/parameters/ContentType'
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/Activate'
description: Request parameters.
required: true
x-examples:
application/json:
variation_id: 87be3180-731f-0136-9d2f-633ff0d6ced1
which: original
responses:
'204':
description: This returns when the request is successful.
content:
application/json:
schema:
$ref: '#/components/schemas/NoContent'
default:
description: Error message.
content:
application/json:
schema:
allOf:
- 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
instance:
type: string
title: Base Error
- type: object
properties:
errors:
type: object
properties: {}
additionalProperties: true
title: Detailed Errors
title: Error Response
description: |-
Actives a store *Theme*.
This returns a 204 response upon success.
/themes/jobs/{job_id}:
get:
tags:
- Theme Jobs
operationId: getStoreThemeJob
summary: BigCommerce Get a Theme Job
responses:
'200':
description: ''
content:
application/json:
schema:
$ref: '#/components/schemas/JobResponse'
examples:
response:
value:
data:
id: ceea1917b1518f5ae491da6ad8a56336
time: '2018-09-18T13:59:01Z'
status: COMPLETED
percent_complete: 100
result:
theme_id: ed1982d0-9d78-0136-33ba-0d84a0c6431b
warnings: []
errors: []
meta: {}
default:
description: Error message.
content:
application/json:
schema:
allOf:
- 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
instance:
type: string
title: Base Error
- type: object
properties:
errors:
type: object
properties: {}
additionalProperties: true
title: Detailed Errors
title: Error Response
description: >-
Returns a theme *Job*. When the job is complete, the results array
provides a generated link to access the theme. The link is active for 60
seconds.
parameters:
- $ref: '#/components/parameters/Accept'
- $ref: '#/components/parameters/JobIdParam'
/themes/{uuid}/configurations:
get:
responses:
'200':
$ref: '#/components/responses/themesConfigurations_RespCollection'
tags:
- Theme Configurations
operationId: getThemeConfiguration
summary: BigCommerce Get Theme Configuration
description: |-
Returns a list of theme's configurations.
**Usage Notes**:
* At least one filter must be provided.
parameters:
- $ref: '#/components/parameters/ThemeIdParam'
- schema:
type: array
items:
type: string
in: query
name: uuid:in
description: Filter configurations by a list of configuration UUIDs.
- schema:
type: array
items:
type: integer
in: query
name: channel_id:in
description: Filter configurations by a list of channel_ids.
- $ref: '#/components/parameters/PageParam'
- $ref: '#/components/parameters/LimitParam'
- schema:
type: string
in: query
name: variation_uuid
description: Filter configurations by a variation_uuid.
parameters:
- $ref: '#/components/parameters/Accept'
- in: query
name: site_id:in
description: Filter configurations by a list of site_ids
required: true
style: form
explode: false
schema:
type: array
items:
type: integer
- in: query
name: uuid:in
description: Filter configurations by a list of configuration UUIDs
style: form
explode: false
schema:
type: array
items:
type: string
- in: query
name: variation_uuid
description: Filter configurations by a variation_uuid
schema:
type: string
- name: page
description: |
Specifies the page number in a limited (paginated) list.
required: false
in: query
schema:
type: integer
- name: limit
description: >
Controls the number of items per page in a limited (paginated) list of
products.
required: false
in: query
schema:
type: integer
/themes/{uuid}/configurations/validate:
post:
parameters:
- $ref: '#/components/parameters/ContentType'
responses:
'200':
description: Theme passes validation.
content:
application/json:
schema:
type: object
properties: {}
'422':
description: Theme failed validation, detailed errors in response.
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorResponse'
summary: BigCommerce Validate Theme Configuration
operationId: validateThemeConfiguration
tags:
- Theme Configurations
description: >-
Validates a theme configuration against the theme's schema without
creating it. Useful for testing schemas before creation.
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/themeConfiguration_Write'
parameters:
- $ref: '#/components/parameters/Accept'
- $ref: '#/components/parameters/ThemeIdParam'
/themes/custom-templates/{version_uuid}:
parameters:
- $ref: '#/components/parameters/Accept'
- schema:
type: string
name: version_uuid
in: path
required: true
get:
summary: BigCommerce Get Custom Templates
tags:
- Theme Custom Templates
responses:
'200':
description: OK
content:
application/json:
schema:
type: object
properties:
data:
type: object
properties:
product:
type: array
items:
type: string
category:
type: array
items:
type: string
brand:
type: array
items:
type: string
page:
type: array
items:
type: string
meta:
$ref: '#/components/schemas/OpenMeta'
examples:
example-1:
value:
data:
product:
- custom-product-1.html
category: []
brand:
- custom-brand-1.html
page:
- custom-page-1.html
- holiday-page.html
meta: {}
operationId: getThemeCustomTemplates
description: >-
Enumerate available custom templates for in the theme files in a
specific theme version for each supported entity type.
components:
parameters:
JobIdParam:
name: job_id
description: The job identifier.
in: path
required: true
schema:
type: string
ThemeIdParam:
name: uuid
description: The theme identifier.
in: path
required: true
schema:
type: string
Accept:
name: Accept
in: header
required: true
description: >-
The [MIME
type](https://developer.mozilla.org/en-US/docs/Web/HTTP/Basics_of_HTTP/MIME_types)
of the response body.
schema:
type: string
default: application/json
ContentType:
name: Content-Type
in: header
re
# --- truncated at 32 KB (55 KB total) ---
# Full source: https://raw.githubusercontent.com/api-evangelist/bigcommerce/refs/heads/main/openapi/themes-openapi-original.yml