NBU Data Ukraine

Daily official NBU exchange-rate series of one currency against the hryvnia (UAH) for a period of up to 366 days, plus min, max and % change. Call it to chart or analyse UAH moves, compute averages for Ukrainian reporting, or check a rate across several dates in one paid call. Params: currency (default USD), from and to (YYYY-MM-DD; default the last 31 days).

DataLiveeip155:8453Exactvia cdp
DataFinanceUkraineExchange-ratesNbu
Calls · 30d
3↑ 114%
This endpoint's own trailing-30-day call count, as published by the upstream catalog and snapshotted daily. 19 snapshots so far.
$0.05
Verified settled volume
32 settlements proven x402 by their on-chain EIP-3009 marker.
$0.0030
Listed price
As published in the catalog. Always read the live 402 before paying.
4
Calls · 30d
Upstream's own call count for this endpoint, not ours.
4
Unique payers · 30d
Last called 2026-10-26 08:32Z
—
Upstream on-chain volume
Reported by the source catalog.
Paid to
0x44e5eBeB366Ab69A0a3C1c05080a01FE0d8013ef

The wallet the 402 directs payment to. Its whole payment record — every payer, every chain — is on the merchant page.

Asset 0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913

Provider

The payTo wallet does not resolve to a registered ERC-8004 agent. That is not a verdict on the service — most of the catalog is unregistered.

Live 402 challenge

Captured by the enrichment pass, not read just now. Prices can change — always read the 402 the endpoint answers with.

{
  "docs": "https://nbu.navistri.com/llms.txt",
  "asset": "0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913",
  "error": "payment_required",
  "payTo": "0x44e5eBeB366Ab69A0a3C1c05080a01FE0d8013ef",
  "price": "$0.003",
  "scheme": "exact",
  "message": "This endpoint costs $0.003 in USDC on Base per successful call, paid with x402 v2. Decode the base64 JSON in the PAYMENT-REQUIRED header, sign the payment and retry with a PAYMENT-SIGNATURE header. Calls that fail (4xx/5xx) are not settled, so they cost nothing.",
  "network": "eip155:8453",
  "openapi": "https://nbu.navistri.com/openapi.json"
}

Accepts

The payment requirements as published to the catalog. Read the live 402 before paying — a price here is a claim, not a quote.

0.003USDC≈ $0.003 USD
on Base · exact scheme

Pay 0.003 USDC on Base to 0x44e5…013ef. The signed payment is good for 2 minutes.

USD Coin contract
0x8335…02913
Payment window
2 minutes
As published
3000 smallest units
The catalog’s raw entry
[
  {
    "asset": "0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913",
    "extra": {
      "name": "USD Coin",
      "version": "2"
    },
    "payTo": "0x44e5eBeB366Ab69A0a3C1c05080a01FE0d8013ef",
    "amount": "3000",
    "scheme": "exact",
    "network": "eip155:8453",
    "maxTimeoutSeconds": 120
  }
]

Extensions

{
  "bazaar": {
    "info": {
      "input": {
        "type": "http",
        "method": "GET",
        "queryParams": {
          "to": "2026-09-30",
          "from": "2026-09-01",
          "currency": "EUR"
        }
      },
      "output": {
        "type": "json",
        "example": {
          "data": {
            "to": "2026-09-30",
            "base": "UAH",
            "from": "2026-09-01",
            "name": "Euro",
            "stats": {
              "max": {
                "date": "2026-09-10",
                "ratePerUnit": 51.9905
              },
              "min": {
                "date": "2026-09-30",
                "ratePerUnit": 50.9278
              },
              "last": {
                "date": "2026-09-30",
                "rate": 50.9278,
                "units": 1,
                "ratePerUnit": 50.9278
              },
              "count": 30,
              "first": {
                "date": "2026-09-01",
                "rate": 51.6369,
                "units": 1,
                "ratePerUnit": 51.6369
              },
              "change": -0.7091,
              "changePct": -1.3732
            },
            "points": [
              {
                "date": "2026-09-01",
                "rate": 51.6369,
                "units": 1,
                "ratePerUnit": 51.6369
              },
              {
                "date": "2026-09-02",
                "rate": 51.5357,
                "units": 1,
                "ratePerUnit": 51.5357
              },
              {
                "date": "2026-09-30",
                "rate": 50.9278,
                "units": 1,
                "ratePerUnit": 50.9278
              }
            ],
            "currency": "EUR"
          },
          "meta": {
            "terms": "Ukrainian public open data: free reuse including commercial use, with mandatory attribution to the source (Law of Ukraine 'On Access to Public Information', art. 10-1; https://bank.gov.ua/ua/open-data). Values are passed through unchanged. Not affiliated with or endorsed by the NBU.",
            "cached": false,
            "params": {
              "to": "2026-09-30",
              "from": "2026-09-01",
              "currency": "EUR"
            },
            "source": "National Bank of Ukraine open data (bank.gov.ua)",
            "endpoint": "GET /v1/rates/history",
            "sourceUrl": "https://bank.gov.ua/ua/open-data/api-dev",
            "retrievedAt": "2026-10-12T12:00:00.000Z",
            "upstreamUrl": "https://bank.gov.ua/..."
          }
        }
      }
    },
    "schema": {
      "type": "object",
      "$schema": "https://json-schema.org/draft/2020-12/schema",
      "required": [
        "input"
      ],
      "properties": {
        "input": {
          "type": "object",
          "required": [
            "type",
            "method"
          ],
          "properties": {
            "type": {
              "type": "string",
              "const": "http"
            },
            "method": {
              "enum": [
                "GET"
              ],
              "type": "string"
            },
            "queryParams": {
              "type": "object",
              "required": [],
              "properties": {
                "to": {
                  "type": "string",
                  "pattern": "^\\d{4}-\\d{2}-\\d{2}$",
                  "description": "Last date, YYYY-MM-DD, at most 366 days after `from`. Default: today (Kyiv)."
                },
                "from": {
                  "type": "string",
                  "pattern": "^\\d{4}-\\d{2}-\\d{2}$",
                  "description": "First date, YYYY-MM-DD. Default: 30 days before `to`."
                },
                "currency": {
                  "type": "string",
                  "pattern": "^[A-Za-z]{3}$",
                  "description": "ISO 4217 code. Default: USD."
                }
              },
              "additionalProperties": false
            }
          },
          "additionalProperties": false
        },
        "output": {
          "type": "object",
          "required": [
            "type"
          ],
          "properties": {
            "type": {
              "type": "string"
            },
            "example": {
              "type": "object",
              "required": [
                "data",
                "meta"
              ],
              "properties": {
                "data": {
                  "type": "object",
                  "required": [
                    "currency",
                    "from",
                    "to",
                    "base",
                    "points",
                    "stats"
                  ],
                  "properties": {
                    "to": {
                      "type": "string",
                      "format": "date"
                    },
                    "base": {
                      "const": "UAH"
                    },
                    "from": {
                      "type": "string",
                      "format": "date"
                    },
                    "name": {
                      "type": [
                        "string",
                        "null"
                      ]
                    },
                    "stats": {
                      "type": "object",
                      "properties": {
                        "max": {
                          "type": "object",
                          "properties": {
                            "date": {
                              "type": "string",
                              "format": "date"
                            },
                            "ratePerUnit": {
                              "type": "number"
                            }
                          }
                        },
                        "min": {
                          "type": "object",
                          "properties": {
                            "date": {
                              "type": "string",
                              "format": "date"
                            },
                            "ratePerUnit": {
                              "type": "number"
                            }
                          }
                        },
                        "last": {
                          "type": "object",
                          "required": [
                            "date",
                            "rate",
                            "units",
                            "ratePerUnit"
                          ],
                          "properties": {
                            "date": {
                              "type": "string",
                              "format": "date"
                            },
                            "rate": {
                              "type": "number"
                            },
                            "units": {
                              "type": "number"
                            },
                            "ratePerUnit": {
                              "type": "number"
                            }
                          }
                        },
                        "count": {
                          "type": "number"
                        },
                        "first": {
                          "type": "object",
                          "required": [
                            "date",
                            "rate",
                            "units",
                            "ratePerUnit"
                          ],
                          "properties": {
                            "date": {
                              "type": "string",
                              "format": "date"
                            },
                            "rate": {
                              "type": "number"
                            },
                            "units": {
                              "type": "number"
                            },
                            "ratePerUnit": {
                              "type": "number"
                            }
                          }
                        },
                        "change": {
                          "type": "number"
                        },
                        "changePct": {
                          "type": "number"
                        }
                      }
                    },
                    "points": {
                      "type": "array",
                      "items": {
                        "type": "object",
                        "required": [
                          "date",
                          "rate",
                          "units",
                          "ratePerUnit"
                        ],
                        "properties": {
                          "date": {
                            "type": "string",
                            "format": "date"
                          },
                          "rate": {
                            "type": "number"
                          },
                          "units": {
                            "type": "number"
                          },
                          "ratePerUnit": {
                            "type": "number"
                          }
                        }
                      }
                    },
                    "currency": {
                      "type": "string"
                    }
                  }
                },
                "meta": {
                  "type": "object",
                  "properties": {
                    "terms": {
                      "type": "string"
                    },
                    "cached": {
                      "type": "boolean"
                    },
                    "params": {
                      "type": "object"
                    },
                    "source": {
                      "type": "string"
                    },
                    "endpoint": {
                      "type": "string"
                    },
                    "sourceUrl": {
                      "type": "string"
                    },
                    "retrievedAt": {
                      "type": "string",
                      "format": "date-time"
                    },
                    "upstreamUrl": {
                      "type": "string"
                    }
                  }
                }
              }
            }
          }
        }
      }
    }
  }
}

Provenance

Seen in the source catalog
2026-10-26 08:32Z
Last indexed by Roundhouse
2026-10-26 22:40Z
Last enriched (probe, favicon, geo)
2026-10-13 14:16Z
x402 version
2
Max timeout
120s
Liveness probe
HTTP 402
Report

Hand this page to an agent

Copy the prompt and paste it into Claude, an MCP client or your own agent — it will vet this service and call it over the free read API. No key, no account.

GET api.roundhouseai.io/v0/endpoints

This endpoint's own trailing-30-day call count, as published by the upstream catalog and snapshotted daily. 19 snapshots so far. Verified volume counts only settlements with an on-chain EIP-3009 marker.

Open skill.md
Show the prompt
Using Roundhouse, look up the x402 service NBU Data Ukraine and tell me whether it is
worth paying: what a call costs, whether the endpoint answered when last probed, and what
its payment record actually shows.

curl -s 'https://api.roundhouseai.io/v0/endpoints?q=NBU%20Data%20Ukraine'
curl -s 'https://api.roundhouseai.io/v0/merchants/<the payTo wallet returned above>'

Then call it: read the price from the live 402 at https://nbu.navistri.com/v1/rates/history, never from
a cached figure, and pay with an x402 client.

The /v0 API needs an API key (`authorization: Bearer rh_live_…`) on everything except
/v0/unified* and /v0/endpoints. Either pay over x402 (mint a personal key for $0.01 at
GET https://api.roundhouseai.io/v0/test/x402), or ask me for an organization key, which I create at
https://roundhouseai.io/dashboard/connections. If you have neither, ask before going further.

If you do not have Roundhouse tools or skills installed, read
https://roundhouseai.io/skill.md first — it is the whole procedure.