Download OpenAPI specification:Download
Genymotion SaaS user documentation can be found at docs.genymotion.com/saas.
This HTTP API allows you to manage Genymotion SaaS virtual devices.
There are 3 main concepts in this API. All of them must be understood in order to able to use the it efficiently.
The first concept is Authentication. An API token or JWT (JSON Web Token) must be used to authenticate the API calls. The authentication endpoint itself does not accept an API token or JWT. In the Genymotion SaaS Public HTTP API, all endpoints other than the authentication endpoint accept either API token or JWT authentication.
For endpoints requiring authentication, exactly one of the API token or the JWT must be provided. If neither are provided, the API call will return a 401 Unauthorized HTTP error. If both are provided, the API call will return a 400 Bad Request HTTP error.
The details of each authentication scheme are provided below, in Authentication.
The second concept is the Recipe. A Recipe is what is needed to cook an Instance. This Recipe contains the information about the Android system, the virtual device characteristics, and some contextual data. Genymobile provides a variety of default Recipes, but you can create and share new ones from either the Genymotion SaaS Portal or from the Genymotion Desktop software (license required).
The third concept is the Instance. An Instance represents a Genymotion Virtual Device running in the Cloud. Built using the information contained in a Recipe, an Instance can be accessed using a wide variety of tools. The current API allows you to start and stop disposable Instances. A disposable Instance will always be recreated from the Recipe when a start request is sent. When a stop request is sent, the virtual device Instance will be destroyed, and any modifications done inside it during the run time will be lost.
Authenticate a User, and retreive a new valid JWT. This JWT must be provided to all other API calls in order to identify and authenticate the User executing the request.
Once logged in, simply add the Authorization
HTTP header to all subsequents API calls.
Authorization
HTTP header value must have the following format: Bearer <JWT>
.
A JWT will expire after some time. The default validity duration is 48 hours. It is recommended to generate a new one before running a new set of API calls. Generating a new JWT will not invalidate previously generated JWTs.
Data used to log User
email required | string <email> (Email) Email address |
password required | string <password> User password |
{- "password": "pa$$word"
}
{- "token": "string",
- "user": {
- "created_at": 0,
- "first_name": "string",
- "is_enabled": true,
- "is_organization_manager": true,
- "is_validated": true,
- "last_name": "string",
- "role": "USER",
- "uuid": "095be615-a8ad-4c33-8e9c-c7612fbf6c9f",
- "groups": [
- {
- "uuid": "095be615-a8ad-4c33-8e9c-c7612fbf6c9f",
- "name": "string"
}
], - "front_preferences": { },
- "tnc_accepted": true,
- "organization": {
- "uuid": "095be615-a8ad-4c33-8e9c-c7612fbf6c9f",
- "name": "string",
- "description": "string",
- "store_logcat": true,
- "billing_contact": "string",
- "instance_inactivity_timeout_minute": 28800,
- "vat_number": "string",
- "preferences": {
- "timeouts": {
- "global": 28800,
- "inactivity": 28800
}
}, - "license": {
- "expiration": "2019-08-24",
- "type": "pending",
- "instances": {
- "max": 0,
- "zone": "europe"
}
}
}, - "group": {
- "uuid": "095be615-a8ad-4c33-8e9c-c7612fbf6c9f",
- "parent_uuid": "77932ac3-028b-48fa-aaa9-4d11b1d1236a",
- "name": "string",
- "description": "string",
- "is_default": true
}
}
}
List all ready Recipes available for the authenticated User. This endpoint returns 3 lists of Recipes:
curl -H 'Content-Type: application/json;charset=utf-8' -H 'x-api-token: <token>' https://api.geny.io/cloud/v1/recipes
{- "base": [
- {
- "uuid": "095be615-a8ad-4c33-8e9c-c7612fbf6c9f",
- "name": "string",
- "source": "genymotion",
- "owner_uuid": "a528e82a-c54a-4046-8831-44d7f9028f54",
- "status": "ready",
- "items": [
- {
- "uuid": "095be615-a8ad-4c33-8e9c-c7612fbf6c9f",
- "name": "string",
- "type": "string"
}
], - "created_at": "string",
- "updated_at": "string"
}
], - "user": [
- {
- "uuid": "095be615-a8ad-4c33-8e9c-c7612fbf6c9f",
- "name": "string",
- "source": "genymotion",
- "owner_uuid": "a528e82a-c54a-4046-8831-44d7f9028f54",
- "status": "ready",
- "items": [
- {
- "uuid": "095be615-a8ad-4c33-8e9c-c7612fbf6c9f",
- "name": "string",
- "type": "string"
}
], - "created_at": "string",
- "updated_at": "string"
}
], - "shared": [
- {
- "uuid": "095be615-a8ad-4c33-8e9c-c7612fbf6c9f",
- "name": "string",
- "source": "genymotion",
- "owner_uuid": "a528e82a-c54a-4046-8831-44d7f9028f54",
- "status": "ready",
- "items": [
- {
- "uuid": "095be615-a8ad-4c33-8e9c-c7612fbf6c9f",
- "name": "string",
- "type": "string"
}
], - "created_at": "string",
- "updated_at": "string"
}
]
}
This endpoint creates a new recipe from the input parameters.
hardware_profile_uuid required | string <uuid> (Uuidv4) ^[0-9a-f]{8}-[0-9a-f]{4}-4[0-9a-f]{3}-[89ab][... Resource unique identifier |
os_image_uuid required | string <uuid> (Uuidv4) ^[0-9a-f]{8}-[0-9a-f]{4}-4[0-9a-f]{3}-[89ab][... Resource unique identifier |
parent_recipe_uuid | string or null <uuid> (NullableUuidv4) ^[0-9a-f]{8}-[0-9a-f]{4}-4[0-9a-f]{3}-[89ab][... Resource unique identifier |
name required | string or null Recipe name |
description | string Recipe description |
{- "hardware_profile_uuid": "45d3646a-9489-4a40-aa87-addaa499c31b",
- "os_image_uuid": "d46548f5-0f78-43d8-b745-5f67ed0c7915",
- "parent_recipe_uuid": "7f02aa13-3f42-4289-88bd-199e2080217c",
- "name": "string",
- "description": "string"
}
{- "parent_recipe_uuid": "7f02aa13-3f42-4289-88bd-199e2080217c",
- "uuid": "095be615-a8ad-4c33-8e9c-c7612fbf6c9f",
- "hardware_profile": {
- "uuid": "095be615-a8ad-4c33-8e9c-c7612fbf6c9f",
- "name": "string",
- "form_factor": "PHONE",
- "is_official": true,
- "recipe_count": 0
}, - "os_image": {
- "uuid": "095be615-a8ad-4c33-8e9c-c7612fbf6c9f",
- "name": "string",
- "is_official": true,
- "recipe_count": 0
}, - "name": "string",
- "is_official": true,
- "owner": {
- "created_at": 0,
- "first_name": "string",
- "is_enabled": true,
- "is_organization_manager": true,
- "is_validated": true,
- "last_name": "string",
- "role": "USER",
- "uuid": "095be615-a8ad-4c33-8e9c-c7612fbf6c9f",
- "groups": [
- {
- "uuid": "095be615-a8ad-4c33-8e9c-c7612fbf6c9f",
- "name": "string"
}
], - "organization": {
- "uuid": "095be615-a8ad-4c33-8e9c-c7612fbf6c9f",
- "name": "string",
- "description": "string",
- "store_logcat": true,
- "billing_contact": "string",
- "instance_inactivity_timeout_minute": 28800,
- "vat_number": "string",
- "preferences": {
- "timeouts": {
- "global": 28800,
- "inactivity": 28800
}
}
}
}, - "description": "string",
- "created_at": "string",
- "updated_at": "string",
- "status": "CREATING"
}
uuid required | string <uuid> ^[0-9a-f]{8}-[0-9a-f]{4}-4[0-9a-f]{3}-[89ab][... Uuid of the recipe to retrieve |
delete_hardware_profile | boolean Default: false Define if we delete the recipe hardware profile. |
delete_os_image | boolean Default: false Define if we delete the recipe OS image. |
{- "delete_hardware_profile": false,
- "delete_os_image": false
}
{- "code": "string",
- "message": "string"
}
List all Recipes available for the authenticated User.
This endpoint returns a paginated list of all Recipes.
source | string Default: "all" Enum: "all" "official" "owner" "sharee" "shared" Filter by Recipe source. Options are:
|
status | string Default: "all" Enum: "all" "ready" "updating" Filter by Recipe status. Options are:
|
type | string Default: "system" Enum: "system" "app" "all" Filter by Recipe type. Options are:
|
curl -H 'Content-Type: application/json;charset=utf-8' -H 'x-api-token: <token>' https://api.geny.io/cloud/v2/recipes
{- "count": 0,
- "next": "string",
- "previous": "string",
- "results": [
- {
- "uuid": "095be615-a8ad-4c33-8e9c-c7612fbf6c9f",
- "name": "string",
- "source": "official",
- "status": "ready",
- "items": [
- {
- "uuid": "095be615-a8ad-4c33-8e9c-c7612fbf6c9f",
- "name": "string",
- "type": "string"
}
], - "created_at": "string",
- "updated_at": "string",
- "owner": {
- "uuid": "095be615-a8ad-4c33-8e9c-c7612fbf6c9f",
- "first_name": "string",
- "last_name": "string",
- "group": {
- "uuid": "095be615-a8ad-4c33-8e9c-c7612fbf6c9f"
}, - "organization": {
- "uuid": "095be615-a8ad-4c33-8e9c-c7612fbf6c9f"
}
}, - "share": {
- "uuid": "095be615-a8ad-4c33-8e9c-c7612fbf6c9f",
- "sharer_uuid": "9bc38604-5b66-453e-8577-00cd700125c7",
- "sharer": {
- "uuid": "095be615-a8ad-4c33-8e9c-c7612fbf6c9f",
- "first_name": "string",
- "last_name": "string",
- "group": {
- "uuid": "095be615-a8ad-4c33-8e9c-c7612fbf6c9f"
}, - "organization": {
- "uuid": "095be615-a8ad-4c33-8e9c-c7612fbf6c9f"
}
}, - "recipients": [
- {
- "uuid": "095be615-a8ad-4c33-8e9c-c7612fbf6c9f",
- "type": "user"
}
]
}
}
]
}
List all is official Recipes and Recipes of the current user.
source | string Default: "all" Enum: "all" "official" "shared" Filter by Recipe source. Options are:
|
arch | Array of strings Default: "x86_64,x86" Items Enum: "x86" "x86_64" "arm64" Filter by the architecture of the related image. If this isn't specified, |
search | string Search term to search on name or uuid attributes. |
page | integer Page to fetch |
page_size | integer Default: 30 Number of recipes per page |
curl -H 'Content-Type: application/json;charset=utf-8' -H 'x-api-token: <token>' https://api.geny.io/cloud/v3/recipes/
{- "count": 0,
- "results": [
- {
- "uuid": "095be615-a8ad-4c33-8e9c-c7612fbf6c9f",
- "parent_recipe_uuid": "7f02aa13-3f42-4289-88bd-199e2080217c",
- "hardware_profile": {
- "uuid": "095be615-a8ad-4c33-8e9c-c7612fbf6c9f",
- "name": "string",
- "is_official": true,
- "form_factor": "PHONE",
- "cpu_count": 0,
- "ram_size": 0,
- "display_settings": {
- "hw_navigation_keys": true,
- "displays": [
- {
- "width": 0,
- "height": 0,
- "density": 0
}
]
}
}, - "os_image": {
- "uuid": "095be615-a8ad-4c33-8e9c-c7612fbf6c9f",
- "name": "string",
- "arch": "x86",
- "is_official": true,
- "is_beta": true,
- "os_version": {
- "os_version": "string",
- "sdk_version": 0
}
}, - "name": "string",
- "is_official": true,
- "owner": {
- "created_at": 0,
- "first_name": "string",
- "is_enabled": true,
- "is_organization_manager": true,
- "is_validated": true,
- "last_name": "string",
- "role": "USER",
- "uuid": "095be615-a8ad-4c33-8e9c-c7612fbf6c9f",
- "groups": [
- {
- "uuid": "095be615-a8ad-4c33-8e9c-c7612fbf6c9f",
- "name": "string"
}
], - "organization": {
- "uuid": "095be615-a8ad-4c33-8e9c-c7612fbf6c9f",
- "name": "string",
- "description": "string",
- "store_logcat": true,
- "billing_contact": "string",
- "instance_inactivity_timeout_minute": 28800,
- "vat_number": "string",
- "preferences": {
- "timeouts": {
- "global": 28800,
- "inactivity": 28800
}
}
}
}, - "description": "string",
- "created_at": "string",
- "updated_at": "string",
- "status": "CREATING",
- "share": {
- "uuid": "095be615-a8ad-4c33-8e9c-c7612fbf6c9f",
- "sharer_uuid": "9bc38604-5b66-453e-8577-00cd700125c7",
- "organization_uuid": "5d67373d-71ba-435a-bb8a-e71f4d7e2958",
- "created_at": "string",
- "updated_at": "string",
- "organization_recipients_count": 0,
- "user_recipients_count": 0
}
}
]
}
Start a new disposable Instance from the given Recipe identified by its Uuid.
The Instance is disposable, meaning that all changes done inside it will be lost after the Instance is stopped.
The state of the Instance returned by this call will always be CREATING.
uuid required | string <uuid> ^[0-9a-f]{8}-[0-9a-f]{4}-4[0-9a-f]{3}-[89ab][... Uuid of the resource |
Data used to start new disposable Instance
instance_name required | string Name of the Instance. This name must be unique per User. |
rename_on_conflict | boolean Default: false In case a virtual device already exist with the same name, allow the Platform to rename the
Instance with a new, unique, name. New name will look like |
stop_when_inactive | boolean Default: false DEPRECATED. Use |
object DEPRECATED. Use | |
object Various customizable timeouts for the Instance. |
{- "instance_name": "string",
- "rename_on_conflict": false,
- "stop_when_inactive": false,
- "automatic_release": {
- "type": "none"
}, - "timeouts": { }
}
{- "uuid": "095be615-a8ad-4c33-8e9c-c7612fbf6c9f",
- "name": "string",
- "owner_uuid": "a528e82a-c54a-4046-8831-44d7f9028f54",
- "organization_uuid": "5d67373d-71ba-435a-bb8a-e71f4d7e2958",
- "hardware_profile": {
- "uuid": "095be615-a8ad-4c33-8e9c-c7612fbf6c9f",
- "name": "string",
- "is_official": true,
- "form_factor": "string",
- "cpu_count": 0,
- "ram_size": 0,
- "data_disk_size": 0,
- "width": 0,
- "height": 0,
- "density": 0,
- "hw_navigation_keys": true
}, - "os_image": {
- "uuid": "095be615-a8ad-4c33-8e9c-c7612fbf6c9f",
- "name": "string",
- "is_official": true,
- "image_version": "string",
- "arch": "x86",
- "is_beta": true,
- "build_date": "string",
- "os_version": {
- "uuid": "095be615-a8ad-4c33-8e9c-c7612fbf6c9f",
- "sdk_version": 0,
- "os_version": "string"
}
}, - "state": "CREATING",
- "streamer_fqdn": "string",
- "turn_fqdn": "string",
- "adb_url": "string",
- "file_upload_url": "string",
- "webrtc_url": "string",
- "recipe_uuid": "597eb633-0943-4de5-b80a-1b0319522204",
- "created_at": "string",
- "updated_at": "string",
- "timeout": 0,
- "timeouts": {
- "global": 0,
- "inactivity": 0
}, - "recipe": {
- "uuid": "095be615-a8ad-4c33-8e9c-c7612fbf6c9f",
- "name": "string",
- "source": "genymotion",
- "owner_uuid": "a528e82a-c54a-4046-8831-44d7f9028f54",
- "status": "ready",
- "items": [
- {
- "uuid": "095be615-a8ad-4c33-8e9c-c7612fbf6c9f",
- "name": "string",
- "type": "string"
}
], - "created_at": "string",
- "updated_at": "string",
- "owner": {
- "created_at": 0,
- "first_name": "string",
- "is_enabled": true,
- "is_organization_manager": true,
- "is_validated": true,
- "last_name": "string",
- "role": "USER",
- "uuid": "095be615-a8ad-4c33-8e9c-c7612fbf6c9f",
- "groups": [
- {
- "uuid": "095be615-a8ad-4c33-8e9c-c7612fbf6c9f",
- "name": "string"
}
], - "organization": {
- "uuid": "095be615-a8ad-4c33-8e9c-c7612fbf6c9f",
- "name": "string",
- "description": "string",
- "store_logcat": true,
- "billing_contact": "string",
- "instance_inactivity_timeout_minute": 28800,
- "vat_number": "string",
- "preferences": {
- "timeouts": {
- "global": 28800,
- "inactivity": 28800
}
}
}, - "group": {
- "uuid": "095be615-a8ad-4c33-8e9c-c7612fbf6c9f",
- "parent_uuid": "77932ac3-028b-48fa-aaa9-4d11b1d1236a",
- "name": "string",
- "description": "string",
- "is_default": true
}
}
}, - "owner": {
- "created_at": 0,
- "first_name": "string",
- "is_enabled": true,
- "is_organization_manager": true,
- "is_validated": true,
- "last_name": "string",
- "role": "USER",
- "uuid": "095be615-a8ad-4c33-8e9c-c7612fbf6c9f",
- "groups": [
- {
- "uuid": "095be615-a8ad-4c33-8e9c-c7612fbf6c9f",
- "name": "string"
}
], - "organization": {
- "uuid": "095be615-a8ad-4c33-8e9c-c7612fbf6c9f",
- "name": "string",
- "description": "string",
- "store_logcat": true,
- "billing_contact": "string",
- "instance_inactivity_timeout_minute": 28800,
- "vat_number": "string",
- "preferences": {
- "timeouts": {
- "global": 28800,
- "inactivity": 28800
}
}
}, - "group": {
- "uuid": "095be615-a8ad-4c33-8e9c-c7612fbf6c9f",
- "parent_uuid": "77932ac3-028b-48fa-aaa9-4d11b1d1236a",
- "name": "string",
- "description": "string",
- "is_default": true
}
}
}
List all currently available Instances for the authenticated User. This endpoint is deprecated. /v2/instances should be used instead.
format | string Enum: "template" "recipe" Deprecated. |
curl -H 'Content-Type: application/json;charset=utf-8' -H 'x-api-token: <token>' https://api.geny.io/cloud/v1/instances
[- {
- "uuid": "095be615-a8ad-4c33-8e9c-c7612fbf6c9f",
- "name": "string",
- "owner_uuid": "a528e82a-c54a-4046-8831-44d7f9028f54",
- "organization_uuid": "5d67373d-71ba-435a-bb8a-e71f4d7e2958",
- "hardware_profile": {
- "uuid": "095be615-a8ad-4c33-8e9c-c7612fbf6c9f",
- "name": "string",
- "is_official": true,
- "form_factor": "string",
- "cpu_count": 0,
- "ram_size": 0,
- "data_disk_size": 0,
- "width": 0,
- "height": 0,
- "density": 0,
- "hw_navigation_keys": true
}, - "os_image": {
- "uuid": "095be615-a8ad-4c33-8e9c-c7612fbf6c9f",
- "name": "string",
- "is_official": true,
- "image_version": "string",
- "arch": "x86",
- "is_beta": true,
- "build_date": "string",
- "os_version": {
- "uuid": "095be615-a8ad-4c33-8e9c-c7612fbf6c9f",
- "sdk_version": 0,
- "os_version": "string"
}
}, - "state": "CREATING",
- "streamer_fqdn": "string",
- "turn_fqdn": "string",
- "adb_url": "string",
- "file_upload_url": "string",
- "webrtc_url": "string",
- "recipe_uuid": "597eb633-0943-4de5-b80a-1b0319522204",
- "created_at": "string",
- "updated_at": "string",
- "timeout": 0,
- "timeouts": {
- "global": 0,
- "inactivity": 0
}
}
]
Returns a token to be used for connecting to an instance.
instance_uuid | string <uuid> Instance uuid. This is required to connect to instances with arm64 architecture. |
{- "instance_uuid": "7e61f2db-030b-4d58-8326-9509e91716e2"
}
{- "access_token": "string"
}
Retrieve an Instance identified by its Uuid.
uuid required | string <uuid> ^[0-9a-f]{8}-[0-9a-f]{4}-4[0-9a-f]{3}-[89ab][... Uuid of the resource |
format | string Default: "recipe" Enum: "recipe" "template" Deprecated. |
curl -H 'Content-Type: application/json;charset=utf-8' -H 'x-api-token: <token>' https://api.geny.io/cloud/v1/instances/<UUID>
{- "uuid": "095be615-a8ad-4c33-8e9c-c7612fbf6c9f",
- "name": "string",
- "owner_uuid": "a528e82a-c54a-4046-8831-44d7f9028f54",
- "organization_uuid": "5d67373d-71ba-435a-bb8a-e71f4d7e2958",
- "hardware_profile": {
- "uuid": "095be615-a8ad-4c33-8e9c-c7612fbf6c9f",
- "name": "string",
- "is_official": true,
- "form_factor": "string",
- "cpu_count": 0,
- "ram_size": 0,
- "data_disk_size": 0,
- "width": 0,
- "height": 0,
- "density": 0,
- "hw_navigation_keys": true
}, - "os_image": {
- "uuid": "095be615-a8ad-4c33-8e9c-c7612fbf6c9f",
- "name": "string",
- "is_official": true,
- "image_version": "string",
- "arch": "x86",
- "is_beta": true,
- "build_date": "string",
- "os_version": {
- "uuid": "095be615-a8ad-4c33-8e9c-c7612fbf6c9f",
- "sdk_version": 0,
- "os_version": "string"
}
}, - "state": "CREATING",
- "streamer_fqdn": "string",
- "turn_fqdn": "string",
- "adb_url": "string",
- "file_upload_url": "string",
- "webrtc_url": "string",
- "recipe_uuid": "597eb633-0943-4de5-b80a-1b0319522204",
- "created_at": "string",
- "updated_at": "string",
- "timeout": 0,
- "timeouts": {
- "global": 0,
- "inactivity": 0
}, - "recipe": {
- "uuid": "095be615-a8ad-4c33-8e9c-c7612fbf6c9f",
- "name": "string",
- "source": "genymotion",
- "owner_uuid": "a528e82a-c54a-4046-8831-44d7f9028f54",
- "status": "ready",
- "items": [
- {
- "uuid": "095be615-a8ad-4c33-8e9c-c7612fbf6c9f",
- "name": "string",
- "type": "string"
}
], - "created_at": "string",
- "updated_at": "string",
- "owner": {
- "created_at": 0,
- "first_name": "string",
- "is_enabled": true,
- "is_organization_manager": true,
- "is_validated": true,
- "last_name": "string",
- "role": "USER",
- "uuid": "095be615-a8ad-4c33-8e9c-c7612fbf6c9f",
- "groups": [
- {
- "uuid": "095be615-a8ad-4c33-8e9c-c7612fbf6c9f",
- "name": "string"
}
], - "organization": {
- "uuid": "095be615-a8ad-4c33-8e9c-c7612fbf6c9f",
- "name": "string",
- "description": "string",
- "store_logcat": true,
- "billing_contact": "string",
- "instance_inactivity_timeout_minute": 28800,
- "vat_number": "string",
- "preferences": {
- "timeouts": {
- "global": 28800,
- "inactivity": 28800
}
}
}, - "group": {
- "uuid": "095be615-a8ad-4c33-8e9c-c7612fbf6c9f",
- "parent_uuid": "77932ac3-028b-48fa-aaa9-4d11b1d1236a",
- "name": "string",
- "description": "string",
- "is_default": true
}
}
}, - "owner": {
- "created_at": 0,
- "first_name": "string",
- "is_enabled": true,
- "is_organization_manager": true,
- "is_validated": true,
- "last_name": "string",
- "role": "USER",
- "uuid": "095be615-a8ad-4c33-8e9c-c7612fbf6c9f",
- "groups": [
- {
- "uuid": "095be615-a8ad-4c33-8e9c-c7612fbf6c9f",
- "name": "string"
}
], - "organization": {
- "uuid": "095be615-a8ad-4c33-8e9c-c7612fbf6c9f",
- "name": "string",
- "description": "string",
- "store_logcat": true,
- "billing_contact": "string",
- "instance_inactivity_timeout_minute": 28800,
- "vat_number": "string",
- "preferences": {
- "timeouts": {
- "global": 28800,
- "inactivity": 28800
}
}
}, - "group": {
- "uuid": "095be615-a8ad-4c33-8e9c-c7612fbf6c9f",
- "parent_uuid": "77932ac3-028b-48fa-aaa9-4d11b1d1236a",
- "name": "string",
- "description": "string",
- "is_default": true
}
}
}
Stop the given disposable Instance identified by its Uuid.
The Instance will automatically be destroyed right after it has been stopped.
The state of the Instance returned by this call will always be STOPPING, unless it was already in SAVING or DELETING state. In this case, the call will succeed but the instance will continue its end-of-life cycle.
uuid required | string <uuid> ^[0-9a-f]{8}-[0-9a-f]{4}-4[0-9a-f]{3}-[89ab][... Uuid of the resource |
curl -H 'Content-Type: application/json;charset=utf-8' -H 'x-api-token: <token>' --data '{}' https://api.geny.io/cloud/v1/instances/<UUID>/stop-disposable
{- "uuid": "095be615-a8ad-4c33-8e9c-c7612fbf6c9f",
- "name": "string",
- "owner_uuid": "a528e82a-c54a-4046-8831-44d7f9028f54",
- "organization_uuid": "5d67373d-71ba-435a-bb8a-e71f4d7e2958",
- "hardware_profile": {
- "uuid": "095be615-a8ad-4c33-8e9c-c7612fbf6c9f",
- "name": "string",
- "is_official": true,
- "form_factor": "string",
- "cpu_count": 0,
- "ram_size": 0,
- "data_disk_size": 0,
- "width": 0,
- "height": 0,
- "density": 0,
- "hw_navigation_keys": true
}, - "os_image": {
- "uuid": "095be615-a8ad-4c33-8e9c-c7612fbf6c9f",
- "name": "string",
- "is_official": true,
- "image_version": "string",
- "arch": "x86",
- "is_beta": true,
- "build_date": "string",
- "os_version": {
- "uuid": "095be615-a8ad-4c33-8e9c-c7612fbf6c9f",
- "sdk_version": 0,
- "os_version": "string"
}
}, - "state": "CREATING",
- "streamer_fqdn": "string",
- "turn_fqdn": "string",
- "adb_url": "string",
- "file_upload_url": "string",
- "webrtc_url": "string",
- "recipe_uuid": "597eb633-0943-4de5-b80a-1b0319522204",
- "created_at": "string",
- "updated_at": "string",
- "timeout": 0,
- "timeouts": {
- "global": 0,
- "inactivity": 0
}, - "recipe": {
- "uuid": "095be615-a8ad-4c33-8e9c-c7612fbf6c9f",
- "name": "string",
- "source": "genymotion",
- "owner_uuid": "a528e82a-c54a-4046-8831-44d7f9028f54",
- "status": "ready",
- "items": [
- {
- "uuid": "095be615-a8ad-4c33-8e9c-c7612fbf6c9f",
- "name": "string",
- "type": "string"
}
], - "created_at": "string",
- "updated_at": "string",
- "owner": {
- "created_at": 0,
- "first_name": "string",
- "is_enabled": true,
- "is_organization_manager": true,
- "is_validated": true,
- "last_name": "string",
- "role": "USER",
- "uuid": "095be615-a8ad-4c33-8e9c-c7612fbf6c9f",
- "groups": [
- {
- "uuid": "095be615-a8ad-4c33-8e9c-c7612fbf6c9f",
- "name": "string"
}
], - "organization": {
- "uuid": "095be615-a8ad-4c33-8e9c-c7612fbf6c9f",
- "name": "string",
- "description": "string",
- "store_logcat": true,
- "billing_contact": "string",
- "instance_inactivity_timeout_minute": 28800,
- "vat_number": "string",
- "preferences": {
- "timeouts": {
- "global": 28800,
- "inactivity": 28800
}
}
}, - "group": {
- "uuid": "095be615-a8ad-4c33-8e9c-c7612fbf6c9f",
- "parent_uuid": "77932ac3-028b-48fa-aaa9-4d11b1d1236a",
- "name": "string",
- "description": "string",
- "is_default": true
}
}
}, - "owner": {
- "created_at": 0,
- "first_name": "string",
- "is_enabled": true,
- "is_organization_manager": true,
- "is_validated": true,
- "last_name": "string",
- "role": "USER",
- "uuid": "095be615-a8ad-4c33-8e9c-c7612fbf6c9f",
- "groups": [
- {
- "uuid": "095be615-a8ad-4c33-8e9c-c7612fbf6c9f",
- "name": "string"
}
], - "organization": {
- "uuid": "095be615-a8ad-4c33-8e9c-c7612fbf6c9f",
- "name": "string",
- "description": "string",
- "store_logcat": true,
- "billing_contact": "string",
- "instance_inactivity_timeout_minute": 28800,
- "vat_number": "string",
- "preferences": {
- "timeouts": {
- "global": 28800,
- "inactivity": 28800
}
}
}, - "group": {
- "uuid": "095be615-a8ad-4c33-8e9c-c7612fbf6c9f",
- "parent_uuid": "77932ac3-028b-48fa-aaa9-4d11b1d1236a",
- "name": "string",
- "description": "string",
- "is_default": true
}
}
}
[STATEFULL] Export running instance data to make it persist over stop
uuid required | string <uuid> ^[0-9a-f]{8}-[0-9a-f]{4}-4[0-9a-f]{3}-[89ab][... UUID of the instance |
action | string Default: "SAVE_AS" Enum: "SAVE" "SAVE_AS" Specify if the recipe should be updated in place, or if a new recipe should be created. SAVE will update the custom recipe. SAVE can only be used if the current user is the owner of the custom recipe. If a the image is official, a new custom image will be created. Otherwise the existing custom image will be updated. SAVE_AS will create a new custom recipe and a new custom image. When a new custom recipe is created, it will have the name specified by new_recipe_name. If no new_recipe_name is specified, the new custom recipe will be named "Copy of toriginal recipe name)" When a new custom image is created, it will have the name specified by new_os_image_name. If no new_os_image_name is specified, the new custom image will be named "Copy of (original image name)" |
new_recipe_name | string Name of the new created recipe. Used in case of action=SAVE_AS. |
new_os_image_name | string Name of the new created OS Image. Used in case of action=SAVE and current OsImage is official, or if action=SAVE_AS. |
{- "action": "SAVE",
- "new_recipe_name": "string",
- "new_os_image_name": "string"
}
{- "code": "string",
- "message": "string"
}
List all currently available Instances for the authenticated User.
The following sortable fields are available:
This endpoint is paginated.
ordering | string^[\+|\-]?[,1-9a-zA-Z_\-]*$ Use an orderable field with an optional '+' OR '-' prefix to order in the desired direction |
page | integer Page to query |
page_size | integer Number of elements per pages |
organization_uuid | string <uuid> ^[0-9a-f]{8}-[0-9a-f]{4}-4[0-9a-f]{3}-[89ab][... Uuid of the organization. Only an organization manager can use this filter. |
state | string Instance state to filter |
curl -H 'Content-Type: application/json;charset=utf-8' -H 'x-api-token: <token>' 'https://api.geny.io/cloud/v2/instances?state=BOOTING&state=ONLINE&ordering=created_at'
{- "count": 0,
- "next": "string",
- "previous": "string",
- "results": [
- {
- "uuid": "095be615-a8ad-4c33-8e9c-c7612fbf6c9f",
- "name": "string",
- "owner_uuid": "a528e82a-c54a-4046-8831-44d7f9028f54",
- "organization_uuid": "5d67373d-71ba-435a-bb8a-e71f4d7e2958",
- "hardware_profile": {
- "uuid": "095be615-a8ad-4c33-8e9c-c7612fbf6c9f",
- "name": "string",
- "is_official": true,
- "form_factor": "string",
- "cpu_count": 0,
- "ram_size": 0,
- "data_disk_size": 0,
- "width": 0,
- "height": 0,
- "density": 0,
- "hw_navigation_keys": true
}, - "os_image": {
- "uuid": "095be615-a8ad-4c33-8e9c-c7612fbf6c9f",
- "name": "string",
- "is_official": true,
- "image_version": "string",
- "arch": "x86",
- "is_beta": true,
- "build_date": "string",
- "os_version": {
- "uuid": "095be615-a8ad-4c33-8e9c-c7612fbf6c9f",
- "sdk_version": 0,
- "os_version": "string"
}
}, - "state": "CREATING",
- "streamer_fqdn": "string",
- "turn_fqdn": "string",
- "adb_url": "string",
- "file_upload_url": "string",
- "webrtc_url": "string",
- "recipe_uuid": "597eb633-0943-4de5-b80a-1b0319522204",
- "created_at": "string",
- "updated_at": "string",
- "timeout": 0,
- "timeouts": {
- "global": 0,
- "inactivity": 0
}, - "recipe": {
- "uuid": "095be615-a8ad-4c33-8e9c-c7612fbf6c9f",
- "name": "string",
- "source": "genymotion",
- "owner_uuid": "a528e82a-c54a-4046-8831-44d7f9028f54",
- "status": "ready",
- "items": [
- {
- "uuid": "095be615-a8ad-4c33-8e9c-c7612fbf6c9f",
- "name": "string",
- "type": "string"
}
], - "created_at": "string",
- "updated_at": "string",
- "owner": {
- "created_at": 0,
- "first_name": "string",
- "is_enabled": true,
- "is_organization_manager": true,
- "is_validated": true,
- "last_name": "string",
- "role": "USER",
- "uuid": "095be615-a8ad-4c33-8e9c-c7612fbf6c9f",
- "groups": [
- {
- "uuid": "095be615-a8ad-4c33-8e9c-c7612fbf6c9f",
- "name": "string"
}
], - "organization": {
- "uuid": "095be615-a8ad-4c33-8e9c-c7612fbf6c9f",
- "name": "string",
- "description": "string",
- "store_logcat": true,
- "billing_contact": "string",
- "instance_inactivity_timeout_minute": 28800,
- "vat_number": "string",
- "preferences": {
- "timeouts": {
- "global": 28800,
- "inactivity": 28800
}
}
}, - "group": {
- "uuid": "095be615-a8ad-4c33-8e9c-c7612fbf6c9f",
- "parent_uuid": "77932ac3-028b-48fa-aaa9-4d11b1d1236a",
- "name": "string",
- "description": "string",
- "is_default": true
}
}
}, - "owner": {
- "created_at": 0,
- "first_name": "string",
- "is_enabled": true,
- "is_organization_manager": true,
- "is_validated": true,
- "last_name": "string",
- "role": "USER",
- "uuid": "095be615-a8ad-4c33-8e9c-c7612fbf6c9f",
- "groups": [
- {
- "uuid": "095be615-a8ad-4c33-8e9c-c7612fbf6c9f",
- "name": "string"
}
], - "organization": {
- "uuid": "095be615-a8ad-4c33-8e9c-c7612fbf6c9f",
- "name": "string",
- "description": "string",
- "store_logcat": true,
- "billing_contact": "string",
- "instance_inactivity_timeout_minute": 28800,
- "vat_number": "string",
- "preferences": {
- "timeouts": {
- "global": 28800,
- "inactivity": 28800
}
}
}, - "group": {
- "uuid": "095be615-a8ad-4c33-8e9c-c7612fbf6c9f",
- "parent_uuid": "77932ac3-028b-48fa-aaa9-4d11b1d1236a",
- "name": "string",
- "description": "string",
- "is_default": true
}
}
}
]
}
uuid required | string <uuid> ^[0-9a-f]{8}-[0-9a-f]{4}-4[0-9a-f]{3}-[89ab][... Uuid of the hardware profile to retrieve |
curl -H 'Content-Type: application/json;charset=utf-8' -H 'x-api-token: <token>' https://api.geny.io/cloud/v1/hardware-profiles/<UUID>
{- "uuid": "095be615-a8ad-4c33-8e9c-c7612fbf6c9f",
- "display_settings": {
- "uuid": "095be615-a8ad-4c33-8e9c-c7612fbf6c9f",
- "displays": [
- {
- "uuid": "095be615-a8ad-4c33-8e9c-c7612fbf6c9f",
- "display_index": 0,
- "width": 0,
- "height": 0,
- "density": 0,
- "physical_size": 0
}
], - "display_mode": "REGULAR",
- "hw_navigation_keys": true
}, - "parent_hardware_profile_uuid": "c2b24ad9-266c-4839-915f-e2ff070fbe70",
- "name": "string",
- "is_official": true,
- "owner": {
- "created_at": 0,
- "first_name": "string",
- "is_enabled": true,
- "is_organization_manager": true,
- "is_validated": true,
- "last_name": "string",
- "role": "USER",
- "uuid": "095be615-a8ad-4c33-8e9c-c7612fbf6c9f",
- "groups": [
- {
- "uuid": "095be615-a8ad-4c33-8e9c-c7612fbf6c9f",
- "name": "string"
}
], - "organization": {
- "uuid": "095be615-a8ad-4c33-8e9c-c7612fbf6c9f",
- "name": "string",
- "description": "string",
- "store_logcat": true,
- "billing_contact": "string",
- "instance_inactivity_timeout_minute": 28800,
- "vat_number": "string",
- "preferences": {
- "timeouts": {
- "global": 28800,
- "inactivity": 28800
}
}
}
}, - "form_factor": "PHONE",
- "cpu_count": 0,
- "ram_size": 0,
- "data_disk_size": 0,
- "release_date": "string",
- "created_at": "string",
- "updated_at": "string",
- "recipe_count": 0
}
uuid required | string <uuid> ^[0-9a-f]{8}-[0-9a-f]{4}-4[0-9a-f]{3}-[89ab][... Uuid of the hardware profile to retrieve |
curl -H 'Content-Type: application/json;charset=utf-8' -H 'x-api-token: <token>' -X "DELETE" https://api.geny.io/cloud/v1/hardware-profiles/<UUID>
{- "code": "string",
- "message": "string"
}
List all is official Hardware Profiles and Hardware Profiles of the current user.
source | string Default: "all" Enum: "all" "official" "owner" Filter by Hardware Profile source. Options are:
|
search | string Search term to search on name attribute. |
page | integer Page to fetch |
page_size | integer Default: 30 Number of hardware profiles per page |
curl -H 'Content-Type: application/json;charset=utf-8' -H 'x-api-token: <token>' https://api.geny.io/cloud/v1/hardware-profiles/
{- "count": 0,
- "results": [
- {
- "uuid": "095be615-a8ad-4c33-8e9c-c7612fbf6c9f",
- "display_settings": {
- "uuid": "095be615-a8ad-4c33-8e9c-c7612fbf6c9f",
- "displays": [
- {
- "uuid": "095be615-a8ad-4c33-8e9c-c7612fbf6c9f",
- "display_index": 0,
- "width": 0,
- "height": 0,
- "density": 0,
- "physical_size": 0
}
], - "display_mode": "REGULAR",
- "hw_navigation_keys": true
}, - "parent_hardware_profile_uuid": "c2b24ad9-266c-4839-915f-e2ff070fbe70",
- "name": "string",
- "is_official": true,
- "owner": {
- "created_at": 0,
- "first_name": "string",
- "is_enabled": true,
- "is_organization_manager": true,
- "is_validated": true,
- "last_name": "string",
- "role": "USER",
- "uuid": "095be615-a8ad-4c33-8e9c-c7612fbf6c9f",
- "groups": [
- {
- "uuid": "095be615-a8ad-4c33-8e9c-c7612fbf6c9f",
- "name": "string"
}
], - "organization": {
- "uuid": "095be615-a8ad-4c33-8e9c-c7612fbf6c9f",
- "name": "string",
- "description": "string",
- "store_logcat": true,
- "billing_contact": "string",
- "instance_inactivity_timeout_minute": 28800,
- "vat_number": "string",
- "preferences": {
- "timeouts": {
- "global": 28800,
- "inactivity": 28800
}
}
}
}, - "form_factor": "PHONE",
- "cpu_count": 0,
- "ram_size": 0,
- "data_disk_size": 0,
- "release_date": "string",
- "created_at": "string",
- "updated_at": "string"
}
]
}
This endpoint creates a new hardware profile from the input parameters.
required | object (PublicDisplaySettingsPayload) |
parent_hardware_profile_uuid | string or null <uuid> (NullableUuidv4) ^[0-9a-f]{8}-[0-9a-f]{4}-4[0-9a-f]{3}-[89ab][... Resource unique identifier |
name required | string Hardware Profile name |
form_factor | string (PublicFormFactor) Enum: "PHONE" "TABLET" Hardware Profile form factor |
release_date | string or null (NullableShortDate) ^(\d{4})-(\d){2}-(\d{2})$ Date |
{- "display_settings": {
- "displays": [
- {
- "width": 240,
- "height": 240,
- "density": 80,
- "physical_size": 1
}
], - "hw_navigation_keys": true
}, - "parent_hardware_profile_uuid": "c2b24ad9-266c-4839-915f-e2ff070fbe70",
- "name": "string",
- "form_factor": "PHONE",
- "release_date": "string"
}
{- "uuid": "095be615-a8ad-4c33-8e9c-c7612fbf6c9f",
- "display_settings": {
- "uuid": "095be615-a8ad-4c33-8e9c-c7612fbf6c9f",
- "displays": [
- {
- "uuid": "095be615-a8ad-4c33-8e9c-c7612fbf6c9f",
- "display_index": 0,
- "width": 0,
- "height": 0,
- "density": 0,
- "physical_size": 0
}
], - "display_mode": "REGULAR",
- "hw_navigation_keys": true
}, - "parent_hardware_profile_uuid": "c2b24ad9-266c-4839-915f-e2ff070fbe70",
- "name": "string",
- "is_official": true,
- "owner": {
- "created_at": 0,
- "first_name": "string",
- "is_enabled": true,
- "is_organization_manager": true,
- "is_validated": true,
- "last_name": "string",
- "role": "USER",
- "uuid": "095be615-a8ad-4c33-8e9c-c7612fbf6c9f",
- "groups": [
- {
- "uuid": "095be615-a8ad-4c33-8e9c-c7612fbf6c9f",
- "name": "string"
}
], - "organization": {
- "uuid": "095be615-a8ad-4c33-8e9c-c7612fbf6c9f",
- "name": "string",
- "description": "string",
- "store_logcat": true,
- "billing_contact": "string",
- "instance_inactivity_timeout_minute": 28800,
- "vat_number": "string",
- "preferences": {
- "timeouts": {
- "global": 28800,
- "inactivity": 28800
}
}
}
}, - "form_factor": "PHONE",
- "cpu_count": 0,
- "ram_size": 0,
- "data_disk_size": 0,
- "release_date": "string",
- "created_at": "string",
- "updated_at": "string",
- "recipe_count": 0
}
uuid required | string <uuid> ^[0-9a-f]{8}-[0-9a-f]{4}-4[0-9a-f]{3}-[89ab][... Uuid of the OS Image to retrieve |
curl -H 'Content-Type: application/json;charset=utf-8' -H 'x-api-token: <token>' https://api.geny.io/cloud/v1/os-images/<UUID>
{- "uuid": "095be615-a8ad-4c33-8e9c-c7612fbf6c9f",
- "os_version": {
- "uuid": "095be615-a8ad-4c33-8e9c-c7612fbf6c9f",
- "name": "string",
- "os_version": "string",
- "sdk_version": "string",
- "release_date": "string"
}, - "parent_os_image_uuid": "cbcb716b-9ff1-4221-877f-79705bbb170e",
- "supported_form_factors": [
- "PHONE"
], - "name": "string",
- "is_official": true,
- "is_beta": true,
- "arch": "x86",
- "owner": {
- "created_at": 0,
- "first_name": "string",
- "is_enabled": true,
- "is_organization_manager": true,
- "is_validated": true,
- "last_name": "string",
- "role": "USER",
- "uuid": "095be615-a8ad-4c33-8e9c-c7612fbf6c9f",
- "groups": [
- {
- "uuid": "095be615-a8ad-4c33-8e9c-c7612fbf6c9f",
- "name": "string"
}
], - "organization": {
- "uuid": "095be615-a8ad-4c33-8e9c-c7612fbf6c9f",
- "name": "string",
- "description": "string",
- "store_logcat": true,
- "billing_contact": "string",
- "instance_inactivity_timeout_minute": 28800,
- "vat_number": "string",
- "preferences": {
- "timeouts": {
- "global": 28800,
- "inactivity": 28800
}
}
}
}, - "status": "CREATING",
- "image_version": "string",
- "image_uri": "string",
- "image_size_bytes": 0,
- "image_hash": "string",
- "image_date": "string",
- "build_date": "string",
- "created_at": "string",
- "updated_at": "string",
- "recipe_count": 0
}
uuid required | string <uuid> ^[0-9a-f]{8}-[0-9a-f]{4}-4[0-9a-f]{3}-[89ab][... Uuid of the OS Image to retrieve |
curl -H 'Content-Type: application/json;charset=utf-8' -H 'x-api-token: <token>' -X "DELETE" https://api.geny.io/cloud/v1/os-images/<UUID>
{- "code": "string",
- "message": "string"
}
List all is official OS Images and OS Images of the current user.
source | string Default: "all" Enum: "all" "official" "owner" Filter by OS Image source. Options are:
|
arch | Array of strings Default: "x86_64,x86" Items Enum: "x86" "x86_64" "arm64" Filter by the image architecture. If this isn't specified, |
search | string Search term to search on name attribute. |
page | integer Page to fetch |
page_size | integer Default: 30 Number of os images per page |
curl -H 'Content-Type: application/json;charset=utf-8' -H 'x-api-token: <token>' https://api.geny.io/cloud/v1/os-images/
{- "count": 0,
- "results": [
- {
- "uuid": "095be615-a8ad-4c33-8e9c-c7612fbf6c9f",
- "os_version": {
- "uuid": "095be615-a8ad-4c33-8e9c-c7612fbf6c9f",
- "name": "string",
- "os_version": "string",
- "sdk_version": "string",
- "release_date": "string"
}, - "parent_os_image_uuid": "cbcb716b-9ff1-4221-877f-79705bbb170e",
- "supported_form_factors": [
- "PHONE"
], - "name": "string",
- "is_official": true,
- "is_beta": true,
- "arch": "x86",
- "owner": {
- "created_at": 0,
- "first_name": "string",
- "is_enabled": true,
- "is_organization_manager": true,
- "is_validated": true,
- "last_name": "string",
- "role": "USER",
- "uuid": "095be615-a8ad-4c33-8e9c-c7612fbf6c9f",
- "groups": [
- {
- "uuid": "095be615-a8ad-4c33-8e9c-c7612fbf6c9f",
- "name": "string"
}
], - "organization": {
- "uuid": "095be615-a8ad-4c33-8e9c-c7612fbf6c9f",
- "name": "string",
- "description": "string",
- "store_logcat": true,
- "billing_contact": "string",
- "instance_inactivity_timeout_minute": 28800,
- "vat_number": "string",
- "preferences": {
- "timeouts": {
- "global": 28800,
- "inactivity": 28800
}
}
}
}, - "status": "CREATING",
- "image_version": "string",
- "image_uri": "string",
- "image_size_bytes": 0,
- "image_hash": "string",
- "image_date": "string",
- "build_date": "string",
- "created_at": "string",
- "updated_at": "string"
}
]
}
This endpoint duplicates an OS Image from the input parameters.
uuid required | string <uuid> ^[0-9a-f]{8}-[0-9a-f]{4}-4[0-9a-f]{3}-[89ab][... Uuid of the OS Image to retrieve |
name required | string OS Image name |
{- "name": "string"
}
{- "uuid": "095be615-a8ad-4c33-8e9c-c7612fbf6c9f",
- "os_version": {
- "uuid": "095be615-a8ad-4c33-8e9c-c7612fbf6c9f",
- "name": "string",
- "os_version": "string",
- "sdk_version": "string",
- "release_date": "string"
}, - "parent_os_image_uuid": "cbcb716b-9ff1-4221-877f-79705bbb170e",
- "supported_form_factors": [
- "PHONE"
], - "name": "string",
- "is_official": true,
- "is_beta": true,
- "arch": "x86",
- "owner": {
- "created_at": 0,
- "first_name": "string",
- "is_enabled": true,
- "is_organization_manager": true,
- "is_validated": true,
- "last_name": "string",
- "role": "USER",
- "uuid": "095be615-a8ad-4c33-8e9c-c7612fbf6c9f",
- "groups": [
- {
- "uuid": "095be615-a8ad-4c33-8e9c-c7612fbf6c9f",
- "name": "string"
}
], - "organization": {
- "uuid": "095be615-a8ad-4c33-8e9c-c7612fbf6c9f",
- "name": "string",
- "description": "string",
- "store_logcat": true,
- "billing_contact": "string",
- "instance_inactivity_timeout_minute": 28800,
- "vat_number": "string",
- "preferences": {
- "timeouts": {
- "global": 28800,
- "inactivity": 28800
}
}
}
}, - "status": "CREATING",
- "image_version": "string",
- "image_uri": "string",
- "image_size_bytes": 0,
- "image_hash": "string",
- "image_date": "string",
- "build_date": "string",
- "created_at": "string",
- "updated_at": "string",
- "recipe_count": 0
}