Properties
| Name | Type | Description |
|---|---|---|
| result | string | |
| index | string | |
| name | string | |
| methodology_version | string | |
| value | number | |
| timestamp | string | |
| data_updated_at | string | |
| source | object | |
| source_type | string | |
| market_session | object | |
| stale | boolean | |
| base_date | object | |
| weights | object | |
| constituents | array | |
| notice | string |
JSON Schema
{
"$schema": "https://json-schema.org/draft/2020-12/schema",
"$id": "https://artifacts.apis.io/exchangerate-dev/json-schema/exchangerate-dev-index-snapshot-response-schema.json",
"title": "IndexSnapshotResponse",
"x-generated": "2026-10-30",
"x-method": "derived",
"x-generator": "derive-json-schema.py",
"x-source": "openapi/exchangerate-dev-openapi.json#/components/schemas/IndexSnapshotResponse",
"properties": {
"result": {
"type": "string",
"title": "Result",
"default": "success"
},
"index": {
"type": "string",
"title": "Index"
},
"name": {
"type": "string",
"title": "Name"
},
"methodology_version": {
"type": "string",
"title": "Methodology Version"
},
"value": {
"type": "number",
"title": "Value"
},
"timestamp": {
"type": "string",
"title": "Timestamp"
},
"data_updated_at": {
"type": "string",
"title": "Data Updated At"
},
"source": {
"$ref": "#/$defs/Source"
},
"source_type": {
"type": "string",
"enum": [
"market",
"reference"
],
"title": "Source Type"
},
"market_session": {
"$ref": "#/$defs/MarketSession"
},
"stale": {
"type": "boolean",
"title": "Stale"
},
"base_date": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"title": "Base Date"
},
"weights": {
"additionalProperties": {
"type": "number"
},
"type": "object",
"title": "Weights"
},
"constituents": {
"items": {
"$ref": "#/$defs/IndexConstituent"
},
"type": "array",
"title": "Constituents"
},
"notice": {
"type": "string",
"title": "Notice"
}
},
"type": "object",
"required": [
"index",
"name",
"methodology_version",
"value",
"timestamp",
"data_updated_at",
"source",
"source_type",
"market_session",
"stale",
"base_date",
"weights",
"constituents",
"notice"
],
"$defs": {
"IndexConstituent": {
"properties": {
"currency": {
"type": "string",
"title": "Currency"
},
"weight": {
"type": "number",
"title": "Weight"
},
"rate": {
"type": "number",
"title": "Rate"
},
"effective_at": {
"type": "string",
"title": "Effective At"
},
"contribution": {
"type": "number",
"title": "Contribution"
}
},
"type": "object",
"required": [
"currency",
"weight",
"rate",
"effective_at",
"contribution"
],
"title": "IndexConstituent"
},
"MarketSession": {
"type": "string",
"enum": [
"open",
"weekend",
"interbank_closed"
],
"title": "MarketSession",
"description": "Computed from a clock, no feed (D9). `interbank_closed` = a known non-weekend closure\n(e.g. an ECB/TARGET2 holiday detected via an empty Tier-C response — INGESTION §4)."
},
"Source": {
"type": "string",
"enum": [
"live",
"ecb_daily",
"market_daily"
],
"title": "Source",
"description": "Public `source` enum — wire contract (D2). NO `cached` value (cache lives in X-Cache).\n\n`ecb_daily` is the only reference source (October 2026).\n`market_daily` labels the stored daily close of the live market feed, for the currencies with\nno reference fix, in date history and 1d time series; it is never a live rate."
}
}
}
Work with this as data
Every JSON Schema here is available over the APIs.io API and to AI agents over MCP.
MCP server
One button, every client — Claude, Cursor, VS Code and the rest.
https://apis.io/mcp
Tools for schemas
4 MCP tools reach this
find_json_schemasBrowse and filter every JSON Schema in the catalog.apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.resolveTurn a domain, URL or GitHub org into the provider it belongs to.find_cohortsEvery scored population of providers in the catalog.
Call it yourself
curl for this page
This JSON Schema
curl "https://apis.io/api/v1/json-schemas/exchangerate-dev-index-snapshot-response"
All schemas
curl "https://apis.io/api/v1/json-schemas?limit=25"
Discovery needs no key. Ratings and market analysis are Pro.
Get an API key
Free tier, no form to fill in. Signing in shares your email address with us — we store it to create your key and to recognise you if you sign in with another provider. See our Privacy Policy and Terms.
A second provider on the same verified email joins the account you already have.