createMediaInsightsPipelineConfiguration method

Future<CreateMediaInsightsPipelineConfigurationResponse> createMediaInsightsPipelineConfiguration({
  1. required List<MediaInsightsPipelineConfigurationElement> elements,
  2. required String mediaInsightsPipelineConfigurationName,
  3. required String resourceAccessRoleArn,
  4. String? clientRequestToken,
  5. RealTimeAlertConfiguration? realTimeAlertConfiguration,
  6. List<Tag>? tags,
})

A structure that contains the static configurations for a media insights pipeline.

May throw BadRequestException. May throw ForbiddenException. May throw NotFoundException. May throw ResourceLimitExceededException. May throw ServiceFailureException. May throw ServiceUnavailableException. May throw ThrottledClientException. May throw UnauthorizedClientException.

Parameter elements : The elements in the request, such as a processor for Amazon Transcribe or a sink for a Kinesis Data Stream.

Parameter mediaInsightsPipelineConfigurationName : The name of the media insights pipeline configuration.

Parameter resourceAccessRoleArn : The ARN of the role used by the service to access Amazon Web Services resources, including Transcribe and Transcribe Call Analytics, on the caller’s behalf.

Parameter clientRequestToken : The unique identifier for the media insights pipeline configuration request.

Parameter realTimeAlertConfiguration : The configuration settings for the real-time alerts in a media insights pipeline configuration.

Parameter tags : The tags assigned to the media insights pipeline configuration.

Implementation

Future<CreateMediaInsightsPipelineConfigurationResponse>
    createMediaInsightsPipelineConfiguration({
  required List<MediaInsightsPipelineConfigurationElement> elements,
  required String mediaInsightsPipelineConfigurationName,
  required String resourceAccessRoleArn,
  String? clientRequestToken,
  RealTimeAlertConfiguration? realTimeAlertConfiguration,
  List<Tag>? tags,
}) async {
  final $payload = <String, dynamic>{
    'Elements': elements,
    'MediaInsightsPipelineConfigurationName':
        mediaInsightsPipelineConfigurationName,
    'ResourceAccessRoleArn': resourceAccessRoleArn,
    'ClientRequestToken': clientRequestToken ?? _s.generateIdempotencyToken(),
    if (realTimeAlertConfiguration != null)
      'RealTimeAlertConfiguration': realTimeAlertConfiguration,
    if (tags != null) 'Tags': tags,
  };
  final response = await _protocol.send(
    payload: $payload,
    method: 'POST',
    requestUri: '/media-insights-pipeline-configurations',
    exceptionFnMap: _exceptionFns,
  );
  return CreateMediaInsightsPipelineConfigurationResponse.fromJson(response);
}