1// Code generated by private/model/cli/gen-api/main.go. DO NOT EDIT.
2
3package transcribeservice
4
5import (
6	"fmt"
7	"time"
8
9	"github.com/aws/aws-sdk-go/aws"
10	"github.com/aws/aws-sdk-go/aws/awsutil"
11	"github.com/aws/aws-sdk-go/aws/request"
12	"github.com/aws/aws-sdk-go/private/protocol"
13	"github.com/aws/aws-sdk-go/private/protocol/jsonrpc"
14)
15
16const opCreateCallAnalyticsCategory = "CreateCallAnalyticsCategory"
17
18// CreateCallAnalyticsCategoryRequest generates a "aws/request.Request" representing the
19// client's request for the CreateCallAnalyticsCategory operation. The "output" return
20// value will be populated with the request's response once the request completes
21// successfully.
22//
23// Use "Send" method on the returned Request to send the API call to the service.
24// the "output" return value is not valid until after Send returns without error.
25//
26// See CreateCallAnalyticsCategory for more information on using the CreateCallAnalyticsCategory
27// API call, and error handling.
28//
29// This method is useful when you want to inject custom logic or configuration
30// into the SDK's request lifecycle. Such as custom headers, or retry logic.
31//
32//
33//    // Example sending a request using the CreateCallAnalyticsCategoryRequest method.
34//    req, resp := client.CreateCallAnalyticsCategoryRequest(params)
35//
36//    err := req.Send()
37//    if err == nil { // resp is now filled
38//        fmt.Println(resp)
39//    }
40//
41// See also, https://docs.aws.amazon.com/goto/WebAPI/transcribe-2017-10-26/CreateCallAnalyticsCategory
42func (c *TranscribeService) CreateCallAnalyticsCategoryRequest(input *CreateCallAnalyticsCategoryInput) (req *request.Request, output *CreateCallAnalyticsCategoryOutput) {
43	op := &request.Operation{
44		Name:       opCreateCallAnalyticsCategory,
45		HTTPMethod: "POST",
46		HTTPPath:   "/",
47	}
48
49	if input == nil {
50		input = &CreateCallAnalyticsCategoryInput{}
51	}
52
53	output = &CreateCallAnalyticsCategoryOutput{}
54	req = c.newRequest(op, input, output)
55	return
56}
57
58// CreateCallAnalyticsCategory API operation for Amazon Transcribe Service.
59//
60// Creates an analytics category. Amazon Transcribe applies the conditions specified
61// by your analytics categories to your call analytics jobs. For each analytics
62// category, you specify one or more rules. For example, you can specify a rule
63// that the customer sentiment was neutral or negative within that category.
64// If you start a call analytics job, Amazon Transcribe applies the category
65// to the analytics job that you've specified.
66//
67// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
68// with awserr.Error's Code and Message methods to get detailed information about
69// the error.
70//
71// See the AWS API reference guide for Amazon Transcribe Service's
72// API operation CreateCallAnalyticsCategory for usage and error information.
73//
74// Returned Error Types:
75//   * BadRequestException
76//   Your request didn't pass one or more validation tests. For example, if the
77//   entity that you're trying to delete doesn't exist or if it is in a non-terminal
78//   state (for example, it's "in progress"). See the exception Message field
79//   for more information.
80//
81//   * LimitExceededException
82//   Either you have sent too many requests or your input file is too long. Wait
83//   before you resend your request, or use a smaller file and resend the request.
84//
85//   * InternalFailureException
86//   There was an internal error. Check the error message and try your request
87//   again.
88//
89//   * ConflictException
90//   There is already a resource with that name.
91//
92// See also, https://docs.aws.amazon.com/goto/WebAPI/transcribe-2017-10-26/CreateCallAnalyticsCategory
93func (c *TranscribeService) CreateCallAnalyticsCategory(input *CreateCallAnalyticsCategoryInput) (*CreateCallAnalyticsCategoryOutput, error) {
94	req, out := c.CreateCallAnalyticsCategoryRequest(input)
95	return out, req.Send()
96}
97
98// CreateCallAnalyticsCategoryWithContext is the same as CreateCallAnalyticsCategory with the addition of
99// the ability to pass a context and additional request options.
100//
101// See CreateCallAnalyticsCategory for details on how to use this API operation.
102//
103// The context must be non-nil and will be used for request cancellation. If
104// the context is nil a panic will occur. In the future the SDK may create
105// sub-contexts for http.Requests. See https://golang.org/pkg/context/
106// for more information on using Contexts.
107func (c *TranscribeService) CreateCallAnalyticsCategoryWithContext(ctx aws.Context, input *CreateCallAnalyticsCategoryInput, opts ...request.Option) (*CreateCallAnalyticsCategoryOutput, error) {
108	req, out := c.CreateCallAnalyticsCategoryRequest(input)
109	req.SetContext(ctx)
110	req.ApplyOptions(opts...)
111	return out, req.Send()
112}
113
114const opCreateLanguageModel = "CreateLanguageModel"
115
116// CreateLanguageModelRequest generates a "aws/request.Request" representing the
117// client's request for the CreateLanguageModel operation. The "output" return
118// value will be populated with the request's response once the request completes
119// successfully.
120//
121// Use "Send" method on the returned Request to send the API call to the service.
122// the "output" return value is not valid until after Send returns without error.
123//
124// See CreateLanguageModel for more information on using the CreateLanguageModel
125// API call, and error handling.
126//
127// This method is useful when you want to inject custom logic or configuration
128// into the SDK's request lifecycle. Such as custom headers, or retry logic.
129//
130//
131//    // Example sending a request using the CreateLanguageModelRequest method.
132//    req, resp := client.CreateLanguageModelRequest(params)
133//
134//    err := req.Send()
135//    if err == nil { // resp is now filled
136//        fmt.Println(resp)
137//    }
138//
139// See also, https://docs.aws.amazon.com/goto/WebAPI/transcribe-2017-10-26/CreateLanguageModel
140func (c *TranscribeService) CreateLanguageModelRequest(input *CreateLanguageModelInput) (req *request.Request, output *CreateLanguageModelOutput) {
141	op := &request.Operation{
142		Name:       opCreateLanguageModel,
143		HTTPMethod: "POST",
144		HTTPPath:   "/",
145	}
146
147	if input == nil {
148		input = &CreateLanguageModelInput{}
149	}
150
151	output = &CreateLanguageModelOutput{}
152	req = c.newRequest(op, input, output)
153	return
154}
155
156// CreateLanguageModel API operation for Amazon Transcribe Service.
157//
158// Creates a new custom language model. Use Amazon S3 prefixes to provide the
159// location of your input files. The time it takes to create your model depends
160// on the size of your training data.
161//
162// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
163// with awserr.Error's Code and Message methods to get detailed information about
164// the error.
165//
166// See the AWS API reference guide for Amazon Transcribe Service's
167// API operation CreateLanguageModel for usage and error information.
168//
169// Returned Error Types:
170//   * BadRequestException
171//   Your request didn't pass one or more validation tests. For example, if the
172//   entity that you're trying to delete doesn't exist or if it is in a non-terminal
173//   state (for example, it's "in progress"). See the exception Message field
174//   for more information.
175//
176//   * LimitExceededException
177//   Either you have sent too many requests or your input file is too long. Wait
178//   before you resend your request, or use a smaller file and resend the request.
179//
180//   * InternalFailureException
181//   There was an internal error. Check the error message and try your request
182//   again.
183//
184//   * ConflictException
185//   There is already a resource with that name.
186//
187// See also, https://docs.aws.amazon.com/goto/WebAPI/transcribe-2017-10-26/CreateLanguageModel
188func (c *TranscribeService) CreateLanguageModel(input *CreateLanguageModelInput) (*CreateLanguageModelOutput, error) {
189	req, out := c.CreateLanguageModelRequest(input)
190	return out, req.Send()
191}
192
193// CreateLanguageModelWithContext is the same as CreateLanguageModel with the addition of
194// the ability to pass a context and additional request options.
195//
196// See CreateLanguageModel for details on how to use this API operation.
197//
198// The context must be non-nil and will be used for request cancellation. If
199// the context is nil a panic will occur. In the future the SDK may create
200// sub-contexts for http.Requests. See https://golang.org/pkg/context/
201// for more information on using Contexts.
202func (c *TranscribeService) CreateLanguageModelWithContext(ctx aws.Context, input *CreateLanguageModelInput, opts ...request.Option) (*CreateLanguageModelOutput, error) {
203	req, out := c.CreateLanguageModelRequest(input)
204	req.SetContext(ctx)
205	req.ApplyOptions(opts...)
206	return out, req.Send()
207}
208
209const opCreateMedicalVocabulary = "CreateMedicalVocabulary"
210
211// CreateMedicalVocabularyRequest generates a "aws/request.Request" representing the
212// client's request for the CreateMedicalVocabulary operation. The "output" return
213// value will be populated with the request's response once the request completes
214// successfully.
215//
216// Use "Send" method on the returned Request to send the API call to the service.
217// the "output" return value is not valid until after Send returns without error.
218//
219// See CreateMedicalVocabulary for more information on using the CreateMedicalVocabulary
220// API call, and error handling.
221//
222// This method is useful when you want to inject custom logic or configuration
223// into the SDK's request lifecycle. Such as custom headers, or retry logic.
224//
225//
226//    // Example sending a request using the CreateMedicalVocabularyRequest method.
227//    req, resp := client.CreateMedicalVocabularyRequest(params)
228//
229//    err := req.Send()
230//    if err == nil { // resp is now filled
231//        fmt.Println(resp)
232//    }
233//
234// See also, https://docs.aws.amazon.com/goto/WebAPI/transcribe-2017-10-26/CreateMedicalVocabulary
235func (c *TranscribeService) CreateMedicalVocabularyRequest(input *CreateMedicalVocabularyInput) (req *request.Request, output *CreateMedicalVocabularyOutput) {
236	op := &request.Operation{
237		Name:       opCreateMedicalVocabulary,
238		HTTPMethod: "POST",
239		HTTPPath:   "/",
240	}
241
242	if input == nil {
243		input = &CreateMedicalVocabularyInput{}
244	}
245
246	output = &CreateMedicalVocabularyOutput{}
247	req = c.newRequest(op, input, output)
248	return
249}
250
251// CreateMedicalVocabulary API operation for Amazon Transcribe Service.
252//
253// Creates a new custom vocabulary that you can use to modify how Amazon Transcribe
254// Medical transcribes your audio file.
255//
256// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
257// with awserr.Error's Code and Message methods to get detailed information about
258// the error.
259//
260// See the AWS API reference guide for Amazon Transcribe Service's
261// API operation CreateMedicalVocabulary for usage and error information.
262//
263// Returned Error Types:
264//   * BadRequestException
265//   Your request didn't pass one or more validation tests. For example, if the
266//   entity that you're trying to delete doesn't exist or if it is in a non-terminal
267//   state (for example, it's "in progress"). See the exception Message field
268//   for more information.
269//
270//   * LimitExceededException
271//   Either you have sent too many requests or your input file is too long. Wait
272//   before you resend your request, or use a smaller file and resend the request.
273//
274//   * InternalFailureException
275//   There was an internal error. Check the error message and try your request
276//   again.
277//
278//   * ConflictException
279//   There is already a resource with that name.
280//
281// See also, https://docs.aws.amazon.com/goto/WebAPI/transcribe-2017-10-26/CreateMedicalVocabulary
282func (c *TranscribeService) CreateMedicalVocabulary(input *CreateMedicalVocabularyInput) (*CreateMedicalVocabularyOutput, error) {
283	req, out := c.CreateMedicalVocabularyRequest(input)
284	return out, req.Send()
285}
286
287// CreateMedicalVocabularyWithContext is the same as CreateMedicalVocabulary with the addition of
288// the ability to pass a context and additional request options.
289//
290// See CreateMedicalVocabulary for details on how to use this API operation.
291//
292// The context must be non-nil and will be used for request cancellation. If
293// the context is nil a panic will occur. In the future the SDK may create
294// sub-contexts for http.Requests. See https://golang.org/pkg/context/
295// for more information on using Contexts.
296func (c *TranscribeService) CreateMedicalVocabularyWithContext(ctx aws.Context, input *CreateMedicalVocabularyInput, opts ...request.Option) (*CreateMedicalVocabularyOutput, error) {
297	req, out := c.CreateMedicalVocabularyRequest(input)
298	req.SetContext(ctx)
299	req.ApplyOptions(opts...)
300	return out, req.Send()
301}
302
303const opCreateVocabulary = "CreateVocabulary"
304
305// CreateVocabularyRequest generates a "aws/request.Request" representing the
306// client's request for the CreateVocabulary operation. The "output" return
307// value will be populated with the request's response once the request completes
308// successfully.
309//
310// Use "Send" method on the returned Request to send the API call to the service.
311// the "output" return value is not valid until after Send returns without error.
312//
313// See CreateVocabulary for more information on using the CreateVocabulary
314// API call, and error handling.
315//
316// This method is useful when you want to inject custom logic or configuration
317// into the SDK's request lifecycle. Such as custom headers, or retry logic.
318//
319//
320//    // Example sending a request using the CreateVocabularyRequest method.
321//    req, resp := client.CreateVocabularyRequest(params)
322//
323//    err := req.Send()
324//    if err == nil { // resp is now filled
325//        fmt.Println(resp)
326//    }
327//
328// See also, https://docs.aws.amazon.com/goto/WebAPI/transcribe-2017-10-26/CreateVocabulary
329func (c *TranscribeService) CreateVocabularyRequest(input *CreateVocabularyInput) (req *request.Request, output *CreateVocabularyOutput) {
330	op := &request.Operation{
331		Name:       opCreateVocabulary,
332		HTTPMethod: "POST",
333		HTTPPath:   "/",
334	}
335
336	if input == nil {
337		input = &CreateVocabularyInput{}
338	}
339
340	output = &CreateVocabularyOutput{}
341	req = c.newRequest(op, input, output)
342	return
343}
344
345// CreateVocabulary API operation for Amazon Transcribe Service.
346//
347// Creates a new custom vocabulary that you can use to change the way Amazon
348// Transcribe handles transcription of an audio file.
349//
350// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
351// with awserr.Error's Code and Message methods to get detailed information about
352// the error.
353//
354// See the AWS API reference guide for Amazon Transcribe Service's
355// API operation CreateVocabulary for usage and error information.
356//
357// Returned Error Types:
358//   * BadRequestException
359//   Your request didn't pass one or more validation tests. For example, if the
360//   entity that you're trying to delete doesn't exist or if it is in a non-terminal
361//   state (for example, it's "in progress"). See the exception Message field
362//   for more information.
363//
364//   * LimitExceededException
365//   Either you have sent too many requests or your input file is too long. Wait
366//   before you resend your request, or use a smaller file and resend the request.
367//
368//   * InternalFailureException
369//   There was an internal error. Check the error message and try your request
370//   again.
371//
372//   * ConflictException
373//   There is already a resource with that name.
374//
375// See also, https://docs.aws.amazon.com/goto/WebAPI/transcribe-2017-10-26/CreateVocabulary
376func (c *TranscribeService) CreateVocabulary(input *CreateVocabularyInput) (*CreateVocabularyOutput, error) {
377	req, out := c.CreateVocabularyRequest(input)
378	return out, req.Send()
379}
380
381// CreateVocabularyWithContext is the same as CreateVocabulary with the addition of
382// the ability to pass a context and additional request options.
383//
384// See CreateVocabulary for details on how to use this API operation.
385//
386// The context must be non-nil and will be used for request cancellation. If
387// the context is nil a panic will occur. In the future the SDK may create
388// sub-contexts for http.Requests. See https://golang.org/pkg/context/
389// for more information on using Contexts.
390func (c *TranscribeService) CreateVocabularyWithContext(ctx aws.Context, input *CreateVocabularyInput, opts ...request.Option) (*CreateVocabularyOutput, error) {
391	req, out := c.CreateVocabularyRequest(input)
392	req.SetContext(ctx)
393	req.ApplyOptions(opts...)
394	return out, req.Send()
395}
396
397const opCreateVocabularyFilter = "CreateVocabularyFilter"
398
399// CreateVocabularyFilterRequest generates a "aws/request.Request" representing the
400// client's request for the CreateVocabularyFilter operation. The "output" return
401// value will be populated with the request's response once the request completes
402// successfully.
403//
404// Use "Send" method on the returned Request to send the API call to the service.
405// the "output" return value is not valid until after Send returns without error.
406//
407// See CreateVocabularyFilter for more information on using the CreateVocabularyFilter
408// API call, and error handling.
409//
410// This method is useful when you want to inject custom logic or configuration
411// into the SDK's request lifecycle. Such as custom headers, or retry logic.
412//
413//
414//    // Example sending a request using the CreateVocabularyFilterRequest method.
415//    req, resp := client.CreateVocabularyFilterRequest(params)
416//
417//    err := req.Send()
418//    if err == nil { // resp is now filled
419//        fmt.Println(resp)
420//    }
421//
422// See also, https://docs.aws.amazon.com/goto/WebAPI/transcribe-2017-10-26/CreateVocabularyFilter
423func (c *TranscribeService) CreateVocabularyFilterRequest(input *CreateVocabularyFilterInput) (req *request.Request, output *CreateVocabularyFilterOutput) {
424	op := &request.Operation{
425		Name:       opCreateVocabularyFilter,
426		HTTPMethod: "POST",
427		HTTPPath:   "/",
428	}
429
430	if input == nil {
431		input = &CreateVocabularyFilterInput{}
432	}
433
434	output = &CreateVocabularyFilterOutput{}
435	req = c.newRequest(op, input, output)
436	return
437}
438
439// CreateVocabularyFilter API operation for Amazon Transcribe Service.
440//
441// Creates a new vocabulary filter that you can use to filter words, such as
442// profane words, from the output of a transcription job.
443//
444// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
445// with awserr.Error's Code and Message methods to get detailed information about
446// the error.
447//
448// See the AWS API reference guide for Amazon Transcribe Service's
449// API operation CreateVocabularyFilter for usage and error information.
450//
451// Returned Error Types:
452//   * BadRequestException
453//   Your request didn't pass one or more validation tests. For example, if the
454//   entity that you're trying to delete doesn't exist or if it is in a non-terminal
455//   state (for example, it's "in progress"). See the exception Message field
456//   for more information.
457//
458//   * LimitExceededException
459//   Either you have sent too many requests or your input file is too long. Wait
460//   before you resend your request, or use a smaller file and resend the request.
461//
462//   * InternalFailureException
463//   There was an internal error. Check the error message and try your request
464//   again.
465//
466//   * ConflictException
467//   There is already a resource with that name.
468//
469// See also, https://docs.aws.amazon.com/goto/WebAPI/transcribe-2017-10-26/CreateVocabularyFilter
470func (c *TranscribeService) CreateVocabularyFilter(input *CreateVocabularyFilterInput) (*CreateVocabularyFilterOutput, error) {
471	req, out := c.CreateVocabularyFilterRequest(input)
472	return out, req.Send()
473}
474
475// CreateVocabularyFilterWithContext is the same as CreateVocabularyFilter with the addition of
476// the ability to pass a context and additional request options.
477//
478// See CreateVocabularyFilter for details on how to use this API operation.
479//
480// The context must be non-nil and will be used for request cancellation. If
481// the context is nil a panic will occur. In the future the SDK may create
482// sub-contexts for http.Requests. See https://golang.org/pkg/context/
483// for more information on using Contexts.
484func (c *TranscribeService) CreateVocabularyFilterWithContext(ctx aws.Context, input *CreateVocabularyFilterInput, opts ...request.Option) (*CreateVocabularyFilterOutput, error) {
485	req, out := c.CreateVocabularyFilterRequest(input)
486	req.SetContext(ctx)
487	req.ApplyOptions(opts...)
488	return out, req.Send()
489}
490
491const opDeleteCallAnalyticsCategory = "DeleteCallAnalyticsCategory"
492
493// DeleteCallAnalyticsCategoryRequest generates a "aws/request.Request" representing the
494// client's request for the DeleteCallAnalyticsCategory operation. The "output" return
495// value will be populated with the request's response once the request completes
496// successfully.
497//
498// Use "Send" method on the returned Request to send the API call to the service.
499// the "output" return value is not valid until after Send returns without error.
500//
501// See DeleteCallAnalyticsCategory for more information on using the DeleteCallAnalyticsCategory
502// API call, and error handling.
503//
504// This method is useful when you want to inject custom logic or configuration
505// into the SDK's request lifecycle. Such as custom headers, or retry logic.
506//
507//
508//    // Example sending a request using the DeleteCallAnalyticsCategoryRequest method.
509//    req, resp := client.DeleteCallAnalyticsCategoryRequest(params)
510//
511//    err := req.Send()
512//    if err == nil { // resp is now filled
513//        fmt.Println(resp)
514//    }
515//
516// See also, https://docs.aws.amazon.com/goto/WebAPI/transcribe-2017-10-26/DeleteCallAnalyticsCategory
517func (c *TranscribeService) DeleteCallAnalyticsCategoryRequest(input *DeleteCallAnalyticsCategoryInput) (req *request.Request, output *DeleteCallAnalyticsCategoryOutput) {
518	op := &request.Operation{
519		Name:       opDeleteCallAnalyticsCategory,
520		HTTPMethod: "POST",
521		HTTPPath:   "/",
522	}
523
524	if input == nil {
525		input = &DeleteCallAnalyticsCategoryInput{}
526	}
527
528	output = &DeleteCallAnalyticsCategoryOutput{}
529	req = c.newRequest(op, input, output)
530	req.Handlers.Unmarshal.Swap(jsonrpc.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler)
531	return
532}
533
534// DeleteCallAnalyticsCategory API operation for Amazon Transcribe Service.
535//
536// Deletes a call analytics category using its name.
537//
538// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
539// with awserr.Error's Code and Message methods to get detailed information about
540// the error.
541//
542// See the AWS API reference guide for Amazon Transcribe Service's
543// API operation DeleteCallAnalyticsCategory for usage and error information.
544//
545// Returned Error Types:
546//   * NotFoundException
547//   We can't find the requested resource. Check the name and try your request
548//   again.
549//
550//   * LimitExceededException
551//   Either you have sent too many requests or your input file is too long. Wait
552//   before you resend your request, or use a smaller file and resend the request.
553//
554//   * BadRequestException
555//   Your request didn't pass one or more validation tests. For example, if the
556//   entity that you're trying to delete doesn't exist or if it is in a non-terminal
557//   state (for example, it's "in progress"). See the exception Message field
558//   for more information.
559//
560//   * InternalFailureException
561//   There was an internal error. Check the error message and try your request
562//   again.
563//
564// See also, https://docs.aws.amazon.com/goto/WebAPI/transcribe-2017-10-26/DeleteCallAnalyticsCategory
565func (c *TranscribeService) DeleteCallAnalyticsCategory(input *DeleteCallAnalyticsCategoryInput) (*DeleteCallAnalyticsCategoryOutput, error) {
566	req, out := c.DeleteCallAnalyticsCategoryRequest(input)
567	return out, req.Send()
568}
569
570// DeleteCallAnalyticsCategoryWithContext is the same as DeleteCallAnalyticsCategory with the addition of
571// the ability to pass a context and additional request options.
572//
573// See DeleteCallAnalyticsCategory for details on how to use this API operation.
574//
575// The context must be non-nil and will be used for request cancellation. If
576// the context is nil a panic will occur. In the future the SDK may create
577// sub-contexts for http.Requests. See https://golang.org/pkg/context/
578// for more information on using Contexts.
579func (c *TranscribeService) DeleteCallAnalyticsCategoryWithContext(ctx aws.Context, input *DeleteCallAnalyticsCategoryInput, opts ...request.Option) (*DeleteCallAnalyticsCategoryOutput, error) {
580	req, out := c.DeleteCallAnalyticsCategoryRequest(input)
581	req.SetContext(ctx)
582	req.ApplyOptions(opts...)
583	return out, req.Send()
584}
585
586const opDeleteCallAnalyticsJob = "DeleteCallAnalyticsJob"
587
588// DeleteCallAnalyticsJobRequest generates a "aws/request.Request" representing the
589// client's request for the DeleteCallAnalyticsJob operation. The "output" return
590// value will be populated with the request's response once the request completes
591// successfully.
592//
593// Use "Send" method on the returned Request to send the API call to the service.
594// the "output" return value is not valid until after Send returns without error.
595//
596// See DeleteCallAnalyticsJob for more information on using the DeleteCallAnalyticsJob
597// API call, and error handling.
598//
599// This method is useful when you want to inject custom logic or configuration
600// into the SDK's request lifecycle. Such as custom headers, or retry logic.
601//
602//
603//    // Example sending a request using the DeleteCallAnalyticsJobRequest method.
604//    req, resp := client.DeleteCallAnalyticsJobRequest(params)
605//
606//    err := req.Send()
607//    if err == nil { // resp is now filled
608//        fmt.Println(resp)
609//    }
610//
611// See also, https://docs.aws.amazon.com/goto/WebAPI/transcribe-2017-10-26/DeleteCallAnalyticsJob
612func (c *TranscribeService) DeleteCallAnalyticsJobRequest(input *DeleteCallAnalyticsJobInput) (req *request.Request, output *DeleteCallAnalyticsJobOutput) {
613	op := &request.Operation{
614		Name:       opDeleteCallAnalyticsJob,
615		HTTPMethod: "POST",
616		HTTPPath:   "/",
617	}
618
619	if input == nil {
620		input = &DeleteCallAnalyticsJobInput{}
621	}
622
623	output = &DeleteCallAnalyticsJobOutput{}
624	req = c.newRequest(op, input, output)
625	req.Handlers.Unmarshal.Swap(jsonrpc.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler)
626	return
627}
628
629// DeleteCallAnalyticsJob API operation for Amazon Transcribe Service.
630//
631// Deletes a call analytics job using its name.
632//
633// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
634// with awserr.Error's Code and Message methods to get detailed information about
635// the error.
636//
637// See the AWS API reference guide for Amazon Transcribe Service's
638// API operation DeleteCallAnalyticsJob for usage and error information.
639//
640// Returned Error Types:
641//   * LimitExceededException
642//   Either you have sent too many requests or your input file is too long. Wait
643//   before you resend your request, or use a smaller file and resend the request.
644//
645//   * BadRequestException
646//   Your request didn't pass one or more validation tests. For example, if the
647//   entity that you're trying to delete doesn't exist or if it is in a non-terminal
648//   state (for example, it's "in progress"). See the exception Message field
649//   for more information.
650//
651//   * InternalFailureException
652//   There was an internal error. Check the error message and try your request
653//   again.
654//
655// See also, https://docs.aws.amazon.com/goto/WebAPI/transcribe-2017-10-26/DeleteCallAnalyticsJob
656func (c *TranscribeService) DeleteCallAnalyticsJob(input *DeleteCallAnalyticsJobInput) (*DeleteCallAnalyticsJobOutput, error) {
657	req, out := c.DeleteCallAnalyticsJobRequest(input)
658	return out, req.Send()
659}
660
661// DeleteCallAnalyticsJobWithContext is the same as DeleteCallAnalyticsJob with the addition of
662// the ability to pass a context and additional request options.
663//
664// See DeleteCallAnalyticsJob for details on how to use this API operation.
665//
666// The context must be non-nil and will be used for request cancellation. If
667// the context is nil a panic will occur. In the future the SDK may create
668// sub-contexts for http.Requests. See https://golang.org/pkg/context/
669// for more information on using Contexts.
670func (c *TranscribeService) DeleteCallAnalyticsJobWithContext(ctx aws.Context, input *DeleteCallAnalyticsJobInput, opts ...request.Option) (*DeleteCallAnalyticsJobOutput, error) {
671	req, out := c.DeleteCallAnalyticsJobRequest(input)
672	req.SetContext(ctx)
673	req.ApplyOptions(opts...)
674	return out, req.Send()
675}
676
677const opDeleteLanguageModel = "DeleteLanguageModel"
678
679// DeleteLanguageModelRequest generates a "aws/request.Request" representing the
680// client's request for the DeleteLanguageModel operation. The "output" return
681// value will be populated with the request's response once the request completes
682// successfully.
683//
684// Use "Send" method on the returned Request to send the API call to the service.
685// the "output" return value is not valid until after Send returns without error.
686//
687// See DeleteLanguageModel for more information on using the DeleteLanguageModel
688// API call, and error handling.
689//
690// This method is useful when you want to inject custom logic or configuration
691// into the SDK's request lifecycle. Such as custom headers, or retry logic.
692//
693//
694//    // Example sending a request using the DeleteLanguageModelRequest method.
695//    req, resp := client.DeleteLanguageModelRequest(params)
696//
697//    err := req.Send()
698//    if err == nil { // resp is now filled
699//        fmt.Println(resp)
700//    }
701//
702// See also, https://docs.aws.amazon.com/goto/WebAPI/transcribe-2017-10-26/DeleteLanguageModel
703func (c *TranscribeService) DeleteLanguageModelRequest(input *DeleteLanguageModelInput) (req *request.Request, output *DeleteLanguageModelOutput) {
704	op := &request.Operation{
705		Name:       opDeleteLanguageModel,
706		HTTPMethod: "POST",
707		HTTPPath:   "/",
708	}
709
710	if input == nil {
711		input = &DeleteLanguageModelInput{}
712	}
713
714	output = &DeleteLanguageModelOutput{}
715	req = c.newRequest(op, input, output)
716	req.Handlers.Unmarshal.Swap(jsonrpc.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler)
717	return
718}
719
720// DeleteLanguageModel API operation for Amazon Transcribe Service.
721//
722// Deletes a custom language model using its name.
723//
724// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
725// with awserr.Error's Code and Message methods to get detailed information about
726// the error.
727//
728// See the AWS API reference guide for Amazon Transcribe Service's
729// API operation DeleteLanguageModel for usage and error information.
730//
731// Returned Error Types:
732//   * BadRequestException
733//   Your request didn't pass one or more validation tests. For example, if the
734//   entity that you're trying to delete doesn't exist or if it is in a non-terminal
735//   state (for example, it's "in progress"). See the exception Message field
736//   for more information.
737//
738//   * LimitExceededException
739//   Either you have sent too many requests or your input file is too long. Wait
740//   before you resend your request, or use a smaller file and resend the request.
741//
742//   * InternalFailureException
743//   There was an internal error. Check the error message and try your request
744//   again.
745//
746// See also, https://docs.aws.amazon.com/goto/WebAPI/transcribe-2017-10-26/DeleteLanguageModel
747func (c *TranscribeService) DeleteLanguageModel(input *DeleteLanguageModelInput) (*DeleteLanguageModelOutput, error) {
748	req, out := c.DeleteLanguageModelRequest(input)
749	return out, req.Send()
750}
751
752// DeleteLanguageModelWithContext is the same as DeleteLanguageModel with the addition of
753// the ability to pass a context and additional request options.
754//
755// See DeleteLanguageModel for details on how to use this API operation.
756//
757// The context must be non-nil and will be used for request cancellation. If
758// the context is nil a panic will occur. In the future the SDK may create
759// sub-contexts for http.Requests. See https://golang.org/pkg/context/
760// for more information on using Contexts.
761func (c *TranscribeService) DeleteLanguageModelWithContext(ctx aws.Context, input *DeleteLanguageModelInput, opts ...request.Option) (*DeleteLanguageModelOutput, error) {
762	req, out := c.DeleteLanguageModelRequest(input)
763	req.SetContext(ctx)
764	req.ApplyOptions(opts...)
765	return out, req.Send()
766}
767
768const opDeleteMedicalTranscriptionJob = "DeleteMedicalTranscriptionJob"
769
770// DeleteMedicalTranscriptionJobRequest generates a "aws/request.Request" representing the
771// client's request for the DeleteMedicalTranscriptionJob operation. The "output" return
772// value will be populated with the request's response once the request completes
773// successfully.
774//
775// Use "Send" method on the returned Request to send the API call to the service.
776// the "output" return value is not valid until after Send returns without error.
777//
778// See DeleteMedicalTranscriptionJob for more information on using the DeleteMedicalTranscriptionJob
779// API call, and error handling.
780//
781// This method is useful when you want to inject custom logic or configuration
782// into the SDK's request lifecycle. Such as custom headers, or retry logic.
783//
784//
785//    // Example sending a request using the DeleteMedicalTranscriptionJobRequest method.
786//    req, resp := client.DeleteMedicalTranscriptionJobRequest(params)
787//
788//    err := req.Send()
789//    if err == nil { // resp is now filled
790//        fmt.Println(resp)
791//    }
792//
793// See also, https://docs.aws.amazon.com/goto/WebAPI/transcribe-2017-10-26/DeleteMedicalTranscriptionJob
794func (c *TranscribeService) DeleteMedicalTranscriptionJobRequest(input *DeleteMedicalTranscriptionJobInput) (req *request.Request, output *DeleteMedicalTranscriptionJobOutput) {
795	op := &request.Operation{
796		Name:       opDeleteMedicalTranscriptionJob,
797		HTTPMethod: "POST",
798		HTTPPath:   "/",
799	}
800
801	if input == nil {
802		input = &DeleteMedicalTranscriptionJobInput{}
803	}
804
805	output = &DeleteMedicalTranscriptionJobOutput{}
806	req = c.newRequest(op, input, output)
807	req.Handlers.Unmarshal.Swap(jsonrpc.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler)
808	return
809}
810
811// DeleteMedicalTranscriptionJob API operation for Amazon Transcribe Service.
812//
813// Deletes a transcription job generated by Amazon Transcribe Medical and any
814// related information.
815//
816// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
817// with awserr.Error's Code and Message methods to get detailed information about
818// the error.
819//
820// See the AWS API reference guide for Amazon Transcribe Service's
821// API operation DeleteMedicalTranscriptionJob for usage and error information.
822//
823// Returned Error Types:
824//   * LimitExceededException
825//   Either you have sent too many requests or your input file is too long. Wait
826//   before you resend your request, or use a smaller file and resend the request.
827//
828//   * BadRequestException
829//   Your request didn't pass one or more validation tests. For example, if the
830//   entity that you're trying to delete doesn't exist or if it is in a non-terminal
831//   state (for example, it's "in progress"). See the exception Message field
832//   for more information.
833//
834//   * InternalFailureException
835//   There was an internal error. Check the error message and try your request
836//   again.
837//
838// See also, https://docs.aws.amazon.com/goto/WebAPI/transcribe-2017-10-26/DeleteMedicalTranscriptionJob
839func (c *TranscribeService) DeleteMedicalTranscriptionJob(input *DeleteMedicalTranscriptionJobInput) (*DeleteMedicalTranscriptionJobOutput, error) {
840	req, out := c.DeleteMedicalTranscriptionJobRequest(input)
841	return out, req.Send()
842}
843
844// DeleteMedicalTranscriptionJobWithContext is the same as DeleteMedicalTranscriptionJob with the addition of
845// the ability to pass a context and additional request options.
846//
847// See DeleteMedicalTranscriptionJob for details on how to use this API operation.
848//
849// The context must be non-nil and will be used for request cancellation. If
850// the context is nil a panic will occur. In the future the SDK may create
851// sub-contexts for http.Requests. See https://golang.org/pkg/context/
852// for more information on using Contexts.
853func (c *TranscribeService) DeleteMedicalTranscriptionJobWithContext(ctx aws.Context, input *DeleteMedicalTranscriptionJobInput, opts ...request.Option) (*DeleteMedicalTranscriptionJobOutput, error) {
854	req, out := c.DeleteMedicalTranscriptionJobRequest(input)
855	req.SetContext(ctx)
856	req.ApplyOptions(opts...)
857	return out, req.Send()
858}
859
860const opDeleteMedicalVocabulary = "DeleteMedicalVocabulary"
861
862// DeleteMedicalVocabularyRequest generates a "aws/request.Request" representing the
863// client's request for the DeleteMedicalVocabulary operation. The "output" return
864// value will be populated with the request's response once the request completes
865// successfully.
866//
867// Use "Send" method on the returned Request to send the API call to the service.
868// the "output" return value is not valid until after Send returns without error.
869//
870// See DeleteMedicalVocabulary for more information on using the DeleteMedicalVocabulary
871// API call, and error handling.
872//
873// This method is useful when you want to inject custom logic or configuration
874// into the SDK's request lifecycle. Such as custom headers, or retry logic.
875//
876//
877//    // Example sending a request using the DeleteMedicalVocabularyRequest method.
878//    req, resp := client.DeleteMedicalVocabularyRequest(params)
879//
880//    err := req.Send()
881//    if err == nil { // resp is now filled
882//        fmt.Println(resp)
883//    }
884//
885// See also, https://docs.aws.amazon.com/goto/WebAPI/transcribe-2017-10-26/DeleteMedicalVocabulary
886func (c *TranscribeService) DeleteMedicalVocabularyRequest(input *DeleteMedicalVocabularyInput) (req *request.Request, output *DeleteMedicalVocabularyOutput) {
887	op := &request.Operation{
888		Name:       opDeleteMedicalVocabulary,
889		HTTPMethod: "POST",
890		HTTPPath:   "/",
891	}
892
893	if input == nil {
894		input = &DeleteMedicalVocabularyInput{}
895	}
896
897	output = &DeleteMedicalVocabularyOutput{}
898	req = c.newRequest(op, input, output)
899	req.Handlers.Unmarshal.Swap(jsonrpc.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler)
900	return
901}
902
903// DeleteMedicalVocabulary API operation for Amazon Transcribe Service.
904//
905// Deletes a vocabulary from Amazon Transcribe Medical.
906//
907// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
908// with awserr.Error's Code and Message methods to get detailed information about
909// the error.
910//
911// See the AWS API reference guide for Amazon Transcribe Service's
912// API operation DeleteMedicalVocabulary for usage and error information.
913//
914// Returned Error Types:
915//   * NotFoundException
916//   We can't find the requested resource. Check the name and try your request
917//   again.
918//
919//   * LimitExceededException
920//   Either you have sent too many requests or your input file is too long. Wait
921//   before you resend your request, or use a smaller file and resend the request.
922//
923//   * BadRequestException
924//   Your request didn't pass one or more validation tests. For example, if the
925//   entity that you're trying to delete doesn't exist or if it is in a non-terminal
926//   state (for example, it's "in progress"). See the exception Message field
927//   for more information.
928//
929//   * InternalFailureException
930//   There was an internal error. Check the error message and try your request
931//   again.
932//
933// See also, https://docs.aws.amazon.com/goto/WebAPI/transcribe-2017-10-26/DeleteMedicalVocabulary
934func (c *TranscribeService) DeleteMedicalVocabulary(input *DeleteMedicalVocabularyInput) (*DeleteMedicalVocabularyOutput, error) {
935	req, out := c.DeleteMedicalVocabularyRequest(input)
936	return out, req.Send()
937}
938
939// DeleteMedicalVocabularyWithContext is the same as DeleteMedicalVocabulary with the addition of
940// the ability to pass a context and additional request options.
941//
942// See DeleteMedicalVocabulary for details on how to use this API operation.
943//
944// The context must be non-nil and will be used for request cancellation. If
945// the context is nil a panic will occur. In the future the SDK may create
946// sub-contexts for http.Requests. See https://golang.org/pkg/context/
947// for more information on using Contexts.
948func (c *TranscribeService) DeleteMedicalVocabularyWithContext(ctx aws.Context, input *DeleteMedicalVocabularyInput, opts ...request.Option) (*DeleteMedicalVocabularyOutput, error) {
949	req, out := c.DeleteMedicalVocabularyRequest(input)
950	req.SetContext(ctx)
951	req.ApplyOptions(opts...)
952	return out, req.Send()
953}
954
955const opDeleteTranscriptionJob = "DeleteTranscriptionJob"
956
957// DeleteTranscriptionJobRequest generates a "aws/request.Request" representing the
958// client's request for the DeleteTranscriptionJob operation. The "output" return
959// value will be populated with the request's response once the request completes
960// successfully.
961//
962// Use "Send" method on the returned Request to send the API call to the service.
963// the "output" return value is not valid until after Send returns without error.
964//
965// See DeleteTranscriptionJob for more information on using the DeleteTranscriptionJob
966// API call, and error handling.
967//
968// This method is useful when you want to inject custom logic or configuration
969// into the SDK's request lifecycle. Such as custom headers, or retry logic.
970//
971//
972//    // Example sending a request using the DeleteTranscriptionJobRequest method.
973//    req, resp := client.DeleteTranscriptionJobRequest(params)
974//
975//    err := req.Send()
976//    if err == nil { // resp is now filled
977//        fmt.Println(resp)
978//    }
979//
980// See also, https://docs.aws.amazon.com/goto/WebAPI/transcribe-2017-10-26/DeleteTranscriptionJob
981func (c *TranscribeService) DeleteTranscriptionJobRequest(input *DeleteTranscriptionJobInput) (req *request.Request, output *DeleteTranscriptionJobOutput) {
982	op := &request.Operation{
983		Name:       opDeleteTranscriptionJob,
984		HTTPMethod: "POST",
985		HTTPPath:   "/",
986	}
987
988	if input == nil {
989		input = &DeleteTranscriptionJobInput{}
990	}
991
992	output = &DeleteTranscriptionJobOutput{}
993	req = c.newRequest(op, input, output)
994	req.Handlers.Unmarshal.Swap(jsonrpc.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler)
995	return
996}
997
998// DeleteTranscriptionJob API operation for Amazon Transcribe Service.
999//
1000// Deletes a previously submitted transcription job along with any other generated
1001// results such as the transcription, models, and so on.
1002//
1003// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
1004// with awserr.Error's Code and Message methods to get detailed information about
1005// the error.
1006//
1007// See the AWS API reference guide for Amazon Transcribe Service's
1008// API operation DeleteTranscriptionJob for usage and error information.
1009//
1010// Returned Error Types:
1011//   * LimitExceededException
1012//   Either you have sent too many requests or your input file is too long. Wait
1013//   before you resend your request, or use a smaller file and resend the request.
1014//
1015//   * BadRequestException
1016//   Your request didn't pass one or more validation tests. For example, if the
1017//   entity that you're trying to delete doesn't exist or if it is in a non-terminal
1018//   state (for example, it's "in progress"). See the exception Message field
1019//   for more information.
1020//
1021//   * InternalFailureException
1022//   There was an internal error. Check the error message and try your request
1023//   again.
1024//
1025// See also, https://docs.aws.amazon.com/goto/WebAPI/transcribe-2017-10-26/DeleteTranscriptionJob
1026func (c *TranscribeService) DeleteTranscriptionJob(input *DeleteTranscriptionJobInput) (*DeleteTranscriptionJobOutput, error) {
1027	req, out := c.DeleteTranscriptionJobRequest(input)
1028	return out, req.Send()
1029}
1030
1031// DeleteTranscriptionJobWithContext is the same as DeleteTranscriptionJob with the addition of
1032// the ability to pass a context and additional request options.
1033//
1034// See DeleteTranscriptionJob for details on how to use this API operation.
1035//
1036// The context must be non-nil and will be used for request cancellation. If
1037// the context is nil a panic will occur. In the future the SDK may create
1038// sub-contexts for http.Requests. See https://golang.org/pkg/context/
1039// for more information on using Contexts.
1040func (c *TranscribeService) DeleteTranscriptionJobWithContext(ctx aws.Context, input *DeleteTranscriptionJobInput, opts ...request.Option) (*DeleteTranscriptionJobOutput, error) {
1041	req, out := c.DeleteTranscriptionJobRequest(input)
1042	req.SetContext(ctx)
1043	req.ApplyOptions(opts...)
1044	return out, req.Send()
1045}
1046
1047const opDeleteVocabulary = "DeleteVocabulary"
1048
1049// DeleteVocabularyRequest generates a "aws/request.Request" representing the
1050// client's request for the DeleteVocabulary operation. The "output" return
1051// value will be populated with the request's response once the request completes
1052// successfully.
1053//
1054// Use "Send" method on the returned Request to send the API call to the service.
1055// the "output" return value is not valid until after Send returns without error.
1056//
1057// See DeleteVocabulary for more information on using the DeleteVocabulary
1058// API call, and error handling.
1059//
1060// This method is useful when you want to inject custom logic or configuration
1061// into the SDK's request lifecycle. Such as custom headers, or retry logic.
1062//
1063//
1064//    // Example sending a request using the DeleteVocabularyRequest method.
1065//    req, resp := client.DeleteVocabularyRequest(params)
1066//
1067//    err := req.Send()
1068//    if err == nil { // resp is now filled
1069//        fmt.Println(resp)
1070//    }
1071//
1072// See also, https://docs.aws.amazon.com/goto/WebAPI/transcribe-2017-10-26/DeleteVocabulary
1073func (c *TranscribeService) DeleteVocabularyRequest(input *DeleteVocabularyInput) (req *request.Request, output *DeleteVocabularyOutput) {
1074	op := &request.Operation{
1075		Name:       opDeleteVocabulary,
1076		HTTPMethod: "POST",
1077		HTTPPath:   "/",
1078	}
1079
1080	if input == nil {
1081		input = &DeleteVocabularyInput{}
1082	}
1083
1084	output = &DeleteVocabularyOutput{}
1085	req = c.newRequest(op, input, output)
1086	req.Handlers.Unmarshal.Swap(jsonrpc.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler)
1087	return
1088}
1089
1090// DeleteVocabulary API operation for Amazon Transcribe Service.
1091//
1092// Deletes a vocabulary from Amazon Transcribe.
1093//
1094// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
1095// with awserr.Error's Code and Message methods to get detailed information about
1096// the error.
1097//
1098// See the AWS API reference guide for Amazon Transcribe Service's
1099// API operation DeleteVocabulary for usage and error information.
1100//
1101// Returned Error Types:
1102//   * NotFoundException
1103//   We can't find the requested resource. Check the name and try your request
1104//   again.
1105//
1106//   * LimitExceededException
1107//   Either you have sent too many requests or your input file is too long. Wait
1108//   before you resend your request, or use a smaller file and resend the request.
1109//
1110//   * BadRequestException
1111//   Your request didn't pass one or more validation tests. For example, if the
1112//   entity that you're trying to delete doesn't exist or if it is in a non-terminal
1113//   state (for example, it's "in progress"). See the exception Message field
1114//   for more information.
1115//
1116//   * InternalFailureException
1117//   There was an internal error. Check the error message and try your request
1118//   again.
1119//
1120// See also, https://docs.aws.amazon.com/goto/WebAPI/transcribe-2017-10-26/DeleteVocabulary
1121func (c *TranscribeService) DeleteVocabulary(input *DeleteVocabularyInput) (*DeleteVocabularyOutput, error) {
1122	req, out := c.DeleteVocabularyRequest(input)
1123	return out, req.Send()
1124}
1125
1126// DeleteVocabularyWithContext is the same as DeleteVocabulary with the addition of
1127// the ability to pass a context and additional request options.
1128//
1129// See DeleteVocabulary for details on how to use this API operation.
1130//
1131// The context must be non-nil and will be used for request cancellation. If
1132// the context is nil a panic will occur. In the future the SDK may create
1133// sub-contexts for http.Requests. See https://golang.org/pkg/context/
1134// for more information on using Contexts.
1135func (c *TranscribeService) DeleteVocabularyWithContext(ctx aws.Context, input *DeleteVocabularyInput, opts ...request.Option) (*DeleteVocabularyOutput, error) {
1136	req, out := c.DeleteVocabularyRequest(input)
1137	req.SetContext(ctx)
1138	req.ApplyOptions(opts...)
1139	return out, req.Send()
1140}
1141
1142const opDeleteVocabularyFilter = "DeleteVocabularyFilter"
1143
1144// DeleteVocabularyFilterRequest generates a "aws/request.Request" representing the
1145// client's request for the DeleteVocabularyFilter operation. The "output" return
1146// value will be populated with the request's response once the request completes
1147// successfully.
1148//
1149// Use "Send" method on the returned Request to send the API call to the service.
1150// the "output" return value is not valid until after Send returns without error.
1151//
1152// See DeleteVocabularyFilter for more information on using the DeleteVocabularyFilter
1153// API call, and error handling.
1154//
1155// This method is useful when you want to inject custom logic or configuration
1156// into the SDK's request lifecycle. Such as custom headers, or retry logic.
1157//
1158//
1159//    // Example sending a request using the DeleteVocabularyFilterRequest method.
1160//    req, resp := client.DeleteVocabularyFilterRequest(params)
1161//
1162//    err := req.Send()
1163//    if err == nil { // resp is now filled
1164//        fmt.Println(resp)
1165//    }
1166//
1167// See also, https://docs.aws.amazon.com/goto/WebAPI/transcribe-2017-10-26/DeleteVocabularyFilter
1168func (c *TranscribeService) DeleteVocabularyFilterRequest(input *DeleteVocabularyFilterInput) (req *request.Request, output *DeleteVocabularyFilterOutput) {
1169	op := &request.Operation{
1170		Name:       opDeleteVocabularyFilter,
1171		HTTPMethod: "POST",
1172		HTTPPath:   "/",
1173	}
1174
1175	if input == nil {
1176		input = &DeleteVocabularyFilterInput{}
1177	}
1178
1179	output = &DeleteVocabularyFilterOutput{}
1180	req = c.newRequest(op, input, output)
1181	req.Handlers.Unmarshal.Swap(jsonrpc.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler)
1182	return
1183}
1184
1185// DeleteVocabularyFilter API operation for Amazon Transcribe Service.
1186//
1187// Removes a vocabulary filter.
1188//
1189// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
1190// with awserr.Error's Code and Message methods to get detailed information about
1191// the error.
1192//
1193// See the AWS API reference guide for Amazon Transcribe Service's
1194// API operation DeleteVocabularyFilter for usage and error information.
1195//
1196// Returned Error Types:
1197//   * NotFoundException
1198//   We can't find the requested resource. Check the name and try your request
1199//   again.
1200//
1201//   * LimitExceededException
1202//   Either you have sent too many requests or your input file is too long. Wait
1203//   before you resend your request, or use a smaller file and resend the request.
1204//
1205//   * BadRequestException
1206//   Your request didn't pass one or more validation tests. For example, if the
1207//   entity that you're trying to delete doesn't exist or if it is in a non-terminal
1208//   state (for example, it's "in progress"). See the exception Message field
1209//   for more information.
1210//
1211//   * InternalFailureException
1212//   There was an internal error. Check the error message and try your request
1213//   again.
1214//
1215// See also, https://docs.aws.amazon.com/goto/WebAPI/transcribe-2017-10-26/DeleteVocabularyFilter
1216func (c *TranscribeService) DeleteVocabularyFilter(input *DeleteVocabularyFilterInput) (*DeleteVocabularyFilterOutput, error) {
1217	req, out := c.DeleteVocabularyFilterRequest(input)
1218	return out, req.Send()
1219}
1220
1221// DeleteVocabularyFilterWithContext is the same as DeleteVocabularyFilter with the addition of
1222// the ability to pass a context and additional request options.
1223//
1224// See DeleteVocabularyFilter for details on how to use this API operation.
1225//
1226// The context must be non-nil and will be used for request cancellation. If
1227// the context is nil a panic will occur. In the future the SDK may create
1228// sub-contexts for http.Requests. See https://golang.org/pkg/context/
1229// for more information on using Contexts.
1230func (c *TranscribeService) DeleteVocabularyFilterWithContext(ctx aws.Context, input *DeleteVocabularyFilterInput, opts ...request.Option) (*DeleteVocabularyFilterOutput, error) {
1231	req, out := c.DeleteVocabularyFilterRequest(input)
1232	req.SetContext(ctx)
1233	req.ApplyOptions(opts...)
1234	return out, req.Send()
1235}
1236
1237const opDescribeLanguageModel = "DescribeLanguageModel"
1238
1239// DescribeLanguageModelRequest generates a "aws/request.Request" representing the
1240// client's request for the DescribeLanguageModel operation. The "output" return
1241// value will be populated with the request's response once the request completes
1242// successfully.
1243//
1244// Use "Send" method on the returned Request to send the API call to the service.
1245// the "output" return value is not valid until after Send returns without error.
1246//
1247// See DescribeLanguageModel for more information on using the DescribeLanguageModel
1248// API call, and error handling.
1249//
1250// This method is useful when you want to inject custom logic or configuration
1251// into the SDK's request lifecycle. Such as custom headers, or retry logic.
1252//
1253//
1254//    // Example sending a request using the DescribeLanguageModelRequest method.
1255//    req, resp := client.DescribeLanguageModelRequest(params)
1256//
1257//    err := req.Send()
1258//    if err == nil { // resp is now filled
1259//        fmt.Println(resp)
1260//    }
1261//
1262// See also, https://docs.aws.amazon.com/goto/WebAPI/transcribe-2017-10-26/DescribeLanguageModel
1263func (c *TranscribeService) DescribeLanguageModelRequest(input *DescribeLanguageModelInput) (req *request.Request, output *DescribeLanguageModelOutput) {
1264	op := &request.Operation{
1265		Name:       opDescribeLanguageModel,
1266		HTTPMethod: "POST",
1267		HTTPPath:   "/",
1268	}
1269
1270	if input == nil {
1271		input = &DescribeLanguageModelInput{}
1272	}
1273
1274	output = &DescribeLanguageModelOutput{}
1275	req = c.newRequest(op, input, output)
1276	return
1277}
1278
1279// DescribeLanguageModel API operation for Amazon Transcribe Service.
1280//
1281// Gets information about a single custom language model. Use this information
1282// to see details about the language model in your Amazon Web Services account.
1283// You can also see whether the base language model used to create your custom
1284// language model has been updated. If Amazon Transcribe has updated the base
1285// model, you can create a new custom language model using the updated base
1286// model. If the language model wasn't created, you can use this operation to
1287// understand why Amazon Transcribe couldn't create it.
1288//
1289// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
1290// with awserr.Error's Code and Message methods to get detailed information about
1291// the error.
1292//
1293// See the AWS API reference guide for Amazon Transcribe Service's
1294// API operation DescribeLanguageModel for usage and error information.
1295//
1296// Returned Error Types:
1297//   * BadRequestException
1298//   Your request didn't pass one or more validation tests. For example, if the
1299//   entity that you're trying to delete doesn't exist or if it is in a non-terminal
1300//   state (for example, it's "in progress"). See the exception Message field
1301//   for more information.
1302//
1303//   * LimitExceededException
1304//   Either you have sent too many requests or your input file is too long. Wait
1305//   before you resend your request, or use a smaller file and resend the request.
1306//
1307//   * InternalFailureException
1308//   There was an internal error. Check the error message and try your request
1309//   again.
1310//
1311//   * NotFoundException
1312//   We can't find the requested resource. Check the name and try your request
1313//   again.
1314//
1315// See also, https://docs.aws.amazon.com/goto/WebAPI/transcribe-2017-10-26/DescribeLanguageModel
1316func (c *TranscribeService) DescribeLanguageModel(input *DescribeLanguageModelInput) (*DescribeLanguageModelOutput, error) {
1317	req, out := c.DescribeLanguageModelRequest(input)
1318	return out, req.Send()
1319}
1320
1321// DescribeLanguageModelWithContext is the same as DescribeLanguageModel with the addition of
1322// the ability to pass a context and additional request options.
1323//
1324// See DescribeLanguageModel for details on how to use this API operation.
1325//
1326// The context must be non-nil and will be used for request cancellation. If
1327// the context is nil a panic will occur. In the future the SDK may create
1328// sub-contexts for http.Requests. See https://golang.org/pkg/context/
1329// for more information on using Contexts.
1330func (c *TranscribeService) DescribeLanguageModelWithContext(ctx aws.Context, input *DescribeLanguageModelInput, opts ...request.Option) (*DescribeLanguageModelOutput, error) {
1331	req, out := c.DescribeLanguageModelRequest(input)
1332	req.SetContext(ctx)
1333	req.ApplyOptions(opts...)
1334	return out, req.Send()
1335}
1336
1337const opGetCallAnalyticsCategory = "GetCallAnalyticsCategory"
1338
1339// GetCallAnalyticsCategoryRequest generates a "aws/request.Request" representing the
1340// client's request for the GetCallAnalyticsCategory operation. The "output" return
1341// value will be populated with the request's response once the request completes
1342// successfully.
1343//
1344// Use "Send" method on the returned Request to send the API call to the service.
1345// the "output" return value is not valid until after Send returns without error.
1346//
1347// See GetCallAnalyticsCategory for more information on using the GetCallAnalyticsCategory
1348// API call, and error handling.
1349//
1350// This method is useful when you want to inject custom logic or configuration
1351// into the SDK's request lifecycle. Such as custom headers, or retry logic.
1352//
1353//
1354//    // Example sending a request using the GetCallAnalyticsCategoryRequest method.
1355//    req, resp := client.GetCallAnalyticsCategoryRequest(params)
1356//
1357//    err := req.Send()
1358//    if err == nil { // resp is now filled
1359//        fmt.Println(resp)
1360//    }
1361//
1362// See also, https://docs.aws.amazon.com/goto/WebAPI/transcribe-2017-10-26/GetCallAnalyticsCategory
1363func (c *TranscribeService) GetCallAnalyticsCategoryRequest(input *GetCallAnalyticsCategoryInput) (req *request.Request, output *GetCallAnalyticsCategoryOutput) {
1364	op := &request.Operation{
1365		Name:       opGetCallAnalyticsCategory,
1366		HTTPMethod: "POST",
1367		HTTPPath:   "/",
1368	}
1369
1370	if input == nil {
1371		input = &GetCallAnalyticsCategoryInput{}
1372	}
1373
1374	output = &GetCallAnalyticsCategoryOutput{}
1375	req = c.newRequest(op, input, output)
1376	return
1377}
1378
1379// GetCallAnalyticsCategory API operation for Amazon Transcribe Service.
1380//
1381// Retrieves information about a call analytics category.
1382//
1383// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
1384// with awserr.Error's Code and Message methods to get detailed information about
1385// the error.
1386//
1387// See the AWS API reference guide for Amazon Transcribe Service's
1388// API operation GetCallAnalyticsCategory for usage and error information.
1389//
1390// Returned Error Types:
1391//   * NotFoundException
1392//   We can't find the requested resource. Check the name and try your request
1393//   again.
1394//
1395//   * LimitExceededException
1396//   Either you have sent too many requests or your input file is too long. Wait
1397//   before you resend your request, or use a smaller file and resend the request.
1398//
1399//   * InternalFailureException
1400//   There was an internal error. Check the error message and try your request
1401//   again.
1402//
1403//   * BadRequestException
1404//   Your request didn't pass one or more validation tests. For example, if the
1405//   entity that you're trying to delete doesn't exist or if it is in a non-terminal
1406//   state (for example, it's "in progress"). See the exception Message field
1407//   for more information.
1408//
1409// See also, https://docs.aws.amazon.com/goto/WebAPI/transcribe-2017-10-26/GetCallAnalyticsCategory
1410func (c *TranscribeService) GetCallAnalyticsCategory(input *GetCallAnalyticsCategoryInput) (*GetCallAnalyticsCategoryOutput, error) {
1411	req, out := c.GetCallAnalyticsCategoryRequest(input)
1412	return out, req.Send()
1413}
1414
1415// GetCallAnalyticsCategoryWithContext is the same as GetCallAnalyticsCategory with the addition of
1416// the ability to pass a context and additional request options.
1417//
1418// See GetCallAnalyticsCategory for details on how to use this API operation.
1419//
1420// The context must be non-nil and will be used for request cancellation. If
1421// the context is nil a panic will occur. In the future the SDK may create
1422// sub-contexts for http.Requests. See https://golang.org/pkg/context/
1423// for more information on using Contexts.
1424func (c *TranscribeService) GetCallAnalyticsCategoryWithContext(ctx aws.Context, input *GetCallAnalyticsCategoryInput, opts ...request.Option) (*GetCallAnalyticsCategoryOutput, error) {
1425	req, out := c.GetCallAnalyticsCategoryRequest(input)
1426	req.SetContext(ctx)
1427	req.ApplyOptions(opts...)
1428	return out, req.Send()
1429}
1430
1431const opGetCallAnalyticsJob = "GetCallAnalyticsJob"
1432
1433// GetCallAnalyticsJobRequest generates a "aws/request.Request" representing the
1434// client's request for the GetCallAnalyticsJob operation. The "output" return
1435// value will be populated with the request's response once the request completes
1436// successfully.
1437//
1438// Use "Send" method on the returned Request to send the API call to the service.
1439// the "output" return value is not valid until after Send returns without error.
1440//
1441// See GetCallAnalyticsJob for more information on using the GetCallAnalyticsJob
1442// API call, and error handling.
1443//
1444// This method is useful when you want to inject custom logic or configuration
1445// into the SDK's request lifecycle. Such as custom headers, or retry logic.
1446//
1447//
1448//    // Example sending a request using the GetCallAnalyticsJobRequest method.
1449//    req, resp := client.GetCallAnalyticsJobRequest(params)
1450//
1451//    err := req.Send()
1452//    if err == nil { // resp is now filled
1453//        fmt.Println(resp)
1454//    }
1455//
1456// See also, https://docs.aws.amazon.com/goto/WebAPI/transcribe-2017-10-26/GetCallAnalyticsJob
1457func (c *TranscribeService) GetCallAnalyticsJobRequest(input *GetCallAnalyticsJobInput) (req *request.Request, output *GetCallAnalyticsJobOutput) {
1458	op := &request.Operation{
1459		Name:       opGetCallAnalyticsJob,
1460		HTTPMethod: "POST",
1461		HTTPPath:   "/",
1462	}
1463
1464	if input == nil {
1465		input = &GetCallAnalyticsJobInput{}
1466	}
1467
1468	output = &GetCallAnalyticsJobOutput{}
1469	req = c.newRequest(op, input, output)
1470	return
1471}
1472
1473// GetCallAnalyticsJob API operation for Amazon Transcribe Service.
1474//
1475// Returns information about a call analytics job. To see the status of the
1476// job, check the CallAnalyticsJobStatus field. If the status is COMPLETED,
1477// the job is finished and you can find the results at the location specified
1478// in the TranscriptFileUri field. If you enable personally identifiable information
1479// (PII) redaction, the redacted transcript appears in the RedactedTranscriptFileUri
1480// field.
1481//
1482// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
1483// with awserr.Error's Code and Message methods to get detailed information about
1484// the error.
1485//
1486// See the AWS API reference guide for Amazon Transcribe Service's
1487// API operation GetCallAnalyticsJob for usage and error information.
1488//
1489// Returned Error Types:
1490//   * BadRequestException
1491//   Your request didn't pass one or more validation tests. For example, if the
1492//   entity that you're trying to delete doesn't exist or if it is in a non-terminal
1493//   state (for example, it's "in progress"). See the exception Message field
1494//   for more information.
1495//
1496//   * LimitExceededException
1497//   Either you have sent too many requests or your input file is too long. Wait
1498//   before you resend your request, or use a smaller file and resend the request.
1499//
1500//   * InternalFailureException
1501//   There was an internal error. Check the error message and try your request
1502//   again.
1503//
1504//   * NotFoundException
1505//   We can't find the requested resource. Check the name and try your request
1506//   again.
1507//
1508// See also, https://docs.aws.amazon.com/goto/WebAPI/transcribe-2017-10-26/GetCallAnalyticsJob
1509func (c *TranscribeService) GetCallAnalyticsJob(input *GetCallAnalyticsJobInput) (*GetCallAnalyticsJobOutput, error) {
1510	req, out := c.GetCallAnalyticsJobRequest(input)
1511	return out, req.Send()
1512}
1513
1514// GetCallAnalyticsJobWithContext is the same as GetCallAnalyticsJob with the addition of
1515// the ability to pass a context and additional request options.
1516//
1517// See GetCallAnalyticsJob for details on how to use this API operation.
1518//
1519// The context must be non-nil and will be used for request cancellation. If
1520// the context is nil a panic will occur. In the future the SDK may create
1521// sub-contexts for http.Requests. See https://golang.org/pkg/context/
1522// for more information on using Contexts.
1523func (c *TranscribeService) GetCallAnalyticsJobWithContext(ctx aws.Context, input *GetCallAnalyticsJobInput, opts ...request.Option) (*GetCallAnalyticsJobOutput, error) {
1524	req, out := c.GetCallAnalyticsJobRequest(input)
1525	req.SetContext(ctx)
1526	req.ApplyOptions(opts...)
1527	return out, req.Send()
1528}
1529
1530const opGetMedicalTranscriptionJob = "GetMedicalTranscriptionJob"
1531
1532// GetMedicalTranscriptionJobRequest generates a "aws/request.Request" representing the
1533// client's request for the GetMedicalTranscriptionJob operation. The "output" return
1534// value will be populated with the request's response once the request completes
1535// successfully.
1536//
1537// Use "Send" method on the returned Request to send the API call to the service.
1538// the "output" return value is not valid until after Send returns without error.
1539//
1540// See GetMedicalTranscriptionJob for more information on using the GetMedicalTranscriptionJob
1541// API call, and error handling.
1542//
1543// This method is useful when you want to inject custom logic or configuration
1544// into the SDK's request lifecycle. Such as custom headers, or retry logic.
1545//
1546//
1547//    // Example sending a request using the GetMedicalTranscriptionJobRequest method.
1548//    req, resp := client.GetMedicalTranscriptionJobRequest(params)
1549//
1550//    err := req.Send()
1551//    if err == nil { // resp is now filled
1552//        fmt.Println(resp)
1553//    }
1554//
1555// See also, https://docs.aws.amazon.com/goto/WebAPI/transcribe-2017-10-26/GetMedicalTranscriptionJob
1556func (c *TranscribeService) GetMedicalTranscriptionJobRequest(input *GetMedicalTranscriptionJobInput) (req *request.Request, output *GetMedicalTranscriptionJobOutput) {
1557	op := &request.Operation{
1558		Name:       opGetMedicalTranscriptionJob,
1559		HTTPMethod: "POST",
1560		HTTPPath:   "/",
1561	}
1562
1563	if input == nil {
1564		input = &GetMedicalTranscriptionJobInput{}
1565	}
1566
1567	output = &GetMedicalTranscriptionJobOutput{}
1568	req = c.newRequest(op, input, output)
1569	return
1570}
1571
1572// GetMedicalTranscriptionJob API operation for Amazon Transcribe Service.
1573//
1574// Returns information about a transcription job from Amazon Transcribe Medical.
1575// To see the status of the job, check the TranscriptionJobStatus field. If
1576// the status is COMPLETED, the job is finished. You find the results of the
1577// completed job in the TranscriptFileUri field.
1578//
1579// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
1580// with awserr.Error's Code and Message methods to get detailed information about
1581// the error.
1582//
1583// See the AWS API reference guide for Amazon Transcribe Service's
1584// API operation GetMedicalTranscriptionJob for usage and error information.
1585//
1586// Returned Error Types:
1587//   * BadRequestException
1588//   Your request didn't pass one or more validation tests. For example, if the
1589//   entity that you're trying to delete doesn't exist or if it is in a non-terminal
1590//   state (for example, it's "in progress"). See the exception Message field
1591//   for more information.
1592//
1593//   * LimitExceededException
1594//   Either you have sent too many requests or your input file is too long. Wait
1595//   before you resend your request, or use a smaller file and resend the request.
1596//
1597//   * InternalFailureException
1598//   There was an internal error. Check the error message and try your request
1599//   again.
1600//
1601//   * NotFoundException
1602//   We can't find the requested resource. Check the name and try your request
1603//   again.
1604//
1605// See also, https://docs.aws.amazon.com/goto/WebAPI/transcribe-2017-10-26/GetMedicalTranscriptionJob
1606func (c *TranscribeService) GetMedicalTranscriptionJob(input *GetMedicalTranscriptionJobInput) (*GetMedicalTranscriptionJobOutput, error) {
1607	req, out := c.GetMedicalTranscriptionJobRequest(input)
1608	return out, req.Send()
1609}
1610
1611// GetMedicalTranscriptionJobWithContext is the same as GetMedicalTranscriptionJob with the addition of
1612// the ability to pass a context and additional request options.
1613//
1614// See GetMedicalTranscriptionJob for details on how to use this API operation.
1615//
1616// The context must be non-nil and will be used for request cancellation. If
1617// the context is nil a panic will occur. In the future the SDK may create
1618// sub-contexts for http.Requests. See https://golang.org/pkg/context/
1619// for more information on using Contexts.
1620func (c *TranscribeService) GetMedicalTranscriptionJobWithContext(ctx aws.Context, input *GetMedicalTranscriptionJobInput, opts ...request.Option) (*GetMedicalTranscriptionJobOutput, error) {
1621	req, out := c.GetMedicalTranscriptionJobRequest(input)
1622	req.SetContext(ctx)
1623	req.ApplyOptions(opts...)
1624	return out, req.Send()
1625}
1626
1627const opGetMedicalVocabulary = "GetMedicalVocabulary"
1628
1629// GetMedicalVocabularyRequest generates a "aws/request.Request" representing the
1630// client's request for the GetMedicalVocabulary operation. The "output" return
1631// value will be populated with the request's response once the request completes
1632// successfully.
1633//
1634// Use "Send" method on the returned Request to send the API call to the service.
1635// the "output" return value is not valid until after Send returns without error.
1636//
1637// See GetMedicalVocabulary for more information on using the GetMedicalVocabulary
1638// API call, and error handling.
1639//
1640// This method is useful when you want to inject custom logic or configuration
1641// into the SDK's request lifecycle. Such as custom headers, or retry logic.
1642//
1643//
1644//    // Example sending a request using the GetMedicalVocabularyRequest method.
1645//    req, resp := client.GetMedicalVocabularyRequest(params)
1646//
1647//    err := req.Send()
1648//    if err == nil { // resp is now filled
1649//        fmt.Println(resp)
1650//    }
1651//
1652// See also, https://docs.aws.amazon.com/goto/WebAPI/transcribe-2017-10-26/GetMedicalVocabulary
1653func (c *TranscribeService) GetMedicalVocabularyRequest(input *GetMedicalVocabularyInput) (req *request.Request, output *GetMedicalVocabularyOutput) {
1654	op := &request.Operation{
1655		Name:       opGetMedicalVocabulary,
1656		HTTPMethod: "POST",
1657		HTTPPath:   "/",
1658	}
1659
1660	if input == nil {
1661		input = &GetMedicalVocabularyInput{}
1662	}
1663
1664	output = &GetMedicalVocabularyOutput{}
1665	req = c.newRequest(op, input, output)
1666	return
1667}
1668
1669// GetMedicalVocabulary API operation for Amazon Transcribe Service.
1670//
1671// Retrieves information about a medical vocabulary.
1672//
1673// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
1674// with awserr.Error's Code and Message methods to get detailed information about
1675// the error.
1676//
1677// See the AWS API reference guide for Amazon Transcribe Service's
1678// API operation GetMedicalVocabulary for usage and error information.
1679//
1680// Returned Error Types:
1681//   * NotFoundException
1682//   We can't find the requested resource. Check the name and try your request
1683//   again.
1684//
1685//   * LimitExceededException
1686//   Either you have sent too many requests or your input file is too long. Wait
1687//   before you resend your request, or use a smaller file and resend the request.
1688//
1689//   * InternalFailureException
1690//   There was an internal error. Check the error message and try your request
1691//   again.
1692//
1693//   * BadRequestException
1694//   Your request didn't pass one or more validation tests. For example, if the
1695//   entity that you're trying to delete doesn't exist or if it is in a non-terminal
1696//   state (for example, it's "in progress"). See the exception Message field
1697//   for more information.
1698//
1699// See also, https://docs.aws.amazon.com/goto/WebAPI/transcribe-2017-10-26/GetMedicalVocabulary
1700func (c *TranscribeService) GetMedicalVocabulary(input *GetMedicalVocabularyInput) (*GetMedicalVocabularyOutput, error) {
1701	req, out := c.GetMedicalVocabularyRequest(input)
1702	return out, req.Send()
1703}
1704
1705// GetMedicalVocabularyWithContext is the same as GetMedicalVocabulary with the addition of
1706// the ability to pass a context and additional request options.
1707//
1708// See GetMedicalVocabulary for details on how to use this API operation.
1709//
1710// The context must be non-nil and will be used for request cancellation. If
1711// the context is nil a panic will occur. In the future the SDK may create
1712// sub-contexts for http.Requests. See https://golang.org/pkg/context/
1713// for more information on using Contexts.
1714func (c *TranscribeService) GetMedicalVocabularyWithContext(ctx aws.Context, input *GetMedicalVocabularyInput, opts ...request.Option) (*GetMedicalVocabularyOutput, error) {
1715	req, out := c.GetMedicalVocabularyRequest(input)
1716	req.SetContext(ctx)
1717	req.ApplyOptions(opts...)
1718	return out, req.Send()
1719}
1720
1721const opGetTranscriptionJob = "GetTranscriptionJob"
1722
1723// GetTranscriptionJobRequest generates a "aws/request.Request" representing the
1724// client's request for the GetTranscriptionJob operation. The "output" return
1725// value will be populated with the request's response once the request completes
1726// successfully.
1727//
1728// Use "Send" method on the returned Request to send the API call to the service.
1729// the "output" return value is not valid until after Send returns without error.
1730//
1731// See GetTranscriptionJob for more information on using the GetTranscriptionJob
1732// API call, and error handling.
1733//
1734// This method is useful when you want to inject custom logic or configuration
1735// into the SDK's request lifecycle. Such as custom headers, or retry logic.
1736//
1737//
1738//    // Example sending a request using the GetTranscriptionJobRequest method.
1739//    req, resp := client.GetTranscriptionJobRequest(params)
1740//
1741//    err := req.Send()
1742//    if err == nil { // resp is now filled
1743//        fmt.Println(resp)
1744//    }
1745//
1746// See also, https://docs.aws.amazon.com/goto/WebAPI/transcribe-2017-10-26/GetTranscriptionJob
1747func (c *TranscribeService) GetTranscriptionJobRequest(input *GetTranscriptionJobInput) (req *request.Request, output *GetTranscriptionJobOutput) {
1748	op := &request.Operation{
1749		Name:       opGetTranscriptionJob,
1750		HTTPMethod: "POST",
1751		HTTPPath:   "/",
1752	}
1753
1754	if input == nil {
1755		input = &GetTranscriptionJobInput{}
1756	}
1757
1758	output = &GetTranscriptionJobOutput{}
1759	req = c.newRequest(op, input, output)
1760	return
1761}
1762
1763// GetTranscriptionJob API operation for Amazon Transcribe Service.
1764//
1765// Returns information about a transcription job. To see the status of the job,
1766// check the TranscriptionJobStatus field. If the status is COMPLETED, the job
1767// is finished and you can find the results at the location specified in the
1768// TranscriptFileUri field. If you enable content redaction, the redacted transcript
1769// appears in RedactedTranscriptFileUri.
1770//
1771// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
1772// with awserr.Error's Code and Message methods to get detailed information about
1773// the error.
1774//
1775// See the AWS API reference guide for Amazon Transcribe Service's
1776// API operation GetTranscriptionJob for usage and error information.
1777//
1778// Returned Error Types:
1779//   * BadRequestException
1780//   Your request didn't pass one or more validation tests. For example, if the
1781//   entity that you're trying to delete doesn't exist or if it is in a non-terminal
1782//   state (for example, it's "in progress"). See the exception Message field
1783//   for more information.
1784//
1785//   * LimitExceededException
1786//   Either you have sent too many requests or your input file is too long. Wait
1787//   before you resend your request, or use a smaller file and resend the request.
1788//
1789//   * InternalFailureException
1790//   There was an internal error. Check the error message and try your request
1791//   again.
1792//
1793//   * NotFoundException
1794//   We can't find the requested resource. Check the name and try your request
1795//   again.
1796//
1797// See also, https://docs.aws.amazon.com/goto/WebAPI/transcribe-2017-10-26/GetTranscriptionJob
1798func (c *TranscribeService) GetTranscriptionJob(input *GetTranscriptionJobInput) (*GetTranscriptionJobOutput, error) {
1799	req, out := c.GetTranscriptionJobRequest(input)
1800	return out, req.Send()
1801}
1802
1803// GetTranscriptionJobWithContext is the same as GetTranscriptionJob with the addition of
1804// the ability to pass a context and additional request options.
1805//
1806// See GetTranscriptionJob for details on how to use this API operation.
1807//
1808// The context must be non-nil and will be used for request cancellation. If
1809// the context is nil a panic will occur. In the future the SDK may create
1810// sub-contexts for http.Requests. See https://golang.org/pkg/context/
1811// for more information on using Contexts.
1812func (c *TranscribeService) GetTranscriptionJobWithContext(ctx aws.Context, input *GetTranscriptionJobInput, opts ...request.Option) (*GetTranscriptionJobOutput, error) {
1813	req, out := c.GetTranscriptionJobRequest(input)
1814	req.SetContext(ctx)
1815	req.ApplyOptions(opts...)
1816	return out, req.Send()
1817}
1818
1819const opGetVocabulary = "GetVocabulary"
1820
1821// GetVocabularyRequest generates a "aws/request.Request" representing the
1822// client's request for the GetVocabulary operation. The "output" return
1823// value will be populated with the request's response once the request completes
1824// successfully.
1825//
1826// Use "Send" method on the returned Request to send the API call to the service.
1827// the "output" return value is not valid until after Send returns without error.
1828//
1829// See GetVocabulary for more information on using the GetVocabulary
1830// API call, and error handling.
1831//
1832// This method is useful when you want to inject custom logic or configuration
1833// into the SDK's request lifecycle. Such as custom headers, or retry logic.
1834//
1835//
1836//    // Example sending a request using the GetVocabularyRequest method.
1837//    req, resp := client.GetVocabularyRequest(params)
1838//
1839//    err := req.Send()
1840//    if err == nil { // resp is now filled
1841//        fmt.Println(resp)
1842//    }
1843//
1844// See also, https://docs.aws.amazon.com/goto/WebAPI/transcribe-2017-10-26/GetVocabulary
1845func (c *TranscribeService) GetVocabularyRequest(input *GetVocabularyInput) (req *request.Request, output *GetVocabularyOutput) {
1846	op := &request.Operation{
1847		Name:       opGetVocabulary,
1848		HTTPMethod: "POST",
1849		HTTPPath:   "/",
1850	}
1851
1852	if input == nil {
1853		input = &GetVocabularyInput{}
1854	}
1855
1856	output = &GetVocabularyOutput{}
1857	req = c.newRequest(op, input, output)
1858	return
1859}
1860
1861// GetVocabulary API operation for Amazon Transcribe Service.
1862//
1863// Gets information about a vocabulary.
1864//
1865// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
1866// with awserr.Error's Code and Message methods to get detailed information about
1867// the error.
1868//
1869// See the AWS API reference guide for Amazon Transcribe Service's
1870// API operation GetVocabulary for usage and error information.
1871//
1872// Returned Error Types:
1873//   * NotFoundException
1874//   We can't find the requested resource. Check the name and try your request
1875//   again.
1876//
1877//   * LimitExceededException
1878//   Either you have sent too many requests or your input file is too long. Wait
1879//   before you resend your request, or use a smaller file and resend the request.
1880//
1881//   * InternalFailureException
1882//   There was an internal error. Check the error message and try your request
1883//   again.
1884//
1885//   * BadRequestException
1886//   Your request didn't pass one or more validation tests. For example, if the
1887//   entity that you're trying to delete doesn't exist or if it is in a non-terminal
1888//   state (for example, it's "in progress"). See the exception Message field
1889//   for more information.
1890//
1891// See also, https://docs.aws.amazon.com/goto/WebAPI/transcribe-2017-10-26/GetVocabulary
1892func (c *TranscribeService) GetVocabulary(input *GetVocabularyInput) (*GetVocabularyOutput, error) {
1893	req, out := c.GetVocabularyRequest(input)
1894	return out, req.Send()
1895}
1896
1897// GetVocabularyWithContext is the same as GetVocabulary with the addition of
1898// the ability to pass a context and additional request options.
1899//
1900// See GetVocabulary for details on how to use this API operation.
1901//
1902// The context must be non-nil and will be used for request cancellation. If
1903// the context is nil a panic will occur. In the future the SDK may create
1904// sub-contexts for http.Requests. See https://golang.org/pkg/context/
1905// for more information on using Contexts.
1906func (c *TranscribeService) GetVocabularyWithContext(ctx aws.Context, input *GetVocabularyInput, opts ...request.Option) (*GetVocabularyOutput, error) {
1907	req, out := c.GetVocabularyRequest(input)
1908	req.SetContext(ctx)
1909	req.ApplyOptions(opts...)
1910	return out, req.Send()
1911}
1912
1913const opGetVocabularyFilter = "GetVocabularyFilter"
1914
1915// GetVocabularyFilterRequest generates a "aws/request.Request" representing the
1916// client's request for the GetVocabularyFilter operation. The "output" return
1917// value will be populated with the request's response once the request completes
1918// successfully.
1919//
1920// Use "Send" method on the returned Request to send the API call to the service.
1921// the "output" return value is not valid until after Send returns without error.
1922//
1923// See GetVocabularyFilter for more information on using the GetVocabularyFilter
1924// API call, and error handling.
1925//
1926// This method is useful when you want to inject custom logic or configuration
1927// into the SDK's request lifecycle. Such as custom headers, or retry logic.
1928//
1929//
1930//    // Example sending a request using the GetVocabularyFilterRequest method.
1931//    req, resp := client.GetVocabularyFilterRequest(params)
1932//
1933//    err := req.Send()
1934//    if err == nil { // resp is now filled
1935//        fmt.Println(resp)
1936//    }
1937//
1938// See also, https://docs.aws.amazon.com/goto/WebAPI/transcribe-2017-10-26/GetVocabularyFilter
1939func (c *TranscribeService) GetVocabularyFilterRequest(input *GetVocabularyFilterInput) (req *request.Request, output *GetVocabularyFilterOutput) {
1940	op := &request.Operation{
1941		Name:       opGetVocabularyFilter,
1942		HTTPMethod: "POST",
1943		HTTPPath:   "/",
1944	}
1945
1946	if input == nil {
1947		input = &GetVocabularyFilterInput{}
1948	}
1949
1950	output = &GetVocabularyFilterOutput{}
1951	req = c.newRequest(op, input, output)
1952	return
1953}
1954
1955// GetVocabularyFilter API operation for Amazon Transcribe Service.
1956//
1957// Returns information about a vocabulary filter.
1958//
1959// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
1960// with awserr.Error's Code and Message methods to get detailed information about
1961// the error.
1962//
1963// See the AWS API reference guide for Amazon Transcribe Service's
1964// API operation GetVocabularyFilter for usage and error information.
1965//
1966// Returned Error Types:
1967//   * NotFoundException
1968//   We can't find the requested resource. Check the name and try your request
1969//   again.
1970//
1971//   * LimitExceededException
1972//   Either you have sent too many requests or your input file is too long. Wait
1973//   before you resend your request, or use a smaller file and resend the request.
1974//
1975//   * InternalFailureException
1976//   There was an internal error. Check the error message and try your request
1977//   again.
1978//
1979//   * BadRequestException
1980//   Your request didn't pass one or more validation tests. For example, if the
1981//   entity that you're trying to delete doesn't exist or if it is in a non-terminal
1982//   state (for example, it's "in progress"). See the exception Message field
1983//   for more information.
1984//
1985// See also, https://docs.aws.amazon.com/goto/WebAPI/transcribe-2017-10-26/GetVocabularyFilter
1986func (c *TranscribeService) GetVocabularyFilter(input *GetVocabularyFilterInput) (*GetVocabularyFilterOutput, error) {
1987	req, out := c.GetVocabularyFilterRequest(input)
1988	return out, req.Send()
1989}
1990
1991// GetVocabularyFilterWithContext is the same as GetVocabularyFilter with the addition of
1992// the ability to pass a context and additional request options.
1993//
1994// See GetVocabularyFilter for details on how to use this API operation.
1995//
1996// The context must be non-nil and will be used for request cancellation. If
1997// the context is nil a panic will occur. In the future the SDK may create
1998// sub-contexts for http.Requests. See https://golang.org/pkg/context/
1999// for more information on using Contexts.
2000func (c *TranscribeService) GetVocabularyFilterWithContext(ctx aws.Context, input *GetVocabularyFilterInput, opts ...request.Option) (*GetVocabularyFilterOutput, error) {
2001	req, out := c.GetVocabularyFilterRequest(input)
2002	req.SetContext(ctx)
2003	req.ApplyOptions(opts...)
2004	return out, req.Send()
2005}
2006
2007const opListCallAnalyticsCategories = "ListCallAnalyticsCategories"
2008
2009// ListCallAnalyticsCategoriesRequest generates a "aws/request.Request" representing the
2010// client's request for the ListCallAnalyticsCategories operation. The "output" return
2011// value will be populated with the request's response once the request completes
2012// successfully.
2013//
2014// Use "Send" method on the returned Request to send the API call to the service.
2015// the "output" return value is not valid until after Send returns without error.
2016//
2017// See ListCallAnalyticsCategories for more information on using the ListCallAnalyticsCategories
2018// API call, and error handling.
2019//
2020// This method is useful when you want to inject custom logic or configuration
2021// into the SDK's request lifecycle. Such as custom headers, or retry logic.
2022//
2023//
2024//    // Example sending a request using the ListCallAnalyticsCategoriesRequest method.
2025//    req, resp := client.ListCallAnalyticsCategoriesRequest(params)
2026//
2027//    err := req.Send()
2028//    if err == nil { // resp is now filled
2029//        fmt.Println(resp)
2030//    }
2031//
2032// See also, https://docs.aws.amazon.com/goto/WebAPI/transcribe-2017-10-26/ListCallAnalyticsCategories
2033func (c *TranscribeService) ListCallAnalyticsCategoriesRequest(input *ListCallAnalyticsCategoriesInput) (req *request.Request, output *ListCallAnalyticsCategoriesOutput) {
2034	op := &request.Operation{
2035		Name:       opListCallAnalyticsCategories,
2036		HTTPMethod: "POST",
2037		HTTPPath:   "/",
2038		Paginator: &request.Paginator{
2039			InputTokens:     []string{"NextToken"},
2040			OutputTokens:    []string{"NextToken"},
2041			LimitToken:      "MaxResults",
2042			TruncationToken: "",
2043		},
2044	}
2045
2046	if input == nil {
2047		input = &ListCallAnalyticsCategoriesInput{}
2048	}
2049
2050	output = &ListCallAnalyticsCategoriesOutput{}
2051	req = c.newRequest(op, input, output)
2052	return
2053}
2054
2055// ListCallAnalyticsCategories API operation for Amazon Transcribe Service.
2056//
2057// Provides more information about the call analytics categories that you've
2058// created. You can use the information in this list to find a specific category.
2059// You can then use the operation to get more information about it.
2060//
2061// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
2062// with awserr.Error's Code and Message methods to get detailed information about
2063// the error.
2064//
2065// See the AWS API reference guide for Amazon Transcribe Service's
2066// API operation ListCallAnalyticsCategories for usage and error information.
2067//
2068// Returned Error Types:
2069//   * BadRequestException
2070//   Your request didn't pass one or more validation tests. For example, if the
2071//   entity that you're trying to delete doesn't exist or if it is in a non-terminal
2072//   state (for example, it's "in progress"). See the exception Message field
2073//   for more information.
2074//
2075//   * LimitExceededException
2076//   Either you have sent too many requests or your input file is too long. Wait
2077//   before you resend your request, or use a smaller file and resend the request.
2078//
2079//   * InternalFailureException
2080//   There was an internal error. Check the error message and try your request
2081//   again.
2082//
2083// See also, https://docs.aws.amazon.com/goto/WebAPI/transcribe-2017-10-26/ListCallAnalyticsCategories
2084func (c *TranscribeService) ListCallAnalyticsCategories(input *ListCallAnalyticsCategoriesInput) (*ListCallAnalyticsCategoriesOutput, error) {
2085	req, out := c.ListCallAnalyticsCategoriesRequest(input)
2086	return out, req.Send()
2087}
2088
2089// ListCallAnalyticsCategoriesWithContext is the same as ListCallAnalyticsCategories with the addition of
2090// the ability to pass a context and additional request options.
2091//
2092// See ListCallAnalyticsCategories for details on how to use this API operation.
2093//
2094// The context must be non-nil and will be used for request cancellation. If
2095// the context is nil a panic will occur. In the future the SDK may create
2096// sub-contexts for http.Requests. See https://golang.org/pkg/context/
2097// for more information on using Contexts.
2098func (c *TranscribeService) ListCallAnalyticsCategoriesWithContext(ctx aws.Context, input *ListCallAnalyticsCategoriesInput, opts ...request.Option) (*ListCallAnalyticsCategoriesOutput, error) {
2099	req, out := c.ListCallAnalyticsCategoriesRequest(input)
2100	req.SetContext(ctx)
2101	req.ApplyOptions(opts...)
2102	return out, req.Send()
2103}
2104
2105// ListCallAnalyticsCategoriesPages iterates over the pages of a ListCallAnalyticsCategories operation,
2106// calling the "fn" function with the response data for each page. To stop
2107// iterating, return false from the fn function.
2108//
2109// See ListCallAnalyticsCategories method for more information on how to use this operation.
2110//
2111// Note: This operation can generate multiple requests to a service.
2112//
2113//    // Example iterating over at most 3 pages of a ListCallAnalyticsCategories operation.
2114//    pageNum := 0
2115//    err := client.ListCallAnalyticsCategoriesPages(params,
2116//        func(page *transcribeservice.ListCallAnalyticsCategoriesOutput, lastPage bool) bool {
2117//            pageNum++
2118//            fmt.Println(page)
2119//            return pageNum <= 3
2120//        })
2121//
2122func (c *TranscribeService) ListCallAnalyticsCategoriesPages(input *ListCallAnalyticsCategoriesInput, fn func(*ListCallAnalyticsCategoriesOutput, bool) bool) error {
2123	return c.ListCallAnalyticsCategoriesPagesWithContext(aws.BackgroundContext(), input, fn)
2124}
2125
2126// ListCallAnalyticsCategoriesPagesWithContext same as ListCallAnalyticsCategoriesPages except
2127// it takes a Context and allows setting request options on the pages.
2128//
2129// The context must be non-nil and will be used for request cancellation. If
2130// the context is nil a panic will occur. In the future the SDK may create
2131// sub-contexts for http.Requests. See https://golang.org/pkg/context/
2132// for more information on using Contexts.
2133func (c *TranscribeService) ListCallAnalyticsCategoriesPagesWithContext(ctx aws.Context, input *ListCallAnalyticsCategoriesInput, fn func(*ListCallAnalyticsCategoriesOutput, bool) bool, opts ...request.Option) error {
2134	p := request.Pagination{
2135		NewRequest: func() (*request.Request, error) {
2136			var inCpy *ListCallAnalyticsCategoriesInput
2137			if input != nil {
2138				tmp := *input
2139				inCpy = &tmp
2140			}
2141			req, _ := c.ListCallAnalyticsCategoriesRequest(inCpy)
2142			req.SetContext(ctx)
2143			req.ApplyOptions(opts...)
2144			return req, nil
2145		},
2146	}
2147
2148	for p.Next() {
2149		if !fn(p.Page().(*ListCallAnalyticsCategoriesOutput), !p.HasNextPage()) {
2150			break
2151		}
2152	}
2153
2154	return p.Err()
2155}
2156
2157const opListCallAnalyticsJobs = "ListCallAnalyticsJobs"
2158
2159// ListCallAnalyticsJobsRequest generates a "aws/request.Request" representing the
2160// client's request for the ListCallAnalyticsJobs operation. The "output" return
2161// value will be populated with the request's response once the request completes
2162// successfully.
2163//
2164// Use "Send" method on the returned Request to send the API call to the service.
2165// the "output" return value is not valid until after Send returns without error.
2166//
2167// See ListCallAnalyticsJobs for more information on using the ListCallAnalyticsJobs
2168// API call, and error handling.
2169//
2170// This method is useful when you want to inject custom logic or configuration
2171// into the SDK's request lifecycle. Such as custom headers, or retry logic.
2172//
2173//
2174//    // Example sending a request using the ListCallAnalyticsJobsRequest method.
2175//    req, resp := client.ListCallAnalyticsJobsRequest(params)
2176//
2177//    err := req.Send()
2178//    if err == nil { // resp is now filled
2179//        fmt.Println(resp)
2180//    }
2181//
2182// See also, https://docs.aws.amazon.com/goto/WebAPI/transcribe-2017-10-26/ListCallAnalyticsJobs
2183func (c *TranscribeService) ListCallAnalyticsJobsRequest(input *ListCallAnalyticsJobsInput) (req *request.Request, output *ListCallAnalyticsJobsOutput) {
2184	op := &request.Operation{
2185		Name:       opListCallAnalyticsJobs,
2186		HTTPMethod: "POST",
2187		HTTPPath:   "/",
2188		Paginator: &request.Paginator{
2189			InputTokens:     []string{"NextToken"},
2190			OutputTokens:    []string{"NextToken"},
2191			LimitToken:      "MaxResults",
2192			TruncationToken: "",
2193		},
2194	}
2195
2196	if input == nil {
2197		input = &ListCallAnalyticsJobsInput{}
2198	}
2199
2200	output = &ListCallAnalyticsJobsOutput{}
2201	req = c.newRequest(op, input, output)
2202	return
2203}
2204
2205// ListCallAnalyticsJobs API operation for Amazon Transcribe Service.
2206//
2207// List call analytics jobs with a specified status or substring that matches
2208// their names.
2209//
2210// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
2211// with awserr.Error's Code and Message methods to get detailed information about
2212// the error.
2213//
2214// See the AWS API reference guide for Amazon Transcribe Service's
2215// API operation ListCallAnalyticsJobs for usage and error information.
2216//
2217// Returned Error Types:
2218//   * BadRequestException
2219//   Your request didn't pass one or more validation tests. For example, if the
2220//   entity that you're trying to delete doesn't exist or if it is in a non-terminal
2221//   state (for example, it's "in progress"). See the exception Message field
2222//   for more information.
2223//
2224//   * LimitExceededException
2225//   Either you have sent too many requests or your input file is too long. Wait
2226//   before you resend your request, or use a smaller file and resend the request.
2227//
2228//   * InternalFailureException
2229//   There was an internal error. Check the error message and try your request
2230//   again.
2231//
2232// See also, https://docs.aws.amazon.com/goto/WebAPI/transcribe-2017-10-26/ListCallAnalyticsJobs
2233func (c *TranscribeService) ListCallAnalyticsJobs(input *ListCallAnalyticsJobsInput) (*ListCallAnalyticsJobsOutput, error) {
2234	req, out := c.ListCallAnalyticsJobsRequest(input)
2235	return out, req.Send()
2236}
2237
2238// ListCallAnalyticsJobsWithContext is the same as ListCallAnalyticsJobs with the addition of
2239// the ability to pass a context and additional request options.
2240//
2241// See ListCallAnalyticsJobs for details on how to use this API operation.
2242//
2243// The context must be non-nil and will be used for request cancellation. If
2244// the context is nil a panic will occur. In the future the SDK may create
2245// sub-contexts for http.Requests. See https://golang.org/pkg/context/
2246// for more information on using Contexts.
2247func (c *TranscribeService) ListCallAnalyticsJobsWithContext(ctx aws.Context, input *ListCallAnalyticsJobsInput, opts ...request.Option) (*ListCallAnalyticsJobsOutput, error) {
2248	req, out := c.ListCallAnalyticsJobsRequest(input)
2249	req.SetContext(ctx)
2250	req.ApplyOptions(opts...)
2251	return out, req.Send()
2252}
2253
2254// ListCallAnalyticsJobsPages iterates over the pages of a ListCallAnalyticsJobs operation,
2255// calling the "fn" function with the response data for each page. To stop
2256// iterating, return false from the fn function.
2257//
2258// See ListCallAnalyticsJobs method for more information on how to use this operation.
2259//
2260// Note: This operation can generate multiple requests to a service.
2261//
2262//    // Example iterating over at most 3 pages of a ListCallAnalyticsJobs operation.
2263//    pageNum := 0
2264//    err := client.ListCallAnalyticsJobsPages(params,
2265//        func(page *transcribeservice.ListCallAnalyticsJobsOutput, lastPage bool) bool {
2266//            pageNum++
2267//            fmt.Println(page)
2268//            return pageNum <= 3
2269//        })
2270//
2271func (c *TranscribeService) ListCallAnalyticsJobsPages(input *ListCallAnalyticsJobsInput, fn func(*ListCallAnalyticsJobsOutput, bool) bool) error {
2272	return c.ListCallAnalyticsJobsPagesWithContext(aws.BackgroundContext(), input, fn)
2273}
2274
2275// ListCallAnalyticsJobsPagesWithContext same as ListCallAnalyticsJobsPages except
2276// it takes a Context and allows setting request options on the pages.
2277//
2278// The context must be non-nil and will be used for request cancellation. If
2279// the context is nil a panic will occur. In the future the SDK may create
2280// sub-contexts for http.Requests. See https://golang.org/pkg/context/
2281// for more information on using Contexts.
2282func (c *TranscribeService) ListCallAnalyticsJobsPagesWithContext(ctx aws.Context, input *ListCallAnalyticsJobsInput, fn func(*ListCallAnalyticsJobsOutput, bool) bool, opts ...request.Option) error {
2283	p := request.Pagination{
2284		NewRequest: func() (*request.Request, error) {
2285			var inCpy *ListCallAnalyticsJobsInput
2286			if input != nil {
2287				tmp := *input
2288				inCpy = &tmp
2289			}
2290			req, _ := c.ListCallAnalyticsJobsRequest(inCpy)
2291			req.SetContext(ctx)
2292			req.ApplyOptions(opts...)
2293			return req, nil
2294		},
2295	}
2296
2297	for p.Next() {
2298		if !fn(p.Page().(*ListCallAnalyticsJobsOutput), !p.HasNextPage()) {
2299			break
2300		}
2301	}
2302
2303	return p.Err()
2304}
2305
2306const opListLanguageModels = "ListLanguageModels"
2307
2308// ListLanguageModelsRequest generates a "aws/request.Request" representing the
2309// client's request for the ListLanguageModels operation. The "output" return
2310// value will be populated with the request's response once the request completes
2311// successfully.
2312//
2313// Use "Send" method on the returned Request to send the API call to the service.
2314// the "output" return value is not valid until after Send returns without error.
2315//
2316// See ListLanguageModels for more information on using the ListLanguageModels
2317// API call, and error handling.
2318//
2319// This method is useful when you want to inject custom logic or configuration
2320// into the SDK's request lifecycle. Such as custom headers, or retry logic.
2321//
2322//
2323//    // Example sending a request using the ListLanguageModelsRequest method.
2324//    req, resp := client.ListLanguageModelsRequest(params)
2325//
2326//    err := req.Send()
2327//    if err == nil { // resp is now filled
2328//        fmt.Println(resp)
2329//    }
2330//
2331// See also, https://docs.aws.amazon.com/goto/WebAPI/transcribe-2017-10-26/ListLanguageModels
2332func (c *TranscribeService) ListLanguageModelsRequest(input *ListLanguageModelsInput) (req *request.Request, output *ListLanguageModelsOutput) {
2333	op := &request.Operation{
2334		Name:       opListLanguageModels,
2335		HTTPMethod: "POST",
2336		HTTPPath:   "/",
2337		Paginator: &request.Paginator{
2338			InputTokens:     []string{"NextToken"},
2339			OutputTokens:    []string{"NextToken"},
2340			LimitToken:      "MaxResults",
2341			TruncationToken: "",
2342		},
2343	}
2344
2345	if input == nil {
2346		input = &ListLanguageModelsInput{}
2347	}
2348
2349	output = &ListLanguageModelsOutput{}
2350	req = c.newRequest(op, input, output)
2351	return
2352}
2353
2354// ListLanguageModels API operation for Amazon Transcribe Service.
2355//
2356// Provides more information about the custom language models you've created.
2357// You can use the information in this list to find a specific custom language
2358// model. You can then use the operation to get more information about it.
2359//
2360// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
2361// with awserr.Error's Code and Message methods to get detailed information about
2362// the error.
2363//
2364// See the AWS API reference guide for Amazon Transcribe Service's
2365// API operation ListLanguageModels for usage and error information.
2366//
2367// Returned Error Types:
2368//   * BadRequestException
2369//   Your request didn't pass one or more validation tests. For example, if the
2370//   entity that you're trying to delete doesn't exist or if it is in a non-terminal
2371//   state (for example, it's "in progress"). See the exception Message field
2372//   for more information.
2373//
2374//   * LimitExceededException
2375//   Either you have sent too many requests or your input file is too long. Wait
2376//   before you resend your request, or use a smaller file and resend the request.
2377//
2378//   * InternalFailureException
2379//   There was an internal error. Check the error message and try your request
2380//   again.
2381//
2382// See also, https://docs.aws.amazon.com/goto/WebAPI/transcribe-2017-10-26/ListLanguageModels
2383func (c *TranscribeService) ListLanguageModels(input *ListLanguageModelsInput) (*ListLanguageModelsOutput, error) {
2384	req, out := c.ListLanguageModelsRequest(input)
2385	return out, req.Send()
2386}
2387
2388// ListLanguageModelsWithContext is the same as ListLanguageModels with the addition of
2389// the ability to pass a context and additional request options.
2390//
2391// See ListLanguageModels for details on how to use this API operation.
2392//
2393// The context must be non-nil and will be used for request cancellation. If
2394// the context is nil a panic will occur. In the future the SDK may create
2395// sub-contexts for http.Requests. See https://golang.org/pkg/context/
2396// for more information on using Contexts.
2397func (c *TranscribeService) ListLanguageModelsWithContext(ctx aws.Context, input *ListLanguageModelsInput, opts ...request.Option) (*ListLanguageModelsOutput, error) {
2398	req, out := c.ListLanguageModelsRequest(input)
2399	req.SetContext(ctx)
2400	req.ApplyOptions(opts...)
2401	return out, req.Send()
2402}
2403
2404// ListLanguageModelsPages iterates over the pages of a ListLanguageModels operation,
2405// calling the "fn" function with the response data for each page. To stop
2406// iterating, return false from the fn function.
2407//
2408// See ListLanguageModels method for more information on how to use this operation.
2409//
2410// Note: This operation can generate multiple requests to a service.
2411//
2412//    // Example iterating over at most 3 pages of a ListLanguageModels operation.
2413//    pageNum := 0
2414//    err := client.ListLanguageModelsPages(params,
2415//        func(page *transcribeservice.ListLanguageModelsOutput, lastPage bool) bool {
2416//            pageNum++
2417//            fmt.Println(page)
2418//            return pageNum <= 3
2419//        })
2420//
2421func (c *TranscribeService) ListLanguageModelsPages(input *ListLanguageModelsInput, fn func(*ListLanguageModelsOutput, bool) bool) error {
2422	return c.ListLanguageModelsPagesWithContext(aws.BackgroundContext(), input, fn)
2423}
2424
2425// ListLanguageModelsPagesWithContext same as ListLanguageModelsPages except
2426// it takes a Context and allows setting request options on the pages.
2427//
2428// The context must be non-nil and will be used for request cancellation. If
2429// the context is nil a panic will occur. In the future the SDK may create
2430// sub-contexts for http.Requests. See https://golang.org/pkg/context/
2431// for more information on using Contexts.
2432func (c *TranscribeService) ListLanguageModelsPagesWithContext(ctx aws.Context, input *ListLanguageModelsInput, fn func(*ListLanguageModelsOutput, bool) bool, opts ...request.Option) error {
2433	p := request.Pagination{
2434		NewRequest: func() (*request.Request, error) {
2435			var inCpy *ListLanguageModelsInput
2436			if input != nil {
2437				tmp := *input
2438				inCpy = &tmp
2439			}
2440			req, _ := c.ListLanguageModelsRequest(inCpy)
2441			req.SetContext(ctx)
2442			req.ApplyOptions(opts...)
2443			return req, nil
2444		},
2445	}
2446
2447	for p.Next() {
2448		if !fn(p.Page().(*ListLanguageModelsOutput), !p.HasNextPage()) {
2449			break
2450		}
2451	}
2452
2453	return p.Err()
2454}
2455
2456const opListMedicalTranscriptionJobs = "ListMedicalTranscriptionJobs"
2457
2458// ListMedicalTranscriptionJobsRequest generates a "aws/request.Request" representing the
2459// client's request for the ListMedicalTranscriptionJobs operation. The "output" return
2460// value will be populated with the request's response once the request completes
2461// successfully.
2462//
2463// Use "Send" method on the returned Request to send the API call to the service.
2464// the "output" return value is not valid until after Send returns without error.
2465//
2466// See ListMedicalTranscriptionJobs for more information on using the ListMedicalTranscriptionJobs
2467// API call, and error handling.
2468//
2469// This method is useful when you want to inject custom logic or configuration
2470// into the SDK's request lifecycle. Such as custom headers, or retry logic.
2471//
2472//
2473//    // Example sending a request using the ListMedicalTranscriptionJobsRequest method.
2474//    req, resp := client.ListMedicalTranscriptionJobsRequest(params)
2475//
2476//    err := req.Send()
2477//    if err == nil { // resp is now filled
2478//        fmt.Println(resp)
2479//    }
2480//
2481// See also, https://docs.aws.amazon.com/goto/WebAPI/transcribe-2017-10-26/ListMedicalTranscriptionJobs
2482func (c *TranscribeService) ListMedicalTranscriptionJobsRequest(input *ListMedicalTranscriptionJobsInput) (req *request.Request, output *ListMedicalTranscriptionJobsOutput) {
2483	op := &request.Operation{
2484		Name:       opListMedicalTranscriptionJobs,
2485		HTTPMethod: "POST",
2486		HTTPPath:   "/",
2487		Paginator: &request.Paginator{
2488			InputTokens:     []string{"NextToken"},
2489			OutputTokens:    []string{"NextToken"},
2490			LimitToken:      "MaxResults",
2491			TruncationToken: "",
2492		},
2493	}
2494
2495	if input == nil {
2496		input = &ListMedicalTranscriptionJobsInput{}
2497	}
2498
2499	output = &ListMedicalTranscriptionJobsOutput{}
2500	req = c.newRequest(op, input, output)
2501	return
2502}
2503
2504// ListMedicalTranscriptionJobs API operation for Amazon Transcribe Service.
2505//
2506// Lists medical transcription jobs with a specified status or substring that
2507// matches their names.
2508//
2509// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
2510// with awserr.Error's Code and Message methods to get detailed information about
2511// the error.
2512//
2513// See the AWS API reference guide for Amazon Transcribe Service's
2514// API operation ListMedicalTranscriptionJobs for usage and error information.
2515//
2516// Returned Error Types:
2517//   * BadRequestException
2518//   Your request didn't pass one or more validation tests. For example, if the
2519//   entity that you're trying to delete doesn't exist or if it is in a non-terminal
2520//   state (for example, it's "in progress"). See the exception Message field
2521//   for more information.
2522//
2523//   * LimitExceededException
2524//   Either you have sent too many requests or your input file is too long. Wait
2525//   before you resend your request, or use a smaller file and resend the request.
2526//
2527//   * InternalFailureException
2528//   There was an internal error. Check the error message and try your request
2529//   again.
2530//
2531// See also, https://docs.aws.amazon.com/goto/WebAPI/transcribe-2017-10-26/ListMedicalTranscriptionJobs
2532func (c *TranscribeService) ListMedicalTranscriptionJobs(input *ListMedicalTranscriptionJobsInput) (*ListMedicalTranscriptionJobsOutput, error) {
2533	req, out := c.ListMedicalTranscriptionJobsRequest(input)
2534	return out, req.Send()
2535}
2536
2537// ListMedicalTranscriptionJobsWithContext is the same as ListMedicalTranscriptionJobs with the addition of
2538// the ability to pass a context and additional request options.
2539//
2540// See ListMedicalTranscriptionJobs for details on how to use this API operation.
2541//
2542// The context must be non-nil and will be used for request cancellation. If
2543// the context is nil a panic will occur. In the future the SDK may create
2544// sub-contexts for http.Requests. See https://golang.org/pkg/context/
2545// for more information on using Contexts.
2546func (c *TranscribeService) ListMedicalTranscriptionJobsWithContext(ctx aws.Context, input *ListMedicalTranscriptionJobsInput, opts ...request.Option) (*ListMedicalTranscriptionJobsOutput, error) {
2547	req, out := c.ListMedicalTranscriptionJobsRequest(input)
2548	req.SetContext(ctx)
2549	req.ApplyOptions(opts...)
2550	return out, req.Send()
2551}
2552
2553// ListMedicalTranscriptionJobsPages iterates over the pages of a ListMedicalTranscriptionJobs operation,
2554// calling the "fn" function with the response data for each page. To stop
2555// iterating, return false from the fn function.
2556//
2557// See ListMedicalTranscriptionJobs method for more information on how to use this operation.
2558//
2559// Note: This operation can generate multiple requests to a service.
2560//
2561//    // Example iterating over at most 3 pages of a ListMedicalTranscriptionJobs operation.
2562//    pageNum := 0
2563//    err := client.ListMedicalTranscriptionJobsPages(params,
2564//        func(page *transcribeservice.ListMedicalTranscriptionJobsOutput, lastPage bool) bool {
2565//            pageNum++
2566//            fmt.Println(page)
2567//            return pageNum <= 3
2568//        })
2569//
2570func (c *TranscribeService) ListMedicalTranscriptionJobsPages(input *ListMedicalTranscriptionJobsInput, fn func(*ListMedicalTranscriptionJobsOutput, bool) bool) error {
2571	return c.ListMedicalTranscriptionJobsPagesWithContext(aws.BackgroundContext(), input, fn)
2572}
2573
2574// ListMedicalTranscriptionJobsPagesWithContext same as ListMedicalTranscriptionJobsPages except
2575// it takes a Context and allows setting request options on the pages.
2576//
2577// The context must be non-nil and will be used for request cancellation. If
2578// the context is nil a panic will occur. In the future the SDK may create
2579// sub-contexts for http.Requests. See https://golang.org/pkg/context/
2580// for more information on using Contexts.
2581func (c *TranscribeService) ListMedicalTranscriptionJobsPagesWithContext(ctx aws.Context, input *ListMedicalTranscriptionJobsInput, fn func(*ListMedicalTranscriptionJobsOutput, bool) bool, opts ...request.Option) error {
2582	p := request.Pagination{
2583		NewRequest: func() (*request.Request, error) {
2584			var inCpy *ListMedicalTranscriptionJobsInput
2585			if input != nil {
2586				tmp := *input
2587				inCpy = &tmp
2588			}
2589			req, _ := c.ListMedicalTranscriptionJobsRequest(inCpy)
2590			req.SetContext(ctx)
2591			req.ApplyOptions(opts...)
2592			return req, nil
2593		},
2594	}
2595
2596	for p.Next() {
2597		if !fn(p.Page().(*ListMedicalTranscriptionJobsOutput), !p.HasNextPage()) {
2598			break
2599		}
2600	}
2601
2602	return p.Err()
2603}
2604
2605const opListMedicalVocabularies = "ListMedicalVocabularies"
2606
2607// ListMedicalVocabulariesRequest generates a "aws/request.Request" representing the
2608// client's request for the ListMedicalVocabularies operation. The "output" return
2609// value will be populated with the request's response once the request completes
2610// successfully.
2611//
2612// Use "Send" method on the returned Request to send the API call to the service.
2613// the "output" return value is not valid until after Send returns without error.
2614//
2615// See ListMedicalVocabularies for more information on using the ListMedicalVocabularies
2616// API call, and error handling.
2617//
2618// This method is useful when you want to inject custom logic or configuration
2619// into the SDK's request lifecycle. Such as custom headers, or retry logic.
2620//
2621//
2622//    // Example sending a request using the ListMedicalVocabulariesRequest method.
2623//    req, resp := client.ListMedicalVocabulariesRequest(params)
2624//
2625//    err := req.Send()
2626//    if err == nil { // resp is now filled
2627//        fmt.Println(resp)
2628//    }
2629//
2630// See also, https://docs.aws.amazon.com/goto/WebAPI/transcribe-2017-10-26/ListMedicalVocabularies
2631func (c *TranscribeService) ListMedicalVocabulariesRequest(input *ListMedicalVocabulariesInput) (req *request.Request, output *ListMedicalVocabulariesOutput) {
2632	op := &request.Operation{
2633		Name:       opListMedicalVocabularies,
2634		HTTPMethod: "POST",
2635		HTTPPath:   "/",
2636		Paginator: &request.Paginator{
2637			InputTokens:     []string{"NextToken"},
2638			OutputTokens:    []string{"NextToken"},
2639			LimitToken:      "MaxResults",
2640			TruncationToken: "",
2641		},
2642	}
2643
2644	if input == nil {
2645		input = &ListMedicalVocabulariesInput{}
2646	}
2647
2648	output = &ListMedicalVocabulariesOutput{}
2649	req = c.newRequest(op, input, output)
2650	return
2651}
2652
2653// ListMedicalVocabularies API operation for Amazon Transcribe Service.
2654//
2655// Returns a list of vocabularies that match the specified criteria. If you
2656// don't enter a value in any of the request parameters, returns the entire
2657// list of vocabularies.
2658//
2659// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
2660// with awserr.Error's Code and Message methods to get detailed information about
2661// the error.
2662//
2663// See the AWS API reference guide for Amazon Transcribe Service's
2664// API operation ListMedicalVocabularies for usage and error information.
2665//
2666// Returned Error Types:
2667//   * BadRequestException
2668//   Your request didn't pass one or more validation tests. For example, if the
2669//   entity that you're trying to delete doesn't exist or if it is in a non-terminal
2670//   state (for example, it's "in progress"). See the exception Message field
2671//   for more information.
2672//
2673//   * LimitExceededException
2674//   Either you have sent too many requests or your input file is too long. Wait
2675//   before you resend your request, or use a smaller file and resend the request.
2676//
2677//   * InternalFailureException
2678//   There was an internal error. Check the error message and try your request
2679//   again.
2680//
2681// See also, https://docs.aws.amazon.com/goto/WebAPI/transcribe-2017-10-26/ListMedicalVocabularies
2682func (c *TranscribeService) ListMedicalVocabularies(input *ListMedicalVocabulariesInput) (*ListMedicalVocabulariesOutput, error) {
2683	req, out := c.ListMedicalVocabulariesRequest(input)
2684	return out, req.Send()
2685}
2686
2687// ListMedicalVocabulariesWithContext is the same as ListMedicalVocabularies with the addition of
2688// the ability to pass a context and additional request options.
2689//
2690// See ListMedicalVocabularies for details on how to use this API operation.
2691//
2692// The context must be non-nil and will be used for request cancellation. If
2693// the context is nil a panic will occur. In the future the SDK may create
2694// sub-contexts for http.Requests. See https://golang.org/pkg/context/
2695// for more information on using Contexts.
2696func (c *TranscribeService) ListMedicalVocabulariesWithContext(ctx aws.Context, input *ListMedicalVocabulariesInput, opts ...request.Option) (*ListMedicalVocabulariesOutput, error) {
2697	req, out := c.ListMedicalVocabulariesRequest(input)
2698	req.SetContext(ctx)
2699	req.ApplyOptions(opts...)
2700	return out, req.Send()
2701}
2702
2703// ListMedicalVocabulariesPages iterates over the pages of a ListMedicalVocabularies operation,
2704// calling the "fn" function with the response data for each page. To stop
2705// iterating, return false from the fn function.
2706//
2707// See ListMedicalVocabularies method for more information on how to use this operation.
2708//
2709// Note: This operation can generate multiple requests to a service.
2710//
2711//    // Example iterating over at most 3 pages of a ListMedicalVocabularies operation.
2712//    pageNum := 0
2713//    err := client.ListMedicalVocabulariesPages(params,
2714//        func(page *transcribeservice.ListMedicalVocabulariesOutput, lastPage bool) bool {
2715//            pageNum++
2716//            fmt.Println(page)
2717//            return pageNum <= 3
2718//        })
2719//
2720func (c *TranscribeService) ListMedicalVocabulariesPages(input *ListMedicalVocabulariesInput, fn func(*ListMedicalVocabulariesOutput, bool) bool) error {
2721	return c.ListMedicalVocabulariesPagesWithContext(aws.BackgroundContext(), input, fn)
2722}
2723
2724// ListMedicalVocabulariesPagesWithContext same as ListMedicalVocabulariesPages except
2725// it takes a Context and allows setting request options on the pages.
2726//
2727// The context must be non-nil and will be used for request cancellation. If
2728// the context is nil a panic will occur. In the future the SDK may create
2729// sub-contexts for http.Requests. See https://golang.org/pkg/context/
2730// for more information on using Contexts.
2731func (c *TranscribeService) ListMedicalVocabulariesPagesWithContext(ctx aws.Context, input *ListMedicalVocabulariesInput, fn func(*ListMedicalVocabulariesOutput, bool) bool, opts ...request.Option) error {
2732	p := request.Pagination{
2733		NewRequest: func() (*request.Request, error) {
2734			var inCpy *ListMedicalVocabulariesInput
2735			if input != nil {
2736				tmp := *input
2737				inCpy = &tmp
2738			}
2739			req, _ := c.ListMedicalVocabulariesRequest(inCpy)
2740			req.SetContext(ctx)
2741			req.ApplyOptions(opts...)
2742			return req, nil
2743		},
2744	}
2745
2746	for p.Next() {
2747		if !fn(p.Page().(*ListMedicalVocabulariesOutput), !p.HasNextPage()) {
2748			break
2749		}
2750	}
2751
2752	return p.Err()
2753}
2754
2755const opListTagsForResource = "ListTagsForResource"
2756
2757// ListTagsForResourceRequest generates a "aws/request.Request" representing the
2758// client's request for the ListTagsForResource operation. The "output" return
2759// value will be populated with the request's response once the request completes
2760// successfully.
2761//
2762// Use "Send" method on the returned Request to send the API call to the service.
2763// the "output" return value is not valid until after Send returns without error.
2764//
2765// See ListTagsForResource for more information on using the ListTagsForResource
2766// API call, and error handling.
2767//
2768// This method is useful when you want to inject custom logic or configuration
2769// into the SDK's request lifecycle. Such as custom headers, or retry logic.
2770//
2771//
2772//    // Example sending a request using the ListTagsForResourceRequest method.
2773//    req, resp := client.ListTagsForResourceRequest(params)
2774//
2775//    err := req.Send()
2776//    if err == nil { // resp is now filled
2777//        fmt.Println(resp)
2778//    }
2779//
2780// See also, https://docs.aws.amazon.com/goto/WebAPI/transcribe-2017-10-26/ListTagsForResource
2781func (c *TranscribeService) ListTagsForResourceRequest(input *ListTagsForResourceInput) (req *request.Request, output *ListTagsForResourceOutput) {
2782	op := &request.Operation{
2783		Name:       opListTagsForResource,
2784		HTTPMethod: "POST",
2785		HTTPPath:   "/",
2786	}
2787
2788	if input == nil {
2789		input = &ListTagsForResourceInput{}
2790	}
2791
2792	output = &ListTagsForResourceOutput{}
2793	req = c.newRequest(op, input, output)
2794	return
2795}
2796
2797// ListTagsForResource API operation for Amazon Transcribe Service.
2798//
2799// Lists all tags associated with a given transcription job, vocabulary, or
2800// resource.
2801//
2802// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
2803// with awserr.Error's Code and Message methods to get detailed information about
2804// the error.
2805//
2806// See the AWS API reference guide for Amazon Transcribe Service's
2807// API operation ListTagsForResource for usage and error information.
2808//
2809// Returned Error Types:
2810//   * BadRequestException
2811//   Your request didn't pass one or more validation tests. For example, if the
2812//   entity that you're trying to delete doesn't exist or if it is in a non-terminal
2813//   state (for example, it's "in progress"). See the exception Message field
2814//   for more information.
2815//
2816//   * NotFoundException
2817//   We can't find the requested resource. Check the name and try your request
2818//   again.
2819//
2820//   * LimitExceededException
2821//   Either you have sent too many requests or your input file is too long. Wait
2822//   before you resend your request, or use a smaller file and resend the request.
2823//
2824//   * InternalFailureException
2825//   There was an internal error. Check the error message and try your request
2826//   again.
2827//
2828// See also, https://docs.aws.amazon.com/goto/WebAPI/transcribe-2017-10-26/ListTagsForResource
2829func (c *TranscribeService) ListTagsForResource(input *ListTagsForResourceInput) (*ListTagsForResourceOutput, error) {
2830	req, out := c.ListTagsForResourceRequest(input)
2831	return out, req.Send()
2832}
2833
2834// ListTagsForResourceWithContext is the same as ListTagsForResource with the addition of
2835// the ability to pass a context and additional request options.
2836//
2837// See ListTagsForResource for details on how to use this API operation.
2838//
2839// The context must be non-nil and will be used for request cancellation. If
2840// the context is nil a panic will occur. In the future the SDK may create
2841// sub-contexts for http.Requests. See https://golang.org/pkg/context/
2842// for more information on using Contexts.
2843func (c *TranscribeService) ListTagsForResourceWithContext(ctx aws.Context, input *ListTagsForResourceInput, opts ...request.Option) (*ListTagsForResourceOutput, error) {
2844	req, out := c.ListTagsForResourceRequest(input)
2845	req.SetContext(ctx)
2846	req.ApplyOptions(opts...)
2847	return out, req.Send()
2848}
2849
2850const opListTranscriptionJobs = "ListTranscriptionJobs"
2851
2852// ListTranscriptionJobsRequest generates a "aws/request.Request" representing the
2853// client's request for the ListTranscriptionJobs operation. The "output" return
2854// value will be populated with the request's response once the request completes
2855// successfully.
2856//
2857// Use "Send" method on the returned Request to send the API call to the service.
2858// the "output" return value is not valid until after Send returns without error.
2859//
2860// See ListTranscriptionJobs for more information on using the ListTranscriptionJobs
2861// API call, and error handling.
2862//
2863// This method is useful when you want to inject custom logic or configuration
2864// into the SDK's request lifecycle. Such as custom headers, or retry logic.
2865//
2866//
2867//    // Example sending a request using the ListTranscriptionJobsRequest method.
2868//    req, resp := client.ListTranscriptionJobsRequest(params)
2869//
2870//    err := req.Send()
2871//    if err == nil { // resp is now filled
2872//        fmt.Println(resp)
2873//    }
2874//
2875// See also, https://docs.aws.amazon.com/goto/WebAPI/transcribe-2017-10-26/ListTranscriptionJobs
2876func (c *TranscribeService) ListTranscriptionJobsRequest(input *ListTranscriptionJobsInput) (req *request.Request, output *ListTranscriptionJobsOutput) {
2877	op := &request.Operation{
2878		Name:       opListTranscriptionJobs,
2879		HTTPMethod: "POST",
2880		HTTPPath:   "/",
2881		Paginator: &request.Paginator{
2882			InputTokens:     []string{"NextToken"},
2883			OutputTokens:    []string{"NextToken"},
2884			LimitToken:      "MaxResults",
2885			TruncationToken: "",
2886		},
2887	}
2888
2889	if input == nil {
2890		input = &ListTranscriptionJobsInput{}
2891	}
2892
2893	output = &ListTranscriptionJobsOutput{}
2894	req = c.newRequest(op, input, output)
2895	return
2896}
2897
2898// ListTranscriptionJobs API operation for Amazon Transcribe Service.
2899//
2900// Lists transcription jobs with the specified status.
2901//
2902// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
2903// with awserr.Error's Code and Message methods to get detailed information about
2904// the error.
2905//
2906// See the AWS API reference guide for Amazon Transcribe Service's
2907// API operation ListTranscriptionJobs for usage and error information.
2908//
2909// Returned Error Types:
2910//   * BadRequestException
2911//   Your request didn't pass one or more validation tests. For example, if the
2912//   entity that you're trying to delete doesn't exist or if it is in a non-terminal
2913//   state (for example, it's "in progress"). See the exception Message field
2914//   for more information.
2915//
2916//   * LimitExceededException
2917//   Either you have sent too many requests or your input file is too long. Wait
2918//   before you resend your request, or use a smaller file and resend the request.
2919//
2920//   * InternalFailureException
2921//   There was an internal error. Check the error message and try your request
2922//   again.
2923//
2924// See also, https://docs.aws.amazon.com/goto/WebAPI/transcribe-2017-10-26/ListTranscriptionJobs
2925func (c *TranscribeService) ListTranscriptionJobs(input *ListTranscriptionJobsInput) (*ListTranscriptionJobsOutput, error) {
2926	req, out := c.ListTranscriptionJobsRequest(input)
2927	return out, req.Send()
2928}
2929
2930// ListTranscriptionJobsWithContext is the same as ListTranscriptionJobs with the addition of
2931// the ability to pass a context and additional request options.
2932//
2933// See ListTranscriptionJobs for details on how to use this API operation.
2934//
2935// The context must be non-nil and will be used for request cancellation. If
2936// the context is nil a panic will occur. In the future the SDK may create
2937// sub-contexts for http.Requests. See https://golang.org/pkg/context/
2938// for more information on using Contexts.
2939func (c *TranscribeService) ListTranscriptionJobsWithContext(ctx aws.Context, input *ListTranscriptionJobsInput, opts ...request.Option) (*ListTranscriptionJobsOutput, error) {
2940	req, out := c.ListTranscriptionJobsRequest(input)
2941	req.SetContext(ctx)
2942	req.ApplyOptions(opts...)
2943	return out, req.Send()
2944}
2945
2946// ListTranscriptionJobsPages iterates over the pages of a ListTranscriptionJobs operation,
2947// calling the "fn" function with the response data for each page. To stop
2948// iterating, return false from the fn function.
2949//
2950// See ListTranscriptionJobs method for more information on how to use this operation.
2951//
2952// Note: This operation can generate multiple requests to a service.
2953//
2954//    // Example iterating over at most 3 pages of a ListTranscriptionJobs operation.
2955//    pageNum := 0
2956//    err := client.ListTranscriptionJobsPages(params,
2957//        func(page *transcribeservice.ListTranscriptionJobsOutput, lastPage bool) bool {
2958//            pageNum++
2959//            fmt.Println(page)
2960//            return pageNum <= 3
2961//        })
2962//
2963func (c *TranscribeService) ListTranscriptionJobsPages(input *ListTranscriptionJobsInput, fn func(*ListTranscriptionJobsOutput, bool) bool) error {
2964	return c.ListTranscriptionJobsPagesWithContext(aws.BackgroundContext(), input, fn)
2965}
2966
2967// ListTranscriptionJobsPagesWithContext same as ListTranscriptionJobsPages except
2968// it takes a Context and allows setting request options on the pages.
2969//
2970// The context must be non-nil and will be used for request cancellation. If
2971// the context is nil a panic will occur. In the future the SDK may create
2972// sub-contexts for http.Requests. See https://golang.org/pkg/context/
2973// for more information on using Contexts.
2974func (c *TranscribeService) ListTranscriptionJobsPagesWithContext(ctx aws.Context, input *ListTranscriptionJobsInput, fn func(*ListTranscriptionJobsOutput, bool) bool, opts ...request.Option) error {
2975	p := request.Pagination{
2976		NewRequest: func() (*request.Request, error) {
2977			var inCpy *ListTranscriptionJobsInput
2978			if input != nil {
2979				tmp := *input
2980				inCpy = &tmp
2981			}
2982			req, _ := c.ListTranscriptionJobsRequest(inCpy)
2983			req.SetContext(ctx)
2984			req.ApplyOptions(opts...)
2985			return req, nil
2986		},
2987	}
2988
2989	for p.Next() {
2990		if !fn(p.Page().(*ListTranscriptionJobsOutput), !p.HasNextPage()) {
2991			break
2992		}
2993	}
2994
2995	return p.Err()
2996}
2997
2998const opListVocabularies = "ListVocabularies"
2999
3000// ListVocabulariesRequest generates a "aws/request.Request" representing the
3001// client's request for the ListVocabularies operation. The "output" return
3002// value will be populated with the request's response once the request completes
3003// successfully.
3004//
3005// Use "Send" method on the returned Request to send the API call to the service.
3006// the "output" return value is not valid until after Send returns without error.
3007//
3008// See ListVocabularies for more information on using the ListVocabularies
3009// API call, and error handling.
3010//
3011// This method is useful when you want to inject custom logic or configuration
3012// into the SDK's request lifecycle. Such as custom headers, or retry logic.
3013//
3014//
3015//    // Example sending a request using the ListVocabulariesRequest method.
3016//    req, resp := client.ListVocabulariesRequest(params)
3017//
3018//    err := req.Send()
3019//    if err == nil { // resp is now filled
3020//        fmt.Println(resp)
3021//    }
3022//
3023// See also, https://docs.aws.amazon.com/goto/WebAPI/transcribe-2017-10-26/ListVocabularies
3024func (c *TranscribeService) ListVocabulariesRequest(input *ListVocabulariesInput) (req *request.Request, output *ListVocabulariesOutput) {
3025	op := &request.Operation{
3026		Name:       opListVocabularies,
3027		HTTPMethod: "POST",
3028		HTTPPath:   "/",
3029		Paginator: &request.Paginator{
3030			InputTokens:     []string{"NextToken"},
3031			OutputTokens:    []string{"NextToken"},
3032			LimitToken:      "MaxResults",
3033			TruncationToken: "",
3034		},
3035	}
3036
3037	if input == nil {
3038		input = &ListVocabulariesInput{}
3039	}
3040
3041	output = &ListVocabulariesOutput{}
3042	req = c.newRequest(op, input, output)
3043	return
3044}
3045
3046// ListVocabularies API operation for Amazon Transcribe Service.
3047//
3048// Returns a list of vocabularies that match the specified criteria. If no criteria
3049// are specified, returns the entire list of vocabularies.
3050//
3051// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
3052// with awserr.Error's Code and Message methods to get detailed information about
3053// the error.
3054//
3055// See the AWS API reference guide for Amazon Transcribe Service's
3056// API operation ListVocabularies for usage and error information.
3057//
3058// Returned Error Types:
3059//   * BadRequestException
3060//   Your request didn't pass one or more validation tests. For example, if the
3061//   entity that you're trying to delete doesn't exist or if it is in a non-terminal
3062//   state (for example, it's "in progress"). See the exception Message field
3063//   for more information.
3064//
3065//   * LimitExceededException
3066//   Either you have sent too many requests or your input file is too long. Wait
3067//   before you resend your request, or use a smaller file and resend the request.
3068//
3069//   * InternalFailureException
3070//   There was an internal error. Check the error message and try your request
3071//   again.
3072//
3073// See also, https://docs.aws.amazon.com/goto/WebAPI/transcribe-2017-10-26/ListVocabularies
3074func (c *TranscribeService) ListVocabularies(input *ListVocabulariesInput) (*ListVocabulariesOutput, error) {
3075	req, out := c.ListVocabulariesRequest(input)
3076	return out, req.Send()
3077}
3078
3079// ListVocabulariesWithContext is the same as ListVocabularies with the addition of
3080// the ability to pass a context and additional request options.
3081//
3082// See ListVocabularies for details on how to use this API operation.
3083//
3084// The context must be non-nil and will be used for request cancellation. If
3085// the context is nil a panic will occur. In the future the SDK may create
3086// sub-contexts for http.Requests. See https://golang.org/pkg/context/
3087// for more information on using Contexts.
3088func (c *TranscribeService) ListVocabulariesWithContext(ctx aws.Context, input *ListVocabulariesInput, opts ...request.Option) (*ListVocabulariesOutput, error) {
3089	req, out := c.ListVocabulariesRequest(input)
3090	req.SetContext(ctx)
3091	req.ApplyOptions(opts...)
3092	return out, req.Send()
3093}
3094
3095// ListVocabulariesPages iterates over the pages of a ListVocabularies operation,
3096// calling the "fn" function with the response data for each page. To stop
3097// iterating, return false from the fn function.
3098//
3099// See ListVocabularies method for more information on how to use this operation.
3100//
3101// Note: This operation can generate multiple requests to a service.
3102//
3103//    // Example iterating over at most 3 pages of a ListVocabularies operation.
3104//    pageNum := 0
3105//    err := client.ListVocabulariesPages(params,
3106//        func(page *transcribeservice.ListVocabulariesOutput, lastPage bool) bool {
3107//            pageNum++
3108//            fmt.Println(page)
3109//            return pageNum <= 3
3110//        })
3111//
3112func (c *TranscribeService) ListVocabulariesPages(input *ListVocabulariesInput, fn func(*ListVocabulariesOutput, bool) bool) error {
3113	return c.ListVocabulariesPagesWithContext(aws.BackgroundContext(), input, fn)
3114}
3115
3116// ListVocabulariesPagesWithContext same as ListVocabulariesPages except
3117// it takes a Context and allows setting request options on the pages.
3118//
3119// The context must be non-nil and will be used for request cancellation. If
3120// the context is nil a panic will occur. In the future the SDK may create
3121// sub-contexts for http.Requests. See https://golang.org/pkg/context/
3122// for more information on using Contexts.
3123func (c *TranscribeService) ListVocabulariesPagesWithContext(ctx aws.Context, input *ListVocabulariesInput, fn func(*ListVocabulariesOutput, bool) bool, opts ...request.Option) error {
3124	p := request.Pagination{
3125		NewRequest: func() (*request.Request, error) {
3126			var inCpy *ListVocabulariesInput
3127			if input != nil {
3128				tmp := *input
3129				inCpy = &tmp
3130			}
3131			req, _ := c.ListVocabulariesRequest(inCpy)
3132			req.SetContext(ctx)
3133			req.ApplyOptions(opts...)
3134			return req, nil
3135		},
3136	}
3137
3138	for p.Next() {
3139		if !fn(p.Page().(*ListVocabulariesOutput), !p.HasNextPage()) {
3140			break
3141		}
3142	}
3143
3144	return p.Err()
3145}
3146
3147const opListVocabularyFilters = "ListVocabularyFilters"
3148
3149// ListVocabularyFiltersRequest generates a "aws/request.Request" representing the
3150// client's request for the ListVocabularyFilters operation. The "output" return
3151// value will be populated with the request's response once the request completes
3152// successfully.
3153//
3154// Use "Send" method on the returned Request to send the API call to the service.
3155// the "output" return value is not valid until after Send returns without error.
3156//
3157// See ListVocabularyFilters for more information on using the ListVocabularyFilters
3158// API call, and error handling.
3159//
3160// This method is useful when you want to inject custom logic or configuration
3161// into the SDK's request lifecycle. Such as custom headers, or retry logic.
3162//
3163//
3164//    // Example sending a request using the ListVocabularyFiltersRequest method.
3165//    req, resp := client.ListVocabularyFiltersRequest(params)
3166//
3167//    err := req.Send()
3168//    if err == nil { // resp is now filled
3169//        fmt.Println(resp)
3170//    }
3171//
3172// See also, https://docs.aws.amazon.com/goto/WebAPI/transcribe-2017-10-26/ListVocabularyFilters
3173func (c *TranscribeService) ListVocabularyFiltersRequest(input *ListVocabularyFiltersInput) (req *request.Request, output *ListVocabularyFiltersOutput) {
3174	op := &request.Operation{
3175		Name:       opListVocabularyFilters,
3176		HTTPMethod: "POST",
3177		HTTPPath:   "/",
3178		Paginator: &request.Paginator{
3179			InputTokens:     []string{"NextToken"},
3180			OutputTokens:    []string{"NextToken"},
3181			LimitToken:      "MaxResults",
3182			TruncationToken: "",
3183		},
3184	}
3185
3186	if input == nil {
3187		input = &ListVocabularyFiltersInput{}
3188	}
3189
3190	output = &ListVocabularyFiltersOutput{}
3191	req = c.newRequest(op, input, output)
3192	return
3193}
3194
3195// ListVocabularyFilters API operation for Amazon Transcribe Service.
3196//
3197// Gets information about vocabulary filters.
3198//
3199// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
3200// with awserr.Error's Code and Message methods to get detailed information about
3201// the error.
3202//
3203// See the AWS API reference guide for Amazon Transcribe Service's
3204// API operation ListVocabularyFilters for usage and error information.
3205//
3206// Returned Error Types:
3207//   * BadRequestException
3208//   Your request didn't pass one or more validation tests. For example, if the
3209//   entity that you're trying to delete doesn't exist or if it is in a non-terminal
3210//   state (for example, it's "in progress"). See the exception Message field
3211//   for more information.
3212//
3213//   * LimitExceededException
3214//   Either you have sent too many requests or your input file is too long. Wait
3215//   before you resend your request, or use a smaller file and resend the request.
3216//
3217//   * InternalFailureException
3218//   There was an internal error. Check the error message and try your request
3219//   again.
3220//
3221// See also, https://docs.aws.amazon.com/goto/WebAPI/transcribe-2017-10-26/ListVocabularyFilters
3222func (c *TranscribeService) ListVocabularyFilters(input *ListVocabularyFiltersInput) (*ListVocabularyFiltersOutput, error) {
3223	req, out := c.ListVocabularyFiltersRequest(input)
3224	return out, req.Send()
3225}
3226
3227// ListVocabularyFiltersWithContext is the same as ListVocabularyFilters with the addition of
3228// the ability to pass a context and additional request options.
3229//
3230// See ListVocabularyFilters for details on how to use this API operation.
3231//
3232// The context must be non-nil and will be used for request cancellation. If
3233// the context is nil a panic will occur. In the future the SDK may create
3234// sub-contexts for http.Requests. See https://golang.org/pkg/context/
3235// for more information on using Contexts.
3236func (c *TranscribeService) ListVocabularyFiltersWithContext(ctx aws.Context, input *ListVocabularyFiltersInput, opts ...request.Option) (*ListVocabularyFiltersOutput, error) {
3237	req, out := c.ListVocabularyFiltersRequest(input)
3238	req.SetContext(ctx)
3239	req.ApplyOptions(opts...)
3240	return out, req.Send()
3241}
3242
3243// ListVocabularyFiltersPages iterates over the pages of a ListVocabularyFilters operation,
3244// calling the "fn" function with the response data for each page. To stop
3245// iterating, return false from the fn function.
3246//
3247// See ListVocabularyFilters method for more information on how to use this operation.
3248//
3249// Note: This operation can generate multiple requests to a service.
3250//
3251//    // Example iterating over at most 3 pages of a ListVocabularyFilters operation.
3252//    pageNum := 0
3253//    err := client.ListVocabularyFiltersPages(params,
3254//        func(page *transcribeservice.ListVocabularyFiltersOutput, lastPage bool) bool {
3255//            pageNum++
3256//            fmt.Println(page)
3257//            return pageNum <= 3
3258//        })
3259//
3260func (c *TranscribeService) ListVocabularyFiltersPages(input *ListVocabularyFiltersInput, fn func(*ListVocabularyFiltersOutput, bool) bool) error {
3261	return c.ListVocabularyFiltersPagesWithContext(aws.BackgroundContext(), input, fn)
3262}
3263
3264// ListVocabularyFiltersPagesWithContext same as ListVocabularyFiltersPages except
3265// it takes a Context and allows setting request options on the pages.
3266//
3267// The context must be non-nil and will be used for request cancellation. If
3268// the context is nil a panic will occur. In the future the SDK may create
3269// sub-contexts for http.Requests. See https://golang.org/pkg/context/
3270// for more information on using Contexts.
3271func (c *TranscribeService) ListVocabularyFiltersPagesWithContext(ctx aws.Context, input *ListVocabularyFiltersInput, fn func(*ListVocabularyFiltersOutput, bool) bool, opts ...request.Option) error {
3272	p := request.Pagination{
3273		NewRequest: func() (*request.Request, error) {
3274			var inCpy *ListVocabularyFiltersInput
3275			if input != nil {
3276				tmp := *input
3277				inCpy = &tmp
3278			}
3279			req, _ := c.ListVocabularyFiltersRequest(inCpy)
3280			req.SetContext(ctx)
3281			req.ApplyOptions(opts...)
3282			return req, nil
3283		},
3284	}
3285
3286	for p.Next() {
3287		if !fn(p.Page().(*ListVocabularyFiltersOutput), !p.HasNextPage()) {
3288			break
3289		}
3290	}
3291
3292	return p.Err()
3293}
3294
3295const opStartCallAnalyticsJob = "StartCallAnalyticsJob"
3296
3297// StartCallAnalyticsJobRequest generates a "aws/request.Request" representing the
3298// client's request for the StartCallAnalyticsJob operation. The "output" return
3299// value will be populated with the request's response once the request completes
3300// successfully.
3301//
3302// Use "Send" method on the returned Request to send the API call to the service.
3303// the "output" return value is not valid until after Send returns without error.
3304//
3305// See StartCallAnalyticsJob for more information on using the StartCallAnalyticsJob
3306// API call, and error handling.
3307//
3308// This method is useful when you want to inject custom logic or configuration
3309// into the SDK's request lifecycle. Such as custom headers, or retry logic.
3310//
3311//
3312//    // Example sending a request using the StartCallAnalyticsJobRequest method.
3313//    req, resp := client.StartCallAnalyticsJobRequest(params)
3314//
3315//    err := req.Send()
3316//    if err == nil { // resp is now filled
3317//        fmt.Println(resp)
3318//    }
3319//
3320// See also, https://docs.aws.amazon.com/goto/WebAPI/transcribe-2017-10-26/StartCallAnalyticsJob
3321func (c *TranscribeService) StartCallAnalyticsJobRequest(input *StartCallAnalyticsJobInput) (req *request.Request, output *StartCallAnalyticsJobOutput) {
3322	op := &request.Operation{
3323		Name:       opStartCallAnalyticsJob,
3324		HTTPMethod: "POST",
3325		HTTPPath:   "/",
3326	}
3327
3328	if input == nil {
3329		input = &StartCallAnalyticsJobInput{}
3330	}
3331
3332	output = &StartCallAnalyticsJobOutput{}
3333	req = c.newRequest(op, input, output)
3334	return
3335}
3336
3337// StartCallAnalyticsJob API operation for Amazon Transcribe Service.
3338//
3339// Starts an asynchronous analytics job that not only transcribes the audio
3340// recording of a caller and agent, but also returns additional insights. These
3341// insights include how quickly or loudly the caller or agent was speaking.
3342// To retrieve additional insights with your analytics jobs, create categories.
3343// A category is a way to classify analytics jobs based on attributes, such
3344// as a customer's sentiment or a particular phrase being used during the call.
3345// For more information, see the operation.
3346//
3347// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
3348// with awserr.Error's Code and Message methods to get detailed information about
3349// the error.
3350//
3351// See the AWS API reference guide for Amazon Transcribe Service's
3352// API operation StartCallAnalyticsJob for usage and error information.
3353//
3354// Returned Error Types:
3355//   * BadRequestException
3356//   Your request didn't pass one or more validation tests. For example, if the
3357//   entity that you're trying to delete doesn't exist or if it is in a non-terminal
3358//   state (for example, it's "in progress"). See the exception Message field
3359//   for more information.
3360//
3361//   * LimitExceededException
3362//   Either you have sent too many requests or your input file is too long. Wait
3363//   before you resend your request, or use a smaller file and resend the request.
3364//
3365//   * InternalFailureException
3366//   There was an internal error. Check the error message and try your request
3367//   again.
3368//
3369//   * ConflictException
3370//   There is already a resource with that name.
3371//
3372// See also, https://docs.aws.amazon.com/goto/WebAPI/transcribe-2017-10-26/StartCallAnalyticsJob
3373func (c *TranscribeService) StartCallAnalyticsJob(input *StartCallAnalyticsJobInput) (*StartCallAnalyticsJobOutput, error) {
3374	req, out := c.StartCallAnalyticsJobRequest(input)
3375	return out, req.Send()
3376}
3377
3378// StartCallAnalyticsJobWithContext is the same as StartCallAnalyticsJob with the addition of
3379// the ability to pass a context and additional request options.
3380//
3381// See StartCallAnalyticsJob for details on how to use this API operation.
3382//
3383// The context must be non-nil and will be used for request cancellation. If
3384// the context is nil a panic will occur. In the future the SDK may create
3385// sub-contexts for http.Requests. See https://golang.org/pkg/context/
3386// for more information on using Contexts.
3387func (c *TranscribeService) StartCallAnalyticsJobWithContext(ctx aws.Context, input *StartCallAnalyticsJobInput, opts ...request.Option) (*StartCallAnalyticsJobOutput, error) {
3388	req, out := c.StartCallAnalyticsJobRequest(input)
3389	req.SetContext(ctx)
3390	req.ApplyOptions(opts...)
3391	return out, req.Send()
3392}
3393
3394const opStartMedicalTranscriptionJob = "StartMedicalTranscriptionJob"
3395
3396// StartMedicalTranscriptionJobRequest generates a "aws/request.Request" representing the
3397// client's request for the StartMedicalTranscriptionJob operation. The "output" return
3398// value will be populated with the request's response once the request completes
3399// successfully.
3400//
3401// Use "Send" method on the returned Request to send the API call to the service.
3402// the "output" return value is not valid until after Send returns without error.
3403//
3404// See StartMedicalTranscriptionJob for more information on using the StartMedicalTranscriptionJob
3405// API call, and error handling.
3406//
3407// This method is useful when you want to inject custom logic or configuration
3408// into the SDK's request lifecycle. Such as custom headers, or retry logic.
3409//
3410//
3411//    // Example sending a request using the StartMedicalTranscriptionJobRequest method.
3412//    req, resp := client.StartMedicalTranscriptionJobRequest(params)
3413//
3414//    err := req.Send()
3415//    if err == nil { // resp is now filled
3416//        fmt.Println(resp)
3417//    }
3418//
3419// See also, https://docs.aws.amazon.com/goto/WebAPI/transcribe-2017-10-26/StartMedicalTranscriptionJob
3420func (c *TranscribeService) StartMedicalTranscriptionJobRequest(input *StartMedicalTranscriptionJobInput) (req *request.Request, output *StartMedicalTranscriptionJobOutput) {
3421	op := &request.Operation{
3422		Name:       opStartMedicalTranscriptionJob,
3423		HTTPMethod: "POST",
3424		HTTPPath:   "/",
3425	}
3426
3427	if input == nil {
3428		input = &StartMedicalTranscriptionJobInput{}
3429	}
3430
3431	output = &StartMedicalTranscriptionJobOutput{}
3432	req = c.newRequest(op, input, output)
3433	return
3434}
3435
3436// StartMedicalTranscriptionJob API operation for Amazon Transcribe Service.
3437//
3438// Starts a batch job to transcribe medical speech to text.
3439//
3440// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
3441// with awserr.Error's Code and Message methods to get detailed information about
3442// the error.
3443//
3444// See the AWS API reference guide for Amazon Transcribe Service's
3445// API operation StartMedicalTranscriptionJob for usage and error information.
3446//
3447// Returned Error Types:
3448//   * BadRequestException
3449//   Your request didn't pass one or more validation tests. For example, if the
3450//   entity that you're trying to delete doesn't exist or if it is in a non-terminal
3451//   state (for example, it's "in progress"). See the exception Message field
3452//   for more information.
3453//
3454//   * LimitExceededException
3455//   Either you have sent too many requests or your input file is too long. Wait
3456//   before you resend your request, or use a smaller file and resend the request.
3457//
3458//   * InternalFailureException
3459//   There was an internal error. Check the error message and try your request
3460//   again.
3461//
3462//   * ConflictException
3463//   There is already a resource with that name.
3464//
3465// See also, https://docs.aws.amazon.com/goto/WebAPI/transcribe-2017-10-26/StartMedicalTranscriptionJob
3466func (c *TranscribeService) StartMedicalTranscriptionJob(input *StartMedicalTranscriptionJobInput) (*StartMedicalTranscriptionJobOutput, error) {
3467	req, out := c.StartMedicalTranscriptionJobRequest(input)
3468	return out, req.Send()
3469}
3470
3471// StartMedicalTranscriptionJobWithContext is the same as StartMedicalTranscriptionJob with the addition of
3472// the ability to pass a context and additional request options.
3473//
3474// See StartMedicalTranscriptionJob for details on how to use this API operation.
3475//
3476// The context must be non-nil and will be used for request cancellation. If
3477// the context is nil a panic will occur. In the future the SDK may create
3478// sub-contexts for http.Requests. See https://golang.org/pkg/context/
3479// for more information on using Contexts.
3480func (c *TranscribeService) StartMedicalTranscriptionJobWithContext(ctx aws.Context, input *StartMedicalTranscriptionJobInput, opts ...request.Option) (*StartMedicalTranscriptionJobOutput, error) {
3481	req, out := c.StartMedicalTranscriptionJobRequest(input)
3482	req.SetContext(ctx)
3483	req.ApplyOptions(opts...)
3484	return out, req.Send()
3485}
3486
3487const opStartTranscriptionJob = "StartTranscriptionJob"
3488
3489// StartTranscriptionJobRequest generates a "aws/request.Request" representing the
3490// client's request for the StartTranscriptionJob operation. The "output" return
3491// value will be populated with the request's response once the request completes
3492// successfully.
3493//
3494// Use "Send" method on the returned Request to send the API call to the service.
3495// the "output" return value is not valid until after Send returns without error.
3496//
3497// See StartTranscriptionJob for more information on using the StartTranscriptionJob
3498// API call, and error handling.
3499//
3500// This method is useful when you want to inject custom logic or configuration
3501// into the SDK's request lifecycle. Such as custom headers, or retry logic.
3502//
3503//
3504//    // Example sending a request using the StartTranscriptionJobRequest method.
3505//    req, resp := client.StartTranscriptionJobRequest(params)
3506//
3507//    err := req.Send()
3508//    if err == nil { // resp is now filled
3509//        fmt.Println(resp)
3510//    }
3511//
3512// See also, https://docs.aws.amazon.com/goto/WebAPI/transcribe-2017-10-26/StartTranscriptionJob
3513func (c *TranscribeService) StartTranscriptionJobRequest(input *StartTranscriptionJobInput) (req *request.Request, output *StartTranscriptionJobOutput) {
3514	op := &request.Operation{
3515		Name:       opStartTranscriptionJob,
3516		HTTPMethod: "POST",
3517		HTTPPath:   "/",
3518	}
3519
3520	if input == nil {
3521		input = &StartTranscriptionJobInput{}
3522	}
3523
3524	output = &StartTranscriptionJobOutput{}
3525	req = c.newRequest(op, input, output)
3526	return
3527}
3528
3529// StartTranscriptionJob API operation for Amazon Transcribe Service.
3530//
3531// Starts an asynchronous job to transcribe speech to text.
3532//
3533// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
3534// with awserr.Error's Code and Message methods to get detailed information about
3535// the error.
3536//
3537// See the AWS API reference guide for Amazon Transcribe Service's
3538// API operation StartTranscriptionJob for usage and error information.
3539//
3540// Returned Error Types:
3541//   * BadRequestException
3542//   Your request didn't pass one or more validation tests. For example, if the
3543//   entity that you're trying to delete doesn't exist or if it is in a non-terminal
3544//   state (for example, it's "in progress"). See the exception Message field
3545//   for more information.
3546//
3547//   * LimitExceededException
3548//   Either you have sent too many requests or your input file is too long. Wait
3549//   before you resend your request, or use a smaller file and resend the request.
3550//
3551//   * InternalFailureException
3552//   There was an internal error. Check the error message and try your request
3553//   again.
3554//
3555//   * ConflictException
3556//   There is already a resource with that name.
3557//
3558// See also, https://docs.aws.amazon.com/goto/WebAPI/transcribe-2017-10-26/StartTranscriptionJob
3559func (c *TranscribeService) StartTranscriptionJob(input *StartTranscriptionJobInput) (*StartTranscriptionJobOutput, error) {
3560	req, out := c.StartTranscriptionJobRequest(input)
3561	return out, req.Send()
3562}
3563
3564// StartTranscriptionJobWithContext is the same as StartTranscriptionJob with the addition of
3565// the ability to pass a context and additional request options.
3566//
3567// See StartTranscriptionJob for details on how to use this API operation.
3568//
3569// The context must be non-nil and will be used for request cancellation. If
3570// the context is nil a panic will occur. In the future the SDK may create
3571// sub-contexts for http.Requests. See https://golang.org/pkg/context/
3572// for more information on using Contexts.
3573func (c *TranscribeService) StartTranscriptionJobWithContext(ctx aws.Context, input *StartTranscriptionJobInput, opts ...request.Option) (*StartTranscriptionJobOutput, error) {
3574	req, out := c.StartTranscriptionJobRequest(input)
3575	req.SetContext(ctx)
3576	req.ApplyOptions(opts...)
3577	return out, req.Send()
3578}
3579
3580const opTagResource = "TagResource"
3581
3582// TagResourceRequest generates a "aws/request.Request" representing the
3583// client's request for the TagResource operation. The "output" return
3584// value will be populated with the request's response once the request completes
3585// successfully.
3586//
3587// Use "Send" method on the returned Request to send the API call to the service.
3588// the "output" return value is not valid until after Send returns without error.
3589//
3590// See TagResource for more information on using the TagResource
3591// API call, and error handling.
3592//
3593// This method is useful when you want to inject custom logic or configuration
3594// into the SDK's request lifecycle. Such as custom headers, or retry logic.
3595//
3596//
3597//    // Example sending a request using the TagResourceRequest method.
3598//    req, resp := client.TagResourceRequest(params)
3599//
3600//    err := req.Send()
3601//    if err == nil { // resp is now filled
3602//        fmt.Println(resp)
3603//    }
3604//
3605// See also, https://docs.aws.amazon.com/goto/WebAPI/transcribe-2017-10-26/TagResource
3606func (c *TranscribeService) TagResourceRequest(input *TagResourceInput) (req *request.Request, output *TagResourceOutput) {
3607	op := &request.Operation{
3608		Name:       opTagResource,
3609		HTTPMethod: "POST",
3610		HTTPPath:   "/",
3611	}
3612
3613	if input == nil {
3614		input = &TagResourceInput{}
3615	}
3616
3617	output = &TagResourceOutput{}
3618	req = c.newRequest(op, input, output)
3619	req.Handlers.Unmarshal.Swap(jsonrpc.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler)
3620	return
3621}
3622
3623// TagResource API operation for Amazon Transcribe Service.
3624//
3625// Tags an Amazon Transcribe resource with the given list of tags.
3626//
3627// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
3628// with awserr.Error's Code and Message methods to get detailed information about
3629// the error.
3630//
3631// See the AWS API reference guide for Amazon Transcribe Service's
3632// API operation TagResource for usage and error information.
3633//
3634// Returned Error Types:
3635//   * BadRequestException
3636//   Your request didn't pass one or more validation tests. For example, if the
3637//   entity that you're trying to delete doesn't exist or if it is in a non-terminal
3638//   state (for example, it's "in progress"). See the exception Message field
3639//   for more information.
3640//
3641//   * ConflictException
3642//   There is already a resource with that name.
3643//
3644//   * NotFoundException
3645//   We can't find the requested resource. Check the name and try your request
3646//   again.
3647//
3648//   * LimitExceededException
3649//   Either you have sent too many requests or your input file is too long. Wait
3650//   before you resend your request, or use a smaller file and resend the request.
3651//
3652//   * InternalFailureException
3653//   There was an internal error. Check the error message and try your request
3654//   again.
3655//
3656// See also, https://docs.aws.amazon.com/goto/WebAPI/transcribe-2017-10-26/TagResource
3657func (c *TranscribeService) TagResource(input *TagResourceInput) (*TagResourceOutput, error) {
3658	req, out := c.TagResourceRequest(input)
3659	return out, req.Send()
3660}
3661
3662// TagResourceWithContext is the same as TagResource with the addition of
3663// the ability to pass a context and additional request options.
3664//
3665// See TagResource for details on how to use this API operation.
3666//
3667// The context must be non-nil and will be used for request cancellation. If
3668// the context is nil a panic will occur. In the future the SDK may create
3669// sub-contexts for http.Requests. See https://golang.org/pkg/context/
3670// for more information on using Contexts.
3671func (c *TranscribeService) TagResourceWithContext(ctx aws.Context, input *TagResourceInput, opts ...request.Option) (*TagResourceOutput, error) {
3672	req, out := c.TagResourceRequest(input)
3673	req.SetContext(ctx)
3674	req.ApplyOptions(opts...)
3675	return out, req.Send()
3676}
3677
3678const opUntagResource = "UntagResource"
3679
3680// UntagResourceRequest generates a "aws/request.Request" representing the
3681// client's request for the UntagResource operation. The "output" return
3682// value will be populated with the request's response once the request completes
3683// successfully.
3684//
3685// Use "Send" method on the returned Request to send the API call to the service.
3686// the "output" return value is not valid until after Send returns without error.
3687//
3688// See UntagResource for more information on using the UntagResource
3689// API call, and error handling.
3690//
3691// This method is useful when you want to inject custom logic or configuration
3692// into the SDK's request lifecycle. Such as custom headers, or retry logic.
3693//
3694//
3695//    // Example sending a request using the UntagResourceRequest method.
3696//    req, resp := client.UntagResourceRequest(params)
3697//
3698//    err := req.Send()
3699//    if err == nil { // resp is now filled
3700//        fmt.Println(resp)
3701//    }
3702//
3703// See also, https://docs.aws.amazon.com/goto/WebAPI/transcribe-2017-10-26/UntagResource
3704func (c *TranscribeService) UntagResourceRequest(input *UntagResourceInput) (req *request.Request, output *UntagResourceOutput) {
3705	op := &request.Operation{
3706		Name:       opUntagResource,
3707		HTTPMethod: "POST",
3708		HTTPPath:   "/",
3709	}
3710
3711	if input == nil {
3712		input = &UntagResourceInput{}
3713	}
3714
3715	output = &UntagResourceOutput{}
3716	req = c.newRequest(op, input, output)
3717	req.Handlers.Unmarshal.Swap(jsonrpc.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler)
3718	return
3719}
3720
3721// UntagResource API operation for Amazon Transcribe Service.
3722//
3723// Removes specified tags from a specified Amazon Transcribe resource.
3724//
3725// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
3726// with awserr.Error's Code and Message methods to get detailed information about
3727// the error.
3728//
3729// See the AWS API reference guide for Amazon Transcribe Service's
3730// API operation UntagResource for usage and error information.
3731//
3732// Returned Error Types:
3733//   * LimitExceededException
3734//   Either you have sent too many requests or your input file is too long. Wait
3735//   before you resend your request, or use a smaller file and resend the request.
3736//
3737//   * BadRequestException
3738//   Your request didn't pass one or more validation tests. For example, if the
3739//   entity that you're trying to delete doesn't exist or if it is in a non-terminal
3740//   state (for example, it's "in progress"). See the exception Message field
3741//   for more information.
3742//
3743//   * ConflictException
3744//   There is already a resource with that name.
3745//
3746//   * NotFoundException
3747//   We can't find the requested resource. Check the name and try your request
3748//   again.
3749//
3750//   * InternalFailureException
3751//   There was an internal error. Check the error message and try your request
3752//   again.
3753//
3754// See also, https://docs.aws.amazon.com/goto/WebAPI/transcribe-2017-10-26/UntagResource
3755func (c *TranscribeService) UntagResource(input *UntagResourceInput) (*UntagResourceOutput, error) {
3756	req, out := c.UntagResourceRequest(input)
3757	return out, req.Send()
3758}
3759
3760// UntagResourceWithContext is the same as UntagResource with the addition of
3761// the ability to pass a context and additional request options.
3762//
3763// See UntagResource for details on how to use this API operation.
3764//
3765// The context must be non-nil and will be used for request cancellation. If
3766// the context is nil a panic will occur. In the future the SDK may create
3767// sub-contexts for http.Requests. See https://golang.org/pkg/context/
3768// for more information on using Contexts.
3769func (c *TranscribeService) UntagResourceWithContext(ctx aws.Context, input *UntagResourceInput, opts ...request.Option) (*UntagResourceOutput, error) {
3770	req, out := c.UntagResourceRequest(input)
3771	req.SetContext(ctx)
3772	req.ApplyOptions(opts...)
3773	return out, req.Send()
3774}
3775
3776const opUpdateCallAnalyticsCategory = "UpdateCallAnalyticsCategory"
3777
3778// UpdateCallAnalyticsCategoryRequest generates a "aws/request.Request" representing the
3779// client's request for the UpdateCallAnalyticsCategory operation. The "output" return
3780// value will be populated with the request's response once the request completes
3781// successfully.
3782//
3783// Use "Send" method on the returned Request to send the API call to the service.
3784// the "output" return value is not valid until after Send returns without error.
3785//
3786// See UpdateCallAnalyticsCategory for more information on using the UpdateCallAnalyticsCategory
3787// API call, and error handling.
3788//
3789// This method is useful when you want to inject custom logic or configuration
3790// into the SDK's request lifecycle. Such as custom headers, or retry logic.
3791//
3792//
3793//    // Example sending a request using the UpdateCallAnalyticsCategoryRequest method.
3794//    req, resp := client.UpdateCallAnalyticsCategoryRequest(params)
3795//
3796//    err := req.Send()
3797//    if err == nil { // resp is now filled
3798//        fmt.Println(resp)
3799//    }
3800//
3801// See also, https://docs.aws.amazon.com/goto/WebAPI/transcribe-2017-10-26/UpdateCallAnalyticsCategory
3802func (c *TranscribeService) UpdateCallAnalyticsCategoryRequest(input *UpdateCallAnalyticsCategoryInput) (req *request.Request, output *UpdateCallAnalyticsCategoryOutput) {
3803	op := &request.Operation{
3804		Name:       opUpdateCallAnalyticsCategory,
3805		HTTPMethod: "POST",
3806		HTTPPath:   "/",
3807	}
3808
3809	if input == nil {
3810		input = &UpdateCallAnalyticsCategoryInput{}
3811	}
3812
3813	output = &UpdateCallAnalyticsCategoryOutput{}
3814	req = c.newRequest(op, input, output)
3815	return
3816}
3817
3818// UpdateCallAnalyticsCategory API operation for Amazon Transcribe Service.
3819//
3820// Updates the call analytics category with new values. The UpdateCallAnalyticsCategory
3821// operation overwrites all of the existing information with the values that
3822// you provide in the request.
3823//
3824// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
3825// with awserr.Error's Code and Message methods to get detailed information about
3826// the error.
3827//
3828// See the AWS API reference guide for Amazon Transcribe Service's
3829// API operation UpdateCallAnalyticsCategory for usage and error information.
3830//
3831// Returned Error Types:
3832//   * BadRequestException
3833//   Your request didn't pass one or more validation tests. For example, if the
3834//   entity that you're trying to delete doesn't exist or if it is in a non-terminal
3835//   state (for example, it's "in progress"). See the exception Message field
3836//   for more information.
3837//
3838//   * LimitExceededException
3839//   Either you have sent too many requests or your input file is too long. Wait
3840//   before you resend your request, or use a smaller file and resend the request.
3841//
3842//   * InternalFailureException
3843//   There was an internal error. Check the error message and try your request
3844//   again.
3845//
3846//   * NotFoundException
3847//   We can't find the requested resource. Check the name and try your request
3848//   again.
3849//
3850//   * ConflictException
3851//   There is already a resource with that name.
3852//
3853// See also, https://docs.aws.amazon.com/goto/WebAPI/transcribe-2017-10-26/UpdateCallAnalyticsCategory
3854func (c *TranscribeService) UpdateCallAnalyticsCategory(input *UpdateCallAnalyticsCategoryInput) (*UpdateCallAnalyticsCategoryOutput, error) {
3855	req, out := c.UpdateCallAnalyticsCategoryRequest(input)
3856	return out, req.Send()
3857}
3858
3859// UpdateCallAnalyticsCategoryWithContext is the same as UpdateCallAnalyticsCategory with the addition of
3860// the ability to pass a context and additional request options.
3861//
3862// See UpdateCallAnalyticsCategory for details on how to use this API operation.
3863//
3864// The context must be non-nil and will be used for request cancellation. If
3865// the context is nil a panic will occur. In the future the SDK may create
3866// sub-contexts for http.Requests. See https://golang.org/pkg/context/
3867// for more information on using Contexts.
3868func (c *TranscribeService) UpdateCallAnalyticsCategoryWithContext(ctx aws.Context, input *UpdateCallAnalyticsCategoryInput, opts ...request.Option) (*UpdateCallAnalyticsCategoryOutput, error) {
3869	req, out := c.UpdateCallAnalyticsCategoryRequest(input)
3870	req.SetContext(ctx)
3871	req.ApplyOptions(opts...)
3872	return out, req.Send()
3873}
3874
3875const opUpdateMedicalVocabulary = "UpdateMedicalVocabulary"
3876
3877// UpdateMedicalVocabularyRequest generates a "aws/request.Request" representing the
3878// client's request for the UpdateMedicalVocabulary operation. The "output" return
3879// value will be populated with the request's response once the request completes
3880// successfully.
3881//
3882// Use "Send" method on the returned Request to send the API call to the service.
3883// the "output" return value is not valid until after Send returns without error.
3884//
3885// See UpdateMedicalVocabulary for more information on using the UpdateMedicalVocabulary
3886// API call, and error handling.
3887//
3888// This method is useful when you want to inject custom logic or configuration
3889// into the SDK's request lifecycle. Such as custom headers, or retry logic.
3890//
3891//
3892//    // Example sending a request using the UpdateMedicalVocabularyRequest method.
3893//    req, resp := client.UpdateMedicalVocabularyRequest(params)
3894//
3895//    err := req.Send()
3896//    if err == nil { // resp is now filled
3897//        fmt.Println(resp)
3898//    }
3899//
3900// See also, https://docs.aws.amazon.com/goto/WebAPI/transcribe-2017-10-26/UpdateMedicalVocabulary
3901func (c *TranscribeService) UpdateMedicalVocabularyRequest(input *UpdateMedicalVocabularyInput) (req *request.Request, output *UpdateMedicalVocabularyOutput) {
3902	op := &request.Operation{
3903		Name:       opUpdateMedicalVocabulary,
3904		HTTPMethod: "POST",
3905		HTTPPath:   "/",
3906	}
3907
3908	if input == nil {
3909		input = &UpdateMedicalVocabularyInput{}
3910	}
3911
3912	output = &UpdateMedicalVocabularyOutput{}
3913	req = c.newRequest(op, input, output)
3914	return
3915}
3916
3917// UpdateMedicalVocabulary API operation for Amazon Transcribe Service.
3918//
3919// Updates a vocabulary with new values that you provide in a different text
3920// file from the one you used to create the vocabulary. The UpdateMedicalVocabulary
3921// operation overwrites all of the existing information with the values that
3922// you provide in the request.
3923//
3924// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
3925// with awserr.Error's Code and Message methods to get detailed information about
3926// the error.
3927//
3928// See the AWS API reference guide for Amazon Transcribe Service's
3929// API operation UpdateMedicalVocabulary for usage and error information.
3930//
3931// Returned Error Types:
3932//   * BadRequestException
3933//   Your request didn't pass one or more validation tests. For example, if the
3934//   entity that you're trying to delete doesn't exist or if it is in a non-terminal
3935//   state (for example, it's "in progress"). See the exception Message field
3936//   for more information.
3937//
3938//   * LimitExceededException
3939//   Either you have sent too many requests or your input file is too long. Wait
3940//   before you resend your request, or use a smaller file and resend the request.
3941//
3942//   * InternalFailureException
3943//   There was an internal error. Check the error message and try your request
3944//   again.
3945//
3946//   * NotFoundException
3947//   We can't find the requested resource. Check the name and try your request
3948//   again.
3949//
3950//   * ConflictException
3951//   There is already a resource with that name.
3952//
3953// See also, https://docs.aws.amazon.com/goto/WebAPI/transcribe-2017-10-26/UpdateMedicalVocabulary
3954func (c *TranscribeService) UpdateMedicalVocabulary(input *UpdateMedicalVocabularyInput) (*UpdateMedicalVocabularyOutput, error) {
3955	req, out := c.UpdateMedicalVocabularyRequest(input)
3956	return out, req.Send()
3957}
3958
3959// UpdateMedicalVocabularyWithContext is the same as UpdateMedicalVocabulary with the addition of
3960// the ability to pass a context and additional request options.
3961//
3962// See UpdateMedicalVocabulary for details on how to use this API operation.
3963//
3964// The context must be non-nil and will be used for request cancellation. If
3965// the context is nil a panic will occur. In the future the SDK may create
3966// sub-contexts for http.Requests. See https://golang.org/pkg/context/
3967// for more information on using Contexts.
3968func (c *TranscribeService) UpdateMedicalVocabularyWithContext(ctx aws.Context, input *UpdateMedicalVocabularyInput, opts ...request.Option) (*UpdateMedicalVocabularyOutput, error) {
3969	req, out := c.UpdateMedicalVocabularyRequest(input)
3970	req.SetContext(ctx)
3971	req.ApplyOptions(opts...)
3972	return out, req.Send()
3973}
3974
3975const opUpdateVocabulary = "UpdateVocabulary"
3976
3977// UpdateVocabularyRequest generates a "aws/request.Request" representing the
3978// client's request for the UpdateVocabulary operation. The "output" return
3979// value will be populated with the request's response once the request completes
3980// successfully.
3981//
3982// Use "Send" method on the returned Request to send the API call to the service.
3983// the "output" return value is not valid until after Send returns without error.
3984//
3985// See UpdateVocabulary for more information on using the UpdateVocabulary
3986// API call, and error handling.
3987//
3988// This method is useful when you want to inject custom logic or configuration
3989// into the SDK's request lifecycle. Such as custom headers, or retry logic.
3990//
3991//
3992//    // Example sending a request using the UpdateVocabularyRequest method.
3993//    req, resp := client.UpdateVocabularyRequest(params)
3994//
3995//    err := req.Send()
3996//    if err == nil { // resp is now filled
3997//        fmt.Println(resp)
3998//    }
3999//
4000// See also, https://docs.aws.amazon.com/goto/WebAPI/transcribe-2017-10-26/UpdateVocabulary
4001func (c *TranscribeService) UpdateVocabularyRequest(input *UpdateVocabularyInput) (req *request.Request, output *UpdateVocabularyOutput) {
4002	op := &request.Operation{
4003		Name:       opUpdateVocabulary,
4004		HTTPMethod: "POST",
4005		HTTPPath:   "/",
4006	}
4007
4008	if input == nil {
4009		input = &UpdateVocabularyInput{}
4010	}
4011
4012	output = &UpdateVocabularyOutput{}
4013	req = c.newRequest(op, input, output)
4014	return
4015}
4016
4017// UpdateVocabulary API operation for Amazon Transcribe Service.
4018//
4019// Updates an existing vocabulary with new values. The UpdateVocabulary operation
4020// overwrites all of the existing information with the values that you provide
4021// in the request.
4022//
4023// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
4024// with awserr.Error's Code and Message methods to get detailed information about
4025// the error.
4026//
4027// See the AWS API reference guide for Amazon Transcribe Service's
4028// API operation UpdateVocabulary for usage and error information.
4029//
4030// Returned Error Types:
4031//   * BadRequestException
4032//   Your request didn't pass one or more validation tests. For example, if the
4033//   entity that you're trying to delete doesn't exist or if it is in a non-terminal
4034//   state (for example, it's "in progress"). See the exception Message field
4035//   for more information.
4036//
4037//   * LimitExceededException
4038//   Either you have sent too many requests or your input file is too long. Wait
4039//   before you resend your request, or use a smaller file and resend the request.
4040//
4041//   * InternalFailureException
4042//   There was an internal error. Check the error message and try your request
4043//   again.
4044//
4045//   * NotFoundException
4046//   We can't find the requested resource. Check the name and try your request
4047//   again.
4048//
4049//   * ConflictException
4050//   There is already a resource with that name.
4051//
4052// See also, https://docs.aws.amazon.com/goto/WebAPI/transcribe-2017-10-26/UpdateVocabulary
4053func (c *TranscribeService) UpdateVocabulary(input *UpdateVocabularyInput) (*UpdateVocabularyOutput, error) {
4054	req, out := c.UpdateVocabularyRequest(input)
4055	return out, req.Send()
4056}
4057
4058// UpdateVocabularyWithContext is the same as UpdateVocabulary with the addition of
4059// the ability to pass a context and additional request options.
4060//
4061// See UpdateVocabulary for details on how to use this API operation.
4062//
4063// The context must be non-nil and will be used for request cancellation. If
4064// the context is nil a panic will occur. In the future the SDK may create
4065// sub-contexts for http.Requests. See https://golang.org/pkg/context/
4066// for more information on using Contexts.
4067func (c *TranscribeService) UpdateVocabularyWithContext(ctx aws.Context, input *UpdateVocabularyInput, opts ...request.Option) (*UpdateVocabularyOutput, error) {
4068	req, out := c.UpdateVocabularyRequest(input)
4069	req.SetContext(ctx)
4070	req.ApplyOptions(opts...)
4071	return out, req.Send()
4072}
4073
4074const opUpdateVocabularyFilter = "UpdateVocabularyFilter"
4075
4076// UpdateVocabularyFilterRequest generates a "aws/request.Request" representing the
4077// client's request for the UpdateVocabularyFilter operation. The "output" return
4078// value will be populated with the request's response once the request completes
4079// successfully.
4080//
4081// Use "Send" method on the returned Request to send the API call to the service.
4082// the "output" return value is not valid until after Send returns without error.
4083//
4084// See UpdateVocabularyFilter for more information on using the UpdateVocabularyFilter
4085// API call, and error handling.
4086//
4087// This method is useful when you want to inject custom logic or configuration
4088// into the SDK's request lifecycle. Such as custom headers, or retry logic.
4089//
4090//
4091//    // Example sending a request using the UpdateVocabularyFilterRequest method.
4092//    req, resp := client.UpdateVocabularyFilterRequest(params)
4093//
4094//    err := req.Send()
4095//    if err == nil { // resp is now filled
4096//        fmt.Println(resp)
4097//    }
4098//
4099// See also, https://docs.aws.amazon.com/goto/WebAPI/transcribe-2017-10-26/UpdateVocabularyFilter
4100func (c *TranscribeService) UpdateVocabularyFilterRequest(input *UpdateVocabularyFilterInput) (req *request.Request, output *UpdateVocabularyFilterOutput) {
4101	op := &request.Operation{
4102		Name:       opUpdateVocabularyFilter,
4103		HTTPMethod: "POST",
4104		HTTPPath:   "/",
4105	}
4106
4107	if input == nil {
4108		input = &UpdateVocabularyFilterInput{}
4109	}
4110
4111	output = &UpdateVocabularyFilterOutput{}
4112	req = c.newRequest(op, input, output)
4113	return
4114}
4115
4116// UpdateVocabularyFilter API operation for Amazon Transcribe Service.
4117//
4118// Updates a vocabulary filter with a new list of filtered words.
4119//
4120// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
4121// with awserr.Error's Code and Message methods to get detailed information about
4122// the error.
4123//
4124// See the AWS API reference guide for Amazon Transcribe Service's
4125// API operation UpdateVocabularyFilter for usage and error information.
4126//
4127// Returned Error Types:
4128//   * BadRequestException
4129//   Your request didn't pass one or more validation tests. For example, if the
4130//   entity that you're trying to delete doesn't exist or if it is in a non-terminal
4131//   state (for example, it's "in progress"). See the exception Message field
4132//   for more information.
4133//
4134//   * LimitExceededException
4135//   Either you have sent too many requests or your input file is too long. Wait
4136//   before you resend your request, or use a smaller file and resend the request.
4137//
4138//   * InternalFailureException
4139//   There was an internal error. Check the error message and try your request
4140//   again.
4141//
4142//   * NotFoundException
4143//   We can't find the requested resource. Check the name and try your request
4144//   again.
4145//
4146// See also, https://docs.aws.amazon.com/goto/WebAPI/transcribe-2017-10-26/UpdateVocabularyFilter
4147func (c *TranscribeService) UpdateVocabularyFilter(input *UpdateVocabularyFilterInput) (*UpdateVocabularyFilterOutput, error) {
4148	req, out := c.UpdateVocabularyFilterRequest(input)
4149	return out, req.Send()
4150}
4151
4152// UpdateVocabularyFilterWithContext is the same as UpdateVocabularyFilter with the addition of
4153// the ability to pass a context and additional request options.
4154//
4155// See UpdateVocabularyFilter for details on how to use this API operation.
4156//
4157// The context must be non-nil and will be used for request cancellation. If
4158// the context is nil a panic will occur. In the future the SDK may create
4159// sub-contexts for http.Requests. See https://golang.org/pkg/context/
4160// for more information on using Contexts.
4161func (c *TranscribeService) UpdateVocabularyFilterWithContext(ctx aws.Context, input *UpdateVocabularyFilterInput, opts ...request.Option) (*UpdateVocabularyFilterOutput, error) {
4162	req, out := c.UpdateVocabularyFilterRequest(input)
4163	req.SetContext(ctx)
4164	req.ApplyOptions(opts...)
4165	return out, req.Send()
4166}
4167
4168// A time range, set in seconds, between two points in the call.
4169type AbsoluteTimeRange struct {
4170	_ struct{} `type:"structure"`
4171
4172	// A value that indicates the end of the time range in milliseconds. To set
4173	// absolute time range, you must specify a start time and an end time. For example,
4174	// if you specify the following values:
4175	//
4176	//    * StartTime - 10000
4177	//
4178	//    * Endtime - 50000
4179	//
4180	// The time range is set between 10,000 milliseconds and 50,000 milliseconds
4181	// into the call.
4182	EndTime *int64 `type:"long"`
4183
4184	// A time range from the beginning of the call to the value that you've specified.
4185	// For example, if you specify 100000, the time range is set to the first 100,000
4186	// milliseconds of the call.
4187	First *int64 `type:"long"`
4188
4189	// A time range from the value that you've specified to the end of the call.
4190	// For example, if you specify 100000, the time range is set to the last 100,000
4191	// milliseconds of the call.
4192	Last *int64 `type:"long"`
4193
4194	// A value that indicates the beginning of the time range in seconds. To set
4195	// absolute time range, you must specify a start time and an end time. For example,
4196	// if you specify the following values:
4197	//
4198	//    * StartTime - 10000
4199	//
4200	//    * Endtime - 50000
4201	//
4202	// The time range is set between 10,000 milliseconds and 50,000 milliseconds
4203	// into the call.
4204	StartTime *int64 `type:"long"`
4205}
4206
4207// String returns the string representation.
4208//
4209// API parameter values that are decorated as "sensitive" in the API will not
4210// be included in the string output. The member name will be present, but the
4211// value will be replaced with "sensitive".
4212func (s AbsoluteTimeRange) String() string {
4213	return awsutil.Prettify(s)
4214}
4215
4216// GoString returns the string representation.
4217//
4218// API parameter values that are decorated as "sensitive" in the API will not
4219// be included in the string output. The member name will be present, but the
4220// value will be replaced with "sensitive".
4221func (s AbsoluteTimeRange) GoString() string {
4222	return s.String()
4223}
4224
4225// SetEndTime sets the EndTime field's value.
4226func (s *AbsoluteTimeRange) SetEndTime(v int64) *AbsoluteTimeRange {
4227	s.EndTime = &v
4228	return s
4229}
4230
4231// SetFirst sets the First field's value.
4232func (s *AbsoluteTimeRange) SetFirst(v int64) *AbsoluteTimeRange {
4233	s.First = &v
4234	return s
4235}
4236
4237// SetLast sets the Last field's value.
4238func (s *AbsoluteTimeRange) SetLast(v int64) *AbsoluteTimeRange {
4239	s.Last = &v
4240	return s
4241}
4242
4243// SetStartTime sets the StartTime field's value.
4244func (s *AbsoluteTimeRange) SetStartTime(v int64) *AbsoluteTimeRange {
4245	s.StartTime = &v
4246	return s
4247}
4248
4249// Your request didn't pass one or more validation tests. For example, if the
4250// entity that you're trying to delete doesn't exist or if it is in a non-terminal
4251// state (for example, it's "in progress"). See the exception Message field
4252// for more information.
4253type BadRequestException struct {
4254	_            struct{}                  `type:"structure"`
4255	RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"`
4256
4257	Message_ *string `locationName:"Message" type:"string"`
4258}
4259
4260// String returns the string representation.
4261//
4262// API parameter values that are decorated as "sensitive" in the API will not
4263// be included in the string output. The member name will be present, but the
4264// value will be replaced with "sensitive".
4265func (s BadRequestException) String() string {
4266	return awsutil.Prettify(s)
4267}
4268
4269// GoString returns the string representation.
4270//
4271// API parameter values that are decorated as "sensitive" in the API will not
4272// be included in the string output. The member name will be present, but the
4273// value will be replaced with "sensitive".
4274func (s BadRequestException) GoString() string {
4275	return s.String()
4276}
4277
4278func newErrorBadRequestException(v protocol.ResponseMetadata) error {
4279	return &BadRequestException{
4280		RespMetadata: v,
4281	}
4282}
4283
4284// Code returns the exception type name.
4285func (s *BadRequestException) Code() string {
4286	return "BadRequestException"
4287}
4288
4289// Message returns the exception's message.
4290func (s *BadRequestException) Message() string {
4291	if s.Message_ != nil {
4292		return *s.Message_
4293	}
4294	return ""
4295}
4296
4297// OrigErr always returns nil, satisfies awserr.Error interface.
4298func (s *BadRequestException) OrigErr() error {
4299	return nil
4300}
4301
4302func (s *BadRequestException) Error() string {
4303	return fmt.Sprintf("%s: %s", s.Code(), s.Message())
4304}
4305
4306// Status code returns the HTTP status code for the request's response error.
4307func (s *BadRequestException) StatusCode() int {
4308	return s.RespMetadata.StatusCode
4309}
4310
4311// RequestID returns the service's response RequestID for request.
4312func (s *BadRequestException) RequestID() string {
4313	return s.RespMetadata.RequestID
4314}
4315
4316// Describes an asynchronous analytics job that was created with the StartAnalyticsJob
4317// operation.
4318type CallAnalyticsJob struct {
4319	_ struct{} `type:"structure"`
4320
4321	// The name of the call analytics job.
4322	CallAnalyticsJobName *string `min:"1" type:"string"`
4323
4324	// The status of the analytics job.
4325	CallAnalyticsJobStatus *string `type:"string" enum:"CallAnalyticsJobStatus"`
4326
4327	// Shows numeric values to indicate the channel assigned to the agent's audio
4328	// and the channel assigned to the customer's audio.
4329	ChannelDefinitions []*ChannelDefinition `min:"2" type:"list"`
4330
4331	// A timestamp that shows when the analytics job was completed.
4332	CompletionTime *time.Time `type:"timestamp"`
4333
4334	// A timestamp that shows when the analytics job was created.
4335	CreationTime *time.Time `type:"timestamp"`
4336
4337	// The Amazon Resource Number (ARN) that you use to access the analytics job.
4338	// ARNs have the format arn:partition:service:region:account-id:resource-type/resource-id.
4339	DataAccessRoleArn *string `min:"20" type:"string"`
4340
4341	// If the AnalyticsJobStatus is FAILED, this field contains information about
4342	// why the job failed.
4343	//
4344	// The FailureReason field can contain one of the following values:
4345	//
4346	//    * Unsupported media format: The media format specified in the MediaFormat
4347	//    field of the request isn't valid. See the description of the MediaFormat
4348	//    field for a list of valid values.
4349	//
4350	//    * The media format provided does not match the detected media format:
4351	//    The media format of the audio file doesn't match the format specified
4352	//    in the MediaFormat field in the request. Check the media format of your
4353	//    media file and make sure the two values match.
4354	//
4355	//    * Invalid sample rate for audio file: The sample rate specified in the
4356	//    MediaSampleRateHertz of the request isn't valid. The sample rate must
4357	//    be between 8,000 and 48,000 Hertz.
4358	//
4359	//    * The sample rate provided does not match the detected sample rate: The
4360	//    sample rate in the audio file doesn't match the sample rate specified
4361	//    in the MediaSampleRateHertz field in the request. Check the sample rate
4362	//    of your media file and make sure that the two values match.
4363	//
4364	//    * Invalid file size: file size too large: The size of your audio file
4365	//    is larger than what Amazon Transcribe Medical can process. For more information,
4366	//    see Guidelines and Quotas in the Amazon Transcribe Medical Guide.
4367	//
4368	//    * Invalid number of channels: number of channels too large: Your audio
4369	//    contains more channels than Amazon Transcribe Medical is configured to
4370	//    process. To request additional channels, see Amazon Transcribe Medical
4371	//    Endpoints and Quotas in the Amazon Web Services General Reference (https://docs.aws.amazon.com/general/latest/gr/Welcome.html).
4372	FailureReason *string `type:"string"`
4373
4374	// A value between zero and one that Amazon Transcribe assigned to the language
4375	// that it identified in the source audio. This value appears only when you
4376	// don't provide a single language code. Larger values indicate that Amazon
4377	// Transcribe has higher confidence in the language that it identified
4378	IdentifiedLanguageScore *float64 `type:"float"`
4379
4380	// If you know the language spoken between the customer and the agent, specify
4381	// a language code for this field.
4382	//
4383	// If you don't know the language, you can leave this field blank, and Amazon
4384	// Transcribe will use machine learning to automatically identify the language.
4385	// To improve the accuracy of language identification, you can provide an array
4386	// containing the possible language codes for the language spoken in your audio.
4387	// Refer to Supported languages and language-specific features (https://docs.aws.amazon.com/transcribe/latest/dg/how-it-works.html)
4388	// for additional information.
4389	LanguageCode *string `type:"string" enum:"LanguageCode"`
4390
4391	// Describes the input media file in a transcription request.
4392	Media *Media `type:"structure"`
4393
4394	// The format of the input audio file. Note: for call analytics jobs, only the
4395	// following media formats are supported: MP3, MP4, WAV, FLAC, OGG, and WebM.
4396	MediaFormat *string `type:"string" enum:"MediaFormat"`
4397
4398	// The sample rate, in Hertz, of the audio.
4399	MediaSampleRateHertz *int64 `min:"8000" type:"integer"`
4400
4401	// Provides information about the settings used to run a transcription job.
4402	Settings *CallAnalyticsJobSettings `type:"structure"`
4403
4404	// A timestamp that shows when the analytics job started processing.
4405	StartTime *time.Time `type:"timestamp"`
4406
4407	// Identifies the location of a transcription.
4408	Transcript *Transcript `type:"structure"`
4409}
4410
4411// String returns the string representation.
4412//
4413// API parameter values that are decorated as "sensitive" in the API will not
4414// be included in the string output. The member name will be present, but the
4415// value will be replaced with "sensitive".
4416func (s CallAnalyticsJob) String() string {
4417	return awsutil.Prettify(s)
4418}
4419
4420// GoString returns the string representation.
4421//
4422// API parameter values that are decorated as "sensitive" in the API will not
4423// be included in the string output. The member name will be present, but the
4424// value will be replaced with "sensitive".
4425func (s CallAnalyticsJob) GoString() string {
4426	return s.String()
4427}
4428
4429// SetCallAnalyticsJobName sets the CallAnalyticsJobName field's value.
4430func (s *CallAnalyticsJob) SetCallAnalyticsJobName(v string) *CallAnalyticsJob {
4431	s.CallAnalyticsJobName = &v
4432	return s
4433}
4434
4435// SetCallAnalyticsJobStatus sets the CallAnalyticsJobStatus field's value.
4436func (s *CallAnalyticsJob) SetCallAnalyticsJobStatus(v string) *CallAnalyticsJob {
4437	s.CallAnalyticsJobStatus = &v
4438	return s
4439}
4440
4441// SetChannelDefinitions sets the ChannelDefinitions field's value.
4442func (s *CallAnalyticsJob) SetChannelDefinitions(v []*ChannelDefinition) *CallAnalyticsJob {
4443	s.ChannelDefinitions = v
4444	return s
4445}
4446
4447// SetCompletionTime sets the CompletionTime field's value.
4448func (s *CallAnalyticsJob) SetCompletionTime(v time.Time) *CallAnalyticsJob {
4449	s.CompletionTime = &v
4450	return s
4451}
4452
4453// SetCreationTime sets the CreationTime field's value.
4454func (s *CallAnalyticsJob) SetCreationTime(v time.Time) *CallAnalyticsJob {
4455	s.CreationTime = &v
4456	return s
4457}
4458
4459// SetDataAccessRoleArn sets the DataAccessRoleArn field's value.
4460func (s *CallAnalyticsJob) SetDataAccessRoleArn(v string) *CallAnalyticsJob {
4461	s.DataAccessRoleArn = &v
4462	return s
4463}
4464
4465// SetFailureReason sets the FailureReason field's value.
4466func (s *CallAnalyticsJob) SetFailureReason(v string) *CallAnalyticsJob {
4467	s.FailureReason = &v
4468	return s
4469}
4470
4471// SetIdentifiedLanguageScore sets the IdentifiedLanguageScore field's value.
4472func (s *CallAnalyticsJob) SetIdentifiedLanguageScore(v float64) *CallAnalyticsJob {
4473	s.IdentifiedLanguageScore = &v
4474	return s
4475}
4476
4477// SetLanguageCode sets the LanguageCode field's value.
4478func (s *CallAnalyticsJob) SetLanguageCode(v string) *CallAnalyticsJob {
4479	s.LanguageCode = &v
4480	return s
4481}
4482
4483// SetMedia sets the Media field's value.
4484func (s *CallAnalyticsJob) SetMedia(v *Media) *CallAnalyticsJob {
4485	s.Media = v
4486	return s
4487}
4488
4489// SetMediaFormat sets the MediaFormat field's value.
4490func (s *CallAnalyticsJob) SetMediaFormat(v string) *CallAnalyticsJob {
4491	s.MediaFormat = &v
4492	return s
4493}
4494
4495// SetMediaSampleRateHertz sets the MediaSampleRateHertz field's value.
4496func (s *CallAnalyticsJob) SetMediaSampleRateHertz(v int64) *CallAnalyticsJob {
4497	s.MediaSampleRateHertz = &v
4498	return s
4499}
4500
4501// SetSettings sets the Settings field's value.
4502func (s *CallAnalyticsJob) SetSettings(v *CallAnalyticsJobSettings) *CallAnalyticsJob {
4503	s.Settings = v
4504	return s
4505}
4506
4507// SetStartTime sets the StartTime field's value.
4508func (s *CallAnalyticsJob) SetStartTime(v time.Time) *CallAnalyticsJob {
4509	s.StartTime = &v
4510	return s
4511}
4512
4513// SetTranscript sets the Transcript field's value.
4514func (s *CallAnalyticsJob) SetTranscript(v *Transcript) *CallAnalyticsJob {
4515	s.Transcript = v
4516	return s
4517}
4518
4519// Provides optional settings for the CallAnalyticsJob operation.
4520type CallAnalyticsJobSettings struct {
4521	_ struct{} `type:"structure"`
4522
4523	// Settings for content redaction within a transcription job.
4524	ContentRedaction *ContentRedaction `type:"structure"`
4525
4526	// The language identification settings associated with your call analytics
4527	// job. These settings include VocabularyName, VocabularyFilterName, and LanguageModelName.
4528	LanguageIdSettings map[string]*LanguageIdSettings `min:"1" type:"map"`
4529
4530	// The structure used to describe a custom language model.
4531	LanguageModelName *string `min:"1" type:"string"`
4532
4533	// When you run a call analytics job, you can specify the language spoken in
4534	// the audio, or you can have Amazon Transcribe identify the language for you.
4535	//
4536	// To specify a language, specify an array with one language code. If you don't
4537	// know the language, you can leave this field blank and Amazon Transcribe will
4538	// use machine learning to identify the language for you. To improve the ability
4539	// of Amazon Transcribe to correctly identify the language, you can provide
4540	// an array of the languages that can be present in the audio. Refer to Supported
4541	// languages and language-specific features (https://docs.aws.amazon.com/transcribe/latest/dg/how-it-works.html)
4542	// for additional information.
4543	LanguageOptions []*string `min:"1" type:"list"`
4544
4545	// Set to mask to remove filtered text from the transcript and replace it with
4546	// three asterisks ("***") as placeholder text. Set to remove to remove filtered
4547	// text from the transcript without using placeholder text. Set to tag to mark
4548	// the word in the transcription output that matches the vocabulary filter.
4549	// When you set the filter method to tag, the words matching your vocabulary
4550	// filter are not masked or removed.
4551	VocabularyFilterMethod *string `type:"string" enum:"VocabularyFilterMethod"`
4552
4553	// The name of the vocabulary filter to use when running a call analytics job.
4554	// The filter that you specify must have the same language code as the analytics
4555	// job.
4556	VocabularyFilterName *string `min:"1" type:"string"`
4557
4558	// The name of a vocabulary to use when processing the call analytics job.
4559	VocabularyName *string `min:"1" type:"string"`
4560}
4561
4562// String returns the string representation.
4563//
4564// API parameter values that are decorated as "sensitive" in the API will not
4565// be included in the string output. The member name will be present, but the
4566// value will be replaced with "sensitive".
4567func (s CallAnalyticsJobSettings) String() string {
4568	return awsutil.Prettify(s)
4569}
4570
4571// GoString returns the string representation.
4572//
4573// API parameter values that are decorated as "sensitive" in the API will not
4574// be included in the string output. The member name will be present, but the
4575// value will be replaced with "sensitive".
4576func (s CallAnalyticsJobSettings) GoString() string {
4577	return s.String()
4578}
4579
4580// Validate inspects the fields of the type to determine if they are valid.
4581func (s *CallAnalyticsJobSettings) Validate() error {
4582	invalidParams := request.ErrInvalidParams{Context: "CallAnalyticsJobSettings"}
4583	if s.LanguageIdSettings != nil && len(s.LanguageIdSettings) < 1 {
4584		invalidParams.Add(request.NewErrParamMinLen("LanguageIdSettings", 1))
4585	}
4586	if s.LanguageModelName != nil && len(*s.LanguageModelName) < 1 {
4587		invalidParams.Add(request.NewErrParamMinLen("LanguageModelName", 1))
4588	}
4589	if s.LanguageOptions != nil && len(s.LanguageOptions) < 1 {
4590		invalidParams.Add(request.NewErrParamMinLen("LanguageOptions", 1))
4591	}
4592	if s.VocabularyFilterName != nil && len(*s.VocabularyFilterName) < 1 {
4593		invalidParams.Add(request.NewErrParamMinLen("VocabularyFilterName", 1))
4594	}
4595	if s.VocabularyName != nil && len(*s.VocabularyName) < 1 {
4596		invalidParams.Add(request.NewErrParamMinLen("VocabularyName", 1))
4597	}
4598	if s.ContentRedaction != nil {
4599		if err := s.ContentRedaction.Validate(); err != nil {
4600			invalidParams.AddNested("ContentRedaction", err.(request.ErrInvalidParams))
4601		}
4602	}
4603	if s.LanguageIdSettings != nil {
4604		for i, v := range s.LanguageIdSettings {
4605			if v == nil {
4606				continue
4607			}
4608			if err := v.Validate(); err != nil {
4609				invalidParams.AddNested(fmt.Sprintf("%s[%v]", "LanguageIdSettings", i), err.(request.ErrInvalidParams))
4610			}
4611		}
4612	}
4613
4614	if invalidParams.Len() > 0 {
4615		return invalidParams
4616	}
4617	return nil
4618}
4619
4620// SetContentRedaction sets the ContentRedaction field's value.
4621func (s *CallAnalyticsJobSettings) SetContentRedaction(v *ContentRedaction) *CallAnalyticsJobSettings {
4622	s.ContentRedaction = v
4623	return s
4624}
4625
4626// SetLanguageIdSettings sets the LanguageIdSettings field's value.
4627func (s *CallAnalyticsJobSettings) SetLanguageIdSettings(v map[string]*LanguageIdSettings) *CallAnalyticsJobSettings {
4628	s.LanguageIdSettings = v
4629	return s
4630}
4631
4632// SetLanguageModelName sets the LanguageModelName field's value.
4633func (s *CallAnalyticsJobSettings) SetLanguageModelName(v string) *CallAnalyticsJobSettings {
4634	s.LanguageModelName = &v
4635	return s
4636}
4637
4638// SetLanguageOptions sets the LanguageOptions field's value.
4639func (s *CallAnalyticsJobSettings) SetLanguageOptions(v []*string) *CallAnalyticsJobSettings {
4640	s.LanguageOptions = v
4641	return s
4642}
4643
4644// SetVocabularyFilterMethod sets the VocabularyFilterMethod field's value.
4645func (s *CallAnalyticsJobSettings) SetVocabularyFilterMethod(v string) *CallAnalyticsJobSettings {
4646	s.VocabularyFilterMethod = &v
4647	return s
4648}
4649
4650// SetVocabularyFilterName sets the VocabularyFilterName field's value.
4651func (s *CallAnalyticsJobSettings) SetVocabularyFilterName(v string) *CallAnalyticsJobSettings {
4652	s.VocabularyFilterName = &v
4653	return s
4654}
4655
4656// SetVocabularyName sets the VocabularyName field's value.
4657func (s *CallAnalyticsJobSettings) SetVocabularyName(v string) *CallAnalyticsJobSettings {
4658	s.VocabularyName = &v
4659	return s
4660}
4661
4662// Provides summary information about a call analytics job.
4663type CallAnalyticsJobSummary struct {
4664	_ struct{} `type:"structure"`
4665
4666	// The name of the call analytics job.
4667	CallAnalyticsJobName *string `min:"1" type:"string"`
4668
4669	// The status of the call analytics job.
4670	CallAnalyticsJobStatus *string `type:"string" enum:"CallAnalyticsJobStatus"`
4671
4672	// A timestamp that shows when the job was completed.
4673	CompletionTime *time.Time `type:"timestamp"`
4674
4675	// A timestamp that shows when the call analytics job was created.
4676	CreationTime *time.Time `type:"timestamp"`
4677
4678	// If the CallAnalyticsJobStatus is FAILED, a description of the error.
4679	FailureReason *string `type:"string"`
4680
4681	// The language of the transcript in the source audio file.
4682	LanguageCode *string `type:"string" enum:"LanguageCode"`
4683
4684	// A timestamp that shows when the job began processing.
4685	StartTime *time.Time `type:"timestamp"`
4686}
4687
4688// String returns the string representation.
4689//
4690// API parameter values that are decorated as "sensitive" in the API will not
4691// be included in the string output. The member name will be present, but the
4692// value will be replaced with "sensitive".
4693func (s CallAnalyticsJobSummary) String() string {
4694	return awsutil.Prettify(s)
4695}
4696
4697// GoString returns the string representation.
4698//
4699// API parameter values that are decorated as "sensitive" in the API will not
4700// be included in the string output. The member name will be present, but the
4701// value will be replaced with "sensitive".
4702func (s CallAnalyticsJobSummary) GoString() string {
4703	return s.String()
4704}
4705
4706// SetCallAnalyticsJobName sets the CallAnalyticsJobName field's value.
4707func (s *CallAnalyticsJobSummary) SetCallAnalyticsJobName(v string) *CallAnalyticsJobSummary {
4708	s.CallAnalyticsJobName = &v
4709	return s
4710}
4711
4712// SetCallAnalyticsJobStatus sets the CallAnalyticsJobStatus field's value.
4713func (s *CallAnalyticsJobSummary) SetCallAnalyticsJobStatus(v string) *CallAnalyticsJobSummary {
4714	s.CallAnalyticsJobStatus = &v
4715	return s
4716}
4717
4718// SetCompletionTime sets the CompletionTime field's value.
4719func (s *CallAnalyticsJobSummary) SetCompletionTime(v time.Time) *CallAnalyticsJobSummary {
4720	s.CompletionTime = &v
4721	return s
4722}
4723
4724// SetCreationTime sets the CreationTime field's value.
4725func (s *CallAnalyticsJobSummary) SetCreationTime(v time.Time) *CallAnalyticsJobSummary {
4726	s.CreationTime = &v
4727	return s
4728}
4729
4730// SetFailureReason sets the FailureReason field's value.
4731func (s *CallAnalyticsJobSummary) SetFailureReason(v string) *CallAnalyticsJobSummary {
4732	s.FailureReason = &v
4733	return s
4734}
4735
4736// SetLanguageCode sets the LanguageCode field's value.
4737func (s *CallAnalyticsJobSummary) SetLanguageCode(v string) *CallAnalyticsJobSummary {
4738	s.LanguageCode = &v
4739	return s
4740}
4741
4742// SetStartTime sets the StartTime field's value.
4743func (s *CallAnalyticsJobSummary) SetStartTime(v time.Time) *CallAnalyticsJobSummary {
4744	s.StartTime = &v
4745	return s
4746}
4747
4748// An object that contains the rules and additional information about a call
4749// analytics category.
4750type CategoryProperties struct {
4751	_ struct{} `type:"structure"`
4752
4753	// The name of the call analytics category.
4754	CategoryName *string `min:"1" type:"string"`
4755
4756	// A timestamp that shows when the call analytics category was created.
4757	CreateTime *time.Time `type:"timestamp"`
4758
4759	// A timestamp that shows when the call analytics category was most recently
4760	// updated.
4761	LastUpdateTime *time.Time `type:"timestamp"`
4762
4763	// The rules used to create a call analytics category.
4764	Rules []*Rule `min:"1" type:"list"`
4765}
4766
4767// String returns the string representation.
4768//
4769// API parameter values that are decorated as "sensitive" in the API will not
4770// be included in the string output. The member name will be present, but the
4771// value will be replaced with "sensitive".
4772func (s CategoryProperties) String() string {
4773	return awsutil.Prettify(s)
4774}
4775
4776// GoString returns the string representation.
4777//
4778// API parameter values that are decorated as "sensitive" in the API will not
4779// be included in the string output. The member name will be present, but the
4780// value will be replaced with "sensitive".
4781func (s CategoryProperties) GoString() string {
4782	return s.String()
4783}
4784
4785// SetCategoryName sets the CategoryName field's value.
4786func (s *CategoryProperties) SetCategoryName(v string) *CategoryProperties {
4787	s.CategoryName = &v
4788	return s
4789}
4790
4791// SetCreateTime sets the CreateTime field's value.
4792func (s *CategoryProperties) SetCreateTime(v time.Time) *CategoryProperties {
4793	s.CreateTime = &v
4794	return s
4795}
4796
4797// SetLastUpdateTime sets the LastUpdateTime field's value.
4798func (s *CategoryProperties) SetLastUpdateTime(v time.Time) *CategoryProperties {
4799	s.LastUpdateTime = &v
4800	return s
4801}
4802
4803// SetRules sets the Rules field's value.
4804func (s *CategoryProperties) SetRules(v []*Rule) *CategoryProperties {
4805	s.Rules = v
4806	return s
4807}
4808
4809// For a call analytics job, an object that indicates the audio channel that
4810// belongs to the agent and the audio channel that belongs to the customer.
4811type ChannelDefinition struct {
4812	_ struct{} `type:"structure"`
4813
4814	// A value that indicates the audio channel.
4815	ChannelId *int64 `type:"integer"`
4816
4817	// Indicates whether the person speaking on the audio channel is the agent or
4818	// customer.
4819	ParticipantRole *string `type:"string" enum:"ParticipantRole"`
4820}
4821
4822// String returns the string representation.
4823//
4824// API parameter values that are decorated as "sensitive" in the API will not
4825// be included in the string output. The member name will be present, but the
4826// value will be replaced with "sensitive".
4827func (s ChannelDefinition) String() string {
4828	return awsutil.Prettify(s)
4829}
4830
4831// GoString returns the string representation.
4832//
4833// API parameter values that are decorated as "sensitive" in the API will not
4834// be included in the string output. The member name will be present, but the
4835// value will be replaced with "sensitive".
4836func (s ChannelDefinition) GoString() string {
4837	return s.String()
4838}
4839
4840// SetChannelId sets the ChannelId field's value.
4841func (s *ChannelDefinition) SetChannelId(v int64) *ChannelDefinition {
4842	s.ChannelId = &v
4843	return s
4844}
4845
4846// SetParticipantRole sets the ParticipantRole field's value.
4847func (s *ChannelDefinition) SetParticipantRole(v string) *ChannelDefinition {
4848	s.ParticipantRole = &v
4849	return s
4850}
4851
4852// There is already a resource with that name.
4853type ConflictException struct {
4854	_            struct{}                  `type:"structure"`
4855	RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"`
4856
4857	Message_ *string `locationName:"Message" type:"string"`
4858}
4859
4860// String returns the string representation.
4861//
4862// API parameter values that are decorated as "sensitive" in the API will not
4863// be included in the string output. The member name will be present, but the
4864// value will be replaced with "sensitive".
4865func (s ConflictException) String() string {
4866	return awsutil.Prettify(s)
4867}
4868
4869// GoString returns the string representation.
4870//
4871// API parameter values that are decorated as "sensitive" in the API will not
4872// be included in the string output. The member name will be present, but the
4873// value will be replaced with "sensitive".
4874func (s ConflictException) GoString() string {
4875	return s.String()
4876}
4877
4878func newErrorConflictException(v protocol.ResponseMetadata) error {
4879	return &ConflictException{
4880		RespMetadata: v,
4881	}
4882}
4883
4884// Code returns the exception type name.
4885func (s *ConflictException) Code() string {
4886	return "ConflictException"
4887}
4888
4889// Message returns the exception's message.
4890func (s *ConflictException) Message() string {
4891	if s.Message_ != nil {
4892		return *s.Message_
4893	}
4894	return ""
4895}
4896
4897// OrigErr always returns nil, satisfies awserr.Error interface.
4898func (s *ConflictException) OrigErr() error {
4899	return nil
4900}
4901
4902func (s *ConflictException) Error() string {
4903	return fmt.Sprintf("%s: %s", s.Code(), s.Message())
4904}
4905
4906// Status code returns the HTTP status code for the request's response error.
4907func (s *ConflictException) StatusCode() int {
4908	return s.RespMetadata.StatusCode
4909}
4910
4911// RequestID returns the service's response RequestID for request.
4912func (s *ConflictException) RequestID() string {
4913	return s.RespMetadata.RequestID
4914}
4915
4916// Settings for content redaction within a transcription job.
4917type ContentRedaction struct {
4918	_ struct{} `type:"structure"`
4919
4920	// The output transcript file stored in either the default S3 bucket or in a
4921	// bucket you specify.
4922	//
4923	// When you choose redacted Amazon Transcribe outputs only the redacted transcript.
4924	//
4925	// When you choose redacted_and_unredacted Amazon Transcribe outputs both the
4926	// redacted and unredacted transcripts.
4927	//
4928	// RedactionOutput is a required field
4929	RedactionOutput *string `type:"string" required:"true" enum:"RedactionOutput"`
4930
4931	// Request parameter that defines the entities to be redacted. The only accepted
4932	// value is PII.
4933	//
4934	// RedactionType is a required field
4935	RedactionType *string `type:"string" required:"true" enum:"RedactionType"`
4936}
4937
4938// String returns the string representation.
4939//
4940// API parameter values that are decorated as "sensitive" in the API will not
4941// be included in the string output. The member name will be present, but the
4942// value will be replaced with "sensitive".
4943func (s ContentRedaction) String() string {
4944	return awsutil.Prettify(s)
4945}
4946
4947// GoString returns the string representation.
4948//
4949// API parameter values that are decorated as "sensitive" in the API will not
4950// be included in the string output. The member name will be present, but the
4951// value will be replaced with "sensitive".
4952func (s ContentRedaction) GoString() string {
4953	return s.String()
4954}
4955
4956// Validate inspects the fields of the type to determine if they are valid.
4957func (s *ContentRedaction) Validate() error {
4958	invalidParams := request.ErrInvalidParams{Context: "ContentRedaction"}
4959	if s.RedactionOutput == nil {
4960		invalidParams.Add(request.NewErrParamRequired("RedactionOutput"))
4961	}
4962	if s.RedactionType == nil {
4963		invalidParams.Add(request.NewErrParamRequired("RedactionType"))
4964	}
4965
4966	if invalidParams.Len() > 0 {
4967		return invalidParams
4968	}
4969	return nil
4970}
4971
4972// SetRedactionOutput sets the RedactionOutput field's value.
4973func (s *ContentRedaction) SetRedactionOutput(v string) *ContentRedaction {
4974	s.RedactionOutput = &v
4975	return s
4976}
4977
4978// SetRedactionType sets the RedactionType field's value.
4979func (s *ContentRedaction) SetRedactionType(v string) *ContentRedaction {
4980	s.RedactionType = &v
4981	return s
4982}
4983
4984type CreateCallAnalyticsCategoryInput struct {
4985	_ struct{} `type:"structure"`
4986
4987	// The name that you choose for your category when you create it.
4988	//
4989	// CategoryName is a required field
4990	CategoryName *string `min:"1" type:"string" required:"true"`
4991
4992	// To create a category, you must specify between 1 and 20 rules. For each rule,
4993	// you specify a filter to be applied to the attributes of the call. For example,
4994	// you can specify a sentiment filter to detect if the customer's sentiment
4995	// was negative or neutral.
4996	//
4997	// Rules is a required field
4998	Rules []*Rule `min:"1" type:"list" required:"true"`
4999}
5000
5001// String returns the string representation.
5002//
5003// API parameter values that are decorated as "sensitive" in the API will not
5004// be included in the string output. The member name will be present, but the
5005// value will be replaced with "sensitive".
5006func (s CreateCallAnalyticsCategoryInput) String() string {
5007	return awsutil.Prettify(s)
5008}
5009
5010// GoString returns the string representation.
5011//
5012// API parameter values that are decorated as "sensitive" in the API will not
5013// be included in the string output. The member name will be present, but the
5014// value will be replaced with "sensitive".
5015func (s CreateCallAnalyticsCategoryInput) GoString() string {
5016	return s.String()
5017}
5018
5019// Validate inspects the fields of the type to determine if they are valid.
5020func (s *CreateCallAnalyticsCategoryInput) Validate() error {
5021	invalidParams := request.ErrInvalidParams{Context: "CreateCallAnalyticsCategoryInput"}
5022	if s.CategoryName == nil {
5023		invalidParams.Add(request.NewErrParamRequired("CategoryName"))
5024	}
5025	if s.CategoryName != nil && len(*s.CategoryName) < 1 {
5026		invalidParams.Add(request.NewErrParamMinLen("CategoryName", 1))
5027	}
5028	if s.Rules == nil {
5029		invalidParams.Add(request.NewErrParamRequired("Rules"))
5030	}
5031	if s.Rules != nil && len(s.Rules) < 1 {
5032		invalidParams.Add(request.NewErrParamMinLen("Rules", 1))
5033	}
5034	if s.Rules != nil {
5035		for i, v := range s.Rules {
5036			if v == nil {
5037				continue
5038			}
5039			if err := v.Validate(); err != nil {
5040				invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Rules", i), err.(request.ErrInvalidParams))
5041			}
5042		}
5043	}
5044
5045	if invalidParams.Len() > 0 {
5046		return invalidParams
5047	}
5048	return nil
5049}
5050
5051// SetCategoryName sets the CategoryName field's value.
5052func (s *CreateCallAnalyticsCategoryInput) SetCategoryName(v string) *CreateCallAnalyticsCategoryInput {
5053	s.CategoryName = &v
5054	return s
5055}
5056
5057// SetRules sets the Rules field's value.
5058func (s *CreateCallAnalyticsCategoryInput) SetRules(v []*Rule) *CreateCallAnalyticsCategoryInput {
5059	s.Rules = v
5060	return s
5061}
5062
5063type CreateCallAnalyticsCategoryOutput struct {
5064	_ struct{} `type:"structure"`
5065
5066	// The rules and associated metadata used to create a category.
5067	CategoryProperties *CategoryProperties `type:"structure"`
5068}
5069
5070// String returns the string representation.
5071//
5072// API parameter values that are decorated as "sensitive" in the API will not
5073// be included in the string output. The member name will be present, but the
5074// value will be replaced with "sensitive".
5075func (s CreateCallAnalyticsCategoryOutput) String() string {
5076	return awsutil.Prettify(s)
5077}
5078
5079// GoString returns the string representation.
5080//
5081// API parameter values that are decorated as "sensitive" in the API will not
5082// be included in the string output. The member name will be present, but the
5083// value will be replaced with "sensitive".
5084func (s CreateCallAnalyticsCategoryOutput) GoString() string {
5085	return s.String()
5086}
5087
5088// SetCategoryProperties sets the CategoryProperties field's value.
5089func (s *CreateCallAnalyticsCategoryOutput) SetCategoryProperties(v *CategoryProperties) *CreateCallAnalyticsCategoryOutput {
5090	s.CategoryProperties = v
5091	return s
5092}
5093
5094type CreateLanguageModelInput struct {
5095	_ struct{} `type:"structure"`
5096
5097	// The Amazon Transcribe standard language model, or base model used to create
5098	// your custom language model.
5099	//
5100	// If you want to use your custom language model to transcribe audio with a
5101	// sample rate of 16,000 Hz or greater, choose Wideband.
5102	//
5103	// If you want to use your custom language model to transcribe audio with a
5104	// sample rate that is less than 16,000 Hz, choose Narrowband.
5105	//
5106	// BaseModelName is a required field
5107	BaseModelName *string `type:"string" required:"true" enum:"BaseModelName"`
5108
5109	// Contains the data access role and the Amazon S3 prefixes to read the required
5110	// input files to create a custom language model.
5111	//
5112	// InputDataConfig is a required field
5113	InputDataConfig *InputDataConfig `type:"structure" required:"true"`
5114
5115	// The language of the input text you're using to train your custom language
5116	// model.
5117	//
5118	// LanguageCode is a required field
5119	LanguageCode *string `type:"string" required:"true" enum:"CLMLanguageCode"`
5120
5121	// The name you choose for your custom language model when you create it.
5122	//
5123	// ModelName is a required field
5124	ModelName *string `min:"1" type:"string" required:"true"`
5125
5126	// Adds one or more tags, each in the form of a key:value pair, to a new language
5127	// model at the time you create this new model.
5128	Tags []*Tag `min:"1" type:"list"`
5129}
5130
5131// String returns the string representation.
5132//
5133// API parameter values that are decorated as "sensitive" in the API will not
5134// be included in the string output. The member name will be present, but the
5135// value will be replaced with "sensitive".
5136func (s CreateLanguageModelInput) String() string {
5137	return awsutil.Prettify(s)
5138}
5139
5140// GoString returns the string representation.
5141//
5142// API parameter values that are decorated as "sensitive" in the API will not
5143// be included in the string output. The member name will be present, but the
5144// value will be replaced with "sensitive".
5145func (s CreateLanguageModelInput) GoString() string {
5146	return s.String()
5147}
5148
5149// Validate inspects the fields of the type to determine if they are valid.
5150func (s *CreateLanguageModelInput) Validate() error {
5151	invalidParams := request.ErrInvalidParams{Context: "CreateLanguageModelInput"}
5152	if s.BaseModelName == nil {
5153		invalidParams.Add(request.NewErrParamRequired("BaseModelName"))
5154	}
5155	if s.InputDataConfig == nil {
5156		invalidParams.Add(request.NewErrParamRequired("InputDataConfig"))
5157	}
5158	if s.LanguageCode == nil {
5159		invalidParams.Add(request.NewErrParamRequired("LanguageCode"))
5160	}
5161	if s.ModelName == nil {
5162		invalidParams.Add(request.NewErrParamRequired("ModelName"))
5163	}
5164	if s.ModelName != nil && len(*s.ModelName) < 1 {
5165		invalidParams.Add(request.NewErrParamMinLen("ModelName", 1))
5166	}
5167	if s.Tags != nil && len(s.Tags) < 1 {
5168		invalidParams.Add(request.NewErrParamMinLen("Tags", 1))
5169	}
5170	if s.InputDataConfig != nil {
5171		if err := s.InputDataConfig.Validate(); err != nil {
5172			invalidParams.AddNested("InputDataConfig", err.(request.ErrInvalidParams))
5173		}
5174	}
5175	if s.Tags != nil {
5176		for i, v := range s.Tags {
5177			if v == nil {
5178				continue
5179			}
5180			if err := v.Validate(); err != nil {
5181				invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Tags", i), err.(request.ErrInvalidParams))
5182			}
5183		}
5184	}
5185
5186	if invalidParams.Len() > 0 {
5187		return invalidParams
5188	}
5189	return nil
5190}
5191
5192// SetBaseModelName sets the BaseModelName field's value.
5193func (s *CreateLanguageModelInput) SetBaseModelName(v string) *CreateLanguageModelInput {
5194	s.BaseModelName = &v
5195	return s
5196}
5197
5198// SetInputDataConfig sets the InputDataConfig field's value.
5199func (s *CreateLanguageModelInput) SetInputDataConfig(v *InputDataConfig) *CreateLanguageModelInput {
5200	s.InputDataConfig = v
5201	return s
5202}
5203
5204// SetLanguageCode sets the LanguageCode field's value.
5205func (s *CreateLanguageModelInput) SetLanguageCode(v string) *CreateLanguageModelInput {
5206	s.LanguageCode = &v
5207	return s
5208}
5209
5210// SetModelName sets the ModelName field's value.
5211func (s *CreateLanguageModelInput) SetModelName(v string) *CreateLanguageModelInput {
5212	s.ModelName = &v
5213	return s
5214}
5215
5216// SetTags sets the Tags field's value.
5217func (s *CreateLanguageModelInput) SetTags(v []*Tag) *CreateLanguageModelInput {
5218	s.Tags = v
5219	return s
5220}
5221
5222type CreateLanguageModelOutput struct {
5223	_ struct{} `type:"structure"`
5224
5225	// The Amazon Transcribe standard language model, or base model you've used
5226	// to create a custom language model.
5227	BaseModelName *string `type:"string" enum:"BaseModelName"`
5228
5229	// The data access role and Amazon S3 prefixes you've chosen to create your
5230	// custom language model.
5231	InputDataConfig *InputDataConfig `type:"structure"`
5232
5233	// The language code of the text you've used to create a custom language model.
5234	LanguageCode *string `type:"string" enum:"CLMLanguageCode"`
5235
5236	// The name you've chosen for your custom language model.
5237	ModelName *string `min:"1" type:"string"`
5238
5239	// The status of the custom language model. When the status is COMPLETED the
5240	// model is ready to use.
5241	ModelStatus *string `type:"string" enum:"ModelStatus"`
5242}
5243
5244// String returns the string representation.
5245//
5246// API parameter values that are decorated as "sensitive" in the API will not
5247// be included in the string output. The member name will be present, but the
5248// value will be replaced with "sensitive".
5249func (s CreateLanguageModelOutput) String() string {
5250	return awsutil.Prettify(s)
5251}
5252
5253// GoString returns the string representation.
5254//
5255// API parameter values that are decorated as "sensitive" in the API will not
5256// be included in the string output. The member name will be present, but the
5257// value will be replaced with "sensitive".
5258func (s CreateLanguageModelOutput) GoString() string {
5259	return s.String()
5260}
5261
5262// SetBaseModelName sets the BaseModelName field's value.
5263func (s *CreateLanguageModelOutput) SetBaseModelName(v string) *CreateLanguageModelOutput {
5264	s.BaseModelName = &v
5265	return s
5266}
5267
5268// SetInputDataConfig sets the InputDataConfig field's value.
5269func (s *CreateLanguageModelOutput) SetInputDataConfig(v *InputDataConfig) *CreateLanguageModelOutput {
5270	s.InputDataConfig = v
5271	return s
5272}
5273
5274// SetLanguageCode sets the LanguageCode field's value.
5275func (s *CreateLanguageModelOutput) SetLanguageCode(v string) *CreateLanguageModelOutput {
5276	s.LanguageCode = &v
5277	return s
5278}
5279
5280// SetModelName sets the ModelName field's value.
5281func (s *CreateLanguageModelOutput) SetModelName(v string) *CreateLanguageModelOutput {
5282	s.ModelName = &v
5283	return s
5284}
5285
5286// SetModelStatus sets the ModelStatus field's value.
5287func (s *CreateLanguageModelOutput) SetModelStatus(v string) *CreateLanguageModelOutput {
5288	s.ModelStatus = &v
5289	return s
5290}
5291
5292type CreateMedicalVocabularyInput struct {
5293	_ struct{} `type:"structure"`
5294
5295	// The language code for the language used for the entries in your custom vocabulary.
5296	// The language code of your custom vocabulary must match the language code
5297	// of your transcription job. US English (en-US) is the only language code available
5298	// for Amazon Transcribe Medical.
5299	//
5300	// LanguageCode is a required field
5301	LanguageCode *string `type:"string" required:"true" enum:"LanguageCode"`
5302
5303	// Adds one or more tags, each in the form of a key:value pair, to a new medical
5304	// vocabulary at the time you create this new vocabulary.
5305	Tags []*Tag `min:"1" type:"list"`
5306
5307	// The location in Amazon S3 of the text file you use to define your custom
5308	// vocabulary. The URI must be in the same Amazon Web Services Region as the
5309	// resource that you're calling. Enter information about your VocabularyFileUri
5310	// in the following format:
5311	//
5312	// https://s3.<aws-region>.amazonaws.com/<bucket-name>/<keyprefix>/<objectkey>
5313	//
5314	// The following is an example URI for a vocabulary file that is stored in Amazon
5315	// S3:
5316	//
5317	// https://s3.us-east-1.amazonaws.com/AWSDOC-EXAMPLE-BUCKET/vocab.txt
5318	//
5319	// For more information about Amazon S3 object names, see Object Keys (https://docs.aws.amazon.com/AmazonS3/latest/dev/UsingMetadata.html#object-keys)
5320	// in the Amazon S3 Developer Guide.
5321	//
5322	// For more information about custom vocabularies, see Medical Custom Vocabularies
5323	// (https://docs.aws.amazon.com/transcribe/latest/dg/how-it-works.html#how-vocabulary-med).
5324	//
5325	// VocabularyFileUri is a required field
5326	VocabularyFileUri *string `min:"1" type:"string" required:"true"`
5327
5328	// The name of the custom vocabulary. This case-sensitive name must be unique
5329	// within an Amazon Web Services account. If you try to create a vocabulary
5330	// with the same name as a previous vocabulary, you get a ConflictException
5331	// error.
5332	//
5333	// VocabularyName is a required field
5334	VocabularyName *string `min:"1" type:"string" required:"true"`
5335}
5336
5337// String returns the string representation.
5338//
5339// API parameter values that are decorated as "sensitive" in the API will not
5340// be included in the string output. The member name will be present, but the
5341// value will be replaced with "sensitive".
5342func (s CreateMedicalVocabularyInput) String() string {
5343	return awsutil.Prettify(s)
5344}
5345
5346// GoString returns the string representation.
5347//
5348// API parameter values that are decorated as "sensitive" in the API will not
5349// be included in the string output. The member name will be present, but the
5350// value will be replaced with "sensitive".
5351func (s CreateMedicalVocabularyInput) GoString() string {
5352	return s.String()
5353}
5354
5355// Validate inspects the fields of the type to determine if they are valid.
5356func (s *CreateMedicalVocabularyInput) Validate() error {
5357	invalidParams := request.ErrInvalidParams{Context: "CreateMedicalVocabularyInput"}
5358	if s.LanguageCode == nil {
5359		invalidParams.Add(request.NewErrParamRequired("LanguageCode"))
5360	}
5361	if s.Tags != nil && len(s.Tags) < 1 {
5362		invalidParams.Add(request.NewErrParamMinLen("Tags", 1))
5363	}
5364	if s.VocabularyFileUri == nil {
5365		invalidParams.Add(request.NewErrParamRequired("VocabularyFileUri"))
5366	}
5367	if s.VocabularyFileUri != nil && len(*s.VocabularyFileUri) < 1 {
5368		invalidParams.Add(request.NewErrParamMinLen("VocabularyFileUri", 1))
5369	}
5370	if s.VocabularyName == nil {
5371		invalidParams.Add(request.NewErrParamRequired("VocabularyName"))
5372	}
5373	if s.VocabularyName != nil && len(*s.VocabularyName) < 1 {
5374		invalidParams.Add(request.NewErrParamMinLen("VocabularyName", 1))
5375	}
5376	if s.Tags != nil {
5377		for i, v := range s.Tags {
5378			if v == nil {
5379				continue
5380			}
5381			if err := v.Validate(); err != nil {
5382				invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Tags", i), err.(request.ErrInvalidParams))
5383			}
5384		}
5385	}
5386
5387	if invalidParams.Len() > 0 {
5388		return invalidParams
5389	}
5390	return nil
5391}
5392
5393// SetLanguageCode sets the LanguageCode field's value.
5394func (s *CreateMedicalVocabularyInput) SetLanguageCode(v string) *CreateMedicalVocabularyInput {
5395	s.LanguageCode = &v
5396	return s
5397}
5398
5399// SetTags sets the Tags field's value.
5400func (s *CreateMedicalVocabularyInput) SetTags(v []*Tag) *CreateMedicalVocabularyInput {
5401	s.Tags = v
5402	return s
5403}
5404
5405// SetVocabularyFileUri sets the VocabularyFileUri field's value.
5406func (s *CreateMedicalVocabularyInput) SetVocabularyFileUri(v string) *CreateMedicalVocabularyInput {
5407	s.VocabularyFileUri = &v
5408	return s
5409}
5410
5411// SetVocabularyName sets the VocabularyName field's value.
5412func (s *CreateMedicalVocabularyInput) SetVocabularyName(v string) *CreateMedicalVocabularyInput {
5413	s.VocabularyName = &v
5414	return s
5415}
5416
5417type CreateMedicalVocabularyOutput struct {
5418	_ struct{} `type:"structure"`
5419
5420	// If the VocabularyState field is FAILED, this field contains information about
5421	// why the job failed.
5422	FailureReason *string `type:"string"`
5423
5424	// The language code for the entries in your custom vocabulary. US English (en-US)
5425	// is the only valid language code for Amazon Transcribe Medical.
5426	LanguageCode *string `type:"string" enum:"LanguageCode"`
5427
5428	// The date and time that you created the vocabulary.
5429	LastModifiedTime *time.Time `type:"timestamp"`
5430
5431	// The name of the vocabulary. The name must be unique within an Amazon Web
5432	// Services account and is case sensitive.
5433	VocabularyName *string `min:"1" type:"string"`
5434
5435	// The processing state of your custom vocabulary in Amazon Transcribe Medical.
5436	// If the state is READY, you can use the vocabulary in a StartMedicalTranscriptionJob
5437	// request.
5438	VocabularyState *string `type:"string" enum:"VocabularyState"`
5439}
5440
5441// String returns the string representation.
5442//
5443// API parameter values that are decorated as "sensitive" in the API will not
5444// be included in the string output. The member name will be present, but the
5445// value will be replaced with "sensitive".
5446func (s CreateMedicalVocabularyOutput) String() string {
5447	return awsutil.Prettify(s)
5448}
5449
5450// GoString returns the string representation.
5451//
5452// API parameter values that are decorated as "sensitive" in the API will not
5453// be included in the string output. The member name will be present, but the
5454// value will be replaced with "sensitive".
5455func (s CreateMedicalVocabularyOutput) GoString() string {
5456	return s.String()
5457}
5458
5459// SetFailureReason sets the FailureReason field's value.
5460func (s *CreateMedicalVocabularyOutput) SetFailureReason(v string) *CreateMedicalVocabularyOutput {
5461	s.FailureReason = &v
5462	return s
5463}
5464
5465// SetLanguageCode sets the LanguageCode field's value.
5466func (s *CreateMedicalVocabularyOutput) SetLanguageCode(v string) *CreateMedicalVocabularyOutput {
5467	s.LanguageCode = &v
5468	return s
5469}
5470
5471// SetLastModifiedTime sets the LastModifiedTime field's value.
5472func (s *CreateMedicalVocabularyOutput) SetLastModifiedTime(v time.Time) *CreateMedicalVocabularyOutput {
5473	s.LastModifiedTime = &v
5474	return s
5475}
5476
5477// SetVocabularyName sets the VocabularyName field's value.
5478func (s *CreateMedicalVocabularyOutput) SetVocabularyName(v string) *CreateMedicalVocabularyOutput {
5479	s.VocabularyName = &v
5480	return s
5481}
5482
5483// SetVocabularyState sets the VocabularyState field's value.
5484func (s *CreateMedicalVocabularyOutput) SetVocabularyState(v string) *CreateMedicalVocabularyOutput {
5485	s.VocabularyState = &v
5486	return s
5487}
5488
5489type CreateVocabularyFilterInput struct {
5490	_ struct{} `type:"structure"`
5491
5492	// The language code of the words in the vocabulary filter. All words in the
5493	// filter must be in the same language. The vocabulary filter can only be used
5494	// with transcription jobs in the specified language.
5495	//
5496	// LanguageCode is a required field
5497	LanguageCode *string `type:"string" required:"true" enum:"LanguageCode"`
5498
5499	// Adds one or more tags, each in the form of a key:value pair, to a new Amazon
5500	// Transcribe vocabulary filter at the time you create this new vocabulary filter.
5501	Tags []*Tag `min:"1" type:"list"`
5502
5503	// The Amazon S3 location of a text file used as input to create the vocabulary
5504	// filter. Only use characters from the character set defined for custom vocabularies.
5505	// For a list of character sets, see Character Sets for Custom Vocabularies
5506	// (https://docs.aws.amazon.com/transcribe/latest/dg/how-vocabulary.html#charsets).
5507	//
5508	// The specified file must be less than 50 KB of UTF-8 characters.
5509	//
5510	// If you provide the location of a list of words in the VocabularyFilterFileUri
5511	// parameter, you can't use the Words parameter.
5512	VocabularyFilterFileUri *string `min:"1" type:"string"`
5513
5514	// The vocabulary filter name. The name must be unique within the account that
5515	// contains it. If you try to create a vocabulary filter with the same name
5516	// as another vocabulary filter, you get a ConflictException error.
5517	//
5518	// VocabularyFilterName is a required field
5519	VocabularyFilterName *string `min:"1" type:"string" required:"true"`
5520
5521	// The words to use in the vocabulary filter. Only use characters from the character
5522	// set defined for custom vocabularies. For a list of character sets, see Character
5523	// Sets for Custom Vocabularies (https://docs.aws.amazon.com/transcribe/latest/dg/how-vocabulary.html#charsets).
5524	//
5525	// If you provide a list of words in the Words parameter, you can't use the
5526	// VocabularyFilterFileUri parameter.
5527	Words []*string `min:"1" type:"list"`
5528}
5529
5530// String returns the string representation.
5531//
5532// API parameter values that are decorated as "sensitive" in the API will not
5533// be included in the string output. The member name will be present, but the
5534// value will be replaced with "sensitive".
5535func (s CreateVocabularyFilterInput) String() string {
5536	return awsutil.Prettify(s)
5537}
5538
5539// GoString returns the string representation.
5540//
5541// API parameter values that are decorated as "sensitive" in the API will not
5542// be included in the string output. The member name will be present, but the
5543// value will be replaced with "sensitive".
5544func (s CreateVocabularyFilterInput) GoString() string {
5545	return s.String()
5546}
5547
5548// Validate inspects the fields of the type to determine if they are valid.
5549func (s *CreateVocabularyFilterInput) Validate() error {
5550	invalidParams := request.ErrInvalidParams{Context: "CreateVocabularyFilterInput"}
5551	if s.LanguageCode == nil {
5552		invalidParams.Add(request.NewErrParamRequired("LanguageCode"))
5553	}
5554	if s.Tags != nil && len(s.Tags) < 1 {
5555		invalidParams.Add(request.NewErrParamMinLen("Tags", 1))
5556	}
5557	if s.VocabularyFilterFileUri != nil && len(*s.VocabularyFilterFileUri) < 1 {
5558		invalidParams.Add(request.NewErrParamMinLen("VocabularyFilterFileUri", 1))
5559	}
5560	if s.VocabularyFilterName == nil {
5561		invalidParams.Add(request.NewErrParamRequired("VocabularyFilterName"))
5562	}
5563	if s.VocabularyFilterName != nil && len(*s.VocabularyFilterName) < 1 {
5564		invalidParams.Add(request.NewErrParamMinLen("VocabularyFilterName", 1))
5565	}
5566	if s.Words != nil && len(s.Words) < 1 {
5567		invalidParams.Add(request.NewErrParamMinLen("Words", 1))
5568	}
5569	if s.Tags != nil {
5570		for i, v := range s.Tags {
5571			if v == nil {
5572				continue
5573			}
5574			if err := v.Validate(); err != nil {
5575				invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Tags", i), err.(request.ErrInvalidParams))
5576			}
5577		}
5578	}
5579
5580	if invalidParams.Len() > 0 {
5581		return invalidParams
5582	}
5583	return nil
5584}
5585
5586// SetLanguageCode sets the LanguageCode field's value.
5587func (s *CreateVocabularyFilterInput) SetLanguageCode(v string) *CreateVocabularyFilterInput {
5588	s.LanguageCode = &v
5589	return s
5590}
5591
5592// SetTags sets the Tags field's value.
5593func (s *CreateVocabularyFilterInput) SetTags(v []*Tag) *CreateVocabularyFilterInput {
5594	s.Tags = v
5595	return s
5596}
5597
5598// SetVocabularyFilterFileUri sets the VocabularyFilterFileUri field's value.
5599func (s *CreateVocabularyFilterInput) SetVocabularyFilterFileUri(v string) *CreateVocabularyFilterInput {
5600	s.VocabularyFilterFileUri = &v
5601	return s
5602}
5603
5604// SetVocabularyFilterName sets the VocabularyFilterName field's value.
5605func (s *CreateVocabularyFilterInput) SetVocabularyFilterName(v string) *CreateVocabularyFilterInput {
5606	s.VocabularyFilterName = &v
5607	return s
5608}
5609
5610// SetWords sets the Words field's value.
5611func (s *CreateVocabularyFilterInput) SetWords(v []*string) *CreateVocabularyFilterInput {
5612	s.Words = v
5613	return s
5614}
5615
5616type CreateVocabularyFilterOutput struct {
5617	_ struct{} `type:"structure"`
5618
5619	// The language code of the words in the collection.
5620	LanguageCode *string `type:"string" enum:"LanguageCode"`
5621
5622	// The date and time that the vocabulary filter was modified.
5623	LastModifiedTime *time.Time `type:"timestamp"`
5624
5625	// The name of the vocabulary filter.
5626	VocabularyFilterName *string `min:"1" type:"string"`
5627}
5628
5629// String returns the string representation.
5630//
5631// API parameter values that are decorated as "sensitive" in the API will not
5632// be included in the string output. The member name will be present, but the
5633// value will be replaced with "sensitive".
5634func (s CreateVocabularyFilterOutput) String() string {
5635	return awsutil.Prettify(s)
5636}
5637
5638// GoString returns the string representation.
5639//
5640// API parameter values that are decorated as "sensitive" in the API will not
5641// be included in the string output. The member name will be present, but the
5642// value will be replaced with "sensitive".
5643func (s CreateVocabularyFilterOutput) GoString() string {
5644	return s.String()
5645}
5646
5647// SetLanguageCode sets the LanguageCode field's value.
5648func (s *CreateVocabularyFilterOutput) SetLanguageCode(v string) *CreateVocabularyFilterOutput {
5649	s.LanguageCode = &v
5650	return s
5651}
5652
5653// SetLastModifiedTime sets the LastModifiedTime field's value.
5654func (s *CreateVocabularyFilterOutput) SetLastModifiedTime(v time.Time) *CreateVocabularyFilterOutput {
5655	s.LastModifiedTime = &v
5656	return s
5657}
5658
5659// SetVocabularyFilterName sets the VocabularyFilterName field's value.
5660func (s *CreateVocabularyFilterOutput) SetVocabularyFilterName(v string) *CreateVocabularyFilterOutput {
5661	s.VocabularyFilterName = &v
5662	return s
5663}
5664
5665type CreateVocabularyInput struct {
5666	_ struct{} `type:"structure"`
5667
5668	// The language code of the vocabulary entries. For a list of languages and
5669	// their corresponding language codes, see transcribe-whatis.
5670	//
5671	// LanguageCode is a required field
5672	LanguageCode *string `type:"string" required:"true" enum:"LanguageCode"`
5673
5674	// An array of strings that contains the vocabulary entries.
5675	Phrases []*string `type:"list"`
5676
5677	// Adds one or more tags, each in the form of a key:value pair, to a new Amazon
5678	// Transcribe vocabulary at the time you create this new vocabulary.
5679	Tags []*Tag `min:"1" type:"list"`
5680
5681	// The S3 location of the text file that contains the definition of the custom
5682	// vocabulary. The URI must be in the same region as the API endpoint that you
5683	// are calling. The general form is:
5684	//
5685	// For more information about S3 object names, see Object Keys (https://docs.aws.amazon.com/AmazonS3/latest/dev/UsingMetadata.html#object-keys)
5686	// in the Amazon S3 Developer Guide.
5687	//
5688	// For more information about custom vocabularies, see Custom vocabularies (https://docs.aws.amazon.com/transcribe/latest/dg/how-vocabulary).
5689	VocabularyFileUri *string `min:"1" type:"string"`
5690
5691	// The name of the vocabulary. The name must be unique within an Amazon Web
5692	// Services account. The name is case sensitive. If you try to create a vocabulary
5693	// with the same name as a previous vocabulary you will receive a ConflictException
5694	// error.
5695	//
5696	// VocabularyName is a required field
5697	VocabularyName *string `min:"1" type:"string" required:"true"`
5698}
5699
5700// String returns the string representation.
5701//
5702// API parameter values that are decorated as "sensitive" in the API will not
5703// be included in the string output. The member name will be present, but the
5704// value will be replaced with "sensitive".
5705func (s CreateVocabularyInput) String() string {
5706	return awsutil.Prettify(s)
5707}
5708
5709// GoString returns the string representation.
5710//
5711// API parameter values that are decorated as "sensitive" in the API will not
5712// be included in the string output. The member name will be present, but the
5713// value will be replaced with "sensitive".
5714func (s CreateVocabularyInput) GoString() string {
5715	return s.String()
5716}
5717
5718// Validate inspects the fields of the type to determine if they are valid.
5719func (s *CreateVocabularyInput) Validate() error {
5720	invalidParams := request.ErrInvalidParams{Context: "CreateVocabularyInput"}
5721	if s.LanguageCode == nil {
5722		invalidParams.Add(request.NewErrParamRequired("LanguageCode"))
5723	}
5724	if s.Tags != nil && len(s.Tags) < 1 {
5725		invalidParams.Add(request.NewErrParamMinLen("Tags", 1))
5726	}
5727	if s.VocabularyFileUri != nil && len(*s.VocabularyFileUri) < 1 {
5728		invalidParams.Add(request.NewErrParamMinLen("VocabularyFileUri", 1))
5729	}
5730	if s.VocabularyName == nil {
5731		invalidParams.Add(request.NewErrParamRequired("VocabularyName"))
5732	}
5733	if s.VocabularyName != nil && len(*s.VocabularyName) < 1 {
5734		invalidParams.Add(request.NewErrParamMinLen("VocabularyName", 1))
5735	}
5736	if s.Tags != nil {
5737		for i, v := range s.Tags {
5738			if v == nil {
5739				continue
5740			}
5741			if err := v.Validate(); err != nil {
5742				invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Tags", i), err.(request.ErrInvalidParams))
5743			}
5744		}
5745	}
5746
5747	if invalidParams.Len() > 0 {
5748		return invalidParams
5749	}
5750	return nil
5751}
5752
5753// SetLanguageCode sets the LanguageCode field's value.
5754func (s *CreateVocabularyInput) SetLanguageCode(v string) *CreateVocabularyInput {
5755	s.LanguageCode = &v
5756	return s
5757}
5758
5759// SetPhrases sets the Phrases field's value.
5760func (s *CreateVocabularyInput) SetPhrases(v []*string) *CreateVocabularyInput {
5761	s.Phrases = v
5762	return s
5763}
5764
5765// SetTags sets the Tags field's value.
5766func (s *CreateVocabularyInput) SetTags(v []*Tag) *CreateVocabularyInput {
5767	s.Tags = v
5768	return s
5769}
5770
5771// SetVocabularyFileUri sets the VocabularyFileUri field's value.
5772func (s *CreateVocabularyInput) SetVocabularyFileUri(v string) *CreateVocabularyInput {
5773	s.VocabularyFileUri = &v
5774	return s
5775}
5776
5777// SetVocabularyName sets the VocabularyName field's value.
5778func (s *CreateVocabularyInput) SetVocabularyName(v string) *CreateVocabularyInput {
5779	s.VocabularyName = &v
5780	return s
5781}
5782
5783type CreateVocabularyOutput struct {
5784	_ struct{} `type:"structure"`
5785
5786	// If the VocabularyState field is FAILED, this field contains information about
5787	// why the job failed.
5788	FailureReason *string `type:"string"`
5789
5790	// The language code of the vocabulary entries.
5791	LanguageCode *string `type:"string" enum:"LanguageCode"`
5792
5793	// The date and time that the vocabulary was created.
5794	LastModifiedTime *time.Time `type:"timestamp"`
5795
5796	// The name of the vocabulary.
5797	VocabularyName *string `min:"1" type:"string"`
5798
5799	// The processing state of the vocabulary. When the VocabularyState field contains
5800	// READY the vocabulary is ready to be used in a StartTranscriptionJob request.
5801	VocabularyState *string `type:"string" enum:"VocabularyState"`
5802}
5803
5804// String returns the string representation.
5805//
5806// API parameter values that are decorated as "sensitive" in the API will not
5807// be included in the string output. The member name will be present, but the
5808// value will be replaced with "sensitive".
5809func (s CreateVocabularyOutput) String() string {
5810	return awsutil.Prettify(s)
5811}
5812
5813// GoString returns the string representation.
5814//
5815// API parameter values that are decorated as "sensitive" in the API will not
5816// be included in the string output. The member name will be present, but the
5817// value will be replaced with "sensitive".
5818func (s CreateVocabularyOutput) GoString() string {
5819	return s.String()
5820}
5821
5822// SetFailureReason sets the FailureReason field's value.
5823func (s *CreateVocabularyOutput) SetFailureReason(v string) *CreateVocabularyOutput {
5824	s.FailureReason = &v
5825	return s
5826}
5827
5828// SetLanguageCode sets the LanguageCode field's value.
5829func (s *CreateVocabularyOutput) SetLanguageCode(v string) *CreateVocabularyOutput {
5830	s.LanguageCode = &v
5831	return s
5832}
5833
5834// SetLastModifiedTime sets the LastModifiedTime field's value.
5835func (s *CreateVocabularyOutput) SetLastModifiedTime(v time.Time) *CreateVocabularyOutput {
5836	s.LastModifiedTime = &v
5837	return s
5838}
5839
5840// SetVocabularyName sets the VocabularyName field's value.
5841func (s *CreateVocabularyOutput) SetVocabularyName(v string) *CreateVocabularyOutput {
5842	s.VocabularyName = &v
5843	return s
5844}
5845
5846// SetVocabularyState sets the VocabularyState field's value.
5847func (s *CreateVocabularyOutput) SetVocabularyState(v string) *CreateVocabularyOutput {
5848	s.VocabularyState = &v
5849	return s
5850}
5851
5852type DeleteCallAnalyticsCategoryInput struct {
5853	_ struct{} `type:"structure"`
5854
5855	// The name of the call analytics category that you're choosing to delete. The
5856	// value is case sensitive.
5857	//
5858	// CategoryName is a required field
5859	CategoryName *string `min:"1" type:"string" required:"true"`
5860}
5861
5862// String returns the string representation.
5863//
5864// API parameter values that are decorated as "sensitive" in the API will not
5865// be included in the string output. The member name will be present, but the
5866// value will be replaced with "sensitive".
5867func (s DeleteCallAnalyticsCategoryInput) String() string {
5868	return awsutil.Prettify(s)
5869}
5870
5871// GoString returns the string representation.
5872//
5873// API parameter values that are decorated as "sensitive" in the API will not
5874// be included in the string output. The member name will be present, but the
5875// value will be replaced with "sensitive".
5876func (s DeleteCallAnalyticsCategoryInput) GoString() string {
5877	return s.String()
5878}
5879
5880// Validate inspects the fields of the type to determine if they are valid.
5881func (s *DeleteCallAnalyticsCategoryInput) Validate() error {
5882	invalidParams := request.ErrInvalidParams{Context: "DeleteCallAnalyticsCategoryInput"}
5883	if s.CategoryName == nil {
5884		invalidParams.Add(request.NewErrParamRequired("CategoryName"))
5885	}
5886	if s.CategoryName != nil && len(*s.CategoryName) < 1 {
5887		invalidParams.Add(request.NewErrParamMinLen("CategoryName", 1))
5888	}
5889
5890	if invalidParams.Len() > 0 {
5891		return invalidParams
5892	}
5893	return nil
5894}
5895
5896// SetCategoryName sets the CategoryName field's value.
5897func (s *DeleteCallAnalyticsCategoryInput) SetCategoryName(v string) *DeleteCallAnalyticsCategoryInput {
5898	s.CategoryName = &v
5899	return s
5900}
5901
5902type DeleteCallAnalyticsCategoryOutput struct {
5903	_ struct{} `type:"structure"`
5904}
5905
5906// String returns the string representation.
5907//
5908// API parameter values that are decorated as "sensitive" in the API will not
5909// be included in the string output. The member name will be present, but the
5910// value will be replaced with "sensitive".
5911func (s DeleteCallAnalyticsCategoryOutput) String() string {
5912	return awsutil.Prettify(s)
5913}
5914
5915// GoString returns the string representation.
5916//
5917// API parameter values that are decorated as "sensitive" in the API will not
5918// be included in the string output. The member name will be present, but the
5919// value will be replaced with "sensitive".
5920func (s DeleteCallAnalyticsCategoryOutput) GoString() string {
5921	return s.String()
5922}
5923
5924type DeleteCallAnalyticsJobInput struct {
5925	_ struct{} `type:"structure"`
5926
5927	// The name of the call analytics job you want to delete.
5928	//
5929	// CallAnalyticsJobName is a required field
5930	CallAnalyticsJobName *string `min:"1" type:"string" required:"true"`
5931}
5932
5933// String returns the string representation.
5934//
5935// API parameter values that are decorated as "sensitive" in the API will not
5936// be included in the string output. The member name will be present, but the
5937// value will be replaced with "sensitive".
5938func (s DeleteCallAnalyticsJobInput) String() string {
5939	return awsutil.Prettify(s)
5940}
5941
5942// GoString returns the string representation.
5943//
5944// API parameter values that are decorated as "sensitive" in the API will not
5945// be included in the string output. The member name will be present, but the
5946// value will be replaced with "sensitive".
5947func (s DeleteCallAnalyticsJobInput) GoString() string {
5948	return s.String()
5949}
5950
5951// Validate inspects the fields of the type to determine if they are valid.
5952func (s *DeleteCallAnalyticsJobInput) Validate() error {
5953	invalidParams := request.ErrInvalidParams{Context: "DeleteCallAnalyticsJobInput"}
5954	if s.CallAnalyticsJobName == nil {
5955		invalidParams.Add(request.NewErrParamRequired("CallAnalyticsJobName"))
5956	}
5957	if s.CallAnalyticsJobName != nil && len(*s.CallAnalyticsJobName) < 1 {
5958		invalidParams.Add(request.NewErrParamMinLen("CallAnalyticsJobName", 1))
5959	}
5960
5961	if invalidParams.Len() > 0 {
5962		return invalidParams
5963	}
5964	return nil
5965}
5966
5967// SetCallAnalyticsJobName sets the CallAnalyticsJobName field's value.
5968func (s *DeleteCallAnalyticsJobInput) SetCallAnalyticsJobName(v string) *DeleteCallAnalyticsJobInput {
5969	s.CallAnalyticsJobName = &v
5970	return s
5971}
5972
5973type DeleteCallAnalyticsJobOutput struct {
5974	_ struct{} `type:"structure"`
5975}
5976
5977// String returns the string representation.
5978//
5979// API parameter values that are decorated as "sensitive" in the API will not
5980// be included in the string output. The member name will be present, but the
5981// value will be replaced with "sensitive".
5982func (s DeleteCallAnalyticsJobOutput) String() string {
5983	return awsutil.Prettify(s)
5984}
5985
5986// GoString returns the string representation.
5987//
5988// API parameter values that are decorated as "sensitive" in the API will not
5989// be included in the string output. The member name will be present, but the
5990// value will be replaced with "sensitive".
5991func (s DeleteCallAnalyticsJobOutput) GoString() string {
5992	return s.String()
5993}
5994
5995type DeleteLanguageModelInput struct {
5996	_ struct{} `type:"structure"`
5997
5998	// The name of the model you're choosing to delete.
5999	//
6000	// ModelName is a required field
6001	ModelName *string `min:"1" type:"string" required:"true"`
6002}
6003
6004// String returns the string representation.
6005//
6006// API parameter values that are decorated as "sensitive" in the API will not
6007// be included in the string output. The member name will be present, but the
6008// value will be replaced with "sensitive".
6009func (s DeleteLanguageModelInput) String() string {
6010	return awsutil.Prettify(s)
6011}
6012
6013// GoString returns the string representation.
6014//
6015// API parameter values that are decorated as "sensitive" in the API will not
6016// be included in the string output. The member name will be present, but the
6017// value will be replaced with "sensitive".
6018func (s DeleteLanguageModelInput) GoString() string {
6019	return s.String()
6020}
6021
6022// Validate inspects the fields of the type to determine if they are valid.
6023func (s *DeleteLanguageModelInput) Validate() error {
6024	invalidParams := request.ErrInvalidParams{Context: "DeleteLanguageModelInput"}
6025	if s.ModelName == nil {
6026		invalidParams.Add(request.NewErrParamRequired("ModelName"))
6027	}
6028	if s.ModelName != nil && len(*s.ModelName) < 1 {
6029		invalidParams.Add(request.NewErrParamMinLen("ModelName", 1))
6030	}
6031
6032	if invalidParams.Len() > 0 {
6033		return invalidParams
6034	}
6035	return nil
6036}
6037
6038// SetModelName sets the ModelName field's value.
6039func (s *DeleteLanguageModelInput) SetModelName(v string) *DeleteLanguageModelInput {
6040	s.ModelName = &v
6041	return s
6042}
6043
6044type DeleteLanguageModelOutput struct {
6045	_ struct{} `type:"structure"`
6046}
6047
6048// String returns the string representation.
6049//
6050// API parameter values that are decorated as "sensitive" in the API will not
6051// be included in the string output. The member name will be present, but the
6052// value will be replaced with "sensitive".
6053func (s DeleteLanguageModelOutput) String() string {
6054	return awsutil.Prettify(s)
6055}
6056
6057// GoString returns the string representation.
6058//
6059// API parameter values that are decorated as "sensitive" in the API will not
6060// be included in the string output. The member name will be present, but the
6061// value will be replaced with "sensitive".
6062func (s DeleteLanguageModelOutput) GoString() string {
6063	return s.String()
6064}
6065
6066type DeleteMedicalTranscriptionJobInput struct {
6067	_ struct{} `type:"structure"`
6068
6069	// The name you provide to the DeleteMedicalTranscriptionJob object to delete
6070	// a transcription job.
6071	//
6072	// MedicalTranscriptionJobName is a required field
6073	MedicalTranscriptionJobName *string `min:"1" type:"string" required:"true"`
6074}
6075
6076// String returns the string representation.
6077//
6078// API parameter values that are decorated as "sensitive" in the API will not
6079// be included in the string output. The member name will be present, but the
6080// value will be replaced with "sensitive".
6081func (s DeleteMedicalTranscriptionJobInput) String() string {
6082	return awsutil.Prettify(s)
6083}
6084
6085// GoString returns the string representation.
6086//
6087// API parameter values that are decorated as "sensitive" in the API will not
6088// be included in the string output. The member name will be present, but the
6089// value will be replaced with "sensitive".
6090func (s DeleteMedicalTranscriptionJobInput) GoString() string {
6091	return s.String()
6092}
6093
6094// Validate inspects the fields of the type to determine if they are valid.
6095func (s *DeleteMedicalTranscriptionJobInput) Validate() error {
6096	invalidParams := request.ErrInvalidParams{Context: "DeleteMedicalTranscriptionJobInput"}
6097	if s.MedicalTranscriptionJobName == nil {
6098		invalidParams.Add(request.NewErrParamRequired("MedicalTranscriptionJobName"))
6099	}
6100	if s.MedicalTranscriptionJobName != nil && len(*s.MedicalTranscriptionJobName) < 1 {
6101		invalidParams.Add(request.NewErrParamMinLen("MedicalTranscriptionJobName", 1))
6102	}
6103
6104	if invalidParams.Len() > 0 {
6105		return invalidParams
6106	}
6107	return nil
6108}
6109
6110// SetMedicalTranscriptionJobName sets the MedicalTranscriptionJobName field's value.
6111func (s *DeleteMedicalTranscriptionJobInput) SetMedicalTranscriptionJobName(v string) *DeleteMedicalTranscriptionJobInput {
6112	s.MedicalTranscriptionJobName = &v
6113	return s
6114}
6115
6116type DeleteMedicalTranscriptionJobOutput struct {
6117	_ struct{} `type:"structure"`
6118}
6119
6120// String returns the string representation.
6121//
6122// API parameter values that are decorated as "sensitive" in the API will not
6123// be included in the string output. The member name will be present, but the
6124// value will be replaced with "sensitive".
6125func (s DeleteMedicalTranscriptionJobOutput) String() string {
6126	return awsutil.Prettify(s)
6127}
6128
6129// GoString returns the string representation.
6130//
6131// API parameter values that are decorated as "sensitive" in the API will not
6132// be included in the string output. The member name will be present, but the
6133// value will be replaced with "sensitive".
6134func (s DeleteMedicalTranscriptionJobOutput) GoString() string {
6135	return s.String()
6136}
6137
6138type DeleteMedicalVocabularyInput struct {
6139	_ struct{} `type:"structure"`
6140
6141	// The name of the vocabulary that you want to delete.
6142	//
6143	// VocabularyName is a required field
6144	VocabularyName *string `min:"1" type:"string" required:"true"`
6145}
6146
6147// String returns the string representation.
6148//
6149// API parameter values that are decorated as "sensitive" in the API will not
6150// be included in the string output. The member name will be present, but the
6151// value will be replaced with "sensitive".
6152func (s DeleteMedicalVocabularyInput) String() string {
6153	return awsutil.Prettify(s)
6154}
6155
6156// GoString returns the string representation.
6157//
6158// API parameter values that are decorated as "sensitive" in the API will not
6159// be included in the string output. The member name will be present, but the
6160// value will be replaced with "sensitive".
6161func (s DeleteMedicalVocabularyInput) GoString() string {
6162	return s.String()
6163}
6164
6165// Validate inspects the fields of the type to determine if they are valid.
6166func (s *DeleteMedicalVocabularyInput) Validate() error {
6167	invalidParams := request.ErrInvalidParams{Context: "DeleteMedicalVocabularyInput"}
6168	if s.VocabularyName == nil {
6169		invalidParams.Add(request.NewErrParamRequired("VocabularyName"))
6170	}
6171	if s.VocabularyName != nil && len(*s.VocabularyName) < 1 {
6172		invalidParams.Add(request.NewErrParamMinLen("VocabularyName", 1))
6173	}
6174
6175	if invalidParams.Len() > 0 {
6176		return invalidParams
6177	}
6178	return nil
6179}
6180
6181// SetVocabularyName sets the VocabularyName field's value.
6182func (s *DeleteMedicalVocabularyInput) SetVocabularyName(v string) *DeleteMedicalVocabularyInput {
6183	s.VocabularyName = &v
6184	return s
6185}
6186
6187type DeleteMedicalVocabularyOutput struct {
6188	_ struct{} `type:"structure"`
6189}
6190
6191// String returns the string representation.
6192//
6193// API parameter values that are decorated as "sensitive" in the API will not
6194// be included in the string output. The member name will be present, but the
6195// value will be replaced with "sensitive".
6196func (s DeleteMedicalVocabularyOutput) String() string {
6197	return awsutil.Prettify(s)
6198}
6199
6200// GoString returns the string representation.
6201//
6202// API parameter values that are decorated as "sensitive" in the API will not
6203// be included in the string output. The member name will be present, but the
6204// value will be replaced with "sensitive".
6205func (s DeleteMedicalVocabularyOutput) GoString() string {
6206	return s.String()
6207}
6208
6209type DeleteTranscriptionJobInput struct {
6210	_ struct{} `type:"structure"`
6211
6212	// The name of the transcription job to be deleted.
6213	//
6214	// TranscriptionJobName is a required field
6215	TranscriptionJobName *string `min:"1" type:"string" required:"true"`
6216}
6217
6218// String returns the string representation.
6219//
6220// API parameter values that are decorated as "sensitive" in the API will not
6221// be included in the string output. The member name will be present, but the
6222// value will be replaced with "sensitive".
6223func (s DeleteTranscriptionJobInput) String() string {
6224	return awsutil.Prettify(s)
6225}
6226
6227// GoString returns the string representation.
6228//
6229// API parameter values that are decorated as "sensitive" in the API will not
6230// be included in the string output. The member name will be present, but the
6231// value will be replaced with "sensitive".
6232func (s DeleteTranscriptionJobInput) GoString() string {
6233	return s.String()
6234}
6235
6236// Validate inspects the fields of the type to determine if they are valid.
6237func (s *DeleteTranscriptionJobInput) Validate() error {
6238	invalidParams := request.ErrInvalidParams{Context: "DeleteTranscriptionJobInput"}
6239	if s.TranscriptionJobName == nil {
6240		invalidParams.Add(request.NewErrParamRequired("TranscriptionJobName"))
6241	}
6242	if s.TranscriptionJobName != nil && len(*s.TranscriptionJobName) < 1 {
6243		invalidParams.Add(request.NewErrParamMinLen("TranscriptionJobName", 1))
6244	}
6245
6246	if invalidParams.Len() > 0 {
6247		return invalidParams
6248	}
6249	return nil
6250}
6251
6252// SetTranscriptionJobName sets the TranscriptionJobName field's value.
6253func (s *DeleteTranscriptionJobInput) SetTranscriptionJobName(v string) *DeleteTranscriptionJobInput {
6254	s.TranscriptionJobName = &v
6255	return s
6256}
6257
6258type DeleteTranscriptionJobOutput struct {
6259	_ struct{} `type:"structure"`
6260}
6261
6262// String returns the string representation.
6263//
6264// API parameter values that are decorated as "sensitive" in the API will not
6265// be included in the string output. The member name will be present, but the
6266// value will be replaced with "sensitive".
6267func (s DeleteTranscriptionJobOutput) String() string {
6268	return awsutil.Prettify(s)
6269}
6270
6271// GoString returns the string representation.
6272//
6273// API parameter values that are decorated as "sensitive" in the API will not
6274// be included in the string output. The member name will be present, but the
6275// value will be replaced with "sensitive".
6276func (s DeleteTranscriptionJobOutput) GoString() string {
6277	return s.String()
6278}
6279
6280type DeleteVocabularyFilterInput struct {
6281	_ struct{} `type:"structure"`
6282
6283	// The name of the vocabulary filter to remove.
6284	//
6285	// VocabularyFilterName is a required field
6286	VocabularyFilterName *string `min:"1" type:"string" required:"true"`
6287}
6288
6289// String returns the string representation.
6290//
6291// API parameter values that are decorated as "sensitive" in the API will not
6292// be included in the string output. The member name will be present, but the
6293// value will be replaced with "sensitive".
6294func (s DeleteVocabularyFilterInput) String() string {
6295	return awsutil.Prettify(s)
6296}
6297
6298// GoString returns the string representation.
6299//
6300// API parameter values that are decorated as "sensitive" in the API will not
6301// be included in the string output. The member name will be present, but the
6302// value will be replaced with "sensitive".
6303func (s DeleteVocabularyFilterInput) GoString() string {
6304	return s.String()
6305}
6306
6307// Validate inspects the fields of the type to determine if they are valid.
6308func (s *DeleteVocabularyFilterInput) Validate() error {
6309	invalidParams := request.ErrInvalidParams{Context: "DeleteVocabularyFilterInput"}
6310	if s.VocabularyFilterName == nil {
6311		invalidParams.Add(request.NewErrParamRequired("VocabularyFilterName"))
6312	}
6313	if s.VocabularyFilterName != nil && len(*s.VocabularyFilterName) < 1 {
6314		invalidParams.Add(request.NewErrParamMinLen("VocabularyFilterName", 1))
6315	}
6316
6317	if invalidParams.Len() > 0 {
6318		return invalidParams
6319	}
6320	return nil
6321}
6322
6323// SetVocabularyFilterName sets the VocabularyFilterName field's value.
6324func (s *DeleteVocabularyFilterInput) SetVocabularyFilterName(v string) *DeleteVocabularyFilterInput {
6325	s.VocabularyFilterName = &v
6326	return s
6327}
6328
6329type DeleteVocabularyFilterOutput struct {
6330	_ struct{} `type:"structure"`
6331}
6332
6333// String returns the string representation.
6334//
6335// API parameter values that are decorated as "sensitive" in the API will not
6336// be included in the string output. The member name will be present, but the
6337// value will be replaced with "sensitive".
6338func (s DeleteVocabularyFilterOutput) String() string {
6339	return awsutil.Prettify(s)
6340}
6341
6342// GoString returns the string representation.
6343//
6344// API parameter values that are decorated as "sensitive" in the API will not
6345// be included in the string output. The member name will be present, but the
6346// value will be replaced with "sensitive".
6347func (s DeleteVocabularyFilterOutput) GoString() string {
6348	return s.String()
6349}
6350
6351type DeleteVocabularyInput struct {
6352	_ struct{} `type:"structure"`
6353
6354	// The name of the vocabulary to delete.
6355	//
6356	// VocabularyName is a required field
6357	VocabularyName *string `min:"1" type:"string" required:"true"`
6358}
6359
6360// String returns the string representation.
6361//
6362// API parameter values that are decorated as "sensitive" in the API will not
6363// be included in the string output. The member name will be present, but the
6364// value will be replaced with "sensitive".
6365func (s DeleteVocabularyInput) String() string {
6366	return awsutil.Prettify(s)
6367}
6368
6369// GoString returns the string representation.
6370//
6371// API parameter values that are decorated as "sensitive" in the API will not
6372// be included in the string output. The member name will be present, but the
6373// value will be replaced with "sensitive".
6374func (s DeleteVocabularyInput) GoString() string {
6375	return s.String()
6376}
6377
6378// Validate inspects the fields of the type to determine if they are valid.
6379func (s *DeleteVocabularyInput) Validate() error {
6380	invalidParams := request.ErrInvalidParams{Context: "DeleteVocabularyInput"}
6381	if s.VocabularyName == nil {
6382		invalidParams.Add(request.NewErrParamRequired("VocabularyName"))
6383	}
6384	if s.VocabularyName != nil && len(*s.VocabularyName) < 1 {
6385		invalidParams.Add(request.NewErrParamMinLen("VocabularyName", 1))
6386	}
6387
6388	if invalidParams.Len() > 0 {
6389		return invalidParams
6390	}
6391	return nil
6392}
6393
6394// SetVocabularyName sets the VocabularyName field's value.
6395func (s *DeleteVocabularyInput) SetVocabularyName(v string) *DeleteVocabularyInput {
6396	s.VocabularyName = &v
6397	return s
6398}
6399
6400type DeleteVocabularyOutput struct {
6401	_ struct{} `type:"structure"`
6402}
6403
6404// String returns the string representation.
6405//
6406// API parameter values that are decorated as "sensitive" in the API will not
6407// be included in the string output. The member name will be present, but the
6408// value will be replaced with "sensitive".
6409func (s DeleteVocabularyOutput) String() string {
6410	return awsutil.Prettify(s)
6411}
6412
6413// GoString returns the string representation.
6414//
6415// API parameter values that are decorated as "sensitive" in the API will not
6416// be included in the string output. The member name will be present, but the
6417// value will be replaced with "sensitive".
6418func (s DeleteVocabularyOutput) GoString() string {
6419	return s.String()
6420}
6421
6422type DescribeLanguageModelInput struct {
6423	_ struct{} `type:"structure"`
6424
6425	// The name of the custom language model you submit to get more information.
6426	//
6427	// ModelName is a required field
6428	ModelName *string `min:"1" type:"string" required:"true"`
6429}
6430
6431// String returns the string representation.
6432//
6433// API parameter values that are decorated as "sensitive" in the API will not
6434// be included in the string output. The member name will be present, but the
6435// value will be replaced with "sensitive".
6436func (s DescribeLanguageModelInput) String() string {
6437	return awsutil.Prettify(s)
6438}
6439
6440// GoString returns the string representation.
6441//
6442// API parameter values that are decorated as "sensitive" in the API will not
6443// be included in the string output. The member name will be present, but the
6444// value will be replaced with "sensitive".
6445func (s DescribeLanguageModelInput) GoString() string {
6446	return s.String()
6447}
6448
6449// Validate inspects the fields of the type to determine if they are valid.
6450func (s *DescribeLanguageModelInput) Validate() error {
6451	invalidParams := request.ErrInvalidParams{Context: "DescribeLanguageModelInput"}
6452	if s.ModelName == nil {
6453		invalidParams.Add(request.NewErrParamRequired("ModelName"))
6454	}
6455	if s.ModelName != nil && len(*s.ModelName) < 1 {
6456		invalidParams.Add(request.NewErrParamMinLen("ModelName", 1))
6457	}
6458
6459	if invalidParams.Len() > 0 {
6460		return invalidParams
6461	}
6462	return nil
6463}
6464
6465// SetModelName sets the ModelName field's value.
6466func (s *DescribeLanguageModelInput) SetModelName(v string) *DescribeLanguageModelInput {
6467	s.ModelName = &v
6468	return s
6469}
6470
6471type DescribeLanguageModelOutput struct {
6472	_ struct{} `type:"structure"`
6473
6474	// The name of the custom language model you requested more information about.
6475	LanguageModel *LanguageModel `type:"structure"`
6476}
6477
6478// String returns the string representation.
6479//
6480// API parameter values that are decorated as "sensitive" in the API will not
6481// be included in the string output. The member name will be present, but the
6482// value will be replaced with "sensitive".
6483func (s DescribeLanguageModelOutput) String() string {
6484	return awsutil.Prettify(s)
6485}
6486
6487// GoString returns the string representation.
6488//
6489// API parameter values that are decorated as "sensitive" in the API will not
6490// be included in the string output. The member name will be present, but the
6491// value will be replaced with "sensitive".
6492func (s DescribeLanguageModelOutput) GoString() string {
6493	return s.String()
6494}
6495
6496// SetLanguageModel sets the LanguageModel field's value.
6497func (s *DescribeLanguageModelOutput) SetLanguageModel(v *LanguageModel) *DescribeLanguageModelOutput {
6498	s.LanguageModel = v
6499	return s
6500}
6501
6502type GetCallAnalyticsCategoryInput struct {
6503	_ struct{} `type:"structure"`
6504
6505	// The name of the category you want information about. This value is case sensitive.
6506	//
6507	// CategoryName is a required field
6508	CategoryName *string `min:"1" type:"string" required:"true"`
6509}
6510
6511// String returns the string representation.
6512//
6513// API parameter values that are decorated as "sensitive" in the API will not
6514// be included in the string output. The member name will be present, but the
6515// value will be replaced with "sensitive".
6516func (s GetCallAnalyticsCategoryInput) String() string {
6517	return awsutil.Prettify(s)
6518}
6519
6520// GoString returns the string representation.
6521//
6522// API parameter values that are decorated as "sensitive" in the API will not
6523// be included in the string output. The member name will be present, but the
6524// value will be replaced with "sensitive".
6525func (s GetCallAnalyticsCategoryInput) GoString() string {
6526	return s.String()
6527}
6528
6529// Validate inspects the fields of the type to determine if they are valid.
6530func (s *GetCallAnalyticsCategoryInput) Validate() error {
6531	invalidParams := request.ErrInvalidParams{Context: "GetCallAnalyticsCategoryInput"}
6532	if s.CategoryName == nil {
6533		invalidParams.Add(request.NewErrParamRequired("CategoryName"))
6534	}
6535	if s.CategoryName != nil && len(*s.CategoryName) < 1 {
6536		invalidParams.Add(request.NewErrParamMinLen("CategoryName", 1))
6537	}
6538
6539	if invalidParams.Len() > 0 {
6540		return invalidParams
6541	}
6542	return nil
6543}
6544
6545// SetCategoryName sets the CategoryName field's value.
6546func (s *GetCallAnalyticsCategoryInput) SetCategoryName(v string) *GetCallAnalyticsCategoryInput {
6547	s.CategoryName = &v
6548	return s
6549}
6550
6551type GetCallAnalyticsCategoryOutput struct {
6552	_ struct{} `type:"structure"`
6553
6554	// The rules you've defined for a category.
6555	CategoryProperties *CategoryProperties `type:"structure"`
6556}
6557
6558// String returns the string representation.
6559//
6560// API parameter values that are decorated as "sensitive" in the API will not
6561// be included in the string output. The member name will be present, but the
6562// value will be replaced with "sensitive".
6563func (s GetCallAnalyticsCategoryOutput) String() string {
6564	return awsutil.Prettify(s)
6565}
6566
6567// GoString returns the string representation.
6568//
6569// API parameter values that are decorated as "sensitive" in the API will not
6570// be included in the string output. The member name will be present, but the
6571// value will be replaced with "sensitive".
6572func (s GetCallAnalyticsCategoryOutput) GoString() string {
6573	return s.String()
6574}
6575
6576// SetCategoryProperties sets the CategoryProperties field's value.
6577func (s *GetCallAnalyticsCategoryOutput) SetCategoryProperties(v *CategoryProperties) *GetCallAnalyticsCategoryOutput {
6578	s.CategoryProperties = v
6579	return s
6580}
6581
6582type GetCallAnalyticsJobInput struct {
6583	_ struct{} `type:"structure"`
6584
6585	// The name of the analytics job you want information about. This value is case
6586	// sensitive.
6587	//
6588	// CallAnalyticsJobName is a required field
6589	CallAnalyticsJobName *string `min:"1" type:"string" required:"true"`
6590}
6591
6592// String returns the string representation.
6593//
6594// API parameter values that are decorated as "sensitive" in the API will not
6595// be included in the string output. The member name will be present, but the
6596// value will be replaced with "sensitive".
6597func (s GetCallAnalyticsJobInput) String() string {
6598	return awsutil.Prettify(s)
6599}
6600
6601// GoString returns the string representation.
6602//
6603// API parameter values that are decorated as "sensitive" in the API will not
6604// be included in the string output. The member name will be present, but the
6605// value will be replaced with "sensitive".
6606func (s GetCallAnalyticsJobInput) GoString() string {
6607	return s.String()
6608}
6609
6610// Validate inspects the fields of the type to determine if they are valid.
6611func (s *GetCallAnalyticsJobInput) Validate() error {
6612	invalidParams := request.ErrInvalidParams{Context: "GetCallAnalyticsJobInput"}
6613	if s.CallAnalyticsJobName == nil {
6614		invalidParams.Add(request.NewErrParamRequired("CallAnalyticsJobName"))
6615	}
6616	if s.CallAnalyticsJobName != nil && len(*s.CallAnalyticsJobName) < 1 {
6617		invalidParams.Add(request.NewErrParamMinLen("CallAnalyticsJobName", 1))
6618	}
6619
6620	if invalidParams.Len() > 0 {
6621		return invalidParams
6622	}
6623	return nil
6624}
6625
6626// SetCallAnalyticsJobName sets the CallAnalyticsJobName field's value.
6627func (s *GetCallAnalyticsJobInput) SetCallAnalyticsJobName(v string) *GetCallAnalyticsJobInput {
6628	s.CallAnalyticsJobName = &v
6629	return s
6630}
6631
6632type GetCallAnalyticsJobOutput struct {
6633	_ struct{} `type:"structure"`
6634
6635	// An object that contains the results of your call analytics job.
6636	CallAnalyticsJob *CallAnalyticsJob `type:"structure"`
6637}
6638
6639// String returns the string representation.
6640//
6641// API parameter values that are decorated as "sensitive" in the API will not
6642// be included in the string output. The member name will be present, but the
6643// value will be replaced with "sensitive".
6644func (s GetCallAnalyticsJobOutput) String() string {
6645	return awsutil.Prettify(s)
6646}
6647
6648// GoString returns the string representation.
6649//
6650// API parameter values that are decorated as "sensitive" in the API will not
6651// be included in the string output. The member name will be present, but the
6652// value will be replaced with "sensitive".
6653func (s GetCallAnalyticsJobOutput) GoString() string {
6654	return s.String()
6655}
6656
6657// SetCallAnalyticsJob sets the CallAnalyticsJob field's value.
6658func (s *GetCallAnalyticsJobOutput) SetCallAnalyticsJob(v *CallAnalyticsJob) *GetCallAnalyticsJobOutput {
6659	s.CallAnalyticsJob = v
6660	return s
6661}
6662
6663type GetMedicalTranscriptionJobInput struct {
6664	_ struct{} `type:"structure"`
6665
6666	// The name of the medical transcription job.
6667	//
6668	// MedicalTranscriptionJobName is a required field
6669	MedicalTranscriptionJobName *string `min:"1" type:"string" required:"true"`
6670}
6671
6672// String returns the string representation.
6673//
6674// API parameter values that are decorated as "sensitive" in the API will not
6675// be included in the string output. The member name will be present, but the
6676// value will be replaced with "sensitive".
6677func (s GetMedicalTranscriptionJobInput) String() string {
6678	return awsutil.Prettify(s)
6679}
6680
6681// GoString returns the string representation.
6682//
6683// API parameter values that are decorated as "sensitive" in the API will not
6684// be included in the string output. The member name will be present, but the
6685// value will be replaced with "sensitive".
6686func (s GetMedicalTranscriptionJobInput) GoString() string {
6687	return s.String()
6688}
6689
6690// Validate inspects the fields of the type to determine if they are valid.
6691func (s *GetMedicalTranscriptionJobInput) Validate() error {
6692	invalidParams := request.ErrInvalidParams{Context: "GetMedicalTranscriptionJobInput"}
6693	if s.MedicalTranscriptionJobName == nil {
6694		invalidParams.Add(request.NewErrParamRequired("MedicalTranscriptionJobName"))
6695	}
6696	if s.MedicalTranscriptionJobName != nil && len(*s.MedicalTranscriptionJobName) < 1 {
6697		invalidParams.Add(request.NewErrParamMinLen("MedicalTranscriptionJobName", 1))
6698	}
6699
6700	if invalidParams.Len() > 0 {
6701		return invalidParams
6702	}
6703	return nil
6704}
6705
6706// SetMedicalTranscriptionJobName sets the MedicalTranscriptionJobName field's value.
6707func (s *GetMedicalTranscriptionJobInput) SetMedicalTranscriptionJobName(v string) *GetMedicalTranscriptionJobInput {
6708	s.MedicalTranscriptionJobName = &v
6709	return s
6710}
6711
6712type GetMedicalTranscriptionJobOutput struct {
6713	_ struct{} `type:"structure"`
6714
6715	// An object that contains the results of the medical transcription job.
6716	MedicalTranscriptionJob *MedicalTranscriptionJob `type:"structure"`
6717}
6718
6719// String returns the string representation.
6720//
6721// API parameter values that are decorated as "sensitive" in the API will not
6722// be included in the string output. The member name will be present, but the
6723// value will be replaced with "sensitive".
6724func (s GetMedicalTranscriptionJobOutput) String() string {
6725	return awsutil.Prettify(s)
6726}
6727
6728// GoString returns the string representation.
6729//
6730// API parameter values that are decorated as "sensitive" in the API will not
6731// be included in the string output. The member name will be present, but the
6732// value will be replaced with "sensitive".
6733func (s GetMedicalTranscriptionJobOutput) GoString() string {
6734	return s.String()
6735}
6736
6737// SetMedicalTranscriptionJob sets the MedicalTranscriptionJob field's value.
6738func (s *GetMedicalTranscriptionJobOutput) SetMedicalTranscriptionJob(v *MedicalTranscriptionJob) *GetMedicalTranscriptionJobOutput {
6739	s.MedicalTranscriptionJob = v
6740	return s
6741}
6742
6743type GetMedicalVocabularyInput struct {
6744	_ struct{} `type:"structure"`
6745
6746	// The name of the vocabulary that you want information about. The value is
6747	// case sensitive.
6748	//
6749	// VocabularyName is a required field
6750	VocabularyName *string `min:"1" type:"string" required:"true"`
6751}
6752
6753// String returns the string representation.
6754//
6755// API parameter values that are decorated as "sensitive" in the API will not
6756// be included in the string output. The member name will be present, but the
6757// value will be replaced with "sensitive".
6758func (s GetMedicalVocabularyInput) String() string {
6759	return awsutil.Prettify(s)
6760}
6761
6762// GoString returns the string representation.
6763//
6764// API parameter values that are decorated as "sensitive" in the API will not
6765// be included in the string output. The member name will be present, but the
6766// value will be replaced with "sensitive".
6767func (s GetMedicalVocabularyInput) GoString() string {
6768	return s.String()
6769}
6770
6771// Validate inspects the fields of the type to determine if they are valid.
6772func (s *GetMedicalVocabularyInput) Validate() error {
6773	invalidParams := request.ErrInvalidParams{Context: "GetMedicalVocabularyInput"}
6774	if s.VocabularyName == nil {
6775		invalidParams.Add(request.NewErrParamRequired("VocabularyName"))
6776	}
6777	if s.VocabularyName != nil && len(*s.VocabularyName) < 1 {
6778		invalidParams.Add(request.NewErrParamMinLen("VocabularyName", 1))
6779	}
6780
6781	if invalidParams.Len() > 0 {
6782		return invalidParams
6783	}
6784	return nil
6785}
6786
6787// SetVocabularyName sets the VocabularyName field's value.
6788func (s *GetMedicalVocabularyInput) SetVocabularyName(v string) *GetMedicalVocabularyInput {
6789	s.VocabularyName = &v
6790	return s
6791}
6792
6793type GetMedicalVocabularyOutput struct {
6794	_ struct{} `type:"structure"`
6795
6796	// The location in Amazon S3 where the vocabulary is stored. Use this URI to
6797	// get the contents of the vocabulary. You can download your vocabulary from
6798	// the URI for a limited time.
6799	DownloadUri *string `min:"1" type:"string"`
6800
6801	// If the VocabularyState is FAILED, this field contains information about why
6802	// the job failed.
6803	FailureReason *string `type:"string"`
6804
6805	// The valid language code for your vocabulary entries.
6806	LanguageCode *string `type:"string" enum:"LanguageCode"`
6807
6808	// The date and time that the vocabulary was last modified with a text file
6809	// different from the one that was previously used.
6810	LastModifiedTime *time.Time `type:"timestamp"`
6811
6812	// The name of the vocabulary returned by Amazon Transcribe Medical.
6813	VocabularyName *string `min:"1" type:"string"`
6814
6815	// The processing state of the vocabulary. If the VocabularyState is READY then
6816	// you can use it in the StartMedicalTranscriptionJob operation.
6817	VocabularyState *string `type:"string" enum:"VocabularyState"`
6818}
6819
6820// String returns the string representation.
6821//
6822// API parameter values that are decorated as "sensitive" in the API will not
6823// be included in the string output. The member name will be present, but the
6824// value will be replaced with "sensitive".
6825func (s GetMedicalVocabularyOutput) String() string {
6826	return awsutil.Prettify(s)
6827}
6828
6829// GoString returns the string representation.
6830//
6831// API parameter values that are decorated as "sensitive" in the API will not
6832// be included in the string output. The member name will be present, but the
6833// value will be replaced with "sensitive".
6834func (s GetMedicalVocabularyOutput) GoString() string {
6835	return s.String()
6836}
6837
6838// SetDownloadUri sets the DownloadUri field's value.
6839func (s *GetMedicalVocabularyOutput) SetDownloadUri(v string) *GetMedicalVocabularyOutput {
6840	s.DownloadUri = &v
6841	return s
6842}
6843
6844// SetFailureReason sets the FailureReason field's value.
6845func (s *GetMedicalVocabularyOutput) SetFailureReason(v string) *GetMedicalVocabularyOutput {
6846	s.FailureReason = &v
6847	return s
6848}
6849
6850// SetLanguageCode sets the LanguageCode field's value.
6851func (s *GetMedicalVocabularyOutput) SetLanguageCode(v string) *GetMedicalVocabularyOutput {
6852	s.LanguageCode = &v
6853	return s
6854}
6855
6856// SetLastModifiedTime sets the LastModifiedTime field's value.
6857func (s *GetMedicalVocabularyOutput) SetLastModifiedTime(v time.Time) *GetMedicalVocabularyOutput {
6858	s.LastModifiedTime = &v
6859	return s
6860}
6861
6862// SetVocabularyName sets the VocabularyName field's value.
6863func (s *GetMedicalVocabularyOutput) SetVocabularyName(v string) *GetMedicalVocabularyOutput {
6864	s.VocabularyName = &v
6865	return s
6866}
6867
6868// SetVocabularyState sets the VocabularyState field's value.
6869func (s *GetMedicalVocabularyOutput) SetVocabularyState(v string) *GetMedicalVocabularyOutput {
6870	s.VocabularyState = &v
6871	return s
6872}
6873
6874type GetTranscriptionJobInput struct {
6875	_ struct{} `type:"structure"`
6876
6877	// The name of the job.
6878	//
6879	// TranscriptionJobName is a required field
6880	TranscriptionJobName *string `min:"1" type:"string" required:"true"`
6881}
6882
6883// String returns the string representation.
6884//
6885// API parameter values that are decorated as "sensitive" in the API will not
6886// be included in the string output. The member name will be present, but the
6887// value will be replaced with "sensitive".
6888func (s GetTranscriptionJobInput) String() string {
6889	return awsutil.Prettify(s)
6890}
6891
6892// GoString returns the string representation.
6893//
6894// API parameter values that are decorated as "sensitive" in the API will not
6895// be included in the string output. The member name will be present, but the
6896// value will be replaced with "sensitive".
6897func (s GetTranscriptionJobInput) GoString() string {
6898	return s.String()
6899}
6900
6901// Validate inspects the fields of the type to determine if they are valid.
6902func (s *GetTranscriptionJobInput) Validate() error {
6903	invalidParams := request.ErrInvalidParams{Context: "GetTranscriptionJobInput"}
6904	if s.TranscriptionJobName == nil {
6905		invalidParams.Add(request.NewErrParamRequired("TranscriptionJobName"))
6906	}
6907	if s.TranscriptionJobName != nil && len(*s.TranscriptionJobName) < 1 {
6908		invalidParams.Add(request.NewErrParamMinLen("TranscriptionJobName", 1))
6909	}
6910
6911	if invalidParams.Len() > 0 {
6912		return invalidParams
6913	}
6914	return nil
6915}
6916
6917// SetTranscriptionJobName sets the TranscriptionJobName field's value.
6918func (s *GetTranscriptionJobInput) SetTranscriptionJobName(v string) *GetTranscriptionJobInput {
6919	s.TranscriptionJobName = &v
6920	return s
6921}
6922
6923type GetTranscriptionJobOutput struct {
6924	_ struct{} `type:"structure"`
6925
6926	// An object that contains the results of the transcription job.
6927	TranscriptionJob *TranscriptionJob `type:"structure"`
6928}
6929
6930// String returns the string representation.
6931//
6932// API parameter values that are decorated as "sensitive" in the API will not
6933// be included in the string output. The member name will be present, but the
6934// value will be replaced with "sensitive".
6935func (s GetTranscriptionJobOutput) String() string {
6936	return awsutil.Prettify(s)
6937}
6938
6939// GoString returns the string representation.
6940//
6941// API parameter values that are decorated as "sensitive" in the API will not
6942// be included in the string output. The member name will be present, but the
6943// value will be replaced with "sensitive".
6944func (s GetTranscriptionJobOutput) GoString() string {
6945	return s.String()
6946}
6947
6948// SetTranscriptionJob sets the TranscriptionJob field's value.
6949func (s *GetTranscriptionJobOutput) SetTranscriptionJob(v *TranscriptionJob) *GetTranscriptionJobOutput {
6950	s.TranscriptionJob = v
6951	return s
6952}
6953
6954type GetVocabularyFilterInput struct {
6955	_ struct{} `type:"structure"`
6956
6957	// The name of the vocabulary filter for which to return information.
6958	//
6959	// VocabularyFilterName is a required field
6960	VocabularyFilterName *string `min:"1" type:"string" required:"true"`
6961}
6962
6963// String returns the string representation.
6964//
6965// API parameter values that are decorated as "sensitive" in the API will not
6966// be included in the string output. The member name will be present, but the
6967// value will be replaced with "sensitive".
6968func (s GetVocabularyFilterInput) String() string {
6969	return awsutil.Prettify(s)
6970}
6971
6972// GoString returns the string representation.
6973//
6974// API parameter values that are decorated as "sensitive" in the API will not
6975// be included in the string output. The member name will be present, but the
6976// value will be replaced with "sensitive".
6977func (s GetVocabularyFilterInput) GoString() string {
6978	return s.String()
6979}
6980
6981// Validate inspects the fields of the type to determine if they are valid.
6982func (s *GetVocabularyFilterInput) Validate() error {
6983	invalidParams := request.ErrInvalidParams{Context: "GetVocabularyFilterInput"}
6984	if s.VocabularyFilterName == nil {
6985		invalidParams.Add(request.NewErrParamRequired("VocabularyFilterName"))
6986	}
6987	if s.VocabularyFilterName != nil && len(*s.VocabularyFilterName) < 1 {
6988		invalidParams.Add(request.NewErrParamMinLen("VocabularyFilterName", 1))
6989	}
6990
6991	if invalidParams.Len() > 0 {
6992		return invalidParams
6993	}
6994	return nil
6995}
6996
6997// SetVocabularyFilterName sets the VocabularyFilterName field's value.
6998func (s *GetVocabularyFilterInput) SetVocabularyFilterName(v string) *GetVocabularyFilterInput {
6999	s.VocabularyFilterName = &v
7000	return s
7001}
7002
7003type GetVocabularyFilterOutput struct {
7004	_ struct{} `type:"structure"`
7005
7006	// The URI of the list of words in the vocabulary filter. You can use this URI
7007	// to get the list of words.
7008	DownloadUri *string `min:"1" type:"string"`
7009
7010	// The language code of the words in the vocabulary filter.
7011	LanguageCode *string `type:"string" enum:"LanguageCode"`
7012
7013	// The date and time that the contents of the vocabulary filter were updated.
7014	LastModifiedTime *time.Time `type:"timestamp"`
7015
7016	// The name of the vocabulary filter.
7017	VocabularyFilterName *string `min:"1" type:"string"`
7018}
7019
7020// String returns the string representation.
7021//
7022// API parameter values that are decorated as "sensitive" in the API will not
7023// be included in the string output. The member name will be present, but the
7024// value will be replaced with "sensitive".
7025func (s GetVocabularyFilterOutput) String() string {
7026	return awsutil.Prettify(s)
7027}
7028
7029// GoString returns the string representation.
7030//
7031// API parameter values that are decorated as "sensitive" in the API will not
7032// be included in the string output. The member name will be present, but the
7033// value will be replaced with "sensitive".
7034func (s GetVocabularyFilterOutput) GoString() string {
7035	return s.String()
7036}
7037
7038// SetDownloadUri sets the DownloadUri field's value.
7039func (s *GetVocabularyFilterOutput) SetDownloadUri(v string) *GetVocabularyFilterOutput {
7040	s.DownloadUri = &v
7041	return s
7042}
7043
7044// SetLanguageCode sets the LanguageCode field's value.
7045func (s *GetVocabularyFilterOutput) SetLanguageCode(v string) *GetVocabularyFilterOutput {
7046	s.LanguageCode = &v
7047	return s
7048}
7049
7050// SetLastModifiedTime sets the LastModifiedTime field's value.
7051func (s *GetVocabularyFilterOutput) SetLastModifiedTime(v time.Time) *GetVocabularyFilterOutput {
7052	s.LastModifiedTime = &v
7053	return s
7054}
7055
7056// SetVocabularyFilterName sets the VocabularyFilterName field's value.
7057func (s *GetVocabularyFilterOutput) SetVocabularyFilterName(v string) *GetVocabularyFilterOutput {
7058	s.VocabularyFilterName = &v
7059	return s
7060}
7061
7062type GetVocabularyInput struct {
7063	_ struct{} `type:"structure"`
7064
7065	// The name of the vocabulary to return information about. The name is case
7066	// sensitive.
7067	//
7068	// VocabularyName is a required field
7069	VocabularyName *string `min:"1" type:"string" required:"true"`
7070}
7071
7072// String returns the string representation.
7073//
7074// API parameter values that are decorated as "sensitive" in the API will not
7075// be included in the string output. The member name will be present, but the
7076// value will be replaced with "sensitive".
7077func (s GetVocabularyInput) String() string {
7078	return awsutil.Prettify(s)
7079}
7080
7081// GoString returns the string representation.
7082//
7083// API parameter values that are decorated as "sensitive" in the API will not
7084// be included in the string output. The member name will be present, but the
7085// value will be replaced with "sensitive".
7086func (s GetVocabularyInput) GoString() string {
7087	return s.String()
7088}
7089
7090// Validate inspects the fields of the type to determine if they are valid.
7091func (s *GetVocabularyInput) Validate() error {
7092	invalidParams := request.ErrInvalidParams{Context: "GetVocabularyInput"}
7093	if s.VocabularyName == nil {
7094		invalidParams.Add(request.NewErrParamRequired("VocabularyName"))
7095	}
7096	if s.VocabularyName != nil && len(*s.VocabularyName) < 1 {
7097		invalidParams.Add(request.NewErrParamMinLen("VocabularyName", 1))
7098	}
7099
7100	if invalidParams.Len() > 0 {
7101		return invalidParams
7102	}
7103	return nil
7104}
7105
7106// SetVocabularyName sets the VocabularyName field's value.
7107func (s *GetVocabularyInput) SetVocabularyName(v string) *GetVocabularyInput {
7108	s.VocabularyName = &v
7109	return s
7110}
7111
7112type GetVocabularyOutput struct {
7113	_ struct{} `type:"structure"`
7114
7115	// The S3 location where the vocabulary is stored. Use this URI to get the contents
7116	// of the vocabulary. The URI is available for a limited time.
7117	DownloadUri *string `min:"1" type:"string"`
7118
7119	// If the VocabularyState field is FAILED, this field contains information about
7120	// why the job failed.
7121	FailureReason *string `type:"string"`
7122
7123	// The language code of the vocabulary entries.
7124	LanguageCode *string `type:"string" enum:"LanguageCode"`
7125
7126	// The date and time that the vocabulary was last modified.
7127	LastModifiedTime *time.Time `type:"timestamp"`
7128
7129	// The name of the vocabulary to return.
7130	VocabularyName *string `min:"1" type:"string"`
7131
7132	// The processing state of the vocabulary.
7133	VocabularyState *string `type:"string" enum:"VocabularyState"`
7134}
7135
7136// String returns the string representation.
7137//
7138// API parameter values that are decorated as "sensitive" in the API will not
7139// be included in the string output. The member name will be present, but the
7140// value will be replaced with "sensitive".
7141func (s GetVocabularyOutput) String() string {
7142	return awsutil.Prettify(s)
7143}
7144
7145// GoString returns the string representation.
7146//
7147// API parameter values that are decorated as "sensitive" in the API will not
7148// be included in the string output. The member name will be present, but the
7149// value will be replaced with "sensitive".
7150func (s GetVocabularyOutput) GoString() string {
7151	return s.String()
7152}
7153
7154// SetDownloadUri sets the DownloadUri field's value.
7155func (s *GetVocabularyOutput) SetDownloadUri(v string) *GetVocabularyOutput {
7156	s.DownloadUri = &v
7157	return s
7158}
7159
7160// SetFailureReason sets the FailureReason field's value.
7161func (s *GetVocabularyOutput) SetFailureReason(v string) *GetVocabularyOutput {
7162	s.FailureReason = &v
7163	return s
7164}
7165
7166// SetLanguageCode sets the LanguageCode field's value.
7167func (s *GetVocabularyOutput) SetLanguageCode(v string) *GetVocabularyOutput {
7168	s.LanguageCode = &v
7169	return s
7170}
7171
7172// SetLastModifiedTime sets the LastModifiedTime field's value.
7173func (s *GetVocabularyOutput) SetLastModifiedTime(v time.Time) *GetVocabularyOutput {
7174	s.LastModifiedTime = &v
7175	return s
7176}
7177
7178// SetVocabularyName sets the VocabularyName field's value.
7179func (s *GetVocabularyOutput) SetVocabularyName(v string) *GetVocabularyOutput {
7180	s.VocabularyName = &v
7181	return s
7182}
7183
7184// SetVocabularyState sets the VocabularyState field's value.
7185func (s *GetVocabularyOutput) SetVocabularyState(v string) *GetVocabularyOutput {
7186	s.VocabularyState = &v
7187	return s
7188}
7189
7190// The object that contains the Amazon S3 object location and access role required
7191// to train and tune your custom language model.
7192type InputDataConfig struct {
7193	_ struct{} `type:"structure"`
7194
7195	// The Amazon Resource Name (ARN) that uniquely identifies the permissions you've
7196	// given Amazon Transcribe to access your Amazon S3 buckets containing your
7197	// media files or text data. ARNs have the format arn:partition:service:region:account-id:resource-type/resource-id.
7198	//
7199	// DataAccessRoleArn is a required field
7200	DataAccessRoleArn *string `min:"20" type:"string" required:"true"`
7201
7202	// The Amazon S3 prefix you specify to access the plain text files that you
7203	// use to train your custom language model.
7204	//
7205	// S3Uri is a required field
7206	S3Uri *string `min:"1" type:"string" required:"true"`
7207
7208	// The Amazon S3 prefix you specify to access the plain text files that you
7209	// use to tune your custom language model.
7210	TuningDataS3Uri *string `min:"1" type:"string"`
7211}
7212
7213// String returns the string representation.
7214//
7215// API parameter values that are decorated as "sensitive" in the API will not
7216// be included in the string output. The member name will be present, but the
7217// value will be replaced with "sensitive".
7218func (s InputDataConfig) String() string {
7219	return awsutil.Prettify(s)
7220}
7221
7222// GoString returns the string representation.
7223//
7224// API parameter values that are decorated as "sensitive" in the API will not
7225// be included in the string output. The member name will be present, but the
7226// value will be replaced with "sensitive".
7227func (s InputDataConfig) GoString() string {
7228	return s.String()
7229}
7230
7231// Validate inspects the fields of the type to determine if they are valid.
7232func (s *InputDataConfig) Validate() error {
7233	invalidParams := request.ErrInvalidParams{Context: "InputDataConfig"}
7234	if s.DataAccessRoleArn == nil {
7235		invalidParams.Add(request.NewErrParamRequired("DataAccessRoleArn"))
7236	}
7237	if s.DataAccessRoleArn != nil && len(*s.DataAccessRoleArn) < 20 {
7238		invalidParams.Add(request.NewErrParamMinLen("DataAccessRoleArn", 20))
7239	}
7240	if s.S3Uri == nil {
7241		invalidParams.Add(request.NewErrParamRequired("S3Uri"))
7242	}
7243	if s.S3Uri != nil && len(*s.S3Uri) < 1 {
7244		invalidParams.Add(request.NewErrParamMinLen("S3Uri", 1))
7245	}
7246	if s.TuningDataS3Uri != nil && len(*s.TuningDataS3Uri) < 1 {
7247		invalidParams.Add(request.NewErrParamMinLen("TuningDataS3Uri", 1))
7248	}
7249
7250	if invalidParams.Len() > 0 {
7251		return invalidParams
7252	}
7253	return nil
7254}
7255
7256// SetDataAccessRoleArn sets the DataAccessRoleArn field's value.
7257func (s *InputDataConfig) SetDataAccessRoleArn(v string) *InputDataConfig {
7258	s.DataAccessRoleArn = &v
7259	return s
7260}
7261
7262// SetS3Uri sets the S3Uri field's value.
7263func (s *InputDataConfig) SetS3Uri(v string) *InputDataConfig {
7264	s.S3Uri = &v
7265	return s
7266}
7267
7268// SetTuningDataS3Uri sets the TuningDataS3Uri field's value.
7269func (s *InputDataConfig) SetTuningDataS3Uri(v string) *InputDataConfig {
7270	s.TuningDataS3Uri = &v
7271	return s
7272}
7273
7274// There was an internal error. Check the error message and try your request
7275// again.
7276type InternalFailureException struct {
7277	_            struct{}                  `type:"structure"`
7278	RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"`
7279
7280	Message_ *string `locationName:"Message" type:"string"`
7281}
7282
7283// String returns the string representation.
7284//
7285// API parameter values that are decorated as "sensitive" in the API will not
7286// be included in the string output. The member name will be present, but the
7287// value will be replaced with "sensitive".
7288func (s InternalFailureException) String() string {
7289	return awsutil.Prettify(s)
7290}
7291
7292// GoString returns the string representation.
7293//
7294// API parameter values that are decorated as "sensitive" in the API will not
7295// be included in the string output. The member name will be present, but the
7296// value will be replaced with "sensitive".
7297func (s InternalFailureException) GoString() string {
7298	return s.String()
7299}
7300
7301func newErrorInternalFailureException(v protocol.ResponseMetadata) error {
7302	return &InternalFailureException{
7303		RespMetadata: v,
7304	}
7305}
7306
7307// Code returns the exception type name.
7308func (s *InternalFailureException) Code() string {
7309	return "InternalFailureException"
7310}
7311
7312// Message returns the exception's message.
7313func (s *InternalFailureException) Message() string {
7314	if s.Message_ != nil {
7315		return *s.Message_
7316	}
7317	return ""
7318}
7319
7320// OrigErr always returns nil, satisfies awserr.Error interface.
7321func (s *InternalFailureException) OrigErr() error {
7322	return nil
7323}
7324
7325func (s *InternalFailureException) Error() string {
7326	return fmt.Sprintf("%s: %s", s.Code(), s.Message())
7327}
7328
7329// Status code returns the HTTP status code for the request's response error.
7330func (s *InternalFailureException) StatusCode() int {
7331	return s.RespMetadata.StatusCode
7332}
7333
7334// RequestID returns the service's response RequestID for request.
7335func (s *InternalFailureException) RequestID() string {
7336	return s.RespMetadata.RequestID
7337}
7338
7339// An object that enables you to configure your category to be applied to call
7340// analytics jobs where either the customer or agent was interrupted.
7341type InterruptionFilter struct {
7342	_ struct{} `type:"structure"`
7343
7344	// An object you can use to specify a time range (in milliseconds) for when
7345	// you'd want to find the interruption. For example, you could search for an
7346	// interruption between the 30,000 millisecond mark and the 45,000 millisecond
7347	// mark. You could also specify the time period as the first 15,000 milliseconds
7348	// or the last 15,000 milliseconds.
7349	AbsoluteTimeRange *AbsoluteTimeRange `type:"structure"`
7350
7351	// Set to TRUE to look for a time period where there was no interruption.
7352	Negate *bool `type:"boolean"`
7353
7354	// Indicates whether the caller or customer was interrupting.
7355	ParticipantRole *string `type:"string" enum:"ParticipantRole"`
7356
7357	// An object that allows percentages to specify the proportion of the call where
7358	// there was a interruption. For example, you can specify the first half of
7359	// the call. You can also specify the period of time between halfway through
7360	// to three-quarters of the way through the call. Because the length of conversation
7361	// can vary between calls, you can apply relative time ranges across all calls.
7362	RelativeTimeRange *RelativeTimeRange `type:"structure"`
7363
7364	// The duration of the interruption.
7365	Threshold *int64 `type:"long"`
7366}
7367
7368// String returns the string representation.
7369//
7370// API parameter values that are decorated as "sensitive" in the API will not
7371// be included in the string output. The member name will be present, but the
7372// value will be replaced with "sensitive".
7373func (s InterruptionFilter) String() string {
7374	return awsutil.Prettify(s)
7375}
7376
7377// GoString returns the string representation.
7378//
7379// API parameter values that are decorated as "sensitive" in the API will not
7380// be included in the string output. The member name will be present, but the
7381// value will be replaced with "sensitive".
7382func (s InterruptionFilter) GoString() string {
7383	return s.String()
7384}
7385
7386// SetAbsoluteTimeRange sets the AbsoluteTimeRange field's value.
7387func (s *InterruptionFilter) SetAbsoluteTimeRange(v *AbsoluteTimeRange) *InterruptionFilter {
7388	s.AbsoluteTimeRange = v
7389	return s
7390}
7391
7392// SetNegate sets the Negate field's value.
7393func (s *InterruptionFilter) SetNegate(v bool) *InterruptionFilter {
7394	s.Negate = &v
7395	return s
7396}
7397
7398// SetParticipantRole sets the ParticipantRole field's value.
7399func (s *InterruptionFilter) SetParticipantRole(v string) *InterruptionFilter {
7400	s.ParticipantRole = &v
7401	return s
7402}
7403
7404// SetRelativeTimeRange sets the RelativeTimeRange field's value.
7405func (s *InterruptionFilter) SetRelativeTimeRange(v *RelativeTimeRange) *InterruptionFilter {
7406	s.RelativeTimeRange = v
7407	return s
7408}
7409
7410// SetThreshold sets the Threshold field's value.
7411func (s *InterruptionFilter) SetThreshold(v int64) *InterruptionFilter {
7412	s.Threshold = &v
7413	return s
7414}
7415
7416// Provides information about when a transcription job should be executed.
7417type JobExecutionSettings struct {
7418	_ struct{} `type:"structure"`
7419
7420	// Indicates whether a job should be queued by Amazon Transcribe when the concurrent
7421	// execution limit is exceeded. When the AllowDeferredExecution field is true,
7422	// jobs are queued and executed when the number of executing jobs falls below
7423	// the concurrent execution limit. If the field is false, Amazon Transcribe
7424	// returns a LimitExceededException exception.
7425	//
7426	// Note that job queuing is enabled by default for call analytics jobs.
7427	//
7428	// If you specify the AllowDeferredExecution field, you must specify the DataAccessRoleArn
7429	// field.
7430	AllowDeferredExecution *bool `type:"boolean"`
7431
7432	// The Amazon Resource Name (ARN), in the form arn:partition:service:region:account-id:resource-type/resource-id,
7433	// of a role that has access to the S3 bucket that contains the input files.
7434	// Amazon Transcribe assumes this role to read queued media files. If you have
7435	// specified an output S3 bucket for the transcription results, this role should
7436	// have access to the output bucket as well.
7437	//
7438	// If you specify the AllowDeferredExecution field, you must specify the DataAccessRoleArn
7439	// field.
7440	DataAccessRoleArn *string `min:"20" type:"string"`
7441}
7442
7443// String returns the string representation.
7444//
7445// API parameter values that are decorated as "sensitive" in the API will not
7446// be included in the string output. The member name will be present, but the
7447// value will be replaced with "sensitive".
7448func (s JobExecutionSettings) String() string {
7449	return awsutil.Prettify(s)
7450}
7451
7452// GoString returns the string representation.
7453//
7454// API parameter values that are decorated as "sensitive" in the API will not
7455// be included in the string output. The member name will be present, but the
7456// value will be replaced with "sensitive".
7457func (s JobExecutionSettings) GoString() string {
7458	return s.String()
7459}
7460
7461// Validate inspects the fields of the type to determine if they are valid.
7462func (s *JobExecutionSettings) Validate() error {
7463	invalidParams := request.ErrInvalidParams{Context: "JobExecutionSettings"}
7464	if s.DataAccessRoleArn != nil && len(*s.DataAccessRoleArn) < 20 {
7465		invalidParams.Add(request.NewErrParamMinLen("DataAccessRoleArn", 20))
7466	}
7467
7468	if invalidParams.Len() > 0 {
7469		return invalidParams
7470	}
7471	return nil
7472}
7473
7474// SetAllowDeferredExecution sets the AllowDeferredExecution field's value.
7475func (s *JobExecutionSettings) SetAllowDeferredExecution(v bool) *JobExecutionSettings {
7476	s.AllowDeferredExecution = &v
7477	return s
7478}
7479
7480// SetDataAccessRoleArn sets the DataAccessRoleArn field's value.
7481func (s *JobExecutionSettings) SetDataAccessRoleArn(v string) *JobExecutionSettings {
7482	s.DataAccessRoleArn = &v
7483	return s
7484}
7485
7486// Language-specific settings that can be specified when language identification
7487// is enabled.
7488type LanguageIdSettings struct {
7489	_ struct{} `type:"structure"`
7490
7491	// The name of the language model you want to use when transcribing your audio.
7492	// The model you specify must have the same language code as the transcription
7493	// job; if the languages don't match, the language model won't be applied.
7494	LanguageModelName *string `min:"1" type:"string"`
7495
7496	// The name of the vocabulary filter you want to use when transcribing your
7497	// audio. The filter you specify must have the same language code as the transcription
7498	// job; if the languages don't match, the vocabulary filter won't be applied.
7499	VocabularyFilterName *string `min:"1" type:"string"`
7500
7501	// The name of the vocabulary you want to use when processing your transcription
7502	// job. The vocabulary you specify must have the same language code as the transcription
7503	// job; if the languages don't match, the vocabulary won't be applied.
7504	VocabularyName *string `min:"1" type:"string"`
7505}
7506
7507// String returns the string representation.
7508//
7509// API parameter values that are decorated as "sensitive" in the API will not
7510// be included in the string output. The member name will be present, but the
7511// value will be replaced with "sensitive".
7512func (s LanguageIdSettings) String() string {
7513	return awsutil.Prettify(s)
7514}
7515
7516// GoString returns the string representation.
7517//
7518// API parameter values that are decorated as "sensitive" in the API will not
7519// be included in the string output. The member name will be present, but the
7520// value will be replaced with "sensitive".
7521func (s LanguageIdSettings) GoString() string {
7522	return s.String()
7523}
7524
7525// Validate inspects the fields of the type to determine if they are valid.
7526func (s *LanguageIdSettings) Validate() error {
7527	invalidParams := request.ErrInvalidParams{Context: "LanguageIdSettings"}
7528	if s.LanguageModelName != nil && len(*s.LanguageModelName) < 1 {
7529		invalidParams.Add(request.NewErrParamMinLen("LanguageModelName", 1))
7530	}
7531	if s.VocabularyFilterName != nil && len(*s.VocabularyFilterName) < 1 {
7532		invalidParams.Add(request.NewErrParamMinLen("VocabularyFilterName", 1))
7533	}
7534	if s.VocabularyName != nil && len(*s.VocabularyName) < 1 {
7535		invalidParams.Add(request.NewErrParamMinLen("VocabularyName", 1))
7536	}
7537
7538	if invalidParams.Len() > 0 {
7539		return invalidParams
7540	}
7541	return nil
7542}
7543
7544// SetLanguageModelName sets the LanguageModelName field's value.
7545func (s *LanguageIdSettings) SetLanguageModelName(v string) *LanguageIdSettings {
7546	s.LanguageModelName = &v
7547	return s
7548}
7549
7550// SetVocabularyFilterName sets the VocabularyFilterName field's value.
7551func (s *LanguageIdSettings) SetVocabularyFilterName(v string) *LanguageIdSettings {
7552	s.VocabularyFilterName = &v
7553	return s
7554}
7555
7556// SetVocabularyName sets the VocabularyName field's value.
7557func (s *LanguageIdSettings) SetVocabularyName(v string) *LanguageIdSettings {
7558	s.VocabularyName = &v
7559	return s
7560}
7561
7562// The structure used to describe a custom language model.
7563type LanguageModel struct {
7564	_ struct{} `type:"structure"`
7565
7566	// The Amazon Transcribe standard language model, or base model used to create
7567	// the custom language model.
7568	BaseModelName *string `type:"string" enum:"BaseModelName"`
7569
7570	// The time the custom language model was created.
7571	CreateTime *time.Time `type:"timestamp"`
7572
7573	// The reason why the custom language model couldn't be created.
7574	FailureReason *string `type:"string"`
7575
7576	// The data access role and Amazon S3 prefixes for the input files used to train
7577	// the custom language model.
7578	InputDataConfig *InputDataConfig `type:"structure"`
7579
7580	// The language code you used to create your custom language model.
7581	LanguageCode *string `type:"string" enum:"CLMLanguageCode"`
7582
7583	// The most recent time the custom language model was modified.
7584	LastModifiedTime *time.Time `type:"timestamp"`
7585
7586	// The name of the custom language model.
7587	ModelName *string `min:"1" type:"string"`
7588
7589	// The creation status of a custom language model. When the status is COMPLETED
7590	// the model is ready for use.
7591	ModelStatus *string `type:"string" enum:"ModelStatus"`
7592
7593	// Whether the base model used for the custom language model is up to date.
7594	// If this field is true then you are running the most up-to-date version of
7595	// the base model in your custom language model.
7596	UpgradeAvailability *bool `type:"boolean"`
7597}
7598
7599// String returns the string representation.
7600//
7601// API parameter values that are decorated as "sensitive" in the API will not
7602// be included in the string output. The member name will be present, but the
7603// value will be replaced with "sensitive".
7604func (s LanguageModel) String() string {
7605	return awsutil.Prettify(s)
7606}
7607
7608// GoString returns the string representation.
7609//
7610// API parameter values that are decorated as "sensitive" in the API will not
7611// be included in the string output. The member name will be present, but the
7612// value will be replaced with "sensitive".
7613func (s LanguageModel) GoString() string {
7614	return s.String()
7615}
7616
7617// SetBaseModelName sets the BaseModelName field's value.
7618func (s *LanguageModel) SetBaseModelName(v string) *LanguageModel {
7619	s.BaseModelName = &v
7620	return s
7621}
7622
7623// SetCreateTime sets the CreateTime field's value.
7624func (s *LanguageModel) SetCreateTime(v time.Time) *LanguageModel {
7625	s.CreateTime = &v
7626	return s
7627}
7628
7629// SetFailureReason sets the FailureReason field's value.
7630func (s *LanguageModel) SetFailureReason(v string) *LanguageModel {
7631	s.FailureReason = &v
7632	return s
7633}
7634
7635// SetInputDataConfig sets the InputDataConfig field's value.
7636func (s *LanguageModel) SetInputDataConfig(v *InputDataConfig) *LanguageModel {
7637	s.InputDataConfig = v
7638	return s
7639}
7640
7641// SetLanguageCode sets the LanguageCode field's value.
7642func (s *LanguageModel) SetLanguageCode(v string) *LanguageModel {
7643	s.LanguageCode = &v
7644	return s
7645}
7646
7647// SetLastModifiedTime sets the LastModifiedTime field's value.
7648func (s *LanguageModel) SetLastModifiedTime(v time.Time) *LanguageModel {
7649	s.LastModifiedTime = &v
7650	return s
7651}
7652
7653// SetModelName sets the ModelName field's value.
7654func (s *LanguageModel) SetModelName(v string) *LanguageModel {
7655	s.ModelName = &v
7656	return s
7657}
7658
7659// SetModelStatus sets the ModelStatus field's value.
7660func (s *LanguageModel) SetModelStatus(v string) *LanguageModel {
7661	s.ModelStatus = &v
7662	return s
7663}
7664
7665// SetUpgradeAvailability sets the UpgradeAvailability field's value.
7666func (s *LanguageModel) SetUpgradeAvailability(v bool) *LanguageModel {
7667	s.UpgradeAvailability = &v
7668	return s
7669}
7670
7671// Either you have sent too many requests or your input file is too long. Wait
7672// before you resend your request, or use a smaller file and resend the request.
7673type LimitExceededException struct {
7674	_            struct{}                  `type:"structure"`
7675	RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"`
7676
7677	Message_ *string `locationName:"Message" type:"string"`
7678}
7679
7680// String returns the string representation.
7681//
7682// API parameter values that are decorated as "sensitive" in the API will not
7683// be included in the string output. The member name will be present, but the
7684// value will be replaced with "sensitive".
7685func (s LimitExceededException) String() string {
7686	return awsutil.Prettify(s)
7687}
7688
7689// GoString returns the string representation.
7690//
7691// API parameter values that are decorated as "sensitive" in the API will not
7692// be included in the string output. The member name will be present, but the
7693// value will be replaced with "sensitive".
7694func (s LimitExceededException) GoString() string {
7695	return s.String()
7696}
7697
7698func newErrorLimitExceededException(v protocol.ResponseMetadata) error {
7699	return &LimitExceededException{
7700		RespMetadata: v,
7701	}
7702}
7703
7704// Code returns the exception type name.
7705func (s *LimitExceededException) Code() string {
7706	return "LimitExceededException"
7707}
7708
7709// Message returns the exception's message.
7710func (s *LimitExceededException) Message() string {
7711	if s.Message_ != nil {
7712		return *s.Message_
7713	}
7714	return ""
7715}
7716
7717// OrigErr always returns nil, satisfies awserr.Error interface.
7718func (s *LimitExceededException) OrigErr() error {
7719	return nil
7720}
7721
7722func (s *LimitExceededException) Error() string {
7723	return fmt.Sprintf("%s: %s", s.Code(), s.Message())
7724}
7725
7726// Status code returns the HTTP status code for the request's response error.
7727func (s *LimitExceededException) StatusCode() int {
7728	return s.RespMetadata.StatusCode
7729}
7730
7731// RequestID returns the service's response RequestID for request.
7732func (s *LimitExceededException) RequestID() string {
7733	return s.RespMetadata.RequestID
7734}
7735
7736type ListCallAnalyticsCategoriesInput struct {
7737	_ struct{} `type:"structure"`
7738
7739	// The maximum number of categories to return in each page of results. If there
7740	// are fewer results than the value you specify, only the actual results are
7741	// returned. If you do not specify a value, the default of 5 is used.
7742	MaxResults *int64 `min:"1" type:"integer"`
7743
7744	// When included, NextTokenfetches the next set of categories if the result
7745	// of the previous request was truncated.
7746	NextToken *string `type:"string"`
7747}
7748
7749// String returns the string representation.
7750//
7751// API parameter values that are decorated as "sensitive" in the API will not
7752// be included in the string output. The member name will be present, but the
7753// value will be replaced with "sensitive".
7754func (s ListCallAnalyticsCategoriesInput) String() string {
7755	return awsutil.Prettify(s)
7756}
7757
7758// GoString returns the string representation.
7759//
7760// API parameter values that are decorated as "sensitive" in the API will not
7761// be included in the string output. The member name will be present, but the
7762// value will be replaced with "sensitive".
7763func (s ListCallAnalyticsCategoriesInput) GoString() string {
7764	return s.String()
7765}
7766
7767// Validate inspects the fields of the type to determine if they are valid.
7768func (s *ListCallAnalyticsCategoriesInput) Validate() error {
7769	invalidParams := request.ErrInvalidParams{Context: "ListCallAnalyticsCategoriesInput"}
7770	if s.MaxResults != nil && *s.MaxResults < 1 {
7771		invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1))
7772	}
7773
7774	if invalidParams.Len() > 0 {
7775		return invalidParams
7776	}
7777	return nil
7778}
7779
7780// SetMaxResults sets the MaxResults field's value.
7781func (s *ListCallAnalyticsCategoriesInput) SetMaxResults(v int64) *ListCallAnalyticsCategoriesInput {
7782	s.MaxResults = &v
7783	return s
7784}
7785
7786// SetNextToken sets the NextToken field's value.
7787func (s *ListCallAnalyticsCategoriesInput) SetNextToken(v string) *ListCallAnalyticsCategoriesInput {
7788	s.NextToken = &v
7789	return s
7790}
7791
7792type ListCallAnalyticsCategoriesOutput struct {
7793	_ struct{} `type:"structure"`
7794
7795	// A list of objects containing information about analytics categories.
7796	Categories []*CategoryProperties `type:"list"`
7797
7798	// The operation returns a page of jobs at a time. The maximum size of the list
7799	// is set by the MaxResults parameter. If there are more categories in the list
7800	// than the page size, Amazon Transcribe returns the NextPage token. Include
7801	// the token in the next request to the operation to return the next page of
7802	// analytics categories.
7803	NextToken *string `type:"string"`
7804}
7805
7806// String returns the string representation.
7807//
7808// API parameter values that are decorated as "sensitive" in the API will not
7809// be included in the string output. The member name will be present, but the
7810// value will be replaced with "sensitive".
7811func (s ListCallAnalyticsCategoriesOutput) String() string {
7812	return awsutil.Prettify(s)
7813}
7814
7815// GoString returns the string representation.
7816//
7817// API parameter values that are decorated as "sensitive" in the API will not
7818// be included in the string output. The member name will be present, but the
7819// value will be replaced with "sensitive".
7820func (s ListCallAnalyticsCategoriesOutput) GoString() string {
7821	return s.String()
7822}
7823
7824// SetCategories sets the Categories field's value.
7825func (s *ListCallAnalyticsCategoriesOutput) SetCategories(v []*CategoryProperties) *ListCallAnalyticsCategoriesOutput {
7826	s.Categories = v
7827	return s
7828}
7829
7830// SetNextToken sets the NextToken field's value.
7831func (s *ListCallAnalyticsCategoriesOutput) SetNextToken(v string) *ListCallAnalyticsCategoriesOutput {
7832	s.NextToken = &v
7833	return s
7834}
7835
7836type ListCallAnalyticsJobsInput struct {
7837	_ struct{} `type:"structure"`
7838
7839	// When specified, the jobs returned in the list are limited to jobs whose name
7840	// contains the specified string.
7841	JobNameContains *string `min:"1" type:"string"`
7842
7843	// The maximum number of call analytics jobs to return in each page of results.
7844	// If there are fewer results than the value you specify, only the actual results
7845	// are returned. If you do not specify a value, the default of 5 is used.
7846	MaxResults *int64 `min:"1" type:"integer"`
7847
7848	// If you receive a truncated result in the previous request of , include NextToken
7849	// to fetch the next set of jobs.
7850	NextToken *string `type:"string"`
7851
7852	// When specified, returns only call analytics jobs with the specified status.
7853	// Jobs are ordered by creation date, with the most recent jobs returned first.
7854	// If you don't specify a status, Amazon Transcribe returns all analytics jobs
7855	// ordered by creation date.
7856	Status *string `type:"string" enum:"CallAnalyticsJobStatus"`
7857}
7858
7859// String returns the string representation.
7860//
7861// API parameter values that are decorated as "sensitive" in the API will not
7862// be included in the string output. The member name will be present, but the
7863// value will be replaced with "sensitive".
7864func (s ListCallAnalyticsJobsInput) String() string {
7865	return awsutil.Prettify(s)
7866}
7867
7868// GoString returns the string representation.
7869//
7870// API parameter values that are decorated as "sensitive" in the API will not
7871// be included in the string output. The member name will be present, but the
7872// value will be replaced with "sensitive".
7873func (s ListCallAnalyticsJobsInput) GoString() string {
7874	return s.String()
7875}
7876
7877// Validate inspects the fields of the type to determine if they are valid.
7878func (s *ListCallAnalyticsJobsInput) Validate() error {
7879	invalidParams := request.ErrInvalidParams{Context: "ListCallAnalyticsJobsInput"}
7880	if s.JobNameContains != nil && len(*s.JobNameContains) < 1 {
7881		invalidParams.Add(request.NewErrParamMinLen("JobNameContains", 1))
7882	}
7883	if s.MaxResults != nil && *s.MaxResults < 1 {
7884		invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1))
7885	}
7886
7887	if invalidParams.Len() > 0 {
7888		return invalidParams
7889	}
7890	return nil
7891}
7892
7893// SetJobNameContains sets the JobNameContains field's value.
7894func (s *ListCallAnalyticsJobsInput) SetJobNameContains(v string) *ListCallAnalyticsJobsInput {
7895	s.JobNameContains = &v
7896	return s
7897}
7898
7899// SetMaxResults sets the MaxResults field's value.
7900func (s *ListCallAnalyticsJobsInput) SetMaxResults(v int64) *ListCallAnalyticsJobsInput {
7901	s.MaxResults = &v
7902	return s
7903}
7904
7905// SetNextToken sets the NextToken field's value.
7906func (s *ListCallAnalyticsJobsInput) SetNextToken(v string) *ListCallAnalyticsJobsInput {
7907	s.NextToken = &v
7908	return s
7909}
7910
7911// SetStatus sets the Status field's value.
7912func (s *ListCallAnalyticsJobsInput) SetStatus(v string) *ListCallAnalyticsJobsInput {
7913	s.Status = &v
7914	return s
7915}
7916
7917type ListCallAnalyticsJobsOutput struct {
7918	_ struct{} `type:"structure"`
7919
7920	// A list of objects containing summary information for a transcription job.
7921	CallAnalyticsJobSummaries []*CallAnalyticsJobSummary `type:"list"`
7922
7923	// The operation returns a page of jobs at a time. The maximum size of the page
7924	// is set by the MaxResults parameter. If there are more jobs in the list than
7925	// the page size, Amazon Transcribe returns the NextPage token. Include the
7926	// token in your next request to the operation to return next page of jobs.
7927	NextToken *string `type:"string"`
7928
7929	// When specified, returns only call analytics jobs with that status. Jobs are
7930	// ordered by creation date, with the most recent jobs returned first. If you
7931	// don't specify a status, Amazon Transcribe returns all transcription jobs
7932	// ordered by creation date.
7933	Status *string `type:"string" enum:"CallAnalyticsJobStatus"`
7934}
7935
7936// String returns the string representation.
7937//
7938// API parameter values that are decorated as "sensitive" in the API will not
7939// be included in the string output. The member name will be present, but the
7940// value will be replaced with "sensitive".
7941func (s ListCallAnalyticsJobsOutput) String() string {
7942	return awsutil.Prettify(s)
7943}
7944
7945// GoString returns the string representation.
7946//
7947// API parameter values that are decorated as "sensitive" in the API will not
7948// be included in the string output. The member name will be present, but the
7949// value will be replaced with "sensitive".
7950func (s ListCallAnalyticsJobsOutput) GoString() string {
7951	return s.String()
7952}
7953
7954// SetCallAnalyticsJobSummaries sets the CallAnalyticsJobSummaries field's value.
7955func (s *ListCallAnalyticsJobsOutput) SetCallAnalyticsJobSummaries(v []*CallAnalyticsJobSummary) *ListCallAnalyticsJobsOutput {
7956	s.CallAnalyticsJobSummaries = v
7957	return s
7958}
7959
7960// SetNextToken sets the NextToken field's value.
7961func (s *ListCallAnalyticsJobsOutput) SetNextToken(v string) *ListCallAnalyticsJobsOutput {
7962	s.NextToken = &v
7963	return s
7964}
7965
7966// SetStatus sets the Status field's value.
7967func (s *ListCallAnalyticsJobsOutput) SetStatus(v string) *ListCallAnalyticsJobsOutput {
7968	s.Status = &v
7969	return s
7970}
7971
7972type ListLanguageModelsInput struct {
7973	_ struct{} `type:"structure"`
7974
7975	// The maximum number of language models to return in each page of results.
7976	// If there are fewer results than the value you specify, only the actual results
7977	// are returned. If you do not specify a value, the default of 5 is used.
7978	MaxResults *int64 `min:"1" type:"integer"`
7979
7980	// When specified, the custom language model names returned contain the substring
7981	// you've specified.
7982	NameContains *string `min:"1" type:"string"`
7983
7984	// When included, fetches the next set of jobs if the result of the previous
7985	// request was truncated.
7986	NextToken *string `type:"string"`
7987
7988	// When specified, returns only custom language models with the specified status.
7989	// Language models are ordered by creation date, with the newest models first.
7990	// If you don't specify a status, Amazon Transcribe returns all custom language
7991	// models ordered by date.
7992	StatusEquals *string `type:"string" enum:"ModelStatus"`
7993}
7994
7995// String returns the string representation.
7996//
7997// API parameter values that are decorated as "sensitive" in the API will not
7998// be included in the string output. The member name will be present, but the
7999// value will be replaced with "sensitive".
8000func (s ListLanguageModelsInput) String() string {
8001	return awsutil.Prettify(s)
8002}
8003
8004// GoString returns the string representation.
8005//
8006// API parameter values that are decorated as "sensitive" in the API will not
8007// be included in the string output. The member name will be present, but the
8008// value will be replaced with "sensitive".
8009func (s ListLanguageModelsInput) GoString() string {
8010	return s.String()
8011}
8012
8013// Validate inspects the fields of the type to determine if they are valid.
8014func (s *ListLanguageModelsInput) Validate() error {
8015	invalidParams := request.ErrInvalidParams{Context: "ListLanguageModelsInput"}
8016	if s.MaxResults != nil && *s.MaxResults < 1 {
8017		invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1))
8018	}
8019	if s.NameContains != nil && len(*s.NameContains) < 1 {
8020		invalidParams.Add(request.NewErrParamMinLen("NameContains", 1))
8021	}
8022
8023	if invalidParams.Len() > 0 {
8024		return invalidParams
8025	}
8026	return nil
8027}
8028
8029// SetMaxResults sets the MaxResults field's value.
8030func (s *ListLanguageModelsInput) SetMaxResults(v int64) *ListLanguageModelsInput {
8031	s.MaxResults = &v
8032	return s
8033}
8034
8035// SetNameContains sets the NameContains field's value.
8036func (s *ListLanguageModelsInput) SetNameContains(v string) *ListLanguageModelsInput {
8037	s.NameContains = &v
8038	return s
8039}
8040
8041// SetNextToken sets the NextToken field's value.
8042func (s *ListLanguageModelsInput) SetNextToken(v string) *ListLanguageModelsInput {
8043	s.NextToken = &v
8044	return s
8045}
8046
8047// SetStatusEquals sets the StatusEquals field's value.
8048func (s *ListLanguageModelsInput) SetStatusEquals(v string) *ListLanguageModelsInput {
8049	s.StatusEquals = &v
8050	return s
8051}
8052
8053type ListLanguageModelsOutput struct {
8054	_ struct{} `type:"structure"`
8055
8056	// A list of objects containing information about custom language models.
8057	Models []*LanguageModel `type:"list"`
8058
8059	// The operation returns a page of jobs at a time. The maximum size of the list
8060	// is set by the MaxResults parameter. If there are more language models in
8061	// the list than the page size, Amazon Transcribe returns the NextPage token.
8062	// Include the token in the next request to the operation to return the next
8063	// page of language models.
8064	NextToken *string `type:"string"`
8065}
8066
8067// String returns the string representation.
8068//
8069// API parameter values that are decorated as "sensitive" in the API will not
8070// be included in the string output. The member name will be present, but the
8071// value will be replaced with "sensitive".
8072func (s ListLanguageModelsOutput) String() string {
8073	return awsutil.Prettify(s)
8074}
8075
8076// GoString returns the string representation.
8077//
8078// API parameter values that are decorated as "sensitive" in the API will not
8079// be included in the string output. The member name will be present, but the
8080// value will be replaced with "sensitive".
8081func (s ListLanguageModelsOutput) GoString() string {
8082	return s.String()
8083}
8084
8085// SetModels sets the Models field's value.
8086func (s *ListLanguageModelsOutput) SetModels(v []*LanguageModel) *ListLanguageModelsOutput {
8087	s.Models = v
8088	return s
8089}
8090
8091// SetNextToken sets the NextToken field's value.
8092func (s *ListLanguageModelsOutput) SetNextToken(v string) *ListLanguageModelsOutput {
8093	s.NextToken = &v
8094	return s
8095}
8096
8097type ListMedicalTranscriptionJobsInput struct {
8098	_ struct{} `type:"structure"`
8099
8100	// When specified, the jobs returned in the list are limited to jobs whose name
8101	// contains the specified string.
8102	JobNameContains *string `min:"1" type:"string"`
8103
8104	// The maximum number of medical transcription jobs to return in each page of
8105	// results. If there are fewer results than the value you specify, only the
8106	// actual results are returned. If you do not specify a value, the default of
8107	// 5 is used.
8108	MaxResults *int64 `min:"1" type:"integer"`
8109
8110	// If you a receive a truncated result in the previous request of ListMedicalTranscriptionJobs,
8111	// include NextToken to fetch the next set of jobs.
8112	NextToken *string `type:"string"`
8113
8114	// When specified, returns only medical transcription jobs with the specified
8115	// status. Jobs are ordered by creation date, with the newest jobs returned
8116	// first. If you don't specify a status, Amazon Transcribe Medical returns all
8117	// transcription jobs ordered by creation date.
8118	Status *string `type:"string" enum:"TranscriptionJobStatus"`
8119}
8120
8121// String returns the string representation.
8122//
8123// API parameter values that are decorated as "sensitive" in the API will not
8124// be included in the string output. The member name will be present, but the
8125// value will be replaced with "sensitive".
8126func (s ListMedicalTranscriptionJobsInput) String() string {
8127	return awsutil.Prettify(s)
8128}
8129
8130// GoString returns the string representation.
8131//
8132// API parameter values that are decorated as "sensitive" in the API will not
8133// be included in the string output. The member name will be present, but the
8134// value will be replaced with "sensitive".
8135func (s ListMedicalTranscriptionJobsInput) GoString() string {
8136	return s.String()
8137}
8138
8139// Validate inspects the fields of the type to determine if they are valid.
8140func (s *ListMedicalTranscriptionJobsInput) Validate() error {
8141	invalidParams := request.ErrInvalidParams{Context: "ListMedicalTranscriptionJobsInput"}
8142	if s.JobNameContains != nil && len(*s.JobNameContains) < 1 {
8143		invalidParams.Add(request.NewErrParamMinLen("JobNameContains", 1))
8144	}
8145	if s.MaxResults != nil && *s.MaxResults < 1 {
8146		invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1))
8147	}
8148
8149	if invalidParams.Len() > 0 {
8150		return invalidParams
8151	}
8152	return nil
8153}
8154
8155// SetJobNameContains sets the JobNameContains field's value.
8156func (s *ListMedicalTranscriptionJobsInput) SetJobNameContains(v string) *ListMedicalTranscriptionJobsInput {
8157	s.JobNameContains = &v
8158	return s
8159}
8160
8161// SetMaxResults sets the MaxResults field's value.
8162func (s *ListMedicalTranscriptionJobsInput) SetMaxResults(v int64) *ListMedicalTranscriptionJobsInput {
8163	s.MaxResults = &v
8164	return s
8165}
8166
8167// SetNextToken sets the NextToken field's value.
8168func (s *ListMedicalTranscriptionJobsInput) SetNextToken(v string) *ListMedicalTranscriptionJobsInput {
8169	s.NextToken = &v
8170	return s
8171}
8172
8173// SetStatus sets the Status field's value.
8174func (s *ListMedicalTranscriptionJobsInput) SetStatus(v string) *ListMedicalTranscriptionJobsInput {
8175	s.Status = &v
8176	return s
8177}
8178
8179type ListMedicalTranscriptionJobsOutput struct {
8180	_ struct{} `type:"structure"`
8181
8182	// A list of objects containing summary information for a transcription job.
8183	MedicalTranscriptionJobSummaries []*MedicalTranscriptionJobSummary `type:"list"`
8184
8185	// The ListMedicalTranscriptionJobs operation returns a page of jobs at a time.
8186	// The maximum size of the page is set by the MaxResults parameter. If the number
8187	// of jobs exceeds what can fit on a page, Amazon Transcribe Medical returns
8188	// the NextPage token. Include the token in the next request to the ListMedicalTranscriptionJobs
8189	// operation to return in the next page of jobs.
8190	NextToken *string `type:"string"`
8191
8192	// The requested status of the medical transcription jobs returned.
8193	Status *string `type:"string" enum:"TranscriptionJobStatus"`
8194}
8195
8196// String returns the string representation.
8197//
8198// API parameter values that are decorated as "sensitive" in the API will not
8199// be included in the string output. The member name will be present, but the
8200// value will be replaced with "sensitive".
8201func (s ListMedicalTranscriptionJobsOutput) String() string {
8202	return awsutil.Prettify(s)
8203}
8204
8205// GoString returns the string representation.
8206//
8207// API parameter values that are decorated as "sensitive" in the API will not
8208// be included in the string output. The member name will be present, but the
8209// value will be replaced with "sensitive".
8210func (s ListMedicalTranscriptionJobsOutput) GoString() string {
8211	return s.String()
8212}
8213
8214// SetMedicalTranscriptionJobSummaries sets the MedicalTranscriptionJobSummaries field's value.
8215func (s *ListMedicalTranscriptionJobsOutput) SetMedicalTranscriptionJobSummaries(v []*MedicalTranscriptionJobSummary) *ListMedicalTranscriptionJobsOutput {
8216	s.MedicalTranscriptionJobSummaries = v
8217	return s
8218}
8219
8220// SetNextToken sets the NextToken field's value.
8221func (s *ListMedicalTranscriptionJobsOutput) SetNextToken(v string) *ListMedicalTranscriptionJobsOutput {
8222	s.NextToken = &v
8223	return s
8224}
8225
8226// SetStatus sets the Status field's value.
8227func (s *ListMedicalTranscriptionJobsOutput) SetStatus(v string) *ListMedicalTranscriptionJobsOutput {
8228	s.Status = &v
8229	return s
8230}
8231
8232type ListMedicalVocabulariesInput struct {
8233	_ struct{} `type:"structure"`
8234
8235	// The maximum number of vocabularies to return in each page of results. If
8236	// there are fewer results than the value you specify, only the actual results
8237	// are returned. If you do not specify a value, the default of 5 is used.
8238	MaxResults *int64 `min:"1" type:"integer"`
8239
8240	// Returns vocabularies whose names contain the specified string. The search
8241	// is not case sensitive. ListMedicalVocabularies returns both "vocabularyname"
8242	// and "VocabularyName".
8243	NameContains *string `min:"1" type:"string"`
8244
8245	// If the result of your previous request to ListMedicalVocabularies was truncated,
8246	// include the NextToken to fetch the next set of vocabularies.
8247	NextToken *string `type:"string"`
8248
8249	// When specified, returns only vocabularies with the VocabularyState equal
8250	// to the specified vocabulary state. Use this field to see which vocabularies
8251	// are ready for your medical transcription jobs.
8252	StateEquals *string `type:"string" enum:"VocabularyState"`
8253}
8254
8255// String returns the string representation.
8256//
8257// API parameter values that are decorated as "sensitive" in the API will not
8258// be included in the string output. The member name will be present, but the
8259// value will be replaced with "sensitive".
8260func (s ListMedicalVocabulariesInput) String() string {
8261	return awsutil.Prettify(s)
8262}
8263
8264// GoString returns the string representation.
8265//
8266// API parameter values that are decorated as "sensitive" in the API will not
8267// be included in the string output. The member name will be present, but the
8268// value will be replaced with "sensitive".
8269func (s ListMedicalVocabulariesInput) GoString() string {
8270	return s.String()
8271}
8272
8273// Validate inspects the fields of the type to determine if they are valid.
8274func (s *ListMedicalVocabulariesInput) Validate() error {
8275	invalidParams := request.ErrInvalidParams{Context: "ListMedicalVocabulariesInput"}
8276	if s.MaxResults != nil && *s.MaxResults < 1 {
8277		invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1))
8278	}
8279	if s.NameContains != nil && len(*s.NameContains) < 1 {
8280		invalidParams.Add(request.NewErrParamMinLen("NameContains", 1))
8281	}
8282
8283	if invalidParams.Len() > 0 {
8284		return invalidParams
8285	}
8286	return nil
8287}
8288
8289// SetMaxResults sets the MaxResults field's value.
8290func (s *ListMedicalVocabulariesInput) SetMaxResults(v int64) *ListMedicalVocabulariesInput {
8291	s.MaxResults = &v
8292	return s
8293}
8294
8295// SetNameContains sets the NameContains field's value.
8296func (s *ListMedicalVocabulariesInput) SetNameContains(v string) *ListMedicalVocabulariesInput {
8297	s.NameContains = &v
8298	return s
8299}
8300
8301// SetNextToken sets the NextToken field's value.
8302func (s *ListMedicalVocabulariesInput) SetNextToken(v string) *ListMedicalVocabulariesInput {
8303	s.NextToken = &v
8304	return s
8305}
8306
8307// SetStateEquals sets the StateEquals field's value.
8308func (s *ListMedicalVocabulariesInput) SetStateEquals(v string) *ListMedicalVocabulariesInput {
8309	s.StateEquals = &v
8310	return s
8311}
8312
8313type ListMedicalVocabulariesOutput struct {
8314	_ struct{} `type:"structure"`
8315
8316	// The ListMedicalVocabularies operation returns a page of vocabularies at a
8317	// time. You set the maximum number of vocabularies to return on a page with
8318	// the MaxResults parameter. If there are more jobs in the list will fit on
8319	// a page, Amazon Transcribe Medical returns the NextPage token. To return the
8320	// next page of vocabularies, include the token in the next request to the ListMedicalVocabularies
8321	// operation .
8322	NextToken *string `type:"string"`
8323
8324	// The requested vocabulary state.
8325	Status *string `type:"string" enum:"VocabularyState"`
8326
8327	// A list of objects that describe the vocabularies that match your search criteria.
8328	Vocabularies []*VocabularyInfo `type:"list"`
8329}
8330
8331// String returns the string representation.
8332//
8333// API parameter values that are decorated as "sensitive" in the API will not
8334// be included in the string output. The member name will be present, but the
8335// value will be replaced with "sensitive".
8336func (s ListMedicalVocabulariesOutput) String() string {
8337	return awsutil.Prettify(s)
8338}
8339
8340// GoString returns the string representation.
8341//
8342// API parameter values that are decorated as "sensitive" in the API will not
8343// be included in the string output. The member name will be present, but the
8344// value will be replaced with "sensitive".
8345func (s ListMedicalVocabulariesOutput) GoString() string {
8346	return s.String()
8347}
8348
8349// SetNextToken sets the NextToken field's value.
8350func (s *ListMedicalVocabulariesOutput) SetNextToken(v string) *ListMedicalVocabulariesOutput {
8351	s.NextToken = &v
8352	return s
8353}
8354
8355// SetStatus sets the Status field's value.
8356func (s *ListMedicalVocabulariesOutput) SetStatus(v string) *ListMedicalVocabulariesOutput {
8357	s.Status = &v
8358	return s
8359}
8360
8361// SetVocabularies sets the Vocabularies field's value.
8362func (s *ListMedicalVocabulariesOutput) SetVocabularies(v []*VocabularyInfo) *ListMedicalVocabulariesOutput {
8363	s.Vocabularies = v
8364	return s
8365}
8366
8367type ListTagsForResourceInput struct {
8368	_ struct{} `type:"structure"`
8369
8370	// Lists all tags associated with a given Amazon Resource Name (ARN). ARNs have
8371	// the format arn:partition:service:region:account-id:resource-type/resource-id
8372	// (for example, arn:aws:transcribe:us-east-1:account-id:transcription-job/your-job-name).
8373	// Valid values for resource-type are: transcription-job, medical-transcription-job,
8374	// vocabulary, medical-vocabulary, vocabulary-filter, and language-model.
8375	//
8376	// ResourceArn is a required field
8377	ResourceArn *string `min:"1" type:"string" required:"true"`
8378}
8379
8380// String returns the string representation.
8381//
8382// API parameter values that are decorated as "sensitive" in the API will not
8383// be included in the string output. The member name will be present, but the
8384// value will be replaced with "sensitive".
8385func (s ListTagsForResourceInput) String() string {
8386	return awsutil.Prettify(s)
8387}
8388
8389// GoString returns the string representation.
8390//
8391// API parameter values that are decorated as "sensitive" in the API will not
8392// be included in the string output. The member name will be present, but the
8393// value will be replaced with "sensitive".
8394func (s ListTagsForResourceInput) GoString() string {
8395	return s.String()
8396}
8397
8398// Validate inspects the fields of the type to determine if they are valid.
8399func (s *ListTagsForResourceInput) Validate() error {
8400	invalidParams := request.ErrInvalidParams{Context: "ListTagsForResourceInput"}
8401	if s.ResourceArn == nil {
8402		invalidParams.Add(request.NewErrParamRequired("ResourceArn"))
8403	}
8404	if s.ResourceArn != nil && len(*s.ResourceArn) < 1 {
8405		invalidParams.Add(request.NewErrParamMinLen("ResourceArn", 1))
8406	}
8407
8408	if invalidParams.Len() > 0 {
8409		return invalidParams
8410	}
8411	return nil
8412}
8413
8414// SetResourceArn sets the ResourceArn field's value.
8415func (s *ListTagsForResourceInput) SetResourceArn(v string) *ListTagsForResourceInput {
8416	s.ResourceArn = &v
8417	return s
8418}
8419
8420type ListTagsForResourceOutput struct {
8421	_ struct{} `type:"structure"`
8422
8423	// Lists all tags associated with the given Amazon Resource Name (ARN).
8424	ResourceArn *string `min:"1" type:"string"`
8425
8426	// Lists all tags associated with the given transcription job, vocabulary, or
8427	// resource.
8428	Tags []*Tag `min:"1" type:"list"`
8429}
8430
8431// String returns the string representation.
8432//
8433// API parameter values that are decorated as "sensitive" in the API will not
8434// be included in the string output. The member name will be present, but the
8435// value will be replaced with "sensitive".
8436func (s ListTagsForResourceOutput) String() string {
8437	return awsutil.Prettify(s)
8438}
8439
8440// GoString returns the string representation.
8441//
8442// API parameter values that are decorated as "sensitive" in the API will not
8443// be included in the string output. The member name will be present, but the
8444// value will be replaced with "sensitive".
8445func (s ListTagsForResourceOutput) GoString() string {
8446	return s.String()
8447}
8448
8449// SetResourceArn sets the ResourceArn field's value.
8450func (s *ListTagsForResourceOutput) SetResourceArn(v string) *ListTagsForResourceOutput {
8451	s.ResourceArn = &v
8452	return s
8453}
8454
8455// SetTags sets the Tags field's value.
8456func (s *ListTagsForResourceOutput) SetTags(v []*Tag) *ListTagsForResourceOutput {
8457	s.Tags = v
8458	return s
8459}
8460
8461type ListTranscriptionJobsInput struct {
8462	_ struct{} `type:"structure"`
8463
8464	// When specified, the jobs returned in the list are limited to jobs whose name
8465	// contains the specified string.
8466	JobNameContains *string `min:"1" type:"string"`
8467
8468	// The maximum number of jobs to return in each page of results. If there are
8469	// fewer results than the value you specify, only the actual results are returned.
8470	// If you do not specify a value, the default of 5 is used.
8471	MaxResults *int64 `min:"1" type:"integer"`
8472
8473	// If the result of the previous request to ListTranscriptionJobs is truncated,
8474	// include the NextToken to fetch the next set of jobs.
8475	NextToken *string `type:"string"`
8476
8477	// When specified, returns only transcription jobs with the specified status.
8478	// Jobs are ordered by creation date, with the newest jobs returned first. If
8479	// you don’t specify a status, Amazon Transcribe returns all transcription
8480	// jobs ordered by creation date.
8481	Status *string `type:"string" enum:"TranscriptionJobStatus"`
8482}
8483
8484// String returns the string representation.
8485//
8486// API parameter values that are decorated as "sensitive" in the API will not
8487// be included in the string output. The member name will be present, but the
8488// value will be replaced with "sensitive".
8489func (s ListTranscriptionJobsInput) String() string {
8490	return awsutil.Prettify(s)
8491}
8492
8493// GoString returns the string representation.
8494//
8495// API parameter values that are decorated as "sensitive" in the API will not
8496// be included in the string output. The member name will be present, but the
8497// value will be replaced with "sensitive".
8498func (s ListTranscriptionJobsInput) GoString() string {
8499	return s.String()
8500}
8501
8502// Validate inspects the fields of the type to determine if they are valid.
8503func (s *ListTranscriptionJobsInput) Validate() error {
8504	invalidParams := request.ErrInvalidParams{Context: "ListTranscriptionJobsInput"}
8505	if s.JobNameContains != nil && len(*s.JobNameContains) < 1 {
8506		invalidParams.Add(request.NewErrParamMinLen("JobNameContains", 1))
8507	}
8508	if s.MaxResults != nil && *s.MaxResults < 1 {
8509		invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1))
8510	}
8511
8512	if invalidParams.Len() > 0 {
8513		return invalidParams
8514	}
8515	return nil
8516}
8517
8518// SetJobNameContains sets the JobNameContains field's value.
8519func (s *ListTranscriptionJobsInput) SetJobNameContains(v string) *ListTranscriptionJobsInput {
8520	s.JobNameContains = &v
8521	return s
8522}
8523
8524// SetMaxResults sets the MaxResults field's value.
8525func (s *ListTranscriptionJobsInput) SetMaxResults(v int64) *ListTranscriptionJobsInput {
8526	s.MaxResults = &v
8527	return s
8528}
8529
8530// SetNextToken sets the NextToken field's value.
8531func (s *ListTranscriptionJobsInput) SetNextToken(v string) *ListTranscriptionJobsInput {
8532	s.NextToken = &v
8533	return s
8534}
8535
8536// SetStatus sets the Status field's value.
8537func (s *ListTranscriptionJobsInput) SetStatus(v string) *ListTranscriptionJobsInput {
8538	s.Status = &v
8539	return s
8540}
8541
8542type ListTranscriptionJobsOutput struct {
8543	_ struct{} `type:"structure"`
8544
8545	// The ListTranscriptionJobs operation returns a page of jobs at a time. The
8546	// maximum size of the page is set by the MaxResults parameter. If there are
8547	// more jobs in the list than the page size, Amazon Transcribe returns the NextPage
8548	// token. Include the token in the next request to the ListTranscriptionJobs
8549	// operation to return in the next page of jobs.
8550	NextToken *string `type:"string"`
8551
8552	// The requested status of the jobs returned.
8553	Status *string `type:"string" enum:"TranscriptionJobStatus"`
8554
8555	// A list of objects containing summary information for a transcription job.
8556	TranscriptionJobSummaries []*TranscriptionJobSummary `type:"list"`
8557}
8558
8559// String returns the string representation.
8560//
8561// API parameter values that are decorated as "sensitive" in the API will not
8562// be included in the string output. The member name will be present, but the
8563// value will be replaced with "sensitive".
8564func (s ListTranscriptionJobsOutput) String() string {
8565	return awsutil.Prettify(s)
8566}
8567
8568// GoString returns the string representation.
8569//
8570// API parameter values that are decorated as "sensitive" in the API will not
8571// be included in the string output. The member name will be present, but the
8572// value will be replaced with "sensitive".
8573func (s ListTranscriptionJobsOutput) GoString() string {
8574	return s.String()
8575}
8576
8577// SetNextToken sets the NextToken field's value.
8578func (s *ListTranscriptionJobsOutput) SetNextToken(v string) *ListTranscriptionJobsOutput {
8579	s.NextToken = &v
8580	return s
8581}
8582
8583// SetStatus sets the Status field's value.
8584func (s *ListTranscriptionJobsOutput) SetStatus(v string) *ListTranscriptionJobsOutput {
8585	s.Status = &v
8586	return s
8587}
8588
8589// SetTranscriptionJobSummaries sets the TranscriptionJobSummaries field's value.
8590func (s *ListTranscriptionJobsOutput) SetTranscriptionJobSummaries(v []*TranscriptionJobSummary) *ListTranscriptionJobsOutput {
8591	s.TranscriptionJobSummaries = v
8592	return s
8593}
8594
8595type ListVocabulariesInput struct {
8596	_ struct{} `type:"structure"`
8597
8598	// The maximum number of vocabularies to return in each page of results. If
8599	// there are fewer results than the value you specify, only the actual results
8600	// are returned. If you do not specify a value, the default of 5 is used.
8601	MaxResults *int64 `min:"1" type:"integer"`
8602
8603	// When specified, the vocabularies returned in the list are limited to vocabularies
8604	// whose name contains the specified string. The search is not case sensitive,
8605	// ListVocabularies returns both "vocabularyname" and "VocabularyName" in the
8606	// response list.
8607	NameContains *string `min:"1" type:"string"`
8608
8609	// If the result of the previous request to ListVocabularies was truncated,
8610	// include the NextToken to fetch the next set of jobs.
8611	NextToken *string `type:"string"`
8612
8613	// When specified, only returns vocabularies with the VocabularyState field
8614	// equal to the specified state.
8615	StateEquals *string `type:"string" enum:"VocabularyState"`
8616}
8617
8618// String returns the string representation.
8619//
8620// API parameter values that are decorated as "sensitive" in the API will not
8621// be included in the string output. The member name will be present, but the
8622// value will be replaced with "sensitive".
8623func (s ListVocabulariesInput) String() string {
8624	return awsutil.Prettify(s)
8625}
8626
8627// GoString returns the string representation.
8628//
8629// API parameter values that are decorated as "sensitive" in the API will not
8630// be included in the string output. The member name will be present, but the
8631// value will be replaced with "sensitive".
8632func (s ListVocabulariesInput) GoString() string {
8633	return s.String()
8634}
8635
8636// Validate inspects the fields of the type to determine if they are valid.
8637func (s *ListVocabulariesInput) Validate() error {
8638	invalidParams := request.ErrInvalidParams{Context: "ListVocabulariesInput"}
8639	if s.MaxResults != nil && *s.MaxResults < 1 {
8640		invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1))
8641	}
8642	if s.NameContains != nil && len(*s.NameContains) < 1 {
8643		invalidParams.Add(request.NewErrParamMinLen("NameContains", 1))
8644	}
8645
8646	if invalidParams.Len() > 0 {
8647		return invalidParams
8648	}
8649	return nil
8650}
8651
8652// SetMaxResults sets the MaxResults field's value.
8653func (s *ListVocabulariesInput) SetMaxResults(v int64) *ListVocabulariesInput {
8654	s.MaxResults = &v
8655	return s
8656}
8657
8658// SetNameContains sets the NameContains field's value.
8659func (s *ListVocabulariesInput) SetNameContains(v string) *ListVocabulariesInput {
8660	s.NameContains = &v
8661	return s
8662}
8663
8664// SetNextToken sets the NextToken field's value.
8665func (s *ListVocabulariesInput) SetNextToken(v string) *ListVocabulariesInput {
8666	s.NextToken = &v
8667	return s
8668}
8669
8670// SetStateEquals sets the StateEquals field's value.
8671func (s *ListVocabulariesInput) SetStateEquals(v string) *ListVocabulariesInput {
8672	s.StateEquals = &v
8673	return s
8674}
8675
8676type ListVocabulariesOutput struct {
8677	_ struct{} `type:"structure"`
8678
8679	// The ListVocabularies operation returns a page of vocabularies at a time.
8680	// The maximum size of the page is set in the MaxResults parameter. If there
8681	// are more jobs in the list than will fit on the page, Amazon Transcribe returns
8682	// the NextPage token. To return in the next page of jobs, include the token
8683	// in the next request to the ListVocabularies operation.
8684	NextToken *string `type:"string"`
8685
8686	// The requested vocabulary state.
8687	Status *string `type:"string" enum:"VocabularyState"`
8688
8689	// A list of objects that describe the vocabularies that match the search criteria
8690	// in the request.
8691	Vocabularies []*VocabularyInfo `type:"list"`
8692}
8693
8694// String returns the string representation.
8695//
8696// API parameter values that are decorated as "sensitive" in the API will not
8697// be included in the string output. The member name will be present, but the
8698// value will be replaced with "sensitive".
8699func (s ListVocabulariesOutput) String() string {
8700	return awsutil.Prettify(s)
8701}
8702
8703// GoString returns the string representation.
8704//
8705// API parameter values that are decorated as "sensitive" in the API will not
8706// be included in the string output. The member name will be present, but the
8707// value will be replaced with "sensitive".
8708func (s ListVocabulariesOutput) GoString() string {
8709	return s.String()
8710}
8711
8712// SetNextToken sets the NextToken field's value.
8713func (s *ListVocabulariesOutput) SetNextToken(v string) *ListVocabulariesOutput {
8714	s.NextToken = &v
8715	return s
8716}
8717
8718// SetStatus sets the Status field's value.
8719func (s *ListVocabulariesOutput) SetStatus(v string) *ListVocabulariesOutput {
8720	s.Status = &v
8721	return s
8722}
8723
8724// SetVocabularies sets the Vocabularies field's value.
8725func (s *ListVocabulariesOutput) SetVocabularies(v []*VocabularyInfo) *ListVocabulariesOutput {
8726	s.Vocabularies = v
8727	return s
8728}
8729
8730type ListVocabularyFiltersInput struct {
8731	_ struct{} `type:"structure"`
8732
8733	// The maximum number of filters to return in each page of results. If there
8734	// are fewer results than the value you specify, only the actual results are
8735	// returned. If you do not specify a value, the default of 5 is used.
8736	MaxResults *int64 `min:"1" type:"integer"`
8737
8738	// Filters the response so that it only contains vocabulary filters whose name
8739	// contains the specified string.
8740	NameContains *string `min:"1" type:"string"`
8741
8742	// If the result of the previous request to ListVocabularyFilters was truncated,
8743	// include the NextToken to fetch the next set of collections.
8744	NextToken *string `type:"string"`
8745}
8746
8747// String returns the string representation.
8748//
8749// API parameter values that are decorated as "sensitive" in the API will not
8750// be included in the string output. The member name will be present, but the
8751// value will be replaced with "sensitive".
8752func (s ListVocabularyFiltersInput) String() string {
8753	return awsutil.Prettify(s)
8754}
8755
8756// GoString returns the string representation.
8757//
8758// API parameter values that are decorated as "sensitive" in the API will not
8759// be included in the string output. The member name will be present, but the
8760// value will be replaced with "sensitive".
8761func (s ListVocabularyFiltersInput) GoString() string {
8762	return s.String()
8763}
8764
8765// Validate inspects the fields of the type to determine if they are valid.
8766func (s *ListVocabularyFiltersInput) Validate() error {
8767	invalidParams := request.ErrInvalidParams{Context: "ListVocabularyFiltersInput"}
8768	if s.MaxResults != nil && *s.MaxResults < 1 {
8769		invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1))
8770	}
8771	if s.NameContains != nil && len(*s.NameContains) < 1 {
8772		invalidParams.Add(request.NewErrParamMinLen("NameContains", 1))
8773	}
8774
8775	if invalidParams.Len() > 0 {
8776		return invalidParams
8777	}
8778	return nil
8779}
8780
8781// SetMaxResults sets the MaxResults field's value.
8782func (s *ListVocabularyFiltersInput) SetMaxResults(v int64) *ListVocabularyFiltersInput {
8783	s.MaxResults = &v
8784	return s
8785}
8786
8787// SetNameContains sets the NameContains field's value.
8788func (s *ListVocabularyFiltersInput) SetNameContains(v string) *ListVocabularyFiltersInput {
8789	s.NameContains = &v
8790	return s
8791}
8792
8793// SetNextToken sets the NextToken field's value.
8794func (s *ListVocabularyFiltersInput) SetNextToken(v string) *ListVocabularyFiltersInput {
8795	s.NextToken = &v
8796	return s
8797}
8798
8799type ListVocabularyFiltersOutput struct {
8800	_ struct{} `type:"structure"`
8801
8802	// The ListVocabularyFilters operation returns a page of collections at a time.
8803	// The maximum size of the page is set by the MaxResults parameter. If there
8804	// are more jobs in the list than the page size, Amazon Transcribe returns the
8805	// NextPage token. Include the token in the next request to the ListVocabularyFilters
8806	// operation to return in the next page of jobs.
8807	NextToken *string `type:"string"`
8808
8809	// The list of vocabulary filters. It contains at most MaxResults number of
8810	// filters. If there are more filters, call the ListVocabularyFilters operation
8811	// again with the NextToken parameter in the request set to the value of the
8812	// NextToken field in the response.
8813	VocabularyFilters []*VocabularyFilterInfo `type:"list"`
8814}
8815
8816// String returns the string representation.
8817//
8818// API parameter values that are decorated as "sensitive" in the API will not
8819// be included in the string output. The member name will be present, but the
8820// value will be replaced with "sensitive".
8821func (s ListVocabularyFiltersOutput) String() string {
8822	return awsutil.Prettify(s)
8823}
8824
8825// GoString returns the string representation.
8826//
8827// API parameter values that are decorated as "sensitive" in the API will not
8828// be included in the string output. The member name will be present, but the
8829// value will be replaced with "sensitive".
8830func (s ListVocabularyFiltersOutput) GoString() string {
8831	return s.String()
8832}
8833
8834// SetNextToken sets the NextToken field's value.
8835func (s *ListVocabularyFiltersOutput) SetNextToken(v string) *ListVocabularyFiltersOutput {
8836	s.NextToken = &v
8837	return s
8838}
8839
8840// SetVocabularyFilters sets the VocabularyFilters field's value.
8841func (s *ListVocabularyFiltersOutput) SetVocabularyFilters(v []*VocabularyFilterInfo) *ListVocabularyFiltersOutput {
8842	s.VocabularyFilters = v
8843	return s
8844}
8845
8846// Describes the input media file in a transcription request.
8847type Media struct {
8848	_ struct{} `type:"structure"`
8849
8850	// The S3 object location of the input media file. The URI must be in the same
8851	// region as the API endpoint that you are calling. The general form is:
8852	//
8853	// For example:
8854	//
8855	// For more information about S3 object names, see Object Keys (https://docs.aws.amazon.com/AmazonS3/latest/dev/UsingMetadata.html#object-keys)
8856	// in the Amazon S3 Developer Guide.
8857	MediaFileUri *string `min:"1" type:"string"`
8858
8859	// The S3 object location for your redacted output media file. This is only
8860	// supported for call analytics jobs.
8861	RedactedMediaFileUri *string `min:"1" type:"string"`
8862}
8863
8864// String returns the string representation.
8865//
8866// API parameter values that are decorated as "sensitive" in the API will not
8867// be included in the string output. The member name will be present, but the
8868// value will be replaced with "sensitive".
8869func (s Media) String() string {
8870	return awsutil.Prettify(s)
8871}
8872
8873// GoString returns the string representation.
8874//
8875// API parameter values that are decorated as "sensitive" in the API will not
8876// be included in the string output. The member name will be present, but the
8877// value will be replaced with "sensitive".
8878func (s Media) GoString() string {
8879	return s.String()
8880}
8881
8882// Validate inspects the fields of the type to determine if they are valid.
8883func (s *Media) Validate() error {
8884	invalidParams := request.ErrInvalidParams{Context: "Media"}
8885	if s.MediaFileUri != nil && len(*s.MediaFileUri) < 1 {
8886		invalidParams.Add(request.NewErrParamMinLen("MediaFileUri", 1))
8887	}
8888	if s.RedactedMediaFileUri != nil && len(*s.RedactedMediaFileUri) < 1 {
8889		invalidParams.Add(request.NewErrParamMinLen("RedactedMediaFileUri", 1))
8890	}
8891
8892	if invalidParams.Len() > 0 {
8893		return invalidParams
8894	}
8895	return nil
8896}
8897
8898// SetMediaFileUri sets the MediaFileUri field's value.
8899func (s *Media) SetMediaFileUri(v string) *Media {
8900	s.MediaFileUri = &v
8901	return s
8902}
8903
8904// SetRedactedMediaFileUri sets the RedactedMediaFileUri field's value.
8905func (s *Media) SetRedactedMediaFileUri(v string) *Media {
8906	s.RedactedMediaFileUri = &v
8907	return s
8908}
8909
8910// Identifies the location of a medical transcript.
8911type MedicalTranscript struct {
8912	_ struct{} `type:"structure"`
8913
8914	// The S3 object location of the medical transcript.
8915	//
8916	// Use this URI to access the medical transcript. This URI points to the S3
8917	// bucket you created to store the medical transcript.
8918	TranscriptFileUri *string `min:"1" type:"string"`
8919}
8920
8921// String returns the string representation.
8922//
8923// API parameter values that are decorated as "sensitive" in the API will not
8924// be included in the string output. The member name will be present, but the
8925// value will be replaced with "sensitive".
8926func (s MedicalTranscript) String() string {
8927	return awsutil.Prettify(s)
8928}
8929
8930// GoString returns the string representation.
8931//
8932// API parameter values that are decorated as "sensitive" in the API will not
8933// be included in the string output. The member name will be present, but the
8934// value will be replaced with "sensitive".
8935func (s MedicalTranscript) GoString() string {
8936	return s.String()
8937}
8938
8939// SetTranscriptFileUri sets the TranscriptFileUri field's value.
8940func (s *MedicalTranscript) SetTranscriptFileUri(v string) *MedicalTranscript {
8941	s.TranscriptFileUri = &v
8942	return s
8943}
8944
8945// The data structure that contains the information for a medical transcription
8946// job.
8947type MedicalTranscriptionJob struct {
8948	_ struct{} `type:"structure"`
8949
8950	// A timestamp that shows when the job was completed.
8951	CompletionTime *time.Time `type:"timestamp"`
8952
8953	// Shows the type of content that you've configured Amazon Transcribe Medical
8954	// to identify in a transcription job. If the value is PHI, you've configured
8955	// the job to identify personal health information (PHI) in the transcription
8956	// output.
8957	ContentIdentificationType *string `type:"string" enum:"MedicalContentIdentificationType"`
8958
8959	// A timestamp that shows when the job was created.
8960	CreationTime *time.Time `type:"timestamp"`
8961
8962	// If the TranscriptionJobStatus field is FAILED, this field contains information
8963	// about why the job failed.
8964	//
8965	// The FailureReason field contains one of the following values:
8966	//
8967	//    * Unsupported media format- The media format specified in the MediaFormat
8968	//    field of the request isn't valid. See the description of the MediaFormat
8969	//    field for a list of valid values.
8970	//
8971	//    * The media format provided does not match the detected media format-
8972	//    The media format of the audio file doesn't match the format specified
8973	//    in the MediaFormat field in the request. Check the media format of your
8974	//    media file and make sure the two values match.
8975	//
8976	//    * Invalid sample rate for audio file- The sample rate specified in the
8977	//    MediaSampleRateHertz of the request isn't valid. The sample rate must
8978	//    be between 8,000 and 48,000 Hertz.
8979	//
8980	//    * The sample rate provided does not match the detected sample rate- The
8981	//    sample rate in the audio file doesn't match the sample rate specified
8982	//    in the MediaSampleRateHertz field in the request. Check the sample rate
8983	//    of your media file and make sure that the two values match.
8984	//
8985	//    * Invalid file size: file size too large- The size of your audio file
8986	//    is larger than what Amazon Transcribe Medical can process. For more information,
8987	//    see Guidelines and Quotas (https://docs.aws.amazon.com/transcribe/latest/dg/limits-guidelines.html#limits)
8988	//    in the Amazon Transcribe Medical Guide
8989	//
8990	//    * Invalid number of channels: number of channels too large- Your audio
8991	//    contains more channels than Amazon Transcribe Medical is configured to
8992	//    process. To request additional channels, see Amazon Transcribe Medical
8993	//    Endpoints and Quotas (https://docs.aws.amazon.com/general/latest/gr/transcribe-medical.html)
8994	//    in the Amazon Web Services General Reference
8995	FailureReason *string `type:"string"`
8996
8997	// The language code for the language spoken in the source audio file. US English
8998	// (en-US) is the only supported language for medical transcriptions. Any other
8999	// value you enter for language code results in a BadRequestException error.
9000	LanguageCode *string `type:"string" enum:"LanguageCode"`
9001
9002	// Describes the input media file in a transcription request.
9003	Media *Media `type:"structure"`
9004
9005	// The format of the input media file.
9006	MediaFormat *string `type:"string" enum:"MediaFormat"`
9007
9008	// The sample rate, in Hertz, of the source audio containing medical information.
9009	//
9010	// If you don't specify the sample rate, Amazon Transcribe Medical determines
9011	// it for you. If you choose to specify the sample rate, it must match the rate
9012	// detected by Amazon Transcribe Medical. In most cases, you should leave the
9013	// MedicalMediaSampleHertz blank and let Amazon Transcribe Medical determine
9014	// the sample rate.
9015	MediaSampleRateHertz *int64 `min:"8000" type:"integer"`
9016
9017	// The name for a given medical transcription job.
9018	MedicalTranscriptionJobName *string `min:"1" type:"string"`
9019
9020	// Object that contains object.
9021	Settings *MedicalTranscriptionSetting `type:"structure"`
9022
9023	// The medical specialty of any clinicians providing a dictation or having a
9024	// conversation. Refer to Transcribing a medical conversation (https://docs.aws.amazon.com/transcribe/latest/dg/transcribe-medical-conversation.html)for
9025	// a list of supported specialties.
9026	Specialty *string `type:"string" enum:"Specialty"`
9027
9028	// A timestamp that shows when the job started processing.
9029	StartTime *time.Time `type:"timestamp"`
9030
9031	// A key:value pair assigned to a given medical transcription job.
9032	Tags []*Tag `min:"1" type:"list"`
9033
9034	// An object that contains the MedicalTranscript. The MedicalTranscript contains
9035	// the TranscriptFileUri.
9036	Transcript *MedicalTranscript `type:"structure"`
9037
9038	// The completion status of a medical transcription job.
9039	TranscriptionJobStatus *string `type:"string" enum:"TranscriptionJobStatus"`
9040
9041	// The type of speech in the transcription job. CONVERSATION is generally used
9042	// for patient-physician dialogues. DICTATION is the setting for physicians
9043	// speaking their notes after seeing a patient. For more information, see What
9044	// is Amazon Transcribe Medical? (https://docs.aws.amazon.com/transcribe/latest/dg/what-is-transcribe-med.html).
9045	Type *string `type:"string" enum:"Type"`
9046}
9047
9048// String returns the string representation.
9049//
9050// API parameter values that are decorated as "sensitive" in the API will not
9051// be included in the string output. The member name will be present, but the
9052// value will be replaced with "sensitive".
9053func (s MedicalTranscriptionJob) String() string {
9054	return awsutil.Prettify(s)
9055}
9056
9057// GoString returns the string representation.
9058//
9059// API parameter values that are decorated as "sensitive" in the API will not
9060// be included in the string output. The member name will be present, but the
9061// value will be replaced with "sensitive".
9062func (s MedicalTranscriptionJob) GoString() string {
9063	return s.String()
9064}
9065
9066// SetCompletionTime sets the CompletionTime field's value.
9067func (s *MedicalTranscriptionJob) SetCompletionTime(v time.Time) *MedicalTranscriptionJob {
9068	s.CompletionTime = &v
9069	return s
9070}
9071
9072// SetContentIdentificationType sets the ContentIdentificationType field's value.
9073func (s *MedicalTranscriptionJob) SetContentIdentificationType(v string) *MedicalTranscriptionJob {
9074	s.ContentIdentificationType = &v
9075	return s
9076}
9077
9078// SetCreationTime sets the CreationTime field's value.
9079func (s *MedicalTranscriptionJob) SetCreationTime(v time.Time) *MedicalTranscriptionJob {
9080	s.CreationTime = &v
9081	return s
9082}
9083
9084// SetFailureReason sets the FailureReason field's value.
9085func (s *MedicalTranscriptionJob) SetFailureReason(v string) *MedicalTranscriptionJob {
9086	s.FailureReason = &v
9087	return s
9088}
9089
9090// SetLanguageCode sets the LanguageCode field's value.
9091func (s *MedicalTranscriptionJob) SetLanguageCode(v string) *MedicalTranscriptionJob {
9092	s.LanguageCode = &v
9093	return s
9094}
9095
9096// SetMedia sets the Media field's value.
9097func (s *MedicalTranscriptionJob) SetMedia(v *Media) *MedicalTranscriptionJob {
9098	s.Media = v
9099	return s
9100}
9101
9102// SetMediaFormat sets the MediaFormat field's value.
9103func (s *MedicalTranscriptionJob) SetMediaFormat(v string) *MedicalTranscriptionJob {
9104	s.MediaFormat = &v
9105	return s
9106}
9107
9108// SetMediaSampleRateHertz sets the MediaSampleRateHertz field's value.
9109func (s *MedicalTranscriptionJob) SetMediaSampleRateHertz(v int64) *MedicalTranscriptionJob {
9110	s.MediaSampleRateHertz = &v
9111	return s
9112}
9113
9114// SetMedicalTranscriptionJobName sets the MedicalTranscriptionJobName field's value.
9115func (s *MedicalTranscriptionJob) SetMedicalTranscriptionJobName(v string) *MedicalTranscriptionJob {
9116	s.MedicalTranscriptionJobName = &v
9117	return s
9118}
9119
9120// SetSettings sets the Settings field's value.
9121func (s *MedicalTranscriptionJob) SetSettings(v *MedicalTranscriptionSetting) *MedicalTranscriptionJob {
9122	s.Settings = v
9123	return s
9124}
9125
9126// SetSpecialty sets the Specialty field's value.
9127func (s *MedicalTranscriptionJob) SetSpecialty(v string) *MedicalTranscriptionJob {
9128	s.Specialty = &v
9129	return s
9130}
9131
9132// SetStartTime sets the StartTime field's value.
9133func (s *MedicalTranscriptionJob) SetStartTime(v time.Time) *MedicalTranscriptionJob {
9134	s.StartTime = &v
9135	return s
9136}
9137
9138// SetTags sets the Tags field's value.
9139func (s *MedicalTranscriptionJob) SetTags(v []*Tag) *MedicalTranscriptionJob {
9140	s.Tags = v
9141	return s
9142}
9143
9144// SetTranscript sets the Transcript field's value.
9145func (s *MedicalTranscriptionJob) SetTranscript(v *MedicalTranscript) *MedicalTranscriptionJob {
9146	s.Transcript = v
9147	return s
9148}
9149
9150// SetTranscriptionJobStatus sets the TranscriptionJobStatus field's value.
9151func (s *MedicalTranscriptionJob) SetTranscriptionJobStatus(v string) *MedicalTranscriptionJob {
9152	s.TranscriptionJobStatus = &v
9153	return s
9154}
9155
9156// SetType sets the Type field's value.
9157func (s *MedicalTranscriptionJob) SetType(v string) *MedicalTranscriptionJob {
9158	s.Type = &v
9159	return s
9160}
9161
9162// Provides summary information about a transcription job.
9163type MedicalTranscriptionJobSummary struct {
9164	_ struct{} `type:"structure"`
9165
9166	// A timestamp that shows when the job was completed.
9167	CompletionTime *time.Time `type:"timestamp"`
9168
9169	// Shows the type of information you've configured Amazon Transcribe Medical
9170	// to identify in a transcription job. If the value is PHI, you've configured
9171	// the transcription job to identify personal health information (PHI).
9172	ContentIdentificationType *string `type:"string" enum:"MedicalContentIdentificationType"`
9173
9174	// A timestamp that shows when the medical transcription job was created.
9175	CreationTime *time.Time `type:"timestamp"`
9176
9177	// If the TranscriptionJobStatus field is FAILED, a description of the error.
9178	FailureReason *string `type:"string"`
9179
9180	// The language of the transcript in the source audio file.
9181	LanguageCode *string `type:"string" enum:"LanguageCode"`
9182
9183	// The name of a medical transcription job.
9184	MedicalTranscriptionJobName *string `min:"1" type:"string"`
9185
9186	// Indicates the location of the transcription job's output. This field must
9187	// be the path of an S3 bucket; if you don't already have an S3 bucket, one
9188	// is created based on the path you add.
9189	OutputLocationType *string `type:"string" enum:"OutputLocationType"`
9190
9191	// The medical specialty of the transcription job. Refer to Transcribing a medical
9192	// conversation (https://docs.aws.amazon.com/transcribe/latest/dg/transcribe-medical-conversation.html)for
9193	// a list of supported specialties.
9194	Specialty *string `type:"string" enum:"Specialty"`
9195
9196	// A timestamp that shows when the job began processing.
9197	StartTime *time.Time `type:"timestamp"`
9198
9199	// The status of the medical transcription job.
9200	TranscriptionJobStatus *string `type:"string" enum:"TranscriptionJobStatus"`
9201
9202	// The speech of the clinician in the input audio.
9203	Type *string `type:"string" enum:"Type"`
9204}
9205
9206// String returns the string representation.
9207//
9208// API parameter values that are decorated as "sensitive" in the API will not
9209// be included in the string output. The member name will be present, but the
9210// value will be replaced with "sensitive".
9211func (s MedicalTranscriptionJobSummary) String() string {
9212	return awsutil.Prettify(s)
9213}
9214
9215// GoString returns the string representation.
9216//
9217// API parameter values that are decorated as "sensitive" in the API will not
9218// be included in the string output. The member name will be present, but the
9219// value will be replaced with "sensitive".
9220func (s MedicalTranscriptionJobSummary) GoString() string {
9221	return s.String()
9222}
9223
9224// SetCompletionTime sets the CompletionTime field's value.
9225func (s *MedicalTranscriptionJobSummary) SetCompletionTime(v time.Time) *MedicalTranscriptionJobSummary {
9226	s.CompletionTime = &v
9227	return s
9228}
9229
9230// SetContentIdentificationType sets the ContentIdentificationType field's value.
9231func (s *MedicalTranscriptionJobSummary) SetContentIdentificationType(v string) *MedicalTranscriptionJobSummary {
9232	s.ContentIdentificationType = &v
9233	return s
9234}
9235
9236// SetCreationTime sets the CreationTime field's value.
9237func (s *MedicalTranscriptionJobSummary) SetCreationTime(v time.Time) *MedicalTranscriptionJobSummary {
9238	s.CreationTime = &v
9239	return s
9240}
9241
9242// SetFailureReason sets the FailureReason field's value.
9243func (s *MedicalTranscriptionJobSummary) SetFailureReason(v string) *MedicalTranscriptionJobSummary {
9244	s.FailureReason = &v
9245	return s
9246}
9247
9248// SetLanguageCode sets the LanguageCode field's value.
9249func (s *MedicalTranscriptionJobSummary) SetLanguageCode(v string) *MedicalTranscriptionJobSummary {
9250	s.LanguageCode = &v
9251	return s
9252}
9253
9254// SetMedicalTranscriptionJobName sets the MedicalTranscriptionJobName field's value.
9255func (s *MedicalTranscriptionJobSummary) SetMedicalTranscriptionJobName(v string) *MedicalTranscriptionJobSummary {
9256	s.MedicalTranscriptionJobName = &v
9257	return s
9258}
9259
9260// SetOutputLocationType sets the OutputLocationType field's value.
9261func (s *MedicalTranscriptionJobSummary) SetOutputLocationType(v string) *MedicalTranscriptionJobSummary {
9262	s.OutputLocationType = &v
9263	return s
9264}
9265
9266// SetSpecialty sets the Specialty field's value.
9267func (s *MedicalTranscriptionJobSummary) SetSpecialty(v string) *MedicalTranscriptionJobSummary {
9268	s.Specialty = &v
9269	return s
9270}
9271
9272// SetStartTime sets the StartTime field's value.
9273func (s *MedicalTranscriptionJobSummary) SetStartTime(v time.Time) *MedicalTranscriptionJobSummary {
9274	s.StartTime = &v
9275	return s
9276}
9277
9278// SetTranscriptionJobStatus sets the TranscriptionJobStatus field's value.
9279func (s *MedicalTranscriptionJobSummary) SetTranscriptionJobStatus(v string) *MedicalTranscriptionJobSummary {
9280	s.TranscriptionJobStatus = &v
9281	return s
9282}
9283
9284// SetType sets the Type field's value.
9285func (s *MedicalTranscriptionJobSummary) SetType(v string) *MedicalTranscriptionJobSummary {
9286	s.Type = &v
9287	return s
9288}
9289
9290// Optional settings for the StartMedicalTranscriptionJob operation.
9291type MedicalTranscriptionSetting struct {
9292	_ struct{} `type:"structure"`
9293
9294	// Instructs Amazon Transcribe Medical to process each audio channel separately
9295	// and then merge the transcription output of each channel into a single transcription.
9296	//
9297	// Amazon Transcribe Medical also produces a transcription of each item detected
9298	// on an audio channel, including the start time and end time of the item and
9299	// alternative transcriptions of item. The alternative transcriptions also come
9300	// with confidence scores provided by Amazon Transcribe Medical.
9301	//
9302	// You can't set both ShowSpeakerLabels and ChannelIdentification in the same
9303	// request. If you set both, your request returns a BadRequestException
9304	ChannelIdentification *bool `type:"boolean"`
9305
9306	// The maximum number of alternatives that you tell the service to return. If
9307	// you specify the MaxAlternatives field, you must set the ShowAlternatives
9308	// field to true.
9309	MaxAlternatives *int64 `min:"2" type:"integer"`
9310
9311	// The maximum number of speakers to identify in the input audio. If there are
9312	// more speakers in the audio than this number, multiple speakers are identified
9313	// as a single speaker. If you specify the MaxSpeakerLabels field, you must
9314	// set the ShowSpeakerLabels field to true.
9315	MaxSpeakerLabels *int64 `min:"2" type:"integer"`
9316
9317	// Determines whether alternative transcripts are generated along with the transcript
9318	// that has the highest confidence. If you set ShowAlternatives field to true,
9319	// you must also set the maximum number of alternatives to return in the MaxAlternatives
9320	// field.
9321	ShowAlternatives *bool `type:"boolean"`
9322
9323	// Determines whether the transcription job uses speaker recognition to identify
9324	// different speakers in the input audio. Speaker recognition labels individual
9325	// speakers in the audio file. If you set the ShowSpeakerLabels field to true,
9326	// you must also set the maximum number of speaker labels in the MaxSpeakerLabels
9327	// field.
9328	//
9329	// You can't set both ShowSpeakerLabels and ChannelIdentification in the same
9330	// request. If you set both, your request returns a BadRequestException.
9331	ShowSpeakerLabels *bool `type:"boolean"`
9332
9333	// The name of the vocabulary to use when processing a medical transcription
9334	// job.
9335	VocabularyName *string `min:"1" type:"string"`
9336}
9337
9338// String returns the string representation.
9339//
9340// API parameter values that are decorated as "sensitive" in the API will not
9341// be included in the string output. The member name will be present, but the
9342// value will be replaced with "sensitive".
9343func (s MedicalTranscriptionSetting) String() string {
9344	return awsutil.Prettify(s)
9345}
9346
9347// GoString returns the string representation.
9348//
9349// API parameter values that are decorated as "sensitive" in the API will not
9350// be included in the string output. The member name will be present, but the
9351// value will be replaced with "sensitive".
9352func (s MedicalTranscriptionSetting) GoString() string {
9353	return s.String()
9354}
9355
9356// Validate inspects the fields of the type to determine if they are valid.
9357func (s *MedicalTranscriptionSetting) Validate() error {
9358	invalidParams := request.ErrInvalidParams{Context: "MedicalTranscriptionSetting"}
9359	if s.MaxAlternatives != nil && *s.MaxAlternatives < 2 {
9360		invalidParams.Add(request.NewErrParamMinValue("MaxAlternatives", 2))
9361	}
9362	if s.MaxSpeakerLabels != nil && *s.MaxSpeakerLabels < 2 {
9363		invalidParams.Add(request.NewErrParamMinValue("MaxSpeakerLabels", 2))
9364	}
9365	if s.VocabularyName != nil && len(*s.VocabularyName) < 1 {
9366		invalidParams.Add(request.NewErrParamMinLen("VocabularyName", 1))
9367	}
9368
9369	if invalidParams.Len() > 0 {
9370		return invalidParams
9371	}
9372	return nil
9373}
9374
9375// SetChannelIdentification sets the ChannelIdentification field's value.
9376func (s *MedicalTranscriptionSetting) SetChannelIdentification(v bool) *MedicalTranscriptionSetting {
9377	s.ChannelIdentification = &v
9378	return s
9379}
9380
9381// SetMaxAlternatives sets the MaxAlternatives field's value.
9382func (s *MedicalTranscriptionSetting) SetMaxAlternatives(v int64) *MedicalTranscriptionSetting {
9383	s.MaxAlternatives = &v
9384	return s
9385}
9386
9387// SetMaxSpeakerLabels sets the MaxSpeakerLabels field's value.
9388func (s *MedicalTranscriptionSetting) SetMaxSpeakerLabels(v int64) *MedicalTranscriptionSetting {
9389	s.MaxSpeakerLabels = &v
9390	return s
9391}
9392
9393// SetShowAlternatives sets the ShowAlternatives field's value.
9394func (s *MedicalTranscriptionSetting) SetShowAlternatives(v bool) *MedicalTranscriptionSetting {
9395	s.ShowAlternatives = &v
9396	return s
9397}
9398
9399// SetShowSpeakerLabels sets the ShowSpeakerLabels field's value.
9400func (s *MedicalTranscriptionSetting) SetShowSpeakerLabels(v bool) *MedicalTranscriptionSetting {
9401	s.ShowSpeakerLabels = &v
9402	return s
9403}
9404
9405// SetVocabularyName sets the VocabularyName field's value.
9406func (s *MedicalTranscriptionSetting) SetVocabularyName(v string) *MedicalTranscriptionSetting {
9407	s.VocabularyName = &v
9408	return s
9409}
9410
9411// The object used to call your custom language model to your transcription
9412// job.
9413type ModelSettings struct {
9414	_ struct{} `type:"structure"`
9415
9416	// The name of your custom language model.
9417	LanguageModelName *string `min:"1" type:"string"`
9418}
9419
9420// String returns the string representation.
9421//
9422// API parameter values that are decorated as "sensitive" in the API will not
9423// be included in the string output. The member name will be present, but the
9424// value will be replaced with "sensitive".
9425func (s ModelSettings) String() string {
9426	return awsutil.Prettify(s)
9427}
9428
9429// GoString returns the string representation.
9430//
9431// API parameter values that are decorated as "sensitive" in the API will not
9432// be included in the string output. The member name will be present, but the
9433// value will be replaced with "sensitive".
9434func (s ModelSettings) GoString() string {
9435	return s.String()
9436}
9437
9438// Validate inspects the fields of the type to determine if they are valid.
9439func (s *ModelSettings) Validate() error {
9440	invalidParams := request.ErrInvalidParams{Context: "ModelSettings"}
9441	if s.LanguageModelName != nil && len(*s.LanguageModelName) < 1 {
9442		invalidParams.Add(request.NewErrParamMinLen("LanguageModelName", 1))
9443	}
9444
9445	if invalidParams.Len() > 0 {
9446		return invalidParams
9447	}
9448	return nil
9449}
9450
9451// SetLanguageModelName sets the LanguageModelName field's value.
9452func (s *ModelSettings) SetLanguageModelName(v string) *ModelSettings {
9453	s.LanguageModelName = &v
9454	return s
9455}
9456
9457// An object that enables you to configure your category to be applied to call
9458// analytics jobs where either the customer or agent was interrupted.
9459type NonTalkTimeFilter struct {
9460	_ struct{} `type:"structure"`
9461
9462	// An object you can use to specify a time range (in milliseconds) for when
9463	// no one is talking. For example, you could specify a time period between the
9464	// 30,000 millisecond mark and the 45,000 millisecond mark. You could also specify
9465	// the time period as the first 15,000 milliseconds or the last 15,000 milliseconds.
9466	AbsoluteTimeRange *AbsoluteTimeRange `type:"structure"`
9467
9468	// Set to TRUE to look for a time period when people were talking.
9469	Negate *bool `type:"boolean"`
9470
9471	// An object that allows percentages to specify the proportion of the call where
9472	// there was silence. For example, you can specify the first half of the call.
9473	// You can also specify the period of time between halfway through to three-quarters
9474	// of the way through the call. Because the length of conversation can vary
9475	// between calls, you can apply relative time ranges across all calls.
9476	RelativeTimeRange *RelativeTimeRange `type:"structure"`
9477
9478	// The duration of the period when neither the customer nor agent was talking.
9479	Threshold *int64 `type:"long"`
9480}
9481
9482// String returns the string representation.
9483//
9484// API parameter values that are decorated as "sensitive" in the API will not
9485// be included in the string output. The member name will be present, but the
9486// value will be replaced with "sensitive".
9487func (s NonTalkTimeFilter) String() string {
9488	return awsutil.Prettify(s)
9489}
9490
9491// GoString returns the string representation.
9492//
9493// API parameter values that are decorated as "sensitive" in the API will not
9494// be included in the string output. The member name will be present, but the
9495// value will be replaced with "sensitive".
9496func (s NonTalkTimeFilter) GoString() string {
9497	return s.String()
9498}
9499
9500// SetAbsoluteTimeRange sets the AbsoluteTimeRange field's value.
9501func (s *NonTalkTimeFilter) SetAbsoluteTimeRange(v *AbsoluteTimeRange) *NonTalkTimeFilter {
9502	s.AbsoluteTimeRange = v
9503	return s
9504}
9505
9506// SetNegate sets the Negate field's value.
9507func (s *NonTalkTimeFilter) SetNegate(v bool) *NonTalkTimeFilter {
9508	s.Negate = &v
9509	return s
9510}
9511
9512// SetRelativeTimeRange sets the RelativeTimeRange field's value.
9513func (s *NonTalkTimeFilter) SetRelativeTimeRange(v *RelativeTimeRange) *NonTalkTimeFilter {
9514	s.RelativeTimeRange = v
9515	return s
9516}
9517
9518// SetThreshold sets the Threshold field's value.
9519func (s *NonTalkTimeFilter) SetThreshold(v int64) *NonTalkTimeFilter {
9520	s.Threshold = &v
9521	return s
9522}
9523
9524// We can't find the requested resource. Check the name and try your request
9525// again.
9526type NotFoundException struct {
9527	_            struct{}                  `type:"structure"`
9528	RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"`
9529
9530	Message_ *string `locationName:"Message" type:"string"`
9531}
9532
9533// String returns the string representation.
9534//
9535// API parameter values that are decorated as "sensitive" in the API will not
9536// be included in the string output. The member name will be present, but the
9537// value will be replaced with "sensitive".
9538func (s NotFoundException) String() string {
9539	return awsutil.Prettify(s)
9540}
9541
9542// GoString returns the string representation.
9543//
9544// API parameter values that are decorated as "sensitive" in the API will not
9545// be included in the string output. The member name will be present, but the
9546// value will be replaced with "sensitive".
9547func (s NotFoundException) GoString() string {
9548	return s.String()
9549}
9550
9551func newErrorNotFoundException(v protocol.ResponseMetadata) error {
9552	return &NotFoundException{
9553		RespMetadata: v,
9554	}
9555}
9556
9557// Code returns the exception type name.
9558func (s *NotFoundException) Code() string {
9559	return "NotFoundException"
9560}
9561
9562// Message returns the exception's message.
9563func (s *NotFoundException) Message() string {
9564	if s.Message_ != nil {
9565		return *s.Message_
9566	}
9567	return ""
9568}
9569
9570// OrigErr always returns nil, satisfies awserr.Error interface.
9571func (s *NotFoundException) OrigErr() error {
9572	return nil
9573}
9574
9575func (s *NotFoundException) Error() string {
9576	return fmt.Sprintf("%s: %s", s.Code(), s.Message())
9577}
9578
9579// Status code returns the HTTP status code for the request's response error.
9580func (s *NotFoundException) StatusCode() int {
9581	return s.RespMetadata.StatusCode
9582}
9583
9584// RequestID returns the service's response RequestID for request.
9585func (s *NotFoundException) RequestID() string {
9586	return s.RespMetadata.RequestID
9587}
9588
9589// An object that allows percentages to specify the proportion of the call where
9590// you would like to apply a filter. For example, you can specify the first
9591// half of the call. You can also specify the period of time between halfway
9592// through to three-quarters of the way through the call. Because the length
9593// of conversation can vary between calls, you can apply relative time ranges
9594// across all calls.
9595type RelativeTimeRange struct {
9596	_ struct{} `type:"structure"`
9597
9598	// A value that indicates the percentage of the end of the time range. To set
9599	// a relative time range, you must specify a start percentage and an end percentage.
9600	// For example, if you specify the following values:
9601	//
9602	//    * StartPercentage - 10
9603	//
9604	//    * EndPercentage - 50
9605	//
9606	// This looks at the time range starting from 10% of the way into the call to
9607	// 50% of the way through the call. For a call that lasts 100,000 milliseconds,
9608	// this example range would apply from the 10,000 millisecond mark to the 50,000
9609	// millisecond mark.
9610	EndPercentage *int64 `type:"integer"`
9611
9612	// A range that takes the portion of the call up to the time in milliseconds
9613	// set by the value that you've specified. For example, if you specify 120000,
9614	// the time range is set for the first 120,000 milliseconds of the call.
9615	First *int64 `type:"integer"`
9616
9617	// A range that takes the portion of the call from the time in milliseconds
9618	// set by the value that you've specified to the end of the call. For example,
9619	// if you specify 120000, the time range is set for the last 120,000 milliseconds
9620	// of the call.
9621	Last *int64 `type:"integer"`
9622
9623	// A value that indicates the percentage of the beginning of the time range.
9624	// To set a relative time range, you must specify a start percentage and an
9625	// end percentage. For example, if you specify the following values:
9626	//
9627	//    * StartPercentage - 10
9628	//
9629	//    * EndPercentage - 50
9630	//
9631	// This looks at the time range starting from 10% of the way into the call to
9632	// 50% of the way through the call. For a call that lasts 100,000 milliseconds,
9633	// this example range would apply from the 10,000 millisecond mark to the 50,000
9634	// millisecond mark.
9635	StartPercentage *int64 `type:"integer"`
9636}
9637
9638// String returns the string representation.
9639//
9640// API parameter values that are decorated as "sensitive" in the API will not
9641// be included in the string output. The member name will be present, but the
9642// value will be replaced with "sensitive".
9643func (s RelativeTimeRange) String() string {
9644	return awsutil.Prettify(s)
9645}
9646
9647// GoString returns the string representation.
9648//
9649// API parameter values that are decorated as "sensitive" in the API will not
9650// be included in the string output. The member name will be present, but the
9651// value will be replaced with "sensitive".
9652func (s RelativeTimeRange) GoString() string {
9653	return s.String()
9654}
9655
9656// SetEndPercentage sets the EndPercentage field's value.
9657func (s *RelativeTimeRange) SetEndPercentage(v int64) *RelativeTimeRange {
9658	s.EndPercentage = &v
9659	return s
9660}
9661
9662// SetFirst sets the First field's value.
9663func (s *RelativeTimeRange) SetFirst(v int64) *RelativeTimeRange {
9664	s.First = &v
9665	return s
9666}
9667
9668// SetLast sets the Last field's value.
9669func (s *RelativeTimeRange) SetLast(v int64) *RelativeTimeRange {
9670	s.Last = &v
9671	return s
9672}
9673
9674// SetStartPercentage sets the StartPercentage field's value.
9675func (s *RelativeTimeRange) SetStartPercentage(v int64) *RelativeTimeRange {
9676	s.StartPercentage = &v
9677	return s
9678}
9679
9680// A condition in the call between the customer and the agent that you want
9681// to filter for.
9682type Rule struct {
9683	_ struct{} `type:"structure"`
9684
9685	// A condition for a time period when either the customer or agent was interrupting
9686	// the other person.
9687	InterruptionFilter *InterruptionFilter `type:"structure"`
9688
9689	// A condition for a time period when neither the customer nor the agent was
9690	// talking.
9691	NonTalkTimeFilter *NonTalkTimeFilter `type:"structure"`
9692
9693	// A condition that is applied to a particular customer sentiment.
9694	SentimentFilter *SentimentFilter `type:"structure"`
9695
9696	// A condition that catches particular words or phrases based on a exact match.
9697	// For example, if you set the phrase "I want to speak to the manager", only
9698	// that exact phrase will be returned.
9699	TranscriptFilter *TranscriptFilter `type:"structure"`
9700}
9701
9702// String returns the string representation.
9703//
9704// API parameter values that are decorated as "sensitive" in the API will not
9705// be included in the string output. The member name will be present, but the
9706// value will be replaced with "sensitive".
9707func (s Rule) String() string {
9708	return awsutil.Prettify(s)
9709}
9710
9711// GoString returns the string representation.
9712//
9713// API parameter values that are decorated as "sensitive" in the API will not
9714// be included in the string output. The member name will be present, but the
9715// value will be replaced with "sensitive".
9716func (s Rule) GoString() string {
9717	return s.String()
9718}
9719
9720// Validate inspects the fields of the type to determine if they are valid.
9721func (s *Rule) Validate() error {
9722	invalidParams := request.ErrInvalidParams{Context: "Rule"}
9723	if s.SentimentFilter != nil {
9724		if err := s.SentimentFilter.Validate(); err != nil {
9725			invalidParams.AddNested("SentimentFilter", err.(request.ErrInvalidParams))
9726		}
9727	}
9728	if s.TranscriptFilter != nil {
9729		if err := s.TranscriptFilter.Validate(); err != nil {
9730			invalidParams.AddNested("TranscriptFilter", err.(request.ErrInvalidParams))
9731		}
9732	}
9733
9734	if invalidParams.Len() > 0 {
9735		return invalidParams
9736	}
9737	return nil
9738}
9739
9740// SetInterruptionFilter sets the InterruptionFilter field's value.
9741func (s *Rule) SetInterruptionFilter(v *InterruptionFilter) *Rule {
9742	s.InterruptionFilter = v
9743	return s
9744}
9745
9746// SetNonTalkTimeFilter sets the NonTalkTimeFilter field's value.
9747func (s *Rule) SetNonTalkTimeFilter(v *NonTalkTimeFilter) *Rule {
9748	s.NonTalkTimeFilter = v
9749	return s
9750}
9751
9752// SetSentimentFilter sets the SentimentFilter field's value.
9753func (s *Rule) SetSentimentFilter(v *SentimentFilter) *Rule {
9754	s.SentimentFilter = v
9755	return s
9756}
9757
9758// SetTranscriptFilter sets the TranscriptFilter field's value.
9759func (s *Rule) SetTranscriptFilter(v *TranscriptFilter) *Rule {
9760	s.TranscriptFilter = v
9761	return s
9762}
9763
9764// An object that enables you to specify a particular customer or agent sentiment.
9765// If at least 50 percent of the conversation turns (the back-and-forth between
9766// two speakers) in a specified time period match the specified sentiment, Amazon
9767// Transcribe will consider the sentiment a match.
9768type SentimentFilter struct {
9769	_ struct{} `type:"structure"`
9770
9771	// The time range, measured in seconds, of the sentiment.
9772	AbsoluteTimeRange *AbsoluteTimeRange `type:"structure"`
9773
9774	// Set to TRUE to look for sentiments that weren't specified in the request.
9775	Negate *bool `type:"boolean"`
9776
9777	// A value that determines whether the sentiment belongs to the customer or
9778	// the agent.
9779	ParticipantRole *string `type:"string" enum:"ParticipantRole"`
9780
9781	// The time range, set in percentages, that correspond to proportion of the
9782	// call.
9783	RelativeTimeRange *RelativeTimeRange `type:"structure"`
9784
9785	// An array that enables you to specify sentiments for the customer or agent.
9786	// You can specify one or more values.
9787	//
9788	// Sentiments is a required field
9789	Sentiments []*string `min:"1" type:"list" required:"true"`
9790}
9791
9792// String returns the string representation.
9793//
9794// API parameter values that are decorated as "sensitive" in the API will not
9795// be included in the string output. The member name will be present, but the
9796// value will be replaced with "sensitive".
9797func (s SentimentFilter) String() string {
9798	return awsutil.Prettify(s)
9799}
9800
9801// GoString returns the string representation.
9802//
9803// API parameter values that are decorated as "sensitive" in the API will not
9804// be included in the string output. The member name will be present, but the
9805// value will be replaced with "sensitive".
9806func (s SentimentFilter) GoString() string {
9807	return s.String()
9808}
9809
9810// Validate inspects the fields of the type to determine if they are valid.
9811func (s *SentimentFilter) Validate() error {
9812	invalidParams := request.ErrInvalidParams{Context: "SentimentFilter"}
9813	if s.Sentiments == nil {
9814		invalidParams.Add(request.NewErrParamRequired("Sentiments"))
9815	}
9816	if s.Sentiments != nil && len(s.Sentiments) < 1 {
9817		invalidParams.Add(request.NewErrParamMinLen("Sentiments", 1))
9818	}
9819
9820	if invalidParams.Len() > 0 {
9821		return invalidParams
9822	}
9823	return nil
9824}
9825
9826// SetAbsoluteTimeRange sets the AbsoluteTimeRange field's value.
9827func (s *SentimentFilter) SetAbsoluteTimeRange(v *AbsoluteTimeRange) *SentimentFilter {
9828	s.AbsoluteTimeRange = v
9829	return s
9830}
9831
9832// SetNegate sets the Negate field's value.
9833func (s *SentimentFilter) SetNegate(v bool) *SentimentFilter {
9834	s.Negate = &v
9835	return s
9836}
9837
9838// SetParticipantRole sets the ParticipantRole field's value.
9839func (s *SentimentFilter) SetParticipantRole(v string) *SentimentFilter {
9840	s.ParticipantRole = &v
9841	return s
9842}
9843
9844// SetRelativeTimeRange sets the RelativeTimeRange field's value.
9845func (s *SentimentFilter) SetRelativeTimeRange(v *RelativeTimeRange) *SentimentFilter {
9846	s.RelativeTimeRange = v
9847	return s
9848}
9849
9850// SetSentiments sets the Sentiments field's value.
9851func (s *SentimentFilter) SetSentiments(v []*string) *SentimentFilter {
9852	s.Sentiments = v
9853	return s
9854}
9855
9856// Provides optional settings for the StartTranscriptionJob operation.
9857type Settings struct {
9858	_ struct{} `type:"structure"`
9859
9860	// Instructs Amazon Transcribe to process each audio channel separately and
9861	// then merge the transcription output of each channel into a single transcription.
9862	//
9863	// Amazon Transcribe also produces a transcription of each item detected on
9864	// an audio channel, including the start time and end time of the item and alternative
9865	// transcriptions of the item including the confidence that Amazon Transcribe
9866	// has in the transcription.
9867	//
9868	// You can't set both ShowSpeakerLabels and ChannelIdentification in the same
9869	// request. If you set both, your request returns a BadRequestException.
9870	ChannelIdentification *bool `type:"boolean"`
9871
9872	// The number of alternative transcriptions that the service should return.
9873	// If you specify the MaxAlternatives field, you must set the ShowAlternatives
9874	// field to true.
9875	MaxAlternatives *int64 `min:"2" type:"integer"`
9876
9877	// The maximum number of speakers to identify in the input audio. If there are
9878	// more speakers in the audio than this number, multiple speakers are identified
9879	// as a single speaker. If you specify the MaxSpeakerLabels field, you must
9880	// set the ShowSpeakerLabels field to true.
9881	MaxSpeakerLabels *int64 `min:"2" type:"integer"`
9882
9883	// Determines whether the transcription contains alternative transcriptions.
9884	// If you set the ShowAlternatives field to true, you must also set the maximum
9885	// number of alternatives to return in the MaxAlternatives field.
9886	ShowAlternatives *bool `type:"boolean"`
9887
9888	// Determines whether the transcription job uses speaker recognition to identify
9889	// different speakers in the input audio. Speaker recognition labels individual
9890	// speakers in the audio file. If you set the ShowSpeakerLabels field to true,
9891	// you must also set the maximum number of speaker labels MaxSpeakerLabels field.
9892	//
9893	// You can't set both ShowSpeakerLabels and ChannelIdentification in the same
9894	// request. If you set both, your request returns a BadRequestException.
9895	ShowSpeakerLabels *bool `type:"boolean"`
9896
9897	// Set to mask to remove filtered text from the transcript and replace it with
9898	// three asterisks ("***") as placeholder text. Set to remove to remove filtered
9899	// text from the transcript without using placeholder text. Set to tag to mark
9900	// the word in the transcription output that matches the vocabulary filter.
9901	// When you set the filter method to tag, the words matching your vocabulary
9902	// filter are not masked or removed.
9903	VocabularyFilterMethod *string `type:"string" enum:"VocabularyFilterMethod"`
9904
9905	// The name of the vocabulary filter to use when transcribing the audio. The
9906	// filter that you specify must have the same language code as the transcription
9907	// job.
9908	VocabularyFilterName *string `min:"1" type:"string"`
9909
9910	// The name of a vocabulary to use when processing the transcription job.
9911	VocabularyName *string `min:"1" type:"string"`
9912}
9913
9914// String returns the string representation.
9915//
9916// API parameter values that are decorated as "sensitive" in the API will not
9917// be included in the string output. The member name will be present, but the
9918// value will be replaced with "sensitive".
9919func (s Settings) String() string {
9920	return awsutil.Prettify(s)
9921}
9922
9923// GoString returns the string representation.
9924//
9925// API parameter values that are decorated as "sensitive" in the API will not
9926// be included in the string output. The member name will be present, but the
9927// value will be replaced with "sensitive".
9928func (s Settings) GoString() string {
9929	return s.String()
9930}
9931
9932// Validate inspects the fields of the type to determine if they are valid.
9933func (s *Settings) Validate() error {
9934	invalidParams := request.ErrInvalidParams{Context: "Settings"}
9935	if s.MaxAlternatives != nil && *s.MaxAlternatives < 2 {
9936		invalidParams.Add(request.NewErrParamMinValue("MaxAlternatives", 2))
9937	}
9938	if s.MaxSpeakerLabels != nil && *s.MaxSpeakerLabels < 2 {
9939		invalidParams.Add(request.NewErrParamMinValue("MaxSpeakerLabels", 2))
9940	}
9941	if s.VocabularyFilterName != nil && len(*s.VocabularyFilterName) < 1 {
9942		invalidParams.Add(request.NewErrParamMinLen("VocabularyFilterName", 1))
9943	}
9944	if s.VocabularyName != nil && len(*s.VocabularyName) < 1 {
9945		invalidParams.Add(request.NewErrParamMinLen("VocabularyName", 1))
9946	}
9947
9948	if invalidParams.Len() > 0 {
9949		return invalidParams
9950	}
9951	return nil
9952}
9953
9954// SetChannelIdentification sets the ChannelIdentification field's value.
9955func (s *Settings) SetChannelIdentification(v bool) *Settings {
9956	s.ChannelIdentification = &v
9957	return s
9958}
9959
9960// SetMaxAlternatives sets the MaxAlternatives field's value.
9961func (s *Settings) SetMaxAlternatives(v int64) *Settings {
9962	s.MaxAlternatives = &v
9963	return s
9964}
9965
9966// SetMaxSpeakerLabels sets the MaxSpeakerLabels field's value.
9967func (s *Settings) SetMaxSpeakerLabels(v int64) *Settings {
9968	s.MaxSpeakerLabels = &v
9969	return s
9970}
9971
9972// SetShowAlternatives sets the ShowAlternatives field's value.
9973func (s *Settings) SetShowAlternatives(v bool) *Settings {
9974	s.ShowAlternatives = &v
9975	return s
9976}
9977
9978// SetShowSpeakerLabels sets the ShowSpeakerLabels field's value.
9979func (s *Settings) SetShowSpeakerLabels(v bool) *Settings {
9980	s.ShowSpeakerLabels = &v
9981	return s
9982}
9983
9984// SetVocabularyFilterMethod sets the VocabularyFilterMethod field's value.
9985func (s *Settings) SetVocabularyFilterMethod(v string) *Settings {
9986	s.VocabularyFilterMethod = &v
9987	return s
9988}
9989
9990// SetVocabularyFilterName sets the VocabularyFilterName field's value.
9991func (s *Settings) SetVocabularyFilterName(v string) *Settings {
9992	s.VocabularyFilterName = &v
9993	return s
9994}
9995
9996// SetVocabularyName sets the VocabularyName field's value.
9997func (s *Settings) SetVocabularyName(v string) *Settings {
9998	s.VocabularyName = &v
9999	return s
10000}
10001
10002type StartCallAnalyticsJobInput struct {
10003	_ struct{} `type:"structure"`
10004
10005	// The name of the call analytics job. You can't use the string "." or ".."
10006	// by themselves as the job name. The name must also be unique within an Amazon
10007	// Web Services account. If you try to create a call analytics job with the
10008	// same name as a previous call analytics job, you get a ConflictException error.
10009	//
10010	// CallAnalyticsJobName is a required field
10011	CallAnalyticsJobName *string `min:"1" type:"string" required:"true"`
10012
10013	// When you start a call analytics job, you must pass an array that maps the
10014	// agent and the customer to specific audio channels. The values you can assign
10015	// to a channel are 0 and 1. The agent and the customer must each have their
10016	// own channel. You can't assign more than one channel to an agent or customer.
10017	ChannelDefinitions []*ChannelDefinition `min:"2" type:"list"`
10018
10019	// The Amazon Resource Name (ARN) of a role that has access to the S3 bucket
10020	// that contains your input files. Amazon Transcribe assumes this role to read
10021	// queued audio files. If you have specified an output S3 bucket for your transcription
10022	// results, this role should have access to the output bucket as well.
10023	//
10024	// DataAccessRoleArn is a required field
10025	DataAccessRoleArn *string `min:"20" type:"string" required:"true"`
10026
10027	// Describes the input media file in a transcription request.
10028	//
10029	// Media is a required field
10030	Media *Media `type:"structure" required:"true"`
10031
10032	// The Amazon Resource Name (ARN) of the Amazon Web Services Key Management
10033	// Service key used to encrypt the output of the call analytics job. The user
10034	// calling the operation must have permission to use the specified KMS key.
10035	//
10036	// You use either of the following to identify an Amazon Web Services KMS key
10037	// in the current account:
10038	//
10039	//    * KMS Key ID: "1234abcd-12ab-34cd-56ef-1234567890ab"
10040	//
10041	//    * KMS Key Alias: "alias/ExampleAlias"
10042	//
10043	// You can use either of the following to identify a KMS key in the current
10044	// account or another account:
10045	//
10046	//    * Amazon Resource Name (ARN) of a KMS key in the current account or another
10047	//    account: "arn:aws:kms:region:account ID:key/1234abcd-12ab-34cd-56ef1234567890ab"
10048	//
10049	//    * ARN of a KMS Key Alias: "arn:aws:kms:region:account ID:alias/ExampleAlias"
10050	//
10051	// If you don't specify an encryption key, the output of the call analytics
10052	// job is encrypted with the default Amazon S3 key (SSE-S3).
10053	//
10054	// If you specify a KMS key to encrypt your output, you must also specify an
10055	// output location in the OutputLocation parameter.
10056	OutputEncryptionKMSKeyId *string `min:"1" type:"string"`
10057
10058	// The Amazon S3 location where the output of the call analytics job is stored.
10059	// You can provide the following location types to store the output of call
10060	// analytics job:
10061	//
10062	//    * s3://DOC-EXAMPLE-BUCKET1 If you specify a bucket, Amazon Transcribe
10063	//    saves the output of the analytics job as a JSON file at the root level
10064	//    of the bucket.
10065	//
10066	//    * s3://DOC-EXAMPLE-BUCKET1/folder/ f you specify a path, Amazon Transcribe
10067	//    saves the output of the analytics job as s3://DOC-EXAMPLE-BUCKET1/folder/your-transcription-job-name.json
10068	//    If you specify a folder, you must provide a trailing slash.
10069	//
10070	//    * s3://DOC-EXAMPLE-BUCKET1/folder/filename.json If you provide a path
10071	//    that has the filename specified, Amazon Transcribe saves the output of
10072	//    the analytics job as s3://DOC-EXAMPLEBUCKET1/folder/filename.json
10073	//
10074	// You can specify an Amazon Web Services Key Management Service (KMS) key to
10075	// encrypt the output of our analytics job using the OutputEncryptionKMSKeyId
10076	// parameter. If you don't specify a KMS key, Amazon Transcribe uses the default
10077	// Amazon S3 key for server-side encryption of the analytics job output that
10078	// is placed in your S3 bucket.
10079	OutputLocation *string `min:"1" type:"string"`
10080
10081	// A Settings object that provides optional settings for a call analytics job.
10082	Settings *CallAnalyticsJobSettings `type:"structure"`
10083}
10084
10085// String returns the string representation.
10086//
10087// API parameter values that are decorated as "sensitive" in the API will not
10088// be included in the string output. The member name will be present, but the
10089// value will be replaced with "sensitive".
10090func (s StartCallAnalyticsJobInput) String() string {
10091	return awsutil.Prettify(s)
10092}
10093
10094// GoString returns the string representation.
10095//
10096// API parameter values that are decorated as "sensitive" in the API will not
10097// be included in the string output. The member name will be present, but the
10098// value will be replaced with "sensitive".
10099func (s StartCallAnalyticsJobInput) GoString() string {
10100	return s.String()
10101}
10102
10103// Validate inspects the fields of the type to determine if they are valid.
10104func (s *StartCallAnalyticsJobInput) Validate() error {
10105	invalidParams := request.ErrInvalidParams{Context: "StartCallAnalyticsJobInput"}
10106	if s.CallAnalyticsJobName == nil {
10107		invalidParams.Add(request.NewErrParamRequired("CallAnalyticsJobName"))
10108	}
10109	if s.CallAnalyticsJobName != nil && len(*s.CallAnalyticsJobName) < 1 {
10110		invalidParams.Add(request.NewErrParamMinLen("CallAnalyticsJobName", 1))
10111	}
10112	if s.ChannelDefinitions != nil && len(s.ChannelDefinitions) < 2 {
10113		invalidParams.Add(request.NewErrParamMinLen("ChannelDefinitions", 2))
10114	}
10115	if s.DataAccessRoleArn == nil {
10116		invalidParams.Add(request.NewErrParamRequired("DataAccessRoleArn"))
10117	}
10118	if s.DataAccessRoleArn != nil && len(*s.DataAccessRoleArn) < 20 {
10119		invalidParams.Add(request.NewErrParamMinLen("DataAccessRoleArn", 20))
10120	}
10121	if s.Media == nil {
10122		invalidParams.Add(request.NewErrParamRequired("Media"))
10123	}
10124	if s.OutputEncryptionKMSKeyId != nil && len(*s.OutputEncryptionKMSKeyId) < 1 {
10125		invalidParams.Add(request.NewErrParamMinLen("OutputEncryptionKMSKeyId", 1))
10126	}
10127	if s.OutputLocation != nil && len(*s.OutputLocation) < 1 {
10128		invalidParams.Add(request.NewErrParamMinLen("OutputLocation", 1))
10129	}
10130	if s.Media != nil {
10131		if err := s.Media.Validate(); err != nil {
10132			invalidParams.AddNested("Media", err.(request.ErrInvalidParams))
10133		}
10134	}
10135	if s.Settings != nil {
10136		if err := s.Settings.Validate(); err != nil {
10137			invalidParams.AddNested("Settings", err.(request.ErrInvalidParams))
10138		}
10139	}
10140
10141	if invalidParams.Len() > 0 {
10142		return invalidParams
10143	}
10144	return nil
10145}
10146
10147// SetCallAnalyticsJobName sets the CallAnalyticsJobName field's value.
10148func (s *StartCallAnalyticsJobInput) SetCallAnalyticsJobName(v string) *StartCallAnalyticsJobInput {
10149	s.CallAnalyticsJobName = &v
10150	return s
10151}
10152
10153// SetChannelDefinitions sets the ChannelDefinitions field's value.
10154func (s *StartCallAnalyticsJobInput) SetChannelDefinitions(v []*ChannelDefinition) *StartCallAnalyticsJobInput {
10155	s.ChannelDefinitions = v
10156	return s
10157}
10158
10159// SetDataAccessRoleArn sets the DataAccessRoleArn field's value.
10160func (s *StartCallAnalyticsJobInput) SetDataAccessRoleArn(v string) *StartCallAnalyticsJobInput {
10161	s.DataAccessRoleArn = &v
10162	return s
10163}
10164
10165// SetMedia sets the Media field's value.
10166func (s *StartCallAnalyticsJobInput) SetMedia(v *Media) *StartCallAnalyticsJobInput {
10167	s.Media = v
10168	return s
10169}
10170
10171// SetOutputEncryptionKMSKeyId sets the OutputEncryptionKMSKeyId field's value.
10172func (s *StartCallAnalyticsJobInput) SetOutputEncryptionKMSKeyId(v string) *StartCallAnalyticsJobInput {
10173	s.OutputEncryptionKMSKeyId = &v
10174	return s
10175}
10176
10177// SetOutputLocation sets the OutputLocation field's value.
10178func (s *StartCallAnalyticsJobInput) SetOutputLocation(v string) *StartCallAnalyticsJobInput {
10179	s.OutputLocation = &v
10180	return s
10181}
10182
10183// SetSettings sets the Settings field's value.
10184func (s *StartCallAnalyticsJobInput) SetSettings(v *CallAnalyticsJobSettings) *StartCallAnalyticsJobInput {
10185	s.Settings = v
10186	return s
10187}
10188
10189type StartCallAnalyticsJobOutput struct {
10190	_ struct{} `type:"structure"`
10191
10192	// An object containing the details of the asynchronous call analytics job.
10193	CallAnalyticsJob *CallAnalyticsJob `type:"structure"`
10194}
10195
10196// String returns the string representation.
10197//
10198// API parameter values that are decorated as "sensitive" in the API will not
10199// be included in the string output. The member name will be present, but the
10200// value will be replaced with "sensitive".
10201func (s StartCallAnalyticsJobOutput) String() string {
10202	return awsutil.Prettify(s)
10203}
10204
10205// GoString returns the string representation.
10206//
10207// API parameter values that are decorated as "sensitive" in the API will not
10208// be included in the string output. The member name will be present, but the
10209// value will be replaced with "sensitive".
10210func (s StartCallAnalyticsJobOutput) GoString() string {
10211	return s.String()
10212}
10213
10214// SetCallAnalyticsJob sets the CallAnalyticsJob field's value.
10215func (s *StartCallAnalyticsJobOutput) SetCallAnalyticsJob(v *CallAnalyticsJob) *StartCallAnalyticsJobOutput {
10216	s.CallAnalyticsJob = v
10217	return s
10218}
10219
10220type StartMedicalTranscriptionJobInput struct {
10221	_ struct{} `type:"structure"`
10222
10223	// You can configure Amazon Transcribe Medical to label content in the transcription
10224	// output. If you specify PHI, Amazon Transcribe Medical labels the personal
10225	// health information (PHI) that it identifies in the transcription output.
10226	ContentIdentificationType *string `type:"string" enum:"MedicalContentIdentificationType"`
10227
10228	// A map of plain text, non-secret key:value pairs, known as encryption context
10229	// pairs, that provide an added layer of security for your data.
10230	KMSEncryptionContext map[string]*string `min:"1" type:"map"`
10231
10232	// The language code for the language spoken in the input media file. US English
10233	// (en-US) is the valid value for medical transcription jobs. Any other value
10234	// you enter for language code results in a BadRequestException error.
10235	//
10236	// LanguageCode is a required field
10237	LanguageCode *string `type:"string" required:"true" enum:"LanguageCode"`
10238
10239	// Describes the input media file in a transcription request.
10240	//
10241	// Media is a required field
10242	Media *Media `type:"structure" required:"true"`
10243
10244	// The audio format of the input media file.
10245	MediaFormat *string `type:"string" enum:"MediaFormat"`
10246
10247	// The sample rate, in Hertz, of the audio track in the input media file.
10248	//
10249	// If you do not specify the media sample rate, Amazon Transcribe Medical determines
10250	// the sample rate. If you specify the sample rate, it must match the rate detected
10251	// by Amazon Transcribe Medical. In most cases, you should leave the MediaSampleRateHertz
10252	// field blank and let Amazon Transcribe Medical determine the sample rate.
10253	MediaSampleRateHertz *int64 `min:"8000" type:"integer"`
10254
10255	// The name of the medical transcription job. You can't use the strings "."
10256	// or ".." by themselves as the job name. The name must also be unique within
10257	// an Amazon Web Services account. If you try to create a medical transcription
10258	// job with the same name as a previous medical transcription job, you get a
10259	// ConflictException error.
10260	//
10261	// MedicalTranscriptionJobName is a required field
10262	MedicalTranscriptionJobName *string `min:"1" type:"string" required:"true"`
10263
10264	// The Amazon S3 location where the transcription is stored.
10265	//
10266	// You must set OutputBucketName for Amazon Transcribe Medical to store the
10267	// transcription results. Your transcript appears in the S3 location you specify.
10268	// When you call the GetMedicalTranscriptionJob, the operation returns this
10269	// location in the TranscriptFileUri field. The S3 bucket must have permissions
10270	// that allow Amazon Transcribe Medical to put files in the bucket. For more
10271	// information, see Permissions Required for IAM User Roles (https://docs.aws.amazon.com/transcribe/latest/dg/security_iam_id-based-policy-examples.html#auth-role-iam-user).
10272	//
10273	// You can specify an Amazon Web Services Key Management Service (KMS) key to
10274	// encrypt the output of your transcription using the OutputEncryptionKMSKeyId
10275	// parameter. If you don't specify a KMS key, Amazon Transcribe Medical uses
10276	// the default Amazon S3 key for server-side encryption of transcripts that
10277	// are placed in your S3 bucket.
10278	//
10279	// OutputBucketName is a required field
10280	OutputBucketName *string `type:"string" required:"true"`
10281
10282	// The Amazon Resource Name (ARN) of the Amazon Web Services Key Management
10283	// Service (KMS) key used to encrypt the output of the transcription job. The
10284	// user calling the StartMedicalTranscriptionJob operation must have permission
10285	// to use the specified KMS key.
10286	//
10287	// You use either of the following to identify a KMS key in the current account:
10288	//
10289	//    * KMS Key ID: "1234abcd-12ab-34cd-56ef-1234567890ab"
10290	//
10291	//    * KMS Key Alias: "alias/ExampleAlias"
10292	//
10293	// You can use either of the following to identify a KMS key in the current
10294	// account or another account:
10295	//
10296	//    * Amazon Resource Name (ARN) of a KMS key in the current account or another
10297	//    account: "arn:aws:kms:region:account-ID:key/1234abcd-12ab-34cd-56ef-1234567890ab"
10298	//
10299	//    * ARN of a KMS Key Alias: "arn:aws:kms:region:account ID:alias/ExampleAlias"
10300	//
10301	// If you don't specify an encryption key, the output of the medical transcription
10302	// job is encrypted with the default Amazon S3 key (SSE-S3).
10303	//
10304	// If you specify a KMS key to encrypt your output, you must also specify an
10305	// output location in the OutputBucketName parameter.
10306	OutputEncryptionKMSKeyId *string `min:"1" type:"string"`
10307
10308	// You can specify a location in an Amazon S3 bucket to store the output of
10309	// your medical transcription job.
10310	//
10311	// If you don't specify an output key, Amazon Transcribe Medical stores the
10312	// output of your transcription job in the Amazon S3 bucket you specified. By
10313	// default, the object key is "your-transcription-job-name.json".
10314	//
10315	// You can use output keys to specify the Amazon S3 prefix and file name of
10316	// the transcription output. For example, specifying the Amazon S3 prefix, "folder1/folder2/",
10317	// as an output key would lead to the output being stored as "folder1/folder2/your-transcription-job-name.json".
10318	// If you specify "my-other-job-name.json" as the output key, the object key
10319	// is changed to "my-other-job-name.json". You can use an output key to change
10320	// both the prefix and the file name, for example "folder/my-other-job-name.json".
10321	//
10322	// If you specify an output key, you must also specify an S3 bucket in the OutputBucketName
10323	// parameter.
10324	OutputKey *string `min:"1" type:"string"`
10325
10326	// Optional settings for the medical transcription job.
10327	Settings *MedicalTranscriptionSetting `type:"structure"`
10328
10329	// The medical specialty of any clinician speaking in the input media.
10330	//
10331	// Specialty is a required field
10332	Specialty *string `type:"string" required:"true" enum:"Specialty"`
10333
10334	// Add tags to an Amazon Transcribe medical transcription job.
10335	Tags []*Tag `min:"1" type:"list"`
10336
10337	// The type of speech in the input audio. CONVERSATION refers to conversations
10338	// between two or more speakers, e.g., a conversations between doctors and patients.
10339	// DICTATION refers to single-speaker dictated speech, such as clinical notes.
10340	//
10341	// Type is a required field
10342	Type *string `type:"string" required:"true" enum:"Type"`
10343}
10344
10345// String returns the string representation.
10346//
10347// API parameter values that are decorated as "sensitive" in the API will not
10348// be included in the string output. The member name will be present, but the
10349// value will be replaced with "sensitive".
10350func (s StartMedicalTranscriptionJobInput) String() string {
10351	return awsutil.Prettify(s)
10352}
10353
10354// GoString returns the string representation.
10355//
10356// API parameter values that are decorated as "sensitive" in the API will not
10357// be included in the string output. The member name will be present, but the
10358// value will be replaced with "sensitive".
10359func (s StartMedicalTranscriptionJobInput) GoString() string {
10360	return s.String()
10361}
10362
10363// Validate inspects the fields of the type to determine if they are valid.
10364func (s *StartMedicalTranscriptionJobInput) Validate() error {
10365	invalidParams := request.ErrInvalidParams{Context: "StartMedicalTranscriptionJobInput"}
10366	if s.KMSEncryptionContext != nil && len(s.KMSEncryptionContext) < 1 {
10367		invalidParams.Add(request.NewErrParamMinLen("KMSEncryptionContext", 1))
10368	}
10369	if s.LanguageCode == nil {
10370		invalidParams.Add(request.NewErrParamRequired("LanguageCode"))
10371	}
10372	if s.Media == nil {
10373		invalidParams.Add(request.NewErrParamRequired("Media"))
10374	}
10375	if s.MediaSampleRateHertz != nil && *s.MediaSampleRateHertz < 8000 {
10376		invalidParams.Add(request.NewErrParamMinValue("MediaSampleRateHertz", 8000))
10377	}
10378	if s.MedicalTranscriptionJobName == nil {
10379		invalidParams.Add(request.NewErrParamRequired("MedicalTranscriptionJobName"))
10380	}
10381	if s.MedicalTranscriptionJobName != nil && len(*s.MedicalTranscriptionJobName) < 1 {
10382		invalidParams.Add(request.NewErrParamMinLen("MedicalTranscriptionJobName", 1))
10383	}
10384	if s.OutputBucketName == nil {
10385		invalidParams.Add(request.NewErrParamRequired("OutputBucketName"))
10386	}
10387	if s.OutputEncryptionKMSKeyId != nil && len(*s.OutputEncryptionKMSKeyId) < 1 {
10388		invalidParams.Add(request.NewErrParamMinLen("OutputEncryptionKMSKeyId", 1))
10389	}
10390	if s.OutputKey != nil && len(*s.OutputKey) < 1 {
10391		invalidParams.Add(request.NewErrParamMinLen("OutputKey", 1))
10392	}
10393	if s.Specialty == nil {
10394		invalidParams.Add(request.NewErrParamRequired("Specialty"))
10395	}
10396	if s.Tags != nil && len(s.Tags) < 1 {
10397		invalidParams.Add(request.NewErrParamMinLen("Tags", 1))
10398	}
10399	if s.Type == nil {
10400		invalidParams.Add(request.NewErrParamRequired("Type"))
10401	}
10402	if s.Media != nil {
10403		if err := s.Media.Validate(); err != nil {
10404			invalidParams.AddNested("Media", err.(request.ErrInvalidParams))
10405		}
10406	}
10407	if s.Settings != nil {
10408		if err := s.Settings.Validate(); err != nil {
10409			invalidParams.AddNested("Settings", err.(request.ErrInvalidParams))
10410		}
10411	}
10412	if s.Tags != nil {
10413		for i, v := range s.Tags {
10414			if v == nil {
10415				continue
10416			}
10417			if err := v.Validate(); err != nil {
10418				invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Tags", i), err.(request.ErrInvalidParams))
10419			}
10420		}
10421	}
10422
10423	if invalidParams.Len() > 0 {
10424		return invalidParams
10425	}
10426	return nil
10427}
10428
10429// SetContentIdentificationType sets the ContentIdentificationType field's value.
10430func (s *StartMedicalTranscriptionJobInput) SetContentIdentificationType(v string) *StartMedicalTranscriptionJobInput {
10431	s.ContentIdentificationType = &v
10432	return s
10433}
10434
10435// SetKMSEncryptionContext sets the KMSEncryptionContext field's value.
10436func (s *StartMedicalTranscriptionJobInput) SetKMSEncryptionContext(v map[string]*string) *StartMedicalTranscriptionJobInput {
10437	s.KMSEncryptionContext = v
10438	return s
10439}
10440
10441// SetLanguageCode sets the LanguageCode field's value.
10442func (s *StartMedicalTranscriptionJobInput) SetLanguageCode(v string) *StartMedicalTranscriptionJobInput {
10443	s.LanguageCode = &v
10444	return s
10445}
10446
10447// SetMedia sets the Media field's value.
10448func (s *StartMedicalTranscriptionJobInput) SetMedia(v *Media) *StartMedicalTranscriptionJobInput {
10449	s.Media = v
10450	return s
10451}
10452
10453// SetMediaFormat sets the MediaFormat field's value.
10454func (s *StartMedicalTranscriptionJobInput) SetMediaFormat(v string) *StartMedicalTranscriptionJobInput {
10455	s.MediaFormat = &v
10456	return s
10457}
10458
10459// SetMediaSampleRateHertz sets the MediaSampleRateHertz field's value.
10460func (s *StartMedicalTranscriptionJobInput) SetMediaSampleRateHertz(v int64) *StartMedicalTranscriptionJobInput {
10461	s.MediaSampleRateHertz = &v
10462	return s
10463}
10464
10465// SetMedicalTranscriptionJobName sets the MedicalTranscriptionJobName field's value.
10466func (s *StartMedicalTranscriptionJobInput) SetMedicalTranscriptionJobName(v string) *StartMedicalTranscriptionJobInput {
10467	s.MedicalTranscriptionJobName = &v
10468	return s
10469}
10470
10471// SetOutputBucketName sets the OutputBucketName field's value.
10472func (s *StartMedicalTranscriptionJobInput) SetOutputBucketName(v string) *StartMedicalTranscriptionJobInput {
10473	s.OutputBucketName = &v
10474	return s
10475}
10476
10477// SetOutputEncryptionKMSKeyId sets the OutputEncryptionKMSKeyId field's value.
10478func (s *StartMedicalTranscriptionJobInput) SetOutputEncryptionKMSKeyId(v string) *StartMedicalTranscriptionJobInput {
10479	s.OutputEncryptionKMSKeyId = &v
10480	return s
10481}
10482
10483// SetOutputKey sets the OutputKey field's value.
10484func (s *StartMedicalTranscriptionJobInput) SetOutputKey(v string) *StartMedicalTranscriptionJobInput {
10485	s.OutputKey = &v
10486	return s
10487}
10488
10489// SetSettings sets the Settings field's value.
10490func (s *StartMedicalTranscriptionJobInput) SetSettings(v *MedicalTranscriptionSetting) *StartMedicalTranscriptionJobInput {
10491	s.Settings = v
10492	return s
10493}
10494
10495// SetSpecialty sets the Specialty field's value.
10496func (s *StartMedicalTranscriptionJobInput) SetSpecialty(v string) *StartMedicalTranscriptionJobInput {
10497	s.Specialty = &v
10498	return s
10499}
10500
10501// SetTags sets the Tags field's value.
10502func (s *StartMedicalTranscriptionJobInput) SetTags(v []*Tag) *StartMedicalTranscriptionJobInput {
10503	s.Tags = v
10504	return s
10505}
10506
10507// SetType sets the Type field's value.
10508func (s *StartMedicalTranscriptionJobInput) SetType(v string) *StartMedicalTranscriptionJobInput {
10509	s.Type = &v
10510	return s
10511}
10512
10513type StartMedicalTranscriptionJobOutput struct {
10514	_ struct{} `type:"structure"`
10515
10516	// A batch job submitted to transcribe medical speech to text.
10517	MedicalTranscriptionJob *MedicalTranscriptionJob `type:"structure"`
10518}
10519
10520// String returns the string representation.
10521//
10522// API parameter values that are decorated as "sensitive" in the API will not
10523// be included in the string output. The member name will be present, but the
10524// value will be replaced with "sensitive".
10525func (s StartMedicalTranscriptionJobOutput) String() string {
10526	return awsutil.Prettify(s)
10527}
10528
10529// GoString returns the string representation.
10530//
10531// API parameter values that are decorated as "sensitive" in the API will not
10532// be included in the string output. The member name will be present, but the
10533// value will be replaced with "sensitive".
10534func (s StartMedicalTranscriptionJobOutput) GoString() string {
10535	return s.String()
10536}
10537
10538// SetMedicalTranscriptionJob sets the MedicalTranscriptionJob field's value.
10539func (s *StartMedicalTranscriptionJobOutput) SetMedicalTranscriptionJob(v *MedicalTranscriptionJob) *StartMedicalTranscriptionJobOutput {
10540	s.MedicalTranscriptionJob = v
10541	return s
10542}
10543
10544type StartTranscriptionJobInput struct {
10545	_ struct{} `type:"structure"`
10546
10547	// An object that contains the request parameters for content redaction.
10548	ContentRedaction *ContentRedaction `type:"structure"`
10549
10550	// Set this field to true to enable automatic language identification. Automatic
10551	// language identification is disabled by default. You receive a BadRequestException
10552	// error if you enter a value for a LanguageCode.
10553	IdentifyLanguage *bool `type:"boolean"`
10554
10555	// Provides information about how a transcription job is executed. Use this
10556	// field to indicate that the job can be queued for deferred execution if the
10557	// concurrency limit is reached and there are no slots available to immediately
10558	// run the job.
10559	JobExecutionSettings *JobExecutionSettings `type:"structure"`
10560
10561	// A map of plain text, non-secret key:value pairs, known as encryption context
10562	// pairs, that provide an added layer of security for your data.
10563	KMSEncryptionContext map[string]*string `min:"1" type:"map"`
10564
10565	// The language code for the language used in the input media file.
10566	//
10567	// To transcribe speech in Modern Standard Arabic (ar-SA), your audio or video
10568	// file must be encoded at a sample rate of 16,000 Hz or higher.
10569	LanguageCode *string `type:"string" enum:"LanguageCode"`
10570
10571	// The language identification settings associated with your transcription job.
10572	// These settings include VocabularyName, VocabularyFilterName, and LanguageModelName.
10573	LanguageIdSettings map[string]*LanguageIdSettings `min:"1" type:"map"`
10574
10575	// An object containing a list of languages that might be present in your collection
10576	// of audio files. Automatic language identification chooses a language that
10577	// best matches the source audio from that list.
10578	//
10579	// To transcribe speech in Modern Standard Arabic (ar-SA), your audio or video
10580	// file must be encoded at a sample rate of 16,000 Hz or higher.
10581	LanguageOptions []*string `min:"1" type:"list"`
10582
10583	// An object that describes the input media for a transcription job.
10584	//
10585	// Media is a required field
10586	Media *Media `type:"structure" required:"true"`
10587
10588	// The format of the input media file.
10589	MediaFormat *string `type:"string" enum:"MediaFormat"`
10590
10591	// The sample rate, in Hertz, of the audio track in the input media file.
10592	//
10593	// If you do not specify the media sample rate, Amazon Transcribe determines
10594	// the sample rate. If you specify the sample rate, it must match the sample
10595	// rate detected by Amazon Transcribe. In most cases, you should leave the MediaSampleRateHertz
10596	// field blank and let Amazon Transcribe determine the sample rate.
10597	MediaSampleRateHertz *int64 `min:"8000" type:"integer"`
10598
10599	// Choose the custom language model you use for your transcription job in this
10600	// parameter.
10601	ModelSettings *ModelSettings `type:"structure"`
10602
10603	// The location where the transcription is stored.
10604	//
10605	// If you set the OutputBucketName, Amazon Transcribe puts the transcript in
10606	// the specified S3 bucket. When you call the GetTranscriptionJob operation,
10607	// the operation returns this location in the TranscriptFileUri field. If you
10608	// enable content redaction, the redacted transcript appears in RedactedTranscriptFileUri.
10609	// If you enable content redaction and choose to output an unredacted transcript,
10610	// that transcript's location still appears in the TranscriptFileUri. The S3
10611	// bucket must have permissions that allow Amazon Transcribe to put files in
10612	// the bucket. For more information, see Permissions Required for IAM User Roles
10613	// (https://docs.aws.amazon.com/transcribe/latest/dg/security_iam_id-based-policy-examples.html#auth-role-iam-user).
10614	//
10615	// You can specify an Amazon Web Services Key Management Service (KMS) key to
10616	// encrypt the output of your transcription using the OutputEncryptionKMSKeyId
10617	// parameter. If you don't specify a KMS key, Amazon Transcribe uses the default
10618	// Amazon S3 key for server-side encryption of transcripts that are placed in
10619	// your S3 bucket.
10620	//
10621	// If you don't set the OutputBucketName, Amazon Transcribe generates a pre-signed
10622	// URL, a shareable URL that provides secure access to your transcription, and
10623	// returns it in the TranscriptFileUri field. Use this URL to download the transcription.
10624	OutputBucketName *string `type:"string"`
10625
10626	// The Amazon Resource Name (ARN) of the Amazon Web Services Key Management
10627	// Service (KMS) key used to encrypt the output of the transcription job. The
10628	// user calling the StartTranscriptionJob operation must have permission to
10629	// use the specified KMS key.
10630	//
10631	// You can use either of the following to identify a KMS key in the current
10632	// account:
10633	//
10634	//    * KMS Key ID: "1234abcd-12ab-34cd-56ef-1234567890ab"
10635	//
10636	//    * KMS Key Alias: "alias/ExampleAlias"
10637	//
10638	// You can use either of the following to identify a KMS key in the current
10639	// account or another account:
10640	//
10641	//    * Amazon Resource Name (ARN) of a KMS Key: "arn:aws:kms:region:account
10642	//    ID:key/1234abcd-12ab-34cd-56ef-1234567890ab"
10643	//
10644	//    * ARN of a KMS Key Alias: "arn:aws:kms:region:account-ID:alias/ExampleAlias"
10645	//
10646	// If you don't specify an encryption key, the output of the transcription job
10647	// is encrypted with the default Amazon S3 key (SSE-S3).
10648	//
10649	// If you specify a KMS key to encrypt your output, you must also specify an
10650	// output location in the OutputBucketName parameter.
10651	OutputEncryptionKMSKeyId *string `min:"1" type:"string"`
10652
10653	// You can specify a location in an Amazon S3 bucket to store the output of
10654	// your transcription job.
10655	//
10656	// If you don't specify an output key, Amazon Transcribe stores the output of
10657	// your transcription job in the Amazon S3 bucket you specified. By default,
10658	// the object key is "your-transcription-job-name.json".
10659	//
10660	// You can use output keys to specify the Amazon S3 prefix and file name of
10661	// the transcription output. For example, specifying the Amazon S3 prefix, "folder1/folder2/",
10662	// as an output key would lead to the output being stored as "folder1/folder2/your-transcription-job-name.json".
10663	// If you specify "my-other-job-name.json" as the output key, the object key
10664	// is changed to "my-other-job-name.json". You can use an output key to change
10665	// both the prefix and the file name, for example "folder/my-other-job-name.json".
10666	//
10667	// If you specify an output key, you must also specify an S3 bucket in the OutputBucketName
10668	// parameter.
10669	OutputKey *string `min:"1" type:"string"`
10670
10671	// A Settings object that provides optional settings for a transcription job.
10672	Settings *Settings `type:"structure"`
10673
10674	// Add subtitles to your batch transcription job.
10675	Subtitles *Subtitles `type:"structure"`
10676
10677	// Add tags to an Amazon Transcribe transcription job.
10678	Tags []*Tag `min:"1" type:"list"`
10679
10680	// The name of the job. You can't use the strings "." or ".." by themselves
10681	// as the job name. The name must also be unique within an Amazon Web Services
10682	// account. If you try to create a transcription job with the same name as a
10683	// previous transcription job, you get a ConflictException error.
10684	//
10685	// TranscriptionJobName is a required field
10686	TranscriptionJobName *string `min:"1" type:"string" required:"true"`
10687}
10688
10689// String returns the string representation.
10690//
10691// API parameter values that are decorated as "sensitive" in the API will not
10692// be included in the string output. The member name will be present, but the
10693// value will be replaced with "sensitive".
10694func (s StartTranscriptionJobInput) String() string {
10695	return awsutil.Prettify(s)
10696}
10697
10698// GoString returns the string representation.
10699//
10700// API parameter values that are decorated as "sensitive" in the API will not
10701// be included in the string output. The member name will be present, but the
10702// value will be replaced with "sensitive".
10703func (s StartTranscriptionJobInput) GoString() string {
10704	return s.String()
10705}
10706
10707// Validate inspects the fields of the type to determine if they are valid.
10708func (s *StartTranscriptionJobInput) Validate() error {
10709	invalidParams := request.ErrInvalidParams{Context: "StartTranscriptionJobInput"}
10710	if s.KMSEncryptionContext != nil && len(s.KMSEncryptionContext) < 1 {
10711		invalidParams.Add(request.NewErrParamMinLen("KMSEncryptionContext", 1))
10712	}
10713	if s.LanguageIdSettings != nil && len(s.LanguageIdSettings) < 1 {
10714		invalidParams.Add(request.NewErrParamMinLen("LanguageIdSettings", 1))
10715	}
10716	if s.LanguageOptions != nil && len(s.LanguageOptions) < 1 {
10717		invalidParams.Add(request.NewErrParamMinLen("LanguageOptions", 1))
10718	}
10719	if s.Media == nil {
10720		invalidParams.Add(request.NewErrParamRequired("Media"))
10721	}
10722	if s.MediaSampleRateHertz != nil && *s.MediaSampleRateHertz < 8000 {
10723		invalidParams.Add(request.NewErrParamMinValue("MediaSampleRateHertz", 8000))
10724	}
10725	if s.OutputEncryptionKMSKeyId != nil && len(*s.OutputEncryptionKMSKeyId) < 1 {
10726		invalidParams.Add(request.NewErrParamMinLen("OutputEncryptionKMSKeyId", 1))
10727	}
10728	if s.OutputKey != nil && len(*s.OutputKey) < 1 {
10729		invalidParams.Add(request.NewErrParamMinLen("OutputKey", 1))
10730	}
10731	if s.Tags != nil && len(s.Tags) < 1 {
10732		invalidParams.Add(request.NewErrParamMinLen("Tags", 1))
10733	}
10734	if s.TranscriptionJobName == nil {
10735		invalidParams.Add(request.NewErrParamRequired("TranscriptionJobName"))
10736	}
10737	if s.TranscriptionJobName != nil && len(*s.TranscriptionJobName) < 1 {
10738		invalidParams.Add(request.NewErrParamMinLen("TranscriptionJobName", 1))
10739	}
10740	if s.ContentRedaction != nil {
10741		if err := s.ContentRedaction.Validate(); err != nil {
10742			invalidParams.AddNested("ContentRedaction", err.(request.ErrInvalidParams))
10743		}
10744	}
10745	if s.JobExecutionSettings != nil {
10746		if err := s.JobExecutionSettings.Validate(); err != nil {
10747			invalidParams.AddNested("JobExecutionSettings", err.(request.ErrInvalidParams))
10748		}
10749	}
10750	if s.LanguageIdSettings != nil {
10751		for i, v := range s.LanguageIdSettings {
10752			if v == nil {
10753				continue
10754			}
10755			if err := v.Validate(); err != nil {
10756				invalidParams.AddNested(fmt.Sprintf("%s[%v]", "LanguageIdSettings", i), err.(request.ErrInvalidParams))
10757			}
10758		}
10759	}
10760	if s.Media != nil {
10761		if err := s.Media.Validate(); err != nil {
10762			invalidParams.AddNested("Media", err.(request.ErrInvalidParams))
10763		}
10764	}
10765	if s.ModelSettings != nil {
10766		if err := s.ModelSettings.Validate(); err != nil {
10767			invalidParams.AddNested("ModelSettings", err.(request.ErrInvalidParams))
10768		}
10769	}
10770	if s.Settings != nil {
10771		if err := s.Settings.Validate(); err != nil {
10772			invalidParams.AddNested("Settings", err.(request.ErrInvalidParams))
10773		}
10774	}
10775	if s.Tags != nil {
10776		for i, v := range s.Tags {
10777			if v == nil {
10778				continue
10779			}
10780			if err := v.Validate(); err != nil {
10781				invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Tags", i), err.(request.ErrInvalidParams))
10782			}
10783		}
10784	}
10785
10786	if invalidParams.Len() > 0 {
10787		return invalidParams
10788	}
10789	return nil
10790}
10791
10792// SetContentRedaction sets the ContentRedaction field's value.
10793func (s *StartTranscriptionJobInput) SetContentRedaction(v *ContentRedaction) *StartTranscriptionJobInput {
10794	s.ContentRedaction = v
10795	return s
10796}
10797
10798// SetIdentifyLanguage sets the IdentifyLanguage field's value.
10799func (s *StartTranscriptionJobInput) SetIdentifyLanguage(v bool) *StartTranscriptionJobInput {
10800	s.IdentifyLanguage = &v
10801	return s
10802}
10803
10804// SetJobExecutionSettings sets the JobExecutionSettings field's value.
10805func (s *StartTranscriptionJobInput) SetJobExecutionSettings(v *JobExecutionSettings) *StartTranscriptionJobInput {
10806	s.JobExecutionSettings = v
10807	return s
10808}
10809
10810// SetKMSEncryptionContext sets the KMSEncryptionContext field's value.
10811func (s *StartTranscriptionJobInput) SetKMSEncryptionContext(v map[string]*string) *StartTranscriptionJobInput {
10812	s.KMSEncryptionContext = v
10813	return s
10814}
10815
10816// SetLanguageCode sets the LanguageCode field's value.
10817func (s *StartTranscriptionJobInput) SetLanguageCode(v string) *StartTranscriptionJobInput {
10818	s.LanguageCode = &v
10819	return s
10820}
10821
10822// SetLanguageIdSettings sets the LanguageIdSettings field's value.
10823func (s *StartTranscriptionJobInput) SetLanguageIdSettings(v map[string]*LanguageIdSettings) *StartTranscriptionJobInput {
10824	s.LanguageIdSettings = v
10825	return s
10826}
10827
10828// SetLanguageOptions sets the LanguageOptions field's value.
10829func (s *StartTranscriptionJobInput) SetLanguageOptions(v []*string) *StartTranscriptionJobInput {
10830	s.LanguageOptions = v
10831	return s
10832}
10833
10834// SetMedia sets the Media field's value.
10835func (s *StartTranscriptionJobInput) SetMedia(v *Media) *StartTranscriptionJobInput {
10836	s.Media = v
10837	return s
10838}
10839
10840// SetMediaFormat sets the MediaFormat field's value.
10841func (s *StartTranscriptionJobInput) SetMediaFormat(v string) *StartTranscriptionJobInput {
10842	s.MediaFormat = &v
10843	return s
10844}
10845
10846// SetMediaSampleRateHertz sets the MediaSampleRateHertz field's value.
10847func (s *StartTranscriptionJobInput) SetMediaSampleRateHertz(v int64) *StartTranscriptionJobInput {
10848	s.MediaSampleRateHertz = &v
10849	return s
10850}
10851
10852// SetModelSettings sets the ModelSettings field's value.
10853func (s *StartTranscriptionJobInput) SetModelSettings(v *ModelSettings) *StartTranscriptionJobInput {
10854	s.ModelSettings = v
10855	return s
10856}
10857
10858// SetOutputBucketName sets the OutputBucketName field's value.
10859func (s *StartTranscriptionJobInput) SetOutputBucketName(v string) *StartTranscriptionJobInput {
10860	s.OutputBucketName = &v
10861	return s
10862}
10863
10864// SetOutputEncryptionKMSKeyId sets the OutputEncryptionKMSKeyId field's value.
10865func (s *StartTranscriptionJobInput) SetOutputEncryptionKMSKeyId(v string) *StartTranscriptionJobInput {
10866	s.OutputEncryptionKMSKeyId = &v
10867	return s
10868}
10869
10870// SetOutputKey sets the OutputKey field's value.
10871func (s *StartTranscriptionJobInput) SetOutputKey(v string) *StartTranscriptionJobInput {
10872	s.OutputKey = &v
10873	return s
10874}
10875
10876// SetSettings sets the Settings field's value.
10877func (s *StartTranscriptionJobInput) SetSettings(v *Settings) *StartTranscriptionJobInput {
10878	s.Settings = v
10879	return s
10880}
10881
10882// SetSubtitles sets the Subtitles field's value.
10883func (s *StartTranscriptionJobInput) SetSubtitles(v *Subtitles) *StartTranscriptionJobInput {
10884	s.Subtitles = v
10885	return s
10886}
10887
10888// SetTags sets the Tags field's value.
10889func (s *StartTranscriptionJobInput) SetTags(v []*Tag) *StartTranscriptionJobInput {
10890	s.Tags = v
10891	return s
10892}
10893
10894// SetTranscriptionJobName sets the TranscriptionJobName field's value.
10895func (s *StartTranscriptionJobInput) SetTranscriptionJobName(v string) *StartTranscriptionJobInput {
10896	s.TranscriptionJobName = &v
10897	return s
10898}
10899
10900type StartTranscriptionJobOutput struct {
10901	_ struct{} `type:"structure"`
10902
10903	// An object containing details of the asynchronous transcription job.
10904	TranscriptionJob *TranscriptionJob `type:"structure"`
10905}
10906
10907// String returns the string representation.
10908//
10909// API parameter values that are decorated as "sensitive" in the API will not
10910// be included in the string output. The member name will be present, but the
10911// value will be replaced with "sensitive".
10912func (s StartTranscriptionJobOutput) String() string {
10913	return awsutil.Prettify(s)
10914}
10915
10916// GoString returns the string representation.
10917//
10918// API parameter values that are decorated as "sensitive" in the API will not
10919// be included in the string output. The member name will be present, but the
10920// value will be replaced with "sensitive".
10921func (s StartTranscriptionJobOutput) GoString() string {
10922	return s.String()
10923}
10924
10925// SetTranscriptionJob sets the TranscriptionJob field's value.
10926func (s *StartTranscriptionJobOutput) SetTranscriptionJob(v *TranscriptionJob) *StartTranscriptionJobOutput {
10927	s.TranscriptionJob = v
10928	return s
10929}
10930
10931// Generate subtitles for your batch transcription job.
10932type Subtitles struct {
10933	_ struct{} `type:"structure"`
10934
10935	// Specify the output format for your subtitle file.
10936	Formats []*string `type:"list"`
10937}
10938
10939// String returns the string representation.
10940//
10941// API parameter values that are decorated as "sensitive" in the API will not
10942// be included in the string output. The member name will be present, but the
10943// value will be replaced with "sensitive".
10944func (s Subtitles) String() string {
10945	return awsutil.Prettify(s)
10946}
10947
10948// GoString returns the string representation.
10949//
10950// API parameter values that are decorated as "sensitive" in the API will not
10951// be included in the string output. The member name will be present, but the
10952// value will be replaced with "sensitive".
10953func (s Subtitles) GoString() string {
10954	return s.String()
10955}
10956
10957// SetFormats sets the Formats field's value.
10958func (s *Subtitles) SetFormats(v []*string) *Subtitles {
10959	s.Formats = v
10960	return s
10961}
10962
10963// Specify the output format for your subtitle file.
10964type SubtitlesOutput_ struct {
10965	_ struct{} `type:"structure"`
10966
10967	// Specify the output format for your subtitle file; if you select both SRT
10968	// and VTT formats, two output files are genereated.
10969	Formats []*string `type:"list"`
10970
10971	// Choose the output location for your subtitle file. This location must be
10972	// an S3 bucket.
10973	SubtitleFileUris []*string `type:"list"`
10974}
10975
10976// String returns the string representation.
10977//
10978// API parameter values that are decorated as "sensitive" in the API will not
10979// be included in the string output. The member name will be present, but the
10980// value will be replaced with "sensitive".
10981func (s SubtitlesOutput_) String() string {
10982	return awsutil.Prettify(s)
10983}
10984
10985// GoString returns the string representation.
10986//
10987// API parameter values that are decorated as "sensitive" in the API will not
10988// be included in the string output. The member name will be present, but the
10989// value will be replaced with "sensitive".
10990func (s SubtitlesOutput_) GoString() string {
10991	return s.String()
10992}
10993
10994// SetFormats sets the Formats field's value.
10995func (s *SubtitlesOutput_) SetFormats(v []*string) *SubtitlesOutput_ {
10996	s.Formats = v
10997	return s
10998}
10999
11000// SetSubtitleFileUris sets the SubtitleFileUris field's value.
11001func (s *SubtitlesOutput_) SetSubtitleFileUris(v []*string) *SubtitlesOutput_ {
11002	s.SubtitleFileUris = v
11003	return s
11004}
11005
11006// A key:value pair that adds metadata to a resource used by Amazon Transcribe.
11007// For example, a tag with the key:value pair ‘Department’:’Sales’ might
11008// be added to a resource to indicate its use by your organization's sales department.
11009type Tag struct {
11010	_ struct{} `type:"structure"`
11011
11012	// The first part of a key:value pair that forms a tag associated with a given
11013	// resource. For example, in the tag ‘Department’:’Sales’, the key is
11014	// 'Department'.
11015	//
11016	// Key is a required field
11017	Key *string `min:"1" type:"string" required:"true"`
11018
11019	// The second part of a key:value pair that forms a tag associated with a given
11020	// resource. For example, in the tag ‘Department’:’Sales’, the value
11021	// is 'Sales'.
11022	//
11023	// Value is a required field
11024	Value *string `type:"string" required:"true"`
11025}
11026
11027// String returns the string representation.
11028//
11029// API parameter values that are decorated as "sensitive" in the API will not
11030// be included in the string output. The member name will be present, but the
11031// value will be replaced with "sensitive".
11032func (s Tag) String() string {
11033	return awsutil.Prettify(s)
11034}
11035
11036// GoString returns the string representation.
11037//
11038// API parameter values that are decorated as "sensitive" in the API will not
11039// be included in the string output. The member name will be present, but the
11040// value will be replaced with "sensitive".
11041func (s Tag) GoString() string {
11042	return s.String()
11043}
11044
11045// Validate inspects the fields of the type to determine if they are valid.
11046func (s *Tag) Validate() error {
11047	invalidParams := request.ErrInvalidParams{Context: "Tag"}
11048	if s.Key == nil {
11049		invalidParams.Add(request.NewErrParamRequired("Key"))
11050	}
11051	if s.Key != nil && len(*s.Key) < 1 {
11052		invalidParams.Add(request.NewErrParamMinLen("Key", 1))
11053	}
11054	if s.Value == nil {
11055		invalidParams.Add(request.NewErrParamRequired("Value"))
11056	}
11057
11058	if invalidParams.Len() > 0 {
11059		return invalidParams
11060	}
11061	return nil
11062}
11063
11064// SetKey sets the Key field's value.
11065func (s *Tag) SetKey(v string) *Tag {
11066	s.Key = &v
11067	return s
11068}
11069
11070// SetValue sets the Value field's value.
11071func (s *Tag) SetValue(v string) *Tag {
11072	s.Value = &v
11073	return s
11074}
11075
11076type TagResourceInput struct {
11077	_ struct{} `type:"structure"`
11078
11079	// The Amazon Resource Name (ARN) of the Amazon Transcribe resource you want
11080	// to tag. ARNs have the format arn:partition:service:region:account-id:resource-type/resource-id
11081	// (for example, arn:aws:transcribe:us-east-1:account-id:transcription-job/your-job-name).
11082	// Valid values for resource-type are: transcription-job, medical-transcription-job,
11083	// vocabulary, medical-vocabulary, vocabulary-filter, and language-model.
11084	//
11085	// ResourceArn is a required field
11086	ResourceArn *string `min:"1" type:"string" required:"true"`
11087
11088	// The tags you are assigning to a given Amazon Transcribe resource.
11089	//
11090	// Tags is a required field
11091	Tags []*Tag `min:"1" type:"list" required:"true"`
11092}
11093
11094// String returns the string representation.
11095//
11096// API parameter values that are decorated as "sensitive" in the API will not
11097// be included in the string output. The member name will be present, but the
11098// value will be replaced with "sensitive".
11099func (s TagResourceInput) String() string {
11100	return awsutil.Prettify(s)
11101}
11102
11103// GoString returns the string representation.
11104//
11105// API parameter values that are decorated as "sensitive" in the API will not
11106// be included in the string output. The member name will be present, but the
11107// value will be replaced with "sensitive".
11108func (s TagResourceInput) GoString() string {
11109	return s.String()
11110}
11111
11112// Validate inspects the fields of the type to determine if they are valid.
11113func (s *TagResourceInput) Validate() error {
11114	invalidParams := request.ErrInvalidParams{Context: "TagResourceInput"}
11115	if s.ResourceArn == nil {
11116		invalidParams.Add(request.NewErrParamRequired("ResourceArn"))
11117	}
11118	if s.ResourceArn != nil && len(*s.ResourceArn) < 1 {
11119		invalidParams.Add(request.NewErrParamMinLen("ResourceArn", 1))
11120	}
11121	if s.Tags == nil {
11122		invalidParams.Add(request.NewErrParamRequired("Tags"))
11123	}
11124	if s.Tags != nil && len(s.Tags) < 1 {
11125		invalidParams.Add(request.NewErrParamMinLen("Tags", 1))
11126	}
11127	if s.Tags != nil {
11128		for i, v := range s.Tags {
11129			if v == nil {
11130				continue
11131			}
11132			if err := v.Validate(); err != nil {
11133				invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Tags", i), err.(request.ErrInvalidParams))
11134			}
11135		}
11136	}
11137
11138	if invalidParams.Len() > 0 {
11139		return invalidParams
11140	}
11141	return nil
11142}
11143
11144// SetResourceArn sets the ResourceArn field's value.
11145func (s *TagResourceInput) SetResourceArn(v string) *TagResourceInput {
11146	s.ResourceArn = &v
11147	return s
11148}
11149
11150// SetTags sets the Tags field's value.
11151func (s *TagResourceInput) SetTags(v []*Tag) *TagResourceInput {
11152	s.Tags = v
11153	return s
11154}
11155
11156type TagResourceOutput struct {
11157	_ struct{} `type:"structure"`
11158}
11159
11160// String returns the string representation.
11161//
11162// API parameter values that are decorated as "sensitive" in the API will not
11163// be included in the string output. The member name will be present, but the
11164// value will be replaced with "sensitive".
11165func (s TagResourceOutput) String() string {
11166	return awsutil.Prettify(s)
11167}
11168
11169// GoString returns the string representation.
11170//
11171// API parameter values that are decorated as "sensitive" in the API will not
11172// be included in the string output. The member name will be present, but the
11173// value will be replaced with "sensitive".
11174func (s TagResourceOutput) GoString() string {
11175	return s.String()
11176}
11177
11178// Identifies the location of a transcription.
11179type Transcript struct {
11180	_ struct{} `type:"structure"`
11181
11182	// The S3 object location of the redacted transcript.
11183	//
11184	// Use this URI to access the redacted transcript. If you specified an S3 bucket
11185	// in the OutputBucketName field when you created the job, this is the URI of
11186	// that bucket. If you chose to store the transcript in Amazon Transcribe, this
11187	// is a shareable URL that provides secure access to that location.
11188	RedactedTranscriptFileUri *string `min:"1" type:"string"`
11189
11190	// The S3 object location of the transcript.
11191	//
11192	// Use this URI to access the transcript. If you specified an S3 bucket in the
11193	// OutputBucketName field when you created the job, this is the URI of that
11194	// bucket. If you chose to store the transcript in Amazon Transcribe, this is
11195	// a shareable URL that provides secure access to that location.
11196	TranscriptFileUri *string `min:"1" type:"string"`
11197}
11198
11199// String returns the string representation.
11200//
11201// API parameter values that are decorated as "sensitive" in the API will not
11202// be included in the string output. The member name will be present, but the
11203// value will be replaced with "sensitive".
11204func (s Transcript) String() string {
11205	return awsutil.Prettify(s)
11206}
11207
11208// GoString returns the string representation.
11209//
11210// API parameter values that are decorated as "sensitive" in the API will not
11211// be included in the string output. The member name will be present, but the
11212// value will be replaced with "sensitive".
11213func (s Transcript) GoString() string {
11214	return s.String()
11215}
11216
11217// SetRedactedTranscriptFileUri sets the RedactedTranscriptFileUri field's value.
11218func (s *Transcript) SetRedactedTranscriptFileUri(v string) *Transcript {
11219	s.RedactedTranscriptFileUri = &v
11220	return s
11221}
11222
11223// SetTranscriptFileUri sets the TranscriptFileUri field's value.
11224func (s *Transcript) SetTranscriptFileUri(v string) *Transcript {
11225	s.TranscriptFileUri = &v
11226	return s
11227}
11228
11229// Matches the output of the transcription to either the specific phrases that
11230// you specify, or the intent of the phrases that you specify.
11231type TranscriptFilter struct {
11232	_ struct{} `type:"structure"`
11233
11234	// A time range, set in seconds, between two points in the call.
11235	AbsoluteTimeRange *AbsoluteTimeRange `type:"structure"`
11236
11237	// If TRUE, the rule that you specify is applied to everything except for the
11238	// phrases that you specify.
11239	Negate *bool `type:"boolean"`
11240
11241	// Determines whether the customer or the agent is speaking the phrases that
11242	// you've specified.
11243	ParticipantRole *string `type:"string" enum:"ParticipantRole"`
11244
11245	// An object that allows percentages to specify the proportion of the call where
11246	// you would like to apply a filter. For example, you can specify the first
11247	// half of the call. You can also specify the period of time between halfway
11248	// through to three-quarters of the way through the call. Because the length
11249	// of conversation can vary between calls, you can apply relative time ranges
11250	// across all calls.
11251	RelativeTimeRange *RelativeTimeRange `type:"structure"`
11252
11253	// The phrases that you're specifying for the transcript filter to match.
11254	//
11255	// Targets is a required field
11256	Targets []*string `min:"1" type:"list" required:"true"`
11257
11258	// Matches the phrase to the transcription output in a word for word fashion.
11259	// For example, if you specify the phrase "I want to speak to the manager."
11260	// Amazon Transcribe attempts to match that specific phrase to the transcription.
11261	//
11262	// TranscriptFilterType is a required field
11263	TranscriptFilterType *string `type:"string" required:"true" enum:"TranscriptFilterType"`
11264}
11265
11266// String returns the string representation.
11267//
11268// API parameter values that are decorated as "sensitive" in the API will not
11269// be included in the string output. The member name will be present, but the
11270// value will be replaced with "sensitive".
11271func (s TranscriptFilter) String() string {
11272	return awsutil.Prettify(s)
11273}
11274
11275// GoString returns the string representation.
11276//
11277// API parameter values that are decorated as "sensitive" in the API will not
11278// be included in the string output. The member name will be present, but the
11279// value will be replaced with "sensitive".
11280func (s TranscriptFilter) GoString() string {
11281	return s.String()
11282}
11283
11284// Validate inspects the fields of the type to determine if they are valid.
11285func (s *TranscriptFilter) Validate() error {
11286	invalidParams := request.ErrInvalidParams{Context: "TranscriptFilter"}
11287	if s.Targets == nil {
11288		invalidParams.Add(request.NewErrParamRequired("Targets"))
11289	}
11290	if s.Targets != nil && len(s.Targets) < 1 {
11291		invalidParams.Add(request.NewErrParamMinLen("Targets", 1))
11292	}
11293	if s.TranscriptFilterType == nil {
11294		invalidParams.Add(request.NewErrParamRequired("TranscriptFilterType"))
11295	}
11296
11297	if invalidParams.Len() > 0 {
11298		return invalidParams
11299	}
11300	return nil
11301}
11302
11303// SetAbsoluteTimeRange sets the AbsoluteTimeRange field's value.
11304func (s *TranscriptFilter) SetAbsoluteTimeRange(v *AbsoluteTimeRange) *TranscriptFilter {
11305	s.AbsoluteTimeRange = v
11306	return s
11307}
11308
11309// SetNegate sets the Negate field's value.
11310func (s *TranscriptFilter) SetNegate(v bool) *TranscriptFilter {
11311	s.Negate = &v
11312	return s
11313}
11314
11315// SetParticipantRole sets the ParticipantRole field's value.
11316func (s *TranscriptFilter) SetParticipantRole(v string) *TranscriptFilter {
11317	s.ParticipantRole = &v
11318	return s
11319}
11320
11321// SetRelativeTimeRange sets the RelativeTimeRange field's value.
11322func (s *TranscriptFilter) SetRelativeTimeRange(v *RelativeTimeRange) *TranscriptFilter {
11323	s.RelativeTimeRange = v
11324	return s
11325}
11326
11327// SetTargets sets the Targets field's value.
11328func (s *TranscriptFilter) SetTargets(v []*string) *TranscriptFilter {
11329	s.Targets = v
11330	return s
11331}
11332
11333// SetTranscriptFilterType sets the TranscriptFilterType field's value.
11334func (s *TranscriptFilter) SetTranscriptFilterType(v string) *TranscriptFilter {
11335	s.TranscriptFilterType = &v
11336	return s
11337}
11338
11339// Describes an asynchronous transcription job that was created with the StartTranscriptionJob
11340// operation.
11341type TranscriptionJob struct {
11342	_ struct{} `type:"structure"`
11343
11344	// A timestamp that shows when the job completed.
11345	CompletionTime *time.Time `type:"timestamp"`
11346
11347	// An object that describes content redaction settings for the transcription
11348	// job.
11349	ContentRedaction *ContentRedaction `type:"structure"`
11350
11351	// A timestamp that shows when the job was created.
11352	CreationTime *time.Time `type:"timestamp"`
11353
11354	// If the TranscriptionJobStatus field is FAILED, this field contains information
11355	// about why the job failed.
11356	//
11357	// The FailureReason field can contain one of the following values:
11358	//
11359	//    * Unsupported media format - The media format specified in the MediaFormat
11360	//    field of the request isn't valid. See the description of the MediaFormat
11361	//    field for a list of valid values.
11362	//
11363	//    * The media format provided does not match the detected media format -
11364	//    The media format of the audio file doesn't match the format specified
11365	//    in the MediaFormat field in the request. Check the media format of your
11366	//    media file and make sure that the two values match.
11367	//
11368	//    * Invalid sample rate for audio file - The sample rate specified in the
11369	//    MediaSampleRateHertz of the request isn't valid. The sample rate must
11370	//    be between 8,000 and 48,000 Hertz.
11371	//
11372	//    * The sample rate provided does not match the detected sample rate - The
11373	//    sample rate in the audio file doesn't match the sample rate specified
11374	//    in the MediaSampleRateHertz field in the request. Check the sample rate
11375	//    of your media file and make sure that the two values match.
11376	//
11377	//    * Invalid file size: file size too large - The size of your audio file
11378	//    is larger than Amazon Transcribe can process. For more information, see
11379	//    Limits (https://docs.aws.amazon.com/transcribe/latest/dg/limits-guidelines.html#limits)
11380	//    in the Amazon Transcribe Developer Guide.
11381	//
11382	//    * Invalid number of channels: number of channels too large - Your audio
11383	//    contains more channels than Amazon Transcribe is configured to process.
11384	//    To request additional channels, see Amazon Transcribe Limits (https://docs.aws.amazon.com/general/latest/gr/aws_service_limits.html#limits-amazon-transcribe)
11385	//    in the Amazon Web Services General Reference.
11386	FailureReason *string `type:"string"`
11387
11388	// A value between zero and one that Amazon Transcribe assigned to the language
11389	// that it identified in the source audio. Larger values indicate that Amazon
11390	// Transcribe has higher confidence in the language it identified.
11391	IdentifiedLanguageScore *float64 `type:"float"`
11392
11393	// A value that shows if automatic language identification was enabled for a
11394	// transcription job.
11395	IdentifyLanguage *bool `type:"boolean"`
11396
11397	// Provides information about how a transcription job is executed.
11398	JobExecutionSettings *JobExecutionSettings `type:"structure"`
11399
11400	// The language code for the input speech.
11401	LanguageCode *string `type:"string" enum:"LanguageCode"`
11402
11403	// Language-specific settings that can be specified when language identification
11404	// is enabled for your transcription job. These settings include VocabularyName,
11405	// VocabularyFilterName, and LanguageModelNameLanguageModelName.
11406	LanguageIdSettings map[string]*LanguageIdSettings `min:"1" type:"map"`
11407
11408	// An object that shows the optional array of languages inputted for transcription
11409	// jobs with automatic language identification enabled.
11410	LanguageOptions []*string `min:"1" type:"list"`
11411
11412	// An object that describes the input media for the transcription job.
11413	Media *Media `type:"structure"`
11414
11415	// The format of the input media file.
11416	MediaFormat *string `type:"string" enum:"MediaFormat"`
11417
11418	// The sample rate, in Hertz, of the audio track in the input media file.
11419	MediaSampleRateHertz *int64 `min:"8000" type:"integer"`
11420
11421	// An object containing the details of your custom language model.
11422	ModelSettings *ModelSettings `type:"structure"`
11423
11424	// Optional settings for the transcription job. Use these settings to turn on
11425	// speaker recognition, to set the maximum number of speakers that should be
11426	// identified and to specify a custom vocabulary to use when processing the
11427	// transcription job.
11428	Settings *Settings `type:"structure"`
11429
11430	// A timestamp that shows when the job started processing.
11431	StartTime *time.Time `type:"timestamp"`
11432
11433	// Generate subtitles for your batch transcription job.
11434	Subtitles *SubtitlesOutput_ `type:"structure"`
11435
11436	// A key:value pair assigned to a given transcription job.
11437	Tags []*Tag `min:"1" type:"list"`
11438
11439	// An object that describes the output of the transcription job.
11440	Transcript *Transcript `type:"structure"`
11441
11442	// The name of the transcription job.
11443	TranscriptionJobName *string `min:"1" type:"string"`
11444
11445	// The status of the transcription job.
11446	TranscriptionJobStatus *string `type:"string" enum:"TranscriptionJobStatus"`
11447}
11448
11449// String returns the string representation.
11450//
11451// API parameter values that are decorated as "sensitive" in the API will not
11452// be included in the string output. The member name will be present, but the
11453// value will be replaced with "sensitive".
11454func (s TranscriptionJob) String() string {
11455	return awsutil.Prettify(s)
11456}
11457
11458// GoString returns the string representation.
11459//
11460// API parameter values that are decorated as "sensitive" in the API will not
11461// be included in the string output. The member name will be present, but the
11462// value will be replaced with "sensitive".
11463func (s TranscriptionJob) GoString() string {
11464	return s.String()
11465}
11466
11467// SetCompletionTime sets the CompletionTime field's value.
11468func (s *TranscriptionJob) SetCompletionTime(v time.Time) *TranscriptionJob {
11469	s.CompletionTime = &v
11470	return s
11471}
11472
11473// SetContentRedaction sets the ContentRedaction field's value.
11474func (s *TranscriptionJob) SetContentRedaction(v *ContentRedaction) *TranscriptionJob {
11475	s.ContentRedaction = v
11476	return s
11477}
11478
11479// SetCreationTime sets the CreationTime field's value.
11480func (s *TranscriptionJob) SetCreationTime(v time.Time) *TranscriptionJob {
11481	s.CreationTime = &v
11482	return s
11483}
11484
11485// SetFailureReason sets the FailureReason field's value.
11486func (s *TranscriptionJob) SetFailureReason(v string) *TranscriptionJob {
11487	s.FailureReason = &v
11488	return s
11489}
11490
11491// SetIdentifiedLanguageScore sets the IdentifiedLanguageScore field's value.
11492func (s *TranscriptionJob) SetIdentifiedLanguageScore(v float64) *TranscriptionJob {
11493	s.IdentifiedLanguageScore = &v
11494	return s
11495}
11496
11497// SetIdentifyLanguage sets the IdentifyLanguage field's value.
11498func (s *TranscriptionJob) SetIdentifyLanguage(v bool) *TranscriptionJob {
11499	s.IdentifyLanguage = &v
11500	return s
11501}
11502
11503// SetJobExecutionSettings sets the JobExecutionSettings field's value.
11504func (s *TranscriptionJob) SetJobExecutionSettings(v *JobExecutionSettings) *TranscriptionJob {
11505	s.JobExecutionSettings = v
11506	return s
11507}
11508
11509// SetLanguageCode sets the LanguageCode field's value.
11510func (s *TranscriptionJob) SetLanguageCode(v string) *TranscriptionJob {
11511	s.LanguageCode = &v
11512	return s
11513}
11514
11515// SetLanguageIdSettings sets the LanguageIdSettings field's value.
11516func (s *TranscriptionJob) SetLanguageIdSettings(v map[string]*LanguageIdSettings) *TranscriptionJob {
11517	s.LanguageIdSettings = v
11518	return s
11519}
11520
11521// SetLanguageOptions sets the LanguageOptions field's value.
11522func (s *TranscriptionJob) SetLanguageOptions(v []*string) *TranscriptionJob {
11523	s.LanguageOptions = v
11524	return s
11525}
11526
11527// SetMedia sets the Media field's value.
11528func (s *TranscriptionJob) SetMedia(v *Media) *TranscriptionJob {
11529	s.Media = v
11530	return s
11531}
11532
11533// SetMediaFormat sets the MediaFormat field's value.
11534func (s *TranscriptionJob) SetMediaFormat(v string) *TranscriptionJob {
11535	s.MediaFormat = &v
11536	return s
11537}
11538
11539// SetMediaSampleRateHertz sets the MediaSampleRateHertz field's value.
11540func (s *TranscriptionJob) SetMediaSampleRateHertz(v int64) *TranscriptionJob {
11541	s.MediaSampleRateHertz = &v
11542	return s
11543}
11544
11545// SetModelSettings sets the ModelSettings field's value.
11546func (s *TranscriptionJob) SetModelSettings(v *ModelSettings) *TranscriptionJob {
11547	s.ModelSettings = v
11548	return s
11549}
11550
11551// SetSettings sets the Settings field's value.
11552func (s *TranscriptionJob) SetSettings(v *Settings) *TranscriptionJob {
11553	s.Settings = v
11554	return s
11555}
11556
11557// SetStartTime sets the StartTime field's value.
11558func (s *TranscriptionJob) SetStartTime(v time.Time) *TranscriptionJob {
11559	s.StartTime = &v
11560	return s
11561}
11562
11563// SetSubtitles sets the Subtitles field's value.
11564func (s *TranscriptionJob) SetSubtitles(v *SubtitlesOutput_) *TranscriptionJob {
11565	s.Subtitles = v
11566	return s
11567}
11568
11569// SetTags sets the Tags field's value.
11570func (s *TranscriptionJob) SetTags(v []*Tag) *TranscriptionJob {
11571	s.Tags = v
11572	return s
11573}
11574
11575// SetTranscript sets the Transcript field's value.
11576func (s *TranscriptionJob) SetTranscript(v *Transcript) *TranscriptionJob {
11577	s.Transcript = v
11578	return s
11579}
11580
11581// SetTranscriptionJobName sets the TranscriptionJobName field's value.
11582func (s *TranscriptionJob) SetTranscriptionJobName(v string) *TranscriptionJob {
11583	s.TranscriptionJobName = &v
11584	return s
11585}
11586
11587// SetTranscriptionJobStatus sets the TranscriptionJobStatus field's value.
11588func (s *TranscriptionJob) SetTranscriptionJobStatus(v string) *TranscriptionJob {
11589	s.TranscriptionJobStatus = &v
11590	return s
11591}
11592
11593// Provides a summary of information about a transcription job.
11594type TranscriptionJobSummary struct {
11595	_ struct{} `type:"structure"`
11596
11597	// A timestamp that shows when the job was completed.
11598	CompletionTime *time.Time `type:"timestamp"`
11599
11600	// The content redaction settings of the transcription job.
11601	ContentRedaction *ContentRedaction `type:"structure"`
11602
11603	// A timestamp that shows when the job was created.
11604	CreationTime *time.Time `type:"timestamp"`
11605
11606	// If the TranscriptionJobStatus field is FAILED, a description of the error.
11607	FailureReason *string `type:"string"`
11608
11609	// A value between zero and one that Amazon Transcribe assigned to the language
11610	// it identified in the source audio. A higher score indicates that Amazon Transcribe
11611	// is more confident in the language it identified.
11612	IdentifiedLanguageScore *float64 `type:"float"`
11613
11614	// Whether automatic language identification was enabled for a transcription
11615	// job.
11616	IdentifyLanguage *bool `type:"boolean"`
11617
11618	// The language code for the input speech.
11619	LanguageCode *string `type:"string" enum:"LanguageCode"`
11620
11621	// The object used to call your custom language model to your transcription
11622	// job.
11623	ModelSettings *ModelSettings `type:"structure"`
11624
11625	// Indicates the location of the output of the transcription job.
11626	//
11627	// If the value is CUSTOMER_BUCKET then the location is the S3 bucket specified
11628	// in the outputBucketName field when the transcription job was started with
11629	// the StartTranscriptionJob operation.
11630	//
11631	// If the value is SERVICE_BUCKET then the output is stored by Amazon Transcribe
11632	// and can be retrieved using the URI in the GetTranscriptionJob response's
11633	// TranscriptFileUri field.
11634	OutputLocationType *string `type:"string" enum:"OutputLocationType"`
11635
11636	// A timestamp that shows when the job started processing.
11637	StartTime *time.Time `type:"timestamp"`
11638
11639	// The name of the transcription job.
11640	TranscriptionJobName *string `min:"1" type:"string"`
11641
11642	// The status of the transcription job. When the status is COMPLETED, use the
11643	// GetTranscriptionJob operation to get the results of the transcription.
11644	TranscriptionJobStatus *string `type:"string" enum:"TranscriptionJobStatus"`
11645}
11646
11647// String returns the string representation.
11648//
11649// API parameter values that are decorated as "sensitive" in the API will not
11650// be included in the string output. The member name will be present, but the
11651// value will be replaced with "sensitive".
11652func (s TranscriptionJobSummary) String() string {
11653	return awsutil.Prettify(s)
11654}
11655
11656// GoString returns the string representation.
11657//
11658// API parameter values that are decorated as "sensitive" in the API will not
11659// be included in the string output. The member name will be present, but the
11660// value will be replaced with "sensitive".
11661func (s TranscriptionJobSummary) GoString() string {
11662	return s.String()
11663}
11664
11665// SetCompletionTime sets the CompletionTime field's value.
11666func (s *TranscriptionJobSummary) SetCompletionTime(v time.Time) *TranscriptionJobSummary {
11667	s.CompletionTime = &v
11668	return s
11669}
11670
11671// SetContentRedaction sets the ContentRedaction field's value.
11672func (s *TranscriptionJobSummary) SetContentRedaction(v *ContentRedaction) *TranscriptionJobSummary {
11673	s.ContentRedaction = v
11674	return s
11675}
11676
11677// SetCreationTime sets the CreationTime field's value.
11678func (s *TranscriptionJobSummary) SetCreationTime(v time.Time) *TranscriptionJobSummary {
11679	s.CreationTime = &v
11680	return s
11681}
11682
11683// SetFailureReason sets the FailureReason field's value.
11684func (s *TranscriptionJobSummary) SetFailureReason(v string) *TranscriptionJobSummary {
11685	s.FailureReason = &v
11686	return s
11687}
11688
11689// SetIdentifiedLanguageScore sets the IdentifiedLanguageScore field's value.
11690func (s *TranscriptionJobSummary) SetIdentifiedLanguageScore(v float64) *TranscriptionJobSummary {
11691	s.IdentifiedLanguageScore = &v
11692	return s
11693}
11694
11695// SetIdentifyLanguage sets the IdentifyLanguage field's value.
11696func (s *TranscriptionJobSummary) SetIdentifyLanguage(v bool) *TranscriptionJobSummary {
11697	s.IdentifyLanguage = &v
11698	return s
11699}
11700
11701// SetLanguageCode sets the LanguageCode field's value.
11702func (s *TranscriptionJobSummary) SetLanguageCode(v string) *TranscriptionJobSummary {
11703	s.LanguageCode = &v
11704	return s
11705}
11706
11707// SetModelSettings sets the ModelSettings field's value.
11708func (s *TranscriptionJobSummary) SetModelSettings(v *ModelSettings) *TranscriptionJobSummary {
11709	s.ModelSettings = v
11710	return s
11711}
11712
11713// SetOutputLocationType sets the OutputLocationType field's value.
11714func (s *TranscriptionJobSummary) SetOutputLocationType(v string) *TranscriptionJobSummary {
11715	s.OutputLocationType = &v
11716	return s
11717}
11718
11719// SetStartTime sets the StartTime field's value.
11720func (s *TranscriptionJobSummary) SetStartTime(v time.Time) *TranscriptionJobSummary {
11721	s.StartTime = &v
11722	return s
11723}
11724
11725// SetTranscriptionJobName sets the TranscriptionJobName field's value.
11726func (s *TranscriptionJobSummary) SetTranscriptionJobName(v string) *TranscriptionJobSummary {
11727	s.TranscriptionJobName = &v
11728	return s
11729}
11730
11731// SetTranscriptionJobStatus sets the TranscriptionJobStatus field's value.
11732func (s *TranscriptionJobSummary) SetTranscriptionJobStatus(v string) *TranscriptionJobSummary {
11733	s.TranscriptionJobStatus = &v
11734	return s
11735}
11736
11737type UntagResourceInput struct {
11738	_ struct{} `type:"structure"`
11739
11740	// The Amazon Resource Name (ARN) of the Amazon Transcribe resource you want
11741	// to remove tags from. ARNs have the format arn:partition:service:region:account-id:resource-type/resource-id
11742	// (for example, arn:aws:transcribe:us-east-1:account-id:transcription-job/your-job-name).
11743	// Valid values for resource-type are: transcription-job, medical-transcription-job,
11744	// vocabulary, medical-vocabulary, vocabulary-filter, and language-model.
11745	//
11746	// ResourceArn is a required field
11747	ResourceArn *string `min:"1" type:"string" required:"true"`
11748
11749	// A list of tag keys you want to remove from a specified Amazon Transcribe
11750	// resource.
11751	//
11752	// TagKeys is a required field
11753	TagKeys []*string `min:"1" type:"list" required:"true"`
11754}
11755
11756// String returns the string representation.
11757//
11758// API parameter values that are decorated as "sensitive" in the API will not
11759// be included in the string output. The member name will be present, but the
11760// value will be replaced with "sensitive".
11761func (s UntagResourceInput) String() string {
11762	return awsutil.Prettify(s)
11763}
11764
11765// GoString returns the string representation.
11766//
11767// API parameter values that are decorated as "sensitive" in the API will not
11768// be included in the string output. The member name will be present, but the
11769// value will be replaced with "sensitive".
11770func (s UntagResourceInput) GoString() string {
11771	return s.String()
11772}
11773
11774// Validate inspects the fields of the type to determine if they are valid.
11775func (s *UntagResourceInput) Validate() error {
11776	invalidParams := request.ErrInvalidParams{Context: "UntagResourceInput"}
11777	if s.ResourceArn == nil {
11778		invalidParams.Add(request.NewErrParamRequired("ResourceArn"))
11779	}
11780	if s.ResourceArn != nil && len(*s.ResourceArn) < 1 {
11781		invalidParams.Add(request.NewErrParamMinLen("ResourceArn", 1))
11782	}
11783	if s.TagKeys == nil {
11784		invalidParams.Add(request.NewErrParamRequired("TagKeys"))
11785	}
11786	if s.TagKeys != nil && len(s.TagKeys) < 1 {
11787		invalidParams.Add(request.NewErrParamMinLen("TagKeys", 1))
11788	}
11789
11790	if invalidParams.Len() > 0 {
11791		return invalidParams
11792	}
11793	return nil
11794}
11795
11796// SetResourceArn sets the ResourceArn field's value.
11797func (s *UntagResourceInput) SetResourceArn(v string) *UntagResourceInput {
11798	s.ResourceArn = &v
11799	return s
11800}
11801
11802// SetTagKeys sets the TagKeys field's value.
11803func (s *UntagResourceInput) SetTagKeys(v []*string) *UntagResourceInput {
11804	s.TagKeys = v
11805	return s
11806}
11807
11808type UntagResourceOutput struct {
11809	_ struct{} `type:"structure"`
11810}
11811
11812// String returns the string representation.
11813//
11814// API parameter values that are decorated as "sensitive" in the API will not
11815// be included in the string output. The member name will be present, but the
11816// value will be replaced with "sensitive".
11817func (s UntagResourceOutput) String() string {
11818	return awsutil.Prettify(s)
11819}
11820
11821// GoString returns the string representation.
11822//
11823// API parameter values that are decorated as "sensitive" in the API will not
11824// be included in the string output. The member name will be present, but the
11825// value will be replaced with "sensitive".
11826func (s UntagResourceOutput) GoString() string {
11827	return s.String()
11828}
11829
11830type UpdateCallAnalyticsCategoryInput struct {
11831	_ struct{} `type:"structure"`
11832
11833	// The name of the analytics category to update. The name is case sensitive.
11834	// If you try to update a call analytics category with the same name as a previous
11835	// category you will receive a ConflictException error.
11836	//
11837	// CategoryName is a required field
11838	CategoryName *string `min:"1" type:"string" required:"true"`
11839
11840	// The rules used for the updated analytics category. The rules that you provide
11841	// in this field replace the ones that are currently being used.
11842	//
11843	// Rules is a required field
11844	Rules []*Rule `min:"1" type:"list" required:"true"`
11845}
11846
11847// String returns the string representation.
11848//
11849// API parameter values that are decorated as "sensitive" in the API will not
11850// be included in the string output. The member name will be present, but the
11851// value will be replaced with "sensitive".
11852func (s UpdateCallAnalyticsCategoryInput) String() string {
11853	return awsutil.Prettify(s)
11854}
11855
11856// GoString returns the string representation.
11857//
11858// API parameter values that are decorated as "sensitive" in the API will not
11859// be included in the string output. The member name will be present, but the
11860// value will be replaced with "sensitive".
11861func (s UpdateCallAnalyticsCategoryInput) GoString() string {
11862	return s.String()
11863}
11864
11865// Validate inspects the fields of the type to determine if they are valid.
11866func (s *UpdateCallAnalyticsCategoryInput) Validate() error {
11867	invalidParams := request.ErrInvalidParams{Context: "UpdateCallAnalyticsCategoryInput"}
11868	if s.CategoryName == nil {
11869		invalidParams.Add(request.NewErrParamRequired("CategoryName"))
11870	}
11871	if s.CategoryName != nil && len(*s.CategoryName) < 1 {
11872		invalidParams.Add(request.NewErrParamMinLen("CategoryName", 1))
11873	}
11874	if s.Rules == nil {
11875		invalidParams.Add(request.NewErrParamRequired("Rules"))
11876	}
11877	if s.Rules != nil && len(s.Rules) < 1 {
11878		invalidParams.Add(request.NewErrParamMinLen("Rules", 1))
11879	}
11880	if s.Rules != nil {
11881		for i, v := range s.Rules {
11882			if v == nil {
11883				continue
11884			}
11885			if err := v.Validate(); err != nil {
11886				invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Rules", i), err.(request.ErrInvalidParams))
11887			}
11888		}
11889	}
11890
11891	if invalidParams.Len() > 0 {
11892		return invalidParams
11893	}
11894	return nil
11895}
11896
11897// SetCategoryName sets the CategoryName field's value.
11898func (s *UpdateCallAnalyticsCategoryInput) SetCategoryName(v string) *UpdateCallAnalyticsCategoryInput {
11899	s.CategoryName = &v
11900	return s
11901}
11902
11903// SetRules sets the Rules field's value.
11904func (s *UpdateCallAnalyticsCategoryInput) SetRules(v []*Rule) *UpdateCallAnalyticsCategoryInput {
11905	s.Rules = v
11906	return s
11907}
11908
11909type UpdateCallAnalyticsCategoryOutput struct {
11910	_ struct{} `type:"structure"`
11911
11912	// The attributes describing the analytics category. You can see information
11913	// such as the rules that you've used to update the category and when the category
11914	// was originally created.
11915	CategoryProperties *CategoryProperties `type:"structure"`
11916}
11917
11918// String returns the string representation.
11919//
11920// API parameter values that are decorated as "sensitive" in the API will not
11921// be included in the string output. The member name will be present, but the
11922// value will be replaced with "sensitive".
11923func (s UpdateCallAnalyticsCategoryOutput) String() string {
11924	return awsutil.Prettify(s)
11925}
11926
11927// GoString returns the string representation.
11928//
11929// API parameter values that are decorated as "sensitive" in the API will not
11930// be included in the string output. The member name will be present, but the
11931// value will be replaced with "sensitive".
11932func (s UpdateCallAnalyticsCategoryOutput) GoString() string {
11933	return s.String()
11934}
11935
11936// SetCategoryProperties sets the CategoryProperties field's value.
11937func (s *UpdateCallAnalyticsCategoryOutput) SetCategoryProperties(v *CategoryProperties) *UpdateCallAnalyticsCategoryOutput {
11938	s.CategoryProperties = v
11939	return s
11940}
11941
11942type UpdateMedicalVocabularyInput struct {
11943	_ struct{} `type:"structure"`
11944
11945	// The language code of the language used for the entries in the updated vocabulary.
11946	// US English (en-US) is the only valid language code in Amazon Transcribe Medical.
11947	//
11948	// LanguageCode is a required field
11949	LanguageCode *string `type:"string" required:"true" enum:"LanguageCode"`
11950
11951	// The location in Amazon S3 of the text file that contains your custom vocabulary.
11952	// The URI must be in the same Amazon Web Services Region as the resource that
11953	// you are calling. The following is the format for a URI:
11954	//
11955	// https://s3.<aws-region>.amazonaws.com/<bucket-name>/<keyprefix>/<objectkey>
11956	//
11957	// For example:
11958	//
11959	// https://s3.us-east-1.amazonaws.com/AWSDOC-EXAMPLE-BUCKET/vocab.txt
11960	//
11961	// For more information about Amazon S3 object names, see Object Keys (https://docs.aws.amazon.com/AmazonS3/latest/dev/UsingMetadata.html#object-keys)
11962	// in the Amazon S3 Developer Guide.
11963	//
11964	// For more information about custom vocabularies in Amazon Transcribe Medical,
11965	// see Medical Custom Vocabularies (https://docs.aws.amazon.com/transcribe/latest/dg/how-it-works.html#how-vocabulary).
11966	VocabularyFileUri *string `min:"1" type:"string"`
11967
11968	// The name of the vocabulary to update. The name is case sensitive. If you
11969	// try to update a vocabulary with the same name as a vocabulary you've already
11970	// made, you get a ConflictException error.
11971	//
11972	// VocabularyName is a required field
11973	VocabularyName *string `min:"1" type:"string" required:"true"`
11974}
11975
11976// String returns the string representation.
11977//
11978// API parameter values that are decorated as "sensitive" in the API will not
11979// be included in the string output. The member name will be present, but the
11980// value will be replaced with "sensitive".
11981func (s UpdateMedicalVocabularyInput) String() string {
11982	return awsutil.Prettify(s)
11983}
11984
11985// GoString returns the string representation.
11986//
11987// API parameter values that are decorated as "sensitive" in the API will not
11988// be included in the string output. The member name will be present, but the
11989// value will be replaced with "sensitive".
11990func (s UpdateMedicalVocabularyInput) GoString() string {
11991	return s.String()
11992}
11993
11994// Validate inspects the fields of the type to determine if they are valid.
11995func (s *UpdateMedicalVocabularyInput) Validate() error {
11996	invalidParams := request.ErrInvalidParams{Context: "UpdateMedicalVocabularyInput"}
11997	if s.LanguageCode == nil {
11998		invalidParams.Add(request.NewErrParamRequired("LanguageCode"))
11999	}
12000	if s.VocabularyFileUri != nil && len(*s.VocabularyFileUri) < 1 {
12001		invalidParams.Add(request.NewErrParamMinLen("VocabularyFileUri", 1))
12002	}
12003	if s.VocabularyName == nil {
12004		invalidParams.Add(request.NewErrParamRequired("VocabularyName"))
12005	}
12006	if s.VocabularyName != nil && len(*s.VocabularyName) < 1 {
12007		invalidParams.Add(request.NewErrParamMinLen("VocabularyName", 1))
12008	}
12009
12010	if invalidParams.Len() > 0 {
12011		return invalidParams
12012	}
12013	return nil
12014}
12015
12016// SetLanguageCode sets the LanguageCode field's value.
12017func (s *UpdateMedicalVocabularyInput) SetLanguageCode(v string) *UpdateMedicalVocabularyInput {
12018	s.LanguageCode = &v
12019	return s
12020}
12021
12022// SetVocabularyFileUri sets the VocabularyFileUri field's value.
12023func (s *UpdateMedicalVocabularyInput) SetVocabularyFileUri(v string) *UpdateMedicalVocabularyInput {
12024	s.VocabularyFileUri = &v
12025	return s
12026}
12027
12028// SetVocabularyName sets the VocabularyName field's value.
12029func (s *UpdateMedicalVocabularyInput) SetVocabularyName(v string) *UpdateMedicalVocabularyInput {
12030	s.VocabularyName = &v
12031	return s
12032}
12033
12034type UpdateMedicalVocabularyOutput struct {
12035	_ struct{} `type:"structure"`
12036
12037	// The language code for the language of the text file used to update the custom
12038	// vocabulary. US English (en-US) is the only language supported in Amazon Transcribe
12039	// Medical.
12040	LanguageCode *string `type:"string" enum:"LanguageCode"`
12041
12042	// The date and time that the vocabulary was updated.
12043	LastModifiedTime *time.Time `type:"timestamp"`
12044
12045	// The name of the updated vocabulary.
12046	VocabularyName *string `min:"1" type:"string"`
12047
12048	// The processing state of the update to the vocabulary. When the VocabularyState
12049	// field is READY, the vocabulary is ready to be used in a StartMedicalTranscriptionJob
12050	// request.
12051	VocabularyState *string `type:"string" enum:"VocabularyState"`
12052}
12053
12054// String returns the string representation.
12055//
12056// API parameter values that are decorated as "sensitive" in the API will not
12057// be included in the string output. The member name will be present, but the
12058// value will be replaced with "sensitive".
12059func (s UpdateMedicalVocabularyOutput) String() string {
12060	return awsutil.Prettify(s)
12061}
12062
12063// GoString returns the string representation.
12064//
12065// API parameter values that are decorated as "sensitive" in the API will not
12066// be included in the string output. The member name will be present, but the
12067// value will be replaced with "sensitive".
12068func (s UpdateMedicalVocabularyOutput) GoString() string {
12069	return s.String()
12070}
12071
12072// SetLanguageCode sets the LanguageCode field's value.
12073func (s *UpdateMedicalVocabularyOutput) SetLanguageCode(v string) *UpdateMedicalVocabularyOutput {
12074	s.LanguageCode = &v
12075	return s
12076}
12077
12078// SetLastModifiedTime sets the LastModifiedTime field's value.
12079func (s *UpdateMedicalVocabularyOutput) SetLastModifiedTime(v time.Time) *UpdateMedicalVocabularyOutput {
12080	s.LastModifiedTime = &v
12081	return s
12082}
12083
12084// SetVocabularyName sets the VocabularyName field's value.
12085func (s *UpdateMedicalVocabularyOutput) SetVocabularyName(v string) *UpdateMedicalVocabularyOutput {
12086	s.VocabularyName = &v
12087	return s
12088}
12089
12090// SetVocabularyState sets the VocabularyState field's value.
12091func (s *UpdateMedicalVocabularyOutput) SetVocabularyState(v string) *UpdateMedicalVocabularyOutput {
12092	s.VocabularyState = &v
12093	return s
12094}
12095
12096type UpdateVocabularyFilterInput struct {
12097	_ struct{} `type:"structure"`
12098
12099	// The Amazon S3 location of a text file used as input to create the vocabulary
12100	// filter. Only use characters from the character set defined for custom vocabularies.
12101	// For a list of character sets, see Character Sets for Custom Vocabularies
12102	// (https://docs.aws.amazon.com/transcribe/latest/dg/how-vocabulary.html#charsets).
12103	//
12104	// The specified file must be less than 50 KB of UTF-8 characters.
12105	//
12106	// If you provide the location of a list of words in the VocabularyFilterFileUri
12107	// parameter, you can't use the Words parameter.
12108	VocabularyFilterFileUri *string `min:"1" type:"string"`
12109
12110	// The name of the vocabulary filter to update. If you try to update a vocabulary
12111	// filter with the same name as another vocabulary filter, you get a ConflictException
12112	// error.
12113	//
12114	// VocabularyFilterName is a required field
12115	VocabularyFilterName *string `min:"1" type:"string" required:"true"`
12116
12117	// The words to use in the vocabulary filter. Only use characters from the character
12118	// set defined for custom vocabularies. For a list of character sets, see Character
12119	// Sets for Custom Vocabularies (https://docs.aws.amazon.com/transcribe/latest/dg/how-vocabulary.html#charsets).
12120	//
12121	// If you provide a list of words in the Words parameter, you can't use the
12122	// VocabularyFilterFileUri parameter.
12123	Words []*string `min:"1" type:"list"`
12124}
12125
12126// String returns the string representation.
12127//
12128// API parameter values that are decorated as "sensitive" in the API will not
12129// be included in the string output. The member name will be present, but the
12130// value will be replaced with "sensitive".
12131func (s UpdateVocabularyFilterInput) String() string {
12132	return awsutil.Prettify(s)
12133}
12134
12135// GoString returns the string representation.
12136//
12137// API parameter values that are decorated as "sensitive" in the API will not
12138// be included in the string output. The member name will be present, but the
12139// value will be replaced with "sensitive".
12140func (s UpdateVocabularyFilterInput) GoString() string {
12141	return s.String()
12142}
12143
12144// Validate inspects the fields of the type to determine if they are valid.
12145func (s *UpdateVocabularyFilterInput) Validate() error {
12146	invalidParams := request.ErrInvalidParams{Context: "UpdateVocabularyFilterInput"}
12147	if s.VocabularyFilterFileUri != nil && len(*s.VocabularyFilterFileUri) < 1 {
12148		invalidParams.Add(request.NewErrParamMinLen("VocabularyFilterFileUri", 1))
12149	}
12150	if s.VocabularyFilterName == nil {
12151		invalidParams.Add(request.NewErrParamRequired("VocabularyFilterName"))
12152	}
12153	if s.VocabularyFilterName != nil && len(*s.VocabularyFilterName) < 1 {
12154		invalidParams.Add(request.NewErrParamMinLen("VocabularyFilterName", 1))
12155	}
12156	if s.Words != nil && len(s.Words) < 1 {
12157		invalidParams.Add(request.NewErrParamMinLen("Words", 1))
12158	}
12159
12160	if invalidParams.Len() > 0 {
12161		return invalidParams
12162	}
12163	return nil
12164}
12165
12166// SetVocabularyFilterFileUri sets the VocabularyFilterFileUri field's value.
12167func (s *UpdateVocabularyFilterInput) SetVocabularyFilterFileUri(v string) *UpdateVocabularyFilterInput {
12168	s.VocabularyFilterFileUri = &v
12169	return s
12170}
12171
12172// SetVocabularyFilterName sets the VocabularyFilterName field's value.
12173func (s *UpdateVocabularyFilterInput) SetVocabularyFilterName(v string) *UpdateVocabularyFilterInput {
12174	s.VocabularyFilterName = &v
12175	return s
12176}
12177
12178// SetWords sets the Words field's value.
12179func (s *UpdateVocabularyFilterInput) SetWords(v []*string) *UpdateVocabularyFilterInput {
12180	s.Words = v
12181	return s
12182}
12183
12184type UpdateVocabularyFilterOutput struct {
12185	_ struct{} `type:"structure"`
12186
12187	// The language code of the words in the vocabulary filter.
12188	LanguageCode *string `type:"string" enum:"LanguageCode"`
12189
12190	// The date and time that the vocabulary filter was updated.
12191	LastModifiedTime *time.Time `type:"timestamp"`
12192
12193	// The name of the updated vocabulary filter.
12194	VocabularyFilterName *string `min:"1" type:"string"`
12195}
12196
12197// String returns the string representation.
12198//
12199// API parameter values that are decorated as "sensitive" in the API will not
12200// be included in the string output. The member name will be present, but the
12201// value will be replaced with "sensitive".
12202func (s UpdateVocabularyFilterOutput) String() string {
12203	return awsutil.Prettify(s)
12204}
12205
12206// GoString returns the string representation.
12207//
12208// API parameter values that are decorated as "sensitive" in the API will not
12209// be included in the string output. The member name will be present, but the
12210// value will be replaced with "sensitive".
12211func (s UpdateVocabularyFilterOutput) GoString() string {
12212	return s.String()
12213}
12214
12215// SetLanguageCode sets the LanguageCode field's value.
12216func (s *UpdateVocabularyFilterOutput) SetLanguageCode(v string) *UpdateVocabularyFilterOutput {
12217	s.LanguageCode = &v
12218	return s
12219}
12220
12221// SetLastModifiedTime sets the LastModifiedTime field's value.
12222func (s *UpdateVocabularyFilterOutput) SetLastModifiedTime(v time.Time) *UpdateVocabularyFilterOutput {
12223	s.LastModifiedTime = &v
12224	return s
12225}
12226
12227// SetVocabularyFilterName sets the VocabularyFilterName field's value.
12228func (s *UpdateVocabularyFilterOutput) SetVocabularyFilterName(v string) *UpdateVocabularyFilterOutput {
12229	s.VocabularyFilterName = &v
12230	return s
12231}
12232
12233type UpdateVocabularyInput struct {
12234	_ struct{} `type:"structure"`
12235
12236	// The language code of the vocabulary entries. For a list of languages and
12237	// their corresponding language codes, see transcribe-whatis.
12238	//
12239	// LanguageCode is a required field
12240	LanguageCode *string `type:"string" required:"true" enum:"LanguageCode"`
12241
12242	// An array of strings containing the vocabulary entries.
12243	Phrases []*string `type:"list"`
12244
12245	// The S3 location of the text file that contains the definition of the custom
12246	// vocabulary. The URI must be in the same region as the API endpoint that you
12247	// are calling. The general form is
12248	//
12249	// For example:
12250	//
12251	// For more information about S3 object names, see Object Keys (https://docs.aws.amazon.com/AmazonS3/latest/dev/UsingMetadata.html#object-keys)
12252	// in the Amazon S3 Developer Guide.
12253	//
12254	// For more information about custom vocabularies, see Custom Vocabularies (https://docs.aws.amazon.com/transcribe/latest/dg/how-it-works.html#how-vocabulary).
12255	VocabularyFileUri *string `min:"1" type:"string"`
12256
12257	// The name of the vocabulary to update. The name is case sensitive. If you
12258	// try to update a vocabulary with the same name as a previous vocabulary you
12259	// will receive a ConflictException error.
12260	//
12261	// VocabularyName is a required field
12262	VocabularyName *string `min:"1" type:"string" required:"true"`
12263}
12264
12265// String returns the string representation.
12266//
12267// API parameter values that are decorated as "sensitive" in the API will not
12268// be included in the string output. The member name will be present, but the
12269// value will be replaced with "sensitive".
12270func (s UpdateVocabularyInput) String() string {
12271	return awsutil.Prettify(s)
12272}
12273
12274// GoString returns the string representation.
12275//
12276// API parameter values that are decorated as "sensitive" in the API will not
12277// be included in the string output. The member name will be present, but the
12278// value will be replaced with "sensitive".
12279func (s UpdateVocabularyInput) GoString() string {
12280	return s.String()
12281}
12282
12283// Validate inspects the fields of the type to determine if they are valid.
12284func (s *UpdateVocabularyInput) Validate() error {
12285	invalidParams := request.ErrInvalidParams{Context: "UpdateVocabularyInput"}
12286	if s.LanguageCode == nil {
12287		invalidParams.Add(request.NewErrParamRequired("LanguageCode"))
12288	}
12289	if s.VocabularyFileUri != nil && len(*s.VocabularyFileUri) < 1 {
12290		invalidParams.Add(request.NewErrParamMinLen("VocabularyFileUri", 1))
12291	}
12292	if s.VocabularyName == nil {
12293		invalidParams.Add(request.NewErrParamRequired("VocabularyName"))
12294	}
12295	if s.VocabularyName != nil && len(*s.VocabularyName) < 1 {
12296		invalidParams.Add(request.NewErrParamMinLen("VocabularyName", 1))
12297	}
12298
12299	if invalidParams.Len() > 0 {
12300		return invalidParams
12301	}
12302	return nil
12303}
12304
12305// SetLanguageCode sets the LanguageCode field's value.
12306func (s *UpdateVocabularyInput) SetLanguageCode(v string) *UpdateVocabularyInput {
12307	s.LanguageCode = &v
12308	return s
12309}
12310
12311// SetPhrases sets the Phrases field's value.
12312func (s *UpdateVocabularyInput) SetPhrases(v []*string) *UpdateVocabularyInput {
12313	s.Phrases = v
12314	return s
12315}
12316
12317// SetVocabularyFileUri sets the VocabularyFileUri field's value.
12318func (s *UpdateVocabularyInput) SetVocabularyFileUri(v string) *UpdateVocabularyInput {
12319	s.VocabularyFileUri = &v
12320	return s
12321}
12322
12323// SetVocabularyName sets the VocabularyName field's value.
12324func (s *UpdateVocabularyInput) SetVocabularyName(v string) *UpdateVocabularyInput {
12325	s.VocabularyName = &v
12326	return s
12327}
12328
12329type UpdateVocabularyOutput struct {
12330	_ struct{} `type:"structure"`
12331
12332	// The language code of the vocabulary entries.
12333	LanguageCode *string `type:"string" enum:"LanguageCode"`
12334
12335	// The date and time that the vocabulary was updated.
12336	LastModifiedTime *time.Time `type:"timestamp"`
12337
12338	// The name of the vocabulary that was updated.
12339	VocabularyName *string `min:"1" type:"string"`
12340
12341	// The processing state of the vocabulary. When the VocabularyState field contains
12342	// READY the vocabulary is ready to be used in a StartTranscriptionJob request.
12343	VocabularyState *string `type:"string" enum:"VocabularyState"`
12344}
12345
12346// String returns the string representation.
12347//
12348// API parameter values that are decorated as "sensitive" in the API will not
12349// be included in the string output. The member name will be present, but the
12350// value will be replaced with "sensitive".
12351func (s UpdateVocabularyOutput) String() string {
12352	return awsutil.Prettify(s)
12353}
12354
12355// GoString returns the string representation.
12356//
12357// API parameter values that are decorated as "sensitive" in the API will not
12358// be included in the string output. The member name will be present, but the
12359// value will be replaced with "sensitive".
12360func (s UpdateVocabularyOutput) GoString() string {
12361	return s.String()
12362}
12363
12364// SetLanguageCode sets the LanguageCode field's value.
12365func (s *UpdateVocabularyOutput) SetLanguageCode(v string) *UpdateVocabularyOutput {
12366	s.LanguageCode = &v
12367	return s
12368}
12369
12370// SetLastModifiedTime sets the LastModifiedTime field's value.
12371func (s *UpdateVocabularyOutput) SetLastModifiedTime(v time.Time) *UpdateVocabularyOutput {
12372	s.LastModifiedTime = &v
12373	return s
12374}
12375
12376// SetVocabularyName sets the VocabularyName field's value.
12377func (s *UpdateVocabularyOutput) SetVocabularyName(v string) *UpdateVocabularyOutput {
12378	s.VocabularyName = &v
12379	return s
12380}
12381
12382// SetVocabularyState sets the VocabularyState field's value.
12383func (s *UpdateVocabularyOutput) SetVocabularyState(v string) *UpdateVocabularyOutput {
12384	s.VocabularyState = &v
12385	return s
12386}
12387
12388// Provides information about a vocabulary filter.
12389type VocabularyFilterInfo struct {
12390	_ struct{} `type:"structure"`
12391
12392	// The language code of the words in the vocabulary filter.
12393	LanguageCode *string `type:"string" enum:"LanguageCode"`
12394
12395	// The date and time that the vocabulary was last updated.
12396	LastModifiedTime *time.Time `type:"timestamp"`
12397
12398	// The name of the vocabulary filter. The name must be unique in the account
12399	// that holds the filter.
12400	VocabularyFilterName *string `min:"1" type:"string"`
12401}
12402
12403// String returns the string representation.
12404//
12405// API parameter values that are decorated as "sensitive" in the API will not
12406// be included in the string output. The member name will be present, but the
12407// value will be replaced with "sensitive".
12408func (s VocabularyFilterInfo) String() string {
12409	return awsutil.Prettify(s)
12410}
12411
12412// GoString returns the string representation.
12413//
12414// API parameter values that are decorated as "sensitive" in the API will not
12415// be included in the string output. The member name will be present, but the
12416// value will be replaced with "sensitive".
12417func (s VocabularyFilterInfo) GoString() string {
12418	return s.String()
12419}
12420
12421// SetLanguageCode sets the LanguageCode field's value.
12422func (s *VocabularyFilterInfo) SetLanguageCode(v string) *VocabularyFilterInfo {
12423	s.LanguageCode = &v
12424	return s
12425}
12426
12427// SetLastModifiedTime sets the LastModifiedTime field's value.
12428func (s *VocabularyFilterInfo) SetLastModifiedTime(v time.Time) *VocabularyFilterInfo {
12429	s.LastModifiedTime = &v
12430	return s
12431}
12432
12433// SetVocabularyFilterName sets the VocabularyFilterName field's value.
12434func (s *VocabularyFilterInfo) SetVocabularyFilterName(v string) *VocabularyFilterInfo {
12435	s.VocabularyFilterName = &v
12436	return s
12437}
12438
12439// Provides information about a custom vocabulary.
12440type VocabularyInfo struct {
12441	_ struct{} `type:"structure"`
12442
12443	// The language code of the vocabulary entries.
12444	LanguageCode *string `type:"string" enum:"LanguageCode"`
12445
12446	// The date and time that the vocabulary was last modified.
12447	LastModifiedTime *time.Time `type:"timestamp"`
12448
12449	// The name of the vocabulary.
12450	VocabularyName *string `min:"1" type:"string"`
12451
12452	// The processing state of the vocabulary. If the state is READY you can use
12453	// the vocabulary in a StartTranscriptionJob request.
12454	VocabularyState *string `type:"string" enum:"VocabularyState"`
12455}
12456
12457// String returns the string representation.
12458//
12459// API parameter values that are decorated as "sensitive" in the API will not
12460// be included in the string output. The member name will be present, but the
12461// value will be replaced with "sensitive".
12462func (s VocabularyInfo) String() string {
12463	return awsutil.Prettify(s)
12464}
12465
12466// GoString returns the string representation.
12467//
12468// API parameter values that are decorated as "sensitive" in the API will not
12469// be included in the string output. The member name will be present, but the
12470// value will be replaced with "sensitive".
12471func (s VocabularyInfo) GoString() string {
12472	return s.String()
12473}
12474
12475// SetLanguageCode sets the LanguageCode field's value.
12476func (s *VocabularyInfo) SetLanguageCode(v string) *VocabularyInfo {
12477	s.LanguageCode = &v
12478	return s
12479}
12480
12481// SetLastModifiedTime sets the LastModifiedTime field's value.
12482func (s *VocabularyInfo) SetLastModifiedTime(v time.Time) *VocabularyInfo {
12483	s.LastModifiedTime = &v
12484	return s
12485}
12486
12487// SetVocabularyName sets the VocabularyName field's value.
12488func (s *VocabularyInfo) SetVocabularyName(v string) *VocabularyInfo {
12489	s.VocabularyName = &v
12490	return s
12491}
12492
12493// SetVocabularyState sets the VocabularyState field's value.
12494func (s *VocabularyInfo) SetVocabularyState(v string) *VocabularyInfo {
12495	s.VocabularyState = &v
12496	return s
12497}
12498
12499const (
12500	// BaseModelNameNarrowBand is a BaseModelName enum value
12501	BaseModelNameNarrowBand = "NarrowBand"
12502
12503	// BaseModelNameWideBand is a BaseModelName enum value
12504	BaseModelNameWideBand = "WideBand"
12505)
12506
12507// BaseModelName_Values returns all elements of the BaseModelName enum
12508func BaseModelName_Values() []string {
12509	return []string{
12510		BaseModelNameNarrowBand,
12511		BaseModelNameWideBand,
12512	}
12513}
12514
12515const (
12516	// CLMLanguageCodeEnUs is a CLMLanguageCode enum value
12517	CLMLanguageCodeEnUs = "en-US"
12518
12519	// CLMLanguageCodeHiIn is a CLMLanguageCode enum value
12520	CLMLanguageCodeHiIn = "hi-IN"
12521
12522	// CLMLanguageCodeEsUs is a CLMLanguageCode enum value
12523	CLMLanguageCodeEsUs = "es-US"
12524
12525	// CLMLanguageCodeEnGb is a CLMLanguageCode enum value
12526	CLMLanguageCodeEnGb = "en-GB"
12527
12528	// CLMLanguageCodeEnAu is a CLMLanguageCode enum value
12529	CLMLanguageCodeEnAu = "en-AU"
12530)
12531
12532// CLMLanguageCode_Values returns all elements of the CLMLanguageCode enum
12533func CLMLanguageCode_Values() []string {
12534	return []string{
12535		CLMLanguageCodeEnUs,
12536		CLMLanguageCodeHiIn,
12537		CLMLanguageCodeEsUs,
12538		CLMLanguageCodeEnGb,
12539		CLMLanguageCodeEnAu,
12540	}
12541}
12542
12543const (
12544	// CallAnalyticsJobStatusQueued is a CallAnalyticsJobStatus enum value
12545	CallAnalyticsJobStatusQueued = "QUEUED"
12546
12547	// CallAnalyticsJobStatusInProgress is a CallAnalyticsJobStatus enum value
12548	CallAnalyticsJobStatusInProgress = "IN_PROGRESS"
12549
12550	// CallAnalyticsJobStatusFailed is a CallAnalyticsJobStatus enum value
12551	CallAnalyticsJobStatusFailed = "FAILED"
12552
12553	// CallAnalyticsJobStatusCompleted is a CallAnalyticsJobStatus enum value
12554	CallAnalyticsJobStatusCompleted = "COMPLETED"
12555)
12556
12557// CallAnalyticsJobStatus_Values returns all elements of the CallAnalyticsJobStatus enum
12558func CallAnalyticsJobStatus_Values() []string {
12559	return []string{
12560		CallAnalyticsJobStatusQueued,
12561		CallAnalyticsJobStatusInProgress,
12562		CallAnalyticsJobStatusFailed,
12563		CallAnalyticsJobStatusCompleted,
12564	}
12565}
12566
12567const (
12568	// LanguageCodeAfZa is a LanguageCode enum value
12569	LanguageCodeAfZa = "af-ZA"
12570
12571	// LanguageCodeArAe is a LanguageCode enum value
12572	LanguageCodeArAe = "ar-AE"
12573
12574	// LanguageCodeArSa is a LanguageCode enum value
12575	LanguageCodeArSa = "ar-SA"
12576
12577	// LanguageCodeCyGb is a LanguageCode enum value
12578	LanguageCodeCyGb = "cy-GB"
12579
12580	// LanguageCodeDaDk is a LanguageCode enum value
12581	LanguageCodeDaDk = "da-DK"
12582
12583	// LanguageCodeDeCh is a LanguageCode enum value
12584	LanguageCodeDeCh = "de-CH"
12585
12586	// LanguageCodeDeDe is a LanguageCode enum value
12587	LanguageCodeDeDe = "de-DE"
12588
12589	// LanguageCodeEnAb is a LanguageCode enum value
12590	LanguageCodeEnAb = "en-AB"
12591
12592	// LanguageCodeEnAu is a LanguageCode enum value
12593	LanguageCodeEnAu = "en-AU"
12594
12595	// LanguageCodeEnGb is a LanguageCode enum value
12596	LanguageCodeEnGb = "en-GB"
12597
12598	// LanguageCodeEnIe is a LanguageCode enum value
12599	LanguageCodeEnIe = "en-IE"
12600
12601	// LanguageCodeEnIn is a LanguageCode enum value
12602	LanguageCodeEnIn = "en-IN"
12603
12604	// LanguageCodeEnUs is a LanguageCode enum value
12605	LanguageCodeEnUs = "en-US"
12606
12607	// LanguageCodeEnWl is a LanguageCode enum value
12608	LanguageCodeEnWl = "en-WL"
12609
12610	// LanguageCodeEsEs is a LanguageCode enum value
12611	LanguageCodeEsEs = "es-ES"
12612
12613	// LanguageCodeEsUs is a LanguageCode enum value
12614	LanguageCodeEsUs = "es-US"
12615
12616	// LanguageCodeFaIr is a LanguageCode enum value
12617	LanguageCodeFaIr = "fa-IR"
12618
12619	// LanguageCodeFrCa is a LanguageCode enum value
12620	LanguageCodeFrCa = "fr-CA"
12621
12622	// LanguageCodeFrFr is a LanguageCode enum value
12623	LanguageCodeFrFr = "fr-FR"
12624
12625	// LanguageCodeGaIe is a LanguageCode enum value
12626	LanguageCodeGaIe = "ga-IE"
12627
12628	// LanguageCodeGdGb is a LanguageCode enum value
12629	LanguageCodeGdGb = "gd-GB"
12630
12631	// LanguageCodeHeIl is a LanguageCode enum value
12632	LanguageCodeHeIl = "he-IL"
12633
12634	// LanguageCodeHiIn is a LanguageCode enum value
12635	LanguageCodeHiIn = "hi-IN"
12636
12637	// LanguageCodeIdId is a LanguageCode enum value
12638	LanguageCodeIdId = "id-ID"
12639
12640	// LanguageCodeItIt is a LanguageCode enum value
12641	LanguageCodeItIt = "it-IT"
12642
12643	// LanguageCodeJaJp is a LanguageCode enum value
12644	LanguageCodeJaJp = "ja-JP"
12645
12646	// LanguageCodeKoKr is a LanguageCode enum value
12647	LanguageCodeKoKr = "ko-KR"
12648
12649	// LanguageCodeMsMy is a LanguageCode enum value
12650	LanguageCodeMsMy = "ms-MY"
12651
12652	// LanguageCodeNlNl is a LanguageCode enum value
12653	LanguageCodeNlNl = "nl-NL"
12654
12655	// LanguageCodePtBr is a LanguageCode enum value
12656	LanguageCodePtBr = "pt-BR"
12657
12658	// LanguageCodePtPt is a LanguageCode enum value
12659	LanguageCodePtPt = "pt-PT"
12660
12661	// LanguageCodeRuRu is a LanguageCode enum value
12662	LanguageCodeRuRu = "ru-RU"
12663
12664	// LanguageCodeTaIn is a LanguageCode enum value
12665	LanguageCodeTaIn = "ta-IN"
12666
12667	// LanguageCodeTeIn is a LanguageCode enum value
12668	LanguageCodeTeIn = "te-IN"
12669
12670	// LanguageCodeTrTr is a LanguageCode enum value
12671	LanguageCodeTrTr = "tr-TR"
12672
12673	// LanguageCodeZhCn is a LanguageCode enum value
12674	LanguageCodeZhCn = "zh-CN"
12675
12676	// LanguageCodeZhTw is a LanguageCode enum value
12677	LanguageCodeZhTw = "zh-TW"
12678
12679	// LanguageCodeThTh is a LanguageCode enum value
12680	LanguageCodeThTh = "th-TH"
12681
12682	// LanguageCodeEnZa is a LanguageCode enum value
12683	LanguageCodeEnZa = "en-ZA"
12684
12685	// LanguageCodeEnNz is a LanguageCode enum value
12686	LanguageCodeEnNz = "en-NZ"
12687)
12688
12689// LanguageCode_Values returns all elements of the LanguageCode enum
12690func LanguageCode_Values() []string {
12691	return []string{
12692		LanguageCodeAfZa,
12693		LanguageCodeArAe,
12694		LanguageCodeArSa,
12695		LanguageCodeCyGb,
12696		LanguageCodeDaDk,
12697		LanguageCodeDeCh,
12698		LanguageCodeDeDe,
12699		LanguageCodeEnAb,
12700		LanguageCodeEnAu,
12701		LanguageCodeEnGb,
12702		LanguageCodeEnIe,
12703		LanguageCodeEnIn,
12704		LanguageCodeEnUs,
12705		LanguageCodeEnWl,
12706		LanguageCodeEsEs,
12707		LanguageCodeEsUs,
12708		LanguageCodeFaIr,
12709		LanguageCodeFrCa,
12710		LanguageCodeFrFr,
12711		LanguageCodeGaIe,
12712		LanguageCodeGdGb,
12713		LanguageCodeHeIl,
12714		LanguageCodeHiIn,
12715		LanguageCodeIdId,
12716		LanguageCodeItIt,
12717		LanguageCodeJaJp,
12718		LanguageCodeKoKr,
12719		LanguageCodeMsMy,
12720		LanguageCodeNlNl,
12721		LanguageCodePtBr,
12722		LanguageCodePtPt,
12723		LanguageCodeRuRu,
12724		LanguageCodeTaIn,
12725		LanguageCodeTeIn,
12726		LanguageCodeTrTr,
12727		LanguageCodeZhCn,
12728		LanguageCodeZhTw,
12729		LanguageCodeThTh,
12730		LanguageCodeEnZa,
12731		LanguageCodeEnNz,
12732	}
12733}
12734
12735const (
12736	// MediaFormatMp3 is a MediaFormat enum value
12737	MediaFormatMp3 = "mp3"
12738
12739	// MediaFormatMp4 is a MediaFormat enum value
12740	MediaFormatMp4 = "mp4"
12741
12742	// MediaFormatWav is a MediaFormat enum value
12743	MediaFormatWav = "wav"
12744
12745	// MediaFormatFlac is a MediaFormat enum value
12746	MediaFormatFlac = "flac"
12747
12748	// MediaFormatOgg is a MediaFormat enum value
12749	MediaFormatOgg = "ogg"
12750
12751	// MediaFormatAmr is a MediaFormat enum value
12752	MediaFormatAmr = "amr"
12753
12754	// MediaFormatWebm is a MediaFormat enum value
12755	MediaFormatWebm = "webm"
12756)
12757
12758// MediaFormat_Values returns all elements of the MediaFormat enum
12759func MediaFormat_Values() []string {
12760	return []string{
12761		MediaFormatMp3,
12762		MediaFormatMp4,
12763		MediaFormatWav,
12764		MediaFormatFlac,
12765		MediaFormatOgg,
12766		MediaFormatAmr,
12767		MediaFormatWebm,
12768	}
12769}
12770
12771const (
12772	// MedicalContentIdentificationTypePhi is a MedicalContentIdentificationType enum value
12773	MedicalContentIdentificationTypePhi = "PHI"
12774)
12775
12776// MedicalContentIdentificationType_Values returns all elements of the MedicalContentIdentificationType enum
12777func MedicalContentIdentificationType_Values() []string {
12778	return []string{
12779		MedicalContentIdentificationTypePhi,
12780	}
12781}
12782
12783const (
12784	// ModelStatusInProgress is a ModelStatus enum value
12785	ModelStatusInProgress = "IN_PROGRESS"
12786
12787	// ModelStatusFailed is a ModelStatus enum value
12788	ModelStatusFailed = "FAILED"
12789
12790	// ModelStatusCompleted is a ModelStatus enum value
12791	ModelStatusCompleted = "COMPLETED"
12792)
12793
12794// ModelStatus_Values returns all elements of the ModelStatus enum
12795func ModelStatus_Values() []string {
12796	return []string{
12797		ModelStatusInProgress,
12798		ModelStatusFailed,
12799		ModelStatusCompleted,
12800	}
12801}
12802
12803const (
12804	// OutputLocationTypeCustomerBucket is a OutputLocationType enum value
12805	OutputLocationTypeCustomerBucket = "CUSTOMER_BUCKET"
12806
12807	// OutputLocationTypeServiceBucket is a OutputLocationType enum value
12808	OutputLocationTypeServiceBucket = "SERVICE_BUCKET"
12809)
12810
12811// OutputLocationType_Values returns all elements of the OutputLocationType enum
12812func OutputLocationType_Values() []string {
12813	return []string{
12814		OutputLocationTypeCustomerBucket,
12815		OutputLocationTypeServiceBucket,
12816	}
12817}
12818
12819const (
12820	// ParticipantRoleAgent is a ParticipantRole enum value
12821	ParticipantRoleAgent = "AGENT"
12822
12823	// ParticipantRoleCustomer is a ParticipantRole enum value
12824	ParticipantRoleCustomer = "CUSTOMER"
12825)
12826
12827// ParticipantRole_Values returns all elements of the ParticipantRole enum
12828func ParticipantRole_Values() []string {
12829	return []string{
12830		ParticipantRoleAgent,
12831		ParticipantRoleCustomer,
12832	}
12833}
12834
12835const (
12836	// RedactionOutputRedacted is a RedactionOutput enum value
12837	RedactionOutputRedacted = "redacted"
12838
12839	// RedactionOutputRedactedAndUnredacted is a RedactionOutput enum value
12840	RedactionOutputRedactedAndUnredacted = "redacted_and_unredacted"
12841)
12842
12843// RedactionOutput_Values returns all elements of the RedactionOutput enum
12844func RedactionOutput_Values() []string {
12845	return []string{
12846		RedactionOutputRedacted,
12847		RedactionOutputRedactedAndUnredacted,
12848	}
12849}
12850
12851const (
12852	// RedactionTypePii is a RedactionType enum value
12853	RedactionTypePii = "PII"
12854)
12855
12856// RedactionType_Values returns all elements of the RedactionType enum
12857func RedactionType_Values() []string {
12858	return []string{
12859		RedactionTypePii,
12860	}
12861}
12862
12863const (
12864	// SentimentValuePositive is a SentimentValue enum value
12865	SentimentValuePositive = "POSITIVE"
12866
12867	// SentimentValueNegative is a SentimentValue enum value
12868	SentimentValueNegative = "NEGATIVE"
12869
12870	// SentimentValueNeutral is a SentimentValue enum value
12871	SentimentValueNeutral = "NEUTRAL"
12872
12873	// SentimentValueMixed is a SentimentValue enum value
12874	SentimentValueMixed = "MIXED"
12875)
12876
12877// SentimentValue_Values returns all elements of the SentimentValue enum
12878func SentimentValue_Values() []string {
12879	return []string{
12880		SentimentValuePositive,
12881		SentimentValueNegative,
12882		SentimentValueNeutral,
12883		SentimentValueMixed,
12884	}
12885}
12886
12887const (
12888	// SpecialtyPrimarycare is a Specialty enum value
12889	SpecialtyPrimarycare = "PRIMARYCARE"
12890)
12891
12892// Specialty_Values returns all elements of the Specialty enum
12893func Specialty_Values() []string {
12894	return []string{
12895		SpecialtyPrimarycare,
12896	}
12897}
12898
12899const (
12900	// SubtitleFormatVtt is a SubtitleFormat enum value
12901	SubtitleFormatVtt = "vtt"
12902
12903	// SubtitleFormatSrt is a SubtitleFormat enum value
12904	SubtitleFormatSrt = "srt"
12905)
12906
12907// SubtitleFormat_Values returns all elements of the SubtitleFormat enum
12908func SubtitleFormat_Values() []string {
12909	return []string{
12910		SubtitleFormatVtt,
12911		SubtitleFormatSrt,
12912	}
12913}
12914
12915const (
12916	// TranscriptFilterTypeExact is a TranscriptFilterType enum value
12917	TranscriptFilterTypeExact = "EXACT"
12918)
12919
12920// TranscriptFilterType_Values returns all elements of the TranscriptFilterType enum
12921func TranscriptFilterType_Values() []string {
12922	return []string{
12923		TranscriptFilterTypeExact,
12924	}
12925}
12926
12927const (
12928	// TranscriptionJobStatusQueued is a TranscriptionJobStatus enum value
12929	TranscriptionJobStatusQueued = "QUEUED"
12930
12931	// TranscriptionJobStatusInProgress is a TranscriptionJobStatus enum value
12932	TranscriptionJobStatusInProgress = "IN_PROGRESS"
12933
12934	// TranscriptionJobStatusFailed is a TranscriptionJobStatus enum value
12935	TranscriptionJobStatusFailed = "FAILED"
12936
12937	// TranscriptionJobStatusCompleted is a TranscriptionJobStatus enum value
12938	TranscriptionJobStatusCompleted = "COMPLETED"
12939)
12940
12941// TranscriptionJobStatus_Values returns all elements of the TranscriptionJobStatus enum
12942func TranscriptionJobStatus_Values() []string {
12943	return []string{
12944		TranscriptionJobStatusQueued,
12945		TranscriptionJobStatusInProgress,
12946		TranscriptionJobStatusFailed,
12947		TranscriptionJobStatusCompleted,
12948	}
12949}
12950
12951const (
12952	// TypeConversation is a Type enum value
12953	TypeConversation = "CONVERSATION"
12954
12955	// TypeDictation is a Type enum value
12956	TypeDictation = "DICTATION"
12957)
12958
12959// Type_Values returns all elements of the Type enum
12960func Type_Values() []string {
12961	return []string{
12962		TypeConversation,
12963		TypeDictation,
12964	}
12965}
12966
12967const (
12968	// VocabularyFilterMethodRemove is a VocabularyFilterMethod enum value
12969	VocabularyFilterMethodRemove = "remove"
12970
12971	// VocabularyFilterMethodMask is a VocabularyFilterMethod enum value
12972	VocabularyFilterMethodMask = "mask"
12973
12974	// VocabularyFilterMethodTag is a VocabularyFilterMethod enum value
12975	VocabularyFilterMethodTag = "tag"
12976)
12977
12978// VocabularyFilterMethod_Values returns all elements of the VocabularyFilterMethod enum
12979func VocabularyFilterMethod_Values() []string {
12980	return []string{
12981		VocabularyFilterMethodRemove,
12982		VocabularyFilterMethodMask,
12983		VocabularyFilterMethodTag,
12984	}
12985}
12986
12987const (
12988	// VocabularyStatePending is a VocabularyState enum value
12989	VocabularyStatePending = "PENDING"
12990
12991	// VocabularyStateReady is a VocabularyState enum value
12992	VocabularyStateReady = "READY"
12993
12994	// VocabularyStateFailed is a VocabularyState enum value
12995	VocabularyStateFailed = "FAILED"
12996)
12997
12998// VocabularyState_Values returns all elements of the VocabularyState enum
12999func VocabularyState_Values() []string {
13000	return []string{
13001		VocabularyStatePending,
13002		VocabularyStateReady,
13003		VocabularyStateFailed,
13004	}
13005}
13006