---
title: "Shopping All Items With Merchants"
method: POST
path: "/v1/reports/shopping/all-items-with-merchants"
tags: ["Reports"]
---

# Shopping All Items With Merchants

`POST /v1/reports/shopping/all-items-with-merchants`

## Request

- Base URL: `https://api.tryprofound.com`
- URL: `https://api.tryprofound.com/v1/reports/shopping/all-items-with-merchants`
- Auth: one of:
  - API key in header `X-API-Key`
  - HTTP bearer
- TypeScript: <https://skmtc.dev/cooper-square-technologies/apis/external-api/docs/v1/reports/shopping/all-items-with-merchants/post.ts> (a function with typed inputs; its response is checked against the schema)

## Request body

- ShoppingAllItemsWithMerchantsQuery
  - `category_id` string, uuid, required
  - `start_date` string, date-time, required: Start date. Accepts YYYY-MM-DD, YYYY-MM-DD HH:MM, or ISO timestamp.
  - `end_date` string, date-time, required: End date. Accepts YYYY-MM-DD, YYYY-MM-DD HH:MM, or ISO timestamp.
  - `comparison_start_date` string, date-time, nullable
  - `comparison_end_date` string, date-time, nullable
  - `date_interval` 'hour' | 'day' | 'week' | 'month' | 'quarter' | 'year' | 'relative_week'
  - `filters` union[]
    - union
      - RegionIdFilter: Filter by region UUID.
        - `field` union, required
          - 'region_id'
          - 'region'
        - `operator` 'is' | 'not_is' | 'in' | 'not_in', required
        - `value` union, required
          - string, uuid
          - string[]
      - ModelIdFilter: Filter by AI model/platform UUID.
        - `field` union, required
          - 'model_id'
          - 'model'
        - `operator` 'is' | 'not_is' | 'in' | 'not_in', required
        - `value` union, required
          - string, uuid
          - string[]
      - TopicIdFilter: Filter by topic UUID.
        - `field` union, required
          - 'topic_id'
          - 'topic'
        - `operator` 'is' | 'not_is' | 'in' | 'not_in', required
        - `value` union, required
          - string, uuid
          - string[]
      - TagIdFilter: Filter by tag (prompt group) UUID.
        - `field` union, required
          - 'tag_id'
          - 'tag'
        - `operator` 'is' | 'not_is' | 'in' | 'not_in', required
        - `value` union, required
          - string, uuid
          - string[]
      - PromptIdFilter: Filter by prompt UUID.
        - `field` 'prompt_id', required
        - `operator` 'is' | 'not_is' | 'in' | 'not_in', required
        - `value` union, required
          - string, uuid
          - string[]
      - PersonaIdFilter: Filter by persona UUID.
        - `field` 'persona_id', required
        - `operator` 'is' | 'not_is' | 'in' | 'not_in', required
        - `value` union, required
          - string, uuid
          - string[]
      - BrandNameFilter
        - `field` 'brand_name', required
        - `operator` 'is' | 'not_is' | 'in' | 'not_in' | 'contains' | 'not_contains' | 'matches' | 'contains_case_insensitive' | 'not_contains_case_insensitive', required
        - `value` union, required
          - string
          - string[]
      - MerchantNameFilter
        - `field` 'merchant_name', required
        - `operator` 'is' | 'not_is' | 'in' | 'not_in' | 'contains' | 'not_contains' | 'matches' | 'contains_case_insensitive' | 'not_contains_case_insensitive', required
        - `value` union, required
          - string
          - string[]
      - ProductNameFilter
        - `field` 'product_name', required
        - `operator` 'is' | 'not_is' | 'in' | 'not_in' | 'contains' | 'not_contains' | 'matches' | 'contains_case_insensitive' | 'not_contains_case_insensitive', required
        - `value` union, required
          - string
          - string[]
      - ProfoundShoppingApiAssetNameFilter
        - `field` 'asset_name', required
        - `operator` 'is' | 'not_is' | 'in' | 'not_in' | 'contains' | 'not_contains' | 'matches' | 'contains_case_insensitive' | 'not_contains_case_insensitive', required
        - `value` union, required
          - string
          - string[]
  - `order_by` object
  - `pagination` Pagination: Offset-based pagination parameters.
    - `limit` integer: Maximum number of results to return. Default is 10,000, maximum is 50,000.
    - `offset` integer: Offset for the results. Used for pagination.
  - `include_count` boolean
  - `tag_filter_type` 'any' | 'all'
  - `include_no_tag` boolean
  - `exclude_topic_ids` boolean
  - `dimensions` string[]
  - `metrics` string[]
  - `owned_asset_names` string[]
  - `include_items` string[]
  - `search_item` string, nullable
  - `merchant_filter_type` 'any' | 'all'
  - `rank_by` 'visibility' | 'average_position' | 'name'
  - `sort_order` 'asc' | 'desc'

## Response `200`

Successful Response

- ShoppingRowsResponse
  - `info` Info, required: Base model for report information.
    - `total_rows` integer, required
    - `query` object, nullable
  - `data` object[], required

## Other responses

- `422`: Validation Error

## Changes

- **2026-06-30** `56d428ca479f`: 1 info
  - endpoint added

[Operation history](https://skmtc.dev/cooper-square-technologies/apis/external-api/changes/v1/reports/shopping/all-items-with-merchants/post.md)

---

[API](https://skmtc.dev/cooper-square-technologies/apis/external-api.md) - [All operations](https://skmtc.dev/cooper-square-technologies/apis/external-api/llms.txt) - [OpenAPI document](https://skmtc.dev/cooper-square-technologies/apis/external-api/revisions/ab03b3c80494?raw)
