Initask API

API курсу НБУ: офіційний курс гривні на будь-яку дату

Офіційний курс гривні НБУ на задану дату: для всіх валют або лише для потрібних кодів. Курс подається за одну одиницю валюти, дата у відповіді це дата встановлення курсу.

Де застосовують: Перерахунок інвойсу у гривню на дату операції, курсові різниці в обліку, ціни в інтернет-магазині.

Запит

GEThttps://dani.initask.com/v1/rates

ПараметрДеОпис
dateзапитДата у форматі YYYY-MM-DD, від 1996-01-06 до завтра. Без параметра береться сьогодні за Києвом.
curзапитКоди валют ISO 4217 через кому, до 20 кодів. Без параметра повертаються всі валюти.

Приклади

curl

curl -H "Authorization: Bearer $INITASK_KEY" "https://dani.initask.com/v1/rates?date=2026-09-25&cur=USD,EUR"

JavaScript

const r = await fetch("https://dani.initask.com/v1/rates?date=2026-09-25&cur=USD,EUR", {
  headers: { Authorization: `Bearer ${process.env.INITASK_KEY}` },
});
const { ok, data, error } = await r.json();
console.log(r.headers.get("X-RateLimit-Remaining"), data);

Python

import os, requests

r = requests.get(
    "https://dani.initask.com/v1/rates?date=2026-09-25&cur=USD,EUR",
    headers={"Authorization": f"Bearer {os.environ['INITASK_KEY']}"},
    timeout=10,
)
body = r.json()
print(r.headers["X-RateLimit-Remaining"], body["data"])

Змінна INITASK_KEY містить ваш ключ. Без ключа запит теж пройде в межах 100 запитів на добу.

Відповідь

Справжня відповідь на запит /v1/rates?date=2026-09-25&cur=USD,EUR.

{
  "ok": true,
  "data": {
    "date": "2026-09-25",
    "base": "UAH",
    "rates": [
      {
        "cc": "EUR",
        "name": "Євро",
        "rate": 51.122,
        "r030": 978
      },
      {
        "cc": "USD",
        "name": "Долар США",
        "rate": 44.9729,
        "r030": 840
      }
    ]
  },
  "meta": {
    "source": "kurs.initask.com",
    "cached": false
  }
}
dateдата курсу
baseбазова валюта, завжди UAH
ratesкурси
rates[].ccкод валюти
rates[].nameназва валюти
rates[].rateгривень за одну одиницю
rates[].r030цифровий код валюти

Помилки

HTTPerrorКоли
400bad_requestдата у форматі, відмінному від YYYY-MM-DD, або поза межами
404not_foundна дату немає курсів або серед них немає запитаних валют
429rate_limitedліміт вичерпано, дивіться Retry-After
502, 504upstream_*джерело даних недоступне, ліміт не витрачається

Джерело і свіжість

Дані: Національний банк України, архів kurs.initask.com з 2020 року, раніші дати напряму з bank.gov.ua. Шлюз тримає відповідь у кеші 10 хв, поле meta.cached показує, звідки вона.

Питання і відповіді

Коли зʼявляється курс на завтра?

НБУ встановлює курс на наступний робочий день близько 15:30 за Києвом, після цього запит з завтрашньою датою повертає новий курс.

Курс вказано за одну одиницю?

Так, для всіх валют, включно з єною і форинтом: поле rate це гривень за одну одиницю.

Як часто оновлюється відповідь?

Курс на минулу дату тримається в кеші добу, на сьогодні і завтра 10 хвилин.

Повʼязані ендпоінти

Отримати ключ API

Ключ прийде листом з каси Initask. Безкоштовний ключ дає 100 запитів на добу, платний тариф додається до того самого ключа.