---
title: "Search products and assigned prices in a specific price list"
method: POST
path: "/api-offers/items/search"
tags: ["Item"]
---

# Search products and assigned prices in a specific price list

`POST /api-offers/items/search`

## Request

- Base URL: `https://live.copilot.fabric.inc`
- URL: `https://live.copilot.fabric.inc/api-offers/items/search`
- Auth: HTTP bearer
- TypeScript: <https://skmtc.dev/fabric/apis/offers-v2/docs/api-offers/items/search/post.ts> (a function with typed inputs; its response is checked against the schema)

Retrieves a paginated list of products and assigned prices in a specific price list based on priceListId and other search parameters as passed in the request body. If price list ID is not provided, default price list is selected for the search.

## Headers

- `x-site-context` string, required

## Request body

- SearchItemsByPrice
  - `offset` number: The number of records to skip before returning records. For example, when offset is 20 and limit is 10, this endpoint returns records from 21 to 30.
  - `limit` number: The maximum number of records per page.
  - `keyword` string: Search parameter to filter the query
  - `sku` boolean: If SKU is true then this endpoint returns products that have SKU value mentioned.
  - `isListView` boolean: true indicates that the response data will be displayed in list<br /> false indicates that the response data will be displayed in a tile view
  - `priceListId` number: ID of the priceList for which the price and product information are to be retrieved

## Response `200`

OK

- SearchProductResponse
  - `query` object
    - `limit` number: The maximum number of records per page.
    - `offset` number: The number of records to skip before returning records. For example, when offset is 20 and limit is 10, this endpoint returns records from 21 to 30.
    - `count` number: The total number of records.
  - `results` ProductResponse[]
    - `variants` string[]: Variants of the product
    - `itemId` number: Item ID
    - `channel` number[]: Sales channel of the product
    - `isDefault` boolean: false for parent product<br /> If a parent product has child items, true represents the default child item to be displayed, under the parent product, on the product listing page.
    - `state` string: Status of the product. READY indicates the product is ready to be published on the product listing page for shopper's consumption.
    - `createdAt` string: Creation date of the record
    - `updatedAt` string: Last updated date of the record
    - `startDate` string: Start date of the product
    - `endDate` string: End date of the product
    - `isActive` boolean: true if the item is active and displayed in the catalog. isActive will be true only when state is `READY` <br /> false if the state is `DRAFT`, and item is not displayed in the catalog
    - `sku` string: SKU of the product
    - `title` string: Title of the product
    - `images` object[]: Details of images of item to be displayed on the copilot UI
      - `id` string
      - `order` number
      - `label` string
      - `source` object[]
        - `id` string
        - `url` string
    - `price` object: Price of the product, it will only exist if the price was set up for the product.
      - `sale` number: Price at which the product is offered for sale
      - `cost` number: Cost of item if any
      - `currency` string: 3 letter currency code for price
      - `base` number: Minimum fixed price of the product
    - `kind` object
      - `priceKindId` number: Pricekind ID. This ID helps to identify if the price is base price or clearance price or any other additional price.
      - `name` string
      - `channel` number
    - `priceStartDate` string, date-time: Start date of the active price
    - `priceEndDate` string, date-time: End date of the active price
    - `priceLastUpdatedAt` string, date-time: Last updated date of the price
    - `status` string: Status of the price
    - `basePriceRange` object: Minimum and maximum base price of the item if it was set up earlier
      - `min` number
      - `max` number
    - `salePriceRange` object: Minimum and maximum price at which the product is offered for a sale
      - `min` number
      - `max` number
    - `costPriceRange` object: Minimum and maximum cost price if it was set up earlier
      - `min` number
      - `max` number
    - `items` ProductSearchResponse[]
      - `variants` string[]: Child item variants
      - `itemId` number: Child item ID
      - `channel` number[]
      - `isDefault` boolean: true: child item is the default child item to be displayed, under the parent product, on the product listing page.<br /> false: child item is not the default item of the parent product
      - `state` string: Child item's state. READY indicates the child item is active and ready to be consumed by the shoppers.
      - `createdAt` string: Creation date of the child itemn
      - `updatedAt` string: Last updated date of the child item
      - `startDate` string: Date from which the child item is available to be sold
      - `endDate` string: Date from which the child item is not available to be sold
      - `isActive` boolean: true if the item is active and displayed in the catalog. isActive will be true only when state is `READY` <br /> false if the state is `DRAFT`, and item is not displayed in the catalog
      - `sku` string: Child item sku
      - `title` string: Title of the child item
      - `images` object[]: Image details of the child item
        - `id` string
        - `order` number
        - `label` string
        - `source` object[]
          - `id` string
          - `url` string
      - `price` object: Price details of the child item
        - `sale` number: Price at which the product is offered for sale
        - `cost` number: Cost of item if any
        - `currency` string: 3 letter currency code for price
        - `base` number: Minimum fixed price of the product
      - `kind` object
        - `priceKindId` number: Indicates if the offer price of the item is promotional price or clearance price
        - `name` string
        - `channel` number
      - `priceStartDate` string, date-time: Start date of active price
      - `priceEndDate` string, date-time: End date of active price
      - `status` string: Item status

## Other responses

- `404`: Not Found
- `500`: Internal Server Error

---

[API](https://skmtc.dev/fabric/apis/offers-v2.md) - [All operations](https://skmtc.dev/fabric/apis/offers-v2/llms.txt) - [OpenAPI document](https://skmtc.dev/fabric/apis/offers-v2/revisions/da2bd742b9bc?raw)
