Skip to content

HPE Compute Ops Management API (latest)

HPE Compute Operations Management provides a Restful API to customers who want to manage their devices programmatically or through a command line. The API enables customers to invoke operations or tasks such as list devices, see device details, device health, and manage their device's firmware.

UPDATED API ENDPOINTS

Compute Ops Management now supports the HPE GreenLake API endpoints (<region>.api.greenlake.hpe.com). The Guide contains more information about this change.

Download OpenAPI description
Languages
Servers
API endpoint for US West

https://us-west.api.greenlake.hpe.com/

API endpoint for EU Central

https://eu-central.api.greenlake.hpe.com/

API endpoint for AP Northeast

https://ap-northeast.api.greenlake.hpe.com/

Mock server

https://developer.greenlake.hpe.com/_mock/docs/greenlake/services/compute-ops-mgmt/public/openapi/compute-ops-mgmt-remote/openapi/

accounts - v1beta1

Operations

activation-keys - v1beta1

Operations

activation-tokens - v1beta1

Operations

activities - v1beta2

Operations

ahs-files - v1beta1

Operations

secure-gateway-appliances - v1beta2

Operations

appliance-firmware-bundles - v1

Operations

appliance-firmware-bundles - v1beta1

Operations

approval-policy - v1beta2

Operations

approval-request - v1beta2

Operations

async-operations - v1

Operations

async-operations - v1beta1

Operations

energy-over-time - v1beta1

Operations

energy-by-entity - v1beta1

Operations

external-services - v1beta1

Operations

filters - v1beta1

Operations

firmware-bundles - v1

Operations

firmware-bundles - v1beta2

Operations

groups - v1

Operations

groups - v1beta3

Operations

groups - v1beta2

Operations

job-templates - v1beta2

Operations

jobs - v1

Operations

jobs - v1beta3

Operations

jobs - v1beta2

Operations

metrics-configurations - v1

Operations

oneview-appliances - v1beta1

Operations

oneview-settings - v1beta1

Operations

oneview-server-templates - v1beta1

Operations

reports - v1beta2

Operations

schedules - v1beta2

Operations

server-locations - v1beta1

Operations

server-settings - v1beta1

Operations

settings - v1

Operations

settings - v1beta1

Operations

servers - v1

Operations

List all servers

Request

Retrieve data for all Servers

Servers without a valid subscription will not return the following:

  • hardware.health
  • hardware.memoryMb
  • hardware.formFactor
  • hardware.bmc
  • hardware.platform
  • hardware.powerState
  • hardware.indicatorLed
  • firmwareInventory
  • softwareInventory
  • lastFirmwareUpdate
  • host
  • firmwareBundleUri
  • tags
  • originIp
  • biosFamily
  • storageInventory
  • processorVendor
  • autoIloFwupdate
  • serverGeneration
  • connectionType
  • oneview
Security
Bearer
Query
offsetinteger>= 0

Zero-based resource offset to start the response from

Default 0
Example: offset=10
limitinteger[ 0 .. 100 ]

The maximum number of records to return.

Example: limit=10
filterstring

Limit the resources operated on by an endpoint or when used with a multiple-GET endpoint, return only the subset of resources that match the filter. The filter grammar is a subset of OData 4.0.

NOTE: The filter query parameter must use URL encoding. Most clients do this automatically with inputs provided to them specifically as query parameters. Encoding must be done manually for any query parameters provided as part of the URL.
The reserved characters ! # $ & ' ( ) * + , / : ; = ? @ [ ] must be encoded with percent encoded equivalents. Server IDs contain a +, which must be encoded as %2B.
For example: the value P06760-B21+2M212504P8 must be encoded as P06760-B21%2B2M212504P8 when it is used in a query parameter.

CLASSEXAMPLES
Typesinteger, decimal, timestamp, string, boolean, null
Operationseq, ne, gt, ge, lt, le, in
Logicand, or, not

Servers can be filtered by:

  • biosFamily
  • createdAt
  • firmwareBundleUri
  • hardware and all nested properties
  • host and all nested properties
  • id
  • name †
  • oneview and all nested properties
  • platformFamily
  • processorVendor
  • resourceUri
  • state and all nested properties

† When searching for a server using the name filter, you must supply the serial number of the server, not the hostname. To filter by hostname use host/hostname instead of name

The following examples are not an exhaustive list of all possible filtering options.

Examples:

Return servers where a property equals a value. <property> eq <value>

filter=host/hostname eq 'myServer'

Return servers where a nested property equals a value. <property>/<nestedProperty> eq <value>

filter=state/managed eq 'true'

Return servers where a property equals a value, using a url. <property>%20eq%20%27<value>

filter=id%20eq%20%27497f6eca-6276-4993-bfeb-53cbbbba6f08

Return servers where a property does not equal a value not <property> eq <value>

filter=not name eq 'MXQ89990RR'

Return servers with populated property. not <property> eq null

filter=not name eq null

Return servers where property contains a value. contains(<property>, <value>)

filter=contains(createdAt,'2019')

Return servers where property is populated and property contains value. not <property> eq null and contains(<property>, <value>)

filter=not name eq null and contains(createdAt,'2019')

Return servers where property is one of multiple values. <property>/<nestedProperty> in (<value>,<value>)

filter=state/managed in ('true','false')
Headers
Tenant-Acidstring(uuid)

Tenant-Acid header can be used by an MSP workspace to make API calls on behalf of their tenant by specifying the tenant's application customer ID.

In order to make such an API call, the Bearer token must belong to an MSP workspace and this header value must be the application customer ID of a tenant within the MSP workspace. Use the /compute-ops-mgmt/v1beta1/accounts API to determine the application customer IDs for your tenant accounts.

curl -i -X GET \
  https://us-west.api.greenlake.hpe.com/compute-ops-mgmt/v1/servers \
  -H 'Authorization: Bearer <YOUR_JWT_HERE>'

Responses

OK

Bodyapplication/json
countinteger>= 0required

Number of items returned

Example: 1
offsetinteger>= 0required

Zero-based resource offset

itemsArray of objects(server-v1)required
items[].​idstring(productId+serialNumber)required

Primary identifier for the server given by the system

items[].​typestringrequired

Type of the resource

Value "compute-ops-mgmt/server"
items[].​generationinteger>= 1required

Monotonically increasing update counter

items[].​createdAtstring(date-time)required

Time of server creation

items[].​updatedAtstring(date-time)required

Time of the last server update

items[].​namestring

Name given to resource

Example: "myServer"
items[].​resourceUristring(uri-reference)

URI to the server itself (i.e. a self link)

Example: "/compute-ops-mgmt/v1/servers/875765-S01+1M512501AB"
items[].​platformFamilynull or string
One of:
One of:

No Platform family

null
items[].​serverGenerationstring or string

Server Hardware Generation

Enum"GEN_10""GEN_11""UNKNOWN"
items[].​hardwareobject(hardware)

Server hardware details

items[].​stateobject(state)

Server connectivity state

items[].​firmwareInventoryArray of objects or null or null(firmwareInventoryItem-v1)

Firmware Inventory

items[].​softwareInventoryArray of objects or null or null(softwareInventoryItem-v1)

Software Inventory

items[].​firmwareBundleUristring or null or string or null
items[].​lastFirmwareUpdateobject or null or object or null

Details of the last firmware update

items[].​tagsobject or null or object or null

Extra identifiers a server

Example: {"location":"San Jose"}
items[].​processorVendorstring or null or string or null

Type and brand of processor

Example: "Intel(R) Xeon(R) Silver 4114 CPU @ 2.20GHz"
items[].​biosFamilystring or null or string or null

Bios version

items[].​hostobject or null or object or null(host)

host details

items[].​autoIloFwUpdateboolean

To opt in for automatic iLO-only firmware update

items[].​oneviewobject or null or object or null

Details of the OneView managed server

items[].​lastFullInventoryCollectionAtstring or null
Any of:

Last complete inventory collection time

string(date-time)
items[].​lastFullInventoryCollectionPowerStatestring

Power state of the server when the complete inventory is collected

totalinteger>= 0required

Total number of items in the collection that match the filter query, if one was provided in the request

Example: 12
Response
application/json
{ "offset": 0, "count": 1, "total": 12, "items": [ {} ] }

Patch multiple servers

Request

Update multiple server(s) specified by the id(s). The operation is atomic (either fully successful or failing without modifying any servers).

Security
Bearer
Query
idArray of strings(productId+serialNumber (percent-encoded))required
Examples:
id=177751-Y66%2B8899177751666258
id=177751-Y66%2B8899177751666258&id=320888-H80%2B8899320888180208
Headers
Content-Typestringrequired

Content-Type header must designate 'application/merge-patch+json' in order for the request to be performed.

Value "application/merge-patch+json"
Tenant-Acidstring(uuid)

Tenant-Acid header can be used by an MSP workspace to make API calls on behalf of their tenant by specifying the tenant's application customer ID.

In order to make such an API call, the Bearer token must belong to an MSP workspace and this header value must be the application customer ID of a tenant within the MSP workspace. Use the /compute-ops-mgmt/v1beta1/accounts API to determine the application customer IDs for your tenant accounts.

Bodyapplication/merge-patch+jsonrequired
applianceobject

Associated secure gateway for the server.

autoIloFwUpdateboolean

To opt in for automatic iLO-only firmware update

Default true
hardwareobject or null
Any of:

Server hardware details

curl -i -X PATCH \
  'https://us-west.api.greenlake.hpe.com/compute-ops-mgmt/v1/servers?id=string' \
  -H 'Authorization: Bearer <YOUR_JWT_HERE>' \
  -H 'Content-Type: application/merge-patch+json' \
  -d '{}'

Responses

Successful Response

Response
No content

Create credential based server

Request

Create a credential based server with the specified user defined properties.

Security
Bearer
Headers
Content-Typestringrequired

Content-Type header must designate 'application/json' in order for the request to be performed.

Value "application/json"
Bodyapplication/jsonrequired
applianceobject

Associated secure gateway for the server.

hardwareobject

Server hardware details

curl -i -X POST \
  https://us-west.api.greenlake.hpe.com/compute-ops-mgmt/v1/servers \
  -H 'Authorization: Bearer <YOUR_JWT_HERE>' \
  -H 'Content-Type: application/json' \
  -d '{}'

Responses

Successful Response

Headers
Locationstring(uri-reference)

The URI of the job that was created to process the request

Example: "/compute-ops-mgmt/v1/jobs/43b48ef5-45f0-4f9b-9196-4f434465855e"
Bodyapplication/json
jobIdstring(uuid)required

Unique identifier for the job

Example: "1a85c882-1b60-4ae9-9c60-fd68d42fffc3"
Response
application/json
{ "jobId": "1a85c882-1b60-4ae9-9c60-fd68d42fffc3" }

servers - v1beta2

Operations

server-warranty - v1beta2

Operations

user-preferences - v1

Operations

user-preferences - v1beta1

Operations

utilization-over-time - v1beta1

Operations

utilization-by-entity - v1beta1

Operations

webhooks - v1beta1

Operations