Skip to main content

NERSC implementation of the IRI api

Project description

nersc-iri

IRI facility API for NERSC.

For more information, see: https://iri.science/

<img src="https://iri.science/images/doe-icon-old.png\" height=50 /> <img src="https://www.nersc.gov/_resources/themes/nersc/images/NERSC_logo_no_spacing.svg\" height=50 />

This Python package is automatically generated by the OpenAPI Generator project:

  • API version: 1.0.0
  • Package version: 1.0.0
  • Generator version: 7.19.0
  • Build package: org.openapitools.codegen.languages.PythonClientCodegen For more information, please visit https://www.nersc.gov/about/contact-us/

Requirements.

Python 3.9+

Installation & Usage

pip install

If the python package is hosted on a repository, you can install directly using:

pip install git+https://github.com/GIT_USER_ID/GIT_REPO_ID.git

(you may need to run pip with root permission: sudo pip install git+https://github.com/GIT_USER_ID/GIT_REPO_ID.git)

Then import the package:

import nersc_iri

Setuptools

Install via Setuptools.

python setup.py install --user

(or sudo python setup.py install to install the package for all users)

Then import the package:

import nersc_iri

Tests

Execute pytest to run the tests.

Getting Started

Please follow the installation procedure and then run the following:

import nersc_iri
from nersc_iri.rest import ApiException
from pprint import pprint

# Defining the host is optional and defaults to https://api.iri.nersc.gov
# See configuration.py for a list of all supported configuration parameters.
configuration = nersc_iri.Configuration(
    host = "https://api.iri.nersc.gov"
)



# Enter a context with an instance of the API client
with nersc_iri.ApiClient(configuration) as api_client:
    # Create an instance of the API class
    api_instance = nersc_iri.AccountApi(api_client)
    name = 'name_example' # str |  (optional)
    modified_since = '2026-02-21T12:00:00Z' # datetime |  (optional)
    offset = 0 # int |  (optional) (default to 0)
    limit = 100 # int |  (optional) (default to 100)

    try:
        # Get the list of capabilities
        api_response = api_instance.get_capabilities(name=name, modified_since=modified_since, offset=offset, limit=limit)
        print("The response of AccountApi->get_capabilities:\n")
        pprint(api_response)
    except ApiException as e:
        print("Exception when calling AccountApi->get_capabilities: %s\n" % e)

Documentation for API Endpoints

All URIs are relative to https://api.iri.nersc.gov

Class Method HTTP request Description
AccountApi get_capabilities GET /api/v1/account/capabilities Get the list of capabilities
AccountApi get_capability GET /api/v1/account/capabilities/{capability_id} Get a single capability
AccountApi get_project GET /api/v1/account/projects/{project_id} Get a single project
AccountApi get_project_allocation_by_project GET /api/v1/account/projects/{project_id}/project_allocations/{project_allocation_id} Get a single project allocation
AccountApi get_project_allocations_by_project GET /api/v1/account/projects/{project_id}/project_allocations Get the allocations of the current user's projects
AccountApi get_projects GET /api/v1/account/projects Get the projects of the current user
AccountApi get_user_allocation_by_project_allocation GET /api/v1/account/projects/{project_id}/project_allocations/{project_allocation_id}/user_allocations/{user_allocation_id} Get a user allocation of the current user's projects
AccountApi get_user_allocations_by_project_allocation GET /api/v1/account/projects/{project_id}/project_allocations/{project_allocation_id}/user_allocations Get the user allocations of the current user's projects
ComputeApi cancel_job DELETE /api/v1/compute/cancel/{resource_id}/{job_id} Cancel Job
ComputeApi get_job GET /api/v1/compute/status/{resource_id}/{job_id} Get Job Status
ComputeApi get_jobs POST /api/v1/compute/status/{resource_id} Get Job Statuses
ComputeApi launch_job POST /api/v1/compute/job/{resource_id} Submit Job
ComputeApi update_job PUT /api/v1/compute/job/{resource_id}/{job_id} Update Job
FacilityApi get_facility GET /api/v1/facility Get Facility
FacilityApi get_site GET /api/v1/facility/sites/{site_id} Get Site
FacilityApi get_sites GET /api/v1/facility/sites List Sites
FilesystemApi checksum GET /api/v1/filesystem/checksum/{resource_id} Get Checksum
FilesystemApi chmod PUT /api/v1/filesystem/chmod/{resource_id} Put Chmod
FilesystemApi chown PUT /api/v1/filesystem/chown/{resource_id} Put Chown
FilesystemApi compress POST /api/v1/filesystem/compress/{resource_id} Post Compress
FilesystemApi cp POST /api/v1/filesystem/cp/{resource_id} Post Cp
FilesystemApi download GET /api/v1/filesystem/download/{resource_id} Get Download
FilesystemApi extract POST /api/v1/filesystem/extract/{resource_id} Post Extract
FilesystemApi file GET /api/v1/filesystem/file/{resource_id} Get File
FilesystemApi head GET /api/v1/filesystem/head/{resource_id} Get Head
FilesystemApi ls GET /api/v1/filesystem/ls/{resource_id} Get Ls Async
FilesystemApi mkdir POST /api/v1/filesystem/mkdir/{resource_id} Post Mkdir
FilesystemApi mv POST /api/v1/filesystem/mv/{resource_id} Move Mv
FilesystemApi rm DELETE /api/v1/filesystem/rm/{resource_id} Delete Rm
FilesystemApi stat GET /api/v1/filesystem/stat/{resource_id} Get Stat
FilesystemApi symlink POST /api/v1/filesystem/symlink/{resource_id} Post Symlink
FilesystemApi tail GET /api/v1/filesystem/tail/{resource_id} Get Tail
FilesystemApi upload POST /api/v1/filesystem/upload/{resource_id} Post Upload
FilesystemApi view GET /api/v1/filesystem/view/{resource_id} Get View
StatusApi get_event_by_incident GET /api/v1/status/incidents/{incident_id}/events/{event_id} Get a specific event
StatusApi get_events_by_incident GET /api/v1/status/incidents/{incident_id}/events Get all events for an incident
StatusApi get_incident GET /api/v1/status/incidents/{incident_id} Get a specific incident and its events
StatusApi get_incidents GET /api/v1/status/incidents Get all incidents without their events
StatusApi get_resource GET /api/v1/status/resources/{resource_id} Get a specific resource
StatusApi get_resources GET /api/v1/status/resources Get all resources
TaskApi delete_task DELETE /api/v1/task/{task_id} Delete Task
TaskApi get_task GET /api/v1/task/{task_id} Get Task
TaskApi get_tasks GET /api/v1/task Get Tasks

Documentation For Models

Documentation For Authorization

Authentication schemes defined for the API:

APIKeyHeader

  • Type: API key
  • API key parameter name: Authorization
  • Location: HTTP header

Author

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

nersc_iri-1.0.0.tar.gz (61.0 kB view details)

Uploaded Source

Built Distribution

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

nersc_iri-1.0.0-py3-none-any.whl (107.2 kB view details)

Uploaded Python 3

File details

Details for the file nersc_iri-1.0.0.tar.gz.

File metadata

  • Download URL: nersc_iri-1.0.0.tar.gz
  • Upload date:
  • Size: 61.0 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.12.12

File hashes

Hashes for nersc_iri-1.0.0.tar.gz
Algorithm Hash digest
SHA256 6d4c89f4ac6151f04e0032280697459df138e8dac3ab36b0027be0722b2ef538
MD5 7275dace89d487aa6d1f932902237d99
BLAKE2b-256 1905eec10a9fa78982ed62856d6845cc4acfd8999eb18f4f9c32c670291905bf

See more details on using hashes here.

File details

Details for the file nersc_iri-1.0.0-py3-none-any.whl.

File metadata

  • Download URL: nersc_iri-1.0.0-py3-none-any.whl
  • Upload date:
  • Size: 107.2 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.12.12

File hashes

Hashes for nersc_iri-1.0.0-py3-none-any.whl
Algorithm Hash digest
SHA256 8e2ee363df4927c130efe464873bb378a6559abcde467b58118b5d43b753251c
MD5 c495bc7c9e2a0be5fe33dd83394d45c4
BLAKE2b-256 0ead07ca01748e861fd04d468445da4277d0319d461945ae74be8ab3c52090eb

See more details on using hashes here.

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