How AI is applied across API Evangelist and APIs.io. Read my AI disclosure →
API Evangelist API Evangelist
Discovery
Learnings
Guidance
Toolbox
Alignment
API Evangelist LLC

Anbox Cloud AMS API

The external REST API of the Anbox Management Service (AMS), the control plane of Canonical's Anbox Cloud product for running Android at scale. Covers applications, images, instances, nodes, addons, containers and configuration across 46 paths and 72 operations. AMS is built on the LXD codebase and inherits its response envelope and asynchronous operation model.

Anbox Cloud AMS API is one of 22 APIs that Canonical publishes on the APIs.io network, described by a machine-readable OpenAPI specification.

Tagged areas include Android, Cloud, and Streaming. The published artifact set on APIs.io includes an OpenAPI specification and API documentation.

This API exposes 72 operations across 46 paths, organized into 12 resource areas, and defines 75 schemas. It is described by OpenAPI 2.0, at version 1.0.

72 operations 46 paths 75 schemas 14 DELETE38 GET10 PATCH10 POST

Metadata

The identity and technical contract details declared by the specification.

Specification
OpenAPI 2.0
API Version
1.0
Resource Areas
12

Paths & Operations 72

Across 46 paths, the API surfaces 72 operations — 14 DELETE, 38 GET, 10 PATCH, 10 POST. They span 12 resource areas, including service, addons, applications, certificates, config, containers, events, images, and 4 more. Each is listed below with its method, path, parameters, and response codes.

service 2
GET
/1.0/
Get the status and features supported by the service
service_get → 200default
GET
/1.0/version
Get the current version for the service
version_get → 200default
addons 7
GET
/1.0/addons
Get a list of addons
addons_get 1 param → 200default
POST
/1.0/addons
Create a new addon
addons_post 2 params → 202400409default
GET
/1.0/addons/{name}
Get an addon
addon_get 1 param → 200400404default
DELETE
/1.0/addons/{name}
Delete an addon
addon_delete 1 param → 202400404default
PATCH
/1.0/addons/{name}
Update an addon with a new package
addon_patch 3 params → 202400404default
DELETE
/1.0/addons/{name}/{version}
Delete an addon version
addon_version_delete 2 params → 202400404default
GET
/1.0/addons?recursion=1
Get a list of addons expanded
addons_get_recursion1 1 param → 200default
applications 13
GET
/1.0/applications
Get a list of applications
applications_get 14 params → 200default
POST
/1.0/applications
Create a new application
application_post 3 params → 202400404default
DELETE
/1.0/applications
Delete multiple applications
applications_delete 1 param → 202400404500
GET
/1.0/applications/{id}
Get information about an application
application_get 1 param → 200400404default
DELETE
/1.0/applications/{id}
Delete an application
application_delete 1 param → 202400403404default
PATCH
/1.0/applications/{id}
Update an application with a new package
application_patch_upload 3 params → 202400404default
PATCH
/1.0/applications/{id}/
Update an applications's metadata
application_patch_meta 2 params → 202400404default
GET
/1.0/applications/{id}/manifest
Get an application's manifest
application_manifest_get 1 param → 200400403404default
GET
/1.0/applications/{id}/{version}
Get information about an application's specific version
application_version_get 2 params → 200400403404default
DELETE
/1.0/applications/{id}/{version}
Delete a version of an application
application_version_delete 3 params → 202400403404default
PATCH
/1.0/applications/{id}/{version}
Update a specific version of an application
application_version_patch 3 params → 202400403404default
GET
/1.0/applications/{id}/{version}/manifest
Get the manifest for a specific version of an application
application_version_manifest_get 2 params → 200400403404default
GET
/1.0/applications?recursion=1
Get a list of applications with expanded object definitions
applications_get_recursion1 14 params → 200default
certificates 5
GET
/1.0/certificates
Get a list of certificates
certificates_get 1 param → 200default
POST
/1.0/certificates
Add a new client certificate
certificates_post 1 param → 202400403409default
GET
/1.0/certificates/{fingerprint}
Get the information about a certificate
certificate_get 1 param → 200400404default
DELETE
/1.0/certificates/{fingerprint}
Delete a client's trusted certificate
certificate_delete 1 param → 202400404default
GET
/1.0/certificates?recursion=1
Get a list of expanded certificates
certificates_get_recursion1 1 param → 200default
config 2
GET
/1.0/config
Get the current configuration of the service
config_get → 200default
PATCH
/1.0/config
Update service configuration
config_patch 1 param → 200400404409default
containers 10
GET
/1.0/containers
Get a list of containers
containers_get 14 params → 200400404500
POST
/1.0/containers
Create a new container instance
containers_post 1 param → 202400404500
DELETE
/1.0/containers
Delete multiple containers.
containers_delete 1 param → 202400404500
GET
/1.0/containers/{id}
Get information about a specific container instance.
container_get 1 param → 200400404500
DELETE
/1.0/containers/{id}
Delete a specific container
container_delete 2 params → 202400404500
PATCH
/1.0/containers/{id}
Update the state of a specific container instance
container_patch 2 params → 202400404500
POST
/1.0/containers/{id}/exec
Execute a command in a container
container_exec_post 2 params → 202400404500
GET
/1.0/containers/{id}/logs
Get a list of collected log files for the container
container_logs_get 1 param → 200400404500
GET
/1.0/containers/{id}/logs/{name}
Retrieve a specific log file stored for the container
container_logs_specific_get 2 params → 200400404500
GET
/1.0/containers?recursion=1
Get a list of containers
containers_get_recursion1 14 params → 200400404500
events 1
GET
/1.0/events
Listen to events for changes in AMS
events_get 1 param → 200default
images 9
GET
/1.0/images
Get a list of images
images_get 1 param → 200default
POST
/1.0/images
Import an image
image_post_import 1 param → 202400409default
POST
/1.0/images/
Upload a package to create an image
image_post_upload 2 params → 202400409default
GET
/1.0/images/{id_or_name}
Get information about an image
image_get 2 params → 200400404default
DELETE
/1.0/images/{id}
Delete an image
image_delete 3 params → 202400404default
PATCH
/1.0/images/{id}
Update an image with a new package to upload
image_patch_upload 3 params → 202400404default
PATCH
/1.0/images/{id}/
Update an image's metadata
image_patch_meta 2 params → 202400404default
DELETE
/1.0/images/{id}/{version}
Delete an image version
image_version_delete 2 params → 200400404default
GET
/1.0/images?recursion=1
Get the list of images expanded
images_get_recursion1 1 param → 200default
instances 10
GET
/1.0/instances
Get a list of instances
instances_get 15 params → 200400404500
POST
/1.0/instances
Create a new instance
instances_post 1 param → 202400404500
DELETE
/1.0/instances
Delete multiple instances.
instances_delete 1 param → 202400404500
GET
/1.0/instances/{id_or_name}
Get information about a specific instance instance.
instance_get 1 param → 200400404500
DELETE
/1.0/instances/{id_or_name}
Delete a specific instance
instance_delete 2 params → 202400404500
PATCH
/1.0/instances/{id_or_name}
Update the state of a specific instance instance
instance_patch 2 params → 202400404500
POST
/1.0/instances/{id_or_name}/exec
Execute a command in a instance
instance_exec_post 2 params → 202400404500
GET
/1.0/instances/{id_or_name}/logs
Get a list of collected log files for the instance
instance_logs_get 1 param → 200400404500
GET
/1.0/instances/{id_or_name}/logs/{name}
Retrieve a specific log file stored for the instance
instance_logs_specific_get 2 params → 200400404500
GET
/1.0/instances?recursion=1
Get a list of instances
instances_get_recursion1 15 params → 200400404500
nodes 6
GET
/1.0/nodes
Get a list of nodes
nodes_get 1 param → 200default
POST
/1.0/nodes
Create a node
node_post 1 param → 202400409default
GET
/1.0/nodes/{name}
Get information about a node
node_get 1 param → 200400404409default
DELETE
/1.0/nodes/{name}
Delete a node
node_delete 2 params → 202400404409default
PATCH
/1.0/nodes/{name}
Update a node
node_patch 3 params → 202400404409default
GET
/1.0/nodes?recursion=1
Get a list of nodes
nodes_get_recursion1 1 param → 200default
operations 6
GET
/1.0/operations
Get a list of operations
operations_get 1 param → 200default
GET
/1.0/operations/{uuid}
Get the current status of an operation
operation_get 1 param → 200400404default
DELETE
/1.0/operations/{uuid}
Cancel an operation
operation_delete 1 param → 202400404default
GET
/1.0/operations/{uuid}/wait
Wait for an operation to complete
operation_wait_get 2 params → 200400404default
GET
/1.0/operations/{uuid}/websocket
Get the websocket connection to monitor operation
operation_websocket_get 2 params → 400401403404default
GET
/1.0/operations?recursion=1
Get a list of expanded operations
operations_get_recursion1 1 param → 200default
tasks 1
GET
/1.0/tasks
Get a list of tasks
tasks_get 1 param → 200default

Schemas 75

The contract defines 75 schemas that model the data the API accepts and returns. The most detailed are Instance (23 properties), Node (22 properties), Container (21 properties), ApplicationVersion (19 properties). Each schema is shown below with its type and property counts.

Addon
object
Addon describes a package with additional functionality to be added to containers
3 properties
AddonPatch
object
AddonPatch allows updating an existing addon with a new version
AddonVersion
object
AddonVersion describes a single version of an addon
4 properties
AddonsPost
object
AddonsPost is used to create a new addon
1 property
Application
object
Application represents an AMS application
18 properties
ApplicationAddon
object
ApplicationAddon describes a specific version of an addon an application version uses
2 properties
ApplicationBootstrap
object
ApplicationBootstrap describes the fields used to configure the application bootstrap
1 property
ApplicationDelete
object
ApplicationDelete represents the fields used to delete an application
1 property
ApplicationExtraData
object
ApplicationExtraData represents an extra application data
3 properties
ApplicationHooks
object
ApplicationHooks describes the fields used to configure the hooks of an application
1 property
ApplicationPatch
object
ApplicationPatch represents the fields a user can modify
16 properties
ApplicationResources
object
ApplicationResources describes resources allocated for an application
5 properties
ApplicationResourcesPost
object
ApplicationResourcesPost represents the fields used to update an application resource
5 properties
ApplicationStatus
integer
ApplicationStatus represents the status an application can be in
ApplicationVersion
object
ApplicationVersion describes a single version of an application
19 properties
ApplicationVersionDelete
object
ApplicationVersionDelete represents the fields used to delete an application version
1 property
ApplicationVersionPatch
object
ApplicationVersionPatch represents the fields used to update an application version
1 property
ApplicationWatchdog
object
ApplicationWatchdog describes the fields used to update an application watchdog
2 properties
ApplicationsDelete
object
ApplicationsDelete represents a list of application to delete together
2 properties
Certificate
object
Certificate represents an available client certificate
2 properties
CertificatesPost
object
CertificatesPost represents the fields of a new auth provided certificate
2 properties
CollectionResponse
Collection Response
ConfigItem
object
ConfigItem represents a single configuration item
2 properties
ConfigPost
object
ConfigPost contains the field necessary to set or update a config item
2 properties
Container
object
Container represents a single container
21 properties
ContainerDelete
object
ContainerDelete describes a request used to delete a container
1 property
ContainerExecControl
object
ContainerExecControl represents a message on the container shell "control" socket
3 properties
ContainerExecPost
object
ContainerExecPost represents an container execution request
5 properties
ContainerPatch
object
ContainerPatch describes the fields which can be changed for an existing container
1 property
ContainerService
object
While NetworkServiceSpec defines what the user requests, ContainerService is what is actually opened on the container.
7 properties
ContainerStatus
integer
ContainerStatus represents the status a container can be in
ContainerType
string
Possible values are: regular, base, unknown
ContainersDelete
object
ContainersDelete represents a list of containers to delete together
2 properties
ContainersPost
object
ContainersPost represents the fields required to launch a new container for a specific application
17 properties
Event
object
Event defines the structure of an event sent on the events API endpoint
3 properties
Image
object
Image represents an image available in AMS
10 properties
ImageDelete
object
ImageDelete describes a request used to delete an image
1 property
ImagePatch
object
ImagePatch represents the fields to update an existing image
2 properties
ImageStatus
integer
ImageStatus represents the status of an image
ImageType
string
ImageType specifies the type of an image
ImageVersion
object
ImageVersion describes a single version of an image
7 properties
ImagesGet
object
ImagesGet represents a list of images
1 property
ImagesPost
object
ImagesPost represents the fields to upload a new image
4 properties
Instance
object
Instance represents a single instance
23 properties
InstanceDelete
object
InstanceDelete describes a request used to delete a instance
1 property
InstanceExecControl
object
InstanceExecControl represents a message on the instance shell "control" socket
3 properties
InstanceExecPost
object
InstanceExecPost represents an instance execution request
5 properties
InstancePatch
object
InstancePatch describes the fields which can be changed for an existing instance
1 property
InstanceResources
object
InstanceResources represents resources assigned to an instance
5 properties
InstanceService
object
While NetworkServiceSpec defines what the user requests, InstanceService is what is actually opened on the instance.
7 properties
InstanceStatus
integer
InstanceStatus represents the status a instance can be in
InstanceType
string
InstanceType describes the type of an instance (container, vm)
InstancesDelete
object
InstancesDelete represents a list of instances to delete together
2 properties
InstancesPost
object
InstancesPost represents the fields required to launch a new instance for a specific application
14 properties
NetworkProtocol
string
NetworkProtocol describes a specific network protocol like TCP or UDP a ContainerService can use
NetworkServiceSpec
object
NetworkServiceSpec is used to define the user defined network services that should be opened on a container
5 properties
NoMetaSyncResponse
object
Swagger Synchronous response without metadata field
4 properties
Node
object
Node describes a single node of the underlying LXD cluster AMS manages
22 properties
NodeDelete
object
NodeDelete describes a request used to delete a node
2 properties
NodeGPU
object
NodeGPU describes a single GPU available on a node
7 properties
NodeGPUAllocation
object
NodeGPUAllocation describes a single allocation on a GPU
3 properties
NodeGPUPatch
object
NodeGPUPatch allows changing configuration for individual GPUs
3 properties
NodePatch
object
NodePatch describes a request to update an existing node
12 properties
NodeStatus
integer
NodeStatus describes the current status of a node
NodeVPU
object
NodeVPU describes a single independent VPU available on a node
6 properties
NodeVPUAllocation
object
NodeVPUAllocation describes a single allocation for a VPU
2 properties
NodesPost
object
NodesPost describes a request to create a new node on AMS
18 properties
Operation
object
Operation represents a background operation
12 properties
OperationResponse
object
Operation
5 properties
ServiceStatus
object
ServiceStatus represents the status of the AMS service
7 properties
StatusCode
integer
StatusCode represents a valid REST operation
Task
object
Task is the scheduling unit AMS uses for container launches
4 properties
VersionGet
object
VersionGet is the JSON response from the API version request method
1 property
VersionResponse
object
VersionResponse shows the version for the running service
1 property
VideoEncoderType
string
VideoEncoderType describes the type of a video encoder is used by an application

Specification

The full machine-readable OpenAPI contract behind this narrative.

Source

canonical-anbox-cloud-ams-api-openapi.json Raw ↑

Other APIs Canonical publishes across the network.

Snap Store API
Charmhub API
snapd REST API
MAAS API
Juju Client / Controller API
Launchpad Web Services API
Ubuntu Pro Client API
Landscape API
Canonical Assertions API
Canonical Search API
Canonical Snaps API
LXD REST API
Where this information came from

This is an independent, third-party profile of Anbox Cloud AMS API, published by API Evangelist. We do not operate, host, resell, or support these APIs, and we are not affiliated with or endorsed by the company unless stated above. Everything here is built from publicly available information — the company's own site, developer portal, documentation, public repositories, and the specifications it publishes for public use. Nothing is obtained by breaching a system, defeating an access control, or using credentials.

The Kin Score and Agent Readiness rating are independently calculated assessments of a company's public API artifacts, scored against a published rubric. They are not certifications, endorsements, security assessments, or audits.

Corrections, re-scores, and removal are free — no partnership or purchase required, and you do not need to justify the request. A removed company is recorded as unrated, never scored zero for having asked. Acknowledgement within one business day; removal within two.

info@apievangelist.com · Read the full data-sourcing policy →
On a security or compliance team? Put security in the subject line and you will get a person, not a form — we will tell you exactly which public URLs this profile was built from.