diff options
author | MatthieuGeerebaert <matthieu.geerebaert@orange.com> | 2019-03-12 18:30:33 +0100 |
---|---|---|
committer | MatthieuGeerebaert <matthieu.geerebaert@orange.com> | 2019-03-12 18:30:33 +0100 |
commit | cf469f63cb490d90b55508efa331073a17297999 (patch) | |
tree | 4cbb6daff2e14d30d2f4d745ec5e8cd8a15f5e5c /docs/offeredapis/api_serviceInventory | |
parent | 66403a1729296f9d90ce61a4d4cb0d102e03cd1e (diff) |
Update Swagger files
Change-Id: I02a375b4998fdf23bd7c4eb391011a8e37a1c8e2
Issue-ID: EXTAPI-211
Signed-off-by: MatthieuGeerebaert <matthieu.geerebaert@orange.com>
Diffstat (limited to 'docs/offeredapis/api_serviceInventory')
-rw-r--r-- | docs/offeredapis/api_serviceInventory/api.plantuml | 109 | ||||
-rw-r--r-- | docs/offeredapis/api_serviceInventory/model.xsd | 497 | ||||
-rw-r--r-- | docs/offeredapis/api_serviceInventory/swagger.json | 603 | ||||
-rw-r--r-- | docs/offeredapis/api_serviceInventory/swagger.yaml | 398 |
4 files changed, 1607 insertions, 0 deletions
diff --git a/docs/offeredapis/api_serviceInventory/api.plantuml b/docs/offeredapis/api_serviceInventory/api.plantuml new file mode 100644 index 0000000..3805ae9 --- /dev/null +++ b/docs/offeredapis/api_serviceInventory/api.plantuml @@ -0,0 +1,109 @@ +@startuml + +enum eventType { + ServiceCreationNotification + ServiceAttributeValueChangeNotification + ServiceRemoveNotification +} + +class ErrorRepresentation { + code:int + reason:string + message:string + status:string + referenceError:string + @type:string + @schemaLocation:string +} + +class Service { + id:string + href:string + name:string + type:string + state:string + @type:string + @baseType:string + @schemaLocation:string +} + Service --> "0-1" ServiceSpecificationRef : serviceSpecification + Service --> "0-*" ServiceCharacteristic : characteristic + Service --> "0-*" SupportingResource : supportingResource + Service --> "0-*" RelatedPartyRef : relatedParty + +class ServiceSpecificationRef { + id:string + href:string + name:string + version:string + @referredType:string + @schemaLocation:string + invariantUUID:string +} + +class ServiceCharacteristic { + name:string + valueType:string +} + ServiceCharacteristic --> "0-1" Value : value + +class SupportingResource { + id:string + href:string + role:string + name:string + @referredType:string + @schemaLocation:string + status:string + modelInvariantId:string + modelVersionId:string + modelCustomisationId:string +} + +class RelatedPartyRef { + id:string + href:string + role:string + @referredType:string +} + +class Value { + @type:string + @schemaLocation:string + serviceCharacteristicValue:string +} + +class ListRelatedPartyRef { + id:string + role:string +} + +class ListServiceSpecificationRef { + id:string + name:string +} + +class ListService { + id:string + name:string +} + ListService --> "0-1" ListServiceSpecificationRef : serviceSpecification + ListService --> "0-1" ListRelatedPartyRef : relatedParty + +class ServiceInventoryEvent { + id:string + href:string + name:string + type:string + state:string +} + ServiceInventoryEvent --> "1-1" RelatedPartyRef : relatedParty + +class Notification { + eventId:string + eventDate:dateTime +} + Notification --> "1-1" eventType : eventType + Notification --> "1-1" ServiceInventoryEvent : event + +@enduml
\ No newline at end of file diff --git a/docs/offeredapis/api_serviceInventory/model.xsd b/docs/offeredapis/api_serviceInventory/model.xsd new file mode 100644 index 0000000..2c46857 --- /dev/null +++ b/docs/offeredapis/api_serviceInventory/model.xsd @@ -0,0 +1,497 @@ +<?xml version="1.0" encoding="UTF-8"?> +<xs:schema xmlns:xmime="http://www.w3.org/2005/05/xmlmime" + xmlns="http://orange.com/ONAPNBI/api/serviceInventory/v4/model" + xmlns:xs="http://www.w3.org/2001/XMLSchema" + attributeFormDefault="unqualified" + elementFormDefault="qualified" + targetNamespace="http://orange.com/ONAPNBI/api/serviceInventory/v4/model"> + <xs:annotation id="signature"> + <xs:appinfo>API Designer</xs:appinfo> + <xs:documentation>Model: serviceInventory + Version: 4.0.0_inProgress + Owner: ONAPNBI + Generated on: 2019-03-12T16:45:37.288Z + Generated by: Orange API Designer v2, model-v1</xs:documentation> + </xs:annotation> + <xs:simpleType name="eventType"> + <xs:restriction base="xs:string"> + <xs:enumeration value="ServiceCreationNotification"/> + <xs:enumeration value="ServiceAttributeValueChangeNotification"/> + <xs:enumeration value="ServiceRemoveNotification"/> + </xs:restriction> + </xs:simpleType> + <xs:element name="ErrorRepresentation" type="ErrorRepresentation"> + <xs:annotation> + <xs:documentation source="public">This class is used to describe error.</xs:documentation> + </xs:annotation> + </xs:element> + <xs:complexType name="ErrorRepresentation"> + <xs:annotation> + <xs:documentation source="public">This class is used to describe error.</xs:documentation> + </xs:annotation> + <xs:sequence minOccurs="1" maxOccurs="1"> + <xs:element name="code" type="xs:int" minOccurs="1"> + <xs:annotation> + <xs:documentation source="public">Application related code (as defined in the API or from a common list)</xs:documentation> + </xs:annotation> + </xs:element> + <xs:element name="reason" type="xs:string" minOccurs="1"> + <xs:annotation> + <xs:documentation source="public">Text that explains the reason for error. This can be shown to a client user.</xs:documentation> + </xs:annotation> + </xs:element> + <xs:element name="message" type="xs:string" minOccurs="0"> + <xs:annotation> + <xs:documentation source="public">Text that provide more details and corrective actions related to the error. This can be shown to a client user.</xs:documentation> + </xs:annotation> + </xs:element> + <xs:element name="status" type="xs:string" minOccurs="0"> + <xs:annotation> + <xs:documentation source="public">http error code extension like 400-2</xs:documentation> + </xs:annotation> + </xs:element> + <xs:element name="referenceError" type="xs:string" minOccurs="0"> + <xs:annotation> + <xs:documentation source="public">url pointing to documentation describing the error</xs:documentation> + </xs:annotation> + </xs:element> + <xs:element name="@type" type="xs:string" minOccurs="0"> + <xs:annotation> + <xs:documentation source="public">The class type of a REST resource.</xs:documentation> + </xs:annotation> + </xs:element> + <xs:element name="@schemaLocation" type="xs:string" minOccurs="0"> + <xs:annotation> + <xs:documentation source="public">it provides a link to the schema describing a REST resource.</xs:documentation> + </xs:annotation> + </xs:element> + </xs:sequence> + </xs:complexType> + <xs:element name="Service" type="Service"> + <xs:annotation> + <xs:documentation source="public">Instantiated service (service_instance) in AAI</xs:documentation> + </xs:annotation> + </xs:element> + <xs:complexType name="Service"> + <xs:annotation> + <xs:documentation source="public">Instantiated service (service_instance) in AAI</xs:documentation> + </xs:annotation> + <xs:sequence minOccurs="1" maxOccurs="1"> + <xs:element name="id" type="xs:string" minOccurs="0"> + <xs:annotation> + <xs:documentation source="public">Unique identifier of the service - Valued with service-instance-id</xs:documentation> + </xs:annotation> + </xs:element> + <xs:element name="href" type="xs:string" minOccurs="0"> + <xs:annotation> + <xs:documentation source="public">Reference of the service +Not managed in Beijing release</xs:documentation> + </xs:annotation> + </xs:element> + <xs:element name="name" type="xs:string" minOccurs="0"> + <xs:annotation> + <xs:documentation source="public">Name of the service - Valued with service-instance-name</xs:documentation> + </xs:annotation> + </xs:element> + <xs:element name="type" type="xs:string" minOccurs="0"> + <xs:annotation> + <xs:documentation source="public">Service type - valued with 'service-instance'</xs:documentation> + </xs:annotation> + </xs:element> + <xs:element name="state" type="xs:string" minOccurs="0"> + <xs:annotation> + <xs:documentation source="public">State of the service.</xs:documentation> + </xs:annotation> + </xs:element> + <xs:element name="@type" type="xs:string" minOccurs="0"> + <xs:annotation> + <xs:documentation source="public">This attribute allows to dynamically extends TMF class. Not used in Beijing release.</xs:documentation> + </xs:annotation> + </xs:element> + <xs:element name="@baseType" type="xs:string" minOccurs="0"> + <xs:annotation> + <xs:documentation source="public">Not managed in Beijing release</xs:documentation> + </xs:annotation> + </xs:element> + <xs:element name="@schemaLocation" type="xs:string" minOccurs="0"> + <xs:annotation> + <xs:documentation source="public">Not managed in Beijing release</xs:documentation> + </xs:annotation> + </xs:element> + <xs:element name="serviceSpecification" + type="ServiceSpecificationRef" + minOccurs="0"> + <xs:annotation> + <xs:documentation source="public">A service specification reference required to realize a ProductSpecification</xs:documentation> + </xs:annotation> + </xs:element> + <xs:element name="characteristic" + type="ServiceCharacteristic" + minOccurs="0" + maxOccurs="unbounded"> + <xs:annotation> + <xs:documentation source="public">A list of service characteristics i.e. name/value pairs that define the service characteristics</xs:documentation> + </xs:annotation> + </xs:element> + <xs:element name="supportingResource" + type="SupportingResource" + minOccurs="0" + maxOccurs="unbounded"> + <xs:annotation> + <xs:documentation source="public">A list of supporting resources +A supportingResource will be retrieved for each relationship of the relationship-list where related-link describe a vnf</xs:documentation> + </xs:annotation> + </xs:element> + <xs:element name="relatedParty" + type="RelatedPartyRef" + minOccurs="0" + maxOccurs="unbounded"> + <xs:annotation> + <xs:documentation source="public">A list of related party references . A related party defines party or party role linked to a specific entity.</xs:documentation> + </xs:annotation> + </xs:element> + </xs:sequence> + </xs:complexType> + <xs:element name="ServiceSpecificationRef" type="ServiceSpecificationRef"> + <xs:annotation> + <xs:documentation source="public">Service specification reference: ServiceSpecification of this service (catalog information)</xs:documentation> + </xs:annotation> + </xs:element> + <xs:complexType name="ServiceSpecificationRef"> + <xs:annotation> + <xs:documentation source="public">Service specification reference: ServiceSpecification of this service (catalog information)</xs:documentation> + </xs:annotation> + <xs:sequence minOccurs="1" maxOccurs="1"> + <xs:element name="id" type="xs:string" minOccurs="0"> + <xs:annotation> + <xs:documentation source="public">Unique identifier of the service specification. valued to model-version-id</xs:documentation> + </xs:annotation> + </xs:element> + <xs:element name="href" type="xs:string" minOccurs="0"> + <xs:annotation> + <xs:documentation source="public">Reference of the service specification. +not managed in Beijing release.</xs:documentation> + </xs:annotation> + </xs:element> + <xs:element name="name" type="xs:string" minOccurs="0"> + <xs:annotation> + <xs:documentation source="public">Name of the required service specification</xs:documentation> + </xs:annotation> + </xs:element> + <xs:element name="version" type="xs:string" minOccurs="0"> + <xs:annotation> + <xs:documentation source="public">Service specification version. +Not managed in Beijing release</xs:documentation> + </xs:annotation> + </xs:element> + <xs:element name="@referredType" type="xs:string" minOccurs="0"> + <xs:annotation> + <xs:documentation source="public">This attribute allows to dynamically extends TMF class. Valued with 'ONAPservice'. We used this features to add following attribute: invariantUUID</xs:documentation> + </xs:annotation> + </xs:element> + <xs:element name="@schemaLocation" type="xs:string" minOccurs="0"> + <xs:annotation> + <xs:documentation source="public">Not managed in Beijing release</xs:documentation> + </xs:annotation> + </xs:element> + <xs:element name="invariantUUID" type="xs:string" minOccurs="0"> + <xs:annotation> + <xs:documentation source="public">Additional attribute (not in the TMF API) - extended through @referredType - model-invariant-id</xs:documentation> + </xs:annotation> + </xs:element> + </xs:sequence> + </xs:complexType> + <xs:element name="ServiceCharacteristic" type="ServiceCharacteristic"> + <xs:annotation> + <xs:documentation source="public">A list of name value pairs that define the service characteristics +Not managed in Beijing release.</xs:documentation> + </xs:annotation> + </xs:element> + <xs:complexType name="ServiceCharacteristic"> + <xs:annotation> + <xs:documentation source="public">A list of name value pairs that define the service characteristics +Not managed in Beijing release.</xs:documentation> + </xs:annotation> + <xs:sequence minOccurs="1" maxOccurs="1"> + <xs:element name="name" type="xs:string" minOccurs="1"> + <xs:annotation> + <xs:documentation source="public">Name of the characteristic +Not managed in Beijing release.</xs:documentation> + </xs:annotation> + </xs:element> + <xs:element name="valueType" type="xs:string" minOccurs="0"> + <xs:annotation> + <xs:documentation source="public">Type of value for this characteristic. +Not managed in Beijing release.</xs:documentation> + </xs:annotation> + </xs:element> + <xs:element name="value" type="Value" minOccurs="0"> + <xs:annotation> + <xs:documentation source="public">Value of the characteristic +Not managed in Beijing release.</xs:documentation> + </xs:annotation> + </xs:element> + </xs:sequence> + </xs:complexType> + <xs:element name="SupportingResource" type="SupportingResource"> + <xs:annotation> + <xs:documentation source="public">Supporting resource - A supportingResource will be retrieved for each relationship of the relationship-list where related-link describe a vnf</xs:documentation> + </xs:annotation> + </xs:element> + <xs:complexType name="SupportingResource"> + <xs:annotation> + <xs:documentation source="public">Supporting resource - A supportingResource will be retrieved for each relationship of the relationship-list where related-link describe a vnf</xs:documentation> + </xs:annotation> + <xs:sequence minOccurs="1" maxOccurs="1"> + <xs:element name="id" type="xs:string" minOccurs="0"> + <xs:annotation> + <xs:documentation source="public">Unique identifier of the supporting resource - Valued to vnf-id</xs:documentation> + </xs:annotation> + </xs:element> + <xs:element name="href" type="xs:string" minOccurs="0"> + <xs:annotation> + <xs:documentation source="public">Reference of the supporting resource</xs:documentation> + </xs:annotation> + </xs:element> + <xs:element name="role" type="xs:string" minOccurs="0"> + <xs:annotation> + <xs:documentation source="public">Not managed in Beijing release.</xs:documentation> + </xs:annotation> + </xs:element> + <xs:element name="name" type="xs:string" minOccurs="0"> + <xs:annotation> + <xs:documentation source="public">Name of the supporting resource - Valued with vnf_-name</xs:documentation> + </xs:annotation> + </xs:element> + <xs:element name="@referredType" type="xs:string" minOccurs="0"> + <xs:annotation> + <xs:documentation source="public">This attribute allows to dynamically extends TMF class. Valued with 'ONAP resource'. We used this features to add following attributes: + status + modelInvariantId + modelVersionId + modelCustomisationId</xs:documentation> + </xs:annotation> + </xs:element> + <xs:element name="@schemaLocation" type="xs:string" minOccurs="0"> + <xs:annotation> + <xs:documentation source="public">Not managed in Beijing release.</xs:documentation> + </xs:annotation> + </xs:element> + <xs:element name="status" type="xs:string" minOccurs="0"> + <xs:annotation> + <xs:documentation source="public">Additional attribute (not in the TMF API) - extended through @referredType - valued with prov-status</xs:documentation> + </xs:annotation> + </xs:element> + <xs:element name="modelInvariantId" type="xs:string" minOccurs="0"> + <xs:annotation> + <xs:documentation source="public">Additional attribute (not in the TMF API) - extended through @referredType - valued with model-invariant-id</xs:documentation> + </xs:annotation> + </xs:element> + <xs:element name="modelVersionId" type="xs:string" minOccurs="0"> + <xs:annotation> + <xs:documentation source="public">Additional attribute (not in the TMF API) - extended through @referredType - valued with model-verson-id</xs:documentation> + </xs:annotation> + </xs:element> + <xs:element name="modelCustomisationId" type="xs:string" minOccurs="0"> + <xs:annotation> + <xs:documentation source="public">Additional attribute (not in the TMF API) - extended through @referredType - valued with model-customisation-id</xs:documentation> + </xs:annotation> + </xs:element> + </xs:sequence> + </xs:complexType> + <xs:element name="RelatedPartyRef" type="RelatedPartyRef"> + <xs:annotation> + <xs:documentation source="public">RelatedParty reference. A related party defines party or party role linked to a specific entity.</xs:documentation> + </xs:annotation> + </xs:element> + <xs:complexType name="RelatedPartyRef"> + <xs:annotation> + <xs:documentation source="public">RelatedParty reference. A related party defines party or party role linked to a specific entity.</xs:documentation> + </xs:annotation> + <xs:sequence minOccurs="1" maxOccurs="1"> + <xs:element name="id" type="xs:string" minOccurs="0"> + <xs:annotation> + <xs:documentation source="public">Unique identifier of a related party</xs:documentation> + </xs:annotation> + </xs:element> + <xs:element name="href" type="xs:string" minOccurs="0"> + <xs:annotation> + <xs:documentation source="public">Reference of a related party. +Not filled in Beijing release.</xs:documentation> + </xs:annotation> + </xs:element> + <xs:element name="role" type="xs:string" minOccurs="0"> + <xs:annotation> + <xs:documentation source="public">Role played by the related party. +Filled with 'ONAPcustomer'</xs:documentation> + </xs:annotation> + </xs:element> + <xs:element name="@referredType" type="xs:string" minOccurs="0"> + <xs:annotation> + <xs:documentation source="public">Not managed in the Beijing release.</xs:documentation> + </xs:annotation> + </xs:element> + </xs:sequence> + </xs:complexType> + <xs:element name="Value" type="Value"> + <xs:annotation> + <xs:documentation source="public">Structure used to describe characteristic value. +Not managed in Beijing release.</xs:documentation> + </xs:annotation> + </xs:element> + <xs:complexType name="Value"> + <xs:annotation> + <xs:documentation source="public">Structure used to describe characteristic value. +Not managed in Beijing release.</xs:documentation> + </xs:annotation> + <xs:sequence minOccurs="1" maxOccurs="1"> + <xs:element name="@type" type="xs:string" minOccurs="0"> + <xs:annotation> + <xs:documentation source="public">Not managed in Beijing release.</xs:documentation> + </xs:annotation> + </xs:element> + <xs:element name="@schemaLocation" type="xs:string" minOccurs="0"> + <xs:annotation> + <xs:documentation source="public">Not managed in Beijing release.</xs:documentation> + </xs:annotation> + </xs:element> + <xs:element name="serviceCharacteristicValue" type="xs:string" minOccurs="0"> + <xs:annotation> + <xs:documentation source="public">Not managed in Beijing release.</xs:documentation> + </xs:annotation> + </xs:element> + </xs:sequence> + </xs:complexType> + <xs:element name="ListRelatedPartyRef" type="ListRelatedPartyRef"> + <xs:annotation> + <xs:documentation source="public">This class is used to structure list of service(s) retrieved</xs:documentation> + </xs:annotation> + </xs:element> + <xs:complexType name="ListRelatedPartyRef"> + <xs:annotation> + <xs:documentation source="public">This class is used to structure list of service(s) retrieved</xs:documentation> + </xs:annotation> + <xs:sequence minOccurs="1" maxOccurs="1"> + <xs:element name="id" type="xs:string" minOccurs="0"> + <xs:annotation> + <xs:documentation source="public">Unique identifier of a related party</xs:documentation> + </xs:annotation> + </xs:element> + <xs:element name="role" type="xs:string" minOccurs="0"> + <xs:annotation> + <xs:documentation source="public">Role played by the related party - only role “ONAPcustomer” is managed in Beijing release.</xs:documentation> + </xs:annotation> + </xs:element> + </xs:sequence> + </xs:complexType> + <xs:element name="ListServiceSpecificationRef" type="ListServiceSpecificationRef"> + <xs:annotation> + <xs:documentation source="public">This class is used to structure list of service(s) retrieved</xs:documentation> + </xs:annotation> + </xs:element> + <xs:complexType name="ListServiceSpecificationRef"> + <xs:annotation> + <xs:documentation source="public">This class is used to structure list of service(s) retrieved</xs:documentation> + </xs:annotation> + <xs:sequence minOccurs="1" maxOccurs="1"> + <xs:element name="id" type="xs:string" minOccurs="0"> + <xs:annotation> + <xs:documentation source="public">Unique identifier of the service specification</xs:documentation> + </xs:annotation> + </xs:element> + <xs:element name="name" type="xs:string" minOccurs="0"> + <xs:annotation> + <xs:documentation source="public">Name of the required service specification</xs:documentation> + </xs:annotation> + </xs:element> + </xs:sequence> + </xs:complexType> + <xs:element name="ListService" type="ListService"> + <xs:annotation> + <xs:documentation source="public">This class is used to structure list of service(s) retrieved</xs:documentation> + </xs:annotation> + </xs:element> + <xs:complexType name="ListService"> + <xs:annotation> + <xs:documentation source="public">This class is used to structure list of service(s) retrieved</xs:documentation> + </xs:annotation> + <xs:sequence minOccurs="1" maxOccurs="1"> + <xs:element name="id" type="xs:string" minOccurs="0"> + <xs:annotation> + <xs:documentation source="public">Unique identifier of the service</xs:documentation> + </xs:annotation> + </xs:element> + <xs:element name="name" type="xs:string" minOccurs="0"> + <xs:annotation> + <xs:documentation source="public">Name of the service</xs:documentation> + </xs:annotation> + </xs:element> + <xs:element name="serviceSpecification" + type="ListServiceSpecificationRef" + minOccurs="0"> + <xs:annotation> + <xs:documentation source="public">A service specification reference required to realize a ProductSpecification</xs:documentation> + </xs:annotation> + </xs:element> + <xs:element name="relatedParty" type="ListRelatedPartyRef" minOccurs="0"> + <xs:annotation> + <xs:documentation source="public">Related Party to the service (only ONAP customer is managed)</xs:documentation> + </xs:annotation> + </xs:element> + </xs:sequence> + </xs:complexType> + <xs:element name="ServiceInventoryEvent" type="ServiceInventoryEvent"> + <xs:annotation> + <xs:documentation source="public">Structure for a service inventory event notification</xs:documentation> + </xs:annotation> + </xs:element> + <xs:complexType name="ServiceInventoryEvent"> + <xs:annotation> + <xs:documentation source="public">Structure for a service inventory event notification</xs:documentation> + </xs:annotation> + <xs:sequence minOccurs="1" maxOccurs="1"> + <xs:element name="id" type="xs:string" minOccurs="1"> + <xs:annotation> + <xs:documentation source="public">The Service Instance Id</xs:documentation> + </xs:annotation> + </xs:element> + <xs:element name="href" type="xs:string" minOccurs="1"> + <xs:annotation> + <xs:documentation source="public">A reference to the service inventory</xs:documentation> + </xs:annotation> + </xs:element> + <xs:element name="name" type="xs:string" minOccurs="1"> + <xs:annotation> + <xs:documentation source="public">The name of the Service Instance</xs:documentation> + </xs:annotation> + </xs:element> + <xs:element name="type" type="xs:string" minOccurs="1"> + <xs:annotation> + <xs:documentation source="public">The type of event, service-instance</xs:documentation> + </xs:annotation> + </xs:element> + <xs:element name="state" type="xs:string" minOccurs="1"> + <xs:annotation> + <xs:documentation source="public">The state of the service instance</xs:documentation> + </xs:annotation> + </xs:element> + <xs:element name="relatedParty" type="RelatedPartyRef" minOccurs="1"/> + </xs:sequence> + </xs:complexType> + <xs:element name="Notification" type="Notification"> + <xs:annotation> + <xs:documentation source="public">Notification structure for a service notification</xs:documentation> + </xs:annotation> + </xs:element> + <xs:complexType name="Notification"> + <xs:annotation> + <xs:documentation source="public">Notification structure for a service notification</xs:documentation> + </xs:annotation> + <xs:sequence minOccurs="1" maxOccurs="1"> + <xs:element name="eventId" type="xs:string" minOccurs="1"/> + <xs:element name="eventDate" type="xs:dateTime" minOccurs="1"/> + <xs:element name="eventType" type="eventType" minOccurs="1"/> + <xs:element name="event" type="ServiceInventoryEvent" minOccurs="1"/> + </xs:sequence> + </xs:complexType> +</xs:schema> diff --git a/docs/offeredapis/api_serviceInventory/swagger.json b/docs/offeredapis/api_serviceInventory/swagger.json new file mode 100644 index 0000000..81b882d --- /dev/null +++ b/docs/offeredapis/api_serviceInventory/swagger.json @@ -0,0 +1,603 @@ + + { + "swagger": "2.0", + "info": { + "description": "Query information about instantiated services\n\nList of available subscription for serviceInventory notifications, see /hub resources for more information:\n\n- ServiceCreationNotification\n- ServiceAttributeValueChangeNotification\n- ServiceRemoveNotification\n\n", + "version": "4.0.0_inProgress", + "title": "API ServiceInventory", + "x-logo": { + "url": "/redoc/logo.png", + "backgroundColor": "#FFFFFF" + } + }, + + "host": "localhost:8080", + "basePath": "/nbi/api/v4", + "schemes": [ + "http" + ], + "produces": [ + "application/json;charset=utf-8" + ], + "tags": [ + + { + "name": "Service", + "description": "Provided by NBI" + }, + { + "name": "Notification", + "description": "provided by subscriber, which MUST has been registered by creating a Hub ressource on NBI" + } + ], + "paths": { + "/service": { + "get": { + "tags": [ + "Service" + ], + "produces": [ + "application/json;charset=utf-8" + ], + "operationId": "serviceFind", + "summary": "List services", + "description": "This operation list service entities. \nAttribute selection is restricted. \nfields attribute may be used to filter retrieved attribute(s) for each service", + "deprecated": false, + + "parameters": [ + + { + "name": "relatedParty.id", + "required": false, + "in": "query", + "description": "", + + "type": "string" + }, + { + "name": "serviceSpecification.id", + "required": false, + "in": "query", + "description": "", + + "type": "string" + }, + { + "name": "serviceSpecification.name", + "required": false, + "in": "query", + "description": "", + + "type": "string" + }, + { + "name": "id", + "required": false, + "in": "query", + "description": "", + + "type": "string" + }, + { + "name": "fields", + "required": false, + "in": "query", + "description": "", + + "type": "string" + } + ], + "responses": { + "200": { + "description": "Ok", + "schema": { + "type": "array", + "items": { + "$ref": "#/definitions/ListService" + } + } + + } + } + } + }, + "/service/{id}": { + "get": { + "tags": [ + "Service" + ], + "produces": [ + "application/json;charset=utf-8" + ], + "operationId": "serviceGet", + "summary": "Retrieve a service", + "description": "This operation retrieves a service entity. \nAttribute selection is enabled for all first level attributes.", + "deprecated": false, + + "parameters": [ + + { + "name": "id", + "required": true, + "in": "path", + "type" : "string" + } + ], + "responses": { + "200": { + "description": "Ok", + "schema": { + "$ref": "#/definitions/Service" + } + + } + } + } + }, + "/notification": { + "post": { + "tags": [ + "Notification" + ], + "consumes": [ + "application/json;charset=utf-8" + ], + "produces": [ + "application/json;charset=utf-8" + ], + "operationId": "notificationCreate", + "summary": "NBI will send notification to this operation provided by subscribers", + "description": "", + "deprecated": false, + + "parameters": [ + + { + "name": "Notification", + "required": true, + "in": "body", + "description": "", + "schema": { + "$ref": "#/definitions/Notification" + } + } + ], + "responses": { + "201": { + "description": "Created", + "schema": { + "$ref": "#/definitions/Notification" + } + + } + } + } + } + }, + "definitions": { + + "eventType": { + "description": "", + + "type": "string", + "enum": [ + "ServiceCreationNotification", + "ServiceAttributeValueChangeNotification", + "ServiceRemoveNotification"] + + }, + + "ErrorRepresentation": { + "description": "This class is used to describe error.", + + + "required": [ + + "code", + "reason" + ], + "type": "object", + "properties": { + "code": { + "description": "Application related code (as defined in the API or from a common list)", + "type": "integer", + "format": "int32" + }, + "reason": { + "description": "Text that explains the reason for error. This can be shown to a client user.", + "type": "string" + }, + "message": { + "description": "Text that provide more details and corrective actions related to the error. This can be shown to a client user.", + "type": "string" + }, + "status": { + "description": "http error code extension like 400-2", + "type": "string" + }, + "referenceError": { + "description": "url pointing to documentation describing the error", + "type": "string" + }, + "@type": { + "description": "The class type of a REST resource.", + "type": "string" + }, + "@schemaLocation": { + "description": "it provides a link to the schema describing a REST resource.", + "type": "string" + } + } + + }, + + "Service": { + "description": "Instantiated service (service_instance) in AAI", + + + "type": "object", + "properties": { + "id": { + "description": "Unique identifier of the service - Valued with service-instance-id", + "type": "string" + }, + "href": { + "description": "Reference of the service\nNot managed in Beijing release", + "type": "string" + }, + "name": { + "description": "Name of the service - Valued with service-instance-name", + "type": "string" + }, + "type": { + "description": "Service type - valued with 'service-instance'", + "type": "string" + }, + "state": { + "description": "State of the service.", + "type": "string" + }, + "@type": { + "description": "This attribute allows to dynamically extends TMF class. Not used in Beijing release.", + "type": "string" + }, + "@baseType": { + "description": "Not managed in Beijing release", + "type": "string" + }, + "@schemaLocation": { + "description": "Not managed in Beijing release", + "type": "string" + }, + "serviceSpecification": { + + "$ref": "#/definitions/ServiceSpecificationRef" + }, + "characteristic": { + + "type": "array", + "items": { + "$ref": "#/definitions/ServiceCharacteristic" + } + }, + "supportingResource": { + + "type": "array", + "items": { + "$ref": "#/definitions/SupportingResource" + } + }, + "relatedParty": { + + "type": "array", + "items": { + "$ref": "#/definitions/RelatedPartyRef" + } + } + } + + }, + + "ServiceSpecificationRef": { + "description": "Service specification reference: ServiceSpecification of this service (catalog information)", + + + "type": "object", + "properties": { + "id": { + "description": "Unique identifier of the service specification. valued to model-version-id", + "type": "string" + }, + "href": { + "description": "Reference of the service specification.\nnot managed in Beijing release.", + "type": "string" + }, + "name": { + "description": "Name of the required service specification", + "type": "string" + }, + "version": { + "description": "Service specification version.\nNot managed in Beijing release", + "type": "string" + }, + "@referredType": { + "description": "This attribute allows to dynamically extends TMF class. Valued with 'ONAPservice'. We used this features to add following attribute: invariantUUID", + "type": "string" + }, + "@schemaLocation": { + "description": "Not managed in Beijing release", + "type": "string" + }, + "invariantUUID": { + "description": "Additional attribute (not in the TMF API) - extended through @referredType - model-invariant-id", + "type": "string" + } + } + + }, + + "ServiceCharacteristic": { + "description": "A list of name value pairs that define the service characteristics\nNot managed in Beijing release.", + + + "required": [ + + "name" + ], + "type": "object", + "properties": { + "name": { + "description": "Name of the characteristic\nNot managed in Beijing release.", + "type": "string" + }, + "valueType": { + "description": "Type of value for this characteristic.\nNot managed in Beijing release.", + "type": "string" + }, + "value": { + + "$ref": "#/definitions/Value" + } + } + + }, + + "SupportingResource": { + "description": "Supporting resource - A supportingResource will be retrieved for each relationship of the relationship-list where related-link describe a vnf", + + + "type": "object", + "properties": { + "id": { + "description": "Unique identifier of the supporting resource - Valued to vnf-id", + "type": "string" + }, + "href": { + "description": "Reference of the supporting resource", + "type": "string" + }, + "role": { + "description": "Not managed in Beijing release.", + "type": "string" + }, + "name": { + "description": "Name of the supporting resource - Valued with vnf_-name", + "type": "string" + }, + "@referredType": { + "description": "This attribute allows to dynamically extends TMF class. Valued with 'ONAP resource'. We used this features to add following attributes:\n status\t\n modelInvariantId\n modelVersionId\n modelCustomisationId", + "type": "string" + }, + "@schemaLocation": { + "description": "Not managed in Beijing release.", + "type": "string" + }, + "status": { + "description": "Additional attribute (not in the TMF API) - extended through @referredType - valued with prov-status", + "type": "string" + }, + "modelInvariantId": { + "description": "Additional attribute (not in the TMF API) - extended through @referredType - valued with model-invariant-id", + "type": "string" + }, + "modelVersionId": { + "description": "Additional attribute (not in the TMF API) - extended through @referredType - valued with model-verson-id", + "type": "string" + }, + "modelCustomisationId": { + "description": "Additional attribute (not in the TMF API) - extended through @referredType - valued with model-customisation-id", + "type": "string" + } + } + + }, + + "RelatedPartyRef": { + "description": "RelatedParty reference. A related party defines party or party role linked to a specific entity.", + + + "type": "object", + "properties": { + "id": { + "description": "Unique identifier of a related party", + "type": "string" + }, + "href": { + "description": "Reference of a related party.\nNot filled in Beijing release.", + "type": "string" + }, + "role": { + "description": "Role played by the related party.\nFilled with 'ONAPcustomer'", + "type": "string" + }, + "@referredType": { + "description": "Not managed in the Beijing release.", + "type": "string" + } + } + + }, + + "Value": { + "description": "Structure used to describe characteristic value.\nNot managed in Beijing release.", + + + "type": "object", + "properties": { + "@type": { + "description": "Not managed in Beijing release.", + "type": "string" + }, + "@schemaLocation": { + "description": "Not managed in Beijing release.", + "type": "string" + }, + "serviceCharacteristicValue": { + "description": "Not managed in Beijing release.", + "type": "string" + } + } + + }, + + "ListRelatedPartyRef": { + "description": "This class is used to structure list of service(s) retrieved", + + + "type": "object", + "properties": { + "id": { + "description": "Unique identifier of a related party", + "type": "string" + }, + "role": { + "description": "Role played by the related party - only role “ONAPcustomer” is managed in Beijing release.", + "type": "string" + } + } + + }, + + "ListServiceSpecificationRef": { + "description": "This class is used to structure list of service(s) retrieved", + + + "type": "object", + "properties": { + "id": { + "description": "Unique identifier of the service specification", + "type": "string" + }, + "name": { + "description": "Name of the required service specification", + "type": "string" + } + } + + }, + + "ListService": { + "description": "This class is used to structure list of service(s) retrieved", + + + "type": "object", + "properties": { + "id": { + "description": "Unique identifier of the service", + "type": "string" + }, + "name": { + "description": "Name of the service", + "type": "string" + }, + "serviceSpecification": { + + "$ref": "#/definitions/ListServiceSpecificationRef" + }, + "relatedParty": { + + "$ref": "#/definitions/ListRelatedPartyRef" + } + } + + }, + + "ServiceInventoryEvent": { + "description": "Structure for a service inventory event notification", + + + "required": [ + + "id", + "href", + "name", + "type", + "state", + "relatedParty" + ], + "type": "object", + "properties": { + "id": { + "description": "The Service Instance Id", + "type": "string" + }, + "href": { + "description": "A reference to the service inventory", + "type": "string" + }, + "name": { + "description": "The name of the Service Instance", + "type": "string" + }, + "type": { + "description": "The type of event, service-instance", + "type": "string" + }, + "state": { + "description": "The state of the service instance", + "type": "string" + }, + "relatedParty": { + + "$ref": "#/definitions/RelatedPartyRef" + } + } + + }, + + "Notification": { + "description": "Notification structure for a service notification", + + + "required": [ + + "eventId", + "eventDate", + "eventType", + "event" + ], + "type": "object", + "properties": { + "eventId": { + "description": "", + "type": "string" + }, + "eventDate": { + "description": "", + "type": "string", + "format": "date-time" + }, + "eventType": { + + "$ref": "#/definitions/eventType" + }, + "event": { + + "$ref": "#/definitions/ServiceInventoryEvent" + } + } + + } + } + } +
\ No newline at end of file diff --git a/docs/offeredapis/api_serviceInventory/swagger.yaml b/docs/offeredapis/api_serviceInventory/swagger.yaml new file mode 100644 index 0000000..6550d5d --- /dev/null +++ b/docs/offeredapis/api_serviceInventory/swagger.yaml @@ -0,0 +1,398 @@ +swagger: "2.0" +info: + description: "Query information about instantiated services\n\nList of available\ + \ subscription for serviceInventory notifications, see /hub resources for more\ + \ information:\n\n- ServiceCreationNotification\n- ServiceAttributeValueChangeNotification\n\ + - ServiceRemoveNotification\n\n" + version: "4.0.0_inProgress" + title: "API ServiceInventory" + x-logo: + url: "/redoc/logo.png" + backgroundColor: "#FFFFFF" +host: "localhost:8080" +basePath: "/nbi/api/v4" +schemes: +- "http" +produces: +- "application/json;charset=utf-8" +tags: +- name: "Service" + description: "Provided by NBI" +- name: "Notification" + description: "provided by subscriber, which MUST has been registered by creating\ + \ a Hub ressource on NBI" +paths: + /service: + get: + tags: + - "Service" + produces: + - "application/json;charset=utf-8" + operationId: "serviceFind" + summary: "List services" + description: "This operation list service entities. \nAttribute selection is\ + \ restricted. \nfields attribute may be used to filter retrieved attribute(s)\ + \ for each service" + deprecated: false + parameters: + - name: "relatedParty.id" + required: false + in: "query" + description: "" + type: "string" + - name: "serviceSpecification.id" + required: false + in: "query" + description: "" + type: "string" + - name: "serviceSpecification.name" + required: false + in: "query" + description: "" + type: "string" + - name: "id" + required: false + in: "query" + description: "" + type: "string" + - name: "fields" + required: false + in: "query" + description: "" + type: "string" + responses: + 200: + description: "Ok" + schema: + type: "array" + items: + $ref: "#/definitions/ListService" + /service/{id}: + get: + tags: + - "Service" + produces: + - "application/json;charset=utf-8" + operationId: "serviceGet" + summary: "Retrieve a service" + description: "This operation retrieves a service entity. \nAttribute selection\ + \ is enabled for all first level attributes." + deprecated: false + parameters: + - name: "id" + required: true + in: "path" + type: "string" + responses: + 200: + description: "Ok" + schema: + $ref: "#/definitions/Service" + /notification: + post: + tags: + - "Notification" + consumes: + - "application/json;charset=utf-8" + produces: + - "application/json;charset=utf-8" + operationId: "notificationCreate" + summary: "NBI will send notification to this operation provided by subscribers" + description: "" + deprecated: false + parameters: + - name: "Notification" + required: true + in: "body" + description: "" + schema: + $ref: "#/definitions/Notification" + responses: + 201: + description: "Created" + schema: + $ref: "#/definitions/Notification" +definitions: + eventType: + description: "" + type: "string" + enum: + - "ServiceCreationNotification" + - "ServiceAttributeValueChangeNotification" + - "ServiceRemoveNotification" + ErrorRepresentation: + description: "This class is used to describe error." + required: + - "code" + - "reason" + type: "object" + properties: + code: + description: "Application related code (as defined in the API or from a common\ + \ list)" + type: "integer" + format: "int32" + reason: + description: "Text that explains the reason for error. This can be shown to\ + \ a client user." + type: "string" + message: + description: "Text that provide more details and corrective actions related\ + \ to the error. This can be shown to a client user." + type: "string" + status: + description: "http error code extension like 400-2" + type: "string" + referenceError: + description: "url pointing to documentation describing the error" + type: "string" + '@type': + description: "The class type of a REST resource." + type: "string" + '@schemaLocation': + description: "it provides a link to the schema describing a REST resource." + type: "string" + Service: + description: "Instantiated service (service_instance) in AAI" + type: "object" + properties: + id: + description: "Unique identifier of the service - Valued with service-instance-id" + type: "string" + href: + description: "Reference of the service\nNot managed in Beijing release" + type: "string" + name: + description: "Name of the service - Valued with service-instance-name" + type: "string" + type: + description: "Service type - valued with 'service-instance'" + type: "string" + state: + description: "State of the service." + type: "string" + '@type': + description: "This attribute allows to dynamically extends TMF class. Not\ + \ used in Beijing release." + type: "string" + '@baseType': + description: "Not managed in Beijing release" + type: "string" + '@schemaLocation': + description: "Not managed in Beijing release" + type: "string" + serviceSpecification: + $ref: "#/definitions/ServiceSpecificationRef" + characteristic: + type: "array" + items: + $ref: "#/definitions/ServiceCharacteristic" + supportingResource: + type: "array" + items: + $ref: "#/definitions/SupportingResource" + relatedParty: + type: "array" + items: + $ref: "#/definitions/RelatedPartyRef" + ServiceSpecificationRef: + description: "Service specification reference: ServiceSpecification of this service\ + \ (catalog information)" + type: "object" + properties: + id: + description: "Unique identifier of the service specification. valued to model-version-id" + type: "string" + href: + description: "Reference of the service specification.\nnot managed in Beijing\ + \ release." + type: "string" + name: + description: "Name of the required service specification" + type: "string" + version: + description: "Service specification version.\nNot managed in Beijing release" + type: "string" + '@referredType': + description: "This attribute allows to dynamically extends TMF class. Valued\ + \ with 'ONAPservice'. We used this features to add following attribute:\ + \ invariantUUID" + type: "string" + '@schemaLocation': + description: "Not managed in Beijing release" + type: "string" + invariantUUID: + description: "Additional attribute (not in the TMF API) - extended through\ + \ @referredType - model-invariant-id" + type: "string" + ServiceCharacteristic: + description: "A list of name value pairs that define the service characteristics\n\ + Not managed in Beijing release." + required: + - "name" + type: "object" + properties: + name: + description: "Name of the characteristic\nNot managed in Beijing release." + type: "string" + valueType: + description: "Type of value for this characteristic.\nNot managed in Beijing\ + \ release." + type: "string" + value: + $ref: "#/definitions/Value" + SupportingResource: + description: "Supporting resource - A supportingResource will be retrieved for\ + \ each relationship of the relationship-list where related-link describe a vnf" + type: "object" + properties: + id: + description: "Unique identifier of the supporting resource - Valued to vnf-id" + type: "string" + href: + description: "Reference of the supporting resource" + type: "string" + role: + description: "Not managed in Beijing release." + type: "string" + name: + description: "Name of the supporting resource - Valued with vnf_-name" + type: "string" + '@referredType': + description: "This attribute allows to dynamically extends TMF class. Valued\ + \ with 'ONAP resource'. We used this features to add following attributes:\n\ + \ status\t\n modelInvariantId\n modelVersionId\n modelCustomisationId" + type: "string" + '@schemaLocation': + description: "Not managed in Beijing release." + type: "string" + status: + description: "Additional attribute (not in the TMF API) - extended through\ + \ @referredType - valued with prov-status" + type: "string" + modelInvariantId: + description: "Additional attribute (not in the TMF API) - extended through\ + \ @referredType - valued with model-invariant-id" + type: "string" + modelVersionId: + description: "Additional attribute (not in the TMF API) - extended through\ + \ @referredType - valued with model-verson-id" + type: "string" + modelCustomisationId: + description: "Additional attribute (not in the TMF API) - extended through\ + \ @referredType - valued with model-customisation-id" + type: "string" + RelatedPartyRef: + description: "RelatedParty reference. A related party defines party or party role\ + \ linked to a specific entity." + type: "object" + properties: + id: + description: "Unique identifier of a related party" + type: "string" + href: + description: "Reference of a related party.\nNot filled in Beijing release." + type: "string" + role: + description: "Role played by the related party.\nFilled with 'ONAPcustomer'" + type: "string" + '@referredType': + description: "Not managed in the Beijing release." + type: "string" + Value: + description: "Structure used to describe characteristic value.\nNot managed in\ + \ Beijing release." + type: "object" + properties: + '@type': + description: "Not managed in Beijing release." + type: "string" + '@schemaLocation': + description: "Not managed in Beijing release." + type: "string" + serviceCharacteristicValue: + description: "Not managed in Beijing release." + type: "string" + ListRelatedPartyRef: + description: "This class is used to structure list of service(s) retrieved" + type: "object" + properties: + id: + description: "Unique identifier of a related party" + type: "string" + role: + description: "Role played by the related party - only role “ONAPcustomer”\ + \ is managed in Beijing release." + type: "string" + ListServiceSpecificationRef: + description: "This class is used to structure list of service(s) retrieved" + type: "object" + properties: + id: + description: "Unique identifier of the service specification" + type: "string" + name: + description: "Name of the required service specification" + type: "string" + ListService: + description: "This class is used to structure list of service(s) retrieved" + type: "object" + properties: + id: + description: "Unique identifier of the service" + type: "string" + name: + description: "Name of the service" + type: "string" + serviceSpecification: + $ref: "#/definitions/ListServiceSpecificationRef" + relatedParty: + $ref: "#/definitions/ListRelatedPartyRef" + ServiceInventoryEvent: + description: "Structure for a service inventory event notification" + required: + - "id" + - "href" + - "name" + - "type" + - "state" + - "relatedParty" + type: "object" + properties: + id: + description: "The Service Instance Id" + type: "string" + href: + description: "A reference to the service inventory" + type: "string" + name: + description: "The name of the Service Instance" + type: "string" + type: + description: "The type of event, service-instance" + type: "string" + state: + description: "The state of the service instance" + type: "string" + relatedParty: + $ref: "#/definitions/RelatedPartyRef" + Notification: + description: "Notification structure for a service notification" + required: + - "eventId" + - "eventDate" + - "eventType" + - "event" + type: "object" + properties: + eventId: + description: "" + type: "string" + eventDate: + description: "" + type: "string" + format: "date-time" + eventType: + $ref: "#/definitions/eventType" + event: + $ref: "#/definitions/ServiceInventoryEvent" |