Skip to main content

Create Page

Creates a page in a project. Two kinds of page are creatable:
  • CUSTOM — a bespoke merchant page with a caller-supplied handle/path. Starts blank unless you pass basedOn.
  • Resource-backed templates (PRODUCT, COLLECTION, PAGE, BLOG, ARTICLE) — a per-resource override / custom template. Clones the project’s shared default template for that type when one exists; otherwise starts blank. Pass basedOn to clone a specific page instead.
This endpoint creates one new page per call (a per-resource copy). To assign many Shopify resources to a single shared template page without copying content, use Assign template resources instead.
Requires a Content API key. See Authentication.

Path parameters

Request body

POST /projects/:projectId/pages also preserves the legacy POST-as-delete fallback. A body containing pageIds or handles is treated as a bulk-delete request. Use the create fields above for page creation.

Example

Clone an existing layout

Pass basedOn with a page ID from List Pages to clone the source page’s layout items into the new page.
The source page must be assigned to the same project. Cross-project source IDs return 404 PAGE_NOT_FOUND.

Create a resource-backed override

Create a per-resource override (custom template) so a specific resource page — for example a collection PLP — can carry editorial/content blocks. When you omit basedOn, the project’s shared default template for that type is cloned when one exists; otherwise the page starts with a blank root. Pass shopifyResourceId to bind the Shopify resource for Studio’s assignment UX.
This creates one page copy for the resource. If a live assignment already exists for the same type, handle, and locale/market, the request returns 409 CONFLICT and creates nothing — read the existing page with Get Page or edit its items with Update Page instead. To point several resources at one shared template page rather than creating a copy per resource, see Assign template resources.

Response

The nested page object follows the same shape as Get Page.

Errors