Skip to main content

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

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.

Metadata

Release files for AIMMScloud 0.1.2.2

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Built distribution (wheel)

Table of built distributions (wheels) for AIMMScloud 0.1.2.2
File Interpreter ABI Platform
AIMMScloud-0.1.2.2-py3-none-any.whl Python 3 none any Details

Release files / AIMMScloud-0.1.2.2-py3-none-any.whl

Download URL AIMMScloud-0.1.2.2-py3-none-any.whl
Size 136.6 kB
Tags Python 3
SHA-256 checksum
How to use checksums
55902eb92b3b1c2d2748f655e2c8d3d651d950536c056225ea8b536958d6806f
BLAKE2b-256 checksum
How to use checksums
2367fbb48980e8af167a740e16bf3c86c0e6124019d1a9492678014d85df6953
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.0.1 CPython/3.11.0

Release history Release notifications | RSS feed

This release

0.1.2.2 This release

1 release file

0.1.2

1 release file

0.1.1

1 release file

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page