NetIntel
GET netintel.dev/currency-exchange/convert
Why an agent can trust this route.
Sonar evidence is advisory. Paid delivery is shown as verified only when paid probes are available; otherwise route estimates use the unpaid handshake as a clearly labeled proxy.
Observed outcomes
Convert any amount between 32 fiat currencies (live European Central Bank rates) and major cryptocurrencies (BTC, ETH, USDC, SOL, ICP, CELO and more, live Coinbase spot rates) — fiat↔fiat, crypto↔fiat, and crypto↔crypto all work. Returns converted amount, exchange rate, inverse rate, rate date, and rate source so agents can price and invoice across fiat and crypto without a paid forex API.
Resource: netintel.dev/currency-exchange/convert
Network: eip155:8453, solana:5eykt4UsFv8P8NJdTREpY1vzqKqZKvdp · Asset: 0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913 · Pay to: 0xdaDc335482AD545296Fd7b28518A251fFCbEb9Df
Payment methods: — · Last validation: 2026-10-15 11:29:15.674+00
{
"input": {
"type": "object",
"required": [
"type",
"method"
],
"properties": {
"type": {
"type": "string",
"const": "http"
},
"method": {
"enum": [
"GET"
],
"type": "string"
},
"queryParams": {
"type": "object",
"required": [
"from",
"to"
],
"properties": {
"to": {
"type": "string",
"description": "Target — ISO 4217 fiat code (EUR) or crypto ticker (BTC, ETH)"
},
"date": {
"type": "string",
"description": "YYYY-MM-DD historical rate (fiat only). Default: latest"
},
"from": {
"type": "string",
"description": "ISO 4217 source currency code (e.g. USD)"
},
"amount": {
"type": "number",
"description": "Amount to convert (default 1)"
}
}
}
},
"additionalProperties": false
},
"output": {
"type": "object",
"required": [
"type"
],
"properties": {
"type": {
"type": "string"
},
"example": {
"type": "object",
"properties": {
"to": {
"type": "string"
},
"from": {
"type": "string"
},
"grade": {
"type": "string"
},
"score": {
"type": "number"
},
"amount": {
"type": "number"
},
"source": {
"type": "string",
"description": "ecb | coinbase | coingecko | same"
},
"findings": {
"type": "array"
},
"rate_date": {
"type": "string"
},
"inverse_rate": {
"type": "number"
},
"exchange_rate": {
"type": "number"
},
"is_historical": {
"type": "boolean"
},
"converted_amount": {
"type": "number"
}
}
}
}
},
"paymentRequirements": [
{
"raw": {
"asset": "0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913",
"extra": {
"name": "USD Coin",
"version": "2"
},
"payTo": "0xdaDc335482AD545296Fd7b28518A251fFCbEb9Df",
"amount": "10000",
"scheme": "exact",
"network": "eip155:8453",
"maxTimeoutSeconds": 300
},
"asset": "0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913",
"payTo": "0xdaDc335482AD545296Fd7b28518A251fFCbEb9Df",
"scheme": "exact",
"network": "eip155:8453",
"amountAtomic": "10000"
},
{
"raw": {
"asset": "EPjFWdd5AufqSSqeM2qN1xzybapC8G4wEGGkZwyTDt1v",
"extra": {
"feePayer": "BFK9TLC3edb13K6v4YyH3DwPb5DSUpkWvb7XnqCL9b4F"
},
"payTo": "8FVeybWnB4dYrxTuPK7WzFZNAiEcFVaDLFnKpRwVGr5s",
"amount": "10000",
"scheme": "exact",
"network": "solana:5eykt4UsFv8P8NJdTREpY1vzqKqZKvdp",
"maxTimeoutSeconds": 300
},
"asset": "EPjFWdd5AufqSSqeM2qN1xzybapC8G4wEGGkZwyTDt1v",
"payTo": "8FVeybWnB4dYrxTuPK7WzFZNAiEcFVaDLFnKpRwVGr5s",
"scheme": "exact",
"network": "solana:5eykt4UsFv8P8NJdTREpY1vzqKqZKvdp",
"amountAtomic": "10000"
}
]
}Source catalog records are retained separately from live endpoint observations. Sonar score, uptime, and latency are advisory metrics. CDP indexing is not inferred from validation.