value/v2
packages/core/schema/value-v2.schema.jsonOn this page
value/v2 (11 Nov; META and LOOK: a treasury holds several assets) is value/v1 with a treasury: everything value/v1 says of the map's own token stays as it is, and treasury lists what the map's treasury holds, each asset priced or not, with a total that says what it leaves out. What a map's token is worth in dollars, and how much of it there is (board #91; Elco, 11 Nov: 'monetary estimates of the value of these petals and the stakes and the supply and all of these data that we can put about each community and tokens'): its price from NEAR Intents' 1Click list, its supply from its own chain, and its reading's totals at that price. One per map, named by the map's address, read again to refresh. A token 1Click doesn't price has price null: no price, never a guess.
Fields
| Field | Type or allowed values | Presence in its parent | Description |
|---|---|---|---|
petal |
"value/v2" | Required | |
about |
string | Required | the map, by its address (its card's id) |
asset |
object | Required | what is priced: the asset its reading's holdings name (an EVM token's address in lower case, a Solana mint, NEAR), and its symbol |
asset.id |
string | Required | |
asset.symbol |
string / null | Required | |
price |
choice | Required | dollars for one whole token, as 1Click lists it, or else DefiLlama, or null: no price |
price (variant 1) |
object | Required | |
price (variant 1).usd |
number | Required | |
price (variant 1).source |
string | Required | where the price is from, in a word: 1click (NEAR Intents' list), or defillama (its open prices) for what 1Click doesn't list |
price (variant 1).ref |
string | Required | which asset it is there (1Click's asset id, DefiLlama's chain:address and its confidence), and why when it isn't the token itself (NEAR, priced as wNEAR) |
price (variant 1).at |
string | Required | when its source priced it |
price (variant 2) |
null | Required | |
supply |
choice | Required | how much of it there is, read from its own chain, in whole tokens, or null when the chain didn't say |
supply (variant 1) |
object | Required | |
supply (variant 1).amount |
string | Required | |
supply (variant 1).unit |
string | Required | |
supply (variant 1).source |
"chain" | Required | |
supply (variant 1).ref |
string | Required | the call it answered: totalSupply() on eip155:1:0x…, ft_total_supply on near:mainnet:…, getTokenSupply on solana:…, NEAR's total supply at a block |
supply (variant 1).at |
string | Required | |
supply (variant 2) |
null | Required | |
snapshot |
choice | Required | the reading its totals are of: the map's newest when it was read |
snapshot (variant 1) |
string | Required | |
snapshot (variant 2) |
null | Required | |
measure |
string / null | Required | the reading's own measure, the one its flower draws by default, or null |
totals |
array | Required | each amount measure of the reading held in this asset: its sum, and that at the price, or null with no price |
totals[] |
object | Required | |
totals[].measure |
string | Required | |
totals[].unit |
string | Required | |
totals[].amount |
string | Required | |
totals[].usd |
choice | Required | |
totals[].usd (variant 1) |
string | Required | |
totals[].usd (variant 2) |
null | Required | |
read_at |
string | Required | |
treasury |
choice | Required | what the map's treasury holds, or null when no treasury was read: each asset, and the total of the priced ones |
treasury (variant 1) |
null | Required | |
treasury (variant 2) |
object | Required | |
treasury (variant 2).items |
array | Required | |
treasury (variant 2).items[] |
object | Required | |
treasury (variant 2).items[].kind |
"treasury asset" | Required | what the item is, in a word list open to more: treasury asset |
treasury (variant 2).items[].accounts |
array | Optional | the treasury's accounts its amount is summed over (CAIP-10), when the reading names them |
treasury (variant 2).items[].accounts[] |
string | Required | |
treasury (variant 2).items[].asset |
object | Required | what is priced: the asset its reading's holdings name (an EVM token's address in lower case, a Solana mint, NEAR), and its symbol |
treasury (variant 2).items[].asset.id |
string | Required | |
treasury (variant 2).items[].asset.symbol |
string / null | Required | |
treasury (variant 2).items[].amount |
string | Required | how much, in whole units, as decimal text |
treasury (variant 2).items[].price |
choice | Required | dollars for one whole token, as 1Click lists it, or else DefiLlama, or null: no price |
treasury (variant 2).items[].price (variant 1) |
object | Required | |
treasury (variant 2).items[].price (variant 1).usd |
number | Required | |
treasury (variant 2).items[].price (variant 1).source |
string | Required | where the price is from, in a word: 1click (NEAR Intents' list), or defillama (its open prices) for what 1Click doesn't list |
treasury (variant 2).items[].price (variant 1).ref |
string | Required | which asset it is there (1Click's asset id, DefiLlama's chain:address and its confidence), and why when it isn't the token itself (NEAR, priced as wNEAR) |
treasury (variant 2).items[].price (variant 1).at |
string | Required | when its source priced it |
treasury (variant 2).items[].price (variant 2) |
null | Required | |
treasury (variant 2).items[].usd |
choice | Required | the amount at the price, as decimal text, or null with no price |
treasury (variant 2).items[].usd (variant 1) |
string | Required | |
treasury (variant 2).items[].usd (variant 2) |
null | Required | |
treasury (variant 2).items[].source |
object | Required | where the amount was read: the reading (its snapshot's sha256) or the call, and when |
treasury (variant 2).items[].source.snapshot |
string | Optional | |
treasury (variant 2).items[].source.ref |
string | Optional | |
treasury (variant 2).items[].source.at |
string | Required | |
treasury (variant 2).items[].source (variant 1) |
object | Required | |
treasury (variant 2).items[].source (variant 1).snapshot |
string | Required | |
treasury (variant 2).items[].source (variant 2) |
object | Required | |
treasury (variant 2).items[].source (variant 2).ref |
string | Required | |
treasury (variant 2).total |
object | Required | |
treasury (variant 2).total.usd |
string | Required | the priced items' sum, as decimal text: the unpriced ones aren't in it |
treasury (variant 2).total.priced |
integer | Required | |
treasury (variant 2).total.unpriced |
integer | Required |
Examples
value.v2.json
{
"petal": "value/v2",
"about": "eip155:42161:0x912ce59144191c1204e64559fe8253a0e49e6548",
"asset": {
"id": "0x912ce59144191c1204e64559fe8253a0e49e6548",
"symbol": "ARB"
},
"price": null,
"supply": {
"amount": "9999998977.610261816650915825",
"unit": "ARB",
"source": "chain",
"ref": "https://arb1.arbitrum.io/rpc totalSupply() on eip155:42161:0x912ce59144191c1204e64559fe8253a0e49e6548 at 523318643",
"at": "2026-11-11T15:42:57Z"
},
"snapshot": "f8d92bf5b02ec3f142fb9559320dd71fbf714641260459a74dd442976762d67e",
"measure": "delegated_voting_power",
"totals": [
{
"measure": "delegated_voting_power",
"unit": "ARB",
"amount": "5028026051.018980666435771792",
"usd": null
}
],
"treasury": {
"items": [
{
"kind": "treasury asset",
"accounts": [
"eip155:42161:0xf3fc178157fb3c87548baa86f9d24ba38e649b58",
"eip155:42161:0xbfc1feca8b09a5c5d3effe7429ebe24b9c09ef58"
],
"asset": {
"id": "0x912ce59144191c1204e64559fe8253a0e49e6548",
"symbol": "ARB"
},
"amount": "2556141991.50965632397522147",
"price": {
"usd": 0.161301,
"source": "1click",
"ref": "https://1click.chaindefuser.com/v0/tokens assetId=nep141:arb-0x912ce59144191c1204e64559fe8253a0e49e6548.omft.near; exact Arbitrum asset match; price and balance timestamps differ",
"at": "2026-11-11T16:04:01.048Z"
},
"usd": "412308259.37249907471352719833247",
"source": {
"snapshot": "19c3c2b3a46f83f6722ae2860afc71121eb83bb7abfb0e1bdd5782778cb0df1e",
"at": "2026-11-11T16:11:52Z"
}
},
{
"kind": "treasury asset",
"accounts": [
"eip155:42161:0xf3fc178157fb3c87548baa86f9d24ba38e649b58",
"eip155:42161:0xbfc1feca8b09a5c5d3effe7429ebe24b9c09ef58"
],
"asset": {
"id": "native:ETH",
"symbol": "ETH"
},
"amount": "1585.100088995280087488",
"price": {
"usd": 2074.07,
"source": "1click",
"ref": "https://1click.chaindefuser.com/v0/tokens assetId=nep141:arb.omft.near; exact Arbitrum asset match; price and balance timestamps differ",
"at": "2026-11-11T16:04:01.048Z"
},
"usd": "3287608.54158244057105623616",
"source": {
"snapshot": "19c3c2b3a46f83f6722ae2860afc71121eb83bb7abfb0e1bdd5782778cb0df1e",
"at": "2026-11-11T16:11:52Z"
}
},
{
"kind": "treasury asset",
"accounts": [
"eip155:42161:0xf3fc178157fb3c87548baa86f9d24ba38e649b58",
"eip155:42161:0xbfc1feca8b09a5c5d3effe7429ebe24b9c09ef58"
],
"asset": {
"id": "0xaf88d065e77c8cc2239327c5edb3a432268e5831",
"symbol": "USDC"
},
"amount": "5.892",
"price": {
"usd": 0.999578,
"source": "1click",
"ref": "https://1click.chaindefuser.com/v0/tokens assetId=nep141:arb-0xaf88d065e77c8cc2239327c5edb3a432268e5831.omft.near; exact Arbitrum asset match; price and balance timestamps differ",
"at": "2026-11-11T16:04:01.048Z"
},
"usd": "5.889513576",
"source": {
"snapshot": "19c3c2b3a46f83f6722ae2860afc71121eb83bb7abfb0e1bdd5782778cb0df1e",
"at": "2026-11-11T16:11:52Z"
}
}
],
"total": {
"usd": "415595873.80",
"priced": 3,
"unpriced": 0
}
},
"read_at": "2026-11-11T16:11:52Z"
}
Full schema
{
"$schema": "https://json-schema.org/draft/2020-12/schema",
"$id": "urn:petal:schema:value:v2",
"title": "Petal value v2",
"description": "value/v2 (11 Nov; META and LOOK: a treasury holds several assets) is value/v1 with a treasury: everything value/v1 says of the map's own token stays as it is, and treasury lists what the map's treasury holds, each asset priced or not, with a total that says what it leaves out. What a map's token is worth in dollars, and how much of it there is (board #91; Elco, 11 Nov: 'monetary estimates of the value of these petals and the stakes and the supply and all of these data that we can put about each community and tokens'): its price from NEAR Intents' 1Click list, its supply from its own chain, and its reading's totals at that price. One per map, named by the map's address, read again to refresh. A token 1Click doesn't price has price null: no price, never a guess.",
"type": "object",
"additionalProperties": false,
"required": [
"petal",
"about",
"asset",
"price",
"supply",
"snapshot",
"measure",
"totals",
"read_at",
"treasury"
],
"properties": {
"petal": {
"const": "value/v2"
},
"about": {
"description": "the map, by its address (its card's id)",
"type": "string",
"minLength": 3
},
"asset": {
"description": "what is priced: the asset its reading's holdings name (an EVM token's address in lower case, a Solana mint, NEAR), and its symbol",
"type": "object",
"additionalProperties": false,
"required": [
"id",
"symbol"
],
"properties": {
"id": {
"type": "string",
"minLength": 1
},
"symbol": {
"type": [
"string",
"null"
]
}
}
},
"price": {
"description": "dollars for one whole token, as 1Click lists it, or else DefiLlama, or null: no price",
"oneOf": [
{
"type": "object",
"additionalProperties": false,
"required": [
"usd",
"source",
"ref",
"at"
],
"properties": {
"usd": {
"type": "number",
"minimum": 0
},
"source": {
"description": "where the price is from, in a word: 1click (NEAR Intents' list), or defillama (its open prices) for what 1Click doesn't list",
"type": "string",
"pattern": "^[a-z0-9_-]+$"
},
"ref": {
"description": "which asset it is there (1Click's asset id, DefiLlama's chain:address and its confidence), and why when it isn't the token itself (NEAR, priced as wNEAR)",
"type": "string",
"minLength": 1
},
"at": {
"description": "when its source priced it",
"type": "string",
"format": "date-time"
}
}
},
{
"type": "null"
}
]
},
"supply": {
"description": "how much of it there is, read from its own chain, in whole tokens, or null when the chain didn't say",
"oneOf": [
{
"type": "object",
"additionalProperties": false,
"required": [
"amount",
"unit",
"source",
"ref",
"at"
],
"properties": {
"amount": {
"$ref": "#/$defs/decimal"
},
"unit": {
"type": "string"
},
"source": {
"const": "chain"
},
"ref": {
"description": "the call it answered: totalSupply() on eip155:1:0x…, ft_total_supply on near:mainnet:…, getTokenSupply on solana:…, NEAR's total supply at a block",
"type": "string",
"minLength": 1
},
"at": {
"type": "string",
"format": "date-time"
}
}
},
{
"type": "null"
}
]
},
"snapshot": {
"description": "the reading its totals are of: the map's newest when it was read",
"oneOf": [
{
"type": "string",
"pattern": "^[0-9a-f]{64}$"
},
{
"type": "null"
}
]
},
"measure": {
"description": "the reading's own measure, the one its flower draws by default, or null",
"type": [
"string",
"null"
]
},
"totals": {
"description": "each amount measure of the reading held in this asset: its sum, and that at the price, or null with no price",
"type": "array",
"items": {
"type": "object",
"additionalProperties": false,
"required": [
"measure",
"unit",
"amount",
"usd"
],
"properties": {
"measure": {
"type": "string",
"minLength": 1
},
"unit": {
"type": "string"
},
"amount": {
"$ref": "#/$defs/decimal"
},
"usd": {
"oneOf": [
{
"$ref": "#/$defs/decimal"
},
{
"type": "null"
}
]
}
}
}
},
"read_at": {
"type": "string",
"format": "date-time"
},
"treasury": {
"description": "what the map's treasury holds, or null when no treasury was read: each asset, and the total of the priced ones",
"oneOf": [
{
"type": "null"
},
{
"type": "object",
"additionalProperties": false,
"required": [
"items",
"total"
],
"properties": {
"items": {
"type": "array",
"items": {
"type": "object",
"additionalProperties": false,
"required": [
"kind",
"asset",
"amount",
"price",
"usd",
"source"
],
"properties": {
"kind": {
"description": "what the item is, in a word list open to more: treasury asset",
"enum": [
"treasury asset"
]
},
"accounts": {
"description": "the treasury's accounts its amount is summed over (CAIP-10), when the reading names them",
"type": "array",
"items": {
"type": "string",
"minLength": 3
}
},
"asset": {
"description": "what is priced: the asset its reading's holdings name (an EVM token's address in lower case, a Solana mint, NEAR), and its symbol",
"type": "object",
"additionalProperties": false,
"required": [
"id",
"symbol"
],
"properties": {
"id": {
"type": "string",
"minLength": 1
},
"symbol": {
"type": [
"string",
"null"
]
}
}
},
"amount": {
"description": "how much, in whole units, as decimal text",
"$ref": "#/$defs/decimal"
},
"price": {
"description": "dollars for one whole token, as 1Click lists it, or else DefiLlama, or null: no price",
"oneOf": [
{
"type": "object",
"additionalProperties": false,
"required": [
"usd",
"source",
"ref",
"at"
],
"properties": {
"usd": {
"type": "number",
"minimum": 0
},
"source": {
"description": "where the price is from, in a word: 1click (NEAR Intents' list), or defillama (its open prices) for what 1Click doesn't list",
"type": "string",
"pattern": "^[a-z0-9_-]+$"
},
"ref": {
"description": "which asset it is there (1Click's asset id, DefiLlama's chain:address and its confidence), and why when it isn't the token itself (NEAR, priced as wNEAR)",
"type": "string",
"minLength": 1
},
"at": {
"description": "when its source priced it",
"type": "string",
"format": "date-time"
}
}
},
{
"type": "null"
}
]
},
"usd": {
"description": "the amount at the price, as decimal text, or null with no price",
"oneOf": [
{
"$ref": "#/$defs/decimal"
},
{
"type": "null"
}
]
},
"source": {
"description": "where the amount was read: the reading (its snapshot's sha256) or the call, and when",
"type": "object",
"additionalProperties": false,
"required": [
"at"
],
"properties": {
"snapshot": {
"type": "string",
"pattern": "^[0-9a-f]{64}$"
},
"ref": {
"type": "string",
"minLength": 1
},
"at": {
"type": "string",
"format": "date-time"
}
},
"anyOf": [
{
"properties": {
"snapshot": {
"type": "string"
}
},
"required": [
"snapshot"
]
},
{
"properties": {
"ref": {
"type": "string"
}
},
"required": [
"ref"
]
}
]
}
}
}
},
"total": {
"type": "object",
"additionalProperties": false,
"required": [
"usd",
"priced",
"unpriced"
],
"properties": {
"usd": {
"description": "the priced items' sum, as decimal text: the unpriced ones aren't in it",
"$ref": "#/$defs/decimal"
},
"priced": {
"type": "integer",
"minimum": 0
},
"unpriced": {
"type": "integer",
"minimum": 0
}
}
}
}
}
]
}
},
"$defs": {
"decimal": {
"type": "string",
"pattern": "^[0-9]+(\\.[0-9]+)?(e[-+]?[0-9]+)?$"
}
}
}