LeaderData API SDK
Project description
LeaderData API SDK
Python SDK для работы с API LeaderData.
Установка
pip install leaderdata-sdk
После этого необходимо получить файл openapi.json
:
python -m leaderdata update
API периодически меняется и файл openapi.json
нужно обновлять для актулизации SDK.
Конфигурация
И импортируемый модуль и интерфейс командной строки для запросов обращаются к API по
адресу https://data.leader-id.ru
, этот адрес можно изменить переменными окружения
DSN
и SPEC_PATH
; где первая задает адрес хоста: проткол, домен, порт; а вторая
путь относительно хоста до openapi.json
.
Использование
Методы клиента соответствуют операциям API, и состоят из:
- имя метода – идентификатор операции;
- позиционный аргумент – может быть только один и используется для задания тела запроса;
- именованные аргументы - используются для передачи параметров строки запроса и подстановки переменных в пути, где они необходимы; клиент SDK сам определит какие аргументы чем являются.
Опциональность / обязательность аргументов можно определить из документации.
Идентификатор операции можно получить из документации API LeaderData. Для этого нужно выбрать необходимую операцию и обратить внимание на адресную строку, к примеру ссылка документации на операцию по чтению коллекций будет такой:
https://data.leader-id.ru/api/redoc#operation/collections__list_collections
Где идентификатор операции это: collections__list_collections
.
Таймаут на выполнение запроса
По умолчанию равен 5 секундам. Переопределить можно именованным аргументом _timeout
при вызове метода API. Допускается как число (целое / с плавающей точкой) обозначающее
таймут на весь запрос, так и экземпляр класса httpx.Timeout
, которым можно задать
таймауты на каждый этап запроса, подробнее об этом объекте и типах таймаутов
по ссылке
Примеры
Инициализация клиента
from leaderdata.api import Client
client = Client(client_id='APP_ID', client_secret='APP_SECRET')
Чтение списка принадлежащих приложению коллекций:
for collection in client.collections__list_collections(is_own=True):
print(f'collection id: {collection.id}, name: {collection.name}')
Создание новой коллекции:
collection = client.collections__create_collection({
'access_type': 'private',
'name': 'Very simple collection',
'description': 'From SDK README.md'
})
print(f'new collection id: {collection.id}')
Чтение созданной только что коллекции:
actual_collection_data = client.collections__read_collection(
collection_id=collection.id
)
print(f'collection current name: {actual_collection_data.name}')
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
File details
Details for the file leaderdata-sdk-0.0.1.tar.gz
.
File metadata
- Download URL: leaderdata-sdk-0.0.1.tar.gz
- Upload date:
- Size: 6.8 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/3.2.0 pkginfo/1.5.0.1 requests/2.21.0 setuptools/40.8.0 requests-toolbelt/0.9.1 tqdm/4.48.0 CPython/3.7.3
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | c2c7e4b57dc5d306c077136918796531e6c09a00f964b0ec5307134a8183cee0 |
|
MD5 | f0ac970489bf81ba33804bddc4df2f07 |
|
BLAKE2b-256 | 49d220c72579bb3f141a1a7b1ff386096f6c74bbfe78411835653c4f0382e993 |
File details
Details for the file leaderdata_sdk-0.0.1-py3-none-any.whl
.
File metadata
- Download URL: leaderdata_sdk-0.0.1-py3-none-any.whl
- Upload date:
- Size: 8.8 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/3.2.0 pkginfo/1.5.0.1 requests/2.21.0 setuptools/40.8.0 requests-toolbelt/0.9.1 tqdm/4.48.0 CPython/3.7.3
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | f71b3b40f5a4e07473a10e7507ed81fd59a2a9604f807e930f8f266f56aeed1f |
|
MD5 | 6c670ff961f7291a48445f97def3151e |
|
BLAKE2b-256 | 9226e79d104f30f88332266ed794364c538aa513e3d4d0917995e17e1ba8bcdf |