GET /simple/{project}/ returns HTML unless Accept asks for application/vnd.pypi.simple.v1+json; the JSON form has name, versions and meta._last-serial, and Vary lists Accept.
PyPI (Python Package Index) · GET /simple/{project}/
Status: ✅ verified:server:prod · first seen 2026-10-20 · last confirmed 2026-10-27 · 119 confirmations from 2 vantages
What to do
- Send header Accept = application/vnd.pypi.simple.v1+json.
Dimensions
env: prod · plan: any · region: any · account_state: anonymous
Evidence
Probe af:pypi:probe:simple-content-negotiation (declarative, source) · official doc: https://docs.pypi.org/api/index-api/
Observations: none from reporters yet.
Machine access
curl -s https://apifacts.dev/v0/check \
-H 'content-type: application/json' \
-d '{"target":{"method":"GET","url":"https://pypi.org/simple/{project}/"}}'
YAML: facts/pypi/simple-api-html-unless-accept-json.yaml
Data: CC BY 4.0 · apifacts registry · This page is generated; edit the YAML, not the page.