A complete reference for migrating your integrations from API V1 to V2.
⚠️ V1 is deprecated. V1 will continue to be supported until at least the end of 2026, but we strongly recommend migrating to V2 as soon as possible.
1. Overview of Changes
V2 reorganises the API into four dedicated API docs, each with its own base URL. The main structural changes are:
Connected Apps renamed to Apps — the /connected-apps path prefix is removed; apps are the root resource.
Resources promoted to top-level — resources previously nested under /connected-apps/{connected_app_id}/ (e.g. presets, installable artifacts, tester groups) are now top-level paths with app_id as a query parameter or body field.
Releases renamed to App Versions — the /releases resource is now /app-versions, in its own Store Releases API doc.
Build Distributions split out — Build Distributions, Tester Groups, and Testers are now in their own API doc.
CodePush split out — CodePush Deployments and Updates are now in their own API doc with simplified paths.
Path parameter renames — installable_artifact_id and public_asset_id are now simply id.
2. New API Structure
RM App API V2.1
Base URL: {baseURL}/release-management/v2/apps/v1
Apps, Public Assets, Installable Artifacts, Presets, Apple App Store (app-level), Outgoing Webhooks
RM Store Releases API V2.1
Base URL: {baseURL}/release-management/v2/store-releases/v1
App Versions (formerly Releases), Approvals, Release Candidates, Beta Distribution, Apple App Store release management, Google Play Store release management
RM Build Distributions API V2.1
Base URL: {baseURL}/release-management/v2/build-distributions/v1
Build Distributions, Tester Groups, Testers
RM CodePush API V2.1
Base URL: {baseURL}/release-management/v2/code-push/v1
Deployments, Updates, Metrics
V1 base URL was: {baseURL}/release-management/v1
3. Apps (formerly Connected Apps) — App API
The /connected-apps path prefix is removed. Apps are now the root resource of the App API.
V1
V2
POST/connected-apps
POST/
GET/connected-apps
GET/
GET/connected-apps/{id}
GET/{id}
PATCH/connected-apps/{id}
PATCH/{id}
DELETE/connected-apps/{id}
DELETE/{id}
4. Public Assets — App API
No longer nested under a connected app path. The path parameter is renamed from public_asset_id to id. The app is identified via the app_id query parameter.
No longer nested under a connected app. The path parameter is renamed from installable_artifact_id to id. What-to-test endpoints are part of the same resource group. The app is identified via the app_id query parameter.
These app-level Apple App Store endpoints are no longer nested under a connected app path. The app_id is passed as a query parameter for GET requests and as a body field for POST requests.
Note: Apple App Store release management endpoints (submit for review, phased release, etc.) remain nested under /app-versions/{id}/apple-app-store/... in the Store Releases API. Only the app-version management endpoints moved here.
Note: In V2, outgoing webhooks scoped to an app version are accessible at /app-versions/{id}/outgoing-webhooks in the Store Releases API.
9. Store Releases (formerly Releases) — Store Releases API
The /releases resource is renamed to /app-versions and moved to the Store Releases API. All nested paths follow the same rename pattern (release_id → id).
Moved to a dedicated API. Resources are promoted to top-level; the /connected-apps/{connected_app_id}/code-push/ prefix is removed. The app is identified via the app_id query parameter or body field.
⚠️ CodePush Packages are deprecated. The /deployments/{deployment_id}/packages/... endpoints from V1 have no V2 equivalent. Migrate to the Updates API instead.