PythonWD HTTP API
Base URL: https://pkg.pythonwd.com · Current version: v3.14.3
Authorization: Bearer <token> on every request
except /api/v2/health. Generate tokens with pythonwd login --sso or from your
account settings. Community mirror reads are unauthenticated.
Returns the PEP 503-compatible simple index of all projects available on the mirror. Point
pip at this endpoint via --index-url and dependency resolution works
without further changes. Use /simple/<project>/ to list file links for one project.
Request
curl https://pkg.pythonwd.com/simple/requests/
Response
<!DOCTYPE html>
<html>
<body>
<a href="/packages/requests-2.32.3-py3-none-any.whl#sha256=...">requests-2.32.3-py3-none-any.whl</a>
</body>
</html>
Query Parameters
| Parameter | Type | Description |
|---|---|---|
platform | string | Filter to a wheel platform tag, e.g. win_amd64 |
python_version | string | Filter to a compatible CPython version |
Serves the actual wheel and sdist artifacts referenced by /simple/. Files are content-
addressed and immutable, so they can be cached indefinitely by CI runners and air-gapped mirrors.
Request
curl -O https://pkg.pythonwd.com/packages/requests-2.32.3-py3-none-any.whl
Response Headers
| Header | Description |
|---|---|
Content-Type | application/octet-stream |
ETag | SHA-256 digest of the artifact |
Cache-Control | public, max-age=31536000, immutable |
Accepts batched application telemetry events emitted by the PythonWD SDK client
(client.telemetry.start(...)) for fleet-wide visibility into dependency usage and
runtime performance.
Request Body
{
"app": "billing-service",
"host": "WIN-PROD-042",
"events": [
{"type": "startup", "duration_ms": 812, "python_version": "3.12.4"},
{"type": "dependency_import", "package": "requests", "duration_ms": 14}
]
}
Response
{"accepted": 2, "rejected": 0}
Status Codes
| Code | Meaning |
|---|---|
| 202 | Events accepted for processing |
| 400 | Malformed event payload |
| 401 | Missing or invalid bearer token |
Ingests numeric time-series metrics (counters, gauges, histograms) tagged by application and host, for dashboards and alerting on top of your Windows Python fleet.
Request Body
{
"metrics": [
{"name": "resolve.duration_ms", "value": 431, "tags": {"platform": "win_amd64"}},
{"name": "mirror.cache_hit_ratio", "value": 0.94, "type": "gauge"}
]
}
Response
{"ingested": 2}
Unauthenticated liveness/readiness probe suitable for load balancers and uptime monitors.
Response
{
"status": "ok",
"version": "3.14.3",
"mirror_sync_lag_seconds": 4
}