This endpoint deletes one or more Device(s) at once.
+++Attention+++
This endpoint is extremely powerful. But with great power comes a great responsibility.
Deleting Devices CANNOT be undone. Please backup any device and variable data before deleting a Device.
Request
To delete one or more Devices please make a POST request to the following URL:
HTTP Method | URL |
---|---|
POST | https://industrial.api.ubidots.com/api/v2.0/devices/_/bulk/delete/ |
It's a POST
Please note that it's a POST request and not a DELETE request.
Body Parameters
The body is an Array containing one or more <device_key>
. Each <device_key>
object can contain the following body parameters:
Parameter | Type | Description |
---|---|---|
device_key | String | The id or label of the Device, label should use the prefix ~ |
<device_key>
Remember that the
<device_key>
has 3 valid formats:
-<device_id> :"6e309da44fc8455a9cceb5aa"
-<device_label>:"~second-device"
//Remember to add the ~ before the device label
-JSON of <device_id>:{ "id": "1237809ca5pIhpjgc345fc" }
+++ATTENTION+++
Please be VERY careful using this endpoint, why? Because it's possible to delete many Devices at once.
We propose 1 safe alternatives:
- Do a GET All Devices request using the query parameter
fields=id
. This returns an Array of the Device Ids. Simply copy this Array and use it in the body for this endpoint. Thus, you make sure that only the intended Devices in that Array are deleted and not any other.
Query Parameters
Parameter | Type | Use | Description |
---|---|---|---|
token | String | Authentication | Authentication Token can optionally be sent as a query parameter |
Header
Parameter | Required? | Description |
---|---|---|
X-Auth-Token | Yes | Authentication Token of account |
X-Bulk-Operation | Yes | Need to be set to True for the bulk operation to work |
Content-Type | Yes | Content type of body |
$ curl -X DELETE 'https://industrial.api.ubidots.com/api/v2.0/devices/_/bulk/delete/' \
-H 'X-Auth-Token: oaXBo6ODhIjPsusNRPUGIK4d72bc73' \
-H 'Content-Type: application/json' \
-H 'X-Bulk-Operation: True' \
-d '[
"6e309da44fc8455a9cceb5aa",
"~second-device",
"~third-device",
{
"id": "1237809ca5pIhpjgc345fc"
}
]'
{
"task": {
"id": "tyg54645501a9ca5714e7b098721"
}
}
{
"code": 400001,
"message": "Validation Error.",
"detail": {
....
}
}
{
"code": 401001,
"message": "Authentication credentials were not provided.",
"detail": "Authentication credentials were not provided."
}
{
"detail": "Header `X-BULK-OPERATION` should be provided for bulk operation."
}
Response
Returns a Task Id of the asynchronous process.