deleteTabularData method

Future<int> deleteTabularData(
  1. String organizationId,
  2. int olderThanDays, {
  3. DeleteTabularFilter? filter,
})

Delete tabular data older than a specified number of days.

Returns the number of pieces of data that were deleted.

Optionally, a filter can be provided to further constrain which data is deleted. If provided, only data matching the filter will be deleted. If omitted, data is deleted based on organizationId and olderThanDays.

_viam = await Viam.withApiKey(
    dotenv.env['API_KEY_ID'] ?? '',
    dotenv.env['API_KEY'] ?? ''
);
final dataClient = _viam.dataClient;

try {
  // Delete all data older than 5 days
  dataClient.deleteTabularData("<YOUR-ORG-ID>", 5);

  // Delete data older than 5 days, filtered by location
  final filter = DeleteTabularFilter(locationIds: ["<YOUR-LOCATION-ID>"]);
  dataClient.deleteTabularData("<YOUR-ORG-ID>", 5, filter: filter);

 print('Successfully deleted tabular data');
} catch (e) {
 print('Error deleting tabular data: $e');
}

For more information, see Data Client API.

Implementation

Future<int> deleteTabularData(
  String organizationId,
  int olderThanDays, {
  DeleteTabularFilter? filter,
}) async {
  final request = DeleteTabularDataRequest()
    ..organizationId = organizationId
    ..deleteOlderThanDays = olderThanDays;
  if (filter != null) {
    request.filter = filter;
  }
  final response = await _dataClient.deleteTabularData(request);
  return response.deletedCount.toInt();
}