Обзор

Програмные интерфейсы позволяют использовать данные об уровне инфляции разных стран и логику инфляционных калькуляторов на сторонних веб сайтах, блогах и приложениях. Например, используя веб сервисы, можно разместить инфяционный калькулятор на своем сайте, при этом он всегда будет использовать самые свежие данные.

Веб сервисы поддерживают разные протоколы и стандарты, такие как json, jsonp, xml(soap)

Условия Использования

Веб сервисы и програмные интерфейсы предоставляются бесплатно при условии соблюдения следующих пунктов:

  • Некоммерческое использование
  • Указание ссылки на источник данных - statbureau.org. Например: <a href = "https://www.statbureau.org" >www.statbureau.org</a>

Сервисы

Вы можете использовать следующие методы:

decimal CalculateInflationRate(string country, DateTime start, DateTime end)

Метод позволяет рассчитать уровень инфляции (в процентах) между двумя месяцами (включительно) для выбранной страны.

  • country - страна (belarus, brazil, canada, european-union, eurozone, france, germany, greece, india, japan, kazakhstan, mexico, russia, spain, turkey, ukraine, united-kingdom, united-states)
  • start - первый месяц, включительно
  • end - последний месяц, включительно
  • возвращает уровень инфляции, в процентах, десятичное число

decimal CalculatePriceChange(string country, DateTime start, DateTime end, decimal amount, List<DateTime> denominationsToApply)

Этот метод позволяет рассчитать изменение цены со временем, вызванное инфляцией, в выбранной стране за указанный период.

  • country - страна (belarus, brazil, canada, european-union, eurozone, france, germany, greece, india, japan, kazakhstan, mexico, russia, spain, turkey, ukraine, united-kingdom, united-states)
  • start - первый месяц, включительно
  • end - последний месяц, включительно
  • amount - цена в начале первого месяца
  • denominationsToApply - список деноминаций в формате даты, которые нужно учитывать, например деноминация в России 1998-1-1
  • возвращает цену в конце второго месяца

decimal CalculateValueChange(string country, DateTime start, DateTime end, decimal amount, List<DateTime> denominationsToApply)

Этот метод позволяет опроеделить изменение покупательной способности (ценности) денег в выбранной стране за указаный период.

  • country - страна (belarus, brazil, canada, european-union, eurozone, france, germany, greece, india, japan, kazakhstan, mexico, russia, spain, turkey, ukraine, united-kingdom, united-states)
  • start - первый месяц, включительно
  • end - последний месяц, включительно
  • amount - сумма в начале первого месяца
  • denominationsToApply - список деноминаций в формате даты, которые нужно учитывать, например деноминация в России 1998-1-1
  • возвращает сумму в конце второго месяца

List<Denomination> GetDenominations(string country)

Возвращает список деноминаций для выбранной страны - даты и коэффициенты.

List<MonthlyInflation> GetData(string country)

Возвращает все данные для выбранной страны, которые у нас есть, инфляция по месяцам.

Json/Jsonp

Список json адресов:

  • /calculate-inflation-rate-json
  • /calculate-inflation-price-json
  • /calculate-inflation-value-json
  • /get-denominations-json
  • /get-data-json

Список jsonp адресов:

  • /calculate-inflation-rate-jsonp
  • /calculate-inflation-price-jsonp
  • /calculate-inflation-value-jsonp
  • /get-denominations-jsonp
  • /get-data-jsonp

Json и jsonp реализация поддерживают параметр 'format', который позволяет привести возвращаемое значение к формату денег.

Xml/SOAP

Все методы также доступны в стандарте Xml/Soap по следующему адресу: /WebServices/InflationService.svc

Пример

Ниже представлен достаточно наивный, но работающий пример использования jsonp сервисов для создания простого инфляционного калькулятора. Этот пример можно использовать на сторонних сайтах для расчета изменения цены за любой период.

Ниже представлен результат этого кода. Пример так же доступен тут: пример.

Start Month:
End Month:
Start Price:

End Price:
www.statbureau.org

Отзывы и Вопросы

Для связи с нами, пожалуйста воспользуйтесь этой страницей.