Discover/Download API
live

Download APIdownload.com

Access CNET's software catalog via 7 endpoints. Search by keyword, browse by platform or category, and retrieve specs, ratings, and download links.

Endpoint health
verified 3d ago
get_new_releases
search_software
get_platform_listings
get_most_popular
get_software_details
7/7 passing latest checkself-healing
Endpoints
7
Updated
3d ago

What is the Download API?

The Download.com API exposes 7 endpoints covering CNET's software catalog — letting you search by keyword, browse by platform or category, and retrieve full product details including technical specifications, user ratings, and download trigger URLs. The get_software_details endpoint returns a structured specs object, related_links, and a download_trigger_url per product. The search_software endpoint supports sorting by relevance, popularity, or release date across Windows, Mac, Android, iOS, and iPhone.

Try it
Sort order for results.
Search term (e.g. 'vlc', 'chrome', 'antivirus').
Platform to search: windows, mac, android, ios, iphone.
api.parse.bot/scraper/8e8c84dc-dba5-43b7-b883-fbad1cfeb84c/<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/8e8c84dc-dba5-43b7-b883-fbad1cfeb84c/search_software?sort=relevance&query=vlc&platform=windows' \
  -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 download-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.

"""Walkthrough: CNET Download SDK — search, browse, drill down into details."""
from parse_apis.CNET_Download_API import CnetDownload, Sort, Platform, Category, SoftwareNotFound

client = CnetDownload()

# Search for VLC media players, sorted by popularity
for item in client.software_summaries.search(query="vlc", sort=Sort.MOST_POPULAR, platform=Platform.WINDOWS, limit=3):
    print(item.name, item.rating, item.license_type)

# Drill into full details for one result
summary = client.software_summaries.search(query="chrome", platform=Platform.WINDOWS, limit=1).first()
if summary:
    detail = summary.details()
    print(detail.name, detail.rating, detail.download_trigger_url)
    for key, val in detail.specs.items():
        print(key, val)

# Get download info from the detail page
if summary:
    detail = summary.details()
    dl = detail.download_info()
    print(dl.trigger_url, dl.direct_download_link)

# Browse by category with an enum
for app in client.software_summaries.list_by_category(category=Category.BROWSERS, platform=Platform.WINDOWS, limit=5):
    print(app.name, app.slug, app.platform)

# Handle not-found error on a direct lookup
try:
    sw = client.softwares.get(url="https://download.cnet.com/nonexistent-app/3000-0000_0-00000000.html")
    print(sw.name)
except SoftwareNotFound as exc:
    print(f"Software not found: {exc.url}")

print("exercised: search / details / download_info / list_by_category / get")
All endpoints · 7 totalmissing one? ·

Full-text search over CNET's software catalog. Returns up to 10 results per query matching title and description. Supports sorting by relevance, popularity, or release date. Platform scopes results to a single OS.

Input
ParamTypeDescription
sortstringSort order for results.
queryrequiredstringSearch term (e.g. 'vlc', 'chrome', 'antivirus').
platformstringPlatform to search: windows, mac, android, ios, iphone.
Response
{
  "type": "object",
  "fields": {
    "query": "string, the search term used",
    "results": "array of software summary objects with name, slug, product_url, license_type, description, rating, platform, category"
  },
  "sample": {
    "data": {
      "query": "vlc",
      "results": [
        {
          "name": "VLC Media Player (32-bit)",
          "slug": "vlc-media-player-32-bit",
          "rating": "5 out of 5 stars",
          "category": "video",
          "platform": "Windows",
          "description": "A popular free media player",
          "product_url": "https://download.cnet.com/vlc-media-player-32-bit/3000-13632_4-10267151.html",
          "license_type": "Free"
        }
      ]
    },
    "status": "success"
  }
}

About the Download API

Search and Browse

The search_software endpoint accepts a required query parameter and optional platform and sort inputs. It returns up to 10 software summary objects per query, each containing name, slug, product_url, license_type, description, rating, platform, and category. You can narrow results to a single OS by passing platform (windows, mac, android, ios, iphone) and sort by relevance, popularity, or release_date.

get_platform_listings and get_category_listings support paginated browsing — roughly 24 results per page. Category slugs follow the path segments used on the site, such as browsers, security, games, and developers. Both endpoints return the same software summary shape as search results, plus the requested platform and category in the response envelope.

Product Details and Downloads

get_software_details requires either a full product URL or both a slug and product_id. It returns a specs object with labeled technical details (Release, Version, Platform, Total Downloads), a rating string, a description, a program_id UUID, related_links, and a download_trigger_url. This is the primary endpoint for building software detail pages or enriching catalog records.

get_download_link accepts either a trigger_url or a slug in slug-name/product-id format and returns a direct_download_link when one is statically resolvable. When the download is JavaScript-initiated on the source site, the field returns the trigger page URL alongside an explanatory message rather than a file URL. get_most_popular and get_new_releases each return a single page of ~24 summary objects sorted by download count or release date respectively.

Reliability & maintenanceVerified

The Download API is a managed, monitored endpoint for download.com — not a raw scraper you maintain. Every endpoint is automatically health-checked on a schedule, and when download.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 download.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
3d ago
Latest check
7/7 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 cross-platform software discovery tool using search_software with platform and category filters.
  • Track new software releases by polling get_new_releases for each supported platform.
  • Aggregate popularity rankings by extracting rating and download counts from get_most_popular results.
  • Populate a software catalog with technical specs by calling get_software_details for each slug and product ID.
  • Generate download pages by chaining get_software_details to get download_trigger_url, then resolving it with get_download_link.
  • Compare license types across a category by iterating get_category_listings pages and collecting license_type fields.
  • Surface related software recommendations by reading the related_links array from get_software_details.
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 CNET/Download.com have an official developer API?+
CNET does not publish a public developer API for its software download catalog. There is no documented REST or GraphQL API available at a developer portal.
What does `get_software_details` return that the listing endpoints don't?+
get_software_details returns a specs object with labeled technical fields (e.g. Release, Version, Platform, Total Downloads), a program_id UUID, a download_trigger_url, and a related_links array. The listing endpoints (search_software, get_platform_listings, etc.) return only the summary shape: name, slug, product_url, license_type, description, rating, platform, and category.
Does `get_download_link` always return a direct file URL?+
Not always. When a download is triggered client-side on the source page, direct_download_link returns the trigger page URL with an explanatory message instead of a file URL. For software where a static download URL is resolvable, a direct link is returned. The trigger_url field is always populated in the response.
Does the API expose user reviews or review text for individual software products?+
Not currently. The API returns a rating string (e.g. '2.7 out of 5 stars') but does not expose individual user reviews or review text. You can fork this API on Parse and revise it to add an endpoint that retrieves per-product review content.
How does pagination work across listing endpoints?+
get_platform_listings and get_category_listings accept an integer page parameter and return ~24 results per page. get_most_popular and get_new_releases do not support pagination and each return a single page of ~24 items.
Page content last updated . Spec covers 7 endpoints from download.com.
Related APIs in Developer ToolsSee all →
capterra.com API
capterra.com API
g2.com API
Search G2.com to discover software products, compare pricing and categories, and read customer reviews all in one place. Get detailed product overviews and ratings to make informed decisions about business software.
getapp.com API
Search and compare software solutions while accessing detailed information like pricing, features, integrations, reviews, and alternatives all in one place. Get category leaders, read industry research from their blog, and make informed software decisions based on comprehensive data.
alternativeto.net API
Search for software applications, discover alternative tools to replace your current apps, and explore detailed information about programs across different categories and platforms. Find the perfect software match by browsing apps, comparing alternatives, and filtering by your preferred operating system.
newegg.com API
Search Newegg's product catalog and retrieve listings, specifications, customer reviews, Q&A, category trees, and daily deals.
dell.com API
Search and explore Dell products across categories while accessing detailed specifications, drivers, downloads, warranty information, and support articles all from one unified interface. Get comprehensive product details and driver compatibility information to make informed purchasing and support decisions.
componentsearchengine.com API
Search for electronic components and access detailed specifications including pricing, datasheets, and 3D models from a comprehensive component database. Browse top trending components, retrieve in-depth metadata, and integrate real-time component information into your sourcing and design workflows.
dlsite.com API
Browse and search DLsite's digital content library, view product details, rankings, and new releases, while managing your personal favorites and library if logged in. Access comprehensive information about games, software, and creative works all in one place.