Overview

This section provides an overview of the API for deleting data from a collection.

MethodDescription
collection.deleteDelete data points from a collection.

You need to have write permission on the collection to be able to delete datapoints.

Check out the examples below for common scenarios of deleting data from a collection.

Deleting data by datapoint IDs

To delete data from a collection, use the delete method. This method accepts a list of datapoint IDs to delete.

from tilebox.datasets import Client

client = Client()
datasets = client.datasets()
collections = datasets.my_custom_dataset.collections()
collection = collections["Sensor-1"]

n_deleted = collection.delete([
  "0195c87a-49f6-5ffa-e3cb-92215d057ea6",
  "0195c87b-bd0e-3998-05cf-af6538f34957",
])

print(f"Deleted {n_deleted} data points.")
Output
Deleted 2 data points.

delete not only takes a list of datapoint IDs as string, but supports a wide range of other useful input types as well. See the delete API documentation for more details.

Possible errors

  • NotFoundError: raised if one of the data points is not found in the collection. If any of the data points are not found, nothing will be deleted.
  • ValueError: raised if one of the specified ids is not a valid UUID

Deleting a time interval

One common way to delete data is to first load it from a collection and then forward it to the delete method. For this use case it often is a good idea to query the datapoints with skip_data=True to avoid loading the data fields, since we only need the datapoint IDs. See fetching only metadata for more details.

to_delete = collection.load(("2023-05-01", "2023-06-01"), skip_data=True)

n_deleted = collection.delete(datapoints)
print(f"Deleted {n_deleted} data points.")
Output
Deleted 104 data points.