IPORVaultMetadata

Documentation for eth_defi.erc_4626.vault_protocol.ipor.offchain_metadata.IPORVaultMetadata Python class.

class IPORVaultMetadata

Bases: TypedDict

Metadata about an IPOR vault from the offchain customisation API.

Fetched from api.ipor.io/fusion/vaults-customization-list. Discovered by reverse-engineering the IPOR Fusion React SPA JavaScript bundles.

The customisation endpoint returns a flat JSON array. Each entry corresponds to a vault that has had its metadata edited by the vault’s atomist (operator). Not all IPOR vaults have customisation entries — only those whose atomists have set descriptions via the IPOR frontend.

Reference:

Attributes summary

chain_id

EVM chain ID (e.g.

vault_address

Vault contract address (checksummed)

description

Full vault strategy description set by the atomist.

vault_logo_url

URL to the vault logo image on IPOR's API.

curator_name

Optional atomist/curator display name from the IPOR customisation API.

disclaimer_link

URL to a disclaimer document, if provided by the atomist

prospectus_link

URL to a prospectus document, if provided by the atomist

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.

chain_id: int

EVM chain ID (e.g. 1 for Ethereum, 8453 for Base)

vault_address: str

Vault contract address (checksummed)

description: Optional[str]

Full vault strategy description set by the atomist.

Example: "The Bitcoin Dollar USDC Vault generates yield by acquiring sBTCD, a yield bearing 50% BTC 50% USD collateralized token..."

vault_logo_url: Optional[str]

URL to the vault logo image on IPOR’s API.

Example: "https://api.ipor.io/fusion/vaults-customization/1/0xf8.../vault-logo"

curator_name: Optional[str]

Optional atomist/curator display name from the IPOR customisation API.

disclaimer_link: Optional[str]

URL to a disclaimer document, if provided by the atomist

prospectus_link: Optional[str]

URL to a prospectus document, if provided by the atomist

__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.