Compute API v2 (SUPPORTED)

Launches virtual machines from images and images stored on persistent volumes. API v1.1 is identical to API v2.

Effective in the OpenStack Kilo release, XML support in requests and responses was removed for the Compute API v2.

The Compute API returns the 403 forbidden error code if you exceed your allotted quota for the operation.

API versions

Lists information for all API versions.

GET
/
List API versions

Lists information about all Compute API versions.

 
Normal response codes
200, 300
Error response codes
computeFault (400, 500, …), serviceUnavailable (503), badRequest (400), unauthorized (401), forbidden (403), badMethod (405), overLimit (413), itemNotFound (404)
Response parameters
Parameter Style Type Description
X-Compute-Request-ID (Optional) header xsd:string

Returns a unique identifier to provide tracking for the request. The request ID that is associated with the request appears in the log lines for that request. By default, the middleware configuration ensures that the request ID appears in the log files.

{
    "versions": [
        {
            "id": "v2.0",
            "links": [
                {
                    "href": "http://openstack.example.com/v2/",
                    "rel": "self"
                }
            ],
            "status": "SUPPORTED",
            "version": "",
            "min_version": "",
            "updated": "2011-01-21T11:33:21Z"
        },
        {
            "id": "v2.1",
            "links": [
                {
                    "href": "http://openstack.example.com/v2.1/",
                    "rel": "self"
                }
            ],
            "status": "CURRENT",
            "version": "2.3",
            "min_version": "2.1",
            "updated": "2013-07-23T11:33:21Z"
        }
    ]
}

This operation does not accept a request body.

Limits

Gets rate and absolute limits.

An absolute limit value of -1 indicates that the absolute limit for the item is infinite.

GET
/v2/​{tenant_id}​/limits
List limits

Lists the current absolute and rate limits for a specified project.

 

An absolute limit value of -1 indicates that the absolute limit for the item is infinite.

Normal response codes
200, 203
Error response codes
computeFault (400, 500, …), serviceUnavailable (503), badRequest (400), unauthorized (401), forbidden (403), badMethod (405), overLimit (413)
Request parameters
Parameter Style Type Description
tenant_id URI csapi:UUID

The tenant ID in a multi-tenancy cloud.

Response parameters
Parameter Style Type Description
X-Compute-Request-ID (Optional) header xsd:string

Returns a unique identifier to provide tracking for the request. The request ID that is associated with the request appears in the log lines for that request. By default, the middleware configuration ensures that the request ID appears in the log files.

maxImageMeta plain xsd:int

The maximum number of key-value pairs per image for the project.

maxPersonality plain xsd:int

The maximum number of file path and content pairs that can be supplied on server build and rebuild for the project.

maxPersonalitySize plain xsd:int

The maximum size, in bytes, for each personality file that is guaranteed to apply to all images in the project. Providers can set additional per-image personality limits.

maxSecurityGroupRules plain xsd:int

The maximum number of security group rules per security group for the project.

maxSecurityGroups plain xsd:int

The maximum number of security groups per server for the project.

maxServerMeta plain xsd:int

The maximum number of metadata key-value pairs that can be supplied per server for the project.

maxTotalCores plain xsd:int

The maximum number of cores for the project.

maxTotalFloatingIps plain xsd:int

The maximum number of floating IP addresses for the project.

These IPs must be allocated from the central pool before you can use them. To allocate a floating IP to a project, see Associate floating IP addresses.

maxTotalInstances plain xsd:int

The maximum number of servers at any one time for the project.

maxTotalKeypairs plain xsd:int

The maximum number of key pairs per server for the project.

maxTotalRAMSize plain xsd:int

The maximum total amount of RAM, in MB, for all servers at any one time for the project.

maxServerGroups plain xsd:int

The maximum number of server groups per server for the project.

maxServerGroupMembers plain xsd:int

The maximum number of server group members per server group for the project.

rate plain xsd:dict

Current rate limits.

{
    "limits": {
        "absolute": {
            "maxImageMeta": 128,
            "maxPersonality": 5,
            "maxPersonalitySize": 10240,
            "maxSecurityGroupRules": 20,
            "maxSecurityGroups": 10,
            "maxServerMeta": 128,
            "maxTotalCores": 20,
            "maxTotalFloatingIps": 10,
            "maxTotalInstances": 10,
            "maxTotalKeypairs": 100,
            "maxTotalRAMSize": 51200,
            "maxServerGroups": 10,
            "maxServerGroupMembers": 10
        },
        "rate": [
            {
                "limit": [
                    {
                        "next-available": "2012-11-27T17:22:18Z",
                        "remaining": 120,
                        "unit": "MINUTE",
                        "value": 120,
                        "verb": "POST"
                    },
                    {
                        "next-available": "2012-11-27T17:22:18Z",
                        "remaining": 120,
                        "unit": "MINUTE",
                        "value": 120,
                        "verb": "PUT"
                    },
                    {
                        "next-available": "2012-11-27T17:22:18Z",
                        "remaining": 120,
                        "unit": "MINUTE",
                        "value": 120,
                        "verb": "DELETE"
                    }
                ],
                "regex": ".*",
                "uri": "*"
            },
            {
                "limit": [
                    {
                        "next-available": "2012-11-27T17:22:18Z",
                        "remaining": 120,
                        "unit": "MINUTE",
                        "value": 120,
                        "verb": "POST"
                    }
                ],
                "regex": "^/servers",
                "uri": "*/servers"
            },
            {
                "limit": [
                    {
                        "next-available": "2012-11-27T17:22:18Z",
                        "remaining": 120,
                        "unit": "MINUTE",
                        "value": 120,
                        "verb": "GET"
                    }
                ],
                "regex": ".*changes-since.*",
                "uri": "*changes-since*"
            },
            {
                "limit": [
                    {
                        "next-available": "2012-11-27T17:22:18Z",
                        "remaining": 12,
                        "unit": "MINUTE",
                        "value": 12,
                        "verb": "GET"
                    }
                ],
                "regex": "^/os-fping",
                "uri": "*/os-fping"
            }
        ]
    }
}
<?xml version='1.0' encoding='UTF-8'?>
<limits xmlns:atom="http://www.w3.org/2005/Atom" xmlns="http://docs.openstack.org/common/api/v1.0">
  <rates>
    <rate regex=".*" uri="*">
      <limit next-available="2012-11-27T17:22:18Z" unit="MINUTE" verb="POST" remaining="120" value="120"/>
      <limit next-available="2012-11-27T17:22:18Z" unit="MINUTE" verb="PUT" remaining="120" value="120"/>
      <limit next-available="2012-11-27T17:22:18Z" unit="MINUTE" verb="DELETE" remaining="120" value="120"/>
    </rate>
    <rate regex="^/servers" uri="*/servers">
      <limit next-available="2012-11-27T17:22:18Z" unit="MINUTE" verb="POST" remaining="120" value="120"/>
    </rate>
    <rate regex=".*changes-since.*" uri="*changes-since*">
      <limit next-available="2012-11-27T17:22:18Z" unit="MINUTE" verb="GET" remaining="120" value="120"/>
    </rate>
    <rate regex="^/os-fping" uri="*/os-fping">
      <limit next-available="2012-11-27T17:22:18Z" unit="MINUTE" verb="GET" remaining="12" value="12"/>
    </rate>
  </rates>
  <absolute>
    <limit name="maxServerMeta" value="128"/>
    <limit name="maxPersonality" value="5"/>
    <limit name="maxImageMeta" value="128"/>
    <limit name="maxPersonalitySize" value="10240"/>
    <limit name="maxSecurityGroupRules" value="20"/>
    <limit name="maxTotalKeypairs" value="100"/>
    <limit name="maxSecurityGroups" value="10"/>
    <limit name="maxTotalCores" value="20"/>
    <limit name="maxTotalFloatingIps" value="10"/>
    <limit name="maxTotalInstances" value="10"/>
    <limit name="maxTotalRAMSize" value="51200"/>
    <limit name="maxServerGroups" value="10"/>
    <limit name="maxServerGroupMembers" value="10"/>
  </absolute>
</limits>

This operation does not accept a request body.

Extensions

Lists available Compute API v2 extensions and shows details for a specified extension.

GET
/v2/​{tenant_id}​/extensions
List extensions

Lists available extensions.

 
Normal response codes
200, 203
Error response codes
computeFault (400, 500, …), serviceUnavailable (503), badRequest (400), unauthorized (401), forbidden (403), badMethod (405), overLimit (413)
Request parameters
Parameter Style Type Description
tenant_id URI csapi:UUID

The tenant ID in a multi-tenancy cloud.

Response parameters
Parameter Style Type Description
X-Compute-Request-ID (Optional) header xsd:string

Returns a unique identifier to provide tracking for the request. The request ID that is associated with the request appears in the log lines for that request. By default, the middleware configuration ensures that the request ID appears in the log files.

next (Optional) plain xsd:anyURI

Moves to the next metadata item.

previous (Optional) plain xsd:anyURI

Moves to the previous metadata item.

{
    "extensions": [
        {
            "alias": "NMN",
            "description": "Multiple network support.",
            "links": [],
            "name": "Multinic",
            "namespace": "http://docs.openstack.org/compute/ext/multinic/api/v1.1",
            "updated": "2011-06-09T00:00:00+00:00"
        },
        {
            "alias": "OS-DCF",
            "description": "Disk Management Extension.",
            "links": [],
            "name": "DiskConfig",
            "namespace": "http://docs.openstack.org/compute/ext/disk_config/api/v1.1",
            "updated": "2011-09-27T00:00:00+00:00"
        },
        {
            "alias": "OS-EXT-AZ",
            "description": "Extended Server Attributes support.",
            "links": [],
            "name": "ExtendedAvailabilityZone",
            "namespace": "http://docs.openstack.org/compute/ext/extended_availability_zone/api/v2",
            "updated": "2013-01-30T00:00:00+00:00"
        },
        {
            "alias": "OS-EXT-IMG-SIZE",
            "description": "Adds image size to image listings.",
            "links": [],
            "name": "ImageSize",
            "namespace": "http://docs.openstack.org/compute/ext/image_size/api/v1.1",
            "updated": "2013-02-19T00:00:00+00:00"
        },
        {
            "alias": "OS-EXT-IPS",
            "description": "Adds type parameter to the ip list.",
            "links": [],
            "name": "ExtendedIps",
            "namespace": "http://docs.openstack.org/compute/ext/extended_ips/api/v1.1",
            "updated": "2013-01-06T00:00:00+00:00"
        },
        {
            "alias": "OS-EXT-IPS-MAC",
            "description": "Adds mac address parameter to the ip list.",
            "links": [],
            "name": "ExtendedIpsMac",
            "namespace": "http://docs.openstack.org/compute/ext/extended_ips_mac/api/v1.1",
            "updated": "2013-03-07T00:00:00+00:00"
        },
        {
            "alias": "OS-EXT-SRV-ATTR",
            "description": "Extended Server Attributes support.",
            "links": [],
            "name": "ExtendedServerAttributes",
            "namespace": "http://docs.openstack.org/compute/ext/extended_status/api/v1.1",
            "updated": "2011-11-03T00:00:00+00:00"
        },
        {
            "alias": "OS-EXT-STS",
            "description": "Extended Status support.",
            "links": [],
            "name": "ExtendedStatus",
            "namespace": "http://docs.openstack.org/compute/ext/extended_status/api/v1.1",
            "updated": "2011-11-03T00:00:00+00:00"
        },
        {
            "alias": "OS-EXT-VIF-NET",
            "description": "Adds network id parameter to the virtual interface list.",
            "links": [],
            "name": "ExtendedVIFNet",
            "namespace": "http://docs.openstack.org/compute/ext/extended-virtual-interfaces-net/api/v1.1",
            "updated": "2013-03-07T00:00:00+00:00"
        },
        {
            "alias": "OS-FLV-DISABLED",
            "description": "Support to show the disabled status of a flavor.",
            "links": [],
            "name": "FlavorDisabled",
            "namespace": "http://docs.openstack.org/compute/ext/flavor_disabled/api/v1.1",
            "updated": "2012-08-29T00:00:00+00:00"
        },
        {
            "alias": "OS-FLV-EXT-DATA",
            "description": "Provide additional data for flavors.",
            "links": [],
            "name": "FlavorExtraData",
            "namespace": "http://docs.openstack.org/compute/ext/flavor_extra_data/api/v1.1",
            "updated": "2011-09-14T00:00:00+00:00"
        },
        {
            "alias": "OS-SCH-HNT",
            "description": "Pass arbitrary key/value pairs to the scheduler.",
            "links": [],
            "name": "SchedulerHints",
            "namespace": "http://docs.openstack.org/compute/ext/scheduler-hints/api/v2",
            "updated": "2011-07-19T00:00:00+00:00"
        },
        {
            "alias": "OS-SRV-USG",
            "description": "Adds launched_at and terminated_at on Servers.",
            "links": [],
            "name": "ServerUsage",
            "namespace": "http://docs.openstack.org/compute/ext/server_usage/api/v1.1",
            "updated": "2013-04-29T00:00:00+00:00"
        },
        {
            "alias": "os-admin-actions",
            "description": "Enable admin-only server actions\n\n    Actions include: pause, unpause, suspend, resume, migrate,\n    resetNetwork, injectNetworkInfo, lock, unlock, createBackup\n    ",
            "links": [],
            "name": "AdminActions",
            "namespace": "http://docs.openstack.org/compute/ext/admin-actions/api/v1.1",
            "updated": "2011-09-20T00:00:00+00:00"
        },
        {
            "alias": "os-agents",
            "description": "Agents support.",
            "links": [],
            "name": "Agents",
            "namespace": "http://docs.openstack.org/compute/ext/agents/api/v2",
            "updated": "2012-10-28T00:00:00-00:00"
        },
        {
            "alias": "os-aggregates",
            "description": "Admin-only aggregate administration.",
            "links": [],
            "name": "Aggregates",
            "namespace": "http://docs.openstack.org/compute/ext/aggregates/api/v1.1",
            "updated": "2012-01-12T00:00:00+00:00"
        },
        {
            "alias": "os-assisted-volume-snapshots",
            "description": "Assisted volume snapshots.",
            "links": [],
            "name": "AssistedVolumeSnapshots",
            "namespace": "http://docs.openstack.org/compute/ext/assisted-volume-snapshots/api/v2",
            "updated": "2013-08-29T00:00:00-00:00"
        },
        {
            "alias": "os-attach-interfaces",
            "description": "Attach interface support.",
            "links": [],
            "name": "AttachInterfaces",
            "namespace": "http://docs.openstack.org/compute/ext/interfaces/api/v1.1",
            "updated": "2012-07-22T00:00:00+00:00"
        },
        {
            "alias": "os-availability-zone",
            "description": "1. Add availability_zone to the Create Server v1.1 API.\n       2. Add availability zones describing.\n    ",
            "links": [],
            "name": "AvailabilityZone",
            "namespace": "http://docs.openstack.org/compute/ext/availabilityzone/api/v1.1",
            "updated": "2012-12-21T00:00:00+00:00"
        },
        {
            "alias": "os-baremetal-ext-status",
            "description": "Add extended status in Baremetal Nodes v2 API.",
            "links": [],
            "name": "BareMetalExtStatus",
            "namespace": "http://docs.openstack.org/compute/ext/baremetal_ext_status/api/v2",
            "updated": "2013-08-27T00:00:00+00:00"
        },
        {
            "alias": "os-baremetal-nodes",
            "description": "Admin-only bare-metal node administration.",
            "links": [],
            "name": "BareMetalNodes",
            "namespace": "http://docs.openstack.org/compute/ext/baremetal_nodes/api/v2",
            "updated": "2013-01-04T00:00:00+00:00"
        },
        {
            "alias": "os-block-device-mapping-v2-boot",
            "description": "Allow boot with the new BDM data format.",
            "links": [],
            "name": "BlockDeviceMappingV2Boot",
            "namespace": "http://docs.openstack.org/compute/ext/block_device_mapping_v2_boot/api/v2",
            "updated": "2013-07-08T00:00:00+00:00"
        },
        {
            "alias": "os-cell-capacities",
            "description": "Adding functionality to get cell capacities.",
            "links": [],
            "name": "CellCapacities",
            "namespace": "http://docs.openstack.org/compute/ext/cell_capacities/api/v1.1",
            "updated": "2013-05-27T00:00:00+00:00"
        },
        {
            "alias": "os-cells",
            "description": "Enables cells-related functionality such as adding neighbor cells,\n    listing neighbor cells, and getting the capabilities of the local cell.\n    ",
            "links": [],
            "name": "Cells",
            "namespace": "http://docs.openstack.org/compute/ext/cells/api/v1.1",
            "updated": "2013-05-14T00:00:00+00:00"
        },
        {
            "alias": "os-certificates",
            "description": "Certificates support.",
            "links": [],
            "name": "Certificates",
            "namespace": "http://docs.openstack.org/compute/ext/certificates/api/v1.1",
            "updated": "2012-01-19T00:00:00+00:00"
        },
        {
            "alias": "os-cloudpipe",
            "description": "Adds actions to create cloudpipe instances.\n\n    When running with the Vlan network mode, you need a mechanism to route\n    from the public Internet to your vlans.  This mechanism is known as a\n    cloudpipe.\n\n    At the time of creating this class, only OpenVPN is supported.  Support for\n    a SSH Bastion host is forthcoming.\n    ",
            "links": [],
            "name": "Cloudpipe",
            "namespace": "http://docs.openstack.org/compute/ext/cloudpipe/api/v1.1",
            "updated": "2011-12-16T00:00:00+00:00"
        },
        {
            "alias": "os-cloudpipe-update",
            "description": "Adds the ability to set the vpn ip/port for cloudpipe instances.",
            "links": [],
            "name": "CloudpipeUpdate",
            "namespace": "http://docs.openstack.org/compute/ext/cloudpipe-update/api/v2",
            "updated": "2012-11-14T00:00:00+00:00"
        },
        {
            "alias": "os-config-drive",
            "description": "Config Drive Extension.",
            "links": [],
            "name": "ConfigDrive",
            "namespace": "http://docs.openstack.org/compute/ext/config_drive/api/v1.1",
            "updated": "2012-07-16T00:00:00+00:00"
        },
        {
            "alias": "os-console-output",
            "description": "Console log output support, with tailing ability.",
            "links": [],
            "name": "ConsoleOutput",
            "namespace": "http://docs.openstack.org/compute/ext/os-console-output/api/v2",
            "updated": "2011-12-08T00:00:00+00:00"
        },
        {
            "alias": "os-consoles",
            "description": "Interactive Console support.",
            "links": [],
            "name": "Consoles",
            "namespace": "http://docs.openstack.org/compute/ext/os-consoles/api/v2",
            "updated": "2011-12-23T00:00:00+00:00"
        },
        {
            "alias": "os-create-server-ext",
            "description": "Extended support to the Create Server v1.1 API.",
            "links": [],
            "name": "Createserverext",
            "namespace": "http://docs.openstack.org/compute/ext/createserverext/api/v1.1",
            "updated": "2011-07-19T00:00:00+00:00"
        },
        {
            "alias": "os-deferred-delete",
            "description": "Instance deferred delete.",
            "links": [],
            "name": "DeferredDelete",
            "namespace": "http://docs.openstack.org/compute/ext/deferred-delete/api/v1.1",
            "updated": "2011-09-01T00:00:00+00:00"
        },
        {
            "alias": "os-evacuate",
            "description": "Enables server evacuation.",
            "links": [],
            "name": "Evacuate",
            "namespace": "http://docs.openstack.org/compute/ext/evacuate/api/v2",
            "updated": "2013-01-06T00:00:00+00:00"
        },
        {
            "alias": "os-extended-floating-ips",
            "description": "Adds optional fixed_address to the add floating IP command.",
            "links": [],
            "name": "ExtendedFloatingIps",
            "namespace": "http://docs.openstack.org/compute/ext/extended_floating_ips/api/v2",
            "updated": "2013-04-19T00:00:00+00:00"
        },
        {
            "alias": "os-extended-quotas",
            "description": "Adds ability for admins to delete quota\n    and optionally force the update Quota command.\n    ",
            "links": [],
            "name": "ExtendedQuotas",
            "namespace": "http://docs.openstack.org/compute/ext/extended_quotas/api/v1.1",
            "updated": "2013-06-09T00:00:00+00:00"
        },
        {
            "alias": "os-extended-hypervisors",
            "description": "Extended hypervisors support.",
            "links": [],
            "name": "ExtendedHypervisors",
            "namespace": "http://docs.openstack.org/compute/ext/extended_hypervisors/api/v1.1",
            "updated": "2013-10-21T00:00:00-00:00"
        },
        {
            "alias": "os-extended-services",
            "description": "Extended services support.",
            "links": [],
            "name": "ExtendedServices",
            "namespace": "http://docs.openstack.org/compute/ext/extended_services/api/v2",
            "updated": "2013-05-17T00:00:00-00:00"
        },
        {
            "alias": "os-extended-volumes",
            "description": "Extended Volumes support.",
            "links": [],
            "name": "ExtendedVolumes",
            "namespace": "http://docs.openstack.org/compute/ext/extended_volumes/api/v1.1",
            "updated": "2013-06-07T00:00:00+00:00"
        },
        {
            "alias": "os-fixed-ips",
            "description": "Fixed IPs support.",
            "links": [],
            "name": "FixedIPs",
            "namespace": "http://docs.openstack.org/compute/ext/fixed_ips/api/v2",
            "updated": "2012-10-18T13:25:27-06:00"
        },
        {
            "alias": "os-flavor-access",
            "description": "Flavor access support.",
            "links": [],
            "name": "FlavorAccess",
            "namespace": "http://docs.openstack.org/compute/ext/flavor_access/api/v2",
            "updated": "2012-08-01T00:00:00+00:00"
        },
        {
            "alias": "os-flavor-extra-specs",
            "description": "Instance type (flavor) extra specs.",
            "links": [],
            "name": "FlavorExtraSpecs",
            "namespace": "http://docs.openstack.org/compute/ext/flavor_extra_specs/api/v1.1",
            "updated": "2011-06-23T00:00:00+00:00"
        },
        {
            "alias": "os-flavor-manage",
            "description": "\n    Flavor create/delete API support\n    ",
            "links": [],
            "name": "FlavorManage",
            "namespace": "http://docs.openstack.org/compute/ext/flavor_manage/api/v1.1",
            "updated": "2012-01-19T00:00:00+00:00"
        },
        {
            "alias": "os-flavor-rxtx",
            "description": "Support to show the rxtx status of a flavor.",
            "links": [],
            "name": "FlavorRxtx",
            "namespace": "http://docs.openstack.org/compute/ext/flavor_rxtx/api/v1.1",
            "updated": "2012-08-29T00:00:00+00:00"
        },
        {
            "alias": "os-flavor-swap",
            "description": "Support to show the swap status of a flavor.",
            "links": [],
            "name": "FlavorSwap",
            "namespace": "http://docs.openstack.org/compute/ext/flavor_swap/api/v1.1",
            "updated": "2012-08-29T00:00:00+00:00"
        },
        {
            "alias": "os-floating-ip-dns",
            "description": "Floating IP DNS support.",
            "links": [],
            "name": "FloatingIpDns",
            "namespace": "http://docs.openstack.org/ext/floating_ip_dns/api/v1.1",
            "updated": "2011-12-23T00:00:00+00:00"
        },
        {
            "alias": "os-floating-ip-pools",
            "description": "Floating IPs support.",
            "links": [],
            "name": "FloatingIpPools",
            "namespace": "http://docs.openstack.org/compute/ext/floating_ip_pools/api/v1.1",
            "updated": "2012-01-04T00:00:00+00:00"
        },
        {
            "alias": "os-floating-ips",
            "description": "Floating IPs support.",
            "links": [],
            "name": "FloatingIps",
            "namespace": "http://docs.openstack.org/compute/ext/floating_ips/api/v1.1",
            "updated": "2011-06-16T00:00:00+00:00"
        },
        {
            "alias": "os-floating-ips-bulk",
            "description": "Bulk handling of Floating IPs.",
            "links": [],
            "name": "FloatingIpsBulk",
            "namespace": "http://docs.openstack.org/compute/ext/floating_ips_bulk/api/v2",
            "updated": "2012-10-29T13:25:27-06:00"
        },
        {
            "alias": "os-fping",
            "description": "Fping Management Extension.",
            "links": [],
            "name": "Fping",
            "namespace": "http://docs.openstack.org/compute/ext/fping/api/v1.1",
            "updated": "2012-07-06T00:00:00+00:00"
        },
        {
            "alias": "os-hide-server-addresses",
            "description": "Support hiding server addresses in certain states.",
            "links": [],
            "name": "HideServerAddresses",
            "namespace": "http://docs.openstack.org/compute/ext/hide_server_addresses/api/v1.1",
            "updated": "2012-12-11T00:00:00+00:00"
        },
        {
            "alias": "os-hosts",
            "description": "Admin-only host administration.",
            "links": [],
            "name": "Hosts",
            "namespace": "http://docs.openstack.org/compute/ext/hosts/api/v1.1",
            "updated": "2011-06-29T00:00:00+00:00"
        },
        {
            "alias": "os-hypervisors",
            "description": "Admin-only hypervisor administration.",
            "links": [],
            "name": "Hypervisors",
            "namespace": "http://docs.openstack.org/compute/ext/hypervisors/api/v1.1",
            "updated": "2012-06-21T00:00:00+00:00"
        },
        {
            "alias": "os-instance-actions",
            "description": "View a log of actions and events taken on an instance.",
            "links": [],
            "name": "InstanceActions",
            "namespace": "http://docs.openstack.org/compute/ext/instance-actions/api/v1.1",
            "updated": "2013-02-08T00:00:00+00:00"
        },
        {
            "alias": "os-server-external-events",
            "description": "Server External Event Triggers.",
            "links": [],
            "name": "ServerExternalEvents",
            "namespace": "http://docs.openstack.org/compute/ext/server-external-events/api/v2",
            "updated": "2014-02-18T00:00:00-00:00"
        },
        {
            "alias": "os-server-groups",
            "description": "Server group support.",
            "links": [],
            "name": "ServerGroups",
            "namespace": "http://docs.openstack.org/compute/ext/servergroups/api/v2",
            "updated": "2013-06-01T00:00:00+00:00"
        },
        {
            "alias": "os-server-group-quotas",
            "description": "Adds quota support to server groups.",
            "links": [],
            "name": "ServerGroupQuotas",
            "namespace": "http://docs.openstack.org/compute/ext/server-group-quotas/api/v2",
            "updated": "2014-07-25T00:00:00Z"
        },
        {
            "alias": "os-instance_usage_audit_log",
            "description": "Admin-only Task Log Monitoring.",
            "links": [],
            "name": "OSInstanceUsageAuditLog",
            "namespace": "http://docs.openstack.org/ext/services/api/v1.1",
            "updated": "2012-07-06T01:00:00+00:00"
        },
        {
            "alias": "os-keypairs",
            "description": "Keypair Support.",
            "links": [],
            "name": "Keypairs",
            "namespace": "http://docs.openstack.org/compute/ext/keypairs/api/v1.1",
            "updated": "2011-08-08T00:00:00+00:00"
        },
        {
            "alias": "os-migrations",
            "description": "Provide data on migrations.",
            "links": [],
            "name": "Migrations",
            "namespace": "http://docs.openstack.org/compute/ext/migrations/api/v2.0",
            "updated": "2013-05-30T00:00:00+00:00"
        },
        {
            "alias": "os-multiple-create",
            "description": "Allow multiple create in the Create Server v1.1 API.",
            "links": [],
            "name": "MultipleCreate",
            "namespace": "http://docs.openstack.org/compute/ext/multiplecreate/api/v1.1",
            "updated": "2012-08-07T00:00:00+00:00"
        },
        {
            "alias": "os-networks",
            "description": "Admin-only Network Management Extension.",
            "links": [],
            "name": "Networks",
            "namespace": "http://docs.openstack.org/compute/ext/os-networks/api/v1.1",
            "updated": "2011-12-23T00:00:00+00:00"
        },
        {
            "alias": "os-networks-associate",
            "description": "Network association support.",
            "links": [],
            "name": "NetworkAssociationSupport",
            "namespace": "http://docs.openstack.org/compute/ext/networks_associate/api/v2",
            "updated": "2012-11-19T00:00:00+00:00"
        },
        {
            "alias": "os-preserve-ephemeral-rebuild",
            "description": "Allow preservation of the ephemeral partition on rebuild.",
            "links": [],
            "name": "PreserveEphemeralOnRebuild",
            "namespace": "http://docs.openstack.org/compute/ext/preserve_ephemeral_rebuild/api/v2",
            "updated": "2013-12-17T00:00:00+00:00"
        },
        {
            "alias": "os-quota-sets",
            "description": "Quotas management support.",
            "links": [],
            "name": "Quotas",
            "namespace": "http://docs.openstack.org/compute/ext/quotas-sets/api/v1.1",
            "updated": "2011-08-08T00:00:00+00:00"
        },
        {
            "alias": "os-rescue",
            "description": "Instance rescue mode.",
            "links": [],
            "name": "Rescue",
            "namespace": "http://docs.openstack.org/compute/ext/rescue/api/v1.1",
            "updated": "2011-08-18T00:00:00+00:00"
        },
        {
            "alias": "os-extended-rescue-with-image",
            "description": "Rescue instance with the image specified.",
            "links": [],
            "name": "ExtendedRescueWithImage",
            "namespace": "http://docs.openstack.org/compute/ext/extended_rescue_with_image/api/v2",
            "updated": "2014-03-05T00:00:00+00:00"
        },
        {
            "alias": "os-security-group-default-rules",
            "description": "Default rules for security group support.",
            "links": [],
            "name": "SecurityGroupDefaultRules",
            "namespace": "http://docs.openstack.org/compute/ext/securitygroupdefaultrules/api/v1.1",
            "updated": "2013-02-05T00:00:00+00:00"
        },
        {
            "alias": "os-security-groups",
            "description": "Security group support.",
            "links": [],
            "name": "SecurityGroups",
            "namespace": "http://docs.openstack.org/compute/ext/securitygroups/api/v1.1",
            "updated": "2013-05-28T00:00:00+00:00"
        },
        {
            "alias": "os-server-diagnostics",
            "description": "Allow Admins to view server diagnostics through server action.",
            "links": [],
            "name": "ServerDiagnostics",
            "namespace": "http://docs.openstack.org/compute/ext/server-diagnostics/api/v1.1",
            "updated": "2011-12-21T00:00:00+00:00"
        },
        {
            "alias": "os-server-password",
            "description": "Server password support.",
            "links": [],
            "name": "ServerPassword",
            "namespace": "http://docs.openstack.org/compute/ext/server-password/api/v2",
            "updated": "2012-11-29T00:00:00+00:00"
        },
        {
            "alias": "os-server-start-stop",
            "description": "Start/Stop instance compute API support.",
            "links": [],
            "name": "ServerStartStop",
            "namespace": "http://docs.openstack.org/compute/ext/servers/api/v1.1",
            "updated": "2012-01-23T00:00:00+00:00"
        },
        {
            "alias": "os-services",
            "description": "Services support.",
            "links": [],
            "name": "Services",
            "namespace": "http://docs.openstack.org/compute/ext/services/api/v2",
            "updated": "2012-10-28T00:00:00-00:00"
        },
        {
            "alias": "os-shelve",
            "description": "Instance shelve mode.",
            "links": [],
            "name": "Shelve",
            "namespace": "http://docs.openstack.org/compute/ext/shelve/api/v1.1",
            "updated": "2013-04-06T00:00:00+00:00"
        },
        {
            "alias": "os-simple-tenant-usage",
            "description": "Simple tenant usage extension.",
            "links": [],
            "name": "SimpleTenantUsage",
            "namespace": "http://docs.openstack.org/compute/ext/os-simple-tenant-usage/api/v1.1",
            "updated": "2011-08-19T00:00:00+00:00"
        },
        {
            "alias": "os-tenant-networks",
            "description": "Tenant-based Network Management Extension.",
            "links": [],
            "name": "OSTenantNetworks",
            "namespace": "http://docs.openstack.org/compute/ext/os-tenant-networks/api/v2",
            "updated": "2012-03-07T09:46:43-05:00"
        },
        {
            "alias": "os-used-limits",
            "description": "Provide data on limited resources that are being used.",
            "links": [],
            "name": "UsedLimits",
            "namespace": "http://docs.openstack.org/compute/ext/used_limits/api/v1.1",
            "updated": "2012-07-13T00:00:00+00:00"
        },
        {
            "alias": "os-used-limits-for-admin",
            "description": "Provide data to admin on limited resources used by other tenants.",
            "links": [],
            "name": "UsedLimitsForAdmin",
            "namespace": "http://docs.openstack.org/compute/ext/used_limits_for_admin/api/v1.1",
            "updated": "2013-05-02T00:00:00+00:00"
        },
        {
            "alias": "os-user-data",
            "description": "Add user_data to the Create Server v1.1 API.",
            "links": [],
            "name": "UserData",
            "namespace": "http://docs.openstack.org/compute/ext/userdata/api/v1.1",
            "updated": "2012-08-07T00:00:00+00:00"
        },
        {
            "alias": "os-user-quotas",
            "description": "Project user quota support.",
            "links": [],
            "name": "UserQuotas",
            "namespace": "http://docs.openstack.org/compute/ext/user_quotas/api/v1.1",
            "updated": "2013-07-18T00:00:00+00:00"
        },
        {
            "alias": "os-virtual-interfaces",
            "description": "Virtual interface support.",
            "links": [],
            "name": "VirtualInterfaces",
            "namespace": "http://docs.openstack.org/compute/ext/virtual_interfaces/api/v1.1",
            "updated": "2011-08-17T00:00:00+00:00"
        },
        {
            "alias": "os-volume-attachment-update",
            "description": "Support for updating a volume attachment.",
            "links": [],
            "name": "VolumeAttachmentUpdate",
            "namespace": "http://docs.openstack.org/compute/ext/os-volume-attachment-update/api/v2",
            "updated": "2013-06-20T00:00:00-00:00"
        },
        {
            "alias": "os-volumes",
            "description": "Volumes support.",
            "links": [],
            "name": "Volumes",
            "namespace": "http://docs.openstack.org/compute/ext/volumes/api/v1.1",
            "updated": "2011-03-25T00:00:00+00:00"
        },
        {
            "alias": "os-extended-services-delete",
            "description": "Services deletion support.",
            "links": [],
            "name": "ExtendedServicesDelete",
            "namespace": "http://docs.openstack.org/compute/ext/extended_services_delete/api/v2",
            "updated": "2013-12-10T00:00:00+00:00"
        },
        {
            "alias": "os-console-auth-tokens",
            "description": "Console token authentication support.",
            "links": [],
            "name": "ConsoleAuthTokens",
            "namespace": "http://docs.openstack.org/compute/ext/consoles-auth-tokens/api/v2",
            "updated": "2013-08-13T00:00:00+00:00"
        }
    ]
}
<?xml version='1.0' encoding='UTF-8'?>
<extensions xmlns:atom="http://www.w3.org/2005/Atom"
  xmlns="http://docs.openstack.org/common/api/v1.0">
  <extension alias="NMN" updated="2011-06-09T00:00:00+00:00"
    namespace="http://docs.openstack.org/compute/ext/multinic/api/v1.1"
    name="Multinic">
    <description>Multiple network support.</description>
  </extension>
  <extension alias="OS-DCF" updated="2011-09-27T00:00:00+00:00"
    namespace="http://docs.openstack.org/compute/ext/disk_config/api/v1.1"
    name="DiskConfig">
    <description>Disk Management Extension.</description>
  </extension>
  <extension alias="OS-EXT-AZ" updated="2013-01-30T00:00:00+00:00"
    namespace="http://docs.openstack.org/compute/ext/extended_availability_zone/api/v2"
    name="ExtendedAvailabilityZone">
    <description>Extended Availability Zone support.</description>
  </extension>
  <extension alias="OS-EXT-IMG-SIZE"
    updated="2013-02-19T00:00:00+00:00"
    namespace="http://docs.openstack.org/compute/ext/image_size/api/v1.1"
    name="ImageSize">
    <description>Adds image size to image listings.</description>
  </extension>
  <extension alias="OS-EXT-IPS" updated="2013-01-06T00:00:00+00:00"
    namespace="http://docs.openstack.org/compute/ext/extended_ips/api/v1.1"
    name="ExtendedIps">
    <description>Adds type parameter to the ip list.</description>
  </extension>
  <extension alias="OS-EXT-IPS-MAC"
    updated="2013-03-07T00:00:00+00:00"
    namespace="http://docs.openstack.org/compute/ext/extended_ips_mac/api/v1.1"
    name="ExtendedIpsMac">
    <description>Adds mac address parameter to the ip
      list.</description>
  </extension>
  <extension alias="OS-EXT-SRV-ATTR"
    updated="2011-11-03T00:00:00+00:00"
    namespace="http://docs.openstack.org/compute/ext/extended_status/api/v1.1"
    name="ExtendedServerAttributes">
    <description>Extended Server Attributes support.</description>
  </extension>
  <extension alias="OS-EXT-STS" updated="2011-11-03T00:00:00+00:00"
    namespace="http://docs.openstack.org/compute/ext/extended_status/api/v1.1"
    name="ExtendedStatus">
    <description>Extended Status support.</description>
  </extension>
  <extension alias="OS-EXT-VIF-NET"
    updated="2013-03-07T00:00:00+00:00"
    namespace="http://docs.openstack.org/compute/ext/extended-virtual-interfaces-net/api/v1.1"
    name="ExtendedVIFNet">
    <description>Adds network id parameter to the virtual interface
      list.</description>
  </extension>
  <extension alias="OS-FLV-DISABLED"
    updated="2012-08-29T00:00:00+00:00"
    namespace="http://docs.openstack.org/compute/ext/flavor_disabled/api/v1.1"
    name="FlavorDisabled">
    <description>Support to show the disabled status of a
      flavor.</description>
  </extension>
  <extension alias="OS-FLV-EXT-DATA"
    updated="2011-09-14T00:00:00+00:00"
    namespace="http://docs.openstack.org/compute/ext/flavor_extra_data/api/v1.1"
    name="FlavorExtraData">
    <description>Provide additional data for flavors.</description>
  </extension>
  <extension alias="OS-SCH-HNT" updated="2011-07-19T00:00:00+00:00"
    namespace="http://docs.openstack.org/compute/ext/scheduler-hints/api/v2"
    name="SchedulerHints">
    <description>Pass arbitrary key/value pairs to the
      scheduler.</description>
  </extension>
  <extension alias="OS-SRV-USG" updated="2013-04-29T00:00:00+00:00"
    namespace="http://docs.openstack.org/compute/ext/server_usage/api/v1.1"
    name="ServerUsage">
    <description>Adds launched_at and terminated_at on
      Servers.</description>
  </extension>
  <extension alias="os-admin-actions"
    updated="2011-09-20T00:00:00+00:00"
    namespace="http://docs.openstack.org/compute/ext/admin-actions/api/v1.1"
    name="AdminActions">
    <description>Enable admin-only server actions Actions include:
      pause, unpause, suspend, resume, migrate, resetNetwork,
      injectNetworkInfo, lock, unlock, createBackup </description>
  </extension>
  <extension alias="os-agents" updated="2012-10-28T00:00:00-00:00"
    namespace="http://docs.openstack.org/compute/ext/agents/api/v2"
    name="Agents">
    <description>Agents support.</description>
  </extension>
  <extension alias="os-aggregates" updated="2012-01-12T00:00:00+00:00"
    namespace="http://docs.openstack.org/compute/ext/aggregates/api/v1.1"
    name="Aggregates">
    <description>Admin-only aggregate administration.</description>
  </extension>
  <extension alias="os-assisted-volume-snapshots"
    updated="2013-08-29T00:00:00-00:00"
    namespace="http://docs.openstack.org/compute/ext/assisted-volume-snapshots/api/v2"
    name="AssistedVolumeSnapshots">
    <description>Assisted volume snapshots.</description>
  </extension>
  <extension alias="os-attach-interfaces"
    updated="2012-07-22T00:00:00+00:00"
    namespace="http://docs.openstack.org/compute/ext/interfaces/api/v1.1"
    name="AttachInterfaces">
    <description>Attach interface support.</description>
  </extension>
  <extension alias="os-availability-zone"
    updated="2012-12-21T00:00:00+00:00"
    namespace="http://docs.openstack.org/compute/ext/availabilityzone/api/v1.1"
    name="AvailabilityZone">
    <description>1. Add availability_zone to the Create Server v1.1
      API. 2. Add availability zones describing. </description>
  </extension>
  <extension alias="os-baremetal-ext-status"
    updated="2013-08-27T00:00:00+00:00"
    namespace="http://docs.openstack.org/compute/ext/baremetal_ext_status/api/v2"
    name="BareMetalExtStatus">
    <description>Add extended status in Baremetal Nodes v2
      API.</description>
  </extension>
  <extension alias="os-baremetal-nodes"
    updated="2013-01-04T00:00:00+00:00"
    namespace="http://docs.openstack.org/compute/ext/baremetal_nodes/api/v2"
    name="BareMetalNodes">
    <description>Admin-only bare-metal node
      administration.</description>
  </extension>
  <extension alias="os-block-device-mapping-v2-boot"
    updated="2013-07-08T00:00:00+00:00"
    namespace="http://docs.openstack.org/compute/ext/block_device_mapping_v2_boot/api/v2"
    name="BlockDeviceMappingV2Boot">
    <description>Allow boot with the new BDM data
      format.</description>
  </extension>
  <extension alias="os-cell-capacities"
    updated="2013-05-27T00:00:00+00:00"
    namespace="http://docs.openstack.org/compute/ext/cell_capacities/api/v1.1"
    name="CellCapacities">
    <description>Adding functionality to get cell
      capacities.</description>
  </extension>
  <extension alias="os-cells" updated="2013-05-14T00:00:00+00:00"
    namespace="http://docs.openstack.org/compute/ext/cells/api/v1.1"
    name="Cells">
    <description>Enables cells-related functionality such as adding
      neighbor cells, listing neighbor cells, and getting the
      capabilities of the local cell. </description>
  </extension>
  <extension alias="os-certificates"
    updated="2012-01-19T00:00:00+00:00"
    namespace="http://docs.openstack.org/compute/ext/certificates/api/v1.1"
    name="Certificates">
    <description>Certificates support.</description>
  </extension>
  <extension alias="os-cloudpipe" updated="2011-12-16T00:00:00+00:00"
    namespace="http://docs.openstack.org/compute/ext/cloudpipe/api/v1.1"
    name="Cloudpipe">
    <description>Adds actions to create cloudpipe instances. When
      running with the Vlan network mode, you need a mechanism to
      route from the public Internet to your vlans. This mechanism is
      known as a cloudpipe. At the time of creating this class, only
      OpenVPN is supported. Support for a SSH Bastion host is
      forthcoming. </description>
  </extension>
  <extension alias="os-cloudpipe-update"
    updated="2012-11-14T00:00:00+00:00"
    namespace="http://docs.openstack.org/compute/ext/cloudpipe-update/api/v2"
    name="CloudpipeUpdate">
    <description>Adds the ability to set the vpn ip/port for cloudpipe
      instances.</description>
  </extension>
  <extension alias="os-config-drive"
    updated="2012-07-16T00:00:00+00:00"
    namespace="http://docs.openstack.org/compute/ext/config_drive/api/v1.1"
    name="ConfigDrive">
    <description>Config Drive Extension.</description>
  </extension>
  <extension alias="os-console-auth-tokens"
    updated="2013-08-13T00:00:00+00:00"
    namespace="http://docs.openstack.org/compute/ext/consoles-auth-tokens/api/v2"
    name="ConsoleAuthTokens">
    <description>Console token authentication support.</description>
  </extension>
  <extension alias="os-console-output"
    updated="2011-12-08T00:00:00+00:00"
    namespace="http://docs.openstack.org/compute/ext/os-console-output/api/v2"
    name="ConsoleOutput">
    <description>Console log output support, with tailing
      ability.</description>
  </extension>
  <extension alias="os-consoles" updated="2011-12-23T00:00:00+00:00"
    namespace="http://docs.openstack.org/compute/ext/os-consoles/api/v2"
    name="Consoles">
    <description>Interactive Console support.</description>
  </extension>
  <extension alias="os-create-server-ext"
    updated="2011-07-19T00:00:00+00:00"
    namespace="http://docs.openstack.org/compute/ext/createserverext/api/v1.1"
    name="Createserverext">
    <description>Extended support to the Create Server v1.1
      API.</description>
  </extension>
  <extension alias="os-deferred-delete"
    updated="2011-09-01T00:00:00+00:00"
    namespace="http://docs.openstack.org/compute/ext/deferred-delete/api/v1.1"
    name="DeferredDelete">
    <description>Instance deferred delete.</description>
  </extension>
  <extension alias="os-evacuate" updated="2013-01-06T00:00:00+00:00"
    namespace="http://docs.openstack.org/compute/ext/evacuate/api/v2"
    name="Evacuate">
    <description>Enables server evacuation.</description>
  </extension>
  <extension alias="os-extended-floating-ips"
    updated="2013-04-19T00:00:00+00:00"
    namespace="http://docs.openstack.org/compute/ext/extended_floating_ips/api/v2"
    name="ExtendedFloatingIps">
    <description>Adds optional fixed_address to the add floating IP
      command.</description>
  </extension>
  <extension alias="os-extended-hypervisors"
    updated="2014-01-04T00:00:00-00:00"
    namespace="http://docs.openstack.org/compute/ext/extended_hypervisors/api/v1.1"
    name="ExtendedHypervisors">
    <description>Extended hypervisors support.</description>
  </extension>
  <extension alias="os-extended-quotas"
    updated="2013-06-09T00:00:00+00:00"
    namespace="http://docs.openstack.org/compute/ext/extended_quotas/api/v1.1"
    name="ExtendedQuotas">
    <description>Adds ability for admins to delete quota and
      optionally force the update Quota command. </description>
  </extension>
  <extension alias="os-extended-services"
    updated="2013-05-17T00:00:00-00:00"
    namespace="http://docs.openstack.org/compute/ext/extended_services/api/v2"
    name="ExtendedServices">
    <description>Extended services support.</description>
  </extension>
  <extension alias="os-extended-services-delete"
    updated="2013-12-10T00:00:00"
    namespace="http://docs.openstack.org/compute/ext/extended_services_delete/api/v2"
    name="ExtendedServicesDelete">
    <description>Extended services deletion support.</description>
  </extension>
  <extension alias="os-extended-volumes"
    updated="2013-06-07T00:00:00+00:00"
    namespace="http://docs.openstack.org/compute/ext/extended_volumes/api/v1.1"
    name="ExtendedVolumes">
    <description>Extended Volumes support.</description>
  </extension>
  <extension alias="os-fixed-ips" updated="2012-10-18T13:25:27-06:00"
    namespace="http://docs.openstack.org/compute/ext/fixed_ips/api/v2"
    name="FixedIPs">
    <description>Fixed IPs support.</description>
  </extension>
  <extension alias="os-flavor-access"
    updated="2012-08-01T00:00:00+00:00"
    namespace="http://docs.openstack.org/compute/ext/flavor_access/api/v2"
    name="FlavorAccess">
    <description>Flavor access support.</description>
  </extension>
  <extension alias="os-flavor-extra-specs"
    updated="2011-06-23T00:00:00+00:00"
    namespace="http://docs.openstack.org/compute/ext/flavor_extra_specs/api/v1.1"
    name="FlavorExtraSpecs">
    <description>Instance type (flavor) extra specs.</description>
  </extension>
  <extension alias="os-flavor-manage"
    updated="2012-01-19T00:00:00+00:00"
    namespace="http://docs.openstack.org/compute/ext/flavor_manage/api/v1.1"
    name="FlavorManage">
    <description>Flavor create/delete API support.</description>
  </extension>
  <extension alias="os-flavor-rxtx"
    updated="2012-08-29T00:00:00+00:00"
    namespace="http://docs.openstack.org/compute/ext/flavor_rxtx/api/v1.1"
    name="FlavorRxtx">
    <description>Support to show the rxtx status of a
      flavor.</description>
  </extension>
  <extension alias="os-flavor-swap"
    updated="2012-08-29T00:00:00+00:00"
    namespace="http://docs.openstack.org/compute/ext/flavor_swap/api/v1.1"
    name="FlavorSwap">
    <description>Support to show the swap status of a
      flavor.</description>
  </extension>
  <extension alias="os-floating-ip-dns"
    updated="2011-12-23T00:00:00+00:00"
    namespace="http://docs.openstack.org/ext/floating_ip_dns/api/v1.1"
    name="FloatingIpDns">
    <description>Floating IP DNS support.</description>
  </extension>
  <extension alias="os-floating-ip-pools"
    updated="2012-01-04T00:00:00+00:00"
    namespace="http://docs.openstack.org/compute/ext/floating_ip_pools/api/v1.1"
    name="FloatingIpPools">
    <description>Floating IPs support.</description>
  </extension>
  <extension alias="os-floating-ips"
    updated="2011-06-16T00:00:00+00:00"
    namespace="http://docs.openstack.org/compute/ext/floating_ips/api/v1.1"
    name="FloatingIps">
    <description>Floating IPs support.</description>
  </extension>
  <extension alias="os-floating-ips-bulk"
    updated="2012-10-29T13:25:27-06:00"
    namespace="http://docs.openstack.org/compute/ext/floating_ips_bulk/api/v2"
    name="FloatingIpsBulk">
    <description>Bulk handling of Floating IPs.</description>
  </extension>
  <extension alias="os-fping" updated="2012-07-06T00:00:00+00:00"
    namespace="http://docs.openstack.org/compute/ext/fping/api/v1.1"
    name="Fping">
    <description>Fping Management Extension.</description>
  </extension>
  <extension alias="os-hide-server-addresses"
    updated="2012-12-11T00:00:00+00:00"
    namespace="http://docs.openstack.org/compute/ext/hide_server_addresses/api/v1.1"
    name="HideServerAddresses">
    <description>Support hiding server addresses in certain
      states.</description>
  </extension>
  <extension alias="os-hosts" updated="2011-06-29T00:00:00+00:00"
    namespace="http://docs.openstack.org/compute/ext/hosts/api/v1.1"
    name="Hosts">
    <description>Admin-only host administration.</description>
  </extension>
  <extension alias="os-hypervisors"
    updated="2012-06-21T00:00:00+00:00"
    namespace="http://docs.openstack.org/compute/ext/hypervisors/api/v1.1"
    name="Hypervisors">
    <description>Admin-only hypervisor administration.</description>
  </extension>
  <extension alias="os-instance-actions"
    updated="2013-02-08T00:00:00+00:00"
    namespace="http://docs.openstack.org/compute/ext/instance-actions/api/v1.1"
    name="InstanceActions">
    <description>View a log of actions and events taken on an
      instance.</description>
  </extension>
  <extension alias="os-instance_usage_audit_log"
    updated="2012-07-06T01:00:00+00:00"
    namespace="http://docs.openstack.org/ext/services/api/v1.1"
    name="OSInstanceUsageAuditLog">
    <description>Admin-only Task Log Monitoring.</description>
  </extension>
  <extension alias="os-keypairs" updated="2011-08-08T00:00:00+00:00"
    namespace="http://docs.openstack.org/compute/ext/keypairs/api/v1.1"
    name="Keypairs">
    <description>Keypair Support.</description>
  </extension>
  <extension alias="os-migrations" updated="2013-05-30T00:00:00+00:00"
    namespace="http://docs.openstack.org/compute/ext/migrations/api/v2.0"
    name="Migrations">
    <description>Provide data on migrations.</description>
  </extension>
  <extension alias="os-multiple-create"
    updated="2012-08-07T00:00:00+00:00"
    namespace="http://docs.openstack.org/compute/ext/multiplecreate/api/v1.1"
    name="MultipleCreate">
    <description>Allow multiple create in the Create Server v1.1
      API.</description>
  </extension>
  <extension alias="os-networks" updated="2011-12-23T00:00:00+00:00"
    namespace="http://docs.openstack.org/compute/ext/os-networks/api/v1.1"
    name="Networks">
    <description>Admin-only Network Management
      Extension.</description>
  </extension>
  <extension alias="os-networks-associate"
    updated="2012-11-19T00:00:00+00:00"
    namespace="http://docs.openstack.org/compute/ext/networks_associate/api/v2"
    name="NetworkAssociationSupport">
    <description>Network association support.</description>
  </extension>
  <extension alias="os-preserve-ephemeral-rebuild"
    updated="2013-12-17T00:00:00+00:00"
    namespace="http://docs.openstack.org/compute/ext/preserve_ephemeral_rebuild/api/v2"
    name="PreserveEphemeralOnRebuild">
    <description>Allow preservation of the ephemeral partition on
      rebuild.</description>
  </extension>
  <extension alias="os-quota-sets" updated="2011-08-08T00:00:00+00:00"
    namespace="http://docs.openstack.org/compute/ext/quotas-sets/api/v1.1"
    name="Quotas">
    <description>Quotas management support.</description>
  </extension>
  <extension alias="os-rescue" updated="2011-08-18T00:00:00+00:00"
    namespace="http://docs.openstack.org/compute/ext/rescue/api/v1.1"
    name="Rescue">
    <description>Instance rescue mode.</description>
  </extension>
  <extension alias="os-security-group-default-rules"
    updated="2013-02-05T00:00:00+00:00"
    namespace="http://docs.openstack.org/compute/ext/securitygroupdefaultrules/api/v1.1"
    name="SecurityGroupDefaultRules">
    <description>Default rules for security group
      support.</description>
  </extension>
  <extension alias="os-security-groups"
    updated="2013-05-28T00:00:00+00:00"
    namespace="http://docs.openstack.org/compute/ext/securitygroups/api/v1.1"
    name="SecurityGroups">
    <description>Security group support.</description>
  </extension>
  <extension alias="os-server-diagnostics"
    updated="2011-12-21T00:00:00+00:00"
    namespace="http://docs.openstack.org/compute/ext/server-diagnostics/api/v1.1"
    name="ServerDiagnostics">
    <description>Allow Admins to view server diagnostics through
      server action.</description>
  </extension>
  <extension alias="os-server-external-events"
    updated="2014-02-18T00:00:00-00:00"
    namespace="http://docs.openstack.org/compute/ext/server-external-events/api/v2"
    name="ServerExternalEvents">
    <description>Server External Event Triggers.</description>
  </extension>
  <extension alias="os-server-groups"
    updated="2013-06-20T00:00:00+00:00"
    namespace="http://docs.openstack.org/compute/ext/servergroups/api/v2"
    name="ServerGroups">
    <description>Server group support.</description>
  </extension>
  <extension alias="os-server-group-quotas"
    updated="2014-07-25T00:00:00Z"
    namespace="http://docs.openstack.org/compute/ext/server-group-quotas/api/v2"
    name="ServerGroupQuotas">
    <description>Adds quota support to server groups.</description>
  </extension>
  <extension alias="os-server-password"
    updated="2012-11-29T00:00:00+00:00"
    namespace="http://docs.openstack.org/compute/ext/server-password/api/v2"
    name="ServerPassword">
    <description>Server password support.</description>
  </extension>
  <extension alias="os-server-start-stop"
    updated="2012-01-23T00:00:00+00:00"
    namespace="http://docs.openstack.org/compute/ext/servers/api/v1.1"
    name="ServerStartStop">
    <description>Start/Stop instance compute API
      support.</description>
  </extension>
  <extension alias="os-services" updated="2012-10-28T00:00:00-00:00"
    namespace="http://docs.openstack.org/compute/ext/services/api/v2"
    name="Services">
    <description>Services support.</description>
  </extension>
  <extension alias="os-shelve" updated="2013-04-06T00:00:00+00:00"
    namespace="http://docs.openstack.org/compute/ext/shelve/api/v1.1"
    name="Shelve">
    <description>Instance shelve mode.</description>
  </extension>
  <extension alias="os-simple-tenant-usage"
    updated="2011-08-19T00:00:00+00:00"
    namespace="http://docs.openstack.org/compute/ext/os-simple-tenant-usage/api/v1.1"
    name="SimpleTenantUsage">
    <description>Simple tenant usage extension.</description>
  </extension>
  <extension alias="os-tenant-networks"
    updated="2012-03-07T09:46:43-05:00"
    namespace="http://docs.openstack.org/compute/ext/os-tenant-networks/api/v2"
    name="OSTenantNetworks">
    <description>Tenant-based Network Management
      Extension.</description>
  </extension>
  <extension alias="os-used-limits"
    updated="2012-07-13T00:00:00+00:00"
    namespace="http://docs.openstack.org/compute/ext/used_limits/api/v1.1"
    name="UsedLimits">
    <description>Provide data on limited resources that are being
      used.</description>
  </extension>
  <extension alias="os-used-limits-for-admin"
    updated="2013-05-02T00:00:00+00:00"
    namespace="http://docs.openstack.org/compute/ext/used_limits_for_admin/api/v1.1"
    name="UsedLimitsForAdmin">
    <description>Provide data to admin on limited resources used by
      other tenants.</description>
  </extension>
  <extension alias="os-user-data" updated="2012-08-07T00:00:00+00:00"
    namespace="http://docs.openstack.org/compute/ext/userdata/api/v1.1"
    name="UserData">
    <description>Add user_data to the Create Server v1.1
      API.</description>
  </extension>
  <extension alias="os-user-quotas"
    updated="2013-07-18T00:00:00+00:00"
    namespace="http://docs.openstack.org/compute/ext/user_quotas/api/v1.1"
    name="UserQuotas">
    <description>Project user quota support.</description>
  </extension>
  <extension alias="os-virtual-interfaces"
    updated="2011-08-17T00:00:00+00:00"
    namespace="http://docs.openstack.org/compute/ext/virtual_interfaces/api/v1.1"
    name="VirtualInterfaces">
    <description>Virtual interface support.</description>
  </extension>
  <extension alias="os-volume-attachment-update"
    updated="2013-06-20T00:00:00-00:00"
    namespace="http://docs.openstack.org/compute/ext/os-volume-attachment-update/api/v2"
    name="VolumeAttachmentUpdate">
    <description>Support for updating a volume
      attachment.</description>
  </extension>
  <extension alias="os-volumes" updated="2011-03-25T00:00:00+00:00"
    namespace="http://docs.openstack.org/compute/ext/volumes/api/v1.1"
    name="Volumes">
    <description>Volumes support.</description>
  </extension>
  <extension alias="os-extended-services-delete"
    updated="2013-12-10T00:00:00"
    namespace="http://docs.openstack.org/compute/ext/extended_services_delete/api/v2"
    name="ExtendedServicesDelete">
    <description>Services deletion support.</description>
  </extension>
  <extension alias="os-console-auth-tokens"
    updated="2013-08-13T00:00:00+00:00"
    namespace="http://docs.openstack.org/compute/ext/consoles-auth-tokens/api/v2"
    name="ConsoleAuthTokens">
    <description>Console token authentication support.</description>
  </extension>
</extensions>

This operation does not accept a request body.

GET
/v2/​{tenant_id}​/extensions/​{alias}​
Get extension

Gets details about the specified extension.

 

Extensions introduce features and vendor-specific functionality to the API without requiring a version change.

Normal response codes
200, 203
Error response codes
computeFault (400, 500, …), serviceUnavailable (503), badRequest (400), unauthorized (401), forbidden (403), badMethod (405), overLimit (413), itemNotFound (404)
Request parameters
Parameter Style Type Description
tenant_id URI csapi:UUID

The tenant ID in a multi-tenancy cloud.

alias URI xsd:string

An alias, which is a name for a pointer to a resource. For example, a named extension.

Response parameters
Parameter Style Type Description
X-Compute-Request-ID (Optional) header xsd:string

Returns a unique identifier to provide tracking for the request. The request ID that is associated with the request appears in the log lines for that request. By default, the middleware configuration ensures that the request ID appears in the log files.

{
    "extension": {
        "updated": "2011-09-27T00:00:00+00:00",
        "name": "DiskConfig",
        "links": [],
        "namespace": "http://docs.openstack.org/compute/ext/disk_config/api/v1.1",
        "alias": "OS-DCF",
        "description": "Disk Management Extension."
    }
}
<?xml version='1.0' encoding='UTF-8'?>
<extension xmlns:atom="http://www.w3.org/2005/Atom"
    xmlns="http://docs.openstack.org/common/api/v1.0" alias="OS-DCF"
    updated="2011-09-27T00:00:00+00:00"
    namespace="http://docs.openstack.org/compute/ext/disk_config/api/v1.1"
    name="DiskConfig">
    <description>Disk Management Extension.</description>
</extension>

This operation does not accept a request body.

Servers

Lists, creates, gets details for, updates, and deletes servers.

  • Passwords

    When you create a server, you can specify a password through the optional adminPass attribute. The specified password must meet the complexity requirements set by your OpenStack Compute provider. The server might enter an ERROR state if the complexity requirements are not met. In this case, a client might issue a change password action to reset the server password.

    If you do not specify a password, a randomly generated password is assigned and returned in the response object. This password is guaranteed to meet the security requirements set by the compute provider. For security reasons, the password is not returned in subsequent GET calls.

  • Server metadata

    You can specify custom server metadata at server launch time. The maximum size for each metadata key-value pair is 255 bytes. The maximum number of key-value pairs that can be supplied per server is determined by the compute provider. You can query this value through the maxServerMeta absolute limit.

  • Server networks

    You can specify networks to which the server connects at launch time. You can specify one or more networks. Users can also specify a specific port on the network or the fixed IP address to assign to the server interface.

    You can use both IPv4 and IPv6 addresses as access addresses and you can assign both addresses simultaneously. You can update access addresses after you create a server.

  • Server personality

    You can customize the personality of a server instance by injecting data into its file system. For example, you might want to insert ssh keys, set configuration files, or store data that you want to retrieve from inside the instance. This feature provides a minimal amount of launch-time personalization. If you require significant customization, create a custom image.

    Follow these guidelines when you inject files:

    • The maximum size of the file path data is 255 bytes.

    • Encode the file contents as a Base64 string. The compute providers determines the maximum size of the file contents. This value can vary based on the image that is used to create the server.

      The maximum limit refers to the number of bytes in the decoded data and not to the number of characters in the encoded data.

    • You can inject only text files. You cannot inject binary or ZIP files into a new build.

    • The maxPersonality absolute limit defines the maximum number of file path and content pairs that you can supply. The compute provider determines this value.

    • The maxPersonalitySize absolute limit is a byte limit that is guaranteed to apply to all images in the deployment. Providers can set additional per-image personality limits.

    The file injection might not occur until after the server is built and booted.

    During file injection, any existing files that match specified files are renamed to include the BAK extension appended with a time stamp. For example, if the /etc/passwd file exists, it is backed up as /etc/passwd.bak.1246036261.5785.

    After file injection, only system administrators can access personality files. For example, on Linux, all files have root as the owner and the root group as the group owner, and allow only user and group read access (chmod 440).

  • Server access addresses

    In a hybrid environment, the underlying implementation might not control the IP address of a server. Instead, the access IP address might be part of the dedicated hardware; for example, a router/NAT device. In this case, the addresses provided by the implementation cannot actually be used to access the server (from outside the local LAN). Here, a separate access address might be assigned at creation time to provide access to the server. This address might not be directly bound to a network interface on the server and might not necessarily appear when you query the server addresses. Nonetheless, clients that must access the server directly are encouraged to do so through an access address.

GET
/v2/​{tenant_id}​/servers
List servers

Lists IDs, names, and links for all servers.

 

Servers contain a status attribute that indicates the current server state. You can filter on the server status when you complete a list servers request. The server status is returned in the response body. The possible server status values are:

    Server status values
  • ACTIVE. The server is active.

  • BUILDING. The server has not finished the original build process.

  • DELETED. The server is permanently deleted.

  • ERROR. The server is in error.

  • HARD_REBOOT. The server is hard rebooting. This is equivalent to pulling the power plug on a physical server, plugging it back in, and rebooting it.

  • PASSWORD. The password is being reset on the server.

  • PAUSED. In a paused state, the state of the server is stored in RAM. A paused server continues to run in frozen state.

  • REBOOT. The server is in a soft reboot state. A reboot command was passed to the operating system.

  • REBUILD. The server is currently being rebuilt from an image.

  • RESCUED. The server is in rescue mode. A rescue image is running with the original server image attached.

  • RESIZED. Server is performing the differential copy of data that changed during its initial copy. Server is down for this stage.

  • REVERT_RESIZE. The resize or migration of a server failed for some reason. The destination server is being cleaned up and the original source server is restarting.

  • SOFT_DELETED. The server is marked as deleted but the disk images are still available to restore.

  • STOPPED. The server is powered off and the disk image still persists.

  • SUSPENDED. The server is suspended, either by request or necessity. This status appears for only the following hypervisors: XenServer/XCP, KVM, and ESXi. Administrative users may suspend an instance if it is infrequently used or to perform system maintenance. When you suspend an instance, its VM state is stored on disk, all memory is written to disk, and the virtual machine is stopped. Suspending an instance is similar to placing a device in hibernation; memory and vCPUs become available to create other instances.

  • UNKNOWN. The state of the server is unknown. Contact your cloud provider.

  • VERIFY_RESIZE. System is awaiting confirmation that the server is operational after a move or resize.

Normal response codes
200, 203
Error response codes
computeFault (400, 500, …), serviceUnavailable (503), badRequest (400), unauthorized (401), forbidden (403), badMethod (405), overLimit (413)
Request parameters
Parameter Style Type Description
tenant_id URI csapi:UUID

The tenant ID in a multi-tenancy cloud.

changes-since (Optional) query xsd:dateTime

A time/date stamp for when the server last changed status.

image (Optional) query csapi:UUID

The UUID for the image.

flavor (Optional) query csapi:UUID

The UUID for the specific flavor, which is a combination of memory, disk size, and CPUs.

name (Optional) query regexp

Name of the server as a string. Can be queried with regular expressions. The regular expression ?name=bob returns both bob and bobb. If you must match on only bob, you can use a regular expression that matches the syntax of the underlying database server that is implemented for Compute, such as MySQL or PostgreSQL.

status (Optional) query csapi:ServerStatus

Value of the status of the server so that you can filter on "ACTIVE" for example.

host (Optional) query xsd:string

Name of the host as a string.

limit (Optional) query xsd:int

Requests a specified page size of returned items from the query. Returns a number of items up to the specified limit value. Use the limit parameter to make an initial limited request and use the ID of the last-seen item from the response as the marker parameter value in a subsequent limited request.

marker (Optional) query xsd:string

Specifies the ID of the last-seen item. Use the limit parameter to make an initial limited request and use the ID of the last-seen item from the response as the marker parameter value in a subsequent limited request.

Response parameters
Parameter Style Type Description
X-Compute-Request-ID (Optional) header xsd:string

Returns a unique identifier to provide tracking for the request. The request ID that is associated with the request appears in the log lines for that request. By default, the middleware configuration ensures that the request ID appears in the log files.

servers plain csapi:ServersWithOnlyIDsNamesLinks

List of servers.

next (Optional) plain xsd:anyURI

Moves to the next metadata item.

previous (Optional) plain xsd:anyURI

Moves to the previous metadata item.

{
    "servers": [
        {
            "id": "616fb98f-46ca-475e-917e-2563e5a8cd19",
            "links": [
                {
                    "href": "http://openstack.example.com/v2/openstack/servers/616fb98f-46ca-475e-917e-2563e5a8cd19",
                    "rel": "self"
                },
                {
                    "href": "http://openstack.example.com/openstack/servers/616fb98f-46ca-475e-917e-2563e5a8cd19",
                    "rel": "bookmark"
                }
            ],
            "name": "new-server-test"
        }
    ]
}
<?xml version='1.0' encoding='UTF-8'?>
<servers xmlns:atom="http://www.w3.org/2005/Atom" xmlns="http://docs.openstack.org/compute/api/v1.1">
  <server name="new-server-test" id="b626796d-d585-4874-b178-78c65289bba4">
    <atom:link href="http://openstack.example.com/v2/openstack/servers/b626796d-d585-4874-b178-78c65289bba4" rel="self"/>
    <atom:link href="http://openstack.example.com/openstack/servers/b626796d-d585-4874-b178-78c65289bba4" rel="bookmark"/>
  </server>
</servers>
POST
/v2/​{tenant_id}​/servers
Create server

Creates a server.

 

The progress of this operation depends on the location of the requested image, network I/O, host load, selected flavor, and other factors.

Issue a GET /servers/{id} request to check the progress of the request, which returns a progress attribute with a from 0 to 100% complete value. The Location header returns the full URL to the newly created server and is available as a self and bookmark link in the server representation.

When you create a server, only the server ID, its links, and the admin password are guaranteed to be returned in the response. You can get additional attributes through subsequent GET requests on the server.

Include the block-device-mapping-v2 parameter in the create request body to boot a server from a volume.

Include the key_name parameter in the create request body to add a keypair to the server when you create it. To create a keypair, make a create keypair request.

Preconditions

  • The user must have sufficient server quota to create the number of servers requested.

  • The connection to the Image service is valid.

Asynchronous postconditions

  • With correct permissions, you can see the server status as ACTIVE through API calls.

  • With correct access, you can see the created server in the compute node that OpenStack Compute manages.

Troubleshooting

  • If the server status remains BUILDING or shows another error status, the request failed. Ensure you meet the preconditions then investigate the compute node.

  • The server is not created in the compute node that OpenStack Compute manages.

  • The compute node needs enough free resource to match the specified resource of the server creation request.

  • Ensure that the scheduler selection filter can fulfill the request with the available compute nodes that match the selection criteria of the filter.

Normal response codes
202
Error response codes
computeFault (400, 500, …), UnprocessableEntity (422), serviceUnavailable (503), badRequest (400), unauthorized (401), forbidden (403), badMethod (405), overLimit (413), itemNotFound (404), badMediaType (415), NetworkNotFound (400), serverCapacityUnavailable (503)
Request parameters
Parameter Style Type Description
tenant_id URI csapi:UUID

The tenant ID in a multi-tenancy cloud.

security_groups (Optional) plain xsd:string

One or more security groups. Specify the name of the security group in the name attribute. If you omit this attribute, the server is created in the default security group.

user_data (Optional) plain xsd:string

Configuration information or scripts to use upon launch. Must be Base64 encoded.

availability_zone (Optional) plain xsd:string

The availability zone in which to launch the server.

server plain csapi:ServerForCreate

server.

imageRef plain csapi:string

The image reference for the desired image for your server instance.

Specify as an ID or full URL.

flavorRef plain csapi:string

The flavor reference for the desired flavor for your server instance.

Specify as an ID or full URL.

networks (Optional) plain xsd:string

A networks object. By default, the server instance is provisioned with all isolated networks for the tenant.

Optionally, you can create one or more NICs on the server.

To provision the server instance with a NIC for a network, specify the UUID of the network in the uuid attribute in a networks object.

To provision the server instance with a NIC for an already existing port, specify the port-id in the port attribute in a networks object.

You can specify multiple NICs on the server.

uuid (Optional) plain xsd:string

To provision the server instance with a NIC for a network, specify the UUID of the network in the uuid attribute in a networks object. Required if you omit the port attribute.

port (Optional) plain xsd:string

To provision the server instance with a NIC for an already existing port, specify the port-id in the port attribute in a networks object. The port status must be DOWN. Required if you omit the uuid attribute.

fixed_ip (Optional) plain xsd:string

A fixed IPv4 address for the NIC. Valid with a neutron or nova-networks network.

name plain csapi:string

The server name.

metadata (Optional) plain csapi:string

Metadata key and value pairs. The maximum size of the metadata key and value is 255 bytes each.

personality (Optional) plain csapi:string

File path and contents (text only) to inject into the server at launch. The maximum size of the file path data is 255 bytes. The maximum limit refers to the number of bytes in the decoded data and not the number of characters in the encoded data.

block_device_mapping_v2 (Optional) plain csapi:string

Enables booting the server from a volume when additional parameters are given. If specified, the volume status must be available, and the volume attach_status in the OpenStack Block Storage database must be detached.

device_name plain csapi:string

Describes a path to the device for the volume you want to use to boot the server.

source_type plain csapi:string

The source type for the volume. A valid value is blank, snapshot, volume, or image.

destination_type (Optional) plain csapi:string

Defines where the volume comes from. A valid value is local or volume.

delete_on_termination plain csapi:string

To delete the boot volume when the server stops, specify true. Otherwise, specify false.

guest_format plain csapi:string

Specifies the guest server disk file system format, such as ephemeral or swap.

boot_index plain csapi:string

The boot order of the device. Use -1 for the boot volume. Use 0 for an attached volume.

config_drive (Optional) plain xsd:boolean

Enables metadata injection in a server through a configuration drive.

Specify true to enable a configuration drive. Otherwise, specify false.

key_name (Optional) plain xsd:string

Key pair name.

Response parameters
Parameter Style Type Description
security_groups (Optional) plain xsd:string

One or more security groups. Specify the name of the security group in the name attribute. If you omit this attribute, the server is created in the default security group.

user_data (Optional) plain xsd:string

Configuration information or scripts to use upon launch. Must be Base64 encoded.

availability_zone (Optional) plain xsd:string

The availability zone in which to launch the server.

server plain csapi:ServerForCreate

server.

imageRef plain csapi:string

The image reference for the desired image for your server instance.

Specify as an ID or full URL.

flavorRef plain csapi:string

The flavor reference for the desired flavor for your server instance.

Specify as an ID or full URL.

networks (Optional) plain xsd:string

A networks object. By default, the server instance is provisioned with all isolated networks for the tenant.

Optionally, you can create one or more NICs on the server.

To provision the server instance with a NIC for a network, specify the UUID of the network in the uuid attribute in a networks object.

To provision the server instance with a NIC for an already existing port, specify the port-id in the port attribute in a networks object.

You can specify multiple NICs on the server.

uuid (Optional) plain xsd:string

To provision the server instance with a NIC for a network, specify the UUID of the network in the uuid attribute in a networks object. Required if you omit the port attribute.

port (Optional) plain xsd:string

To provision the server instance with a NIC for an already existing port, specify the port-id in the port attribute in a networks object. The port status must be DOWN. Required if you omit the uuid attribute.

fixed_ip (Optional) plain xsd:string

A fixed IPv4 address for the NIC. Valid with a neutron or nova-networks network.

name plain csapi:string

The server name.

metadata (Optional) plain csapi:string

Metadata key and value pairs. The maximum size of the metadata key and value is 255 bytes each.

personality (Optional) plain csapi:string

File path and contents (text only) to inject into the server at launch. The maximum size of the file path data is 255 bytes. The maximum limit refers to the number of bytes in the decoded data and not the number of characters in the encoded data.

block_device_mapping_v2 (Optional) plain csapi:string

Enables booting the server from a volume when additional parameters are given. If specified, the volume status must be available, and the volume attach_status in the OpenStack Block Storage database must be detached.

device_name plain csapi:string

Describes a path to the device for the volume you want to use to boot the server.

source_type plain csapi:string

The source type for the volume. A valid value is blank, snapshot, volume, or image.

destination_type (Optional) plain csapi:string

Defines where the volume comes from. A valid value is local or volume.

delete_on_termination plain csapi:string

To delete the boot volume when the server stops, specify true. Otherwise, specify false.

guest_format plain csapi:string

Specifies the guest server disk file system format, such as ephemeral or swap.

boot_index plain csapi:string

The boot order of the device. Use -1 for the boot volume. Use 0 for an attached volume.

config_drive (Optional) plain xsd:boolean

Enables metadata injection in a server through a configuration drive.

Specify true to enable a configuration drive. Otherwise, specify false.

key_name (Optional) plain xsd:string

Key pair name.

{
    "server": {
        "name": "new-server-test",
        "imageRef": "http://openstack.example.com/openstack/images/70a599e0-31e7-49b7-b260-868f441e862b",
        "flavorRef": "http://openstack.example.com/openstack/flavors/1",
        "metadata": {
            "My Server Name": "Apache1"
        },
        "personality": [
            {
                "path": "/etc/banner.txt",
                "contents": "ICAgICAgDQoiQSBjbG91ZCBkb2VzIG5vdCBrbm93IHdoeSBpdCBtb3ZlcyBpbiBqdXN0IHN1Y2ggYSBkaXJlY3Rpb24gYW5kIGF0IHN1Y2ggYSBzcGVlZC4uLkl0IGZlZWxzIGFuIGltcHVsc2lvbi4uLnRoaXMgaXMgdGhlIHBsYWNlIHRvIGdvIG5vdy4gQnV0IHRoZSBza3kga25vd3MgdGhlIHJlYXNvbnMgYW5kIHRoZSBwYXR0ZXJucyBiZWhpbmQgYWxsIGNsb3VkcywgYW5kIHlvdSB3aWxsIGtub3csIHRvbywgd2hlbiB5b3UgbGlmdCB5b3Vyc2VsZiBoaWdoIGVub3VnaCB0byBzZWUgYmV5b25kIGhvcml6b25zLiINCg0KLVJpY2hhcmQgQmFjaA=="
            }
        ],
        "block_device_mapping_v2": [
            {
                "device_name": "/dev/sdb1",
                "source_type": "blank",
                "destination_type": "local",
                "delete_on_termination": "True",
                "guest_format": "swap",
                "boot_index": "-1"
            },
            {
                "device_name": "/dev/sda1",
                "source_type": "volume",
                "destination_type": "volume",
                "uuid": "fake-volume-id-1",
                "boot_index": "0"
            }
        ]
    }
}
{
    "server": {
        "name": "server-test-1",
        "imageRef": "b5660a6e-4b46-4be3-9707-6b47221b454f",
        "flavorRef": "2",
        "max_count": 1,
        "min_count": 1,
        "networks": [
            {
                "uuid": "d32019d3-bc6e-4319-9c1d-6722fc136a22"
            }
        ],
        "security_groups": [
            {
                "name": "default"
            },
            {
                "name": "another-secgroup-name"
            }
        ]
    }
}
{
    "server": {
        "security_groups": [
            {
                "name": "default"
            }
        ],
        "OS-DCF:diskConfig": "MANUAL",
        "id": "c6d04159-9bfc-4ab8-823d-0d5ca2abe152",
        "links": [
            {
                "href": "http://166.78.46.130:8774/v2/4fd44f30292945e481c7b8a0c8908869/servers/c6d04159-9bfc-4ab8-823d-0d5ca2abe152",
                "rel": "self"
            },
            {
                "href": "http://166.78.46.130:8774/4fd44f30292945e481c7b8a0c8908869/servers/c6d04159-9bfc-4ab8-823d-0d5ca2abe152",
                "rel": "bookmark"
            }
        ],
        "adminPass": "aabbccddeeff"
    }
}
GET
/v2/​{tenant_id}​/servers/detail
List details for servers

Lists details for all servers.

 

The compute provisioning algorithm has an anti-affinity property that attempts to spread customer VMs across hosts. Under certain situations, VMs from the same customer might be placed on the same host. The hostId property shows the host that your server runs on and can be used to determine this scenario if it is relevant to your application.

HostId is unique per account and is not globally unique.

Normal response codes
200, 203
Error response codes
computeFault (400, 500, …), serviceUnavailable (503), badRequest (400), unauthorized (401), forbidden (403), badMethod (405), overLimit (413)
Request parameters
Parameter Style Type Description
tenant_id URI csapi:UUID

The tenant ID in a multi-tenancy cloud.

changes-since (Optional) query xsd:dateTime

A time/date stamp for when the server last changed status.

image (Optional) query csapi:UUID

The UUID for the image.

flavor (Optional) query csapi:UUID

The UUID for the specific flavor, which is a combination of memory, disk size, and CPUs.

name (Optional) query regexp

Name of the server as a string. Can be queried with regular expressions. The regular expression ?name=bob returns both bob and bobb. If you must match on only bob, you can use a regular expression that matches the syntax of the underlying database server that is implemented for Compute, such as MySQL or PostgreSQL.

status (Optional) query csapi:ServerStatus

Value of the status of the server so that you can filter on "ACTIVE" for example.

host (Optional) query xsd:string

Name of the host as a string.

limit (Optional) query xsd:int

Requests a specified page size of returned items from the query. Returns a number of items up to the specified limit value. Use the limit parameter to make an initial limited request and use the ID of the last-seen item from the response as the marker parameter value in a subsequent limited request.

marker (Optional) query xsd:string

Specifies the ID of the last-seen item. Use the limit parameter to make an initial limited request and use the ID of the last-seen item from the response as the marker parameter value in a subsequent limited request.

Response parameters
Parameter Style Type Description
next (Optional) plain xsd:anyURI

Moves to the next metadata item.

previous (Optional) plain xsd:anyURI

Moves to the previous metadata item.

X-Compute-Request-ID (Optional) header xsd:string

Returns a unique identifier to provide tracking for the request. The request ID that is associated with the request appears in the log lines for that request. By default, the middleware configuration ensures that the request ID appears in the log files.

{
    "servers": [
        {
            "accessIPv4": "",
            "accessIPv6": "",
            "addresses": {
                "private": [
                    {
                        "addr": "192.168.0.3",
                        "version": 4
                    }
                ]
            },
            "created": "2012-09-07T16:56:37Z",
            "flavor": {
                "id": "1",
                "links": [
                    {
                        "href": "http://openstack.example.com/openstack/flavors/1",
                        "rel": "bookmark"
                    }
                ]
            },
            "hostId": "16d193736a5cfdb60c697ca27ad071d6126fa13baeb670fc9d10645e",
            "id": "05184ba3-00ba-4fbc-b7a2-03b62b884931",
            "image": {
                "id": "70a599e0-31e7-49b7-b260-868f441e862b",
                "links": [
                    {
                        "href": "http://openstack.example.com/openstack/images/70a599e0-31e7-49b7-b260-868f441e862b",
                        "rel": "bookmark"
                    }
                ]
            },
            "links": [
                {
                    "href": "http://openstack.example.com/v2/openstack/servers/05184ba3-00ba-4fbc-b7a2-03b62b884931",
                    "rel": "self"
                },
                {
                    "href": "http://openstack.example.com/openstack/servers/05184ba3-00ba-4fbc-b7a2-03b62b884931",
                    "rel": "bookmark"
                }
            ],
            "metadata": {
                "My Server Name": "Apache1"
            },
            "name": "new-server-test",
            "progress": 0,
            "status": "ACTIVE",
            "tenant_id": "openstack",
            "updated": "2012-09-07T16:56:37Z",
            "user_id": "fake"
        }
    ]
}
<?xml version='1.0' encoding='UTF-8'?>
<servers xmlns:atom="http://www.w3.org/2005/Atom" xmlns="http://docs.openstack.org/compute/api/v1.1">
  <server status="ACTIVE" updated="2012-09-07T17:11:46Z" hostId="1b3afbff40723a9649091142a647b83eb6e5b49973239cdeb3d1973c" name="new-server-test" created="2012-09-07T17:11:45Z" userId="fake" tenantId="openstack" accessIPv4="" accessIPv6="" progress="0" id="7c3c0f79-343e-4b99-93bc-2ade47641e64">
    <image id="70a599e0-31e7-49b7-b260-868f441e862b">
      <atom:link href="http://openstack.example.com/openstack/images/70a599e0-31e7-49b7-b260-868f441e862b" rel="bookmark"/>
    </image>
    <flavor id="1">
      <atom:link href="http://openstack.example.com/openstack/flavors/1" rel="bookmark"/>
    </flavor>
    <metadata>
      <meta key="My Server Name">Apache1</meta>
    </metadata>
    <addresses>
      <network id="private">
        <ip version="4" addr="192.168.0.3"/>
      </network>
    </addresses>
    <atom:link href="http://openstack.example.com/v2/openstack/servers/7c3c0f79-343e-4b99-93bc-2ade47641e64" rel="self"/>
    <atom:link href="http://openstack.example.com/openstack/servers/7c3c0f79-343e-4b99-93bc-2ade47641e64" rel="bookmark"/>
  </server>
</servers>
<?xml version='1.0' encoding='UTF-8'?>
<servers xmlns:atom="http://www.w3.org/2005/Atom" xmlns="http://docs.openstack.org/compute/api/v1.1">
  <server status="ACTIVE" updated="2012-09-07T17:11:46Z" hostId="1b3afbff40723a9649091142a647b83eb6e5b49973239cdeb3d1973c" name="new-server-test" created="2012-09-07T17:11:45Z" userId="fake" tenantId="openstack" accessIPv4="" accessIPv6="" progress="0" id="7c3c0f79-343e-4b99-93bc-2ade47641e64">
    <image id="70a599e0-31e7-49b7-b260-868f441e862b">
      <atom:link href="http://openstack.example.com/openstack/images/70a599e0-31e7-49b7-b260-868f441e862b" rel="bookmark"/>
    </image>
    <flavor id="1">
      <atom:link href="http://openstack.example.com/openstack/flavors/1" rel="bookmark"/>
    </flavor>
    <metadata>
      <meta key="My Server Name">Apache1</meta>
    </metadata>
    <addresses>
      <network id="private">
        <ip version="4" addr="192.168.0.3"/>
      </network>
    </addresses>
    <atom:link href="http://openstack.example.com/v2/openstack/servers/7c3c0f79-343e-4b99-93bc-2ade47641e64" rel="self"/>
    <atom:link href="http://openstack.example.com/openstack/servers/7c3c0f79-343e-4b99-93bc-2ade47641e64" rel="bookmark"/>
  </server>
</servers>
GET
/v2/​{tenant_id}​/servers/​{server_id}​
Get server details

Gets details for a specified server.

 

Preconditions

  • The specified server must exist.

Normal response codes
200, 203
Error response codes
computeFault (400, 500, …), serviceUnavailable (503), badRequest (400), unauthorized (401), forbidden (403), badMethod (405), overLimit (413), itemNotFound (404)
Request parameters
Parameter Style Type Description
tenant_id URI csapi:UUID

The tenant ID in a multi-tenancy cloud.

server_id URI csapi:UUID

The UUID for the server.

Response parameters
Parameter Style Type Description
X-Compute-Request-ID (Optional) header xsd:string

Returns a unique identifier to provide tracking for the request. The request ID that is associated with the request appears in the log lines for that request. By default, the middleware configuration ensures that the request ID appears in the log files.

{
    "server": {
        "accessIPv4": "",
        "accessIPv6": "",
        "addresses": {
            "private": [
                {
                    "addr": "192.168.0.3",
                    "version": 4
                }
            ]
        },
        "created": "2012-08-20T21:11:09Z",
        "flavor": {
            "id": "1",
            "links": [
                {
                    "href": "http://openstack.example.com/openstack/flavors/1",
                    "rel": "bookmark"
                }
            ]
        },
        "hostId": "65201c14a29663e06d0748e561207d998b343e1d164bfa0aafa9c45d",
        "id": "893c7791-f1df-4c3d-8383-3caae9656c62",
        "image": {
            "id": "70a599e0-31e7-49b7-b260-868f441e862b",
            "links": [
                {
                    "href": "http://openstack.example.com/openstack/images/70a599e0-31e7-49b7-b260-868f441e862b",
                    "rel": "bookmark"
                }
            ]
        },
        "links": [
            {
                "href": "http://openstack.example.com/v2/openstack/servers/893c7791-f1df-4c3d-8383-3caae9656c62",
                "rel": "self"
            },
            {
                "href": "http://openstack.example.com/openstack/servers/893c7791-f1df-4c3d-8383-3caae9656c62",
                "rel": "bookmark"
            }
        ],
        "metadata": {
            "My Server Name": "Apache1"
        },
        "name": "new-server-test",
        "progress": 0,
        "status": "ACTIVE",
        "tenant_id": "openstack",
        "updated": "2012-08-20T21:11:09Z",
        "user_id": "fake"
    }
}
<?xml version='1.0' encoding='UTF-8'?>
<server xmlns:atom="http://www.w3.org/2005/Atom" xmlns="http://docs.openstack.org/compute/api/v1.1" status="ACTIVE" updated="2012-08-20T21:11:10Z" hostId="1746536de20daadad89a6fab8d6968b1214b0ba9fb37b29e7098e0b9" name="new-server-test" created="2012-08-20T21:11:10Z" userId="fake" tenantId="openstack" accessIPv4="" accessIPv6="" progress="0" id="3f9f7d18-aaf3-4703-b368-ea9b4d609c95">
  <image id="70a599e0-31e7-49b7-b260-868f441e862b">
    <atom:link href="http://openstack.example.com/openstack/images/70a599e0-31e7-49b7-b260-868f441e862b" rel="bookmark"/>
  </image>
  <flavor id="1">
    <atom:link href="http://openstack.example.com/openstack/flavors/1" rel="bookmark"/>
  </flavor>
  <metadata>
    <meta key="My Server Name">Apache1</meta>
  </metadata>
  <addresses>
    <network id="private">
      <ip version="4" addr="192.168.0.3"/>
    </network>
  </addresses>
  <atom:link href="http://openstack.example.com/v2/openstack/servers/3f9f7d18-aaf3-4703-b368-ea9b4d609c95" rel="self"/>
  <atom:link href="http://openstack.example.com/openstack/servers/3f9f7d18-aaf3-4703-b368-ea9b4d609c95" rel="bookmark"/>
</server>

This operation does not accept a request body.

PUT
/v2/​{tenant_id}​/servers/​{server_id}​
Update server

Updates the editable attributes of the specified server.

 

Preconditions

  • The specified server must exist.

Normal response codes
200
Error response codes
computeFault (400, 500, …), serviceUnavailable (503), badRequest (400), unauthorized (401), forbidden (403), badMethod (405), overLimit (413), itemNotFound (404), badMediaType (415), NetworkNotFound (400), buildInProgress (409)
Request parameters
Parameter Style Type Description
tenant_id URI csapi:UUID

The tenant ID in a multi-tenancy cloud.

server_id URI csapi:UUID

The UUID for the server.

name (Optional) plain csapi:ServerForUpdate

The name of the server. If you edit the server name, the server host name does not change. Also, server names are not guaranteed to be unique.

accessIPv4 (Optional) plain csapi:ServerForUpdate

The IP version 4 address.

accessIPv6 (Optional) plain csapi:ServerForUpdate

The IP version 6 address.

auto_disk_config (Optional) plain csapi:ServerForUpdate

Defines how the server's root disk partition is handled when the server is started or resized. Valid values are:

  • True. The root partition expands to encompass all available virtual disks.

  • False. The root partition remains the same size as the original image. The operating system sees extra virtual disk space as unformatted free space.

{
    "server": {
        "name": "new-server-test"
    }
}
{
    "server": {
        "accessIPv4": "67.23.10.132",
        "accessIPv6": "::babe:67.23.10.132"
    }
}
<?xml version="1.0" encoding="UTF-8"?>
<server
    xmlns="http://docs.openstack.org/compute/api/v1.1"
    name="new-server-test"/>
<?xml version="1.0" encoding="UTF-8"?>
<server
    xmlns="http://docs.openstack.org/compute/api/v1.1"
    accessIPv4="67.23.10.132"
    accessIPv6="::babe:67.23.10.132"
/>
{
    "server": {
        "id": "52415800-8b69-11e0-9b19-734f565bc83b",
        "tenant_id": "1234",
        "user_id": "5678",
        "name": "new-server-test",
        "created": "2010-11-11T12:00:00Z",
        "updated": "2010-11-12T12:44:44Z",
        "hostId": "e4d909c290d0fb1ca068ffaddf22cbd0",
        "accessIPv4": "67.23.10.138",
        "accessIPv6": "::babe:67.23.10.138",
        "progress": 0,
        "status": "ACTIVE",
        "image": {
            "id": "52415800-8b69-11e0-9b19-734f6f006e54",
            "name": "CentOS 5.2",
            "links": [
                {
                    "rel": "self",
                    "href": "http://servers.api.openstack.org/v2/1234/images/52415800-8b69-11e0-9b19-734f6f006e54"
                },
                {
                    "rel": "bookmark",
                    "href": "http://servers.api.openstack.org/1234/images/52415800-8b69-11e0-9b19-734f6f006e54"
                }
            ]
        },
        "flavor": {
            "id": "52415800-8b69-11e0-9b19-734f1195ff37",
            "name": "256 MB Server",
            "links": [
                {
                    "rel": "self",
                    "href": "http://servers.api.openstack.org/v2/1234/flavors/52415800-8b69-11e0-9b19-734f1195ff37"
                },
                {
                    "rel": "bookmark",
                    "href": "http://servers.api.openstack.org/1234/flavors/52415800-8b69-11e0-9b19-734f1195ff37"
                }
            ]
        },
        "metadata": {
            "My Server Name": "Apache1"
        },
        "addresses": {
            "public": [
                {
                    "version": 4,
                    "addr": "67.23.10.138"
                },
                {
                    "version": 6,
                    "addr": "::babe:67.23.10.138"
                }
            ],
            "private": [
                {
                    "version": 4,
                    "addr": "10.176.42.19"
                },
                {
                    "version": 6,
                    "addr": "::babe:10.176.42.19"
                }
            ]
        },
        "links": [
            {
                "rel": "self",
                "href": "http://servers.api.openstack.org/v2/1234/servers/52415800-8b69-11e0-9b19-734fcece0043"
            },
            {
                "rel": "bookmark",
                "href": "http://servers.api.openstack.org/1234/servers/52415800-8b69-11e0-9b19-734fcece0043"
            }
        ]
    }
}
{
    "server": {
        "id": "52415800-8b69-11e0-9b19-734f565bc83b",
        "tenant_id": "1234",
        "user_id": "5678",
        "name": "new-server-test",
        "created": "2010-11-11T12:00:00Z",
        "updated": "2010-11-12T12:55:55Z",
        "hostId": "e4d909c290d0fb1ca068ffaddf22cbd0",
        "accessIPv4": "67.23.10.132",
        "accessIPv6": "::babe:67.23.10.132",
        "progress": 0,
        "status": "ACTIVE",
        "image": {
            "id": "52415800-8b69-11e0-9b19-734f6f006e54",
            "name": "CentOS 5.2",
            "links": [
                {
                    "rel": "self",
                    "href": "http://servers.api.openstack.org/v2/1234/images/52415800-8b69-11e0-9b19-734f6f006e54"
                },
                {
                    "rel": "bookmark",
                    "href": "http://servers.api.openstack.org/1234/images/52415800-8b69-11e0-9b19-734f6f006e54"
                }
            ]
        },
        "flavor": {
            "id": "52415800-8b69-11e0-9b19-734f1195ff37",
            "name": "256 MB Server",
            "links": [
                {
                    "rel": "self",
                    "href": "http://servers.api.openstack.org/v2/1234/flavors/52415800-8b69-11e0-9b19-734f1195ff37"
                },
                {
                    "rel": "bookmark",
                    "href": "http://servers.api.openstack.org/1234/flavors/52415800-8b69-11e0-9b19-734f1195ff37"
                }
            ]
        },
        "metadata": {
            "My Server Name": "Apache1"
        },
        "addresses": {
            "public": [
                {
                    "version": 4,
                    "addr": "67.23.10.138"
                },
                {
                    "version": 6,
                    "addr": "::babe:67.23.10.138"
                }
            ],
            "private": [
                {
                    "version": 4,
                    "addr": "10.176.42.19"
                },
                {
                    "version": 6,
                    "addr": "::babe:10.176.42.19"
                }
            ]
        },
        "links": [
            {
                "rel": "self",
                "href": "http://servers.api.openstack.org/v2/1234/servers/52415800-8b69-11e0-9b19-734fcece0043"
            },
            {
                "rel": "bookmark",
                "href": "http://servers.api.openstack.org/1234/servers/52415800-8b69-11e0-9b19-734fcece0043"
            }
        ]
    }
}
<?xml version="1.0" encoding="UTF-8"?>
<server xmlns="http://docs.openstack.org/compute/api/v1.1"
        xmlns:atom="http://www.w3.org/2005/Atom"
        id="52415800-8b69-11e0-9b19-734f565bc83b"
        tenant_id="1234" user_id="5678"
        name="new-server-test"
        hostId="e4d909c290d0fb1ca068ffaddf22cbd0" progress="0"
        status="ACTIVE"
        created="2010-11-11T12:00:00Z"
        updated="2010-11-12T12:44:44Z"
        accessIPv4="67.23.10.138"
        accessIPv6="::babe:67.23.10.138">
  <image id="52415800-8b69-11e0-9b19-734f6f006e54"
         name="CentOS 5.2">
      <atom:link
          rel="self"
          href="http://servers.api.openstack.org/v2/1234/images/52415800-8b69-11e0-9b19-734f6f006e54"/>
      <atom:link
          rel="bookmark"
          href="http://servers.api.openstack.org/1234/images/52415800-8b69-11e0-9b19-734f6f006e54"/>
  </image>
  <flavor id="52415800-8b69-11e0-9b19-734f1195ff37"
          name="256 MB Server">
      <atom:link
          rel="self"
          href="http://servers.api.openstack.org/v2/1234/flavors/52415800-8b69-11e0-9b19-734f1195ff37"/>
      <atom:link
          rel="bookmark"
          href="http://servers.api.openstack.org/1234/flavors/52415800-8b69-11e0-9b19-734f1195ff37"/>
  </flavor>
  <metadata>
    <meta key="My Server Name">Apache1</meta>
  </metadata>
  <addresses>
    <network id="public">
      <ip version="4" addr="67.23.10.138"/>
      <ip version="6" addr="::babe:67.23.10.138"/>
    </network>
    <network id="private">
      <ip version="4" addr="10.176.42.19"/>
      <ip version="6" addr="::babe:10.176.42.19"/>
    </network>
  </addresses>
  <atom:link
      rel="self"
      href="http://servers.api.openstack.org/v2/1234/servers/52415800-8b69-11e0-9b19-734fcece0043"/>
  <atom:link
      rel="bookmark"
      href="http://servers.api.openstack.org/1234/servers/52415800-8b69-11e0-9b19-734fcece0043"/>
</server>
<?xml version="1.0" encoding="UTF-8"?>
<server xmlns="http://docs.openstack.org/compute/api/v1.1"
        xmlns:atom="http://www.w3.org/2005/Atom"
        id="52415800-8b69-11e0-9b19-734f565bc83b"
        tenant_id="1234" user_id="5678"
        name="new-server-test"
        hostId="e4d909c290d0fb1ca068ffaddf22cbd0" progress="0"
        status="ACTIVE"
        created="2010-11-11T12:00:00Z"
        updated="2010-11-12T12:55:55Z"
        accessIPv4="67.23.10.132"
        accessIPv6="::babe:67.23.10.132">
  <image id="52415800-8b69-11e0-9b19-734f6f006e54"
         name="CentOS 5.2">
      <atom:link
          rel="self"
          href="http://servers.api.openstack.org/v2/1234/images/52415800-8b69-11e0-9b19-734f6f006e54"/>
      <atom:link
          rel="bookmark"
          href="http://servers.api.openstack.org/1234/images/52415800-8b69-11e0-9b19-734f6f006e54"/>
  </image>
  <flavor id="52415800-8b69-11e0-9b19-734f1195ff37"
          name="256 MB Server">
      <atom:link
          rel="self"
          href="http://servers.api.openstack.org/v2/1234/flavors/52415800-8b69-11e0-9b19-734f1195ff37"/>
      <atom:link
          rel="bookmark"
          href="http://servers.api.openstack.org/1234/flavors/52415800-8b69-11e0-9b19-734f1195ff37"/>
  </flavor>
  <metadata>
    <meta key="My Server Name">Apache1</meta>
  </metadata>
  <addresses>
    <network id="public">
      <ip version="4" addr="67.23.10.138"/>
      <ip version="6" addr="::babe:67.23.10.138"/>
    </network>
    <network id="private">
      <ip version="4" addr="10.176.42.19"/>
      <ip version="6" addr="::babe:10.176.42.19"/>
    </network>
  </addresses>
  <atom:link
      rel="self"
      href="http://servers.api.openstack.org/v2/1234/servers/52415800-8b69-11e0-9b19-734fcece0043"/>
  <atom:link
      rel="bookmark"
      href="http://servers.api.openstack.org/1234/servers/52415800-8b69-11e0-9b19-734fcece0043"/>
</server>
DELETE
/v2/​{tenant_id}​/servers/​{server_id}​
Delete server

Deletes a specified server.

 

Preconditions

  • The specified server must exist.

  • Anyone can delete a server when the server's status is not locked.

  • You can delete a server which status is not locked.

  • If the specified server is locked, you need to have administrator privileges to delete the server.

Asynchronous postconditions

  • With correct permissions, you can see the specified server status as DELETED through API calls.

  • The port attached to the specified server is deleted.

  • The server is deleted from the list of servers returned by an API call.

  • The server managed by OpenStack Compute is deleted on the compute node.

Troubleshooting

  • If server status remains in deleting or shows another error status, the request failed. Ensure you meet the preconditions then investigate the compute back end.

  • The request returns the HTTP 409 status code when the server is locked even if you have a correct permissions. Ensure you meet the preconditions then investigate the server status.

  • The server managed by OpenStack Compute is not deleted from the compute node.

Normal response codes
204
Error response codes
computeFault (400, 500, …), serviceUnavailable (503), badRequest (400), unauthorized (401), forbidden (403), badMethod (405), overLimit (413), itemNotFound (404)
Request parameters
Parameter Style Type Description
tenant_id URI csapi:UUID

The tenant ID in a multi-tenancy cloud.

server_id URI csapi:UUID

The UUID for the server.

This operation does not accept a request body and does not return a response body.

Server metadata

Shows details for, sets, updates, and deletes server metadata and metadata items.

GET
/v2/​{tenant_id}​/servers/metadata
Show server metadata

Shows metadata for a specified server.

 
Normal response codes
200, 203
Error response codes
computeFault (400, 500, …), serviceUnavailable (503), badRequest (400), unauthorized (401), forbidden (403), badMethod (405), overLimit (413), itemNotFound (404)
Request parameters
Parameter Style Type Description
tenant_id URI csapi:UUID

The tenant ID in a multi-tenancy cloud.

Response parameters
Parameter Style Type Description
X-Compute-Request-ID (Optional) header xsd:string

Returns a unique identifier to provide tracking for the request. The request ID that is associated with the request appears in the log lines for that request. By default, the middleware configuration ensures that the request ID appears in the log files.

next (Optional) plain xsd:anyURI

Moves to the next metadata item.

previous (Optional) plain xsd:anyURI

Moves to the previous metadata item.

{
    "metadata": {
        "foo": "Foo Value"
    }
}
<?xml version='1.0' encoding='UTF-8'?>
<metadata xmlns="http://docs.openstack.org/compute/api/v1.1">
  <meta key="foo">Foo Value</meta>
</metadata>

This operation does not accept a request body.

PUT
/v2/​{tenant_id}​/servers/metadata
Create or replace server metadata items

Creates or replaces metadata items for a specified server.

 

All existing metadata items are removed and completely replaced by the metadata items in the request.

If this operation exceeds the metadata items quota, the API throws an overLimit (413) fault.

Normal response codes
200
Error response codes
computeFault (400, 500, …), serviceUnavailable (503), badRequest (400), unauthorized (401), forbidden (403), badMethod (405), overLimit (413), itemNotFound (404), badMediaType (415), NetworkNotFound (400), buildInProgress (409)
Request parameters
Parameter Style Type Description
tenant_id URI csapi:UUID

The tenant ID in a multi-tenancy cloud.

Response parameters
Parameter Style Type Description
next (Optional) plain xsd:anyURI

Moves to the next metadata item.

previous (Optional) plain xsd:anyURI

Moves to the previous metadata item.

{
    "metadata": {
        "name": "test_server"
    }
}
<?xml version='1.0' encoding='UTF-8'?>
<metadata xmlns="http://docs.openstack.org/compute/api/v1.1">
    <meta key="type">staging_server</meta>
</metadata>
{
    "metadata": {
        "name": "test_server"
    }
}
<?xml version='1.0' encoding='UTF-8'?>
<metadata xmlns="http://docs.openstack.org/compute/api/v1.1">
    <meta key="type">staging_server</meta>
</metadata>
POST
/v2/​{tenant_id}​/servers/metadata
Update server metadata items

Updates metadata items by key for a specified server.

 

Replaces items that match the specified keys and does not modify items not specified in the request.

If this operation exceeds the metadata items quota, the API throws an overLimit (413) fault.

Normal response codes
200
Error response codes
computeFault (400, 500, …), serviceUnavailable (503), badRequest (400), unauthorized (401), forbidden (403), badMethod (405), overLimit (413), itemNotFound (404), badMediaType (415), NetworkNotFound (400), buildInProgress (409)
Request parameters
Parameter Style Type Description
tenant_id URI csapi:UUID

The tenant ID in a multi-tenancy cloud.

Response parameters
Parameter Style Type Description
next (Optional) plain xsd:anyURI

Moves to the next metadata item.

previous (Optional) plain xsd:anyURI

Moves to the previous metadata item.

{
    "metadata": {
        "name": "test_server"
    }
}
<?xml version='1.0' encoding='UTF-8'?>
<metadata xmlns="http://docs.openstack.org/compute/api/v1.1">
    <meta key="type">staging_server</meta>
</metadata>
{
    "metadata": {
        "name": "test_server"
    }
}
<?xml version='1.0' encoding='UTF-8'?>
<metadata xmlns="http://docs.openstack.org/compute/api/v1.1">
    <meta key="type">staging_server</meta>
</metadata>
GET
/v2/​{tenant_id}​/servers/metadata/​{key}​
Show server metadata item details

Shows details for a metadata item by key for a specified server.

 
Normal response codes
200, 203
Error response codes
computeFault (400, 500, …), serviceUnavailable (503), badRequest (400), unauthorized (401), forbidden (403), badMethod (405), overLimit (413), itemNotFound (404)
Request parameters
Parameter Style Type Description
tenant_id URI csapi:UUID

The tenant ID in a multi-tenancy cloud.

key URI csapi:MetadataKey

A string. Maximum length is 255 characters.

Response parameters
Parameter Style Type Description
X-Compute-Request-ID (Optional) header xsd:string

Returns a unique identifier to provide tracking for the request. The request ID that is associated with the request appears in the log lines for that request. By default, the middleware configuration ensures that the request ID appears in the log files.

{
    "metadata": {
        "name": "test_server"
    }
}
<?xml version='1.0' encoding='UTF-8'?>
<metadata xmlns="http://docs.openstack.org/compute/api/v1.1">
    <meta key="type">staging_server</meta>
</metadata>

This operation does not accept a request body.

PUT
/v2/​{tenant_id}​/servers/metadata/​{key}​
Create or update server metadata item

Sets a metadata item by key for a specified server.

 

If this operation exceeds the metadata items quota, the API throws an overLimit (413) fault.

Normal response codes
200
Error response codes
computeFault (400, 500, …), serviceUnavailable (503), badRequest (400), unauthorized (401), forbidden (403), badMethod (405), overLimit (413), itemNotFound (404), badMediaType (415), NetworkNotFound (400), buildInProgress (409)
Request parameters
Parameter Style Type Description
tenant_id URI csapi:UUID

The tenant ID in a multi-tenancy cloud.

key URI csapi:MetadataKey

A string. Maximum length is 255 characters.

{
    "metadata": {
        "name": "test_server"
    }
}
<?xml version='1.0' encoding='UTF-8'?>
<metadata xmlns="http://docs.openstack.org/compute/api/v1.1">
    <meta key="type">staging_server</meta>
</metadata>
{
    "metadata": {
        "name": "test_server"
    }
}
<?xml version='1.0' encoding='UTF-8'?>
<metadata xmlns="http://docs.openstack.org/compute/api/v1.1">
    <meta key="type">staging_server</meta>
</metadata>
DELETE
/v2/​{tenant_id}​/servers/metadata/​{key}​
Delete server metadata item

Deletes a metadata item by key for a specified server.

 
Normal response codes
204
Error response codes
computeFault (400, 500, …), serviceUnavailable (503), badRequest (400), unauthorized (401), forbidden (403), badMethod (405), overLimit (413), itemNotFound (404), buildInProgress (409)
Request parameters
Parameter Style Type Description
tenant_id URI csapi:UUID

The tenant ID in a multi-tenancy cloud.

key URI csapi:MetadataKey

A string. Maximum length is 255 characters.

This operation does not accept a request body and does not return a response body.

Server addresses

Lists addresses for a specified server or a specified server and network.

GET
/v2/​{tenant_id}​/servers/ips
List addresses

Lists networks and addresses for a specified tenant and server.

 

Specify the tenant ID and server ID in the URI.

Normal response codes
200, 203
Error response codes
computeFault (400, 500, …), serviceUnavailable (503), badRequest (400), unauthorized (401), forbidden (403), badMethod (405), overLimit (413), itemNotFound (404), buildInProgress (409)
Request parameters
Parameter Style Type Description
tenant_id URI csapi:UUID

The tenant ID in a multi-tenancy cloud.

Response parameters
Parameter Style Type Description
X-Compute-Request-ID (Optional) header xsd:string

Returns a unique identifier to provide tracking for the request. The request ID that is associated with the request appears in the log lines for that request. By default, the middleware configuration ensures that the request ID appears in the log files.

{
    "addresses": {
        "public": [
            {
                "version": 4,
                "addr": "67.23.10.132"
            },
            {
                "version": 6,
                "addr": "::babe:67.23.10.132"
            },
            {
                "version": 4,
                "addr": "67.23.10.131"
            },
            {
                "version": 6,
                "addr": "::babe:4317:0A83"
            }
        ],
        "private": [
            {
                "version": 4,
                "addr": "10.176.42.16"
            },
            {
                "version": 6,
                "addr": "::babe:10.176.42.16"
            }
        ]
    }
}
<?xml version="1.0" encoding="UTF-8"?>
<addresses xmlns="http://docs.openstack.org/compute/api/v1.1">
    <network id="public">
        <ip version="4" addr="67.23.10.132"/>
        <ip version="6" addr="::babe:67.23.10.132"/>
        <ip version="4" addr="67.23.10.131"/>
        <ip version="6" addr="::babe:4317:0A83"/>
    </network>
    <network id="private">
        <ip version="4" addr="10.176.42.16"/>
        <ip version="6" addr="::babe:10.176.42.16"/>
    </network>
</addresses>

This operation does not accept a request body.

GET
/v2/​{tenant_id}​/servers/ips
List addresses by network

Lists addresses for a specified tenant, server, and network.

 

Specify the tenant ID, server ID, and network label in the request URI.

Normal response codes
200, 203
Error response codes
computeFault (400, 500, …), serviceUnavailable (503), badRequest (400), unauthorized (401), forbidden (403), badMethod (405), overLimit (413), itemNotFound (404), buildInProgress (409)
Request parameters
Parameter Style Type Description
tenant_id URI csapi:UUID

The tenant ID in a multi-tenancy cloud.

Response parameters
Parameter Style Type Description
X-Compute-Request-ID (Optional) header xsd:string

Returns a unique identifier to provide tracking for the request. The request ID that is associated with the request appears in the log lines for that request. By default, the middleware configuration ensures that the request ID appears in the log files.

{
    "network": {
        "id": "public",
        "ip": [
            {
                "version": 4,
                "addr": "67.23.10.132"
            },
            {
                "version": 6,
                "addr": "::babe:67.23.10.132"
            },
            {
                "version": 4,
                "addr": "67.23.10.131"
            },
            {
                "version": 6,
                "addr": "::babe:4317:0A83"
            }
        ]
    }
}
<?xml version="1.0" encoding="UTF-8"?>
<network xmlns="http://docs.openstack.org/compute/api/v1.1"
         id="public">
    <ip version="4" addr="67.23.10.132"/>
    <ip version="6" addr="::babe:67.23.10.132"/>
    <ip version="4" addr="67.23.10.131"/>
    <ip version="6" addr="::babe:4317:0A83"/>
</network>

This operation does not accept a request body.

Server actions

Performs actions for a specified server: Changes administrator password, reboots, rebuilds, and resizes servers, and creates an image from a server.

POST
/v2/​{tenant_id}​/servers/action
Change password

Changes the password for a server. Specify the changePassword action in the request body.

 
Normal response codes
202
Error response codes
computeFault (400, 500, …), serviceUnavailable (503), badRequest (400), unauthorized (401), forbidden (403), badMethod (405), overLimit (413), itemNotFound (404), badMediaType (415), NetworkNotFound (400), buildInProgress (409)
Request parameters
Parameter Style Type Description
tenant_id URI csapi:UUID

The tenant ID in a multi-tenancy cloud.

{
    "changePassword": {
        "adminPass": "foo"
    }
}
<?xml version="1.0" encoding="UTF-8"?>
<changePassword
    xmlns="http://docs.openstack.org/compute/api/v1.1"
    adminPass="foo"/>

This operation does not return a response body.

POST
/v2/​{tenant_id}​/servers/action
Reboot server

Reboots the specified server. Specify the reboot action in the request body.

 
Normal response codes
202
Error response codes
computeFault (400, 500, …), serviceUnavailable (503), badRequest (400), unauthorized (401), forbidden (403), badMethod (405), overLimit (413), itemNotFound (404), badMediaType (415), NetworkNotFound (400), HTTPUnprocessableEntity (422), buildInProgress (409)
Request parameters
Parameter Style Type Description
tenant_id URI csapi:UUID

The tenant ID in a multi-tenancy cloud.

type plain xsd:string

The type of reboot. Valid values are:

  • SOFT. Signal the operating system to restart.

  • HARD. Restart the server. Equivalent to power cycling the server.

{
    "reboot": {
        "type": "SOFT"
    }
}
<?xml version="1.0" encoding="UTF-8"?>
<reboot
    xmlns="http://docs.openstack.org/compute/api/v1.1"
    type="SOFT"/>

This operation does not return a response body.

POST
/v2/​{tenant_id}​/servers/action
Rebuild server

Rebuilds the specified server. Specify the rebuild action in the request body.

 
Normal response codes
202
Error response codes
computeFault (400, 500, …), serviceUnavailable (503), badRequest (400), unauthorized (401), forbidden (403), badMethod (405), overLimit (413), itemNotFound (404), badMediaType (415), NetworkNotFound (400), serverCapacityUnavailable (503), buildInProgress (409)
Request parameters
Parameter Style Type Description
tenant_id URI csapi:UUID

The tenant ID in a multi-tenancy cloud.

Response parameters
Parameter Style Type Description
Location header xsd:anyURI

Specific URL of the server you want to rebuild.

{
    "rebuild": {
        "imageRef": "http://openstack.example.com/v2/32278/images/70a599e0-31e7-49b7-b260-868f441e862b",
        "name": "foobar",
        "adminPass": "seekr3t",
        "accessIPv4": "1.2.3.4",
        "accessIPv6": "fe80::100",
        "metadata": {
            "meta var": "meta val"
        },
        "personality": [
            {
                "path": "/etc/banner.txt",
                "contents": "ICAgICAgDQoiQSBjbG91ZCBkb2VzIG5vdCBrbm93IHdoeSBp dCBtb3ZlcyBpbiBqdXN0IHN1Y2ggYSBkaXJlY3Rpb24gYW5k IGF0IHN1Y2ggYSBzcGVlZC4uLkl0IGZlZWxzIGFuIGltcHVs c2lvbi4uLnRoaXMgaXMgdGhlIHBsYWNlIHRvIGdvIG5vdy4g QnV0IHRoZSBza3kga25vd3MgdGhlIHJlYXNvbnMgYW5kIHRo ZSBwYXR0ZXJucyBiZWhpbmQgYWxsIGNsb3VkcywgYW5kIHlv dSB3aWxsIGtub3csIHRvbywgd2hlbiB5b3UgbGlmdCB5b3Vy c2VsZiBoaWdoIGVub3VnaCB0byBzZWUgYmV5b25kIGhvcml6 b25zLiINCg0KLVJpY2hhcmQgQmFjaA=="
            }
        ]
    }
}
<?xml version="1.0" encoding="UTF-8"?>
<rebuild
    xmlns="http://docs.openstack.org/compute/api/v1.1"
    name="foobar"
    imageRef="http://openstack.example.com/v1.1/32278/images/70a599e0-31e7-49b7-b260-868f441e862b"
    accessIPv4="1.2.3.4"
    accessIPv6="fe80::100"
    adminPass="seekr3t">
  <metadata>
    <meta key="My Server Name">Apache1</meta>
  </metadata>
  <personality>
    <file path="/etc/banner.txt">
        ICAgICAgDQoiQSBjbG91ZCBkb2VzIG5vdCBrbm93IHdoeSBp
        dCBtb3ZlcyBpbiBqdXN0IHN1Y2ggYSBkaXJlY3Rpb24gYW5k
        IGF0IHN1Y2ggYSBzcGVlZC4uLkl0IGZlZWxzIGFuIGltcHVs
        c2lvbi4uLnRoaXMgaXMgdGhlIHBsYWNlIHRvIGdvIG5vdy4g
        QnV0IHRoZSBza3kga25vd3MgdGhlIHJlYXNvbnMgYW5kIHRo
        ZSBwYXR0ZXJucyBiZWhpbmQgYWxsIGNsb3VkcywgYW5kIHlv
        dSB3aWxsIGtub3csIHRvbywgd2hlbiB5b3UgbGlmdCB5b3Vy
        c2VsZiBoaWdoIGVub3VnaCB0byBzZWUgYmV5b25kIGhvcml6
        b25zLiINCg0KLVJpY2hhcmQgQmFjaA==
    </file>
  </personality>
</rebuild>
{
    "server": {
        "accessIPv4": "1.2.3.4",
        "accessIPv6": "fe80::100",
        "addresses": {
            "private": [
                {
                    "addr": "192.168.0.3",
                    "version": 4
                }
            ]
        },
        "adminPass": "seekr3t",
        "created": "2012-09-12T17:20:36Z",
        "flavor": {
            "id": "1",
            "links": [
                {
                    "href": "http://openstack.example.com/openstack/flavors/1",
                    "rel": "bookmark"
                }
            ]
        },
        "hostId": "1e3da81662354c25560b7e5ea6d8123031f67168b6992f20bb84df69",
        "id": "075e40fe-9f03-4652-ba8e-5f8e2547899a",
        "image": {
            "id": "70a599e0-31e7-49b7-b260-868f441e862b",
            "links": [
                {
                    "href": "http://openstack.example.com/openstack/images/70a599e0-31e7-49b7-b260-868f441e862b",
                    "rel": "bookmark"
                }
            ]
        },
        "links": [
            {
                "href": "http://openstack.example.com/v2/openstack/servers/075e40fe-9f03-4652-ba8e-5f8e2547899a",
                "rel": "self"
            },
            {
                "href": "http://openstack.example.com/openstack/servers/075e40fe-9f03-4652-ba8e-5f8e2547899a",
                "rel": "bookmark"
            }
        ],
        "metadata": {
            "meta var": "meta val"
        },
        "name": "foobar",
        "progress": 0,
        "status": "ACTIVE",
        "tenant_id": "openstack",
        "updated": "2012-09-12T17:20:37Z",
        "user_id": "fake"
    }
}
<?xml version='1.0' encoding='UTF-8'?>
<server xmlns:atom="http://www.w3.org/2005/Atom" xmlns="http://docs.openstack.org/compute/api/v1.1" status="ACTIVE" updated="2012-09-14T16:41:46Z" hostId="a0e37e3bd9f674600aabeeccb123d80ae2717ace90893d79cd4abc46" name="foobar" created="2012-09-14T16:41:45Z" userId="fake" tenantId="openstack" accessIPv4="1.2.3.4" accessIPv6="fe80::100" progress="0" id="943acea5-2fc8-4f31-bab6-8f7b9ac923ca" adminPass="seekr3t">
  <image id="70a599e0-31e7-49b7-b260-868f441e862b">
    <atom:link href="http://openstack.example.com/openstack/images/70a599e0-31e7-49b7-b260-868f441e862b" rel="bookmark"/>
  </image>
  <flavor id="1">
    <atom:link href="http://openstack.example.com/openstack/flavors/1" rel="bookmark"/>
  </flavor>
  <metadata>
    <meta key="My Server Name">Apache1</meta>
  </metadata>
  <addresses>
    <network id="private">
      <ip version="4" addr="192.168.0.3"/>
    </network>
  </addresses>
  <atom:link href="http://openstack.example.com/v2/openstack/servers/943acea5-2fc8-4f31-bab6-8f7b9ac923ca" rel="self"/>
  <atom:link href="http://openstack.example.com/openstack/servers/943acea5-2fc8-4f31-bab6-8f7b9ac923ca" rel="bookmark"/>
</server>
POST
/v2/​{tenant_id}​/servers/action
Resize server

Resizes the specified server. Specify the resize action in the request body.

 

A successfully resized server shows the VERIFY_RESIZE status, RESIZED VM status, and finished migration status. If you set the auto_confirm option of the Compute service to True, the Compute service automatically confirms the resize operation.

Preconditions

  • You can only resize a server when its status is ACTIVE.

  • If the specified server is locked, you must have administrator privileges to resize the server.

Normal response codes
202
Error response codes
computeFault (400, 500, …), serviceUnavailable (503), badRequest (400), unauthorized (401), forbidden (403), badMethod (405), overLimit (413), itemNotFound (404), badMediaType (415), NetworkNotFound (400), serverCapacityUnavailable (503), buildInProgress (409)
Request parameters
Parameter Style Type Description
tenant_id URI csapi:UUID

The tenant ID in a multi-tenancy cloud.

{
    "resize": {
        "flavorRef": "2"
    }
}
<?xml version="1.0" encoding="UTF-8"?>
<resize
    xmlns="http://docs.openstack.org/compute/api/v1.1"
    flavorRef="2"/>

This operation does not return a response body.

POST
/v2/​{tenant_id}​/servers/action
Confirm resized server

Confirms a pending resize action. Specify the confirmResize action in the request body.

 

After you make this request, you typically must keep polling the server status to determine whether the request succeeded. A successfully confirming resize operation shows ACTIVE status and confirmed migration status. You can also see the resized server in the compute node that OpenStack Compute manages.

Preconditions

To confirm a pending resize action, these preconditions must be met:

  • Server status is VERIFY_RESIZED, VM status is RESIZED, and migration status is finished or confirming.

  • If the specified server is locked, you must have administrator privileges to confirm the server.

Troubleshooting

  • If the specified server status remains RESIZED, the request failed. Ensure you meet the preconditions and run the request again. If the request fails again, investigate the compute back end or ask your cloud provider.

Normal response codes
204
Error response codes
computeFault (400, 500, …), serviceUnavailable (503), badRequest (400), unauthorized (401), forbidden (403), badMethod (405), overLimit (413), itemNotFound (404), badMediaType (415), NetworkNotFound (400), serverCapacityUnavailable (503), buildInProgress (409)
Request parameters
Parameter Style Type Description
tenant_id URI csapi:UUID

The tenant ID in a multi-tenancy cloud.

{
    "confirmResize": null
}
<?xml version="1.0" encoding="UTF-8"?>
<confirmResize
    xmlns="http://docs.openstack.org/compute/api/v1.1"/>

This operation does not return a response body.

POST
/v2/​{tenant_id}​/servers/action
Revert resized server

Cancels and reverts a pending resize action. Specify the revertResize action in the request body.

 

After you make this request, you typically must keep polling the server status to determine whether the request succeeded. A successfully reverting resize operation shows ACTIVE status and reverted migration status. You can also see the reverted server in the compute node that OpenStack Compute manages.

Preconditions

To cancel and revert a pending resize action, these preconditions must be met:

  • Server status is VERIFY_RESIZE and VM status is RESIZED.

  • If the specified server is locked, you must have administrator privileges to revert the resizing.

Troubleshooting

  • If the specified server status remains RESIZED, the request failed. Ensure you meet the preconditions and run the request again. If the request fails again, investigate the compute back end.

  • The specified server is not reverted in the compute node that OpenStack Compute manages.

Normal response codes
202
Error response codes
computeFault (400, 500, …), serviceUnavailable (503), badRequest (400), unauthorized (401), forbidden (403), badMethod (405), overLimit (413), itemNotFound (404), badMediaType (415), NetworkNotFound (400), serverCapacityUnavailable (503), buildInProgress (409)
Request parameters
Parameter Style Type Description
tenant_id URI csapi:UUID

The tenant ID in a multi-tenancy cloud.

{
    "revertResize": null
}
<?xml version="1.0" encoding="UTF-8"?>
<revertResize
    xmlns="http://docs.openstack.org/compute/api/v1.1"/>

This operation does not return a response body.

POST
/v2/​{tenant_id}​/servers/action
Create image

Creates an image. Specify the createImage action in the request body.

 

After you make this request, you typically must keep polling the created image's status to determine whether the request succeeded. A successfully creating image operation shows the available image status and the server status reverts to its original status. You can also see the new image in the image back end that OpenStack Image service manages.

Preconditions

To create an image, these preconditions must be met:

  • The specified server must exist.

  • The server status is ACTIVE, PAUSED, or SUSPENDED.

  • The connection to the Image service is valid.

Troubleshooting

  • If the image status remains uploading or shows another error status, the request failed. Ensure you meet the preconditions and run the request again. If the request fails again, investigate the image back end.

  • If the server status does not go back to an original server's status, the request failed. Ensure you meet the preconditions, or check if there is another operation that causes race conditions for the server, then run the request again. If the request fails again, investigate the compute back end or ask your cloud provider.

  • If the request fails due to an error on OpenStack Compute service, the image is purged from the image store that OpenStack Image service manages. Ensure you meet the preconditions and run the request again. If the request fails again, investigate OpenStack Compute service or ask your cloud provider.

Normal response codes
202
Error response codes
computeFault (400, 500, …), backupOrResizeInProgress (409), serviceUnavailable (503), badRequest (400), unauthorized (401), forbidden (403), badMethod (405), overLimit (413), itemNotFound (404), badMediaType (415), NetworkNotFound (400), serverCapacityUnavailable (503), buildInProgress (409)
Request parameters
Parameter Style Type Description
tenant_id URI csapi:UUID

The tenant ID in a multi-tenancy cloud.

name plain csapi:ServerForCreate

Name of the snapshot.

createImage plain csapi:ServerForCreate

A dictionary representation of a creation for image.

metadata (Optional) plain csapi:ServerForCreate

Metadata key and value pairs. The maximum size of the metadata key and value is 255 bytes each.

Response parameters
Parameter Style Type Description
Location header xsd:anyURI
{
    "createImage": {
        "name": "foo-image",
        "metadata": {
            "myvar": "foobar"
        }
    }
}
<?xml version="1.0" encoding="UTF-8"?>
<createImage
    xmlns="http://docs.openstack.org/compute/api/v1.1"
    name="foo-image">
    <metadata>
        <meta key="myvar">foobar</meta>
    </metadata>
</createImage>

Flavors

Lists available flavors and gets details for a specified flavor. A flavor is a hardware configuration for a server. Each flavor is a unique combination of disk space and memory capacity.

GET
/v2/flavors
List flavors

Lists IDs, names, and links for available flavors.

 
Normal response codes
200, 203
Error response codes
computeFault (400, 500, …), serviceUnavailable (503), badRequest (400), unauthorized (401), forbidden (403), badMethod (405), overLimit (413)
Request parameters
Parameter Style Type Description
minDisk (Optional) query xsd:int

Integer value for the minimum disk space, in GB, so that you can filter results.

minRam (Optional) query xsd:int

Integer value for the minimum RAM, in MB, so that you can filter results.

limit (Optional) query xsd:int

Requests a specified page size of returned items from the query. Returns a number of items up to the specified limit value. Use the limit parameter to make an initial limited request and use the ID of the last-seen item from the response as the marker parameter value in a subsequent limited request.

marker (Optional) query xsd:string

Specifies the ID of the last-seen item. Use the limit parameter to make an initial limited request and use the ID of the last-seen item from the response as the marker parameter value in a subsequent limited request.

Response parameters
Parameter Style Type Description
X-Compute-Request-ID (Optional) header xsd:string

Returns a unique identifier to provide tracking for the request. The request ID that is associated with the request appears in the log lines for that request. By default, the middleware configuration ensures that the request ID appears in the log files.

flavors plain csapi:FlavorsWithOnlyIDsNamesLinks

Flavors are known combinations of memory, disk space, and number of CPUs.

next (Optional) plain xsd:anyURI

Moves to the next metadata item.

previous (Optional) plain xsd:anyURI

Moves to the previous metadata item.

{
    "flavors": [
        {
            "id": "1",
            "links": [
                {
                    "href": "http://openstack.example.com/v2/openstack/flavors/1",
                    "rel": "self"
                },
                {
                    "href": "http://openstack.example.com/openstack/flavors/1",
                    "rel": "bookmark"
                }
            ],
            "name": "m1.tiny"
        },
        {
            "id": "2",
            "links": [
                {
                    "href": "http://openstack.example.com/v2/openstack/flavors/2",
                    "rel": "self"
                },
                {
                    "href": "http://openstack.example.com/openstack/flavors/2",
                    "rel": "bookmark"
                }
            ],
            "name": "m1.small"
        },
        {
            "id": "3",
            "links": [
                {
                    "href": "http://openstack.example.com/v2/openstack/flavors/3",
                    "rel": "self"
                },
                {
                    "href": "http://openstack.example.com/openstack/flavors/3",
                    "rel": "bookmark"
                }
            ],
            "name": "m1.medium"
        },
        {
            "id": "4",
            "links": [
                {
                    "href": "http://openstack.example.com/v2/openstack/flavors/4",
                    "rel": "self"
                },
                {
                    "href": "http://openstack.example.com/openstack/flavors/4",
                    "rel": "bookmark"
                }
            ],
            "name": "m1.large"
        },
        {
            "id": "5",
            "links": [
                {
                    "href": "http://openstack.example.com/v2/openstack/flavors/5",
                    "rel": "self"
                },
                {
                    "href": "http://openstack.example.com/openstack/flavors/5",
                    "rel": "bookmark"
                }
            ],
            "name": "m1.xlarge"
        }
    ]
}
<?xml version='1.0' encoding='UTF-8'?>
<flavors xmlns:atom="http://www.w3.org/2005/Atom" xmlns="http://docs.openstack.org/compute/api/v1.1">
  <flavor name="m1.tiny" id="1">
    <atom:link href="http://openstack.example.com/v2/openstack/flavors/1" rel="self"/>
    <atom:link href="http://openstack.example.com/openstack/flavors/1" rel="bookmark"/>
  </flavor>
  <flavor name="m1.small" id="2">
    <atom:link href="http://openstack.example.com/v2/openstack/flavors/2" rel="self"/>
    <atom:link href="http://openstack.example.com/openstack/flavors/2" rel="bookmark"/>
  </flavor>
  <flavor name="m1.medium" id="3">
    <atom:link href="http://openstack.example.com/v2/openstack/flavors/3" rel="self"/>
    <atom:link href="http://openstack.example.com/openstack/flavors/3" rel="bookmark"/>
  </flavor>
  <flavor name="m1.large" id="4">
    <atom:link href="http://openstack.example.com/v2/openstack/flavors/4" rel="self"/>
    <atom:link href="http://openstack.example.com/openstack/flavors/4" rel="bookmark"/>
  </flavor>
  <flavor name="m1.xlarge" id="5">
    <atom:link href="http://openstack.example.com/v2/openstack/flavors/5" rel="self"/>
    <atom:link href="http://openstack.example.com/openstack/flavors/5" rel="bookmark"/>
  </flavor>
</flavors>
GET
/v2/flavors/detail
List details for flavors

Lists all details for available flavors.

 
Normal response codes
200, 203
Error response codes
computeFault (400, 500, …), serviceUnavailable (503), badRequest (400), unauthorized (401), forbidden (403), badMethod (405), overLimit (413)
Request parameters
Parameter Style Type Description
minDisk (Optional) query xsd:int

Integer value for the minimum disk space, in GB, so that you can filter results.

minRam (Optional) query xsd:int

Integer value for the minimum RAM, in MB, so that you can filter results.

limit (Optional) query xsd:int

Requests a specified page size of returned items from the query. Returns a number of items up to the specified limit value. Use the limit parameter to make an initial limited request and use the ID of the last-seen item from the response as the marker parameter value in a subsequent limited request.

marker (Optional) query xsd:string

Specifies the ID of the last-seen item. Use the limit parameter to make an initial limited request and use the ID of the last-seen item from the response as the marker parameter value in a subsequent limited request.

Response parameters
Parameter Style Type Description
X-Compute-Request-ID (Optional) header xsd:string

Returns a unique identifier to provide tracking for the request. The request ID that is associated with the request appears in the log lines for that request. By default, the middleware configuration ensures that the request ID appears in the log files.

next (Optional) plain xsd:anyURI

Moves to the next metadata item.

previous (Optional) plain xsd:anyURI

Moves to the previous metadata item.

{
    "flavors": [
        {
            "id": "1",
            "links": [
                {
                    "href": "http://openstack.example.com/v2/openstack/flavors/1",
                    "rel": "self"
                },
                {
                    "href": "http://openstack.example.com/openstack/flavors/1",
                    "rel": "bookmark"
                }
            ],
            "name": "m1.tiny"
        },
        {
            "id": "2",
            "links": [
                {
                    "href": "http://openstack.example.com/v2/openstack/flavors/2",
                    "rel": "self"
                },
                {
                    "href": "http://openstack.example.com/openstack/flavors/2",
                    "rel": "bookmark"
                }
            ],
            "name": "m1.small"
        },
        {
            "id": "3",
            "links": [
                {
                    "href": "http://openstack.example.com/v2/openstack/flavors/3",
                    "rel": "self"
                },
                {
                    "href": "http://openstack.example.com/openstack/flavors/3",
                    "rel": "bookmark"
                }
            ],
            "name": "m1.medium"
        },
        {
            "id": "4",
            "links": [
                {
                    "href": "http://openstack.example.com/v2/openstack/flavors/4",
                    "rel": "self"
                },
                {
                    "href": "http://openstack.example.com/openstack/flavors/4",
                    "rel": "bookmark"
                }
            ],
            "name": "m1.large"
        },
        {
            "id": "5",
            "links": [
                {
                    "href": "http://openstack.example.com/v2/openstack/flavors/5",
                    "rel": "self"
                },
                {
                    "href": "http://openstack.example.com/openstack/flavors/5",
                    "rel": "bookmark"
                }
            ],
            "name": "m1.xlarge"
        }
    ]
}
<?xml version='1.0' encoding='UTF-8'?>
<flavors xmlns:atom="http://www.w3.org/2005/Atom" xmlns="http://docs.openstack.org/compute/api/v1.1">
  <flavor name="m1.tiny" id="1">
    <atom:link href="http://openstack.example.com/v2/openstack/flavors/1" rel="self"/>
    <atom:link href="http://openstack.example.com/openstack/flavors/1" rel="bookmark"/>
  </flavor>
  <flavor name="m1.small" id="2">
    <atom:link href="http://openstack.example.com/v2/openstack/flavors/2" rel="self"/>
    <atom:link href="http://openstack.example.com/openstack/flavors/2" rel="bookmark"/>
  </flavor>
  <flavor name="m1.medium" id="3">
    <atom:link href="http://openstack.example.com/v2/openstack/flavors/3" rel="self"/>
    <atom:link href="http://openstack.example.com/openstack/flavors/3" rel="bookmark"/>
  </flavor>
  <flavor name="m1.large" id="4">
    <atom:link href="http://openstack.example.com/v2/openstack/flavors/4" rel="self"/>
    <atom:link href="http://openstack.example.com/openstack/flavors/4" rel="bookmark"/>
  </flavor>
  <flavor name="m1.xlarge" id="5">
    <atom:link href="http://openstack.example.com/v2/openstack/flavors/5" rel="self"/>
    <atom:link href="http://openstack.example.com/openstack/flavors/5" rel="bookmark"/>
  </flavor>
</flavors>
GET
/v2/flavors/​{flavor_id}​
Get flavor details

Gets details for a specified flavor.

 
Normal response codes
200, 203
Error response codes
computeFault (400, 500, …), serviceUnavailable (503), badRequest (400), unauthorized (401), forbidden (403), badMethod (405), overLimit (413), itemNotFound (404)
Request parameters
Parameter Style Type Description
flavor_id URI csapi:UUID

UUID for the specific flavor (combination of memory, disk size, and CPUs).

Response parameters
Parameter Style Type Description
X-Compute-Request-ID (Optional) header xsd:string

Returns a unique identifier to provide tracking for the request. The request ID that is associated with the request appears in the log lines for that request. By default, the middleware configuration ensures that the request ID appears in the log files.

{
    "flavor": {
        "disk": 1,
        "id": "1",
        "links": [
            {
                "href": "http://openstack.example.com/v2/openstack/flavors/1",
                "rel": "self"
            },
            {
                "href": "http://openstack.example.com/openstack/flavors/1",
                "rel": "bookmark"
            }
        ],
        "name": "m1.tiny",
        "ram": 512,
        "vcpus": 1
    }
}
<?xml version='1.0' encoding='UTF-8'?>
<flavor xmlns:atom="http://www.w3.org/2005/Atom" xmlns="http://docs.openstack.org/compute/api/v1.1" disk="1" vcpus="1" ram="512" name="m1.tiny" id="1">
  <atom:link href="http://openstack.example.com/v2/openstack/flavors/1" rel="self"/>
  <atom:link href="http://openstack.example.com/openstack/flavors/1" rel="bookmark"/>
</flavor>

This operation does not accept a request body.

Images

Lists, gets details for, and deletes images.

Also, sets, lists, gets details for, and deletes image metadata.

An image is a collection of files that you use to create and rebuild a server. By default, operators provide pre-built operating system images. You can also create custom images: See Computer server actions.

GET
/v2/images
List images

Lists IDs, names, and links for available images.

 
Normal response codes
200, 203
Error response codes
computeFault (400, 500, …), serviceUnavailable (503), badRequest (400), unauthorized (401), forbidden (403), badMethod (405), overLimit (413)
Request parameters
Parameter Style Type Description
changes-since (Optional) query xsd:dateTime

A time/date stamp for when the image last changed status.

server (Optional) query xsd:anyURI

Name of the server in URL format.

name (Optional) query xsd:string

Name of the image as a string.

status (Optional) query csapi:ImageStatus

Value of the status of the image so that you can filter on "ACTIVE" for example.

type (Optional) query xsd:string

Value of the type of image, such as snapshot or backup.

limit (Optional) query xsd:int

Requests a specified page size of returned items from the query. Returns a number of items up to the specified limit value. Use the limit parameter to make an initial limited request and use the ID of the last-seen item from the response as the marker parameter value in a subsequent limited request.

marker (Optional) query xsd:string

Specifies the ID of the last-seen item. Use the limit parameter to make an initial limited request and use the ID of the last-seen item from the response as the marker parameter value in a subsequent limited request.

Response parameters
Parameter Style Type Description
X-Compute-Request-ID (Optional) header xsd:string

Returns a unique identifier to provide tracking for the request. The request ID that is associated with the request appears in the log lines for that request. By default, the middleware configuration ensures that the request ID appears in the log files.

images plain csapi:ImagesWithOnlyIDsNamesLinks

Image information.

next (Optional) plain xsd:anyURI

Moves to the next metadata item.

previous (Optional) plain xsd:anyURI

Moves to the previous metadata item.

{
    "images": [
        {
            "id": "70a599e0-31e7-49b7-b260-868f441e862b",
            "links": [
                {
                    "href": "http://openstack.example.com/v2/openstack/images/70a599e0-31e7-49b7-b260-868f441e862b",
                    "rel": "self"
                },
                {
                    "href": "http://openstack.example.com/openstack/images/70a599e0-31e7-49b7-b260-868f441e862b",
                    "rel": "bookmark"
                },
                {
                    "href": "http://glance.openstack.example.com/openstack/images/70a599e0-31e7-49b7-b260-868f441e862b",
                    "rel": "alternate",
                    "type": "application/vnd.openstack.image"
                }
            ],
            "name": "fakeimage7"
        },
        {
            "id": "155d900f-4e14-4e4c-a73d-069cbf4541e6",
            "links": [
                {
                    "href": "http://openstack.example.com/v2/openstack/images/155d900f-4e14-4e4c-a73d-069cbf4541e6",
                    "rel": "self"
                },
                {
                    "href": "http://openstack.example.com/openstack/images/155d900f-4e14-4e4c-a73d-069cbf4541e6",
                    "rel": "bookmark"
                },
                {
                    "href": "http://glance.openstack.example.com/openstack/images/155d900f-4e14-4e4c-a73d-069cbf4541e6",
                    "rel": "alternate",
                    "type": "application/vnd.openstack.image"
                }
            ],
            "name": "fakeimage123456"
        },
        {
            "id": "a2459075-d96c-40d5-893e-577ff92e721c",
            "links": [
                {
                    "href": "http://openstack.example.com/v2/openstack/images/a2459075-d96c-40d5-893e-577ff92e721c",
                    "rel": "self"
                },
                {
                    "href": "http://openstack.example.com/openstack/images/a2459075-d96c-40d5-893e-577ff92e721c",
                    "rel": "bookmark"
                },
                {
                    "href": "http://glance.openstack.example.com/openstack/images/a2459075-d96c-40d5-893e-577ff92e721c",
                    "rel": "alternate",
                    "type": "application/vnd.openstack.image"
                }
            ],
            "name": "fakeimage123456"
        },
        {
            "id": "a440c04b-79fa-479c-bed1-0b816eaec379",
            "links": [
                {
                    "href": "http://openstack.example.com/v2/openstack/images/a440c04b-79fa-479c-bed1-0b816eaec379",
                    "rel": "self"
                },
                {
                    "href": "http://openstack.example.com/openstack/images/a440c04b-79fa-479c-bed1-0b816eaec379",
                    "rel": "bookmark"
                },
                {
                    "href": "http://glance.openstack.example.com/openstack/images/a440c04b-79fa-479c-bed1-0b816eaec379",
                    "rel": "alternate",
                    "type": "application/vnd.openstack.image"
                }
            ],
            "name": "fakeimage6"
        },
        {
            "id": "c905cedb-7281-47e4-8a62-f26bc5fc4c77",
            "links": [
                {
                    "href": "http://openstack.example.com/v2/openstack/images/c905cedb-7281-47e4-8a62-f26bc5fc4c77",
                    "rel": "self"
                },
                {
                    "href": "http://openstack.example.com/openstack/images/c905cedb-7281-47e4-8a62-f26bc5fc4c77",
                    "rel": "bookmark"
                },
                {
                    "href": "http://glance.openstack.example.com/openstack/images/c905cedb-7281-47e4-8a62-f26bc5fc4c77",
                    "rel": "alternate",
                    "type": "application/vnd.openstack.image"
                }
            ],
            "name": "fakeimage123456"
        },
        {
            "id": "cedef40a-ed67-4d10-800e-17455edce175",
            "links": [
                {
                    "href": "http://openstack.example.com/v2/openstack/images/cedef40a-ed67-4d10-800e-17455edce175",
                    "rel": "self"
                },
                {
                    "href": "http://openstack.example.com/openstack/images/cedef40a-ed67-4d10-800e-17455edce175",
                    "rel": "bookmark"
                },
                {
                    "href": "http://glance.openstack.example.com/openstack/images/cedef40a-ed67-4d10-800e-17455edce175",
                    "rel": "alternate",
                    "type": "application/vnd.openstack.image"
                }
            ],
            "name": "fakeimage123456"
        },
        {
            "id": "76fa36fc-c930-4bf3-8c8a-ea2a2420deb6",
            "links": [
                {
                    "href": "http://openstack.example.com/v2/openstack/images/76fa36fc-c930-4bf3-8c8a-ea2a2420deb6",
                    "rel": "self"
                },
                {
                    "href": "http://openstack.example.com/openstack/images/76fa36fc-c930-4bf3-8c8a-ea2a2420deb6",
                    "rel": "bookmark"
                },
                {
                    "href": "http://glance.openstack.example.com/openstack/images/76fa36fc-c930-4bf3-8c8a-ea2a2420deb6",
                    "rel": "alternate",
                    "type": "application/vnd.openstack.image"
                }
            ],
            "name": "fakeimage123456"
        }
    ]
}
<?xml version='1.0' encoding='UTF-8'?>
<images xmlns:atom="http://www.w3.org/2005/Atom" xmlns="http://docs.openstack.org/compute/api/v1.1">
  <image name="fakeimage7" id="70a599e0-31e7-49b7-b260-868f441e862b">
    <atom:link href="http://openstack.example.com/v2/openstack/images/70a599e0-31e7-49b7-b260-868f441e862b" rel="self"/>
    <atom:link href="http://openstack.example.com/openstack/images/70a599e0-31e7-49b7-b260-868f441e862b" rel="bookmark"/>
    <atom:link href="http://glance.openstack.example.com/openstack/images/70a599e0-31e7-49b7-b260-868f441e862b" type="application/vnd.openstack.image" rel="alternate"/>
  </image>
  <image name="fakeimage123456" id="155d900f-4e14-4e4c-a73d-069cbf4541e6">
    <atom:link href="http://openstack.example.com/v2/openstack/images/155d900f-4e14-4e4c-a73d-069cbf4541e6" rel="self"/>
    <atom:link href="http://openstack.example.com/openstack/images/155d900f-4e14-4e4c-a73d-069cbf4541e6" rel="bookmark"/>
    <atom:link href="http://glance.openstack.example.com/openstack/images/155d900f-4e14-4e4c-a73d-069cbf4541e6" type="application/vnd.openstack.image" rel="alternate"/>
  </image>
  <image name="fakeimage123456" id="a2459075-d96c-40d5-893e-577ff92e721c">
    <atom:link href="http://openstack.example.com/v2/openstack/images/a2459075-d96c-40d5-893e-577ff92e721c" rel="self"/>
    <atom:link href="http://openstack.example.com/openstack/images/a2459075-d96c-40d5-893e-577ff92e721c" rel="bookmark"/>
    <atom:link href="http://glance.openstack.example.com/openstack/images/a2459075-d96c-40d5-893e-577ff92e721c" type="application/vnd.openstack.image" rel="alternate"/>
  </image>
  <image name="fakeimage6" id="a440c04b-79fa-479c-bed1-0b816eaec379">
    <atom:link href="http://openstack.example.com/v2/openstack/images/a440c04b-79fa-479c-bed1-0b816eaec379" rel="self"/>
    <atom:link href="http://openstack.example.com/openstack/images/a440c04b-79fa-479c-bed1-0b816eaec379" rel="bookmark"/>
    <atom:link href="http://glance.openstack.example.com/openstack/images/a440c04b-79fa-479c-bed1-0b816eaec379" type="application/vnd.openstack.image" rel="alternate"/>
  </image>
  <image name="fakeimage123456" id="c905cedb-7281-47e4-8a62-f26bc5fc4c77">
    <atom:link href="http://openstack.example.com/v2/openstack/images/c905cedb-7281-47e4-8a62-f26bc5fc4c77" rel="self"/>
    <atom:link href="http://openstack.example.com/openstack/images/c905cedb-7281-47e4-8a62-f26bc5fc4c77" rel="bookmark"/>
    <atom:link href="http://glance.openstack.example.com/openstack/images/c905cedb-7281-47e4-8a62-f26bc5fc4c77" type="application/vnd.openstack.image" rel="alternate"/>
  </image>
  <image name="fakeimage123456" id="cedef40a-ed67-4d10-800e-17455edce175">
    <atom:link href="http://openstack.example.com/v2/openstack/images/cedef40a-ed67-4d10-800e-17455edce175" rel="self"/>
    <atom:link href="http://openstack.example.com/openstack/images/cedef40a-ed67-4d10-800e-17455edce175" rel="bookmark"/>
    <atom:link href="http://glance.openstack.example.com/openstack/images/cedef40a-ed67-4d10-800e-17455edce175" type="application/vnd.openstack.image" rel="alternate"/>
  </image>
  <image name="fakeimage123456" id="76fa36fc-c930-4bf3-8c8a-ea2a2420deb6">
    <atom:link href="http://openstack.example.com/v2/openstack/images/76fa36fc-c930-4bf3-8c8a-ea2a2420deb6" rel="self"/>
    <atom:link href="http://openstack.example.com/openstack/images/76fa36fc-c930-4bf3-8c8a-ea2a2420deb6" rel="bookmark"/>
    <atom:link href="http://glance.openstack.example.com/openstack/images/76fa36fc-c930-4bf3-8c8a-ea2a2420deb6" type="application/vnd.openstack.image" rel="alternate"/>
  </image>
</images>
GET
/v2/images/detail
List images details

Lists all details for available images.

 
Normal response codes
200, 203
Error response codes
computeFault (400, 500, …), serviceUnavailable (503), badRequest (400), unauthorized (401), forbidden (403), badMethod (405), overLimit (413)
Request parameters
Parameter Style Type Description
changes-since (Optional) query xsd:dateTime

A time/date stamp for when the image last changed status.

server (Optional) query xsd:anyURI

Name of the server in URL format.

name (Optional) query xsd:string

Name of the image as a string.

status (Optional) query csapi:ImageStatus

Value of the status of the image so that you can filter on "ACTIVE" for example.

type (Optional) query xsd:string

Value of the type of image, such as snapshot or backup.

limit (Optional) query xsd:int

Requests a specified page size of returned items from the query. Returns a number of items up to the specified limit value. Use the limit parameter to make an initial limited request and use the ID of the last-seen item from the response as the marker parameter value in a subsequent limited request.

marker (Optional) query xsd:string

Specifies the ID of the last-seen item. Use the limit parameter to make an initial limited request and use the ID of the last-seen item from the response as the marker parameter value in a subsequent limited request.

Response parameters
Parameter Style Type Description
X-Compute-Request-ID (Optional) header xsd:string

Returns a unique identifier to provide tracking for the request. The request ID that is associated with the request appears in the log lines for that request. By default, the middleware configuration ensures that the request ID appears in the log files.

next (Optional) plain xsd:anyURI

Moves to the next metadata item.

previous (Optional) plain xsd:anyURI

Moves to the previous metadata item.

{
    "images": [
        {
            "created": "2011-01-01T01:02:03Z",
            "id": "70a599e0-31e7-49b7-b260-868f441e862b",
            "links": [
                {
                    "href": "http://openstack.example.com/v2/openstack/images/70a599e0-31e7-49b7-b260-868f441e862b",
                    "rel": "self"
                },
                {
                    "href": "http://openstack.example.com/openstack/images/70a599e0-31e7-49b7-b260-868f441e862b",
                    "rel": "bookmark"
                },
                {
                    "href": "http://glance.openstack.example.com/openstack/images/70a599e0-31e7-49b7-b260-868f441e862b",
                    "rel": "alternate",
                    "type": "application/vnd.openstack.image"
                }
            ],
            "metadata": {
                "architecture": "x86_64",
                "auto_disk_config": "True",
                "kernel_id": "nokernel",
                "ramdisk_id": "nokernel"
            },
            "minDisk": 0,
            "minRam": 0,
            "name": "fakeimage7",
            "progress": 100,
            "status": "ACTIVE",
            "updated": "2011-01-01T01:02:03Z"
        },
        {
            "created": "2011-01-01T01:02:03Z",
            "id": "155d900f-4e14-4e4c-a73d-069cbf4541e6",
            "links": [
                {
                    "href": "http://openstack.example.com/v2/openstack/images/155d900f-4e14-4e4c-a73d-069cbf4541e6",
                    "rel": "self"
                },
                {
                    "href": "http://openstack.example.com/openstack/images/155d900f-4e14-4e4c-a73d-069cbf4541e6",
                    "rel": "bookmark"
                },
                {
                    "href": "http://glance.openstack.example.com/openstack/images/155d900f-4e14-4e4c-a73d-069cbf4541e6",
                    "rel": "alternate",
                    "type": "application/vnd.openstack.image"
                }
            ],
            "metadata": {
                "architecture": "x86_64",
                "kernel_id": "nokernel",
                "ramdisk_id": "nokernel"
            },
            "minDisk": 0,
            "minRam": 0,
            "name": "fakeimage123456",
            "progress": 100,
            "status": "ACTIVE",
            "updated": "2011-01-01T01:02:03Z"
        },
        {
            "created": "2011-01-01T01:02:03Z",
            "id": "a2459075-d96c-40d5-893e-577ff92e721c",
            "links": [
                {
                    "href": "http://openstack.example.com/v2/openstack/images/a2459075-d96c-40d5-893e-577ff92e721c",
                    "rel": "self"
                },
                {
                    "href": "http://openstack.example.com/openstack/images/a2459075-d96c-40d5-893e-577ff92e721c",
                    "rel": "bookmark"
                },
                {
                    "href": "http://glance.openstack.example.com/openstack/images/a2459075-d96c-40d5-893e-577ff92e721c",
                    "rel": "alternate",
                    "type": "application/vnd.openstack.image"
                }
            ],
            "metadata": {
                "kernel_id": "nokernel",
                "ramdisk_id": "nokernel"
            },
            "minDisk": 0,
            "minRam": 0,
            "name": "fakeimage123456",
            "progress": 100,
            "status": "ACTIVE",
            "updated": "2011-01-01T01:02:03Z"
        },
        {
            "created": "2011-01-01T01:02:03Z",
            "id": "a440c04b-79fa-479c-bed1-0b816eaec379",
            "links": [
                {
                    "href": "http://openstack.example.com/v2/openstack/images/a440c04b-79fa-479c-bed1-0b816eaec379",
                    "rel": "self"
                },
                {
                    "href": "http://openstack.example.com/openstack/images/a440c04b-79fa-479c-bed1-0b816eaec379",
                    "rel": "bookmark"
                },
                {
                    "href": "http://glance.openstack.example.com/openstack/images/a440c04b-79fa-479c-bed1-0b816eaec379",
                    "rel": "alternate",
                    "type": "application/vnd.openstack.image"
                }
            ],
            "metadata": {
                "architecture": "x86_64",
                "auto_disk_config": "False",
                "kernel_id": "nokernel",
                "ramdisk_id": "nokernel"
            },
            "minDisk": 0,
            "minRam": 0,
            "name": "fakeimage6",
            "progress": 100,
            "status": "ACTIVE",
            "updated": "2011-01-01T01:02:03Z"
        },
        {
            "created": "2011-01-01T01:02:03Z",
            "id": "c905cedb-7281-47e4-8a62-f26bc5fc4c77",
            "links": [
                {
                    "href": "http://openstack.example.com/v2/openstack/images/c905cedb-7281-47e4-8a62-f26bc5fc4c77",
                    "rel": "self"
                },
                {
                    "href": "http://openstack.example.com/openstack/images/c905cedb-7281-47e4-8a62-f26bc5fc4c77",
                    "rel": "bookmark"
                },
                {
                    "href": "http://glance.openstack.example.com/openstack/images/c905cedb-7281-47e4-8a62-f26bc5fc4c77",
                    "rel": "alternate",
                    "type": "application/vnd.openstack.image"
                }
            ],
            "metadata": {
                "kernel_id": "155d900f-4e14-4e4c-a73d-069cbf4541e6",
                "ramdisk_id": null
            },
            "minDisk": 0,
            "minRam": 0,
            "name": "fakeimage123456",
            "progress": 100,
            "status": "ACTIVE",
            "updated": "2011-01-01T01:02:03Z"
        },
        {
            "created": "2011-01-01T01:02:03Z",
            "id": "cedef40a-ed67-4d10-800e-17455edce175",
            "links": [
                {
                    "href": "http://openstack.example.com/v2/openstack/images/cedef40a-ed67-4d10-800e-17455edce175",
                    "rel": "self"
                },
                {
                    "href": "http://openstack.example.com/openstack/images/cedef40a-ed67-4d10-800e-17455edce175",
                    "rel": "bookmark"
                },
                {
                    "href": "http://glance.openstack.example.com/openstack/images/cedef40a-ed67-4d10-800e-17455edce175",
                    "rel": "alternate",
                    "type": "application/vnd.openstack.image"
                }
            ],
            "metadata": {
                "kernel_id": "nokernel",
                "ramdisk_id": "nokernel"
            },
            "minDisk": 0,
            "minRam": 0,
            "name": "fakeimage123456",
            "progress": 100,
            "status": "ACTIVE",
            "updated": "2011-01-01T01:02:03Z"
        },
        {
            "created": "2011-01-01T01:02:03Z",
            "id": "76fa36fc-c930-4bf3-8c8a-ea2a2420deb6",
            "links": [
                {
                    "href": "http://openstack.example.com/v2/openstack/images/76fa36fc-c930-4bf3-8c8a-ea2a2420deb6",
                    "rel": "self"
                },
                {
                    "href": "http://openstack.example.com/openstack/images/76fa36fc-c930-4bf3-8c8a-ea2a2420deb6",
                    "rel": "bookmark"
                },
                {
                    "href": "http://glance.openstack.example.com/openstack/images/76fa36fc-c930-4bf3-8c8a-ea2a2420deb6",
                    "rel": "alternate",
                    "type": "application/vnd.openstack.image"
                }
            ],
            "metadata": {
                "kernel_id": "nokernel",
                "ramdisk_id": "nokernel"
            },
            "minDisk": 0,
            "minRam": 0,
            "name": "fakeimage123456",
            "progress": 100,
            "status": "ACTIVE",
            "updated": "2011-01-01T01:02:03Z"
        }
    ]
}
<?xml version='1.0' encoding='UTF-8'?>
<images xmlns:atom="http://www.w3.org/2005/Atom" xmlns="http://docs.openstack.org/compute/api/v1.1">
  <image status="ACTIVE" updated="2011-01-01T01:02:03Z" name="fakeimage7" created="2011-01-01T01:02:03Z" minDisk="0" progress="100" minRam="0" id="70a599e0-31e7-49b7-b260-868f441e862b">
    <metadata>
      <meta key="kernel_id">nokernel</meta>
      <meta key="auto_disk_config">True</meta>
      <meta key="ramdisk_id">nokernel</meta>
      <meta key="architecture">x86_64</meta>
    </metadata>
    <atom:link href="http://openstack.example.com/v2/openstack/images/70a599e0-31e7-49b7-b260-868f441e862b" rel="self"/>
    <atom:link href="http://openstack.example.com/openstack/images/70a599e0-31e7-49b7-b260-868f441e862b" rel="bookmark"/>
    <atom:link href="http://glance.openstack.example.com/openstack/images/70a599e0-31e7-49b7-b260-868f441e862b" type="application/vnd.openstack.image" rel="alternate"/>
  </image>
  <image status="ACTIVE" updated="2011-01-01T01:02:03Z" name="fakeimage123456" created="2011-01-01T01:02:03Z" minDisk="0" progress="100" minRam="0" id="155d900f-4e14-4e4c-a73d-069cbf4541e6">
    <metadata>
      <meta key="kernel_id">nokernel</meta>
      <meta key="ramdisk_id">nokernel</meta>
      <meta key="architecture">x86_64</meta>
    </metadata>
    <atom:link href="http://openstack.example.com/v2/openstack/images/155d900f-4e14-4e4c-a73d-069cbf4541e6" rel="self"/>
    <atom:link href="http://openstack.example.com/openstack/images/155d900f-4e14-4e4c-a73d-069cbf4541e6" rel="bookmark"/>
    <atom:link href="http://glance.openstack.example.com/openstack/images/155d900f-4e14-4e4c-a73d-069cbf4541e6" type="application/vnd.openstack.image" rel="alternate"/>
  </image>
  <image status="ACTIVE" updated="2011-01-01T01:02:03Z" name="fakeimage123456" created="2011-01-01T01:02:03Z" minDisk="0" progress="100" minRam="0" id="a2459075-d96c-40d5-893e-577ff92e721c">
    <metadata>
      <meta key="kernel_id">nokernel</meta>
      <meta key="ramdisk_id">nokernel</meta>
    </metadata>
    <atom:link href="http://openstack.example.com/v2/openstack/images/a2459075-d96c-40d5-893e-577ff92e721c" rel="self"/>
    <atom:link href="http://openstack.example.com/openstack/images/a2459075-d96c-40d5-893e-577ff92e721c" rel="bookmark"/>
    <atom:link href="http://glance.openstack.example.com/openstack/images/a2459075-d96c-40d5-893e-577ff92e721c" type="application/vnd.openstack.image" rel="alternate"/>
  </image>
  <image status="ACTIVE" updated="2011-01-01T01:02:03Z" name="fakeimage6" created="2011-01-01T01:02:03Z" minDisk="0" progress="100" minRam="0" id="a440c04b-79fa-479c-bed1-0b816eaec379">
    <metadata>
      <meta key="kernel_id">nokernel</meta>
      <meta key="auto_disk_config">False</meta>
      <meta key="ramdisk_id">nokernel</meta>
      <meta key="architecture">x86_64</meta>
    </metadata>
    <atom:link href="http://openstack.example.com/v2/openstack/images/a440c04b-79fa-479c-bed1-0b816eaec379" rel="self"/>
    <atom:link href="http://openstack.example.com/openstack/images/a440c04b-79fa-479c-bed1-0b816eaec379" rel="bookmark"/>
    <atom:link href="http://glance.openstack.example.com/openstack/images/a440c04b-79fa-479c-bed1-0b816eaec379" type="application/vnd.openstack.image" rel="alternate"/>
  </image>
  <image status="ACTIVE" updated="2011-01-01T01:02:03Z" name="fakeimage123456" created="2011-01-01T01:02:03Z" minDisk="0" progress="100" minRam="0" id="c905cedb-7281-47e4-8a62-f26bc5fc4c77">
    <metadata>
      <meta key="kernel_id">155d900f-4e14-4e4c-a73d-069cbf4541e6</meta>
      <meta key="ramdisk_id">None</meta>
    </metadata>
    <atom:link href="http://openstack.example.com/v2/openstack/images/c905cedb-7281-47e4-8a62-f26bc5fc4c77" rel="self"/>
    <atom:link href="http://openstack.example.com/openstack/images/c905cedb-7281-47e4-8a62-f26bc5fc4c77" rel="bookmark"/>
    <atom:link href="http://glance.openstack.example.com/openstack/images/c905cedb-7281-47e4-8a62-f26bc5fc4c77" type="application/vnd.openstack.image" rel="alternate"/>
  </image>
  <image status="ACTIVE" updated="2011-01-01T01:02:03Z" name="fakeimage123456" created="2011-01-01T01:02:03Z" minDisk="0" progress="100" minRam="0" id="cedef40a-ed67-4d10-800e-17455edce175">
    <metadata>
      <meta key="kernel_id">nokernel</meta>
      <meta key="ramdisk_id">nokernel</meta>
    </metadata>
    <atom:link href="http://openstack.example.com/v2/openstack/images/cedef40a-ed67-4d10-800e-17455edce175" rel="self"/>
    <atom:link href="http://openstack.example.com/openstack/images/cedef40a-ed67-4d10-800e-17455edce175" rel="bookmark"/>
    <atom:link href="http://glance.openstack.example.com/openstack/images/cedef40a-ed67-4d10-800e-17455edce175" type="application/vnd.openstack.image" rel="alternate"/>
  </image>
  <image status="ACTIVE" updated="2011-01-01T01:02:03Z" name="fakeimage123456" created="2011-01-01T01:02:03Z" minDisk="0" progress="100" minRam="0" id="76fa36fc-c930-4bf3-8c8a-ea2a2420deb6">
    <metadata>
      <meta key="kernel_id">nokernel</meta>
      <meta key="ramdisk_id">nokernel</meta>
    </metadata>
    <atom:link href="http://openstack.example.com/v2/openstack/images/76fa36fc-c930-4bf3-8c8a-ea2a2420deb6" rel="self"/>
    <atom:link href="http://openstack.example.com/openstack/images/76fa36fc-c930-4bf3-8c8a-ea2a2420deb6" rel="bookmark"/>
    <atom:link href="http://glance.openstack.example.com/openstack/images/76fa36fc-c930-4bf3-8c8a-ea2a2420deb6" type="application/vnd.openstack.image" rel="alternate"/>
  </image>
</images>
GET
/v2/images/​{image_id}​
Get image details

Gets details for a specified image.

 
Normal response codes
200, 203
Error response codes
computeFault (400, 500, …), serviceUnavailable (503), badRequest (400), unauthorized (401), forbidden (403), badMethod (405), overLimit (413), itemNotFound (404)
Request parameters
Parameter Style Type Description
image_id URI csapi:UUID

The UUID for the image.

Response parameters
Parameter Style Type Description
X-Compute-Request-ID (Optional) header xsd:string

Returns a unique identifier to provide tracking for the request. The request ID that is associated with the request appears in the log lines for that request. By default, the middleware configuration ensures that the request ID appears in the log files.

{
    "image": {
        "created": "2011-01-01T01:02:03Z",
        "id": "70a599e0-31e7-49b7-b260-868f441e862b",
        "links": [
            {
                "href": "http://openstack.example.com/v2/openstack/images/70a599e0-31e7-49b7-b260-868f441e862b",
                "rel": "self"
            },
            {
                "href": "http://openstack.example.com/openstack/images/70a599e0-31e7-49b7-b260-868f441e862b",
                "rel": "bookmark"
            },
            {
                "href": "http://glance.openstack.example.com/openstack/images/70a599e0-31e7-49b7-b260-868f441e862b",
                "rel": "alternate",
                "type": "application/vnd.openstack.image"
            }
        ],
        "metadata": {
            "architecture": "x86_64",
            "auto_disk_config": "True",
            "kernel_id": "nokernel",
            "ramdisk_id": "nokernel"
        },
        "minDisk": 0,
        "minRam": 0,
        "name": "fakeimage7",
        "progress": 100,
        "status": "ACTIVE",
        "updated": "2011-01-01T01:02:03Z"
    }
}
<?xml version='1.0' encoding='UTF-8'?>
<image xmlns:atom="http://www.w3.org/2005/Atom" xmlns="http://docs.openstack.org/compute/api/v1.1" status="ACTIVE" updated="2011-01-01T01:02:03Z" name="fakeimage7" created="2011-01-01T01:02:03Z" minDisk="0" progress="100" minRam="0" id="70a599e0-31e7-49b7-b260-868f441e862b">
  <metadata>
    <meta key="kernel_id">nokernel</meta>
    <meta key="auto_disk_config">True</meta>
    <meta key="ramdisk_id">nokernel</meta>
    <meta key="architecture">x86_64</meta>
  </metadata>
  <atom:link href="http://openstack.example.com/v2/openstack/images/70a599e0-31e7-49b7-b260-868f441e862b" rel="self"/>
  <atom:link href="http://openstack.example.com/openstack/images/70a599e0-31e7-49b7-b260-868f441e862b" rel="bookmark"/>
  <atom:link href="http://glance.openstack.example.com/openstack/images/70a599e0-31e7-49b7-b260-868f441e862b" type="application/vnd.openstack.image" rel="alternate"/>
</image>

This operation does not accept a request body.

DELETE
/v2/images/​{image_id}​
Delete image

Deletes a specified image.

 
Normal response codes
204
Error response codes
computeFault (400, 500, …), serviceUnavailable (503), badRequest (400), unauthorized (401), forbidden (403), badMethod (405), overLimit (413), itemNotFound (404)
Request parameters
Parameter Style Type Description
image_id URI csapi:UUID

The UUID for the image.

This operation does not accept a request body and does not return a response body.

Image metadata

Shows details for, sets, updates, and deletes image metadata or metadata items.

GET
/v2/images/​{image_id}​/metadata
Show image metadata

Shows metadata for a specified image.

 
Normal response codes
200, 203
Error response codes
computeFault (400, 500, …), serviceUnavailable (503), badRequest (400), unauthorized (401), forbidden (403), badMethod (405), overLimit (413), itemNotFound (404)
Request parameters
Parameter Style Type Description
image_id URI csapi:UUID

The UUID for the image.

Response parameters
Parameter Style Type Description
X-Compute-Request-ID (Optional) header xsd:string

Returns a unique identifier to provide tracking for the request. The request ID that is associated with the request appears in the log lines for that request. By default, the middleware configuration ensures that the request ID appears in the log files.

next (Optional) plain xsd:anyURI

Moves to the next metadata item.

previous (Optional) plain xsd:anyURI

Moves to the previous metadata item.

{
    "metadata": {
        "architecture": "x86_64",
        "auto_disk_config": "True",
        "kernel_id": "nokernel",
        "ramdisk_id": "nokernel"
    }
}
<?xml version='1.0' encoding='UTF-8'?>
<metadata xmlns="http://docs.openstack.org/compute/api/v1.1">
  <meta key="kernel_id">nokernel</meta>
  <meta key="auto_disk_config">True</meta>
  <meta key="ramdisk_id">nokernel</meta>
  <meta key="architecture">x86_64</meta>
</metadata>

This operation does not accept a request body.

PUT
/v2/images/​{image_id}​/metadata
Create or replace image metadata

Creates or replaces metadata for a specified image.

 

Replaces items that match the specified keys. If you omit a key that already exists, this key retains its value.

If this operation exceeds the metadata items quota, the API throws an overLimit (413) fault.

Normal response codes
200
Error response codes
computeFault (400, 500, …), serviceUnavailable (503), badRequest (400), unauthorized (401), forbidden (403), badMethod (405), overLimit (413), itemNotFound (404), badMediaType (415), NetworkNotFound (400), buildInProgress (409)
Request parameters
Parameter Style Type Description
image_id URI csapi:UUID

The UUID for the image.

Response parameters
Parameter Style Type Description
next (Optional) plain xsd:anyURI

Moves to the next metadata item.

previous (Optional) plain xsd:anyURI

Moves to the previous metadata item.

{
    "metadata": {
        "auto_disk_config": "True",
        "Label": "Changed"
    }
}
<?xml version="1.0" encoding="UTF-8"?>
<metadata xmlns="http://docs.openstack.org/compute/api/v1.1">
    <meta key="auto_disk_config">True</meta>
    <meta key="Label">Changed</meta>
</metadata>
{
    "metadata": {
        "Label": "Changed",
        "auto_disk_config": "True"
    }
}
<?xml version='1.0' encoding='UTF-8'?>
<metadata xmlns="http://docs.openstack.org/compute/api/v1.1">
  <meta key="auto_disk_config">True</meta>
  <meta key="Label">Changed</meta>
</metadata>
POST
/v2/images/​{image_id}​/metadata
Update image metadata items

Updates metadata items by key for a specified image.

 

Replaces items that match the specified keys and does not modify items not specified in the request.

If this operation exceeds the metadata items quota, the API throws an overLimit (413) fault.

Normal response codes
200
Error response codes
computeFault (400, 500, …), serviceUnavailable (503), badRequest (400), unauthorized (401), forbidden (403), badMethod (405), overLimit (413), itemNotFound (404), badMediaType (415), NetworkNotFound (400), buildInProgress (409)
Request parameters
Parameter Style Type Description
image_id URI csapi:UUID

The UUID for the image.

Response parameters
Parameter Style Type Description
next (Optional) plain xsd:anyURI

Moves to the next metadata item.

previous (Optional) plain xsd:anyURI

Moves to the previous metadata item.

{
    "metadata": {
        "kernel_id": "False",
        "Label": "UpdatedImage"
    }
}
<?xml version="1.0" encoding="UTF-8"?>
<metadata xmlns="http://docs.openstack.org/compute/api/v1.1">
    <meta key="kernel_id">False</meta>
    <meta key="Label">UpdatedImage</meta>
</metadata>
{
    "metadata": {
        "Label": "UpdatedImage",
        "architecture": "x86_64",
        "auto_disk_config": "True",
        "kernel_id": "False",
        "ramdisk_id": "nokernel"
    }
}
<?xml version='1.0' encoding='UTF-8'?>
<metadata xmlns="http://docs.openstack.org/compute/api/v1.1">
  <meta key="kernel_id">False</meta>
  <meta key="ramdisk_id">nokernel</meta>
  <meta key="Label">UpdatedImage</meta>
  <meta key="architecture">x86_64</meta>
  <meta key="auto_disk_config">True</meta>
</metadata>
GET
/v2/images/​{image_id}​/metadata/​{key}​
Show image metadata item details

Shows details for a metadata item by key for a specified image.

 
Normal response codes
200, 203
Error response codes
computeFault (400, 500, …), serviceUnavailable (503), badRequest (400), unauthorized (401), forbidden (403), badMethod (405), overLimit (413), itemNotFound (404)
Request parameters
Parameter Style Type Description
image_id URI csapi:UUID

The UUID for the image.

key URI csapi:imageMetadataKey

A string. Maximum length is 255 characters.

Response parameters
Parameter Style Type Description
X-Compute-Request-ID (Optional) header xsd:string

Returns a unique identifier to provide tracking for the request. The request ID that is associated with the request appears in the log lines for that request. By default, the middleware configuration ensures that the request ID appears in the log files.

{
    "metadata": {
        "architecture": "x86_64",
        "auto_disk_config": "True",
        "kernel_id": "nokernel",
        "ramdisk_id": "nokernel"
    }
}
<?xml version='1.0' encoding='UTF-8'?>
<metadata xmlns="http://docs.openstack.org/compute/api/v1.1">
  <meta key="kernel_id">nokernel</meta>
  <meta key="auto_disk_config">True</meta>
  <meta key="ramdisk_id">nokernel</meta>
  <meta key="architecture">x86_64</meta>
</metadata>

This operation does not accept a request body.

PUT
/v2/images/​{image_id}​/metadata/​{key}​
Create or update image metadata item

Creates or updates a metadata item by key for a specified image.

 

If this operation exceeds the metadata items quota, the API throws an overLimit (413) fault.

Normal response codes
200
Error response codes
computeFault (400, 500, …), serviceUnavailable (503), badRequest (400), unauthorized (401), forbidden (403), badMethod (405), overLimit (413), itemNotFound (404), badMediaType (415), NetworkNotFound (400), buildInProgress (409)
Request parameters
Parameter Style Type Description
image_id URI csapi:UUID

The UUID for the image.

key URI csapi:imageMetadataKey

A string. Maximum length is 255 characters.

{
    "metadata": {
        "auto_disk_config": "True",
        "Label": "Changed"
    }
}
<?xml version="1.0" encoding="UTF-8"?>
<metadata xmlns="http://docs.openstack.org/compute/api/v1.1">
    <meta key="auto_disk_config">True</meta>
    <meta key="Label">Changed</meta>
</metadata>
{
    "metadata": {
        "Label": "Changed",
        "auto_disk_config": "True"
    }
}
<?xml version='1.0' encoding='UTF-8'?>
<metadata xmlns="http://docs.openstack.org/compute/api/v1.1">
  <meta key="auto_disk_config">True</meta>
  <meta key="Label">Changed</meta>
</metadata>
DELETE
/v2/images/​{image_id}​/metadata/​{key}​
Delete image metadata item

Deletes a metadata item by key for a specified image.

 
Normal response codes
204
Error response codes
computeFault (400, 500, …), serviceUnavailable (503), badRequest (400), unauthorized (401), forbidden (403), badMethod (405), overLimit (413), itemNotFound (404), buildInProgress (409)
Request parameters
Parameter Style Type Description
image_id URI csapi:UUID

The UUID for the image.

key URI csapi:imageMetadataKey

A string. Maximum length is 255 characters.

This operation does not accept a request body and does not return a response body.