GET /api/compute_resources
List all compute resources

Params

Param name Description
location_id
optional

Scope by locations

Validations:

  • Must be a Integer

organization_id
optional

Scope by organizations

Validations:

  • Must be a Integer

search
optional

filter results

Validations:

  • Must be a String

order
optional

Sort field and order, eg. ‘id DESC’

Validations:

  • Must be a String

page
optional

Page number, starting at 1

Validations:

  • Must be a number.

per_page
optional

Number of results per page to return

Validations:

  • Must be a number.

Search fields

Field name Type Possible values
id integer
location string
location_id integer
name string
organization string
organization_id integer
type string

GET /api/compute_resources/:id
Show a compute resource

Params

Param name Description
location_id
optional

Set the current location context for the request

Validations:

  • Must be a Integer

organization_id
optional

Set the current organization context for the request

Validations:

  • Must be a Integer

id
required

Validations:

  • Must be an identifier, string from 1 to 128 characters containing only alphanumeric characters, space, underscore(_), hypen(-) with no leading or trailing space.


POST /api/compute_resources
Create a compute resource

Params

Param name Description
location_id
optional

Set the current location context for the request

Validations:

  • Must be a Integer

organization_id
optional

Set the current organization context for the request

Validations:

  • Must be a Integer

compute_resource
required

Validations:

  • Must be a Hash

compute_resource[name]
required

Validations:

  • Must be a String

compute_resource[provider]
optional , nil allowed

Providers include Libvirt, Ovirt, EC2, Vmware, Openstack, Rackspace, GCE

Validations:

  • Must be a String

compute_resource[url]
optional , nil allowed

URL for Libvirt, oVirt, OpenStack and Rackspace

Validations:

  • Must be a String

compute_resource[description]
optional , nil allowed

Validations:

  • Must be a String

compute_resource[user]
optional , nil allowed

Username for oVirt, EC2, VMware, OpenStack. Access Key for EC2.

Validations:

  • Must be a String

compute_resource[password]
optional , nil allowed

Password for oVirt, EC2, VMware, OpenStack. Secret key for EC2

Validations:

  • Must be a String

compute_resource[datacenter]
optional , nil allowed

for oVirt, VMware Datacenter

Validations:

  • Must be a String

compute_resource[use_v4]
optional , nil allowed

for oVirt only

Validations:

  • Must be one of: true, false, 1, 0.

compute_resource[ovirt_quota]
optional , nil allowed

for oVirt only, ID or Name of quota to use

Validations:

  • Must be a String

compute_resource[public_key]
optional , nil allowed

for oVirt only

Validations:

  • Must be a String

compute_resource[region]
optional , nil allowed

for AzureRm eg. ‘eastus’ and for EC2 only. Use ‘us-gov-west-1’ for EC2 GovCloud region

Validations:

  • Must be a String

compute_resource[tenant]
optional , nil allowed

for OpenStack and AzureRm only

Validations:

  • Must be a String

compute_resource[domain]
optional , nil allowed

for OpenStack (v3) only

Validations:

  • Must be a String

compute_resource[project_domain_name]
optional , nil allowed

for OpenStack (v3) only

Validations:

  • Must be a String

compute_resource[project_domain_id]
optional , nil allowed

for OpenStack (v3) only

Validations:

  • Must be a String

compute_resource[server]
optional , nil allowed

for VMware

Validations:

  • Must be a String

compute_resource[set_console_password]
optional , nil allowed

for Libvirt and VMware only

Validations:

  • Must be one of: true, false, 1, 0.

compute_resource[display_type]
optional , nil allowed

for Libvirt and oVirt only

Validations:

  • Must be one of: VNC, SPICE.

compute_resource[keyboard]
optional , nil allowed

for oVirt only

Validations:

  • Must be one of: ar, de-ch, es, fo, fr-ca, hu, ja, mk, no, pt-br, sv, da, en-gb, et, fr, fr-ch, is, lt, nl, pl, ru, th, de, en-us, fi, fr-be, hr, it, lv, nl-be, pt, sl, tr.

compute_resource[caching_enabled]
optional , nil allowed

enable caching, for VMware only

Validations:

  • Must be one of: true, false, 1, 0.

compute_resource[project]
optional , nil allowed

Project id for GCE only

Validations:

  • Must be a String

compute_resource[email]
optional , nil allowed

Email for GCE only

Validations:

  • Must be a String

compute_resource[key_path]
optional , nil allowed

Certificate path for GCE only

Validations:

  • Must be a String

compute_resource[zone]
optional , nil allowed

for GCE only

Validations:

  • Must be a String

compute_resource[location_ids]
optional , nil allowed

REPLACE locations with given ids

Validations:

  • Must be an array of any type

compute_resource[organization_ids]
optional , nil allowed

REPLACE organizations with given ids.

Validations:

  • Must be an array of any type


PUT /api/compute_resources/:id
Update a compute resource

Params

Param name Description
location_id
optional

Set the current location context for the request

Validations:

  • Must be a Integer

organization_id
optional

Set the current organization context for the request

Validations:

  • Must be a Integer

id
required

Validations:

  • Must be a String

compute_resource
required

Validations:

  • Must be a Hash

compute_resource[name]
optional

Validations:

  • Must be a String

compute_resource[provider]
optional , nil allowed

Providers include Libvirt, Ovirt, EC2, Vmware, Openstack, Rackspace, GCE

Validations:

  • Must be a String

compute_resource[url]
optional , nil allowed

URL for Libvirt, oVirt, OpenStack and Rackspace

Validations:

  • Must be a String

compute_resource[description]
optional , nil allowed

Validations:

  • Must be a String

compute_resource[user]
optional , nil allowed

Username for oVirt, EC2, VMware, OpenStack. Access Key for EC2.

Validations:

  • Must be a String

compute_resource[password]
optional , nil allowed

Password for oVirt, EC2, VMware, OpenStack. Secret key for EC2

Validations:

  • Must be a String

compute_resource[datacenter]
optional , nil allowed

for oVirt, VMware Datacenter

Validations:

  • Must be a String

compute_resource[use_v4]
optional , nil allowed

for oVirt only

Validations:

  • Must be one of: true, false, 1, 0.

compute_resource[ovirt_quota]
optional , nil allowed

for oVirt only, ID or Name of quota to use

Validations:

  • Must be a String

compute_resource[public_key]
optional , nil allowed

for oVirt only

Validations:

  • Must be a String

compute_resource[region]
optional , nil allowed

for AzureRm eg. ‘eastus’ and for EC2 only. Use ‘us-gov-west-1’ for EC2 GovCloud region

Validations:

  • Must be a String

compute_resource[tenant]
optional , nil allowed

for OpenStack and AzureRm only

Validations:

  • Must be a String

compute_resource[domain]
optional , nil allowed

for OpenStack (v3) only

Validations:

  • Must be a String

compute_resource[project_domain_name]
optional , nil allowed

for OpenStack (v3) only

Validations:

  • Must be a String

compute_resource[project_domain_id]
optional , nil allowed

for OpenStack (v3) only

Validations:

  • Must be a String

compute_resource[server]
optional , nil allowed

for VMware

Validations:

  • Must be a String

compute_resource[set_console_password]
optional , nil allowed

for Libvirt and VMware only

Validations:

  • Must be one of: true, false, 1, 0.

compute_resource[display_type]
optional , nil allowed

for Libvirt and oVirt only

Validations:

  • Must be one of: VNC, SPICE.

compute_resource[keyboard]
optional , nil allowed

for oVirt only

Validations:

  • Must be one of: ar, de-ch, es, fo, fr-ca, hu, ja, mk, no, pt-br, sv, da, en-gb, et, fr, fr-ch, is, lt, nl, pl, ru, th, de, en-us, fi, fr-be, hr, it, lv, nl-be, pt, sl, tr.

compute_resource[caching_enabled]
optional , nil allowed

enable caching, for VMware only

Validations:

  • Must be one of: true, false, 1, 0.

compute_resource[project]
optional , nil allowed

Project id for GCE only

Validations:

  • Must be a String

compute_resource[email]
optional , nil allowed

Email for GCE only

Validations:

  • Must be a String

compute_resource[key_path]
optional , nil allowed

Certificate path for GCE only

Validations:

  • Must be a String

compute_resource[zone]
optional , nil allowed

for GCE only

Validations:

  • Must be a String

compute_resource[location_ids]
optional , nil allowed

REPLACE locations with given ids

Validations:

  • Must be an array of any type

compute_resource[organization_ids]
optional , nil allowed

REPLACE organizations with given ids.

Validations:

  • Must be an array of any type


DELETE /api/compute_resources/:id
Delete a compute resource

Params

Param name Description
location_id
optional

Set the current location context for the request

Validations:

  • Must be a Integer

organization_id
optional

Set the current organization context for the request

Validations:

  • Must be a Integer

id
required

Validations:

  • Must be an identifier, string from 1 to 128 characters containing only alphanumeric characters, space, underscore(_), hypen(-) with no leading or trailing space.


GET /api/compute_resources/:id/available_images
List available images for a compute resource

Examples

GET /api/compute_resources/928692541-amazon123/available_images
200
[
  {
    "name": "some_image",
    "uuid": "123"
  }
]

Params

Param name Description
location_id
optional

Set the current location context for the request

Validations:

  • Must be a Integer

organization_id
optional

Set the current organization context for the request

Validations:

  • Must be a Integer

id
required

Validations:

  • Must be an identifier, string from 1 to 128 characters containing only alphanumeric characters, space, underscore(_), hypen(-) with no leading or trailing space.


GET /api/compute_resources/:id/available_clusters
List available clusters for a compute resource

Examples

GET /api/compute_resources/510899777-Ovirt/available_clusters
200
{
  "total": 1,
  "subtotal": 1,
  "page": 1,
  "per_page": 20,
  "search": null,
  "sort": {
    "by": null,
    "order": null
  },
  "results": [
    {
      "name": "test_cluster",
      "id": "my11-test35-uuid99"
    }
  ]
}

Params

Param name Description
location_id
optional

Set the current location context for the request

Validations:

  • Must be a Integer

organization_id
optional

Set the current organization context for the request

Validations:

  • Must be a Integer

id
required

Validations:

  • Must be an identifier, string from 1 to 128 characters containing only alphanumeric characters, space, underscore(_), hypen(-) with no leading or trailing space.


GET /api/compute_resources/:id/available_flavors
List available flavors for a compute resource

Examples

GET /api/compute_resources/928692541-amazon123/available_flavors
200
{
  "total": 1,
  "subtotal": 1,
  "page": 1,
  "per_page": 20,
  "search": null,
  "sort": {
    "by": null,
    "order": null
  },
  "results": [
    {
      "name": "test_ec2_object",
      "id": "123"
    }
  ]
}

Params

Param name Description
location_id
optional

Set the current location context for the request

Validations:

  • Must be a Integer

organization_id
optional

Set the current organization context for the request

Validations:

  • Must be a Integer

id
required

Validations:

  • Must be an identifier, string from 1 to 128 characters containing only alphanumeric characters, space, underscore(_), hypen(-) with no leading or trailing space.


GET /api/compute_resources/:id/available_folders
List available folders for a compute resource

Examples

GET /api/compute_resources/305613588-Vmware/available_folders
200
{
  "total": 1,
  "subtotal": 1,
  "page": 1,
  "per_page": 20,
  "search": null,
  "sort": {
    "by": null,
    "order": null
  },
  "results": [
    {
      "name": "test_vmware_object",
      "id": "my11-test35-uuid99"
    }
  ]
}

Params

Param name Description
location_id
optional

Set the current location context for the request

Validations:

  • Must be a Integer

organization_id
optional

Set the current organization context for the request

Validations:

  • Must be a Integer

id
required

Validations:

  • Must be an identifier, string from 1 to 128 characters containing only alphanumeric characters, space, underscore(_), hypen(-) with no leading or trailing space.


GET /api/compute_resources/:id/available_zones
List available zone for a compute resource

Examples

GET /api/compute_resources/928692541-amazon123/available_zones
200
{
  "total": 1,
  "subtotal": 1,
  "page": 1,
  "per_page": 20,
  "search": null,
  "sort": {
    "by": null,
    "order": null
  },
  "results": [
    {
      "name": "test_ec2_object"
    }
  ]
}

Params

Param name Description
location_id
optional

Set the current location context for the request

Validations:

  • Must be a Integer

organization_id
optional

Set the current organization context for the request

Validations:

  • Must be a Integer

id
required

Validations:

  • Must be an identifier, string from 1 to 128 characters containing only alphanumeric characters, space, underscore(_), hypen(-) with no leading or trailing space.


GET /api/compute_resources/:id/available_networks
List available networks for a compute resource

GET /api/compute_resources/:id/available_clusters/:cluster_id/available_networks
List available networks for a compute resource cluster

Examples

GET /api/compute_resources/510899777-Ovirt/available_clusters/123-456-789/available_networks
200
{
  "total": 1,
  "subtotal": 1,
  "page": 1,
  "per_page": 20,
  "search": null,
  "sort": {
    "by": null,
    "order": null
  },
  "results": [
    {
      "name": "test_network",
      "id": "my11-test35-uuid99"
    }
  ]
}

Params

Param name Description
location_id
optional

Set the current location context for the request

Validations:

  • Must be a Integer

organization_id
optional

Set the current organization context for the request

Validations:

  • Must be a Integer

id
required

Validations:

  • Must be an identifier, string from 1 to 128 characters containing only alphanumeric characters, space, underscore(_), hypen(-) with no leading or trailing space.

cluster_id
optional

Validations:

  • Must be a String


GET /api/compute_resources/:id/available_clusters/:cluster_id/available_resource_pools
List resource pools for a compute resource cluster

Examples

GET /api/compute_resources/305613588-Vmware/available_clusters/123-456-789/available_resource_pools
200
{
  "total": 1,
  "subtotal": 1,
  "page": 1,
  "per_page": 20,
  "search": null,
  "sort": {
    "by": null,
    "order": null
  },
  "results": [
    {
      "name": "test_vmware_object",
      "id": "my11-test35-uuid99"
    }
  ]
}

Params

Param name Description
location_id
optional

Set the current location context for the request

Validations:

  • Must be a Integer

organization_id
optional

Set the current organization context for the request

Validations:

  • Must be a Integer

id
required

Validations:

  • Must be an identifier, string from 1 to 128 characters containing only alphanumeric characters, space, underscore(_), hypen(-) with no leading or trailing space.

cluster_id
required

Validations:

  • Must be a String


GET /api/compute_resources/:id/storage_domains/:storage_domain_id
List attributes for a given storage domain

Examples

GET /api/compute_resources/305613588-Vmware/storage_domains/test_vmware_datastore
200
{
  "name": "test_vmware_datastore",
  "id": "my11-test35-uuid99"
}

Params

Param name Description
location_id
optional

Set the current location context for the request

Validations:

  • Must be a Integer

organization_id
optional

Set the current organization context for the request

Validations:

  • Must be a Integer

id
required

Validations:

  • Must be an identifier, string from 1 to 128 characters containing only alphanumeric characters, space, underscore(_), hypen(-) with no leading or trailing space.

storage_domain_id
required

Validations:

  • Must be a String


GET /api/compute_resources/:id/available_storage_domains
List storage domains for a compute resource

GET /api/compute_resources/:id/available_storage_domains/:storage_domain
List attributes for a given storage domain

GET /api/compute_resources/:id/available_clusters/:cluster_id/available_storage_domains
List storage domains for a compute resource

Examples

GET /api/compute_resources/510899777-Ovirt/available_storage_domains
200
{
  "total": 1,
  "subtotal": 1,
  "page": 1,
  "per_page": 20,
  "search": null,
  "sort": {
    "by": null,
    "order": null
  },
  "results": [
    {
      "name": "test_cluster",
      "id": "my11-test35-uuid99"
    }
  ]
}

Params

Param name Description
location_id
optional

Set the current location context for the request

Validations:

  • Must be a Integer

organization_id
optional

Set the current organization context for the request

Validations:

  • Must be a Integer

id
required

Validations:

  • Must be an identifier, string from 1 to 128 characters containing only alphanumeric characters, space, underscore(_), hypen(-) with no leading or trailing space.

cluster_id
optional

Validations:

  • Must be a String

storage_domain
optional

Validations:

  • Must be a String


GET /api/compute_resources/:id/storage_pods/:storage_pod_id
List attributes for a given storage pod

Examples

GET /api/compute_resources/305613588-Vmware/storage_pods/test_vmware_pod
200
{
  "name": "test_vmware_pod",
  "id": "group-p123456"
}

Params

Param name Description
location_id
optional

Set the current location context for the request

Validations:

  • Must be a Integer

organization_id
optional

Set the current organization context for the request

Validations:

  • Must be a Integer

id
required

Validations:

  • Must be an identifier, string from 1 to 128 characters containing only alphanumeric characters, space, underscore(_), hypen(-) with no leading or trailing space.

storage_pod_id
required

Validations:

  • Must be a String


GET /api/compute_resources/:id/available_storage_pods
List storage pods for a compute resource

GET /api/compute_resources/:id/available_storage_pods/:storage_pod
List attributes for a given storage pod

GET /api/compute_resources/:id/available_clusters/:cluster_id/available_storage_pods
List storage pods for a compute resource

Examples

GET /api/compute_resources/305613588-Vmware/available_storage_pods/test_vmware_pod
200
{
  "total": 1,
  "subtotal": 1,
  "page": 1,
  "per_page": 20,
  "search": null,
  "sort": {
    "by": null,
    "order": null
  },
  "results": [
    {
      "name": "test_vmware_pod",
      "id": "group-p123456"
    }
  ]
}

Params

Param name Description
location_id
optional

Set the current location context for the request

Validations:

  • Must be a Integer

organization_id
optional

Set the current organization context for the request

Validations:

  • Must be a Integer

id
required

Validations:

  • Must be an identifier, string from 1 to 128 characters containing only alphanumeric characters, space, underscore(_), hypen(-) with no leading or trailing space.

cluster_id
optional

Validations:

  • Must be a String

storage_pod
optional

Validations:

  • Must be a String


GET /api/compute_resources/:id/available_security_groups
List available security groups for a compute resource

Examples

GET /api/compute_resources/928692541-amazon123/available_security_groups
200
{
  "total": 1,
  "subtotal": 1,
  "page": 1,
  "per_page": 20,
  "search": null,
  "sort": {
    "by": null,
    "order": null
  },
  "results": [
    {
      "name": "test_ec2_object",
      "group_id": "123"
    }
  ]
}

Params

Param name Description
location_id
optional

Set the current location context for the request

Validations:

  • Must be a Integer

organization_id
optional

Set the current organization context for the request

Validations:

  • Must be a Integer

id
required

Validations:

  • Must be an identifier, string from 1 to 128 characters containing only alphanumeric characters, space, underscore(_), hypen(-) with no leading or trailing space.


PUT /api/compute_resources/:id/associate
Associate VMs to Hosts

Examples

PUT /api/compute_resources/980190969-compute_resource301/associate
{
  "compute_resource": {}
}
200
{
  "total": 10,
  "subtotal": 10,
  "page": 1,
  "per_page": 20,
  "search": null,
  "sort": {
    "by": null,
    "order": null
  },
  "results": [
    {
      "ip": null,
      "ip6": null,
      "environment_id": null,
      "environment_name": null,
      "last_report": null,
      "mac": null,
      "realm_id": null,
      "realm_name": null,
      "sp_mac": null,
      "sp_ip": null,
      "sp_name": null,
      "domain_id": null,
      "domain_name": null,
      "architecture_id": null,
      "architecture_name": null,
      "operatingsystem_id": null,
      "operatingsystem_name": null,
      "subnet_id": null,
      "subnet_name": null,
      "subnet6_id": null,
      "subnet6_name": null,
      "sp_subnet_id": null,
      "ptable_id": null,
      "ptable_name": null,
      "medium_id": null,
      "medium_name": null,
      "pxe_loader": null,
      "build": false,
      "comment": null,
      "disk": null,
      "installed_at": null,
      "model_id": null,
      "hostgroup_id": null,
      "owner_id": 135138680,
      "owner_name": "Admin User",
      "owner_type": "User",
      "enabled": true,
      "managed": false,
      "use_image": null,
      "image_file": "",
      "uuid": "945f0f44-f53a-442d-b83d-5c98f9433daa",
      "compute_resource_id": 980190969,
      "compute_resource_name": "compute_resource301",
      "compute_profile_id": null,
      "compute_profile_name": null,
      "capabilities": [
        "image",
        "key_pair"
      ],
      "provision_method": "image",
      "certname": "host1368",
      "image_id": null,
      "image_name": null,
      "created_at": "2019-11-07 08:49:11 UTC",
      "updated_at": "2019-11-07 08:49:11 UTC",
      "last_compile": null,
      "global_status": 0,
      "global_status_label": "OK",
      "uptime_seconds": null,
      "organization_id": 447626438,
      "organization_name": "Organization 1",
      "location_id": 255093256,
      "location_name": "Location 1",
      "puppet_status": 0,
      "model_name": null,
      "name": "host1368",
      "id": 27,
      "puppet_proxy_id": null,
      "puppet_proxy_name": null,
      "puppet_ca_proxy_id": null,
      "puppet_ca_proxy_name": null,
      "puppet_proxy": null,
      "puppet_ca_proxy": null,
      "hostgroup_name": null,
      "hostgroup_title": null
    }
  ]
}

Params

Param name Description
location_id
optional

Set the current location context for the request

Validations:

  • Must be a Integer

organization_id
optional

Set the current organization context for the request

Validations:

  • Must be a Integer

id
required

Validations:

  • Must be an identifier, string from 1 to 128 characters containing only alphanumeric characters, space, underscore(_), hypen(-) with no leading or trailing space.


PUT /api/compute_resources/:id/refresh_cache
Refresh Compute Resource Cache

Examples

PUT /api/compute_resources/305613588-Vmware/refresh_cache
{
  "compute_resource": {}
}
200
{
  "message": "Successfully refreshed the cache."
}

Params

Param name Description
location_id
optional

Set the current location context for the request

Validations:

  • Must be a Integer

organization_id
optional

Set the current organization context for the request

Validations:

  • Must be a Integer

id
required

Validations:

  • Must be an identifier, string from 1 to 128 characters containing only alphanumeric characters, space, underscore(_), hypen(-) with no leading or trailing space.


GET /api/compute_resources/:id/available_virtual_machines
List available virtual machines for a compute resource

Params

Param name Description
location_id
optional

Set the current location context for the request

Validations:

  • Must be a Integer

organization_id
optional

Set the current organization context for the request

Validations:

  • Must be a Integer

id
required

Validations:

  • Must be an identifier, string from 1 to 128 characters containing only alphanumeric characters, space, underscore(_), hypen(-) with no leading or trailing space.


GET /api/compute_resources/:id/available_virtual_machines/:vm_id
Show a virtual machine

Params

Param name Description
location_id
optional

Set the current location context for the request

Validations:

  • Must be a Integer

organization_id
optional

Set the current organization context for the request

Validations:

  • Must be a Integer

id
required

Validations:

  • Must be an identifier, string from 1 to 128 characters containing only alphanumeric characters, space, underscore(_), hypen(-) with no leading or trailing space.

vm_id
required

Validations:

  • Must be an identifier, string from 1 to 128 characters containing only alphanumeric characters, space, underscore(_), hypen(-) with no leading or trailing space.


PUT /api/compute_resources/:id/available_virtual_machines/:vm_id/power
Power a Virtual Machine

Params

Param name Description
location_id
optional

Set the current location context for the request

Validations:

  • Must be a Integer

organization_id
optional

Set the current organization context for the request

Validations:

  • Must be a Integer

id
required

Validations:

  • Must be an identifier, string from 1 to 128 characters containing only alphanumeric characters, space, underscore(_), hypen(-) with no leading or trailing space.

vm_id
required

Validations:

  • Must be an identifier, string from 1 to 128 characters containing only alphanumeric characters, space, underscore(_), hypen(-) with no leading or trailing space.


DELETE /api/compute_resources/:id/available_virtual_machines/:vm_id
Delete a Virtual Machine

Params

Param name Description
location_id
optional

Set the current location context for the request

Validations:

  • Must be a Integer

organization_id
optional

Set the current organization context for the request

Validations:

  • Must be a Integer

id
required

Validations:

  • Must be an identifier, string from 1 to 128 characters containing only alphanumeric characters, space, underscore(_), hypen(-) with no leading or trailing space.

vm_id
required

Validations:

  • Must be an identifier, string from 1 to 128 characters containing only alphanumeric characters, space, underscore(_), hypen(-) with no leading or trailing space.