nismod / irv-autopkg-client

Client API for interacting with irv-autopkg service

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

irv-autopkg-client

PyPI

A client library for accessing the irv-autopkg API, currently hosted at global.infrastructureresilience.org.

The irv-autopkg service allows users to extract portions of global datasets pertaining to climate risk and resilience. This Python package is a client for communicating with the irv-autopkg API.

Installation

Install from PyPI with:

pip install irv-autopkg-client

Usage

Create a client object to establish a session:

import irv_autopkg_client
client = irv_autopkg_client.Client()

For a list of available methods, try:

help(client)

Quick start

Is the API responding?

client.server_readiness()

Which boundaries can we create extracts for?

client.boundary_list()

Which datasets are available?

client.dataset_list()

Get information on a specific dataset:

client.dataset("wri_aqueduct.version_2")

To submit an extract job:

job_id = client.job_submit(
    country_iso,
    [
        "gri_osm.roads_and_rail_version_1",
        "wri_aqueduct.version_2"
    ]
)

We can then check if the job is complete:

client.job_complete(job_id)

Get the boundary of a territory:

boundary = client.boundary_geometry("bgd")

Download some extracted data:

client.extract_download(
    "bgd",
    "data",
    # there may be other datasets available, but only download the following
    dataset_filter=[
        "gri_osm.roads_and_rail_version_1",
        "wri_aqueduct.version_2"
    ],
    overwrite=True
)

Development

First clone this repository (currently hosted at nismod/irv-autopkg-client).

To install the package in editable mode, run:

pip install -e .
pip install vcrpy~=4.0

Alternatively, if you have poetry, run:

poetry install

Testing

To run the bundled tests, try:

python -m unittest

With poetry, either work within poetry shell, or run single commands in the virtual environment:

poetry run python -m unittest

Acknowledgments

This research received funding from the FCDO Climate Compatible Growth Programme. The views expressed here do not necessarily reflect the UK government's official policies.

About

Client API for interacting with irv-autopkg service

License:MIT License


Languages

Language:Python 100.0%