Aries CloudController Python
Features | Usage | Available APIs | Contributing | License
The Aries CloudController is a Python-based client library for interacting with an instance of Aries Cloud Agent (ACA-Py). It leverages the OpenAPI definition from ACA-Py to provide a fully-typed, rich API experience for cloud agent interaction.
Versioning Update: As of version 0.8.0, the Aries CloudController has aligned its versioning with ACA-Py. This means that each new version of ACA-Py will correspond directly to the same version of the Aries CloudController. This change ensures a more straightforward and predictable upgrade path for users.
In other words, CloudController 0.8.0 is compatible with ACA-Py 0.8.0, CloudController 0.9.0 is compatible with ACA-Py 0.9.0, etc.
For legacy versions, please review our release history to found the version compatible with ACA-Py pre-0.8.0.
Features
Aries CloudController Python provides a robust client for interacting with Aries Cloud Agents (ACA-Py).
- Fully Typed: Offers a strongly-typed wrapper around the Aries Cloud Agent Python, enhancing developer experience and reducing errors.
- Up-to-Date Support: Compatible with the latest ACA-Py version (1.1.0), ensuring access to the most recent features and improvements.
- Auto-Generated Client: Utilizes OpenAPI definitions for automatic generation, ensuring timely updates in line with new ACA-Py releases.
- Multi-Tenancy and Authentication Support: Facilitates working with multi-tenant APIs and integrates various authentication mechanisms.
- Asynchronous API: Supports asynchronous operations, enabling efficient handling of I/O-bound tasks.
Usage
Install Aries Cloud Controller Python via pip:
pip install aries-cloudcontroller
Creating a Client
Easily initialize the AcaPyClient:
from aries_cloudcontroller import AcaPyClient
client = AcaPyClient(
base_url="http://localhost:8000",
api_key="myApiKey"
)
Admin Insecure Mode: If running ACA-Py with the --admin-insecure-mode flag and without an API key:
client = AcaPyClient(
base_url="http://localhost:8000",
admin_insecure=True # No API key needed
)
Multitenancy: For specific tenant contexts:
client = AcaPyClient(
base_url="http://localhost:8000",
tenant_jwt="eyXXX"
)
Interacting with the Client
The API, being fully typed, is best explored through the ACA-Py Swagger UI, which mirrors the available client properties.
Example: Creating and receiving an invitation:
invitation = await client.connection.create_invitation(
body=CreateInvitationRequest(my_label="Cloud Controller")
)
connection = await client.connection.receive_invitation(body=invitation.invitation)
Available APIs
The client encompasses various APIs, each corresponding to ACA-Py Swagger UI topics:
action_menuanoncreds_credential_definitionsanoncreds_revocationanoncreds_schemasbasicmessageconnectioncredential_definitioncredentialsdefaultdid_exchangedid_rotatediscover_featuresdiscover_features_v2_0endorse_transactionintroductionissue_credential_v1_0issue_credential_v2_0jsonldledgermediationmultitenancyout_of_bandpresent_proof_v1_0present_proof_v2_0resolverrevocationschemaserversettingstrustpingvcwallet
Contributing
Contributions are welcome! Please see our CONTRIBUTING guidelines for more information on how to get involved.
License
This project is licensed under the Apache License Version 2.0 (Apache-2.0).
Metadata
Release files for aries-cloudcontroller 1.2.0.post20241205
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| aries_cloudcontroller-1.2.0.post20241205.tar.gz | 177.7 kB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| aries_cloudcontroller-1.2.0.post20241205-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 848.1 kB
Release files / aries_cloudcontroller-1.2.0.post20241205.tar.gz
| Download URL | aries_cloudcontroller-1.2.0.post20241205.tar.gz |
|---|---|
| Size | 177.7 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
b3c31e13bad3f8e48e392dfa6163a2d22cd5db7fe9fa4e194f8cf09a4d84df35
|
|
BLAKE2b-256 checksum How to use checksums |
ce3a9246b454bbdcce58df6281667f4981303dfc7cd9513dbc4716dcca9dfe10
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/6.0.1 CPython/3.12.7
|
Release files / aries_cloudcontroller-1.2.0.post20241205-py3-none-any.whl
| Download URL | aries_cloudcontroller-1.2.0.post20241205-py3-none-any.whl |
|---|---|
| Size | 670.4 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
981adef02b774481ce7a79d2eb69db6f0d7a240cf917d23c956386ad3613bc66
|
|
BLAKE2b-256 checksum How to use checksums |
34f2db49096e7a0c8e9a8b162c9765de01da497dd8b164bc369ac38995d53e71
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/6.0.1 CPython/3.12.7
|