Service Inventory Biz
GET-retrieveService
/service/{ID} [GET]
This API retrieves the Service Information
Request
This section defines all the possible data structures sent by the client when consuming the method.
URL
https://[localhost]:[port]/tmf-api/serviceInventory/v4/{businessId}/service/{ID}
URL PARAMS
name | type | description | required |
---|---|---|---|
businessId | string | 2 letter ISO 3166 country code (TT, BB, JM, PA, etc.) identifying the business unit. | Y |
id | string | Unique identifier of the service. | Y |
Header
name | value | description | required |
---|---|---|---|
client_id | string | The client_id identifying the channel. Minimum characters: 5 | Y |
client_secret | string | Password associated with the client_id. Minimum characters: 5 | Y |
Correlation-ID (DEPRECATED) | string | An identifier for the current call chain that can be used to tie together log entries on multiple layers (e.g. client, server, mainframe). This identifier must be designed to be unique across all applications. | N |
X-Correlation-ID | string | Identifier that correlates HTTP request between a client and server. Any identification model (UUDI, checksum, etc.) can be used, as long as it is a unique value to differentiate a transaction. | N |
Query Param
name | type | description | required |
---|---|---|---|
fields | String | Comma-separated properties to be provided in response. (NOTE: this parameter are used wrong to identify the accoundId value. Should be relatedParty.id) | N |
offset | Integer | Requested index for start of resources to be provided in response | N |
limit | Integer | Requested number of resources to be provided in response | N |
relatedParty.id | String | accountId | N |
serviceType | String | Business type of the service | N |
serviceRelationship.service.category | String | Resource facing service | N |
Response
In this section all the possible data structures received by the client at the moment of responding the method are defined.
Possible response success
This section defines all the possible data structures received by the client and that must be considered satisfactory at the time of responding to the method.
[ 200 ]
OK - retrieveService request processed successfully, response body contains an entity corresponding to the requested resource.
[
{
"id": "string",
"href": "string",
"category": "string",
"description": "string",
"endDate": "2021-10-27T21:56:19.165Z",
"hasStarted": true,
"isBundle": true,
"isServiceEnabled": true,
"isStateful": true,
"name": "string",
"serviceDate": "string",
"serviceType": "string",
"startDate": "2021-10-27T21:56:19.165Z",
"startMode": "string",
"feature": [
{
"id": "string",
"isBundle": true,
"isEnabled": true,
"name": "string",
"constraint": [
{
"id": "string",
"href": "string",
"name": "string",
"version": "string",
"@baseType": "string",
"@schemaLocation": "string",
"@type": "string",
"@referredType": "string"
}
],
"featureCharacteristic": [
{
"id": "string",
"name": "string",
"valueType": "string",
"characteristicRelationship": [
{
"id": "string",
"relationshipType": "string"
}
],
"value": "string",
"@baseType": "string",
"@schemaLocation": "string",
"@type": "string"
}
],
"featureRelationship": [
{
"id": "string",
"name": "string",
"relationshipType": "string",
"validFor": {
"endDateTime": "1985-04-12T23:20:50.52Z",
"startDateTime": "1985-04-12T23:20:50.52Z"
}
}
]
}
],
"note": [
{
"id": "string",
"author": "string",
"date": "2021-10-27T21:56:19.165Z",
"text": "string"
}
],
"place": [
{
"id": "string",
"href": "string",
"name": "string",
"role": "string",
"@baseType": "string",
"@schemaLocation": "string",
"@type": "string",
"@referredType": "string"
}
],
"relatedEntity": [
{
"id": "string",
"href": "string",
"name": "string",
"role": "string",
"@baseType": "string",
"@schemaLocation": "string",
"@type": "string",
"@referredType": "string"
}
],
"relatedParty": [
{
"id": "string",
"href": "string",
"name": "string",
"role": "string",
"@baseType": "string",
"@schemaLocation": "string",
"@type": "string",
"@referredType": "string"
}
],
"serviceCharacteristic": [
{
"id": "string",
"name": "string",
"valueType": "string",
"characteristicRelationship": [
{
"id": "string",
"relationshipType": "string"
}
],
"value": "string",
"@baseType": "string",
"@schemaLocation": "string",
"@type": "string"
}
],
"serviceOrderItem": [
{
"itemId": "string",
"role": "string",
"serviceOrderHref": "string",
"serviceOrderId": "string",
"itemAction": "add",
"@referredType": "string"
}
],
"serviceRelationship": [
{
"relationshipType": "string",
"service": {
"id": "string",
"href": "string",
"category": "string",
"description": "string",
"endDate": "2021-10-27T21:56:19.165Z",
"hasStarted": true,
"isBundle": true,
"isServiceEnabled": true,
"isStateful": true,
"name": "string",
"serviceDate": "string",
"serviceType": "string",
"startDate": "2021-10-27T21:56:19.165Z",
"startMode": "string",
"feature": [
{
"id": "string",
"isBundle": true,
"isEnabled": true,
"name": "string",
"constraint": [
{
"id": "string",
"href": "string",
"name": "string",
"version": "string",
"@baseType": "string",
"@schemaLocation": "string",
"@type": "string",
"@referredType": "string"
}
],
"featureCharacteristic": [
{
"id": "string",
"name": "string",
"valueType": "string",
"characteristicRelationship": [
{
"id": "string",
"relationshipType": "string"
}
],
"value": "string",
"@baseType": "string",
"@schemaLocation": "string",
"@type": "string"
}
],
"featureRelationship": [
{
"id": "string",
"name": "string",
"relationshipType": "string",
"validFor": {
"endDateTime": "1985-04-12T23:20:50.52Z",
"startDateTime": "1985-04-12T23:20:50.52Z"
}
}
]
}
],
"note": [
{
"id": "string",
"author": "string",
"date": "2021-10-27T21:56:19.165Z",
"text": "string"
}
],
"place": [
{
"id": "string",
"href": "string",
"name": "string",
"role": "string",
"@baseType": "string",
"@schemaLocation": "string",
"@type": "string",
"@referredType": "string"
}
],
"relatedEntity": [
{
"id": "string",
"href": "string",
"name": "string",
"role": "string",
"@baseType": "string",
"@schemaLocation": "string",
"@type": "string",
"@referredType": "string"
}
],
"relatedParty": [
{
"id": "string",
"href": "string",
"name": "string",
"role": "string",
"@baseType": "string",
"@schemaLocation": "string",
"@type": "string",
"@referredType": "string"
}
],
"serviceCharacteristic": [
{
"id": "string",
"name": "string",
"valueType": "string",
"characteristicRelationship": [
{
"id": "string",
"relationshipType": "string"
}
],
"value": "string",
"@baseType": "string",
"@schemaLocation": "string",
"@type": "string"
}
],
"serviceOrderItem": [
{
"itemId": "string",
"role": "string",
"serviceOrderHref": "string",
"serviceOrderId": "string",
"itemAction": "add",
"@referredType": "string"
}
],
"serviceRelationship": [
"string"
],
"serviceSpecification": {
"id": "string",
"href": "string",
"name": "string",
"version": "string",
"@baseType": "string",
"@schemaLocation": "string",
"@type": "string",
"@referredType": "string"
},
"state": "feasibilityChecked",
"supportingResource": [
{
"id": "string",
"href": "string",
"name": "string",
"@baseType": "string",
"@schemaLocation": "string",
"@type": "string",
"@referredType": "string"
}
],
"supportingService": [
"string"
],
"@baseType": "string",
"@schemaLocation": "string",
"@type": "string",
"@referredType": "string"
},
"serviceRelationshipCharacteristic": [
{
"id": "string",
"name": "string",
"valueType": "string",
"characteristicRelationship": [
{
"id": "string",
"relationshipType": "string"
}
],
"value": "string",
"@baseType": "string",
"@schemaLocation": "string",
"@type": "string"
}
]
}
],
"serviceSpecification": {
"id": "string",
"href": "string",
"name": "string",
"version": "string",
"@baseType": "string",
"@schemaLocation": "string",
"@type": "string",
"@referredType": "string"
},
"state": "feasibilityChecked",
"supportingResource": [
{
"id": "string",
"href": "string",
"name": "string",
"@baseType": "string",
"@schemaLocation": "string",
"@type": "string",
"@referredType": "string"
}
],
"supportingService": [
{
"id": "string",
"href": "string",
"category": "string",
"description": "string",
"endDate": "2021-10-27T21:56:19.165Z",
"hasStarted": true,
"isBundle": true,
"isServiceEnabled": true,
"isStateful": true,
"name": "string",
"serviceDate": "string",
"serviceType": "string",
"startDate": "2021-10-27T21:56:19.165Z",
"startMode": "string",
"feature": [
{
"id": "string",
"isBundle": true,
"isEnabled": true,
"name": "string",
"constraint": [
{
"id": "string",
"href": "string",
"name": "string",
"version": "string",
"@baseType": "string",
"@schemaLocation": "string",
"@type": "string",
"@referredType": "string"
}
],
"featureCharacteristic": [
{
"id": "string",
"name": "string",
"valueType": "string",
"characteristicRelationship": [
{
"id": "string",
"relationshipType": "string"
}
],
"value": "string",
"@baseType": "string",
"@schemaLocation": "string",
"@type": "string"
}
],
"featureRelationship": [
{
"id": "string",
"name": "string",
"relationshipType": "string",
"validFor": {
"endDateTime": "1985-04-12T23:20:50.52Z",
"startDateTime": "1985-04-12T23:20:50.52Z"
}
}
]
}
],
"note": [
{
"id": "string",
"author": "string",
"date": "2021-10-27T21:56:19.166Z",
"text": "string"
}
],
"place": [
{
"id": "string",
"href": "string",
"name": "string",
"role": "string",
"@baseType": "string",
"@schemaLocation": "string",
"@type": "string",
"@referredType": "string"
}
],
"relatedEntity": [
{
"id": "string",
"href": "string",
"name": "string",
"role": "string",
"@baseType": "string",
"@schemaLocation": "string",
"@type": "string",
"@referredType": "string"
}
],
"relatedParty": [
{
"id": "string",
"href": "string",
"name": "string",
"role": "string",
"@baseType": "string",
"@schemaLocation": "string",
"@type": "string",
"@referredType": "string"
}
],
"serviceCharacteristic": [
{
"id": "string",
"name": "string",
"valueType": "string",
"characteristicRelationship": [
{
"id": "string",
"relationshipType": "string"
}
],
"value": "string",
"@baseType": "string",
"@schemaLocation": "string",
"@type": "string"
}
],
"serviceOrderItem": [
{
"itemId": "string",
"role": "string",
"serviceOrderHref": "string",
"serviceOrderId": "string",
"itemAction": "add",
"@referredType": "string"
}
],
"serviceRelationship": [
"string"
],
"serviceSpecification": {
"id": "string",
"href": "string",
"name": "string",
"version": "string",
"@baseType": "string",
"@schemaLocation": "string",
"@type": "string",
"@referredType": "string"
},
"state": "feasibilityChecked",
"supportingResource": [
{
"id": "string",
"href": "string",
"name": "string",
"@baseType": "string",
"@schemaLocation": "string",
"@type": "string",
"@referredType": "string"
}
],
"supportingService": [
"string"
],
"@baseType": "string",
"@schemaLocation": "string",
"@type": "string",
"@referredType": "string"
}
]
}
]
Depending of the legacy, follow the link to view the examples
Definitions
Each of the request parameters is detailed.
name | type | description | required |
---|---|---|---|
id | string | Unique identifier of the service. | N |
href | string | Reference of the service. | N |
category | string | Is it a customer facing or resource facing service | N |
description | string | Free-text description of the service | N |
endDate | datetime | Date when the service ends | N |
hasStarted | boolean | 'If TRUE, this Service has already been started' | N |
isBundle | boolean | If true, the service is a ServiceBundle which regroup a service hierarchy. If false, the service is a ''atomic'' service (hierachy leaf). | N |
isServiceEnabled | boolean | If FALSE and hasStarted is FALSE, this particular Service has NOT been enabled for use - if FALSE and hasStarted is TRUE then the service has failed | N |
isStateful | boolean | If TRUE, this Service can be changed without affecting any other services | N |
name | string | Name of the service | N |
serviceDate | string | Date when the service was created (whatever its status). | N |
serviceType | string | Business type of the service | N |
startDate | datetime | Date when the service starts | N |
startMode | string | This attribute is an enumerated integer that indicates how the Service is started, such as: 0: Unknown; 1: Automatically by the managed environment; 2: Automatically by the owning device; 3: Manually by the Provider of the Service; 4: Manually by a Customer of the Provider; 5: Any of the above' | N |
note | array | A list of notes made on this service | N |
note.id | string | Identifier of the note within its containing entity (may or may not be globally unique, depending on provider implementation) | N |
note.author | string | Author of the note | N |
note.date | datetime | Date of the note | N |
note.text | string | Text of the note | N |
note.@baseType | string | When sub-classing, this defines the super-class' | N |
note.@schemaLocation | string | A URI to a JSON-Schema file that defines additional attributes and relationships | N |
note.@type | string | When sub-classing, this defines the sub-class entity name | N |
place | object array | A list of places related to this service, e.g. where the service is installed, a delivery address for equipment, etc.' | N |
place.id | string | Unique identifier of the place | N |
place.href | string | Unique reference of the place | N |
place.name | string | A user-friendly name for the place, such as [Paris Store], [London Store], [Main Home] | N |
place.role | string | Role of the place, such as: [home delivery], [shop retrieval]) | N |
place.@baseType | string | When sub-classing, this defines the super-class' | N |
place.@schemaLocation | string | A URI to a JSON-Schema file that defines additional attributes and relationships | N |
place.@type | string | When sub-classing, this defines the sub-class entity name | N |
relatedParty | object array | A list of related party references (RelatedParty [1..*]). A related party defines party or party role linked to a specific entity. | N |
relatedParty.id | string | Unique identifier of the party | N |
relatedParty.href | string | Unique reference of the party | N |
relatedParty.name | string | Name of the related entity. | N |
relatedParty.role | string | Role played by the related party | N |
relatedParty.@baseType | string | When sub-classing, this defines the super-class' | N |
relatedParty.@schemaLocation | string | A URI to a JSON-Schema file that defines additional attributes and relationships | N |
relatedParty.@type | string | When sub-classing, this defines the sub-class entity name | N |
relatedParty.@referredType | string | The actual type of the target instance when needed for disambiguation. | N |
relatedParty.contact.contactMedium | array | Indicates the contact medium that could be used to contact the party. | N |
relatedParty.contact.contactMedium.mediumType | string | Type of the contact medium, such as: email address, telephone number, postal address | N |
relatedParty.contact.contactMedium.characteristic | object | Any additional characteristic(s) of this contact medium | N |
relatedParty.contact.contactMedium.characteristic.phoneNumber | string | The primary phone number of the contact | N |
feature | object array | A list of features (Feature [*]). A list of feature associated with this service. | N |
feature.featureCharacteristic | object array | A list of characteristics (Characteristic [1..*]). This is a list of Characteristics for a particular feature. | N |
feature.featureCharacteristic.name | string | Name of the characteristic | N |
feature.featureCharacteristic.valueType | string | Data type of the value of the characteristic | N |
feature.featureCharacteristic.value | any | The value of the characteristic | N |
serviceOrderItem | object array | A list of related service order items (RelatedServiceOrderItem [*]). A list of service order items related to this service. | N |
serviceOrderItem.serviceOrderId | string | Unique identifier of a related entity. | N |
serviceOrderItem.itemAction | string | An order item action type (OrderItemActionType). Action of the order item for this service. | N |
serviceCharacteristic | object array | A list of characteristics (Characteristic []). A list of characteristics that characterize this service (ServiceCharacteristic []). | N |
serviceCharacteristic.name | string | Name of the characteristic | N |
serviceCharacteristic.valueType | string | Data type of the value of the characteristic | N |
serviceCharacteristic.value | string | The value of the characteristic | N |
serviceCharacteristic.@baseType | string | When sub-classing, this defines the super-class' | N |
serviceCharacteristic.@schemaLocation | string | A URI to a JSON-Schema file that defines additional attributes and relationships | N |
serviceCharacteristic.@type | string | When sub-classing, this defines the sub-class entity name | N |
serviceOrder | object array | A list of service orders related to this service | N |
serviceOrder.id | string | A string. Unique identifier of the Service Order. | N |
serviceOrder.href | string | A string. Reference of the Service Order. | N |
serviceOrder.serviceOrderItemId | string | A string. Unique identifier of the Service Order Item within a service order, not populated if this is a reference to a service order. | N |
serviceRelationship | object array | A list of service relationships (ServiceRelationship []). Describes links with other service(s) in the inventory (useful for describing relies-on, relies-from between CFS for example).' | N |
serviceRelationship.relationshipType | string | The type of relationship (e.g. depends on, enables) | N |
serviceRelationship.service | array | The service being referred to | N |
serviceRelationship.service.id | string | Unique identifier of the party | N |
serviceRelationship.service.href | string | Unique reference of the party | N |
serviceRelationship.service.name | string | Name of the related entity. | N |
serviceRelationship.service.@baseType | string | When sub-classing, this defines the super-class' | N |
serviceRelationship.service.@schemaLocation | string | A URI to a JSON-Schema file that defines additional attributes and relationships | N |
serviceRelationship.service.@type | string | When sub-classing, this defines the sub-class entity name | N |
serviceRelationship.service.@referredType | string | The actual type of the target instance when needed for disambiguation. | N |
serviceRelationship.@baseType | string | When sub-classing, this defines the super-class' | N |
serviceRelationship.@schemaLocation | string | A URI to a JSON-Schema file that defines additional attributes and relationships | N |
serviceRelationship.@type | string | When sub-classing, this defines the sub-class entity name | N |
serviceSpecification | array | The specification from which this service was instantiated | N |
serviceSpecification.id | string | Unique identifier of the requiredServiceSpecification | N |
serviceSpecification.href | string | Unique reference of the requiredServiceSpecification | N |
serviceSpecification.name | string | Name of the requiredServiceSpecification. | N |
serviceSpecification.@referredType | string | The actual type of the target instance when needed for disambiguation. | N |
serviceSpecification.targetServiceSchema | string | A target service schema (TargetServiceSchema). A target service schema reference (TargetServiceSchemaRef). The reference object to the schema and type of target service which is described by service specification. | N |
serviceSpecification.version | string | A string. Service specification version. | N |
state | string | The life cycle state of the service, such as: feasibilityChecked, designed, reserved, active, inactive, terminated' | N |
supportingResource | object array | A list of supporting resources (SupportingResource []).Note: only Service of type RFS can be associated with Resources.' | N |
supportingResource.id | string | Unique identifier of the Entity | N |
supportingResource.href | string | Unique reference of the Entity | N |
supportingResource.name | string | Name of the Entity. | N |
supportingResource.value | string | The resource value that can be used to identify a resource with a public key (e.g.: a tel nr, an msisdn) | N |
supportingResource.@baseType | string | When sub-classing, this defines the super-class' | N |
supportingResource.@schemaLocation | string | A URI to a JSON-Schema file that defines additional attributes and relationships | N |
supportingResource.@type | string | When sub-classing, this defines the sub-class entity name | N |
supportingResource.@referredType | string | The actual type of the target instance when needed for disambiguation. | N |
supportingService | array | A list of supporting services (SupportingService [*]). A collection of services that support this service (bundling, link CFS to RFS).' | N |
supportingService.id | string | Unique identifier of the related entity. | N |
supportingService.href | string | Unique reference of the related entity. | N |
supportingService.name | string | Name of the related entity.. | N |
supportingService.@baseType | string | When sub-classing, this defines the super-class' | N |
supportingService.@schemaLocation | string | A URI to a JSON-Schema file that defines additional attributes and relationships | N |
supportingService.@type | string | When sub-classing, this defines the sub-class entity name | N |
supportingService.@referredType | string | The actual type of the target instance when needed for disambiguation. | N |
@baseType | string | When sub-classing, this defines the super-class' | N |
@schemaLocation | string | A URI to a JSON-Schema file that defines additional attributes and relationships | N |
@type | string | When sub-classing, this defines the sub-class entity name | N |
6
Possible response error
In this section all the possible data structures received by the client are defined and that must be considered as unsatisfactory when responding to the method.
[ 400 ]
Bad Request - the request could not be understood by the server due to malformed syntax. The client SHOULD NOT repeat the request without modifications.json
{
"errors" : [{
"code" : 400,
"message" : "The request is invalid or not properly formed.",
"description" : "The client sent too many requests and server is not able to serve them all at the moment"
}
]
}
[ 401 ]
Unauthorized - The request has not been applied because it lacks valid authentication credentials for the target resource.json
{
"errors" : [{
"code" : 401,
"message" : "The user could not be authenticated for this request.",
"description" : "The request has not been applied because it lacks valid authentication credentials for the target resource"
}
]
}
[ 404 ]
Not Found - server has not found a resource with that URI. This may be temporary and permanent condition. This status code is commonly used when the server does not wish to reveal exactly why the request has been refused, or when no other response is applicable.json
{
"errors": [
{
"code": 404,
"message": "Liberate :Service details not found for reference id:2964328",
"description": "SOAP-ENV:Client-Validation constraint violation: data type mismatch in element 'ns0:uniqueServId'-Validation constraint violation: data type mismatch in element 'ns0:uniqueServId'"
}
]
}
json
{
"errors": [
{
"code": 404,
"message": "Liberate:Error invoking SOAP service for serviceId: 2964328",
"description": "SERVNOTFND-Service not found.-"
}
]
}
[ 405 ]
Method Not Allowed - HTTP method not allowed for this resource. The method specified in the Request-Line is not allowed for the resource identified by the Request-URI.json
{
"errors": [{
"code": 405,
"message": "APIKIT:METHOD_NOT_ALLOWED",
"description": "HTTP Method POST not allowed for : /{businessId}/service/{id}"
}]
}
[ 500 ]
Internal Server Error - server encountered an error processing request. This should not happen normally, but it is a generic error message, given when no more specific message is suitable.json
{
"errors" : [{
"code" : 500,
"message" : "The request failed due to an internal error.",
"description": "error description"
}
]
}
[ 501 ]
Not implemented - indicates that the server does not support the functionality required to fulfill the request. This is the appropriate response when the server does not recognize the request method and is not capable of supporting it for any resource.
{
"errors" : [{
"code" : 501,
"message" : "NOT IMPLEMENTED",
"description" : "Operation GET /service for Business Id: xxxx not implemented"
}
]
}
Administration and data management
In this section you define all the transformations, temporary and final repositories of the data within the method flow.
Transformation Request
In this section the matrix of all the data transformations that is carried out within the service is defined.
liberate-service-inventory-management-sys
Original Payload | Mulesoft | transformation |
---|---|---|
ID | id | |
relatedParty.id | relatedParty.id |
cerillion-service-inventory-management-sys
Original Payload | Mulesoft | transformation |
---|---|---|
ID | ID |
eda-sys
Original Payload | Mulesoft | transformation |
---|---|---|
id | id | |
queryParams.serviceRelationship.service.category | serviceRelationship.service.category | |
queryParams.serviceType | serviceType |
movistar-sys
Original Payload | Mulesoft | transformation |
---|---|---|
queryParams.serviceType | queryParams.serviceType |
Transformation Response
In this section the matrix of all the data transformations that is carried out within the service is defined.
note: same response from SYS without transformation
Original Payload | Mulesoft | transformation |
---|---|---|
payload | payload |
Services dependencies
This section defines all the connections to the web services and the methods that are used within the method.
liberate-service-inventory-management-sys
Method | Type |
---|---|
/service/{id} | GET |
cerillion-service-inventory-management-sys
Method | Type |
---|---|
/service/{id} | GET |
eda-sys
Method | Type |
---|---|
/service/{id} | GET |
movistar-sys
Method | Type |
---|---|
/service/{id} | GET |