Vaults V1

User V1 vault position performance

Realized + unrealized earnings of a user's Morpho Vault V1 position. Uses the average_cost accounting method: per-user share-price differentials are accumulated against the running share balance, with transfers netted into the same balance so that earnings reflect the user's economic exposure rather than their on-chain transaction count. return_on_capital is the time-weighted ratio of net earnings to capital deployed over the holding period (non-annualised).

Vault selector example: 1:0x23f5E9c35820f4baB695Ac1F19c203cC3f8e1e11 (format: <chain_id>:<vault_address>; replace with the target vault).

GET
/v0/vaults-v1/{vault-selector}/users/{user-address}/position/performance

Path Parameters

user-address*string

Position owner address. Example: 0xabcdefabcdefabcdefabcdefabcdefabcdefabcd.

Formataddress
vault-selector*string

Selector formatted as <chain_id>:<vault_address>. Example: 1:0x23f5E9c35820f4baB695Ac1F19c203cC3f8e1e11.

Format<chain_id>:<vault_address>

Response Body

application/json

BASE_URL="${CORE_REST_BASE_URL:-https://api.morpho.org}"MORPHO_API_KEY="<MORPHO_API_KEY>"VAULT_SELECTOR="<chain_id>:<vault_address>"USER_ADDRESS="<user_address>"curl -sS "${BASE_URL}/v0/vaults-v1/${VAULT_SELECTOR}/users/${USER_ADDRESS}/position/performance" \  -H "accept: application/json" \  -H "x-api-key: ${MORPHO_API_KEY}"
{
  "data": {
    "accounting_method": "average_cost",
    "chain_id": 1,
    "last_indexed_block": "string",
    "net_earnings_assets": "string",
    "return_on_capital": 0,
    "user_address": "string",
    "vault_address": "string"
  }
}