resolve_token_holder_price_reference
Resolve a token's volume currency expression for token-holder triggers. Automatically checks if token is listed or prompts for stablecoin/variable and decimals.
Instructions
Resolves context.volume_currency_expression for token-holder triggers (check + assign). Step 1: pass token_address and chain_identifier (or chain_id). If the token is already in Fuul price references → status listed_use_same_address, use token_address as volume_currency_expression. Step 2: if status needs_user_input, ask: stablecoin or variable? decimals 6 or 18? Then call again with token_kind and decimals. Step 3: status resolved returns assigned volume_currency_expression (e.g. stablecoin + 18 decimals on Ethereum → DAI). Use that in create_trigger. create_trigger rejects unlisted tokens when volume_currency_expression equals token_address. Example listed: {"token_address":"0x6b175474e89094c44da98b954eedeac495271d0f","chain_identifier":"ethereum"}. Example assign: {"token_address":"0xa3931d71877C0E7a3148CB7Eb4463524FEc27fbD","chain_identifier":"ethereum","token_kind":"stablecoin","decimals":18}.
Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| token_address | Yes | Held token contract address (EVM 0x... or chain-native mint). | |
| chain_identifier | No | Chain for currencies API (e.g. "ethereum"). Prefer with list_chains. | |
| chain_id | No | EVM chain_id alternative (e.g. 1 → ethereum). Used when chain_identifier omitted. | |
| token_kind | No | Required when token is not listed: stablecoin or variable-price. | |
| decimals | No | Required when token is not listed: token decimals (6 or 18). |