Для AI-агентов: markdown этой страницы — /docs-content/entities/currencies/list.md индекс документации — /llms.txt

Список валют

GET /v1/currencies

Возвращает список валют портала с курсами обмена. В справочнике единицы записей.

Параметры

Параметр Тип По умолч. Описание
limit number 50 Количество записей
offset number 0 Пропустить N записей
select string — Выборка полей: ?select=id,fullName,amount
sort string — Сортировка: ?sort=-sort. Допустимые поля — sort, id, fullName. Неизвестное имя возвращает 400 UNKNOWN_SORT_FIELD до вызова Битрикс24
order object — Сортировка в объектной форме: ?order[sort]=asc. Те же допустимые поля, что у sort. При передаче обоих параметров приоритет у sort
filter object — Не поддерживается для валют. Любой ключ возвращает 400 UNSUPPORTED_FILTER. Получите весь справочник и отфильтруйте записи на стороне клиента
withTotal boolean — Принимается, но на ответ не влияет: meta.total приходит при любом значении и при любом offset

Примеры

curl — личный ключ

Terminal
curl "https://vibecode.bitrix24.tech/v1/currencies?select=id,fullName,amount,base" \
  -H "X-Api-Key: YOUR_API_KEY"

curl — OAuth-приложение

Terminal
curl "https://vibecode.bitrix24.tech/v1/currencies?select=id,fullName,amount,base" \
  -H "X-Api-Key: YOUR_APP_KEY" \
  -H "Authorization: Bearer USER_SESSION_TOKEN"

JavaScript — личный ключ

javascript
const res = await fetch('https://vibecode.bitrix24.tech/v1/currencies?select=id,fullName,amount,base', {
  headers: { 'X-Api-Key': 'YOUR_API_KEY' },
})
const { success, data, meta } = await res.json()

JavaScript — OAuth-приложение

javascript
const res = await fetch('https://vibecode.bitrix24.tech/v1/currencies?select=id,fullName,amount,base', {
  headers: {
    'X-Api-Key': 'YOUR_APP_KEY',
    'Authorization': 'Bearer USER_SESSION_TOKEN',
  },
})
const { success, data, meta } = await res.json()

Поля ответа

Поле Тип Описание
success boolean Всегда true при успехе
data array Массив валют. Поле lang в элементах не приходит — его возвращает GET /v1/currencies/:id
data[].id string Код валюты (RUB, USD, EUR)
data[].amountCnt number Количество единиц для курса
data[].amount number Курс обмена
data[].sort number Сортировка
data[].base boolean Базовая валюта
data[].fullName string Название (руб., $)
data[].lid string Идентификатор сайта, к которому привязана валюта
data[].formatString string Формат отображения
data[].decPoint string Разделитель дробной части
data[].thousandsSep string Разделитель тысяч
data[].decimals number Знаков после запятой
data[].dateUpdate datetime Дата последнего изменения
meta.total number Сколько валют в справочнике
meta.hasMore boolean Есть ли следующая страница

Пример ответа

JSON
{
  "success": true,
  "data": [
    {
      "id": "RUB",
      "fullName": "Российский рубль",
      "amount": 1,
      "amountCnt": 1,
      "base": true,
      "sort": 100,
      "formatString": "# руб.",
      "decimals": 2,
      "decPoint": ".",
      "thousandsSep": " "
    },
    {
      "id": "USD",
      "fullName": "Доллар США",
      "amount": 92.5,
      "amountCnt": 1,
      "base": false,
      "sort": 200
    }
  ],
  "meta": { "total": 3, "hasMore": false }
}

Пример ответа при ошибке

400 — фильтрация не поддерживается:

JSON
{
  "success": false,
  "error": {
    "code": "UNSUPPORTED_FILTER",
    "message": "UNSUPPORTED_FILTER: 'currencies' does not support server-side filtering. Its Bitrix24 method (crm.currency.list) silently ignores every filter key and returns the full list — retrieve all records and filter client-side."
  }
}

Ошибки

HTTP Код Описание
400 UNSUPPORTED_FILTER Передан любой ключ в filter. Валюты не фильтруются на стороне сервера — получите весь справочник и отфильтруйте записи на стороне клиента
400 UNKNOWN_SORT_FIELD Поле в sort или order не входит в список sort, id, fullName. Сообщение перечисляет допустимые имена. Запрос не уходит в Битрикс24
403 SCOPE_DENIED API-ключ не имеет скоупа crm
401 MISSING_API_KEY Не передан заголовок X-Api-Key
429 RATE_LIMITED Превышен лимит запросов: 300 в минуту на портал, все API-ключи портала делят один лимит. Точное значение — в заголовке x-ratelimit-limit (потолок делится на реплики). Повторите после срока из заголовка Retry-After

Полный список ошибок — Ошибки.

Смотрите также