Migrating from v1 to v2
This page is for carriers and MGAs with an existing
/v1/* integration. There was never a v1 agency surface, so an agency has nothing to migrate: start at Getting Started for Agencies. /v2/upstream carries 48 of v1ās 55 operations. The seven it does not are the four auth and heartbeat paths, which moved to the unsegmented /v2/auth/* and /v2/heartbeat, and the three deprecated dangerously- endpoints listed below, each of which names its successor. v2 adds no upstream operation that v1 lacks.v1 and v2. There is no field renaming, no envelope change and no new required parameters.
One endpoint differs, additively.
GET /v2/auth/test-oauth returns an extra orgCategory field naming the kind of organization your credential belongs to; the v1 response does not. Nothing is removed or renamed, so a client that ignores unknown fields needs no change.v1 is stable, fully supported and has no sunset date. Migrate when you want the endpoints that will only be added to v2.
1. Change the path prefix
Replace/v1/ with /v2/upstream/:
upstream identifies the kind of organization your credentials belong to. See versioning for the full persona model and why it was introduced.
2. Authentication is unchanged
Your existing client ID and secret work as-is. No new credentials, no re-issuing tokens. The token endpoint moves to/v2/auth/jwt and takes no persona segment, because the token itself identifies your organization:
GET /v2/heartbeat is likewise persona-neutral.
Tokens are interchangeable between versions. A token minted at /v1/auth/jwt is accepted by /v2/upstream/*, so you can migrate endpoint by endpoint rather than all at once.
3. Three endpoints are not in v2
These were deprecated inv1 and are absent from v2. Each has a direct replacement with an identical request and response:
If you call any of these on
v1 today you will receive Deprecation, Sunset and Link response headers. They remain available on v1 until the sunset date of 1 January 2027.
4. Everything else maps one to one
Every otherv1 endpoint exists on v2 at the same path with the new prefix. Some examples:
Browse the full list with the version switcher at the top of the API Reference.
Suggested approach
- Point one non-critical read endpoint at
/v2/upstream/in sandbox and confirm the response matches what you already parse. - Move the remaining reads. Responses are identical, so no parsing changes are needed.
- Move writes, replacing any
dangerously-calls with their successors. - Update your token endpoint to
/v2/auth/jwt.
Getting help
Something not behaving identically betweenv1 and v2 is a bug on our side, not an expected difference. Email support@turrisfi.com with the endpoint and both responses.