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.6.0.tar.gz (62.1 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.6.0-py3-none-any.whl (50.6 kB view details)

Uploaded Python 3

File details

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

File metadata

  • Download URL: sfapi_client-0.6.0.tar.gz
  • Upload date:
  • Size: 62.1 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.6.0.tar.gz
Algorithm Hash digest
SHA256 122ac4e2d0688a4af4c7328e0e82449f2378507f4a39bf06d3840337c89a758c
MD5 da95c5bbd06d92da7a6c9eb0a12f3b15
BLAKE2b-256 266bd7fc942cd5fef285c27b2545d867fedbacb491126c92c83ddcc62a4b9002

See more details on using hashes here.

Provenance

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

File metadata

  • Download URL: sfapi_client-0.6.0-py3-none-any.whl
  • Upload date:
  • Size: 50.6 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.6.0-py3-none-any.whl
Algorithm Hash digest
SHA256 14396215c662508e2de132357d289bade07f9abb8df2c2a74dc407cc551eacb8
MD5 d71da4f9f678022c276538881f530dbc
BLAKE2b-256 52ad631cb3b7466682f53eb495608d23ac63826029cd525da7e43c0f9058387b

See more details on using hashes here.

Provenance

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