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

# /dnsshop/products/search

> Search the DNS (dns-shop.ru) catalogue by keyword and/or category for a named Russian city, and return product cards with the current price in roubles, the instalment offer, availability class, rating, review and comment counts, the reliability badge, headline specifications, the product image and the canonical product URL. Narrows by availability, brand, promotion, price range, customer rating, reliability, presence of reviews and by any of the category's own specification facets, and orders by price, novelty, discount, popularity, rating or number of reviews.

**Price:** 1 credit

**⚠️ Common errors:** 412: Nothing matched the query, category or filter combination, or DNS answered a bare brand name with its brand landing page instead of a listing (X-Error says which), or DNS did not serve the listing, 422: The city is not in the DNS city catalogue, or a payload field is malformed



## OpenAPI

````yaml /openapi/e-commerce-marketplaces.json post /api/dnsshop/products/search
openapi: 3.1.0
info:
  title: Any Site API
  description: >+
    Any Site API provides programmatic access to data from LinkedIn, Instagram,
    Twitter, and other platforms.


    ## Authentication


    All API endpoints require an `access-token` header with a valid API token.
    Tokens can be created in the [dashboard](https://app.anysite.io/).


    ## Pricing


    Each endpoint has a credit cost listed in its description. Credits are
    deducted from your token balance per request.

  version: 0.0.1
servers: []
security:
  - AccessToken: []
paths:
  /api/dnsshop/products/search:
    post:
      tags:
        - /dnsshop
      summary: /dnsshop/products/search
      description: >-
        Search the DNS (dns-shop.ru) catalogue by keyword and/or category for a
        named Russian city, and return product cards with the current price in
        roubles, the instalment offer, availability class, rating, review and
        comment counts, the reliability badge, headline specifications, the
        product image and the canonical product URL. Narrows by availability,
        brand, promotion, price range, customer rating, reliability, presence of
        reviews and by any of the category's own specification facets, and
        orders by price, novelty, discount, popularity, rating or number of
        reviews.


        **Price:** 1 credit


        **⚠️ Common errors:** 412: Nothing matched the query, category or filter
        combination, or DNS answered a bare brand name with its brand landing
        page instead of a listing (X-Error says which), or DNS did not serve the
        listing, 422: The city is not in the DNS city catalogue, or a payload
        field is malformed
      operationId: __api_dnsshop_products_search_post
      parameters:
        - name: access-token
          in: header
          required: true
          schema:
            anyOf:
              - type: string
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/DnsshopProductsSearchPayload'
      responses:
        '200':
          description: Successful Response
          content:
            application/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/DnsshopProductCard'
        '422':
          description: Validation Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/HTTPValidationError'
components:
  schemas:
    DnsshopProductsSearchPayload:
      properties:
        timeout:
          type: integer
          maximum: 1500
          minimum: 20
          default: 300
        query:
          anyOf:
            - type: string
              minLength: 1
            - type: 'null'
        category:
          anyOf:
            - type: string
              minLength: 1
            - type: 'null'
        city:
          type: string
          minLength: 1
          default: Москва
        sort:
          $ref: '#/components/schemas/DnsshopSort'
          default: popular
        stock:
          anyOf:
            - $ref: '#/components/schemas/DnsshopStock'
            - type: 'null'
        brands:
          anyOf:
            - items:
                type: string
              type: array
            - type: 'null'
        promos:
          anyOf:
            - items:
                type: string
              type: array
            - type: 'null'
        min_price:
          anyOf:
            - type: integer
              maximum: 9999999
              minimum: 0
            - type: 'null'
        max_price:
          anyOf:
            - type: integer
              maximum: 9999999
              minimum: 0
            - type: 'null'
        has_rating:
          type: boolean
          default: false
        reliable_only:
          type: boolean
          default: false
        reviewed_only:
          type: boolean
          default: false
        spec_filters:
          anyOf:
            - additionalProperties:
                items:
                  type: string
                type: array
              type: object
            - type: 'null'
        spec_ranges:
          anyOf:
            - additionalProperties:
                type: string
              type: object
            - type: 'null'
        with_availability:
          type: boolean
          default: false
        count:
          type: integer
          maximum: 960
          minimum: 1
      type: object
      required:
        - count
    DnsshopProductCard:
      properties:
        '@type':
          type: string
          default: DnsshopProductCard
        guid:
          type: string
        code:
          anyOf:
            - type: string
            - type: 'null'
        hex_id:
          anyOf:
            - type: string
            - type: 'null'
        url:
          anyOf:
            - type: string
            - type: 'null'
        name:
          anyOf:
            - type: string
            - type: 'null'
        short_specs:
          anyOf:
            - type: string
            - type: 'null'
        specs:
          items:
            $ref: '#/components/schemas/DnsshopSpec'
          type: array
          default: []
        rating:
          anyOf:
            - type: number
            - type: 'null'
        review_count:
          anyOf:
            - type: integer
            - type: 'null'
        review_count_label:
          anyOf:
            - type: string
            - type: 'null'
        comment_count:
          anyOf:
            - type: integer
            - type: 'null'
        reliability:
          anyOf:
            - type: string
            - type: 'null'
        image:
          anyOf:
            - type: string
            - type: 'null'
        photo_count:
          anyOf:
            - type: integer
            - type: 'null'
        price:
          anyOf:
            - type: integer
            - type: 'null'
        credit_payment:
          anyOf:
            - type: integer
            - type: 'null'
        credit_months:
          anyOf:
            - type: integer
            - type: 'null'
        has_price_history:
          anyOf:
            - type: boolean
            - type: 'null'
        availability:
          anyOf:
            - $ref: '#/components/schemas/DnsshopAvailability'
            - type: 'null'
        city:
          anyOf:
            - type: string
            - type: 'null'
        city_id:
          anyOf:
            - type: string
            - type: 'null'
      type: object
      required:
        - guid
    HTTPValidationError:
      properties:
        detail:
          items:
            $ref: '#/components/schemas/ValidationError'
          type: array
      type: object
    DnsshopSort:
      type: string
      enum:
        - popular
        - price-asc
        - price-desc
        - new
        - discount
        - opinion
        - rating
    DnsshopStock:
      type: string
      enum:
        - now
        - today
        - tomorrow
        - later
        - out_of_stock
    DnsshopSpec:
      properties:
        '@type':
          type: string
          default: DnsshopSpec
        label:
          type: string
        value:
          type: string
      type: object
      required:
        - label
        - value
    DnsshopAvailability:
      properties:
        '@type':
          type: string
          default: DnsshopAvailability
        status:
          anyOf:
            - type: string
            - type: 'null'
        store_note:
          anyOf:
            - type: string
            - type: 'null'
        store_date:
          anyOf:
            - type: string
            - type: 'null'
        pickup_note:
          anyOf:
            - type: string
            - type: 'null'
        pickup_date:
          anyOf:
            - type: string
            - type: 'null'
        delivery_note:
          anyOf:
            - type: string
            - type: 'null'
        delivery_date:
          anyOf:
            - type: string
            - type: 'null'
      type: object
    ValidationError:
      properties:
        loc:
          items:
            anyOf:
              - type: string
              - type: integer
          type: array
        msg:
          type: string
        type:
          type: string
        input: {}
        ctx:
          type: object
      type: object
      required:
        - loc
        - msg
        - type
  securitySchemes:
    AccessToken:
      type: apiKey
      in: header
      name: access-token
      description: API token from the dashboard

````