Packagist
Composer/Packagist package metadata
Packagist’s p2 JSON metadata feeds Composer. Fetch /p2/{vendor}/{package}.json for version lists and dist URLs — no key on reads.
We probe a documented GET and expect 2xx JSON — full uptime and health score. Open provider docs ↗
On our probe schedule. Uptime charts appear after the first check lands.
GET https://repo.packagist.org/p2/laravel/framework.json
{
"minified": "composer/2.0",
"packages": {
"laravel/framework": [
{
"name": "laravel/framework",
"description": "The Laravel Framework.",
"keywords": [
"framework",
"laravel"
],
"homepage": "https://laravel.com",
"version": "v13.18.1",
"version_normalized": "13.18.1.0",
"license": [
"MIT"
],
"authors": [
{
"name": "Taylor Otwell",
"email": "taylor@laravel.com"
}
]
},
{
"version": "v13.18.0",
"version_normalized": "13.18.0.0",
"source": {
"url": "https://github.com/laravel/framework.git",
"type": "git",
"reference": "138e5806ed7e4e21591948b661119d3810f052cf"
},
"dist": {
"url": "https://api.github.com/repos/laravel/framework/zipball/138e5806ed7e4e21591948b661119d3810f052cf",
"type": "zip",
"shasum": "",
"reference": "138e5806ed7e4e21591948b661119d3810f052cf"
},
"time": "2026-06-30T12:54:13+00:00",
"published-time": "2026-06-30T12:56:10+00:00"
}
]
},
"security-advisories": [
{
"advisoryId": "PKSA-3r5d-mb8f-1qw9",
"affectedVersions": "<12.60.0|>=13.0.0,<=13.9.0"
},
{
"advisoryId": "PKSA-m5cs-t1y6-qpcs",
"affectedVersions": "<12.61.1|>=13.0.0,<13.12.0"
}
]
}curl "https://repo.packagist.org/p2/laravel/framework.json"const res = await fetch("https://repo.packagist.org/p2/laravel/framework.json");
const data = await res.json();
console.log(data);import requests
res = requests.get("https://repo.packagist.org/p2/laravel/framework.json")
print(res.json())BROWSER CALLS BLOCKED (NO CORS/HTTPS) — USE THE CURL SNIPPET
/p2/laravel/framework.jsonPROBEDComposer/Packagist package metadata
/p2P2 — documented GET route.
/p2/1P2 details by ID (example: 1).
/p2?limit=10P2 — documented GET route.
/p2/search?q=testSearch by query parameters.
We probe a documented GET and expect 2xx JSON — full uptime and health score. Export includes every documented route below.
Not tracked yet. Shape-change history starts once this API joins our probe schedule.
Packagist: common questions
Is Packagist free to use?
Yes — Packagist is a free developer tools API. Free tier: Free — limits not published. Whether the free tier allows commercial use is unclear — check the provider docs.
Does Packagist need an API key?
No — Packagist needs no API key or signup. You can call it straight away; rate limits still apply (Unpublished).
Can I call Packagist from the browser?
Not directly — Packagist doesn't send browser-friendly CORS headers, so call it from a server or proxy instead. Copy the curl or Python snippet on this page to get started.
Is Packagist up right now?
Packagist is catalogued but not yet on our probe schedule, so we don't publish a live status for it. Check the provider's own status page or docs for its current state.