Skip to content

AI generation API versioning and deprecation

How the FreeInd API is versioned, what counts as a breaking change, and the 90-day deprecation window you can rely on.

Versioning

The API is versioned by URL prefix (/v1). Additive, backwards-compatible changes (new endpoints, new optional fields, new error codes) land within the current version. Breaking changes require a new major version (/v2).

Deprecation policy

  1. Breaking changes are announced at least 90 days before removal.
  2. Deprecated endpoints return a Deprecation: true response header and keep working during the deprecation window.
  3. Changelog entries mark each change with added, changed, deprecated, or removed.
  4. The current version remains fully supported for at least 12 months after the next major version ships.

Changelog

2026-08-02 — v1 (initial public surface)

  • added — API keys: GET/POST /v1/api-keys, DELETE /v1/api-keys/:id, GET /v1/api-keys/:id/usage. Bearer authentication, scopes, per-key rate limits with X-RateLimit-* headers, api_requests usage logging.
  • addedIdempotency-Key header support on POST /v1/generations.
  • added — Customer webhooks: GET/POST/PATCH/DELETE /v1/webhooks, GET /v1/webhooks/:id/deliveries. Delivery with HMAC-SHA256 X-FreeInd-Signature header, exponential-backoff retries, delivery history.
  • addedpaymentMode: "wallet" on generations for pay-as-you-go wallet billing.
  • added — Wallet endpoints: GET /v1/wallet, POST /v1/wallet/top-ups (server-side $10 minimum), GET /v1/wallet/transactions, GET /v1/wallet/deposits.
  • changed/v1/models, /v1/generations*, /v1/usage, /v1/files/*, /v1/assets*, /v1/wallet* accept Bearer API keys in addition to session cookies.
  • addedfavorite, mediaType, and sourceGenerationId filters on GET /v1/assets; PATCH /v1/assets/:id for favorites.

Error compatibility

Stable error codes and the error envelope ({"error":{"code","message","requestId"}}) are part of the v1 contract. New codes are additive; existing codes never change meaning. See Authentication for the full error code list.

Note

Product-level announcements (new modes, models, billing) are posted on the product changelog.

Cookies keep FreeInd working. Optional analytics require your permission. Read our cookie policy.