Для AI-агентов: markdown этой страницы — /docs-content/entities/currencies/fields.md индекс документации — /llms.txt
Поля валюты
GET /v1/currencies/fields
Возвращает описание всех полей сущности с типами и атрибутами.
Примеры
curl — личный ключ
curl "https://vibecode.bitrix24.tech/v1/currencies/fields" \
-H "X-Api-Key: YOUR_API_KEY"
curl — OAuth-приложение
curl "https://vibecode.bitrix24.tech/v1/currencies/fields" \
-H "X-Api-Key: YOUR_APP_KEY" \
-H "Authorization: Bearer USER_SESSION_TOKEN"
JavaScript — личный ключ
const res = await fetch('https://vibecode.bitrix24.tech/v1/currencies/fields', {
headers: { 'X-Api-Key': 'YOUR_API_KEY' },
})
const { success, data } = await res.json()
JavaScript — OAuth-приложение
const res = await fetch('https://vibecode.bitrix24.tech/v1/currencies/fields', {
headers: {
'X-Api-Key': 'YOUR_APP_KEY',
'Authorization': 'Bearer USER_SESSION_TOKEN',
},
})
const { success, data } = await res.json()
Поля ответа
| Поле | Тип | Описание |
|---|---|---|
success |
boolean | Всегда true при успехе |
data |
object | Описание полей валюты и операции пакетного режима |
data.fields |
object | Карта полей валюты. Ключ — имя поля, как в ответах API, значение — его описание |
data.batch |
array | Операции, доступные в пакетном вызове: create, update, delete |
Каждое поле карты fields описано типом type, признаком readonly, подписью label и описанием description. Подпись label и описание description приходят на русском языке. Заголовками запроса язык не переключается.
Поля валюты в карте fields:
| Поле | Тип | RO | Описание |
|---|---|---|---|
id |
string | Код валюты (RUB, USD, EUR). Задаётся при создании валюты | |
amount |
number | Курс обмена | |
amountCnt |
number | Количество единиц для курса | |
base |
boolean | Базовая валюта | |
sort |
number | Сортировка | |
fullName |
string | Название (руб., $) | |
formatString |
string | Формат отображения | |
decPoint |
string | Разделитель дробной части | |
thousandsSep |
string | Разделитель тысяч | |
decimals |
number | Знаков после запятой | |
lid |
string | да | Идентификатор сайта, к которому привязана валюта |
dateUpdate |
datetime | да | Дата последнего изменения |
lang |
object | да | Настройки отображения по языкам — формат, название, разделители, с ключом-идентификатором языка. Приходит в ответах POST /v1/currencies и GET /v1/currencies/:id. В списке GET /v1/currencies не возвращается |
Пример ответа
{
"success": true,
"data": {
"fields": {
"id": { "type": "string", "readonly": false, "label": "Код валюты", "description": "Код валюты по ISO 4217 (RUB, USD, EUR). Задаётся при создании." },
"amount": { "type": "number", "readonly": false, "label": "Курс обмена", "description": "Курс обмена относительно базовой валюты." },
"amountCnt": { "type": "number", "readonly": false, "label": "Номинал", "description": "Количество единиц валюты, для которых указан курс." },
"base": { "type": "boolean", "readonly": false, "label": "Базовая валюта", "description": "Является ли валюта базовой для портала." },
"sort": { "type": "number", "readonly": false, "label": "Сортировка", "description": "Порядок сортировки в списке валют." },
"fullName": { "type": "string", "readonly": false, "label": "Название", "description": "Отображаемое название валюты." },
"formatString": { "type": "string", "readonly": false, "label": "Строка формата вывода", "description": "Шаблон вывода сумм в этой валюте (# — место для числа)." },
"decimals": { "type": "number", "readonly": false, "label": "Количество десятичных знаков", "description": "Сколько знаков показывать после запятой." },
"decPoint": { "type": "string", "readonly": false, "label": "Десятичный разделитель", "description": "Символ, используемый как разделитель дробной части." },
"thousandsSep": { "type": "string", "readonly": false, "label": "Разделитель тысяч", "description": "Символ, используемый как разделитель тысяч." },
"lid": { "type": "string", "readonly": true, "label": "Сайт", "description": "Идентификатор сайта, к которому привязана валюта." },
"dateUpdate": { "type": "datetime", "readonly": true, "label": "Дата изменения", "description": "Дата последнего изменения валюты." },
"lang": { "type": "object", "readonly": true, "label": "Привязка к языку", "description": "Настройки отображения по языкам (формат, название, разделители), с ключом-идентификатором языка. Приходит в ответах POST /v1/currencies и GET /:id. В списке отсутствует." }
},
"batch": ["create", "update", "delete"]
}
}
Пример ответа при ошибке
403 — у API-ключа нет скоупа crm:
{
"success": false,
"error": {
"code": "SCOPE_DENIED",
"message": "This endpoint requires 'crm' scope",
"hint": "This request needs the 'crm' scope, which the calling key does not carry. Add 'crm' to this key in the developer cabinet (or through the management API), then repeat the call.",
"cause": "key_scope_missing",
"requiredScope": "crm",
"keyScopes": ["task", "im"],
"fix": { "action": "edit_key_scopes", "via": "cabinet" },
"userMessage": "Ключу приложения не хватает права «CRM». Добавить его можно в настройках ключа в кабинете разработчика."
}
}
Ошибки
| HTTP | Код | Описание |
|---|---|---|
| 403 | SCOPE_DENIED |
API-ключ не имеет скоупа crm |
| 401 | MISSING_API_KEY |
Не передан заголовок X-Api-Key |
| 429 | RATE_LIMITED |
Превышен лимит запросов: 300 в минуту на портал, все API-ключи портала делят один лимит. Точное значение — в заголовке x-ratelimit-limit (потолок делится на реплики). Повторите после срока из заголовка Retry-After |
Полный список ошибок — Ошибки.