SourceFinch Verified · Exchange rates

Danish krone exchange rates, last five business days

Danmarks Nationalbank's daily exchange rates of the Danish krone against about 30 currencies and the SDR for the last five business days, in kroner per 100 units, one record per day.

Monitor this sourceAPI, CLI, SDK and MCP

Part of: Exchange-rate desk

At a glance

Jurisdiction
Denmark
Publisher updates
Each Danish banking day
SourceFinch checks
Daily by default
Records per run
5 in the latest run
Record key
date
Acquired from
Publisher's public API: https://www.nationalbanken.dk/api/currencyratesxmlhistory?lang=en
Recipe
v1.0.0, approved October 12, 2026
Verified since
October 12, 2026
Last green run
October 12, 2026

What the data contains

Danmarks Nationalbank publishes indicative exchange rates of the Danish krone against about 30 currencies and the IMF special drawing right each Danish banking day. The rates are expressed in Danish kroner per 100 units of foreign currency; the Nationalbank says they are indicative and not for transaction purposes. This source reads the Nationalbank's exchange rate history file, which carries the last five business days, on each daily run and makes one record per business day keyed by the date, with one numeric field per currency. A monitor reports each new day's rates and any correction of a published day. The file starts with a UTF-8 byte-order mark, which the worker records as a decoding step. The data describes exchange rates and contains no personal data. SourceFinch is independent of Danmarks Nationalbank.

Fields and types

Every record has these fields. The key field date identifies a record across runs, so changes are reported field by field.

FieldTypeDescription
datekeydateBusiness day the rates were fixed (YYYY-MM-DD), one record per day. The record key.
audnumber, nullableDanish kroner per 100 units of the Australian dollar (AUD).
brlnumber, nullableDanish kroner per 100 units of the Brazilian real (BRL).
cadnumber, nullableDanish kroner per 100 units of the Canadian dollar (CAD).
cnynumber, nullableDanish kroner per 100 units of the Chinese yuan renminbi (CNY).
czknumber, nullableDanish kroner per 100 units of the Czech koruna (CZK).
eurnumber, nullableDanish kroner per 100 units of the euro (EUR).
hkdnumber, nullableDanish kroner per 100 units of the Hong Kong dollar (HKD).
hufnumber, nullableDanish kroner per 100 units of the Hungarian forint (HUF).
isknumber, nullableDanish kroner per 100 units of the Icelandic krona (ISK).
inrnumber, nullableDanish kroner per 100 units of the Indian rupee (INR).
idrnumber, nullableDanish kroner per 100 units of the Indonesian rupiah (IDR).
ilsnumber, nullableDanish kroner per 100 units of the Israeli shekel (ILS).
jpynumber, nullableDanish kroner per 100 units of the Japanese yen (JPY).
myrnumber, nullableDanish kroner per 100 units of the Malaysian ringgit (MYR).
mxnnumber, nullableDanish kroner per 100 units of the Mexican peso (MXN).
nzdnumber, nullableDanish kroner per 100 units of the New Zealand dollar (NZD).
noknumber, nullableDanish kroner per 100 units of the Norwegian krone (NOK).
phpnumber, nullableDanish kroner per 100 units of the Philippine peso (PHP).
plnnumber, nullableDanish kroner per 100 units of the Polish zloty (PLN).
gbpnumber, nullableDanish kroner per 100 units of the pound sterling (GBP).
ronnumber, nullableDanish kroner per 100 units of the Romanian leu (RON).
xdrnumber, nullableDanish kroner per 100 units of the IMF special drawing right (SDR) (XDR).
sgdnumber, nullableDanish kroner per 100 units of the Singapore dollar (SGD).
zarnumber, nullableDanish kroner per 100 units of the South African rand (ZAR).
krwnumber, nullableDanish kroner per 100 units of the South Korean won (KRW).
seknumber, nullableDanish kroner per 100 units of the Swedish krona (SEK).
chfnumber, nullableDanish kroner per 100 units of the Swiss franc (CHF).
thbnumber, nullableDanish kroner per 100 units of the Thai baht (THB).
trynumber, nullableDanish kroner per 100 units of the Turkish lira (TRY).
usdnumber, nullableDanish kroner per 100 units of the U.S. dollar (USD).

Sample output

The first 5 of 5 records from SourceFinch's own run on October 12, 2026, exactly as delivered.

FieldRecord 1Record 2Record 3Record 4Record 5
date2026-10-062026-10-072026-10-082026-10-092026-10-12
aud463.12464.86463.93465.68466.24
brl133.5133.59133.18133.28133.91
cad465.48469.18468.49468.89468.76
cny98.9399.7499.6999.6899.89
czk30.6330.630.6330.6730.65
eur747.47747.45747.39747.51747.48
hkd84.5285.2185.148585.19
huf2.0482.0382.0412.0482.047
isk5.4485.4565.4555.4645.48
inr6.886.916.96.96.98
idr0.03720.03740.03730.03730.0373
ils217.62217.98217.12218.19217.8
jpy4.19574.22654.22134.21514.2152
myr162.37163.58163.3163.29163.69
mxn36.9636.9637.0936.6536.45
nzd372.6374.16373.43374.49374.34
nok69.3569.7869.7469.7669.89
php10.5710.6510.6110.6210.65
pln171.24170.55170.82170.53170.46
gbp880.62883.04882.42881.88884.82
ron139.69139.64139.87139.97140.06
xdr899.35903.87903.34902.63903.94
sgd519.36522.29521.19520.99522.2
zar40.2240.0740.1340.3540.42
krw0.49540.49950.49730.49730.5015
sek66.4966.5966.7766.9466.76
chf798.66802.93801.4802.65802.71
thb19.7619.8519.8419.8919.89
try13.4913.5913.5813.5713.55
usd663.3668.74668.15667.06668.53
Sample as JSON
[
  {
    "aud": 463.12,
    "brl": 133.5,
    "cad": 465.48,
    "chf": 798.66,
    "cny": 98.93,
    "czk": 30.63,
    "eur": 747.47,
    "gbp": 880.62,
    "hkd": 84.52,
    "huf": 2.048,
    "idr": 0.0372,
    "ils": 217.62,
    "inr": 6.88,
    "isk": 5.448,
    "jpy": 4.1957,
    "krw": 0.4954,
    "mxn": 36.96,
    "myr": 162.37,
    "nok": 69.35,
    "nzd": 372.6,
    "php": 10.57,
    "pln": 171.24,
    "ron": 139.69,
    "sek": 66.49,
    "sgd": 519.36,
    "thb": 19.76,
    "try": 13.49,
    "usd": 663.3,
    "xdr": 899.35,
    "zar": 40.22,
    "date": "2026-10-06"
  },
  {
    "aud": 464.86,
    "brl": 133.59,
    "cad": 469.18,
    "chf": 802.93,
    "cny": 99.74,
    "czk": 30.6,
    "eur": 747.45,
    "gbp": 883.04,
    "hkd": 85.21,
    "huf": 2.038,
    "idr": 0.0374,
    "ils": 217.98,
    "inr": 6.91,
    "isk": 5.456,
    "jpy": 4.2265,
    "krw": 0.4995,
    "mxn": 36.96,
    "myr": 163.58,
    "nok": 69.78,
    "nzd": 374.16,
    "php": 10.65,
    "pln": 170.55,
    "ron": 139.64,
    "sek": 66.59,
    "sgd": 522.29,
    "thb": 19.85,
    "try": 13.59,
    "usd": 668.74,
    "xdr": 903.87,
    "zar": 40.07,
    "date": "2026-10-07"
  },
  {
    "aud": 463.93,
    "brl": 133.18,
    "cad": 468.49,
    "chf": 801.4,
    "cny": 99.69,
    "czk": 30.63,
    "eur": 747.39,
    "gbp": 882.42,
    "hkd": 85.14,
    "huf": 2.041,
    "idr": 0.0373,
    "ils": 217.12,
    "inr": 6.9,
    "isk": 5.455,
    "jpy": 4.2213,
    "krw": 0.4973,
    "mxn": 37.09,
    "myr": 163.3,
    "nok": 69.74,
    "nzd": 373.43,
    "php": 10.61,
    "pln": 170.82,
    "ron": 139.87,
    "sek": 66.77,
    "sgd": 521.19,
    "thb": 19.84,
    "try": 13.58,
    "usd": 668.15,
    "xdr": 903.34,
    "zar": 40.13,
    "date": "2026-10-08"
  },
  {
    "aud": 465.68,
    "brl": 133.28,
    "cad": 468.89,
    "chf": 802.65,
    "cny": 99.68,
    "czk": 30.67,
    "eur": 747.51,
    "gbp": 881.88,
    "hkd": 85,
    "huf": 2.048,
    "idr": 0.0373,
    "ils": 218.19,
    "inr": 6.9,
    "isk": 5.464,
    "jpy": 4.2151,
    "krw": 0.4973,
    "mxn": 36.65,
    "myr": 163.29,
    "nok": 69.76,
    "nzd": 374.49,
    "php": 10.62,
    "pln": 170.53,
    "ron": 139.97,
    "sek": 66.94,
    "sgd": 520.99,
    "thb": 19.89,
    "try": 13.57,
    "usd": 667.06,
    "xdr": 902.63,
    "zar": 40.35,
    "date": "2026-10-09"
  },
  {
    "aud": 466.24,
    "brl": 133.91,
    "cad": 468.76,
    "chf": 802.71,
    "cny": 99.89,
    "czk": 30.65,
    "eur": 747.48,
    "gbp": 884.82,
    "hkd": 85.19,
    "huf": 2.047,
    "idr": 0.0373,
    "ils": 217.8,
    "inr": 6.98,
    "isk": 5.48,
    "jpy": 4.2152,
    "krw": 0.5015,
    "mxn": 36.45,
    "myr": 163.69,
    "nok": 69.89,
    "nzd": 374.34,
    "php": 10.65,
    "pln": 170.46,
    "ron": 140.06,
    "sek": 66.76,
    "sgd": 522.2,
    "thb": 19.89,
    "try": 13.55,
    "usd": 668.53,
    "xdr": 903.94,
    "zar": 40.42,
    "date": "2026-10-12"
  }
]

Evidence behind every value

  • Each run keeps the publisher's exact response, hashed with SHA-256. This sample came from a response with hash 367dac77e350a943dda8a867c0f2ad8e11c7ec45bcbe850c7cf697390e567b25.
  • Every value records where it came from in that response: a CSS path into the retained capture.
  • Each run gets a signed manifest (Ed25519) timestamped by an RFC 3161 authority: this run's manifest hash is 5adb97832b761f5b1fb96c74dfcf3634275beff960e17446748349120c602d4c, timestamped October 12, 2026.
  • The compliance state at capture is recorded with the evidence: robots.txt hash and verdict, AI-preference signals, crawler identity and the usage rights below.
  • Download any run as an evidence bundle (WACZ) and check it offline, without trusting SourceFinch: sourcefinch verify-bundle run.wacz.

Terms posture and usage rights

Terms
Automated access permitted · publisher's terms
robots.txt
Allows this path · SHA-256 24a45d206eaaf11b…
AI-preference signals
None observed at review
Public record
No
Reviewed
October 12, 2026; next review April 12, 2027
Licence basis
Publisher's terms of use
Commercial use
Allowed
Redistribution
Allowed with conditions
Attribution
Required (text below)

Danmarks Nationalbank's copyright notice permits copying material from its website free of charge, electronically or in hard copy, provided Danmarks Nationalbank is stated expressly as the source; the contents may not be amended or distorted, and the Nationalbank's name and logo may not be used for marketing without a written agreement. The Nationalbank describes its exchange rates as indicative and not for transaction purposes. www.nationalbanken.dk/robots.txt allows all paths, and the rate file needs no key.

Source: Danmarks Nationalbank (exchange rates), values unaltered and reformatted by SourceFinch. SourceFinch is independent of and not endorsed by Danmarks Nationalbank.

Usage rights travel with every record SourceFinch delivers (API, exports, webhooks and evidence bundles). They are our documented understanding of the publisher's stated terms, not legal advice.

Reliability

Runs, last 30 days
1
Green
100%
Failed
0
Median run time
2.4 s
Latest run
success, October 12, 2026

Measured on completed runs of this recipe version across SourceFinch, anonymized, within a rolling 30-day window. First successful observation: October 12, 2026. A new recipe has only the history collected since that date; this is not a 30-day uptime guarantee.

Use it

Every surface creates the same monitor from this Verified recipe. Monitors keep record history, report field-level changes and deliver by webhook, export or email. You confirm you have the right to collect the source (rights: true).

Console

Open this recipe in the console: it preserves the reviewed URL, fields and record key. Review the latest captured sample, confirm source rights, and choose a schedule before creating your monitor.

Portable recipe

Copy into the console's Import or share a recipe panel to customize fields, types and schedules. This configuration contains no captured records or workspace IDs.

{
  "schema": "sourcefinch/source@1",
  "name": "Danish krone exchange rates, last five business days",
  "url": "https://www.nationalbanken.dk/api/currencyratesxmlhistory?lang=en",
  "recipe": {
    "mode": "http",
    "format": "xml",
    "items": "Cube[time]",
    "fields": {
      "aud": "Cube[currency=\"AUD\"]@rate",
      "brl": "Cube[currency=\"BRL\"]@rate",
      "cad": "Cube[currency=\"CAD\"]@rate",
      "chf": "Cube[currency=\"CHF\"]@rate",
      "cny": "Cube[currency=\"CNY\"]@rate",
      "czk": "Cube[currency=\"CZK\"]@rate",
      "eur": "Cube[currency=\"EUR\"]@rate",
      "gbp": "Cube[currency=\"GBP\"]@rate",
      "hkd": "Cube[currency=\"HKD\"]@rate",
      "huf": "Cube[currency=\"HUF\"]@rate",
      "idr": "Cube[currency=\"IDR\"]@rate",
      "ils": "Cube[currency=\"ILS\"]@rate",
      "inr": "Cube[currency=\"INR\"]@rate",
      "isk": "Cube[currency=\"ISK\"]@rate",
      "jpy": "Cube[currency=\"JPY\"]@rate",
      "krw": "Cube[currency=\"KRW\"]@rate",
      "mxn": "Cube[currency=\"MXN\"]@rate",
      "myr": "Cube[currency=\"MYR\"]@rate",
      "nok": "Cube[currency=\"NOK\"]@rate",
      "nzd": "Cube[currency=\"NZD\"]@rate",
      "php": "Cube[currency=\"PHP\"]@rate",
      "pln": "Cube[currency=\"PLN\"]@rate",
      "ron": "Cube[currency=\"RON\"]@rate",
      "sek": "Cube[currency=\"SEK\"]@rate",
      "sgd": "Cube[currency=\"SGD\"]@rate",
      "thb": "Cube[currency=\"THB\"]@rate",
      "try": "Cube[currency=\"TRY\"]@rate",
      "usd": "Cube[currency=\"USD\"]@rate",
      "xdr": "Cube[currency=\"XDR\"]@rate",
      "zar": "Cube[currency=\"ZAR\"]@rate",
      "date": "@time"
    },
    "required": [
      "date"
    ],
    "types": {
      "aud": "number",
      "brl": "number",
      "cad": "number",
      "chf": "number",
      "cny": "number",
      "czk": "number",
      "date": "date",
      "eur": "number",
      "gbp": "number",
      "hkd": "number",
      "huf": "number",
      "idr": "number",
      "ils": "number",
      "inr": "number",
      "isk": "number",
      "jpy": "number",
      "krw": "number",
      "mxn": "number",
      "myr": "number",
      "nok": "number",
      "nzd": "number",
      "php": "number",
      "pln": "number",
      "ron": "number",
      "sek": "number",
      "sgd": "number",
      "thb": "number",
      "try": "number",
      "usd": "number",
      "xdr": "number",
      "zar": "number"
    }
  },
  "schedule": "daily",
  "key_field": "date"
}

source.json

The request body used by the API, CLI and SDK examples.

{
  "name": "Danish krone exchange rates, last five business days",
  "url": "https://www.nationalbanken.dk/api/currencyratesxmlhistory?lang=en",
  "recipe": {
    "mode": "http",
    "format": "xml",
    "items": "Cube[time]",
    "fields": {
      "aud": "Cube[currency=\"AUD\"]@rate",
      "brl": "Cube[currency=\"BRL\"]@rate",
      "cad": "Cube[currency=\"CAD\"]@rate",
      "chf": "Cube[currency=\"CHF\"]@rate",
      "cny": "Cube[currency=\"CNY\"]@rate",
      "czk": "Cube[currency=\"CZK\"]@rate",
      "eur": "Cube[currency=\"EUR\"]@rate",
      "gbp": "Cube[currency=\"GBP\"]@rate",
      "hkd": "Cube[currency=\"HKD\"]@rate",
      "huf": "Cube[currency=\"HUF\"]@rate",
      "idr": "Cube[currency=\"IDR\"]@rate",
      "ils": "Cube[currency=\"ILS\"]@rate",
      "inr": "Cube[currency=\"INR\"]@rate",
      "isk": "Cube[currency=\"ISK\"]@rate",
      "jpy": "Cube[currency=\"JPY\"]@rate",
      "krw": "Cube[currency=\"KRW\"]@rate",
      "mxn": "Cube[currency=\"MXN\"]@rate",
      "myr": "Cube[currency=\"MYR\"]@rate",
      "nok": "Cube[currency=\"NOK\"]@rate",
      "nzd": "Cube[currency=\"NZD\"]@rate",
      "php": "Cube[currency=\"PHP\"]@rate",
      "pln": "Cube[currency=\"PLN\"]@rate",
      "ron": "Cube[currency=\"RON\"]@rate",
      "sek": "Cube[currency=\"SEK\"]@rate",
      "sgd": "Cube[currency=\"SGD\"]@rate",
      "thb": "Cube[currency=\"THB\"]@rate",
      "try": "Cube[currency=\"TRY\"]@rate",
      "usd": "Cube[currency=\"USD\"]@rate",
      "xdr": "Cube[currency=\"XDR\"]@rate",
      "zar": "Cube[currency=\"ZAR\"]@rate",
      "date": "@time"
    },
    "required": [
      "date"
    ],
    "types": {
      "aud": "number",
      "brl": "number",
      "cad": "number",
      "chf": "number",
      "cny": "number",
      "czk": "number",
      "eur": "number",
      "gbp": "number",
      "hkd": "number",
      "huf": "number",
      "idr": "number",
      "ils": "number",
      "inr": "number",
      "isk": "number",
      "jpy": "number",
      "krw": "number",
      "mxn": "number",
      "myr": "number",
      "nok": "number",
      "nzd": "number",
      "php": "number",
      "pln": "number",
      "ron": "number",
      "sek": "number",
      "sgd": "number",
      "thb": "number",
      "try": "number",
      "usd": "number",
      "xdr": "number",
      "zar": "number",
      "date": "date"
    }
  },
  "key_field": "date",
  "schedule": "daily",
  "rights": true,
  "catalog": {
    "slug": "danmarks-nationalbank-krone-exchange-rates",
    "version_id": "0f09d4f9-f61b-4e65-b58e-a120ae1c734d"
  }
}

REST API

Create an API key under Console → API keys. Reference: /docs/api.

# the Verified entry (fields, recipe, sample, terms) as JSON
curl https://sourcefinch.com/v1/catalog/danmarks-nationalbank-krone-exchange-rates -H "Authorization: Bearer $SOURCEFINCH_API_KEY"

# create the monitor from source.json (below)
curl -X POST https://sourcefinch.com/v1/sources \
  -H "Authorization: Bearer $SOURCEFINCH_API_KEY" \
  -H "Content-Type: application/json" \
  -H "Idempotency-Key: $(uuidgen)" \
  -d @source.json

# then run it now (later runs follow the schedule)
curl -X POST https://sourcefinch.com/v1/sources/$SOURCE_ID/runs \
  -H "Authorization: Bearer $SOURCEFINCH_API_KEY" \
  -H "Idempotency-Key: $(uuidgen)"

CLI

The sourcefinch CLI is not on npm yet; see /docs/cli.

sourcefinch login
sourcefinch catalog get danmarks-nationalbank-krone-exchange-rates --source-json > source.json
sourcefinch sources create --file source.json
sourcefinch runs create $SOURCE_ID --wait
sourcefinch records $SOURCE_ID

TypeScript SDK

The SDK is not on npm yet; see /docs/sdk.

import { SourceFinch } from "@sourcefinch/sdk";

const sf = new SourceFinch({ apiKey: process.env.SOURCEFINCH_API_KEY });
const entry = await sf.catalog.get("danmarks-nationalbank-krone-exchange-rates");
const source = await sf.sources.create({
  catalog: { slug: entry.slug, version_id: entry.recipe.version_id },
  name: entry.name.slice(0, 100),
  url: entry.acquisition_path.endpoint,
  recipe: entry.recipe.definition,
  key_field: entry.recipe.key_field,
  schedule: entry.recipe.schedule,
  rights: true, // you confirm you have the right to collect this source
});
const run = await sf.runs.wait((await sf.runs.create(source.id)).id);
console.log(run.status);

MCP

Remote MCP server with OAuth; see /docs/mcp.

claude mcp add --transport http sourcefinch https://sourcefinch.com/mcp

# then ask your agent:
"Use SourceFinch to monitor Danish krone exchange rates, last five business days: get_catalog_source danmarks-nationalbank-krone-exchange-rates,
then create_source with its create_source_args (dry run first), then run_source."

Pricing

Each check is one run, whatever the number of records, and failed runs are free. On its default daily schedule this source uses about 30 runs a month, which fits the Free plan's 300 runs. It uses HTTP acquisition, so no browser runs are needed. See plans.

Guides using this source

All guides

More from Danmarks Nationalbank and in exchange rates.

SourceFinch is independent and is not affiliated with or endorsed by Danmarks Nationalbank. This page describes danish krone exchange rates, last five business days as SourceFinch acquires it.