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

# View all products and pricing in a category

> View every product and its current pricing within a category across retailers. Sortable by price, rating, or review count for competitive benchmarking. Cursor-paginated.



## OpenAPI

````yaml https://api.syntalic.com/openapi.json get /v1/marketing/competitive-landscape
openapi: 3.1.0
info:
  title: Syntalic — Pricing Intelligence API
  version: 1.0.0
  description: >-
    Real-time competitive pricing data across US and Canadian e-commerce
    retailers (Amazon, Walmart, Best Buy, Target, etc.). Serves price
    comparisons, deal alerts, brand tracking, promotional intelligence, and
    market analytics to AI agents via x402 and MPP micropayments.
  x-guidance: >-
    This API has three endpoint groups organized by use case:


    **Shopper endpoints** ($0.01/query): Use these for price comparisons and
    deal hunting. Start with /v1/shopper/best-price?q=<product> to find the
    cheapest option across retailers. Use
    /v1/shopper/deal-finder?category=<category> to find discounted products. Use
    /v1/shopper/price-drop-alert?q=<product> to check for recent price drops.


    **Marketing endpoints** ($0.01/query): Use these for competitive analysis.
    /v1/marketing/competitive-landscape?category=<category> shows all products
    in a category with pricing. /v1/marketing/brand-tracker?brand=<brand> tracks
    a brand's pricing over time.
    /v1/marketing/share-of-shelf?category=<category> shows brand market share.


    **Analyst endpoints** ($0.02/query): Use these for market-level insights.
    /v1/analyst/inflation?category=<category> shows price trends over time.
    /v1/analyst/price-dispersion?category=<category> shows price spread across
    retailers.


    All endpoints accept an optional 'country' parameter (us or ca, defaults to
    us). Query parameters use 'q' for free-text search and 'category' for
    category-level queries.
servers:
  - url: https://api.syntalic.com
security: []
paths:
  /v1/marketing/competitive-landscape:
    get:
      tags:
        - Marketing
      summary: View all products and pricing in a category
      description: >-
        View every product and its current pricing within a category across
        retailers. Sortable by price, rating, or review count for competitive
        benchmarking. Cursor-paginated.
      operationId: getCompetitiveLandscape
      parameters:
        - name: category
          in: query
          required: true
          schema:
            type: string
            minLength: 1
          description: >-
            Product category (e.g., electronics, grocery, beauty). Fuzzy
            human-readable input — the resolver maps it through tier 1-4 (id →
            exact name → trigram → embedding kNN) to a canonical category_id.
            Pair with `category_id` if you have a deterministic id from a prior
            call.
          example: electronics
        - name: country
          in: query
          required: false
          schema:
            type: string
            enum:
              - us
              - ca
            default: us
          description: Country (us or ca)
          example: us
        - name: retailer
          in: query
          required: false
          schema:
            type: string
            enum:
              - amazon
              - walmart
              - costco
              - homedepot
              - nordstrom
              - ikea
          description: Filter to a specific retailer
          example: amazon
        - name: sort_by
          in: query
          required: false
          schema:
            type: string
            enum:
              - price_asc
              - price_desc
              - rating
              - reviews
            default: price_asc
          description: Sort order
          example: price_asc
        - name: limit
          in: query
          required: false
          schema:
            type: integer
            default: 20
            maximum: 50
          description: Max results to return (default 20, max 50)
          example: 20
      requestBody:
        required: false
        description: >-
          Query parameters as JSON (alternative to URL query string for agents
          that prefer body-based invocation).
        content:
          application/json:
            schema:
              type: object
              additionalProperties: false
              required:
                - category
              properties:
                category:
                  type: string
                  minLength: 1
                  description: >-
                    Product category (e.g., electronics, grocery, beauty). Fuzzy
                    human-readable input — the resolver maps it through tier 1-4
                    (id → exact name → trigram → embedding kNN) to a canonical
                    category_id. Pair with `category_id` if you have a
                    deterministic id from a prior call.
                  example: electronics
                country:
                  type: string
                  enum:
                    - us
                    - ca
                  default: us
                  description: Country (us or ca)
                  example: us
                retailer:
                  type: string
                  enum:
                    - amazon
                    - walmart
                    - costco
                    - homedepot
                    - nordstrom
                    - ikea
                  description: Filter to a specific retailer
                  example: amazon
                sort_by:
                  type: string
                  enum:
                    - price_asc
                    - price_desc
                    - rating
                    - reviews
                  default: price_asc
                  description: Sort order
                  example: price_asc
                limit:
                  type: integer
                  default: 20
                  maximum: 50
                  description: Max results to return (default 20, max 50)
                  example: 20
      responses:
        '200':
          description: Competitive landscape
          content:
            application/json:
              schema:
                type: object
        '402':
          description: Payment Required

````