Skip to main content
Switches a single asset to a strategy and computes the protocol list that goes with it, in one call.
updateUserProfile stores the strategy but does not compute a protocol list. Used on its own it leaves the asset with an empty whitelist and nothing to deploy into — with no error anywhere. Use this method instead whenever you change an asset’s strategy.
This is also how you change the strategy of an existing account: depositFunds ignores its strategy argument after the account’s first deposit.

Signature

Parameters

Chains already enabled for the asset are kept, so this parameter cannot be used to disable a chain. Passing a chain the asset does not exist on throws before anything is written.

What it does

  1. Resolves the protocols that support the asset, on the requested chains, under the requested strategy.
  2. Drops those with no pool available for that asset and strategy.
  3. Persists strategy, chains and protocols together.

Returns

The updated profile for that asset, same shape as getUserDetails.

Example

Enable NVDAc

NVDAc lives only in protocols with delayed withdrawals, so it requires yieldmaxxing. Chains default to Base, the only chain it exists on.

Recompute a protocol list without changing strategy

Useful after new pools or protocols go live.