LagoonVaultMetadata

Documentation for eth_defi.erc_4626.vault_protocol.lagoon.offchain_metadata.LagoonVaultMetadata Python class.

class LagoonVaultMetadata

Bases: TypedDict

Metadata about a Lagoon vault from offchain source.

Fetched from the Lagoon web app API at app.lagoon.finance. Discovered by reverse-engineering the Lagoon Next.js JavaScript bundles.

  • Listing endpoint: GET /api/vaults?chainId={chainId}&pageIndex=0&pageSize=100

  • Detail endpoint: GET /api/vault?chainId={chainId}&address={address}

The detail endpoint returns description and shortDescription fields that are not available in the listing endpoint.

Attributes summary

name

Vault name from Lagoon's app, e.g.

description

Full vault strategy description.

short_description

One-liner vault summary.

logo_url

Vault share token logo URL on Lagoon's GCS bucket.

transparency_url

URL to an external transparency/reporting page, if provided by the curator

average_settlement

Average settlement time in seconds (e.g.

curators

List of curators managing this vault

Methods summary

__init__(*args, **kwargs)

clear()

Remove all items from the dict.

copy()

Return a shallow copy of the dict.

fromkeys([value])

Create a new dictionary with keys from iterable and values set to value.

get(key[, default])

Return the value for key if key is in the dictionary, else default.

items()

Return a set-like object providing a view on the dict's items.

keys()

Return a set-like object providing a view on the dict's keys.

pop(k[,d])

If the key is not found, return the default if given; otherwise, raise a KeyError.

popitem()

Remove and return a (key, value) pair as a 2-tuple.

setdefault(key[, default])

Insert key with a value of default if key is not in the dictionary.

update([E, ]**F)

If E is present and has a .keys() method, then does: for k in E.keys(): D[k] = E[k] If E is present and lacks a .keys() method, then does: for k, v in E: D[k] = v In either case, this is followed by: for k in F: D[k] = F[k]

values()

Return an object providing a view on the dict's values.

name: str

Vault name from Lagoon’s app, e.g. RockSolid rETH Vault

description: Optional[str]

Full vault strategy description.

Example: RockSolid's rETH Vault maximizes rETH-based returns by allocating it across DeFi protocols like AAVE and Morpho...

short_description: Optional[str]

One-liner vault summary.

Example: Our rETH vault both monitors for the latest opportunities, monitors funding rates to ensure optimal allocations...

logo_url: Optional[str]

Vault share token logo URL on Lagoon’s GCS bucket.

Example: https://storage.googleapis.com/lagoon-logos/shares/rocketh

transparency_url: Optional[str]

URL to an external transparency/reporting page, if provided by the curator

average_settlement: Optional[int]

Average settlement time in seconds (e.g. 86400 for 1 day)

curators: list[eth_defi.erc_4626.vault_protocol.lagoon.offchain_metadata.LagoonCuratorMetadata]

List of curators managing this vault

__init__(*args, **kwargs)
__new__(**kwargs)
clear()

Remove all items from the dict.

copy()

Return a shallow copy of the dict.

fromkeys(value=None, /)

Create a new dictionary with keys from iterable and values set to value.

get(key, default=None, /)

Return the value for key if key is in the dictionary, else default.

items()

Return a set-like object providing a view on the dict’s items.

keys()

Return a set-like object providing a view on the dict’s keys.

pop(k[, d]) v, remove specified key and return the corresponding value.

If the key is not found, return the default if given; otherwise, raise a KeyError.

popitem()

Remove and return a (key, value) pair as a 2-tuple.

Pairs are returned in LIFO (last-in, first-out) order. Raises KeyError if the dict is empty.

setdefault(key, default=None, /)

Insert key with a value of default if key is not in the dictionary.

Return the value for key if key is in the dictionary, else default.

update([E, ]**F) None.  Update D from mapping/iterable E and F.

If E is present and has a .keys() method, then does: for k in E.keys(): D[k] = E[k] If E is present and lacks a .keys() method, then does: for k, v in E: D[k] = v In either case, this is followed by: for k in F: D[k] = F[k]

values()

Return an object providing a view on the dict’s values.