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.5.0.tar.gz (61.4 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.5.0-py3-none-any.whl (50.4 kB view details)

Uploaded Python 3

File details

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

File metadata

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

File hashes

Hashes for sfapi_client-0.5.0.tar.gz
Algorithm Hash digest
SHA256 aeb2e164b953f0ddc330871c581c51a609dd8eee974131fd4467b1a41c37c677
MD5 547dcb3900727a045ab8fe7bcb3f8186
BLAKE2b-256 22a8d83747fca97bc82179546edd750a4931a2ad37ca5bffd7702a2d6f7ee914

See more details on using hashes here.

Provenance

The following attestation bundles were made for sfapi_client-0.5.0.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.5.0-py3-none-any.whl.

File metadata

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

File hashes

Hashes for sfapi_client-0.5.0-py3-none-any.whl
Algorithm Hash digest
SHA256 e8cbd1375506cdecc0344a53adb9ef48ccfe8bc76864a7037afa25701e76dd9a
MD5 f1763002b88b1c45c8cfa4377254ee6a
BLAKE2b-256 63e5a8b045bbb7ed95d3a912e84ea35eeb776deda893f80cc8ebb881f87652ef

See more details on using hashes here.

Provenance

The following attestation bundles were made for sfapi_client-0.5.0-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