Official AIMMS Python library to work with the AIMMS cloud environment
Project description
aimmscloud
The aimmscloud Python library is a lightweight library to make calls to the AIMMS Cloud rest API. You can use this library to publish AIMMS applications and execute tasks.
- Getting Started
- Publish an app
- Create and run a task
- Experimental feature: Command Line Interface
- Further development
Getting Started
Run the following command to install the aimmscloud library:
pip install aimmscloud
After installation you first need to provide a HOST_URL and an API_KEY before you can make any calls.
from aimmscloud.aimms_application import Application
app_api = Application(
host_url="https://<accountname>.aimms.cloud/pro-api/v2",
api_key="<API_KEY>",
)
Publish an app
You can publish an app by building an AIMMSpack using the AIMMS IDE. When publishing an app you need to provide metadata such as the applicationname and version.
app_api.publish_app(
file_name="example.aimmspack",
iconfile_name="icon.png",
aimms_version="<aimms version to use>",
application_description="<app description>",
application_name="<app name>",
application_version="<app version>",
attributes={
"isWebUI": "true",
"ServerLicense": "Default",
},
projectCategory="<app category>",
publish_behavior=0,
)
Create and run a task
When you app is published you can run tasks with the create_task call. Note tasks are only available if you registered a task as an service in DEX. The payload variable is optional and only needs to be used when your task expects an input. Inputs are passed as an Python dictionary.
task_api = Task(
host_url="https://<accountname>.aimms.cloud/pro-api/v2",
api_key="<API_KEY>",
)
out = task_api.create_task(
app_name="<app name>",
app_version="<app version>",
service_name="<DEX service name>",
payload=payload,
)
If your task has a response, for example the result data of the optimization such as a schedule, you can retrieve this with the following call once the task is complete.
out = task_api.get_task_response(task_id=task_id)
Experimental feature: Command Line Interface
We are working on adding a command line interface to AIMMScloud. There is an experimental version available for the application api.
pip install aimmscloud[cli]
Further development
This project is under active development by AIMMS bv.
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distributions
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file AIMMScloud-0.1.2-py3-none-any.whl.
File metadata
- Download URL: AIMMScloud-0.1.2-py3-none-any.whl
- Upload date:
- Size: 136.6 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.0.1 CPython/3.11.0
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
e8f262d86ef00a1d82295fa13c162ff08fa441595a9f7c8151608c2a8721f2f7
|
|
| MD5 |
4495e0e959ad689e0ecc3a56f56e4dc2
|
|
| BLAKE2b-256 |
1a4991f85ecb9dccb964fc51d3aeba6394862609581bb9377caeebff00d963b6
|