GET /api/compute_resources
List all compute resources

Examples

GET /api/compute_resources
200
{
  "total": 1,
  "subtotal": 1,
  "page": 1,
  "per_page": 20,
  "search": null,
  "sort": {
    "by": null,
    "order": null
  },
  "results": [
    {
      "description": "mycompute",
      "url": "test:///default",
      "created_at": "2018-11-15 19:01:27 UTC",
      "updated_at": "2018-11-15 19:01:27 UTC",
      "id": 367690737,
      "name": "mycompute",
      "provider": "Libvirt",
      "provider_friendly_name": "Libvirt",
      "display_type": "vnc",
      "set_console_password": true
    }
  ]
}

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

paginate results

Validations:

  • Must be a String

per_page
optional

number of entries per request

Validations:

  • Must be a String

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

Examples

GET /api/compute_resources/980190962-bigcompute
404
{
  "error": {
    "message": "Resource compute_resource not found by id '980190962-bigcompute'"
  }
}

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

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

Examples

POST /api/compute_resources
{
  "compute_resource": {
    "name": "Ovirt-create-test",
    "url": "https://myovirt/api",
    "provider": "ovirt",
    "datacenter": "dc7725de-f008-4ba7-aa54-a5b25e8f6644",
    "user": "user@example.com",
    "password": "secret"
  }
}
201
{
  "description": null,
  "url": "https://myovirt/api",
  "created_at": "2018-11-15 19:01:29 UTC",
  "updated_at": "2018-11-15 19:01:29 UTC",
  "id": 980190963,
  "name": "Ovirt-create-test",
  "provider": "Ovirt",
  "provider_friendly_name": "oVirt",
  "user": "user@example.com",
  "datacenter": "dc7725de-f008-4ba7-aa54-a5b25e8f6644",
  "use_v4": false,
  "ovirt_quota": null,
  "images": [],
  "compute_attributes": [],
  "locations": [],
  "organizations": []
}

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

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[uuid]
optional , nil allowed

Deprecated, please use datacenter

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

Validations:

  • Must be a String

compute_resource[region]
optional , nil allowed

for EC2 only, use ‘us-gov-west-1’ for GovCloud region

Validations:

  • Must be a String

compute_resource[tenant]
optional , nil allowed

for OpenStack only

Validations:

  • Must be a String

compute_resource[domain]
optional , nil allowed

for OpenStack 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 only

Validations:

  • Must be one of: VNC, SPICE.

compute_resource[caching_enabled]
optional , nil allowed

enable caching, for VMware only

Validations:

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

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

Examples

PUT /api/compute_resources/367690737
{
  "compute_resource": {
    "display_type": "spice"
  }
}
200
{
  "description": "mycompute",
  "url": "test:///default",
  "created_at": "2018-11-15 19:01:27 UTC",
  "updated_at": "2018-11-15 19:01:29 UTC",
  "id": 367690737,
  "name": "mycompute",
  "provider": "Libvirt",
  "provider_friendly_name": "Libvirt",
  "display_type": "spice",
  "set_console_password": true,
  "images": [],
  "compute_attributes": [],
  "locations": [
    {
      "id": 255093256,
      "name": "Location 1",
      "title": "Location 1",
      "description": null
    }
  ],
  "organizations": [
    {
      "id": 447626438,
      "name": "Organization 1",
      "title": "Organization 1",
      "description": null
    }
  ]
}

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

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[uuid]
optional , nil allowed

Deprecated, please use datacenter

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

Validations:

  • Must be a String

compute_resource[region]
optional , nil allowed

for EC2 only, use ‘us-gov-west-1’ for GovCloud region

Validations:

  • Must be a String

compute_resource[tenant]
optional , nil allowed

for OpenStack only

Validations:

  • Must be a String

compute_resource[domain]
optional , nil allowed

for OpenStack 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 only

Validations:

  • Must be one of: VNC, SPICE.

compute_resource[caching_enabled]
optional , nil allowed

enable caching, for VMware only

Validations:

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

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

Examples

DELETE /api/compute_resources/932571420
{
  "compute_resource": {}
}
404
{
  "error": {
    "message": "Resource compute_resource not found by id '932571420'"
  }
}

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

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

Scope by locations

Validations:

  • Must be a Integer

organization_id
optional

Scope by organizations

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": 9,
  "subtotal": 9,
  "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

Scope by locations

Validations:

  • Must be a Integer

organization_id
optional

Scope by organizations

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": 9,
  "subtotal": 9,
  "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

Scope by locations

Validations:

  • Must be a Integer

organization_id
optional

Scope by organizations

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": 9,
  "subtotal": 9,
  "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

Scope by locations

Validations:

  • Must be a Integer

organization_id
optional

Scope by organizations

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": 9,
  "subtotal": 9,
  "page": 1,
  "per_page": 20,
  "search": null,
  "sort": {
    "by": null,
    "order": null
  },
  "results": [
    {
      "name": "test_ec2_object"
    }
  ]
}

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

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": 9,
  "subtotal": 9,
  "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

Scope by locations

Validations:

  • Must be a Integer

organization_id
optional

Scope by organizations

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": 9,
  "subtotal": 9,
  "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

Scope by locations

Validations:

  • Must be a Integer

organization_id
optional

Scope by organizations

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/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

Examples

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

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

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
optional

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

Examples

GET /api/compute_resources/305613588-Vmware/available_storage_pods/test_vmware_pod
200
{
  "total": 9,
  "subtotal": 9,
  "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

Scope by locations

Validations:

  • Must be a Integer

organization_id
optional

Scope by organizations

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
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": 9,
  "subtotal": 9,
  "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

Scope by locations

Validations:

  • Must be a Integer

organization_id
optional

Scope by organizations

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/980190963-compute_resource2/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": "d863be54-e4a9-43f4-a34c-516e8ae69fe5",
      "compute_resource_id": 980190963,
      "compute_resource_name": "compute_resource2",
      "compute_profile_id": null,
      "compute_profile_name": null,
      "capabilities": [
        "image",
        "key_pair"
      ],
      "provision_method": "image",
      "certname": "host2",
      "image_id": null,
      "image_name": null,
      "created_at": "2018-11-15 19:01:30 UTC",
      "updated_at": "2018-11-15 19:01:30 UTC",
      "last_compile": null,
      "global_status": 0,
      "global_status_label": "OK",
      "organization_id": 447626438,
      "organization_name": "Organization 1",
      "location_id": 255093256,
      "location_name": "Location 1",
      "puppet_status": 0,
      "model_name": null,
      "name": "host2",
      "id": 2,
      "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

Scope by locations

Validations:

  • Must be a Integer

organization_id
optional

Scope by organizations

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

Scope by locations

Validations:

  • Must be a Integer

organization_id
optional

Scope by organizations

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.