Skip to content

Sustainability-Insight-Center (v1beta1)

The HPE Sustainability Insight Center API enables users to manage power consumption data that helps to reduce costs and achieve IT sustainability goals.

Download OpenAPI description
Overview
License

HPE License

Languages
Servers
Mock server

https://stage-developer-portal-hpe.redocly.app/_mock/docs/greenlake/services/sustainability/public/openapi/sustainability-insight-ctr-latest/

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

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

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

usages

Aggregate usage data

Operations

Aggregated energy use for entities

Request

Retrieves an aggregated energy usage list grouped by individual entities over a defined time frame and supports filtering, sorting, and offset-based pagination.

Security
bearer
Query
start-timestringrequired

Start of the query's time range in ISO8601 format.

Examples:
start-time=2024-01-28T08:00:00Z
end-timestringrequired

End of the query's time range in ISO8601 format.

Examples:
end-time=2024-01-29T08:00:00Z
filterstring

Limit the entities operated on by this endpoint, returning only the subset of entities that match the filter. The filter grammar is a subset of OData 4.0 supporting "eq", "in", and "and" operators only. Usage entities can be filtered by:

  • entityId
  • entityMake
  • entityModel
  • entityType
  • entitySerialNum
  • entityProductId
  • locationName
  • locationId
  • locationCity
  • locationState
  • locationCountry
  • name
Examples:
filter=locationCountry eq 'DE'
filter=entityModel in ('ProLiant DL325 Gen11', 'ProLiant DL380 Gen10')
filter-tagsstring

Limit the entities operated on by this endpoint, returning only the subset of entities that contain the tags. The filter grammar is a subset of OData 4.0 supporting "eq" and "or" operators only. The tag key is on the left of the operator, the value is on the right.

Examples:
filter-tags='OS' eq 'Linux'
filter-tags='OS' eq 'Linux' or 'OS' eq 'Windows'
filter-tags='Tagged' eq ''
currencystring(currencyCode)

The 3 letter currency code the cost returned will be in, case insensitive. Currency calculations are done via a factor queried at the beginning of the day. Defaults to USD.

Default "USD"
Enum"THB""CHF""INR"
Examples:
currency=CAD
sortstring

Odata 4.0 field to sort entities on. Allowed fields are the strings "locationName", "locationCountry", "locationState", "entityId", "entityMake", "entityModel", "entityType", "entitySerialNum", "entityProductId", "name". Must be of the format "property order".

Examples:
sort=name asc
sort=entityId desc
offsetinteger(int32)>= 0

Zero-based resource offset to start the response from.

Default 0
Examples:
offset=10
limitinteger(int32)[ 0 .. 100 ]

Number of usages to return.

Default 10
Examples:
limit=10
curl -i -X GET \
  'https://stage-developer-portal-hpe.redocly.app/_mock/docs/greenlake/services/sustainability/public/openapi/sustainability-insight-ctr-latest/sustainability-insight-ctr/v1beta1/usage-by-entity?start-time=string&end-time=string' \
  -H 'Authorization: Bearer <YOUR_JWT_HERE>'

Responses

OK

Bodyapplication/json
itemsArray of objects(entity)required
items[].​idstringrequired

ID of the entity.

items[].​typestringrequired

Type of return object.

items[].​entityIdstring

ID of the entity.

items[].​entityMakestring

Make of the entity.

items[].​entityModelstring

Model of the entity.

items[].​entityTypestring

Type of the entity.

items[].​entitySerialNumstring

Serial number of the entity.

items[].​entityProductIdstring

Product ID of the entity.

items[].​entityManufacturerTimestampstring(date-time)

Manufacturing timestamp of the entity.

items[].​locationIdstring

ID of the entity location.

items[].​locationCitystring

City that the the entity is located in.

items[].​locationNamestring

The entity location name.

items[].​locationStatestring

State that the the entity is located in.

items[].​locationCountrystring

Country that the the entity is located in.

items[].​namestring

Name of the entity.

items[].​tagsArray of objects(tag)

List of the entity's tags

items[].​costnumber

Energy cost in the provided currency type.

items[].​currencystring(currencyCode)

The currency code of the returned cost

Enum"THB""CHF""INR"
items[].​co2eMetricTonnumber

CO2 equivalent generation in metric tons.

items[].​kwhnumber

Power consumption in kWh.

items[].​costUsdnumberDeprecated

Energy cost in USD.

countintegerrequired
totalintegerrequired
offsetintegerrequired
Response
application/json
{ "items": [ {} ], "count": 5, "total": 10, "offset": 5 }

Total aggregated data

Request

Returns the total aggregated power cost, power consumption, and carbon emissions over a defined time frame and supports filtering by entities.

Security
bearer
Query
start-timestringrequired

Start of the query's time range in ISO8601 format.

Examples:
start-time=2024-01-28T08:00:00Z
end-timestringrequired

End of the aggregate's time range in ISO8601 format.

Examples:
end-time=2024-01-29T08:00:00Z
filterstring

Limit the entities operated on by this endpoint, returning only the usage for entities that match the filter. The filter grammar is a subset of OData 4.0 supporting "eq", "in", and "and" operators only. Usage entities can be filtered by:

  • entityId
  • entityMake
  • entityModel
  • entityType
  • entitySerialNum
  • entityProductId
  • locationName
  • locationId
  • locationCity
  • locationState
  • locationCountry
Examples:
filter=locationCountry eq 'DE'
filter=entityModel in ('ProLiant DL325 Gen11', 'ProLiant DL380 Gen10')
filter-tagsstring

Limit the entities operated on by this endpoint, returning only the subset of entities that contain the tags. The filter grammar is a subset of OData 4.0 supporting "eq" and "or" operators only. The tag key is on the left of the operator, the value is on the right.

Examples:
filter-tags='OS' eq 'Linux'
filter-tags='OS' eq 'Linux' or 'OS' eq 'Windows'
filter-tags='Tagged' eq ''
currencystring(currencyCode)

The 3 letter currency code the cost returned will be in, case insensitive. Currency calculations are done via a factor queried at the beginning of the day. Defaults to USD.

Default "USD"
Enum"THB""CHF""INR"
Examples:
currency=CAD
curl -i -X GET \
  'https://stage-developer-portal-hpe.redocly.app/_mock/docs/greenlake/services/sustainability/public/openapi/sustainability-insight-ctr-latest/sustainability-insight-ctr/v1beta1/usage-totals?start-time=string&end-time=string' \
  -H 'Authorization: Bearer <YOUR_JWT_HERE>'

Responses

OK

Bodyapplication/json
itemsArray of objects(total)required
items[].​typestringrequired

Type of returned aggregate.

items[].​costnumber

Total energy cost in the provided currency type.

items[].​currencystring(currencyCode)

The currency code of the returned cost

Enum"THB""CHF""INR"
items[].​co2eMetricTonnumber

Total CO2 equivalent generation in metric tons.

items[].​kwhnumber

Total power consumption in kWh.

items[].​costUsdnumberDeprecated

Total energy cost in USD.

countintegerrequired
Response
application/json
{ "items": [ {} ], "count": 10 }

Timeseries of energy usage over time

Request

Retrieves aggregated energy usage statistics grouped by time bucket over a defined time frame and supports filtering by entities. Behavior is non-deterministic if the time range does not divide evenly by your selected interval.

Security
bearer
Query
intervalstringrequired

Interval of the created time series. Must be of the format "integer unit". Valid units are day(s), hour(s), week(s), month(s), and year(s).

Examples:
interval=1 day
interval=2 hours
start-timestringrequired

Start of the query's time range in ISO8601 format.

Examples:
start-time=2024-01-28T08:00:00Z
end-timestringrequired

End of the query's time range in ISO8601 format.

Examples:
end-time=2024-01-29T08:00:00Z
filterstring

Limit the entities operated on by this endpoint, returning only the usage for entities that match the filter. The filter grammar is a subset of OData 4.0 supporting "eq", "in", and "and" operators only. Usage entities can be filtered by:

  • entityId
  • entityMake
  • entityModel
  • entityType
  • entitySerialNum
  • entityProductId
  • locationName
  • locationId
  • locationCity
  • locationState
  • locationCountry
Examples:
filter=locationCountry eq 'DE'
filter=entityModel in ('ProLiant DL325 Gen11', 'ProLiant DL380 Gen10')
filter-tagsstring

Limit the entities operated on by this endpoint, returning only the subset of entities that contain the tags. The filter grammar is a subset of OData 4.0 supporting "eq" and "or" operators only. The tag key is on the left of the operator, the value is on the right.

Examples:
filter-tags='OS' eq 'Linux'
filter-tags='OS' eq 'Linux' or 'OS' eq 'Windows'
filter-tags='Tagged' eq ''
currencystring(currencyCode)

The 3 letter currency code the cost returned will be in, case insensitive. Currency calculations are done via a factor queried at the beginning of the day. Defaults to USD.

Default "USD"
Enum"THB""CHF""INR"
Examples:
currency=CAD
curl -i -X GET \
  'https://stage-developer-portal-hpe.redocly.app/_mock/docs/greenlake/services/sustainability/public/openapi/sustainability-insight-ctr-latest/sustainability-insight-ctr/v1beta1/usage-series?interval=string&start-time=string&end-time=string' \
  -H 'Authorization: Bearer <YOUR_JWT_HERE>'

Responses

OK

Bodyapplication/json
itemsArray of objects(timeseries)required
items[].​idstringrequired

ID of the returned time-bucketed aggregate.

items[].​typestringrequired

Type of returned aggregate.

items[].​timeBucketstring(date-time)

Starting time of the returned time-bucketed aggregate in ISO8601 format.

items[].​costUsdnumber

Energy cost in USD for this time bucket.

items[].​costnumber

Energy cost for this time bucket in the queried for currency type.

items[].​currencystring(currencyCode)

The currency code of the returned cost

Enum"THB""CHF""INR"
items[].​co2eMetricTonnumber

CO2 equivalent generation in metric tons for this time bucket.

items[].​kwhnumber

Power consumption in kWh for this time bucket.

countintegerrequired
Response
application/json
{ "items": [ {} ], "count": 5 }

Aggregated carbon footprint usage for cloud entities

Request

Retrieves aggregated carbon footprint usage in a list grouped by individual cloud entities, i.e., cloud services, over a defined time frame and supports filtering, sorting, and offset-based pagination.

Security
bearer
Query
start-timestringrequired

Start of the query's time range in ISO8601 format.

Examples:
start-time=2024-01-28T08:00:00Z
end-timestringrequired

End of the query's time range in ISO8601 format.

Examples:
end-time=2024-01-29T08:00:00Z
filterstring

Limit the cloud entities operated on by this endpoint, returning only the subset of entities that match the filter. The filter grammar is a subset of OData 4.0 supporting "eq", "in", and "and" operators only.

Cloud entities can be filtered by:

  • entityId
  • serviceProvider
  • serviceName
  • serviceRegion
  • serviceAccount
  • name
Examples:
filter=serviceProvider eq 'AWS'
filter=serviceRegion in ('EMEA', 'AMERICAS')
sortstring

Odata 4.0 field to sort entities on. Allowed fields are the strings "entityId", "serviceProvider", "serviceName", "serviceRegion", "serviceAccount", "name". Must be of the format "property order".

Examples:
sort=serviceAccount asc
sort=entityId desc
offsetinteger(int32)>= 0

Zero-based resource offset to start the response from.

Default 0
Examples:
offset=10
limitinteger(int32)[ 0 .. 100 ]

Number of usages to return.

Default 10
Examples:
limit=10
curl -i -X GET \
  'https://stage-developer-portal-hpe.redocly.app/_mock/docs/greenlake/services/sustainability/public/openapi/sustainability-insight-ctr-latest/sustainability-insight-ctr/v1beta1/cloud-usage-by-entity?start-time=string&end-time=string' \
  -H 'Authorization: Bearer <YOUR_JWT_HERE>'

Responses

OK

Bodyapplication/json
itemsArray of objects(cloudEntity)required
items[].​idstringrequired

ID of the entity.

items[].​typestringrequired

Type of return object.

items[].​entityIdstring

ID of the entity.

items[].​serviceProviderstring

Cloud service provider of the entity.

items[].​serviceNamestring

Service name of the entity.

items[].​serviceRegionstring

Service region of the entity.

items[].​serviceAccountstring

Service account id of the entity.

items[].​namestring

Name of the entity.

items[].​co2eMetricTonnumber

CO2 equivalent generation in metric tons.

countintegerrequired
totalintegerrequired
offsetintegerrequired
Response
application/json
{ "items": [ {} ], "count": 5, "total": 10, "offset": 5 }

Total aggregated cloud carbon footprint usage

Request

Returns the total carbon footprint over a defined time frame and supports filtering by cloud entities.

Security
bearer
Query
start-timestringrequired

Start of the query's time range in ISO8601 format.

Examples:
start-time=2024-01-28T08:00:00Z
end-timestringrequired

End of the aggregate's time range in ISO8601 format.

Examples:
end-time=2024-01-29T08:00:00Z
filterstring

Limit the cloud entities operated on by this endpoint, returning only the subset of entities that match the filter. The filter grammar is a subset of OData 4.0 supporting "eq", "in", and "and" operators only.

Cloud entities can be filtered by:

  • entityId
  • serviceProvider
  • serviceName
  • serviceRegion
  • serviceAccount
  • name
Examples:
filter=serviceProvider eq 'AWS'
filter=serviceRegion in ('EMEA', 'AMERICAS')
curl -i -X GET \
  'https://stage-developer-portal-hpe.redocly.app/_mock/docs/greenlake/services/sustainability/public/openapi/sustainability-insight-ctr-latest/sustainability-insight-ctr/v1beta1/cloud-usage-totals?start-time=string&end-time=string' \
  -H 'Authorization: Bearer <YOUR_JWT_HERE>'

Responses

OK

Bodyapplication/json
itemsArray of objects(cloudTotal)required
items[].​typestringrequired

Type of returned aggregate.

items[].​co2eMetricTonnumber

Total CO2 equivalent generation in metric tons.

countintegerrequired
Response
application/json
{ "items": [ {} ], "count": 10 }

Timeseries of cloud carbon footprint usage over time

Request

Retrieves aggregated carbon footprint usage statistics grouped by time bucket over a defined time frame and supports filtering by entities. Behavior is non-deterministic if the time range does not divide evenly by your selected interval.

Security
bearer
Query
intervalstringrequired

Interval of the created time series. Must be of the format "integer unit". Valid units are day(s), hour (s), week(s), month(s), and year(s). Cloud usage typically is measured in months, so the smaller time units are likely to be approximations.

Examples:
interval=1 month
interval=3 months
start-timestringrequired

Start of the query's time range in ISO8601 format.

Examples:
start-time=2024-01-28T08:00:00Z
end-timestringrequired

End of the query's time range in ISO8601 format.

Examples:
end-time=2024-01-29T08:00:00Z
filterstring

Limit the cloud entities operated on by this endpoint, returning only the subset of entities that match the filter. The filter grammar is a subset of OData 4.0 supporting "eq", "in", and "and" operators only.

Cloud entities can be filtered by:

  • entityId
  • serviceProvider
  • serviceName
  • serviceRegion
  • serviceAccount
  • name
Examples:
filter=serviceProvider eq 'AWS'
filter=serviceRegion in ('EMEA', 'AMERICAS')
curl -i -X GET \
  'https://stage-developer-portal-hpe.redocly.app/_mock/docs/greenlake/services/sustainability/public/openapi/sustainability-insight-ctr-latest/sustainability-insight-ctr/v1beta1/cloud-usage-series?interval=string&start-time=string&end-time=string' \
  -H 'Authorization: Bearer <YOUR_JWT_HERE>'

Responses

OK

Bodyapplication/json
itemsArray of objects(cloudTimeseries)required
items[].​idstringrequired

ID of the returned time-bucketed aggregate.

items[].​typestringrequired

Type of returned aggregate.

items[].​timeBucketstring(date-time)

Starting time of the returned time-bucketed aggregate in ISO8601 format.

items[].​co2eMetricTonnumber

CO2 equivalent generation in metric tons for this time bucket.

countintegerrequired
Response
application/json
{ "items": [ {} ], "count": 5 }

coefficients

Create and retrieve custom coefficients for locations

Operations

ingests

Upload and retrieve records of 3rd party ingests

Operations

datasources

Retrieve information about where data comes from

Operations