BYTETOOLS

jsDelivr API

Free jsDelivr data API with no key: npm and GitHub package versions, file listings, dist-tags and CDN usage statistics. CORS enabled. Tested curl example.

No API key requiredCORS enabledHTTPSFree tier

Endpoint tested and returned HTTP 200 on 19 Aug 2026

What is the jsDelivr API?

The jsDelivr data API is a free, key-free API exposing package metadata for the jsDelivr CDN — available versions and dist-tags for npm and GitHub packages, file listings, and download statistics.

jsDelivr serves npm and GitHub packages over a CDN, and its data API tells you what is available: every version, the dist-tags, and the complete file tree inside a given release.

The file listing endpoint is the distinctive one. Being able to enumerate the files inside a published package without downloading it is useful for building asset pickers, and for checking whether a package ships the built bundle you expect.

Quick facts

Base URL
https://data.jsdelivr.com/v1
Authentication
No API key required.
Rate limit
No published hard limit; CDN-backed and built for volume.
Pricing
Free.
CORS
Enabled — callable directly from browser JavaScript
Official docs
Read the docs

How to use the jsDelivr API

Every request below was executed against the live API on 19 Aug 2026, and the response shown is the real body it returned — not an illustration.

1. List versions of an npm package

GET https://data.jsdelivr.com/v1/packages/npm/react

curl
curl 'https://data.jsdelivr.com/v1/packages/npm/react'
JavaScript (fetch)
const res = await fetch("https://data.jsdelivr.com/v1/packages/npm/react");
if (!res.ok) throw new Error(`Request failed: ${res.status}`);
const data = await res.json();
console.log(data);
Python (requests)
import requests

res = requests.get("https://data.jsdelivr.com/v1/packages/npm/react", timeout=20)
res.raise_for_status()
print(res.json())
Response — HTTP 200 (truncated)
{
  "type": "npm",
  "name": "react",
  "tags": {
    "beta": "19.0.0-beta-26f2496093-20240514",
    "rc": "19.0.0-rc.1",
    "next": "19.3.0-canary-d5736f09-20260507",
    "latest": "19.2.8",
    "backport": "19.0.8",
    "experimental": "0.0.0-experimental-eb8feb71-20260814",
    "canary": "19.3.0-canary-eb8feb71-20260814"
  },
  "versions": [
    {
      "version": "19.3.0-canary-fef12a01-20260413",
      "links": {
        "self": "https://data.jsdelivr.com/v1/packages/npm/react@19.3.0-canary-fef12a01-20260413",
        "entrypoints": "https://data.jsdelivr.com/v1/packages/npm/react@19.3.0-canary-fef12a01-20260413/entrypoints",
        "stats": "https://data.jsdelivr.com/v1/stats/packages/npm/react@19.3.0-canary-fef12a01-20260413"
      }
    },
    {
      "version": "19.3.0-canary-fd524fe0-20251121",
      "links": {
        "self": "https://data.jsdelivr.com/v1/packages/npm/react@19.3.0-canary-fd524fe0-20251121",
        "entrypoints": "https://data.jsdelivr.com/v1/packages/npm/react@19.3.0-canary-fd524fe0-20251121/entrypoints",
        "stats": "https://data.jsdelivr.com/v1/stats/packages/npm/react@19.3.0-canary-fd524fe0-20251121"
      }
    },
    {
      "version": "19.3.0-canary-fb2177c1-20251114",
      "links": {
        "self": "https://data.jsdelivr.com/v1/packages/npm/react@19.3.0-canary-fb2177c1-20251114",
        "entrypoints": "https://data.jsdelivr.com/v1/packages/npm/react@19.3.0-canary-fb2177c1-20251114/entrypoints",
        "stats": "https://data.jsdelivr.com/v1/stats/packages/npm/react@19.3.0-canary-fb2177c1-20251114"
      }
    },
    {
      "ver

Parameters

ParameterTypeRequiredDescription
packages/npm/<name>pathRequirednpm package name. react
packages/gh/<user>/<repo>pathOptionalGitHub repository instead of npm. jquery/jquery
packages/npm/<name>@<version>pathOptionalAppend a version to list its files. react@18.2.0
structurestringOptional`flat` or `tree` for file listings. flat

Response fields

typestring
`npm` or `gh`.
namestring
Package name.
tagsobject
dist-tags such as latest, next and beta mapped to versions.
versionsarray
Every published version available on the CDN.
filesarray
On version endpoints, the files inside that release with sizes and hashes.

What you can build with the jsDelivr API

  • Build a CDN asset picker showing files available in a release
  • Check the latest version of a front-end library
  • Verify a package ships the bundle file you intend to load
  • Compare version adoption using jsDelivr's usage statistics endpoints

Common errors and how to fix them

404

Unknown package, or a scoped npm name not URL-encoded.

Fix: Scoped packages need encoding: @scope/name becomes %40scope%2Fname.

Empty files array

That version was never fetched through the CDN.

Fix: Very new or very obscure versions may not be populated until first requested.

jsDelivr API — frequently asked questions

Is the jsDelivr API free?

Yes, completely free with no API key, and CORS-enabled so it works from browser JavaScript.

Can I list the files inside a package?

Yes — that is one of its more useful features. Request a specific version and the response includes every file with its size and hash, without downloading the package.

Does it cover GitHub as well as npm?

Yes. Use /packages/gh/<user>/<repo> for GitHub-hosted packages and /packages/npm/<name> for npm.

How do I find the latest version?

Read the `tags` object, where `latest` maps to the current stable version — the same dist-tag npm uses.

Tools that pair with this API

Alternatives to jsDelivr API

If jsDelivr does not fit, these developer & testing apis cover similar ground. Every one was called before publishing, and each links to its own reference page with a working curl command and the response it returned.

APIWhat it doesAuthCORSLast verified
GitHub REST APIGitHub REST API with no key for public data: repository details, users, issues, releases and commits. 60 req/hour unauthenticated, 5,000 with a token.No keyYes19 Aug 2026
JSONPlaceholderFree fake REST API for testing and prototyping. Posts, comments, users and todos with full GET, POST, PUT and DELETE support. No key. Real curl examples.No keyYes19 Aug 2026
Postman EchoPostman Echo reflects your HTTP request back as JSON: headers, body, query params and auth. Free, no key, ideal for debugging clients. Real POST example.No keyNo19 Aug 2026
DummyJSONFree fake REST API with realistic products, users, carts, recipes and auth. Supports search, pagination, sorting and POST. No key. Tested GET and POST examples.No keyYes19 Aug 2026
JSON Schema StoreFetch the catalogue that maps config filenames to JSON Schemas, the same one VS Code and JetBrains IDEs use. No key. Verified example and integration notes.No keyYes21 Aug 2026
KrokiFree diagram-as-code API with no key: send Graphviz, Mermaid, PlantUML or 25 other diagram languages as text and get back SVG, PNG or PDF. Tested curl example included.No keyYes21 Aug 2026
All Developer & Testing APIs

jsDelivr is an independent third-party service and is not affiliated with ByteTools or ByteVancer. Details on this page were verified on 19 Aug 2026; always check the official documentation before relying on this API in production, as terms and limits can change.