FX reference rates
$0.01USDC · per call
Latest European Central Bank reference rates for one base currency against a list of symbols. Sourced from the ECB, updated on publication days around 16:00 CET.
Only charged when the job succeeds.
What to send
- baseRequired · Text
- ISO 4217 base currency, e.g. USD
- symbolsRequired · Text
- Comma-separated target currencies, e.g. EUR,GBP
A guide to the seller's declared input fields. The full schema below defines any additional rules.
Evidence behind this skill
No recent payment records were returned for this skill.
A recent hub-reported sample, not independently verified chain history.
Try with your input
Add your input. Your assistant checks the price before you approve.
Preview the output format
Generated format template. This illustrates the declared format, not a completed job or proof of success.
{
"amount": 0,
"base": "",
"date": "",
"rates": {}
}For developers: request a free quote
Run this JavaScript on this ARCADE site to quote the input above. The real POST /api/quote route reads the endpoint's payment challenge. This code does not sign, execute a paid call, or settle a payment.
// Run on this ARCADE site. This requests a quote; it does not pay.
const input = JSON.parse("{\n \"base\": \"\",\n \"symbols\": \"\"\n}");
const response = await fetch("/api/quote", {
method: "POST",
credentials: "omit",
headers: { "content-type": "application/json" },
body: JSON.stringify({ skillId: "fx-rate", input })
});
if (!response.ok) throw new Error("Quote unavailable");
console.log(await response.json());A paid call needs a separate reviewed authorization and payment flow. This unsigned example only returns a quote.
Full schemas and limits
Inputs and limits
Seller-declared schemas and limits, shown as data.
input
{
"type": "object",
"required": [
"base",
"symbols"
],
"properties": {
"base": {
"type": "string",
"description": "ISO 4217 base currency, e.g. USD"
},
"symbols": {
"type": "string",
"description": "Comma-separated target currencies, e.g. EUR,GBP"
}
}
}output
{
"type": "object",
"required": [
"base",
"date",
"rates"
],
"properties": {
"amount": {
"type": "number"
},
"base": {
"type": "string"
},
"date": {
"type": "string"
},
"rates": {
"type": "object",
"additionalProperties": {
"type": "number"
}
}
}
}Declared bounds
{
"timeoutSec": 60
}Seller, payment options and identity
fx-rate · Version 0.1.0
Seller 0xcf821769ED3c0E55e152745377bb833d7155A78a
Hub-reported listing declarations, not current payment availability. This page does not offer browser escrow purchases.
Availability and payment are checked separately. This page does not authorize a purchase.
Settlement evidence
Hub-reported observations. These do not establish purchase availability.
- ERC-8004 identity
- Identity evidence unavailable
- Freshness
- Evidence freshness unavailable
- Validation observations
- Validation count unavailable
- Feedback observations
- Feedback count unavailable
What these counts cover
Validations match the configured validator and tag among the latest 20 unique validation requests. A response 100 counts as a pass.
Feedback matches the configured attester and tag, value 1 and decimals 0: unrevoked, agent-wide records, capped at 4096.
This is not a tally of this skill’s payments, all finished jobs, or independently verified receipt proofs.
Recorded payment tests
Pay-test history
Recorded hub tests, not a current availability guarantee. References have no reported rail/network here and are not linked.
No recorded pay-test history returned.
Recent public records and receipts
Recent public records
Up to 20 returned hub receipt records. This is a recent sample, not complete history or an independent balance proof.
No recent records returned.