> ## 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

> Return one DNS (dns-shop.ru) product for a named Russian city by product URL, 16-hex url id, guid or numeric product code: name, brand, price in roubles, availability, loyalty bonus, the full specification sheet grouped as DNS groups it, the marketing description, the manufacturer country, the warranty term, product images, the aggregate rating with its review count and the review DNS features at the top of the page. Optionally also the colour and memory siblings of the same model.

**Price:** 1 credit

**⚠️ Common errors:** 412: No DNS product resolves from this identifier, or DNS did not serve the product for this session, 422: The city is not in the DNS city catalogue, or product is empty



## OpenAPI

````yaml /openapi/e-commerce-marketplaces.json post /api/dnsshop/products
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:
    post:
      tags:
        - /dnsshop
      summary: /dnsshop/products
      description: >-
        Return one DNS (dns-shop.ru) product for a named Russian city by product
        URL, 16-hex url id, guid or numeric product code: name, brand, price in
        roubles, availability, loyalty bonus, the full specification sheet
        grouped as DNS groups it, the marketing description, the manufacturer
        country, the warranty term, product images, the aggregate rating with
        its review count and the review DNS features at the top of the page.
        Optionally also the colour and memory siblings of the same model.


        **Price:** 1 credit


        **⚠️ Common errors:** 412: No DNS product resolves from this identifier,
        or DNS did not serve the product for this session, 422: The city is not
        in the DNS city catalogue, or product is empty
      operationId: __api_dnsshop_products_post
      parameters:
        - name: access-token
          in: header
          required: true
          schema:
            anyOf:
              - type: string
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/DnsshopProductsPayload'
      responses:
        '200':
          description: Successful Response
          content:
            application/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/DnsshopProduct'
        '422':
          description: Validation Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/HTTPValidationError'
components:
  schemas:
    DnsshopProductsPayload:
      properties:
        timeout:
          type: integer
          maximum: 1500
          minimum: 20
          default: 300
        product:
          type: string
          minLength: 1
        city:
          type: string
          minLength: 1
          default: Москва
        with_variants:
          type: boolean
          default: false
      type: object
      required:
        - product
    DnsshopProduct:
      properties:
        '@type':
          type: string
          default: DnsshopProduct
        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'
        brand:
          anyOf:
            - type: string
            - type: 'null'
        headline_specs:
          anyOf:
            - type: string
            - type: 'null'
        price:
          anyOf:
            - type: integer
            - type: 'null'
        currency:
          anyOf:
            - type: string
            - type: 'null'
        bonus_points:
          anyOf:
            - type: integer
            - type: 'null'
        availability:
          anyOf:
            - type: string
            - type: 'null'
        is_available:
          anyOf:
            - type: boolean
            - type: 'null'
        rating:
          anyOf:
            - type: number
            - type: 'null'
        review_count:
          anyOf:
            - type: integer
            - type: 'null'
        manufacturer_country:
          anyOf:
            - type: string
            - type: 'null'
        warranty_months:
          anyOf:
            - type: integer
            - type: 'null'
        images:
          items:
            type: string
          type: array
          default: []
        characteristics:
          items:
            $ref: '#/components/schemas/DnsshopSpecGroup'
          type: array
          default: []
        top_opinion:
          anyOf:
            - $ref: '#/components/schemas/DnsshopOpinion'
            - type: 'null'
        variants:
          items:
            $ref: '#/components/schemas/DnsshopVariant'
          type: array
          default: []
        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
    DnsshopSpecGroup:
      properties:
        '@type':
          type: string
          default: DnsshopSpecGroup
        name:
          type: string
        specs:
          items:
            $ref: '#/components/schemas/DnsshopSpec'
          type: array
          default: []
      type: object
      required:
        - name
    DnsshopOpinion:
      properties:
        '@type':
          type: string
          default: DnsshopOpinion
        author:
          anyOf:
            - type: string
            - type: 'null'
        city:
          anyOf:
            - type: string
            - type: 'null'
        grade:
          anyOf:
            - type: integer
            - type: 'null'
        plus:
          anyOf:
            - type: string
            - type: 'null'
        minus:
          anyOf:
            - type: string
            - type: 'null'
        comment:
          anyOf:
            - type: string
            - type: 'null'
        ownership_months:
          anyOf:
            - type: integer
            - type: 'null'
        published_at:
          anyOf:
            - type: string
            - type: 'null'
      type: object
    DnsshopVariant:
      properties:
        '@type':
          type: string
          default: DnsshopVariant
        code:
          type: string
        url:
          anyOf:
            - type: string
            - type: 'null'
        is_available:
          anyOf:
            - type: boolean
            - type: 'null'
        options:
          items:
            $ref: '#/components/schemas/DnsshopSpec'
          type: array
          default: []
      type: object
      required:
        - code
    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
    DnsshopSpec:
      properties:
        '@type':
          type: string
          default: DnsshopSpec
        label:
          type: string
        value:
          type: string
      type: object
      required:
        - label
        - value
  securitySchemes:
    AccessToken:
      type: apiKey
      in: header
      name: access-token
      description: API token from the dashboard

````