ThemeOverridesInput
The page's design and labels, set on top of the page's theme. Each key is a theme property, nested the same way the theme stores it, for example `{ "tokens": { "colorPrimary": { "light": "#1a2b3c" } }, "labels": { "payButtonText": "Buy now" } }`. Only the keys you send change; keys you leave out keep their current value. `null` at any level resets every property under it to the page theme's default. Color values are `{ light, dark }`, one color for light mode and one for dark mode. Images take the `file` ID of an image you uploaded. `customCss` needs a plan that includes custom CSS, and the `elements.poweredByCheckoutPage` and `elements.poweredByStripe` badges can only be changed with a paid subscription. Order bump styling is not available here.
Properties
| Name | Type | Description |
|---|---|---|
| customCss | stringnull | Custom CSS to inject into the checkout. Takes CSS, up to 50,000 characters, without ` |
| elements | objectnull | |
| labels | objectnull | |
| layout | objectnull | |
| tokens | objectnull |
JSON Schema
{
"$schema": "https://json-schema.org/draft/2020-12/schema",
"$id": "https://artifacts.apis.io/checkoutpage-com/json-schema/checkoutpage-com-theme-overrides-input-schema.json",
"title": "ThemeOverridesInput",
"description": "The page's design and labels, set on top of the page's theme. Each key is a theme property, nested the same way the theme stores it, for example `{ \"tokens\": { \"colorPrimary\": { \"light\": \"#1a2b3c\" } }, \"labels\": { \"payButtonText\": \"Buy now\" } }`. Only the keys you send change; keys you leave out keep their current value. `null` at any level resets every property under it to the page theme's default. Color values are `{ light, dark }`, one color for light mode and one for dark mode. Images take the `file` ID of an image you uploaded. `customCss` needs a plan that includes custom CSS, and the `elements.poweredByCheckoutPage` and `elements.poweredByStripe` badges can only be changed with a paid subscription. Order bump styling is not available here.",
"x-generated": "2026-11-03",
"x-method": "derived",
"x-generator": "derive-json-schema.py",
"x-source": "openapi/checkoutpage-com-openapi.yml#/components/schemas/ThemeOverridesInput",
"additionalProperties": false,
"properties": {
"customCss": {
"description": "Custom CSS to inject into the checkout. Takes CSS, up to 50,000 characters, without `</style`. Setting it needs a plan that includes custom CSS.",
"maxLength": 50000,
"pattern": "^(?![\\s\\S]*<\\/[Ss][Tt][Yy][Ll][Ee])[^\\u0000]*$",
"type": [
"string",
"null"
]
},
"elements": {
"additionalProperties": false,
"properties": {
"checkout": {
"additionalProperties": false,
"properties": {
"cards": {
"additionalProperties": false,
"properties": {
"badge": {
"additionalProperties": false,
"properties": {
"styles": {
"additionalProperties": false,
"properties": {
"backgroundColor": {
"additionalProperties": false,
"description": "Default background color of the highlight pill on selectable cards.",
"properties": {
"dark": {
"$ref": "#/$defs/ThemeColorValue"
},
"light": {
"$ref": "#/$defs/ThemeColorValue"
}
},
"type": [
"object",
"null"
]
},
"borderColor": {
"additionalProperties": false,
"description": "Default border color of the highlight pill on selectable cards.",
"properties": {
"dark": {
"$ref": "#/$defs/ThemeColorValue"
},
"light": {
"$ref": "#/$defs/ThemeColorValue"
}
},
"type": [
"object",
"null"
]
},
"borderRadius": {
"anyOf": [
{
"enum": [
""
],
"type": "string"
},
{
"enum": [
0
],
"type": "number"
},
{
"enum": [
2
],
"type": "number"
},
{
"enum": [
4
],
"type": "number"
},
{
"enum": [
8
],
"type": "number"
},
{
"enum": [
12
],
"type": "number"
},
{
"enum": [
16
],
"type": "number"
},
{
"enum": [
24
],
"type": "number"
},
{
"enum": [
32
],
"type": "number"
},
{
"enum": [
40
],
"type": "number"
},
{
"enum": [
48
],
"type": "number"
},
{
"enum": [
64
],
"type": "number"
},
{
"type": "null"
}
],
"description": "Default border radius of the highlight pill on selectable cards."
},
"borderWidth": {
"anyOf": [
{
"enum": [
""
],
"type": "string"
},
{
"enum": [
0
],
"type": "number"
},
{
"enum": [
1
],
"type": "number"
},
{
"enum": [
2
],
"type": "number"
},
{
"enum": [
4
],
"type": "number"
},
{
"enum": [
8
],
"type": "number"
},
{
"type": "null"
}
],
"description": "Default border width of the highlight pill on selectable cards."
},
"color": {
"additionalProperties": false,
"description": "Default text color of the highlight pill on selectable cards.",
"properties": {
"dark": {
"$ref": "#/$defs/ThemeColorValue"
},
"light": {
"$ref": "#/$defs/ThemeColorValue"
}
},
"type": [
"object",
"null"
]
},
"fontFamily": {
"description": "Font family for the card highlight.",
"pattern": "^[A-Za-z0-9][A-Za-z0-9 ]{0,63}$",
"type": [
"string",
"null"
]
},
"fontSize": {
"anyOf": [
{
"enum": [
""
],
"type": "string"
},
{
"enum": [
10
],
"type": "number"
},
{
"enum": [
11
],
"type": "number"
},
{
"enum": [
12
],
"type": "number"
},
{
"enum": [
13
],
"type": "number"
},
{
"enum": [
14
],
"type": "number"
},
{
"enum": [
16
],
"type": "number"
},
{
"enum": [
18
],
"type": "number"
},
{
"enum": [
20
],
"type": "number"
},
{
"enum": [
24
],
"type": "number"
},
{
"enum": [
32
],
"type": "number"
},
{
"enum": [
40
],
"type": "number"
},
{
"enum": [
48
],
"type": "number"
},
{
"enum": [
64
],
"type": "number"
},
{
"type": "null"
}
],
"description": "Font size for the card highlight."
},
"fontStyle": {
"description": "Font style for the card highlight.",
"enum": [
"",
"normal",
"italic",
null
],
"type": [
"string",
"null"
]
},
"fontWeight": {
"description": "Font weight for the card highlight.",
"maximum": 900,
"minimum": 100,
"type": [
"integer",
"null"
]
},
"padding": {
"anyOf": [
{
"enum": [
""
],
"type": "string"
},
{
"enum": [
0
],
"type": "number"
},
{
"enum": [
2
],
"type": "number"
},
{
"enum": [
4
],
"type": "number"
},
{
"enum": [
6
],
"type": "number"
},
{
"enum": [
8
],
"type": "number"
},
{
"enum": [
12
],
"type": "number"
},
{
"enum": [
16
],
"type": "number"
},
{
"enum": [
24
],
"type": "number"
},
{
"enum": [
32
],
"type": "number"
},
{
"enum": [
40
],
"type": "number"
},
{
"type": "null"
}
],
"description": "Default padding inside the highlight pill on selectable cards."
}
},
"type": [
"object",
"null"
]
}
},
"type": [
"object",
"null"
]
},
"description": {
"additionalProperties": false,
"properties": {
"styles": {
"additionalProperties": false,
"properties": {
"color": {
"additionalProperties": false,
"description": "Default description color for selectable cards.",
"properties": {
"dark": {
"$ref": "#/$defs/ThemeColorValue"
},
"light": {
"$ref": "#/$defs/ThemeColorValue"
}
},
"type": [
"object",
"null"
]
},
"fontFamily": {
"description": "Font family for the card description.",
"pattern": "^[A-Za-z0-9][A-Za-z0-9 ]{0,63}$",
"type": [
"string",
"null"
]
},
"fontSize": {
"anyOf": [
{
"enum": [
""
],
"type": "string"
},
{
"enum": [
10
],
"type": "number"
},
{
"enum": [
11
],
"type": "number"
},
{
"enum": [
12
],
"type": "number"
},
{
"enum": [
13
],
"type": "number"
},
{
"enum": [
14
],
"type": "number"
},
{
"enum": [
16
],
"type": "number"
},
{
"enum": [
18
],
"type": "number"
},
{
"enum": [
20
],
"type": "number"
},
{
"enum": [
24
],
"type": "number"
},
{
"enum": [
32
],
"type": "number"
},
{
"enum": [
40
],
"type": "number"
},
{
"enum": [
48
],
"type": "number"
},
{
"enum": [
64
],
"type": "number"
},
{
"type": "null"
}
],
"description": "Font size for the card description."
},
"fontStyle": {
"description": "Font style for the card description.",
"enum": [
"",
"normal",
"italic",
null
],
"type": [
"string",
"null"
]
},
"fontWeight": {
"description": "Font weight for the card description.",
"maximum": 900,
"minimum": 100,
"type": [
"integer",
"null"
]
}
},
"type": [
"object",
"null"
]
}
},
"type": [
"object",
"null"
]
},
"detail": {
"additionalProperties": false,
"properties": {
"styles": {
"additionalProperties": false,
"properties": {
"color": {
"additionalProperties": false,
"description": "Default color for secondary text on cards (descriptions, remaining, dates, etc.).",
"properties": {
"dark": {
"$ref": "#/$defs/ThemeColorValue"
},
"light": {
"$ref": "#/$defs/ThemeColorValue"
}
},
"type": [
"object",
"null"
]
}
},
"type": [
"object",
"null"
]
}
},
"type": [
"object",
"null"
]
},
"discountedFromPrice": {
"additionalProperties": false,
"properties": {
"styles": {
"additionalProperties": false,
"properties": {
"color": {
"additionalProperties": false,
"description": "Default discounted from price color for selectable cards.",
"properties": {
"dark": {
"$ref": "#/$defs/ThemeColorValue"
},
"light": {
"$ref": "#/$defs/ThemeColorValue"
}
},
"type": [
"object",
"null"
]
},
"fontFamily": {
"description": "Font family for the card discounted from price.",
"pattern": "^[A-Za-z0-9][A-Za-z0-9 ]{0,63}$",
"type": [
"string",
"null"
]
},
"fontSize": {
"anyOf": [
{
"enum": [
""
],
"type": "string"
},
{
"enum": [
10
],
"type": "number"
},
{
"enum": [
11
],
"type": "number"
},
{
"enum": [
12
],
"type": "number"
},
{
"enum": [
13
],
"type": "number"
},
{
"enum": [
14
],
"type": "number"
},
{
"enum": [
16
],
"type": "number"
},
{
"enum": [
18
],
"type": "number"
},
{
"enum": [
20
],
"type": "number"
},
{
"enum": [
24
],
"type": "number"
},
{
"enum": [
32
],
"type": "number"
},
{
"enum": [
40
],
"type": "number"
},
{
"enum": [
48
],
"type": "number"
},
{
"enum": [
64
],
"type": "number"
},
{
"type": "null"
}
],
"description": "Font size for the card discounted from price."
},
"fontStyle": {
"description": "Font style for the card discounted from price.",
"enum": [
"",
"normal",
"italic",
null
],
"type": [
"string",
"null"
]
},
"fontWeight": {
"description": "Font weight for the card discounted from price.",
"maximum": 900,
"minimum": 100,
"type": [
"integer",
"null"
]
}
},
"type": [
"object",
"null"
]
}
},
"type": [
"object",
"null"
]
},
"groupName": {
"additionalProperties": false,
"properties": {
"styles": {
"additionalProperties": false,
"properties": {
"backgroundColor": {
"additionalProperties": false,
"description": "Default group name background color for selectable cards.",
"properties": {
"dark": {
"$ref": "#/$defs/ThemeColorValue"
},
"light": {
"$ref": "#/$defs/ThemeColorValue"
}
},
"type": [
"object",
"null"
]
},
"color": {
"additionalProperties": false,
"description": "Default group name color for selectable cards.",
"properties": {
"dark": {
"$ref": "#/$defs/ThemeColorValue"
},
"light": {
"$ref": "#/$defs/ThemeColorValue"
}
},
"type": [
"object",
"null"
]
},
"fontFamily": {
"description": "Font family for the card group name.",
"pattern": "^[A-Za-z0-9][A-Za-z0-9 ]{0,63}$",
"type": [
"string",
"null"
]
},
"fontSize": {
"anyOf": [
{
"enum": [
""
],
"type": "string"
},
{
"enum": [
10
],
"type": "number"
},
{
"enum": [
11
],
"type": "number"
},
{
"enum": [
12
],
"type": "number"
},
{
"enum": [
13
],
"type": "number"
},
{
"enum": [
14
],
"type": "number"
},
{
"enum": [
16
],
# --- truncated at 32 KB (789 KB total) ---
# Full source: https://artifacts.apis.io/checkoutpage-com/json-schema/checkoutpage-com-theme-overrides-input-schema.json
Work with this as data
Every JSON Schema here is available over the APIs.io API and to AI agents over MCP.
MCP server
One button, every client — Claude, Cursor, VS Code and the rest.
https://apis.io/mcp
Tools for schemas
4 MCP tools reach this
find_json_schemasBrowse and filter every JSON Schema in the catalog.apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.resolveTurn a domain, URL or GitHub org into the provider it belongs to.find_cohortsEvery scored population of providers in the catalog.
Call it yourself
curl for this page
curl "https://apis.io/api/v1/json-schemas/checkoutpage-com-theme-overrides-input"
curl "https://apis.io/api/v1/json-schemas?limit=25"
Calls without X-API-Key need no key. Calls with it need a paid plan — get a key.
Get an API key
Free tier, no form to fill in. Signing in shares your email address with us — we store it to create your key and to recognise you if you sign in with another provider. See our Privacy Policy and Terms.
A second provider on the same verified email joins the account you already have.