For every single of operation on the entities use the following templates and provide sample REST requests and responses. Remember that the following Uniform Contract rules must be used : Operation on Entities | Uniform API Operation | Description | Create measurementCollectionJob | POST measurementCollectionJob | Create measurementCollectionJob | Query measurementCollectionJob | GET measurementCollectionJob | Query measurementCollectionJob | Complete Update of measurementCollectionJob | PUT measurementCollectionJob | Complete Update measurementCollectionJob | Partial Update measurementCollectionJob | PATCH measurementCollectionJob | Partial Update measurementCollectionJob | Delete measurementCollectionJob | DELETE measurementCollectionJob | Delete measurementCollectionJob | Create measurementProductionJob | POST measurementProductionJob | Create measurementProductionJob | Query measurementProductionJob | GET measurementProductionJob | Query measurementProductionJob | Complete Update measurementProductionJob | PUT measurementProductionJob | Complete Update measurementProductionJob | Partial Update measurementProductionJob | PATCH measurementProductionJob | Partial Update measurementProductionJob | Delete measurementProductionJob | DELETE measurementProductionJob | Delete measurementProductionJob | Create adhocCollection | POST adhocCollection | Create adhocCollection | Query adhocCollection | GET adhocCollection | Query adhocCollection | Delete adhocCollection | DELETE adhocCollection | Delete adhocCollection | Query trackingRecord | GET trackingRecord | Query trackingRecord |
Filtering and attribute selection rules are described in the TMF REST Design Guidelines. Notifications are also described in a subsequent section.
GET /api/measurementCollectionJob/{ID}Description : - This Uniform Contract operation is used to retrieve the representation of measurementCollectionJob using id.
- Collection of jobs can be retrieved via GET /api/<RESOURCE> with no {ID}
Behavior :
- 200 OK – request was successfull
- 404 Not Found.
Example: REQUEST | GET /api/measurementCollectionJob/collJob001 Accept: application/json | RESPONSE | 200 Content-Type: application/json { "id": "collJob001", "creationTime": "11-26-2014 16:00:00 +0530", "lastModifiedTime": "11-26-2014 16:00:00 +0530", "adminState": "UNLOCKED", "jobPriority": "5", "executionState": "EXECUTING", "scheduleDefinition": { "type": "RecurringScheduleDefinition", "scheduleInfo": { "scheduleDefinitionStartTime": "11-26-2013 16:00:00 +0530", "scheduleDefinitionEndTime": "11-26-2014 16:00:00 +0530" } }, "consumingApplicationId": "CONSUMER001", "producingApplicationId": "NE001", "granularity": "G_15MN", "monitoredObjectsCriteria": { "type": "MonitoredClassCriteria", "monitoredObjectInfo": { "monitoredObjectClass": "SDH-Route" } }, "protocolTransferData": { "transportProtocol": "FILE_TRANSFER", "fileTransferData": { "fileLocation": "\\pm pmdata", "fileFormat": "XML", "compressionType": "NO_COMPRESSION", "retentionDuration": { "units": "MINUTES", "amount": "180" }, "packingType": "NO_PACKING" } }, "reportingPeriod": "R_15MN", "outputFormat": "3GPP", "performanceIndicatorGroup": [ { "name": "TRANSPORT01" }, { "name": "TRANSPORT02" } ], "performanceIndicatorSpecification": [ { "name": "ES" }, { "name": "SES" }, { "name": "UAS" }, { "name": "BBE" }, { "name": "FEBBE" }, { "name": "FEES" }, { "name": "FESES" }, { "name": "FEUAS" }, { "name": "UASBID" }, { "name": "LINK_AVAIL_PCT" } ] } |
Retrieving all jobs – returns an array/list of measurementCollectionJobs
- GET /api/measurementCollectionJob
Retrieving all jobs with AdminState as LOCKED - GET /api/measurementCollectionJob?adminState=LOCKED
Retrieve a job with ID, but only the attributes executionState & scheduleDefinition in response. - GET /api/measurementCollectionJob/1/executionState,scheduleDefinition
GET /api/measurementProductionJob/{ID}Description : - This Uniform Contract operation is used to retrieve the representation of measurementProductionJob using id.
- Collection of jobs can be retrieved via GET /api/<RESOURCE> with no {ID}
Behavior : - 200 OK – request was successfull
- 404 Not Found.
Example: REQUEST | GET /api/measurementProductionJob/collJob001 Accept: application/json | RESPONSE | 200 Content-Type: application/json { "id": "prodJob001", "creationTime": "11-26-2013 16:00:00 +0530", "lastModifiedTime": "11-26-2013 16:00:00 +0530", "adminState": "UNLOCKED", "jobPriority": "5", "executionState": "EXECUTING", "scheduleDefinition": { "type": "RecurringScheduleDefinition", "scheduleInfo": { "scheduleDefinitionStartTime": "11-26-2013 16:00:00 +0530", "scheduleDefinitionEndTime": "11-26-2014 16:00:00 +0530" } }, "consumingApplicationId": "CONSUMER001", "producingApplicationId": "NE001", "granularity": "G_15MN", "monitoredObjectsCriteria": { "type": "MonitoredClassCriteria", "monitoredObjectInfo": { "monitoredObjectClass": "SDH-Route" } }, "protocolTransferData": { "transportProtocol": "FILE_TRANSFER", "fileTransferData": { "fileLocation": "\\pm pmdata", "fileFormat": "XML", "compressionType": "NO_COMPRESSION", "retentionDuration": { "units": "MINUTES", "amount": "180" }, "packingType": "NO_PACKING" } }, "performanceIndicatorGroup": [ { "name": "TRANSPORT01" }, { "name": "TRANSPORT02" } ], "performanceIndicatorSpecification": [ { "name": "ES" }, { "name": "SES" }, { "name": "UAS" }, { "name": "BBE" }, { "name": "FEBBE" }, { "name": "FEES" }, { "name": "FESES" }, { "name": "FEUAS" }, { "name": "UASBID" }, { "name": "LINK_AVAIL_PCT" } ] } |
Retrieving all jobs – returns an array/list of measurementProductionJobs
- GET /api/measurementProductionJob
Retrieving all jobs with AdminState as LOCKED - GET /api/measurementProductionJob?adminState=LOCKED
Retrieve a job with ID, but only the attributes executionState & scheduleDefinition in response. - GET /api/measurementProductionJob/1/executionState,scheduleDefinition
GET /api/adhocCollection/{ID}Description : - This Uniform Contract operation is used to retrieve the representation of adhocCollection using id.
- Collection of jobs can be retrieved via GET /api/<RESOURCE> with no {ID}
Behavior : - 200 OK – request was successfull
- 404 Not Found.
Example: REQUEST | GET /api/adhocCollection/collJob001 Accept: application/json | RESPONSE | 200 Content-Type: application/json { "id": "adhocJob001", "creationTime": "11-26-2014 16:00:00 +0530", "lastModifiedTime": "11-26-2014 16:00:00 +0530", "adminState": "UNLOCKED", "jobPriority": "5", "executionState": "EXECUTING", "consumingApplicationId": "CONSUMER001", "producingApplicationId": "NE001", "granularity": "G_15MN", "monitoredObjectsCriteria": { "type": "MonitoredClassCriteria", "monitoredObjectInfo": { "monitoredObjectClass": "SDH-Route" } }, "protocolTransferData": { "transportProtocol": "FILE_TRANSFER", "fileTransferData": { "fileLocation": "\\pm pmdata", "fileFormat": "XML", "compressionType": "NO_COMPRESSION", "retentionDuration": { "units": "MINUTES", "amount": "180" }, "packingType": "NO_PACKING" } }, "collectionPeriod": { "units": "MINUTES", "amount": "120" }, "outputFormat": "3GPP", "performanceIndicatorGroup": [ { "name": "TRANSPORT01" }, { "name": "TRANSPORT02" } ], "performanceIndicatorSpecification": [ { "name": "ES" }, { "name": "SES" }, { "name": "UAS" }, { "name": "BBE" }, { "name": "FEBBE" }, { "name": "FEES" }, { "name": "FESES" }, { "name": "FEUAS" }, { "name": "UASBID" }, { "name": "LINK_AVAIL_PCT" } ] } |
Retrieving all jobs – returns an array/list of adhocCollections
Retrieving all adhocCollections with AdminState as LOCKED - GET /api/adhocCollection?adminState=LOCKED
Retrieve a job with ID, but only the attributes granularity & protocolTransferData in response. - GET /api/measurementCollectionJob/1/granularity,protocolTransferData
PUT /api/measurementCollectionJob/{ID}Description : - This Uniform Contract operation is used to modify any specified 'measurementCollectionJob' identified by the id.
Behavior :
- 200 OK – request was successfull
- 404 Not Found.
Example: REQUEST | PUT /api/measurementCollectionJob/collJob001 Accept: application/json Content-Type: application/json { "id": "collJob001", "creationTime": "11-26-2014 16:00:00 +0530", "lastModifiedTime": "11-26-2014 16:00:00 +0530", "adminState": "UNLOCKED", "jobPriority": "5", "executionState": "EXECUTING", "scheduleDefinition": { "type": "RecurringScheduleDefinition", "scheduleInfo": { "scheduleDefinitionStartTime": "11-26-2013 16:00:00 +0530", "scheduleDefinitionEndTime": "11-26-2014 16:00:00 +0530" } }, "consumingApplicationId": "CONSUMER001", "producingApplicationId": "NE001", "granularity": "G_15MN", "monitoredObjectsCriteria": { "type": "MonitoredClassCriteria", "monitoredObjectInfo": { "monitoredObjectClass": "SDH-Route" } }, "protocolTransferData": { "transportProtocol": "FILE_TRANSFER", "fileTransferData": { "fileLocation": "\\pm pmdata", "fileFormat": "XML", "compressionType": "NO_COMPRESSION", "retentionDuration": { "units": "MINUTES", "amount": "180" }, "packingType": "NO_PACKING" } }, "reportingPeriod": "R_15MN", "outputFormat": "3GPP", "performanceIndicatorGroup": [ { "name": "TRANSPORT01" }, { "name": "TRANSPORT02" } ], "performanceIndicatorSpecification": [ { "name": "ES" }, { "name": "SES" }, { "name": "UAS" }, { "name": "BBE" }, { "name": "FEBBE" }, { "name": "FEES" }, { "name": "FESES" }, { "name": "FEUAS" }, { "name": "UASBID" }, { "name": "LINK_AVAIL_PCT" } ] } | RESPONSE | 200 Content-Type: application/json { "id": "collJob001", "creationTime": "11-26-2014 16:00:00 +0530", "lastModifiedTime": "11-26-2014 16:00:00 +0530", "adminState": "UNLOCKED", "jobPriority": "5", "executionState": "EXECUTING", "scheduleDefinition": { "type": "RecurringScheduleDefinition", "scheduleInfo": { "scheduleDefinitionStartTime": "11-26-2013 16:00:00 +0530", "scheduleDefinitionEndTime": "11-26-2014 16:00:00 +0530" } }, "consumingApplicationId": "CONSUMER001", "producingApplicationId": "NE001", "granularity": "G_15MN", "monitoredObjectsCriteria": { "type": "MonitoredClassCriteria", "monitoredObjectInfo": { "monitoredObjectClass": "SDH-Route" } }, "protocolTransferData": { "transportProtocol": "FILE_TRANSFER", "fileTransferData": { "fileLocation": "\\pm pmdata", "fileFormat": "XML", "compressionType": "NO_COMPRESSION", "retentionDuration": { "units": "MINUTES", "amount": "180" }, "packingType": "NO_PACKING" } }, "reportingPeriod": "R_15MN", "outputFormat": "3GPP", "performanceIndicatorGroup": [ { "name": "TRANSPORT01" }, { "name": "TRANSPORT02" } ], "performanceIndicatorSpecification": [ { "name": "ES" }, { "name": "SES" }, { "name": "UAS" }, { "name": "BBE" }, { "name": "FEBBE" }, { "name": "FEES" }, { "name": "FESES" }, { "name": "FEUAS" }, { "name": "UASBID" }, { "name": "LINK_AVAIL_PCT" } ] } |
PUT /api/measurementProductionJob/{ID}Description : - This Uniform Contract operation is used to modify any specified 'measurementProductionJob' identified by the id.
Behavior :
- 200 OK – request was successfull
- 404 Not Found.
Example: REQUEST | PUT /api/measurementProductionJob/collJob001 Accept: application/json Content-Type: application/json { "id": "prodJob001", "creationTime": "11-26-2013 16:00:00 +0530", "lastModifiedTime": "11-26-2013 16:00:00 +0530", "adminState": "UNLOCKED", "jobPriority": "5", "executionState": "EXECUTING", "scheduleDefinition": { "type": "RecurringScheduleDefinition", "scheduleInfo": { "scheduleDefinitionStartTime": "11-26-2013 16:00:00 +0530", "scheduleDefinitionEndTime": "11-26-2014 16:00:00 +0530" } }, "consumingApplicationId": "CONSUMER001", "producingApplicationId": "NE001", "granularity": "G_15MN", "monitoredObjectsCriteria": { "type": "MonitoredClassCriteria", "monitoredObjectInfo": { "monitoredObjectClass": "SDH-Route" } }, "protocolTransferData": { "transportProtocol": "FILE_TRANSFER", "fileTransferData": { "fileLocation": "\\pm pmdata", "fileFormat": "XML", "compressionType": "NO_COMPRESSION", "retentionDuration": { "units": "MINUTES", "amount": "180" }, "packingType": "NO_PACKING" } }, "performanceIndicatorGroup": [ { "name": "TRANSPORT01" }, { "name": "TRANSPORT02" } ], "performanceIndicatorSpecification": [ { "name": "ES" }, { "name": "SES" }, { "name": "UAS" }, { "name": "BBE" }, { "name": "FEBBE" }, { "name": "FEES" }, { "name": "FESES" }, { "name": "FEUAS" }, { "name": "UASBID" }, { "name": "LINK_AVAIL_PCT" } ] } | RESPONSE | 200 Content-Type: application/json { "id": "prodJob001", "creationTime": "11-26-2013 16:00:00 +0530", "lastModifiedTime": "11-26-2013 16:00:00 +0530", "adminState": "UNLOCKED", "jobPriority": "5", "executionState": "EXECUTING", "scheduleDefinition": { "type": "RecurringScheduleDefinition", "scheduleInfo": { "scheduleDefinitionStartTime": "11-26-2013 16:00:00 +0530", "scheduleDefinitionEndTime": "11-26-2014 16:00:00 +0530" } }, "consumingApplicationId": "CONSUMER001", "producingApplicationId": "NE001", "granularity": "G_15MN", "monitoredObjectsCriteria": { "type": "MonitoredClassCriteria", "monitoredObjectInfo": { "monitoredObjectClass": "SDH-Route" } }, "protocolTransferData": { "transportProtocol": "FILE_TRANSFER", "fileTransferData": { "fileLocation": "\\pm pmdata", "fileFormat": "XML", "compressionType": "NO_COMPRESSION", "retentionDuration": { "units": "MINUTES", "amount": "180" }, "packingType": "NO_PACKING" } }, "performanceIndicatorGroup": [ { "name": "TRANSPORT01" }, { "name": "TRANSPORT02" } ], "performanceIndicatorSpecification": [ { "name": "ES" }, { "name": "SES" }, { "name": "UAS" }, { "name": "BBE" }, { "name": "FEBBE" }, { "name": "FEES" }, { "name": "FESES" }, { "name": "FEUAS" }, { "name": "UASBID" }, { "name": "LINK_AVAIL_PCT" } ] } |
PUT /api/adhocCollection/{ID}Description : - This Uniform Contract operation is used to modify any specified 'adhocCollection' identified by the id.
Behavior :
- 200 OK – request was successfull
- 404 Not Found.
Example: REQUEST | PUT /api/adhocCollection/collJob001 Accept: application/json Content-Type: application/json { "id": "adhocJob001", "creationTime": "11-26-2014 16:00:00 +0530", "lastModifiedTime": "11-26-2014 16:00:00 +0530", "adminState": "UNLOCKED", "jobPriority": "5", "executionState": "EXECUTING", "consumingApplicationId": "CONSUMER001", "producingApplicationId": "NE001", "granularity": "G_15MN", "monitoredObjectsCriteria": { "type": "MonitoredClassCriteria", "monitoredObjectInfo": { "monitoredObjectClass": "SDH-Route" } }, "protocolTransferData": { "transportProtocol": "FILE_TRANSFER", "fileTransferData": { "fileLocation": "\\pm pmdata", "fileFormat": "XML", "compressionType": "NO_COMPRESSION", "retentionDuration": { "units": "MINUTES", "amount": "180" }, "packingType": "NO_PACKING" } }, "collectionPeriod": { "units": "MINUTES", "amount": "120" }, "outputFormat": "3GPP", "performanceIndicatorGroup": [ { "name": "TRANSPORT01" }, { "name": "TRANSPORT02" } ], "performanceIndicatorSpecification": [ { "name": "ES" }, { "name": "SES" }, { "name": "UAS" }, { "name": "BBE" }, { "name": "FEBBE" }, { "name": "FEES" }, { "name": "FESES" }, { "name": "FEUAS" }, { "name": "UASBID" }, { "name": "LINK_AVAIL_PCT" } ] } | RESPONSE | 200 Content-Type: application/json { "id": "adhocJob001", "creationTime": "11-26-2014 16:00:00 +0530", "lastModifiedTime": "11-26-2014 16:00:00 +0530", "adminState": "UNLOCKED", "jobPriority": "5", "executionState": "EXECUTING", "consumingApplicationId": "CONSUMER001", "producingApplicationId": "NE001", "granularity": "G_15MN", "monitoredObjectsCriteria": { "type": "MonitoredClassCriteria", "monitoredObjectInfo": { "monitoredObjectClass": "SDH-Route" } }, "protocolTransferData": { "transportProtocol": "FILE_TRANSFER", "fileTransferData": { "fileLocation": "\\pm pmdata", "fileFormat": "XML", "compressionType": "NO_COMPRESSION", "retentionDuration": { "units": "MINUTES", "amount": "180" }, "packingType": "NO_PACKING" } }, "collectionPeriod": { "units": "MINUTES", "amount": "120" }, "outputFormat": "3GPP", "performanceIndicatorGroup": [ { "name": "TRANSPORT01" }, { "name": "TRANSPORT02" } ], "performanceIndicatorSpecification": [ { "name": "ES" }, { "name": "SES" }, { "name": "UAS" }, { "name": "BBE" }, { "name": "FEBBE" }, { "name": "FEES" }, { "name": "FESES" }, { "name": "FEUAS" }, { "name": "UASBID" }, { "name": "LINK_AVAIL_PCT" } ] } |
Example see TMF REST Design Guidelines.
PATCH /api/measurementCollectionJob/{ID}Description : - This Uniform Contract operation is used to partially update the representation of a measurementCollectionJob identified by its id.
- Resource represents a managed entity.
Behavior : - 200 OK – request was successfull
- 404 Not Found.
Example: REQUEST | PATCH /api/measurementCollectionJob/collJob001 Accept: application/json Content-Type: application/json { "adminState": "1" } | RESPONSE | 200 Content-Type: application/json { "id": "collJob001", "creationTime": "11-26-2014 16:00:00 +0530", "lastModifiedTime": "11-26-2014 16:00:00 +0530", "adminState": "1", "jobPriority": "5", "executionState": "EXECUTING", "scheduleDefinition": { "type": "RecurringScheduleDefinition", "scheduleInfo": { "scheduleDefinitionStartTime": "11-26-2013 16:00:00 +0530", "scheduleDefinitionEndTime": "11-26-2014 16:00:00 +0530" } }, "consumingApplicationId": "CONSUMER001", "producingApplicationId": "NE001", "granularity": "G_15MN", "monitoredObjectsCriteria": { "type": "MonitoredClassCriteria", "monitoredObjectInfo": { "monitoredObjectClass": "SDH-Route" } }, "protocolTransferData": { "transportProtocol": "FILE_TRANSFER", "fileTransferData": { "fileLocation": "\\pm pmdata", "fileFormat": "XML", "compressionType": "NO_COMPRESSION", "retentionDuration": { "units": "MINUTES", "amount": "180" }, "packingType": "NO_PACKING" } }, "reportingPeriod": "R_15MN", "outputFormat": "3GPP", "performanceIndicatorGroup": [ { "name": "TRANSPORT01" }, { "name": "TRANSPORT02" } ], "performanceIndicatorSpecification": [ { "name": "ES" }, { "name": "SES" }, { "name": "UAS" }, { "name": "BBE" }, { "name": "FEBBE" }, { "name": "FEES" }, { "name": "FESES" }, { "name": "FEUAS" }, { "name": "UASBID" }, { "name": "LINK_AVAIL_PCT" } ] } |
PATCH /api/measurementProductionJob/{ID}Description : - This Uniform Contract operation is used to partially update the representation of a measurementProductionJob identified by its id.
- Resource represents a managed entity.
Behavior : - 200 OK – request was successfull
- 404 Not Found.
Example: REQUEST | PATCH /api/measurementProductionJob/collJob001 Accept: application/json Content-Type: application/json { "jobPriority": "6" } | RESPONSE | 200 Content-Type: application/json { "id": "prodJob001", "creationTime": "11-26-2013 16:00:00 +0530", "lastModifiedTime": "11-26-2013 16:00:00 +0530", "adminState": "UNLOCKED", "jobPriority": "6", "executionState": "EXECUTING", "scheduleDefinition": { "type": "RecurringScheduleDefinition", "scheduleInfo": { "scheduleDefinitionStartTime": "11-26-2013 16:00:00 +0530", "scheduleDefinitionEndTime": "11-26-2014 16:00:00 +0530" } }, "consumingApplicationId": "CONSUMER001", "producingApplicationId": "NE001", "granularity": "G_15MN", "monitoredObjectsCriteria": { "type": "MonitoredClassCriteria", "monitoredObjectInfo": { "monitoredObjectClass": "SDH-Route" } }, "protocolTransferData": { "transportProtocol": "FILE_TRANSFER", "fileTransferData": { "fileLocation": "\\pm pmdata", "fileFormat": "XML", "compressionType": "NO_COMPRESSION", "retentionDuration": { "units": "MINUTES", "amount": "180" }, "packingType": "NO_PACKING" } }, "performanceIndicatorGroup": [ { "name": "TRANSPORT01" }, { "name": "TRANSPORT02" } ], "performanceIndicatorSpecification": [ { "name": "ES" }, { "name": "SES" }, { "name": "UAS" }, { "name": "BBE" }, { "name": "FEBBE" }, { "name": "FEES" }, { "name": "FESES" }, { "name": "FEUAS" }, { "name": "UASBID" }, { "name": "LINK_AVAIL_PCT" } ] } |
PATCH /api/adhocCollection/{ID}Description : - This Uniform Contract operation is used to partially update the representation of a adhocCollectionJob identified by its id.
- Resource represents a managed entity.
Behavior : - 200 OK – request was successfull
- 404 Not Found..
Example: REQUEST | PATCH /api/adhocCollection/adhocJob001 Accept: application/json Content-Type: application/json { "consumingApplicationId": "CONSUMER002", } | RESPONSE | 200 Content-Type: application/json { "id": "adhocJob001", "creationTime": "11-26-2014 16:00:00 +0530", "lastModifiedTime": "11-26-2014 16:00:00 +0530", "adminState": "UNLOCKED", "jobPriority": "5", "executionState": "EXECUTING", "consumingApplicationId": "CONSUMER002", "producingApplicationId": "NE001", "granularity": "G_15MN", "monitoredObjectsCriteria": { "type": "MonitoredClassCriteria", "monitoredObjectInfo": { "monitoredObjectClass": "SDH-Route" } }, "protocolTransferData": { "transportProtocol": "FILE_TRANSFER", "fileTransferData": { "fileLocation": "\\pm pmdata", "fileFormat": "XML", "compressionType": "NO_COMPRESSION", "retentionDuration": { "units": "MINUTES", "amount": "180" }, "packingType": "NO_PACKING" } }, "collectionPeriod": { "units": "MINUTES", "amount": "120" }, "outputFormat": "3GPP", "performanceIndicatorGroup": [ { "name": "TRANSPORT01" }, { "name": "TRANSPORT02" } ], "performanceIndicatorSpecification": [ { "name": "ES" }, { "name": "SES" }, { "name": "UAS" }, { "name": "BBE" }, { "name": "FEBBE" }, { "name": "FEES" }, { "name": "FESES" }, { "name": "FEUAS" }, { "name": "UASBID" }, { "name": "LINK_AVAIL_PCT" } ] } |
Example see TMF REST Design Guidelines.
POST /api/measurementCollectionJobDescription : - This Uniform Contract operation is used to create the representation of any specified 'measurementCollectionJob'.
Behavior : - 201 OK – job created successfully
- 404 Not Found.
Example: REQUEST | POST /api/measurementCollectionJob Accept: application/json Content-Type: application/json { "id": "collJob001", "creationTime": "11-26-2014 16:00:00 +0530", "lastModifiedTime": "11-26-2014 16:00:00 +0530", "adminState": "UNLOCKED", "jobPriority": "5", "executionState": "EXECUTING", "scheduleDefinition": { "type": "RecurringScheduleDefinition", "scheduleInfo": { "scheduleDefinitionStartTime": "11-26-2013 16:00:00 +0530", "scheduleDefinitionEndTime": "11-26-2014 16:00:00 +0530" } }, "consumingApplicationId": "CONSUMER001", "producingApplicationId": "NE001", "granularity": "G_15MN", "monitoredObjectsCriteria": { "type": "MonitoredClassCriteria", "monitoredObjectInfo": { "monitoredObjectClass": "SDH-Route" } }, "protocolTransferData": { "transportProtocol": "FILE_TRANSFER", "fileTransferData": { "fileLocation": "\\pm pmdata", "fileFormat": "XML", "compressionType": "NO_COMPRESSION", "retentionDuration": { "units": "MINUTES", "amount": "180" }, "packingType": "NO_PACKING" } }, "reportingPeriod": "R_15MN", "outputFormat": "3GPP", "performanceIndicatorGroup": [ { "name": "TRANSPORT01" }, { "name": "TRANSPORT02" } ], "performanceIndicatorSpecification": [ { "name": "ES" }, { "name": "SES" }, { "name": "UAS" }, { "name": "BBE" }, { "name": "FEBBE" }, { "name": "FEES" }, { "name": "FESES" }, { "name": "FEUAS" }, { "name": "UASBID" }, { "name": "LINK_AVAIL_PCT" } ] } | RESPONSE | 201 Content-Type: application/json { "id": "collJob001", "creationTime": "11-26-2014 16:00:00 +0530", "lastModifiedTime": "11-26-2014 16:00:00 +0530", "adminState": "UNLOCKED", "jobPriority": "5", "executionState": "EXECUTING", "scheduleDefinition": { "type": "RecurringScheduleDefinition", "scheduleInfo": { "scheduleDefinitionStartTime": "11-26-2013 16:00:00 +0530", "scheduleDefinitionEndTime": "11-26-2014 16:00:00 +0530" } }, "consumingApplicationId": "CONSUMER001", "producingApplicationId": "NE001", "granularity": "G_15MN", "monitoredObjectsCriteria": { "type": "MonitoredClassCriteria", "monitoredObjectInfo": { "monitoredObjectClass": "SDH-Route" } }, "protocolTransferData": { "transportProtocol": "FILE_TRANSFER", "fileTransferData": { "fileLocation": "\\pm pmdata", "fileFormat": "XML", "compressionType": "NO_COMPRESSION", "retentionDuration": { "units": "MINUTES", "amount": "180" }, "packingType": "NO_PACKING" } }, "reportingPeriod": "R_15MN", "outputFormat": "3GPP", "performanceIndicatorGroup": [ { "name": "TRANSPORT01" }, { "name": "TRANSPORT02" } ], "performanceIndicatorSpecification": [ { "name": "ES" }, { "name": "SES" }, { "name": "UAS" }, { "name": "BBE" }, { "name": "FEBBE" }, { "name": "FEES" }, { "name": "FESES" }, { "name": "FEUAS" }, { "name": "UASBID" }, { "name": "LINK_AVAIL_PCT" } ] } |
Example see TMF REST Design Guidelines.
POST /api/measurementProductionJob Description :
- This Uniform Contract operation is used to create the representation of any specified 'measurementProductionJob'..
Behavior :
- 201 OK – job created successfully
- 404 Not Found.
Example: REQUEST | PUT /api/measurementProductionJob Accept: application/json Content-Type: application/json { "id": "prodJob001", "creationTime": "11-26-2013 16:00:00 +0530", "lastModifiedTime": "11-26-2013 16:00:00 +0530", "adminState": "UNLOCKED", "jobPriority": "5", "executionState": "EXECUTING", "scheduleDefinition": { "type": "RecurringScheduleDefinition", "scheduleInfo": { "scheduleDefinitionStartTime": "11-26-2013 16:00:00 +0530", "scheduleDefinitionEndTime": "11-26-2014 16:00:00 +0530" } }, "consumingApplicationId": "CONSUMER001", "producingApplicationId": "NE001", "granularity": "G_15MN", "monitoredObjectsCriteria": { "type": "MonitoredClassCriteria", "monitoredObjectInfo": { "monitoredObjectClass": "SDH-Route" } }, "protocolTransferData": { "transportProtocol": "FILE_TRANSFER", "fileTransferData": { "fileLocation": "\\pm pmdata", "fileFormat": "XML", "compressionType": "NO_COMPRESSION", "retentionDuration": { "units": "MINUTES", "amount": "180" }, "packingType": "NO_PACKING" } }, "performanceIndicatorGroup": [ { "name": "TRANSPORT01" }, { "name": "TRANSPORT02" } ], "performanceIndicatorSpecification": [ { "name": "ES" }, { "name": "SES" }, { "name": "UAS" }, { "name": "BBE" }, { "name": "FEBBE" }, { "name": "FEES" }, { "name": "FESES" }, { "name": "FEUAS" }, { "name": "UASBID" }, { "name": "LINK_AVAIL_PCT" } ] } | RESPONSE | 201 Content-Type: application/json { "id": "prodJob001", "creationTime": "11-26-2013 16:00:00 +0530", "lastModifiedTime": "11-26-2013 16:00:00 +0530", "adminState": "UNLOCKED", "jobPriority": "5", "executionState": "EXECUTING", "scheduleDefinition": { "type": "RecurringScheduleDefinition", "scheduleInfo": { "scheduleDefinitionStartTime": "11-26-2013 16:00:00 +0530", "scheduleDefinitionEndTime": "11-26-2014 16:00:00 +0530" } }, "consumingApplicationId": "CONSUMER001", "producingApplicationId": "NE001", "granularity": "G_15MN", "monitoredObjectsCriteria": { "type": "MonitoredClassCriteria", "monitoredObjectInfo": { "monitoredObjectClass": "SDH-Route" } }, "protocolTransferData": { "transportProtocol": "FILE_TRANSFER", "fileTransferData": { "fileLocation": "\\pm pmdata", "fileFormat": "XML", "compressionType": "NO_COMPRESSION", "retentionDuration": { "units": "MINUTES", "amount": "180" }, "packingType": "NO_PACKING" } }, "performanceIndicatorGroup": [ { "name": "TRANSPORT01" }, { "name": "TRANSPORT02" } ], "performanceIndicatorSpecification": [ { "name": "ES" }, { "name": "SES" }, { "name": "UAS" }, { "name": "BBE" }, { "name": "FEBBE" }, { "name": "FEES" }, { "name": "FESES" }, { "name": "FEUAS" }, { "name": "UASBID" }, { "name": "LINK_AVAIL_PCT" } ] } |
Example see TMF REST Design Guidelines.
POST /api/adhocCollectionDescription : - This Uniform Contract operation is used to create the representation of any specified 'adhocCollection'.
Behavior :
- 201 OK – request was successfull
- 404 Not Found.
Example: REQUEST | POST /api/adhocCollection Accept: application/json Content-Type: application/json { "id": "adhocJob001", "creationTime": "11-26-2014 16:00:00 +0530", "lastModifiedTime": "11-26-2014 16:00:00 +0530", "adminState": "UNLOCKED", "jobPriority": "5", "executionState": "EXECUTING", "consumingApplicationId": "CONSUMER001", "producingApplicationId": "NE001", "granularity": "G_15MN", "monitoredObjectsCriteria": { "type": "MonitoredClassCriteria", "monitoredObjectInfo": { "monitoredObjectClass": "SDH-Route" } }, "protocolTransferData": { "transportProtocol": "FILE_TRANSFER", "fileTransferData": { "fileLocation": "\\pm pmdata", "fileFormat": "XML", "compressionType": "NO_COMPRESSION", "retentionDuration": { "units": "MINUTES", "amount": "180" }, "packingType": "NO_PACKING" } }, "collectionPeriod": { "units": "MINUTES", "amount": "120" }, "outputFormat": "3GPP", "performanceIndicatorGroup": [ { "name": "TRANSPORT01" }, { "name": "TRANSPORT02" } ], "performanceIndicatorSpecification": [ { "name": "ES" }, { "name": "SES" }, { "name": "UAS" }, { "name": "BBE" }, { "name": "FEBBE" }, { "name": "FEES" }, { "name": "FESES" }, { "name": "FEUAS" }, { "name": "UASBID" }, { "name": "LINK_AVAIL_PCT" } ] } | RESPONSE | 201 Content-Type: application/json { "id": "adhocJob001", "creationTime": "11-26-2014 16:00:00 +0530", "lastModifiedTime": "11-26-2014 16:00:00 +0530", "adminState": "UNLOCKED", "jobPriority": "5", "executionState": "EXECUTING", "consumingApplicationId": "CONSUMER001", "producingApplicationId": "NE001", "granularity": "G_15MN", "monitoredObjectsCriteria": { "type": "MonitoredClassCriteria", "monitoredObjectInfo": { "monitoredObjectClass": "SDH-Route" } }, "protocolTransferData": { "transportProtocol": "FILE_TRANSFER", "fileTransferData": { "fileLocation": "\\pm pmdata", "fileFormat": "XML", "compressionType": "NO_COMPRESSION", "retentionDuration": { "units": "MINUTES", "amount": "180" }, "packingType": "NO_PACKING" } }, "collectionPeriod": { "units": "MINUTES", "amount": "120" }, "outputFormat": "3GPP", "performanceIndicatorGroup": [ { "name": "TRANSPORT01" }, { "name": "TRANSPORT02" } ], "performanceIndicatorSpecification": [ { "name": "ES" }, { "name": "SES" }, { "name": "UAS" }, { "name": "BBE" }, { "name": "FEBBE" }, { "name": "FEES" }, { "name": "FESES" }, { "name": "FEUAS" }, { "name": "UASBID" }, { "name": "LINK_AVAIL_PCT" } ] } |
Example see TMF REST Design Guidelines.
DELETE /api/measurementCollectionJob/{ID}This Uniform Contract operation is used to delete a managed entity or a task. Description : - This operation is used to delete any specified 'measurementCollectionJob' by the job's id .
Behavior : - 200 OK – request was successfull
- 404 Not Found.
Example: REQUEST | DELETE /api/measurementCollectionJob/collJob0001 | RESPONSE | 200 |
Example see TMF REST Design Guidelines.
DELETE /api/measurementProductionJob/{ID}This Uniform Contract operation is used to delete a managed entity or a task. Description : - This operation is used to delete any specified 'measurementProductionJob' by the job's id .
Behavior : - 200 OK – request was successfull
- 404 Not Found.
Example: REQUEST | DELETE /api/measurementProductionJob/prodJob0001 | RESPONSE | 200 |
Example see TMF REST Design Guidelines.
DELETE /api/adhocCollection/{ID}This Uniform Contract operation is used to delete a managed entity or a task. Description : - This operation is used to delete any specified 'adhocCollection' by the job's id .
Behavior : - 200 OK – request was successfull
- 404 Not Found.
Example: REQUEST | DELETE /api/adhocCollection/adhocCollJob0001 | RESPONSE | 200 |
Example see TMF REST Design Guidelines.
GET /api/trackingRecord/{ID}Description : - This Uniform Contract operation is used to retrieve the collection of tracking records belonging to a job via the job's id.
Behavior :
- 200 OK – request was successfull
- 404 Not Found.
Example: REQUEST | GET /api/trackingRecord/collJob001 Accept: application/json | RESPONSE | 200 Content-Type: application/json { "trackingRecord": [ { "id": "1", "jobId": "collJob001", "jobType": "measurementCollectionJob", "description": "measurementCollectionJob Created successfully", "time": "11-26-2014 16:00:00 +0530", "userId": "root", "systemId": "tmfPm" }, { "id": "2", "jobId": "collJob001", "jobType": "measurementCollectionJob", "description": "measurementCollectionJob Completed successfully", "time": "11-26-2014 16:01:00 +0530", "userId": "root", "systemId": "tmfPm" }] } |
POST API/getSupportedObjectClassesTaskThis Uniform Contract operation retrieves supported object classes. Description : - Shall return all identifiers of object classes supported by the interface.
Behavior : - 200 OK – requst was successfull
404 Not Found. REQUEST | POST API/getSupportedObjectClassesTask Content-type: application/json | RESPONSE | 201 Content-Type: application/json { "supportedObjectClasses": [ "Blade", "VC4", "E1-Link" ] } |
POST API/getSupportedObjectsTaskThis Uniform Contract operation list supported objects Instances for the specified Object Class. Object Class specification is optional, & when no Object Class is specified, all Object Instances shall be returned. Description :- Returns all Object Instances supported by the interface (either all or scoped by the Object Class)
Behavior : - 200 OK – requst was successfull
404 Not Found. REQUEST | POST API/getSupportedObjectsTask Content-type: application/json { "inputClass": "Blade" } | RESPONSE | 201 Content-Type: application/json { "supportedObjects": { "Object": [ "/md1/Node1", "/md1/Node1/If1" ] } } |
POST API/getSupportedIndicatorGroupsTaskThis Uniform Contract operation retrieves supported Indicator Groups. Object Class specification is optional, & when no object Class is specified, all indicator groups shall be returned. Description:- Returns all indicator groups supported by the interface (either all or scoped by Object Class)
Behavior : - 200 OK – requst was successfull
404 Not Found. REQUEST | POST API/getSupportedIndicatorGroupsTask Content-type: application/json { "inputClass": "Blade" } | RESPONSE | 201 Content-Type: application/json { "supportedIndicatorGroups": [ "Groups_1", "Groups_2" ]} |
POST API/getSupportedIndicatorsTaskThis Uniform Contract operation retrieves supported Indicators. Object Class, Indicator Group specification shall be used to scope the result. Description:- Returns all indicators supported by the provided Object class and/or Indicator group.
- If indicator group is provided in input only the indicator instances related to the input object class & specified group shall be returned
Behavior : - 200 OK – requst was successfull
404 Not Found. REQUEST | POST API/getSupportedIndicatorsTask Content-type: application/json { "inputClass": "Blade" "inputIndicatorGroup": "Group1" } | RESPONSE | 201 Content-Type: application/json { "supportedIndicators": [ "SES", "BBE" ]} |
POST API/getSupportedTransportTaskThis Uniform Contract operation retrieves supported transport supported. Description:- Returns supported transports
Behavior : - 200 OK – requst was successfull
404 Not Found. REQUEST | POST API/getSupportedTransportTask Content-type: application/json | RESPONSE | 201 Content-Type: application/json { "supportedTransport": [ "SFTP", "TFTP" ] } |
POST API/getSupportedFileFormatTaskThis Uniform Contract operation retrieves supported file formats. Description:- Returns supported file formats
Behavior : - 200 OK – requst was successfull
404 Not Found. REQUEST | POST API/getSupportedFileFormatTask Content-type: application/json | RESPONSE | 201 Content-Type: application/json { "supportedFileFormat": [ "3GPP", "MTOSI" ] } |
POST API/getCommonIndicatorGroupsGranularitiesTaskThis Uniform Contract operation retrieves the list of granularities which are common to a set of indicator groups. Description:- Returns common granularities for a set of indicator groups
Behavior : - 200 OK – requst was successfull
- 404 Not Found.
REQUEST | POST API/ getCommonIndicatorGroupsGranularitiesTask Content-type: application/json { "inputIndicatorGroups": ["Grp_1", "Grp_2"] } | RESPONSE | 201 Content-Type: application/json { "commonGranularities": [ "G_15MN", "G_30MN" ] } |
POST API/getCommonIndicatorsGranularitiesTaskThis Uniform Contract operation retrieves the list of granularities which are common to a set of indicators. Description: - Returns common granularities for a set of indicators
Behavior : - 200 OK – requst was successfull
404 Not Found. REQUEST | POST API/ getCommonIndicatorGroupsGranularitiesTask Content-type: application/json { "inputIndicators": ["SES", "BBE"] } | RESPONSE | 201 Content-Type: application/json { "commonGranularities ": [ "G_15MN", "G_30MN" ] } |
POST API/listAvailableFilesTaskThis Uniform Contract operation list available files for a given job & time scope. Description :- Returns all files generated by the server and available for download
Behavior : - 200 OK – requst was successfull
404 Not Found. REQUEST | POST API/listAvailableFilesTask Content-type: application/json { "JobId": "1234", "beginTime": "19_08_2013_23:00:00", "endTime": "19_08_2013_23:30:00", } | RESPONSE | 201 Content-Type: application/json { "JobId": "1234", "beginTime": "19_08_2013_23:00:00", "endTime": "19_08_2013_23:30:00", "FileInfo": [ "JOB1234_YYY_19_08_2013_23:15:00", "JOB1234_YYY_19_08_2013_23:30:00" ] } |
|