Discover/DNS Shop API
live

DNS Shop APIdns-shop.ru

Access DNS Shop product listings, technical specs, customer reviews, category hierarchies, and Russian store locations with coordinates and hours via REST API.

Endpoint health
verified 3d ago
get_stores
1/1 passing latest checkself-healing
Endpoints
7
Updated
26d ago

What is the DNS Shop API?

The DNS Shop API provides 7 endpoints covering the full product catalog of dns-shop.ru, Russia's largest electronics retail chain. Use get_product_details to retrieve price, images, article number, and structured specs for any product, get_product_reviews to pull paginated customer opinions, and get_stores to get every physical DNS location in Russia with GPS coordinates, phone numbers, and operating hours.

Try it

No input parameters required.

api.parse.bot/scraper/1bf6ff65-49f0-48c3-bd2a-a78f2dec40aa/<endpoint>
Ready to send
Fill in the parameters and hit sign in to send to see live response data here.
Call it over HTTPgrab a free API key at signup
curl -X GET 'https://api.parse.bot/scraper/1bf6ff65-49f0-48c3-bd2a-a78f2dec40aa/get_catalog_categories' \
  -H 'X-API-Key: $PARSE_API_KEY'
Python SDK · recommended

Typed, relational, agent-ready

A generated client with real types, enums, and the links between objects — the structure a flat JSON response can't carry. Autocompletes in your editor and reads cleanly to coding agents.

  • Fully typed · autocompletes
  • Objects link to objects
  • Typed errors & pagination

Typed Python client. Set up the SDK in your uv project, then pull this API’s typed client:

uv add parse-sdk
uv run parse init
uv run parse add --marketplace dns-shop-ru-api

uv run parse add --marketplace pulls a pinned snapshot of this canonical API — it won’t change underneath you. To customize it, subscribe and swap to your own copy.

"""DNS Shop API — find physical store locations across Russia."""
from parse_apis.dns_shop_api import DnsShop, ShopType, StoreDataUnavailable

client = DnsShop()

# List all stores, capped to 10 for demonstration
for store in client.stores.list(limit=10):
    print(store.name, store.address, store.shop_type)

# Grab one store and inspect its details
store = client.stores.list(limit=1).first()
if store:
    print(store.name, store.address, store.lat, store.lon, store.time)

# Filter for DNS Hyper stores client-side
hyper_stores = [s for s in client.stores.list(limit=50) if s.shop_type == ShopType.DNS_HYPER]
print(f"Found {len(hyper_stores)} DNS Hyper stores in first 50")

# Handle a potential upstream error
try:
    for s in client.stores.list(limit=3):
        print(s.name, s.city_id)
except StoreDataUnavailable as exc:
    print(f"Store data unavailable: {exc}")

print("exercised: stores.list / ShopType enum filter / StoreDataUnavailable error handling")
All endpoints · 7 totalmissing one? ·

Returns all top-level and subcategories from the catalog. Note: Behind Qrator antibot, may be intermittently blocked.

Input

No input parameters required.

Response
{
  "type": "object",
  "fields": {
    "categories": "array"
  },
  "sample": {
    "status": "blocked",
    "message": "Qrator JS challenge - site requires browser-based JavaScript challenge solving",
    "block_type": "ip_ban"
  }
}

About the DNS Shop API

Product Catalog and Search

The search_products endpoint accepts a query string and an optional page integer, returning a list of matching products alongside total_results and the current page. To browse by category rather than keyword, use get_products_by_category with a category_id (either a short ID or a full category URL). The top-level and nested category tree is available through get_catalog_categories, which returns the full categories array with no required inputs. Note that all five catalog-facing endpoints sit behind Qrator antibot protection and may return intermittent errors depending on traffic conditions.

Product Details, Specs, and Reviews

get_product_details takes a product_id (product UUID or full URL) and returns id, url, price (integer, in rubles), title, article, images (array), and a specs object with structured technical attributes. If you only need the specifications without the full product record, get_product_specs returns a specs object keyed by attribute group. For user-generated content, get_product_reviews accepts a product UUID plus optional limit and offset integers for pagination, and returns a total count alongside an opinions array containing individual review records.

Physical Store Locations

get_stores requires no inputs and returns every DNS retail location across Russia. Each store object includes id, name, address, phone, time (working hours string), mark (a landmark or description), lat and lon coordinates, metroInfo, and city. The response also includes total_stores as a top-level integer. This endpoint is sourced from a different subdomain and is not subject to the Qrator antibot restrictions that affect the catalog endpoints.

Reliability & maintenanceVerified

The DNS Shop API is a managed, monitored endpoint for dns-shop.ru — not a raw scraper you maintain. Every endpoint is automatically health-checked on a schedule, and when dns-shop.ru changes and a check fails, the API is automatically queued for repair and re-verified. It is built to keep working as the site underneath it changes.

This isn't an official dns-shop.ru API — it's an independent, maintained REST wrapper over public data. Where the source has no official API (or only a limited one), Parse gives you a stable contract over a source that never promised one, and keeps it current. Need a new endpoint or field? You can revise it yourself in plain English and the agent rebuilds it against the live site in minutes — contributing the change back to the shared API is free.

Last verified
3d ago
Latest check
1/1 endpoint passing
Maintenance
Monitored & self-healing
Will this API break when the source site changes?+
It's built not to. Every endpoint is health-checked on a schedule with automated test probes. When the source site changes and a check fails, the API is automatically queued for repair and re-verified — that's the self-healing layer. Each API page shows when its endpoints were last verified. And because marketplace APIs are shared, any fix reaches everyone using it.
Is this an official API from the source site?+
No — Parse APIs are independent, managed REST wrappers over publicly available data. That is the point: where a site has no official API (or only a limited one), Parse gives you a maintained, monitored endpoint for that data and keeps it working as the site changes — so you get a stable contract over a source that never promised one.
Can I fix or extend this API myself if I need a new endpoint or field?+
Yes — and you don't have to wait on us. This API was generated by the Parse agent, which stays attached. Describe the change in plain English ("add an endpoint that returns reviews", "fix the price field") in the revise box on the API page or via the revise_api MCP tool, and the agent rebuilds it against the live site in minutes. Contributing the change back to the public API is free.
What happens if I call an endpoint that has an issue?+
Errors are machine-readable: a bad call returns a clean status with the list of available endpoints and a repair hint, so an agent (or you) can recover or trigger a fix instead of failing silently. Confirmed failures feed the automatic repair queue.
Common use cases
  • Build a price-tracking tool that monitors price changes on specific DNS products over time using get_product_details.
  • Map all DNS store locations in a given city using lat, lon, and city fields from get_stores.
  • Aggregate customer sentiment by collecting opinions across product lines with get_product_reviews.
  • Populate a product comparison table with structured attribute data from get_product_specs.
  • Index the full DNS catalog for search by iterating categories via get_catalog_categories and get_products_by_category.
  • Build a store-finder feature showing phone, time, and address for the nearest DNS location.
  • Extract article numbers from get_product_details to cross-reference DNS inventory against other Russian retailers.
Pricing & limitsSee full pricing →
TierPriceCredits/monthRate limit
Free$0/mo1005 req/min
Hobby$30/mo1,00020 req/min
Developer$100/mo5,000100 req/min

One credit = one API call regardless of which marketplace API you call. Exceeding the rate limit returns a 429 response. Authenticate with the X-API-Key header.

Frequently asked questions
Does dns-shop.ru have an official public developer API?+
No. DNS Shop does not publish a documented public API for third-party developers. This Parse API provides structured access to the same data available through the site.
What does get_stores return and does it cover all Russian regions?+
get_stores returns the full list of DNS physical locations nationwide. Each record includes id, name, address, phone, time (working hours), mark (landmark note), lat/lon coordinates, metroInfo, and city. The total_stores field tells you the total count in the response. Coverage reflects what DNS publishes for their store network, which spans most major Russian cities and regions.
Are product availability or stock levels returned by any endpoint?+
Not currently. The catalog endpoints return price, specs, images, and title, but per-store stock or online availability status is not included in the response. You can fork this API on Parse and revise it to add a stock-checking endpoint if that data is needed.
Why do catalog endpoints sometimes fail while get_stores works reliably?+
The five product catalog endpoints (get_catalog_categories, search_products, get_products_by_category, get_product_details, get_product_specs) are subject to Qrator antibot protection on dns-shop.ru and may be intermittently blocked. get_stores pulls from a separate subdomain that does not have the same restrictions, making it consistently available.
Can I retrieve seller or marketplace third-party listings from DNS Shop?+
Not currently. The API covers first-party DNS product listings, specs, and reviews. DNS Shop operates a marketplace section with third-party sellers, but those seller-specific records and their separate pricing are not exposed by the current endpoints. You can fork this API on Parse and revise it to add coverage of the marketplace seller data.
Page content last updated . Spec covers 7 endpoints from dns-shop.ru.
Related APIs in EcommerceSee all →
perekrestok.ru API
Browse Perekrestok.ru's grocery catalog, search for products, view detailed information and customer reviews, and explore items organized by category. Get instant access to product details, pricing, and shopper feedback to help you find exactly what you need from Russia's leading supermarket chain.
megamarket.ru API
Search and browse products across MegaMarket.ru's catalog, view detailed product information with customer reviews, and explore catalog categories to discover items available on Sber's Russian marketplace. Get real-time search suggestions and product recommendations to help you find exactly what you're looking for.
catalog.onliner.by API
Search and compare products from Onliner.by's catalog with access to real-time prices, detailed product information, customer reviews, and historical price trends. Browse categories, get autocomplete suggestions, and view all available offers for any product to make informed purchasing decisions.
online.metro-cc.ru API
Search and browse products from Russian METRO Cash & Carry online store with detailed attributes, pricing, and availability information. Explore product categories and look up specific items to compare features and find what you need.
ozon.ru API
Access data from ozon.ru.
vkusvill.ru API
Search and browse products from VkusVill, a Russian grocery retailer, including detailed product information, customer reviews, current offers, and category-filtered offer listings. Get real-time access to product categories, pricing, and availability across the store's full range of items.
wildberries.ru API
Search products on Wildberries and retrieve detailed information including specifications, reviews, and pricing to compare items and make informed purchasing decisions. Get autocomplete suggestions while browsing and access comprehensive product details all in one place.
krasnoeibeloe.ru API
Search for products from Krasnoe & Beloe, locate nearby shops across different cities, and check real-time stock availability to find what you need. View detailed product information and discover which stores have items in stock so you can plan your shopping trip efficiently.