Skip to main content

Python client for NERSC SF API

Project description

Welcome to sfapi_client

sfapi_client is a Python 3 client for NERSC's Superfacility API.


Install sfapi_client using pip:

$ pip install sfapi_client

Let's get started by checking the status of perlmutter:

>>> from sfapi_client import Client
>>> from sfapi_client.compute import Machine
>>> with Client() as client:
...     status = client.compute(Machine.perlmutter)
...
>>> status
Compute(name='perlmutter', full_name='Perlmutter', description='System Degraded', system_type='compute', notes=['2023-04-26 18:16 -- 2023-04-28 09:30 PDT, System Degraded, Rolling reboots are complete, a final reboot is scheduled for 0930 PDT'], status=<StatusValue.degraded: 'degraded'>, updated_at=datetime.datetime(2023, 4, 26, 18, 16, tzinfo=datetime.timezone(datetime.timedelta(days=-1, seconds=61200))), client=<sfapi_client._sync.client.Client object at 0x102c871c0>)

Features

  • async interface and standard synchronous interface.
  • Fully type annotated.

Documentation

For the basics, head over to the QuickStart. We also have Jupyter Notebook examples.

More in depth developer documentation can be found in the API reference.

Dependencies

The sfapi_client project relies on these libraries:

  • httpx - HTTP support.
  • authlib - OAuth 2.0 authentication.
  • pydantic - Data models.
  • tenacity - Retry.
  • datamodel-code-generator - Generating data models from the Open API specification.
  • unasync - Generating synchronous interface from the async implementation.

Installation

Install with pip:

$ pip install sfapi_client

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

sfapi_client-0.4.1.tar.gz (56.2 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

sfapi_client-0.4.1-py3-none-any.whl (44.8 kB view details)

Uploaded Python 3

File details

Details for the file sfapi_client-0.4.1.tar.gz.

File metadata

  • Download URL: sfapi_client-0.4.1.tar.gz
  • Upload date:
  • Size: 56.2 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.12.8

File hashes

Hashes for sfapi_client-0.4.1.tar.gz
Algorithm Hash digest
SHA256 a15b220e1de6eea6148bde9ffb46e0fabfffe4117d40d2c3d4014262bcdf23c3
MD5 d7c1c51d24e21dcb15743162ee3318e0
BLAKE2b-256 55353f3f2d073b8876dbf4b8732ecaa3fa3a4db0637e2712fd57e51ade64c401

See more details on using hashes here.

Provenance

The following attestation bundles were made for sfapi_client-0.4.1.tar.gz:

Publisher: pypi.yml on NERSC/sfapi_client

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file sfapi_client-0.4.1-py3-none-any.whl.

File metadata

  • Download URL: sfapi_client-0.4.1-py3-none-any.whl
  • Upload date:
  • Size: 44.8 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.12.8

File hashes

Hashes for sfapi_client-0.4.1-py3-none-any.whl
Algorithm Hash digest
SHA256 a8e74108c257106ddb956f17eda856c46e0d6f4003c5f9e2bff276f9a24e6340
MD5 5963162cf09cef7aec98f3cef962152d
BLAKE2b-256 7d5176b92f640812e70429b8ca04d5a9c2d0eb63e615add4a84585b18f7b948b

See more details on using hashes here.

Provenance

The following attestation bundles were made for sfapi_client-0.4.1-py3-none-any.whl:

Publisher: pypi.yml on NERSC/sfapi_client

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page