swagger: '2.0' info: title: API Resource Inventory Management description: |- ## TMF API Reference: TMF639 - Resource Inventory ### Release : 19.5 - December 2019 Resource Inventory API goal is to provide the ability to manage Resources. ### Operations Resource Inventory API performs the following operations on the resources : - Retrieve an entity or a collection of entities depending on filter criteria - Partial update of an entity (including updating rules) - Create an entity (including default values and creation rules) - Delete an entity (for administration purposes) - Manage notification of events version: 4.0.0 host: serverRoot basePath: /tmf-api/resourceInventoryManagement/v4/ schemes: - https consumes: - application/json;charset=utf-8 produces: - application/json;charset=utf-8 tags: - name: resource - name: notification listeners (client side) - name: events subscription paths: /resource: get: operationId: listResource summary: List or find Resource objects description: This operation list or find Resource entities tags: - resource 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/Resource' '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: createResource summary: Creates a Resource description: This operation creates a Resource entity. tags: - resource parameters: - name: resource description: The Resource to be created required: true schema: $ref: '#/definitions/Resource_Create' in: body responses: '201': description: Created schema: $ref: '#/definitions/Resource' '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' '/resource/{id}': get: operationId: retrieveResource summary: Retrieves a Resource by ID description: This operation retrieves a Resource entity. Attribute selection is enabled for all first level attributes. tags: - resource parameters: - name: id description: Identifier of the Resource 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/Resource' '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: patchResource summary: Updates partially a Resource description: This operation updates partially a Resource entity. tags: - resource parameters: - name: id description: Identifier of the Resource required: true type: string in: path - name: resource description: The Resource to be updated required: true schema: $ref: '#/definitions/Resource_Update' in: body responses: '200': description: Updated schema: $ref: '#/definitions/Resource' '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: deleteResource summary: Deletes a Resource description: This operation deletes a Resource entity. tags: - resource parameters: - name: id description: Identifier of the Resource 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/resourceCreateEvent: post: operationId: listenToResourceCreateEvent summary: Client listener for entity ResourceCreateEvent description: Example of a client listener for receiving the notification ResourceCreateEvent tags: - notification listeners (client side) parameters: - name: data required: true in: body description: The event data schema: $ref: '#/definitions/ResourceCreateEvent' 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/resourceAttributeValueChangeEvent: post: operationId: listenToResourceAttributeValueChangeEvent summary: Client listener for entity ResourceAttributeValueChangeEvent description: Example of a client listener for receiving the notification ResourceAttributeValueChangeEvent tags: - notification listeners (client side) parameters: - name: data required: true in: body description: The event data schema: $ref: '#/definitions/ResourceAttributeValueChangeEvent' 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/resourceStateChangeEvent: post: operationId: listenToResourceStateChangeEvent summary: Client listener for entity ResourceStateChangeEvent description: Example of a client listener for receiving the notification ResourceStateChangeEvent tags: - notification listeners (client side) parameters: - name: data required: true in: body description: The event data schema: $ref: '#/definitions/ResourceStateChangeEvent' 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/resourceDeleteEvent: post: operationId: listenToResourceDeleteEvent summary: Client listener for entity ResourceDeleteEvent description: Example of a client listener for receiving the notification ResourceDeleteEvent tags: - notification listeners (client side) parameters: - name: data required: true in: body description: The event data schema: $ref: '#/definitions/ResourceDeleteEvent' 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: Addressable: type: object description: Base schema for adressable entities properties: id: type: string description: unique identifier href: type: string format: uri description: Hyperlink reference Any: {} Attachment: type: object description: 'Complements the description of an element (for instance a product) through video, pictures...' properties: id: example: 4aafacbd-11ff-4dc8-b445-305f2215715f type: string description: Unique identifier for this particular attachment href: example: 'http://host/Attachment/4aafacbd-11ff-4dc8-b445-305f2215715f' type: string format: uri description: URI for this Attachment attachmentType: example: video type: string description: 'Attachment type such as video, picture' content: type: string format: base64 description: 'The actual contents of the attachment object, if embedded, encoded as base64' description: example: Photograph of the Product type: string description: A narrative text describing the content of the attachment mimeType: type: string description: 'Attachment mime type such as extension file for video, picture and document' name: type: string description: The name of the attachment url: example: 'http://host/Content/4aafacbd-11ff-4dc8-b445-305f2215715f' type: string format: uri description: 'Uniform Resource Locator, is a web page address (a subset of URI)' size: $ref: '#/definitions/Quantity' description: The size of the attachment. validFor: $ref: '#/definitions/TimePeriod' description: The period of time for which the attachment is valid '@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 Extensible name' AttachmentRef: type: object description: 'Attachment reference. An attachment complements the description of an element (for instance a product) through video, pictures' properties: id: type: string description: Unique-Identifier for this attachment href: type: string format: uri description: URL serving as reference for the attachment resource description: type: string description: A narrative text describing the content of the attachment name: type: string description: Name of the related entity. url: type: string format: uri description: Link to the attachment media/content '@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 Extensible name' '@referredType': type: string description: The actual type of the target instance when needed for disambiguation. required: - id AttachmentRefOrValue: type: object description: 'An attachment by value or by reference. An attachment complements the description of an element, for example through a document, a video, a picture.' properties: id: example: 4aafacbd-11ff-4dc8-b445-305f2215715f type: string description: Unique identifier for this particular attachment href: example: 'http://host/Attachment/4aafacbd-11ff-4dc8-b445-305f2215715f' type: string format: uri description: URI for this Attachment attachmentType: example: video type: string description: 'Attachment type such as video, picture' content: type: string format: base64 description: 'The actual contents of the attachment object, if embedded, encoded as base64' description: example: Photograph of the Product type: string description: A narrative text describing the content of the attachment mimeType: type: string description: 'Attachment mime type such as extension file for video, picture and document' name: type: string description: The name of the attachment url: example: 'http://host/Content/4aafacbd-11ff-4dc8-b445-305f2215715f' type: string format: uri description: 'Uniform Resource Locator, is a web page address (a subset of URI)' size: $ref: '#/definitions/Quantity' description: The size of the attachment. validFor: $ref: '#/definitions/TimePeriod' description: The period of time for which the attachment is valid '@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 Extensible name' '@referredType': type: string description: The actual type of the target instance when needed for disambiguation. Characteristic: type: object description: Describes a given characteristic of an object or entity through a name/value pair. required: - name - value properties: id: type: string description: Unique identifier of the characteristic name: type: string description: Name of the characteristic valueType: type: string description: Data type of the value of the characteristic characteristicRelationship: type: array items: $ref: '#/definitions/CharacteristicRelationship' value: $ref: '#/definitions/Any' description: The value of the characteristic '@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 Extensible name' CharacteristicRelationship: type: object description: Another Characteristic that is related to the current Characteristic; properties: id: type: string description: Unique identifier of the characteristic href: type: string format: uri description: Hyperlink reference relationshipType: type: string description: The type of relationship '@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 Extensible name' ConstraintRef: type: object description: Constraint reference. The Constraint resource represents a policy/rule applied to an entity or entity spec. properties: id: type: string description: unique identifier href: type: string format: uri description: Hyperlink reference name: type: string description: Name of the related entity. version: type: string description: constraint version '@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 Extensible name' '@referredType': type: string description: The actual type of the target instance when needed for disambiguation. required: - id Entity: type: object description: Base entity schema for use in TMForum Open-APIs properties: id: type: string description: unique identifier href: type: string format: uri description: Hyperlink reference '@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 Extensible name' EntityRef: type: object description: Entity reference schema to be use for all entityRef class. properties: id: type: string description: unique identifier href: type: string format: uri description: Hyperlink reference 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 Extensible name' '@referredType': type: string description: The actual type of the target instance when needed for disambiguation. required: - id Extensible: type: object description: Base Extensible schema for use in TMForum Open-APIs properties: '@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 Extensible name' Feature: type: object description: Configuration feature. required: - featureCharacteristic - name properties: id: type: string description: Unique identifier of the feature. isBundle: type: boolean description: True if this is a feature group. Default is false. isEnabled: type: boolean description: True if this feature is enabled. Default is true. name: type: string description: This is the name for the feature. constraint: type: array items: $ref: '#/definitions/ConstraintRef' description: This is a list of feature constraints. featureCharacteristic: type: array items: $ref: '#/definitions/Characteristic' minItems: 1 description: This is a list of Characteristics for a particular feature. featureRelationship: type: array items: $ref: '#/definitions/FeatureRelationship' FeatureRelationship: type: object description: Configuration feature required: - name - relationshipType properties: id: type: string description: Unique identifier of the target feature. name: type: string description: This is the name of the target feature. relationshipType: type: string description: This is the type of the feature relationship. validFor: $ref: '#/definitions/TimePeriod' description: The period for which this feature relationship is valid. LogicalResource: type: object description: 'Logic resource is a type of resource that describes the common set of attributes shared by all concrete logical resources (e.g. TPE, MSISDN, IP Addresses) in the inventory.' required: - href - id properties: id: type: string description: unique identifier href: type: string format: uri description: Hyperlink reference category: type: string description: 'Category of the concrete resource. e.g Gold, Silver for MSISDN concrete resource' description: type: string description: free-text description of the resource endOperatingDate: type: string format: date-time description: A date time( DateTime). The date till the resource is operating name: type: string description: A string used to give a name to the resource resourceVersion: type: string description: A field that identifies the specific version of an instance of a resource. startOperatingDate: type: string format: date-time description: A date time( DateTime). The date from which the resource is operating value: type: string description: the value of the logical resource. E.g '0746712345' for MSISDN's activationFeature: type: array items: $ref: '#/definitions/Feature' description: Configuration features administrativeState: $ref: '#/definitions/ResourceAdministrativeStateType' description: 'Tracks the lifecycle status of the resource, such as planning, installing, opereating, retiring and so on.' attachment: type: array items: $ref: '#/definitions/AttachmentRefOrValue' note: type: array items: $ref: '#/definitions/Note' operationalState: $ref: '#/definitions/ResourceOperationalStateType' description: 'Tracks the lifecycle status of the resource, such as planning, installing, opereating, retiring and so on.' place: $ref: '#/definitions/RelatedPlaceRefOrValue' relatedParty: type: array items: $ref: '#/definitions/RelatedParty' resourceCharacteristic: type: array items: $ref: '#/definitions/Characteristic' resourceRelationship: type: array items: $ref: '#/definitions/ResourceRelationship' resourceSpecification: $ref: '#/definitions/ResourceSpecificationRef' resourceStatus: $ref: '#/definitions/ResourceStatusType' description: 'Tracks the lifecycle status of the resource, such as planning, installing, opereating, retiring and so on.' usageState: $ref: '#/definitions/ResourceUsageStateType' description: 'Tracks the lifecycle status of the resource, such as planning, installing, opereating, retiring and so on.' '@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 Extensible name' Note: type: object description: Extra information about a given entity properties: id: type: string description: 'Identifier of the note within its containing entity (may or may not be globally unique, depending on provider implementation)' href: type: string format: uri description: Hyperlink reference author: type: string description: Author of the note date: type: string format: date-time description: Date of the note text: type: string description: Text of the note '@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 Extensible name' PhysicalResource: type: object description: Physical resource is a type of resource that describes the common set of attributes shared by all concrete physical resources (e.g. EQUIPMENT) in the inventory. required: - href - id properties: id: type: string description: unique identifier href: type: string format: uri description: Hyperlink reference category: type: string description: 'Category of the concrete resource. e.g Gold, Silver for MSISDN concrete resource' description: type: string description: free-text description of the resource endOperatingDate: type: string format: date-time description: A date time( DateTime). The date till the resource is operating manufactureDate: type: string format: date-time description: This is a string attribute that defines the date of manufacture of this item in the fixed format "dd/mm/yyyy". This is an optional attribute. name: type: string description: A string used to give a name to the resource powerState: type: string description: |- This defines the current power status of the hardware item. Values include: 0: Unknown 1: Not Applicable 2: No Power Applied 3: Full Power Applied 4: Power Save - Normal 5: Power Save - Degraded 6: Power Save - Standby 7: Power Save - Critical 8: Power Save - Low Power Mode 9: Power Save - Unknown 10: Power Cycle 11: Power Warning 12: Power Off resourceVersion: type: string description: A field that identifies the specific version of an instance of a resource. serialNumber: type: string description: This is a string that represents a manufacturer-allocated number used to identify different instances of the same hardware item. The ModelNumber and PartNumber attributes are used to identify different types of hardware items. This is a REQUIRED attribute. startOperatingDate: type: string format: date-time description: A date time( DateTime). The date from which the resource is operating versionNumber: type: string description: This is a string that identifies the version of this physical resource. This is an optional attribute. activationFeature: type: array items: $ref: '#/definitions/Feature' description: Configuration features administrativeState: $ref: '#/definitions/ResourceAdministrativeStateType' description: 'Tracks the lifecycle status of the resource, such as planning, installing, opereating, retiring and so on.' attachment: type: array items: $ref: '#/definitions/AttachmentRefOrValue' note: type: array items: $ref: '#/definitions/Note' operationalState: $ref: '#/definitions/ResourceOperationalStateType' description: 'Tracks the lifecycle status of the resource, such as planning, installing, opereating, retiring and so on.' place: $ref: '#/definitions/RelatedPlaceRefOrValue' relatedParty: type: array items: $ref: '#/definitions/RelatedParty' resourceCharacteristic: type: array items: $ref: '#/definitions/Characteristic' resourceRelationship: type: array items: $ref: '#/definitions/ResourceRelationship' resourceSpecification: $ref: '#/definitions/ResourceSpecificationRef' resourceStatus: $ref: '#/definitions/ResourceStatusType' description: 'Tracks the lifecycle status of the resource, such as planning, installing, opereating, retiring and so on.' usageState: $ref: '#/definitions/ResourceUsageStateType' description: 'Tracks the lifecycle status of the resource, such as planning, installing, opereating, retiring and so on.' '@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 Extensible name' Place: type: object description: Place reference. Place defines the places where the products are sold or delivered. properties: id: type: string description: Unique identifier of the place href: type: string description: Unique reference of the place name: type: string description: 'A user-friendly name for the place, such as [Paris Store], [London Store], [Main Home]' '@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 Extensible name' PlaceRef: type: object description: Place reference. PlaceRef defines the placeRefs where the products are sold or delivered. properties: id: type: string description: unique identifier href: type: string format: uri description: Hyperlink reference 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 Extensible name' '@referredType': type: string description: The actual type of the target instance when needed for disambiguation. required: - id Quantity: type: object description: An amount in a given unit properties: amount: default: 1 type: number format: float description: Numeric value in a given unit units: type: string description: Unit RelatedParty: type: object description: Related Entity reference. A related party defines party or party role linked to a specific entity. required: - '@referredType' - id properties: id: type: string description: unique identifier href: type: string format: uri description: Hyperlink reference name: type: string description: Name of the related entity. role: type: string description: Role played by the related party '@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 Extensible name' '@referredType': type: string description: The actual type of the target instance when needed for disambiguation. RelatedPlaceRefOrValue: type: object description: 'Related Entity reference. A related place defines a place described by reference or by value linked to a specific entity. The polymorphic attributes @type, @schemaLocation & @referredType are related to the place entity and not the RelatedPlaceRefOrValue class itself' required: - role properties: id: type: string description: Unique identifier of the place href: type: string description: Unique reference of the place name: type: string description: 'A user-friendly name for the place, such as [Paris Store], [London Store], [Main Home]' role: type: string '@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 Extensible name' '@referredType': type: string description: The actual type of the target instance when needed for disambiguation. Resource: type: object description: 'Resource is an abstract entity that describes the common set of attributes shared by all concrete resources (e.g. TPE, EQUIPMENT) in the inventory.' required: - href - id properties: id: type: string description: Identifier of an instance of the resource. Required to be unique within the resource type. Used in URIs as the identifier for specific instances of a type. href: type: string description: The URI for the object itself. category: type: string description: 'Category of the concrete resource. e.g Gold, Silver for MSISDN concrete resource' description: type: string description: free-text description of the resource endOperatingDate: type: string format: date-time description: A date time( DateTime). The date till the resource is operating name: type: string description: A string used to give a name to the resource resourceVersion: type: string description: A field that identifies the specific version of an instance of a resource. startOperatingDate: type: string format: date-time description: A date time( DateTime). The date from which the resource is operating activationFeature: type: array items: $ref: '#/definitions/Feature' description: Configuration features administrativeState: $ref: '#/definitions/ResourceAdministrativeStateType' description: 'Tracks the lifecycle status of the resource, such as planning, installing, opereating, retiring and so on.' attachment: type: array items: $ref: '#/definitions/AttachmentRefOrValue' note: type: array items: $ref: '#/definitions/Note' operationalState: $ref: '#/definitions/ResourceOperationalStateType' description: 'Tracks the lifecycle status of the resource, such as planning, installing, opereating, retiring and so on.' place: $ref: '#/definitions/RelatedPlaceRefOrValue' relatedParty: type: array items: $ref: '#/definitions/RelatedParty' resourceCharacteristic: type: array items: $ref: '#/definitions/Characteristic' resourceRelationship: type: array items: $ref: '#/definitions/ResourceRelationship' resourceSpecification: $ref: '#/definitions/ResourceSpecificationRef' resourceStatus: $ref: '#/definitions/ResourceStatusType' description: 'Tracks the lifecycle status of the resource, such as planning, installing, opereating, retiring and so on.' usageState: $ref: '#/definitions/ResourceUsageStateType' description: 'Tracks the lifecycle status of the resource, such as planning, installing, opereating, retiring and so on.' '@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 Extensible name' Resource_Create: type: object description: |- Resource is an abstract entity that describes the common set of attributes shared by all concrete resources (e.g. TPE, EQUIPMENT) in the inventory. Skipped properties: id,href required: - href - id - name properties: category: type: string description: 'Category of the concrete resource. e.g Gold, Silver for MSISDN concrete resource' description: type: string description: free-text description of the resource endOperatingDate: type: string format: date-time description: A date time( DateTime). The date till the resource is operating name: type: string description: A string used to give a name to the resource resourceVersion: type: string description: A field that identifies the specific version of an instance of a resource. startOperatingDate: type: string format: date-time description: A date time( DateTime). The date from which the resource is operating activationFeature: type: array items: $ref: '#/definitions/Feature' description: Configuration features administrativeState: $ref: '#/definitions/ResourceAdministrativeStateType' description: 'Tracks the lifecycle status of the resource, such as planning, installing, opereating, retiring and so on.' attachment: type: array items: $ref: '#/definitions/AttachmentRefOrValue' note: type: array items: $ref: '#/definitions/Note' operationalState: $ref: '#/definitions/ResourceOperationalStateType' description: 'Tracks the lifecycle status of the resource, such as planning, installing, opereating, retiring and so on.' place: $ref: '#/definitions/RelatedPlaceRefOrValue' relatedParty: type: array items: $ref: '#/definitions/RelatedParty' resourceCharacteristic: type: array items: $ref: '#/definitions/Characteristic' resourceRelationship: type: array items: $ref: '#/definitions/ResourceRelationship' resourceSpecification: $ref: '#/definitions/ResourceSpecificationRef' resourceStatus: $ref: '#/definitions/ResourceStatusType' description: 'Tracks the lifecycle status of the resource, such as planning, installing, opereating, retiring and so on.' usageState: $ref: '#/definitions/ResourceUsageStateType' description: 'Tracks the lifecycle status of the resource, such as planning, installing, opereating, retiring and so on.' '@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 Extensible name' Resource_Update: type: object description: |- Resource is an abstract entity that describes the common set of attributes shared by all concrete resources (e.g. TPE, EQUIPMENT) in the inventory. Skipped properties: id,href required: - href - id properties: category: type: string description: 'Category of the concrete resource. e.g Gold, Silver for MSISDN concrete resource' description: type: string description: free-text description of the resource endOperatingDate: type: string format: date-time description: A date time( DateTime). The date till the resource is operating name: type: string description: A string used to give a name to the resource resourceVersion: type: string description: A field that identifies the specific version of an instance of a resource. startOperatingDate: type: string format: date-time description: A date time( DateTime). The date from which the resource is operating activationFeature: type: array items: $ref: '#/definitions/Feature' description: Configuration features administrativeState: $ref: '#/definitions/ResourceAdministrativeStateType' description: 'Tracks the lifecycle status of the resource, such as planning, installing, opereating, retiring and so on.' attachment: type: array items: $ref: '#/definitions/AttachmentRefOrValue' note: type: array items: $ref: '#/definitions/Note' operationalState: $ref: '#/definitions/ResourceOperationalStateType' description: 'Tracks the lifecycle status of the resource, such as planning, installing, opereating, retiring and so on.' place: $ref: '#/definitions/RelatedPlaceRefOrValue' relatedParty: type: array items: $ref: '#/definitions/RelatedParty' resourceCharacteristic: type: array items: $ref: '#/definitions/Characteristic' resourceRelationship: type: array items: $ref: '#/definitions/ResourceRelationship' resourceSpecification: $ref: '#/definitions/ResourceSpecificationRef' resourceStatus: $ref: '#/definitions/ResourceStatusType' description: 'Tracks the lifecycle status of the resource, such as planning, installing, opereating, retiring and so on.' usageState: $ref: '#/definitions/ResourceUsageStateType' description: 'Tracks the lifecycle status of the resource, such as planning, installing, opereating, retiring and so on.' '@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 Extensible name' ResourceAdministrativeStateType: type: string description: ResourceAdministrativeStateType enumerations enum: - locked - unlocked - shutdown ResourceOperationalStateType: type: string description: ResourceOperationalStateType enumerations enum: - enable - disable ResourceRef: type: object properties: id: type: string description: unique identifier href: type: string format: uri description: Hyperlink reference 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 Extensible name' '@referredType': type: string description: The actual type of the target instance when needed for disambiguation. required: - id ResourceRefOrValue: type: object description: 'Resource is an abstract entity that describes the common set of attributes shared by all concrete resources. The polymorphic attributes @type, @schemaLocation & @referredType are related to the Resource entity and not the related ResourceRefOrValue class itself' required: - href - id properties: id: type: string description: Identifier of an instance of the resource. Required to be unique within the resource type. Used in URIs as the identifier for specific instances of a type. href: type: string description: The URI for the object itself. category: type: string description: 'Category of the concrete resource. e.g Gold, Silver for MSISDN concrete resource' description: type: string description: free-text description of the resource endOperatingDate: type: string format: date-time description: A date time( DateTime). The date till the resource is operating name: type: string description: A string used to give a name to the resource resourceVersion: type: string description: A field that identifies the specific version of an instance of a resource. startOperatingDate: type: string format: date-time description: A date time( DateTime). The date from which the resource is operating activationFeature: type: array items: $ref: '#/definitions/Feature' description: Configuration features administrativeState: $ref: '#/definitions/ResourceAdministrativeStateType' description: 'Tracks the lifecycle status of the resource, such as planning, installing, opereating, retiring and so on.' attachment: type: array items: $ref: '#/definitions/AttachmentRefOrValue' note: type: array items: $ref: '#/definitions/Note' operationalState: $ref: '#/definitions/ResourceOperationalStateType' description: 'Tracks the lifecycle status of the resource, such as planning, installing, opereating, retiring and so on.' place: $ref: '#/definitions/RelatedPlaceRefOrValue' relatedParty: type: array items: $ref: '#/definitions/RelatedParty' resourceCharacteristic: type: array items: $ref: '#/definitions/Characteristic' resourceRelationship: type: array items: $ref: '#/definitions/ResourceRelationship' resourceSpecification: $ref: '#/definitions/ResourceSpecificationRef' resourceStatus: $ref: '#/definitions/ResourceStatusType' description: 'Tracks the lifecycle status of the resource, such as planning, installing, opereating, retiring and so on.' usageState: $ref: '#/definitions/ResourceUsageStateType' description: 'Tracks the lifecycle status of the resource, such as planning, installing, opereating, retiring and so on.' '@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 Extensible name' '@referredType': type: string description: The actual type of the target instance when needed for disambiguation. ResourceRelationship: type: object description: 'Linked resources to the one instantiate, such as [bundled] if the resource is a bundle and you want to describe the bundled resources inside this bundle; [reliesOn] if the resource needs another already owned resource to rely on (e.g. an option on an already owned mobile access resource) [targets] or [isTargeted] (depending on the way of expressing the link) for any other kind of links that may be useful' required: - relationshipType - resource properties: id: type: string description: unique identifier href: type: string format: uri description: Hyperlink reference relationshipType: example: bundled type: string description: 'Type of the resource relationship, such as [bundled] if the resource is a bundle and you want to describe the bundled resources inside this bundle; [reliesOn] if the resource needs another already owned resource to rely on (eg: an option on an already owned mobile access resource) [targets] or [isTargeted] (depending on the way of expressing the link) for any other kind of links that may be useful' resource: $ref: '#/definitions/ResourceRefOrValue' '@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 Extensible name' ResourceSpecificationRef: type: object description: |- Resources are physical or non-physical components (or some combination of these) within an enterprise's infrastructure or inventory. They are typically consumed or used by services (for example a physical port assigned to a service) or contribute to the realization of a Product (for example, a SIM card). They can be drawn from the Application, Computing and Network domains, and include, for example, Network Elements, software, IT systems, content and information, and technology components. A ResourceSpecification is an abstract base class for representing a generic means for implementing a particular type of Resource. In essence, a ResourceSpecification defines the common attributes and relationships of a set of related Resources, while Resource defines a specific instance that is based on a particular ResourceSpecification. properties: id: type: string description: unique identifier href: type: string format: uri description: Hyperlink reference name: type: string description: Name of the related entity. version: type: string description: Resource Specification version '@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 Extensible name' '@referredType': type: string description: The actual type of the target instance when needed for disambiguation. required: - id ResourceStatusType: type: string description: ResourceStatusType enumerations enum: - standby - alarm - available - reserved - unknown - suspended ResourceUsageStateType: type: string description: ResourceUsageStateType enumerations enum: - idle - active - busy 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' 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 ResourceCreateEvent: type: object description: The notification data structure properties: event: description: The event payload linked to the involved resource object $ref: '#/definitions/ResourceCreateEventPayload' 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. ResourceCreateEventPayload: type: object description: The event data structure properties: resource: description: The involved resource data for the event $ref: '#/definitions/Resource' ResourceAttributeValueChangeEvent: 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/ResourceAttributeValueChangeEventPayload' ResourceAttributeValueChangeEventPayload: type: object description: The event data structure properties: resource: description: The involved resource data for the event $ref: '#/definitions/Resource' ResourceStateChangeEvent: type: object description: The notification data structure properties: event: description: The event payload linked to the involved resource object $ref: '#/definitions/ResourceStateChangeEventPayload' 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. ResourceStateChangeEventPayload: type: object description: The event data structure properties: resource: description: The involved resource data for the event $ref: '#/definitions/Resource' ResourceDeleteEvent: type: object description: The notification data structure properties: event: description: The event payload linked to the involved resource object $ref: '#/definitions/ResourceDeleteEventPayload' 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. ResourceDeleteEventPayload: type: object description: The event data structure properties: resource: description: The involved resource data for the event $ref: '#/definitions/Resource' 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.'