Skip to main content

API Versioning and Stability

This article describes WeGive’s current API versioning practice, so integration developers know what to expect and plan around.

No URL-based versioning

The WeGive API does not use path-based version segments. Every endpoint lives under the /api/ prefix (for example https://api.wegive.com/api/dashboard/donors) — there is no /v1/ or /v2/ segment in the URL, and none is planned as a near-term change. If you’re used to APIs that version at the URL, don’t expect that pattern here.

No semantic versioning of the API contract

The version number shown on WeGive’s published API documentation is a static placeholder and does not reflect the API’s actual change history — it does not increment when endpoints, request shapes, or response shapes change. Don’t use that version string to detect or gate against contract changes; it is not a reliable signal today.

No formal breaking-change notification process

There is currently no dedicated communication channel (changelog, mailing list, deprecation-header convention, etc.) that WeGive uses to proactively announce breaking API changes ahead of time. If your integration depends on a specific endpoint’s request/response shape, build defensively — validate response shapes rather than assuming strict backward compatibility — and reach out to WeGive Support with your use case if you need advance notice of a planned change.

What this means for integrators

  • Don’t build version-detection logic around the API’s published version number.
  • Don’t route requests to a specific API version — there’s only one live surface at any given time.
  • Treat schema/response-shape validation in your own integration as your primary defense against an unannounced change, since no formal deprecation process currently exists.
  • If a breaking change affects your integration, contact WeGive Support — that’s currently the only mechanism for surfacing the impact and getting help adapting.

Sources

  • wegive-api/config/scramble.php: 'version' => env('API_VERSION', '0.0.1') — the published API doc version is a static default, not derived from any changelog or contract-diffing mechanism, and no API_VERSION environment override exists anywhere in the repository.
  • wegive-api/routes/api.php: all endpoints registered directly under the /api/ prefix with no /v1/, /v2/, or other version-segment routing group.
Last modified on September 21, 2026