Skip to main content

An async client for Gundi's API

Project description

Gundi Client

Introduction

Gundi, a.k.a "The Portal" is a platform to manage integrations. The gundi-client is an async python client to interact with Gundi's REST API.

Installation

pip install gundi-client

Usage

from gundi_client import PortalApi
import httpx

# You can use it as an async context-managed client
async with PortalApi() as portal:
   try:
    response = await portal.get_outbound_integration_list(
        session=session, inbound_id=str(inbound_id), device_id=str(device_id)
    )
    except httpx.RequestError as e:
        logger.exception("Request Error")   
        ...
    except httpx.TimeoutException as e:
        logger.exception("Request timed out")
        ...
    except httpx.HTTPStatusError as e:
        logger.exception("Response returned error")
    else:
        # response contains a list configs as dicts
        for integration in response:  
            ...
   ...

# Or create an instance and close the client explicitly later
portal = PortalApi()
try:
    response = await portal.get_outbound_integration_list(
        session=session, inbound_id=str(inbound_id), device_id=str(device_id)
    )
    except httpx.RequestError as e:
        logger.exception("Request Error")   
        ...
    except httpx.TimeoutException as e:
        logger.exception("Request timed out")
        ...
    except httpx.HTTPStatusError as e:
        logger.exception("Response returned error")
    else:
        # response contains a list configs as dicts
        for integration in response:  
            ...
   ...
   await portal.close()  # Close the session used to send requests to ER API

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

gundi_client-1.0.2.tar.gz (8.6 kB view hashes)

Uploaded Source

Built Distribution

gundi_client-1.0.2-py3-none-any.whl (9.6 kB view hashes)

Uploaded Python 3

Supported by

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