Requires write_page access scope.
For more info, refer to:
POST https://{handle}.myshopline.com/admin/openapi/v20261201/store/page/customize.json
handle : The store's unique identifier, which is the prefix of the store's domain name. For example, if a store's domain name is open001.myshopline.com , the store handle is open001 .
Create a custom page for the store.
Request Headers
  • Content-Type string required
    The field must be set to the fixed value application/json; charset=utf-8.
  • Authorization string required
    The access token for the API resource. Refer to App authorization to obtain the access token, and then pass the obtained token in the Bearer format.
    Example:
    Bearer eyJhbGciOiJIUzUxMiIsInR5cCI6IkpXVCJ9.eyJhcHBJZCI6MCwiYXBwS2V5IjoiNzU2ZjI1NWE2NjdlZTcwNTk1MzM0ZjVjYzk4NzU5MzBmN2E3NGZjMSIsImV4cCI6MTg3OTQ4MjA3NiwiaXNzIjoieXNvdWwiLCJzZWxsZXJJZCI6IjIwMDAyMzQ4ODAiLCJzdG9yZUlkIjoiMTY3MjM2OTcyOTYwNiIsInRpbWVzdGFtcCI6MTc4NDc4NzY3NjY2MSwidmVyc2lvbiI6IlYyIn0.3ZzbGAH4cLU1QR2VPEvMOQInUDvus-C4amkINSQIPuNVlXsFKj0sAt1c0KnUy9MWUOFV9cHlkf7J90r2y1FzpA
Request Body
  • reqobject required
    Request parameters.
  • published_status boolean
    Whether to publish the custom page immediately.
    • true: Publish immediately.
    • false: Do not publish or schedule for future publication. To schedule publication, the published_at field must be specified.
    Default value: true
  • template_name string
    The name of the template used for the custom page.
    Example: templates/page.contact.json
  • title string required
    Title of the custom page.
    Maximum length: 255
    Example: Contact us
  • body_html string
    The body content of the custom page, formatted in HTML.
    The file size must not exceed 16MB.
    Example: <p>We love to hear from you.</p>
  • published_at string
    The publication time of the custom page, which must not be earlier than the current time. If you schedule this page for future publication, specify this parameter and set published_status to false. Format: yyyy-MM-dd HH:mm:ss.SSS.
    Example: 2023-09-11 16:49:35.120
  • template_type integer
    The template type used by the custom page. Valid values are:
    • 0: Default theme template.
    • 1: Public template, available for all themes.
    • 2: App-defined theme template, only effective for the current theme.
    Default value: 0
  • url string
    Relative path of the custom page URL. Refer to Customize your URL for details on URL customization.
    Maximum length: 512
    Example: /customurl/contact_us
  • author string required
    The ID or name of the author for the custom page.
    Example: Alvin
  • handle string required
    A unique semantic identifier for the custom page.
    Example: contact-us
Status Codes
For the complete list of codes and messages, see Http status code.

Response Headers
  • traceId
    A globally unique identifier for the request. It is used to track the request flow throughout the system, allowing for easy location and debugging when issues arise.
Response Body
  • dataobject
    Custom page information.
  • template_name string
    Template name used for the custom page.
    Example: templates/page.contact.json
  • created_at string
    Creation time of the custom page. Format: yyyy-MM-dd HH:mm:ss.SSS.
    Example: 2023-09-11 16:49:35.000
  • handle string
    A unique semantic identifier for the custom page.
    Example: contact-us
  • published_at string
    Publication time of the custom page. Format: yyyy-MM-dd HH:mm:ss.SSS.
    Example: 2023-09-11 16:49:35.120
  • published_status boolean
    Whether the custom page has been published.
    • true: Already published.
    • false: Not yet published.
  • title string
    Title of the custom page.
    Example: Contact us
  • updated_at string
    Update time of the custom page. Format: yyyy-MM-dd HH:mm:ss.SSS.
    Example: 2023-09-11 16:49:35.120
  • author string
    The ID or name of the author for the custom page.
    Example: Alvin
  • body_html string
    The body content of the custom page, formatted in HTML.
    Example: <p>We love to hear from you.</p>
  • id string
    The unique ID of the custom page.
    Example: 6743314731912662424
  • store_id long
    The unique ID of the store.
    Example: 1730104825803
  • msg string
    Response information, including the reason for success or failure.
API Explorer
https://openapiceshidianpu.myshopline.com/admin/openapi/v20261201

ParamOptions

header required

Body

required
{
  "req": {
    "template_type": null,
    "title": "Contact us",
    "url": "/customurl/contact_us",
    "author": "Alvin",
    "body_html": "<p>We love to hear from you.</p>",
    "handle": "contact-us",
    "published_at": "2023-09-11 16:49:35.120",
    "published_status": null,
    "template_name": "templates/page.contact.json"
  }
}

Language

curl --request POST \
--url https://openapiceshidianpu.myshopline.com/admin/openapi/v20261201/store/page/customize.json \
--header 'Authorization: Bearer eyJhbGciOiJIUzUxMiIsInR5cCI6IkpXVCJ9.eyJhcHBJZCI6MCwiYXBwS2V5IjoiNzU2ZjI1NWE2NjdlZTcwNTk1MzM0ZjVjYzk4NzU5MzBmN2E3NGZjMSIsImV4cCI6MTg3OTQ4MjA3NiwiaXNzIjoieXNvdWwiLCJzZWxsZXJJZCI6IjIwMDAyMzQ4ODAiLCJzdG9yZUlkIjoiMTY3MjM2OTcyOTYwNiIsInRpbWVzdGFtcCI6MTc4NDc4NzY3NjY2MSwidmVyc2lvbiI6IlYyIn0.3ZzbGAH4cLU1QR2VPEvMOQInUDvus-C4amkINSQIPuNVlXsFKj0sAt1c0KnUy9MWUOFV9cHlkf7J90r2y1FzpA' \
--header 'Content-Type: application/json; charset=utf-8' \
--header 'accept: application/json'
Examples
Create a custom page
Request
{
"req": {
"title": "MY CUSTOM PAGE 5",
"author": "shopline",
"body_html": "MY CUSTOM PAGE CONTENT",
"handle": "my-custom-page",
"published_at": "2023-09-07 17:17:02.86",
"published_status": "true",
"template_name": "templates/page.json",
"template_type": 2
}
}
Response
{
"data": {
"store_id": "1672369729606",
"template_name": "templates/page.json",
"title": "MY CUSTOM PAGE 5",
"author": "shopline",
"body_html": "MY CUSTOM PAGE CONTENT",
"created_at": "2025-04-21 16:11:14",
"published_at": "2025-04-21 16:11:14.299",
"updated_at": "2025-04-21 16:11:14",
"handle": "my-custom-page",
"id": "6960782449417390048",
"published_status": true
},
"msg": "success"
}
Was this article helpful to you?