POST /devices/attributes/actions/observe/
Requests Diagnostics observation information via live periodic interval streaming of RF parameters from a list of IOT devices.
POST /devices/attributes/actions/observe/
This API will return (POST) callbacks, including the device identity, the attribute names, corresponding attribute values and the date/timestamp of when the observation was made for the attributes listed in the callback.
An RF attribute of the device can be streamed via periodically reported data. The highest frequency of reporting is 15 seconds. There is no upper limit on this time interval; however, for devices that are configured to sleep, this interval should be set less than the active timer for the device. Also streaming can be requested for a certain total duration of time. For the API, there is no limit to the maximum duration of monitoring. Monitoring will stop when one of these two occurs (whichever occurs first):
POST https://thingspace.verizon.com/api/diagnostics/v1/devices/attributes/actions/observe
None.
The request header must contain a current ThingSpace authorization bearer token and a valid VZ-M2M session token, and must set the content-type to JSON.
Parameter Name | Data Type | Description |
---|---|---|
Authorization required |
string | HTTP Authorization bearer token. |
VZ-M2M-Token required |
string | A valid session token returned by POST /api/m2m/v1/session/login. |
Content-Type required |
string | Must be application/json . |
Parameter Name | Data Type | Description |
---|---|---|
accountName | string | The name of the account for which you want start running Diagnostic Services. An account name is usually numeric, and must include any leading zeros. |
devices required |
array of objects | The devices on which you want to start running diagnostics. |
device.id required |
string | A device identifier value |
device.kind required |
string | Type of identifier
|
attributes | array of objects | Attributes are streaming RF parameters that you want to observe. |
attributes.name required |
string | examples:
|
frequency required |
frequency data object | Frequency for observing diagnostics. |
frequency.value required |
integer($int32) | Mininum value is 15 seconds |
frequency.unit required |
string |
|
duration required |
duration data object | Length of time for observing diagnostics |
duration.value required |
integer($int32) | Mininum value is 15 seconds |
duration.unit required |
string |
|
{
"accountName": "TestQAAccount",
"devices": [
{
"id": "864508030026238",
"kind": "IMEI"
}
],
"attributes": [
{
"name": "RADIO_SIGNAL_STRENGTH"
},
{
"name": "LINK_QUALITY"
},
{
"name":"NETWORK_BEARER"
},
{
"name":"CELL_ID"
}
],
"frequency": {
"value": 15,
"unit": "SECOND"
},
"duration": {
"value": 15,
"unit": "SECOND"
}
}
Status 200
Parameter Name | Data Type | Description |
---|---|---|
createdOn | string($date-time) | The date and time of when this request was created. |
transactionID | string | The transaction ID of the diagnostics service that you started. |
status | string | Status of the request. |
{
"createdOn": "2019-09-10T19:05:33.330579352Z",
"transactionID": "9c7bb124-11f5-4ff3-8a88-0eec1ba99205",
"status": "CANCEL_OBSERVE_PENDING"
}
Parameter Name | Data Type | Description |
---|---|---|
accountName | string | The name of the account for which you are running Diagnostic Services. An account name is usually numeric, and must include any leading zeros. |
attributes | array of objects | Streaming RF parameters that you are observing.examples:
|
attributes.error | error object | Contains error codes and messages related to the request. |
attributes.error.errorCode | string | Error code. |
attributes.error.errorMessage | string | Error message. |
attributes.name | string | Name of the attribute. |
status | string | The status of the diagnostic observation. Valid values include:
|
attributes.updatedOn | dateTime | The date and time the status was updated. |
attributes.value | string | Represents the current streaming value for the requested attribute from the device. |
createdOn | string($date-time) | The date and time of when this request was created. |
device | array of objects | The device on which you are running diagnostics. |
device.id | string | A device identifier value. |
device.kind | string | Type of identifier
|
error | string | The error code and error message |
transactionID | string | The transaction ID of the diagnostics service that you started. |
{
"accountName":"0642233522-00003",
"attributes":[
{
"error":{
},
"name":"RADIO_SIGNAL_STRENGTH",
"status":"OBSERVE_READY",
"updatedOn":"2020-02-21T20:54:16.263Z",
"value":"27"
}
],
"createdOn":"2020-02-21T20:54:16.263Z",
"device":{
"id":"355154080648401",
"kind":"IMEI"
},
"error":{
},
"transactionID":"7c2d1d71-0b50-4d8a-ab13-aeb733d5e909"
}
{
"transactionID":"1b24047e-f35e-4d3e-aa60-675914fcbb15",
"accountName":"0642233522-00003",
"device":{
"id":355154080648401,
"kind":"IMEI"
},
"attributes":[
{
"updatedOn":"2020-03-20 04:00:29.1488572 +0000 UTC",
"name":"RADIO_SIGNAL_STRENGTH",
"value":"",
"error":{
"errorCode":"INTERNAL_SYSTEM_ERROR",
"errorMessage":"9000, Internal system error"
},
"status":"OBSERVE_FAILURE"
}
],
"error":{
"errorCode":"INTERNAL_SYSTEM_ERROR",
"errorMessage":"9000, Internal system error"
},
"createdOn":"2020-03-20 04:00:29.148856888 +0000 UTC"
}
Status 400 All error messages are returned in this format:
{
"errorCode": "error code string",
"errorMessage": "error message string"
}
Error codes and messages are listed on the Error Codes page, along with explanations and suggestions for corrective actions.