# Otto AI FX Rates

> Otto AI FX Rates is a paid API for AI agents from x402.ottoai.services, paid per call via x402, $0.001/call, status unknown (last checked 2026-09-16).

Returns live and reference foreign exchange rates against USD, sourced from Yahoo Finance and the European Central Bank

## Facts

- Endpoint: GET https://x402.ottoai.services/fx-rates
- Price: $0.001/call
- Payment: x402
- Status: unknown
- Last checked: 2026-09-16
- Activations on Zero: 0
- Tags: x402
- Canonical page: https://www.zero.xyz/c/otto-ai-fx-rates-e8638f16
- Structured record (JSON): https://api.zero.xyz/v1/capabilities/cap_gi5L2jGF0-OeVin-2KPBR

Status and success rate cover calls made through Zero and Zero's own probes. Third-party monitors may report differently.

## How to call it through Zero

Zero handles the 402 payment challenge and records the run. With the Zero CLI installed (`npm i -g @zeroxyz/cli`):

```sh
zero fetch --capability otto-ai-fx-rates-e8638f16
```

Example prompt: What are the current USD exchange rates for major currencies like EUR, GBP, JPY, and AUD — are they live or stale, and is the market open right now?

## When to prefer this

Use this endpoint when you need real-time or near-real-time USD-based FX rates for major global currencies, with dual sourcing (live Yahoo + ECB reference), staleness detection, and market-open status — particularly useful for financial agents needing reliable forex data with freshness metadata.

## Known failure modes

- Data marked stale if Yahoo Finance feed is delayed
- Market closed flag when forex market is not trading
- Degraded mode if primary data source is unavailable
- Missing ECB reference rates if ECB data feed is down
- HTTP 402 if USDC payment is not included or insufficient

## How this service works

Live + reference foreign-exchange (forex) rates, base USD. LIVE near-real-time mid quotes for the 12 most-traded currencies (EUR, GBP, JPY, CHF, CAD, AUD, NZD, CNY, HKD, SGD, SEK, KRW), refreshed every minute with an honest market-open/stale flag, PLUS the official ECB daily reference table for ~30 currencies. Derive any cross-rate or pair. For agents pricing cross-border ops, treasury, invoicing and FX conversion. Keyless, pay-per-call.

## Output

Returns a JSON object with live USD-based exchange rates (AUD, CAD, CHF, CNY, EUR, GBP, HKD, JPY, KRW, NZD, SEK, SGD) timestamped to the second with stale/market-open flags and source attribution (Yahoo Finance), plus ECB reference rates for a recent date. Also includes meta fields indicating degraded status and data freshness.

## Request schema (JSON Schema)

```json
{
 "type": "object",
 "properties": {
  "properties": {
   "type": "string"
  }
 }
}
```

## Response schema (JSON Schema)

```json
{
 "type": "json",
 "example": {
  "data": {
   "base": "USD",
   "live": {
    "asOf": "2026-06-29T12:37:06.000Z",
    "rates": {
     "AUD": 1.4495,
     "CAD": 1.4206,
     "CHF": 0.8088,
     "CNY": 6.7836,
     "EUR": 0.8768,
     "GBP": 0.7559,
     "HKD": 7.8415,
     "JPY": 161.89,
     "KRW": 1543.51,
     "NZD": 1.7698,
     "SEK": 9.7314,
     "SGD": 1.2938
    },
    "stale": false,
    "source": "Yahoo",
    "marketOpen": true,
    "staleSymbols": []
   },
   "reference": {
    "date": "2026-06-26",
    "rates": {
     "AUD": 1.4488,
     "CAD": 1.4182,
     "CHF": 0.8085,
     "CNY": 6.7982,
     "EUR": 0.8771,
     "GBP": 0.7565,
     "JPY": 161.65
    },
    "source": "ECB"
   },
   "generatedAt": "2026-06-29T12:37:10.000Z",
   "liveAvailable": true
  },
  "meta": {
   "degraded": false,
   "validUntil": "",
   "generatedAt": "",
   "stalenessSec": 0
  },
  "status": "success"
 }
}
```

## More

- Live health (JSON, refreshed every minute): https://www.zero.xyz/c/otto-ai-fx-rates-e8638f16/health.json
- [Zero catalog index](https://www.zero.xyz/llms.txt)
- [Other services from x402.ottoai.services](https://www.zero.xyz/host/x402.ottoai.services/llms.txt)
