Веб-сервис

Данная технология является устаревшей. Ее дальнейшее развитие не планируется. Рекомендуем использовать API.

http://www.nbrb.by/Services/ExRates.asmx

Описание методов веб-сервиса:

Получение официального курса белорусского рубля по отношению к иностранным валютам на определенную дату,

  • устанавливаемого ежедневно:
    ExRatesDaily2(ByVal onDate As DateTime) As DataSet
  • устанавливаемого ежемесячно:
    ExRatesMonthly2(ByVal onDate As DateTime) As DataSet

Параметр: onDate – дата в формате System.DateTime, на которую запрашивается курс.

Метод ExRatesDaily возвращает XML-документ в формате System.Data.Dataset, содержащий таблицу DailyExRatesOnDate, метод ExRatesMonthly – аналогичный XML-документ, но содержащий таблицу MonthlyExRatesOnDate.

Обе таблицы имеют одинаковую структуру:

  • Cur_Name – наименование валюты
  • Cur_Scale – номинал
  • Cur_OfficialRate – курс
  • Cur_Code – цифровой код
  • Cur_Abbreviation – буквенный код.

Возвращаемый DataSet в свойстве ExtendedProperties содержит элемент с ключом "onDate" и значением равным дате, на которую получен официальный курс. Для официального курса, устанавливаемого ежемесячно, элемент с ключом "onDate" содержит дату установления курса, действовавшего на запрашиваемую дату.

Для получения официального курса белорусского рубля по отношению к иностранным валютам на определенную дату также можно пользоваться методами ExRatesDaily и ExRatesMonthly, которые имеют аналогичные входные параметры и структуру выходного XML-документа, за исключением поля Cur_Name, вместо которого присутствует поле Cur_QuotName, содержащее имя валюты и номинал.

Полный перечень иностранных валют, по отношению к которым Национальным банком устанавливается официальный курс белорусского рубля:

  • CurrenciesRef2(ByVal Periodicity As Integer) As DataSet

Параметр Periodicity – периодичность установления курса (0 – ежедневно, 1 – ежемесячно).

Метод возвращает XML-документ в формате System.Data.Dataset, содержащий таблицу DailyCurrenciesRef (Periodicity=0) или таблицу MonthlyCurrenciesRef (Periodicity=1). Обе таблицы имеют одинаковую структуру:

  • Cur_Id – внутренний код
  • Cur_ParentID – этот код используется для связи, при изменениях кодов или названий фактически одной и той же валюты.
  • Cur_Code – цифровой код
  • Cur_Abbreviation – буквенный код
  • Cur_Name – наименование валюты
  • Cur_Name_Bel – наименование валюты на белорусском языке
  • Cur_Name_Eng – наименование валюты на английском языке
  • Cur_QuotName – наименование валюты, содержащее номинал
  • Cur_QuotName_Eng – наименование на белорусском, содержащее номинал
  • Cur_QuotName_Eng – наименование на английском, содержащее номинал
  • Cur_NameMulti– наименование валюты во множественном числе*
  • Cur_Name_BelMulti – наименование валюты на белорусском языке во множественном числе*
  • Cur_Name_EngMulti– наименование на английском языке во множественном числе*
  • Cur_Scale – количество единиц
  • Cur_DateStart – дата включения валюты в перечень валют, к которым устанавливается официальный курс бел. рубля
  • Cur_DateEnd – дата исключения валюты из перечня валют, к которым устанавливается официальный курс бел. рубля

Получение динамики официального курса белорусского рубля по отношению к заданной иностранной валюте
(не более чем за 365 дней):

  • ExRatesDyn(ByVal сurId As Integer, ByVal fromDate As DateTime, ByVal toDate As DateTime) As DataSet

Параметры:

  • сurId – внутренний код валюты (целое число)
  • fromDate – дата начала запрашиваемого периода в формате System.DateTime
  • toDate – дата окончания запрашиваемого периода в формате System.DateTime.

Метод возвращает XML-документ в формате System.Data.Dataset, содержащий таблицу Currency. Структура таблицы:

  • Date – дата установления курса
  • Cur_OfficialRate – курс.

Возвращаемый DataSet в свойстве ExtendedProperties содержит следующие элементы:

  • ключ "Id", значение – внутренний код валюты
  • ключ "fromDate", значение – первая дата внутри запрашиваемого периода, на которую установлен курс белорусского рубля к запрашиваемой валюте
  • ключ "toDate", значение – последняя дата внутри запрашиваемого периода, на которую установлен курс белорусского рубля к запрашиваемой валюте.

Последняя дата установления официального курса белорусского рубля по отношению к иностранным валютам, на

  • ежедневной основе:
    LastDailyExRatesDate() As DateTime
  • ежемесячной основе:
    LastMonthlyExRatesDate() As DateTime

Начальная дата установления официального курса белорусского рубля по отношению к иностранным валютам:

  • StartDate (ByVal Periodicity As Integer) As DateTime

Параметр Periodicity – периодичность установления курса (0 – ежедневно, 1 – ежемесячно).

Получение учетных цен на драгоценные металлы за период (не более чем за 31 день):

  • MetalsPrices(ByVal MetalId As Integer, ByVal fromDate As DateTime, ByVal toDate As DateTime) As DataSet

Параметры:

  • MetalId – внутренний код драгоценного металла (целое число), если MetalId=-1, возвращаются цены на все драг. металлы
  • fromDate – дата начала запрашиваемого периода в формате System.DateTime
  • toDate – дата окончания запрашиваемого периода в формате System.DateTime.

Метод возвращает XML-документ в формате System.Data.Dataset, содержащий таблицу AccountPrice.

Структура таблицы AccountPrice:

  • Date – дата установления цены
  • MetalId – внутренний код драгоценного металла (целое число)
  • Value – учетная цена.

Возвращаемый DataSet в свойстве ExtendedProperties содержит следующие элементы:

  • ключ "fromDate", значение – первая дата внутри запрашиваемого периода, на которую установлены цены на драг. металлы
  • ключ "toDate", значение – последняя дата внутри запрашиваемого периода, на которую установлены цены на драг. металлы

Получение перечня драгоценных металлов, на которые Национальный банк устанавливает цены:

  • MetalsRef() As DataSet

Метод возвращает XML-документ в формате System.Data.Dataset, содержащий таблицу MetalsRef.

Структура таблицы MetalsRef:

  • Id – внутренний код драгоценного металла (целое число)
  • Name – наименование на русском языке
  • NameBel – наименование на белорусском языке
  • NameEng – наименование на английском языке.

Последняя дата установления учетных цен на драгоценные металлы:

  • MetalsLastDate() As DateTime

Получение цен на драгоценные металлы в виде мерных слитков на дату:

  • IngotsPrices(ByVal onDate As DateTime) As DataSet

Параметры:

  • onDate – дата в формате System.DateTime, на которую запрашиваются цены.

Метод возвращает XML-документ в формате System.Data.Dataset, содержащий таблицу IngotsPrices.

Структура таблицы IngotsPrices:

  • Date – дата установления цены
  • MetalId – внутренний код драгоценного металла (целое число)
  • NoCertificateDollars – цена покупки без сертификата качества (в долларах США)*
  • NoCertificateRubles – цена покупки без сертификата качества (в белорусских рублях)*
  • CertificateDollars – цена покупки с сертификатом качества (в долларах США)*
  • CertificateRubles – цена покупки с сертификатом качества (в белорусских рублях)*
  • BanksDollars – цена продажи банкам (в долларах США)*
  • BanksRubles – цена продажи банкам (в белорусских рублях)*
  • EntitiesDollars – цена продажи юридическим и физическим лицам (за исключением банков, в долларах США)*
  • EntitiesRubles – цена продажи юридическим и физическим лицам
    (за исключением банков, в белорусских рублях)*.

Возвращаемый DataSet в свойстве ExtendedProperties содержит следующие элементы:

  • ключ "onDate", значение – дата установления цены.

Последняя дата установления цен на драгоценные металлы в виде мерных слитков:

  • IngotsLastDate () As DateTime

Получение ставки рефинансирования на дату:

  • RefRateOnDate(ByVal onDate As DateTime) As DataSet

Параметры:

  • onDate – дата в формате System.DateTime, на которую запрашивается значение ставки.

Метод возвращает XML-документ в формате System.Data.Dataset, содержащий таблицу RefRate.

Структура таблицы RefRate:

  • Date – дата установления ставки
  • Value – значение ставки.

Динамика ставки рефинансирования:

  • RefRateDyn() As DataSet

Метод возвращает XML-документ в формате System.Data.Dataset, содержащий таблицу RefRate.

Структура таблицы RefRate:

  • Date – дата установления ставки
  • Value – значение ставки.

Пример работы с веб–сервисом Demo.zip на VB.NET.

* Поле может принимать пустое значение DbNull.