81trust / 100
Live Exchange Rates
by AgentTools in Markets & finance
x402 APIPassing, checked 2 h ago
Live foreign-exchange reference rates from the European Central Bank (via frankfurter.dev): a full rate table against any base currency, or cross-rate conversion of any amount. Refreshed every business day by the ECB, cached one hour. Use this when an agent needs to live ECB reference rates for 30 currencies.
GET https://agenttools-hub.vercel.app/api/v1/live/exchange-rates
Last 30 days
All checks passedSome failedAll failedNot checked
- Uptime
- 100%
- Response time
- 151 ms typical, 151 ms slowest 5%
- Last check
- 2 h ago
- Next check
- any minute now
How to call it
# See the payment challenge (nothing is charged)
curl -i -X GET "https://agenttools-hub.vercel.app/api/v1/live/exchange-rates?base=USD&op=rates"import { wrapFetchWithPayment } from "@x402/fetch";
import { x402Client } from "@x402/core/client";
import { ExactEvmScheme } from "@x402/evm/exact/client";
import { privateKeyToAccount } from "viem/accounts";
const client = new x402Client().register(
"eip155:8453",
new ExactEvmScheme(privateKeyToAccount(process.env.AGENT_KEY)),
);
const pay = wrapFetchWithPayment(fetch, client);
// Not sure it's safe to pay? Preflight it first for $0.005:
// GET https://toolvet.app/api/v1/check?url=https%3A%2F%2Fagenttools-hub.vercel.app%2Fapi%2Fv1%2Flive%2Fexchange-rates
const res = await pay("https://agenttools-hub.vercel.app/api/v1/live/exchange-rates?base=USD&op=rates");
console.log(await res.json());Example input
{
"base": "USD",
"op": "rates"
}Example output
{
"result": {
"answer": "live data — call the API",
"value": null
},
"tool": "exchange-rates"
}Security scan
- No findings. We scan names, descriptions and tool definitions for hidden instructions and other prompt-injection patterns.
Recent checks
| When | Result | HTTP | Time | Price |
|---|---|---|---|---|
| 2 h ago | Passed | 402 | 151 ms | $0.005 |
| 7 h ago | Passed | 402 | 152 ms | $0.005 |