Содержание

API

Сервер pin.ifz.ru предоставляет API для автоматизированного доступа к расчетам по методам представленным в Интерактивном реестре.

API использует понятие категории методов. Следующие категории доступны через API:

Категория Описание
ident Система идентификации минералов
recalc Минералогические пересчеты
interpmin Интерпретация состава минерала и разложение на миналы
classifydiag Классификационные диаграммы
spydergrams Спайдерграммы
sensors Оценка PT условий с помощью геосенсоров

Получение списка методов представленных в Интерактивном реестре

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

curl https://pin.ifz.ru/ppy/api/list/[категория методов]

В ответ будет отправлен json со списком доступных методов, их кратким описанием и ссылкой на страницу соответствующего метода.

Выполнение расчетов методами представленными в Интерактивном реестре

Для выполнения расчетов через API необходим appid который может быть получен по запросу на f0ma@ifz.ru.

Для вызова метода через API необходимо выполнить запрос:

curl https://pin.ifz.ru/ppy/api/call/[категория методов]/[имя метода] -d '{"appid":"[ключ]", "type":"[тип ответа]", "dataframe":[список значений]}'

Имя метода может быть получено из ответа на запрос api/call/list/[категория методов].

Тип ответа может быть data или image для методов, которые поддерживают построение изображений (например, спайдерграммы).

В поле dataframe должен быть список словарей. Каждый словарь содержит пары ключ-значение в соответствии с правилами именования, например:

[{"Name": "Точка 1", "SiO2_wtp": 50.0, "TiO2_wtp": 0.9, "Al2O3_wtp": 18.5, "Fe2O3_wtp": 4.2, "FeO_wtp": 5.00, "MnO_wtp": 0.2, "CaO_wtp": 6.84, "MgO_wtp": 5.7, "K2O_wtp": 0.95, "Na2O_wtp": 2.88, "P2O5_wtp": 0.26}]

При использовании методов категории sensors следует указывать отдельные списки значений для каждого из минералов:

{'Grt':[список значений], 'Bt':[список значений]}