Hey everyone,
Starting July 24, 2026, the following Pyth Pro History API endpoints will require API key authentication:
GET /v1/{channel}/price
GET /v1/{channel}/history
POST /v1/price
API key authentication is already supported in production today. Please update your requests to include:
http
Authorization: Bearer <PYTH PRO API KEY>
If you call these endpoints from a browser or frontend app, do not expose your API key client-side. The recommended setup is to route requests through your own backend or proxy.
For frontend apps that need a client-safe option and do not want to run their own proxy, we expect JWT-based authentication to be available around July 10.
Unauthenticated access to these endpoints will be disabled on July 24.
Quick update for teams using these endpoints from a browser/frontend:
The preferred setup is still to keep your Pyth Pro API key server-side, behind your own backend or proxy. Please don’t expose the API key directly in client-side code.
For teams that need a frontend-safe option and don’t want to route every request through their own proxy, the JWT auth flow is now available here:
The basic flow is:
- Your browser client asks your backend for a JWT.
- Your backend calls
POST /auth/token using your secret Pyth Pro API key.
- Your backend returns the JWT to the browser client.
- The browser client uses that JWT as a bearer token:
Authorization: Bearer _*_
Docs: Frontend Authentication | Pyth Developer Hub
Example app: pyth-examples/pro/frontend-jwt-auth at main · pyth-network/pyth-examples · GitHub