Skip to content

feat(ramps-controller): route RampsEnvironment.Development to dev-api base URLs#8574

Draft
pkowalski wants to merge 3 commits intomainfrom
feature/enable-dev-ramps
Draft

feat(ramps-controller): route RampsEnvironment.Development to dev-api base URLs#8574
pkowalski wants to merge 3 commits intomainfrom
feature/enable-dev-ramps

Conversation

@pkowalski
Copy link
Copy Markdown
Contributor

@pkowalski pkowalski commented Apr 23, 2026

Explanation

RampsEnvironment.Development previously fell through the same branch as staging and sent all traffic to the UAT hosts (on-ramp*.uat-api.cx.metamask.io). This PR gives development its own API hosts on the dev-api subdomain, aligned with production/staging patterns.

Implementation details:

  • Orders (and other non-regions callers) use https://on-ramp.dev-api.cx.metamask.io.
  • Regions / cache-backed endpoints use https://on-ramp-cache.dev-api.cx.metamask.io via the same ${cache} suffix as other environments (so getCountries and related regions traffic stay on the cache host).

Production, staging, and local base URLs are unchanged.

References

  • PR branch: feature/enable-dev-ramps
  • Follows the same on-ramp${cache}.<env>-api.cx.metamask.io shape as production and staging.

Testing

yarn workspace @metamask/ramps-controller jest packages/ramps-controller/src/RampsService.test.ts

Checklist

  • I've updated the test suite for new or updated code as appropriate
  • I've updated documentation (JSDoc, Markdown, etc.) for new or updated code as appropriate
  • I've communicated my changes to consumers by updating changelogs for packages I've changed
  • I've introduced breaking changes in this PR and have prepared draft pull requests for clients and consumer packages to resolve them (not applicable — no breaking changes; Development now targets dedicated dev hosts instead of UAT)

Risk

Low for production/staging users. Consumers that instantiate RampsService (or the controller) with RampsEnvironment.Development will hit new hostnames; confirm dev-api is reachable and feature-complete for your flows before relying on it.

@pkowalski pkowalski requested a review from a team as a code owner April 23, 2026 20:11
@pkowalski pkowalski marked this pull request as draft April 23, 2026 20:11
@amitabh94
Copy link
Copy Markdown
Contributor

@metamaskbot publish-preview

Copy link
Copy Markdown

@cursor cursor Bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Cursor Bugbot has reviewed your changes and found 1 potential issue.

Fix All in Cursor

❌ Bugbot Autofix is OFF. To automatically fix reported issues with cloud agents, have a team admin enable autofix in the Cursor dashboard.

Reviewed by Cursor Bugbot for commit 6a2926f. Configure here.

Comment thread packages/ramps-controller/src/RampsService.ts Outdated
@github-actions
Copy link
Copy Markdown
Contributor

Preview builds have been published. Learn how to use preview builds in other projects.

Expand for full list of packages and versions.
@metamask-previews/account-tree-controller@7.1.0-preview-6a2926f
@metamask-previews/accounts-controller@37.2.0-preview-6a2926f
@metamask-previews/address-book-controller@7.1.1-preview-6a2926f
@metamask-previews/ai-controllers@0.6.3-preview-6a2926f
@metamask-previews/analytics-controller@1.0.1-preview-6a2926f
@metamask-previews/analytics-data-regulation-controller@0.0.0-preview-6a2926f
@metamask-previews/announcement-controller@8.1.0-preview-6a2926f
@metamask-previews/app-metadata-controller@2.0.1-preview-6a2926f
@metamask-previews/approval-controller@9.0.1-preview-6a2926f
@metamask-previews/assets-controller@6.1.0-preview-6a2926f
@metamask-previews/assets-controllers@104.3.0-preview-6a2926f
@metamask-previews/authenticated-user-storage@1.0.0-preview-6a2926f
@metamask-previews/base-controller@9.1.0-preview-6a2926f
@metamask-previews/base-data-service@0.1.1-preview-6a2926f
@metamask-previews/bridge-controller@70.2.0-preview-6a2926f
@metamask-previews/bridge-status-controller@71.0.0-preview-6a2926f
@metamask-previews/build-utils@3.0.4-preview-6a2926f
@metamask-previews/chain-agnostic-permission@1.5.0-preview-6a2926f
@metamask-previews/chomp-api-service@1.0.0-preview-6a2926f
@metamask-previews/claims-controller@0.5.0-preview-6a2926f
@metamask-previews/client-controller@1.0.1-preview-6a2926f
@metamask-previews/compliance-controller@2.0.0-preview-6a2926f
@metamask-previews/composable-controller@12.0.1-preview-6a2926f
@metamask-previews/config-registry-controller@0.2.0-preview-6a2926f
@metamask-previews/connectivity-controller@0.2.0-preview-6a2926f
@metamask-previews/controller-utils@11.20.0-preview-6a2926f
@metamask-previews/core-backend@6.2.1-preview-6a2926f
@metamask-previews/delegation-controller@3.0.0-preview-6a2926f
@metamask-previews/earn-controller@12.0.0-preview-6a2926f
@metamask-previews/eip-5792-middleware@3.0.3-preview-6a2926f
@metamask-previews/eip-7702-internal-rpc-middleware@0.1.0-preview-6a2926f
@metamask-previews/eip1193-permission-middleware@1.0.3-preview-6a2926f
@metamask-previews/ens-controller@19.1.1-preview-6a2926f
@metamask-previews/eth-block-tracker@15.0.1-preview-6a2926f
@metamask-previews/eth-json-rpc-middleware@23.1.2-preview-6a2926f
@metamask-previews/eth-json-rpc-provider@6.0.1-preview-6a2926f
@metamask-previews/foundryup@1.0.1-preview-6a2926f
@metamask-previews/gas-fee-controller@26.1.1-preview-6a2926f
@metamask-previews/gator-permissions-controller@4.0.0-preview-6a2926f
@metamask-previews/geolocation-controller@0.1.2-preview-6a2926f
@metamask-previews/json-rpc-engine@10.2.4-preview-6a2926f
@metamask-previews/json-rpc-middleware-stream@8.0.8-preview-6a2926f
@metamask-previews/keyring-controller@25.2.0-preview-6a2926f
@metamask-previews/logging-controller@8.0.1-preview-6a2926f
@metamask-previews/message-manager@14.1.1-preview-6a2926f
@metamask-previews/messenger@1.1.1-preview-6a2926f
@metamask-previews/messenger-cli@0.2.0-preview-6a2926f
@metamask-previews/money-account-balance-service@0.2.0-preview-6a2926f
@metamask-previews/money-account-controller@0.1.0-preview-6a2926f
@metamask-previews/money-account-upgrade-controller@1.0.0-preview-6a2926f
@metamask-previews/multichain-account-service@8.0.1-preview-6a2926f
@metamask-previews/multichain-api-middleware@2.0.0-preview-6a2926f
@metamask-previews/multichain-network-controller@3.0.6-preview-6a2926f
@metamask-previews/multichain-transactions-controller@7.0.4-preview-6a2926f
@metamask-previews/name-controller@9.1.1-preview-6a2926f
@metamask-previews/network-controller@30.0.1-preview-6a2926f
@metamask-previews/network-enablement-controller@5.0.2-preview-6a2926f
@metamask-previews/notification-services-controller@23.1.0-preview-6a2926f
@metamask-previews/permission-controller@12.3.0-preview-6a2926f
@metamask-previews/permission-log-controller@5.1.0-preview-6a2926f
@metamask-previews/perps-controller@4.0.0-preview-6a2926f
@metamask-previews/phishing-controller@17.1.1-preview-6a2926f
@metamask-previews/polling-controller@16.0.4-preview-6a2926f
@metamask-previews/preferences-controller@23.1.0-preview-6a2926f
@metamask-previews/profile-metrics-controller@3.1.3-preview-6a2926f
@metamask-previews/profile-sync-controller@28.0.2-preview-6a2926f
@metamask-previews/ramps-controller@13.2.0-preview-6a2926f
@metamask-previews/rate-limit-controller@7.0.1-preview-6a2926f
@metamask-previews/react-data-query@0.2.0-preview-6a2926f
@metamask-previews/remote-feature-flag-controller@4.2.0-preview-6a2926f
@metamask-previews/sample-controllers@4.0.4-preview-6a2926f
@metamask-previews/seedless-onboarding-controller@9.1.0-preview-6a2926f
@metamask-previews/selected-network-controller@26.1.0-preview-6a2926f
@metamask-previews/shield-controller@5.1.1-preview-6a2926f
@metamask-previews/signature-controller@39.2.0-preview-6a2926f
@metamask-previews/social-controllers@2.0.0-preview-6a2926f
@metamask-previews/storage-service@1.0.1-preview-6a2926f
@metamask-previews/subscription-controller@6.1.2-preview-6a2926f
@metamask-previews/transaction-controller@64.3.0-preview-6a2926f
@metamask-previews/transaction-pay-controller@19.3.0-preview-6a2926f
@metamask-previews/user-operation-controller@41.2.0-preview-6a2926f

@amitabh94 amitabh94 changed the title Add Dev support for Ramps feat(ramps-controller): point Development ramps traffic at dev-api hosts Apr 23, 2026
@amitabh94 amitabh94 changed the title feat(ramps-controller): point Development ramps traffic at dev-api hosts Ramps: use dev-api for Development Apr 23, 2026
@amitabh94 amitabh94 changed the title Ramps: use dev-api for Development feat(ramps-controller): route RampsEnvironment.Development to dev-api base URLs Apr 23, 2026
@pkowalski
Copy link
Copy Markdown
Contributor Author

@metamaskbot publish-preview

@github-actions
Copy link
Copy Markdown
Contributor

Preview builds have been published. Learn how to use preview builds in other projects.

Expand for full list of packages and versions.
@metamask-previews/account-tree-controller@7.1.0-preview-b9e7d98a6
@metamask-previews/accounts-controller@37.2.0-preview-b9e7d98a6
@metamask-previews/address-book-controller@7.1.1-preview-b9e7d98a6
@metamask-previews/ai-controllers@0.6.3-preview-b9e7d98a6
@metamask-previews/analytics-controller@1.0.1-preview-b9e7d98a6
@metamask-previews/analytics-data-regulation-controller@0.0.0-preview-b9e7d98a6
@metamask-previews/announcement-controller@8.1.0-preview-b9e7d98a6
@metamask-previews/app-metadata-controller@2.0.1-preview-b9e7d98a6
@metamask-previews/approval-controller@9.0.1-preview-b9e7d98a6
@metamask-previews/assets-controller@6.1.0-preview-b9e7d98a6
@metamask-previews/assets-controllers@104.3.0-preview-b9e7d98a6
@metamask-previews/authenticated-user-storage@1.0.0-preview-b9e7d98a6
@metamask-previews/base-controller@9.1.0-preview-b9e7d98a6
@metamask-previews/base-data-service@0.1.1-preview-b9e7d98a6
@metamask-previews/bridge-controller@70.2.0-preview-b9e7d98a6
@metamask-previews/bridge-status-controller@71.0.0-preview-b9e7d98a6
@metamask-previews/build-utils@3.0.4-preview-b9e7d98a6
@metamask-previews/chain-agnostic-permission@1.5.0-preview-b9e7d98a6
@metamask-previews/chomp-api-service@1.0.0-preview-b9e7d98a6
@metamask-previews/claims-controller@0.5.0-preview-b9e7d98a6
@metamask-previews/client-controller@1.0.1-preview-b9e7d98a6
@metamask-previews/compliance-controller@2.0.0-preview-b9e7d98a6
@metamask-previews/composable-controller@12.0.1-preview-b9e7d98a6
@metamask-previews/config-registry-controller@0.2.0-preview-b9e7d98a6
@metamask-previews/connectivity-controller@0.2.0-preview-b9e7d98a6
@metamask-previews/controller-utils@11.20.0-preview-b9e7d98a6
@metamask-previews/core-backend@6.2.1-preview-b9e7d98a6
@metamask-previews/delegation-controller@3.0.0-preview-b9e7d98a6
@metamask-previews/earn-controller@12.0.0-preview-b9e7d98a6
@metamask-previews/eip-5792-middleware@3.0.3-preview-b9e7d98a6
@metamask-previews/eip-7702-internal-rpc-middleware@0.1.0-preview-b9e7d98a6
@metamask-previews/eip1193-permission-middleware@1.0.3-preview-b9e7d98a6
@metamask-previews/ens-controller@19.1.1-preview-b9e7d98a6
@metamask-previews/eth-block-tracker@15.0.1-preview-b9e7d98a6
@metamask-previews/eth-json-rpc-middleware@23.1.2-preview-b9e7d98a6
@metamask-previews/eth-json-rpc-provider@6.0.1-preview-b9e7d98a6
@metamask-previews/foundryup@1.0.1-preview-b9e7d98a6
@metamask-previews/gas-fee-controller@26.1.1-preview-b9e7d98a6
@metamask-previews/gator-permissions-controller@4.0.0-preview-b9e7d98a6
@metamask-previews/geolocation-controller@0.1.2-preview-b9e7d98a6
@metamask-previews/json-rpc-engine@10.2.4-preview-b9e7d98a6
@metamask-previews/json-rpc-middleware-stream@8.0.8-preview-b9e7d98a6
@metamask-previews/keyring-controller@25.2.0-preview-b9e7d98a6
@metamask-previews/logging-controller@8.0.1-preview-b9e7d98a6
@metamask-previews/message-manager@14.1.1-preview-b9e7d98a6
@metamask-previews/messenger@1.1.1-preview-b9e7d98a6
@metamask-previews/messenger-cli@0.2.0-preview-b9e7d98a6
@metamask-previews/money-account-balance-service@0.2.0-preview-b9e7d98a6
@metamask-previews/money-account-controller@0.1.0-preview-b9e7d98a6
@metamask-previews/money-account-upgrade-controller@1.0.0-preview-b9e7d98a6
@metamask-previews/multichain-account-service@8.0.1-preview-b9e7d98a6
@metamask-previews/multichain-api-middleware@2.0.0-preview-b9e7d98a6
@metamask-previews/multichain-network-controller@3.0.6-preview-b9e7d98a6
@metamask-previews/multichain-transactions-controller@7.0.4-preview-b9e7d98a6
@metamask-previews/name-controller@9.1.1-preview-b9e7d98a6
@metamask-previews/network-controller@30.0.1-preview-b9e7d98a6
@metamask-previews/network-enablement-controller@5.0.2-preview-b9e7d98a6
@metamask-previews/notification-services-controller@23.1.0-preview-b9e7d98a6
@metamask-previews/permission-controller@12.3.0-preview-b9e7d98a6
@metamask-previews/permission-log-controller@5.1.0-preview-b9e7d98a6
@metamask-previews/perps-controller@4.0.0-preview-b9e7d98a6
@metamask-previews/phishing-controller@17.1.1-preview-b9e7d98a6
@metamask-previews/polling-controller@16.0.4-preview-b9e7d98a6
@metamask-previews/preferences-controller@23.1.0-preview-b9e7d98a6
@metamask-previews/profile-metrics-controller@3.1.3-preview-b9e7d98a6
@metamask-previews/profile-sync-controller@28.0.2-preview-b9e7d98a6
@metamask-previews/ramps-controller@13.2.0-preview-b9e7d98a6
@metamask-previews/rate-limit-controller@7.0.1-preview-b9e7d98a6
@metamask-previews/react-data-query@0.2.0-preview-b9e7d98a6
@metamask-previews/remote-feature-flag-controller@4.2.0-preview-b9e7d98a6
@metamask-previews/sample-controllers@4.0.4-preview-b9e7d98a6
@metamask-previews/seedless-onboarding-controller@9.1.0-preview-b9e7d98a6
@metamask-previews/selected-network-controller@26.1.0-preview-b9e7d98a6
@metamask-previews/shield-controller@5.1.1-preview-b9e7d98a6
@metamask-previews/signature-controller@39.2.0-preview-b9e7d98a6
@metamask-previews/social-controllers@2.0.0-preview-b9e7d98a6
@metamask-previews/storage-service@1.0.1-preview-b9e7d98a6
@metamask-previews/subscription-controller@6.1.2-preview-b9e7d98a6
@metamask-previews/transaction-controller@64.3.0-preview-b9e7d98a6
@metamask-previews/transaction-pay-controller@19.3.0-preview-b9e7d98a6
@metamask-previews/user-operation-controller@41.2.0-preview-b9e7d98a6

…elog

Restore staging UAT URLs with regions cache suffix; add Unreleased changelog
entry; align Development nocks with dev-api hosts (#8574).

Made-with: Cursor
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants