Metis infra API client in Python
Project description
Metis API client
This library allows for programmatic interactions with the Metis infrastructure.
Installation
pip install metis_client
Usage
There are two client flavors: asyncronous asyncio
client
and simplified synchronous client.
Asynchronous client
An asynchronous client is MetisAPIAsync
. Example of usage:
from metis_client import MetisAPIAsync, MetisTokenAuth
async def main():
async with MetisAPIAsync(API_URL, auth=MetisTokenAuth("VERY_SECRET_TOKEN")) as client:
print(await client.v0.auth.whoami())
data = await client.v0.datasources.create(content)
results = await client.v0.calculations.create_get_results(data["id"])
print(resuls)
See examples
directory for more examples.
Synchronous client
A synchronous client is MetisAPI
. Example of usage:
from metis_client import MetisAPI, MetisTokenAuth
client = MetisAPI(API_URL, auth=MetisTokenAuth("VERY_SECRET_TOKEN"), timeout=5)
data = client.v0.datasources.create(content)
results = client.v0.calculations.create_get_results(data["id"], timeout=False)
print(results)
NB in development one can replace a VERY_SECRET_TOKEN
string with the development user email, e.g.
admin@test.com
(refer to users_emails BFF table).
License
Author Sergey Korolev, Tilde Materials Informatics
Copyright 2023 BASF SE
BSD 3-Clause
Project details
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
metis_client-0.5.0.tar.gz
(36.5 kB
view hashes)
Built Distribution
Close
Hashes for metis_client-0.5.0-py3-none-any.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | a1a879229c91972c60201eb3c8e27966a26ad1d9ad9d690a711087817cb8868b |
|
MD5 | b13301135c6ee2fa5c37ce0711359039 |
|
BLAKE2b-256 | e43a8e3e21f112f6ba363c1099bda467a0120da1cd65f65a286d306e6177bb32 |