Pages

List page assignments

Returns the page assignments of a project, oldest first. Each assignment maps a page type + handle + locale to a pageId; several assignments can share one template page.

  • Treat type + handle as an opaque pair and pass them unchanged to GET /projects/{projectId}/pages/{type}/{handle}. Custom page handles may contain /: an entry with type: "CUSTOM" and handle: "pages/gift-shop" is fetched at /projects/{projectId}/pages/CUSTOM/pages/gift-shop.
  • The locale filter is an exact match with no fallback. An empty locale value returns 400.
  • An unknown type filter or an invalid cursor returns 400 INVALID_PARAMS.
  • updatedAt is the owning page's revision timestamp (the same value the page detail endpoint returns), so changed pages can be detected without one request per page. Assignments that share a template page report the same value. List responses are cached, so the value may briefly lag.
  • isTemplateMarker is true for internal alias rows Weaverse creates to wire a custom template to its page. Markers are labelled, never filtered, so pagination stays stable; filter them client-side when you only want real storefront pages.
  • Inherited pages from a parent project are not listed.
  • Paginate with limit (default 50, max 100) and after (the previous nextCursor).

Required scope: content:read

get/projects/{projectId}/pages

Request

  • Base URL
    https://studio.weaverse.io/api/v1/content
  • Auth
    HTTP bearer

Path parameters

projectIdstring required

Query parameters

type'INDEX' | 'PRODUCT' | 'ALL_PRODUCTS' | 'COLLECTION' | 'COLLECTION_LIST' | 'PAGE' | 'BLOG' | 'ARTICLE' | 'CART' | 'CUSTOMER' | 'NOT_FOUND' | 'PASSWORD' | 'SEARCH' | 'CUSTOM'
localestring

Exact locale match (e.g. "en-us"). No fallback applied on list endpoint.

afterstring
limitinteger

Response

Paginated list of page assignments

object'list'
nextCursorstring nullable

Changes

No recorded changes to this operation across all 1 revision of this API.