> ## Documentation Index
> Fetch the complete documentation index at: https://docs.launchmystore.io/llms.txt
> Use this file to discover all available pages before exploring further.

# List Pages

> Retrieve a list of pages

# List Pages

Returns a paginated list of pages in the store, ordered by creation date (newest first).

## Request

```bash theme={null}
curl -X GET "https://api.launchmystore.io/api/v1/pages.json" \
  -H "Authorization: Bearer YOUR_ACCESS_TOKEN"
```

## Query Parameters

<ParamField query="page" type="integer" default="1">
  Page number for pagination
</ParamField>

<ParamField query="limit" type="integer" default="50">
  Number of items per page
</ParamField>

## Response

<ResponseField name="status" type="integer">
  HTTP status code (`200` on success)
</ResponseField>

<ResponseField name="state" type="string">
  Outcome state, `success` on success
</ResponseField>

<ResponseField name="message" type="string">
  Human-readable message, `null` on success
</ResponseField>

<ResponseField name="data.pages" type="array">
  Array of page objects

  <Expandable title="Page Object">
    <ResponseField name="pageId" type="string">
      Unique page ID (UUID)
    </ResponseField>

    <ResponseField name="id" type="string">
      Short numeric page identifier
    </ResponseField>

    <ResponseField name="title" type="string">
      Page title
    </ResponseField>

    <ResponseField name="handle" type="string">
      URL-safe page handle
    </ResponseField>

    <ResponseField name="content" type="string">
      Page content (HTML)
    </ResponseField>

    <ResponseField name="templateSuffix" type="string">
      Custom template suffix
    </ResponseField>

    <ResponseField name="link" type="string">
      Optional external link
    </ResponseField>

    <ResponseField name="showtitle" type="boolean">
      Whether the page title is shown on the storefront
    </ResponseField>

    <ResponseField name="seoTitle" type="string">
      Custom page title for search engines
    </ResponseField>

    <ResponseField name="seoDesc" type="string">
      Meta description for search engines
    </ResponseField>

    <ResponseField name="seoImage" type="string">
      Open Graph / social share image URL
    </ResponseField>

    <ResponseField name="createdAt" type="string">
      Creation timestamp (ISO 8601)
    </ResponseField>

    <ResponseField name="updatedAt" type="string">
      Last update timestamp (ISO 8601)
    </ResponseField>
  </Expandable>
</ResponseField>

<ResponseField name="data.pagination" type="object">
  Pagination information (`page`, `limit`, `total`, `hasMore`)
</ResponseField>

## Example Response

```json theme={null}
{
  "status": 200,
  "state": "success",
  "message": null,
  "data": {
    "pages": [
      {
        "pageId": "8f3c2a91-7d4e-4b6a-9c1f-2e5d8a0b3c7e",
        "id": "473829",
        "title": "About Us",
        "handle": "about-us",
        "content": "<p>Welcome to our store...</p>",
        "templateSuffix": null,
        "link": null,
        "showtitle": true,
        "seoTitle": "About Us | MyStore",
        "seoDesc": "Learn about our story.",
        "seoImage": null,
        "storeId": "1a2b3c4d-5e6f-7a8b-9c0d-1e2f3a4b5c6d",
        "createdAt": "2024-01-01T10:00:00.000Z",
        "updatedAt": "2024-02-15T14:30:00.000Z"
      },
      {
        "pageId": "2b7e1d44-9a3c-4f8e-b1d2-6c0a9e5f3b21",
        "id": "918273",
        "title": "Contact Us",
        "handle": "contact-us",
        "content": "<p>Get in touch...</p>",
        "templateSuffix": "contact",
        "link": null,
        "showtitle": true,
        "seoTitle": null,
        "seoDesc": null,
        "seoImage": null,
        "storeId": "1a2b3c4d-5e6f-7a8b-9c0d-1e2f3a4b5c6d",
        "createdAt": "2024-01-01T10:00:00.000Z",
        "updatedAt": "2024-01-15T09:00:00.000Z"
      }
    ],
    "pagination": {
      "page": 1,
      "limit": 50,
      "total": 8,
      "hasMore": false
    }
  },
  "pagination": null
}
```

## Error Codes

| Status | State   | Description                           |
| ------ | ------- | ------------------------------------- |
| `401`  | `error` | Invalid or missing access token       |
| `403`  | `error` | App doesn't have `read_content` scope |
