Skip to content

List saved shop themes

GET
/storefront/themes
curl --request GET \
--url https://example.com/storefront/themes \
--cookie __Host-bottle.session_token=<__Host-bottle.session_token>

Only this business’s approved, immutable revisions. Private source files and other businesses’ data are never returned.

Saved themes, newest first

Media typeapplication/json
object
items
required
Array<object>
object
id
required

UUID v7

string format: uuid
name
required
string
description
required
string
template
required
string
Allowed values: yard flame custom
source
required
string
Allowed values: upload preset
theme
required
object
primary
string
default: #1F3A5F /^#[0-9a-fA-F]{6}$/
accent
string
default: #E4572E /^#[0-9a-fA-F]{6}$/
background
string
default: #FAF7F2 /^#[0-9a-fA-F]{6}$/
fontPair

Classic: Fraunces and Inter. modern: Bricolage Grotesque and Inter. friendly: Nunito throughout. editorial: Playfair Display and Source Sans 3.

string
default: classic
Allowed values: classic modern friendly editorial
radius
integer
default: 12 <= 28
design
required
object
spacing
string
default: balanced
Allowed values: compact balanced relaxed
container
string
default: wide
Allowed values: narrow wide full
headingScale
string
default: balanced
Allowed values: compact balanced bold
productCards
string
default: outlined
Allowed values: plain outlined raised
codeSummary
object
pages
required
Array<string>
>= 1 items <= 4 items
Allowed values: home products category page
files
required
integer
>= 1 <= 32
totalBytes
required
integer
<= 8388608
replacesHomepage
required
boolean
createdAt
required
string format: date-time

Example

{
"items": [
{
"id": "019205d1-6e7a-7c3b-9f6e-3a2b1c0d9e8f",
"template": "yard",
"source": "upload",
"theme": {
"primary": "#1F3A5F",
"accent": "#E4572E",
"background": "#FAF7F2",
"fontPair": "classic",
"radius": 12
},
"design": {
"spacing": "compact",
"container": "narrow",
"headingScale": "compact",
"productCards": "plain"
},
"codeSummary": {
"pages": [
"home"
]
}
}
]
}

Not signed in

Media typeapplication/json
object
error
required
string
message
required
string

Example

{
"error": "not_found",
"message": "Customer not found"
}

The plan does not include a shop

Media typeapplication/json
object
error
required
string
message
required
string

Example

{
"error": "not_found",
"message": "Customer not found"
}

Without the permission this needs

Media typeapplication/json
object
error
required
string
message
required
string

Example

{
"error": "not_found",
"message": "Customer not found"
}

Invalid theme, or the saved-theme allowance is full

Media typeapplication/json
object
error
required
string
Allowed values: validation
message
required
string
issues
required
Array<object>
object
path
required
string
message
required
string

Example

{
"error": "validation",
"issues": [
{
"path": "email",
"message": "Invalid email"
}
]
}

Too many requests, or theme processing is busy

Media typeapplication/json
object
error
required
string
message
required
string

Example

{
"error": "not_found",
"message": "Customer not found"
}