2026-04-16 · Legacy URL cleanup, and a stable OpenAPI spec
Five unused URL aliases removed, five more renamed for consistency, and the OpenAPI spec reached version 1.0.0 with every operationId locked.
Legacy URL cleanup, and a stable OpenAPI spec
Two changes landed the same day. Five unused URLs were deleted. Five more were renamed for consistency with the rest of the API.
Removed — five aliases with no live traffic
Each one already had a documented replacement:
| Removed | Use instead |
|---|---|
GET /v1/credits/{customer_id} | GET /v1/customers/{customer_id}/credits |
POST /v1/credits/{customer_id}/grant | POST /v1/customers/{customer_id}/credits/grant |
POST /v1/credits/{customer_id}/adjust | POST /v1/customers/{customer_id}/credits/adjust |
GET /v1/credits/{customer_id}/history | GET /v1/customers/{customer_id}/credits/history |
GET /v1/entitlements/{customer_id} | GET /v1/customers/{customer_id}/entitlements |
Renamed — plural, like every other resource
| Old | New |
|---|---|
/v1/reserve, /v1/reserve/{id}/... | /v1/reservations, /v1/reservations/{id}/... |
/v1/topup/grant | /v1/topups/grant |
If you hand-copied a path before this date, grep your code for /v1/reserve, /v1/topup/grant, /v1/credits/{, or /v1/entitlements/{.
Changed — the spec is now the source of truth
openapi.yaml reached version 1.0.0. Every path is named, and every operationId is locked. A client generated from the spec today keeps the same method names until a major version bump.
See the API reference, which now renders from this spec.
● raw markdown · 2026-04-16-url-cleanup-and-spec.md ↗ — this is exactly what an agent fetches
Loading…