Skip to content

chore: update accounts api v6 endpoint response - #9911

Open
bergarces wants to merge 5 commits into
mainfrom
update-accounts-v6-response
Open

chore: update accounts api v6 endpoint response#9911
bergarces wants to merge 5 commits into
mainfrom
update-accounts-v6-response

Conversation

@bergarces

@bergarces bergarces commented Aug 19, 2026

Copy link
Copy Markdown
Contributor

Explanation

Update accounts api v6 endpoint with the new response format (breaking change) and any associated code.

Preview PRs:
MetaMask/metamask-mobile#35091
MetaMask/metamask-extension#45666

References

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

Note

High Risk
Breaking change to Accounts API v6 response types used for token balances and DeFi positions. Incorrect parsing could drop balances or overwrite DeFi state while accounts are still indexing.

Overview
Aligns Accounts API v6 types and consumers with the live flat /v6/multiaccount/balances payload.

@metamask/core-backend (breaking): V6BalancesResponse.accounts is replaced by a flat balances array. Each V6BalanceItem now carries accountId, object (token | defi), and type. processingDefiPositions is a response-level CAIP-10 account-ID list (DeFi rows for those accounts are omitted until indexing finishes). V6AccountBalancesEntry is removed, and protocolIconUrl is optional.

Consumers: AccountsApiDataSource reads token rows from the flat list (object === 'token'). DeFiPositionsControllerV2 polls while processingDefiPositions is non-empty so partial responses cannot wipe still-indexing accounts; groupDeFiPositionsV6 seeds empty lists from the request-account map and defaults a missing protocol icon to ''.

Reviewed by Cursor Bugbot for commit b5a8d2e. Bugbot is set up for automated code reviews on this repo. Configure here.

@bergarces
bergarces requested review from a team as code owners August 19, 2026 15:29
@bergarces
bergarces deployed to default-branch August 19, 2026 15:30 — with GitHub Actions Active
@bergarces

Copy link
Copy Markdown
Contributor Author

@metamaskbot publish-preview

4 similar comments
@bergarces

Copy link
Copy Markdown
Contributor Author

@metamaskbot publish-preview

@bergarces

Copy link
Copy Markdown
Contributor Author

@metamaskbot publish-preview

@bergarces

Copy link
Copy Markdown
Contributor Author

@metamaskbot publish-preview

@bergarces

Copy link
Copy Markdown
Contributor Author

@metamaskbot publish-preview

@cursor cursor Bot left a comment

Copy link
Copy Markdown

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 8d12d6c. Configure here.

Comment thread packages/assets-controllers/devtools/defi-balances-visualizer.html
@bergarces
bergarces force-pushed the update-accounts-v6-response branch from 8d12d6c to c05ed71 Compare August 20, 2026 14:33
@bergarces

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@8.0.0-preview-c05ed7142
@metamask-previews/accounts-controller@39.1.0-preview-c05ed7142
@metamask-previews/address-book-controller@7.1.2-preview-c05ed7142
@metamask-previews/ai-controllers@0.8.0-preview-c05ed7142
@metamask-previews/analytics-controller@2.0.0-preview-c05ed7142
@metamask-previews/analytics-data-regulation-controller@0.0.0-preview-c05ed7142
@metamask-previews/announcement-controller@8.1.0-preview-c05ed7142
@metamask-previews/app-metadata-controller@2.0.1-preview-c05ed7142
@metamask-previews/approval-controller@9.0.2-preview-c05ed7142
@metamask-previews/assets-controller@14.0.0-preview-c05ed7142
@metamask-previews/assets-controllers@111.1.1-preview-c05ed7142
@metamask-previews/authenticated-user-storage@3.0.1-preview-c05ed7142
@metamask-previews/base-controller@9.1.0-preview-c05ed7142
@metamask-previews/base-data-service@0.1.3-preview-c05ed7142
@metamask-previews/bitcoin-regtest-up@1.0.0-preview-c05ed7142
@metamask-previews/bridge-controller@79.3.0-preview-c05ed7142
@metamask-previews/bridge-status-controller@75.2.0-preview-c05ed7142
@metamask-previews/build-utils@3.0.4-preview-c05ed7142
@metamask-previews/chain-agnostic-permission@1.7.0-preview-c05ed7142
@metamask-previews/chomp-api-service@4.0.0-preview-c05ed7142
@metamask-previews/claims-controller@0.6.0-preview-c05ed7142
@metamask-previews/client-controller@1.0.1-preview-c05ed7142
@metamask-previews/client-utils@2.0.2-preview-c05ed7142
@metamask-previews/compliance-controller@2.1.0-preview-c05ed7142
@metamask-previews/composable-controller@12.0.1-preview-c05ed7142
@metamask-previews/config-registry-controller@3.0.0-preview-c05ed7142
@metamask-previews/connectivity-controller@0.3.0-preview-c05ed7142
@metamask-previews/controller-utils@12.3.0-preview-c05ed7142
@metamask-previews/core-backend@8.1.2-preview-c05ed7142
@metamask-previews/delegation-controller@3.0.2-preview-c05ed7142
@metamask-previews/earn-controller@12.2.5-preview-c05ed7142
@metamask-previews/eip-5792-middleware@3.0.5-preview-c05ed7142
@metamask-previews/eip-7702-internal-rpc-middleware@0.1.1-preview-c05ed7142
@metamask-previews/eip1193-permission-middleware@2.0.1-preview-c05ed7142
@metamask-previews/eth-block-tracker@15.0.1-preview-c05ed7142
@metamask-previews/eth-json-rpc-middleware@24.0.0-preview-c05ed7142
@metamask-previews/eth-json-rpc-provider@6.0.1-preview-c05ed7142
@metamask-previews/foundryup@1.0.1-preview-c05ed7142
@metamask-previews/gas-fee-controller@26.3.1-preview-c05ed7142
@metamask-previews/gator-permissions-controller@5.0.1-preview-c05ed7142
@metamask-previews/geolocation-controller@1.0.0-preview-c05ed7142
@metamask-previews/java-tron-up@1.0.0-preview-c05ed7142
@metamask-previews/json-rpc-engine@10.5.0-preview-c05ed7142
@metamask-previews/json-rpc-middleware-stream@8.0.8-preview-c05ed7142
@metamask-previews/keyring-controller@27.1.1-preview-c05ed7142
@metamask-previews/kyc-controller@0.0.0-preview-c05ed7142
@metamask-previews/local-node-utils@1.0.0-preview-c05ed7142
@metamask-previews/logging-controller@9.0.0-preview-c05ed7142
@metamask-previews/message-manager@14.1.2-preview-c05ed7142
@metamask-previews/messenger@2.0.0-preview-c05ed7142
@metamask-previews/messenger-cli@0.2.0-preview-c05ed7142
@metamask-previews/money-account-api-data-service@0.4.0-preview-c05ed7142
@metamask-previews/money-account-balance-service@2.4.1-preview-c05ed7142
@metamask-previews/money-account-controller@1.0.0-preview-c05ed7142
@metamask-previews/money-account-upgrade-controller@3.0.1-preview-c05ed7142
@metamask-previews/money-account-utils@1.1.0-preview-c05ed7142
@metamask-previews/multichain-account-service@13.0.2-preview-c05ed7142
@metamask-previews/multichain-api-middleware@4.0.2-preview-c05ed7142
@metamask-previews/multichain-network-controller@3.2.3-preview-c05ed7142
@metamask-previews/multichain-transactions-controller@7.1.2-preview-c05ed7142
@metamask-previews/name-controller@9.1.2-preview-c05ed7142
@metamask-previews/network-connection-banner-controller@0.2.0-preview-c05ed7142
@metamask-previews/network-controller@35.0.1-preview-c05ed7142
@metamask-previews/network-enablement-controller@6.0.4-preview-c05ed7142
@metamask-previews/notification-services-controller@26.0.1-preview-c05ed7142
@metamask-previews/passkey-controller@3.0.0-preview-c05ed7142
@metamask-previews/permission-controller@13.1.1-preview-c05ed7142
@metamask-previews/permission-log-controller@5.1.0-preview-c05ed7142
@metamask-previews/perps-controller@12.1.0-preview-c05ed7142
@metamask-previews/phishing-controller@17.3.1-preview-c05ed7142
@metamask-previews/platform-api-docs@0.0.0-preview-c05ed7142
@metamask-previews/polling-controller@16.0.9-preview-c05ed7142
@metamask-previews/preferences-controller@23.1.0-preview-c05ed7142
@metamask-previews/profile-metrics-controller@4.0.3-preview-c05ed7142
@metamask-previews/profile-sync-controller@29.0.0-preview-c05ed7142
@metamask-previews/ramps-controller@20.0.0-preview-c05ed7142
@metamask-previews/rate-limit-controller@7.0.1-preview-c05ed7142
@metamask-previews/react-data-query@0.2.2-preview-c05ed7142
@metamask-previews/remote-feature-flag-controller@5.0.0-preview-c05ed7142
@metamask-previews/sample-controllers@5.0.4-preview-c05ed7142
@metamask-previews/seedless-onboarding-controller@10.1.1-preview-c05ed7142
@metamask-previews/selected-network-controller@26.1.6-preview-c05ed7142
@metamask-previews/sentinel-api-service@1.0.0-preview-c05ed7142
@metamask-previews/shield-controller@6.0.0-preview-c05ed7142
@metamask-previews/signature-controller@39.2.9-preview-c05ed7142
@metamask-previews/smart-transactions-controller@25.1.0-preview-c05ed7142
@metamask-previews/snap-account-service@2.1.2-preview-c05ed7142
@metamask-previews/social-controllers@2.7.1-preview-c05ed7142
@metamask-previews/solana-test-validator-up@1.0.0-preview-c05ed7142
@metamask-previews/stellar-quickstart-up@0.0.0-preview-c05ed7142
@metamask-previews/storage-service@1.0.2-preview-c05ed7142
@metamask-previews/subscription-controller@8.0.0-preview-c05ed7142
@metamask-previews/transaction-controller@69.5.2-preview-c05ed7142
@metamask-previews/transaction-pay-controller@26.4.1-preview-c05ed7142
@metamask-previews/user-operation-controller@41.2.8-preview-c05ed7142
@metamask-previews/wallet@11.0.0-preview-c05ed7142
@metamask-previews/wallet-cli@0.0.0-preview-c05ed7142

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.

1 participant