{ "swagger": "2.0", "info": { "title": "Service Quality Management", "description": "This is Swagger UI environment generated for the TMF Service Quality Management specification", "version": "4.0.0" }, "host": "serverRoot", "basePath": "/tmf-api/serviceQualityManagement/v4/", "schemes": [ "https" ], "consumes": [ "application/json;charset=utf-8" ], "produces": [ "application/json;charset=utf-8" ], "tags": [ { "name": "serviceLevelObjective" }, { "name": "serviceLevelSpecification" }, { "name": "notification listeners (client side)" }, { "name": "events subscription" } ], "paths": { "/serviceLevelObjective": { "get": { "operationId": "listServiceLevelObjective", "summary": "List or find ServiceLevelObjective objects", "description": "This operation list or find ServiceLevelObjective entities", "tags": [ "serviceLevelObjective" ], "parameters": [ { "name": "fields", "description": "Comma-separated properties to be provided in response", "required": false, "in": "query", "type": "string" }, { "name": "offset", "description": "Requested index for start of resources to be provided in response", "required": false, "in": "query", "type": "integer" }, { "name": "limit", "description": "Requested number of resources to be provided in response", "required": false, "in": "query", "type": "integer" } ], "responses": { "200": { "description": "Success", "headers": { "X-Result-Count": { "description": "Actual number of items returned in the response body", "type": "integer" }, "X-Total-Count": { "description": "Total number of items matching criteria", "type": "integer" } }, "schema": { "type": "array", "items": { "$ref": "#/definitions/ServiceLevelObjective" } } }, "400": { "description": "Bad Request", "schema": { "$ref": "#/definitions/Error" } }, "401": { "description": "Unauthorized", "schema": { "$ref": "#/definitions/Error" } }, "403": { "description": "Forbidden", "schema": { "$ref": "#/definitions/Error" } }, "404": { "description": "Not Found", "schema": { "$ref": "#/definitions/Error" } }, "405": { "description": "Method Not allowed", "schema": { "$ref": "#/definitions/Error" } }, "409": { "description": "Conflict", "schema": { "$ref": "#/definitions/Error" } }, "500": { "description": "Internal Server Error", "schema": { "$ref": "#/definitions/Error" } } } }, "post": { "operationId": "createServiceLevelObjective", "summary": "Creates a ServiceLevelObjective", "description": "This operation creates a ServiceLevelObjective entity.", "tags": [ "serviceLevelObjective" ], "parameters": [ { "name": "serviceLevelObjective", "description": "The ServiceLevelObjective to be created", "required": true, "schema": { "$ref": "#/definitions/ServiceLevelObjective_Create" }, "in": "body" } ], "responses": { "201": { "description": "Created", "schema": { "$ref": "#/definitions/ServiceLevelObjective" } }, "400": { "description": "Bad Request", "schema": { "$ref": "#/definitions/Error" } }, "401": { "description": "Unauthorized", "schema": { "$ref": "#/definitions/Error" } }, "403": { "description": "Forbidden", "schema": { "$ref": "#/definitions/Error" } }, "405": { "description": "Method Not allowed", "schema": { "$ref": "#/definitions/Error" } }, "409": { "description": "Conflict", "schema": { "$ref": "#/definitions/Error" } }, "500": { "description": "Internal Server Error", "schema": { "$ref": "#/definitions/Error" } } } } }, "/serviceLevelObjective/{id}": { "get": { "operationId": "retrieveServiceLevelObjective", "summary": "Retrieves a ServiceLevelObjective by ID", "description": "This operation retrieves a ServiceLevelObjective entity. Attribute selection is enabled for all first level attributes.", "tags": [ "serviceLevelObjective" ], "parameters": [ { "name": "id", "description": "Identifier of the ServiceLevelObjective", "required": true, "type": "string", "in": "path" }, { "name": "fields", "description": "Comma-separated properties to provide in response", "required": false, "type": "string", "in": "query" } ], "responses": { "200": { "description": "Success", "schema": { "$ref": "#/definitions/ServiceLevelObjective" } }, "400": { "description": "Bad Request", "schema": { "$ref": "#/definitions/Error" } }, "401": { "description": "Unauthorized", "schema": { "$ref": "#/definitions/Error" } }, "403": { "description": "Forbidden", "schema": { "$ref": "#/definitions/Error" } }, "404": { "description": "Not Found", "schema": { "$ref": "#/definitions/Error" } }, "405": { "description": "Method Not allowed", "schema": { "$ref": "#/definitions/Error" } }, "409": { "description": "Conflict", "schema": { "$ref": "#/definitions/Error" } }, "500": { "description": "Internal Server Error", "schema": { "$ref": "#/definitions/Error" } } } }, "patch": { "operationId": "patchServiceLevelObjective", "summary": "Updates partially a ServiceLevelObjective", "description": "This operation updates partially a ServiceLevelObjective entity.", "tags": [ "serviceLevelObjective" ], "parameters": [ { "name": "id", "description": "Identifier of the ServiceLevelObjective", "required": true, "type": "string", "in": "path" }, { "name": "serviceLevelObjective", "description": "The ServiceLevelObjective to be updated", "required": true, "schema": { "$ref": "#/definitions/ServiceLevelObjective_Update" }, "in": "body" } ], "responses": { "200": { "description": "Updated", "schema": { "$ref": "#/definitions/ServiceLevelObjective" } }, "400": { "description": "Bad Request", "schema": { "$ref": "#/definitions/Error" } }, "401": { "description": "Unauthorized", "schema": { "$ref": "#/definitions/Error" } }, "403": { "description": "Forbidden", "schema": { "$ref": "#/definitions/Error" } }, "404": { "description": "Not Found", "schema": { "$ref": "#/definitions/Error" } }, "405": { "description": "Method Not allowed", "schema": { "$ref": "#/definitions/Error" } }, "409": { "description": "Conflict", "schema": { "$ref": "#/definitions/Error" } }, "500": { "description": "Internal Server Error", "schema": { "$ref": "#/definitions/Error" } } } }, "delete": { "operationId": "deleteServiceLevelObjective", "summary": "Deletes a ServiceLevelObjective", "description": "This operation deletes a ServiceLevelObjective entity.", "tags": [ "serviceLevelObjective" ], "parameters": [ { "name": "id", "description": "Identifier of the ServiceLevelObjective", "required": true, "type": "string", "in": "path" } ], "responses": { "204": { "description": "Deleted" }, "400": { "description": "Bad Request", "schema": { "$ref": "#/definitions/Error" } }, "401": { "description": "Unauthorized", "schema": { "$ref": "#/definitions/Error" } }, "403": { "description": "Forbidden", "schema": { "$ref": "#/definitions/Error" } }, "404": { "description": "Not Found", "schema": { "$ref": "#/definitions/Error" } }, "405": { "description": "Method Not allowed", "schema": { "$ref": "#/definitions/Error" } }, "409": { "description": "Conflict", "schema": { "$ref": "#/definitions/Error" } }, "500": { "description": "Internal Server Error", "schema": { "$ref": "#/definitions/Error" } } } } }, "/serviceLevelSpecification": { "get": { "operationId": "listServiceLevelSpecification", "summary": "List or find ServiceLevelSpecification objects", "description": "This operation list or find ServiceLevelSpecification entities", "tags": [ "serviceLevelSpecification" ], "parameters": [ { "name": "fields", "description": "Comma-separated properties to be provided in response", "required": false, "in": "query", "type": "string" }, { "name": "offset", "description": "Requested index for start of resources to be provided in response", "required": false, "in": "query", "type": "integer" }, { "name": "limit", "description": "Requested number of resources to be provided in response", "required": false, "in": "query", "type": "integer" } ], "responses": { "200": { "description": "Success", "headers": { "X-Result-Count": { "description": "Actual number of items returned in the response body", "type": "integer" }, "X-Total-Count": { "description": "Total number of items matching criteria", "type": "integer" } }, "schema": { "type": "array", "items": { "$ref": "#/definitions/ServiceLevelSpecification" } } }, "400": { "description": "Bad Request", "schema": { "$ref": "#/definitions/Error" } }, "401": { "description": "Unauthorized", "schema": { "$ref": "#/definitions/Error" } }, "403": { "description": "Forbidden", "schema": { "$ref": "#/definitions/Error" } }, "404": { "description": "Not Found", "schema": { "$ref": "#/definitions/Error" } }, "405": { "description": "Method Not allowed", "schema": { "$ref": "#/definitions/Error" } }, "409": { "description": "Conflict", "schema": { "$ref": "#/definitions/Error" } }, "500": { "description": "Internal Server Error", "schema": { "$ref": "#/definitions/Error" } } } }, "post": { "operationId": "createServiceLevelSpecification", "summary": "Creates a ServiceLevelSpecification", "description": "This operation creates a ServiceLevelSpecification entity.", "tags": [ "serviceLevelSpecification" ], "parameters": [ { "name": "serviceLevelSpecification", "description": "The ServiceLevelSpecification to be created", "required": true, "schema": { "$ref": "#/definitions/ServiceLevelSpecification_Create" }, "in": "body" } ], "responses": { "201": { "description": "Created", "schema": { "$ref": "#/definitions/ServiceLevelSpecification" } }, "400": { "description": "Bad Request", "schema": { "$ref": "#/definitions/Error" } }, "401": { "description": "Unauthorized", "schema": { "$ref": "#/definitions/Error" } }, "403": { "description": "Forbidden", "schema": { "$ref": "#/definitions/Error" } }, "405": { "description": "Method Not allowed", "schema": { "$ref": "#/definitions/Error" } }, "409": { "description": "Conflict", "schema": { "$ref": "#/definitions/Error" } }, "500": { "description": "Internal Server Error", "schema": { "$ref": "#/definitions/Error" } } } } }, "/serviceLevelSpecification/{id}": { "get": { "operationId": "retrieveServiceLevelSpecification", "summary": "Retrieves a ServiceLevelSpecification by ID", "description": "This operation retrieves a ServiceLevelSpecification entity. Attribute selection is enabled for all first level attributes.", "tags": [ "serviceLevelSpecification" ], "parameters": [ { "name": "id", "description": "Identifier of the ServiceLevelSpecification", "required": true, "type": "string", "in": "path" }, { "name": "fields", "description": "Comma-separated properties to provide in response", "required": false, "type": "string", "in": "query" } ], "responses": { "200": { "description": "Success", "schema": { "$ref": "#/definitions/ServiceLevelSpecification" } }, "400": { "description": "Bad Request", "schema": { "$ref": "#/definitions/Error" } }, "401": { "description": "Unauthorized", "schema": { "$ref": "#/definitions/Error" } }, "403": { "description": "Forbidden", "schema": { "$ref": "#/definitions/Error" } }, "404": { "description": "Not Found", "schema": { "$ref": "#/definitions/Error" } }, "405": { "description": "Method Not allowed", "schema": { "$ref": "#/definitions/Error" } }, "409": { "description": "Conflict", "schema": { "$ref": "#/definitions/Error" } }, "500": { "description": "Internal Server Error", "schema": { "$ref": "#/definitions/Error" } } } }, "patch": { "operationId": "patchServiceLevelSpecification", "summary": "Updates partially a ServiceLevelSpecification", "description": "This operation updates partially a ServiceLevelSpecification entity.", "tags": [ "serviceLevelSpecification" ], "parameters": [ { "name": "id", "description": "Identifier of the ServiceLevelSpecification", "required": true, "type": "string", "in": "path" }, { "name": "serviceLevelSpecification", "description": "The ServiceLevelSpecification to be updated", "required": true, "schema": { "$ref": "#/definitions/ServiceLevelSpecification_Update" }, "in": "body" } ], "responses": { "200": { "description": "Updated", "schema": { "$ref": "#/definitions/ServiceLevelSpecification" } }, "400": { "description": "Bad Request", "schema": { "$ref": "#/definitions/Error" } }, "401": { "description": "Unauthorized", "schema": { "$ref": "#/definitions/Error" } }, "403": { "description": "Forbidden", "schema": { "$ref": "#/definitions/Error" } }, "404": { "description": "Not Found", "schema": { "$ref": "#/definitions/Error" } }, "405": { "description": "Method Not allowed", "schema": { "$ref": "#/definitions/Error" } }, "409": { "description": "Conflict", "schema": { "$ref": "#/definitions/Error" } }, "500": { "description": "Internal Server Error", "schema": { "$ref": "#/definitions/Error" } } } }, "delete": { "operationId": "deleteServiceLevelSpecification", "summary": "Deletes a ServiceLevelSpecification", "description": "This operation deletes a ServiceLevelSpecification entity.", "tags": [ "serviceLevelSpecification" ], "parameters": [ { "name": "id", "description": "Identifier of the ServiceLevelSpecification", "required": true, "type": "string", "in": "path" } ], "responses": { "204": { "description": "Deleted" }, "400": { "description": "Bad Request", "schema": { "$ref": "#/definitions/Error" } }, "401": { "description": "Unauthorized", "schema": { "$ref": "#/definitions/Error" } }, "403": { "description": "Forbidden", "schema": { "$ref": "#/definitions/Error" } }, "404": { "description": "Not Found", "schema": { "$ref": "#/definitions/Error" } }, "405": { "description": "Method Not allowed", "schema": { "$ref": "#/definitions/Error" } }, "409": { "description": "Conflict", "schema": { "$ref": "#/definitions/Error" } }, "500": { "description": "Internal Server Error", "schema": { "$ref": "#/definitions/Error" } } } } }, "/hub": { "post": { "operationId": "registerListener", "summary": "Register a listener", "description": "Sets the communication endpoint address the service instance must use to deliver information about its health state, execution state, failures and metrics.", "tags": [ "events subscription" ], "parameters": [ { "name": "data", "schema": { "$ref": "#/definitions/EventSubscriptionInput" }, "required": true, "in": "body", "description": "Data containing the callback endpoint to deliver the information" } ], "responses": { "201": { "description": "Subscribed", "schema": { "$ref": "#/definitions/EventSubscription" } }, "400": { "description": "Bad Request", "schema": { "$ref": "#/definitions/Error" } }, "401": { "description": "Unauthorized", "schema": { "$ref": "#/definitions/Error" } }, "403": { "description": "Forbidden", "schema": { "$ref": "#/definitions/Error" } }, "404": { "description": "Not Found", "schema": { "$ref": "#/definitions/Error" } }, "405": { "description": "Method Not allowed", "schema": { "$ref": "#/definitions/Error" } }, "409": { "description": "Conflict", "schema": { "$ref": "#/definitions/Error" } }, "500": { "description": "Internal Server Error", "schema": { "$ref": "#/definitions/Error" } } } } }, "/hub/{id}": { "delete": { "operationId": "unregisterListener", "summary": "Unregister a listener", "description": "Resets the communication endpoint address the service instance must use to deliver information about its health state, execution state, failures and metrics.", "tags": [ "events subscription" ], "parameters": [ { "name": "id", "type": "string", "required": true, "in": "path", "description": "The id of the registered listener" } ], "responses": { "204": { "description": "Deleted" }, "400": { "description": "Bad request", "schema": { "$ref": "#/definitions/Error" } }, "401": { "description": "Unauthorized", "schema": { "$ref": "#/definitions/Error" } }, "403": { "description": "Forbidden", "schema": { "$ref": "#/definitions/Error" } }, "404": { "description": "Not Found", "schema": { "$ref": "#/definitions/Error" } }, "405": { "description": "Method not allowed", "schema": { "$ref": "#/definitions/Error" } }, "500": { "description": "Internal Server Error", "schema": { "$ref": "#/definitions/Error" } } } } }, "/listener/serviceLevelObjectiveCreateEvent": { "post": { "operationId": "listenToServiceLevelObjectiveCreateEvent", "summary": "Client listener for entity ServiceLevelObjectiveCreateEvent", "description": "Example of a client listener for receiving the notification ServiceLevelObjectiveCreateEvent", "tags": [ "notification listeners (client side)" ], "parameters": [ { "name": "data", "required": true, "in": "body", "description": "The event data", "schema": { "$ref": "#/definitions/ServiceLevelObjectiveCreateEvent" } } ], "responses": { "201": { "description": "Notified", "schema": { "$ref": "#/definitions/EventSubscription" } }, "400": { "description": "Bad Request", "schema": { "$ref": "#/definitions/Error" } }, "401": { "description": "Unauthorized", "schema": { "$ref": "#/definitions/Error" } }, "403": { "description": "Forbidden", "schema": { "$ref": "#/definitions/Error" } }, "404": { "description": "Not Found", "schema": { "$ref": "#/definitions/Error" } }, "405": { "description": "Method Not allowed", "schema": { "$ref": "#/definitions/Error" } }, "409": { "description": "Conflict", "schema": { "$ref": "#/definitions/Error" } }, "500": { "description": "Internal Server Error", "schema": { "$ref": "#/definitions/Error" } } } } }, "/listener/serviceLevelObjectiveAttributeValueChangeEvent": { "post": { "operationId": "listenToServiceLevelObjectiveAttributeValueChangeEvent", "summary": "Client listener for entity ServiceLevelObjectiveAttributeValueChangeEvent", "description": "Example of a client listener for receiving the notification ServiceLevelObjectiveAttributeValueChangeEvent", "tags": [ "notification listeners (client side)" ], "parameters": [ { "name": "data", "required": true, "in": "body", "description": "The event data", "schema": { "$ref": "#/definitions/ServiceLevelObjectiveAttributeValueChangeEvent" } } ], "responses": { "201": { "description": "Notified", "schema": { "$ref": "#/definitions/EventSubscription" } }, "400": { "description": "Bad Request", "schema": { "$ref": "#/definitions/Error" } }, "401": { "description": "Unauthorized", "schema": { "$ref": "#/definitions/Error" } }, "403": { "description": "Forbidden", "schema": { "$ref": "#/definitions/Error" } }, "404": { "description": "Not Found", "schema": { "$ref": "#/definitions/Error" } }, "405": { "description": "Method Not allowed", "schema": { "$ref": "#/definitions/Error" } }, "409": { "description": "Conflict", "schema": { "$ref": "#/definitions/Error" } }, "500": { "description": "Internal Server Error", "schema": { "$ref": "#/definitions/Error" } } } } }, "/listener/serviceLevelObjectiveDeleteEvent": { "post": { "operationId": "listenToServiceLevelObjectiveDeleteEvent", "summary": "Client listener for entity ServiceLevelObjectiveDeleteEvent", "description": "Example of a client listener for receiving the notification ServiceLevelObjectiveDeleteEvent", "tags": [ "notification listeners (client side)" ], "parameters": [ { "name": "data", "required": true, "in": "body", "description": "The event data", "schema": { "$ref": "#/definitions/ServiceLevelObjectiveDeleteEvent" } } ], "responses": { "201": { "description": "Notified", "schema": { "$ref": "#/definitions/EventSubscription" } }, "400": { "description": "Bad Request", "schema": { "$ref": "#/definitions/Error" } }, "401": { "description": "Unauthorized", "schema": { "$ref": "#/definitions/Error" } }, "403": { "description": "Forbidden", "schema": { "$ref": "#/definitions/Error" } }, "404": { "description": "Not Found", "schema": { "$ref": "#/definitions/Error" } }, "405": { "description": "Method Not allowed", "schema": { "$ref": "#/definitions/Error" } }, "409": { "description": "Conflict", "schema": { "$ref": "#/definitions/Error" } }, "500": { "description": "Internal Server Error", "schema": { "$ref": "#/definitions/Error" } } } } }, "/listener/serviceLevelSpecificationCreateEvent": { "post": { "operationId": "listenToServiceLevelSpecificationCreateEvent", "summary": "Client listener for entity ServiceLevelSpecificationCreateEvent", "description": "Example of a client listener for receiving the notification ServiceLevelSpecificationCreateEvent", "tags": [ "notification listeners (client side)" ], "parameters": [ { "name": "data", "required": true, "in": "body", "description": "The event data", "schema": { "$ref": "#/definitions/ServiceLevelSpecificationCreateEvent" } } ], "responses": { "201": { "description": "Notified", "schema": { "$ref": "#/definitions/EventSubscription" } }, "400": { "description": "Bad Request", "schema": { "$ref": "#/definitions/Error" } }, "401": { "description": "Unauthorized", "schema": { "$ref": "#/definitions/Error" } }, "403": { "description": "Forbidden", "schema": { "$ref": "#/definitions/Error" } }, "404": { "description": "Not Found", "schema": { "$ref": "#/definitions/Error" } }, "405": { "description": "Method Not allowed", "schema": { "$ref": "#/definitions/Error" } }, "409": { "description": "Conflict", "schema": { "$ref": "#/definitions/Error" } }, "500": { "description": "Internal Server Error", "schema": { "$ref": "#/definitions/Error" } } } } }, "/listener/serviceLevelSpecificationAttributeValueChangeEvent": { "post": { "operationId": "listenToServiceLevelSpecificationAttributeValueChangeEvent", "summary": "Client listener for entity ServiceLevelSpecificationAttributeValueChangeEvent", "description": "Example of a client listener for receiving the notification ServiceLevelSpecificationAttributeValueChangeEvent", "tags": [ "notification listeners (client side)" ], "parameters": [ { "name": "data", "required": true, "in": "body", "description": "The event data", "schema": { "$ref": "#/definitions/ServiceLevelSpecificationAttributeValueChangeEvent" } } ], "responses": { "201": { "description": "Notified", "schema": { "$ref": "#/definitions/EventSubscription" } }, "400": { "description": "Bad Request", "schema": { "$ref": "#/definitions/Error" } }, "401": { "description": "Unauthorized", "schema": { "$ref": "#/definitions/Error" } }, "403": { "description": "Forbidden", "schema": { "$ref": "#/definitions/Error" } }, "404": { "description": "Not Found", "schema": { "$ref": "#/definitions/Error" } }, "405": { "description": "Method Not allowed", "schema": { "$ref": "#/definitions/Error" } }, "409": { "description": "Conflict", "schema": { "$ref": "#/definitions/Error" } }, "500": { "description": "Internal Server Error", "schema": { "$ref": "#/definitions/Error" } } } } }, "/listener/serviceLevelSpecificationDeleteEvent": { "post": { "operationId": "listenToServiceLevelSpecificationDeleteEvent", "summary": "Client listener for entity ServiceLevelSpecificationDeleteEvent", "description": "Example of a client listener for receiving the notification ServiceLevelSpecificationDeleteEvent", "tags": [ "notification listeners (client side)" ], "parameters": [ { "name": "data", "required": true, "in": "body", "description": "The event data", "schema": { "$ref": "#/definitions/ServiceLevelSpecificationDeleteEvent" } } ], "responses": { "201": { "description": "Notified", "schema": { "$ref": "#/definitions/EventSubscription" } }, "400": { "description": "Bad Request", "schema": { "$ref": "#/definitions/Error" } }, "401": { "description": "Unauthorized", "schema": { "$ref": "#/definitions/Error" } }, "403": { "description": "Forbidden", "schema": { "$ref": "#/definitions/Error" } }, "404": { "description": "Not Found", "schema": { "$ref": "#/definitions/Error" } }, "405": { "description": "Method Not allowed", "schema": { "$ref": "#/definitions/Error" } }, "409": { "description": "Conflict", "schema": { "$ref": "#/definitions/Error" } }, "500": { "description": "Internal Server Error", "schema": { "$ref": "#/definitions/Error" } } } } } }, "definitions": { "EntityRef": { "type": "object", "description": "Entity reference schema to be use for all entityRef class.", "properties": { "id": { "type": "string", "description": "Unique identifier of a related entity." }, "href": { "type": "string", "description": "Reference of the related entity." }, "name": { "type": "string", "description": "Name of the related entity." }, "@baseType": { "type": "string", "description": "When sub-classing, this defines the super-class" }, "@schemaLocation": { "type": "string", "format": "uri", "description": "A URI to a JSON-Schema file that defines additional attributes and relationships" }, "@type": { "type": "string", "description": "When sub-classing, this defines the sub-class entity name" }, "@referredType": { "type": "string", "description": "The actual type of the target instance when needed for disambiguation." } }, "required": [ "id" ] }, "RelatedEntity": { "type": "object", "description": "A reference to an entity, where the type of the entity is not known in advance.", "required": [ "@referredType", "id", "role" ], "properties": { "id": { "type": "string", "description": "Unique identifier of a related entity." }, "href": { "type": "string", "description": "Reference of the related entity." }, "name": { "type": "string", "description": "Name of the related entity." }, "role": { "type": "string", "description": "The role of an entity." }, "@baseType": { "type": "string", "description": "When sub-classing, this defines the super-class" }, "@schemaLocation": { "type": "string", "format": "uri", "description": "A URI to a JSON-Schema file that defines additional attributes and relationships" }, "@type": { "type": "string", "description": "When sub-classing, this defines the sub-class entity name" }, "@referredType": { "type": "string", "description": "The actual type of the target instance when needed for disambiguation." } } }, "ServiceLevelObjective": { "type": "object", "description": "Service level objectives are defined in terms of parameters and metrics, thresholds, and tolerances \nassociated with the parameters.", "properties": { "id": { "type": "string", "description": "The identifier of a service level objectives." }, "href": { "type": "string", "description": "The hyperlink to access a service level objective." }, "conformanceComparator": { "type": "string", "description": "An operator that specifies whether a Service Level Objective is \nviolated above or below the conformanceTarget." }, "conformanceTarget": { "type": "string", "description": "A value used to determine if Service Level Objective is met. \nThe data type should be adjusted case by case." }, "graceTimes": { "type": "string", "description": "The number of times an objective can remain un-updated without \na violation of a Service Level Agreement in reference to a measurement period and/or Service Level Agreement reporting period." }, "name": { "type": "string", "description": "The name of the service level objectives." }, "thresholdTarget": { "type": "string", "description": "A value that used to specify when a warning should be used \nthat indicates an objective is danger of not being met. Notice, the data type should be adjusted case by case." }, "toleranceTarget": { "type": "string", "description": "A value that specifies the allowable variation of a conformance \nTarget. The data type should be adjusted case by case." }, "conformancePeriod": { "$ref": "#/definitions/TimePeriod", "description": "An interval of time during which the Conformance Target must be measured." }, "serviceLevelObjectiveConsequence": { "type": "array", "items": { "$ref": "#/definitions/ServiceLevelSpecConsequence" }, "description": "A list of consequences for this objective." }, "serviceLevelObjectiveParameter": { "$ref": "#/definitions/ServiceLevelSpecParameter", "description": "A parameter for this objective" }, "tolerancePeriod": { "$ref": "#/definitions/TimePeriod", "description": "A value that specifies the allowable time variation of a conformance" }, "validFor": { "$ref": "#/definitions/TimePeriod", "description": "A valid duration of a thing." }, "@baseType": { "type": "string", "description": "When sub-classing, this defines the super-class" }, "@schemaLocation": { "type": "string", "format": "uri", "description": "A URI to a JSON-Schema file that defines additional attributes and relationships" }, "@type": { "type": "string", "description": "When sub-classing, this defines the sub-class entity name" } } }, "ServiceLevelObjective_Create": { "type": "object", "description": "Service level objectives are defined in terms of parameters and metrics, thresholds, and tolerances \nassociated with the parameters.\nSkipped properties: id,href", "required": [ "conformanceComparator", "conformanceTarget", "serviceLevelObjectiveParameter" ], "properties": { "conformanceComparator": { "type": "string", "description": "An operator that specifies whether a Service Level Objective is \nviolated above or below the conformanceTarget." }, "conformanceTarget": { "type": "string", "description": "A value used to determine if Service Level Objective is met. \nThe data type should be adjusted case by case." }, "graceTimes": { "type": "string", "description": "The number of times an objective can remain un-updated without \na violation of a Service Level Agreement in reference to a measurement period and/or Service Level Agreement reporting period." }, "name": { "type": "string", "description": "The name of the service level objectives." }, "thresholdTarget": { "type": "string", "description": "A value that used to specify when a warning should be used \nthat indicates an objective is danger of not being met. Notice, the data type should be adjusted case by case." }, "toleranceTarget": { "type": "string", "description": "A value that specifies the allowable variation of a conformance \nTarget. The data type should be adjusted case by case." }, "conformancePeriod": { "$ref": "#/definitions/TimePeriod", "description": "An interval of time during which the Conformance Target must be measured." }, "serviceLevelObjectiveConsequence": { "type": "array", "items": { "$ref": "#/definitions/ServiceLevelSpecConsequence" }, "description": "A list of consequences for this objective." }, "serviceLevelObjectiveParameter": { "$ref": "#/definitions/ServiceLevelSpecParameter", "description": "A parameter for this objective" }, "tolerancePeriod": { "$ref": "#/definitions/TimePeriod", "description": "A value that specifies the allowable time variation of a conformance" }, "validFor": { "$ref": "#/definitions/TimePeriod", "description": "A valid duration of a thing." }, "@baseType": { "type": "string", "description": "When sub-classing, this defines the super-class" }, "@schemaLocation": { "type": "string", "format": "uri", "description": "A URI to a JSON-Schema file that defines additional attributes and relationships" }, "@type": { "type": "string", "description": "When sub-classing, this defines the sub-class entity name" } } }, "ServiceLevelObjective_Update": { "type": "object", "description": "Service level objectives are defined in terms of parameters and metrics, thresholds, and tolerances \nassociated with the parameters.\nSkipped properties: id,href,validFor", "properties": { "conformanceComparator": { "type": "string", "description": "An operator that specifies whether a Service Level Objective is \nviolated above or below the conformanceTarget." }, "conformanceTarget": { "type": "string", "description": "A value used to determine if Service Level Objective is met. \nThe data type should be adjusted case by case." }, "graceTimes": { "type": "string", "description": "The number of times an objective can remain un-updated without \na violation of a Service Level Agreement in reference to a measurement period and/or Service Level Agreement reporting period." }, "name": { "type": "string", "description": "The name of the service level objectives." }, "thresholdTarget": { "type": "string", "description": "A value that used to specify when a warning should be used \nthat indicates an objective is danger of not being met. Notice, the data type should be adjusted case by case." }, "toleranceTarget": { "type": "string", "description": "A value that specifies the allowable variation of a conformance \nTarget. The data type should be adjusted case by case." }, "conformancePeriod": { "$ref": "#/definitions/TimePeriod", "description": "An interval of time during which the Conformance Target must be measured." }, "serviceLevelObjectiveConsequence": { "type": "array", "items": { "$ref": "#/definitions/ServiceLevelSpecConsequence" }, "description": "A list of consequences for this objective." }, "serviceLevelObjectiveParameter": { "$ref": "#/definitions/ServiceLevelSpecParameter", "description": "A parameter for this objective" }, "tolerancePeriod": { "$ref": "#/definitions/TimePeriod", "description": "A value that specifies the allowable time variation of a conformance" }, "@baseType": { "type": "string", "description": "When sub-classing, this defines the super-class" }, "@schemaLocation": { "type": "string", "format": "uri", "description": "A URI to a JSON-Schema file that defines additional attributes and relationships" }, "@type": { "type": "string", "description": "When sub-classing, this defines the sub-class entity name" } } }, "ServiceLevelObjectiveRef": { "type": "object", "description": "A set of Service Level Objectives that are contained in the Service Level Specification.", "properties": { "id": { "type": "string", "description": "The identifier of a service level object." }, "href": { "type": "string", "description": "The hyperlink to access a service level object." }, "@baseType": { "type": "string", "description": "When sub-classing, this defines the super-class" }, "@schemaLocation": { "type": "string", "format": "uri", "description": "A URI to a JSON-Schema file that defines additional attributes and relationships" }, "@type": { "type": "string", "description": "When sub-classing, this defines the sub-class entity name" }, "@referredType": { "type": "string", "description": "The actual type of the target instance when needed for disambiguation." } }, "required": [ "id" ] }, "ServiceLevelSpecConsequence": { "type": "object", "description": "Some consequences for the provider of the Service are resulted when the service level objective\ndoes not meet.", "properties": { "prescribedAction": { "type": "string", "description": "Recommended remedy for a violated Service Level Objective. \nThis could be a hyperlink to the recommended action." }, "validFor": { "$ref": "#/definitions/TimePeriod", "description": "A valid duration of a thing." }, "@baseType": { "type": "string", "description": "When sub-classing, this defines the super-class" }, "@schemaLocation": { "type": "string", "format": "uri", "description": "A URI to a JSON-Schema file that defines additional attributes and relationships" }, "@type": { "type": "string", "description": "When sub-classing, this defines the sub-class entity name" } } }, "ServiceLevelSpecParameter": { "type": "object", "description": "Service Level Specification parameters can be one of two types. A Key Quality Indicator (KQI) \nprovides a measurement of a specific aspect of the performance of a Product (i.e., Product \nSpecification, Product Offering, or Product) or a Service (i.e., Service Specification or Service).", "properties": { "name": { "type": "string", "description": "The name of the parameter" }, "parameterType": { "type": "string", "description": "Types of Service Level Specification parameters are KQI or KPI" }, "serviceParmCategory": { "type": "string", "description": "A string that specifies whether the Service Level Specification Parameter is technology specific, service specific, or technology/service independent" }, "serviceParmPerspective": { "type": "string", "description": "A string that specifies whether the Service Level Specification Parameter represents a single user instance parameter or a parameter that represents an aggregation" }, "transformationAlgorithmOfKQI": { "type": "string", "description": "The description of a logical step-by-step procedure used to calculate the value of a KQI" }, "relatedEntity": { "type": "array", "items": { "$ref": "#/definitions/RelatedEntity" }, "description": "A list of entities related to this parameter" }, "validFor": { "$ref": "#/definitions/TimePeriod", "description": "A valid duration of a thing" }, "@baseType": { "type": "string", "description": "When sub-classing, this defines the super-class" }, "@schemaLocation": { "type": "string", "format": "uri", "description": "A URI to a JSON-Schema file that defines additional attributes and relationships" }, "@type": { "type": "string", "description": "When sub-classing, this defines the sub-class entity name" } } }, "ServiceLevelSpecification": { "type": "object", "description": "A Service Level Specification represents a pre-defined or negotiated set of Service Level \nObjectives. In addition, certain consequences are associated with not meeting the Service Level \nObjectives. Service Level Agreements are expressed in terms of Service Level Specifications.", "properties": { "id": { "type": "string", "description": "The identifier to a service level specification." }, "href": { "type": "string", "description": "The hyperlink to access a service level specification." }, "description": { "type": "string", "description": "A brief introduction of a service level specification." }, "name": { "type": "string", "description": "The name of Service Level Specification" }, "relatedServiceLevelObjective": { "type": "array", "items": { "$ref": "#/definitions/ServiceLevelObjectiveRef" }, "description": "A list of objectives related to this service level specification" }, "validFor": { "$ref": "#/definitions/TimePeriod", "description": "A valid duration of a thing." }, "@baseType": { "type": "string", "description": "When sub-classing, this defines the super-class" }, "@schemaLocation": { "type": "string", "format": "uri", "description": "A URI to a JSON-Schema file that defines additional attributes and relationships" }, "@type": { "type": "string", "description": "When sub-classing, this defines the sub-class entity name" } } }, "ServiceLevelSpecification_Create": { "type": "object", "description": "A Service Level Specification represents a pre-defined or negotiated set of Service Level \nObjectives. In addition, certain consequences are associated with not meeting the Service Level \nObjectives. Service Level Agreements are expressed in terms of Service Level Specifications.\nSkipped properties: id,href", "required": [ "name", "relatedServiceLevelObjective" ], "properties": { "description": { "type": "string", "description": "A brief introduction of a service level specification." }, "name": { "type": "string", "description": "The name of Service Level Specification" }, "relatedServiceLevelObjective": { "type": "array", "items": { "$ref": "#/definitions/ServiceLevelObjectiveRef" }, "minItems": 1, "description": "A list of objectives related to this service level specification" }, "validFor": { "$ref": "#/definitions/TimePeriod", "description": "A valid duration of a thing." }, "@baseType": { "type": "string", "description": "When sub-classing, this defines the super-class" }, "@schemaLocation": { "type": "string", "format": "uri", "description": "A URI to a JSON-Schema file that defines additional attributes and relationships" }, "@type": { "type": "string", "description": "When sub-classing, this defines the sub-class entity name" } } }, "ServiceLevelSpecification_Update": { "type": "object", "description": "A Service Level Specification represents a pre-defined or negotiated set of Service Level \nObjectives. In addition, certain consequences are associated with not meeting the Service Level \nObjectives. Service Level Agreements are expressed in terms of Service Level Specifications.\nSkipped properties: id,href,validFor", "properties": { "description": { "type": "string", "description": "A brief introduction of a service level specification." }, "name": { "type": "string", "description": "The name of Service Level Specification" }, "relatedServiceLevelObjective": { "type": "array", "items": { "$ref": "#/definitions/ServiceLevelObjectiveRef" }, "description": "A list of objectives related to this service level specification" }, "@baseType": { "type": "string", "description": "When sub-classing, this defines the super-class" }, "@schemaLocation": { "type": "string", "format": "uri", "description": "A URI to a JSON-Schema file that defines additional attributes and relationships" }, "@type": { "type": "string", "description": "When sub-classing, this defines the sub-class entity name" } } }, "TimePeriod": { "type": "object", "description": "A period of time, either as a deadline (endDateTime only) a startDateTime only, or both", "properties": { "endDateTime": { "example": "1985-04-12T23:20:50.52Z", "type": "string", "format": "date-time", "description": "End of the time period, using IETC-RFC-3339 format" }, "startDateTime": { "example": "1985-04-12T23:20:50.52Z", "type": "string", "format": "date-time", "description": "Start of the time period, using IETC-RFC-3339 format. If you define a start, you must also define an end" } } }, "EventSubscription": { "type": "object", "description": "Sets the communication endpoint address the service instance must use to deliver notification information", "required": [ "id", "callback" ], "properties": { "id": { "type": "string", "description": "Id of the listener" }, "callback": { "type": "string", "description": "The callback being registered." }, "query": { "type": "string", "description": "additional data to be passed" } } }, "EventSubscriptionInput": { "type": "object", "description": "Sets the communication endpoint address the service instance must use to deliver notification information", "required": [ "callback" ], "properties": { "callback": { "type": "string", "description": "The callback being registered." }, "query": { "type": "string", "description": "additional data to be passed" } } }, "ServiceLevelObjectiveCreateEvent": { "type": "object", "description": "The notification data structure", "properties": { "id": { "type": "string", "description": "Identifier of the Process flow" }, "href": { "type": "string", "description": "Reference of the ProcessFlow" }, "eventId": { "type": "string", "description": "The identifier of the notification." }, "eventTime": { "type": "string", "format": "date-time", "description": "Time of the event occurrence." }, "eventType": { "type": "string", "description": "The type of the notification." }, "correlationId": { "type": "string", "description": "The correlation id for this event." }, "domain": { "type": "string", "description": "The domain of the event." }, "title": { "type": "string", "description": "The title of the event." }, "description": { "type": "string", "description": "An explnatory of the event." }, "priority": { "type": "string", "description": "A priority." }, "timeOcurred": { "type": "string", "format": "date-time", "description": "The time the event occured." }, "event": { "description": "The event payload linked to the involved resource object", "$ref": "#/definitions/ServiceLevelObjectiveCreateEventPayload" } } }, "ServiceLevelObjectiveCreateEventPayload": { "type": "object", "description": "The event data structure", "properties": { "serviceLevelObjective": { "description": "The involved resource data for the event", "$ref": "#/definitions/ServiceLevelObjective" } } }, "ServiceLevelObjectiveAttributeValueChangeEvent": { "type": "object", "description": "The notification data structure", "properties": { "eventId": { "type": "string", "description": "The identifier of the notification." }, "eventTime": { "type": "string", "format": "date-time", "description": "Time of the event occurrence." }, "eventType": { "type": "string", "description": "The type of the notification." }, "correlationId": { "type": "string", "description": "The correlation id for this event." }, "domain": { "type": "string", "description": "The domain of the event." }, "title": { "type": "string", "description": "The title of the event." }, "description": { "type": "string", "description": "An explnatory of the event." }, "priority": { "type": "string", "description": "A priority." }, "timeOcurred": { "type": "string", "format": "date-time", "description": "The time the event occured." }, "fieldPath": { "type": "string", "description": "The path identifying the object field concerned by this notification." }, "event": { "description": "The event payload linked to the involved resource object", "$ref": "#/definitions/ServiceLevelObjectiveAttributeValueChangeEventPayload" } } }, "ServiceLevelObjectiveAttributeValueChangeEventPayload": { "type": "object", "description": "The event data structure", "properties": { "serviceLevelObjective": { "description": "The involved resource data for the event", "$ref": "#/definitions/ServiceLevelObjective" } } }, "ServiceLevelObjectiveDeleteEvent": { "type": "object", "description": "The notification data structure", "properties": { "id": { "type": "string", "description": "Identifier of the Process flow" }, "href": { "type": "string", "description": "Reference of the ProcessFlow" }, "eventId": { "type": "string", "description": "The identifier of the notification." }, "eventTime": { "type": "string", "format": "date-time", "description": "Time of the event occurrence." }, "eventType": { "type": "string", "description": "The type of the notification." }, "correlationId": { "type": "string", "description": "The correlation id for this event." }, "domain": { "type": "string", "description": "The domain of the event." }, "title": { "type": "string", "description": "The title of the event." }, "description": { "type": "string", "description": "An explnatory of the event." }, "priority": { "type": "string", "description": "A priority." }, "timeOcurred": { "type": "string", "format": "date-time", "description": "The time the event occured." }, "event": { "description": "The event payload linked to the involved resource object", "$ref": "#/definitions/ServiceLevelObjectiveDeleteEventPayload" } } }, "ServiceLevelObjectiveDeleteEventPayload": { "type": "object", "description": "The event data structure", "properties": { "serviceLevelObjective": { "description": "The involved resource data for the event", "$ref": "#/definitions/ServiceLevelObjective" } } }, "ServiceLevelSpecificationCreateEvent": { "type": "object", "description": "The notification data structure", "properties": { "id": { "type": "string", "description": "Identifier of the Process flow" }, "href": { "type": "string", "description": "Reference of the ProcessFlow" }, "eventId": { "type": "string", "description": "The identifier of the notification." }, "eventTime": { "type": "string", "format": "date-time", "description": "Time of the event occurrence." }, "eventType": { "type": "string", "description": "The type of the notification." }, "correlationId": { "type": "string", "description": "The correlation id for this event." }, "domain": { "type": "string", "description": "The domain of the event." }, "title": { "type": "string", "description": "The title of the event." }, "description": { "type": "string", "description": "An explnatory of the event." }, "priority": { "type": "string", "description": "A priority." }, "timeOcurred": { "type": "string", "format": "date-time", "description": "The time the event occured." }, "event": { "description": "The event payload linked to the involved resource object", "$ref": "#/definitions/ServiceLevelSpecificationCreateEventPayload" } } }, "ServiceLevelSpecificationCreateEventPayload": { "type": "object", "description": "The event data structure", "properties": { "serviceLevelSpecification": { "description": "The involved resource data for the event", "$ref": "#/definitions/ServiceLevelSpecification" } } }, "ServiceLevelSpecificationAttributeValueChangeEvent": { "type": "object", "description": "The notification data structure", "properties": { "eventId": { "type": "string", "description": "The identifier of the notification." }, "eventTime": { "type": "string", "format": "date-time", "description": "Time of the event occurrence." }, "eventType": { "type": "string", "description": "The type of the notification." }, "correlationId": { "type": "string", "description": "The correlation id for this event." }, "domain": { "type": "string", "description": "The domain of the event." }, "title": { "type": "string", "description": "The title of the event." }, "description": { "type": "string", "description": "An explnatory of the event." }, "priority": { "type": "string", "description": "A priority." }, "timeOcurred": { "type": "string", "format": "date-time", "description": "The time the event occured." }, "fieldPath": { "type": "string", "description": "The path identifying the object field concerned by this notification." }, "event": { "description": "The event payload linked to the involved resource object", "$ref": "#/definitions/ServiceLevelSpecificationAttributeValueChangeEventPayload" } } }, "ServiceLevelSpecificationAttributeValueChangeEventPayload": { "type": "object", "description": "The event data structure", "properties": { "serviceLevelSpecification": { "description": "The involved resource data for the event", "$ref": "#/definitions/ServiceLevelSpecification" } } }, "ServiceLevelSpecificationDeleteEvent": { "type": "object", "description": "The notification data structure", "properties": { "id": { "type": "string", "description": "Identifier of the Process flow" }, "href": { "type": "string", "description": "Reference of the ProcessFlow" }, "eventId": { "type": "string", "description": "The identifier of the notification." }, "eventTime": { "type": "string", "format": "date-time", "description": "Time of the event occurrence." }, "eventType": { "type": "string", "description": "The type of the notification." }, "correlationId": { "type": "string", "description": "The correlation id for this event." }, "domain": { "type": "string", "description": "The domain of the event." }, "title": { "type": "string", "description": "The title of the event." }, "description": { "type": "string", "description": "An explnatory of the event." }, "priority": { "type": "string", "description": "A priority." }, "timeOcurred": { "type": "string", "format": "date-time", "description": "The time the event occured." }, "event": { "description": "The event payload linked to the involved resource object", "$ref": "#/definitions/ServiceLevelSpecificationDeleteEventPayload" } } }, "ServiceLevelSpecificationDeleteEventPayload": { "type": "object", "description": "The event data structure", "properties": { "serviceLevelSpecification": { "description": "The involved resource data for the event", "$ref": "#/definitions/ServiceLevelSpecification" } } }, "Error": { "description": "Used when an API throws an Error, typically with a HTTP error response-code (3xx, 4xx, 5xx)", "type": "object", "required": [ "code", "reason" ], "properties": { "code": { "type": "string", "description": "Application relevant detail, defined in the API or a common list." }, "reason": { "type": "string", "description": "Explanation of the reason for the error which can be shown to a client user." }, "message": { "type": "string", "description": "More details and corrective actions related to the error which can be shown to a client user." }, "status": { "type": "string", "description": "HTTP Error code extension" }, "referenceError": { "type": "string", "format": "uri", "description": "URI of documentation describing the error." }, "@baseType": { "type": "string", "description": "When sub-classing, this defines the super-class." }, "@schemaLocation": { "type": "string", "format": "uri", "description": "A URI to a JSON-Schema file that defines additional attributes and relationships" }, "@type": { "type": "string", "description": "When sub-classing, this defines the sub-class entity name." } } } } }