> ## 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 Policies

> Get all store policies

<Note>
  This endpoint is part of the merchant Admin API and is authenticated with a
  **merchant access token** (not an app OAuth access token). It is not callable
  with an app `/api/v1/` access token.
</Note>

# List Policies

Returns the store policies (refund, privacy, terms, etc.) configured for a
store. This is a **merchant-scoped** endpoint authenticated with a merchant
session (JWT), not an OAuth app token.

<Note>
  Policies are also exposed to themes on the storefront through the
  `shop.policies` Liquid drop, so most public/storefront use cases read them
  from the rendered page rather than calling this endpoint directly.
</Note>

## Request

```bash theme={null}
curl -X GET "https://api.launchmystore.io/policies/get-all-policies?storeId=YOUR_STORE_ID" \
  -H "Authorization: Bearer YOUR_MERCHANT_TOKEN"
```

You may identify the store either by `storeId` or by `domainSlug`.

## Query Parameters

<ParamField query="storeId" type="string">
  Store ID (UUID). Provide this or `domainSlug`.
</ParamField>

<ParamField query="domainSlug" type="string">
  Store domain (e.g. `mystore.launchmystore.io`). Resolved to a store ID
  server-side. Provide this or `storeId`.
</ParamField>

<ParamField query="type" type="string">
  Optional filter matching against the policy type (case-insensitive,
  partial match), e.g. `Refund`.
</ParamField>

## Response

The platform returns the standard response envelope. `data` is an array of
policy records.

<ResponseField name="status" type="integer">
  HTTP status code.
</ResponseField>

<ResponseField name="state" type="string">
  Result state (`success`, `error`, `info`).
</ResponseField>

<ResponseField name="message" type="string">
  Optional message (may be `null`).
</ResponseField>

<ResponseField name="data" type="array">
  Array of policy records.

  <Expandable title="Policy Object">
    <ResponseField name="policyId" type="string">
      Unique policy ID (UUID).
    </ResponseField>

    <ResponseField name="policyType" type="string">
      Policy type. One of `Privacy Policy`, `Refund Policy`,
      `Terms and Conditions`.
    </ResponseField>

    <ResponseField name="policyContent" type="string">
      Policy body (HTML/text).
    </ResponseField>

    <ResponseField name="storeId" type="string">
      Owning store ID.
    </ResponseField>

    <ResponseField name="createdAt" type="string">
      ISO-8601 creation timestamp.
    </ResponseField>

    <ResponseField name="updatedAt" type="string">
      ISO-8601 last-updated timestamp.
    </ResponseField>
  </Expandable>
</ResponseField>

## Example Response

<ResponseExample>
  ```json theme={null}
  {
    "status": 200,
    "state": "success",
    "message": null,
    "data": [
      {
        "policyId": "b8b0f1a2-3c4d-4e5f-9a0b-1c2d3e4f5a6b",
        "policyType": "Refund Policy",
        "policyContent": "<p>We offer a 30-day return policy...</p>",
        "storeId": "f73049dc-b4d4-4f85-99c2-681a5e351a8a",
        "createdAt": "2024-01-15T10:30:00.000Z",
        "updatedAt": "2024-01-15T10:30:00.000Z"
      },
      {
        "policyId": "c9c1f2b3-4d5e-5f6a-0b1c-2d3e4f5a6b7c",
        "policyType": "Privacy Policy",
        "policyContent": "<p>Your privacy is important to us...</p>",
        "storeId": "f73049dc-b4d4-4f85-99c2-681a5e351a8a",
        "createdAt": "2024-01-15T10:30:00.000Z",
        "updatedAt": "2024-01-15T10:30:00.000Z"
      }
    ],
    "count": null,
    "pagination": null
  }
  ```
</ResponseExample>

## Related Endpoints

| Method   | Route                                 | Description     |
| -------- | ------------------------------------- | --------------- |
| `POST`   | `/policies/add-policy`                | Create a policy |
| `GET`    | `/policies/get-policy/:policyId`      | Read one policy |
| `PATCH`  | `/policies/update-policies/:policyId` | Update a policy |
| `DELETE` | `/policies/delete-policy/:policyId`   | Delete a policy |
