AVAX / USD, spot
by Signalith Lab · 1 source · a report every 1 h
Signed by Signalith from the provider’s API
Per call
$0.005
sold in packs
Smallest payment
$0.20
what Signalith settles on chain
A report every
1 h
from 1 source
Uptime, 30 days
100.00%
measured by Signalith
Calls, last 30 days
0
Endpoint
GET /v1/feeds/lumoracle/avax-usd-spot/latest
Bought a pack on this feed? Your code spends it with one header. Make an API key, then use the first example below.
- One call
- $0.005, sold in packs only
- Pack of 100
- $0.50, valid 30 days
- Pack of 1,000
- $5.00, valid 30 days
- History page
- 5 calls
- Pays
- 0xe240cF24…EfDe4C92
API key
# For a pack you already bought. Make a key in the dashboard, under API keys. curl https://api.signalith.xyz/gw/v1/feeds/lumoracle/avax-usd-spot/latest \ -H "Authorization: Bearer <your API key>" # The calls left in your packs. curl https://api.signalith.xyz/gw/v1/packs \ -H "Authorization: Bearer <your API key>"
HTTP
# 1. Ask. The answer is 402 with the price, in the PAYMENT-REQUIRED header. curl -i https://api.signalith.xyz/gw/v1/feeds/lumoracle/avax-usd-spot/latest # 2. Sign the USDG authorization it describes, then ask again. curl https://api.signalith.xyz/gw/v1/feeds/lumoracle/avax-usd-spot/latest \ -H "PAYMENT-SIGNATURE: <base64 payment payload>"
TypeScript
import {Signalith} from '@signalith/sdk'
const signalith = new Signalith({gatewayUrl: 'https://api.signalith.xyz/gw', account, maxSpendUsdg: 5_000_000n})
const report = await signalith.read('lumoracle/avax-usd-spot') // pays, or spends a pack, by itself
report.value // 3 decimals, a bigint
report.checks // already verified: signer, kind, decimals, payload, ageTypeScript, with an API key
import {Signalith} from '@signalith/sdk'
// No wallet on the server: the key spends calls you bought ahead and cannot buy more.
const signalith = new Signalith({gatewayUrl: 'https://api.signalith.xyz/gw', apiKey: process.env.SIGNALITH_API_KEY})
const report = await signalith.read('lumoracle/avax-usd-spot') // one call from your pack, nothing signed
report.value // 3 decimals, a bigint
report.callsLeft // what the pack still holdsSolidity
import {SignalithConsumer} from "@signalith/contracts/src/SignalithConsumer.sol";
contract Example is SignalithConsumer {
bytes32 constant AVAX_USD_SPOT = 0x3302cd1947c776ffbb6148e2b2fdda74413d21a17b61aa06086bbf0d7c2a3d7b;
function settle(bytes calldata report, bytes calldata sig) external {
int256 value = _readOnce(AVAX_USD_SPOT, report, sig, Policy({
maxAgeSec: 7200,
allowedKinds: KIND_MANAGED,
minValue: 0,
maxValue: type(int256).max
}));
// use value, scaled by 3 decimals
}
}Agents (MCP)
{
"mcpServers": {
"signalith": {
"command": "npx",
"args": ["-y", "@signalith/mcp"],
"env": {"SIGNALITH_GATEWAY_URL": "https://api.signalith.xyz/gw", "SIGNALITH_PRIVATE_KEY": "<a wallet made for this agent>", "SIGNALITH_MAX_SPEND_USDG": "1000000"}
}
}
}Agents (MCP), with an API key
{
"mcpServers": {
"signalith": {
"command": "npx",
"args": ["-y", "@signalith/mcp"],
"env": {"SIGNALITH_GATEWAY_URL": "https://api.signalith.xyz/gw", "SIGNALITH_API_KEY": "<your API key>"}
}
}
}Response schema
{
"type": "object",
"title": "AVAX / USD, spot",
"$schema": "https://json-schema.org/draft/2020-12/schema",
"required": [
"value",
"observedAtMs"
],
"properties": {
"value": {
"type": "string"
},
"observedAtMs": {
"type": "string"
}
}
}