Cloud Cruiser became HPE Consumption Analytics on Nov. 1st. You'll still see the old name in places while we update this site.

 

 

Consumption Analytics Documentation

Home > Cloud Cruiser 4 > REST API reference > Services > Import services

Import services

Imports CSV-formatted service definitions.

Resource URL
  • In version 4.0: POST http://<ccServerURL>/rest/v2/services/definitions/import​
  • In version 4.1 and later: POST http://<ccServerURL>/rest/v2/serviceCatalog/import

Request

Parameters
  Name Type Description
Request header parameters (optional) defaultActiveFlag boolean Whether new services are active when no value is specified for active_flag. The default is true.
defaultServiceGroupName string The service group in which to place new services when no value is specified for group_name. The default is Default.
enforceValidation boolean Whether to enforce validation of imported services, rejecting incompletely defined services. The default is true.
ignoreActiveFlag boolean Whether to ignore the active_flag values in the import file and instead set all services' Active flag to the value of defaultActiveFlag. The default is false.
updateDuplicates boolean Whether to update an existing service definition with the same service name. When false, the duplicate source row is ignored. The default is false.
Content-Type

text/csv

Body

The services to import, in Service CSV file format.

Response

Content-Type

application/xml

Body

Details for the result of the import, as XML text with the root element itemImportResult or JAXB type com.cloudcruiser.server.webservices.v2.dto.common.ItemImportResult.

Schema

Version 4.0
Version 4.1 and later

For HPE Consumption Analytics Portal 4.1 and later, this XML schema describes service groups and their contained services.

<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:ns1="http://www.cloudcruiser.com/webservices/v2/Common" xmlns:tns="http://www.cloudcruiser.com/webservices/v2/Service" attributeFormDefault="unqualified" elementFormDefault="qualified" targetNamespace="http://www.cloudcruiser.com/webservices/v2/Service">
  <xs:import/>
  <xs:import namespace="http://www.cloudcruiser.com/webservices/v2/Common"/>
  <xs:element name="serviceDefinition" type="tns:ServiceDefinition"/>
  <xs:element name="serviceDefinitionList" type="tns:ServiceDefinitionList"/>
  <xs:element name="serviceGroup" type="tns:ServiceGroup"/>
  <xs:element name="serviceGroupList" type="tns:ServiceGroupList"/>
  <xs:element name="serviceSummaryList" type="tns:ServiceSummaryList"/>
  <xs:complexType name="ServiceGroup">
    <xs:sequence>
      <xs:element name="name" type="xs:string"/>
      <xs:element maxOccurs="unbounded" minOccurs="0" name="serviceSummary">
        <xs:complexType>
          <xs:sequence>
            <xs:element name="name" type="xs:string"/>
            <xs:element minOccurs="0" name="description" type="xs:string"/>
            <xs:element default="false" name="valid" type="xs:boolean"/>
          </xs:sequence>
          <xs:attribute name="id" type="xs:int" use="required"/>
        </xs:complexType>
      </xs:element>
    </xs:sequence>
    <xs:attribute name="id" type="xs:int" use="required"/>
    <xs:attribute name="totalServices" type="xs:int"/>
    <xs:attribute name="retrievedServices" type="xs:int"/>
    <xs:attribute name="startFrom" type="xs:int"/>
  </xs:complexType>
  <xs:complexType name="ServiceDefinition">
    <xs:sequence>
      <xs:element name="serviceName" type="xs:string"/>
      <xs:element default="Default" name="groupName" type="xs:string"/>
      <xs:element minOccurs="0" name="description" type="xs:string"/>
      <xs:element default="false" name="active" type="xs:boolean"/>
      <xs:element default="false" name="valid" type="xs:boolean"/>
      <xs:element name="unitDesc" type="xs:string"/>
      <xs:element default="4" name="unitDecimals" type="xs:short"/>
      <xs:element default="MONTHLY" name="chargeInterval" type="xs:string"/>
      <xs:element default="FULL" name="prorationType" type="xs:string"/>
      <xs:element default="BUNDLED" name="bundleType" type="xs:string"/>
      <xs:element default="ALLOCATED" name="measureType" type="xs:string"/>
      <xs:element maxOccurs="unbounded" minOccurs="0" name="measure" type="tns:ServiceMeasure"/>
      <xs:element maxOccurs="unbounded" minOccurs="0" name="tag">
        <xs:complexType>
          <xs:sequence/>
          <xs:attribute name="name" type="xs:string" use="required"/>
          <xs:attribute name="value" type="xs:string" use="required"/>
        </xs:complexType>
      </xs:element>
    </xs:sequence>
    <xs:attribute name="id" type="xs:int"/>
  </xs:complexType>
  <xs:complexType abstract="true" name="ServiceMeasure">
    <xs:sequence>
      <xs:element name="measureName" type="xs:string"/>
      <xs:element name="schemaName" type="xs:string"/>
      <xs:element minOccurs="0" name="unitsConversion" type="ns1:ConversionType"/>
      <xs:element maxOccurs="unbounded" minOccurs="0" name="dimensionFilter">
        <xs:complexType>
          <xs:sequence/>
          <xs:attribute name="dimensionName" type="xs:string" use="required"/>
          <xs:attribute name="value" type="xs:string" use="required"/>
        </xs:complexType>
      </xs:element>
    </xs:sequence>
  </xs:complexType>
  <xs:complexType name="MeteredServiceMeasure">
    <xs:complexContent>
      <xs:extension base="tns:ServiceMeasure">
        <xs:sequence/>
      </xs:extension>
    </xs:complexContent>
  </xs:complexType>
  <xs:complexType name="NonMeteredServiceMeasure">
    <xs:complexContent>
      <xs:extension base="tns:ServiceMeasure">
        <xs:sequence>
          <xs:element default="ALLOCATED" name="countByType" type="xs:string"/>
          <xs:element default="EQUALS" name="quantityOperator" type="xs:string"/>
          <xs:element default="1" name="quantity" type="xs:double"/>
          <xs:element minOccurs="0" name="quantityHigh" type="xs:double"/>
        </xs:sequence>
      </xs:extension>
    </xs:complexContent>
  </xs:complexType>
  <xs:complexType name="ServiceDefinitionList">
    <xs:sequence>
      <xs:element maxOccurs="unbounded" minOccurs="0" ref="tns:serviceDefinition"/>
    </xs:sequence>
    <xs:attribute name="totalServices" type="xs:int"/>
    <xs:attribute name="retrievedServices" type="xs:int"/>
    <xs:attribute name="startFrom" type="xs:int"/>
  </xs:complexType>
  <xs:complexType name="ServiceSummaryList">
    <xs:sequence>
      <xs:element maxOccurs="unbounded" minOccurs="0" name="serviceSummary" type="tns:ServiceSummary"/>
    </xs:sequence>
    <xs:attribute name="totalServices" type="xs:int"/>
    <xs:attribute name="retrievedServices" type="xs:int"/>
    <xs:attribute name="startFrom" type="xs:int"/>
  </xs:complexType>
  <xs:complexType name="ServiceSummary">
    <xs:sequence>
      <xs:element name="serviceName" type="xs:string"/>
      <xs:element name="groupName" type="xs:string"/>
      <xs:element minOccurs="0" name="description" type="xs:string"/>
      <xs:element name="active" type="xs:boolean"/>
      <xs:element name="valid" type="xs:boolean"/>
    </xs:sequence>
    <xs:attribute name="id" type="xs:int" use="required"/>
  </xs:complexType>
  <xs:complexType name="ServiceGroupList">
    <xs:sequence>
      <xs:element maxOccurs="unbounded" minOccurs="0" ref="tns:serviceGroup"/>
    </xs:sequence>
    <xs:attribute name="totalGroups" type="xs:int"/>
    <xs:attribute name="retrievedGroups" type="xs:int"/>
    <xs:attribute name="startFrom" type="xs:int"/>
  </xs:complexType>
</xs:schema>

Example

URL invocation

POST http://localhost:8080/rest/v2/serviceCatalog​​/import

Java invocation
Request body
service_name,service_desc,measurement_type,group_name,proration_type,charge_interval,unit_desc,schema_name,measure_name,measure_quantity_operator,measure_quantity
Small VM,"Small Virtual Machine with single core CPU, 1TB disk and 1GB RAM",allocated,Virtual Machines,full,monthly,instances,Virtual Machine,vCPU,=,1
Small VM,"Small Virtual Machine with single core CPU, 1TB disk and 1GB RAM",allocated,Virtual Machines,full,monthly,instances,Virtual Machine,vDisk,=,1
Small VM,"Small Virtual Machine with single core CPU, 1TB disk and 1GB RAM",allocated,Virtual Machines,full,monthly,instances,Virtual Machine,vMemory,=,10
Medium VM,"Medium Virtual Machine with quad core CPU, 10TB disk and 16GB RAM",allocated,Virtual Machines,full,monthly,instances,Virtual Machine,vDisk,=,10
Medium VM,"Medium Virtual Machine with quad core CPU, 10TB disk and 16GB RAM",allocated,Virtual Machines,full,monthly,instances,Virtual Machine,vMemory,=,16
Medium VM,"Medium Virtual Machine with quad core CPU, 10TB disk and 16GB RAM",allocated,Virtual Machines,full,monthly,instances,Virtual Machine,vCPU,=,2
100 TB Disk,A really big disk,metered,Storage,full,daily,TB,Storage,Disk Used,=,1
Response body
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<itemImportResult 
    xmlns="http://www.cloudcruiser.com/webservices/v2/Common">
    <importedSummary>
        <totalItems>3</totalItems>
        <newItems>3</newItems>
        <duplicateItems>0</duplicateItems>
        <updatedItems>0</updatedItems>
    </importedSummary>
    <newItemNames>
        <newItemName>Small VM</newItemName>
        <newItemName>Medium VM</newItemName>
        <newItemName>100 TB Disk</newItemName>
    </newItemNames>
</itemImportResult>
Last modified

Tags

Classifications

This page has no classifications.
© Copyright 2018 Hewlett Packard Enterprise Development LP