associateGlossaryTerms method

Future<AssociateGlossaryTermsResponse> associateGlossaryTerms({
  1. required String assetIdentifier,
  2. required List<String> glossaryTermIdentifiers,
  3. String? clientToken,
})

Associates one or more glossary terms with an asset in Glue Data Catalog.

May throw AccessDeniedException. May throw ConcurrentModificationException. May throw EntityNotFoundException. May throw InternalServiceException. May throw InvalidInputException. May throw ThrottlingException.

Parameter assetIdentifier : The unique identifier of the asset to associate glossary terms with.

Parameter glossaryTermIdentifiers : The list of glossary term identifiers to associate with the asset.

Parameter clientToken : A unique, case-sensitive identifier that you provide to ensure the idempotency of the request.

Implementation

Future<AssociateGlossaryTermsResponse> associateGlossaryTerms({
  required String assetIdentifier,
  required List<String> glossaryTermIdentifiers,
  String? clientToken,
}) async {
  final headers = <String, String>{
    'Content-Type': 'application/x-amz-json-1.1',
    'X-Amz-Target': 'AWSGlue.AssociateGlossaryTerms'
  };
  final jsonResponse = await _protocol.send(
    method: 'POST',
    requestUri: '/',
    exceptionFnMap: _exceptionFns,
    // TODO queryParams
    headers: headers,
    payload: {
      'AssetIdentifier': assetIdentifier,
      'GlossaryTermIdentifiers': glossaryTermIdentifiers,
      'ClientToken': clientToken ?? _s.generateIdempotencyToken(),
    },
  );

  return AssociateGlossaryTermsResponse.fromJson(jsonResponse.body);
}