Это SDK облегчающий взаимодействие с API системы Garpix Load. SDK состоит из нескольких модулей, включая auth.py для аутентификации пользователей, calculation.py для выполнения различных операций, связанных с вычислениями, и config.ini в качестве файла конфигурации.
Для установки SDK используйте pip:
pip install git+https://github.com/NikolayNyunin/Garpix_Load_System-API-SDKВ качестве альтернативы можно клонировать репозиторий и выполнить команду:
pip install .Модуль auth.py предоставляет функцию login для аутентификации пользователя через API и получения токенов доступа.
Чтобы аутентифицировать пользователя, вызовите функцию login, передав ей имя пользователя и пароль:
import auth
tokens = auth.login('username', 'password')Это вернет словарь с токенами в случае успешной аутентификации.
При ошибке - исключение AuthenticationError.
Базовый URL API задан в config.ini:
[main]
base_url = https://example.com/api/Для начала работы нужно создать экземпляр класса Calculation, передав токен доступа:
calc = Calculation(access_token)
Затем можно вызывать методы:
create- создание нового расчетаget- получение списка расчетовget_by_id- получение конкретного расчета по id
calc.create(
project_id=123,
input_data={'param1': 'value1'},
status='new'
)На вход принимаются:
project_id- id проектаinput_data- входные данные для расчетаstatus- статус расчета Также можно указать:callback_url- url для callbackexternal_api- признак использования внешнего api В случае успеха вернется словарь с данными о созданном расчете. При ошибке будет выброшено исключениеCalculationError.
Чтобы получить список расчетов, вызовите метод get и передайте нужные параметры фильтрации:
calc.get(
project_id=123,
status='success'
)Доступные параметры:
favorite- избранные расчетыis_history- исторические расчетыis_recalculate- пересчитанныеordering- сортировкаpage- номер страницыpage_size- размер страницыproject_id- id проектаstatus- статус
Для получения конкретного расчета вызовите get_by_id, передав id расчета:
calc = calc.get_by_id(12345)Вернется словарь с данными этого расчета.
Базовый URL API задается в config.ini в разделе main параметром base_url.
- Python 3.6 и выше
- Библиотека
requests - Модуль
configparser
Тесты написаны в tests/test_calculation.py с использованием pytest.
Используйте pip для установки:
pip install git+https://github.com/NikolayNyunin/Garpix_Load_System-API-SDKили скопируйте исходный код.
from garpix_sdk import login, Calculation
tokens = login('username', 'password')
calc = Calculation(tokens['access_token'])
#Создать расчет
calculation = calc.create(...)
#Получить расчеты
calculations = calc.get()
#Получить расчет по id
single_calculation = calc.get_by_id(123)Версия 0.1.0:
- Аутентификация
- Создание, получение и фильтрация расчетов
В планах:
- Поддержка нескольких серверов API
- Сохранение токенов
- Уведомления при изменении расчетов
- Nikolay Nyunin (NikolayNyunin ↗)
- Bulat Askarov (BUBLET ↗)
This is a Software Development Kit (SDK) that facilitates interaction with the Garpix Load System API. The SDK consists of several modules including auth.py for user authentication, calculation.py for performing various operations related to calculations, and config.ini as a configuration file.
Use pip to install the SDK as follows:
pip install git+https://github.com/NikolayNyunin/Garpix_Load_System-API-SDKAlternatively, you can clone the repository and run:
pip install .The auth.py module provides the login function for authenticating users through the API and retrieving access tokens.
import auth
tokens = auth.login('username', 'password')This returns a dictionary with tokens upon successful authentication. In case of an error, an AuthenticationError exception is thrown.
The calculation.py module allows you to create, retrieve, and filter calculation records.
Instantiate the Calculation class by passing the access token:
calc = Calculation(access_token)You can then call the following methods:
create- Create a new calculation.get- Retrieve a list of calculations.get_by_id- Retrieve a specific calculation by id.
For detailed usage, please refer to the Usage section.
- Python 3.6 and above
- Requests library
- configparser module
Tests are written in tests/test_calculation.py using pytest.
from garpix_sdk import login, Calculation
tokens = login('username', 'password')
calc = Calculation(tokens['access_token'])
# Create a calculation
calculation = calc.create(...)
# Retrieve calculations
calculations = calc.get()
# Retrieve a calculation by id
single_calculation = calc.get_by_id(123)Version 0.1.0:
- User authentication
- Creation, retrieval, and filtering of calculations
Planned:
- Support for multiple API servers
- Token persistence
- Notifications for calculation updates
- Nikolay Nyunin (NikolayNyunin ↗)
- Bulat Askarov (BUBLET ↗)