CurrencyRateAPI

Інструмент швидкого запуску

Потрібно протестувати API, не переглядаючи повну документацію? Перейдіть до Панелі керування, де ви знайдете Інструмент швидкого запуску — простий спосіб випробувати всі доступні кінцеві точки одним клацанням миші.

Натисніть кнопку нижче, щоб безкоштовно зареєструватися та почати користуватися інструментом швидкого запуску.

Початок роботи

Ключові терміни та поняття, які вам знадобляться для початку роботи з Currency Rate API:

Визначення Опис
Символ Трилітерний код валюти (наприклад, USD, EUR). Ми підтримуємо стандартні коди ISO 4217 для фіатних валют та різні коди для криптовалют .
Базова валюта Валюта, з якої починається конвертація. Наприклад, якщо 1 USD = X EUR, то USD є базовою валютою. Базовою валютою за замовчуванням є EUR.
Цільова валюта Валюта, в яку конвертується базова валюта. Використовуючи той самий приклад, євро є цільовою валютою.
Криптовалюти Окрім традиційних фіатних валют, наш API обробляє та надає обмінні курси для широкого спектру популярних криптовалют.
Базова URL-адреса Коренева URL-адреса, яка використовується для всіх кінцевих точок API. Усі запити надсилаються на цей базовий шлях.

Відповідь API

Обмінні курси, що надаються CurrencyRateAPI, за замовчуванням вказані в євро. Усі дані повертаються у стандартному форматі JSON і їх можна легко проаналізувати за допомогою будь-якої мови програмування.

Зразок відповіді:
Нижче ви знайдете зразок відповіді API, що містить ряд поширених світових валют, усі відносно євро та з позначкою часу, коли вони були отримані.

{
    "success": true,
    "base": "eur",
    "date": "2025-08-25",
    "rates": {
        "usd": "1.1697",
        "gbp": "0.8659",
        "cad": "1.6171"
    },
    "last_update_unix": "1769067006"
}

Як показано вище, відповідь API для обмінних курсів у режимі реального часу містить кілька ключових полів:

  • success вказує, чи був запит успішним.
  • base повертає 3-літерний код базової валюти, що використовується для цього запиту.
  • date повертає фактичну дату, для якої надано обмінні курси (формат РРРР-ММ-ДД).
  • rates містить список запитуваних валют та їх поточні обмінні курси.
  • last_update_unix показує позначку часу (у форматі Unix) останніх доступних даних у системі.

Доступні кінцеві точки

CurrencyRateAPI містить кілька кінцевих точок API, кожна з яких пропонує певний функціонал. Доступність певних кінцевих точок залежить від вашого плану підписки.

  • Кінцева точка списку валют. Ця кінцева точка повертає повний список усіх підтримуваних валют. /api/codes (Альтернатива: /api/currencies)
  • Кінцева точка останніх ставок. Ця кінцева точка повертає дані про обмінний курс у режимі реального часу для всіх підтримуваних валют. /api/latest
  • Кінцева точка історичних ставок. Ця кінцева точка повертає дані про історичні обмінні курси за певну дату. /api/YYYY-MM-DD (Альтернатива: /api/history?date=YYYY-MM-DD). Історичні дані доступні з 4 січня 1999 року.

Методологія обмінного курсу

Щоб забезпечити точність та узгодженість даних, CurrencyRateAPI дотримується суворої методології управління та надання обмінних курсів:

  • Середньоринкові тарифи: За замовчуванням API повертає mid ставки. Вони представляють собою середнє арифметичне між ринковими цінами купівлі ( bid ) та продажу ( ask ) або офіційними довідковими курсами центральних банків.
  • Фіналізація наприкінці дня (EOD): Історичні тарифи, надані API, остаточно встановлені станом на кінець дня за UTC (всесвітній координований час).
  • Розрахунок крос-курсу: Для валютних пар, які недоступні безпосередньо з наших джерел, система автоматично розраховує високоточні крос-курси, використовуючи основні світові валюти як міст (півот).
  • Розумний резервний механізм: Якщо дані для запитуваної дати недоступні (наприклад, через закриття ринку у вихідні або свята), система автоматично шукає найновіший дійсний курс протягом 8-денного періоду .
  • Висока точність: Щоб запобігти помилкам округлення у фінансових розрахунках, обмінні курси зберігаються та обробляються з точністю до 18 знаків після коми .

Кінцеві точки

Підтримувані символи кінцевої точки

https://currencyrateapi.com/api/codes

Ця кінцева точка повертає повний список усіх підтримуваних валют. Ви також можете використовувати псевдонім /api/currencies.

Список усіх підтримуваних валют у зручному для читання вигляді також доступний на нашій сторінці «Підтримувані валюти» .

Основні валюти: За замовчуванням деякі інші кінцеві точки (наприклад, /latest та /{YYYY-MM-DD}) повертають обмежений набір основних світових валют для мінімізації трафіку. Ці «базові» валюти:

USD, EUR, GBP, CHF, JPY, CAD, AUD, NZD, SEK, NOK, DKK, ISK, PLN, CZK, HUF, RON, HRK, RSD,
MKD, MDL, TRY, SGD, HKD, KRW, TWD, ILS, AED, SAR, QAR, KWD, BHD, OMR, ZAR

Відповідь API:

{
    "success": true,
    "currencies": {
        "EUR": {
            "entity": "EUROPEAN UNION",
            "currency": "Euro",
            "alphabetic_code": "EUR",
            "numeric_code": 978,
            "minor_unit": 2,
            "title": "Euro",
            "symbol": "€",
            "data_from": "1999-01-04"
        },
        "BTC": {
            "entity": "CRYPTOCURRENCY",
            "currency": "Bitcoin",
            "alphabetic_code": "BTC",
            "title": "Bitcoin",
            "symbol": "₿",
            "is_crypto": true,
            "data_from": "2024-03-02"
        },
        [...]
    }
}

Об'єкти відповіді:

Ключ Опис
success Повертає true для успішного запиту. Якщо false, у відповідь буде включено об'єкт помилки.
currencies Повертає всі підтримувані валюти з детальною інформацією про кожну.
entity Країна або регіон, де використовується валюта, або «КРИПТОВАЛЮТА» для цифрових активів.
currency Повна офіційна назва валюти.
alphabetic_code Стандартний 3-літерний алфавітний код (ISO 4217 для фіатних валют).
numeric_code Числовий код ISO 4217, якщо застосовується.
minor_unit Кількість знаків після коми, що використовуються для валюти.
withdrawal_date Дата вилучення валюти з обігу, якщо така є.
title Короткий заголовок валюти.
symbol Графічний символ валюти (наприклад, $, €, ₿).
is_crypto Прапорець ( true ), якщо валюта є криптовалютою.
data_from Найперша дата, за яку доступні дані про обмінний курс для цієї валюти.

Кінцева точка останніх тарифів

https://currencyrateapi.com/api/latest?
    base=USD&
    quote=GBP,JPY,EUR

Параметри запиту:

Параметр Опис
base [Необов'язково] Введіть 3-літерний код валюти ISO, щоб встановити базову валюту для конвертації. За замовчуванням – євро.
quote [Необов'язково] Введіть список кодів валют, розділених комами, щоб обмежити відповідь певними валютами. (Альтернатива: codes)
extended_list [Необов'язково] Якщо встановлено значення 1, API повертає повний список доступних валют. За замовчуванням повертається лише мінімальний список для зменшення трафіку.
precision [Необов'язково] Встановлює кількість знаків після коми у вихідних значеннях (0-18). За замовчуванням повертає повну доступну точність без наукової нотації.

Відповідь API:

{
    "success": true,
    "base": "usd",
    "date": "2026-01-22",
    "rates": {
        "gbp": "0.74350935478637",
        "jpy": "158.00358051914",
        "eur": "0.8518613169776"
    },
    "last_update_unix": "1769067006"
}

Об'єкти відповіді:

Ключ Опис
success Повертає true для успішного запиту. Якщо false, у відповідь буде включено об'єкт помилки.
base Повертає 3-літерний код базової валюти.
date Повертає фактичну дату, для якої надано обмінні курси.
rates Повертає дані обмінного курсу для валют, зазначених у запиті.
last_update_unix Повертає позначку часу Unix, яка вказує, коли повернуті дані востаннє оновлювалися.

Кінцева точка історичних ставок

https://currencyrateapi.com/api/2025-08-25?
    base=EUR&
    quote=USD,GBP,CAD

Альтернативний формат: /api/history?date=2025-08-25...

Параметри запиту:

Параметр Опис
date [Обов'язково] Історична дата, за яку запитуються обмінні курси. Формат: РРРР-ММ-ДД. Може бути надана в URL-шляху (наприклад, /api/2025-08-25) або як параметр запиту (наприклад, /api/history?date=2025-08-25).
base [Необов'язково] Введіть 3-літерний код валюти, щоб встановити базову валюту для конвертації. За замовчуванням – євро.
quote [Необов'язково] Введіть список кодів валют, розділених комами, щоб обмежити відповідь певними валютами. (Альтернатива: codes)
extended_list [Необов'язково] Якщо встановлено значення 1, API повертає повний список доступних валют. За замовчуванням повертається лише мінімальний список для зменшення трафіку.
precision [Необов'язково] Встановлює кількість знаків після коми у вихідних значеннях (0-18). За замовчуванням повертає повну доступну точність без наукової нотації.

Відповідь API:

{
    "success": true,
    "base": "eur",
    "date": "2025-08-25",
    "rates": {
        "usd": "1.1697",
        "gbp": "0.8659",
        "cad": "1.6171"
    },
    "last_update_unix": "1769067006"
}

Об'єкти відповіді:

Ключ Опис
success Повертає true для успішного запиту. Якщо false, у відповідь буде включено об'єкт помилки.
base Повертає 3-літерний код базової валюти.
date Повертає фактичну дату, для якої надано обмінні курси.
rates Повертає дані обмінного курсу для валют на дату, зазначену в запиті.
last_update_unix Повертає позначку часу Unix, яка вказує, коли повернуті дані востаннє оновлювалися.

Зразок коду

PHP (cURL)

// Set API Endpoint (can be 'latest' or a date 'YYYY-MM-DD')
$endpoint = 'latest';

// Initialize CURL:
$ch = curl_init('https://currencyrateapi.com/api/'.$endpoint.'?base=USD"e=GBP,JPY');
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);

// Store the data:
$json = curl_exec($ch);
curl_close($ch);

// Decode JSON response:
$exchangeRates = json_decode($json, true);

// Access the exchange rate values, e.g. GBP:
echo $exchangeRates['rates']['GBP'];

JavaScript (вибірка)

 // Set endpoint (can be 'latest' or a date 'YYYY-MM-DD')
const endpoint = 'latest';
const params = '?base=USD"e=GBP,JPY';

// Get exchange rates via the selected endpoint:
fetch('https://currencyrateapi.com/api/' + endpoint + params)
    .then(response => {
        return response.json();
    })
    .then(json => {

        // Exchange rate data is stored in json.rates
        console.log(json.rates.GBP);

        // Timestamp can be accessed in json.last_update_unix
        console.log(json.last_update_unix);
    })
    .catch(error => {
        console.error('Fetch error:', error);
    });