The REST Admin API is a legacy API as of October 1, 2024. Starting April 1, 2025, all new public apps must be built exclusively with the GraphQL Admin API. For details and migration steps, visit our migration guide.
Page
content
access scope.In addition to an online storefront, Shopify stores come with a tool for creating basic HTML web pages. Store owners can create any number of pages to hold static content, such as an About us page, a Contact us page, or a page with customer testimonials.
These web pages are represented by the Page resource, and their HTML content is contained in the value of the body_html
property. The Page resource lets you retrieve, create, update, and delete web pages for a store.
Pages are meant to be used for long-term, static content that rarely changes. For creating content on a regular basis, use the Blog resource instead.
Endpoints
- post/admin/api/latest/pages.
json Creates a page - get/admin/api/latest/pages.
json Retrieves a list of pages - get/admin/api/latest/pages/{page_
id}. json Retrieves a single page by its ID - get/admin/api/latest/pages/count.
json Retrieves a page count - put/admin/api/latest/pages/{page_
id}. json Updates a page - del/admin/api/latest/pages/{page_
id}. json Deletes a page
The Page resource
Properties
The name of the person who created the page.
The text content of the page, complete with HTML markup.
A unique, human-friendly string for the page, generated automatically from its title. In themes, the Liquid templating language refers to a page by its handle.
The unique numeric identifier for the page.
Additional information attached to the Page object. It has the following properties:
Show metafield properties
- key: An identifier for the metafield. (maximum: 30 characters)
- namespace: A container for a set of metadata. Namespaces help distinguish between metadata created by different apps. (maximum: 20 characters)
- value: The information to be stored as metadata.
- type: The metafield's information type. Refer to the full list of types.
- description (optional): Additional information about the metafield.
For more information on attaching metadata to Shopify resources, see the Metafield resource.
The date and time (ISO 8601 format) when the page was published. Returns null
when the page is hidden.
The ID of the shop to which the page belongs.
The suffix of the template that is used to render the page. If the value is an empty string or null
, then the default page template is used.
The title of the page.
The GraphQL GID of the page.
The Page resource
Anchor to POST request, Creates a pagepostCreates a page
Creates a page
Anchor to Parameters of Creates a pageParameters
Anchor to post-pages-examplesExamples
Create a page with HTML markup
Create a page with HTML markup
Create a page with a metafield
Create a page with a metafield
Create an unpublished page
Create an unpublished page
Creating a page without a title fails and returns an error
Creating a page without a title fails and returns an error
/admin/api/2025-07/pages. json
Response
Anchor to GET request, Retrieves a list of pagesgetRetrieves a list of pages
Retrieve a list of all pages. Note: This endpoint implements pagination by using links that are provided in the response header. To learn more, refer to Make paginated requests to the REST Admin API.
Show pages created before date (format: 2014-04-25T16:15:47-04:00).
Show pages created after date (format: 2014-04-25T16:15:47-04:00).
Show only certain fields, specified by a comma-separated list of field names.
Retrieve a page with a given handle.
The maximum number of results to show.
Show pages published before date (format: 2014-04-25T16:15:47-04:00).
Show pages published after date (format: 2014-04-25T16:15:47-04:00).
Restrict results to pages with a given published status:
Show published_status properties
published: Show only published pages.
unpublished: Show only unpublished pages.
any: Show published and unpublished pages.
Restrict results to after the specified ID.
Retrieve pages with a given title.
Show pages last updated before date (format: 2014-04-25T16:15:47-04:00).
Show pages last updated after date (format: 2014-04-25T16:15:47-04:00).
Anchor to get-pages-examplesExamples
Get all pages for a shop
Get all pages for a shop
Retrieve a list of all pages after the specified ID
Retrieve a list of all pages after the specified ID
Restrict results to after the specified ID.
/admin/api/2025-07/pages. json
Response
Anchor to GET request, Retrieves a single page by its IDgetRetrieves a single page by its ID
Retrieves a single page by its ID.
Show only certain fields, specified by a comma-separated list of field names.
Retrieve a single page
Retrieve a single page
/admin/api/2025-07/pages/131092082. json
Response
Anchor to GET request, Retrieves a page countgetRetrieves a page count
Retrieves a page count.
Count pages created before date (format: 2014-04-25T16:15:47-04:00).
Count pages created after date (format: 2014-04-25T16:15:47-04:00).
Show pages published before date (format: 2014-04-25T16:15:47-04:00).
Show pages published after date (format: 2014-04-25T16:15:47-04:00).
Count pages with a given published status:
Show published_status properties
published: Count published pages.
unpublished: Count unpublished pages.
any: Count published and unpublished pages.
Count pages with a given title.
Count pages last updated before date (format: 2014-04-25T16:15:47-04:00).
Count pages last updated after date (format: 2014-04-25T16:15:47-04:00).
Retrieve a count of all pages
Retrieve a count of all pages
/admin/api/2025-07/pages/count. json
Response
Anchor to PUT request, Updates a pageputUpdates a page
Updates a page
Anchor to Parameters of Updates a pageParameters
Add a metafield to a page
Add a metafield to a page
Show page properties
The unique numeric identifier for the page.
Hide a published page
Hide a published page
Show page properties
The unique numeric identifier for the page.
Update an existing page completely
Update an existing page completely
Show page properties
The unique numeric identifier for the page.
The text content of the page, complete with HTML markup.
The name of the person who created the page.
The title of the page.
A unique, human-friendly string for the page, generated automatically from its title. In themes, the Liquid templating language refers to a page by its handle.
Update the body HTML of an existing page
Update the body HTML of an existing page
Show page properties
The unique numeric identifier for the page.
The text content of the page, complete with HTML markup.
/admin/api/2025-07/pages/131092082. json
Response
Anchor to DELETE request, Deletes a pagedelDeletes a page
Deletes a page.
Anchor to Parameters of Deletes a pageParameters
Delete a page
Delete a page