BenchLM Radar API
AI provider changes, ready for your agent
Poll one read-only endpoint for source-linked model, API, pricing, lifecycle, research, benchmark, app, and outage events. Every event carries its evidence state, observation time, and original source.
curl --get 'https://radar.benchlm.ai/v1/events' \
--header 'Authorization: Bearer $RADAR_API_KEY' \
--data-urlencode 'provider=openai' \
--data-urlencode 'type=model_release' \
--data-urlencode 'limit=50'Published contract
One polling contract, no write permissions
- Endpoint
- GET /v1/events
- Authentication
- Bearer API key
- Page size
- 1–200
- Monthly Pro limit
- 100,000
The evidence fields travel with the event
The event object keeps confirmation and evidence separate. `confirmed` says the change passed Radar’s customer-event gate; `evidenceState` records how the source supports it. Corrections and retractions remain explicit fields instead of silently rewriting history.
idproviderSlugeventTypetitleevidenceStateconfirmationStatefirstObservedAtsourceUrl
{
"data": [{
"id": "evt_…",
"providerSlug": "openai",
"eventType": "model_release",
"title": "Model released",
"evidenceState": "documented",
"confirmationState": "confirmed",
"firstObservedAt": "2026-08-11T14:32:08Z",
"sourceUrl": "https://…"
}],
"nextCursor": "eyJ…",
"hasMore": false,
"usage": { "requests": 42, "limit": 100000, "period": "2026-08" }
}Cursor polling prevents timestamp gaps
Start with `limit=50`, persist `nextCursor`, and request the next page immediately while `hasMore` is true. Results arrive oldest-first while polling. The older `after` timestamp filter remains deprecated because events sharing a timestamp can be skipped.
Keys are named, one-time visible, and revocable
Radar stores a hash, shows the secret only when the key is created, tracks last use, and rejects revoked keys. A key also stops working when the account no longer has active Pro access.
Agent discovery is already published
The public manifest names the bearer-key environment variable, polling interval, cursor rules, and OpenAPI location.
Rate-limit and access failures stay machine-readable
400Invalid filter or cursor401Missing or invalid API key403API key no longer has Pro access429Monthly request limit reached