Discover/Desertcart API
live

Desertcart APIdesertcart.com

Access Desertcart product data via API: search the catalog, retrieve pricing with duty breakdowns, check stock, and pull specs, images, and variants.

Endpoint health
verified 5h ago
search_products
get_product_details
get_product_images
get_categories
get_product_pricing
1/8 passing latest checkself-healing
Endpoints
9
Updated
26d ago

What is the Desertcart API?

The Desertcart API covers 9 endpoints that expose product search, detailed listings, pricing with duty and shipping breakdowns, stock availability, images, technical specifications, and variant configurations from the Desertcart UAE marketplace. The search_products endpoint returns paginated summaries — including price, rating, and estimated delivery days — across the full catalog, while dedicated endpoints like get_product_pricing and get_product_availability give granular per-product data.

Try it
Page number for pagination.
Search keyword (e.g. 'laptop', 'headphones').
Source country filter.
api.parse.bot/scraper/c6ebb67e-52dd-4b6e-8939-24708464b187/<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/c6ebb67e-52dd-4b6e-8939-24708464b187/search_products?page=1&query=laptop&country=us' \
  -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 desertcart-com-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.

from parse_apis.desertcart_api import Desertcart, Country, ProductNotFound

client = Desertcart()

# Search for electronics from US stores, capped at 3 results
for product in client.productsummaries.search(query="headphones", country=Country.US, limit=3):
    print(product.title, product.price.formatted, product.rating)

# Drill into full details of the first result
item = client.productsummaries.search(query="laptop", limit=1).first()
if item:
    detail = item.details()
    print(detail.title, detail.brand_name, detail.in_stock)

    # Check pricing breakdown
    pricing = detail.pricing()
    print(pricing.price.formatted, pricing.percent_saved)
    if pricing.price_breakup:
        print(pricing.price_breakup.grand_total, pricing.price_breakup.duty_charges)

    # Check availability and delivery
    avail = detail.availability()
    print(avail.in_stock, avail.store_country, avail.eligible_for_pro)

    # Get specifications (bounded)
    for spec in detail.specifications(limit=5):
        print(spec.key, spec.value)

# List all categories
for cat in client.categories.list(limit=5):
    print(cat.name, cat.slug)

# Typed error handling for a non-existent product
try:
    bad = client.product(id=999999999).availability()
    print(bad.in_stock)
except ProductNotFound as exc:
    print(f"Product not found: {exc.product_id}")

print("exercised: search / details / pricing / availability / specifications / categories.list")
All endpoints · 9 totalmissing one? ·

Full-text search over Desertcart product catalog. Returns paginated product summaries with pricing, ratings, and delivery estimates. Pagination via page number; 10 results per page, up to total_pages. Optional country filter narrows results to a source-store country.

Input
ParamTypeDescription
pageintegerPage number for pagination.
queryrequiredstringSearch keyword (e.g. 'laptop', 'headphones').
countrystringSource country filter.
Response
{
  "type": "object",
  "fields": {
    "products": "array of product summary objects with id, title, brand_name, price, rating, reviews_count, estimated_delivery_days, main_image_url, store_name, badges",
    "total_count": "integer total products matching query",
    "total_pages": "integer total pages available",
    "current_page": "integer current page number"
  },
  "sample": {
    "data": {
      "products": [
        {
          "id": 817555289,
          "price": {
            "plain": 3226,
            "value": 322600,
            "formatted": "AED 3,226",
            "currency_code": "AED",
            "value_usd_cents": 87842
          },
          "title": "HP 17 inch Business Laptop",
          "badges": null,
          "rating": 5,
          "brand_name": "hp",
          "store_name": null,
          "reviews_count": null,
          "main_image_url": "https://m.media-amazon.com/images/I/71AqNqyPEAL.jpg",
          "estimated_delivery_days": 7
        }
      ],
      "total_count": 50,
      "total_pages": 5,
      "current_page": 1
    },
    "status": "success"
  }
}

About the Desertcart API

Search and Product Discovery

The search_products endpoint accepts a required query string plus an optional country filter to narrow results to a specific source-store country. Each page returns up to 10 product summary objects containing id, title, brand_name, price, rating, reviews_count, estimated_delivery_days, and main_image_url. The total_count and total_pages fields let you paginate through the full result set. Use the returned id values as inputs to any of the per-product endpoints.

Per-Product Detail Endpoints

get_product_details returns a consolidated view: in_stock boolean, tech_specs key-value array, features_list, description, image_urls, and a price object with currency_code, value, formatted, and value_usd_cents. If you only need a specific slice of data, the dedicated endpoints are more targeted. get_product_pricing adds list_price, percent_saved, and a price_breakup object that breaks out duty_charges, local_shipping_changes, and grand_total — useful for accurate landed-cost calculations. get_product_availability surfaces store_country, delivery_ranges (as YYYY-MM-DD strings), and eligible_for_pro for Desertcart Pro shipping eligibility.

Specs, Images, and Variants

get_product_specifications returns an array of key/value pairs for technical attributes; the array is empty when a product has no structured specs. get_product_images returns main_image and an all_images array covering the full gallery. get_product_variants returns thumbnails, variations, and variation_attributes for multi-SKU products; single-SKU products return an empty object, so you can safely branch on the presence of those keys.

Categories

get_categories returns 15 top-level categories, each with a name and slug. get_subcategories accepts a category_slug and currently returns a guidance message directing you to use search_products with category-specific queries rather than a dedicated subcategory listing — a known limitation of this endpoint.

Reliability & maintenanceVerified

The Desertcart API is a managed, monitored endpoint for desertcart.com — not a raw scraper you maintain. Every endpoint is automatically health-checked on a schedule, and when desertcart.com 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 desertcart.com 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
5h ago
Latest check
1/8 endpoints 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-comparison tool that surfaces Desertcart landed costs including duty and shipping via price_breakup fields.
  • Monitor stock status across a list of product IDs using get_product_availability and the in_stock boolean.
  • Populate a product feed with structured specs from get_product_specifications for electronics or appliances.
  • Track discount depth over time by storing percent_saved and list_price from get_product_pricing per product.
  • Build a variant-aware product configurator using variation_attributes and the variations map from get_product_variants.
  • Aggregate delivery estimates by source country by combining the country filter in search_products with delivery_ranges from availability calls.
  • Sync product gallery images into a CMS using the all_images array returned by get_product_images.
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 Desertcart have an official developer API?+
Desertcart does not publish an official public developer API or developer portal. This Parse API provides structured access to product, pricing, and availability data from the platform.
What does `get_product_pricing` return beyond the current price?+
get_product_pricing returns the current price object (with currency_code, plain, formatted, and value_usd_cents), a list_price object representing the original price (or null if unavailable), a percent_saved discount figure, and a price_breakup object with duty_charges, local_shipping_changes, and grand_total. This makes it possible to calculate the full landed cost, not just the shelf price.
Does the API expose seller reviews or per-seller ratings?+
Not currently. The API returns product-level rating and reviews_count in search and detail endpoints, but individual seller profiles and seller-level ratings are not exposed. You can fork the API on Parse and revise it to add a seller-details endpoint.
What is the pagination behavior in `search_products`?+
Results come back 10 per page. The response includes total_count (total matching products), total_pages, and current_page. Use the page integer parameter to step through results. There is no cursor-based pagination; only page-number addressing is supported.
Does the API cover Desertcart storefronts outside the UAE, such as Saudi Arabia or India?+
The primary coverage is the Desertcart UAE catalog. The country parameter in search_products filters by product source-store country, but country-specific storefront pages (e.g. desertcart.sa or desertcart.in) are not independently addressable through the current endpoints. You can fork the API on Parse and revise it to target additional regional storefronts.
Page content last updated . Spec covers 9 endpoints from desertcart.com.
Related APIs in EcommerceSee all →
amazon.com API
Search and browse Amazon products, reviews, offers, and deals, then manage your shopping cart all through a single integration. Get detailed product information, seller profiles, and best sellers to compare prices and make informed purchasing decisions.
daraz.pk API
Browse and extract product data from Daraz Pakistan (daraz.pk). Search products by keyword or category, retrieve full product details, explore the category tree, and list all products for a given seller.
daraz.com.bd API
Search and browse products on Daraz Bangladesh to find items across any category. Retrieve detailed product information, explore category listings, and surface top-selling items — all from a single API.
amazon.ae API
Find products and compare prices on Amazon.ae by searching across categories, viewing detailed product information, and discovering today's best deals and top-selling items. Browse electronics, books, fashion, or any product category to stay updated on the latest offers available on the platform.
corsair.com API
Search and filter Corsair's gaming peripherals and PC components catalog by keywords, category, and product attributes like price and specs. Browse detailed product information, compare options, and easily navigate through results with sorting and pagination to find exactly what you need.
shopdisney.com API
Search and browse the Disney Store catalog by keyword, category, or new arrivals. Retrieve detailed product information including name, price, images, availability, and attributes across the full shopDisney merchandise range.
homedepot.com API
Search and browse Home Depot's product catalog to compare pricing, check real-time availability, and review detailed product specifications. Find products across all categories, look up store locations and hours, and check fulfillment options including in-store pickup and delivery.
daraz.com.np API
Search for products on Daraz Nepal and access detailed product information, homepage data, and current flash sale offerings all in one place. Get real-time product details, pricing, and promotional content to help you find exactly what you're looking for on Nepal's leading e-commerce platform.