Обновление курсов валют

Метод Update currency rates используется для обновления курсов валют на уровне текущего реселлера или любого из его нижестоящих реселлеров:

  • Список доступных валют см. в Получение списка курсов валют.
  • Одновременно можно обновить курсы нескольких валют.
  • Если в запросе несколько раз указана одна и та же пара валют, курс последовательно обновляется несколько раз.

Курсы валют и коэффициент корректировки автоматически обновляются для всех реселлеров на всех нижестоящих уровнях, где не были вручную заданы свои значения. По умолчанию все курсы валют и коэффициенты корректировки установлены равными 1. Подробнее см. Управление курсами валют.

Для авторизации требуется API-токен менеджера (сотрудника). API-токен можно получить через Панель управления Оператора (см. Просмотр и обновление информации о сотруднике).

По указанному в запросе API-токену определяются:

  • Роль и уровень доступа менеджера, от которых зависит доступность метода.
  • Текущий реселлер и его нижестоящие реселлеры, доступные в рамках метода.

PATCH {base_url}/api/v3/resellers/{reseller_id}/currency_rates

Аргументы

Название

Тип параметра

Тип данных

Обязательный/ 
Опциональный

Описание

X-Api-TokenheaderstringОбязательныйAPI-токен сотрудника, выполняющего операцию (см. Просмотр и обновление информации о сотруднике)
Content-TypeheaderstringОбязательныйТип данных, передаваемых в запросе. Необходимо указать: application/vnd.api+json
AcceptheaderstringОбязательныйПоддерживаемые типы данных в ответе. Необходимо указать: application/vnd.api+json
base_urlpathstringОбязательныйURL ActivePlatform
reseller_idpathintegerОбязательныйID реселлера. Возможно указать ID текущего реселлера или ID любого из его нижестоящих реселлеров (см. Просмотр информации о реселлере)
base_currencyformstringОбязательныйКод валюты по ISO 4217:2008, по отношению к которой обновляется курс. Например, валюта реселлера
foreign_currencyformstringОбязательныйКод валюты по ISO 4217:2008, курс которой обновляется. Например, валюта тарифного плана
quantityformintegerОбязательныйНоминал (количество единиц) валюты, для которого установлен курс
rateformnumberОбязательныйНовый курс валюты для указанного quantity
adjustmentformnumberОпциональныйНовое значение корректировки курса для клиента — коэффициента, на который умножается установленный курс валюты (от 0.0001 до 1000)
show_for_clientformboolОпциональный

Новое значение признака отображения курса валюты в Панели управления Клиента (см. Стандартная структура страниц):

  • true — отобразить курс валюты в Панели управления Клиента.
  • false — скрыть курс валюты в Панели управления Клиента.

Модель ответа

НазваниеТип данныхОписание
dataarray of objectsДанные ответа

idstringID курса валют

typestringТип данных

attributesobject

Параметры курсов валют



created_atstringДата и время создания курсов валют


updated_atstringДата и время последнего обновления курсов валют


from_idstringID валюты, для которой установлен курс. Соответствует foreign_currency в теле запроса


to_idstringID валюты, по отношению к которой установлен курс. Соответствует base_currency в теле запроса


ratestringУстановленный курс валюты для указанного quantity


quantityintegerНоминал (количество единиц) валюты, для которого установлен курс


currentboolПризнак действующего курса. Всегда возвращается true


reseller_idintegerID реселлера


show_for_clientbool

Признак отображения курса валюты в Панели управления Клиента (см. Стандартная структура страниц):

  • true — курс валюты отображается в Панели управления Клиента.
  • false курс валюты не отображается в Панели управления Клиента.


adjustmentstringКорректировка курса для клиента — коэффициент, на который умножается установленный курс валюты

Пример запроса

PATCH /api/v3/resellers/1/currency_rates
Host: test.activeplatform.com
Content-Type: application/vnd.api+json
X-Api-Token: vY5fwetest3gJXZH5uHCw
Accept: application/vnd.api+json
{
    "data": {
        "attributes": [
            {
                "base_currency": "USD",
                "foreign_currency": "EUR",
                "quantity": 1,
                "rate": 1.2200,
                "adjustment": 1.2000,
                "show_for_client": true
            },
            {
                "base_currency": "USD",
                "foreign_currency": "MYR",
                "quantity": 100,
                "rate": 1.43,
                "adjustment": 1.1100,
                "show_for_client": true
            }
        ]
    }
}

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

{
    "data": [
        {
            "id": "606",
            "type": "currency_rates",
            "attributes": {
                "created_at": "2024-10-04T16:23:46.198+03:00",
                "updated_at": "2024-10-04T16:23:46.198+03:00",
                "from_id": 2,
                "to_id": 1,
                "rate": "1.22",
                "quantity": 1,
                "current": true,
                "reseller_id": 1,
                "show_for_client": true,
                "adjustment": "1.2"
            }
        },
        {
            "id": "607",
            "type": "currency_rates",
            "attributes": {
                "created_at": "2024-10-04T16:23:46.235+03:00",
                "updated_at": "2024-10-04T16:23:46.235+03:00",
                "from_id": 4,
                "to_id": 1,
                "rate": "1.43",
                "quantity": 100,
                "current": true,
                "reseller_id": 1,
                "show_for_client": true,
                "adjustment": "1.11"
            }
        }
    ]
}