pub struct Vault {
pub address: VaultAddress,
pub catalog_vault_id: CatalogVaultId,
pub created_at: DateTime<Utc>,
pub fee_recipient_address: VaultFeeRecipientAddress,
pub metrics: Option<VaultMetrics>,
pub network: LendNetwork,
pub performance_fee_bps: i64,
pub status: VaultStatus,
pub underlying_asset: Asset,
pub vault_id: VaultId,
}Expand description
A vault created on top of a catalog vault.
JSON schema
{
"description": "A vault created on top of a catalog vault.",
"type": "object",
"required": [
"address",
"catalogVaultId",
"createdAt",
"feeRecipientAddress",
"network",
"performanceFeeBps",
"status",
"underlyingAsset",
"vaultId"
],
"properties": {
"address": {
"description": "The 0x-prefixed onchain address of the vault. The address is deterministic and known at creation; the vault deploys at this address once the deployment user operation is included onchain.",
"examples": [
"0x15966F1582CAEFB56CDB4Fba1dC622E41F2Ad33D"
],
"type": "string",
"pattern": "^0x[a-fA-F0-9]{40}$"
},
"catalogVaultId": {
"$ref": "#/components/schemas/CatalogVaultId"
},
"createdAt": {
"description": "The time the vault was created, in RFC 3339 format.",
"examples": [
"2026-09-15T15:39:37Z"
],
"type": "string",
"format": "date-time"
},
"feeRecipientAddress": {
"description": "The 0x-prefixed address that receives the vault's performance fees.",
"examples": [
"0x742d35Cc6634C0532925a3b844Bc454e4438f44e"
],
"type": "string",
"pattern": "^0x[a-fA-F0-9]{40}$"
},
"metrics": {
"description": "The vault's current metrics. Only present once at least one metrics snapshot has been observed for the vault.",
"examples": [
{
"apyBps": 500,
"apyUpdatedAt": "2026-09-22T00:00:00Z",
"tvl": "1000",
"tvlUpdatedAt": "2026-09-22T00:00:00Z"
}
],
"allOf": [
{
"$ref": "#/components/schemas/VaultMetrics"
}
]
},
"network": {
"$ref": "#/components/schemas/LendNetwork"
},
"performanceFeeBps": {
"description": "Your performance fee, in basis points. CDP charges an additional fee equal to currently 10% (1000 bps) of your fee.",
"examples": [
2000
],
"type": "integer",
"maximum": 5000.0,
"minimum": 0.0
},
"status": {
"$ref": "#/components/schemas/VaultStatus"
},
"underlyingAsset": {
"description": "The symbol of the vault's underlying asset.",
"examples": [
"usdc"
],
"allOf": [
{
"$ref": "#/components/schemas/Asset"
}
]
},
"vaultId": {
"$ref": "#/components/schemas/VaultId"
}
}
}Fields§
§address: VaultAddressThe 0x-prefixed onchain address of the vault. The address is deterministic and known at creation; the vault deploys at this address once the deployment user operation is included onchain.
catalog_vault_id: CatalogVaultId§created_at: DateTime<Utc>The time the vault was created, in RFC 3339 format.
fee_recipient_address: VaultFeeRecipientAddressThe 0x-prefixed address that receives the vault’s performance fees.
metrics: Option<VaultMetrics>The vault’s current metrics. Only present once at least one metrics snapshot has been observed for the vault.
network: LendNetwork§performance_fee_bps: i64Your performance fee, in basis points. CDP charges an additional fee equal to currently 10% (1000 bps) of your fee.
status: VaultStatus§underlying_asset: AssetThe symbol of the vault’s underlying asset.
vault_id: VaultIdImplementations§
Trait Implementations§
Source§impl<'de> Deserialize<'de> for Vault
impl<'de> Deserialize<'de> for Vault
Source§fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
Deserialize this value from the given Serde deserializer. Read more
Auto Trait Implementations§
impl Freeze for Vault
impl RefUnwindSafe for Vault
impl Send for Vault
impl Sync for Vault
impl Unpin for Vault
impl UnsafeUnpin for Vault
impl UnwindSafe for Vault
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more