queryArtifactLineageSubgraph method

Future<GoogleCloudAiplatformV1LineageSubgraph> queryArtifactLineageSubgraph(
  1. String artifact, {
  2. String? filter,
  3. int? maxHops,
  4. String? $fields,
})

Retrieves lineage of an Artifact represented through Artifacts and Executions connected by Event edges and returned as a LineageSubgraph.

Request parameters:

artifact - Required. The resource name of the Artifact whose Lineage needs to be retrieved as a LineageSubgraph. Format: projects/{project}/locations/{location}/metadataStores/{metadatastore}/artifacts/{artifact} The request may error with FAILED_PRECONDITION if the number of Artifacts, the number of Executions, or the number of Events that would be returned for the Context exceeds 1000. Value must have pattern ^projects/\[^/\]+/locations/\[^/\]+/metadataStores/\[^/\]+/artifacts/\[^/\]+$.

filter - Filter specifying the boolean condition for the Artifacts to satisfy in order to be part of the Lineage Subgraph. The syntax to define filter query is based on https://google.aip.dev/160. The supported set of filters include the following: * Attribute filtering: For example: display_name = "test" Supported fields include: name, display_name, uri, state, schema_title, create_time, and update_time. Time fields, such as create_time and update_time, require values specified in RFC-3339 format. For example: create_time = "2020-11-19T11:30:00-04:00" * Metadata field: To filter on metadata fields use traversal operation as follows: metadata... For example: metadata.field_1.number_value = 10.0 In case the field name contains special characters (such as colon), one can embed it inside double quote. For example: metadata."field:1".number_value = 10.0 Each of the above supported filter types can be combined together using logical operators (AND & OR). Maximum nested expression depth allowed is 5. For example: display_name = "test" AND metadata.field1.bool_value = true.

maxHops - Specifies the size of the lineage graph in terms of number of hops from the specified artifact. Negative Value: INVALID_ARGUMENT error is returned 0: Only input artifact is returned. No value: Transitive closure is performed to return the complete graph.

$fields - Selector specifying which fields to include in a partial response.

Completes with a GoogleCloudAiplatformV1LineageSubgraph.

Completes with a commons.ApiRequestError if the API endpoint returned an error.

If the used http.Client completes with an error when making a REST call, this method will complete with the same error.

Implementation

async.Future<GoogleCloudAiplatformV1LineageSubgraph>
    queryArtifactLineageSubgraph(
  core.String artifact, {
  core.String? filter,
  core.int? maxHops,
  core.String? $fields,
}) async {
  final queryParams_ = <core.String, core.List<core.String>>{
    if (filter != null) 'filter': [filter],
    if (maxHops != null) 'maxHops': ['${maxHops}'],
    if ($fields != null) 'fields': [$fields],
  };

  final url_ = 'v1/' +
      core.Uri.encodeFull('$artifact') +
      ':queryArtifactLineageSubgraph';

  final response_ = await _requester.request(
    url_,
    'GET',
    queryParams: queryParams_,
  );
  return GoogleCloudAiplatformV1LineageSubgraph.fromJson(
      response_ as core.Map<core.String, core.dynamic>);
}