HTTP endpoints
Endpoints are live, rate-limited, and allowlist-gated where noted.
Health probes
Section titled “Health probes”curl -sS https://api.pactnetwork.io/health# {"status":"ok","version":"v1"}
curl -sS https://indexer.pactnetwork.io/healthPublic reads
Section titled “Public reads”Providers list
Section titled “Providers list”curl -sS https://api.pactnetwork.io/api/v1/providersAggregate reliability tiers. Per-endpoint identifiers aren’t published in private beta — only opaque IDs and tiers. Approximate shape:
{ "providers": [ { "id": "<opaque>", "tier": "RELIABLE", "failure_rate": 0.0042 } ]}Indexer stats
Section titled “Indexer stats”curl -sS https://indexer.pactnetwork.io/api/statsAggregate stats: pool size, settled batches, total refunds, recent activity.
Market (authenticated)
Section titled “Market (authenticated)”The Market gateway proxies requests to wrapped endpoints. Auth is required.
The <endpoint> identifier is provided to allowlisted users at access time.
curl -X POST \ https://market.pactnetwork.io/<endpoint>/<upstream-path> \ -H "Authorization: Bearer $PACT_MARKET_KEY" \ -H "Content-Type: application/json" \ -d '{ ... }'See Market → Overview.
Cloud Armor + User-Agent filtering
Section titled “Cloud Armor + User-Agent filtering”api.pactnetwork.io sits behind Cloud Armor with a User-Agent allow-list.
Default curl/X.Y and generic Node.js User-Agents return 403. Use one of:
- A browser User-Agent string.
pact-monitor-sdk/0.1.0(the SDK sets this automatically).
curl -sS https://api.pactnetwork.io/health \ -A 'pact-monitor-sdk/0.1.0'Rate limits
Section titled “Rate limits”Public reads are generous, Market is tight per-key, indexer is cached.
Hitting a limit returns 429 with a Retry-After header.