## Retrieves a paginated list of product lists for a specific store, optionally including line items.

`product_lists.list_product_lists(strstore_number, ProductListListProductListsParams**kwargs)  -> ProductListListProductListsResponse`

**get** `/api/v2/public/stores/{store_number}/productlists`

Retrieves a paginated list of product lists for a specific store, optionally including line items.

### Parameters

- `store_number: str`

- `last_updated_on: Optional[Union[str, datetime]]`

  Filter product lists modified on or after this date.

- `name: Optional[str]`

  Optional product list name filter.

- `product_list_id: Optional[int]`

  Optional product list identifier to filter by.

- `show_lines: Optional[bool]`

  When true, includes the line items for each product list.

- `type: Optional[int]`

  Optional product list type filter.

### Returns

- `class ProductListListProductListsResponse: …`

  Generic paginated response wrapper.

  - `page_size: int`

    Maximum number of items returned per page.

  - `page_start: int`

    Current page number (1-based).

  - `total_count: int`

    Total number of records matching the query across all pages.

  - `list: Optional[List[List]]`

    Collection of items for the current page.

    - `id: int`

      Unique identifier of the product list.

    - `line_count: int`

      Number of line items on the product list.

    - `type: int`

      Numeric product list type identifier.

    - `app_username: Optional[str]`

      Name of the app user associated with the product list. Separate from the audit `created_by` / `modified_by` fields; this is the in-store app user the list belongs to.

    - `free_fields: Optional[List[ListFreeField]]`

      Custom free-field key/value pairs associated with the product list.

      - `key: Optional[str]`

        Free-field key.

      - `value: Optional[str]`

        Free-field value.

    - `lines: Optional[List[ListLine]]`

      Line items belonging to the product list. Only populated when `show_lines=true` is passed on the request.

      - `quantity: float`

        Quantity on the line.

      - `barcode: Optional[str]`

        The product barcode.

      - `category_code: Optional[str]`

        Category code of the product.

      - `colli: Optional[float]`

        Number of items per colli (case pack).

      - `is_decimal: Optional[bool]`

        Whether decimal quantities are allowed for the product.

      - `parent_category_code: Optional[str]`

        Parent category code of the product.

      - `product_name: Optional[str]`

        Display name of the product.

      - `product_number: Optional[str]`

        The product number.

      - `stock_pool: Optional[str]`

        Stock pool the line targets.

      - `store_walking_order: Optional[int]`

        Order in which the product appears in the store walking sequence.

    - `modified_on: Optional[datetime]`

      Date and time the product list was last modified.

    - `name: Optional[str]`

      Name of the product list.

    - `type_description: Optional[str]`

      Human-readable description of the product list type.

  - `list_body: Optional[Dict[str, Optional[object]]]`

    Additional body-level metadata for the list.

  - `list_filters: Optional[Dict[str, Optional[List[str]]]]`

    Active filter criteria applied to the result set, keyed by field name.

  - `next_page: Optional[int]`

    Next page number, or null when on the last page.

  - `previous_page: Optional[int]`

    Previous page number, or null when on the first page.

  - `project_last_modified_date: Optional[str]`

    Last modified date/time of the project.

  - `scroll_id: Optional[str]`

    Opaque scroll identifier for deep-pagination scenarios.

  - `server_time: Optional[str]`

    Server UTC date/time when the response was generated.

  - `sort_column: Optional[str]`

    Column name the results are sorted by.

  - `sort_order: Optional[str]`

    Sort direction (asc or desc).

  - `task_last_modified_date: Optional[str]`

    Last modified date/time of the task.

### Example

```python
import os
from colleqtive_sdk import Colleqtive

client = Colleqtive(
    bearer_token=os.environ.get("COLLEQTIVE_BEARER_TOKEN"),  # This is the default and can be omitted
)
response = client.product_lists.list_product_lists(
    store_number="store_number",
)
print(response.scroll_id)
```

#### Response

```json
{
  "page_size": 0,
  "page_start": 0,
  "total_count": 0,
  "list": [
    {
      "id": 0,
      "line_count": 0,
      "type": 0,
      "app_username": "app_username",
      "free_fields": [
        {
          "key": "key",
          "value": "value"
        }
      ],
      "lines": [
        {
          "quantity": 0,
          "barcode": "barcode",
          "category_code": "category_code",
          "colli": 0,
          "is_decimal": true,
          "parent_category_code": "parent_category_code",
          "product_name": "product_name",
          "product_number": "product_number",
          "stock_pool": "stock_pool",
          "store_walking_order": 0
        }
      ],
      "modified_on": "2019-12-27T18:11:19.117Z",
      "name": "name",
      "type_description": "type_description"
    }
  ],
  "list_body": {
    "foo": "bar"
  },
  "list_filters": {
    "foo": [
      "string"
    ]
  },
  "next_page": 0,
  "previous_page": 0,
  "project_last_modified_date": "project_last_modified_date",
  "scroll_id": "scroll_id",
  "server_time": "server_time",
  "sort_column": "sort_column",
  "sort_order": "sort_order",
  "task_last_modified_date": "task_last_modified_date"
}
```
