= DCAE Inventory API [[_overview]] == Overview DCAE Inventory is a web service that provides the following: . Real-time data on all DCAE services and their components . Comprehensive details on available DCAE service types === Version information [%hardbreaks] _Version_ : 1.0.0 [[_paths]] == Paths [[_dcaeservicetypesget]] === GET /dcae-service-types ==== Description Get a list of `DCAEServiceType` objects. ==== Parameters [options="header", cols=".^2,.^3,.^9,.^4,.^2"] |=== |Type|Name|Description|Schema|Default |*Query*|*offset* + _optional_|Query resultset offset used for pagination (zero-based)|integer(int32)| |*Query*|*serviceId* + _optional_||string| |*Query*|*serviceLocation* + _optional_||string| |*Query*|*vnfType* + _optional_||string| |=== ==== Responses [options="header", cols=".^2,.^14,.^4"] |=== |HTTP Code|Description|Schema |*200*|List of `DCAEServiceType` objects|<<_inlineresponse200,InlineResponse200>> |=== ==== Consumes * `application/json` * `application/vnd.dcae.inventory.v1+json` ==== Produces * `application/json` * `application/vnd.dcae.inventory.v1+json` [[_dcaeservicetypestypenameget]] === GET /dcae-service-types/{typeName} ==== Description Get a `DCAEServiceType` object. ==== Parameters [options="header", cols=".^2,.^3,.^9,.^4,.^2"] |=== |Type|Name|Description|Schema|Default |*Path*|*typeName* + _required_||string| |=== ==== Responses [options="header", cols=".^2,.^14,.^4"] |=== |HTTP Code|Description|Schema |*200*|Single `DCAEServiceType` object|<<_dcaeservicetype,DCAEServiceType>> |*404*|Resource not found|<<_dcaeservicetype,DCAEServiceType>> |=== ==== Consumes * `application/json` * `application/vnd.dcae.inventory.v1+json` ==== Produces * `application/json` * `application/vnd.dcae.inventory.v1+json` [[_dcaeservicetypestypenameput]] === PUT /dcae-service-types/{typeName} ==== Description Inserts a new `DCAEServiceType` or updates an existing instance. Updates are only allowed iff there are no running DCAE services of the requested type, ==== Parameters [options="header", cols=".^2,.^3,.^9,.^4,.^2"] |=== |Type|Name|Description|Schema|Default |*Path*|*typeName* + _required_||string| |*Body*|*body* + _required_||<<_dcaeservicetyperequest,DCAEServiceTypeRequest>>| |=== ==== Responses [options="header", cols=".^2,.^14,.^4"] |=== |HTTP Code|Description|Schema |*200*|Single `DCAEServiceType` object.|<<_dcaeservicetype,DCAEServiceType>> |*400*|Bad request provided.|<<_apiresponsemessage,ApiResponseMessage>> |*409*|Failed to update because there are still DCAE services of the requested type running.|<<_apiresponsemessage,ApiResponseMessage>> |=== ==== Consumes * `application/json` * `application/vnd.dcae.inventory.v1+json` ==== Produces * `application/json` * `application/vnd.dcae.inventory.v1+json` [[_dcaeservicesget]] === GET /dcae-services ==== Description Get a list of `DCAEService` objects. ==== Parameters [options="header", cols=".^2,.^3,.^9,.^4,.^2"] |=== |Type|Name|Description|Schema|Default |*Query*|*componentType* + _optional_|Use to filter by a specific DCAE service component type|string| |*Query*|*created* + _optional_|Use to filter by created time|string| |*Query*|*offset* + _optional_|Query resultset offset used for pagination (zero-based)|integer(int32)| |*Query*|*shareable* + _optional_|Use to filter by DCAE services that have shareable components or not|boolean| |*Query*|*typeName* + _optional_|DCAE service type name|string| |*Query*|*vnfId* + _optional_||string| |*Query*|*vnfLocation* + _optional_||string| |*Query*|*vnfType* + _optional_||string| |=== ==== Responses [options="header", cols=".^2,.^14,.^4"] |=== |HTTP Code|Description|Schema |*200*|List of `DCAEService` objects|<<_inlineresponse2001,InlineResponse2001>> |*502*|Bad response from DCAE controller|<<_apiresponsemessage,ApiResponseMessage>> |*504*|Failed to connect with DCAE controller|<<_apiresponsemessage,ApiResponseMessage>> |=== ==== Consumes * `application/json` * `application/vnd.dcae.inventory.v1+json` ==== Produces * `application/json` * `application/vnd.dcae.inventory.v1+json` [[_dcaeservicesgroupbypropertynameget]] === GET /dcae-services-groupby/{propertyName} ==== Description Get a list of unique values for the given `propertyName` ==== Parameters [options="header", cols=".^2,.^3,.^9,.^4,.^2"] |=== |Type|Name|Description|Schema|Default |*Path*|*propertyName* + _required_|Property to find unique values. Restricted to `type`, `vnfType`, `vnfLocation`|string| |=== ==== Responses [options="header", cols=".^2,.^14,.^4"] |=== |HTTP Code|Description|Schema |*200*|List of unique property values|<<_dcaeservicegroupbyresults,DCAEServiceGroupByResults>> |=== ==== Consumes * `application/json` * `application/vnd.dcae.inventory.v1+json` ==== Produces * `application/json` * `application/vnd.dcae.inventory.v1+json` [[_dcaeservicesserviceidget]] === GET /dcae-services/{serviceId} ==== Description Get a `DCAEService` object. ==== Parameters [options="header", cols=".^2,.^3,.^9,.^4,.^2"] |=== |Type|Name|Description|Schema|Default |*Path*|*serviceId* + _required_||string| |=== ==== Responses [options="header", cols=".^2,.^14,.^4"] |=== |HTTP Code|Description|Schema |*200*|Single `DCAEService` object|<<_dcaeservice,DCAEService>> |*404*|DCAE service not found|<<_apiresponsemessage,ApiResponseMessage>> |*502*|Bad response from DCAE controller|<<_apiresponsemessage,ApiResponseMessage>> |*504*|Failed to connect with DCAE controller|<<_apiresponsemessage,ApiResponseMessage>> |=== ==== Consumes * `application/json` * `application/vnd.dcae.inventory.v1+json` ==== Produces * `application/json` * `application/vnd.dcae.inventory.v1+json` [[_dcaeservicesserviceidput]] === PUT /dcae-services/{serviceId} ==== Description Put a new or update an existing `DCAEService` object. ==== Parameters [options="header", cols=".^2,.^3,.^9,.^4,.^2"] |=== |Type|Name|Description|Schema|Default |*Path*|*serviceId* + _required_||string| |*Body*|*body* + _required_||<<_dcaeservicerequest,DCAEServiceRequest>>| |=== ==== Responses [options="header", cols=".^2,.^14,.^4"] |=== |HTTP Code|Description|Schema |*200*|Single `DCAEService` object|<<_dcaeservice,DCAEService>> |*422*|Bad request provided|<<_apiresponsemessage,ApiResponseMessage>> |=== ==== Consumes * `application/json` * `application/vnd.dcae.inventory.v1+json` ==== Produces * `application/json` * `application/vnd.dcae.inventory.v1+json` [[_dcaeservicesserviceiddelete]] === DELETE /dcae-services/{serviceId} ==== Description Remove an existing `DCAEService` object. ==== Parameters [options="header", cols=".^2,.^3,.^9,.^4,.^2"] |=== |Type|Name|Description|Schema|Default |*Path*|*serviceId* + _required_||string| |=== ==== Responses [options="header", cols=".^2,.^14,.^4"] |=== |HTTP Code|Description|Schema |*200*|DCAE service has been removed|No Content |*404*|Unknown DCAE service|<<_apiresponsemessage,ApiResponseMessage>> |=== ==== Consumes * `application/vnd.dcae.inventory.v1+json` * `application/json` ==== Produces * `application/json` * `application/vnd.dcae.inventory.v1+json` [[_definitions]] == Definitions [[_apiresponsemessage]] === ApiResponseMessage [options="header", cols=".^3,.^11,.^4"] |=== |Name|Description|Schema |*code* + _optional_||integer(int32) |*message* + _optional_||string |*type* + _optional_||string |=== [[_dcaeservice]] === DCAEService [options="header", cols=".^3,.^11,.^4"] |=== |Name|Description|Schema |*components* + _optional_||< <<_dcaeservicecomponent,DCAEServiceComponent>> > array |*created* + _optional_||string(date-time) |*deploymentRef* + _optional_|Reference to a Cloudify deployment|string |*modified* + _optional_||string(date-time) |*selfLink* + _optional_|Link.title is serviceId|<<_link,Link>> |*serviceId* + _optional_||string |*typeLink* + _optional_|Link.title is typeName|<<_link,Link>> |*vnfId* + _optional_||string |*vnfLink* + _optional_|Link.title is vnfId|<<_link,Link>> |*vnfLocation* + _optional_|Location information of the associated VNF|string |*vnfType* + _optional_||string |=== [[_dcaeservicecomponent]] === DCAEServiceComponent [options="header", cols=".^3,.^11,.^4"] |=== |Name|Description|Schema |*componentId* + _required_|The id format is unique to the source|string |*componentLink* + _required_|Link to the underlying resource of this component|<<_link,Link>> |*componentSource* + _required_|Specifies the name of the underying source service that is responsible for this components|enum (DCAEController, DMaaPController) |*componentType* + _required_||string |*created* + _required_||string(date-time) |*location* + _optional_|Location information of the component|string |*modified* + _required_||string(date-time) |*shareable* + _required_|Used to determine if this component can be shared amongst different DCAE services|integer(int32) |*status* + _optional_||string |=== [[_dcaeservicecomponentrequest]] === DCAEServiceComponentRequest [options="header", cols=".^3,.^11,.^4"] |=== |Name|Description|Schema |*componentId* + _required_|The id format is unique to the source|string |*componentSource* + _required_|Specifies the name of the underying source service that is responsible for this components|enum (DCAEController, DMaaPController) |*componentType* + _required_||string |*shareable* + _required_|Used to determine if this component can be shared amongst different DCAE services|integer(int32) |=== [[_dcaeservicegroupbyresults]] === DCAEServiceGroupByResults [options="header", cols=".^3,.^11,.^4"] |=== |Name|Description|Schema |*propertyName* + _optional_|Property name of DCAE service that the group by operation was performed on|string |*propertyValues* + _optional_||< <<_dcaeservicegroupbyresultspropertyvalues,DCAEServiceGroupByResultsPropertyValues>> > array |=== [[_dcaeservicegroupbyresultspropertyvalues]] === DCAEServiceGroupByResultsPropertyValues [options="header", cols=".^3,.^11,.^4"] |=== |Name|Description|Schema |*count* + _optional_||integer(int32) |*dcaeServiceQueryLink* + _optional_|Link.title is the DCAE service property value. Following this link will provide a list of DCAE services that all have this property value.|<<_link,Link>> |*propertyValue* + _optional_||string |=== [[_dcaeservicerequest]] === DCAEServiceRequest [options="header", cols=".^3,.^11,.^4"] |=== |Name|Description|Schema |*components* + _required_|List of DCAE service components that this service is composed of|< <<_dcaeservicecomponentrequest,DCAEServiceComponentRequest>> > array |*deploymentRef* + _optional_|Reference to a Cloudify deployment|string |*typeName* + _required_|Name of the associated DCAE service type|string |*vnfId* + _required_|Id of the associated VNF that this service is monitoring|string |*vnfLocation* + _required_|Location identifier of the associated VNF that this service is monitoring|string |*vnfType* + _required_|The type of the associated VNF that this service is monitoring|string |=== [[_dcaeservicetype]] === DCAEServiceType [options="header", cols=".^3,.^11,.^4"] |=== |Name|Description|Schema |*blueprintTemplate* + _required_|String representation of a Cloudify blueprint with unbound variables|string |*created* + _required_|Created timestamp for this DCAE service type in epoch time|string(date-time) |*owner* + _required_|Name of the owner of this DCAE service type|string |*selfLink* + _optional_|Link.title is typeName|<<_link,Link>> |*serviceIds* + _optional_|List of service ids that are associated with this DCAE service type|< string > array |*serviceLocations* + _optional_|List of service locations that are associated with this DCAE service type|< string > array |*typeName* + _required_|Unique name for this DCAE service type|string |*vnfTypes* + _required_|List of VNF types associated with this DCAE service type|< string > array |=== [[_dcaeservicetyperequest]] === DCAEServiceTypeRequest [options="header", cols=".^3,.^11,.^4"] |=== |Name|Description|Schema |*blueprintTemplate* + _required_|String representation of a Cloudify blueprint with unbound variables|string |*owner* + _required_||string |*serviceIds* + _optional_|List of service ids that are used to associate with DCAE service type. DCAE service types with this propery as null or empty means them apply for every service id.|< string > array |*serviceLocations* + _optional_|List of service locations that are used to associate with DCAE service type. DCAE service types with this propery as null or empty means them apply for every service location.|< string > array |*vnfTypes* + _required_||< string > array |=== [[_inlineresponse200]] === InlineResponse200 [options="header", cols=".^3,.^11,.^4"] |=== |Name|Description|Schema |*items* + _optional_||< <<_dcaeservicetype,DCAEServiceType>> > array |*links* + _optional_||<<_inlineresponse200links,InlineResponse200Links>> |*totalCount* + _optional_||integer(int32) |=== [[_inlineresponse2001]] === InlineResponse2001 [options="header", cols=".^3,.^11,.^4"] |=== |Name|Description|Schema |*items* + _optional_||< <<_dcaeservice,DCAEService>> > array |*links* + _optional_||<<_inlineresponse200links,InlineResponse200Links>> |*totalCount* + _optional_||integer(int32) |=== [[_inlineresponse200links]] === InlineResponse200Links Pagination links [options="header", cols=".^3,.^11,.^4"] |=== |Name|Description|Schema |*nextLink* + _optional_||<<_link,Link>> |*previousLink* + _optional_||<<_link,Link>> |=== [[_link]] === Link [options="header", cols=".^3,.^11,.^4"] |=== |Name|Description|Schema |*params* + _optional_||< string, string > map |*rel* + _optional_||string |*rels* + _optional_||< string > array |*title* + _optional_||string |*type* + _optional_||string |*uri* + _optional_||string |*uriBuilder* + _optional_||<<_uribuilder,UriBuilder>> |=== [[_uribuilder]] === UriBuilder _Type_ : object