listDatasetEntries method

Future<ListDatasetEntriesResponse> listDatasetEntries({
  1. required String datasetArn,
  2. List<String>? containsLabels,
  3. bool? hasErrors,
  4. bool? labeled,
  5. int? maxResults,
  6. String? nextToken,
  7. String? sourceRefContains,
})
Lists the entries (images) within a dataset. An entry is a JSON Line that contains the information for a single image, including the image location, assigned labels, and object location bounding boxes. For more information, see Creating a manifest file.

JSON Lines in the response include information about non-terminal errors found in the dataset. Non terminal errors are reported in errors lists within each JSON Line. The same information is reported in the training and testing validation result manifests that Amazon Rekognition Custom Labels creates during model training.

You can filter the response in variety of ways, such as choosing which labels to return and returning JSON Lines created after a specific date.

This operation requires permissions to perform the rekognition:ListDatasetEntries action.

May throw AccessDeniedException. May throw InternalServerError. May throw InvalidPaginationTokenException. May throw InvalidParameterException. May throw ProvisionedThroughputExceededException. May throw ResourceInUseException. May throw ResourceNotFoundException. May throw ResourceNotReadyException. May throw ThrottlingException.

Parameter datasetArn : The Amazon Resource Name (ARN) for the dataset that you want to use.

Parameter containsLabels : Specifies a label filter for the response. The response includes an entry only if one or more of the labels in ContainsLabels exist in the entry.

Parameter hasErrors : Specifies an error filter for the response. Specify True to only include entries that have errors.

Parameter labeled : Specify true to get only the JSON Lines where the image is labeled. Specify false to get only the JSON Lines where the image isn't labeled. If you don't specify Labeled, ListDatasetEntries returns JSON Lines for labeled and unlabeled images.

Parameter maxResults : The maximum number of results to return per paginated call. The largest value you can specify is 100. If you specify a value greater than 100, a ValidationException error occurs. The default value is 100.

Parameter nextToken : If the previous response was incomplete (because there is more results to retrieve), Amazon Rekognition Custom Labels returns a pagination token in the response. You can use this pagination token to retrieve the next set of results.

Parameter sourceRefContains : If specified, ListDatasetEntries only returns JSON Lines where the value of SourceRefContains is part of the source-ref field. The source-ref field contains the Amazon S3 location of the image. You can use SouceRefContains for tasks such as getting the JSON Line for a single image, or gettting JSON Lines for all images within a specific folder.

Implementation

Future<ListDatasetEntriesResponse> listDatasetEntries({
  required String datasetArn,
  List<String>? containsLabels,
  bool? hasErrors,
  bool? labeled,
  int? maxResults,
  String? nextToken,
  String? sourceRefContains,
}) async {
  _s.validateNumRange(
    'maxResults',
    maxResults,
    1,
    100,
  );
  final headers = <String, String>{
    'Content-Type': 'application/x-amz-json-1.1',
    'X-Amz-Target': 'RekognitionService.ListDatasetEntries'
  };
  final jsonResponse = await _protocol.send(
    method: 'POST',
    requestUri: '/',
    exceptionFnMap: _exceptionFns,
    // TODO queryParams
    headers: headers,
    payload: {
      'DatasetArn': datasetArn,
      if (containsLabels != null) 'ContainsLabels': containsLabels,
      if (hasErrors != null) 'HasErrors': hasErrors,
      if (labeled != null) 'Labeled': labeled,
      if (maxResults != null) 'MaxResults': maxResults,
      if (nextToken != null) 'NextToken': nextToken,
      if (sourceRefContains != null) 'SourceRefContains': sourceRefContains,
    },
  );

  return ListDatasetEntriesResponse.fromJson(jsonResponse.body);
}