deleteBinaryDataByFilter method

Future<int> deleteBinaryDataByFilter(
  1. Filter? filter, {
  2. bool includeInternalData = false,
})

Delete binary data based on an optionally provided filter. If a filter is not provided, all data will be deleted.

Returns the number of pieces of data that were deleted.

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

 try {
  // Create a filter to target specific binary data. Must include at least one org ID.
  final filter = Filter(
   componentName: "camera-1",
   organizationIds: ["<YOUR-ORG-ID>"]
  );

  final deletedCount = await dataClient.deleteBinaryDataByFilter(filter);

  print('Successfully deleted binary data by filter: count $deletedCount');
 } catch (e) {
  print('Error deleting binary data by filter: $e');
 }

For more information, see Data Client API.

Implementation

Future<int> deleteBinaryDataByFilter(Filter? filter, {bool includeInternalData = false}) async {
  final request = DeleteBinaryDataByFilterRequest()
    ..includeInternalData = includeInternalData
    ..filter = filter ?? Filter();
  final response = await _dataClient.deleteBinaryDataByFilter(request);
  return response.deletedCount.toInt();
}