Skip to main content

A client utility for the AICA API

Project description

Python AICA API Client

The AICA API client module provides simple functions for interacting with the AICA API.

pip install aica-api

The client can be used to easily make API calls as shown below:

from aica_api.client import AICA

aica = AICA()

aica.set_application('my_application.yaml')
aica.start_application()

aica.load_component('my_component')
aica.unload_component('my_component')

aica.stop_application()

To check the status of component predicates and conditions, the following blocking methods can be employed:

from aica_api.client import AICA

aica = AICA()

if aica.wait_for_condition('timer_1_active', timeout=10.0):
    print('Condition is true!')
else:
    print('Timed out before condition was true')

if aica.wait_for_predicate('timer_1', 'is_timed_out', timeout=10.0):
    print('Predicate is true!')
else:
    print('Timed out before predicate was true')

Compatability table

The latest version of the AICA API client will generally support the latest API server version in the AICA framework. Major changes to the API client or server versions indicate breaking changes and are not backwards compatible. To interact with older versions of the AICA framework, it may be necessary to install older versions of the client. Use the following compatability table to determine which client version to use.

API server version Matching Python client version
3.x >= 2.0.0
2.x 1.2.0
<= 1.x Unsupported

Between major version changes, minor updates to the API server version and Python client versions may introduce new endpoints and functions respectively. If a function requires a feature that the detected API server version does not yet support (as is the case when the Python client version is more up-to-date than the targeted API server), then calling that function will return None with a warning.

Recent client versions also support the following functions to check the client version and API compatability.

from aica_api.client import AICA

aica = AICA()

# get the current API server version
print(aica.api_version())
# get the current client version
print(aica.client_version())

# check compatability between the client version and API version
if aica.check():
    print('Versions are compatible')
else:
    print('Versions are incompatible')

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

aica_api-2.1.0rc1.tar.gz (7.0 kB view hashes)

Uploaded Source

Built Distribution

aica_api-2.1.0rc1-py3-none-any.whl (7.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