Theme

The Theme module makes theme management more efficient and effective. It allows you to view all theme pages, obtain details about specific theme pages, check the current app theme, and preview and test themes before applying them live.

Sales Channel Theme

Theme provides a comprehensive set of tools to efficiently manage assets and global configurations for web themes. With these APIs, developers can seamlessly handle essential asset details such as JavaScript (JS) and CSS bundle URLs, along with image URLs, crucial for creating visually appealing themes. Moreover, the APIs empower sales channel users to contribute by adding data for global configurations, including color palettes and other theme global settings.

Operations
GET
/service/application/theme/v2.0/applied-theme
# Get applied theme
GET
/service/application/theme/v2.0/{theme_id}/preview
# Get theme for preview
GET

Get applied theme

Gets the theme configuration and template details of a theme applied to the application.
Parameters
filters
boolean
Filters on sections to be applied or not.
Response
200
4XX
5XX
Success. Returns a JSON object of the theme. Check the example shown below or refer `ThemesSchema` for more details.
ThemesSchema
font
object (Font)
Font
variants
object (FontVariants)
FontVariants
light
object (FontVariant)
FontVariant
name
string
The name of the font variant.
file
string
The url of the font file.
regular
object (FontVariant)
FontVariant
name
string
The name of the font variant.
file
string
The url of the font file.
medium
object (FontVariant)
FontVariant
name
string
The name of the font variant.
file
string
The url of the font file.
semi_bold
object (FontVariant)
FontVariant
name
string
The name of the font variant.
file
string
The url of the font file.
bold
object (FontVariant)
FontVariant
name
string
The name of the font variant.
file
string
The url of the font file.
family
string
The font family.
config
object (Config)
Config
current
string
The current configuration.
list
array of object (ThemeConfiguration)
A list of configurations.
Array of ThemeConfiguration
name
string
The name of the configuration.
global_config
object
A global configuration object containing various settings for the theme.
page
array of string
An array of pages associated with the theme configuration.
global_schema
object (GlobalSchema)
GlobalSchema
props
array of object (Prop)
An array of properties associated with the global schema, where each property is represented by an object.
Array of Prop
type
string
The type of the property.
category
string
The category of the property.
id
string
The id of the property.
label
string
The label of the property.
info
string
Additional information about the property.
preset
object (Preset)
Preset
pages
array of object (Page)
An array of pages included in the preset, each represented by an object.
Array of Page
sections
array of object (Section)
An array of sections included in the page.
Array of Section
blocks
array of object (Block)
An array of blocks included in the section, each represented by an object conforming to the block schema.
Array of Block
type
string
The type of the block.
name
string
The name of the block.
props
object (BlockProps)
BlockProps
image
object (ImagePickerProp)
ImagePickerProp
type
string
The type of the property.
value
string
The value of the image picker property.
slide_link
object (UrlProp)
UrlProp
type
string
The type of the property.
value
string
The value of the url property.
predicate
object (Predicate)
Predicate
screen
object (Screen)
Screen
mobile
boolean
True if the screen is a mobile device.
desktop
boolean
True if the screen is a desktop device.
tablet
boolean
True if the screen is a tablet device.
user
object (ThemeUserSchema)
ThemeUserSchema
authenticated
boolean
True if the user is authenticated.
anonymous
boolean
True if the user is anonymous.
route
object (Route)
Route
selected
string
The selected route.
exact_url
string
The exact url of the route.
name
string
The name of the section.
props
object (SectionProps)
SectionProps
title
object (TextProp)
TextProp
value
string
The value of the text property.
type
string
The type of the property.
item_margin
object (TextProp)
TextProp
value
string
The value of the text property.
type
string
The type of the property.
autoplay
object (CheckboxProp)
CheckboxProp
value
boolean
The value of the checkbox property.
type
string
The type of the property.
slide_interval
object (RangeProp)
RangeProp
value
integer
The value of the range property.
type
string
The type of the property.
preset
object (SectionPreset)
SectionPreset
blocks
array of object (Block)
An array of blocks included in the section preset.
Array of Block
type
string
The type of the block.
name
string
The name of the block.
props
object (BlockProps)
BlockProps
image
object (ImagePickerProp)
ImagePickerProp
type
string
The type of the property.
value
string
The value of the image picker property.
slide_link
object (UrlProp)
UrlProp
type
string
The type of the property.
value
string
The value of the url property.
value
string
The value of the page.
applied
boolean
Whether the theme has been applied or not.
is_private
boolean
Whether the theme is private or not.
tags
array of string
An array of tags associated with the theme.
_id
string
The unique identifier of the theme.
application_id
string
The id of the application.
marketplace_theme_id
string
The id of the theme in the marketplace.
meta
object (ThemeMeta)
ThemeMeta
payment
object (ThemePayment)
ThemePayment
is_paid
boolean
Whether the theme is paid or not.
amount
number
The amount of the theme.
description
string
The description of the theme.
industry
array of string
An array of industries associated with the theme.
release
object (Release)
Release
notes
string
The release notes of the theme.
version
string
The version of the theme.
images
object (Images)
Images
desktop
string
The url of the desktop image.
mobile
string
The url of the mobile image.
slug
string
The slug of the theme.
name
string
The name of the theme.
name
string
The name of the theme.
template_theme_id
string
The id of the template theme.
version
string
The version of the theme.
styles
object
The styles associated with the theme.
created_at
string
| date-time
The creation timestamp of the theme.
updated_at
string
| date-time
The last update timestamp of the theme.
assets
object (Assets)
Assets
umd_js
object (UMDJs)
UMDJs
links
array of string
An array of strings representing urls or links.
common_js
object (CommonJS)
CommonJS
link
string
A string representing the url or link to the commonjs module.
css
object (CSS)
CSS
links
array of string
An array of strings representing urls for css assets.
available_sections
array of object (SectionItem)
Available sections information.
Array of SectionItem
props
array of object
An array of objects representing properties or attributes of the section item.
blocks
array of object
An array having blocks of the section.
name
string
Name of the section.
label
string
Label for the section.
theme_type
string
The theme or category type associated with the page.
Enum
company_id
number
The company id in which sales channel exists.
Examples
Parameters
Parameters are not required.
GET
/service/application/theme/v2.0/applied-theme
Loading...
Response
Loading...
GET

Get theme for preview

Gets the theme configuration and template details of a theme by theme id.
Parameters
theme_id
string
Required
Id of the theme to be retrieved.
filters
boolean
Filters on sections to be applied or not.
Response
200
4XX
5XX
Success. Returns a JSON object of the theme. Check the example shown below or refer `ThemesSchema` for more details.
ThemesSchema
font
object (Font)
Font
variants
object (FontVariants)
FontVariants
light
object (FontVariant)
FontVariant
name
string
The name of the font variant.
file
string
The url of the font file.
regular
object (FontVariant)
FontVariant
name
string
The name of the font variant.
file
string
The url of the font file.
medium
object (FontVariant)
FontVariant
name
string
The name of the font variant.
file
string
The url of the font file.
semi_bold
object (FontVariant)
FontVariant
name
string
The name of the font variant.
file
string
The url of the font file.
bold
object (FontVariant)
FontVariant
name
string
The name of the font variant.
file
string
The url of the font file.
family
string
The font family.
config
object (Config)
Config
current
string
The current configuration.
list
array of object (ThemeConfiguration)
A list of configurations.
Array of ThemeConfiguration
name
string
The name of the configuration.
global_config
object
A global configuration object containing various settings for the theme.
page
array of string
An array of pages associated with the theme configuration.
global_schema
object (GlobalSchema)
GlobalSchema
props
array of object (Prop)
An array of properties associated with the global schema, where each property is represented by an object.
Array of Prop
type
string
The type of the property.
category
string
The category of the property.
id
string
The id of the property.
label
string
The label of the property.
info
string
Additional information about the property.
preset
object (Preset)
Preset
pages
array of object (Page)
An array of pages included in the preset, each represented by an object.
Array of Page
sections
array of object (Section)
An array of sections included in the page.
Array of Section
blocks
array of object (Block)
An array of blocks included in the section, each represented by an object conforming to the block schema.
Array of Block
type
string
The type of the block.
name
string
The name of the block.
props
object (BlockProps)
BlockProps
image
object (ImagePickerProp)
ImagePickerProp
type
string
The type of the property.
value
string
The value of the image picker property.
slide_link
object (UrlProp)
UrlProp
type
string
The type of the property.
value
string
The value of the url property.
predicate
object (Predicate)
Predicate
screen
object (Screen)
Screen
mobile
boolean
True if the screen is a mobile device.
desktop
boolean
True if the screen is a desktop device.
tablet
boolean
True if the screen is a tablet device.
user
object (ThemeUserSchema)
ThemeUserSchema
authenticated
boolean
True if the user is authenticated.
anonymous
boolean
True if the user is anonymous.
route
object (Route)
Route
selected
string
The selected route.
exact_url
string
The exact url of the route.
name
string
The name of the section.
props
object (SectionProps)
SectionProps
title
object (TextProp)
TextProp
value
string
The value of the text property.
type
string
The type of the property.
item_margin
object (TextProp)
TextProp
value
string
The value of the text property.
type
string
The type of the property.
autoplay
object (CheckboxProp)
CheckboxProp
value
boolean
The value of the checkbox property.
type
string
The type of the property.
slide_interval
object (RangeProp)
RangeProp
value
integer
The value of the range property.
type
string
The type of the property.
preset
object (SectionPreset)
SectionPreset
blocks
array of object (Block)
An array of blocks included in the section preset.
Array of Block
type
string
The type of the block.
name
string
The name of the block.
props
object (BlockProps)
BlockProps
image
object (ImagePickerProp)
ImagePickerProp
type
string
The type of the property.
value
string
The value of the image picker property.
slide_link
object (UrlProp)
UrlProp
type
string
The type of the property.
value
string
The value of the url property.
value
string
The value of the page.
applied
boolean
Whether the theme has been applied or not.
is_private
boolean
Whether the theme is private or not.
tags
array of string
An array of tags associated with the theme.
_id
string
The unique identifier of the theme.
application_id
string
The id of the application.
marketplace_theme_id
string
The id of the theme in the marketplace.
meta
object (ThemeMeta)
ThemeMeta
payment
object (ThemePayment)
ThemePayment
is_paid
boolean
Whether the theme is paid or not.
amount
number
The amount of the theme.
description
string
The description of the theme.
industry
array of string
An array of industries associated with the theme.
release
object (Release)
Release
notes
string
The release notes of the theme.
version
string
The version of the theme.
images
object (Images)
Images
desktop
string
The url of the desktop image.
mobile
string
The url of the mobile image.
slug
string
The slug of the theme.
name
string
The name of the theme.
name
string
The name of the theme.
template_theme_id
string
The id of the template theme.
version
string
The version of the theme.
styles
object
The styles associated with the theme.
created_at
string
| date-time
The creation timestamp of the theme.
updated_at
string
| date-time
The last update timestamp of the theme.
assets
object (Assets)
Assets
umd_js
object (UMDJs)
UMDJs
links
array of string
An array of strings representing urls or links.
common_js
object (CommonJS)
CommonJS
link
string
A string representing the url or link to the commonjs module.
css
object (CSS)
CSS
links
array of string
An array of strings representing urls for css assets.
available_sections
array of object (SectionItem)
Available sections information.
Array of SectionItem
props
array of object
An array of objects representing properties or attributes of the section item.
blocks
array of object
An array having blocks of the section.
name
string
Name of the section.
label
string
Label for the section.
theme_type
string
The theme or category type associated with the page.
Enum
company_id
number
The company id in which sales channel exists.
Examples
Parameters
Parameters are not required.
GET
/service/application/theme/v2.0/{theme_id}/preview
Loading...
Response
Loading...

Theme Page

Theme Pages API is a tool for developers to efficiently create dynamic and customizable web pages across various platforms. It offers essential features such as section filtering based on criteria like delivery zones, time scheduler, and type of platforms, it enables developers to configure reusable sections with multiple elements using blocks, fostering creativity and flexibility in design. Moreover, it provides functionality for managing the SEO content of a page. For instance, developers can easily design a homepage with a featured products section and a promotional banner, customizing the content and layout as needed. They can implement filtering based on delivery zones and time scheduler to cater to specific audiences effectively. Ultimately, the UI Theme Pages API empowers developers to craft engaging and optimized user experiences that resonate across platforms.

Operations
GET
/service/application/theme/v1.0/{theme_id}/page
# List pages
GET
/service/application/theme/v1.0/{theme_id}/{page_value}
# Get theme page
GET

List pages

Get all page level configs, sections and seo data of a theme.
Parameters
theme_id
string
Required
Id of the theme to be retrieved.
Response
200
4XX
5XX
Success. Returns an array all the pages of the theme. Refer `AllAvailablePageSchema` for more details.
AllAvailablePageSchema
pages
array of object (AvailablePageSchema)
List all the pages.
Array of AvailablePageSchema
value
string
The name of the page. For example, 'about-us'.
text
string
The textual content associated with the page. For example, 'about us'.
path
string
The url path for the page. For example, 'about-us'.
type
string
The type of the page, which can be 'system', 'custom', or 'sections'.
Enum
sections
array of object (AvailablePageSchemaSections)
An array of sections that make up the page.
Array of AvailablePageSchemaSections
name
string
The name of the section.
label
string
A label for the section, which can be used for display purposes.
props
object
An object containing various properties associated with the section.
blocks
array of object
An array of blocks within the section, where each block is represented as an object.
preset
object
An object containing preset configurations for the section.
predicate
object (AvailablePagePredicate)
AvailablePagePredicate
screen
object (AvailablePageScreenPredicate)
AvailablePageScreenPredicate
mobile
boolean
Indicates if the predicate applies to mobile screens.
desktop
boolean
Indicates if the predicate applies to desktop screens.
tablet
boolean
Indicates if the predicate applies to tablet screens.
user
object (AvailablePageUserPredicate)
AvailablePageUserPredicate
authenticated
boolean
Indicates if the predicate applies to authenticated users.
anonymous
boolean
Indicates if the predicate applies to anonymous users.
route
object (AvailablePageRoutePredicate)
AvailablePageRoutePredicate
selected
string
Specifies the type of route selection, which can be 'none', 'exact', or 'query'.
Enum
exact_url
string
The exact url for the route when 'selected' is set to 'exact'.
query
object
An object representing query parameters for the route when 'selected' is set to 'query'.
schedule
object (AvailablePageSchedulePredicate)
AvailablePageSchedulePredicate
cron
string
A cron expression specifying the schedule for the predicate.
start
string
| date-time
The start date and time for the schedule, in iso 8601 format.
end
string
| date-time
The end date and time for the schedule, in iso 8601 format.
platform
object (AvailablePagePlatformPredicate)
AvailablePagePlatformPredicate
ios
boolean
Section visibility on ios platform.
android
boolean
Section visibility on android platform.
web
boolean
Section visibility on web platform.
zones
array of string
An array of zone ids associated with the section.
__source
object (SectionSource)
SectionSource
id
string
The source id specifying the source of the section.
bundle_name
string
This is the extension binding name containing this section.
type
string
This is source type. It will either be themeBundle or extension.
assets
object (SectionAssets)
SectionAssets
js
string
The CDN URL of JS bundle.
css
string
The CDN URL of CSS file.
sections_meta
array of object (AvailablePageSectionMetaAttributes)
An array of metadata attributes for the sections of the page, each represented by an object.
Array of AvailablePageSectionMetaAttributes
attributes
object
A key-value pair object containing metadata attributes for the section.
theme
string
The unique identifier for the theme associated with the section.
seo
object (AvailablePageSeo)
AvailablePageSeo
title
string
The seo title of the page.
description
string
The seo description of the page.
canonical_url
string
The canonical url of the page.
meta_tags
array of object (SEOMetaItem)
An array of meta tags for the page, each represented by an object.
Array of SEOMetaItem
title
string
The title of the meta tag item.
items
array of object (SEOMetaItems)
An array of items within the meta tag, each represented by an object.
Array of SEOMetaItems
key
string
The key of the meta tag item.
value
string
The value of the meta tag item.
sitemap
object (SEOSitemap)
SEOSitemap
priority
number
The priority of the page in the sitemap, typically a value between 0.0 And 1.0.
frequency
string
The frequency with which the content of the page is likely to change, such as 'always', 'hourly', 'daily', 'weekly', 'monthly', 'yearly', or 'never'.
breadcrumb
array of object (SEObreadcrumb)
An array representing breadcrumb navigation, where each item provides information about a step in the navigation path.
Array of SEObreadcrumb
url
string
The url associated with the breadcrumb.
action
object (Action)
Action
type
string
Type of action to be taken e.g, page.
page
object (ActionPage)
ActionPage
params
object
Parameters that should be considered in path.
query
object
Query parameter if any to be added to the action.
url
string
The URL for the action.
type
object (PageType)
Enum
popup
object (ActionPage)
ActionPage
params
object
Parameters that should be considered in path.
query
object
Query parameter if any to be added to the action.
url
string
The URL for the action.
type
object (PageType)
Enum
_id
string
The unique identifier for the object.
props
array of object
An array of properties associated with the object, where each property is represented as an object.
_id
string
The unique identifier for the object.
Examples
Parameters
Parameters are not required.
GET
/service/application/theme/v1.0/{theme_id}/page
Loading...
Response
Loading...
GET

Get theme page

Get page level configurations, applied sections and seo data of a page by `page_value` received from list pages api.
Parameters
theme_id
string
Required
Id of the theme to be retrieved.
page_value
string
Required
Value of the page to be retrieved.
filters
string
Filters on sections to be applied or not.
section_preview_hash
string
Unique hash id on sections preview.
company
integer
Company id of the application.
Response
200
4XX
5XX
Success. Returns an object of the pages. Refer `AvailablePageSchema` for more details.
AvailablePageSchema
value
string
The name of the page. For example, 'about-us'.
text
string
The textual content associated with the page. For example, 'about us'.
path
string
The url path for the page. For example, 'about-us'.
type
string
The type of the page, which can be 'system', 'custom', or 'sections'.
Enum
sections
array of object (AvailablePageSchemaSections)
An array of sections that make up the page.
Array of AvailablePageSchemaSections
name
string
The name of the section.
label
string
A label for the section, which can be used for display purposes.
props
object
An object containing various properties associated with the section.
blocks
array of object
An array of blocks within the section, where each block is represented as an object.
preset
object
An object containing preset configurations for the section.
predicate
object (AvailablePagePredicate)
AvailablePagePredicate
screen
object (AvailablePageScreenPredicate)
AvailablePageScreenPredicate
mobile
boolean
Indicates if the predicate applies to mobile screens.
desktop
boolean
Indicates if the predicate applies to desktop screens.
tablet
boolean
Indicates if the predicate applies to tablet screens.
user
object (AvailablePageUserPredicate)
AvailablePageUserPredicate
authenticated
boolean
Indicates if the predicate applies to authenticated users.
anonymous
boolean
Indicates if the predicate applies to anonymous users.
route
object (AvailablePageRoutePredicate)
AvailablePageRoutePredicate
selected
string
Specifies the type of route selection, which can be 'none', 'exact', or 'query'.
Enum
exact_url
string
The exact url for the route when 'selected' is set to 'exact'.
query
object
An object representing query parameters for the route when 'selected' is set to 'query'.
schedule
object (AvailablePageSchedulePredicate)
AvailablePageSchedulePredicate
cron
string
A cron expression specifying the schedule for the predicate.
start
string
| date-time
The start date and time for the schedule, in iso 8601 format.
end
string
| date-time
The end date and time for the schedule, in iso 8601 format.
platform
object (AvailablePagePlatformPredicate)
AvailablePagePlatformPredicate
ios
boolean
Section visibility on ios platform.
android
boolean
Section visibility on android platform.
web
boolean
Section visibility on web platform.
zones
array of string
An array of zone ids associated with the section.
__source
object (SectionSource)
SectionSource
id
string
The source id specifying the source of the section.
bundle_name
string
This is the extension binding name containing this section.
type
string
This is source type. It will either be themeBundle or extension.
assets
object (SectionAssets)
SectionAssets
js
string
The CDN URL of JS bundle.
css
string
The CDN URL of CSS file.
sections_meta
array of object (AvailablePageSectionMetaAttributes)
An array of metadata attributes for the sections of the page, each represented by an object.
Array of AvailablePageSectionMetaAttributes
attributes
object
A key-value pair object containing metadata attributes for the section.
theme
string
The unique identifier for the theme associated with the section.
seo
object (AvailablePageSeo)
AvailablePageSeo
title
string
The seo title of the page.
description
string
The seo description of the page.
canonical_url
string
The canonical url of the page.
meta_tags
array of object (SEOMetaItem)
An array of meta tags for the page, each represented by an object.
Array of SEOMetaItem
title
string
The title of the meta tag item.
items
array of object (SEOMetaItems)
An array of items within the meta tag, each represented by an object.
Array of SEOMetaItems
key
string
The key of the meta tag item.
value
string
The value of the meta tag item.
sitemap
object (SEOSitemap)
SEOSitemap
priority
number
The priority of the page in the sitemap, typically a value between 0.0 And 1.0.
frequency
string
The frequency with which the content of the page is likely to change, such as 'always', 'hourly', 'daily', 'weekly', 'monthly', 'yearly', or 'never'.
breadcrumb
array of object (SEObreadcrumb)
An array representing breadcrumb navigation, where each item provides information about a step in the navigation path.
Array of SEObreadcrumb
url
string
The url associated with the breadcrumb.
action
object (Action)
Action
type
string
Type of action to be taken e.g, page.
page
object (ActionPage)
ActionPage
params
object
Parameters that should be considered in path.
query
object
Query parameter if any to be added to the action.
url
string
The URL for the action.
type
object (PageType)
Enum
popup
object (ActionPage)
ActionPage
params
object
Parameters that should be considered in path.
query
object
Query parameter if any to be added to the action.
url
string
The URL for the action.
type
object (PageType)
Enum
_id
string
The unique identifier for the object.
props
array of object
An array of properties associated with the object, where each property is represented as an object.
_id
string
The unique identifier for the object.
Examples
Parameters
Parameters are not required.
GET
/service/application/theme/v1.0/{theme_id}/{page_value}
Loading...
Response
Loading...