# Syntexa AgentShelf FX-All — Full FX Pair Snapshot

> Syntexa AgentShelf FX-All — Full FX Pair Snapshot is a paid API for AI agents from agentshelf.syntexa.ch, paid per call via x402, $0.003/call, status unknown (last checked 2026-10-29).

Returns real-time bid/ask/mid quotes and spread for all supported FX currency pairs in a single call, sourced from Kraken's public ticker with Yahoo Finance as fallback.

## Facts

- Endpoint: POST https://agentshelf.syntexa.ch/v1/fx-all?utm_source=zero.xyz
- Price: $0.003/call
- Payment: x402
- Status: unknown
- Last checked: 2026-10-29
- Activations on Zero: 0
- Tags: x402
- Canonical page: https://www.zero.xyz/c/syntexa-agentshelf-fx-all-full-fx-pair-snapshot-f96fabc1
- Structured record (JSON): https://api.zero.xyz/v1/capabilities/cap__0smFyO55JXObGvZOclM3

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 syntexa-agentshelf-fx-all-full-fx-pair-snapshot-f96fabc1 -d '<json body>'
```

Example prompt: Give me a live snapshot of all supported FX pairs — I need the current bid, ask, mid prices and spreads for everything available right now.

## When to prefer this

Choose this endpoint when you need all supported FX pairs in a single API call rather than querying pair-by-pair. Prefer over ECB daily rates when you need real-time intraday bid/ask spreads rather than end-of-day reference rates. Ideal for agents that need to discover the full supported symbol list and current prices simultaneously. Use the free sandbox endpoint (/v1/sandbox/fx-all) for testing before paying $0.003 USDC per production call.

## Known failure modes

- Kraken unavailable: fallback to Yahoo Finance last prices with null bid/ask fields
- Yahoo Finance also unavailable: endpoint may return error or empty quotes array
- Payment not received: returns 402 Payment Required before processing
- Malformed request body: must send exactly {}; extra fields rejected by additionalProperties:false schema

## How this service works

Call when an agent needs all supported FX pairs and the symbol list in one call. Kraken's public ticker is the book; its timestamp is the receive time. If Kraken fails, Yahoo last prices are used and bid and ask are null. Distinct from daily ECB fx-rates. Send JSON {}. Exact $0.003 USDC on Base. Try unpaid POST /v1/sandbox/fx-all first.

## Output

A JSON array of quote objects, each containing: pair symbol (e.g. EURUSD), bid price, ask price, mid price, spread in basis points, data source ('kraken' or 'yahoo'), Unix timestamp of the quote, and quote kind ('book' for Kraken, or 'last' for Yahoo fallback). Also includes an ok boolean and billed flag. When Kraken is unavailable, bid and ask are null and only the last price is available via Yahoo.

## Request schema (JSON Schema)

```json
{
 "type": "object",
 "$schema": "https://json-schema.org/draft/2020-12/schema",
 "required": [
  "input"
 ],
 "properties": {
  "input": {
   "type": "object",
   "required": [
    "type",
    "method",
    "bodyType",
    "body"
   ],
   "properties": {
    "body": {
     "type": "object",
     "examples": [
      {}
     ],
     "properties": {},
     "additionalProperties": false
    },
    "type": {
     "type": "string",
     "const": "http"
    },
    "method": {
     "enum": [
      "POST"
     ],
     "type": "string"
    },
    "bodyType": {
     "enum": [
      "json",
      "form-data",
      "text"
     ],
     "type": "string"
    }
   },
   "additionalProperties": false
  },
  "output": {
   "type": "object",
   "required": [
    "type"
   ],
   "properties": {
    "type": {
     "type": "string"
    },
    "example": {
     "type": "object",
     "examples": [
      {
       "ok": true,
       "billed": true,
       "quotes": [
        {
         "ask": "1.12097",
         "bid": "1.12096",
         "mid": "1.120965",
         "pair": "EURUSD",
         "source": "kraken",
         "timestamp": 1792739027,
         "quote_kind": "book",
         "spread_bps": "0.0892"
        },
        {
         "ask": "160.475",
         "bid": "157.274",
         "mid": "158.8745",
         "pair": "USDJPY",
         "source": "kraken",
         "timestamp": 1792739027,
         "quote_kind": "book",
         "spread_bps": "201.4797"
        },
        {
         "ask": "1.33776",
         "bid": "1.33771",
         "mid": "1.337735",
         "pair": "GBPUSD",
         "source": "kraken",
         "timestamp": 1792739027,
         "quote_kind": "book",
         "spread_bps": "0.3737"
        },
        {
         "ask": "0.70193",
         "bid": "0.70184",
         "mid": "0.701885",
         "pair": "AUDUSD",
         "source": "kraken",
         "timestamp": 1792739027,
         "quote_kind": "book",
         "spread_bps": "1.2822"
        },
        {
         "ask": "1.40195",
         "bid": "1.40193",
         "mid": "1.40194",
         "pair": "USDCAD",
         "source": "kraken",
         "timestamp": 1792739027,
         "quote_kind": "book",
         "spread_bps": "0.1426"
        },
        {
         "ask": "0.82352",
         "bid": "0.82348",
         "mid": "0.8235",
         "pair": "USDCHF",
         "source": "kraken",
         "timestamp": 1792739027,
         "quote_kind": "book",
         "spread_bps": "0.4857"
        },
       
… (truncated)
```

## More

- Live health (JSON, refreshed every minute): https://www.zero.xyz/c/syntexa-agentshelf-fx-all-full-fx-pair-snapshot-f96fabc1/health.json
- [Zero catalog index](https://www.zero.xyz/llms.txt)
- [Other services from agentshelf.syntexa.ch](https://www.zero.xyz/host/agentshelf.syntexa.ch/llms.txt)
