1// Code generated by private/model/cli/gen-api/main.go. DO NOT EDIT.
2
3package comprehend
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 opBatchDetectDominantLanguage = "BatchDetectDominantLanguage"
17
18// BatchDetectDominantLanguageRequest generates a "aws/request.Request" representing the
19// client's request for the BatchDetectDominantLanguage 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 BatchDetectDominantLanguage for more information on using the BatchDetectDominantLanguage
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 BatchDetectDominantLanguageRequest method.
34//    req, resp := client.BatchDetectDominantLanguageRequest(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/comprehend-2017-11-27/BatchDetectDominantLanguage
42func (c *Comprehend) BatchDetectDominantLanguageRequest(input *BatchDetectDominantLanguageInput) (req *request.Request, output *BatchDetectDominantLanguageOutput) {
43	op := &request.Operation{
44		Name:       opBatchDetectDominantLanguage,
45		HTTPMethod: "POST",
46		HTTPPath:   "/",
47	}
48
49	if input == nil {
50		input = &BatchDetectDominantLanguageInput{}
51	}
52
53	output = &BatchDetectDominantLanguageOutput{}
54	req = c.newRequest(op, input, output)
55	return
56}
57
58// BatchDetectDominantLanguage API operation for Amazon Comprehend.
59//
60// Determines the dominant language of the input text for a batch of documents.
61// For a list of languages that Amazon Comprehend can detect, see Amazon Comprehend
62// Supported Languages (https://docs.aws.amazon.com/comprehend/latest/dg/how-languages.html).
63//
64// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
65// with awserr.Error's Code and Message methods to get detailed information about
66// the error.
67//
68// See the AWS API reference guide for Amazon Comprehend's
69// API operation BatchDetectDominantLanguage for usage and error information.
70//
71// Returned Error Types:
72//   * InvalidRequestException
73//   The request is invalid.
74//
75//   * TextSizeLimitExceededException
76//   The size of the input text exceeds the limit. Use a smaller document.
77//
78//   * BatchSizeLimitExceededException
79//   The number of documents in the request exceeds the limit of 25. Try your
80//   request again with fewer documents.
81//
82//   * InternalServerException
83//   An internal server error occurred. Retry your request.
84//
85// See also, https://docs.aws.amazon.com/goto/WebAPI/comprehend-2017-11-27/BatchDetectDominantLanguage
86func (c *Comprehend) BatchDetectDominantLanguage(input *BatchDetectDominantLanguageInput) (*BatchDetectDominantLanguageOutput, error) {
87	req, out := c.BatchDetectDominantLanguageRequest(input)
88	return out, req.Send()
89}
90
91// BatchDetectDominantLanguageWithContext is the same as BatchDetectDominantLanguage with the addition of
92// the ability to pass a context and additional request options.
93//
94// See BatchDetectDominantLanguage for details on how to use this API operation.
95//
96// The context must be non-nil and will be used for request cancellation. If
97// the context is nil a panic will occur. In the future the SDK may create
98// sub-contexts for http.Requests. See https://golang.org/pkg/context/
99// for more information on using Contexts.
100func (c *Comprehend) BatchDetectDominantLanguageWithContext(ctx aws.Context, input *BatchDetectDominantLanguageInput, opts ...request.Option) (*BatchDetectDominantLanguageOutput, error) {
101	req, out := c.BatchDetectDominantLanguageRequest(input)
102	req.SetContext(ctx)
103	req.ApplyOptions(opts...)
104	return out, req.Send()
105}
106
107const opBatchDetectEntities = "BatchDetectEntities"
108
109// BatchDetectEntitiesRequest generates a "aws/request.Request" representing the
110// client's request for the BatchDetectEntities operation. The "output" return
111// value will be populated with the request's response once the request completes
112// successfully.
113//
114// Use "Send" method on the returned Request to send the API call to the service.
115// the "output" return value is not valid until after Send returns without error.
116//
117// See BatchDetectEntities for more information on using the BatchDetectEntities
118// API call, and error handling.
119//
120// This method is useful when you want to inject custom logic or configuration
121// into the SDK's request lifecycle. Such as custom headers, or retry logic.
122//
123//
124//    // Example sending a request using the BatchDetectEntitiesRequest method.
125//    req, resp := client.BatchDetectEntitiesRequest(params)
126//
127//    err := req.Send()
128//    if err == nil { // resp is now filled
129//        fmt.Println(resp)
130//    }
131//
132// See also, https://docs.aws.amazon.com/goto/WebAPI/comprehend-2017-11-27/BatchDetectEntities
133func (c *Comprehend) BatchDetectEntitiesRequest(input *BatchDetectEntitiesInput) (req *request.Request, output *BatchDetectEntitiesOutput) {
134	op := &request.Operation{
135		Name:       opBatchDetectEntities,
136		HTTPMethod: "POST",
137		HTTPPath:   "/",
138	}
139
140	if input == nil {
141		input = &BatchDetectEntitiesInput{}
142	}
143
144	output = &BatchDetectEntitiesOutput{}
145	req = c.newRequest(op, input, output)
146	return
147}
148
149// BatchDetectEntities API operation for Amazon Comprehend.
150//
151// Inspects the text of a batch of documents for named entities and returns
152// information about them. For more information about named entities, see how-entities
153//
154// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
155// with awserr.Error's Code and Message methods to get detailed information about
156// the error.
157//
158// See the AWS API reference guide for Amazon Comprehend's
159// API operation BatchDetectEntities for usage and error information.
160//
161// Returned Error Types:
162//   * InvalidRequestException
163//   The request is invalid.
164//
165//   * TextSizeLimitExceededException
166//   The size of the input text exceeds the limit. Use a smaller document.
167//
168//   * UnsupportedLanguageException
169//   Amazon Comprehend can't process the language of the input text. For custom
170//   entity recognition APIs, only English, Spanish, French, Italian, German,
171//   or Portuguese are accepted. For a list of supported languages, see supported-languages.
172//
173//   * BatchSizeLimitExceededException
174//   The number of documents in the request exceeds the limit of 25. Try your
175//   request again with fewer documents.
176//
177//   * InternalServerException
178//   An internal server error occurred. Retry your request.
179//
180// See also, https://docs.aws.amazon.com/goto/WebAPI/comprehend-2017-11-27/BatchDetectEntities
181func (c *Comprehend) BatchDetectEntities(input *BatchDetectEntitiesInput) (*BatchDetectEntitiesOutput, error) {
182	req, out := c.BatchDetectEntitiesRequest(input)
183	return out, req.Send()
184}
185
186// BatchDetectEntitiesWithContext is the same as BatchDetectEntities with the addition of
187// the ability to pass a context and additional request options.
188//
189// See BatchDetectEntities for details on how to use this API operation.
190//
191// The context must be non-nil and will be used for request cancellation. If
192// the context is nil a panic will occur. In the future the SDK may create
193// sub-contexts for http.Requests. See https://golang.org/pkg/context/
194// for more information on using Contexts.
195func (c *Comprehend) BatchDetectEntitiesWithContext(ctx aws.Context, input *BatchDetectEntitiesInput, opts ...request.Option) (*BatchDetectEntitiesOutput, error) {
196	req, out := c.BatchDetectEntitiesRequest(input)
197	req.SetContext(ctx)
198	req.ApplyOptions(opts...)
199	return out, req.Send()
200}
201
202const opBatchDetectKeyPhrases = "BatchDetectKeyPhrases"
203
204// BatchDetectKeyPhrasesRequest generates a "aws/request.Request" representing the
205// client's request for the BatchDetectKeyPhrases operation. The "output" return
206// value will be populated with the request's response once the request completes
207// successfully.
208//
209// Use "Send" method on the returned Request to send the API call to the service.
210// the "output" return value is not valid until after Send returns without error.
211//
212// See BatchDetectKeyPhrases for more information on using the BatchDetectKeyPhrases
213// API call, and error handling.
214//
215// This method is useful when you want to inject custom logic or configuration
216// into the SDK's request lifecycle. Such as custom headers, or retry logic.
217//
218//
219//    // Example sending a request using the BatchDetectKeyPhrasesRequest method.
220//    req, resp := client.BatchDetectKeyPhrasesRequest(params)
221//
222//    err := req.Send()
223//    if err == nil { // resp is now filled
224//        fmt.Println(resp)
225//    }
226//
227// See also, https://docs.aws.amazon.com/goto/WebAPI/comprehend-2017-11-27/BatchDetectKeyPhrases
228func (c *Comprehend) BatchDetectKeyPhrasesRequest(input *BatchDetectKeyPhrasesInput) (req *request.Request, output *BatchDetectKeyPhrasesOutput) {
229	op := &request.Operation{
230		Name:       opBatchDetectKeyPhrases,
231		HTTPMethod: "POST",
232		HTTPPath:   "/",
233	}
234
235	if input == nil {
236		input = &BatchDetectKeyPhrasesInput{}
237	}
238
239	output = &BatchDetectKeyPhrasesOutput{}
240	req = c.newRequest(op, input, output)
241	return
242}
243
244// BatchDetectKeyPhrases API operation for Amazon Comprehend.
245//
246// Detects the key noun phrases found in a batch of documents.
247//
248// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
249// with awserr.Error's Code and Message methods to get detailed information about
250// the error.
251//
252// See the AWS API reference guide for Amazon Comprehend's
253// API operation BatchDetectKeyPhrases for usage and error information.
254//
255// Returned Error Types:
256//   * InvalidRequestException
257//   The request is invalid.
258//
259//   * TextSizeLimitExceededException
260//   The size of the input text exceeds the limit. Use a smaller document.
261//
262//   * UnsupportedLanguageException
263//   Amazon Comprehend can't process the language of the input text. For custom
264//   entity recognition APIs, only English, Spanish, French, Italian, German,
265//   or Portuguese are accepted. For a list of supported languages, see supported-languages.
266//
267//   * BatchSizeLimitExceededException
268//   The number of documents in the request exceeds the limit of 25. Try your
269//   request again with fewer documents.
270//
271//   * InternalServerException
272//   An internal server error occurred. Retry your request.
273//
274// See also, https://docs.aws.amazon.com/goto/WebAPI/comprehend-2017-11-27/BatchDetectKeyPhrases
275func (c *Comprehend) BatchDetectKeyPhrases(input *BatchDetectKeyPhrasesInput) (*BatchDetectKeyPhrasesOutput, error) {
276	req, out := c.BatchDetectKeyPhrasesRequest(input)
277	return out, req.Send()
278}
279
280// BatchDetectKeyPhrasesWithContext is the same as BatchDetectKeyPhrases with the addition of
281// the ability to pass a context and additional request options.
282//
283// See BatchDetectKeyPhrases for details on how to use this API operation.
284//
285// The context must be non-nil and will be used for request cancellation. If
286// the context is nil a panic will occur. In the future the SDK may create
287// sub-contexts for http.Requests. See https://golang.org/pkg/context/
288// for more information on using Contexts.
289func (c *Comprehend) BatchDetectKeyPhrasesWithContext(ctx aws.Context, input *BatchDetectKeyPhrasesInput, opts ...request.Option) (*BatchDetectKeyPhrasesOutput, error) {
290	req, out := c.BatchDetectKeyPhrasesRequest(input)
291	req.SetContext(ctx)
292	req.ApplyOptions(opts...)
293	return out, req.Send()
294}
295
296const opBatchDetectSentiment = "BatchDetectSentiment"
297
298// BatchDetectSentimentRequest generates a "aws/request.Request" representing the
299// client's request for the BatchDetectSentiment operation. The "output" return
300// value will be populated with the request's response once the request completes
301// successfully.
302//
303// Use "Send" method on the returned Request to send the API call to the service.
304// the "output" return value is not valid until after Send returns without error.
305//
306// See BatchDetectSentiment for more information on using the BatchDetectSentiment
307// API call, and error handling.
308//
309// This method is useful when you want to inject custom logic or configuration
310// into the SDK's request lifecycle. Such as custom headers, or retry logic.
311//
312//
313//    // Example sending a request using the BatchDetectSentimentRequest method.
314//    req, resp := client.BatchDetectSentimentRequest(params)
315//
316//    err := req.Send()
317//    if err == nil { // resp is now filled
318//        fmt.Println(resp)
319//    }
320//
321// See also, https://docs.aws.amazon.com/goto/WebAPI/comprehend-2017-11-27/BatchDetectSentiment
322func (c *Comprehend) BatchDetectSentimentRequest(input *BatchDetectSentimentInput) (req *request.Request, output *BatchDetectSentimentOutput) {
323	op := &request.Operation{
324		Name:       opBatchDetectSentiment,
325		HTTPMethod: "POST",
326		HTTPPath:   "/",
327	}
328
329	if input == nil {
330		input = &BatchDetectSentimentInput{}
331	}
332
333	output = &BatchDetectSentimentOutput{}
334	req = c.newRequest(op, input, output)
335	return
336}
337
338// BatchDetectSentiment API operation for Amazon Comprehend.
339//
340// Inspects a batch of documents and returns an inference of the prevailing
341// sentiment, POSITIVE, NEUTRAL, MIXED, or NEGATIVE, in each one.
342//
343// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
344// with awserr.Error's Code and Message methods to get detailed information about
345// the error.
346//
347// See the AWS API reference guide for Amazon Comprehend's
348// API operation BatchDetectSentiment for usage and error information.
349//
350// Returned Error Types:
351//   * InvalidRequestException
352//   The request is invalid.
353//
354//   * TextSizeLimitExceededException
355//   The size of the input text exceeds the limit. Use a smaller document.
356//
357//   * UnsupportedLanguageException
358//   Amazon Comprehend can't process the language of the input text. For custom
359//   entity recognition APIs, only English, Spanish, French, Italian, German,
360//   or Portuguese are accepted. For a list of supported languages, see supported-languages.
361//
362//   * BatchSizeLimitExceededException
363//   The number of documents in the request exceeds the limit of 25. Try your
364//   request again with fewer documents.
365//
366//   * InternalServerException
367//   An internal server error occurred. Retry your request.
368//
369// See also, https://docs.aws.amazon.com/goto/WebAPI/comprehend-2017-11-27/BatchDetectSentiment
370func (c *Comprehend) BatchDetectSentiment(input *BatchDetectSentimentInput) (*BatchDetectSentimentOutput, error) {
371	req, out := c.BatchDetectSentimentRequest(input)
372	return out, req.Send()
373}
374
375// BatchDetectSentimentWithContext is the same as BatchDetectSentiment with the addition of
376// the ability to pass a context and additional request options.
377//
378// See BatchDetectSentiment for details on how to use this API operation.
379//
380// The context must be non-nil and will be used for request cancellation. If
381// the context is nil a panic will occur. In the future the SDK may create
382// sub-contexts for http.Requests. See https://golang.org/pkg/context/
383// for more information on using Contexts.
384func (c *Comprehend) BatchDetectSentimentWithContext(ctx aws.Context, input *BatchDetectSentimentInput, opts ...request.Option) (*BatchDetectSentimentOutput, error) {
385	req, out := c.BatchDetectSentimentRequest(input)
386	req.SetContext(ctx)
387	req.ApplyOptions(opts...)
388	return out, req.Send()
389}
390
391const opBatchDetectSyntax = "BatchDetectSyntax"
392
393// BatchDetectSyntaxRequest generates a "aws/request.Request" representing the
394// client's request for the BatchDetectSyntax operation. The "output" return
395// value will be populated with the request's response once the request completes
396// successfully.
397//
398// Use "Send" method on the returned Request to send the API call to the service.
399// the "output" return value is not valid until after Send returns without error.
400//
401// See BatchDetectSyntax for more information on using the BatchDetectSyntax
402// API call, and error handling.
403//
404// This method is useful when you want to inject custom logic or configuration
405// into the SDK's request lifecycle. Such as custom headers, or retry logic.
406//
407//
408//    // Example sending a request using the BatchDetectSyntaxRequest method.
409//    req, resp := client.BatchDetectSyntaxRequest(params)
410//
411//    err := req.Send()
412//    if err == nil { // resp is now filled
413//        fmt.Println(resp)
414//    }
415//
416// See also, https://docs.aws.amazon.com/goto/WebAPI/comprehend-2017-11-27/BatchDetectSyntax
417func (c *Comprehend) BatchDetectSyntaxRequest(input *BatchDetectSyntaxInput) (req *request.Request, output *BatchDetectSyntaxOutput) {
418	op := &request.Operation{
419		Name:       opBatchDetectSyntax,
420		HTTPMethod: "POST",
421		HTTPPath:   "/",
422	}
423
424	if input == nil {
425		input = &BatchDetectSyntaxInput{}
426	}
427
428	output = &BatchDetectSyntaxOutput{}
429	req = c.newRequest(op, input, output)
430	return
431}
432
433// BatchDetectSyntax API operation for Amazon Comprehend.
434//
435// Inspects the text of a batch of documents for the syntax and part of speech
436// of the words in the document and returns information about them. For more
437// information, see how-syntax.
438//
439// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
440// with awserr.Error's Code and Message methods to get detailed information about
441// the error.
442//
443// See the AWS API reference guide for Amazon Comprehend's
444// API operation BatchDetectSyntax for usage and error information.
445//
446// Returned Error Types:
447//   * InvalidRequestException
448//   The request is invalid.
449//
450//   * TextSizeLimitExceededException
451//   The size of the input text exceeds the limit. Use a smaller document.
452//
453//   * UnsupportedLanguageException
454//   Amazon Comprehend can't process the language of the input text. For custom
455//   entity recognition APIs, only English, Spanish, French, Italian, German,
456//   or Portuguese are accepted. For a list of supported languages, see supported-languages.
457//
458//   * BatchSizeLimitExceededException
459//   The number of documents in the request exceeds the limit of 25. Try your
460//   request again with fewer documents.
461//
462//   * InternalServerException
463//   An internal server error occurred. Retry your request.
464//
465// See also, https://docs.aws.amazon.com/goto/WebAPI/comprehend-2017-11-27/BatchDetectSyntax
466func (c *Comprehend) BatchDetectSyntax(input *BatchDetectSyntaxInput) (*BatchDetectSyntaxOutput, error) {
467	req, out := c.BatchDetectSyntaxRequest(input)
468	return out, req.Send()
469}
470
471// BatchDetectSyntaxWithContext is the same as BatchDetectSyntax with the addition of
472// the ability to pass a context and additional request options.
473//
474// See BatchDetectSyntax for details on how to use this API operation.
475//
476// The context must be non-nil and will be used for request cancellation. If
477// the context is nil a panic will occur. In the future the SDK may create
478// sub-contexts for http.Requests. See https://golang.org/pkg/context/
479// for more information on using Contexts.
480func (c *Comprehend) BatchDetectSyntaxWithContext(ctx aws.Context, input *BatchDetectSyntaxInput, opts ...request.Option) (*BatchDetectSyntaxOutput, error) {
481	req, out := c.BatchDetectSyntaxRequest(input)
482	req.SetContext(ctx)
483	req.ApplyOptions(opts...)
484	return out, req.Send()
485}
486
487const opClassifyDocument = "ClassifyDocument"
488
489// ClassifyDocumentRequest generates a "aws/request.Request" representing the
490// client's request for the ClassifyDocument operation. The "output" return
491// value will be populated with the request's response once the request completes
492// successfully.
493//
494// Use "Send" method on the returned Request to send the API call to the service.
495// the "output" return value is not valid until after Send returns without error.
496//
497// See ClassifyDocument for more information on using the ClassifyDocument
498// API call, and error handling.
499//
500// This method is useful when you want to inject custom logic or configuration
501// into the SDK's request lifecycle. Such as custom headers, or retry logic.
502//
503//
504//    // Example sending a request using the ClassifyDocumentRequest method.
505//    req, resp := client.ClassifyDocumentRequest(params)
506//
507//    err := req.Send()
508//    if err == nil { // resp is now filled
509//        fmt.Println(resp)
510//    }
511//
512// See also, https://docs.aws.amazon.com/goto/WebAPI/comprehend-2017-11-27/ClassifyDocument
513func (c *Comprehend) ClassifyDocumentRequest(input *ClassifyDocumentInput) (req *request.Request, output *ClassifyDocumentOutput) {
514	op := &request.Operation{
515		Name:       opClassifyDocument,
516		HTTPMethod: "POST",
517		HTTPPath:   "/",
518	}
519
520	if input == nil {
521		input = &ClassifyDocumentInput{}
522	}
523
524	output = &ClassifyDocumentOutput{}
525	req = c.newRequest(op, input, output)
526	return
527}
528
529// ClassifyDocument API operation for Amazon Comprehend.
530//
531// Creates a new document classification request to analyze a single document
532// in real-time, using a previously created and trained custom model and an
533// endpoint.
534//
535// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
536// with awserr.Error's Code and Message methods to get detailed information about
537// the error.
538//
539// See the AWS API reference guide for Amazon Comprehend's
540// API operation ClassifyDocument for usage and error information.
541//
542// Returned Error Types:
543//   * InvalidRequestException
544//   The request is invalid.
545//
546//   * ResourceUnavailableException
547//   The specified resource is not available. Check the resource and try your
548//   request again.
549//
550//   * TextSizeLimitExceededException
551//   The size of the input text exceeds the limit. Use a smaller document.
552//
553//   * InternalServerException
554//   An internal server error occurred. Retry your request.
555//
556// See also, https://docs.aws.amazon.com/goto/WebAPI/comprehend-2017-11-27/ClassifyDocument
557func (c *Comprehend) ClassifyDocument(input *ClassifyDocumentInput) (*ClassifyDocumentOutput, error) {
558	req, out := c.ClassifyDocumentRequest(input)
559	return out, req.Send()
560}
561
562// ClassifyDocumentWithContext is the same as ClassifyDocument with the addition of
563// the ability to pass a context and additional request options.
564//
565// See ClassifyDocument for details on how to use this API operation.
566//
567// The context must be non-nil and will be used for request cancellation. If
568// the context is nil a panic will occur. In the future the SDK may create
569// sub-contexts for http.Requests. See https://golang.org/pkg/context/
570// for more information on using Contexts.
571func (c *Comprehend) ClassifyDocumentWithContext(ctx aws.Context, input *ClassifyDocumentInput, opts ...request.Option) (*ClassifyDocumentOutput, error) {
572	req, out := c.ClassifyDocumentRequest(input)
573	req.SetContext(ctx)
574	req.ApplyOptions(opts...)
575	return out, req.Send()
576}
577
578const opContainsPiiEntities = "ContainsPiiEntities"
579
580// ContainsPiiEntitiesRequest generates a "aws/request.Request" representing the
581// client's request for the ContainsPiiEntities operation. The "output" return
582// value will be populated with the request's response once the request completes
583// successfully.
584//
585// Use "Send" method on the returned Request to send the API call to the service.
586// the "output" return value is not valid until after Send returns without error.
587//
588// See ContainsPiiEntities for more information on using the ContainsPiiEntities
589// API call, and error handling.
590//
591// This method is useful when you want to inject custom logic or configuration
592// into the SDK's request lifecycle. Such as custom headers, or retry logic.
593//
594//
595//    // Example sending a request using the ContainsPiiEntitiesRequest method.
596//    req, resp := client.ContainsPiiEntitiesRequest(params)
597//
598//    err := req.Send()
599//    if err == nil { // resp is now filled
600//        fmt.Println(resp)
601//    }
602//
603// See also, https://docs.aws.amazon.com/goto/WebAPI/comprehend-2017-11-27/ContainsPiiEntities
604func (c *Comprehend) ContainsPiiEntitiesRequest(input *ContainsPiiEntitiesInput) (req *request.Request, output *ContainsPiiEntitiesOutput) {
605	op := &request.Operation{
606		Name:       opContainsPiiEntities,
607		HTTPMethod: "POST",
608		HTTPPath:   "/",
609	}
610
611	if input == nil {
612		input = &ContainsPiiEntitiesInput{}
613	}
614
615	output = &ContainsPiiEntitiesOutput{}
616	req = c.newRequest(op, input, output)
617	return
618}
619
620// ContainsPiiEntities API operation for Amazon Comprehend.
621//
622// Analyzes input text for the presence of personally identifiable information
623// (PII) and returns the labels of identified PII entity types such as name,
624// address, bank account number, or phone number.
625//
626// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
627// with awserr.Error's Code and Message methods to get detailed information about
628// the error.
629//
630// See the AWS API reference guide for Amazon Comprehend's
631// API operation ContainsPiiEntities for usage and error information.
632//
633// Returned Error Types:
634//   * InvalidRequestException
635//   The request is invalid.
636//
637//   * TextSizeLimitExceededException
638//   The size of the input text exceeds the limit. Use a smaller document.
639//
640//   * UnsupportedLanguageException
641//   Amazon Comprehend can't process the language of the input text. For custom
642//   entity recognition APIs, only English, Spanish, French, Italian, German,
643//   or Portuguese are accepted. For a list of supported languages, see supported-languages.
644//
645//   * InternalServerException
646//   An internal server error occurred. Retry your request.
647//
648// See also, https://docs.aws.amazon.com/goto/WebAPI/comprehend-2017-11-27/ContainsPiiEntities
649func (c *Comprehend) ContainsPiiEntities(input *ContainsPiiEntitiesInput) (*ContainsPiiEntitiesOutput, error) {
650	req, out := c.ContainsPiiEntitiesRequest(input)
651	return out, req.Send()
652}
653
654// ContainsPiiEntitiesWithContext is the same as ContainsPiiEntities with the addition of
655// the ability to pass a context and additional request options.
656//
657// See ContainsPiiEntities for details on how to use this API operation.
658//
659// The context must be non-nil and will be used for request cancellation. If
660// the context is nil a panic will occur. In the future the SDK may create
661// sub-contexts for http.Requests. See https://golang.org/pkg/context/
662// for more information on using Contexts.
663func (c *Comprehend) ContainsPiiEntitiesWithContext(ctx aws.Context, input *ContainsPiiEntitiesInput, opts ...request.Option) (*ContainsPiiEntitiesOutput, error) {
664	req, out := c.ContainsPiiEntitiesRequest(input)
665	req.SetContext(ctx)
666	req.ApplyOptions(opts...)
667	return out, req.Send()
668}
669
670const opCreateDocumentClassifier = "CreateDocumentClassifier"
671
672// CreateDocumentClassifierRequest generates a "aws/request.Request" representing the
673// client's request for the CreateDocumentClassifier operation. The "output" return
674// value will be populated with the request's response once the request completes
675// successfully.
676//
677// Use "Send" method on the returned Request to send the API call to the service.
678// the "output" return value is not valid until after Send returns without error.
679//
680// See CreateDocumentClassifier for more information on using the CreateDocumentClassifier
681// API call, and error handling.
682//
683// This method is useful when you want to inject custom logic or configuration
684// into the SDK's request lifecycle. Such as custom headers, or retry logic.
685//
686//
687//    // Example sending a request using the CreateDocumentClassifierRequest method.
688//    req, resp := client.CreateDocumentClassifierRequest(params)
689//
690//    err := req.Send()
691//    if err == nil { // resp is now filled
692//        fmt.Println(resp)
693//    }
694//
695// See also, https://docs.aws.amazon.com/goto/WebAPI/comprehend-2017-11-27/CreateDocumentClassifier
696func (c *Comprehend) CreateDocumentClassifierRequest(input *CreateDocumentClassifierInput) (req *request.Request, output *CreateDocumentClassifierOutput) {
697	op := &request.Operation{
698		Name:       opCreateDocumentClassifier,
699		HTTPMethod: "POST",
700		HTTPPath:   "/",
701	}
702
703	if input == nil {
704		input = &CreateDocumentClassifierInput{}
705	}
706
707	output = &CreateDocumentClassifierOutput{}
708	req = c.newRequest(op, input, output)
709	return
710}
711
712// CreateDocumentClassifier API operation for Amazon Comprehend.
713//
714// Creates a new document classifier that you can use to categorize documents.
715// To create a classifier, you provide a set of training documents that labeled
716// with the categories that you want to use. After the classifier is trained
717// you can use it to categorize a set of labeled documents into the categories.
718// For more information, see how-document-classification.
719//
720// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
721// with awserr.Error's Code and Message methods to get detailed information about
722// the error.
723//
724// See the AWS API reference guide for Amazon Comprehend's
725// API operation CreateDocumentClassifier for usage and error information.
726//
727// Returned Error Types:
728//   * InvalidRequestException
729//   The request is invalid.
730//
731//   * ResourceInUseException
732//   The specified resource name is already in use. Use a different name and try
733//   your request again.
734//
735//   * TooManyTagsException
736//   The request contains more tags than can be associated with a resource (50
737//   tags per resource). The maximum number of tags includes both existing tags
738//   and those included in your current request.
739//
740//   * TooManyRequestsException
741//   The number of requests exceeds the limit. Resubmit your request later.
742//
743//   * ResourceLimitExceededException
744//   The maximum number of resources per account has been exceeded. Review the
745//   resources, and then try your request again.
746//
747//   * UnsupportedLanguageException
748//   Amazon Comprehend can't process the language of the input text. For custom
749//   entity recognition APIs, only English, Spanish, French, Italian, German,
750//   or Portuguese are accepted. For a list of supported languages, see supported-languages.
751//
752//   * KmsKeyValidationException
753//   The KMS customer managed key (CMK) entered cannot be validated. Verify the
754//   key and re-enter it.
755//
756//   * InternalServerException
757//   An internal server error occurred. Retry your request.
758//
759// See also, https://docs.aws.amazon.com/goto/WebAPI/comprehend-2017-11-27/CreateDocumentClassifier
760func (c *Comprehend) CreateDocumentClassifier(input *CreateDocumentClassifierInput) (*CreateDocumentClassifierOutput, error) {
761	req, out := c.CreateDocumentClassifierRequest(input)
762	return out, req.Send()
763}
764
765// CreateDocumentClassifierWithContext is the same as CreateDocumentClassifier with the addition of
766// the ability to pass a context and additional request options.
767//
768// See CreateDocumentClassifier for details on how to use this API operation.
769//
770// The context must be non-nil and will be used for request cancellation. If
771// the context is nil a panic will occur. In the future the SDK may create
772// sub-contexts for http.Requests. See https://golang.org/pkg/context/
773// for more information on using Contexts.
774func (c *Comprehend) CreateDocumentClassifierWithContext(ctx aws.Context, input *CreateDocumentClassifierInput, opts ...request.Option) (*CreateDocumentClassifierOutput, error) {
775	req, out := c.CreateDocumentClassifierRequest(input)
776	req.SetContext(ctx)
777	req.ApplyOptions(opts...)
778	return out, req.Send()
779}
780
781const opCreateEndpoint = "CreateEndpoint"
782
783// CreateEndpointRequest generates a "aws/request.Request" representing the
784// client's request for the CreateEndpoint operation. The "output" return
785// value will be populated with the request's response once the request completes
786// successfully.
787//
788// Use "Send" method on the returned Request to send the API call to the service.
789// the "output" return value is not valid until after Send returns without error.
790//
791// See CreateEndpoint for more information on using the CreateEndpoint
792// API call, and error handling.
793//
794// This method is useful when you want to inject custom logic or configuration
795// into the SDK's request lifecycle. Such as custom headers, or retry logic.
796//
797//
798//    // Example sending a request using the CreateEndpointRequest method.
799//    req, resp := client.CreateEndpointRequest(params)
800//
801//    err := req.Send()
802//    if err == nil { // resp is now filled
803//        fmt.Println(resp)
804//    }
805//
806// See also, https://docs.aws.amazon.com/goto/WebAPI/comprehend-2017-11-27/CreateEndpoint
807func (c *Comprehend) CreateEndpointRequest(input *CreateEndpointInput) (req *request.Request, output *CreateEndpointOutput) {
808	op := &request.Operation{
809		Name:       opCreateEndpoint,
810		HTTPMethod: "POST",
811		HTTPPath:   "/",
812	}
813
814	if input == nil {
815		input = &CreateEndpointInput{}
816	}
817
818	output = &CreateEndpointOutput{}
819	req = c.newRequest(op, input, output)
820	return
821}
822
823// CreateEndpoint API operation for Amazon Comprehend.
824//
825// Creates a model-specific endpoint for synchronous inference for a previously
826// trained custom model
827//
828// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
829// with awserr.Error's Code and Message methods to get detailed information about
830// the error.
831//
832// See the AWS API reference guide for Amazon Comprehend's
833// API operation CreateEndpoint for usage and error information.
834//
835// Returned Error Types:
836//   * InvalidRequestException
837//   The request is invalid.
838//
839//   * ResourceInUseException
840//   The specified resource name is already in use. Use a different name and try
841//   your request again.
842//
843//   * ResourceLimitExceededException
844//   The maximum number of resources per account has been exceeded. Review the
845//   resources, and then try your request again.
846//
847//   * ResourceNotFoundException
848//   The specified resource ARN was not found. Check the ARN and try your request
849//   again.
850//
851//   * ResourceUnavailableException
852//   The specified resource is not available. Check the resource and try your
853//   request again.
854//
855//   * TooManyRequestsException
856//   The number of requests exceeds the limit. Resubmit your request later.
857//
858//   * TooManyTagsException
859//   The request contains more tags than can be associated with a resource (50
860//   tags per resource). The maximum number of tags includes both existing tags
861//   and those included in your current request.
862//
863//   * InternalServerException
864//   An internal server error occurred. Retry your request.
865//
866// See also, https://docs.aws.amazon.com/goto/WebAPI/comprehend-2017-11-27/CreateEndpoint
867func (c *Comprehend) CreateEndpoint(input *CreateEndpointInput) (*CreateEndpointOutput, error) {
868	req, out := c.CreateEndpointRequest(input)
869	return out, req.Send()
870}
871
872// CreateEndpointWithContext is the same as CreateEndpoint with the addition of
873// the ability to pass a context and additional request options.
874//
875// See CreateEndpoint for details on how to use this API operation.
876//
877// The context must be non-nil and will be used for request cancellation. If
878// the context is nil a panic will occur. In the future the SDK may create
879// sub-contexts for http.Requests. See https://golang.org/pkg/context/
880// for more information on using Contexts.
881func (c *Comprehend) CreateEndpointWithContext(ctx aws.Context, input *CreateEndpointInput, opts ...request.Option) (*CreateEndpointOutput, error) {
882	req, out := c.CreateEndpointRequest(input)
883	req.SetContext(ctx)
884	req.ApplyOptions(opts...)
885	return out, req.Send()
886}
887
888const opCreateEntityRecognizer = "CreateEntityRecognizer"
889
890// CreateEntityRecognizerRequest generates a "aws/request.Request" representing the
891// client's request for the CreateEntityRecognizer operation. The "output" return
892// value will be populated with the request's response once the request completes
893// successfully.
894//
895// Use "Send" method on the returned Request to send the API call to the service.
896// the "output" return value is not valid until after Send returns without error.
897//
898// See CreateEntityRecognizer for more information on using the CreateEntityRecognizer
899// API call, and error handling.
900//
901// This method is useful when you want to inject custom logic or configuration
902// into the SDK's request lifecycle. Such as custom headers, or retry logic.
903//
904//
905//    // Example sending a request using the CreateEntityRecognizerRequest method.
906//    req, resp := client.CreateEntityRecognizerRequest(params)
907//
908//    err := req.Send()
909//    if err == nil { // resp is now filled
910//        fmt.Println(resp)
911//    }
912//
913// See also, https://docs.aws.amazon.com/goto/WebAPI/comprehend-2017-11-27/CreateEntityRecognizer
914func (c *Comprehend) CreateEntityRecognizerRequest(input *CreateEntityRecognizerInput) (req *request.Request, output *CreateEntityRecognizerOutput) {
915	op := &request.Operation{
916		Name:       opCreateEntityRecognizer,
917		HTTPMethod: "POST",
918		HTTPPath:   "/",
919	}
920
921	if input == nil {
922		input = &CreateEntityRecognizerInput{}
923	}
924
925	output = &CreateEntityRecognizerOutput{}
926	req = c.newRequest(op, input, output)
927	return
928}
929
930// CreateEntityRecognizer API operation for Amazon Comprehend.
931//
932// Creates an entity recognizer using submitted files. After your CreateEntityRecognizer
933// request is submitted, you can check job status using the API.
934//
935// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
936// with awserr.Error's Code and Message methods to get detailed information about
937// the error.
938//
939// See the AWS API reference guide for Amazon Comprehend's
940// API operation CreateEntityRecognizer for usage and error information.
941//
942// Returned Error Types:
943//   * InvalidRequestException
944//   The request is invalid.
945//
946//   * ResourceInUseException
947//   The specified resource name is already in use. Use a different name and try
948//   your request again.
949//
950//   * TooManyTagsException
951//   The request contains more tags than can be associated with a resource (50
952//   tags per resource). The maximum number of tags includes both existing tags
953//   and those included in your current request.
954//
955//   * TooManyRequestsException
956//   The number of requests exceeds the limit. Resubmit your request later.
957//
958//   * ResourceLimitExceededException
959//   The maximum number of resources per account has been exceeded. Review the
960//   resources, and then try your request again.
961//
962//   * UnsupportedLanguageException
963//   Amazon Comprehend can't process the language of the input text. For custom
964//   entity recognition APIs, only English, Spanish, French, Italian, German,
965//   or Portuguese are accepted. For a list of supported languages, see supported-languages.
966//
967//   * KmsKeyValidationException
968//   The KMS customer managed key (CMK) entered cannot be validated. Verify the
969//   key and re-enter it.
970//
971//   * InternalServerException
972//   An internal server error occurred. Retry your request.
973//
974// See also, https://docs.aws.amazon.com/goto/WebAPI/comprehend-2017-11-27/CreateEntityRecognizer
975func (c *Comprehend) CreateEntityRecognizer(input *CreateEntityRecognizerInput) (*CreateEntityRecognizerOutput, error) {
976	req, out := c.CreateEntityRecognizerRequest(input)
977	return out, req.Send()
978}
979
980// CreateEntityRecognizerWithContext is the same as CreateEntityRecognizer with the addition of
981// the ability to pass a context and additional request options.
982//
983// See CreateEntityRecognizer for details on how to use this API operation.
984//
985// The context must be non-nil and will be used for request cancellation. If
986// the context is nil a panic will occur. In the future the SDK may create
987// sub-contexts for http.Requests. See https://golang.org/pkg/context/
988// for more information on using Contexts.
989func (c *Comprehend) CreateEntityRecognizerWithContext(ctx aws.Context, input *CreateEntityRecognizerInput, opts ...request.Option) (*CreateEntityRecognizerOutput, error) {
990	req, out := c.CreateEntityRecognizerRequest(input)
991	req.SetContext(ctx)
992	req.ApplyOptions(opts...)
993	return out, req.Send()
994}
995
996const opDeleteDocumentClassifier = "DeleteDocumentClassifier"
997
998// DeleteDocumentClassifierRequest generates a "aws/request.Request" representing the
999// client's request for the DeleteDocumentClassifier operation. The "output" return
1000// value will be populated with the request's response once the request completes
1001// successfully.
1002//
1003// Use "Send" method on the returned Request to send the API call to the service.
1004// the "output" return value is not valid until after Send returns without error.
1005//
1006// See DeleteDocumentClassifier for more information on using the DeleteDocumentClassifier
1007// API call, and error handling.
1008//
1009// This method is useful when you want to inject custom logic or configuration
1010// into the SDK's request lifecycle. Such as custom headers, or retry logic.
1011//
1012//
1013//    // Example sending a request using the DeleteDocumentClassifierRequest method.
1014//    req, resp := client.DeleteDocumentClassifierRequest(params)
1015//
1016//    err := req.Send()
1017//    if err == nil { // resp is now filled
1018//        fmt.Println(resp)
1019//    }
1020//
1021// See also, https://docs.aws.amazon.com/goto/WebAPI/comprehend-2017-11-27/DeleteDocumentClassifier
1022func (c *Comprehend) DeleteDocumentClassifierRequest(input *DeleteDocumentClassifierInput) (req *request.Request, output *DeleteDocumentClassifierOutput) {
1023	op := &request.Operation{
1024		Name:       opDeleteDocumentClassifier,
1025		HTTPMethod: "POST",
1026		HTTPPath:   "/",
1027	}
1028
1029	if input == nil {
1030		input = &DeleteDocumentClassifierInput{}
1031	}
1032
1033	output = &DeleteDocumentClassifierOutput{}
1034	req = c.newRequest(op, input, output)
1035	req.Handlers.Unmarshal.Swap(jsonrpc.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler)
1036	return
1037}
1038
1039// DeleteDocumentClassifier API operation for Amazon Comprehend.
1040//
1041// Deletes a previously created document classifier
1042//
1043// Only those classifiers that are in terminated states (IN_ERROR, TRAINED)
1044// will be deleted. If an active inference job is using the model, a ResourceInUseException
1045// will be returned.
1046//
1047// This is an asynchronous action that puts the classifier into a DELETING state,
1048// and it is then removed by a background job. Once removed, the classifier
1049// disappears from your account and is no longer available for use.
1050//
1051// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
1052// with awserr.Error's Code and Message methods to get detailed information about
1053// the error.
1054//
1055// See the AWS API reference guide for Amazon Comprehend's
1056// API operation DeleteDocumentClassifier for usage and error information.
1057//
1058// Returned Error Types:
1059//   * InvalidRequestException
1060//   The request is invalid.
1061//
1062//   * TooManyRequestsException
1063//   The number of requests exceeds the limit. Resubmit your request later.
1064//
1065//   * ResourceNotFoundException
1066//   The specified resource ARN was not found. Check the ARN and try your request
1067//   again.
1068//
1069//   * ResourceUnavailableException
1070//   The specified resource is not available. Check the resource and try your
1071//   request again.
1072//
1073//   * ResourceInUseException
1074//   The specified resource name is already in use. Use a different name and try
1075//   your request again.
1076//
1077//   * InternalServerException
1078//   An internal server error occurred. Retry your request.
1079//
1080// See also, https://docs.aws.amazon.com/goto/WebAPI/comprehend-2017-11-27/DeleteDocumentClassifier
1081func (c *Comprehend) DeleteDocumentClassifier(input *DeleteDocumentClassifierInput) (*DeleteDocumentClassifierOutput, error) {
1082	req, out := c.DeleteDocumentClassifierRequest(input)
1083	return out, req.Send()
1084}
1085
1086// DeleteDocumentClassifierWithContext is the same as DeleteDocumentClassifier with the addition of
1087// the ability to pass a context and additional request options.
1088//
1089// See DeleteDocumentClassifier for details on how to use this API operation.
1090//
1091// The context must be non-nil and will be used for request cancellation. If
1092// the context is nil a panic will occur. In the future the SDK may create
1093// sub-contexts for http.Requests. See https://golang.org/pkg/context/
1094// for more information on using Contexts.
1095func (c *Comprehend) DeleteDocumentClassifierWithContext(ctx aws.Context, input *DeleteDocumentClassifierInput, opts ...request.Option) (*DeleteDocumentClassifierOutput, error) {
1096	req, out := c.DeleteDocumentClassifierRequest(input)
1097	req.SetContext(ctx)
1098	req.ApplyOptions(opts...)
1099	return out, req.Send()
1100}
1101
1102const opDeleteEndpoint = "DeleteEndpoint"
1103
1104// DeleteEndpointRequest generates a "aws/request.Request" representing the
1105// client's request for the DeleteEndpoint operation. The "output" return
1106// value will be populated with the request's response once the request completes
1107// successfully.
1108//
1109// Use "Send" method on the returned Request to send the API call to the service.
1110// the "output" return value is not valid until after Send returns without error.
1111//
1112// See DeleteEndpoint for more information on using the DeleteEndpoint
1113// API call, and error handling.
1114//
1115// This method is useful when you want to inject custom logic or configuration
1116// into the SDK's request lifecycle. Such as custom headers, or retry logic.
1117//
1118//
1119//    // Example sending a request using the DeleteEndpointRequest method.
1120//    req, resp := client.DeleteEndpointRequest(params)
1121//
1122//    err := req.Send()
1123//    if err == nil { // resp is now filled
1124//        fmt.Println(resp)
1125//    }
1126//
1127// See also, https://docs.aws.amazon.com/goto/WebAPI/comprehend-2017-11-27/DeleteEndpoint
1128func (c *Comprehend) DeleteEndpointRequest(input *DeleteEndpointInput) (req *request.Request, output *DeleteEndpointOutput) {
1129	op := &request.Operation{
1130		Name:       opDeleteEndpoint,
1131		HTTPMethod: "POST",
1132		HTTPPath:   "/",
1133	}
1134
1135	if input == nil {
1136		input = &DeleteEndpointInput{}
1137	}
1138
1139	output = &DeleteEndpointOutput{}
1140	req = c.newRequest(op, input, output)
1141	req.Handlers.Unmarshal.Swap(jsonrpc.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler)
1142	return
1143}
1144
1145// DeleteEndpoint API operation for Amazon Comprehend.
1146//
1147// Deletes a model-specific endpoint for a previously-trained custom model.
1148// All endpoints must be deleted in order for the model to be deleted.
1149//
1150// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
1151// with awserr.Error's Code and Message methods to get detailed information about
1152// the error.
1153//
1154// See the AWS API reference guide for Amazon Comprehend's
1155// API operation DeleteEndpoint for usage and error information.
1156//
1157// Returned Error Types:
1158//   * InvalidRequestException
1159//   The request is invalid.
1160//
1161//   * ResourceInUseException
1162//   The specified resource name is already in use. Use a different name and try
1163//   your request again.
1164//
1165//   * ResourceNotFoundException
1166//   The specified resource ARN was not found. Check the ARN and try your request
1167//   again.
1168//
1169//   * TooManyRequestsException
1170//   The number of requests exceeds the limit. Resubmit your request later.
1171//
1172//   * InternalServerException
1173//   An internal server error occurred. Retry your request.
1174//
1175// See also, https://docs.aws.amazon.com/goto/WebAPI/comprehend-2017-11-27/DeleteEndpoint
1176func (c *Comprehend) DeleteEndpoint(input *DeleteEndpointInput) (*DeleteEndpointOutput, error) {
1177	req, out := c.DeleteEndpointRequest(input)
1178	return out, req.Send()
1179}
1180
1181// DeleteEndpointWithContext is the same as DeleteEndpoint with the addition of
1182// the ability to pass a context and additional request options.
1183//
1184// See DeleteEndpoint for details on how to use this API operation.
1185//
1186// The context must be non-nil and will be used for request cancellation. If
1187// the context is nil a panic will occur. In the future the SDK may create
1188// sub-contexts for http.Requests. See https://golang.org/pkg/context/
1189// for more information on using Contexts.
1190func (c *Comprehend) DeleteEndpointWithContext(ctx aws.Context, input *DeleteEndpointInput, opts ...request.Option) (*DeleteEndpointOutput, error) {
1191	req, out := c.DeleteEndpointRequest(input)
1192	req.SetContext(ctx)
1193	req.ApplyOptions(opts...)
1194	return out, req.Send()
1195}
1196
1197const opDeleteEntityRecognizer = "DeleteEntityRecognizer"
1198
1199// DeleteEntityRecognizerRequest generates a "aws/request.Request" representing the
1200// client's request for the DeleteEntityRecognizer operation. The "output" return
1201// value will be populated with the request's response once the request completes
1202// successfully.
1203//
1204// Use "Send" method on the returned Request to send the API call to the service.
1205// the "output" return value is not valid until after Send returns without error.
1206//
1207// See DeleteEntityRecognizer for more information on using the DeleteEntityRecognizer
1208// API call, and error handling.
1209//
1210// This method is useful when you want to inject custom logic or configuration
1211// into the SDK's request lifecycle. Such as custom headers, or retry logic.
1212//
1213//
1214//    // Example sending a request using the DeleteEntityRecognizerRequest method.
1215//    req, resp := client.DeleteEntityRecognizerRequest(params)
1216//
1217//    err := req.Send()
1218//    if err == nil { // resp is now filled
1219//        fmt.Println(resp)
1220//    }
1221//
1222// See also, https://docs.aws.amazon.com/goto/WebAPI/comprehend-2017-11-27/DeleteEntityRecognizer
1223func (c *Comprehend) DeleteEntityRecognizerRequest(input *DeleteEntityRecognizerInput) (req *request.Request, output *DeleteEntityRecognizerOutput) {
1224	op := &request.Operation{
1225		Name:       opDeleteEntityRecognizer,
1226		HTTPMethod: "POST",
1227		HTTPPath:   "/",
1228	}
1229
1230	if input == nil {
1231		input = &DeleteEntityRecognizerInput{}
1232	}
1233
1234	output = &DeleteEntityRecognizerOutput{}
1235	req = c.newRequest(op, input, output)
1236	req.Handlers.Unmarshal.Swap(jsonrpc.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler)
1237	return
1238}
1239
1240// DeleteEntityRecognizer API operation for Amazon Comprehend.
1241//
1242// Deletes an entity recognizer.
1243//
1244// Only those recognizers that are in terminated states (IN_ERROR, TRAINED)
1245// will be deleted. If an active inference job is using the model, a ResourceInUseException
1246// will be returned.
1247//
1248// This is an asynchronous action that puts the recognizer into a DELETING state,
1249// and it is then removed by a background job. Once removed, the recognizer
1250// disappears from your account and is no longer available for use.
1251//
1252// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
1253// with awserr.Error's Code and Message methods to get detailed information about
1254// the error.
1255//
1256// See the AWS API reference guide for Amazon Comprehend's
1257// API operation DeleteEntityRecognizer for usage and error information.
1258//
1259// Returned Error Types:
1260//   * InvalidRequestException
1261//   The request is invalid.
1262//
1263//   * TooManyRequestsException
1264//   The number of requests exceeds the limit. Resubmit your request later.
1265//
1266//   * ResourceNotFoundException
1267//   The specified resource ARN was not found. Check the ARN and try your request
1268//   again.
1269//
1270//   * ResourceUnavailableException
1271//   The specified resource is not available. Check the resource and try your
1272//   request again.
1273//
1274//   * ResourceInUseException
1275//   The specified resource name is already in use. Use a different name and try
1276//   your request again.
1277//
1278//   * InternalServerException
1279//   An internal server error occurred. Retry your request.
1280//
1281// See also, https://docs.aws.amazon.com/goto/WebAPI/comprehend-2017-11-27/DeleteEntityRecognizer
1282func (c *Comprehend) DeleteEntityRecognizer(input *DeleteEntityRecognizerInput) (*DeleteEntityRecognizerOutput, error) {
1283	req, out := c.DeleteEntityRecognizerRequest(input)
1284	return out, req.Send()
1285}
1286
1287// DeleteEntityRecognizerWithContext is the same as DeleteEntityRecognizer with the addition of
1288// the ability to pass a context and additional request options.
1289//
1290// See DeleteEntityRecognizer for details on how to use this API operation.
1291//
1292// The context must be non-nil and will be used for request cancellation. If
1293// the context is nil a panic will occur. In the future the SDK may create
1294// sub-contexts for http.Requests. See https://golang.org/pkg/context/
1295// for more information on using Contexts.
1296func (c *Comprehend) DeleteEntityRecognizerWithContext(ctx aws.Context, input *DeleteEntityRecognizerInput, opts ...request.Option) (*DeleteEntityRecognizerOutput, error) {
1297	req, out := c.DeleteEntityRecognizerRequest(input)
1298	req.SetContext(ctx)
1299	req.ApplyOptions(opts...)
1300	return out, req.Send()
1301}
1302
1303const opDescribeDocumentClassificationJob = "DescribeDocumentClassificationJob"
1304
1305// DescribeDocumentClassificationJobRequest generates a "aws/request.Request" representing the
1306// client's request for the DescribeDocumentClassificationJob operation. The "output" return
1307// value will be populated with the request's response once the request completes
1308// successfully.
1309//
1310// Use "Send" method on the returned Request to send the API call to the service.
1311// the "output" return value is not valid until after Send returns without error.
1312//
1313// See DescribeDocumentClassificationJob for more information on using the DescribeDocumentClassificationJob
1314// API call, and error handling.
1315//
1316// This method is useful when you want to inject custom logic or configuration
1317// into the SDK's request lifecycle. Such as custom headers, or retry logic.
1318//
1319//
1320//    // Example sending a request using the DescribeDocumentClassificationJobRequest method.
1321//    req, resp := client.DescribeDocumentClassificationJobRequest(params)
1322//
1323//    err := req.Send()
1324//    if err == nil { // resp is now filled
1325//        fmt.Println(resp)
1326//    }
1327//
1328// See also, https://docs.aws.amazon.com/goto/WebAPI/comprehend-2017-11-27/DescribeDocumentClassificationJob
1329func (c *Comprehend) DescribeDocumentClassificationJobRequest(input *DescribeDocumentClassificationJobInput) (req *request.Request, output *DescribeDocumentClassificationJobOutput) {
1330	op := &request.Operation{
1331		Name:       opDescribeDocumentClassificationJob,
1332		HTTPMethod: "POST",
1333		HTTPPath:   "/",
1334	}
1335
1336	if input == nil {
1337		input = &DescribeDocumentClassificationJobInput{}
1338	}
1339
1340	output = &DescribeDocumentClassificationJobOutput{}
1341	req = c.newRequest(op, input, output)
1342	return
1343}
1344
1345// DescribeDocumentClassificationJob API operation for Amazon Comprehend.
1346//
1347// Gets the properties associated with a document classification job. Use this
1348// operation to get the status of a classification job.
1349//
1350// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
1351// with awserr.Error's Code and Message methods to get detailed information about
1352// the error.
1353//
1354// See the AWS API reference guide for Amazon Comprehend's
1355// API operation DescribeDocumentClassificationJob for usage and error information.
1356//
1357// Returned Error Types:
1358//   * InvalidRequestException
1359//   The request is invalid.
1360//
1361//   * TooManyRequestsException
1362//   The number of requests exceeds the limit. Resubmit your request later.
1363//
1364//   * JobNotFoundException
1365//   The specified job was not found. Check the job ID and try again.
1366//
1367//   * InternalServerException
1368//   An internal server error occurred. Retry your request.
1369//
1370// See also, https://docs.aws.amazon.com/goto/WebAPI/comprehend-2017-11-27/DescribeDocumentClassificationJob
1371func (c *Comprehend) DescribeDocumentClassificationJob(input *DescribeDocumentClassificationJobInput) (*DescribeDocumentClassificationJobOutput, error) {
1372	req, out := c.DescribeDocumentClassificationJobRequest(input)
1373	return out, req.Send()
1374}
1375
1376// DescribeDocumentClassificationJobWithContext is the same as DescribeDocumentClassificationJob with the addition of
1377// the ability to pass a context and additional request options.
1378//
1379// See DescribeDocumentClassificationJob for details on how to use this API operation.
1380//
1381// The context must be non-nil and will be used for request cancellation. If
1382// the context is nil a panic will occur. In the future the SDK may create
1383// sub-contexts for http.Requests. See https://golang.org/pkg/context/
1384// for more information on using Contexts.
1385func (c *Comprehend) DescribeDocumentClassificationJobWithContext(ctx aws.Context, input *DescribeDocumentClassificationJobInput, opts ...request.Option) (*DescribeDocumentClassificationJobOutput, error) {
1386	req, out := c.DescribeDocumentClassificationJobRequest(input)
1387	req.SetContext(ctx)
1388	req.ApplyOptions(opts...)
1389	return out, req.Send()
1390}
1391
1392const opDescribeDocumentClassifier = "DescribeDocumentClassifier"
1393
1394// DescribeDocumentClassifierRequest generates a "aws/request.Request" representing the
1395// client's request for the DescribeDocumentClassifier operation. The "output" return
1396// value will be populated with the request's response once the request completes
1397// successfully.
1398//
1399// Use "Send" method on the returned Request to send the API call to the service.
1400// the "output" return value is not valid until after Send returns without error.
1401//
1402// See DescribeDocumentClassifier for more information on using the DescribeDocumentClassifier
1403// API call, and error handling.
1404//
1405// This method is useful when you want to inject custom logic or configuration
1406// into the SDK's request lifecycle. Such as custom headers, or retry logic.
1407//
1408//
1409//    // Example sending a request using the DescribeDocumentClassifierRequest method.
1410//    req, resp := client.DescribeDocumentClassifierRequest(params)
1411//
1412//    err := req.Send()
1413//    if err == nil { // resp is now filled
1414//        fmt.Println(resp)
1415//    }
1416//
1417// See also, https://docs.aws.amazon.com/goto/WebAPI/comprehend-2017-11-27/DescribeDocumentClassifier
1418func (c *Comprehend) DescribeDocumentClassifierRequest(input *DescribeDocumentClassifierInput) (req *request.Request, output *DescribeDocumentClassifierOutput) {
1419	op := &request.Operation{
1420		Name:       opDescribeDocumentClassifier,
1421		HTTPMethod: "POST",
1422		HTTPPath:   "/",
1423	}
1424
1425	if input == nil {
1426		input = &DescribeDocumentClassifierInput{}
1427	}
1428
1429	output = &DescribeDocumentClassifierOutput{}
1430	req = c.newRequest(op, input, output)
1431	return
1432}
1433
1434// DescribeDocumentClassifier API operation for Amazon Comprehend.
1435//
1436// Gets the properties associated with a document classifier.
1437//
1438// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
1439// with awserr.Error's Code and Message methods to get detailed information about
1440// the error.
1441//
1442// See the AWS API reference guide for Amazon Comprehend's
1443// API operation DescribeDocumentClassifier for usage and error information.
1444//
1445// Returned Error Types:
1446//   * InvalidRequestException
1447//   The request is invalid.
1448//
1449//   * TooManyRequestsException
1450//   The number of requests exceeds the limit. Resubmit your request later.
1451//
1452//   * ResourceNotFoundException
1453//   The specified resource ARN was not found. Check the ARN and try your request
1454//   again.
1455//
1456//   * InternalServerException
1457//   An internal server error occurred. Retry your request.
1458//
1459// See also, https://docs.aws.amazon.com/goto/WebAPI/comprehend-2017-11-27/DescribeDocumentClassifier
1460func (c *Comprehend) DescribeDocumentClassifier(input *DescribeDocumentClassifierInput) (*DescribeDocumentClassifierOutput, error) {
1461	req, out := c.DescribeDocumentClassifierRequest(input)
1462	return out, req.Send()
1463}
1464
1465// DescribeDocumentClassifierWithContext is the same as DescribeDocumentClassifier with the addition of
1466// the ability to pass a context and additional request options.
1467//
1468// See DescribeDocumentClassifier for details on how to use this API operation.
1469//
1470// The context must be non-nil and will be used for request cancellation. If
1471// the context is nil a panic will occur. In the future the SDK may create
1472// sub-contexts for http.Requests. See https://golang.org/pkg/context/
1473// for more information on using Contexts.
1474func (c *Comprehend) DescribeDocumentClassifierWithContext(ctx aws.Context, input *DescribeDocumentClassifierInput, opts ...request.Option) (*DescribeDocumentClassifierOutput, error) {
1475	req, out := c.DescribeDocumentClassifierRequest(input)
1476	req.SetContext(ctx)
1477	req.ApplyOptions(opts...)
1478	return out, req.Send()
1479}
1480
1481const opDescribeDominantLanguageDetectionJob = "DescribeDominantLanguageDetectionJob"
1482
1483// DescribeDominantLanguageDetectionJobRequest generates a "aws/request.Request" representing the
1484// client's request for the DescribeDominantLanguageDetectionJob operation. The "output" return
1485// value will be populated with the request's response once the request completes
1486// successfully.
1487//
1488// Use "Send" method on the returned Request to send the API call to the service.
1489// the "output" return value is not valid until after Send returns without error.
1490//
1491// See DescribeDominantLanguageDetectionJob for more information on using the DescribeDominantLanguageDetectionJob
1492// API call, and error handling.
1493//
1494// This method is useful when you want to inject custom logic or configuration
1495// into the SDK's request lifecycle. Such as custom headers, or retry logic.
1496//
1497//
1498//    // Example sending a request using the DescribeDominantLanguageDetectionJobRequest method.
1499//    req, resp := client.DescribeDominantLanguageDetectionJobRequest(params)
1500//
1501//    err := req.Send()
1502//    if err == nil { // resp is now filled
1503//        fmt.Println(resp)
1504//    }
1505//
1506// See also, https://docs.aws.amazon.com/goto/WebAPI/comprehend-2017-11-27/DescribeDominantLanguageDetectionJob
1507func (c *Comprehend) DescribeDominantLanguageDetectionJobRequest(input *DescribeDominantLanguageDetectionJobInput) (req *request.Request, output *DescribeDominantLanguageDetectionJobOutput) {
1508	op := &request.Operation{
1509		Name:       opDescribeDominantLanguageDetectionJob,
1510		HTTPMethod: "POST",
1511		HTTPPath:   "/",
1512	}
1513
1514	if input == nil {
1515		input = &DescribeDominantLanguageDetectionJobInput{}
1516	}
1517
1518	output = &DescribeDominantLanguageDetectionJobOutput{}
1519	req = c.newRequest(op, input, output)
1520	return
1521}
1522
1523// DescribeDominantLanguageDetectionJob API operation for Amazon Comprehend.
1524//
1525// Gets the properties associated with a dominant language detection job. Use
1526// this operation to get the status of a detection job.
1527//
1528// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
1529// with awserr.Error's Code and Message methods to get detailed information about
1530// the error.
1531//
1532// See the AWS API reference guide for Amazon Comprehend's
1533// API operation DescribeDominantLanguageDetectionJob for usage and error information.
1534//
1535// Returned Error Types:
1536//   * InvalidRequestException
1537//   The request is invalid.
1538//
1539//   * JobNotFoundException
1540//   The specified job was not found. Check the job ID and try again.
1541//
1542//   * TooManyRequestsException
1543//   The number of requests exceeds the limit. Resubmit your request later.
1544//
1545//   * InternalServerException
1546//   An internal server error occurred. Retry your request.
1547//
1548// See also, https://docs.aws.amazon.com/goto/WebAPI/comprehend-2017-11-27/DescribeDominantLanguageDetectionJob
1549func (c *Comprehend) DescribeDominantLanguageDetectionJob(input *DescribeDominantLanguageDetectionJobInput) (*DescribeDominantLanguageDetectionJobOutput, error) {
1550	req, out := c.DescribeDominantLanguageDetectionJobRequest(input)
1551	return out, req.Send()
1552}
1553
1554// DescribeDominantLanguageDetectionJobWithContext is the same as DescribeDominantLanguageDetectionJob with the addition of
1555// the ability to pass a context and additional request options.
1556//
1557// See DescribeDominantLanguageDetectionJob for details on how to use this API operation.
1558//
1559// The context must be non-nil and will be used for request cancellation. If
1560// the context is nil a panic will occur. In the future the SDK may create
1561// sub-contexts for http.Requests. See https://golang.org/pkg/context/
1562// for more information on using Contexts.
1563func (c *Comprehend) DescribeDominantLanguageDetectionJobWithContext(ctx aws.Context, input *DescribeDominantLanguageDetectionJobInput, opts ...request.Option) (*DescribeDominantLanguageDetectionJobOutput, error) {
1564	req, out := c.DescribeDominantLanguageDetectionJobRequest(input)
1565	req.SetContext(ctx)
1566	req.ApplyOptions(opts...)
1567	return out, req.Send()
1568}
1569
1570const opDescribeEndpoint = "DescribeEndpoint"
1571
1572// DescribeEndpointRequest generates a "aws/request.Request" representing the
1573// client's request for the DescribeEndpoint operation. The "output" return
1574// value will be populated with the request's response once the request completes
1575// successfully.
1576//
1577// Use "Send" method on the returned Request to send the API call to the service.
1578// the "output" return value is not valid until after Send returns without error.
1579//
1580// See DescribeEndpoint for more information on using the DescribeEndpoint
1581// API call, and error handling.
1582//
1583// This method is useful when you want to inject custom logic or configuration
1584// into the SDK's request lifecycle. Such as custom headers, or retry logic.
1585//
1586//
1587//    // Example sending a request using the DescribeEndpointRequest method.
1588//    req, resp := client.DescribeEndpointRequest(params)
1589//
1590//    err := req.Send()
1591//    if err == nil { // resp is now filled
1592//        fmt.Println(resp)
1593//    }
1594//
1595// See also, https://docs.aws.amazon.com/goto/WebAPI/comprehend-2017-11-27/DescribeEndpoint
1596func (c *Comprehend) DescribeEndpointRequest(input *DescribeEndpointInput) (req *request.Request, output *DescribeEndpointOutput) {
1597	op := &request.Operation{
1598		Name:       opDescribeEndpoint,
1599		HTTPMethod: "POST",
1600		HTTPPath:   "/",
1601	}
1602
1603	if input == nil {
1604		input = &DescribeEndpointInput{}
1605	}
1606
1607	output = &DescribeEndpointOutput{}
1608	req = c.newRequest(op, input, output)
1609	return
1610}
1611
1612// DescribeEndpoint API operation for Amazon Comprehend.
1613//
1614// Gets the properties associated with a specific endpoint. Use this operation
1615// to get the status of an endpoint.
1616//
1617// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
1618// with awserr.Error's Code and Message methods to get detailed information about
1619// the error.
1620//
1621// See the AWS API reference guide for Amazon Comprehend's
1622// API operation DescribeEndpoint for usage and error information.
1623//
1624// Returned Error Types:
1625//   * InvalidRequestException
1626//   The request is invalid.
1627//
1628//   * TooManyRequestsException
1629//   The number of requests exceeds the limit. Resubmit your request later.
1630//
1631//   * ResourceNotFoundException
1632//   The specified resource ARN was not found. Check the ARN and try your request
1633//   again.
1634//
1635//   * InternalServerException
1636//   An internal server error occurred. Retry your request.
1637//
1638// See also, https://docs.aws.amazon.com/goto/WebAPI/comprehend-2017-11-27/DescribeEndpoint
1639func (c *Comprehend) DescribeEndpoint(input *DescribeEndpointInput) (*DescribeEndpointOutput, error) {
1640	req, out := c.DescribeEndpointRequest(input)
1641	return out, req.Send()
1642}
1643
1644// DescribeEndpointWithContext is the same as DescribeEndpoint with the addition of
1645// the ability to pass a context and additional request options.
1646//
1647// See DescribeEndpoint for details on how to use this API operation.
1648//
1649// The context must be non-nil and will be used for request cancellation. If
1650// the context is nil a panic will occur. In the future the SDK may create
1651// sub-contexts for http.Requests. See https://golang.org/pkg/context/
1652// for more information on using Contexts.
1653func (c *Comprehend) DescribeEndpointWithContext(ctx aws.Context, input *DescribeEndpointInput, opts ...request.Option) (*DescribeEndpointOutput, error) {
1654	req, out := c.DescribeEndpointRequest(input)
1655	req.SetContext(ctx)
1656	req.ApplyOptions(opts...)
1657	return out, req.Send()
1658}
1659
1660const opDescribeEntitiesDetectionJob = "DescribeEntitiesDetectionJob"
1661
1662// DescribeEntitiesDetectionJobRequest generates a "aws/request.Request" representing the
1663// client's request for the DescribeEntitiesDetectionJob operation. The "output" return
1664// value will be populated with the request's response once the request completes
1665// successfully.
1666//
1667// Use "Send" method on the returned Request to send the API call to the service.
1668// the "output" return value is not valid until after Send returns without error.
1669//
1670// See DescribeEntitiesDetectionJob for more information on using the DescribeEntitiesDetectionJob
1671// API call, and error handling.
1672//
1673// This method is useful when you want to inject custom logic or configuration
1674// into the SDK's request lifecycle. Such as custom headers, or retry logic.
1675//
1676//
1677//    // Example sending a request using the DescribeEntitiesDetectionJobRequest method.
1678//    req, resp := client.DescribeEntitiesDetectionJobRequest(params)
1679//
1680//    err := req.Send()
1681//    if err == nil { // resp is now filled
1682//        fmt.Println(resp)
1683//    }
1684//
1685// See also, https://docs.aws.amazon.com/goto/WebAPI/comprehend-2017-11-27/DescribeEntitiesDetectionJob
1686func (c *Comprehend) DescribeEntitiesDetectionJobRequest(input *DescribeEntitiesDetectionJobInput) (req *request.Request, output *DescribeEntitiesDetectionJobOutput) {
1687	op := &request.Operation{
1688		Name:       opDescribeEntitiesDetectionJob,
1689		HTTPMethod: "POST",
1690		HTTPPath:   "/",
1691	}
1692
1693	if input == nil {
1694		input = &DescribeEntitiesDetectionJobInput{}
1695	}
1696
1697	output = &DescribeEntitiesDetectionJobOutput{}
1698	req = c.newRequest(op, input, output)
1699	return
1700}
1701
1702// DescribeEntitiesDetectionJob API operation for Amazon Comprehend.
1703//
1704// Gets the properties associated with an entities detection job. Use this operation
1705// to get the status of a detection job.
1706//
1707// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
1708// with awserr.Error's Code and Message methods to get detailed information about
1709// the error.
1710//
1711// See the AWS API reference guide for Amazon Comprehend's
1712// API operation DescribeEntitiesDetectionJob for usage and error information.
1713//
1714// Returned Error Types:
1715//   * InvalidRequestException
1716//   The request is invalid.
1717//
1718//   * JobNotFoundException
1719//   The specified job was not found. Check the job ID and try again.
1720//
1721//   * TooManyRequestsException
1722//   The number of requests exceeds the limit. Resubmit your request later.
1723//
1724//   * InternalServerException
1725//   An internal server error occurred. Retry your request.
1726//
1727// See also, https://docs.aws.amazon.com/goto/WebAPI/comprehend-2017-11-27/DescribeEntitiesDetectionJob
1728func (c *Comprehend) DescribeEntitiesDetectionJob(input *DescribeEntitiesDetectionJobInput) (*DescribeEntitiesDetectionJobOutput, error) {
1729	req, out := c.DescribeEntitiesDetectionJobRequest(input)
1730	return out, req.Send()
1731}
1732
1733// DescribeEntitiesDetectionJobWithContext is the same as DescribeEntitiesDetectionJob with the addition of
1734// the ability to pass a context and additional request options.
1735//
1736// See DescribeEntitiesDetectionJob for details on how to use this API operation.
1737//
1738// The context must be non-nil and will be used for request cancellation. If
1739// the context is nil a panic will occur. In the future the SDK may create
1740// sub-contexts for http.Requests. See https://golang.org/pkg/context/
1741// for more information on using Contexts.
1742func (c *Comprehend) DescribeEntitiesDetectionJobWithContext(ctx aws.Context, input *DescribeEntitiesDetectionJobInput, opts ...request.Option) (*DescribeEntitiesDetectionJobOutput, error) {
1743	req, out := c.DescribeEntitiesDetectionJobRequest(input)
1744	req.SetContext(ctx)
1745	req.ApplyOptions(opts...)
1746	return out, req.Send()
1747}
1748
1749const opDescribeEntityRecognizer = "DescribeEntityRecognizer"
1750
1751// DescribeEntityRecognizerRequest generates a "aws/request.Request" representing the
1752// client's request for the DescribeEntityRecognizer operation. The "output" return
1753// value will be populated with the request's response once the request completes
1754// successfully.
1755//
1756// Use "Send" method on the returned Request to send the API call to the service.
1757// the "output" return value is not valid until after Send returns without error.
1758//
1759// See DescribeEntityRecognizer for more information on using the DescribeEntityRecognizer
1760// API call, and error handling.
1761//
1762// This method is useful when you want to inject custom logic or configuration
1763// into the SDK's request lifecycle. Such as custom headers, or retry logic.
1764//
1765//
1766//    // Example sending a request using the DescribeEntityRecognizerRequest method.
1767//    req, resp := client.DescribeEntityRecognizerRequest(params)
1768//
1769//    err := req.Send()
1770//    if err == nil { // resp is now filled
1771//        fmt.Println(resp)
1772//    }
1773//
1774// See also, https://docs.aws.amazon.com/goto/WebAPI/comprehend-2017-11-27/DescribeEntityRecognizer
1775func (c *Comprehend) DescribeEntityRecognizerRequest(input *DescribeEntityRecognizerInput) (req *request.Request, output *DescribeEntityRecognizerOutput) {
1776	op := &request.Operation{
1777		Name:       opDescribeEntityRecognizer,
1778		HTTPMethod: "POST",
1779		HTTPPath:   "/",
1780	}
1781
1782	if input == nil {
1783		input = &DescribeEntityRecognizerInput{}
1784	}
1785
1786	output = &DescribeEntityRecognizerOutput{}
1787	req = c.newRequest(op, input, output)
1788	return
1789}
1790
1791// DescribeEntityRecognizer API operation for Amazon Comprehend.
1792//
1793// Provides details about an entity recognizer including status, S3 buckets
1794// containing training data, recognizer metadata, metrics, and so on.
1795//
1796// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
1797// with awserr.Error's Code and Message methods to get detailed information about
1798// the error.
1799//
1800// See the AWS API reference guide for Amazon Comprehend's
1801// API operation DescribeEntityRecognizer for usage and error information.
1802//
1803// Returned Error Types:
1804//   * InvalidRequestException
1805//   The request is invalid.
1806//
1807//   * TooManyRequestsException
1808//   The number of requests exceeds the limit. Resubmit your request later.
1809//
1810//   * ResourceNotFoundException
1811//   The specified resource ARN was not found. Check the ARN and try your request
1812//   again.
1813//
1814//   * InternalServerException
1815//   An internal server error occurred. Retry your request.
1816//
1817// See also, https://docs.aws.amazon.com/goto/WebAPI/comprehend-2017-11-27/DescribeEntityRecognizer
1818func (c *Comprehend) DescribeEntityRecognizer(input *DescribeEntityRecognizerInput) (*DescribeEntityRecognizerOutput, error) {
1819	req, out := c.DescribeEntityRecognizerRequest(input)
1820	return out, req.Send()
1821}
1822
1823// DescribeEntityRecognizerWithContext is the same as DescribeEntityRecognizer with the addition of
1824// the ability to pass a context and additional request options.
1825//
1826// See DescribeEntityRecognizer for details on how to use this API operation.
1827//
1828// The context must be non-nil and will be used for request cancellation. If
1829// the context is nil a panic will occur. In the future the SDK may create
1830// sub-contexts for http.Requests. See https://golang.org/pkg/context/
1831// for more information on using Contexts.
1832func (c *Comprehend) DescribeEntityRecognizerWithContext(ctx aws.Context, input *DescribeEntityRecognizerInput, opts ...request.Option) (*DescribeEntityRecognizerOutput, error) {
1833	req, out := c.DescribeEntityRecognizerRequest(input)
1834	req.SetContext(ctx)
1835	req.ApplyOptions(opts...)
1836	return out, req.Send()
1837}
1838
1839const opDescribeEventsDetectionJob = "DescribeEventsDetectionJob"
1840
1841// DescribeEventsDetectionJobRequest generates a "aws/request.Request" representing the
1842// client's request for the DescribeEventsDetectionJob operation. The "output" return
1843// value will be populated with the request's response once the request completes
1844// successfully.
1845//
1846// Use "Send" method on the returned Request to send the API call to the service.
1847// the "output" return value is not valid until after Send returns without error.
1848//
1849// See DescribeEventsDetectionJob for more information on using the DescribeEventsDetectionJob
1850// API call, and error handling.
1851//
1852// This method is useful when you want to inject custom logic or configuration
1853// into the SDK's request lifecycle. Such as custom headers, or retry logic.
1854//
1855//
1856//    // Example sending a request using the DescribeEventsDetectionJobRequest method.
1857//    req, resp := client.DescribeEventsDetectionJobRequest(params)
1858//
1859//    err := req.Send()
1860//    if err == nil { // resp is now filled
1861//        fmt.Println(resp)
1862//    }
1863//
1864// See also, https://docs.aws.amazon.com/goto/WebAPI/comprehend-2017-11-27/DescribeEventsDetectionJob
1865func (c *Comprehend) DescribeEventsDetectionJobRequest(input *DescribeEventsDetectionJobInput) (req *request.Request, output *DescribeEventsDetectionJobOutput) {
1866	op := &request.Operation{
1867		Name:       opDescribeEventsDetectionJob,
1868		HTTPMethod: "POST",
1869		HTTPPath:   "/",
1870	}
1871
1872	if input == nil {
1873		input = &DescribeEventsDetectionJobInput{}
1874	}
1875
1876	output = &DescribeEventsDetectionJobOutput{}
1877	req = c.newRequest(op, input, output)
1878	return
1879}
1880
1881// DescribeEventsDetectionJob API operation for Amazon Comprehend.
1882//
1883// Gets the status and details of an events detection job.
1884//
1885// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
1886// with awserr.Error's Code and Message methods to get detailed information about
1887// the error.
1888//
1889// See the AWS API reference guide for Amazon Comprehend's
1890// API operation DescribeEventsDetectionJob for usage and error information.
1891//
1892// Returned Error Types:
1893//   * InvalidRequestException
1894//   The request is invalid.
1895//
1896//   * JobNotFoundException
1897//   The specified job was not found. Check the job ID and try again.
1898//
1899//   * TooManyRequestsException
1900//   The number of requests exceeds the limit. Resubmit your request later.
1901//
1902//   * InternalServerException
1903//   An internal server error occurred. Retry your request.
1904//
1905// See also, https://docs.aws.amazon.com/goto/WebAPI/comprehend-2017-11-27/DescribeEventsDetectionJob
1906func (c *Comprehend) DescribeEventsDetectionJob(input *DescribeEventsDetectionJobInput) (*DescribeEventsDetectionJobOutput, error) {
1907	req, out := c.DescribeEventsDetectionJobRequest(input)
1908	return out, req.Send()
1909}
1910
1911// DescribeEventsDetectionJobWithContext is the same as DescribeEventsDetectionJob with the addition of
1912// the ability to pass a context and additional request options.
1913//
1914// See DescribeEventsDetectionJob for details on how to use this API operation.
1915//
1916// The context must be non-nil and will be used for request cancellation. If
1917// the context is nil a panic will occur. In the future the SDK may create
1918// sub-contexts for http.Requests. See https://golang.org/pkg/context/
1919// for more information on using Contexts.
1920func (c *Comprehend) DescribeEventsDetectionJobWithContext(ctx aws.Context, input *DescribeEventsDetectionJobInput, opts ...request.Option) (*DescribeEventsDetectionJobOutput, error) {
1921	req, out := c.DescribeEventsDetectionJobRequest(input)
1922	req.SetContext(ctx)
1923	req.ApplyOptions(opts...)
1924	return out, req.Send()
1925}
1926
1927const opDescribeKeyPhrasesDetectionJob = "DescribeKeyPhrasesDetectionJob"
1928
1929// DescribeKeyPhrasesDetectionJobRequest generates a "aws/request.Request" representing the
1930// client's request for the DescribeKeyPhrasesDetectionJob operation. The "output" return
1931// value will be populated with the request's response once the request completes
1932// successfully.
1933//
1934// Use "Send" method on the returned Request to send the API call to the service.
1935// the "output" return value is not valid until after Send returns without error.
1936//
1937// See DescribeKeyPhrasesDetectionJob for more information on using the DescribeKeyPhrasesDetectionJob
1938// API call, and error handling.
1939//
1940// This method is useful when you want to inject custom logic or configuration
1941// into the SDK's request lifecycle. Such as custom headers, or retry logic.
1942//
1943//
1944//    // Example sending a request using the DescribeKeyPhrasesDetectionJobRequest method.
1945//    req, resp := client.DescribeKeyPhrasesDetectionJobRequest(params)
1946//
1947//    err := req.Send()
1948//    if err == nil { // resp is now filled
1949//        fmt.Println(resp)
1950//    }
1951//
1952// See also, https://docs.aws.amazon.com/goto/WebAPI/comprehend-2017-11-27/DescribeKeyPhrasesDetectionJob
1953func (c *Comprehend) DescribeKeyPhrasesDetectionJobRequest(input *DescribeKeyPhrasesDetectionJobInput) (req *request.Request, output *DescribeKeyPhrasesDetectionJobOutput) {
1954	op := &request.Operation{
1955		Name:       opDescribeKeyPhrasesDetectionJob,
1956		HTTPMethod: "POST",
1957		HTTPPath:   "/",
1958	}
1959
1960	if input == nil {
1961		input = &DescribeKeyPhrasesDetectionJobInput{}
1962	}
1963
1964	output = &DescribeKeyPhrasesDetectionJobOutput{}
1965	req = c.newRequest(op, input, output)
1966	return
1967}
1968
1969// DescribeKeyPhrasesDetectionJob API operation for Amazon Comprehend.
1970//
1971// Gets the properties associated with a key phrases detection job. Use this
1972// operation to get the status of a detection job.
1973//
1974// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
1975// with awserr.Error's Code and Message methods to get detailed information about
1976// the error.
1977//
1978// See the AWS API reference guide for Amazon Comprehend's
1979// API operation DescribeKeyPhrasesDetectionJob for usage and error information.
1980//
1981// Returned Error Types:
1982//   * InvalidRequestException
1983//   The request is invalid.
1984//
1985//   * JobNotFoundException
1986//   The specified job was not found. Check the job ID and try again.
1987//
1988//   * TooManyRequestsException
1989//   The number of requests exceeds the limit. Resubmit your request later.
1990//
1991//   * InternalServerException
1992//   An internal server error occurred. Retry your request.
1993//
1994// See also, https://docs.aws.amazon.com/goto/WebAPI/comprehend-2017-11-27/DescribeKeyPhrasesDetectionJob
1995func (c *Comprehend) DescribeKeyPhrasesDetectionJob(input *DescribeKeyPhrasesDetectionJobInput) (*DescribeKeyPhrasesDetectionJobOutput, error) {
1996	req, out := c.DescribeKeyPhrasesDetectionJobRequest(input)
1997	return out, req.Send()
1998}
1999
2000// DescribeKeyPhrasesDetectionJobWithContext is the same as DescribeKeyPhrasesDetectionJob with the addition of
2001// the ability to pass a context and additional request options.
2002//
2003// See DescribeKeyPhrasesDetectionJob for details on how to use this API operation.
2004//
2005// The context must be non-nil and will be used for request cancellation. If
2006// the context is nil a panic will occur. In the future the SDK may create
2007// sub-contexts for http.Requests. See https://golang.org/pkg/context/
2008// for more information on using Contexts.
2009func (c *Comprehend) DescribeKeyPhrasesDetectionJobWithContext(ctx aws.Context, input *DescribeKeyPhrasesDetectionJobInput, opts ...request.Option) (*DescribeKeyPhrasesDetectionJobOutput, error) {
2010	req, out := c.DescribeKeyPhrasesDetectionJobRequest(input)
2011	req.SetContext(ctx)
2012	req.ApplyOptions(opts...)
2013	return out, req.Send()
2014}
2015
2016const opDescribePiiEntitiesDetectionJob = "DescribePiiEntitiesDetectionJob"
2017
2018// DescribePiiEntitiesDetectionJobRequest generates a "aws/request.Request" representing the
2019// client's request for the DescribePiiEntitiesDetectionJob operation. The "output" return
2020// value will be populated with the request's response once the request completes
2021// successfully.
2022//
2023// Use "Send" method on the returned Request to send the API call to the service.
2024// the "output" return value is not valid until after Send returns without error.
2025//
2026// See DescribePiiEntitiesDetectionJob for more information on using the DescribePiiEntitiesDetectionJob
2027// API call, and error handling.
2028//
2029// This method is useful when you want to inject custom logic or configuration
2030// into the SDK's request lifecycle. Such as custom headers, or retry logic.
2031//
2032//
2033//    // Example sending a request using the DescribePiiEntitiesDetectionJobRequest method.
2034//    req, resp := client.DescribePiiEntitiesDetectionJobRequest(params)
2035//
2036//    err := req.Send()
2037//    if err == nil { // resp is now filled
2038//        fmt.Println(resp)
2039//    }
2040//
2041// See also, https://docs.aws.amazon.com/goto/WebAPI/comprehend-2017-11-27/DescribePiiEntitiesDetectionJob
2042func (c *Comprehend) DescribePiiEntitiesDetectionJobRequest(input *DescribePiiEntitiesDetectionJobInput) (req *request.Request, output *DescribePiiEntitiesDetectionJobOutput) {
2043	op := &request.Operation{
2044		Name:       opDescribePiiEntitiesDetectionJob,
2045		HTTPMethod: "POST",
2046		HTTPPath:   "/",
2047	}
2048
2049	if input == nil {
2050		input = &DescribePiiEntitiesDetectionJobInput{}
2051	}
2052
2053	output = &DescribePiiEntitiesDetectionJobOutput{}
2054	req = c.newRequest(op, input, output)
2055	return
2056}
2057
2058// DescribePiiEntitiesDetectionJob API operation for Amazon Comprehend.
2059//
2060// Gets the properties associated with a PII entities detection job. For example,
2061// you can use this operation to get the job status.
2062//
2063// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
2064// with awserr.Error's Code and Message methods to get detailed information about
2065// the error.
2066//
2067// See the AWS API reference guide for Amazon Comprehend's
2068// API operation DescribePiiEntitiesDetectionJob for usage and error information.
2069//
2070// Returned Error Types:
2071//   * InvalidRequestException
2072//   The request is invalid.
2073//
2074//   * JobNotFoundException
2075//   The specified job was not found. Check the job ID and try again.
2076//
2077//   * TooManyRequestsException
2078//   The number of requests exceeds the limit. Resubmit your request later.
2079//
2080//   * InternalServerException
2081//   An internal server error occurred. Retry your request.
2082//
2083// See also, https://docs.aws.amazon.com/goto/WebAPI/comprehend-2017-11-27/DescribePiiEntitiesDetectionJob
2084func (c *Comprehend) DescribePiiEntitiesDetectionJob(input *DescribePiiEntitiesDetectionJobInput) (*DescribePiiEntitiesDetectionJobOutput, error) {
2085	req, out := c.DescribePiiEntitiesDetectionJobRequest(input)
2086	return out, req.Send()
2087}
2088
2089// DescribePiiEntitiesDetectionJobWithContext is the same as DescribePiiEntitiesDetectionJob with the addition of
2090// the ability to pass a context and additional request options.
2091//
2092// See DescribePiiEntitiesDetectionJob 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 *Comprehend) DescribePiiEntitiesDetectionJobWithContext(ctx aws.Context, input *DescribePiiEntitiesDetectionJobInput, opts ...request.Option) (*DescribePiiEntitiesDetectionJobOutput, error) {
2099	req, out := c.DescribePiiEntitiesDetectionJobRequest(input)
2100	req.SetContext(ctx)
2101	req.ApplyOptions(opts...)
2102	return out, req.Send()
2103}
2104
2105const opDescribeSentimentDetectionJob = "DescribeSentimentDetectionJob"
2106
2107// DescribeSentimentDetectionJobRequest generates a "aws/request.Request" representing the
2108// client's request for the DescribeSentimentDetectionJob operation. The "output" return
2109// value will be populated with the request's response once the request completes
2110// successfully.
2111//
2112// Use "Send" method on the returned Request to send the API call to the service.
2113// the "output" return value is not valid until after Send returns without error.
2114//
2115// See DescribeSentimentDetectionJob for more information on using the DescribeSentimentDetectionJob
2116// API call, and error handling.
2117//
2118// This method is useful when you want to inject custom logic or configuration
2119// into the SDK's request lifecycle. Such as custom headers, or retry logic.
2120//
2121//
2122//    // Example sending a request using the DescribeSentimentDetectionJobRequest method.
2123//    req, resp := client.DescribeSentimentDetectionJobRequest(params)
2124//
2125//    err := req.Send()
2126//    if err == nil { // resp is now filled
2127//        fmt.Println(resp)
2128//    }
2129//
2130// See also, https://docs.aws.amazon.com/goto/WebAPI/comprehend-2017-11-27/DescribeSentimentDetectionJob
2131func (c *Comprehend) DescribeSentimentDetectionJobRequest(input *DescribeSentimentDetectionJobInput) (req *request.Request, output *DescribeSentimentDetectionJobOutput) {
2132	op := &request.Operation{
2133		Name:       opDescribeSentimentDetectionJob,
2134		HTTPMethod: "POST",
2135		HTTPPath:   "/",
2136	}
2137
2138	if input == nil {
2139		input = &DescribeSentimentDetectionJobInput{}
2140	}
2141
2142	output = &DescribeSentimentDetectionJobOutput{}
2143	req = c.newRequest(op, input, output)
2144	return
2145}
2146
2147// DescribeSentimentDetectionJob API operation for Amazon Comprehend.
2148//
2149// Gets the properties associated with a sentiment detection job. Use this operation
2150// to get the status of a detection job.
2151//
2152// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
2153// with awserr.Error's Code and Message methods to get detailed information about
2154// the error.
2155//
2156// See the AWS API reference guide for Amazon Comprehend's
2157// API operation DescribeSentimentDetectionJob for usage and error information.
2158//
2159// Returned Error Types:
2160//   * InvalidRequestException
2161//   The request is invalid.
2162//
2163//   * JobNotFoundException
2164//   The specified job was not found. Check the job ID and try again.
2165//
2166//   * TooManyRequestsException
2167//   The number of requests exceeds the limit. Resubmit your request later.
2168//
2169//   * InternalServerException
2170//   An internal server error occurred. Retry your request.
2171//
2172// See also, https://docs.aws.amazon.com/goto/WebAPI/comprehend-2017-11-27/DescribeSentimentDetectionJob
2173func (c *Comprehend) DescribeSentimentDetectionJob(input *DescribeSentimentDetectionJobInput) (*DescribeSentimentDetectionJobOutput, error) {
2174	req, out := c.DescribeSentimentDetectionJobRequest(input)
2175	return out, req.Send()
2176}
2177
2178// DescribeSentimentDetectionJobWithContext is the same as DescribeSentimentDetectionJob with the addition of
2179// the ability to pass a context and additional request options.
2180//
2181// See DescribeSentimentDetectionJob for details on how to use this API operation.
2182//
2183// The context must be non-nil and will be used for request cancellation. If
2184// the context is nil a panic will occur. In the future the SDK may create
2185// sub-contexts for http.Requests. See https://golang.org/pkg/context/
2186// for more information on using Contexts.
2187func (c *Comprehend) DescribeSentimentDetectionJobWithContext(ctx aws.Context, input *DescribeSentimentDetectionJobInput, opts ...request.Option) (*DescribeSentimentDetectionJobOutput, error) {
2188	req, out := c.DescribeSentimentDetectionJobRequest(input)
2189	req.SetContext(ctx)
2190	req.ApplyOptions(opts...)
2191	return out, req.Send()
2192}
2193
2194const opDescribeTopicsDetectionJob = "DescribeTopicsDetectionJob"
2195
2196// DescribeTopicsDetectionJobRequest generates a "aws/request.Request" representing the
2197// client's request for the DescribeTopicsDetectionJob operation. The "output" return
2198// value will be populated with the request's response once the request completes
2199// successfully.
2200//
2201// Use "Send" method on the returned Request to send the API call to the service.
2202// the "output" return value is not valid until after Send returns without error.
2203//
2204// See DescribeTopicsDetectionJob for more information on using the DescribeTopicsDetectionJob
2205// API call, and error handling.
2206//
2207// This method is useful when you want to inject custom logic or configuration
2208// into the SDK's request lifecycle. Such as custom headers, or retry logic.
2209//
2210//
2211//    // Example sending a request using the DescribeTopicsDetectionJobRequest method.
2212//    req, resp := client.DescribeTopicsDetectionJobRequest(params)
2213//
2214//    err := req.Send()
2215//    if err == nil { // resp is now filled
2216//        fmt.Println(resp)
2217//    }
2218//
2219// See also, https://docs.aws.amazon.com/goto/WebAPI/comprehend-2017-11-27/DescribeTopicsDetectionJob
2220func (c *Comprehend) DescribeTopicsDetectionJobRequest(input *DescribeTopicsDetectionJobInput) (req *request.Request, output *DescribeTopicsDetectionJobOutput) {
2221	op := &request.Operation{
2222		Name:       opDescribeTopicsDetectionJob,
2223		HTTPMethod: "POST",
2224		HTTPPath:   "/",
2225	}
2226
2227	if input == nil {
2228		input = &DescribeTopicsDetectionJobInput{}
2229	}
2230
2231	output = &DescribeTopicsDetectionJobOutput{}
2232	req = c.newRequest(op, input, output)
2233	return
2234}
2235
2236// DescribeTopicsDetectionJob API operation for Amazon Comprehend.
2237//
2238// Gets the properties associated with a topic detection job. Use this operation
2239// to get the status of a detection job.
2240//
2241// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
2242// with awserr.Error's Code and Message methods to get detailed information about
2243// the error.
2244//
2245// See the AWS API reference guide for Amazon Comprehend's
2246// API operation DescribeTopicsDetectionJob for usage and error information.
2247//
2248// Returned Error Types:
2249//   * InvalidRequestException
2250//   The request is invalid.
2251//
2252//   * JobNotFoundException
2253//   The specified job was not found. Check the job ID and try again.
2254//
2255//   * TooManyRequestsException
2256//   The number of requests exceeds the limit. Resubmit your request later.
2257//
2258//   * InternalServerException
2259//   An internal server error occurred. Retry your request.
2260//
2261// See also, https://docs.aws.amazon.com/goto/WebAPI/comprehend-2017-11-27/DescribeTopicsDetectionJob
2262func (c *Comprehend) DescribeTopicsDetectionJob(input *DescribeTopicsDetectionJobInput) (*DescribeTopicsDetectionJobOutput, error) {
2263	req, out := c.DescribeTopicsDetectionJobRequest(input)
2264	return out, req.Send()
2265}
2266
2267// DescribeTopicsDetectionJobWithContext is the same as DescribeTopicsDetectionJob with the addition of
2268// the ability to pass a context and additional request options.
2269//
2270// See DescribeTopicsDetectionJob for details on how to use this API operation.
2271//
2272// The context must be non-nil and will be used for request cancellation. If
2273// the context is nil a panic will occur. In the future the SDK may create
2274// sub-contexts for http.Requests. See https://golang.org/pkg/context/
2275// for more information on using Contexts.
2276func (c *Comprehend) DescribeTopicsDetectionJobWithContext(ctx aws.Context, input *DescribeTopicsDetectionJobInput, opts ...request.Option) (*DescribeTopicsDetectionJobOutput, error) {
2277	req, out := c.DescribeTopicsDetectionJobRequest(input)
2278	req.SetContext(ctx)
2279	req.ApplyOptions(opts...)
2280	return out, req.Send()
2281}
2282
2283const opDetectDominantLanguage = "DetectDominantLanguage"
2284
2285// DetectDominantLanguageRequest generates a "aws/request.Request" representing the
2286// client's request for the DetectDominantLanguage operation. The "output" return
2287// value will be populated with the request's response once the request completes
2288// successfully.
2289//
2290// Use "Send" method on the returned Request to send the API call to the service.
2291// the "output" return value is not valid until after Send returns without error.
2292//
2293// See DetectDominantLanguage for more information on using the DetectDominantLanguage
2294// API call, and error handling.
2295//
2296// This method is useful when you want to inject custom logic or configuration
2297// into the SDK's request lifecycle. Such as custom headers, or retry logic.
2298//
2299//
2300//    // Example sending a request using the DetectDominantLanguageRequest method.
2301//    req, resp := client.DetectDominantLanguageRequest(params)
2302//
2303//    err := req.Send()
2304//    if err == nil { // resp is now filled
2305//        fmt.Println(resp)
2306//    }
2307//
2308// See also, https://docs.aws.amazon.com/goto/WebAPI/comprehend-2017-11-27/DetectDominantLanguage
2309func (c *Comprehend) DetectDominantLanguageRequest(input *DetectDominantLanguageInput) (req *request.Request, output *DetectDominantLanguageOutput) {
2310	op := &request.Operation{
2311		Name:       opDetectDominantLanguage,
2312		HTTPMethod: "POST",
2313		HTTPPath:   "/",
2314	}
2315
2316	if input == nil {
2317		input = &DetectDominantLanguageInput{}
2318	}
2319
2320	output = &DetectDominantLanguageOutput{}
2321	req = c.newRequest(op, input, output)
2322	return
2323}
2324
2325// DetectDominantLanguage API operation for Amazon Comprehend.
2326//
2327// Determines the dominant language of the input text. For a list of languages
2328// that Amazon Comprehend can detect, see Amazon Comprehend Supported Languages
2329// (https://docs.aws.amazon.com/comprehend/latest/dg/how-languages.html).
2330//
2331// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
2332// with awserr.Error's Code and Message methods to get detailed information about
2333// the error.
2334//
2335// See the AWS API reference guide for Amazon Comprehend's
2336// API operation DetectDominantLanguage for usage and error information.
2337//
2338// Returned Error Types:
2339//   * InvalidRequestException
2340//   The request is invalid.
2341//
2342//   * TextSizeLimitExceededException
2343//   The size of the input text exceeds the limit. Use a smaller document.
2344//
2345//   * InternalServerException
2346//   An internal server error occurred. Retry your request.
2347//
2348// See also, https://docs.aws.amazon.com/goto/WebAPI/comprehend-2017-11-27/DetectDominantLanguage
2349func (c *Comprehend) DetectDominantLanguage(input *DetectDominantLanguageInput) (*DetectDominantLanguageOutput, error) {
2350	req, out := c.DetectDominantLanguageRequest(input)
2351	return out, req.Send()
2352}
2353
2354// DetectDominantLanguageWithContext is the same as DetectDominantLanguage with the addition of
2355// the ability to pass a context and additional request options.
2356//
2357// See DetectDominantLanguage for details on how to use this API operation.
2358//
2359// The context must be non-nil and will be used for request cancellation. If
2360// the context is nil a panic will occur. In the future the SDK may create
2361// sub-contexts for http.Requests. See https://golang.org/pkg/context/
2362// for more information on using Contexts.
2363func (c *Comprehend) DetectDominantLanguageWithContext(ctx aws.Context, input *DetectDominantLanguageInput, opts ...request.Option) (*DetectDominantLanguageOutput, error) {
2364	req, out := c.DetectDominantLanguageRequest(input)
2365	req.SetContext(ctx)
2366	req.ApplyOptions(opts...)
2367	return out, req.Send()
2368}
2369
2370const opDetectEntities = "DetectEntities"
2371
2372// DetectEntitiesRequest generates a "aws/request.Request" representing the
2373// client's request for the DetectEntities operation. The "output" return
2374// value will be populated with the request's response once the request completes
2375// successfully.
2376//
2377// Use "Send" method on the returned Request to send the API call to the service.
2378// the "output" return value is not valid until after Send returns without error.
2379//
2380// See DetectEntities for more information on using the DetectEntities
2381// API call, and error handling.
2382//
2383// This method is useful when you want to inject custom logic or configuration
2384// into the SDK's request lifecycle. Such as custom headers, or retry logic.
2385//
2386//
2387//    // Example sending a request using the DetectEntitiesRequest method.
2388//    req, resp := client.DetectEntitiesRequest(params)
2389//
2390//    err := req.Send()
2391//    if err == nil { // resp is now filled
2392//        fmt.Println(resp)
2393//    }
2394//
2395// See also, https://docs.aws.amazon.com/goto/WebAPI/comprehend-2017-11-27/DetectEntities
2396func (c *Comprehend) DetectEntitiesRequest(input *DetectEntitiesInput) (req *request.Request, output *DetectEntitiesOutput) {
2397	op := &request.Operation{
2398		Name:       opDetectEntities,
2399		HTTPMethod: "POST",
2400		HTTPPath:   "/",
2401	}
2402
2403	if input == nil {
2404		input = &DetectEntitiesInput{}
2405	}
2406
2407	output = &DetectEntitiesOutput{}
2408	req = c.newRequest(op, input, output)
2409	return
2410}
2411
2412// DetectEntities API operation for Amazon Comprehend.
2413//
2414// Inspects text for named entities, and returns information about them. For
2415// more information, about named entities, see how-entities.
2416//
2417// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
2418// with awserr.Error's Code and Message methods to get detailed information about
2419// the error.
2420//
2421// See the AWS API reference guide for Amazon Comprehend's
2422// API operation DetectEntities for usage and error information.
2423//
2424// Returned Error Types:
2425//   * InvalidRequestException
2426//   The request is invalid.
2427//
2428//   * ResourceUnavailableException
2429//   The specified resource is not available. Check the resource and try your
2430//   request again.
2431//
2432//   * TextSizeLimitExceededException
2433//   The size of the input text exceeds the limit. Use a smaller document.
2434//
2435//   * UnsupportedLanguageException
2436//   Amazon Comprehend can't process the language of the input text. For custom
2437//   entity recognition APIs, only English, Spanish, French, Italian, German,
2438//   or Portuguese are accepted. For a list of supported languages, see supported-languages.
2439//
2440//   * InternalServerException
2441//   An internal server error occurred. Retry your request.
2442//
2443// See also, https://docs.aws.amazon.com/goto/WebAPI/comprehend-2017-11-27/DetectEntities
2444func (c *Comprehend) DetectEntities(input *DetectEntitiesInput) (*DetectEntitiesOutput, error) {
2445	req, out := c.DetectEntitiesRequest(input)
2446	return out, req.Send()
2447}
2448
2449// DetectEntitiesWithContext is the same as DetectEntities with the addition of
2450// the ability to pass a context and additional request options.
2451//
2452// See DetectEntities for details on how to use this API operation.
2453//
2454// The context must be non-nil and will be used for request cancellation. If
2455// the context is nil a panic will occur. In the future the SDK may create
2456// sub-contexts for http.Requests. See https://golang.org/pkg/context/
2457// for more information on using Contexts.
2458func (c *Comprehend) DetectEntitiesWithContext(ctx aws.Context, input *DetectEntitiesInput, opts ...request.Option) (*DetectEntitiesOutput, error) {
2459	req, out := c.DetectEntitiesRequest(input)
2460	req.SetContext(ctx)
2461	req.ApplyOptions(opts...)
2462	return out, req.Send()
2463}
2464
2465const opDetectKeyPhrases = "DetectKeyPhrases"
2466
2467// DetectKeyPhrasesRequest generates a "aws/request.Request" representing the
2468// client's request for the DetectKeyPhrases operation. The "output" return
2469// value will be populated with the request's response once the request completes
2470// successfully.
2471//
2472// Use "Send" method on the returned Request to send the API call to the service.
2473// the "output" return value is not valid until after Send returns without error.
2474//
2475// See DetectKeyPhrases for more information on using the DetectKeyPhrases
2476// API call, and error handling.
2477//
2478// This method is useful when you want to inject custom logic or configuration
2479// into the SDK's request lifecycle. Such as custom headers, or retry logic.
2480//
2481//
2482//    // Example sending a request using the DetectKeyPhrasesRequest method.
2483//    req, resp := client.DetectKeyPhrasesRequest(params)
2484//
2485//    err := req.Send()
2486//    if err == nil { // resp is now filled
2487//        fmt.Println(resp)
2488//    }
2489//
2490// See also, https://docs.aws.amazon.com/goto/WebAPI/comprehend-2017-11-27/DetectKeyPhrases
2491func (c *Comprehend) DetectKeyPhrasesRequest(input *DetectKeyPhrasesInput) (req *request.Request, output *DetectKeyPhrasesOutput) {
2492	op := &request.Operation{
2493		Name:       opDetectKeyPhrases,
2494		HTTPMethod: "POST",
2495		HTTPPath:   "/",
2496	}
2497
2498	if input == nil {
2499		input = &DetectKeyPhrasesInput{}
2500	}
2501
2502	output = &DetectKeyPhrasesOutput{}
2503	req = c.newRequest(op, input, output)
2504	return
2505}
2506
2507// DetectKeyPhrases API operation for Amazon Comprehend.
2508//
2509// Detects the key noun phrases found in the text.
2510//
2511// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
2512// with awserr.Error's Code and Message methods to get detailed information about
2513// the error.
2514//
2515// See the AWS API reference guide for Amazon Comprehend's
2516// API operation DetectKeyPhrases for usage and error information.
2517//
2518// Returned Error Types:
2519//   * InvalidRequestException
2520//   The request is invalid.
2521//
2522//   * TextSizeLimitExceededException
2523//   The size of the input text exceeds the limit. Use a smaller document.
2524//
2525//   * UnsupportedLanguageException
2526//   Amazon Comprehend can't process the language of the input text. For custom
2527//   entity recognition APIs, only English, Spanish, French, Italian, German,
2528//   or Portuguese are accepted. For a list of supported languages, see supported-languages.
2529//
2530//   * InternalServerException
2531//   An internal server error occurred. Retry your request.
2532//
2533// See also, https://docs.aws.amazon.com/goto/WebAPI/comprehend-2017-11-27/DetectKeyPhrases
2534func (c *Comprehend) DetectKeyPhrases(input *DetectKeyPhrasesInput) (*DetectKeyPhrasesOutput, error) {
2535	req, out := c.DetectKeyPhrasesRequest(input)
2536	return out, req.Send()
2537}
2538
2539// DetectKeyPhrasesWithContext is the same as DetectKeyPhrases with the addition of
2540// the ability to pass a context and additional request options.
2541//
2542// See DetectKeyPhrases for details on how to use this API operation.
2543//
2544// The context must be non-nil and will be used for request cancellation. If
2545// the context is nil a panic will occur. In the future the SDK may create
2546// sub-contexts for http.Requests. See https://golang.org/pkg/context/
2547// for more information on using Contexts.
2548func (c *Comprehend) DetectKeyPhrasesWithContext(ctx aws.Context, input *DetectKeyPhrasesInput, opts ...request.Option) (*DetectKeyPhrasesOutput, error) {
2549	req, out := c.DetectKeyPhrasesRequest(input)
2550	req.SetContext(ctx)
2551	req.ApplyOptions(opts...)
2552	return out, req.Send()
2553}
2554
2555const opDetectPiiEntities = "DetectPiiEntities"
2556
2557// DetectPiiEntitiesRequest generates a "aws/request.Request" representing the
2558// client's request for the DetectPiiEntities operation. The "output" return
2559// value will be populated with the request's response once the request completes
2560// successfully.
2561//
2562// Use "Send" method on the returned Request to send the API call to the service.
2563// the "output" return value is not valid until after Send returns without error.
2564//
2565// See DetectPiiEntities for more information on using the DetectPiiEntities
2566// API call, and error handling.
2567//
2568// This method is useful when you want to inject custom logic or configuration
2569// into the SDK's request lifecycle. Such as custom headers, or retry logic.
2570//
2571//
2572//    // Example sending a request using the DetectPiiEntitiesRequest method.
2573//    req, resp := client.DetectPiiEntitiesRequest(params)
2574//
2575//    err := req.Send()
2576//    if err == nil { // resp is now filled
2577//        fmt.Println(resp)
2578//    }
2579//
2580// See also, https://docs.aws.amazon.com/goto/WebAPI/comprehend-2017-11-27/DetectPiiEntities
2581func (c *Comprehend) DetectPiiEntitiesRequest(input *DetectPiiEntitiesInput) (req *request.Request, output *DetectPiiEntitiesOutput) {
2582	op := &request.Operation{
2583		Name:       opDetectPiiEntities,
2584		HTTPMethod: "POST",
2585		HTTPPath:   "/",
2586	}
2587
2588	if input == nil {
2589		input = &DetectPiiEntitiesInput{}
2590	}
2591
2592	output = &DetectPiiEntitiesOutput{}
2593	req = c.newRequest(op, input, output)
2594	return
2595}
2596
2597// DetectPiiEntities API operation for Amazon Comprehend.
2598//
2599// Inspects the input text for entities that contain personally identifiable
2600// information (PII) and returns information about them.
2601//
2602// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
2603// with awserr.Error's Code and Message methods to get detailed information about
2604// the error.
2605//
2606// See the AWS API reference guide for Amazon Comprehend's
2607// API operation DetectPiiEntities for usage and error information.
2608//
2609// Returned Error Types:
2610//   * InvalidRequestException
2611//   The request is invalid.
2612//
2613//   * TextSizeLimitExceededException
2614//   The size of the input text exceeds the limit. Use a smaller document.
2615//
2616//   * UnsupportedLanguageException
2617//   Amazon Comprehend can't process the language of the input text. For custom
2618//   entity recognition APIs, only English, Spanish, French, Italian, German,
2619//   or Portuguese are accepted. For a list of supported languages, see supported-languages.
2620//
2621//   * InternalServerException
2622//   An internal server error occurred. Retry your request.
2623//
2624// See also, https://docs.aws.amazon.com/goto/WebAPI/comprehend-2017-11-27/DetectPiiEntities
2625func (c *Comprehend) DetectPiiEntities(input *DetectPiiEntitiesInput) (*DetectPiiEntitiesOutput, error) {
2626	req, out := c.DetectPiiEntitiesRequest(input)
2627	return out, req.Send()
2628}
2629
2630// DetectPiiEntitiesWithContext is the same as DetectPiiEntities with the addition of
2631// the ability to pass a context and additional request options.
2632//
2633// See DetectPiiEntities for details on how to use this API operation.
2634//
2635// The context must be non-nil and will be used for request cancellation. If
2636// the context is nil a panic will occur. In the future the SDK may create
2637// sub-contexts for http.Requests. See https://golang.org/pkg/context/
2638// for more information on using Contexts.
2639func (c *Comprehend) DetectPiiEntitiesWithContext(ctx aws.Context, input *DetectPiiEntitiesInput, opts ...request.Option) (*DetectPiiEntitiesOutput, error) {
2640	req, out := c.DetectPiiEntitiesRequest(input)
2641	req.SetContext(ctx)
2642	req.ApplyOptions(opts...)
2643	return out, req.Send()
2644}
2645
2646const opDetectSentiment = "DetectSentiment"
2647
2648// DetectSentimentRequest generates a "aws/request.Request" representing the
2649// client's request for the DetectSentiment operation. The "output" return
2650// value will be populated with the request's response once the request completes
2651// successfully.
2652//
2653// Use "Send" method on the returned Request to send the API call to the service.
2654// the "output" return value is not valid until after Send returns without error.
2655//
2656// See DetectSentiment for more information on using the DetectSentiment
2657// API call, and error handling.
2658//
2659// This method is useful when you want to inject custom logic or configuration
2660// into the SDK's request lifecycle. Such as custom headers, or retry logic.
2661//
2662//
2663//    // Example sending a request using the DetectSentimentRequest method.
2664//    req, resp := client.DetectSentimentRequest(params)
2665//
2666//    err := req.Send()
2667//    if err == nil { // resp is now filled
2668//        fmt.Println(resp)
2669//    }
2670//
2671// See also, https://docs.aws.amazon.com/goto/WebAPI/comprehend-2017-11-27/DetectSentiment
2672func (c *Comprehend) DetectSentimentRequest(input *DetectSentimentInput) (req *request.Request, output *DetectSentimentOutput) {
2673	op := &request.Operation{
2674		Name:       opDetectSentiment,
2675		HTTPMethod: "POST",
2676		HTTPPath:   "/",
2677	}
2678
2679	if input == nil {
2680		input = &DetectSentimentInput{}
2681	}
2682
2683	output = &DetectSentimentOutput{}
2684	req = c.newRequest(op, input, output)
2685	return
2686}
2687
2688// DetectSentiment API operation for Amazon Comprehend.
2689//
2690// Inspects text and returns an inference of the prevailing sentiment (POSITIVE,
2691// NEUTRAL, MIXED, or NEGATIVE).
2692//
2693// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
2694// with awserr.Error's Code and Message methods to get detailed information about
2695// the error.
2696//
2697// See the AWS API reference guide for Amazon Comprehend's
2698// API operation DetectSentiment for usage and error information.
2699//
2700// Returned Error Types:
2701//   * InvalidRequestException
2702//   The request is invalid.
2703//
2704//   * TextSizeLimitExceededException
2705//   The size of the input text exceeds the limit. Use a smaller document.
2706//
2707//   * UnsupportedLanguageException
2708//   Amazon Comprehend can't process the language of the input text. For custom
2709//   entity recognition APIs, only English, Spanish, French, Italian, German,
2710//   or Portuguese are accepted. For a list of supported languages, see supported-languages.
2711//
2712//   * InternalServerException
2713//   An internal server error occurred. Retry your request.
2714//
2715// See also, https://docs.aws.amazon.com/goto/WebAPI/comprehend-2017-11-27/DetectSentiment
2716func (c *Comprehend) DetectSentiment(input *DetectSentimentInput) (*DetectSentimentOutput, error) {
2717	req, out := c.DetectSentimentRequest(input)
2718	return out, req.Send()
2719}
2720
2721// DetectSentimentWithContext is the same as DetectSentiment with the addition of
2722// the ability to pass a context and additional request options.
2723//
2724// See DetectSentiment for details on how to use this API operation.
2725//
2726// The context must be non-nil and will be used for request cancellation. If
2727// the context is nil a panic will occur. In the future the SDK may create
2728// sub-contexts for http.Requests. See https://golang.org/pkg/context/
2729// for more information on using Contexts.
2730func (c *Comprehend) DetectSentimentWithContext(ctx aws.Context, input *DetectSentimentInput, opts ...request.Option) (*DetectSentimentOutput, error) {
2731	req, out := c.DetectSentimentRequest(input)
2732	req.SetContext(ctx)
2733	req.ApplyOptions(opts...)
2734	return out, req.Send()
2735}
2736
2737const opDetectSyntax = "DetectSyntax"
2738
2739// DetectSyntaxRequest generates a "aws/request.Request" representing the
2740// client's request for the DetectSyntax operation. The "output" return
2741// value will be populated with the request's response once the request completes
2742// successfully.
2743//
2744// Use "Send" method on the returned Request to send the API call to the service.
2745// the "output" return value is not valid until after Send returns without error.
2746//
2747// See DetectSyntax for more information on using the DetectSyntax
2748// API call, and error handling.
2749//
2750// This method is useful when you want to inject custom logic or configuration
2751// into the SDK's request lifecycle. Such as custom headers, or retry logic.
2752//
2753//
2754//    // Example sending a request using the DetectSyntaxRequest method.
2755//    req, resp := client.DetectSyntaxRequest(params)
2756//
2757//    err := req.Send()
2758//    if err == nil { // resp is now filled
2759//        fmt.Println(resp)
2760//    }
2761//
2762// See also, https://docs.aws.amazon.com/goto/WebAPI/comprehend-2017-11-27/DetectSyntax
2763func (c *Comprehend) DetectSyntaxRequest(input *DetectSyntaxInput) (req *request.Request, output *DetectSyntaxOutput) {
2764	op := &request.Operation{
2765		Name:       opDetectSyntax,
2766		HTTPMethod: "POST",
2767		HTTPPath:   "/",
2768	}
2769
2770	if input == nil {
2771		input = &DetectSyntaxInput{}
2772	}
2773
2774	output = &DetectSyntaxOutput{}
2775	req = c.newRequest(op, input, output)
2776	return
2777}
2778
2779// DetectSyntax API operation for Amazon Comprehend.
2780//
2781// Inspects text for syntax and the part of speech of words in the document.
2782// For more information, how-syntax.
2783//
2784// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
2785// with awserr.Error's Code and Message methods to get detailed information about
2786// the error.
2787//
2788// See the AWS API reference guide for Amazon Comprehend's
2789// API operation DetectSyntax for usage and error information.
2790//
2791// Returned Error Types:
2792//   * InvalidRequestException
2793//   The request is invalid.
2794//
2795//   * TextSizeLimitExceededException
2796//   The size of the input text exceeds the limit. Use a smaller document.
2797//
2798//   * UnsupportedLanguageException
2799//   Amazon Comprehend can't process the language of the input text. For custom
2800//   entity recognition APIs, only English, Spanish, French, Italian, German,
2801//   or Portuguese are accepted. For a list of supported languages, see supported-languages.
2802//
2803//   * InternalServerException
2804//   An internal server error occurred. Retry your request.
2805//
2806// See also, https://docs.aws.amazon.com/goto/WebAPI/comprehend-2017-11-27/DetectSyntax
2807func (c *Comprehend) DetectSyntax(input *DetectSyntaxInput) (*DetectSyntaxOutput, error) {
2808	req, out := c.DetectSyntaxRequest(input)
2809	return out, req.Send()
2810}
2811
2812// DetectSyntaxWithContext is the same as DetectSyntax with the addition of
2813// the ability to pass a context and additional request options.
2814//
2815// See DetectSyntax for details on how to use this API operation.
2816//
2817// The context must be non-nil and will be used for request cancellation. If
2818// the context is nil a panic will occur. In the future the SDK may create
2819// sub-contexts for http.Requests. See https://golang.org/pkg/context/
2820// for more information on using Contexts.
2821func (c *Comprehend) DetectSyntaxWithContext(ctx aws.Context, input *DetectSyntaxInput, opts ...request.Option) (*DetectSyntaxOutput, error) {
2822	req, out := c.DetectSyntaxRequest(input)
2823	req.SetContext(ctx)
2824	req.ApplyOptions(opts...)
2825	return out, req.Send()
2826}
2827
2828const opListDocumentClassificationJobs = "ListDocumentClassificationJobs"
2829
2830// ListDocumentClassificationJobsRequest generates a "aws/request.Request" representing the
2831// client's request for the ListDocumentClassificationJobs operation. The "output" return
2832// value will be populated with the request's response once the request completes
2833// successfully.
2834//
2835// Use "Send" method on the returned Request to send the API call to the service.
2836// the "output" return value is not valid until after Send returns without error.
2837//
2838// See ListDocumentClassificationJobs for more information on using the ListDocumentClassificationJobs
2839// API call, and error handling.
2840//
2841// This method is useful when you want to inject custom logic or configuration
2842// into the SDK's request lifecycle. Such as custom headers, or retry logic.
2843//
2844//
2845//    // Example sending a request using the ListDocumentClassificationJobsRequest method.
2846//    req, resp := client.ListDocumentClassificationJobsRequest(params)
2847//
2848//    err := req.Send()
2849//    if err == nil { // resp is now filled
2850//        fmt.Println(resp)
2851//    }
2852//
2853// See also, https://docs.aws.amazon.com/goto/WebAPI/comprehend-2017-11-27/ListDocumentClassificationJobs
2854func (c *Comprehend) ListDocumentClassificationJobsRequest(input *ListDocumentClassificationJobsInput) (req *request.Request, output *ListDocumentClassificationJobsOutput) {
2855	op := &request.Operation{
2856		Name:       opListDocumentClassificationJobs,
2857		HTTPMethod: "POST",
2858		HTTPPath:   "/",
2859		Paginator: &request.Paginator{
2860			InputTokens:     []string{"NextToken"},
2861			OutputTokens:    []string{"NextToken"},
2862			LimitToken:      "MaxResults",
2863			TruncationToken: "",
2864		},
2865	}
2866
2867	if input == nil {
2868		input = &ListDocumentClassificationJobsInput{}
2869	}
2870
2871	output = &ListDocumentClassificationJobsOutput{}
2872	req = c.newRequest(op, input, output)
2873	return
2874}
2875
2876// ListDocumentClassificationJobs API operation for Amazon Comprehend.
2877//
2878// Gets a list of the documentation classification jobs that you have submitted.
2879//
2880// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
2881// with awserr.Error's Code and Message methods to get detailed information about
2882// the error.
2883//
2884// See the AWS API reference guide for Amazon Comprehend's
2885// API operation ListDocumentClassificationJobs for usage and error information.
2886//
2887// Returned Error Types:
2888//   * InvalidRequestException
2889//   The request is invalid.
2890//
2891//   * TooManyRequestsException
2892//   The number of requests exceeds the limit. Resubmit your request later.
2893//
2894//   * InvalidFilterException
2895//   The filter specified for the operation is invalid. Specify a different filter.
2896//
2897//   * InternalServerException
2898//   An internal server error occurred. Retry your request.
2899//
2900// See also, https://docs.aws.amazon.com/goto/WebAPI/comprehend-2017-11-27/ListDocumentClassificationJobs
2901func (c *Comprehend) ListDocumentClassificationJobs(input *ListDocumentClassificationJobsInput) (*ListDocumentClassificationJobsOutput, error) {
2902	req, out := c.ListDocumentClassificationJobsRequest(input)
2903	return out, req.Send()
2904}
2905
2906// ListDocumentClassificationJobsWithContext is the same as ListDocumentClassificationJobs with the addition of
2907// the ability to pass a context and additional request options.
2908//
2909// See ListDocumentClassificationJobs for details on how to use this API operation.
2910//
2911// The context must be non-nil and will be used for request cancellation. If
2912// the context is nil a panic will occur. In the future the SDK may create
2913// sub-contexts for http.Requests. See https://golang.org/pkg/context/
2914// for more information on using Contexts.
2915func (c *Comprehend) ListDocumentClassificationJobsWithContext(ctx aws.Context, input *ListDocumentClassificationJobsInput, opts ...request.Option) (*ListDocumentClassificationJobsOutput, error) {
2916	req, out := c.ListDocumentClassificationJobsRequest(input)
2917	req.SetContext(ctx)
2918	req.ApplyOptions(opts...)
2919	return out, req.Send()
2920}
2921
2922// ListDocumentClassificationJobsPages iterates over the pages of a ListDocumentClassificationJobs operation,
2923// calling the "fn" function with the response data for each page. To stop
2924// iterating, return false from the fn function.
2925//
2926// See ListDocumentClassificationJobs method for more information on how to use this operation.
2927//
2928// Note: This operation can generate multiple requests to a service.
2929//
2930//    // Example iterating over at most 3 pages of a ListDocumentClassificationJobs operation.
2931//    pageNum := 0
2932//    err := client.ListDocumentClassificationJobsPages(params,
2933//        func(page *comprehend.ListDocumentClassificationJobsOutput, lastPage bool) bool {
2934//            pageNum++
2935//            fmt.Println(page)
2936//            return pageNum <= 3
2937//        })
2938//
2939func (c *Comprehend) ListDocumentClassificationJobsPages(input *ListDocumentClassificationJobsInput, fn func(*ListDocumentClassificationJobsOutput, bool) bool) error {
2940	return c.ListDocumentClassificationJobsPagesWithContext(aws.BackgroundContext(), input, fn)
2941}
2942
2943// ListDocumentClassificationJobsPagesWithContext same as ListDocumentClassificationJobsPages except
2944// it takes a Context and allows setting request options on the pages.
2945//
2946// The context must be non-nil and will be used for request cancellation. If
2947// the context is nil a panic will occur. In the future the SDK may create
2948// sub-contexts for http.Requests. See https://golang.org/pkg/context/
2949// for more information on using Contexts.
2950func (c *Comprehend) ListDocumentClassificationJobsPagesWithContext(ctx aws.Context, input *ListDocumentClassificationJobsInput, fn func(*ListDocumentClassificationJobsOutput, bool) bool, opts ...request.Option) error {
2951	p := request.Pagination{
2952		NewRequest: func() (*request.Request, error) {
2953			var inCpy *ListDocumentClassificationJobsInput
2954			if input != nil {
2955				tmp := *input
2956				inCpy = &tmp
2957			}
2958			req, _ := c.ListDocumentClassificationJobsRequest(inCpy)
2959			req.SetContext(ctx)
2960			req.ApplyOptions(opts...)
2961			return req, nil
2962		},
2963	}
2964
2965	for p.Next() {
2966		if !fn(p.Page().(*ListDocumentClassificationJobsOutput), !p.HasNextPage()) {
2967			break
2968		}
2969	}
2970
2971	return p.Err()
2972}
2973
2974const opListDocumentClassifierSummaries = "ListDocumentClassifierSummaries"
2975
2976// ListDocumentClassifierSummariesRequest generates a "aws/request.Request" representing the
2977// client's request for the ListDocumentClassifierSummaries operation. The "output" return
2978// value will be populated with the request's response once the request completes
2979// successfully.
2980//
2981// Use "Send" method on the returned Request to send the API call to the service.
2982// the "output" return value is not valid until after Send returns without error.
2983//
2984// See ListDocumentClassifierSummaries for more information on using the ListDocumentClassifierSummaries
2985// API call, and error handling.
2986//
2987// This method is useful when you want to inject custom logic or configuration
2988// into the SDK's request lifecycle. Such as custom headers, or retry logic.
2989//
2990//
2991//    // Example sending a request using the ListDocumentClassifierSummariesRequest method.
2992//    req, resp := client.ListDocumentClassifierSummariesRequest(params)
2993//
2994//    err := req.Send()
2995//    if err == nil { // resp is now filled
2996//        fmt.Println(resp)
2997//    }
2998//
2999// See also, https://docs.aws.amazon.com/goto/WebAPI/comprehend-2017-11-27/ListDocumentClassifierSummaries
3000func (c *Comprehend) ListDocumentClassifierSummariesRequest(input *ListDocumentClassifierSummariesInput) (req *request.Request, output *ListDocumentClassifierSummariesOutput) {
3001	op := &request.Operation{
3002		Name:       opListDocumentClassifierSummaries,
3003		HTTPMethod: "POST",
3004		HTTPPath:   "/",
3005		Paginator: &request.Paginator{
3006			InputTokens:     []string{"NextToken"},
3007			OutputTokens:    []string{"NextToken"},
3008			LimitToken:      "MaxResults",
3009			TruncationToken: "",
3010		},
3011	}
3012
3013	if input == nil {
3014		input = &ListDocumentClassifierSummariesInput{}
3015	}
3016
3017	output = &ListDocumentClassifierSummariesOutput{}
3018	req = c.newRequest(op, input, output)
3019	return
3020}
3021
3022// ListDocumentClassifierSummaries API operation for Amazon Comprehend.
3023//
3024// Gets a list of summaries of the document classifiers that you have created
3025//
3026// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
3027// with awserr.Error's Code and Message methods to get detailed information about
3028// the error.
3029//
3030// See the AWS API reference guide for Amazon Comprehend's
3031// API operation ListDocumentClassifierSummaries for usage and error information.
3032//
3033// Returned Error Types:
3034//   * InvalidRequestException
3035//   The request is invalid.
3036//
3037//   * TooManyRequestsException
3038//   The number of requests exceeds the limit. Resubmit your request later.
3039//
3040//   * InternalServerException
3041//   An internal server error occurred. Retry your request.
3042//
3043// See also, https://docs.aws.amazon.com/goto/WebAPI/comprehend-2017-11-27/ListDocumentClassifierSummaries
3044func (c *Comprehend) ListDocumentClassifierSummaries(input *ListDocumentClassifierSummariesInput) (*ListDocumentClassifierSummariesOutput, error) {
3045	req, out := c.ListDocumentClassifierSummariesRequest(input)
3046	return out, req.Send()
3047}
3048
3049// ListDocumentClassifierSummariesWithContext is the same as ListDocumentClassifierSummaries with the addition of
3050// the ability to pass a context and additional request options.
3051//
3052// See ListDocumentClassifierSummaries for details on how to use this API operation.
3053//
3054// The context must be non-nil and will be used for request cancellation. If
3055// the context is nil a panic will occur. In the future the SDK may create
3056// sub-contexts for http.Requests. See https://golang.org/pkg/context/
3057// for more information on using Contexts.
3058func (c *Comprehend) ListDocumentClassifierSummariesWithContext(ctx aws.Context, input *ListDocumentClassifierSummariesInput, opts ...request.Option) (*ListDocumentClassifierSummariesOutput, error) {
3059	req, out := c.ListDocumentClassifierSummariesRequest(input)
3060	req.SetContext(ctx)
3061	req.ApplyOptions(opts...)
3062	return out, req.Send()
3063}
3064
3065// ListDocumentClassifierSummariesPages iterates over the pages of a ListDocumentClassifierSummaries operation,
3066// calling the "fn" function with the response data for each page. To stop
3067// iterating, return false from the fn function.
3068//
3069// See ListDocumentClassifierSummaries method for more information on how to use this operation.
3070//
3071// Note: This operation can generate multiple requests to a service.
3072//
3073//    // Example iterating over at most 3 pages of a ListDocumentClassifierSummaries operation.
3074//    pageNum := 0
3075//    err := client.ListDocumentClassifierSummariesPages(params,
3076//        func(page *comprehend.ListDocumentClassifierSummariesOutput, lastPage bool) bool {
3077//            pageNum++
3078//            fmt.Println(page)
3079//            return pageNum <= 3
3080//        })
3081//
3082func (c *Comprehend) ListDocumentClassifierSummariesPages(input *ListDocumentClassifierSummariesInput, fn func(*ListDocumentClassifierSummariesOutput, bool) bool) error {
3083	return c.ListDocumentClassifierSummariesPagesWithContext(aws.BackgroundContext(), input, fn)
3084}
3085
3086// ListDocumentClassifierSummariesPagesWithContext same as ListDocumentClassifierSummariesPages except
3087// it takes a Context and allows setting request options on the pages.
3088//
3089// The context must be non-nil and will be used for request cancellation. If
3090// the context is nil a panic will occur. In the future the SDK may create
3091// sub-contexts for http.Requests. See https://golang.org/pkg/context/
3092// for more information on using Contexts.
3093func (c *Comprehend) ListDocumentClassifierSummariesPagesWithContext(ctx aws.Context, input *ListDocumentClassifierSummariesInput, fn func(*ListDocumentClassifierSummariesOutput, bool) bool, opts ...request.Option) error {
3094	p := request.Pagination{
3095		NewRequest: func() (*request.Request, error) {
3096			var inCpy *ListDocumentClassifierSummariesInput
3097			if input != nil {
3098				tmp := *input
3099				inCpy = &tmp
3100			}
3101			req, _ := c.ListDocumentClassifierSummariesRequest(inCpy)
3102			req.SetContext(ctx)
3103			req.ApplyOptions(opts...)
3104			return req, nil
3105		},
3106	}
3107
3108	for p.Next() {
3109		if !fn(p.Page().(*ListDocumentClassifierSummariesOutput), !p.HasNextPage()) {
3110			break
3111		}
3112	}
3113
3114	return p.Err()
3115}
3116
3117const opListDocumentClassifiers = "ListDocumentClassifiers"
3118
3119// ListDocumentClassifiersRequest generates a "aws/request.Request" representing the
3120// client's request for the ListDocumentClassifiers operation. The "output" return
3121// value will be populated with the request's response once the request completes
3122// successfully.
3123//
3124// Use "Send" method on the returned Request to send the API call to the service.
3125// the "output" return value is not valid until after Send returns without error.
3126//
3127// See ListDocumentClassifiers for more information on using the ListDocumentClassifiers
3128// API call, and error handling.
3129//
3130// This method is useful when you want to inject custom logic or configuration
3131// into the SDK's request lifecycle. Such as custom headers, or retry logic.
3132//
3133//
3134//    // Example sending a request using the ListDocumentClassifiersRequest method.
3135//    req, resp := client.ListDocumentClassifiersRequest(params)
3136//
3137//    err := req.Send()
3138//    if err == nil { // resp is now filled
3139//        fmt.Println(resp)
3140//    }
3141//
3142// See also, https://docs.aws.amazon.com/goto/WebAPI/comprehend-2017-11-27/ListDocumentClassifiers
3143func (c *Comprehend) ListDocumentClassifiersRequest(input *ListDocumentClassifiersInput) (req *request.Request, output *ListDocumentClassifiersOutput) {
3144	op := &request.Operation{
3145		Name:       opListDocumentClassifiers,
3146		HTTPMethod: "POST",
3147		HTTPPath:   "/",
3148		Paginator: &request.Paginator{
3149			InputTokens:     []string{"NextToken"},
3150			OutputTokens:    []string{"NextToken"},
3151			LimitToken:      "MaxResults",
3152			TruncationToken: "",
3153		},
3154	}
3155
3156	if input == nil {
3157		input = &ListDocumentClassifiersInput{}
3158	}
3159
3160	output = &ListDocumentClassifiersOutput{}
3161	req = c.newRequest(op, input, output)
3162	return
3163}
3164
3165// ListDocumentClassifiers API operation for Amazon Comprehend.
3166//
3167// Gets a list of the document classifiers that you have created.
3168//
3169// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
3170// with awserr.Error's Code and Message methods to get detailed information about
3171// the error.
3172//
3173// See the AWS API reference guide for Amazon Comprehend's
3174// API operation ListDocumentClassifiers for usage and error information.
3175//
3176// Returned Error Types:
3177//   * InvalidRequestException
3178//   The request is invalid.
3179//
3180//   * TooManyRequestsException
3181//   The number of requests exceeds the limit. Resubmit your request later.
3182//
3183//   * InvalidFilterException
3184//   The filter specified for the operation is invalid. Specify a different filter.
3185//
3186//   * InternalServerException
3187//   An internal server error occurred. Retry your request.
3188//
3189// See also, https://docs.aws.amazon.com/goto/WebAPI/comprehend-2017-11-27/ListDocumentClassifiers
3190func (c *Comprehend) ListDocumentClassifiers(input *ListDocumentClassifiersInput) (*ListDocumentClassifiersOutput, error) {
3191	req, out := c.ListDocumentClassifiersRequest(input)
3192	return out, req.Send()
3193}
3194
3195// ListDocumentClassifiersWithContext is the same as ListDocumentClassifiers with the addition of
3196// the ability to pass a context and additional request options.
3197//
3198// See ListDocumentClassifiers for details on how to use this API operation.
3199//
3200// The context must be non-nil and will be used for request cancellation. If
3201// the context is nil a panic will occur. In the future the SDK may create
3202// sub-contexts for http.Requests. See https://golang.org/pkg/context/
3203// for more information on using Contexts.
3204func (c *Comprehend) ListDocumentClassifiersWithContext(ctx aws.Context, input *ListDocumentClassifiersInput, opts ...request.Option) (*ListDocumentClassifiersOutput, error) {
3205	req, out := c.ListDocumentClassifiersRequest(input)
3206	req.SetContext(ctx)
3207	req.ApplyOptions(opts...)
3208	return out, req.Send()
3209}
3210
3211// ListDocumentClassifiersPages iterates over the pages of a ListDocumentClassifiers operation,
3212// calling the "fn" function with the response data for each page. To stop
3213// iterating, return false from the fn function.
3214//
3215// See ListDocumentClassifiers method for more information on how to use this operation.
3216//
3217// Note: This operation can generate multiple requests to a service.
3218//
3219//    // Example iterating over at most 3 pages of a ListDocumentClassifiers operation.
3220//    pageNum := 0
3221//    err := client.ListDocumentClassifiersPages(params,
3222//        func(page *comprehend.ListDocumentClassifiersOutput, lastPage bool) bool {
3223//            pageNum++
3224//            fmt.Println(page)
3225//            return pageNum <= 3
3226//        })
3227//
3228func (c *Comprehend) ListDocumentClassifiersPages(input *ListDocumentClassifiersInput, fn func(*ListDocumentClassifiersOutput, bool) bool) error {
3229	return c.ListDocumentClassifiersPagesWithContext(aws.BackgroundContext(), input, fn)
3230}
3231
3232// ListDocumentClassifiersPagesWithContext same as ListDocumentClassifiersPages except
3233// it takes a Context and allows setting request options on the pages.
3234//
3235// The context must be non-nil and will be used for request cancellation. If
3236// the context is nil a panic will occur. In the future the SDK may create
3237// sub-contexts for http.Requests. See https://golang.org/pkg/context/
3238// for more information on using Contexts.
3239func (c *Comprehend) ListDocumentClassifiersPagesWithContext(ctx aws.Context, input *ListDocumentClassifiersInput, fn func(*ListDocumentClassifiersOutput, bool) bool, opts ...request.Option) error {
3240	p := request.Pagination{
3241		NewRequest: func() (*request.Request, error) {
3242			var inCpy *ListDocumentClassifiersInput
3243			if input != nil {
3244				tmp := *input
3245				inCpy = &tmp
3246			}
3247			req, _ := c.ListDocumentClassifiersRequest(inCpy)
3248			req.SetContext(ctx)
3249			req.ApplyOptions(opts...)
3250			return req, nil
3251		},
3252	}
3253
3254	for p.Next() {
3255		if !fn(p.Page().(*ListDocumentClassifiersOutput), !p.HasNextPage()) {
3256			break
3257		}
3258	}
3259
3260	return p.Err()
3261}
3262
3263const opListDominantLanguageDetectionJobs = "ListDominantLanguageDetectionJobs"
3264
3265// ListDominantLanguageDetectionJobsRequest generates a "aws/request.Request" representing the
3266// client's request for the ListDominantLanguageDetectionJobs operation. The "output" return
3267// value will be populated with the request's response once the request completes
3268// successfully.
3269//
3270// Use "Send" method on the returned Request to send the API call to the service.
3271// the "output" return value is not valid until after Send returns without error.
3272//
3273// See ListDominantLanguageDetectionJobs for more information on using the ListDominantLanguageDetectionJobs
3274// API call, and error handling.
3275//
3276// This method is useful when you want to inject custom logic or configuration
3277// into the SDK's request lifecycle. Such as custom headers, or retry logic.
3278//
3279//
3280//    // Example sending a request using the ListDominantLanguageDetectionJobsRequest method.
3281//    req, resp := client.ListDominantLanguageDetectionJobsRequest(params)
3282//
3283//    err := req.Send()
3284//    if err == nil { // resp is now filled
3285//        fmt.Println(resp)
3286//    }
3287//
3288// See also, https://docs.aws.amazon.com/goto/WebAPI/comprehend-2017-11-27/ListDominantLanguageDetectionJobs
3289func (c *Comprehend) ListDominantLanguageDetectionJobsRequest(input *ListDominantLanguageDetectionJobsInput) (req *request.Request, output *ListDominantLanguageDetectionJobsOutput) {
3290	op := &request.Operation{
3291		Name:       opListDominantLanguageDetectionJobs,
3292		HTTPMethod: "POST",
3293		HTTPPath:   "/",
3294		Paginator: &request.Paginator{
3295			InputTokens:     []string{"NextToken"},
3296			OutputTokens:    []string{"NextToken"},
3297			LimitToken:      "MaxResults",
3298			TruncationToken: "",
3299		},
3300	}
3301
3302	if input == nil {
3303		input = &ListDominantLanguageDetectionJobsInput{}
3304	}
3305
3306	output = &ListDominantLanguageDetectionJobsOutput{}
3307	req = c.newRequest(op, input, output)
3308	return
3309}
3310
3311// ListDominantLanguageDetectionJobs API operation for Amazon Comprehend.
3312//
3313// Gets a list of the dominant language detection jobs that you have submitted.
3314//
3315// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
3316// with awserr.Error's Code and Message methods to get detailed information about
3317// the error.
3318//
3319// See the AWS API reference guide for Amazon Comprehend's
3320// API operation ListDominantLanguageDetectionJobs for usage and error information.
3321//
3322// Returned Error Types:
3323//   * InvalidRequestException
3324//   The request is invalid.
3325//
3326//   * TooManyRequestsException
3327//   The number of requests exceeds the limit. Resubmit your request later.
3328//
3329//   * InvalidFilterException
3330//   The filter specified for the operation is invalid. Specify a different filter.
3331//
3332//   * InternalServerException
3333//   An internal server error occurred. Retry your request.
3334//
3335// See also, https://docs.aws.amazon.com/goto/WebAPI/comprehend-2017-11-27/ListDominantLanguageDetectionJobs
3336func (c *Comprehend) ListDominantLanguageDetectionJobs(input *ListDominantLanguageDetectionJobsInput) (*ListDominantLanguageDetectionJobsOutput, error) {
3337	req, out := c.ListDominantLanguageDetectionJobsRequest(input)
3338	return out, req.Send()
3339}
3340
3341// ListDominantLanguageDetectionJobsWithContext is the same as ListDominantLanguageDetectionJobs with the addition of
3342// the ability to pass a context and additional request options.
3343//
3344// See ListDominantLanguageDetectionJobs for details on how to use this API operation.
3345//
3346// The context must be non-nil and will be used for request cancellation. If
3347// the context is nil a panic will occur. In the future the SDK may create
3348// sub-contexts for http.Requests. See https://golang.org/pkg/context/
3349// for more information on using Contexts.
3350func (c *Comprehend) ListDominantLanguageDetectionJobsWithContext(ctx aws.Context, input *ListDominantLanguageDetectionJobsInput, opts ...request.Option) (*ListDominantLanguageDetectionJobsOutput, error) {
3351	req, out := c.ListDominantLanguageDetectionJobsRequest(input)
3352	req.SetContext(ctx)
3353	req.ApplyOptions(opts...)
3354	return out, req.Send()
3355}
3356
3357// ListDominantLanguageDetectionJobsPages iterates over the pages of a ListDominantLanguageDetectionJobs operation,
3358// calling the "fn" function with the response data for each page. To stop
3359// iterating, return false from the fn function.
3360//
3361// See ListDominantLanguageDetectionJobs method for more information on how to use this operation.
3362//
3363// Note: This operation can generate multiple requests to a service.
3364//
3365//    // Example iterating over at most 3 pages of a ListDominantLanguageDetectionJobs operation.
3366//    pageNum := 0
3367//    err := client.ListDominantLanguageDetectionJobsPages(params,
3368//        func(page *comprehend.ListDominantLanguageDetectionJobsOutput, lastPage bool) bool {
3369//            pageNum++
3370//            fmt.Println(page)
3371//            return pageNum <= 3
3372//        })
3373//
3374func (c *Comprehend) ListDominantLanguageDetectionJobsPages(input *ListDominantLanguageDetectionJobsInput, fn func(*ListDominantLanguageDetectionJobsOutput, bool) bool) error {
3375	return c.ListDominantLanguageDetectionJobsPagesWithContext(aws.BackgroundContext(), input, fn)
3376}
3377
3378// ListDominantLanguageDetectionJobsPagesWithContext same as ListDominantLanguageDetectionJobsPages except
3379// it takes a Context and allows setting request options on the pages.
3380//
3381// The context must be non-nil and will be used for request cancellation. If
3382// the context is nil a panic will occur. In the future the SDK may create
3383// sub-contexts for http.Requests. See https://golang.org/pkg/context/
3384// for more information on using Contexts.
3385func (c *Comprehend) ListDominantLanguageDetectionJobsPagesWithContext(ctx aws.Context, input *ListDominantLanguageDetectionJobsInput, fn func(*ListDominantLanguageDetectionJobsOutput, bool) bool, opts ...request.Option) error {
3386	p := request.Pagination{
3387		NewRequest: func() (*request.Request, error) {
3388			var inCpy *ListDominantLanguageDetectionJobsInput
3389			if input != nil {
3390				tmp := *input
3391				inCpy = &tmp
3392			}
3393			req, _ := c.ListDominantLanguageDetectionJobsRequest(inCpy)
3394			req.SetContext(ctx)
3395			req.ApplyOptions(opts...)
3396			return req, nil
3397		},
3398	}
3399
3400	for p.Next() {
3401		if !fn(p.Page().(*ListDominantLanguageDetectionJobsOutput), !p.HasNextPage()) {
3402			break
3403		}
3404	}
3405
3406	return p.Err()
3407}
3408
3409const opListEndpoints = "ListEndpoints"
3410
3411// ListEndpointsRequest generates a "aws/request.Request" representing the
3412// client's request for the ListEndpoints operation. The "output" return
3413// value will be populated with the request's response once the request completes
3414// successfully.
3415//
3416// Use "Send" method on the returned Request to send the API call to the service.
3417// the "output" return value is not valid until after Send returns without error.
3418//
3419// See ListEndpoints for more information on using the ListEndpoints
3420// API call, and error handling.
3421//
3422// This method is useful when you want to inject custom logic or configuration
3423// into the SDK's request lifecycle. Such as custom headers, or retry logic.
3424//
3425//
3426//    // Example sending a request using the ListEndpointsRequest method.
3427//    req, resp := client.ListEndpointsRequest(params)
3428//
3429//    err := req.Send()
3430//    if err == nil { // resp is now filled
3431//        fmt.Println(resp)
3432//    }
3433//
3434// See also, https://docs.aws.amazon.com/goto/WebAPI/comprehend-2017-11-27/ListEndpoints
3435func (c *Comprehend) ListEndpointsRequest(input *ListEndpointsInput) (req *request.Request, output *ListEndpointsOutput) {
3436	op := &request.Operation{
3437		Name:       opListEndpoints,
3438		HTTPMethod: "POST",
3439		HTTPPath:   "/",
3440	}
3441
3442	if input == nil {
3443		input = &ListEndpointsInput{}
3444	}
3445
3446	output = &ListEndpointsOutput{}
3447	req = c.newRequest(op, input, output)
3448	return
3449}
3450
3451// ListEndpoints API operation for Amazon Comprehend.
3452//
3453// Gets a list of all existing endpoints that you've created.
3454//
3455// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
3456// with awserr.Error's Code and Message methods to get detailed information about
3457// the error.
3458//
3459// See the AWS API reference guide for Amazon Comprehend's
3460// API operation ListEndpoints for usage and error information.
3461//
3462// Returned Error Types:
3463//   * InvalidRequestException
3464//   The request is invalid.
3465//
3466//   * TooManyRequestsException
3467//   The number of requests exceeds the limit. Resubmit your request later.
3468//
3469//   * InternalServerException
3470//   An internal server error occurred. Retry your request.
3471//
3472// See also, https://docs.aws.amazon.com/goto/WebAPI/comprehend-2017-11-27/ListEndpoints
3473func (c *Comprehend) ListEndpoints(input *ListEndpointsInput) (*ListEndpointsOutput, error) {
3474	req, out := c.ListEndpointsRequest(input)
3475	return out, req.Send()
3476}
3477
3478// ListEndpointsWithContext is the same as ListEndpoints with the addition of
3479// the ability to pass a context and additional request options.
3480//
3481// See ListEndpoints for details on how to use this API operation.
3482//
3483// The context must be non-nil and will be used for request cancellation. If
3484// the context is nil a panic will occur. In the future the SDK may create
3485// sub-contexts for http.Requests. See https://golang.org/pkg/context/
3486// for more information on using Contexts.
3487func (c *Comprehend) ListEndpointsWithContext(ctx aws.Context, input *ListEndpointsInput, opts ...request.Option) (*ListEndpointsOutput, error) {
3488	req, out := c.ListEndpointsRequest(input)
3489	req.SetContext(ctx)
3490	req.ApplyOptions(opts...)
3491	return out, req.Send()
3492}
3493
3494const opListEntitiesDetectionJobs = "ListEntitiesDetectionJobs"
3495
3496// ListEntitiesDetectionJobsRequest generates a "aws/request.Request" representing the
3497// client's request for the ListEntitiesDetectionJobs operation. The "output" return
3498// value will be populated with the request's response once the request completes
3499// successfully.
3500//
3501// Use "Send" method on the returned Request to send the API call to the service.
3502// the "output" return value is not valid until after Send returns without error.
3503//
3504// See ListEntitiesDetectionJobs for more information on using the ListEntitiesDetectionJobs
3505// API call, and error handling.
3506//
3507// This method is useful when you want to inject custom logic or configuration
3508// into the SDK's request lifecycle. Such as custom headers, or retry logic.
3509//
3510//
3511//    // Example sending a request using the ListEntitiesDetectionJobsRequest method.
3512//    req, resp := client.ListEntitiesDetectionJobsRequest(params)
3513//
3514//    err := req.Send()
3515//    if err == nil { // resp is now filled
3516//        fmt.Println(resp)
3517//    }
3518//
3519// See also, https://docs.aws.amazon.com/goto/WebAPI/comprehend-2017-11-27/ListEntitiesDetectionJobs
3520func (c *Comprehend) ListEntitiesDetectionJobsRequest(input *ListEntitiesDetectionJobsInput) (req *request.Request, output *ListEntitiesDetectionJobsOutput) {
3521	op := &request.Operation{
3522		Name:       opListEntitiesDetectionJobs,
3523		HTTPMethod: "POST",
3524		HTTPPath:   "/",
3525		Paginator: &request.Paginator{
3526			InputTokens:     []string{"NextToken"},
3527			OutputTokens:    []string{"NextToken"},
3528			LimitToken:      "MaxResults",
3529			TruncationToken: "",
3530		},
3531	}
3532
3533	if input == nil {
3534		input = &ListEntitiesDetectionJobsInput{}
3535	}
3536
3537	output = &ListEntitiesDetectionJobsOutput{}
3538	req = c.newRequest(op, input, output)
3539	return
3540}
3541
3542// ListEntitiesDetectionJobs API operation for Amazon Comprehend.
3543//
3544// Gets a list of the entity detection jobs that you have submitted.
3545//
3546// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
3547// with awserr.Error's Code and Message methods to get detailed information about
3548// the error.
3549//
3550// See the AWS API reference guide for Amazon Comprehend's
3551// API operation ListEntitiesDetectionJobs for usage and error information.
3552//
3553// Returned Error Types:
3554//   * InvalidRequestException
3555//   The request is invalid.
3556//
3557//   * TooManyRequestsException
3558//   The number of requests exceeds the limit. Resubmit your request later.
3559//
3560//   * InvalidFilterException
3561//   The filter specified for the operation is invalid. Specify a different filter.
3562//
3563//   * InternalServerException
3564//   An internal server error occurred. Retry your request.
3565//
3566// See also, https://docs.aws.amazon.com/goto/WebAPI/comprehend-2017-11-27/ListEntitiesDetectionJobs
3567func (c *Comprehend) ListEntitiesDetectionJobs(input *ListEntitiesDetectionJobsInput) (*ListEntitiesDetectionJobsOutput, error) {
3568	req, out := c.ListEntitiesDetectionJobsRequest(input)
3569	return out, req.Send()
3570}
3571
3572// ListEntitiesDetectionJobsWithContext is the same as ListEntitiesDetectionJobs with the addition of
3573// the ability to pass a context and additional request options.
3574//
3575// See ListEntitiesDetectionJobs for details on how to use this API operation.
3576//
3577// The context must be non-nil and will be used for request cancellation. If
3578// the context is nil a panic will occur. In the future the SDK may create
3579// sub-contexts for http.Requests. See https://golang.org/pkg/context/
3580// for more information on using Contexts.
3581func (c *Comprehend) ListEntitiesDetectionJobsWithContext(ctx aws.Context, input *ListEntitiesDetectionJobsInput, opts ...request.Option) (*ListEntitiesDetectionJobsOutput, error) {
3582	req, out := c.ListEntitiesDetectionJobsRequest(input)
3583	req.SetContext(ctx)
3584	req.ApplyOptions(opts...)
3585	return out, req.Send()
3586}
3587
3588// ListEntitiesDetectionJobsPages iterates over the pages of a ListEntitiesDetectionJobs operation,
3589// calling the "fn" function with the response data for each page. To stop
3590// iterating, return false from the fn function.
3591//
3592// See ListEntitiesDetectionJobs method for more information on how to use this operation.
3593//
3594// Note: This operation can generate multiple requests to a service.
3595//
3596//    // Example iterating over at most 3 pages of a ListEntitiesDetectionJobs operation.
3597//    pageNum := 0
3598//    err := client.ListEntitiesDetectionJobsPages(params,
3599//        func(page *comprehend.ListEntitiesDetectionJobsOutput, lastPage bool) bool {
3600//            pageNum++
3601//            fmt.Println(page)
3602//            return pageNum <= 3
3603//        })
3604//
3605func (c *Comprehend) ListEntitiesDetectionJobsPages(input *ListEntitiesDetectionJobsInput, fn func(*ListEntitiesDetectionJobsOutput, bool) bool) error {
3606	return c.ListEntitiesDetectionJobsPagesWithContext(aws.BackgroundContext(), input, fn)
3607}
3608
3609// ListEntitiesDetectionJobsPagesWithContext same as ListEntitiesDetectionJobsPages except
3610// it takes a Context and allows setting request options on the pages.
3611//
3612// The context must be non-nil and will be used for request cancellation. If
3613// the context is nil a panic will occur. In the future the SDK may create
3614// sub-contexts for http.Requests. See https://golang.org/pkg/context/
3615// for more information on using Contexts.
3616func (c *Comprehend) ListEntitiesDetectionJobsPagesWithContext(ctx aws.Context, input *ListEntitiesDetectionJobsInput, fn func(*ListEntitiesDetectionJobsOutput, bool) bool, opts ...request.Option) error {
3617	p := request.Pagination{
3618		NewRequest: func() (*request.Request, error) {
3619			var inCpy *ListEntitiesDetectionJobsInput
3620			if input != nil {
3621				tmp := *input
3622				inCpy = &tmp
3623			}
3624			req, _ := c.ListEntitiesDetectionJobsRequest(inCpy)
3625			req.SetContext(ctx)
3626			req.ApplyOptions(opts...)
3627			return req, nil
3628		},
3629	}
3630
3631	for p.Next() {
3632		if !fn(p.Page().(*ListEntitiesDetectionJobsOutput), !p.HasNextPage()) {
3633			break
3634		}
3635	}
3636
3637	return p.Err()
3638}
3639
3640const opListEntityRecognizerSummaries = "ListEntityRecognizerSummaries"
3641
3642// ListEntityRecognizerSummariesRequest generates a "aws/request.Request" representing the
3643// client's request for the ListEntityRecognizerSummaries operation. The "output" return
3644// value will be populated with the request's response once the request completes
3645// successfully.
3646//
3647// Use "Send" method on the returned Request to send the API call to the service.
3648// the "output" return value is not valid until after Send returns without error.
3649//
3650// See ListEntityRecognizerSummaries for more information on using the ListEntityRecognizerSummaries
3651// API call, and error handling.
3652//
3653// This method is useful when you want to inject custom logic or configuration
3654// into the SDK's request lifecycle. Such as custom headers, or retry logic.
3655//
3656//
3657//    // Example sending a request using the ListEntityRecognizerSummariesRequest method.
3658//    req, resp := client.ListEntityRecognizerSummariesRequest(params)
3659//
3660//    err := req.Send()
3661//    if err == nil { // resp is now filled
3662//        fmt.Println(resp)
3663//    }
3664//
3665// See also, https://docs.aws.amazon.com/goto/WebAPI/comprehend-2017-11-27/ListEntityRecognizerSummaries
3666func (c *Comprehend) ListEntityRecognizerSummariesRequest(input *ListEntityRecognizerSummariesInput) (req *request.Request, output *ListEntityRecognizerSummariesOutput) {
3667	op := &request.Operation{
3668		Name:       opListEntityRecognizerSummaries,
3669		HTTPMethod: "POST",
3670		HTTPPath:   "/",
3671		Paginator: &request.Paginator{
3672			InputTokens:     []string{"NextToken"},
3673			OutputTokens:    []string{"NextToken"},
3674			LimitToken:      "MaxResults",
3675			TruncationToken: "",
3676		},
3677	}
3678
3679	if input == nil {
3680		input = &ListEntityRecognizerSummariesInput{}
3681	}
3682
3683	output = &ListEntityRecognizerSummariesOutput{}
3684	req = c.newRequest(op, input, output)
3685	return
3686}
3687
3688// ListEntityRecognizerSummaries API operation for Amazon Comprehend.
3689//
3690// Gets a list of summaries for the entity recognizers that you have created.
3691//
3692// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
3693// with awserr.Error's Code and Message methods to get detailed information about
3694// the error.
3695//
3696// See the AWS API reference guide for Amazon Comprehend's
3697// API operation ListEntityRecognizerSummaries for usage and error information.
3698//
3699// Returned Error Types:
3700//   * InvalidRequestException
3701//   The request is invalid.
3702//
3703//   * TooManyRequestsException
3704//   The number of requests exceeds the limit. Resubmit your request later.
3705//
3706//   * InternalServerException
3707//   An internal server error occurred. Retry your request.
3708//
3709// See also, https://docs.aws.amazon.com/goto/WebAPI/comprehend-2017-11-27/ListEntityRecognizerSummaries
3710func (c *Comprehend) ListEntityRecognizerSummaries(input *ListEntityRecognizerSummariesInput) (*ListEntityRecognizerSummariesOutput, error) {
3711	req, out := c.ListEntityRecognizerSummariesRequest(input)
3712	return out, req.Send()
3713}
3714
3715// ListEntityRecognizerSummariesWithContext is the same as ListEntityRecognizerSummaries with the addition of
3716// the ability to pass a context and additional request options.
3717//
3718// See ListEntityRecognizerSummaries for details on how to use this API operation.
3719//
3720// The context must be non-nil and will be used for request cancellation. If
3721// the context is nil a panic will occur. In the future the SDK may create
3722// sub-contexts for http.Requests. See https://golang.org/pkg/context/
3723// for more information on using Contexts.
3724func (c *Comprehend) ListEntityRecognizerSummariesWithContext(ctx aws.Context, input *ListEntityRecognizerSummariesInput, opts ...request.Option) (*ListEntityRecognizerSummariesOutput, error) {
3725	req, out := c.ListEntityRecognizerSummariesRequest(input)
3726	req.SetContext(ctx)
3727	req.ApplyOptions(opts...)
3728	return out, req.Send()
3729}
3730
3731// ListEntityRecognizerSummariesPages iterates over the pages of a ListEntityRecognizerSummaries operation,
3732// calling the "fn" function with the response data for each page. To stop
3733// iterating, return false from the fn function.
3734//
3735// See ListEntityRecognizerSummaries method for more information on how to use this operation.
3736//
3737// Note: This operation can generate multiple requests to a service.
3738//
3739//    // Example iterating over at most 3 pages of a ListEntityRecognizerSummaries operation.
3740//    pageNum := 0
3741//    err := client.ListEntityRecognizerSummariesPages(params,
3742//        func(page *comprehend.ListEntityRecognizerSummariesOutput, lastPage bool) bool {
3743//            pageNum++
3744//            fmt.Println(page)
3745//            return pageNum <= 3
3746//        })
3747//
3748func (c *Comprehend) ListEntityRecognizerSummariesPages(input *ListEntityRecognizerSummariesInput, fn func(*ListEntityRecognizerSummariesOutput, bool) bool) error {
3749	return c.ListEntityRecognizerSummariesPagesWithContext(aws.BackgroundContext(), input, fn)
3750}
3751
3752// ListEntityRecognizerSummariesPagesWithContext same as ListEntityRecognizerSummariesPages except
3753// it takes a Context and allows setting request options on the pages.
3754//
3755// The context must be non-nil and will be used for request cancellation. If
3756// the context is nil a panic will occur. In the future the SDK may create
3757// sub-contexts for http.Requests. See https://golang.org/pkg/context/
3758// for more information on using Contexts.
3759func (c *Comprehend) ListEntityRecognizerSummariesPagesWithContext(ctx aws.Context, input *ListEntityRecognizerSummariesInput, fn func(*ListEntityRecognizerSummariesOutput, bool) bool, opts ...request.Option) error {
3760	p := request.Pagination{
3761		NewRequest: func() (*request.Request, error) {
3762			var inCpy *ListEntityRecognizerSummariesInput
3763			if input != nil {
3764				tmp := *input
3765				inCpy = &tmp
3766			}
3767			req, _ := c.ListEntityRecognizerSummariesRequest(inCpy)
3768			req.SetContext(ctx)
3769			req.ApplyOptions(opts...)
3770			return req, nil
3771		},
3772	}
3773
3774	for p.Next() {
3775		if !fn(p.Page().(*ListEntityRecognizerSummariesOutput), !p.HasNextPage()) {
3776			break
3777		}
3778	}
3779
3780	return p.Err()
3781}
3782
3783const opListEntityRecognizers = "ListEntityRecognizers"
3784
3785// ListEntityRecognizersRequest generates a "aws/request.Request" representing the
3786// client's request for the ListEntityRecognizers operation. The "output" return
3787// value will be populated with the request's response once the request completes
3788// successfully.
3789//
3790// Use "Send" method on the returned Request to send the API call to the service.
3791// the "output" return value is not valid until after Send returns without error.
3792//
3793// See ListEntityRecognizers for more information on using the ListEntityRecognizers
3794// API call, and error handling.
3795//
3796// This method is useful when you want to inject custom logic or configuration
3797// into the SDK's request lifecycle. Such as custom headers, or retry logic.
3798//
3799//
3800//    // Example sending a request using the ListEntityRecognizersRequest method.
3801//    req, resp := client.ListEntityRecognizersRequest(params)
3802//
3803//    err := req.Send()
3804//    if err == nil { // resp is now filled
3805//        fmt.Println(resp)
3806//    }
3807//
3808// See also, https://docs.aws.amazon.com/goto/WebAPI/comprehend-2017-11-27/ListEntityRecognizers
3809func (c *Comprehend) ListEntityRecognizersRequest(input *ListEntityRecognizersInput) (req *request.Request, output *ListEntityRecognizersOutput) {
3810	op := &request.Operation{
3811		Name:       opListEntityRecognizers,
3812		HTTPMethod: "POST",
3813		HTTPPath:   "/",
3814		Paginator: &request.Paginator{
3815			InputTokens:     []string{"NextToken"},
3816			OutputTokens:    []string{"NextToken"},
3817			LimitToken:      "MaxResults",
3818			TruncationToken: "",
3819		},
3820	}
3821
3822	if input == nil {
3823		input = &ListEntityRecognizersInput{}
3824	}
3825
3826	output = &ListEntityRecognizersOutput{}
3827	req = c.newRequest(op, input, output)
3828	return
3829}
3830
3831// ListEntityRecognizers API operation for Amazon Comprehend.
3832//
3833// Gets a list of the properties of all entity recognizers that you created,
3834// including recognizers currently in training. Allows you to filter the list
3835// of recognizers based on criteria such as status and submission time. This
3836// call returns up to 500 entity recognizers in the list, with a default number
3837// of 100 recognizers in the list.
3838//
3839// The results of this list are not in any particular order. Please get the
3840// list and sort locally if needed.
3841//
3842// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
3843// with awserr.Error's Code and Message methods to get detailed information about
3844// the error.
3845//
3846// See the AWS API reference guide for Amazon Comprehend's
3847// API operation ListEntityRecognizers for usage and error information.
3848//
3849// Returned Error Types:
3850//   * InvalidRequestException
3851//   The request is invalid.
3852//
3853//   * TooManyRequestsException
3854//   The number of requests exceeds the limit. Resubmit your request later.
3855//
3856//   * InvalidFilterException
3857//   The filter specified for the operation is invalid. Specify a different filter.
3858//
3859//   * InternalServerException
3860//   An internal server error occurred. Retry your request.
3861//
3862// See also, https://docs.aws.amazon.com/goto/WebAPI/comprehend-2017-11-27/ListEntityRecognizers
3863func (c *Comprehend) ListEntityRecognizers(input *ListEntityRecognizersInput) (*ListEntityRecognizersOutput, error) {
3864	req, out := c.ListEntityRecognizersRequest(input)
3865	return out, req.Send()
3866}
3867
3868// ListEntityRecognizersWithContext is the same as ListEntityRecognizers with the addition of
3869// the ability to pass a context and additional request options.
3870//
3871// See ListEntityRecognizers for details on how to use this API operation.
3872//
3873// The context must be non-nil and will be used for request cancellation. If
3874// the context is nil a panic will occur. In the future the SDK may create
3875// sub-contexts for http.Requests. See https://golang.org/pkg/context/
3876// for more information on using Contexts.
3877func (c *Comprehend) ListEntityRecognizersWithContext(ctx aws.Context, input *ListEntityRecognizersInput, opts ...request.Option) (*ListEntityRecognizersOutput, error) {
3878	req, out := c.ListEntityRecognizersRequest(input)
3879	req.SetContext(ctx)
3880	req.ApplyOptions(opts...)
3881	return out, req.Send()
3882}
3883
3884// ListEntityRecognizersPages iterates over the pages of a ListEntityRecognizers operation,
3885// calling the "fn" function with the response data for each page. To stop
3886// iterating, return false from the fn function.
3887//
3888// See ListEntityRecognizers method for more information on how to use this operation.
3889//
3890// Note: This operation can generate multiple requests to a service.
3891//
3892//    // Example iterating over at most 3 pages of a ListEntityRecognizers operation.
3893//    pageNum := 0
3894//    err := client.ListEntityRecognizersPages(params,
3895//        func(page *comprehend.ListEntityRecognizersOutput, lastPage bool) bool {
3896//            pageNum++
3897//            fmt.Println(page)
3898//            return pageNum <= 3
3899//        })
3900//
3901func (c *Comprehend) ListEntityRecognizersPages(input *ListEntityRecognizersInput, fn func(*ListEntityRecognizersOutput, bool) bool) error {
3902	return c.ListEntityRecognizersPagesWithContext(aws.BackgroundContext(), input, fn)
3903}
3904
3905// ListEntityRecognizersPagesWithContext same as ListEntityRecognizersPages except
3906// it takes a Context and allows setting request options on the pages.
3907//
3908// The context must be non-nil and will be used for request cancellation. If
3909// the context is nil a panic will occur. In the future the SDK may create
3910// sub-contexts for http.Requests. See https://golang.org/pkg/context/
3911// for more information on using Contexts.
3912func (c *Comprehend) ListEntityRecognizersPagesWithContext(ctx aws.Context, input *ListEntityRecognizersInput, fn func(*ListEntityRecognizersOutput, bool) bool, opts ...request.Option) error {
3913	p := request.Pagination{
3914		NewRequest: func() (*request.Request, error) {
3915			var inCpy *ListEntityRecognizersInput
3916			if input != nil {
3917				tmp := *input
3918				inCpy = &tmp
3919			}
3920			req, _ := c.ListEntityRecognizersRequest(inCpy)
3921			req.SetContext(ctx)
3922			req.ApplyOptions(opts...)
3923			return req, nil
3924		},
3925	}
3926
3927	for p.Next() {
3928		if !fn(p.Page().(*ListEntityRecognizersOutput), !p.HasNextPage()) {
3929			break
3930		}
3931	}
3932
3933	return p.Err()
3934}
3935
3936const opListEventsDetectionJobs = "ListEventsDetectionJobs"
3937
3938// ListEventsDetectionJobsRequest generates a "aws/request.Request" representing the
3939// client's request for the ListEventsDetectionJobs operation. The "output" return
3940// value will be populated with the request's response once the request completes
3941// successfully.
3942//
3943// Use "Send" method on the returned Request to send the API call to the service.
3944// the "output" return value is not valid until after Send returns without error.
3945//
3946// See ListEventsDetectionJobs for more information on using the ListEventsDetectionJobs
3947// API call, and error handling.
3948//
3949// This method is useful when you want to inject custom logic or configuration
3950// into the SDK's request lifecycle. Such as custom headers, or retry logic.
3951//
3952//
3953//    // Example sending a request using the ListEventsDetectionJobsRequest method.
3954//    req, resp := client.ListEventsDetectionJobsRequest(params)
3955//
3956//    err := req.Send()
3957//    if err == nil { // resp is now filled
3958//        fmt.Println(resp)
3959//    }
3960//
3961// See also, https://docs.aws.amazon.com/goto/WebAPI/comprehend-2017-11-27/ListEventsDetectionJobs
3962func (c *Comprehend) ListEventsDetectionJobsRequest(input *ListEventsDetectionJobsInput) (req *request.Request, output *ListEventsDetectionJobsOutput) {
3963	op := &request.Operation{
3964		Name:       opListEventsDetectionJobs,
3965		HTTPMethod: "POST",
3966		HTTPPath:   "/",
3967		Paginator: &request.Paginator{
3968			InputTokens:     []string{"NextToken"},
3969			OutputTokens:    []string{"NextToken"},
3970			LimitToken:      "MaxResults",
3971			TruncationToken: "",
3972		},
3973	}
3974
3975	if input == nil {
3976		input = &ListEventsDetectionJobsInput{}
3977	}
3978
3979	output = &ListEventsDetectionJobsOutput{}
3980	req = c.newRequest(op, input, output)
3981	return
3982}
3983
3984// ListEventsDetectionJobs API operation for Amazon Comprehend.
3985//
3986// Gets a list of the events detection jobs that you have submitted.
3987//
3988// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
3989// with awserr.Error's Code and Message methods to get detailed information about
3990// the error.
3991//
3992// See the AWS API reference guide for Amazon Comprehend's
3993// API operation ListEventsDetectionJobs for usage and error information.
3994//
3995// Returned Error Types:
3996//   * InvalidRequestException
3997//   The request is invalid.
3998//
3999//   * TooManyRequestsException
4000//   The number of requests exceeds the limit. Resubmit your request later.
4001//
4002//   * InvalidFilterException
4003//   The filter specified for the operation is invalid. Specify a different filter.
4004//
4005//   * InternalServerException
4006//   An internal server error occurred. Retry your request.
4007//
4008// See also, https://docs.aws.amazon.com/goto/WebAPI/comprehend-2017-11-27/ListEventsDetectionJobs
4009func (c *Comprehend) ListEventsDetectionJobs(input *ListEventsDetectionJobsInput) (*ListEventsDetectionJobsOutput, error) {
4010	req, out := c.ListEventsDetectionJobsRequest(input)
4011	return out, req.Send()
4012}
4013
4014// ListEventsDetectionJobsWithContext is the same as ListEventsDetectionJobs with the addition of
4015// the ability to pass a context and additional request options.
4016//
4017// See ListEventsDetectionJobs for details on how to use this API operation.
4018//
4019// The context must be non-nil and will be used for request cancellation. If
4020// the context is nil a panic will occur. In the future the SDK may create
4021// sub-contexts for http.Requests. See https://golang.org/pkg/context/
4022// for more information on using Contexts.
4023func (c *Comprehend) ListEventsDetectionJobsWithContext(ctx aws.Context, input *ListEventsDetectionJobsInput, opts ...request.Option) (*ListEventsDetectionJobsOutput, error) {
4024	req, out := c.ListEventsDetectionJobsRequest(input)
4025	req.SetContext(ctx)
4026	req.ApplyOptions(opts...)
4027	return out, req.Send()
4028}
4029
4030// ListEventsDetectionJobsPages iterates over the pages of a ListEventsDetectionJobs operation,
4031// calling the "fn" function with the response data for each page. To stop
4032// iterating, return false from the fn function.
4033//
4034// See ListEventsDetectionJobs method for more information on how to use this operation.
4035//
4036// Note: This operation can generate multiple requests to a service.
4037//
4038//    // Example iterating over at most 3 pages of a ListEventsDetectionJobs operation.
4039//    pageNum := 0
4040//    err := client.ListEventsDetectionJobsPages(params,
4041//        func(page *comprehend.ListEventsDetectionJobsOutput, lastPage bool) bool {
4042//            pageNum++
4043//            fmt.Println(page)
4044//            return pageNum <= 3
4045//        })
4046//
4047func (c *Comprehend) ListEventsDetectionJobsPages(input *ListEventsDetectionJobsInput, fn func(*ListEventsDetectionJobsOutput, bool) bool) error {
4048	return c.ListEventsDetectionJobsPagesWithContext(aws.BackgroundContext(), input, fn)
4049}
4050
4051// ListEventsDetectionJobsPagesWithContext same as ListEventsDetectionJobsPages except
4052// it takes a Context and allows setting request options on the pages.
4053//
4054// The context must be non-nil and will be used for request cancellation. If
4055// the context is nil a panic will occur. In the future the SDK may create
4056// sub-contexts for http.Requests. See https://golang.org/pkg/context/
4057// for more information on using Contexts.
4058func (c *Comprehend) ListEventsDetectionJobsPagesWithContext(ctx aws.Context, input *ListEventsDetectionJobsInput, fn func(*ListEventsDetectionJobsOutput, bool) bool, opts ...request.Option) error {
4059	p := request.Pagination{
4060		NewRequest: func() (*request.Request, error) {
4061			var inCpy *ListEventsDetectionJobsInput
4062			if input != nil {
4063				tmp := *input
4064				inCpy = &tmp
4065			}
4066			req, _ := c.ListEventsDetectionJobsRequest(inCpy)
4067			req.SetContext(ctx)
4068			req.ApplyOptions(opts...)
4069			return req, nil
4070		},
4071	}
4072
4073	for p.Next() {
4074		if !fn(p.Page().(*ListEventsDetectionJobsOutput), !p.HasNextPage()) {
4075			break
4076		}
4077	}
4078
4079	return p.Err()
4080}
4081
4082const opListKeyPhrasesDetectionJobs = "ListKeyPhrasesDetectionJobs"
4083
4084// ListKeyPhrasesDetectionJobsRequest generates a "aws/request.Request" representing the
4085// client's request for the ListKeyPhrasesDetectionJobs operation. The "output" return
4086// value will be populated with the request's response once the request completes
4087// successfully.
4088//
4089// Use "Send" method on the returned Request to send the API call to the service.
4090// the "output" return value is not valid until after Send returns without error.
4091//
4092// See ListKeyPhrasesDetectionJobs for more information on using the ListKeyPhrasesDetectionJobs
4093// API call, and error handling.
4094//
4095// This method is useful when you want to inject custom logic or configuration
4096// into the SDK's request lifecycle. Such as custom headers, or retry logic.
4097//
4098//
4099//    // Example sending a request using the ListKeyPhrasesDetectionJobsRequest method.
4100//    req, resp := client.ListKeyPhrasesDetectionJobsRequest(params)
4101//
4102//    err := req.Send()
4103//    if err == nil { // resp is now filled
4104//        fmt.Println(resp)
4105//    }
4106//
4107// See also, https://docs.aws.amazon.com/goto/WebAPI/comprehend-2017-11-27/ListKeyPhrasesDetectionJobs
4108func (c *Comprehend) ListKeyPhrasesDetectionJobsRequest(input *ListKeyPhrasesDetectionJobsInput) (req *request.Request, output *ListKeyPhrasesDetectionJobsOutput) {
4109	op := &request.Operation{
4110		Name:       opListKeyPhrasesDetectionJobs,
4111		HTTPMethod: "POST",
4112		HTTPPath:   "/",
4113		Paginator: &request.Paginator{
4114			InputTokens:     []string{"NextToken"},
4115			OutputTokens:    []string{"NextToken"},
4116			LimitToken:      "MaxResults",
4117			TruncationToken: "",
4118		},
4119	}
4120
4121	if input == nil {
4122		input = &ListKeyPhrasesDetectionJobsInput{}
4123	}
4124
4125	output = &ListKeyPhrasesDetectionJobsOutput{}
4126	req = c.newRequest(op, input, output)
4127	return
4128}
4129
4130// ListKeyPhrasesDetectionJobs API operation for Amazon Comprehend.
4131//
4132// Get a list of key phrase detection jobs that you have submitted.
4133//
4134// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
4135// with awserr.Error's Code and Message methods to get detailed information about
4136// the error.
4137//
4138// See the AWS API reference guide for Amazon Comprehend's
4139// API operation ListKeyPhrasesDetectionJobs for usage and error information.
4140//
4141// Returned Error Types:
4142//   * InvalidRequestException
4143//   The request is invalid.
4144//
4145//   * TooManyRequestsException
4146//   The number of requests exceeds the limit. Resubmit your request later.
4147//
4148//   * InvalidFilterException
4149//   The filter specified for the operation is invalid. Specify a different filter.
4150//
4151//   * InternalServerException
4152//   An internal server error occurred. Retry your request.
4153//
4154// See also, https://docs.aws.amazon.com/goto/WebAPI/comprehend-2017-11-27/ListKeyPhrasesDetectionJobs
4155func (c *Comprehend) ListKeyPhrasesDetectionJobs(input *ListKeyPhrasesDetectionJobsInput) (*ListKeyPhrasesDetectionJobsOutput, error) {
4156	req, out := c.ListKeyPhrasesDetectionJobsRequest(input)
4157	return out, req.Send()
4158}
4159
4160// ListKeyPhrasesDetectionJobsWithContext is the same as ListKeyPhrasesDetectionJobs with the addition of
4161// the ability to pass a context and additional request options.
4162//
4163// See ListKeyPhrasesDetectionJobs for details on how to use this API operation.
4164//
4165// The context must be non-nil and will be used for request cancellation. If
4166// the context is nil a panic will occur. In the future the SDK may create
4167// sub-contexts for http.Requests. See https://golang.org/pkg/context/
4168// for more information on using Contexts.
4169func (c *Comprehend) ListKeyPhrasesDetectionJobsWithContext(ctx aws.Context, input *ListKeyPhrasesDetectionJobsInput, opts ...request.Option) (*ListKeyPhrasesDetectionJobsOutput, error) {
4170	req, out := c.ListKeyPhrasesDetectionJobsRequest(input)
4171	req.SetContext(ctx)
4172	req.ApplyOptions(opts...)
4173	return out, req.Send()
4174}
4175
4176// ListKeyPhrasesDetectionJobsPages iterates over the pages of a ListKeyPhrasesDetectionJobs operation,
4177// calling the "fn" function with the response data for each page. To stop
4178// iterating, return false from the fn function.
4179//
4180// See ListKeyPhrasesDetectionJobs method for more information on how to use this operation.
4181//
4182// Note: This operation can generate multiple requests to a service.
4183//
4184//    // Example iterating over at most 3 pages of a ListKeyPhrasesDetectionJobs operation.
4185//    pageNum := 0
4186//    err := client.ListKeyPhrasesDetectionJobsPages(params,
4187//        func(page *comprehend.ListKeyPhrasesDetectionJobsOutput, lastPage bool) bool {
4188//            pageNum++
4189//            fmt.Println(page)
4190//            return pageNum <= 3
4191//        })
4192//
4193func (c *Comprehend) ListKeyPhrasesDetectionJobsPages(input *ListKeyPhrasesDetectionJobsInput, fn func(*ListKeyPhrasesDetectionJobsOutput, bool) bool) error {
4194	return c.ListKeyPhrasesDetectionJobsPagesWithContext(aws.BackgroundContext(), input, fn)
4195}
4196
4197// ListKeyPhrasesDetectionJobsPagesWithContext same as ListKeyPhrasesDetectionJobsPages except
4198// it takes a Context and allows setting request options on the pages.
4199//
4200// The context must be non-nil and will be used for request cancellation. If
4201// the context is nil a panic will occur. In the future the SDK may create
4202// sub-contexts for http.Requests. See https://golang.org/pkg/context/
4203// for more information on using Contexts.
4204func (c *Comprehend) ListKeyPhrasesDetectionJobsPagesWithContext(ctx aws.Context, input *ListKeyPhrasesDetectionJobsInput, fn func(*ListKeyPhrasesDetectionJobsOutput, bool) bool, opts ...request.Option) error {
4205	p := request.Pagination{
4206		NewRequest: func() (*request.Request, error) {
4207			var inCpy *ListKeyPhrasesDetectionJobsInput
4208			if input != nil {
4209				tmp := *input
4210				inCpy = &tmp
4211			}
4212			req, _ := c.ListKeyPhrasesDetectionJobsRequest(inCpy)
4213			req.SetContext(ctx)
4214			req.ApplyOptions(opts...)
4215			return req, nil
4216		},
4217	}
4218
4219	for p.Next() {
4220		if !fn(p.Page().(*ListKeyPhrasesDetectionJobsOutput), !p.HasNextPage()) {
4221			break
4222		}
4223	}
4224
4225	return p.Err()
4226}
4227
4228const opListPiiEntitiesDetectionJobs = "ListPiiEntitiesDetectionJobs"
4229
4230// ListPiiEntitiesDetectionJobsRequest generates a "aws/request.Request" representing the
4231// client's request for the ListPiiEntitiesDetectionJobs operation. The "output" return
4232// value will be populated with the request's response once the request completes
4233// successfully.
4234//
4235// Use "Send" method on the returned Request to send the API call to the service.
4236// the "output" return value is not valid until after Send returns without error.
4237//
4238// See ListPiiEntitiesDetectionJobs for more information on using the ListPiiEntitiesDetectionJobs
4239// API call, and error handling.
4240//
4241// This method is useful when you want to inject custom logic or configuration
4242// into the SDK's request lifecycle. Such as custom headers, or retry logic.
4243//
4244//
4245//    // Example sending a request using the ListPiiEntitiesDetectionJobsRequest method.
4246//    req, resp := client.ListPiiEntitiesDetectionJobsRequest(params)
4247//
4248//    err := req.Send()
4249//    if err == nil { // resp is now filled
4250//        fmt.Println(resp)
4251//    }
4252//
4253// See also, https://docs.aws.amazon.com/goto/WebAPI/comprehend-2017-11-27/ListPiiEntitiesDetectionJobs
4254func (c *Comprehend) ListPiiEntitiesDetectionJobsRequest(input *ListPiiEntitiesDetectionJobsInput) (req *request.Request, output *ListPiiEntitiesDetectionJobsOutput) {
4255	op := &request.Operation{
4256		Name:       opListPiiEntitiesDetectionJobs,
4257		HTTPMethod: "POST",
4258		HTTPPath:   "/",
4259	}
4260
4261	if input == nil {
4262		input = &ListPiiEntitiesDetectionJobsInput{}
4263	}
4264
4265	output = &ListPiiEntitiesDetectionJobsOutput{}
4266	req = c.newRequest(op, input, output)
4267	return
4268}
4269
4270// ListPiiEntitiesDetectionJobs API operation for Amazon Comprehend.
4271//
4272// Gets a list of the PII entity detection jobs that you have submitted.
4273//
4274// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
4275// with awserr.Error's Code and Message methods to get detailed information about
4276// the error.
4277//
4278// See the AWS API reference guide for Amazon Comprehend's
4279// API operation ListPiiEntitiesDetectionJobs for usage and error information.
4280//
4281// Returned Error Types:
4282//   * InvalidRequestException
4283//   The request is invalid.
4284//
4285//   * TooManyRequestsException
4286//   The number of requests exceeds the limit. Resubmit your request later.
4287//
4288//   * InvalidFilterException
4289//   The filter specified for the operation is invalid. Specify a different filter.
4290//
4291//   * InternalServerException
4292//   An internal server error occurred. Retry your request.
4293//
4294// See also, https://docs.aws.amazon.com/goto/WebAPI/comprehend-2017-11-27/ListPiiEntitiesDetectionJobs
4295func (c *Comprehend) ListPiiEntitiesDetectionJobs(input *ListPiiEntitiesDetectionJobsInput) (*ListPiiEntitiesDetectionJobsOutput, error) {
4296	req, out := c.ListPiiEntitiesDetectionJobsRequest(input)
4297	return out, req.Send()
4298}
4299
4300// ListPiiEntitiesDetectionJobsWithContext is the same as ListPiiEntitiesDetectionJobs with the addition of
4301// the ability to pass a context and additional request options.
4302//
4303// See ListPiiEntitiesDetectionJobs for details on how to use this API operation.
4304//
4305// The context must be non-nil and will be used for request cancellation. If
4306// the context is nil a panic will occur. In the future the SDK may create
4307// sub-contexts for http.Requests. See https://golang.org/pkg/context/
4308// for more information on using Contexts.
4309func (c *Comprehend) ListPiiEntitiesDetectionJobsWithContext(ctx aws.Context, input *ListPiiEntitiesDetectionJobsInput, opts ...request.Option) (*ListPiiEntitiesDetectionJobsOutput, error) {
4310	req, out := c.ListPiiEntitiesDetectionJobsRequest(input)
4311	req.SetContext(ctx)
4312	req.ApplyOptions(opts...)
4313	return out, req.Send()
4314}
4315
4316const opListSentimentDetectionJobs = "ListSentimentDetectionJobs"
4317
4318// ListSentimentDetectionJobsRequest generates a "aws/request.Request" representing the
4319// client's request for the ListSentimentDetectionJobs operation. The "output" return
4320// value will be populated with the request's response once the request completes
4321// successfully.
4322//
4323// Use "Send" method on the returned Request to send the API call to the service.
4324// the "output" return value is not valid until after Send returns without error.
4325//
4326// See ListSentimentDetectionJobs for more information on using the ListSentimentDetectionJobs
4327// API call, and error handling.
4328//
4329// This method is useful when you want to inject custom logic or configuration
4330// into the SDK's request lifecycle. Such as custom headers, or retry logic.
4331//
4332//
4333//    // Example sending a request using the ListSentimentDetectionJobsRequest method.
4334//    req, resp := client.ListSentimentDetectionJobsRequest(params)
4335//
4336//    err := req.Send()
4337//    if err == nil { // resp is now filled
4338//        fmt.Println(resp)
4339//    }
4340//
4341// See also, https://docs.aws.amazon.com/goto/WebAPI/comprehend-2017-11-27/ListSentimentDetectionJobs
4342func (c *Comprehend) ListSentimentDetectionJobsRequest(input *ListSentimentDetectionJobsInput) (req *request.Request, output *ListSentimentDetectionJobsOutput) {
4343	op := &request.Operation{
4344		Name:       opListSentimentDetectionJobs,
4345		HTTPMethod: "POST",
4346		HTTPPath:   "/",
4347		Paginator: &request.Paginator{
4348			InputTokens:     []string{"NextToken"},
4349			OutputTokens:    []string{"NextToken"},
4350			LimitToken:      "MaxResults",
4351			TruncationToken: "",
4352		},
4353	}
4354
4355	if input == nil {
4356		input = &ListSentimentDetectionJobsInput{}
4357	}
4358
4359	output = &ListSentimentDetectionJobsOutput{}
4360	req = c.newRequest(op, input, output)
4361	return
4362}
4363
4364// ListSentimentDetectionJobs API operation for Amazon Comprehend.
4365//
4366// Gets a list of sentiment detection jobs that you have submitted.
4367//
4368// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
4369// with awserr.Error's Code and Message methods to get detailed information about
4370// the error.
4371//
4372// See the AWS API reference guide for Amazon Comprehend's
4373// API operation ListSentimentDetectionJobs for usage and error information.
4374//
4375// Returned Error Types:
4376//   * InvalidRequestException
4377//   The request is invalid.
4378//
4379//   * TooManyRequestsException
4380//   The number of requests exceeds the limit. Resubmit your request later.
4381//
4382//   * InvalidFilterException
4383//   The filter specified for the operation is invalid. Specify a different filter.
4384//
4385//   * InternalServerException
4386//   An internal server error occurred. Retry your request.
4387//
4388// See also, https://docs.aws.amazon.com/goto/WebAPI/comprehend-2017-11-27/ListSentimentDetectionJobs
4389func (c *Comprehend) ListSentimentDetectionJobs(input *ListSentimentDetectionJobsInput) (*ListSentimentDetectionJobsOutput, error) {
4390	req, out := c.ListSentimentDetectionJobsRequest(input)
4391	return out, req.Send()
4392}
4393
4394// ListSentimentDetectionJobsWithContext is the same as ListSentimentDetectionJobs with the addition of
4395// the ability to pass a context and additional request options.
4396//
4397// See ListSentimentDetectionJobs for details on how to use this API operation.
4398//
4399// The context must be non-nil and will be used for request cancellation. If
4400// the context is nil a panic will occur. In the future the SDK may create
4401// sub-contexts for http.Requests. See https://golang.org/pkg/context/
4402// for more information on using Contexts.
4403func (c *Comprehend) ListSentimentDetectionJobsWithContext(ctx aws.Context, input *ListSentimentDetectionJobsInput, opts ...request.Option) (*ListSentimentDetectionJobsOutput, error) {
4404	req, out := c.ListSentimentDetectionJobsRequest(input)
4405	req.SetContext(ctx)
4406	req.ApplyOptions(opts...)
4407	return out, req.Send()
4408}
4409
4410// ListSentimentDetectionJobsPages iterates over the pages of a ListSentimentDetectionJobs operation,
4411// calling the "fn" function with the response data for each page. To stop
4412// iterating, return false from the fn function.
4413//
4414// See ListSentimentDetectionJobs method for more information on how to use this operation.
4415//
4416// Note: This operation can generate multiple requests to a service.
4417//
4418//    // Example iterating over at most 3 pages of a ListSentimentDetectionJobs operation.
4419//    pageNum := 0
4420//    err := client.ListSentimentDetectionJobsPages(params,
4421//        func(page *comprehend.ListSentimentDetectionJobsOutput, lastPage bool) bool {
4422//            pageNum++
4423//            fmt.Println(page)
4424//            return pageNum <= 3
4425//        })
4426//
4427func (c *Comprehend) ListSentimentDetectionJobsPages(input *ListSentimentDetectionJobsInput, fn func(*ListSentimentDetectionJobsOutput, bool) bool) error {
4428	return c.ListSentimentDetectionJobsPagesWithContext(aws.BackgroundContext(), input, fn)
4429}
4430
4431// ListSentimentDetectionJobsPagesWithContext same as ListSentimentDetectionJobsPages except
4432// it takes a Context and allows setting request options on the pages.
4433//
4434// The context must be non-nil and will be used for request cancellation. If
4435// the context is nil a panic will occur. In the future the SDK may create
4436// sub-contexts for http.Requests. See https://golang.org/pkg/context/
4437// for more information on using Contexts.
4438func (c *Comprehend) ListSentimentDetectionJobsPagesWithContext(ctx aws.Context, input *ListSentimentDetectionJobsInput, fn func(*ListSentimentDetectionJobsOutput, bool) bool, opts ...request.Option) error {
4439	p := request.Pagination{
4440		NewRequest: func() (*request.Request, error) {
4441			var inCpy *ListSentimentDetectionJobsInput
4442			if input != nil {
4443				tmp := *input
4444				inCpy = &tmp
4445			}
4446			req, _ := c.ListSentimentDetectionJobsRequest(inCpy)
4447			req.SetContext(ctx)
4448			req.ApplyOptions(opts...)
4449			return req, nil
4450		},
4451	}
4452
4453	for p.Next() {
4454		if !fn(p.Page().(*ListSentimentDetectionJobsOutput), !p.HasNextPage()) {
4455			break
4456		}
4457	}
4458
4459	return p.Err()
4460}
4461
4462const opListTagsForResource = "ListTagsForResource"
4463
4464// ListTagsForResourceRequest generates a "aws/request.Request" representing the
4465// client's request for the ListTagsForResource operation. The "output" return
4466// value will be populated with the request's response once the request completes
4467// successfully.
4468//
4469// Use "Send" method on the returned Request to send the API call to the service.
4470// the "output" return value is not valid until after Send returns without error.
4471//
4472// See ListTagsForResource for more information on using the ListTagsForResource
4473// API call, and error handling.
4474//
4475// This method is useful when you want to inject custom logic or configuration
4476// into the SDK's request lifecycle. Such as custom headers, or retry logic.
4477//
4478//
4479//    // Example sending a request using the ListTagsForResourceRequest method.
4480//    req, resp := client.ListTagsForResourceRequest(params)
4481//
4482//    err := req.Send()
4483//    if err == nil { // resp is now filled
4484//        fmt.Println(resp)
4485//    }
4486//
4487// See also, https://docs.aws.amazon.com/goto/WebAPI/comprehend-2017-11-27/ListTagsForResource
4488func (c *Comprehend) ListTagsForResourceRequest(input *ListTagsForResourceInput) (req *request.Request, output *ListTagsForResourceOutput) {
4489	op := &request.Operation{
4490		Name:       opListTagsForResource,
4491		HTTPMethod: "POST",
4492		HTTPPath:   "/",
4493	}
4494
4495	if input == nil {
4496		input = &ListTagsForResourceInput{}
4497	}
4498
4499	output = &ListTagsForResourceOutput{}
4500	req = c.newRequest(op, input, output)
4501	return
4502}
4503
4504// ListTagsForResource API operation for Amazon Comprehend.
4505//
4506// Lists all tags associated with a given Amazon Comprehend resource.
4507//
4508// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
4509// with awserr.Error's Code and Message methods to get detailed information about
4510// the error.
4511//
4512// See the AWS API reference guide for Amazon Comprehend's
4513// API operation ListTagsForResource for usage and error information.
4514//
4515// Returned Error Types:
4516//   * InvalidRequestException
4517//   The request is invalid.
4518//
4519//   * ResourceNotFoundException
4520//   The specified resource ARN was not found. Check the ARN and try your request
4521//   again.
4522//
4523//   * InternalServerException
4524//   An internal server error occurred. Retry your request.
4525//
4526// See also, https://docs.aws.amazon.com/goto/WebAPI/comprehend-2017-11-27/ListTagsForResource
4527func (c *Comprehend) ListTagsForResource(input *ListTagsForResourceInput) (*ListTagsForResourceOutput, error) {
4528	req, out := c.ListTagsForResourceRequest(input)
4529	return out, req.Send()
4530}
4531
4532// ListTagsForResourceWithContext is the same as ListTagsForResource with the addition of
4533// the ability to pass a context and additional request options.
4534//
4535// See ListTagsForResource for details on how to use this API operation.
4536//
4537// The context must be non-nil and will be used for request cancellation. If
4538// the context is nil a panic will occur. In the future the SDK may create
4539// sub-contexts for http.Requests. See https://golang.org/pkg/context/
4540// for more information on using Contexts.
4541func (c *Comprehend) ListTagsForResourceWithContext(ctx aws.Context, input *ListTagsForResourceInput, opts ...request.Option) (*ListTagsForResourceOutput, error) {
4542	req, out := c.ListTagsForResourceRequest(input)
4543	req.SetContext(ctx)
4544	req.ApplyOptions(opts...)
4545	return out, req.Send()
4546}
4547
4548const opListTopicsDetectionJobs = "ListTopicsDetectionJobs"
4549
4550// ListTopicsDetectionJobsRequest generates a "aws/request.Request" representing the
4551// client's request for the ListTopicsDetectionJobs operation. The "output" return
4552// value will be populated with the request's response once the request completes
4553// successfully.
4554//
4555// Use "Send" method on the returned Request to send the API call to the service.
4556// the "output" return value is not valid until after Send returns without error.
4557//
4558// See ListTopicsDetectionJobs for more information on using the ListTopicsDetectionJobs
4559// API call, and error handling.
4560//
4561// This method is useful when you want to inject custom logic or configuration
4562// into the SDK's request lifecycle. Such as custom headers, or retry logic.
4563//
4564//
4565//    // Example sending a request using the ListTopicsDetectionJobsRequest method.
4566//    req, resp := client.ListTopicsDetectionJobsRequest(params)
4567//
4568//    err := req.Send()
4569//    if err == nil { // resp is now filled
4570//        fmt.Println(resp)
4571//    }
4572//
4573// See also, https://docs.aws.amazon.com/goto/WebAPI/comprehend-2017-11-27/ListTopicsDetectionJobs
4574func (c *Comprehend) ListTopicsDetectionJobsRequest(input *ListTopicsDetectionJobsInput) (req *request.Request, output *ListTopicsDetectionJobsOutput) {
4575	op := &request.Operation{
4576		Name:       opListTopicsDetectionJobs,
4577		HTTPMethod: "POST",
4578		HTTPPath:   "/",
4579		Paginator: &request.Paginator{
4580			InputTokens:     []string{"NextToken"},
4581			OutputTokens:    []string{"NextToken"},
4582			LimitToken:      "MaxResults",
4583			TruncationToken: "",
4584		},
4585	}
4586
4587	if input == nil {
4588		input = &ListTopicsDetectionJobsInput{}
4589	}
4590
4591	output = &ListTopicsDetectionJobsOutput{}
4592	req = c.newRequest(op, input, output)
4593	return
4594}
4595
4596// ListTopicsDetectionJobs API operation for Amazon Comprehend.
4597//
4598// Gets a list of the topic detection jobs that you have submitted.
4599//
4600// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
4601// with awserr.Error's Code and Message methods to get detailed information about
4602// the error.
4603//
4604// See the AWS API reference guide for Amazon Comprehend's
4605// API operation ListTopicsDetectionJobs for usage and error information.
4606//
4607// Returned Error Types:
4608//   * InvalidRequestException
4609//   The request is invalid.
4610//
4611//   * TooManyRequestsException
4612//   The number of requests exceeds the limit. Resubmit your request later.
4613//
4614//   * InvalidFilterException
4615//   The filter specified for the operation is invalid. Specify a different filter.
4616//
4617//   * InternalServerException
4618//   An internal server error occurred. Retry your request.
4619//
4620// See also, https://docs.aws.amazon.com/goto/WebAPI/comprehend-2017-11-27/ListTopicsDetectionJobs
4621func (c *Comprehend) ListTopicsDetectionJobs(input *ListTopicsDetectionJobsInput) (*ListTopicsDetectionJobsOutput, error) {
4622	req, out := c.ListTopicsDetectionJobsRequest(input)
4623	return out, req.Send()
4624}
4625
4626// ListTopicsDetectionJobsWithContext is the same as ListTopicsDetectionJobs with the addition of
4627// the ability to pass a context and additional request options.
4628//
4629// See ListTopicsDetectionJobs for details on how to use this API operation.
4630//
4631// The context must be non-nil and will be used for request cancellation. If
4632// the context is nil a panic will occur. In the future the SDK may create
4633// sub-contexts for http.Requests. See https://golang.org/pkg/context/
4634// for more information on using Contexts.
4635func (c *Comprehend) ListTopicsDetectionJobsWithContext(ctx aws.Context, input *ListTopicsDetectionJobsInput, opts ...request.Option) (*ListTopicsDetectionJobsOutput, error) {
4636	req, out := c.ListTopicsDetectionJobsRequest(input)
4637	req.SetContext(ctx)
4638	req.ApplyOptions(opts...)
4639	return out, req.Send()
4640}
4641
4642// ListTopicsDetectionJobsPages iterates over the pages of a ListTopicsDetectionJobs operation,
4643// calling the "fn" function with the response data for each page. To stop
4644// iterating, return false from the fn function.
4645//
4646// See ListTopicsDetectionJobs method for more information on how to use this operation.
4647//
4648// Note: This operation can generate multiple requests to a service.
4649//
4650//    // Example iterating over at most 3 pages of a ListTopicsDetectionJobs operation.
4651//    pageNum := 0
4652//    err := client.ListTopicsDetectionJobsPages(params,
4653//        func(page *comprehend.ListTopicsDetectionJobsOutput, lastPage bool) bool {
4654//            pageNum++
4655//            fmt.Println(page)
4656//            return pageNum <= 3
4657//        })
4658//
4659func (c *Comprehend) ListTopicsDetectionJobsPages(input *ListTopicsDetectionJobsInput, fn func(*ListTopicsDetectionJobsOutput, bool) bool) error {
4660	return c.ListTopicsDetectionJobsPagesWithContext(aws.BackgroundContext(), input, fn)
4661}
4662
4663// ListTopicsDetectionJobsPagesWithContext same as ListTopicsDetectionJobsPages except
4664// it takes a Context and allows setting request options on the pages.
4665//
4666// The context must be non-nil and will be used for request cancellation. If
4667// the context is nil a panic will occur. In the future the SDK may create
4668// sub-contexts for http.Requests. See https://golang.org/pkg/context/
4669// for more information on using Contexts.
4670func (c *Comprehend) ListTopicsDetectionJobsPagesWithContext(ctx aws.Context, input *ListTopicsDetectionJobsInput, fn func(*ListTopicsDetectionJobsOutput, bool) bool, opts ...request.Option) error {
4671	p := request.Pagination{
4672		NewRequest: func() (*request.Request, error) {
4673			var inCpy *ListTopicsDetectionJobsInput
4674			if input != nil {
4675				tmp := *input
4676				inCpy = &tmp
4677			}
4678			req, _ := c.ListTopicsDetectionJobsRequest(inCpy)
4679			req.SetContext(ctx)
4680			req.ApplyOptions(opts...)
4681			return req, nil
4682		},
4683	}
4684
4685	for p.Next() {
4686		if !fn(p.Page().(*ListTopicsDetectionJobsOutput), !p.HasNextPage()) {
4687			break
4688		}
4689	}
4690
4691	return p.Err()
4692}
4693
4694const opStartDocumentClassificationJob = "StartDocumentClassificationJob"
4695
4696// StartDocumentClassificationJobRequest generates a "aws/request.Request" representing the
4697// client's request for the StartDocumentClassificationJob operation. The "output" return
4698// value will be populated with the request's response once the request completes
4699// successfully.
4700//
4701// Use "Send" method on the returned Request to send the API call to the service.
4702// the "output" return value is not valid until after Send returns without error.
4703//
4704// See StartDocumentClassificationJob for more information on using the StartDocumentClassificationJob
4705// API call, and error handling.
4706//
4707// This method is useful when you want to inject custom logic or configuration
4708// into the SDK's request lifecycle. Such as custom headers, or retry logic.
4709//
4710//
4711//    // Example sending a request using the StartDocumentClassificationJobRequest method.
4712//    req, resp := client.StartDocumentClassificationJobRequest(params)
4713//
4714//    err := req.Send()
4715//    if err == nil { // resp is now filled
4716//        fmt.Println(resp)
4717//    }
4718//
4719// See also, https://docs.aws.amazon.com/goto/WebAPI/comprehend-2017-11-27/StartDocumentClassificationJob
4720func (c *Comprehend) StartDocumentClassificationJobRequest(input *StartDocumentClassificationJobInput) (req *request.Request, output *StartDocumentClassificationJobOutput) {
4721	op := &request.Operation{
4722		Name:       opStartDocumentClassificationJob,
4723		HTTPMethod: "POST",
4724		HTTPPath:   "/",
4725	}
4726
4727	if input == nil {
4728		input = &StartDocumentClassificationJobInput{}
4729	}
4730
4731	output = &StartDocumentClassificationJobOutput{}
4732	req = c.newRequest(op, input, output)
4733	return
4734}
4735
4736// StartDocumentClassificationJob API operation for Amazon Comprehend.
4737//
4738// Starts an asynchronous document classification job. Use the operation to
4739// track the progress of the job.
4740//
4741// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
4742// with awserr.Error's Code and Message methods to get detailed information about
4743// the error.
4744//
4745// See the AWS API reference guide for Amazon Comprehend's
4746// API operation StartDocumentClassificationJob for usage and error information.
4747//
4748// Returned Error Types:
4749//   * InvalidRequestException
4750//   The request is invalid.
4751//
4752//   * TooManyRequestsException
4753//   The number of requests exceeds the limit. Resubmit your request later.
4754//
4755//   * ResourceNotFoundException
4756//   The specified resource ARN was not found. Check the ARN and try your request
4757//   again.
4758//
4759//   * ResourceUnavailableException
4760//   The specified resource is not available. Check the resource and try your
4761//   request again.
4762//
4763//   * KmsKeyValidationException
4764//   The KMS customer managed key (CMK) entered cannot be validated. Verify the
4765//   key and re-enter it.
4766//
4767//   * TooManyTagsException
4768//   The request contains more tags than can be associated with a resource (50
4769//   tags per resource). The maximum number of tags includes both existing tags
4770//   and those included in your current request.
4771//
4772//   * InternalServerException
4773//   An internal server error occurred. Retry your request.
4774//
4775// See also, https://docs.aws.amazon.com/goto/WebAPI/comprehend-2017-11-27/StartDocumentClassificationJob
4776func (c *Comprehend) StartDocumentClassificationJob(input *StartDocumentClassificationJobInput) (*StartDocumentClassificationJobOutput, error) {
4777	req, out := c.StartDocumentClassificationJobRequest(input)
4778	return out, req.Send()
4779}
4780
4781// StartDocumentClassificationJobWithContext is the same as StartDocumentClassificationJob with the addition of
4782// the ability to pass a context and additional request options.
4783//
4784// See StartDocumentClassificationJob for details on how to use this API operation.
4785//
4786// The context must be non-nil and will be used for request cancellation. If
4787// the context is nil a panic will occur. In the future the SDK may create
4788// sub-contexts for http.Requests. See https://golang.org/pkg/context/
4789// for more information on using Contexts.
4790func (c *Comprehend) StartDocumentClassificationJobWithContext(ctx aws.Context, input *StartDocumentClassificationJobInput, opts ...request.Option) (*StartDocumentClassificationJobOutput, error) {
4791	req, out := c.StartDocumentClassificationJobRequest(input)
4792	req.SetContext(ctx)
4793	req.ApplyOptions(opts...)
4794	return out, req.Send()
4795}
4796
4797const opStartDominantLanguageDetectionJob = "StartDominantLanguageDetectionJob"
4798
4799// StartDominantLanguageDetectionJobRequest generates a "aws/request.Request" representing the
4800// client's request for the StartDominantLanguageDetectionJob operation. The "output" return
4801// value will be populated with the request's response once the request completes
4802// successfully.
4803//
4804// Use "Send" method on the returned Request to send the API call to the service.
4805// the "output" return value is not valid until after Send returns without error.
4806//
4807// See StartDominantLanguageDetectionJob for more information on using the StartDominantLanguageDetectionJob
4808// API call, and error handling.
4809//
4810// This method is useful when you want to inject custom logic or configuration
4811// into the SDK's request lifecycle. Such as custom headers, or retry logic.
4812//
4813//
4814//    // Example sending a request using the StartDominantLanguageDetectionJobRequest method.
4815//    req, resp := client.StartDominantLanguageDetectionJobRequest(params)
4816//
4817//    err := req.Send()
4818//    if err == nil { // resp is now filled
4819//        fmt.Println(resp)
4820//    }
4821//
4822// See also, https://docs.aws.amazon.com/goto/WebAPI/comprehend-2017-11-27/StartDominantLanguageDetectionJob
4823func (c *Comprehend) StartDominantLanguageDetectionJobRequest(input *StartDominantLanguageDetectionJobInput) (req *request.Request, output *StartDominantLanguageDetectionJobOutput) {
4824	op := &request.Operation{
4825		Name:       opStartDominantLanguageDetectionJob,
4826		HTTPMethod: "POST",
4827		HTTPPath:   "/",
4828	}
4829
4830	if input == nil {
4831		input = &StartDominantLanguageDetectionJobInput{}
4832	}
4833
4834	output = &StartDominantLanguageDetectionJobOutput{}
4835	req = c.newRequest(op, input, output)
4836	return
4837}
4838
4839// StartDominantLanguageDetectionJob API operation for Amazon Comprehend.
4840//
4841// Starts an asynchronous dominant language detection job for a collection of
4842// documents. Use the operation to track the status of a job.
4843//
4844// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
4845// with awserr.Error's Code and Message methods to get detailed information about
4846// the error.
4847//
4848// See the AWS API reference guide for Amazon Comprehend's
4849// API operation StartDominantLanguageDetectionJob for usage and error information.
4850//
4851// Returned Error Types:
4852//   * InvalidRequestException
4853//   The request is invalid.
4854//
4855//   * TooManyRequestsException
4856//   The number of requests exceeds the limit. Resubmit your request later.
4857//
4858//   * KmsKeyValidationException
4859//   The KMS customer managed key (CMK) entered cannot be validated. Verify the
4860//   key and re-enter it.
4861//
4862//   * TooManyTagsException
4863//   The request contains more tags than can be associated with a resource (50
4864//   tags per resource). The maximum number of tags includes both existing tags
4865//   and those included in your current request.
4866//
4867//   * InternalServerException
4868//   An internal server error occurred. Retry your request.
4869//
4870// See also, https://docs.aws.amazon.com/goto/WebAPI/comprehend-2017-11-27/StartDominantLanguageDetectionJob
4871func (c *Comprehend) StartDominantLanguageDetectionJob(input *StartDominantLanguageDetectionJobInput) (*StartDominantLanguageDetectionJobOutput, error) {
4872	req, out := c.StartDominantLanguageDetectionJobRequest(input)
4873	return out, req.Send()
4874}
4875
4876// StartDominantLanguageDetectionJobWithContext is the same as StartDominantLanguageDetectionJob with the addition of
4877// the ability to pass a context and additional request options.
4878//
4879// See StartDominantLanguageDetectionJob for details on how to use this API operation.
4880//
4881// The context must be non-nil and will be used for request cancellation. If
4882// the context is nil a panic will occur. In the future the SDK may create
4883// sub-contexts for http.Requests. See https://golang.org/pkg/context/
4884// for more information on using Contexts.
4885func (c *Comprehend) StartDominantLanguageDetectionJobWithContext(ctx aws.Context, input *StartDominantLanguageDetectionJobInput, opts ...request.Option) (*StartDominantLanguageDetectionJobOutput, error) {
4886	req, out := c.StartDominantLanguageDetectionJobRequest(input)
4887	req.SetContext(ctx)
4888	req.ApplyOptions(opts...)
4889	return out, req.Send()
4890}
4891
4892const opStartEntitiesDetectionJob = "StartEntitiesDetectionJob"
4893
4894// StartEntitiesDetectionJobRequest generates a "aws/request.Request" representing the
4895// client's request for the StartEntitiesDetectionJob operation. The "output" return
4896// value will be populated with the request's response once the request completes
4897// successfully.
4898//
4899// Use "Send" method on the returned Request to send the API call to the service.
4900// the "output" return value is not valid until after Send returns without error.
4901//
4902// See StartEntitiesDetectionJob for more information on using the StartEntitiesDetectionJob
4903// API call, and error handling.
4904//
4905// This method is useful when you want to inject custom logic or configuration
4906// into the SDK's request lifecycle. Such as custom headers, or retry logic.
4907//
4908//
4909//    // Example sending a request using the StartEntitiesDetectionJobRequest method.
4910//    req, resp := client.StartEntitiesDetectionJobRequest(params)
4911//
4912//    err := req.Send()
4913//    if err == nil { // resp is now filled
4914//        fmt.Println(resp)
4915//    }
4916//
4917// See also, https://docs.aws.amazon.com/goto/WebAPI/comprehend-2017-11-27/StartEntitiesDetectionJob
4918func (c *Comprehend) StartEntitiesDetectionJobRequest(input *StartEntitiesDetectionJobInput) (req *request.Request, output *StartEntitiesDetectionJobOutput) {
4919	op := &request.Operation{
4920		Name:       opStartEntitiesDetectionJob,
4921		HTTPMethod: "POST",
4922		HTTPPath:   "/",
4923	}
4924
4925	if input == nil {
4926		input = &StartEntitiesDetectionJobInput{}
4927	}
4928
4929	output = &StartEntitiesDetectionJobOutput{}
4930	req = c.newRequest(op, input, output)
4931	return
4932}
4933
4934// StartEntitiesDetectionJob API operation for Amazon Comprehend.
4935//
4936// Starts an asynchronous entity detection job for a collection of documents.
4937// Use the operation to track the status of a job.
4938//
4939// This API can be used for either standard entity detection or custom entity
4940// recognition. In order to be used for custom entity recognition, the optional
4941// EntityRecognizerArn must be used in order to provide access to the recognizer
4942// being used to detect the custom entity.
4943//
4944// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
4945// with awserr.Error's Code and Message methods to get detailed information about
4946// the error.
4947//
4948// See the AWS API reference guide for Amazon Comprehend's
4949// API operation StartEntitiesDetectionJob for usage and error information.
4950//
4951// Returned Error Types:
4952//   * InvalidRequestException
4953//   The request is invalid.
4954//
4955//   * TooManyRequestsException
4956//   The number of requests exceeds the limit. Resubmit your request later.
4957//
4958//   * ResourceNotFoundException
4959//   The specified resource ARN was not found. Check the ARN and try your request
4960//   again.
4961//
4962//   * ResourceUnavailableException
4963//   The specified resource is not available. Check the resource and try your
4964//   request again.
4965//
4966//   * KmsKeyValidationException
4967//   The KMS customer managed key (CMK) entered cannot be validated. Verify the
4968//   key and re-enter it.
4969//
4970//   * TooManyTagsException
4971//   The request contains more tags than can be associated with a resource (50
4972//   tags per resource). The maximum number of tags includes both existing tags
4973//   and those included in your current request.
4974//
4975//   * InternalServerException
4976//   An internal server error occurred. Retry your request.
4977//
4978// See also, https://docs.aws.amazon.com/goto/WebAPI/comprehend-2017-11-27/StartEntitiesDetectionJob
4979func (c *Comprehend) StartEntitiesDetectionJob(input *StartEntitiesDetectionJobInput) (*StartEntitiesDetectionJobOutput, error) {
4980	req, out := c.StartEntitiesDetectionJobRequest(input)
4981	return out, req.Send()
4982}
4983
4984// StartEntitiesDetectionJobWithContext is the same as StartEntitiesDetectionJob with the addition of
4985// the ability to pass a context and additional request options.
4986//
4987// See StartEntitiesDetectionJob for details on how to use this API operation.
4988//
4989// The context must be non-nil and will be used for request cancellation. If
4990// the context is nil a panic will occur. In the future the SDK may create
4991// sub-contexts for http.Requests. See https://golang.org/pkg/context/
4992// for more information on using Contexts.
4993func (c *Comprehend) StartEntitiesDetectionJobWithContext(ctx aws.Context, input *StartEntitiesDetectionJobInput, opts ...request.Option) (*StartEntitiesDetectionJobOutput, error) {
4994	req, out := c.StartEntitiesDetectionJobRequest(input)
4995	req.SetContext(ctx)
4996	req.ApplyOptions(opts...)
4997	return out, req.Send()
4998}
4999
5000const opStartEventsDetectionJob = "StartEventsDetectionJob"
5001
5002// StartEventsDetectionJobRequest generates a "aws/request.Request" representing the
5003// client's request for the StartEventsDetectionJob operation. The "output" return
5004// value will be populated with the request's response once the request completes
5005// successfully.
5006//
5007// Use "Send" method on the returned Request to send the API call to the service.
5008// the "output" return value is not valid until after Send returns without error.
5009//
5010// See StartEventsDetectionJob for more information on using the StartEventsDetectionJob
5011// API call, and error handling.
5012//
5013// This method is useful when you want to inject custom logic or configuration
5014// into the SDK's request lifecycle. Such as custom headers, or retry logic.
5015//
5016//
5017//    // Example sending a request using the StartEventsDetectionJobRequest method.
5018//    req, resp := client.StartEventsDetectionJobRequest(params)
5019//
5020//    err := req.Send()
5021//    if err == nil { // resp is now filled
5022//        fmt.Println(resp)
5023//    }
5024//
5025// See also, https://docs.aws.amazon.com/goto/WebAPI/comprehend-2017-11-27/StartEventsDetectionJob
5026func (c *Comprehend) StartEventsDetectionJobRequest(input *StartEventsDetectionJobInput) (req *request.Request, output *StartEventsDetectionJobOutput) {
5027	op := &request.Operation{
5028		Name:       opStartEventsDetectionJob,
5029		HTTPMethod: "POST",
5030		HTTPPath:   "/",
5031	}
5032
5033	if input == nil {
5034		input = &StartEventsDetectionJobInput{}
5035	}
5036
5037	output = &StartEventsDetectionJobOutput{}
5038	req = c.newRequest(op, input, output)
5039	return
5040}
5041
5042// StartEventsDetectionJob API operation for Amazon Comprehend.
5043//
5044// Starts an asynchronous event detection job for a collection of documents.
5045//
5046// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
5047// with awserr.Error's Code and Message methods to get detailed information about
5048// the error.
5049//
5050// See the AWS API reference guide for Amazon Comprehend's
5051// API operation StartEventsDetectionJob for usage and error information.
5052//
5053// Returned Error Types:
5054//   * InvalidRequestException
5055//   The request is invalid.
5056//
5057//   * TooManyRequestsException
5058//   The number of requests exceeds the limit. Resubmit your request later.
5059//
5060//   * KmsKeyValidationException
5061//   The KMS customer managed key (CMK) entered cannot be validated. Verify the
5062//   key and re-enter it.
5063//
5064//   * TooManyTagsException
5065//   The request contains more tags than can be associated with a resource (50
5066//   tags per resource). The maximum number of tags includes both existing tags
5067//   and those included in your current request.
5068//
5069//   * InternalServerException
5070//   An internal server error occurred. Retry your request.
5071//
5072// See also, https://docs.aws.amazon.com/goto/WebAPI/comprehend-2017-11-27/StartEventsDetectionJob
5073func (c *Comprehend) StartEventsDetectionJob(input *StartEventsDetectionJobInput) (*StartEventsDetectionJobOutput, error) {
5074	req, out := c.StartEventsDetectionJobRequest(input)
5075	return out, req.Send()
5076}
5077
5078// StartEventsDetectionJobWithContext is the same as StartEventsDetectionJob with the addition of
5079// the ability to pass a context and additional request options.
5080//
5081// See StartEventsDetectionJob for details on how to use this API operation.
5082//
5083// The context must be non-nil and will be used for request cancellation. If
5084// the context is nil a panic will occur. In the future the SDK may create
5085// sub-contexts for http.Requests. See https://golang.org/pkg/context/
5086// for more information on using Contexts.
5087func (c *Comprehend) StartEventsDetectionJobWithContext(ctx aws.Context, input *StartEventsDetectionJobInput, opts ...request.Option) (*StartEventsDetectionJobOutput, error) {
5088	req, out := c.StartEventsDetectionJobRequest(input)
5089	req.SetContext(ctx)
5090	req.ApplyOptions(opts...)
5091	return out, req.Send()
5092}
5093
5094const opStartKeyPhrasesDetectionJob = "StartKeyPhrasesDetectionJob"
5095
5096// StartKeyPhrasesDetectionJobRequest generates a "aws/request.Request" representing the
5097// client's request for the StartKeyPhrasesDetectionJob operation. The "output" return
5098// value will be populated with the request's response once the request completes
5099// successfully.
5100//
5101// Use "Send" method on the returned Request to send the API call to the service.
5102// the "output" return value is not valid until after Send returns without error.
5103//
5104// See StartKeyPhrasesDetectionJob for more information on using the StartKeyPhrasesDetectionJob
5105// API call, and error handling.
5106//
5107// This method is useful when you want to inject custom logic or configuration
5108// into the SDK's request lifecycle. Such as custom headers, or retry logic.
5109//
5110//
5111//    // Example sending a request using the StartKeyPhrasesDetectionJobRequest method.
5112//    req, resp := client.StartKeyPhrasesDetectionJobRequest(params)
5113//
5114//    err := req.Send()
5115//    if err == nil { // resp is now filled
5116//        fmt.Println(resp)
5117//    }
5118//
5119// See also, https://docs.aws.amazon.com/goto/WebAPI/comprehend-2017-11-27/StartKeyPhrasesDetectionJob
5120func (c *Comprehend) StartKeyPhrasesDetectionJobRequest(input *StartKeyPhrasesDetectionJobInput) (req *request.Request, output *StartKeyPhrasesDetectionJobOutput) {
5121	op := &request.Operation{
5122		Name:       opStartKeyPhrasesDetectionJob,
5123		HTTPMethod: "POST",
5124		HTTPPath:   "/",
5125	}
5126
5127	if input == nil {
5128		input = &StartKeyPhrasesDetectionJobInput{}
5129	}
5130
5131	output = &StartKeyPhrasesDetectionJobOutput{}
5132	req = c.newRequest(op, input, output)
5133	return
5134}
5135
5136// StartKeyPhrasesDetectionJob API operation for Amazon Comprehend.
5137//
5138// Starts an asynchronous key phrase detection job for a collection of documents.
5139// Use the operation to track the status of a job.
5140//
5141// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
5142// with awserr.Error's Code and Message methods to get detailed information about
5143// the error.
5144//
5145// See the AWS API reference guide for Amazon Comprehend's
5146// API operation StartKeyPhrasesDetectionJob for usage and error information.
5147//
5148// Returned Error Types:
5149//   * InvalidRequestException
5150//   The request is invalid.
5151//
5152//   * TooManyRequestsException
5153//   The number of requests exceeds the limit. Resubmit your request later.
5154//
5155//   * KmsKeyValidationException
5156//   The KMS customer managed key (CMK) entered cannot be validated. Verify the
5157//   key and re-enter it.
5158//
5159//   * TooManyTagsException
5160//   The request contains more tags than can be associated with a resource (50
5161//   tags per resource). The maximum number of tags includes both existing tags
5162//   and those included in your current request.
5163//
5164//   * InternalServerException
5165//   An internal server error occurred. Retry your request.
5166//
5167// See also, https://docs.aws.amazon.com/goto/WebAPI/comprehend-2017-11-27/StartKeyPhrasesDetectionJob
5168func (c *Comprehend) StartKeyPhrasesDetectionJob(input *StartKeyPhrasesDetectionJobInput) (*StartKeyPhrasesDetectionJobOutput, error) {
5169	req, out := c.StartKeyPhrasesDetectionJobRequest(input)
5170	return out, req.Send()
5171}
5172
5173// StartKeyPhrasesDetectionJobWithContext is the same as StartKeyPhrasesDetectionJob with the addition of
5174// the ability to pass a context and additional request options.
5175//
5176// See StartKeyPhrasesDetectionJob for details on how to use this API operation.
5177//
5178// The context must be non-nil and will be used for request cancellation. If
5179// the context is nil a panic will occur. In the future the SDK may create
5180// sub-contexts for http.Requests. See https://golang.org/pkg/context/
5181// for more information on using Contexts.
5182func (c *Comprehend) StartKeyPhrasesDetectionJobWithContext(ctx aws.Context, input *StartKeyPhrasesDetectionJobInput, opts ...request.Option) (*StartKeyPhrasesDetectionJobOutput, error) {
5183	req, out := c.StartKeyPhrasesDetectionJobRequest(input)
5184	req.SetContext(ctx)
5185	req.ApplyOptions(opts...)
5186	return out, req.Send()
5187}
5188
5189const opStartPiiEntitiesDetectionJob = "StartPiiEntitiesDetectionJob"
5190
5191// StartPiiEntitiesDetectionJobRequest generates a "aws/request.Request" representing the
5192// client's request for the StartPiiEntitiesDetectionJob operation. The "output" return
5193// value will be populated with the request's response once the request completes
5194// successfully.
5195//
5196// Use "Send" method on the returned Request to send the API call to the service.
5197// the "output" return value is not valid until after Send returns without error.
5198//
5199// See StartPiiEntitiesDetectionJob for more information on using the StartPiiEntitiesDetectionJob
5200// API call, and error handling.
5201//
5202// This method is useful when you want to inject custom logic or configuration
5203// into the SDK's request lifecycle. Such as custom headers, or retry logic.
5204//
5205//
5206//    // Example sending a request using the StartPiiEntitiesDetectionJobRequest method.
5207//    req, resp := client.StartPiiEntitiesDetectionJobRequest(params)
5208//
5209//    err := req.Send()
5210//    if err == nil { // resp is now filled
5211//        fmt.Println(resp)
5212//    }
5213//
5214// See also, https://docs.aws.amazon.com/goto/WebAPI/comprehend-2017-11-27/StartPiiEntitiesDetectionJob
5215func (c *Comprehend) StartPiiEntitiesDetectionJobRequest(input *StartPiiEntitiesDetectionJobInput) (req *request.Request, output *StartPiiEntitiesDetectionJobOutput) {
5216	op := &request.Operation{
5217		Name:       opStartPiiEntitiesDetectionJob,
5218		HTTPMethod: "POST",
5219		HTTPPath:   "/",
5220	}
5221
5222	if input == nil {
5223		input = &StartPiiEntitiesDetectionJobInput{}
5224	}
5225
5226	output = &StartPiiEntitiesDetectionJobOutput{}
5227	req = c.newRequest(op, input, output)
5228	return
5229}
5230
5231// StartPiiEntitiesDetectionJob API operation for Amazon Comprehend.
5232//
5233// Starts an asynchronous PII entity detection job for a collection of documents.
5234//
5235// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
5236// with awserr.Error's Code and Message methods to get detailed information about
5237// the error.
5238//
5239// See the AWS API reference guide for Amazon Comprehend's
5240// API operation StartPiiEntitiesDetectionJob for usage and error information.
5241//
5242// Returned Error Types:
5243//   * InvalidRequestException
5244//   The request is invalid.
5245//
5246//   * TooManyRequestsException
5247//   The number of requests exceeds the limit. Resubmit your request later.
5248//
5249//   * KmsKeyValidationException
5250//   The KMS customer managed key (CMK) entered cannot be validated. Verify the
5251//   key and re-enter it.
5252//
5253//   * TooManyTagsException
5254//   The request contains more tags than can be associated with a resource (50
5255//   tags per resource). The maximum number of tags includes both existing tags
5256//   and those included in your current request.
5257//
5258//   * InternalServerException
5259//   An internal server error occurred. Retry your request.
5260//
5261// See also, https://docs.aws.amazon.com/goto/WebAPI/comprehend-2017-11-27/StartPiiEntitiesDetectionJob
5262func (c *Comprehend) StartPiiEntitiesDetectionJob(input *StartPiiEntitiesDetectionJobInput) (*StartPiiEntitiesDetectionJobOutput, error) {
5263	req, out := c.StartPiiEntitiesDetectionJobRequest(input)
5264	return out, req.Send()
5265}
5266
5267// StartPiiEntitiesDetectionJobWithContext is the same as StartPiiEntitiesDetectionJob with the addition of
5268// the ability to pass a context and additional request options.
5269//
5270// See StartPiiEntitiesDetectionJob for details on how to use this API operation.
5271//
5272// The context must be non-nil and will be used for request cancellation. If
5273// the context is nil a panic will occur. In the future the SDK may create
5274// sub-contexts for http.Requests. See https://golang.org/pkg/context/
5275// for more information on using Contexts.
5276func (c *Comprehend) StartPiiEntitiesDetectionJobWithContext(ctx aws.Context, input *StartPiiEntitiesDetectionJobInput, opts ...request.Option) (*StartPiiEntitiesDetectionJobOutput, error) {
5277	req, out := c.StartPiiEntitiesDetectionJobRequest(input)
5278	req.SetContext(ctx)
5279	req.ApplyOptions(opts...)
5280	return out, req.Send()
5281}
5282
5283const opStartSentimentDetectionJob = "StartSentimentDetectionJob"
5284
5285// StartSentimentDetectionJobRequest generates a "aws/request.Request" representing the
5286// client's request for the StartSentimentDetectionJob operation. The "output" return
5287// value will be populated with the request's response once the request completes
5288// successfully.
5289//
5290// Use "Send" method on the returned Request to send the API call to the service.
5291// the "output" return value is not valid until after Send returns without error.
5292//
5293// See StartSentimentDetectionJob for more information on using the StartSentimentDetectionJob
5294// API call, and error handling.
5295//
5296// This method is useful when you want to inject custom logic or configuration
5297// into the SDK's request lifecycle. Such as custom headers, or retry logic.
5298//
5299//
5300//    // Example sending a request using the StartSentimentDetectionJobRequest method.
5301//    req, resp := client.StartSentimentDetectionJobRequest(params)
5302//
5303//    err := req.Send()
5304//    if err == nil { // resp is now filled
5305//        fmt.Println(resp)
5306//    }
5307//
5308// See also, https://docs.aws.amazon.com/goto/WebAPI/comprehend-2017-11-27/StartSentimentDetectionJob
5309func (c *Comprehend) StartSentimentDetectionJobRequest(input *StartSentimentDetectionJobInput) (req *request.Request, output *StartSentimentDetectionJobOutput) {
5310	op := &request.Operation{
5311		Name:       opStartSentimentDetectionJob,
5312		HTTPMethod: "POST",
5313		HTTPPath:   "/",
5314	}
5315
5316	if input == nil {
5317		input = &StartSentimentDetectionJobInput{}
5318	}
5319
5320	output = &StartSentimentDetectionJobOutput{}
5321	req = c.newRequest(op, input, output)
5322	return
5323}
5324
5325// StartSentimentDetectionJob API operation for Amazon Comprehend.
5326//
5327// Starts an asynchronous sentiment detection job for a collection of documents.
5328// use the operation to track the status of a job.
5329//
5330// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
5331// with awserr.Error's Code and Message methods to get detailed information about
5332// the error.
5333//
5334// See the AWS API reference guide for Amazon Comprehend's
5335// API operation StartSentimentDetectionJob for usage and error information.
5336//
5337// Returned Error Types:
5338//   * InvalidRequestException
5339//   The request is invalid.
5340//
5341//   * TooManyRequestsException
5342//   The number of requests exceeds the limit. Resubmit your request later.
5343//
5344//   * KmsKeyValidationException
5345//   The KMS customer managed key (CMK) entered cannot be validated. Verify the
5346//   key and re-enter it.
5347//
5348//   * TooManyTagsException
5349//   The request contains more tags than can be associated with a resource (50
5350//   tags per resource). The maximum number of tags includes both existing tags
5351//   and those included in your current request.
5352//
5353//   * InternalServerException
5354//   An internal server error occurred. Retry your request.
5355//
5356// See also, https://docs.aws.amazon.com/goto/WebAPI/comprehend-2017-11-27/StartSentimentDetectionJob
5357func (c *Comprehend) StartSentimentDetectionJob(input *StartSentimentDetectionJobInput) (*StartSentimentDetectionJobOutput, error) {
5358	req, out := c.StartSentimentDetectionJobRequest(input)
5359	return out, req.Send()
5360}
5361
5362// StartSentimentDetectionJobWithContext is the same as StartSentimentDetectionJob with the addition of
5363// the ability to pass a context and additional request options.
5364//
5365// See StartSentimentDetectionJob for details on how to use this API operation.
5366//
5367// The context must be non-nil and will be used for request cancellation. If
5368// the context is nil a panic will occur. In the future the SDK may create
5369// sub-contexts for http.Requests. See https://golang.org/pkg/context/
5370// for more information on using Contexts.
5371func (c *Comprehend) StartSentimentDetectionJobWithContext(ctx aws.Context, input *StartSentimentDetectionJobInput, opts ...request.Option) (*StartSentimentDetectionJobOutput, error) {
5372	req, out := c.StartSentimentDetectionJobRequest(input)
5373	req.SetContext(ctx)
5374	req.ApplyOptions(opts...)
5375	return out, req.Send()
5376}
5377
5378const opStartTopicsDetectionJob = "StartTopicsDetectionJob"
5379
5380// StartTopicsDetectionJobRequest generates a "aws/request.Request" representing the
5381// client's request for the StartTopicsDetectionJob operation. The "output" return
5382// value will be populated with the request's response once the request completes
5383// successfully.
5384//
5385// Use "Send" method on the returned Request to send the API call to the service.
5386// the "output" return value is not valid until after Send returns without error.
5387//
5388// See StartTopicsDetectionJob for more information on using the StartTopicsDetectionJob
5389// API call, and error handling.
5390//
5391// This method is useful when you want to inject custom logic or configuration
5392// into the SDK's request lifecycle. Such as custom headers, or retry logic.
5393//
5394//
5395//    // Example sending a request using the StartTopicsDetectionJobRequest method.
5396//    req, resp := client.StartTopicsDetectionJobRequest(params)
5397//
5398//    err := req.Send()
5399//    if err == nil { // resp is now filled
5400//        fmt.Println(resp)
5401//    }
5402//
5403// See also, https://docs.aws.amazon.com/goto/WebAPI/comprehend-2017-11-27/StartTopicsDetectionJob
5404func (c *Comprehend) StartTopicsDetectionJobRequest(input *StartTopicsDetectionJobInput) (req *request.Request, output *StartTopicsDetectionJobOutput) {
5405	op := &request.Operation{
5406		Name:       opStartTopicsDetectionJob,
5407		HTTPMethod: "POST",
5408		HTTPPath:   "/",
5409	}
5410
5411	if input == nil {
5412		input = &StartTopicsDetectionJobInput{}
5413	}
5414
5415	output = &StartTopicsDetectionJobOutput{}
5416	req = c.newRequest(op, input, output)
5417	return
5418}
5419
5420// StartTopicsDetectionJob API operation for Amazon Comprehend.
5421//
5422// Starts an asynchronous topic detection job. Use the DescribeTopicDetectionJob
5423// operation to track the status of a job.
5424//
5425// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
5426// with awserr.Error's Code and Message methods to get detailed information about
5427// the error.
5428//
5429// See the AWS API reference guide for Amazon Comprehend's
5430// API operation StartTopicsDetectionJob for usage and error information.
5431//
5432// Returned Error Types:
5433//   * InvalidRequestException
5434//   The request is invalid.
5435//
5436//   * TooManyRequestsException
5437//   The number of requests exceeds the limit. Resubmit your request later.
5438//
5439//   * KmsKeyValidationException
5440//   The KMS customer managed key (CMK) entered cannot be validated. Verify the
5441//   key and re-enter it.
5442//
5443//   * TooManyTagsException
5444//   The request contains more tags than can be associated with a resource (50
5445//   tags per resource). The maximum number of tags includes both existing tags
5446//   and those included in your current request.
5447//
5448//   * InternalServerException
5449//   An internal server error occurred. Retry your request.
5450//
5451// See also, https://docs.aws.amazon.com/goto/WebAPI/comprehend-2017-11-27/StartTopicsDetectionJob
5452func (c *Comprehend) StartTopicsDetectionJob(input *StartTopicsDetectionJobInput) (*StartTopicsDetectionJobOutput, error) {
5453	req, out := c.StartTopicsDetectionJobRequest(input)
5454	return out, req.Send()
5455}
5456
5457// StartTopicsDetectionJobWithContext is the same as StartTopicsDetectionJob with the addition of
5458// the ability to pass a context and additional request options.
5459//
5460// See StartTopicsDetectionJob for details on how to use this API operation.
5461//
5462// The context must be non-nil and will be used for request cancellation. If
5463// the context is nil a panic will occur. In the future the SDK may create
5464// sub-contexts for http.Requests. See https://golang.org/pkg/context/
5465// for more information on using Contexts.
5466func (c *Comprehend) StartTopicsDetectionJobWithContext(ctx aws.Context, input *StartTopicsDetectionJobInput, opts ...request.Option) (*StartTopicsDetectionJobOutput, error) {
5467	req, out := c.StartTopicsDetectionJobRequest(input)
5468	req.SetContext(ctx)
5469	req.ApplyOptions(opts...)
5470	return out, req.Send()
5471}
5472
5473const opStopDominantLanguageDetectionJob = "StopDominantLanguageDetectionJob"
5474
5475// StopDominantLanguageDetectionJobRequest generates a "aws/request.Request" representing the
5476// client's request for the StopDominantLanguageDetectionJob operation. The "output" return
5477// value will be populated with the request's response once the request completes
5478// successfully.
5479//
5480// Use "Send" method on the returned Request to send the API call to the service.
5481// the "output" return value is not valid until after Send returns without error.
5482//
5483// See StopDominantLanguageDetectionJob for more information on using the StopDominantLanguageDetectionJob
5484// API call, and error handling.
5485//
5486// This method is useful when you want to inject custom logic or configuration
5487// into the SDK's request lifecycle. Such as custom headers, or retry logic.
5488//
5489//
5490//    // Example sending a request using the StopDominantLanguageDetectionJobRequest method.
5491//    req, resp := client.StopDominantLanguageDetectionJobRequest(params)
5492//
5493//    err := req.Send()
5494//    if err == nil { // resp is now filled
5495//        fmt.Println(resp)
5496//    }
5497//
5498// See also, https://docs.aws.amazon.com/goto/WebAPI/comprehend-2017-11-27/StopDominantLanguageDetectionJob
5499func (c *Comprehend) StopDominantLanguageDetectionJobRequest(input *StopDominantLanguageDetectionJobInput) (req *request.Request, output *StopDominantLanguageDetectionJobOutput) {
5500	op := &request.Operation{
5501		Name:       opStopDominantLanguageDetectionJob,
5502		HTTPMethod: "POST",
5503		HTTPPath:   "/",
5504	}
5505
5506	if input == nil {
5507		input = &StopDominantLanguageDetectionJobInput{}
5508	}
5509
5510	output = &StopDominantLanguageDetectionJobOutput{}
5511	req = c.newRequest(op, input, output)
5512	return
5513}
5514
5515// StopDominantLanguageDetectionJob API operation for Amazon Comprehend.
5516//
5517// Stops a dominant language detection job in progress.
5518//
5519// If the job state is IN_PROGRESS the job is marked for termination and put
5520// into the STOP_REQUESTED state. If the job completes before it can be stopped,
5521// it is put into the COMPLETED state; otherwise the job is stopped and put
5522// into the STOPPED state.
5523//
5524// If the job is in the COMPLETED or FAILED state when you call the StopDominantLanguageDetectionJob
5525// operation, the operation returns a 400 Internal Request Exception.
5526//
5527// When a job is stopped, any documents already processed are written to the
5528// output location.
5529//
5530// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
5531// with awserr.Error's Code and Message methods to get detailed information about
5532// the error.
5533//
5534// See the AWS API reference guide for Amazon Comprehend's
5535// API operation StopDominantLanguageDetectionJob for usage and error information.
5536//
5537// Returned Error Types:
5538//   * InvalidRequestException
5539//   The request is invalid.
5540//
5541//   * JobNotFoundException
5542//   The specified job was not found. Check the job ID and try again.
5543//
5544//   * InternalServerException
5545//   An internal server error occurred. Retry your request.
5546//
5547// See also, https://docs.aws.amazon.com/goto/WebAPI/comprehend-2017-11-27/StopDominantLanguageDetectionJob
5548func (c *Comprehend) StopDominantLanguageDetectionJob(input *StopDominantLanguageDetectionJobInput) (*StopDominantLanguageDetectionJobOutput, error) {
5549	req, out := c.StopDominantLanguageDetectionJobRequest(input)
5550	return out, req.Send()
5551}
5552
5553// StopDominantLanguageDetectionJobWithContext is the same as StopDominantLanguageDetectionJob with the addition of
5554// the ability to pass a context and additional request options.
5555//
5556// See StopDominantLanguageDetectionJob for details on how to use this API operation.
5557//
5558// The context must be non-nil and will be used for request cancellation. If
5559// the context is nil a panic will occur. In the future the SDK may create
5560// sub-contexts for http.Requests. See https://golang.org/pkg/context/
5561// for more information on using Contexts.
5562func (c *Comprehend) StopDominantLanguageDetectionJobWithContext(ctx aws.Context, input *StopDominantLanguageDetectionJobInput, opts ...request.Option) (*StopDominantLanguageDetectionJobOutput, error) {
5563	req, out := c.StopDominantLanguageDetectionJobRequest(input)
5564	req.SetContext(ctx)
5565	req.ApplyOptions(opts...)
5566	return out, req.Send()
5567}
5568
5569const opStopEntitiesDetectionJob = "StopEntitiesDetectionJob"
5570
5571// StopEntitiesDetectionJobRequest generates a "aws/request.Request" representing the
5572// client's request for the StopEntitiesDetectionJob operation. The "output" return
5573// value will be populated with the request's response once the request completes
5574// successfully.
5575//
5576// Use "Send" method on the returned Request to send the API call to the service.
5577// the "output" return value is not valid until after Send returns without error.
5578//
5579// See StopEntitiesDetectionJob for more information on using the StopEntitiesDetectionJob
5580// API call, and error handling.
5581//
5582// This method is useful when you want to inject custom logic or configuration
5583// into the SDK's request lifecycle. Such as custom headers, or retry logic.
5584//
5585//
5586//    // Example sending a request using the StopEntitiesDetectionJobRequest method.
5587//    req, resp := client.StopEntitiesDetectionJobRequest(params)
5588//
5589//    err := req.Send()
5590//    if err == nil { // resp is now filled
5591//        fmt.Println(resp)
5592//    }
5593//
5594// See also, https://docs.aws.amazon.com/goto/WebAPI/comprehend-2017-11-27/StopEntitiesDetectionJob
5595func (c *Comprehend) StopEntitiesDetectionJobRequest(input *StopEntitiesDetectionJobInput) (req *request.Request, output *StopEntitiesDetectionJobOutput) {
5596	op := &request.Operation{
5597		Name:       opStopEntitiesDetectionJob,
5598		HTTPMethod: "POST",
5599		HTTPPath:   "/",
5600	}
5601
5602	if input == nil {
5603		input = &StopEntitiesDetectionJobInput{}
5604	}
5605
5606	output = &StopEntitiesDetectionJobOutput{}
5607	req = c.newRequest(op, input, output)
5608	return
5609}
5610
5611// StopEntitiesDetectionJob API operation for Amazon Comprehend.
5612//
5613// Stops an entities detection job in progress.
5614//
5615// If the job state is IN_PROGRESS the job is marked for termination and put
5616// into the STOP_REQUESTED state. If the job completes before it can be stopped,
5617// it is put into the COMPLETED state; otherwise the job is stopped and put
5618// into the STOPPED state.
5619//
5620// If the job is in the COMPLETED or FAILED state when you call the StopDominantLanguageDetectionJob
5621// operation, the operation returns a 400 Internal Request Exception.
5622//
5623// When a job is stopped, any documents already processed are written to the
5624// output location.
5625//
5626// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
5627// with awserr.Error's Code and Message methods to get detailed information about
5628// the error.
5629//
5630// See the AWS API reference guide for Amazon Comprehend's
5631// API operation StopEntitiesDetectionJob for usage and error information.
5632//
5633// Returned Error Types:
5634//   * InvalidRequestException
5635//   The request is invalid.
5636//
5637//   * JobNotFoundException
5638//   The specified job was not found. Check the job ID and try again.
5639//
5640//   * InternalServerException
5641//   An internal server error occurred. Retry your request.
5642//
5643// See also, https://docs.aws.amazon.com/goto/WebAPI/comprehend-2017-11-27/StopEntitiesDetectionJob
5644func (c *Comprehend) StopEntitiesDetectionJob(input *StopEntitiesDetectionJobInput) (*StopEntitiesDetectionJobOutput, error) {
5645	req, out := c.StopEntitiesDetectionJobRequest(input)
5646	return out, req.Send()
5647}
5648
5649// StopEntitiesDetectionJobWithContext is the same as StopEntitiesDetectionJob with the addition of
5650// the ability to pass a context and additional request options.
5651//
5652// See StopEntitiesDetectionJob for details on how to use this API operation.
5653//
5654// The context must be non-nil and will be used for request cancellation. If
5655// the context is nil a panic will occur. In the future the SDK may create
5656// sub-contexts for http.Requests. See https://golang.org/pkg/context/
5657// for more information on using Contexts.
5658func (c *Comprehend) StopEntitiesDetectionJobWithContext(ctx aws.Context, input *StopEntitiesDetectionJobInput, opts ...request.Option) (*StopEntitiesDetectionJobOutput, error) {
5659	req, out := c.StopEntitiesDetectionJobRequest(input)
5660	req.SetContext(ctx)
5661	req.ApplyOptions(opts...)
5662	return out, req.Send()
5663}
5664
5665const opStopEventsDetectionJob = "StopEventsDetectionJob"
5666
5667// StopEventsDetectionJobRequest generates a "aws/request.Request" representing the
5668// client's request for the StopEventsDetectionJob operation. The "output" return
5669// value will be populated with the request's response once the request completes
5670// successfully.
5671//
5672// Use "Send" method on the returned Request to send the API call to the service.
5673// the "output" return value is not valid until after Send returns without error.
5674//
5675// See StopEventsDetectionJob for more information on using the StopEventsDetectionJob
5676// API call, and error handling.
5677//
5678// This method is useful when you want to inject custom logic or configuration
5679// into the SDK's request lifecycle. Such as custom headers, or retry logic.
5680//
5681//
5682//    // Example sending a request using the StopEventsDetectionJobRequest method.
5683//    req, resp := client.StopEventsDetectionJobRequest(params)
5684//
5685//    err := req.Send()
5686//    if err == nil { // resp is now filled
5687//        fmt.Println(resp)
5688//    }
5689//
5690// See also, https://docs.aws.amazon.com/goto/WebAPI/comprehend-2017-11-27/StopEventsDetectionJob
5691func (c *Comprehend) StopEventsDetectionJobRequest(input *StopEventsDetectionJobInput) (req *request.Request, output *StopEventsDetectionJobOutput) {
5692	op := &request.Operation{
5693		Name:       opStopEventsDetectionJob,
5694		HTTPMethod: "POST",
5695		HTTPPath:   "/",
5696	}
5697
5698	if input == nil {
5699		input = &StopEventsDetectionJobInput{}
5700	}
5701
5702	output = &StopEventsDetectionJobOutput{}
5703	req = c.newRequest(op, input, output)
5704	return
5705}
5706
5707// StopEventsDetectionJob API operation for Amazon Comprehend.
5708//
5709// Stops an events detection job in progress.
5710//
5711// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
5712// with awserr.Error's Code and Message methods to get detailed information about
5713// the error.
5714//
5715// See the AWS API reference guide for Amazon Comprehend's
5716// API operation StopEventsDetectionJob for usage and error information.
5717//
5718// Returned Error Types:
5719//   * InvalidRequestException
5720//   The request is invalid.
5721//
5722//   * JobNotFoundException
5723//   The specified job was not found. Check the job ID and try again.
5724//
5725//   * InternalServerException
5726//   An internal server error occurred. Retry your request.
5727//
5728// See also, https://docs.aws.amazon.com/goto/WebAPI/comprehend-2017-11-27/StopEventsDetectionJob
5729func (c *Comprehend) StopEventsDetectionJob(input *StopEventsDetectionJobInput) (*StopEventsDetectionJobOutput, error) {
5730	req, out := c.StopEventsDetectionJobRequest(input)
5731	return out, req.Send()
5732}
5733
5734// StopEventsDetectionJobWithContext is the same as StopEventsDetectionJob with the addition of
5735// the ability to pass a context and additional request options.
5736//
5737// See StopEventsDetectionJob for details on how to use this API operation.
5738//
5739// The context must be non-nil and will be used for request cancellation. If
5740// the context is nil a panic will occur. In the future the SDK may create
5741// sub-contexts for http.Requests. See https://golang.org/pkg/context/
5742// for more information on using Contexts.
5743func (c *Comprehend) StopEventsDetectionJobWithContext(ctx aws.Context, input *StopEventsDetectionJobInput, opts ...request.Option) (*StopEventsDetectionJobOutput, error) {
5744	req, out := c.StopEventsDetectionJobRequest(input)
5745	req.SetContext(ctx)
5746	req.ApplyOptions(opts...)
5747	return out, req.Send()
5748}
5749
5750const opStopKeyPhrasesDetectionJob = "StopKeyPhrasesDetectionJob"
5751
5752// StopKeyPhrasesDetectionJobRequest generates a "aws/request.Request" representing the
5753// client's request for the StopKeyPhrasesDetectionJob operation. The "output" return
5754// value will be populated with the request's response once the request completes
5755// successfully.
5756//
5757// Use "Send" method on the returned Request to send the API call to the service.
5758// the "output" return value is not valid until after Send returns without error.
5759//
5760// See StopKeyPhrasesDetectionJob for more information on using the StopKeyPhrasesDetectionJob
5761// API call, and error handling.
5762//
5763// This method is useful when you want to inject custom logic or configuration
5764// into the SDK's request lifecycle. Such as custom headers, or retry logic.
5765//
5766//
5767//    // Example sending a request using the StopKeyPhrasesDetectionJobRequest method.
5768//    req, resp := client.StopKeyPhrasesDetectionJobRequest(params)
5769//
5770//    err := req.Send()
5771//    if err == nil { // resp is now filled
5772//        fmt.Println(resp)
5773//    }
5774//
5775// See also, https://docs.aws.amazon.com/goto/WebAPI/comprehend-2017-11-27/StopKeyPhrasesDetectionJob
5776func (c *Comprehend) StopKeyPhrasesDetectionJobRequest(input *StopKeyPhrasesDetectionJobInput) (req *request.Request, output *StopKeyPhrasesDetectionJobOutput) {
5777	op := &request.Operation{
5778		Name:       opStopKeyPhrasesDetectionJob,
5779		HTTPMethod: "POST",
5780		HTTPPath:   "/",
5781	}
5782
5783	if input == nil {
5784		input = &StopKeyPhrasesDetectionJobInput{}
5785	}
5786
5787	output = &StopKeyPhrasesDetectionJobOutput{}
5788	req = c.newRequest(op, input, output)
5789	return
5790}
5791
5792// StopKeyPhrasesDetectionJob API operation for Amazon Comprehend.
5793//
5794// Stops a key phrases detection job in progress.
5795//
5796// If the job state is IN_PROGRESS the job is marked for termination and put
5797// into the STOP_REQUESTED state. If the job completes before it can be stopped,
5798// it is put into the COMPLETED state; otherwise the job is stopped and put
5799// into the STOPPED state.
5800//
5801// If the job is in the COMPLETED or FAILED state when you call the StopDominantLanguageDetectionJob
5802// operation, the operation returns a 400 Internal Request Exception.
5803//
5804// When a job is stopped, any documents already processed are written to the
5805// output location.
5806//
5807// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
5808// with awserr.Error's Code and Message methods to get detailed information about
5809// the error.
5810//
5811// See the AWS API reference guide for Amazon Comprehend's
5812// API operation StopKeyPhrasesDetectionJob for usage and error information.
5813//
5814// Returned Error Types:
5815//   * InvalidRequestException
5816//   The request is invalid.
5817//
5818//   * JobNotFoundException
5819//   The specified job was not found. Check the job ID and try again.
5820//
5821//   * InternalServerException
5822//   An internal server error occurred. Retry your request.
5823//
5824// See also, https://docs.aws.amazon.com/goto/WebAPI/comprehend-2017-11-27/StopKeyPhrasesDetectionJob
5825func (c *Comprehend) StopKeyPhrasesDetectionJob(input *StopKeyPhrasesDetectionJobInput) (*StopKeyPhrasesDetectionJobOutput, error) {
5826	req, out := c.StopKeyPhrasesDetectionJobRequest(input)
5827	return out, req.Send()
5828}
5829
5830// StopKeyPhrasesDetectionJobWithContext is the same as StopKeyPhrasesDetectionJob with the addition of
5831// the ability to pass a context and additional request options.
5832//
5833// See StopKeyPhrasesDetectionJob for details on how to use this API operation.
5834//
5835// The context must be non-nil and will be used for request cancellation. If
5836// the context is nil a panic will occur. In the future the SDK may create
5837// sub-contexts for http.Requests. See https://golang.org/pkg/context/
5838// for more information on using Contexts.
5839func (c *Comprehend) StopKeyPhrasesDetectionJobWithContext(ctx aws.Context, input *StopKeyPhrasesDetectionJobInput, opts ...request.Option) (*StopKeyPhrasesDetectionJobOutput, error) {
5840	req, out := c.StopKeyPhrasesDetectionJobRequest(input)
5841	req.SetContext(ctx)
5842	req.ApplyOptions(opts...)
5843	return out, req.Send()
5844}
5845
5846const opStopPiiEntitiesDetectionJob = "StopPiiEntitiesDetectionJob"
5847
5848// StopPiiEntitiesDetectionJobRequest generates a "aws/request.Request" representing the
5849// client's request for the StopPiiEntitiesDetectionJob operation. The "output" return
5850// value will be populated with the request's response once the request completes
5851// successfully.
5852//
5853// Use "Send" method on the returned Request to send the API call to the service.
5854// the "output" return value is not valid until after Send returns without error.
5855//
5856// See StopPiiEntitiesDetectionJob for more information on using the StopPiiEntitiesDetectionJob
5857// API call, and error handling.
5858//
5859// This method is useful when you want to inject custom logic or configuration
5860// into the SDK's request lifecycle. Such as custom headers, or retry logic.
5861//
5862//
5863//    // Example sending a request using the StopPiiEntitiesDetectionJobRequest method.
5864//    req, resp := client.StopPiiEntitiesDetectionJobRequest(params)
5865//
5866//    err := req.Send()
5867//    if err == nil { // resp is now filled
5868//        fmt.Println(resp)
5869//    }
5870//
5871// See also, https://docs.aws.amazon.com/goto/WebAPI/comprehend-2017-11-27/StopPiiEntitiesDetectionJob
5872func (c *Comprehend) StopPiiEntitiesDetectionJobRequest(input *StopPiiEntitiesDetectionJobInput) (req *request.Request, output *StopPiiEntitiesDetectionJobOutput) {
5873	op := &request.Operation{
5874		Name:       opStopPiiEntitiesDetectionJob,
5875		HTTPMethod: "POST",
5876		HTTPPath:   "/",
5877	}
5878
5879	if input == nil {
5880		input = &StopPiiEntitiesDetectionJobInput{}
5881	}
5882
5883	output = &StopPiiEntitiesDetectionJobOutput{}
5884	req = c.newRequest(op, input, output)
5885	return
5886}
5887
5888// StopPiiEntitiesDetectionJob API operation for Amazon Comprehend.
5889//
5890// Stops a PII entities detection job in progress.
5891//
5892// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
5893// with awserr.Error's Code and Message methods to get detailed information about
5894// the error.
5895//
5896// See the AWS API reference guide for Amazon Comprehend's
5897// API operation StopPiiEntitiesDetectionJob for usage and error information.
5898//
5899// Returned Error Types:
5900//   * InvalidRequestException
5901//   The request is invalid.
5902//
5903//   * JobNotFoundException
5904//   The specified job was not found. Check the job ID and try again.
5905//
5906//   * InternalServerException
5907//   An internal server error occurred. Retry your request.
5908//
5909// See also, https://docs.aws.amazon.com/goto/WebAPI/comprehend-2017-11-27/StopPiiEntitiesDetectionJob
5910func (c *Comprehend) StopPiiEntitiesDetectionJob(input *StopPiiEntitiesDetectionJobInput) (*StopPiiEntitiesDetectionJobOutput, error) {
5911	req, out := c.StopPiiEntitiesDetectionJobRequest(input)
5912	return out, req.Send()
5913}
5914
5915// StopPiiEntitiesDetectionJobWithContext is the same as StopPiiEntitiesDetectionJob with the addition of
5916// the ability to pass a context and additional request options.
5917//
5918// See StopPiiEntitiesDetectionJob for details on how to use this API operation.
5919//
5920// The context must be non-nil and will be used for request cancellation. If
5921// the context is nil a panic will occur. In the future the SDK may create
5922// sub-contexts for http.Requests. See https://golang.org/pkg/context/
5923// for more information on using Contexts.
5924func (c *Comprehend) StopPiiEntitiesDetectionJobWithContext(ctx aws.Context, input *StopPiiEntitiesDetectionJobInput, opts ...request.Option) (*StopPiiEntitiesDetectionJobOutput, error) {
5925	req, out := c.StopPiiEntitiesDetectionJobRequest(input)
5926	req.SetContext(ctx)
5927	req.ApplyOptions(opts...)
5928	return out, req.Send()
5929}
5930
5931const opStopSentimentDetectionJob = "StopSentimentDetectionJob"
5932
5933// StopSentimentDetectionJobRequest generates a "aws/request.Request" representing the
5934// client's request for the StopSentimentDetectionJob operation. The "output" return
5935// value will be populated with the request's response once the request completes
5936// successfully.
5937//
5938// Use "Send" method on the returned Request to send the API call to the service.
5939// the "output" return value is not valid until after Send returns without error.
5940//
5941// See StopSentimentDetectionJob for more information on using the StopSentimentDetectionJob
5942// API call, and error handling.
5943//
5944// This method is useful when you want to inject custom logic or configuration
5945// into the SDK's request lifecycle. Such as custom headers, or retry logic.
5946//
5947//
5948//    // Example sending a request using the StopSentimentDetectionJobRequest method.
5949//    req, resp := client.StopSentimentDetectionJobRequest(params)
5950//
5951//    err := req.Send()
5952//    if err == nil { // resp is now filled
5953//        fmt.Println(resp)
5954//    }
5955//
5956// See also, https://docs.aws.amazon.com/goto/WebAPI/comprehend-2017-11-27/StopSentimentDetectionJob
5957func (c *Comprehend) StopSentimentDetectionJobRequest(input *StopSentimentDetectionJobInput) (req *request.Request, output *StopSentimentDetectionJobOutput) {
5958	op := &request.Operation{
5959		Name:       opStopSentimentDetectionJob,
5960		HTTPMethod: "POST",
5961		HTTPPath:   "/",
5962	}
5963
5964	if input == nil {
5965		input = &StopSentimentDetectionJobInput{}
5966	}
5967
5968	output = &StopSentimentDetectionJobOutput{}
5969	req = c.newRequest(op, input, output)
5970	return
5971}
5972
5973// StopSentimentDetectionJob API operation for Amazon Comprehend.
5974//
5975// Stops a sentiment detection job in progress.
5976//
5977// If the job state is IN_PROGRESS the job is marked for termination and put
5978// into the STOP_REQUESTED state. If the job completes before it can be stopped,
5979// it is put into the COMPLETED state; otherwise the job is be stopped and put
5980// into the STOPPED state.
5981//
5982// If the job is in the COMPLETED or FAILED state when you call the StopDominantLanguageDetectionJob
5983// operation, the operation returns a 400 Internal Request Exception.
5984//
5985// When a job is stopped, any documents already processed are written to the
5986// output location.
5987//
5988// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
5989// with awserr.Error's Code and Message methods to get detailed information about
5990// the error.
5991//
5992// See the AWS API reference guide for Amazon Comprehend's
5993// API operation StopSentimentDetectionJob for usage and error information.
5994//
5995// Returned Error Types:
5996//   * InvalidRequestException
5997//   The request is invalid.
5998//
5999//   * JobNotFoundException
6000//   The specified job was not found. Check the job ID and try again.
6001//
6002//   * InternalServerException
6003//   An internal server error occurred. Retry your request.
6004//
6005// See also, https://docs.aws.amazon.com/goto/WebAPI/comprehend-2017-11-27/StopSentimentDetectionJob
6006func (c *Comprehend) StopSentimentDetectionJob(input *StopSentimentDetectionJobInput) (*StopSentimentDetectionJobOutput, error) {
6007	req, out := c.StopSentimentDetectionJobRequest(input)
6008	return out, req.Send()
6009}
6010
6011// StopSentimentDetectionJobWithContext is the same as StopSentimentDetectionJob with the addition of
6012// the ability to pass a context and additional request options.
6013//
6014// See StopSentimentDetectionJob for details on how to use this API operation.
6015//
6016// The context must be non-nil and will be used for request cancellation. If
6017// the context is nil a panic will occur. In the future the SDK may create
6018// sub-contexts for http.Requests. See https://golang.org/pkg/context/
6019// for more information on using Contexts.
6020func (c *Comprehend) StopSentimentDetectionJobWithContext(ctx aws.Context, input *StopSentimentDetectionJobInput, opts ...request.Option) (*StopSentimentDetectionJobOutput, error) {
6021	req, out := c.StopSentimentDetectionJobRequest(input)
6022	req.SetContext(ctx)
6023	req.ApplyOptions(opts...)
6024	return out, req.Send()
6025}
6026
6027const opStopTrainingDocumentClassifier = "StopTrainingDocumentClassifier"
6028
6029// StopTrainingDocumentClassifierRequest generates a "aws/request.Request" representing the
6030// client's request for the StopTrainingDocumentClassifier operation. The "output" return
6031// value will be populated with the request's response once the request completes
6032// successfully.
6033//
6034// Use "Send" method on the returned Request to send the API call to the service.
6035// the "output" return value is not valid until after Send returns without error.
6036//
6037// See StopTrainingDocumentClassifier for more information on using the StopTrainingDocumentClassifier
6038// API call, and error handling.
6039//
6040// This method is useful when you want to inject custom logic or configuration
6041// into the SDK's request lifecycle. Such as custom headers, or retry logic.
6042//
6043//
6044//    // Example sending a request using the StopTrainingDocumentClassifierRequest method.
6045//    req, resp := client.StopTrainingDocumentClassifierRequest(params)
6046//
6047//    err := req.Send()
6048//    if err == nil { // resp is now filled
6049//        fmt.Println(resp)
6050//    }
6051//
6052// See also, https://docs.aws.amazon.com/goto/WebAPI/comprehend-2017-11-27/StopTrainingDocumentClassifier
6053func (c *Comprehend) StopTrainingDocumentClassifierRequest(input *StopTrainingDocumentClassifierInput) (req *request.Request, output *StopTrainingDocumentClassifierOutput) {
6054	op := &request.Operation{
6055		Name:       opStopTrainingDocumentClassifier,
6056		HTTPMethod: "POST",
6057		HTTPPath:   "/",
6058	}
6059
6060	if input == nil {
6061		input = &StopTrainingDocumentClassifierInput{}
6062	}
6063
6064	output = &StopTrainingDocumentClassifierOutput{}
6065	req = c.newRequest(op, input, output)
6066	req.Handlers.Unmarshal.Swap(jsonrpc.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler)
6067	return
6068}
6069
6070// StopTrainingDocumentClassifier API operation for Amazon Comprehend.
6071//
6072// Stops a document classifier training job while in progress.
6073//
6074// If the training job state is TRAINING, the job is marked for termination
6075// and put into the STOP_REQUESTED state. If the training job completes before
6076// it can be stopped, it is put into the TRAINED; otherwise the training job
6077// is stopped and put into the STOPPED state and the service sends back an HTTP
6078// 200 response with an empty HTTP body.
6079//
6080// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
6081// with awserr.Error's Code and Message methods to get detailed information about
6082// the error.
6083//
6084// See the AWS API reference guide for Amazon Comprehend's
6085// API operation StopTrainingDocumentClassifier for usage and error information.
6086//
6087// Returned Error Types:
6088//   * InvalidRequestException
6089//   The request is invalid.
6090//
6091//   * TooManyRequestsException
6092//   The number of requests exceeds the limit. Resubmit your request later.
6093//
6094//   * ResourceNotFoundException
6095//   The specified resource ARN was not found. Check the ARN and try your request
6096//   again.
6097//
6098//   * InternalServerException
6099//   An internal server error occurred. Retry your request.
6100//
6101// See also, https://docs.aws.amazon.com/goto/WebAPI/comprehend-2017-11-27/StopTrainingDocumentClassifier
6102func (c *Comprehend) StopTrainingDocumentClassifier(input *StopTrainingDocumentClassifierInput) (*StopTrainingDocumentClassifierOutput, error) {
6103	req, out := c.StopTrainingDocumentClassifierRequest(input)
6104	return out, req.Send()
6105}
6106
6107// StopTrainingDocumentClassifierWithContext is the same as StopTrainingDocumentClassifier with the addition of
6108// the ability to pass a context and additional request options.
6109//
6110// See StopTrainingDocumentClassifier for details on how to use this API operation.
6111//
6112// The context must be non-nil and will be used for request cancellation. If
6113// the context is nil a panic will occur. In the future the SDK may create
6114// sub-contexts for http.Requests. See https://golang.org/pkg/context/
6115// for more information on using Contexts.
6116func (c *Comprehend) StopTrainingDocumentClassifierWithContext(ctx aws.Context, input *StopTrainingDocumentClassifierInput, opts ...request.Option) (*StopTrainingDocumentClassifierOutput, error) {
6117	req, out := c.StopTrainingDocumentClassifierRequest(input)
6118	req.SetContext(ctx)
6119	req.ApplyOptions(opts...)
6120	return out, req.Send()
6121}
6122
6123const opStopTrainingEntityRecognizer = "StopTrainingEntityRecognizer"
6124
6125// StopTrainingEntityRecognizerRequest generates a "aws/request.Request" representing the
6126// client's request for the StopTrainingEntityRecognizer operation. The "output" return
6127// value will be populated with the request's response once the request completes
6128// successfully.
6129//
6130// Use "Send" method on the returned Request to send the API call to the service.
6131// the "output" return value is not valid until after Send returns without error.
6132//
6133// See StopTrainingEntityRecognizer for more information on using the StopTrainingEntityRecognizer
6134// API call, and error handling.
6135//
6136// This method is useful when you want to inject custom logic or configuration
6137// into the SDK's request lifecycle. Such as custom headers, or retry logic.
6138//
6139//
6140//    // Example sending a request using the StopTrainingEntityRecognizerRequest method.
6141//    req, resp := client.StopTrainingEntityRecognizerRequest(params)
6142//
6143//    err := req.Send()
6144//    if err == nil { // resp is now filled
6145//        fmt.Println(resp)
6146//    }
6147//
6148// See also, https://docs.aws.amazon.com/goto/WebAPI/comprehend-2017-11-27/StopTrainingEntityRecognizer
6149func (c *Comprehend) StopTrainingEntityRecognizerRequest(input *StopTrainingEntityRecognizerInput) (req *request.Request, output *StopTrainingEntityRecognizerOutput) {
6150	op := &request.Operation{
6151		Name:       opStopTrainingEntityRecognizer,
6152		HTTPMethod: "POST",
6153		HTTPPath:   "/",
6154	}
6155
6156	if input == nil {
6157		input = &StopTrainingEntityRecognizerInput{}
6158	}
6159
6160	output = &StopTrainingEntityRecognizerOutput{}
6161	req = c.newRequest(op, input, output)
6162	req.Handlers.Unmarshal.Swap(jsonrpc.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler)
6163	return
6164}
6165
6166// StopTrainingEntityRecognizer API operation for Amazon Comprehend.
6167//
6168// Stops an entity recognizer training job while in progress.
6169//
6170// If the training job state is TRAINING, the job is marked for termination
6171// and put into the STOP_REQUESTED state. If the training job completes before
6172// it can be stopped, it is put into the TRAINED; otherwise the training job
6173// is stopped and putted into the STOPPED state and the service sends back an
6174// HTTP 200 response with an empty HTTP body.
6175//
6176// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
6177// with awserr.Error's Code and Message methods to get detailed information about
6178// the error.
6179//
6180// See the AWS API reference guide for Amazon Comprehend's
6181// API operation StopTrainingEntityRecognizer for usage and error information.
6182//
6183// Returned Error Types:
6184//   * InvalidRequestException
6185//   The request is invalid.
6186//
6187//   * TooManyRequestsException
6188//   The number of requests exceeds the limit. Resubmit your request later.
6189//
6190//   * ResourceNotFoundException
6191//   The specified resource ARN was not found. Check the ARN and try your request
6192//   again.
6193//
6194//   * InternalServerException
6195//   An internal server error occurred. Retry your request.
6196//
6197// See also, https://docs.aws.amazon.com/goto/WebAPI/comprehend-2017-11-27/StopTrainingEntityRecognizer
6198func (c *Comprehend) StopTrainingEntityRecognizer(input *StopTrainingEntityRecognizerInput) (*StopTrainingEntityRecognizerOutput, error) {
6199	req, out := c.StopTrainingEntityRecognizerRequest(input)
6200	return out, req.Send()
6201}
6202
6203// StopTrainingEntityRecognizerWithContext is the same as StopTrainingEntityRecognizer with the addition of
6204// the ability to pass a context and additional request options.
6205//
6206// See StopTrainingEntityRecognizer for details on how to use this API operation.
6207//
6208// The context must be non-nil and will be used for request cancellation. If
6209// the context is nil a panic will occur. In the future the SDK may create
6210// sub-contexts for http.Requests. See https://golang.org/pkg/context/
6211// for more information on using Contexts.
6212func (c *Comprehend) StopTrainingEntityRecognizerWithContext(ctx aws.Context, input *StopTrainingEntityRecognizerInput, opts ...request.Option) (*StopTrainingEntityRecognizerOutput, error) {
6213	req, out := c.StopTrainingEntityRecognizerRequest(input)
6214	req.SetContext(ctx)
6215	req.ApplyOptions(opts...)
6216	return out, req.Send()
6217}
6218
6219const opTagResource = "TagResource"
6220
6221// TagResourceRequest generates a "aws/request.Request" representing the
6222// client's request for the TagResource operation. The "output" return
6223// value will be populated with the request's response once the request completes
6224// successfully.
6225//
6226// Use "Send" method on the returned Request to send the API call to the service.
6227// the "output" return value is not valid until after Send returns without error.
6228//
6229// See TagResource for more information on using the TagResource
6230// API call, and error handling.
6231//
6232// This method is useful when you want to inject custom logic or configuration
6233// into the SDK's request lifecycle. Such as custom headers, or retry logic.
6234//
6235//
6236//    // Example sending a request using the TagResourceRequest method.
6237//    req, resp := client.TagResourceRequest(params)
6238//
6239//    err := req.Send()
6240//    if err == nil { // resp is now filled
6241//        fmt.Println(resp)
6242//    }
6243//
6244// See also, https://docs.aws.amazon.com/goto/WebAPI/comprehend-2017-11-27/TagResource
6245func (c *Comprehend) TagResourceRequest(input *TagResourceInput) (req *request.Request, output *TagResourceOutput) {
6246	op := &request.Operation{
6247		Name:       opTagResource,
6248		HTTPMethod: "POST",
6249		HTTPPath:   "/",
6250	}
6251
6252	if input == nil {
6253		input = &TagResourceInput{}
6254	}
6255
6256	output = &TagResourceOutput{}
6257	req = c.newRequest(op, input, output)
6258	req.Handlers.Unmarshal.Swap(jsonrpc.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler)
6259	return
6260}
6261
6262// TagResource API operation for Amazon Comprehend.
6263//
6264// Associates a specific tag with an Amazon Comprehend resource. A tag is a
6265// key-value pair that adds as a metadata to a resource used by Amazon Comprehend.
6266// For example, a tag with "Sales" as the key might be added to a resource to
6267// indicate its use by the sales department.
6268//
6269// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
6270// with awserr.Error's Code and Message methods to get detailed information about
6271// the error.
6272//
6273// See the AWS API reference guide for Amazon Comprehend's
6274// API operation TagResource for usage and error information.
6275//
6276// Returned Error Types:
6277//   * InvalidRequestException
6278//   The request is invalid.
6279//
6280//   * ConcurrentModificationException
6281//   Concurrent modification of the tags associated with an Amazon Comprehend
6282//   resource is not supported.
6283//
6284//   * ResourceNotFoundException
6285//   The specified resource ARN was not found. Check the ARN and try your request
6286//   again.
6287//
6288//   * TooManyTagsException
6289//   The request contains more tags than can be associated with a resource (50
6290//   tags per resource). The maximum number of tags includes both existing tags
6291//   and those included in your current request.
6292//
6293//   * InternalServerException
6294//   An internal server error occurred. Retry your request.
6295//
6296// See also, https://docs.aws.amazon.com/goto/WebAPI/comprehend-2017-11-27/TagResource
6297func (c *Comprehend) TagResource(input *TagResourceInput) (*TagResourceOutput, error) {
6298	req, out := c.TagResourceRequest(input)
6299	return out, req.Send()
6300}
6301
6302// TagResourceWithContext is the same as TagResource with the addition of
6303// the ability to pass a context and additional request options.
6304//
6305// See TagResource for details on how to use this API operation.
6306//
6307// The context must be non-nil and will be used for request cancellation. If
6308// the context is nil a panic will occur. In the future the SDK may create
6309// sub-contexts for http.Requests. See https://golang.org/pkg/context/
6310// for more information on using Contexts.
6311func (c *Comprehend) TagResourceWithContext(ctx aws.Context, input *TagResourceInput, opts ...request.Option) (*TagResourceOutput, error) {
6312	req, out := c.TagResourceRequest(input)
6313	req.SetContext(ctx)
6314	req.ApplyOptions(opts...)
6315	return out, req.Send()
6316}
6317
6318const opUntagResource = "UntagResource"
6319
6320// UntagResourceRequest generates a "aws/request.Request" representing the
6321// client's request for the UntagResource operation. The "output" return
6322// value will be populated with the request's response once the request completes
6323// successfully.
6324//
6325// Use "Send" method on the returned Request to send the API call to the service.
6326// the "output" return value is not valid until after Send returns without error.
6327//
6328// See UntagResource for more information on using the UntagResource
6329// API call, and error handling.
6330//
6331// This method is useful when you want to inject custom logic or configuration
6332// into the SDK's request lifecycle. Such as custom headers, or retry logic.
6333//
6334//
6335//    // Example sending a request using the UntagResourceRequest method.
6336//    req, resp := client.UntagResourceRequest(params)
6337//
6338//    err := req.Send()
6339//    if err == nil { // resp is now filled
6340//        fmt.Println(resp)
6341//    }
6342//
6343// See also, https://docs.aws.amazon.com/goto/WebAPI/comprehend-2017-11-27/UntagResource
6344func (c *Comprehend) UntagResourceRequest(input *UntagResourceInput) (req *request.Request, output *UntagResourceOutput) {
6345	op := &request.Operation{
6346		Name:       opUntagResource,
6347		HTTPMethod: "POST",
6348		HTTPPath:   "/",
6349	}
6350
6351	if input == nil {
6352		input = &UntagResourceInput{}
6353	}
6354
6355	output = &UntagResourceOutput{}
6356	req = c.newRequest(op, input, output)
6357	req.Handlers.Unmarshal.Swap(jsonrpc.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler)
6358	return
6359}
6360
6361// UntagResource API operation for Amazon Comprehend.
6362//
6363// Removes a specific tag associated with an Amazon Comprehend resource.
6364//
6365// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
6366// with awserr.Error's Code and Message methods to get detailed information about
6367// the error.
6368//
6369// See the AWS API reference guide for Amazon Comprehend's
6370// API operation UntagResource for usage and error information.
6371//
6372// Returned Error Types:
6373//   * TooManyTagKeysException
6374//   The request contains more tag keys than can be associated with a resource
6375//   (50 tag keys per resource).
6376//
6377//   * InvalidRequestException
6378//   The request is invalid.
6379//
6380//   * ConcurrentModificationException
6381//   Concurrent modification of the tags associated with an Amazon Comprehend
6382//   resource is not supported.
6383//
6384//   * ResourceNotFoundException
6385//   The specified resource ARN was not found. Check the ARN and try your request
6386//   again.
6387//
6388//   * InternalServerException
6389//   An internal server error occurred. Retry your request.
6390//
6391// See also, https://docs.aws.amazon.com/goto/WebAPI/comprehend-2017-11-27/UntagResource
6392func (c *Comprehend) UntagResource(input *UntagResourceInput) (*UntagResourceOutput, error) {
6393	req, out := c.UntagResourceRequest(input)
6394	return out, req.Send()
6395}
6396
6397// UntagResourceWithContext is the same as UntagResource with the addition of
6398// the ability to pass a context and additional request options.
6399//
6400// See UntagResource for details on how to use this API operation.
6401//
6402// The context must be non-nil and will be used for request cancellation. If
6403// the context is nil a panic will occur. In the future the SDK may create
6404// sub-contexts for http.Requests. See https://golang.org/pkg/context/
6405// for more information on using Contexts.
6406func (c *Comprehend) UntagResourceWithContext(ctx aws.Context, input *UntagResourceInput, opts ...request.Option) (*UntagResourceOutput, error) {
6407	req, out := c.UntagResourceRequest(input)
6408	req.SetContext(ctx)
6409	req.ApplyOptions(opts...)
6410	return out, req.Send()
6411}
6412
6413const opUpdateEndpoint = "UpdateEndpoint"
6414
6415// UpdateEndpointRequest generates a "aws/request.Request" representing the
6416// client's request for the UpdateEndpoint operation. The "output" return
6417// value will be populated with the request's response once the request completes
6418// successfully.
6419//
6420// Use "Send" method on the returned Request to send the API call to the service.
6421// the "output" return value is not valid until after Send returns without error.
6422//
6423// See UpdateEndpoint for more information on using the UpdateEndpoint
6424// API call, and error handling.
6425//
6426// This method is useful when you want to inject custom logic or configuration
6427// into the SDK's request lifecycle. Such as custom headers, or retry logic.
6428//
6429//
6430//    // Example sending a request using the UpdateEndpointRequest method.
6431//    req, resp := client.UpdateEndpointRequest(params)
6432//
6433//    err := req.Send()
6434//    if err == nil { // resp is now filled
6435//        fmt.Println(resp)
6436//    }
6437//
6438// See also, https://docs.aws.amazon.com/goto/WebAPI/comprehend-2017-11-27/UpdateEndpoint
6439func (c *Comprehend) UpdateEndpointRequest(input *UpdateEndpointInput) (req *request.Request, output *UpdateEndpointOutput) {
6440	op := &request.Operation{
6441		Name:       opUpdateEndpoint,
6442		HTTPMethod: "POST",
6443		HTTPPath:   "/",
6444	}
6445
6446	if input == nil {
6447		input = &UpdateEndpointInput{}
6448	}
6449
6450	output = &UpdateEndpointOutput{}
6451	req = c.newRequest(op, input, output)
6452	req.Handlers.Unmarshal.Swap(jsonrpc.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler)
6453	return
6454}
6455
6456// UpdateEndpoint API operation for Amazon Comprehend.
6457//
6458// Updates information about the specified endpoint.
6459//
6460// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
6461// with awserr.Error's Code and Message methods to get detailed information about
6462// the error.
6463//
6464// See the AWS API reference guide for Amazon Comprehend's
6465// API operation UpdateEndpoint for usage and error information.
6466//
6467// Returned Error Types:
6468//   * InvalidRequestException
6469//   The request is invalid.
6470//
6471//   * TooManyRequestsException
6472//   The number of requests exceeds the limit. Resubmit your request later.
6473//
6474//   * ResourceInUseException
6475//   The specified resource name is already in use. Use a different name and try
6476//   your request again.
6477//
6478//   * ResourceLimitExceededException
6479//   The maximum number of resources per account has been exceeded. Review the
6480//   resources, and then try your request again.
6481//
6482//   * ResourceNotFoundException
6483//   The specified resource ARN was not found. Check the ARN and try your request
6484//   again.
6485//
6486//   * ResourceUnavailableException
6487//   The specified resource is not available. Check the resource and try your
6488//   request again.
6489//
6490//   * InternalServerException
6491//   An internal server error occurred. Retry your request.
6492//
6493// See also, https://docs.aws.amazon.com/goto/WebAPI/comprehend-2017-11-27/UpdateEndpoint
6494func (c *Comprehend) UpdateEndpoint(input *UpdateEndpointInput) (*UpdateEndpointOutput, error) {
6495	req, out := c.UpdateEndpointRequest(input)
6496	return out, req.Send()
6497}
6498
6499// UpdateEndpointWithContext is the same as UpdateEndpoint with the addition of
6500// the ability to pass a context and additional request options.
6501//
6502// See UpdateEndpoint for details on how to use this API operation.
6503//
6504// The context must be non-nil and will be used for request cancellation. If
6505// the context is nil a panic will occur. In the future the SDK may create
6506// sub-contexts for http.Requests. See https://golang.org/pkg/context/
6507// for more information on using Contexts.
6508func (c *Comprehend) UpdateEndpointWithContext(ctx aws.Context, input *UpdateEndpointInput, opts ...request.Option) (*UpdateEndpointOutput, error) {
6509	req, out := c.UpdateEndpointRequest(input)
6510	req.SetContext(ctx)
6511	req.ApplyOptions(opts...)
6512	return out, req.Send()
6513}
6514
6515// An augmented manifest file that provides training data for your custom model.
6516// An augmented manifest file is a labeled dataset that is produced by Amazon
6517// SageMaker Ground Truth.
6518type AugmentedManifestsListItem struct {
6519	_ struct{} `type:"structure"`
6520
6521	// The S3 prefix to the annotation files that are referred in the augmented
6522	// manifest file.
6523	AnnotationDataS3Uri *string `type:"string"`
6524
6525	// The JSON attribute that contains the annotations for your training documents.
6526	// The number of attribute names that you specify depends on whether your augmented
6527	// manifest file is the output of a single labeling job or a chained labeling
6528	// job.
6529	//
6530	// If your file is the output of a single labeling job, specify the LabelAttributeName
6531	// key that was used when the job was created in Ground Truth.
6532	//
6533	// If your file is the output of a chained labeling job, specify the LabelAttributeName
6534	// key for one or more jobs in the chain. Each LabelAttributeName key provides
6535	// the annotations from an individual job.
6536	//
6537	// AttributeNames is a required field
6538	AttributeNames []*string `type:"list" required:"true"`
6539
6540	// The type of augmented manifest. PlainTextDocument or SemiStructuredDocument.
6541	// If you don't specify, the default is PlainTextDocument.
6542	//
6543	//    * PLAIN_TEXT_DOCUMENT A document type that represents any unicode text
6544	//    that is encoded in UTF-8.
6545	//
6546	//    * SEMI_STRUCTURED_DOCUMENT A document type with positional and structural
6547	//    context, like a PDF. For training with Amazon Comprehend, only PDFs are
6548	//    supported. For inference, Amazon Comprehend support PDFs, DOCX and TXT.
6549	DocumentType *string `type:"string" enum:"AugmentedManifestsDocumentTypeFormat"`
6550
6551	// The Amazon S3 location of the augmented manifest file.
6552	//
6553	// S3Uri is a required field
6554	S3Uri *string `type:"string" required:"true"`
6555
6556	// The S3 prefix to the source files (PDFs) that are referred to in the augmented
6557	// manifest file.
6558	SourceDocumentsS3Uri *string `type:"string"`
6559
6560	// The purpose of the data you've provided in the augmented manifest. You can
6561	// either train or test this data. If you don't specify, the default is train.
6562	//
6563	// TRAIN - all of the documents in the manifest will be used for training. If
6564	// no test documents are provided, Amazon Comprehend will automatically reserve
6565	// a portion of the training documents for testing.
6566	//
6567	// TEST - all of the documents in the manifest will be used for testing.
6568	Split *string `type:"string" enum:"Split"`
6569}
6570
6571// String returns the string representation.
6572//
6573// API parameter values that are decorated as "sensitive" in the API will not
6574// be included in the string output. The member name will be present, but the
6575// value will be replaced with "sensitive".
6576func (s AugmentedManifestsListItem) String() string {
6577	return awsutil.Prettify(s)
6578}
6579
6580// GoString returns the string representation.
6581//
6582// API parameter values that are decorated as "sensitive" in the API will not
6583// be included in the string output. The member name will be present, but the
6584// value will be replaced with "sensitive".
6585func (s AugmentedManifestsListItem) GoString() string {
6586	return s.String()
6587}
6588
6589// Validate inspects the fields of the type to determine if they are valid.
6590func (s *AugmentedManifestsListItem) Validate() error {
6591	invalidParams := request.ErrInvalidParams{Context: "AugmentedManifestsListItem"}
6592	if s.AttributeNames == nil {
6593		invalidParams.Add(request.NewErrParamRequired("AttributeNames"))
6594	}
6595	if s.S3Uri == nil {
6596		invalidParams.Add(request.NewErrParamRequired("S3Uri"))
6597	}
6598
6599	if invalidParams.Len() > 0 {
6600		return invalidParams
6601	}
6602	return nil
6603}
6604
6605// SetAnnotationDataS3Uri sets the AnnotationDataS3Uri field's value.
6606func (s *AugmentedManifestsListItem) SetAnnotationDataS3Uri(v string) *AugmentedManifestsListItem {
6607	s.AnnotationDataS3Uri = &v
6608	return s
6609}
6610
6611// SetAttributeNames sets the AttributeNames field's value.
6612func (s *AugmentedManifestsListItem) SetAttributeNames(v []*string) *AugmentedManifestsListItem {
6613	s.AttributeNames = v
6614	return s
6615}
6616
6617// SetDocumentType sets the DocumentType field's value.
6618func (s *AugmentedManifestsListItem) SetDocumentType(v string) *AugmentedManifestsListItem {
6619	s.DocumentType = &v
6620	return s
6621}
6622
6623// SetS3Uri sets the S3Uri field's value.
6624func (s *AugmentedManifestsListItem) SetS3Uri(v string) *AugmentedManifestsListItem {
6625	s.S3Uri = &v
6626	return s
6627}
6628
6629// SetSourceDocumentsS3Uri sets the SourceDocumentsS3Uri field's value.
6630func (s *AugmentedManifestsListItem) SetSourceDocumentsS3Uri(v string) *AugmentedManifestsListItem {
6631	s.SourceDocumentsS3Uri = &v
6632	return s
6633}
6634
6635// SetSplit sets the Split field's value.
6636func (s *AugmentedManifestsListItem) SetSplit(v string) *AugmentedManifestsListItem {
6637	s.Split = &v
6638	return s
6639}
6640
6641type BatchDetectDominantLanguageInput struct {
6642	_ struct{} `type:"structure"`
6643
6644	// A list containing the text of the input documents. The list can contain a
6645	// maximum of 25 documents. Each document should contain at least 20 characters
6646	// and must contain fewer than 5,000 bytes of UTF-8 encoded characters.
6647	//
6648	// TextList is a sensitive parameter and its value will be
6649	// replaced with "sensitive" in string returned by BatchDetectDominantLanguageInput's
6650	// String and GoString methods.
6651	//
6652	// TextList is a required field
6653	TextList []*string `type:"list" required:"true" sensitive:"true"`
6654}
6655
6656// String returns the string representation.
6657//
6658// API parameter values that are decorated as "sensitive" in the API will not
6659// be included in the string output. The member name will be present, but the
6660// value will be replaced with "sensitive".
6661func (s BatchDetectDominantLanguageInput) String() string {
6662	return awsutil.Prettify(s)
6663}
6664
6665// GoString returns the string representation.
6666//
6667// API parameter values that are decorated as "sensitive" in the API will not
6668// be included in the string output. The member name will be present, but the
6669// value will be replaced with "sensitive".
6670func (s BatchDetectDominantLanguageInput) GoString() string {
6671	return s.String()
6672}
6673
6674// Validate inspects the fields of the type to determine if they are valid.
6675func (s *BatchDetectDominantLanguageInput) Validate() error {
6676	invalidParams := request.ErrInvalidParams{Context: "BatchDetectDominantLanguageInput"}
6677	if s.TextList == nil {
6678		invalidParams.Add(request.NewErrParamRequired("TextList"))
6679	}
6680
6681	if invalidParams.Len() > 0 {
6682		return invalidParams
6683	}
6684	return nil
6685}
6686
6687// SetTextList sets the TextList field's value.
6688func (s *BatchDetectDominantLanguageInput) SetTextList(v []*string) *BatchDetectDominantLanguageInput {
6689	s.TextList = v
6690	return s
6691}
6692
6693// The result of calling the operation. The operation returns one object for
6694// each document that is successfully processed by the operation.
6695type BatchDetectDominantLanguageItemResult struct {
6696	_ struct{} `type:"structure"`
6697
6698	// The zero-based index of the document in the input list.
6699	Index *int64 `type:"integer"`
6700
6701	// One or more DominantLanguage objects describing the dominant languages in
6702	// the document.
6703	Languages []*DominantLanguage `type:"list"`
6704}
6705
6706// String returns the string representation.
6707//
6708// API parameter values that are decorated as "sensitive" in the API will not
6709// be included in the string output. The member name will be present, but the
6710// value will be replaced with "sensitive".
6711func (s BatchDetectDominantLanguageItemResult) String() string {
6712	return awsutil.Prettify(s)
6713}
6714
6715// GoString returns the string representation.
6716//
6717// API parameter values that are decorated as "sensitive" in the API will not
6718// be included in the string output. The member name will be present, but the
6719// value will be replaced with "sensitive".
6720func (s BatchDetectDominantLanguageItemResult) GoString() string {
6721	return s.String()
6722}
6723
6724// SetIndex sets the Index field's value.
6725func (s *BatchDetectDominantLanguageItemResult) SetIndex(v int64) *BatchDetectDominantLanguageItemResult {
6726	s.Index = &v
6727	return s
6728}
6729
6730// SetLanguages sets the Languages field's value.
6731func (s *BatchDetectDominantLanguageItemResult) SetLanguages(v []*DominantLanguage) *BatchDetectDominantLanguageItemResult {
6732	s.Languages = v
6733	return s
6734}
6735
6736type BatchDetectDominantLanguageOutput struct {
6737	_ struct{} `type:"structure" sensitive:"true"`
6738
6739	// A list containing one object for each document that contained an error. The
6740	// results are sorted in ascending order by the Index field and match the order
6741	// of the documents in the input list. If there are no errors in the batch,
6742	// the ErrorList is empty.
6743	//
6744	// ErrorList is a required field
6745	ErrorList []*BatchItemError `type:"list" required:"true"`
6746
6747	// A list of objects containing the results of the operation. The results are
6748	// sorted in ascending order by the Index field and match the order of the documents
6749	// in the input list. If all of the documents contain an error, the ResultList
6750	// is empty.
6751	//
6752	// ResultList is a required field
6753	ResultList []*BatchDetectDominantLanguageItemResult `type:"list" required:"true"`
6754}
6755
6756// String returns the string representation.
6757//
6758// API parameter values that are decorated as "sensitive" in the API will not
6759// be included in the string output. The member name will be present, but the
6760// value will be replaced with "sensitive".
6761func (s BatchDetectDominantLanguageOutput) String() string {
6762	return awsutil.Prettify(s)
6763}
6764
6765// GoString returns the string representation.
6766//
6767// API parameter values that are decorated as "sensitive" in the API will not
6768// be included in the string output. The member name will be present, but the
6769// value will be replaced with "sensitive".
6770func (s BatchDetectDominantLanguageOutput) GoString() string {
6771	return s.String()
6772}
6773
6774// SetErrorList sets the ErrorList field's value.
6775func (s *BatchDetectDominantLanguageOutput) SetErrorList(v []*BatchItemError) *BatchDetectDominantLanguageOutput {
6776	s.ErrorList = v
6777	return s
6778}
6779
6780// SetResultList sets the ResultList field's value.
6781func (s *BatchDetectDominantLanguageOutput) SetResultList(v []*BatchDetectDominantLanguageItemResult) *BatchDetectDominantLanguageOutput {
6782	s.ResultList = v
6783	return s
6784}
6785
6786type BatchDetectEntitiesInput struct {
6787	_ struct{} `type:"structure"`
6788
6789	// The language of the input documents. You can specify any of the primary languages
6790	// supported by Amazon Comprehend. All documents must be in the same language.
6791	//
6792	// LanguageCode is a required field
6793	LanguageCode *string `type:"string" required:"true" enum:"LanguageCode"`
6794
6795	// A list containing the text of the input documents. The list can contain a
6796	// maximum of 25 documents. Each document must contain fewer than 5,000 bytes
6797	// of UTF-8 encoded characters.
6798	//
6799	// TextList is a sensitive parameter and its value will be
6800	// replaced with "sensitive" in string returned by BatchDetectEntitiesInput's
6801	// String and GoString methods.
6802	//
6803	// TextList is a required field
6804	TextList []*string `type:"list" required:"true" sensitive:"true"`
6805}
6806
6807// String returns the string representation.
6808//
6809// API parameter values that are decorated as "sensitive" in the API will not
6810// be included in the string output. The member name will be present, but the
6811// value will be replaced with "sensitive".
6812func (s BatchDetectEntitiesInput) String() string {
6813	return awsutil.Prettify(s)
6814}
6815
6816// GoString returns the string representation.
6817//
6818// API parameter values that are decorated as "sensitive" in the API will not
6819// be included in the string output. The member name will be present, but the
6820// value will be replaced with "sensitive".
6821func (s BatchDetectEntitiesInput) GoString() string {
6822	return s.String()
6823}
6824
6825// Validate inspects the fields of the type to determine if they are valid.
6826func (s *BatchDetectEntitiesInput) Validate() error {
6827	invalidParams := request.ErrInvalidParams{Context: "BatchDetectEntitiesInput"}
6828	if s.LanguageCode == nil {
6829		invalidParams.Add(request.NewErrParamRequired("LanguageCode"))
6830	}
6831	if s.TextList == nil {
6832		invalidParams.Add(request.NewErrParamRequired("TextList"))
6833	}
6834
6835	if invalidParams.Len() > 0 {
6836		return invalidParams
6837	}
6838	return nil
6839}
6840
6841// SetLanguageCode sets the LanguageCode field's value.
6842func (s *BatchDetectEntitiesInput) SetLanguageCode(v string) *BatchDetectEntitiesInput {
6843	s.LanguageCode = &v
6844	return s
6845}
6846
6847// SetTextList sets the TextList field's value.
6848func (s *BatchDetectEntitiesInput) SetTextList(v []*string) *BatchDetectEntitiesInput {
6849	s.TextList = v
6850	return s
6851}
6852
6853// The result of calling the operation. The operation returns one object for
6854// each document that is successfully processed by the operation.
6855type BatchDetectEntitiesItemResult struct {
6856	_ struct{} `type:"structure"`
6857
6858	// One or more Entity objects, one for each entity detected in the document.
6859	Entities []*Entity `type:"list"`
6860
6861	// The zero-based index of the document in the input list.
6862	Index *int64 `type:"integer"`
6863}
6864
6865// String returns the string representation.
6866//
6867// API parameter values that are decorated as "sensitive" in the API will not
6868// be included in the string output. The member name will be present, but the
6869// value will be replaced with "sensitive".
6870func (s BatchDetectEntitiesItemResult) String() string {
6871	return awsutil.Prettify(s)
6872}
6873
6874// GoString returns the string representation.
6875//
6876// API parameter values that are decorated as "sensitive" in the API will not
6877// be included in the string output. The member name will be present, but the
6878// value will be replaced with "sensitive".
6879func (s BatchDetectEntitiesItemResult) GoString() string {
6880	return s.String()
6881}
6882
6883// SetEntities sets the Entities field's value.
6884func (s *BatchDetectEntitiesItemResult) SetEntities(v []*Entity) *BatchDetectEntitiesItemResult {
6885	s.Entities = v
6886	return s
6887}
6888
6889// SetIndex sets the Index field's value.
6890func (s *BatchDetectEntitiesItemResult) SetIndex(v int64) *BatchDetectEntitiesItemResult {
6891	s.Index = &v
6892	return s
6893}
6894
6895type BatchDetectEntitiesOutput struct {
6896	_ struct{} `type:"structure" sensitive:"true"`
6897
6898	// A list containing one object for each document that contained an error. The
6899	// results are sorted in ascending order by the Index field and match the order
6900	// of the documents in the input list. If there are no errors in the batch,
6901	// the ErrorList is empty.
6902	//
6903	// ErrorList is a required field
6904	ErrorList []*BatchItemError `type:"list" required:"true"`
6905
6906	// A list of objects containing the results of the operation. The results are
6907	// sorted in ascending order by the Index field and match the order of the documents
6908	// in the input list. If all of the documents contain an error, the ResultList
6909	// is empty.
6910	//
6911	// ResultList is a required field
6912	ResultList []*BatchDetectEntitiesItemResult `type:"list" required:"true"`
6913}
6914
6915// String returns the string representation.
6916//
6917// API parameter values that are decorated as "sensitive" in the API will not
6918// be included in the string output. The member name will be present, but the
6919// value will be replaced with "sensitive".
6920func (s BatchDetectEntitiesOutput) String() string {
6921	return awsutil.Prettify(s)
6922}
6923
6924// GoString returns the string representation.
6925//
6926// API parameter values that are decorated as "sensitive" in the API will not
6927// be included in the string output. The member name will be present, but the
6928// value will be replaced with "sensitive".
6929func (s BatchDetectEntitiesOutput) GoString() string {
6930	return s.String()
6931}
6932
6933// SetErrorList sets the ErrorList field's value.
6934func (s *BatchDetectEntitiesOutput) SetErrorList(v []*BatchItemError) *BatchDetectEntitiesOutput {
6935	s.ErrorList = v
6936	return s
6937}
6938
6939// SetResultList sets the ResultList field's value.
6940func (s *BatchDetectEntitiesOutput) SetResultList(v []*BatchDetectEntitiesItemResult) *BatchDetectEntitiesOutput {
6941	s.ResultList = v
6942	return s
6943}
6944
6945type BatchDetectKeyPhrasesInput struct {
6946	_ struct{} `type:"structure"`
6947
6948	// The language of the input documents. You can specify any of the primary languages
6949	// supported by Amazon Comprehend. All documents must be in the same language.
6950	//
6951	// LanguageCode is a required field
6952	LanguageCode *string `type:"string" required:"true" enum:"LanguageCode"`
6953
6954	// A list containing the text of the input documents. The list can contain a
6955	// maximum of 25 documents. Each document must contain fewer that 5,000 bytes
6956	// of UTF-8 encoded characters.
6957	//
6958	// TextList is a sensitive parameter and its value will be
6959	// replaced with "sensitive" in string returned by BatchDetectKeyPhrasesInput's
6960	// String and GoString methods.
6961	//
6962	// TextList is a required field
6963	TextList []*string `type:"list" required:"true" sensitive:"true"`
6964}
6965
6966// String returns the string representation.
6967//
6968// API parameter values that are decorated as "sensitive" in the API will not
6969// be included in the string output. The member name will be present, but the
6970// value will be replaced with "sensitive".
6971func (s BatchDetectKeyPhrasesInput) String() string {
6972	return awsutil.Prettify(s)
6973}
6974
6975// GoString returns the string representation.
6976//
6977// API parameter values that are decorated as "sensitive" in the API will not
6978// be included in the string output. The member name will be present, but the
6979// value will be replaced with "sensitive".
6980func (s BatchDetectKeyPhrasesInput) GoString() string {
6981	return s.String()
6982}
6983
6984// Validate inspects the fields of the type to determine if they are valid.
6985func (s *BatchDetectKeyPhrasesInput) Validate() error {
6986	invalidParams := request.ErrInvalidParams{Context: "BatchDetectKeyPhrasesInput"}
6987	if s.LanguageCode == nil {
6988		invalidParams.Add(request.NewErrParamRequired("LanguageCode"))
6989	}
6990	if s.TextList == nil {
6991		invalidParams.Add(request.NewErrParamRequired("TextList"))
6992	}
6993
6994	if invalidParams.Len() > 0 {
6995		return invalidParams
6996	}
6997	return nil
6998}
6999
7000// SetLanguageCode sets the LanguageCode field's value.
7001func (s *BatchDetectKeyPhrasesInput) SetLanguageCode(v string) *BatchDetectKeyPhrasesInput {
7002	s.LanguageCode = &v
7003	return s
7004}
7005
7006// SetTextList sets the TextList field's value.
7007func (s *BatchDetectKeyPhrasesInput) SetTextList(v []*string) *BatchDetectKeyPhrasesInput {
7008	s.TextList = v
7009	return s
7010}
7011
7012// The result of calling the operation. The operation returns one object for
7013// each document that is successfully processed by the operation.
7014type BatchDetectKeyPhrasesItemResult struct {
7015	_ struct{} `type:"structure"`
7016
7017	// The zero-based index of the document in the input list.
7018	Index *int64 `type:"integer"`
7019
7020	// One or more KeyPhrase objects, one for each key phrase detected in the document.
7021	KeyPhrases []*KeyPhrase `type:"list"`
7022}
7023
7024// String returns the string representation.
7025//
7026// API parameter values that are decorated as "sensitive" in the API will not
7027// be included in the string output. The member name will be present, but the
7028// value will be replaced with "sensitive".
7029func (s BatchDetectKeyPhrasesItemResult) String() string {
7030	return awsutil.Prettify(s)
7031}
7032
7033// GoString returns the string representation.
7034//
7035// API parameter values that are decorated as "sensitive" in the API will not
7036// be included in the string output. The member name will be present, but the
7037// value will be replaced with "sensitive".
7038func (s BatchDetectKeyPhrasesItemResult) GoString() string {
7039	return s.String()
7040}
7041
7042// SetIndex sets the Index field's value.
7043func (s *BatchDetectKeyPhrasesItemResult) SetIndex(v int64) *BatchDetectKeyPhrasesItemResult {
7044	s.Index = &v
7045	return s
7046}
7047
7048// SetKeyPhrases sets the KeyPhrases field's value.
7049func (s *BatchDetectKeyPhrasesItemResult) SetKeyPhrases(v []*KeyPhrase) *BatchDetectKeyPhrasesItemResult {
7050	s.KeyPhrases = v
7051	return s
7052}
7053
7054type BatchDetectKeyPhrasesOutput struct {
7055	_ struct{} `type:"structure" sensitive:"true"`
7056
7057	// A list containing one object for each document that contained an error. The
7058	// results are sorted in ascending order by the Index field and match the order
7059	// of the documents in the input list. If there are no errors in the batch,
7060	// the ErrorList is empty.
7061	//
7062	// ErrorList is a required field
7063	ErrorList []*BatchItemError `type:"list" required:"true"`
7064
7065	// A list of objects containing the results of the operation. The results are
7066	// sorted in ascending order by the Index field and match the order of the documents
7067	// in the input list. If all of the documents contain an error, the ResultList
7068	// is empty.
7069	//
7070	// ResultList is a required field
7071	ResultList []*BatchDetectKeyPhrasesItemResult `type:"list" required:"true"`
7072}
7073
7074// String returns the string representation.
7075//
7076// API parameter values that are decorated as "sensitive" in the API will not
7077// be included in the string output. The member name will be present, but the
7078// value will be replaced with "sensitive".
7079func (s BatchDetectKeyPhrasesOutput) String() string {
7080	return awsutil.Prettify(s)
7081}
7082
7083// GoString returns the string representation.
7084//
7085// API parameter values that are decorated as "sensitive" in the API will not
7086// be included in the string output. The member name will be present, but the
7087// value will be replaced with "sensitive".
7088func (s BatchDetectKeyPhrasesOutput) GoString() string {
7089	return s.String()
7090}
7091
7092// SetErrorList sets the ErrorList field's value.
7093func (s *BatchDetectKeyPhrasesOutput) SetErrorList(v []*BatchItemError) *BatchDetectKeyPhrasesOutput {
7094	s.ErrorList = v
7095	return s
7096}
7097
7098// SetResultList sets the ResultList field's value.
7099func (s *BatchDetectKeyPhrasesOutput) SetResultList(v []*BatchDetectKeyPhrasesItemResult) *BatchDetectKeyPhrasesOutput {
7100	s.ResultList = v
7101	return s
7102}
7103
7104type BatchDetectSentimentInput struct {
7105	_ struct{} `type:"structure"`
7106
7107	// The language of the input documents. You can specify any of the primary languages
7108	// supported by Amazon Comprehend. All documents must be in the same language.
7109	//
7110	// LanguageCode is a required field
7111	LanguageCode *string `type:"string" required:"true" enum:"LanguageCode"`
7112
7113	// A list containing the text of the input documents. The list can contain a
7114	// maximum of 25 documents. Each document must contain fewer that 5,000 bytes
7115	// of UTF-8 encoded characters.
7116	//
7117	// TextList is a sensitive parameter and its value will be
7118	// replaced with "sensitive" in string returned by BatchDetectSentimentInput's
7119	// String and GoString methods.
7120	//
7121	// TextList is a required field
7122	TextList []*string `type:"list" required:"true" sensitive:"true"`
7123}
7124
7125// String returns the string representation.
7126//
7127// API parameter values that are decorated as "sensitive" in the API will not
7128// be included in the string output. The member name will be present, but the
7129// value will be replaced with "sensitive".
7130func (s BatchDetectSentimentInput) String() string {
7131	return awsutil.Prettify(s)
7132}
7133
7134// GoString returns the string representation.
7135//
7136// API parameter values that are decorated as "sensitive" in the API will not
7137// be included in the string output. The member name will be present, but the
7138// value will be replaced with "sensitive".
7139func (s BatchDetectSentimentInput) GoString() string {
7140	return s.String()
7141}
7142
7143// Validate inspects the fields of the type to determine if they are valid.
7144func (s *BatchDetectSentimentInput) Validate() error {
7145	invalidParams := request.ErrInvalidParams{Context: "BatchDetectSentimentInput"}
7146	if s.LanguageCode == nil {
7147		invalidParams.Add(request.NewErrParamRequired("LanguageCode"))
7148	}
7149	if s.TextList == nil {
7150		invalidParams.Add(request.NewErrParamRequired("TextList"))
7151	}
7152
7153	if invalidParams.Len() > 0 {
7154		return invalidParams
7155	}
7156	return nil
7157}
7158
7159// SetLanguageCode sets the LanguageCode field's value.
7160func (s *BatchDetectSentimentInput) SetLanguageCode(v string) *BatchDetectSentimentInput {
7161	s.LanguageCode = &v
7162	return s
7163}
7164
7165// SetTextList sets the TextList field's value.
7166func (s *BatchDetectSentimentInput) SetTextList(v []*string) *BatchDetectSentimentInput {
7167	s.TextList = v
7168	return s
7169}
7170
7171// The result of calling the operation. The operation returns one object for
7172// each document that is successfully processed by the operation.
7173type BatchDetectSentimentItemResult struct {
7174	_ struct{} `type:"structure"`
7175
7176	// The zero-based index of the document in the input list.
7177	Index *int64 `type:"integer"`
7178
7179	// The sentiment detected in the document.
7180	Sentiment *string `type:"string" enum:"SentimentType"`
7181
7182	// The level of confidence that Amazon Comprehend has in the accuracy of its
7183	// sentiment detection.
7184	SentimentScore *SentimentScore `type:"structure"`
7185}
7186
7187// String returns the string representation.
7188//
7189// API parameter values that are decorated as "sensitive" in the API will not
7190// be included in the string output. The member name will be present, but the
7191// value will be replaced with "sensitive".
7192func (s BatchDetectSentimentItemResult) String() string {
7193	return awsutil.Prettify(s)
7194}
7195
7196// GoString returns the string representation.
7197//
7198// API parameter values that are decorated as "sensitive" in the API will not
7199// be included in the string output. The member name will be present, but the
7200// value will be replaced with "sensitive".
7201func (s BatchDetectSentimentItemResult) GoString() string {
7202	return s.String()
7203}
7204
7205// SetIndex sets the Index field's value.
7206func (s *BatchDetectSentimentItemResult) SetIndex(v int64) *BatchDetectSentimentItemResult {
7207	s.Index = &v
7208	return s
7209}
7210
7211// SetSentiment sets the Sentiment field's value.
7212func (s *BatchDetectSentimentItemResult) SetSentiment(v string) *BatchDetectSentimentItemResult {
7213	s.Sentiment = &v
7214	return s
7215}
7216
7217// SetSentimentScore sets the SentimentScore field's value.
7218func (s *BatchDetectSentimentItemResult) SetSentimentScore(v *SentimentScore) *BatchDetectSentimentItemResult {
7219	s.SentimentScore = v
7220	return s
7221}
7222
7223type BatchDetectSentimentOutput struct {
7224	_ struct{} `type:"structure" sensitive:"true"`
7225
7226	// A list containing one object for each document that contained an error. The
7227	// results are sorted in ascending order by the Index field and match the order
7228	// of the documents in the input list. If there are no errors in the batch,
7229	// the ErrorList is empty.
7230	//
7231	// ErrorList is a required field
7232	ErrorList []*BatchItemError `type:"list" required:"true"`
7233
7234	// A list of objects containing the results of the operation. The results are
7235	// sorted in ascending order by the Index field and match the order of the documents
7236	// in the input list. If all of the documents contain an error, the ResultList
7237	// is empty.
7238	//
7239	// ResultList is a required field
7240	ResultList []*BatchDetectSentimentItemResult `type:"list" required:"true"`
7241}
7242
7243// String returns the string representation.
7244//
7245// API parameter values that are decorated as "sensitive" in the API will not
7246// be included in the string output. The member name will be present, but the
7247// value will be replaced with "sensitive".
7248func (s BatchDetectSentimentOutput) String() string {
7249	return awsutil.Prettify(s)
7250}
7251
7252// GoString returns the string representation.
7253//
7254// API parameter values that are decorated as "sensitive" in the API will not
7255// be included in the string output. The member name will be present, but the
7256// value will be replaced with "sensitive".
7257func (s BatchDetectSentimentOutput) GoString() string {
7258	return s.String()
7259}
7260
7261// SetErrorList sets the ErrorList field's value.
7262func (s *BatchDetectSentimentOutput) SetErrorList(v []*BatchItemError) *BatchDetectSentimentOutput {
7263	s.ErrorList = v
7264	return s
7265}
7266
7267// SetResultList sets the ResultList field's value.
7268func (s *BatchDetectSentimentOutput) SetResultList(v []*BatchDetectSentimentItemResult) *BatchDetectSentimentOutput {
7269	s.ResultList = v
7270	return s
7271}
7272
7273type BatchDetectSyntaxInput struct {
7274	_ struct{} `type:"structure"`
7275
7276	// The language of the input documents. You can specify any of the following
7277	// languages supported by Amazon Comprehend: German ("de"), English ("en"),
7278	// Spanish ("es"), French ("fr"), Italian ("it"), or Portuguese ("pt"). All
7279	// documents must be in the same language.
7280	//
7281	// LanguageCode is a required field
7282	LanguageCode *string `type:"string" required:"true" enum:"SyntaxLanguageCode"`
7283
7284	// A list containing the text of the input documents. The list can contain a
7285	// maximum of 25 documents. Each document must contain fewer that 5,000 bytes
7286	// of UTF-8 encoded characters.
7287	//
7288	// TextList is a sensitive parameter and its value will be
7289	// replaced with "sensitive" in string returned by BatchDetectSyntaxInput's
7290	// String and GoString methods.
7291	//
7292	// TextList is a required field
7293	TextList []*string `type:"list" required:"true" sensitive:"true"`
7294}
7295
7296// String returns the string representation.
7297//
7298// API parameter values that are decorated as "sensitive" in the API will not
7299// be included in the string output. The member name will be present, but the
7300// value will be replaced with "sensitive".
7301func (s BatchDetectSyntaxInput) String() string {
7302	return awsutil.Prettify(s)
7303}
7304
7305// GoString returns the string representation.
7306//
7307// API parameter values that are decorated as "sensitive" in the API will not
7308// be included in the string output. The member name will be present, but the
7309// value will be replaced with "sensitive".
7310func (s BatchDetectSyntaxInput) GoString() string {
7311	return s.String()
7312}
7313
7314// Validate inspects the fields of the type to determine if they are valid.
7315func (s *BatchDetectSyntaxInput) Validate() error {
7316	invalidParams := request.ErrInvalidParams{Context: "BatchDetectSyntaxInput"}
7317	if s.LanguageCode == nil {
7318		invalidParams.Add(request.NewErrParamRequired("LanguageCode"))
7319	}
7320	if s.TextList == nil {
7321		invalidParams.Add(request.NewErrParamRequired("TextList"))
7322	}
7323
7324	if invalidParams.Len() > 0 {
7325		return invalidParams
7326	}
7327	return nil
7328}
7329
7330// SetLanguageCode sets the LanguageCode field's value.
7331func (s *BatchDetectSyntaxInput) SetLanguageCode(v string) *BatchDetectSyntaxInput {
7332	s.LanguageCode = &v
7333	return s
7334}
7335
7336// SetTextList sets the TextList field's value.
7337func (s *BatchDetectSyntaxInput) SetTextList(v []*string) *BatchDetectSyntaxInput {
7338	s.TextList = v
7339	return s
7340}
7341
7342// The result of calling the operation. The operation returns one object that
7343// is successfully processed by the operation.
7344type BatchDetectSyntaxItemResult struct {
7345	_ struct{} `type:"structure"`
7346
7347	// The zero-based index of the document in the input list.
7348	Index *int64 `type:"integer"`
7349
7350	// The syntax tokens for the words in the document, one token for each word.
7351	SyntaxTokens []*SyntaxToken `type:"list"`
7352}
7353
7354// String returns the string representation.
7355//
7356// API parameter values that are decorated as "sensitive" in the API will not
7357// be included in the string output. The member name will be present, but the
7358// value will be replaced with "sensitive".
7359func (s BatchDetectSyntaxItemResult) String() string {
7360	return awsutil.Prettify(s)
7361}
7362
7363// GoString returns the string representation.
7364//
7365// API parameter values that are decorated as "sensitive" in the API will not
7366// be included in the string output. The member name will be present, but the
7367// value will be replaced with "sensitive".
7368func (s BatchDetectSyntaxItemResult) GoString() string {
7369	return s.String()
7370}
7371
7372// SetIndex sets the Index field's value.
7373func (s *BatchDetectSyntaxItemResult) SetIndex(v int64) *BatchDetectSyntaxItemResult {
7374	s.Index = &v
7375	return s
7376}
7377
7378// SetSyntaxTokens sets the SyntaxTokens field's value.
7379func (s *BatchDetectSyntaxItemResult) SetSyntaxTokens(v []*SyntaxToken) *BatchDetectSyntaxItemResult {
7380	s.SyntaxTokens = v
7381	return s
7382}
7383
7384type BatchDetectSyntaxOutput struct {
7385	_ struct{} `type:"structure" sensitive:"true"`
7386
7387	// A list containing one object for each document that contained an error. The
7388	// results are sorted in ascending order by the Index field and match the order
7389	// of the documents in the input list. If there are no errors in the batch,
7390	// the ErrorList is empty.
7391	//
7392	// ErrorList is a required field
7393	ErrorList []*BatchItemError `type:"list" required:"true"`
7394
7395	// A list of objects containing the results of the operation. The results are
7396	// sorted in ascending order by the Index field and match the order of the documents
7397	// in the input list. If all of the documents contain an error, the ResultList
7398	// is empty.
7399	//
7400	// ResultList is a required field
7401	ResultList []*BatchDetectSyntaxItemResult `type:"list" required:"true"`
7402}
7403
7404// String returns the string representation.
7405//
7406// API parameter values that are decorated as "sensitive" in the API will not
7407// be included in the string output. The member name will be present, but the
7408// value will be replaced with "sensitive".
7409func (s BatchDetectSyntaxOutput) String() string {
7410	return awsutil.Prettify(s)
7411}
7412
7413// GoString returns the string representation.
7414//
7415// API parameter values that are decorated as "sensitive" in the API will not
7416// be included in the string output. The member name will be present, but the
7417// value will be replaced with "sensitive".
7418func (s BatchDetectSyntaxOutput) GoString() string {
7419	return s.String()
7420}
7421
7422// SetErrorList sets the ErrorList field's value.
7423func (s *BatchDetectSyntaxOutput) SetErrorList(v []*BatchItemError) *BatchDetectSyntaxOutput {
7424	s.ErrorList = v
7425	return s
7426}
7427
7428// SetResultList sets the ResultList field's value.
7429func (s *BatchDetectSyntaxOutput) SetResultList(v []*BatchDetectSyntaxItemResult) *BatchDetectSyntaxOutput {
7430	s.ResultList = v
7431	return s
7432}
7433
7434// Describes an error that occurred while processing a document in a batch.
7435// The operation returns on BatchItemError object for each document that contained
7436// an error.
7437type BatchItemError struct {
7438	_ struct{} `type:"structure"`
7439
7440	// The numeric error code of the error.
7441	ErrorCode *string `min:"1" type:"string"`
7442
7443	// A text description of the error.
7444	ErrorMessage *string `min:"1" type:"string"`
7445
7446	// The zero-based index of the document in the input list.
7447	Index *int64 `type:"integer"`
7448}
7449
7450// String returns the string representation.
7451//
7452// API parameter values that are decorated as "sensitive" in the API will not
7453// be included in the string output. The member name will be present, but the
7454// value will be replaced with "sensitive".
7455func (s BatchItemError) String() string {
7456	return awsutil.Prettify(s)
7457}
7458
7459// GoString returns the string representation.
7460//
7461// API parameter values that are decorated as "sensitive" in the API will not
7462// be included in the string output. The member name will be present, but the
7463// value will be replaced with "sensitive".
7464func (s BatchItemError) GoString() string {
7465	return s.String()
7466}
7467
7468// SetErrorCode sets the ErrorCode field's value.
7469func (s *BatchItemError) SetErrorCode(v string) *BatchItemError {
7470	s.ErrorCode = &v
7471	return s
7472}
7473
7474// SetErrorMessage sets the ErrorMessage field's value.
7475func (s *BatchItemError) SetErrorMessage(v string) *BatchItemError {
7476	s.ErrorMessage = &v
7477	return s
7478}
7479
7480// SetIndex sets the Index field's value.
7481func (s *BatchItemError) SetIndex(v int64) *BatchItemError {
7482	s.Index = &v
7483	return s
7484}
7485
7486// The number of documents in the request exceeds the limit of 25. Try your
7487// request again with fewer documents.
7488type BatchSizeLimitExceededException struct {
7489	_            struct{}                  `type:"structure"`
7490	RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"`
7491
7492	Message_ *string `locationName:"Message" min:"1" type:"string"`
7493}
7494
7495// String returns the string representation.
7496//
7497// API parameter values that are decorated as "sensitive" in the API will not
7498// be included in the string output. The member name will be present, but the
7499// value will be replaced with "sensitive".
7500func (s BatchSizeLimitExceededException) String() string {
7501	return awsutil.Prettify(s)
7502}
7503
7504// GoString returns the string representation.
7505//
7506// API parameter values that are decorated as "sensitive" in the API will not
7507// be included in the string output. The member name will be present, but the
7508// value will be replaced with "sensitive".
7509func (s BatchSizeLimitExceededException) GoString() string {
7510	return s.String()
7511}
7512
7513func newErrorBatchSizeLimitExceededException(v protocol.ResponseMetadata) error {
7514	return &BatchSizeLimitExceededException{
7515		RespMetadata: v,
7516	}
7517}
7518
7519// Code returns the exception type name.
7520func (s *BatchSizeLimitExceededException) Code() string {
7521	return "BatchSizeLimitExceededException"
7522}
7523
7524// Message returns the exception's message.
7525func (s *BatchSizeLimitExceededException) Message() string {
7526	if s.Message_ != nil {
7527		return *s.Message_
7528	}
7529	return ""
7530}
7531
7532// OrigErr always returns nil, satisfies awserr.Error interface.
7533func (s *BatchSizeLimitExceededException) OrigErr() error {
7534	return nil
7535}
7536
7537func (s *BatchSizeLimitExceededException) Error() string {
7538	return fmt.Sprintf("%s: %s", s.Code(), s.Message())
7539}
7540
7541// Status code returns the HTTP status code for the request's response error.
7542func (s *BatchSizeLimitExceededException) StatusCode() int {
7543	return s.RespMetadata.StatusCode
7544}
7545
7546// RequestID returns the service's response RequestID for request.
7547func (s *BatchSizeLimitExceededException) RequestID() string {
7548	return s.RespMetadata.RequestID
7549}
7550
7551// Describes the result metrics for the test data associated with an documentation
7552// classifier.
7553type ClassifierEvaluationMetrics struct {
7554	_ struct{} `type:"structure"`
7555
7556	// The fraction of the labels that were correct recognized. It is computed by
7557	// dividing the number of labels in the test documents that were correctly recognized
7558	// by the total number of labels in the test documents.
7559	Accuracy *float64 `type:"double"`
7560
7561	// A measure of how accurate the classifier results are for the test data. It
7562	// is derived from the Precision and Recall values. The F1Score is the harmonic
7563	// average of the two scores. The highest score is 1, and the worst score is
7564	// 0.
7565	F1Score *float64 `type:"double"`
7566
7567	// Indicates the fraction of labels that are incorrectly predicted. Also seen
7568	// as the fraction of wrong labels compared to the total number of labels. Scores
7569	// closer to zero are better.
7570	HammingLoss *float64 `type:"double"`
7571
7572	// A measure of how accurate the classifier results are for the test data. It
7573	// is a combination of the Micro Precision and Micro Recall values. The Micro
7574	// F1Score is the harmonic mean of the two scores. The highest score is 1, and
7575	// the worst score is 0.
7576	MicroF1Score *float64 `type:"double"`
7577
7578	// A measure of the usefulness of the recognizer results in the test data. High
7579	// precision means that the recognizer returned substantially more relevant
7580	// results than irrelevant ones. Unlike the Precision metric which comes from
7581	// averaging the precision of all available labels, this is based on the overall
7582	// score of all precision scores added together.
7583	MicroPrecision *float64 `type:"double"`
7584
7585	// A measure of how complete the classifier results are for the test data. High
7586	// recall means that the classifier returned most of the relevant results. Specifically,
7587	// this indicates how many of the correct categories in the text that the model
7588	// can predict. It is a percentage of correct categories in the text that can
7589	// found. Instead of averaging the recall scores of all labels (as with Recall),
7590	// micro Recall is based on the overall score of all recall scores added together.
7591	MicroRecall *float64 `type:"double"`
7592
7593	// A measure of the usefulness of the classifier results in the test data. High
7594	// precision means that the classifier returned substantially more relevant
7595	// results than irrelevant ones.
7596	Precision *float64 `type:"double"`
7597
7598	// A measure of how complete the classifier results are for the test data. High
7599	// recall means that the classifier returned most of the relevant results.
7600	Recall *float64 `type:"double"`
7601}
7602
7603// String returns the string representation.
7604//
7605// API parameter values that are decorated as "sensitive" in the API will not
7606// be included in the string output. The member name will be present, but the
7607// value will be replaced with "sensitive".
7608func (s ClassifierEvaluationMetrics) String() string {
7609	return awsutil.Prettify(s)
7610}
7611
7612// GoString returns the string representation.
7613//
7614// API parameter values that are decorated as "sensitive" in the API will not
7615// be included in the string output. The member name will be present, but the
7616// value will be replaced with "sensitive".
7617func (s ClassifierEvaluationMetrics) GoString() string {
7618	return s.String()
7619}
7620
7621// SetAccuracy sets the Accuracy field's value.
7622func (s *ClassifierEvaluationMetrics) SetAccuracy(v float64) *ClassifierEvaluationMetrics {
7623	s.Accuracy = &v
7624	return s
7625}
7626
7627// SetF1Score sets the F1Score field's value.
7628func (s *ClassifierEvaluationMetrics) SetF1Score(v float64) *ClassifierEvaluationMetrics {
7629	s.F1Score = &v
7630	return s
7631}
7632
7633// SetHammingLoss sets the HammingLoss field's value.
7634func (s *ClassifierEvaluationMetrics) SetHammingLoss(v float64) *ClassifierEvaluationMetrics {
7635	s.HammingLoss = &v
7636	return s
7637}
7638
7639// SetMicroF1Score sets the MicroF1Score field's value.
7640func (s *ClassifierEvaluationMetrics) SetMicroF1Score(v float64) *ClassifierEvaluationMetrics {
7641	s.MicroF1Score = &v
7642	return s
7643}
7644
7645// SetMicroPrecision sets the MicroPrecision field's value.
7646func (s *ClassifierEvaluationMetrics) SetMicroPrecision(v float64) *ClassifierEvaluationMetrics {
7647	s.MicroPrecision = &v
7648	return s
7649}
7650
7651// SetMicroRecall sets the MicroRecall field's value.
7652func (s *ClassifierEvaluationMetrics) SetMicroRecall(v float64) *ClassifierEvaluationMetrics {
7653	s.MicroRecall = &v
7654	return s
7655}
7656
7657// SetPrecision sets the Precision field's value.
7658func (s *ClassifierEvaluationMetrics) SetPrecision(v float64) *ClassifierEvaluationMetrics {
7659	s.Precision = &v
7660	return s
7661}
7662
7663// SetRecall sets the Recall field's value.
7664func (s *ClassifierEvaluationMetrics) SetRecall(v float64) *ClassifierEvaluationMetrics {
7665	s.Recall = &v
7666	return s
7667}
7668
7669// Provides information about a document classifier.
7670type ClassifierMetadata struct {
7671	_ struct{} `type:"structure" sensitive:"true"`
7672
7673	// Describes the result metrics for the test data associated with an documentation
7674	// classifier.
7675	EvaluationMetrics *ClassifierEvaluationMetrics `type:"structure"`
7676
7677	// The number of labels in the input data.
7678	NumberOfLabels *int64 `type:"integer"`
7679
7680	// The number of documents in the input data that were used to test the classifier.
7681	// Typically this is 10 to 20 percent of the input documents, up to 10,000 documents.
7682	NumberOfTestDocuments *int64 `type:"integer"`
7683
7684	// The number of documents in the input data that were used to train the classifier.
7685	// Typically this is 80 to 90 percent of the input documents.
7686	NumberOfTrainedDocuments *int64 `type:"integer"`
7687}
7688
7689// String 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 ClassifierMetadata) String() string {
7695	return awsutil.Prettify(s)
7696}
7697
7698// GoString returns the string representation.
7699//
7700// API parameter values that are decorated as "sensitive" in the API will not
7701// be included in the string output. The member name will be present, but the
7702// value will be replaced with "sensitive".
7703func (s ClassifierMetadata) GoString() string {
7704	return s.String()
7705}
7706
7707// SetEvaluationMetrics sets the EvaluationMetrics field's value.
7708func (s *ClassifierMetadata) SetEvaluationMetrics(v *ClassifierEvaluationMetrics) *ClassifierMetadata {
7709	s.EvaluationMetrics = v
7710	return s
7711}
7712
7713// SetNumberOfLabels sets the NumberOfLabels field's value.
7714func (s *ClassifierMetadata) SetNumberOfLabels(v int64) *ClassifierMetadata {
7715	s.NumberOfLabels = &v
7716	return s
7717}
7718
7719// SetNumberOfTestDocuments sets the NumberOfTestDocuments field's value.
7720func (s *ClassifierMetadata) SetNumberOfTestDocuments(v int64) *ClassifierMetadata {
7721	s.NumberOfTestDocuments = &v
7722	return s
7723}
7724
7725// SetNumberOfTrainedDocuments sets the NumberOfTrainedDocuments field's value.
7726func (s *ClassifierMetadata) SetNumberOfTrainedDocuments(v int64) *ClassifierMetadata {
7727	s.NumberOfTrainedDocuments = &v
7728	return s
7729}
7730
7731type ClassifyDocumentInput struct {
7732	_ struct{} `type:"structure"`
7733
7734	// The Amazon Resource Number (ARN) of the endpoint.
7735	//
7736	// EndpointArn is a required field
7737	EndpointArn *string `type:"string" required:"true"`
7738
7739	// The document text to be analyzed.
7740	//
7741	// Text is a sensitive parameter and its value will be
7742	// replaced with "sensitive" in string returned by ClassifyDocumentInput's
7743	// String and GoString methods.
7744	//
7745	// Text is a required field
7746	Text *string `min:"1" type:"string" required:"true" sensitive:"true"`
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 ClassifyDocumentInput) 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 ClassifyDocumentInput) GoString() string {
7764	return s.String()
7765}
7766
7767// Validate inspects the fields of the type to determine if they are valid.
7768func (s *ClassifyDocumentInput) Validate() error {
7769	invalidParams := request.ErrInvalidParams{Context: "ClassifyDocumentInput"}
7770	if s.EndpointArn == nil {
7771		invalidParams.Add(request.NewErrParamRequired("EndpointArn"))
7772	}
7773	if s.Text == nil {
7774		invalidParams.Add(request.NewErrParamRequired("Text"))
7775	}
7776	if s.Text != nil && len(*s.Text) < 1 {
7777		invalidParams.Add(request.NewErrParamMinLen("Text", 1))
7778	}
7779
7780	if invalidParams.Len() > 0 {
7781		return invalidParams
7782	}
7783	return nil
7784}
7785
7786// SetEndpointArn sets the EndpointArn field's value.
7787func (s *ClassifyDocumentInput) SetEndpointArn(v string) *ClassifyDocumentInput {
7788	s.EndpointArn = &v
7789	return s
7790}
7791
7792// SetText sets the Text field's value.
7793func (s *ClassifyDocumentInput) SetText(v string) *ClassifyDocumentInput {
7794	s.Text = &v
7795	return s
7796}
7797
7798type ClassifyDocumentOutput struct {
7799	_ struct{} `type:"structure" sensitive:"true"`
7800
7801	// The classes used by the document being analyzed. These are used for multi-class
7802	// trained models. Individual classes are mutually exclusive and each document
7803	// is expected to have only a single class assigned to it. For example, an animal
7804	// can be a dog or a cat, but not both at the same time.
7805	Classes []*DocumentClass `type:"list"`
7806
7807	// The labels used the document being analyzed. These are used for multi-label
7808	// trained models. Individual labels represent different categories that are
7809	// related in some manner and are not mutually exclusive. For example, a movie
7810	// can be just an action movie, or it can be an action movie, a science fiction
7811	// movie, and a comedy, all at the same time.
7812	Labels []*DocumentLabel `type:"list"`
7813}
7814
7815// String 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 ClassifyDocumentOutput) String() string {
7821	return awsutil.Prettify(s)
7822}
7823
7824// GoString returns the string representation.
7825//
7826// API parameter values that are decorated as "sensitive" in the API will not
7827// be included in the string output. The member name will be present, but the
7828// value will be replaced with "sensitive".
7829func (s ClassifyDocumentOutput) GoString() string {
7830	return s.String()
7831}
7832
7833// SetClasses sets the Classes field's value.
7834func (s *ClassifyDocumentOutput) SetClasses(v []*DocumentClass) *ClassifyDocumentOutput {
7835	s.Classes = v
7836	return s
7837}
7838
7839// SetLabels sets the Labels field's value.
7840func (s *ClassifyDocumentOutput) SetLabels(v []*DocumentLabel) *ClassifyDocumentOutput {
7841	s.Labels = v
7842	return s
7843}
7844
7845// Concurrent modification of the tags associated with an Amazon Comprehend
7846// resource is not supported.
7847type ConcurrentModificationException struct {
7848	_            struct{}                  `type:"structure"`
7849	RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"`
7850
7851	Message_ *string `locationName:"Message" min:"1" type:"string"`
7852}
7853
7854// String returns the string representation.
7855//
7856// API parameter values that are decorated as "sensitive" in the API will not
7857// be included in the string output. The member name will be present, but the
7858// value will be replaced with "sensitive".
7859func (s ConcurrentModificationException) String() string {
7860	return awsutil.Prettify(s)
7861}
7862
7863// GoString returns the string representation.
7864//
7865// API parameter values that are decorated as "sensitive" in the API will not
7866// be included in the string output. The member name will be present, but the
7867// value will be replaced with "sensitive".
7868func (s ConcurrentModificationException) GoString() string {
7869	return s.String()
7870}
7871
7872func newErrorConcurrentModificationException(v protocol.ResponseMetadata) error {
7873	return &ConcurrentModificationException{
7874		RespMetadata: v,
7875	}
7876}
7877
7878// Code returns the exception type name.
7879func (s *ConcurrentModificationException) Code() string {
7880	return "ConcurrentModificationException"
7881}
7882
7883// Message returns the exception's message.
7884func (s *ConcurrentModificationException) Message() string {
7885	if s.Message_ != nil {
7886		return *s.Message_
7887	}
7888	return ""
7889}
7890
7891// OrigErr always returns nil, satisfies awserr.Error interface.
7892func (s *ConcurrentModificationException) OrigErr() error {
7893	return nil
7894}
7895
7896func (s *ConcurrentModificationException) Error() string {
7897	return fmt.Sprintf("%s: %s", s.Code(), s.Message())
7898}
7899
7900// Status code returns the HTTP status code for the request's response error.
7901func (s *ConcurrentModificationException) StatusCode() int {
7902	return s.RespMetadata.StatusCode
7903}
7904
7905// RequestID returns the service's response RequestID for request.
7906func (s *ConcurrentModificationException) RequestID() string {
7907	return s.RespMetadata.RequestID
7908}
7909
7910type ContainsPiiEntitiesInput struct {
7911	_ struct{} `type:"structure"`
7912
7913	// The language of the input documents.
7914	//
7915	// LanguageCode is a required field
7916	LanguageCode *string `type:"string" required:"true" enum:"LanguageCode"`
7917
7918	// Creates a new document classification request to analyze a single document
7919	// in real-time, returning personally identifiable information (PII) entity
7920	// labels.
7921	//
7922	// Text is a required field
7923	Text *string `min:"1" type:"string" required:"true"`
7924}
7925
7926// String returns the string representation.
7927//
7928// API parameter values that are decorated as "sensitive" in the API will not
7929// be included in the string output. The member name will be present, but the
7930// value will be replaced with "sensitive".
7931func (s ContainsPiiEntitiesInput) String() string {
7932	return awsutil.Prettify(s)
7933}
7934
7935// GoString returns the string representation.
7936//
7937// API parameter values that are decorated as "sensitive" in the API will not
7938// be included in the string output. The member name will be present, but the
7939// value will be replaced with "sensitive".
7940func (s ContainsPiiEntitiesInput) GoString() string {
7941	return s.String()
7942}
7943
7944// Validate inspects the fields of the type to determine if they are valid.
7945func (s *ContainsPiiEntitiesInput) Validate() error {
7946	invalidParams := request.ErrInvalidParams{Context: "ContainsPiiEntitiesInput"}
7947	if s.LanguageCode == nil {
7948		invalidParams.Add(request.NewErrParamRequired("LanguageCode"))
7949	}
7950	if s.Text == nil {
7951		invalidParams.Add(request.NewErrParamRequired("Text"))
7952	}
7953	if s.Text != nil && len(*s.Text) < 1 {
7954		invalidParams.Add(request.NewErrParamMinLen("Text", 1))
7955	}
7956
7957	if invalidParams.Len() > 0 {
7958		return invalidParams
7959	}
7960	return nil
7961}
7962
7963// SetLanguageCode sets the LanguageCode field's value.
7964func (s *ContainsPiiEntitiesInput) SetLanguageCode(v string) *ContainsPiiEntitiesInput {
7965	s.LanguageCode = &v
7966	return s
7967}
7968
7969// SetText sets the Text field's value.
7970func (s *ContainsPiiEntitiesInput) SetText(v string) *ContainsPiiEntitiesInput {
7971	s.Text = &v
7972	return s
7973}
7974
7975type ContainsPiiEntitiesOutput struct {
7976	_ struct{} `type:"structure"`
7977
7978	// The labels used in the document being analyzed. Individual labels represent
7979	// personally identifiable information (PII) entity types.
7980	Labels []*EntityLabel `type:"list"`
7981}
7982
7983// String returns the string representation.
7984//
7985// API parameter values that are decorated as "sensitive" in the API will not
7986// be included in the string output. The member name will be present, but the
7987// value will be replaced with "sensitive".
7988func (s ContainsPiiEntitiesOutput) String() string {
7989	return awsutil.Prettify(s)
7990}
7991
7992// GoString returns the string representation.
7993//
7994// API parameter values that are decorated as "sensitive" in the API will not
7995// be included in the string output. The member name will be present, but the
7996// value will be replaced with "sensitive".
7997func (s ContainsPiiEntitiesOutput) GoString() string {
7998	return s.String()
7999}
8000
8001// SetLabels sets the Labels field's value.
8002func (s *ContainsPiiEntitiesOutput) SetLabels(v []*EntityLabel) *ContainsPiiEntitiesOutput {
8003	s.Labels = v
8004	return s
8005}
8006
8007type CreateDocumentClassifierInput struct {
8008	_ struct{} `type:"structure"`
8009
8010	// A unique identifier for the request. If you don't set the client request
8011	// token, Amazon Comprehend generates one.
8012	ClientRequestToken *string `min:"1" type:"string" idempotencyToken:"true"`
8013
8014	// The Amazon Resource Name (ARN) of the AWS Identity and Management (IAM) role
8015	// that grants Amazon Comprehend read access to your input data.
8016	//
8017	// DataAccessRoleArn is a required field
8018	DataAccessRoleArn *string `min:"20" type:"string" required:"true"`
8019
8020	// The name of the document classifier.
8021	//
8022	// DocumentClassifierName is a required field
8023	DocumentClassifierName *string `type:"string" required:"true"`
8024
8025	// Specifies the format and location of the input data for the job.
8026	//
8027	// InputDataConfig is a required field
8028	InputDataConfig *DocumentClassifierInputDataConfig `type:"structure" required:"true"`
8029
8030	// The language of the input documents. You can specify any of the following
8031	// languages supported by Amazon Comprehend: German ("de"), English ("en"),
8032	// Spanish ("es"), French ("fr"), Italian ("it"), or Portuguese ("pt"). All
8033	// documents must be in the same language.
8034	//
8035	// LanguageCode is a required field
8036	LanguageCode *string `type:"string" required:"true" enum:"LanguageCode"`
8037
8038	// Indicates the mode in which the classifier will be trained. The classifier
8039	// can be trained in multi-class mode, which identifies one and only one class
8040	// for each document, or multi-label mode, which identifies one or more labels
8041	// for each document. In multi-label mode, multiple labels for an individual
8042	// document are separated by a delimiter. The default delimiter between labels
8043	// is a pipe (|).
8044	Mode *string `type:"string" enum:"DocumentClassifierMode"`
8045
8046	// ID for the AWS Key Management Service (KMS) key that Amazon Comprehend uses
8047	// to encrypt trained custom models. The ModelKmsKeyId can be either of the
8048	// following formats:
8049	//
8050	//    * KMS Key ID: "1234abcd-12ab-34cd-56ef-1234567890ab"
8051	//
8052	//    * Amazon Resource Name (ARN) of a KMS Key: "arn:aws:kms:us-west-2:111122223333:key/1234abcd-12ab-34cd-56ef-1234567890ab"
8053	ModelKmsKeyId *string `type:"string"`
8054
8055	// Enables the addition of output results configuration parameters for custom
8056	// classifier jobs.
8057	OutputDataConfig *DocumentClassifierOutputDataConfig `type:"structure"`
8058
8059	// Tags to be associated with the document classifier being created. A tag is
8060	// a key-value pair that adds as a metadata to a resource used by Amazon Comprehend.
8061	// For example, a tag with "Sales" as the key might be added to a resource to
8062	// indicate its use by the sales department.
8063	Tags []*Tag `type:"list"`
8064
8065	// The version name given to the newly created classifier. Version names can
8066	// have a maximum of 256 characters. Alphanumeric characters, hyphens (-) and
8067	// underscores (_) are allowed. The version name must be unique among all models
8068	// with the same classifier name in the account/AWS Region.
8069	VersionName *string `type:"string"`
8070
8071	// ID for the AWS Key Management Service (KMS) key that Amazon Comprehend uses
8072	// to encrypt data on the storage volume attached to the ML compute instance(s)
8073	// that process the analysis job. The VolumeKmsKeyId can be either of the following
8074	// formats:
8075	//
8076	//    * KMS Key ID: "1234abcd-12ab-34cd-56ef-1234567890ab"
8077	//
8078	//    * Amazon Resource Name (ARN) of a KMS Key: "arn:aws:kms:us-west-2:111122223333:key/1234abcd-12ab-34cd-56ef-1234567890ab"
8079	VolumeKmsKeyId *string `type:"string"`
8080
8081	// Configuration parameters for an optional private Virtual Private Cloud (VPC)
8082	// containing the resources you are using for your custom classifier. For more
8083	// information, see Amazon VPC (https://docs.aws.amazon.com/vpc/latest/userguide/what-is-amazon-vpc.html).
8084	VpcConfig *VpcConfig `type:"structure"`
8085}
8086
8087// String returns the string representation.
8088//
8089// API parameter values that are decorated as "sensitive" in the API will not
8090// be included in the string output. The member name will be present, but the
8091// value will be replaced with "sensitive".
8092func (s CreateDocumentClassifierInput) String() string {
8093	return awsutil.Prettify(s)
8094}
8095
8096// GoString returns the string representation.
8097//
8098// API parameter values that are decorated as "sensitive" in the API will not
8099// be included in the string output. The member name will be present, but the
8100// value will be replaced with "sensitive".
8101func (s CreateDocumentClassifierInput) GoString() string {
8102	return s.String()
8103}
8104
8105// Validate inspects the fields of the type to determine if they are valid.
8106func (s *CreateDocumentClassifierInput) Validate() error {
8107	invalidParams := request.ErrInvalidParams{Context: "CreateDocumentClassifierInput"}
8108	if s.ClientRequestToken != nil && len(*s.ClientRequestToken) < 1 {
8109		invalidParams.Add(request.NewErrParamMinLen("ClientRequestToken", 1))
8110	}
8111	if s.DataAccessRoleArn == nil {
8112		invalidParams.Add(request.NewErrParamRequired("DataAccessRoleArn"))
8113	}
8114	if s.DataAccessRoleArn != nil && len(*s.DataAccessRoleArn) < 20 {
8115		invalidParams.Add(request.NewErrParamMinLen("DataAccessRoleArn", 20))
8116	}
8117	if s.DocumentClassifierName == nil {
8118		invalidParams.Add(request.NewErrParamRequired("DocumentClassifierName"))
8119	}
8120	if s.InputDataConfig == nil {
8121		invalidParams.Add(request.NewErrParamRequired("InputDataConfig"))
8122	}
8123	if s.LanguageCode == nil {
8124		invalidParams.Add(request.NewErrParamRequired("LanguageCode"))
8125	}
8126	if s.InputDataConfig != nil {
8127		if err := s.InputDataConfig.Validate(); err != nil {
8128			invalidParams.AddNested("InputDataConfig", err.(request.ErrInvalidParams))
8129		}
8130	}
8131	if s.Tags != nil {
8132		for i, v := range s.Tags {
8133			if v == nil {
8134				continue
8135			}
8136			if err := v.Validate(); err != nil {
8137				invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Tags", i), err.(request.ErrInvalidParams))
8138			}
8139		}
8140	}
8141	if s.VpcConfig != nil {
8142		if err := s.VpcConfig.Validate(); err != nil {
8143			invalidParams.AddNested("VpcConfig", err.(request.ErrInvalidParams))
8144		}
8145	}
8146
8147	if invalidParams.Len() > 0 {
8148		return invalidParams
8149	}
8150	return nil
8151}
8152
8153// SetClientRequestToken sets the ClientRequestToken field's value.
8154func (s *CreateDocumentClassifierInput) SetClientRequestToken(v string) *CreateDocumentClassifierInput {
8155	s.ClientRequestToken = &v
8156	return s
8157}
8158
8159// SetDataAccessRoleArn sets the DataAccessRoleArn field's value.
8160func (s *CreateDocumentClassifierInput) SetDataAccessRoleArn(v string) *CreateDocumentClassifierInput {
8161	s.DataAccessRoleArn = &v
8162	return s
8163}
8164
8165// SetDocumentClassifierName sets the DocumentClassifierName field's value.
8166func (s *CreateDocumentClassifierInput) SetDocumentClassifierName(v string) *CreateDocumentClassifierInput {
8167	s.DocumentClassifierName = &v
8168	return s
8169}
8170
8171// SetInputDataConfig sets the InputDataConfig field's value.
8172func (s *CreateDocumentClassifierInput) SetInputDataConfig(v *DocumentClassifierInputDataConfig) *CreateDocumentClassifierInput {
8173	s.InputDataConfig = v
8174	return s
8175}
8176
8177// SetLanguageCode sets the LanguageCode field's value.
8178func (s *CreateDocumentClassifierInput) SetLanguageCode(v string) *CreateDocumentClassifierInput {
8179	s.LanguageCode = &v
8180	return s
8181}
8182
8183// SetMode sets the Mode field's value.
8184func (s *CreateDocumentClassifierInput) SetMode(v string) *CreateDocumentClassifierInput {
8185	s.Mode = &v
8186	return s
8187}
8188
8189// SetModelKmsKeyId sets the ModelKmsKeyId field's value.
8190func (s *CreateDocumentClassifierInput) SetModelKmsKeyId(v string) *CreateDocumentClassifierInput {
8191	s.ModelKmsKeyId = &v
8192	return s
8193}
8194
8195// SetOutputDataConfig sets the OutputDataConfig field's value.
8196func (s *CreateDocumentClassifierInput) SetOutputDataConfig(v *DocumentClassifierOutputDataConfig) *CreateDocumentClassifierInput {
8197	s.OutputDataConfig = v
8198	return s
8199}
8200
8201// SetTags sets the Tags field's value.
8202func (s *CreateDocumentClassifierInput) SetTags(v []*Tag) *CreateDocumentClassifierInput {
8203	s.Tags = v
8204	return s
8205}
8206
8207// SetVersionName sets the VersionName field's value.
8208func (s *CreateDocumentClassifierInput) SetVersionName(v string) *CreateDocumentClassifierInput {
8209	s.VersionName = &v
8210	return s
8211}
8212
8213// SetVolumeKmsKeyId sets the VolumeKmsKeyId field's value.
8214func (s *CreateDocumentClassifierInput) SetVolumeKmsKeyId(v string) *CreateDocumentClassifierInput {
8215	s.VolumeKmsKeyId = &v
8216	return s
8217}
8218
8219// SetVpcConfig sets the VpcConfig field's value.
8220func (s *CreateDocumentClassifierInput) SetVpcConfig(v *VpcConfig) *CreateDocumentClassifierInput {
8221	s.VpcConfig = v
8222	return s
8223}
8224
8225type CreateDocumentClassifierOutput struct {
8226	_ struct{} `type:"structure"`
8227
8228	// The Amazon Resource Name (ARN) that identifies the document classifier.
8229	DocumentClassifierArn *string `type:"string"`
8230}
8231
8232// String returns the string representation.
8233//
8234// API parameter values that are decorated as "sensitive" in the API will not
8235// be included in the string output. The member name will be present, but the
8236// value will be replaced with "sensitive".
8237func (s CreateDocumentClassifierOutput) String() string {
8238	return awsutil.Prettify(s)
8239}
8240
8241// GoString returns the string representation.
8242//
8243// API parameter values that are decorated as "sensitive" in the API will not
8244// be included in the string output. The member name will be present, but the
8245// value will be replaced with "sensitive".
8246func (s CreateDocumentClassifierOutput) GoString() string {
8247	return s.String()
8248}
8249
8250// SetDocumentClassifierArn sets the DocumentClassifierArn field's value.
8251func (s *CreateDocumentClassifierOutput) SetDocumentClassifierArn(v string) *CreateDocumentClassifierOutput {
8252	s.DocumentClassifierArn = &v
8253	return s
8254}
8255
8256type CreateEndpointInput struct {
8257	_ struct{} `type:"structure"`
8258
8259	// An idempotency token provided by the customer. If this token matches a previous
8260	// endpoint creation request, Amazon Comprehend will not return a ResourceInUseException.
8261	ClientRequestToken *string `min:"1" type:"string" idempotencyToken:"true"`
8262
8263	// The Amazon Resource Name (ARN) of the AWS identity and Access Management
8264	// (IAM) role that grants Amazon Comprehend read access to trained custom models
8265	// encrypted with a customer managed key (ModelKmsKeyId).
8266	DataAccessRoleArn *string `min:"20" type:"string"`
8267
8268	// The desired number of inference units to be used by the model using this
8269	// endpoint. Each inference unit represents of a throughput of 100 characters
8270	// per second.
8271	//
8272	// DesiredInferenceUnits is a required field
8273	DesiredInferenceUnits *int64 `min:"1" type:"integer" required:"true"`
8274
8275	// This is the descriptive suffix that becomes part of the EndpointArn used
8276	// for all subsequent requests to this resource.
8277	//
8278	// EndpointName is a required field
8279	EndpointName *string `type:"string" required:"true"`
8280
8281	// The Amazon Resource Number (ARN) of the model to which the endpoint will
8282	// be attached.
8283	//
8284	// ModelArn is a required field
8285	ModelArn *string `type:"string" required:"true"`
8286
8287	// Tags associated with the endpoint being created. A tag is a key-value pair
8288	// that adds metadata to the endpoint. For example, a tag with "Sales" as the
8289	// key might be added to an endpoint to indicate its use by the sales department.
8290	Tags []*Tag `type:"list"`
8291}
8292
8293// String returns the string representation.
8294//
8295// API parameter values that are decorated as "sensitive" in the API will not
8296// be included in the string output. The member name will be present, but the
8297// value will be replaced with "sensitive".
8298func (s CreateEndpointInput) String() string {
8299	return awsutil.Prettify(s)
8300}
8301
8302// GoString returns the string representation.
8303//
8304// API parameter values that are decorated as "sensitive" in the API will not
8305// be included in the string output. The member name will be present, but the
8306// value will be replaced with "sensitive".
8307func (s CreateEndpointInput) GoString() string {
8308	return s.String()
8309}
8310
8311// Validate inspects the fields of the type to determine if they are valid.
8312func (s *CreateEndpointInput) Validate() error {
8313	invalidParams := request.ErrInvalidParams{Context: "CreateEndpointInput"}
8314	if s.ClientRequestToken != nil && len(*s.ClientRequestToken) < 1 {
8315		invalidParams.Add(request.NewErrParamMinLen("ClientRequestToken", 1))
8316	}
8317	if s.DataAccessRoleArn != nil && len(*s.DataAccessRoleArn) < 20 {
8318		invalidParams.Add(request.NewErrParamMinLen("DataAccessRoleArn", 20))
8319	}
8320	if s.DesiredInferenceUnits == nil {
8321		invalidParams.Add(request.NewErrParamRequired("DesiredInferenceUnits"))
8322	}
8323	if s.DesiredInferenceUnits != nil && *s.DesiredInferenceUnits < 1 {
8324		invalidParams.Add(request.NewErrParamMinValue("DesiredInferenceUnits", 1))
8325	}
8326	if s.EndpointName == nil {
8327		invalidParams.Add(request.NewErrParamRequired("EndpointName"))
8328	}
8329	if s.ModelArn == nil {
8330		invalidParams.Add(request.NewErrParamRequired("ModelArn"))
8331	}
8332	if s.Tags != nil {
8333		for i, v := range s.Tags {
8334			if v == nil {
8335				continue
8336			}
8337			if err := v.Validate(); err != nil {
8338				invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Tags", i), err.(request.ErrInvalidParams))
8339			}
8340		}
8341	}
8342
8343	if invalidParams.Len() > 0 {
8344		return invalidParams
8345	}
8346	return nil
8347}
8348
8349// SetClientRequestToken sets the ClientRequestToken field's value.
8350func (s *CreateEndpointInput) SetClientRequestToken(v string) *CreateEndpointInput {
8351	s.ClientRequestToken = &v
8352	return s
8353}
8354
8355// SetDataAccessRoleArn sets the DataAccessRoleArn field's value.
8356func (s *CreateEndpointInput) SetDataAccessRoleArn(v string) *CreateEndpointInput {
8357	s.DataAccessRoleArn = &v
8358	return s
8359}
8360
8361// SetDesiredInferenceUnits sets the DesiredInferenceUnits field's value.
8362func (s *CreateEndpointInput) SetDesiredInferenceUnits(v int64) *CreateEndpointInput {
8363	s.DesiredInferenceUnits = &v
8364	return s
8365}
8366
8367// SetEndpointName sets the EndpointName field's value.
8368func (s *CreateEndpointInput) SetEndpointName(v string) *CreateEndpointInput {
8369	s.EndpointName = &v
8370	return s
8371}
8372
8373// SetModelArn sets the ModelArn field's value.
8374func (s *CreateEndpointInput) SetModelArn(v string) *CreateEndpointInput {
8375	s.ModelArn = &v
8376	return s
8377}
8378
8379// SetTags sets the Tags field's value.
8380func (s *CreateEndpointInput) SetTags(v []*Tag) *CreateEndpointInput {
8381	s.Tags = v
8382	return s
8383}
8384
8385type CreateEndpointOutput struct {
8386	_ struct{} `type:"structure"`
8387
8388	// The Amazon Resource Number (ARN) of the endpoint being created.
8389	EndpointArn *string `type:"string"`
8390}
8391
8392// String returns the string representation.
8393//
8394// API parameter values that are decorated as "sensitive" in the API will not
8395// be included in the string output. The member name will be present, but the
8396// value will be replaced with "sensitive".
8397func (s CreateEndpointOutput) String() string {
8398	return awsutil.Prettify(s)
8399}
8400
8401// GoString returns the string representation.
8402//
8403// API parameter values that are decorated as "sensitive" in the API will not
8404// be included in the string output. The member name will be present, but the
8405// value will be replaced with "sensitive".
8406func (s CreateEndpointOutput) GoString() string {
8407	return s.String()
8408}
8409
8410// SetEndpointArn sets the EndpointArn field's value.
8411func (s *CreateEndpointOutput) SetEndpointArn(v string) *CreateEndpointOutput {
8412	s.EndpointArn = &v
8413	return s
8414}
8415
8416type CreateEntityRecognizerInput struct {
8417	_ struct{} `type:"structure"`
8418
8419	// A unique identifier for the request. If you don't set the client request
8420	// token, Amazon Comprehend generates one.
8421	ClientRequestToken *string `min:"1" type:"string" idempotencyToken:"true"`
8422
8423	// The Amazon Resource Name (ARN) of the AWS Identity and Management (IAM) role
8424	// that grants Amazon Comprehend read access to your input data.
8425	//
8426	// DataAccessRoleArn is a required field
8427	DataAccessRoleArn *string `min:"20" type:"string" required:"true"`
8428
8429	// Specifies the format and location of the input data. The S3 bucket containing
8430	// the input data must be located in the same region as the entity recognizer
8431	// being created.
8432	//
8433	// InputDataConfig is a required field
8434	InputDataConfig *EntityRecognizerInputDataConfig `type:"structure" required:"true"`
8435
8436	// You can specify any of the following languages supported by Amazon Comprehend:
8437	// English ("en"), Spanish ("es"), French ("fr"), Italian ("it"), German ("de"),
8438	// or Portuguese ("pt"). All documents must be in the same language.
8439	//
8440	// LanguageCode is a required field
8441	LanguageCode *string `type:"string" required:"true" enum:"LanguageCode"`
8442
8443	// ID for the AWS Key Management Service (KMS) key that Amazon Comprehend uses
8444	// to encrypt trained custom models. The ModelKmsKeyId can be either of the
8445	// following formats
8446	//
8447	//    * KMS Key ID: "1234abcd-12ab-34cd-56ef-1234567890ab"
8448	//
8449	//    * Amazon Resource Name (ARN) of a KMS Key: "arn:aws:kms:us-west-2:111122223333:key/1234abcd-12ab-34cd-56ef-1234567890ab"
8450	ModelKmsKeyId *string `type:"string"`
8451
8452	// The name given to the newly created recognizer. Recognizer names can be a
8453	// maximum of 256 characters. Alphanumeric characters, hyphens (-) and underscores
8454	// (_) are allowed. The name must be unique in the account/region.
8455	//
8456	// RecognizerName is a required field
8457	RecognizerName *string `type:"string" required:"true"`
8458
8459	// Tags to be associated with the entity recognizer being created. A tag is
8460	// a key-value pair that adds as a metadata to a resource used by Amazon Comprehend.
8461	// For example, a tag with "Sales" as the key might be added to a resource to
8462	// indicate its use by the sales department.
8463	Tags []*Tag `type:"list"`
8464
8465	// The version name given to the newly created recognizer. Version names can
8466	// be a maximum of 256 characters. Alphanumeric characters, hyphens (-) and
8467	// underscores (_) are allowed. The version name must be unique among all models
8468	// with the same recognizer name in the account/ AWS Region.
8469	VersionName *string `type:"string"`
8470
8471	// ID for the AWS Key Management Service (KMS) key that Amazon Comprehend uses
8472	// to encrypt data on the storage volume attached to the ML compute instance(s)
8473	// that process the analysis job. The VolumeKmsKeyId can be either of the following
8474	// formats:
8475	//
8476	//    * KMS Key ID: "1234abcd-12ab-34cd-56ef-1234567890ab"
8477	//
8478	//    * Amazon Resource Name (ARN) of a KMS Key: "arn:aws:kms:us-west-2:111122223333:key/1234abcd-12ab-34cd-56ef-1234567890ab"
8479	VolumeKmsKeyId *string `type:"string"`
8480
8481	// Configuration parameters for an optional private Virtual Private Cloud (VPC)
8482	// containing the resources you are using for your custom entity recognizer.
8483	// For more information, see Amazon VPC (https://docs.aws.amazon.com/vpc/latest/userguide/what-is-amazon-vpc.html).
8484	VpcConfig *VpcConfig `type:"structure"`
8485}
8486
8487// String returns the string representation.
8488//
8489// API parameter values that are decorated as "sensitive" in the API will not
8490// be included in the string output. The member name will be present, but the
8491// value will be replaced with "sensitive".
8492func (s CreateEntityRecognizerInput) String() string {
8493	return awsutil.Prettify(s)
8494}
8495
8496// GoString returns the string representation.
8497//
8498// API parameter values that are decorated as "sensitive" in the API will not
8499// be included in the string output. The member name will be present, but the
8500// value will be replaced with "sensitive".
8501func (s CreateEntityRecognizerInput) GoString() string {
8502	return s.String()
8503}
8504
8505// Validate inspects the fields of the type to determine if they are valid.
8506func (s *CreateEntityRecognizerInput) Validate() error {
8507	invalidParams := request.ErrInvalidParams{Context: "CreateEntityRecognizerInput"}
8508	if s.ClientRequestToken != nil && len(*s.ClientRequestToken) < 1 {
8509		invalidParams.Add(request.NewErrParamMinLen("ClientRequestToken", 1))
8510	}
8511	if s.DataAccessRoleArn == nil {
8512		invalidParams.Add(request.NewErrParamRequired("DataAccessRoleArn"))
8513	}
8514	if s.DataAccessRoleArn != nil && len(*s.DataAccessRoleArn) < 20 {
8515		invalidParams.Add(request.NewErrParamMinLen("DataAccessRoleArn", 20))
8516	}
8517	if s.InputDataConfig == nil {
8518		invalidParams.Add(request.NewErrParamRequired("InputDataConfig"))
8519	}
8520	if s.LanguageCode == nil {
8521		invalidParams.Add(request.NewErrParamRequired("LanguageCode"))
8522	}
8523	if s.RecognizerName == nil {
8524		invalidParams.Add(request.NewErrParamRequired("RecognizerName"))
8525	}
8526	if s.InputDataConfig != nil {
8527		if err := s.InputDataConfig.Validate(); err != nil {
8528			invalidParams.AddNested("InputDataConfig", err.(request.ErrInvalidParams))
8529		}
8530	}
8531	if s.Tags != nil {
8532		for i, v := range s.Tags {
8533			if v == nil {
8534				continue
8535			}
8536			if err := v.Validate(); err != nil {
8537				invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Tags", i), err.(request.ErrInvalidParams))
8538			}
8539		}
8540	}
8541	if s.VpcConfig != nil {
8542		if err := s.VpcConfig.Validate(); err != nil {
8543			invalidParams.AddNested("VpcConfig", err.(request.ErrInvalidParams))
8544		}
8545	}
8546
8547	if invalidParams.Len() > 0 {
8548		return invalidParams
8549	}
8550	return nil
8551}
8552
8553// SetClientRequestToken sets the ClientRequestToken field's value.
8554func (s *CreateEntityRecognizerInput) SetClientRequestToken(v string) *CreateEntityRecognizerInput {
8555	s.ClientRequestToken = &v
8556	return s
8557}
8558
8559// SetDataAccessRoleArn sets the DataAccessRoleArn field's value.
8560func (s *CreateEntityRecognizerInput) SetDataAccessRoleArn(v string) *CreateEntityRecognizerInput {
8561	s.DataAccessRoleArn = &v
8562	return s
8563}
8564
8565// SetInputDataConfig sets the InputDataConfig field's value.
8566func (s *CreateEntityRecognizerInput) SetInputDataConfig(v *EntityRecognizerInputDataConfig) *CreateEntityRecognizerInput {
8567	s.InputDataConfig = v
8568	return s
8569}
8570
8571// SetLanguageCode sets the LanguageCode field's value.
8572func (s *CreateEntityRecognizerInput) SetLanguageCode(v string) *CreateEntityRecognizerInput {
8573	s.LanguageCode = &v
8574	return s
8575}
8576
8577// SetModelKmsKeyId sets the ModelKmsKeyId field's value.
8578func (s *CreateEntityRecognizerInput) SetModelKmsKeyId(v string) *CreateEntityRecognizerInput {
8579	s.ModelKmsKeyId = &v
8580	return s
8581}
8582
8583// SetRecognizerName sets the RecognizerName field's value.
8584func (s *CreateEntityRecognizerInput) SetRecognizerName(v string) *CreateEntityRecognizerInput {
8585	s.RecognizerName = &v
8586	return s
8587}
8588
8589// SetTags sets the Tags field's value.
8590func (s *CreateEntityRecognizerInput) SetTags(v []*Tag) *CreateEntityRecognizerInput {
8591	s.Tags = v
8592	return s
8593}
8594
8595// SetVersionName sets the VersionName field's value.
8596func (s *CreateEntityRecognizerInput) SetVersionName(v string) *CreateEntityRecognizerInput {
8597	s.VersionName = &v
8598	return s
8599}
8600
8601// SetVolumeKmsKeyId sets the VolumeKmsKeyId field's value.
8602func (s *CreateEntityRecognizerInput) SetVolumeKmsKeyId(v string) *CreateEntityRecognizerInput {
8603	s.VolumeKmsKeyId = &v
8604	return s
8605}
8606
8607// SetVpcConfig sets the VpcConfig field's value.
8608func (s *CreateEntityRecognizerInput) SetVpcConfig(v *VpcConfig) *CreateEntityRecognizerInput {
8609	s.VpcConfig = v
8610	return s
8611}
8612
8613type CreateEntityRecognizerOutput struct {
8614	_ struct{} `type:"structure"`
8615
8616	// The Amazon Resource Name (ARN) that identifies the entity recognizer.
8617	EntityRecognizerArn *string `type:"string"`
8618}
8619
8620// String returns the string representation.
8621//
8622// API parameter values that are decorated as "sensitive" in the API will not
8623// be included in the string output. The member name will be present, but the
8624// value will be replaced with "sensitive".
8625func (s CreateEntityRecognizerOutput) String() string {
8626	return awsutil.Prettify(s)
8627}
8628
8629// GoString returns the string representation.
8630//
8631// API parameter values that are decorated as "sensitive" in the API will not
8632// be included in the string output. The member name will be present, but the
8633// value will be replaced with "sensitive".
8634func (s CreateEntityRecognizerOutput) GoString() string {
8635	return s.String()
8636}
8637
8638// SetEntityRecognizerArn sets the EntityRecognizerArn field's value.
8639func (s *CreateEntityRecognizerOutput) SetEntityRecognizerArn(v string) *CreateEntityRecognizerOutput {
8640	s.EntityRecognizerArn = &v
8641	return s
8642}
8643
8644type DeleteDocumentClassifierInput struct {
8645	_ struct{} `type:"structure"`
8646
8647	// The Amazon Resource Name (ARN) that identifies the document classifier.
8648	//
8649	// DocumentClassifierArn is a required field
8650	DocumentClassifierArn *string `type:"string" required:"true"`
8651}
8652
8653// String returns the string representation.
8654//
8655// API parameter values that are decorated as "sensitive" in the API will not
8656// be included in the string output. The member name will be present, but the
8657// value will be replaced with "sensitive".
8658func (s DeleteDocumentClassifierInput) String() string {
8659	return awsutil.Prettify(s)
8660}
8661
8662// GoString returns the string representation.
8663//
8664// API parameter values that are decorated as "sensitive" in the API will not
8665// be included in the string output. The member name will be present, but the
8666// value will be replaced with "sensitive".
8667func (s DeleteDocumentClassifierInput) GoString() string {
8668	return s.String()
8669}
8670
8671// Validate inspects the fields of the type to determine if they are valid.
8672func (s *DeleteDocumentClassifierInput) Validate() error {
8673	invalidParams := request.ErrInvalidParams{Context: "DeleteDocumentClassifierInput"}
8674	if s.DocumentClassifierArn == nil {
8675		invalidParams.Add(request.NewErrParamRequired("DocumentClassifierArn"))
8676	}
8677
8678	if invalidParams.Len() > 0 {
8679		return invalidParams
8680	}
8681	return nil
8682}
8683
8684// SetDocumentClassifierArn sets the DocumentClassifierArn field's value.
8685func (s *DeleteDocumentClassifierInput) SetDocumentClassifierArn(v string) *DeleteDocumentClassifierInput {
8686	s.DocumentClassifierArn = &v
8687	return s
8688}
8689
8690type DeleteDocumentClassifierOutput struct {
8691	_ struct{} `type:"structure"`
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 DeleteDocumentClassifierOutput) 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 DeleteDocumentClassifierOutput) GoString() string {
8709	return s.String()
8710}
8711
8712type DeleteEndpointInput struct {
8713	_ struct{} `type:"structure"`
8714
8715	// The Amazon Resource Number (ARN) of the endpoint being deleted.
8716	//
8717	// EndpointArn is a required field
8718	EndpointArn *string `type:"string" required:"true"`
8719}
8720
8721// String returns the string representation.
8722//
8723// API parameter values that are decorated as "sensitive" in the API will not
8724// be included in the string output. The member name will be present, but the
8725// value will be replaced with "sensitive".
8726func (s DeleteEndpointInput) String() string {
8727	return awsutil.Prettify(s)
8728}
8729
8730// GoString returns the string representation.
8731//
8732// API parameter values that are decorated as "sensitive" in the API will not
8733// be included in the string output. The member name will be present, but the
8734// value will be replaced with "sensitive".
8735func (s DeleteEndpointInput) GoString() string {
8736	return s.String()
8737}
8738
8739// Validate inspects the fields of the type to determine if they are valid.
8740func (s *DeleteEndpointInput) Validate() error {
8741	invalidParams := request.ErrInvalidParams{Context: "DeleteEndpointInput"}
8742	if s.EndpointArn == nil {
8743		invalidParams.Add(request.NewErrParamRequired("EndpointArn"))
8744	}
8745
8746	if invalidParams.Len() > 0 {
8747		return invalidParams
8748	}
8749	return nil
8750}
8751
8752// SetEndpointArn sets the EndpointArn field's value.
8753func (s *DeleteEndpointInput) SetEndpointArn(v string) *DeleteEndpointInput {
8754	s.EndpointArn = &v
8755	return s
8756}
8757
8758type DeleteEndpointOutput struct {
8759	_ struct{} `type:"structure"`
8760}
8761
8762// String returns the string representation.
8763//
8764// API parameter values that are decorated as "sensitive" in the API will not
8765// be included in the string output. The member name will be present, but the
8766// value will be replaced with "sensitive".
8767func (s DeleteEndpointOutput) String() string {
8768	return awsutil.Prettify(s)
8769}
8770
8771// GoString returns the string representation.
8772//
8773// API parameter values that are decorated as "sensitive" in the API will not
8774// be included in the string output. The member name will be present, but the
8775// value will be replaced with "sensitive".
8776func (s DeleteEndpointOutput) GoString() string {
8777	return s.String()
8778}
8779
8780type DeleteEntityRecognizerInput struct {
8781	_ struct{} `type:"structure"`
8782
8783	// The Amazon Resource Name (ARN) that identifies the entity recognizer.
8784	//
8785	// EntityRecognizerArn is a required field
8786	EntityRecognizerArn *string `type:"string" required:"true"`
8787}
8788
8789// String returns the string representation.
8790//
8791// API parameter values that are decorated as "sensitive" in the API will not
8792// be included in the string output. The member name will be present, but the
8793// value will be replaced with "sensitive".
8794func (s DeleteEntityRecognizerInput) String() string {
8795	return awsutil.Prettify(s)
8796}
8797
8798// GoString returns the string representation.
8799//
8800// API parameter values that are decorated as "sensitive" in the API will not
8801// be included in the string output. The member name will be present, but the
8802// value will be replaced with "sensitive".
8803func (s DeleteEntityRecognizerInput) GoString() string {
8804	return s.String()
8805}
8806
8807// Validate inspects the fields of the type to determine if they are valid.
8808func (s *DeleteEntityRecognizerInput) Validate() error {
8809	invalidParams := request.ErrInvalidParams{Context: "DeleteEntityRecognizerInput"}
8810	if s.EntityRecognizerArn == nil {
8811		invalidParams.Add(request.NewErrParamRequired("EntityRecognizerArn"))
8812	}
8813
8814	if invalidParams.Len() > 0 {
8815		return invalidParams
8816	}
8817	return nil
8818}
8819
8820// SetEntityRecognizerArn sets the EntityRecognizerArn field's value.
8821func (s *DeleteEntityRecognizerInput) SetEntityRecognizerArn(v string) *DeleteEntityRecognizerInput {
8822	s.EntityRecognizerArn = &v
8823	return s
8824}
8825
8826type DeleteEntityRecognizerOutput struct {
8827	_ struct{} `type:"structure"`
8828}
8829
8830// String returns the string representation.
8831//
8832// API parameter values that are decorated as "sensitive" in the API will not
8833// be included in the string output. The member name will be present, but the
8834// value will be replaced with "sensitive".
8835func (s DeleteEntityRecognizerOutput) String() string {
8836	return awsutil.Prettify(s)
8837}
8838
8839// GoString returns the string representation.
8840//
8841// API parameter values that are decorated as "sensitive" in the API will not
8842// be included in the string output. The member name will be present, but the
8843// value will be replaced with "sensitive".
8844func (s DeleteEntityRecognizerOutput) GoString() string {
8845	return s.String()
8846}
8847
8848type DescribeDocumentClassificationJobInput struct {
8849	_ struct{} `type:"structure"`
8850
8851	// The identifier that Amazon Comprehend generated for the job. The operation
8852	// returns this identifier in its response.
8853	//
8854	// JobId is a required field
8855	JobId *string `min:"1" type:"string" required:"true"`
8856}
8857
8858// String returns the string representation.
8859//
8860// API parameter values that are decorated as "sensitive" in the API will not
8861// be included in the string output. The member name will be present, but the
8862// value will be replaced with "sensitive".
8863func (s DescribeDocumentClassificationJobInput) String() string {
8864	return awsutil.Prettify(s)
8865}
8866
8867// GoString returns the string representation.
8868//
8869// API parameter values that are decorated as "sensitive" in the API will not
8870// be included in the string output. The member name will be present, but the
8871// value will be replaced with "sensitive".
8872func (s DescribeDocumentClassificationJobInput) GoString() string {
8873	return s.String()
8874}
8875
8876// Validate inspects the fields of the type to determine if they are valid.
8877func (s *DescribeDocumentClassificationJobInput) Validate() error {
8878	invalidParams := request.ErrInvalidParams{Context: "DescribeDocumentClassificationJobInput"}
8879	if s.JobId == nil {
8880		invalidParams.Add(request.NewErrParamRequired("JobId"))
8881	}
8882	if s.JobId != nil && len(*s.JobId) < 1 {
8883		invalidParams.Add(request.NewErrParamMinLen("JobId", 1))
8884	}
8885
8886	if invalidParams.Len() > 0 {
8887		return invalidParams
8888	}
8889	return nil
8890}
8891
8892// SetJobId sets the JobId field's value.
8893func (s *DescribeDocumentClassificationJobInput) SetJobId(v string) *DescribeDocumentClassificationJobInput {
8894	s.JobId = &v
8895	return s
8896}
8897
8898type DescribeDocumentClassificationJobOutput struct {
8899	_ struct{} `type:"structure"`
8900
8901	// An object that describes the properties associated with the document classification
8902	// job.
8903	DocumentClassificationJobProperties *DocumentClassificationJobProperties `type:"structure"`
8904}
8905
8906// String returns the string representation.
8907//
8908// API parameter values that are decorated as "sensitive" in the API will not
8909// be included in the string output. The member name will be present, but the
8910// value will be replaced with "sensitive".
8911func (s DescribeDocumentClassificationJobOutput) String() string {
8912	return awsutil.Prettify(s)
8913}
8914
8915// GoString returns the string representation.
8916//
8917// API parameter values that are decorated as "sensitive" in the API will not
8918// be included in the string output. The member name will be present, but the
8919// value will be replaced with "sensitive".
8920func (s DescribeDocumentClassificationJobOutput) GoString() string {
8921	return s.String()
8922}
8923
8924// SetDocumentClassificationJobProperties sets the DocumentClassificationJobProperties field's value.
8925func (s *DescribeDocumentClassificationJobOutput) SetDocumentClassificationJobProperties(v *DocumentClassificationJobProperties) *DescribeDocumentClassificationJobOutput {
8926	s.DocumentClassificationJobProperties = v
8927	return s
8928}
8929
8930type DescribeDocumentClassifierInput struct {
8931	_ struct{} `type:"structure"`
8932
8933	// The Amazon Resource Name (ARN) that identifies the document classifier. The
8934	// operation returns this identifier in its response.
8935	//
8936	// DocumentClassifierArn is a required field
8937	DocumentClassifierArn *string `type:"string" required:"true"`
8938}
8939
8940// String returns the string representation.
8941//
8942// API parameter values that are decorated as "sensitive" in the API will not
8943// be included in the string output. The member name will be present, but the
8944// value will be replaced with "sensitive".
8945func (s DescribeDocumentClassifierInput) String() string {
8946	return awsutil.Prettify(s)
8947}
8948
8949// GoString returns the string representation.
8950//
8951// API parameter values that are decorated as "sensitive" in the API will not
8952// be included in the string output. The member name will be present, but the
8953// value will be replaced with "sensitive".
8954func (s DescribeDocumentClassifierInput) GoString() string {
8955	return s.String()
8956}
8957
8958// Validate inspects the fields of the type to determine if they are valid.
8959func (s *DescribeDocumentClassifierInput) Validate() error {
8960	invalidParams := request.ErrInvalidParams{Context: "DescribeDocumentClassifierInput"}
8961	if s.DocumentClassifierArn == nil {
8962		invalidParams.Add(request.NewErrParamRequired("DocumentClassifierArn"))
8963	}
8964
8965	if invalidParams.Len() > 0 {
8966		return invalidParams
8967	}
8968	return nil
8969}
8970
8971// SetDocumentClassifierArn sets the DocumentClassifierArn field's value.
8972func (s *DescribeDocumentClassifierInput) SetDocumentClassifierArn(v string) *DescribeDocumentClassifierInput {
8973	s.DocumentClassifierArn = &v
8974	return s
8975}
8976
8977type DescribeDocumentClassifierOutput struct {
8978	_ struct{} `type:"structure"`
8979
8980	// An object that contains the properties associated with a document classifier.
8981	DocumentClassifierProperties *DocumentClassifierProperties `type:"structure"`
8982}
8983
8984// String returns the string representation.
8985//
8986// API parameter values that are decorated as "sensitive" in the API will not
8987// be included in the string output. The member name will be present, but the
8988// value will be replaced with "sensitive".
8989func (s DescribeDocumentClassifierOutput) String() string {
8990	return awsutil.Prettify(s)
8991}
8992
8993// GoString returns the string representation.
8994//
8995// API parameter values that are decorated as "sensitive" in the API will not
8996// be included in the string output. The member name will be present, but the
8997// value will be replaced with "sensitive".
8998func (s DescribeDocumentClassifierOutput) GoString() string {
8999	return s.String()
9000}
9001
9002// SetDocumentClassifierProperties sets the DocumentClassifierProperties field's value.
9003func (s *DescribeDocumentClassifierOutput) SetDocumentClassifierProperties(v *DocumentClassifierProperties) *DescribeDocumentClassifierOutput {
9004	s.DocumentClassifierProperties = v
9005	return s
9006}
9007
9008type DescribeDominantLanguageDetectionJobInput struct {
9009	_ struct{} `type:"structure"`
9010
9011	// The identifier that Amazon Comprehend generated for the job. The operation
9012	// returns this identifier in its response.
9013	//
9014	// JobId is a required field
9015	JobId *string `min:"1" type:"string" required:"true"`
9016}
9017
9018// String returns the string representation.
9019//
9020// API parameter values that are decorated as "sensitive" in the API will not
9021// be included in the string output. The member name will be present, but the
9022// value will be replaced with "sensitive".
9023func (s DescribeDominantLanguageDetectionJobInput) String() string {
9024	return awsutil.Prettify(s)
9025}
9026
9027// GoString returns the string representation.
9028//
9029// API parameter values that are decorated as "sensitive" in the API will not
9030// be included in the string output. The member name will be present, but the
9031// value will be replaced with "sensitive".
9032func (s DescribeDominantLanguageDetectionJobInput) GoString() string {
9033	return s.String()
9034}
9035
9036// Validate inspects the fields of the type to determine if they are valid.
9037func (s *DescribeDominantLanguageDetectionJobInput) Validate() error {
9038	invalidParams := request.ErrInvalidParams{Context: "DescribeDominantLanguageDetectionJobInput"}
9039	if s.JobId == nil {
9040		invalidParams.Add(request.NewErrParamRequired("JobId"))
9041	}
9042	if s.JobId != nil && len(*s.JobId) < 1 {
9043		invalidParams.Add(request.NewErrParamMinLen("JobId", 1))
9044	}
9045
9046	if invalidParams.Len() > 0 {
9047		return invalidParams
9048	}
9049	return nil
9050}
9051
9052// SetJobId sets the JobId field's value.
9053func (s *DescribeDominantLanguageDetectionJobInput) SetJobId(v string) *DescribeDominantLanguageDetectionJobInput {
9054	s.JobId = &v
9055	return s
9056}
9057
9058type DescribeDominantLanguageDetectionJobOutput struct {
9059	_ struct{} `type:"structure"`
9060
9061	// An object that contains the properties associated with a dominant language
9062	// detection job.
9063	DominantLanguageDetectionJobProperties *DominantLanguageDetectionJobProperties `type:"structure"`
9064}
9065
9066// String returns the string representation.
9067//
9068// API parameter values that are decorated as "sensitive" in the API will not
9069// be included in the string output. The member name will be present, but the
9070// value will be replaced with "sensitive".
9071func (s DescribeDominantLanguageDetectionJobOutput) String() string {
9072	return awsutil.Prettify(s)
9073}
9074
9075// GoString returns the string representation.
9076//
9077// API parameter values that are decorated as "sensitive" in the API will not
9078// be included in the string output. The member name will be present, but the
9079// value will be replaced with "sensitive".
9080func (s DescribeDominantLanguageDetectionJobOutput) GoString() string {
9081	return s.String()
9082}
9083
9084// SetDominantLanguageDetectionJobProperties sets the DominantLanguageDetectionJobProperties field's value.
9085func (s *DescribeDominantLanguageDetectionJobOutput) SetDominantLanguageDetectionJobProperties(v *DominantLanguageDetectionJobProperties) *DescribeDominantLanguageDetectionJobOutput {
9086	s.DominantLanguageDetectionJobProperties = v
9087	return s
9088}
9089
9090type DescribeEndpointInput struct {
9091	_ struct{} `type:"structure"`
9092
9093	// The Amazon Resource Number (ARN) of the endpoint being described.
9094	//
9095	// EndpointArn is a required field
9096	EndpointArn *string `type:"string" required:"true"`
9097}
9098
9099// String returns the string representation.
9100//
9101// API parameter values that are decorated as "sensitive" in the API will not
9102// be included in the string output. The member name will be present, but the
9103// value will be replaced with "sensitive".
9104func (s DescribeEndpointInput) String() string {
9105	return awsutil.Prettify(s)
9106}
9107
9108// GoString returns the string representation.
9109//
9110// API parameter values that are decorated as "sensitive" in the API will not
9111// be included in the string output. The member name will be present, but the
9112// value will be replaced with "sensitive".
9113func (s DescribeEndpointInput) GoString() string {
9114	return s.String()
9115}
9116
9117// Validate inspects the fields of the type to determine if they are valid.
9118func (s *DescribeEndpointInput) Validate() error {
9119	invalidParams := request.ErrInvalidParams{Context: "DescribeEndpointInput"}
9120	if s.EndpointArn == nil {
9121		invalidParams.Add(request.NewErrParamRequired("EndpointArn"))
9122	}
9123
9124	if invalidParams.Len() > 0 {
9125		return invalidParams
9126	}
9127	return nil
9128}
9129
9130// SetEndpointArn sets the EndpointArn field's value.
9131func (s *DescribeEndpointInput) SetEndpointArn(v string) *DescribeEndpointInput {
9132	s.EndpointArn = &v
9133	return s
9134}
9135
9136type DescribeEndpointOutput struct {
9137	_ struct{} `type:"structure"`
9138
9139	// Describes information associated with the specific endpoint.
9140	EndpointProperties *EndpointProperties `type:"structure"`
9141}
9142
9143// String returns the string representation.
9144//
9145// API parameter values that are decorated as "sensitive" in the API will not
9146// be included in the string output. The member name will be present, but the
9147// value will be replaced with "sensitive".
9148func (s DescribeEndpointOutput) String() string {
9149	return awsutil.Prettify(s)
9150}
9151
9152// GoString returns the string representation.
9153//
9154// API parameter values that are decorated as "sensitive" in the API will not
9155// be included in the string output. The member name will be present, but the
9156// value will be replaced with "sensitive".
9157func (s DescribeEndpointOutput) GoString() string {
9158	return s.String()
9159}
9160
9161// SetEndpointProperties sets the EndpointProperties field's value.
9162func (s *DescribeEndpointOutput) SetEndpointProperties(v *EndpointProperties) *DescribeEndpointOutput {
9163	s.EndpointProperties = v
9164	return s
9165}
9166
9167type DescribeEntitiesDetectionJobInput struct {
9168	_ struct{} `type:"structure"`
9169
9170	// The identifier that Amazon Comprehend generated for the job. The operation
9171	// returns this identifier in its response.
9172	//
9173	// JobId is a required field
9174	JobId *string `min:"1" type:"string" required:"true"`
9175}
9176
9177// String returns the string representation.
9178//
9179// API parameter values that are decorated as "sensitive" in the API will not
9180// be included in the string output. The member name will be present, but the
9181// value will be replaced with "sensitive".
9182func (s DescribeEntitiesDetectionJobInput) String() string {
9183	return awsutil.Prettify(s)
9184}
9185
9186// GoString returns the string representation.
9187//
9188// API parameter values that are decorated as "sensitive" in the API will not
9189// be included in the string output. The member name will be present, but the
9190// value will be replaced with "sensitive".
9191func (s DescribeEntitiesDetectionJobInput) GoString() string {
9192	return s.String()
9193}
9194
9195// Validate inspects the fields of the type to determine if they are valid.
9196func (s *DescribeEntitiesDetectionJobInput) Validate() error {
9197	invalidParams := request.ErrInvalidParams{Context: "DescribeEntitiesDetectionJobInput"}
9198	if s.JobId == nil {
9199		invalidParams.Add(request.NewErrParamRequired("JobId"))
9200	}
9201	if s.JobId != nil && len(*s.JobId) < 1 {
9202		invalidParams.Add(request.NewErrParamMinLen("JobId", 1))
9203	}
9204
9205	if invalidParams.Len() > 0 {
9206		return invalidParams
9207	}
9208	return nil
9209}
9210
9211// SetJobId sets the JobId field's value.
9212func (s *DescribeEntitiesDetectionJobInput) SetJobId(v string) *DescribeEntitiesDetectionJobInput {
9213	s.JobId = &v
9214	return s
9215}
9216
9217type DescribeEntitiesDetectionJobOutput struct {
9218	_ struct{} `type:"structure"`
9219
9220	// An object that contains the properties associated with an entities detection
9221	// job.
9222	EntitiesDetectionJobProperties *EntitiesDetectionJobProperties `type:"structure"`
9223}
9224
9225// String returns the string representation.
9226//
9227// API parameter values that are decorated as "sensitive" in the API will not
9228// be included in the string output. The member name will be present, but the
9229// value will be replaced with "sensitive".
9230func (s DescribeEntitiesDetectionJobOutput) String() string {
9231	return awsutil.Prettify(s)
9232}
9233
9234// GoString returns the string representation.
9235//
9236// API parameter values that are decorated as "sensitive" in the API will not
9237// be included in the string output. The member name will be present, but the
9238// value will be replaced with "sensitive".
9239func (s DescribeEntitiesDetectionJobOutput) GoString() string {
9240	return s.String()
9241}
9242
9243// SetEntitiesDetectionJobProperties sets the EntitiesDetectionJobProperties field's value.
9244func (s *DescribeEntitiesDetectionJobOutput) SetEntitiesDetectionJobProperties(v *EntitiesDetectionJobProperties) *DescribeEntitiesDetectionJobOutput {
9245	s.EntitiesDetectionJobProperties = v
9246	return s
9247}
9248
9249type DescribeEntityRecognizerInput struct {
9250	_ struct{} `type:"structure"`
9251
9252	// The Amazon Resource Name (ARN) that identifies the entity recognizer.
9253	//
9254	// EntityRecognizerArn is a required field
9255	EntityRecognizerArn *string `type:"string" required:"true"`
9256}
9257
9258// String returns the string representation.
9259//
9260// API parameter values that are decorated as "sensitive" in the API will not
9261// be included in the string output. The member name will be present, but the
9262// value will be replaced with "sensitive".
9263func (s DescribeEntityRecognizerInput) String() string {
9264	return awsutil.Prettify(s)
9265}
9266
9267// GoString returns the string representation.
9268//
9269// API parameter values that are decorated as "sensitive" in the API will not
9270// be included in the string output. The member name will be present, but the
9271// value will be replaced with "sensitive".
9272func (s DescribeEntityRecognizerInput) GoString() string {
9273	return s.String()
9274}
9275
9276// Validate inspects the fields of the type to determine if they are valid.
9277func (s *DescribeEntityRecognizerInput) Validate() error {
9278	invalidParams := request.ErrInvalidParams{Context: "DescribeEntityRecognizerInput"}
9279	if s.EntityRecognizerArn == nil {
9280		invalidParams.Add(request.NewErrParamRequired("EntityRecognizerArn"))
9281	}
9282
9283	if invalidParams.Len() > 0 {
9284		return invalidParams
9285	}
9286	return nil
9287}
9288
9289// SetEntityRecognizerArn sets the EntityRecognizerArn field's value.
9290func (s *DescribeEntityRecognizerInput) SetEntityRecognizerArn(v string) *DescribeEntityRecognizerInput {
9291	s.EntityRecognizerArn = &v
9292	return s
9293}
9294
9295type DescribeEntityRecognizerOutput struct {
9296	_ struct{} `type:"structure"`
9297
9298	// Describes information associated with an entity recognizer.
9299	EntityRecognizerProperties *EntityRecognizerProperties `type:"structure"`
9300}
9301
9302// String returns the string representation.
9303//
9304// API parameter values that are decorated as "sensitive" in the API will not
9305// be included in the string output. The member name will be present, but the
9306// value will be replaced with "sensitive".
9307func (s DescribeEntityRecognizerOutput) String() string {
9308	return awsutil.Prettify(s)
9309}
9310
9311// GoString returns the string representation.
9312//
9313// API parameter values that are decorated as "sensitive" in the API will not
9314// be included in the string output. The member name will be present, but the
9315// value will be replaced with "sensitive".
9316func (s DescribeEntityRecognizerOutput) GoString() string {
9317	return s.String()
9318}
9319
9320// SetEntityRecognizerProperties sets the EntityRecognizerProperties field's value.
9321func (s *DescribeEntityRecognizerOutput) SetEntityRecognizerProperties(v *EntityRecognizerProperties) *DescribeEntityRecognizerOutput {
9322	s.EntityRecognizerProperties = v
9323	return s
9324}
9325
9326type DescribeEventsDetectionJobInput struct {
9327	_ struct{} `type:"structure"`
9328
9329	// The identifier of the events detection job.
9330	//
9331	// JobId is a required field
9332	JobId *string `min:"1" type:"string" required:"true"`
9333}
9334
9335// String returns the string representation.
9336//
9337// API parameter values that are decorated as "sensitive" in the API will not
9338// be included in the string output. The member name will be present, but the
9339// value will be replaced with "sensitive".
9340func (s DescribeEventsDetectionJobInput) String() string {
9341	return awsutil.Prettify(s)
9342}
9343
9344// GoString returns the string representation.
9345//
9346// API parameter values that are decorated as "sensitive" in the API will not
9347// be included in the string output. The member name will be present, but the
9348// value will be replaced with "sensitive".
9349func (s DescribeEventsDetectionJobInput) GoString() string {
9350	return s.String()
9351}
9352
9353// Validate inspects the fields of the type to determine if they are valid.
9354func (s *DescribeEventsDetectionJobInput) Validate() error {
9355	invalidParams := request.ErrInvalidParams{Context: "DescribeEventsDetectionJobInput"}
9356	if s.JobId == nil {
9357		invalidParams.Add(request.NewErrParamRequired("JobId"))
9358	}
9359	if s.JobId != nil && len(*s.JobId) < 1 {
9360		invalidParams.Add(request.NewErrParamMinLen("JobId", 1))
9361	}
9362
9363	if invalidParams.Len() > 0 {
9364		return invalidParams
9365	}
9366	return nil
9367}
9368
9369// SetJobId sets the JobId field's value.
9370func (s *DescribeEventsDetectionJobInput) SetJobId(v string) *DescribeEventsDetectionJobInput {
9371	s.JobId = &v
9372	return s
9373}
9374
9375type DescribeEventsDetectionJobOutput struct {
9376	_ struct{} `type:"structure"`
9377
9378	// An object that contains the properties associated with an event detection
9379	// job.
9380	EventsDetectionJobProperties *EventsDetectionJobProperties `type:"structure"`
9381}
9382
9383// String returns the string representation.
9384//
9385// API parameter values that are decorated as "sensitive" in the API will not
9386// be included in the string output. The member name will be present, but the
9387// value will be replaced with "sensitive".
9388func (s DescribeEventsDetectionJobOutput) String() string {
9389	return awsutil.Prettify(s)
9390}
9391
9392// GoString returns the string representation.
9393//
9394// API parameter values that are decorated as "sensitive" in the API will not
9395// be included in the string output. The member name will be present, but the
9396// value will be replaced with "sensitive".
9397func (s DescribeEventsDetectionJobOutput) GoString() string {
9398	return s.String()
9399}
9400
9401// SetEventsDetectionJobProperties sets the EventsDetectionJobProperties field's value.
9402func (s *DescribeEventsDetectionJobOutput) SetEventsDetectionJobProperties(v *EventsDetectionJobProperties) *DescribeEventsDetectionJobOutput {
9403	s.EventsDetectionJobProperties = v
9404	return s
9405}
9406
9407type DescribeKeyPhrasesDetectionJobInput struct {
9408	_ struct{} `type:"structure"`
9409
9410	// The identifier that Amazon Comprehend generated for the job. The operation
9411	// returns this identifier in its response.
9412	//
9413	// JobId is a required field
9414	JobId *string `min:"1" type:"string" required:"true"`
9415}
9416
9417// String returns the string representation.
9418//
9419// API parameter values that are decorated as "sensitive" in the API will not
9420// be included in the string output. The member name will be present, but the
9421// value will be replaced with "sensitive".
9422func (s DescribeKeyPhrasesDetectionJobInput) String() string {
9423	return awsutil.Prettify(s)
9424}
9425
9426// GoString returns the string representation.
9427//
9428// API parameter values that are decorated as "sensitive" in the API will not
9429// be included in the string output. The member name will be present, but the
9430// value will be replaced with "sensitive".
9431func (s DescribeKeyPhrasesDetectionJobInput) GoString() string {
9432	return s.String()
9433}
9434
9435// Validate inspects the fields of the type to determine if they are valid.
9436func (s *DescribeKeyPhrasesDetectionJobInput) Validate() error {
9437	invalidParams := request.ErrInvalidParams{Context: "DescribeKeyPhrasesDetectionJobInput"}
9438	if s.JobId == nil {
9439		invalidParams.Add(request.NewErrParamRequired("JobId"))
9440	}
9441	if s.JobId != nil && len(*s.JobId) < 1 {
9442		invalidParams.Add(request.NewErrParamMinLen("JobId", 1))
9443	}
9444
9445	if invalidParams.Len() > 0 {
9446		return invalidParams
9447	}
9448	return nil
9449}
9450
9451// SetJobId sets the JobId field's value.
9452func (s *DescribeKeyPhrasesDetectionJobInput) SetJobId(v string) *DescribeKeyPhrasesDetectionJobInput {
9453	s.JobId = &v
9454	return s
9455}
9456
9457type DescribeKeyPhrasesDetectionJobOutput struct {
9458	_ struct{} `type:"structure"`
9459
9460	// An object that contains the properties associated with a key phrases detection
9461	// job.
9462	KeyPhrasesDetectionJobProperties *KeyPhrasesDetectionJobProperties `type:"structure"`
9463}
9464
9465// String returns the string representation.
9466//
9467// API parameter values that are decorated as "sensitive" in the API will not
9468// be included in the string output. The member name will be present, but the
9469// value will be replaced with "sensitive".
9470func (s DescribeKeyPhrasesDetectionJobOutput) String() string {
9471	return awsutil.Prettify(s)
9472}
9473
9474// GoString returns the string representation.
9475//
9476// API parameter values that are decorated as "sensitive" in the API will not
9477// be included in the string output. The member name will be present, but the
9478// value will be replaced with "sensitive".
9479func (s DescribeKeyPhrasesDetectionJobOutput) GoString() string {
9480	return s.String()
9481}
9482
9483// SetKeyPhrasesDetectionJobProperties sets the KeyPhrasesDetectionJobProperties field's value.
9484func (s *DescribeKeyPhrasesDetectionJobOutput) SetKeyPhrasesDetectionJobProperties(v *KeyPhrasesDetectionJobProperties) *DescribeKeyPhrasesDetectionJobOutput {
9485	s.KeyPhrasesDetectionJobProperties = v
9486	return s
9487}
9488
9489type DescribePiiEntitiesDetectionJobInput struct {
9490	_ struct{} `type:"structure"`
9491
9492	// The identifier that Amazon Comprehend generated for the job. The operation
9493	// returns this identifier in its response.
9494	//
9495	// JobId is a required field
9496	JobId *string `min:"1" type:"string" required:"true"`
9497}
9498
9499// String returns the string representation.
9500//
9501// API parameter values that are decorated as "sensitive" in the API will not
9502// be included in the string output. The member name will be present, but the
9503// value will be replaced with "sensitive".
9504func (s DescribePiiEntitiesDetectionJobInput) String() string {
9505	return awsutil.Prettify(s)
9506}
9507
9508// GoString returns the string representation.
9509//
9510// API parameter values that are decorated as "sensitive" in the API will not
9511// be included in the string output. The member name will be present, but the
9512// value will be replaced with "sensitive".
9513func (s DescribePiiEntitiesDetectionJobInput) GoString() string {
9514	return s.String()
9515}
9516
9517// Validate inspects the fields of the type to determine if they are valid.
9518func (s *DescribePiiEntitiesDetectionJobInput) Validate() error {
9519	invalidParams := request.ErrInvalidParams{Context: "DescribePiiEntitiesDetectionJobInput"}
9520	if s.JobId == nil {
9521		invalidParams.Add(request.NewErrParamRequired("JobId"))
9522	}
9523	if s.JobId != nil && len(*s.JobId) < 1 {
9524		invalidParams.Add(request.NewErrParamMinLen("JobId", 1))
9525	}
9526
9527	if invalidParams.Len() > 0 {
9528		return invalidParams
9529	}
9530	return nil
9531}
9532
9533// SetJobId sets the JobId field's value.
9534func (s *DescribePiiEntitiesDetectionJobInput) SetJobId(v string) *DescribePiiEntitiesDetectionJobInput {
9535	s.JobId = &v
9536	return s
9537}
9538
9539type DescribePiiEntitiesDetectionJobOutput struct {
9540	_ struct{} `type:"structure"`
9541
9542	// Provides information about a PII entities detection job.
9543	PiiEntitiesDetectionJobProperties *PiiEntitiesDetectionJobProperties `type:"structure"`
9544}
9545
9546// String returns the string representation.
9547//
9548// API parameter values that are decorated as "sensitive" in the API will not
9549// be included in the string output. The member name will be present, but the
9550// value will be replaced with "sensitive".
9551func (s DescribePiiEntitiesDetectionJobOutput) String() string {
9552	return awsutil.Prettify(s)
9553}
9554
9555// GoString returns the string representation.
9556//
9557// API parameter values that are decorated as "sensitive" in the API will not
9558// be included in the string output. The member name will be present, but the
9559// value will be replaced with "sensitive".
9560func (s DescribePiiEntitiesDetectionJobOutput) GoString() string {
9561	return s.String()
9562}
9563
9564// SetPiiEntitiesDetectionJobProperties sets the PiiEntitiesDetectionJobProperties field's value.
9565func (s *DescribePiiEntitiesDetectionJobOutput) SetPiiEntitiesDetectionJobProperties(v *PiiEntitiesDetectionJobProperties) *DescribePiiEntitiesDetectionJobOutput {
9566	s.PiiEntitiesDetectionJobProperties = v
9567	return s
9568}
9569
9570type DescribeSentimentDetectionJobInput struct {
9571	_ struct{} `type:"structure"`
9572
9573	// The identifier that Amazon Comprehend generated for the job. The operation
9574	// returns this identifier in its response.
9575	//
9576	// JobId is a required field
9577	JobId *string `min:"1" type:"string" required:"true"`
9578}
9579
9580// String returns the string representation.
9581//
9582// API parameter values that are decorated as "sensitive" in the API will not
9583// be included in the string output. The member name will be present, but the
9584// value will be replaced with "sensitive".
9585func (s DescribeSentimentDetectionJobInput) String() string {
9586	return awsutil.Prettify(s)
9587}
9588
9589// GoString returns the string representation.
9590//
9591// API parameter values that are decorated as "sensitive" in the API will not
9592// be included in the string output. The member name will be present, but the
9593// value will be replaced with "sensitive".
9594func (s DescribeSentimentDetectionJobInput) GoString() string {
9595	return s.String()
9596}
9597
9598// Validate inspects the fields of the type to determine if they are valid.
9599func (s *DescribeSentimentDetectionJobInput) Validate() error {
9600	invalidParams := request.ErrInvalidParams{Context: "DescribeSentimentDetectionJobInput"}
9601	if s.JobId == nil {
9602		invalidParams.Add(request.NewErrParamRequired("JobId"))
9603	}
9604	if s.JobId != nil && len(*s.JobId) < 1 {
9605		invalidParams.Add(request.NewErrParamMinLen("JobId", 1))
9606	}
9607
9608	if invalidParams.Len() > 0 {
9609		return invalidParams
9610	}
9611	return nil
9612}
9613
9614// SetJobId sets the JobId field's value.
9615func (s *DescribeSentimentDetectionJobInput) SetJobId(v string) *DescribeSentimentDetectionJobInput {
9616	s.JobId = &v
9617	return s
9618}
9619
9620type DescribeSentimentDetectionJobOutput struct {
9621	_ struct{} `type:"structure"`
9622
9623	// An object that contains the properties associated with a sentiment detection
9624	// job.
9625	SentimentDetectionJobProperties *SentimentDetectionJobProperties `type:"structure"`
9626}
9627
9628// String returns the string representation.
9629//
9630// API parameter values that are decorated as "sensitive" in the API will not
9631// be included in the string output. The member name will be present, but the
9632// value will be replaced with "sensitive".
9633func (s DescribeSentimentDetectionJobOutput) String() string {
9634	return awsutil.Prettify(s)
9635}
9636
9637// GoString returns the string representation.
9638//
9639// API parameter values that are decorated as "sensitive" in the API will not
9640// be included in the string output. The member name will be present, but the
9641// value will be replaced with "sensitive".
9642func (s DescribeSentimentDetectionJobOutput) GoString() string {
9643	return s.String()
9644}
9645
9646// SetSentimentDetectionJobProperties sets the SentimentDetectionJobProperties field's value.
9647func (s *DescribeSentimentDetectionJobOutput) SetSentimentDetectionJobProperties(v *SentimentDetectionJobProperties) *DescribeSentimentDetectionJobOutput {
9648	s.SentimentDetectionJobProperties = v
9649	return s
9650}
9651
9652type DescribeTopicsDetectionJobInput struct {
9653	_ struct{} `type:"structure"`
9654
9655	// The identifier assigned by the user to the detection job.
9656	//
9657	// JobId is a required field
9658	JobId *string `min:"1" type:"string" required:"true"`
9659}
9660
9661// String returns the string representation.
9662//
9663// API parameter values that are decorated as "sensitive" in the API will not
9664// be included in the string output. The member name will be present, but the
9665// value will be replaced with "sensitive".
9666func (s DescribeTopicsDetectionJobInput) String() string {
9667	return awsutil.Prettify(s)
9668}
9669
9670// GoString returns the string representation.
9671//
9672// API parameter values that are decorated as "sensitive" in the API will not
9673// be included in the string output. The member name will be present, but the
9674// value will be replaced with "sensitive".
9675func (s DescribeTopicsDetectionJobInput) GoString() string {
9676	return s.String()
9677}
9678
9679// Validate inspects the fields of the type to determine if they are valid.
9680func (s *DescribeTopicsDetectionJobInput) Validate() error {
9681	invalidParams := request.ErrInvalidParams{Context: "DescribeTopicsDetectionJobInput"}
9682	if s.JobId == nil {
9683		invalidParams.Add(request.NewErrParamRequired("JobId"))
9684	}
9685	if s.JobId != nil && len(*s.JobId) < 1 {
9686		invalidParams.Add(request.NewErrParamMinLen("JobId", 1))
9687	}
9688
9689	if invalidParams.Len() > 0 {
9690		return invalidParams
9691	}
9692	return nil
9693}
9694
9695// SetJobId sets the JobId field's value.
9696func (s *DescribeTopicsDetectionJobInput) SetJobId(v string) *DescribeTopicsDetectionJobInput {
9697	s.JobId = &v
9698	return s
9699}
9700
9701type DescribeTopicsDetectionJobOutput struct {
9702	_ struct{} `type:"structure"`
9703
9704	// The list of properties for the requested job.
9705	TopicsDetectionJobProperties *TopicsDetectionJobProperties `type:"structure"`
9706}
9707
9708// String returns the string representation.
9709//
9710// API parameter values that are decorated as "sensitive" in the API will not
9711// be included in the string output. The member name will be present, but the
9712// value will be replaced with "sensitive".
9713func (s DescribeTopicsDetectionJobOutput) String() string {
9714	return awsutil.Prettify(s)
9715}
9716
9717// GoString returns the string representation.
9718//
9719// API parameter values that are decorated as "sensitive" in the API will not
9720// be included in the string output. The member name will be present, but the
9721// value will be replaced with "sensitive".
9722func (s DescribeTopicsDetectionJobOutput) GoString() string {
9723	return s.String()
9724}
9725
9726// SetTopicsDetectionJobProperties sets the TopicsDetectionJobProperties field's value.
9727func (s *DescribeTopicsDetectionJobOutput) SetTopicsDetectionJobProperties(v *TopicsDetectionJobProperties) *DescribeTopicsDetectionJobOutput {
9728	s.TopicsDetectionJobProperties = v
9729	return s
9730}
9731
9732type DetectDominantLanguageInput struct {
9733	_ struct{} `type:"structure"`
9734
9735	// A UTF-8 text string. Each string should contain at least 20 characters and
9736	// must contain fewer that 5,000 bytes of UTF-8 encoded characters.
9737	//
9738	// Text is a sensitive parameter and its value will be
9739	// replaced with "sensitive" in string returned by DetectDominantLanguageInput's
9740	// String and GoString methods.
9741	//
9742	// Text is a required field
9743	Text *string `min:"1" type:"string" required:"true" sensitive:"true"`
9744}
9745
9746// String returns the string representation.
9747//
9748// API parameter values that are decorated as "sensitive" in the API will not
9749// be included in the string output. The member name will be present, but the
9750// value will be replaced with "sensitive".
9751func (s DetectDominantLanguageInput) String() string {
9752	return awsutil.Prettify(s)
9753}
9754
9755// GoString returns the string representation.
9756//
9757// API parameter values that are decorated as "sensitive" in the API will not
9758// be included in the string output. The member name will be present, but the
9759// value will be replaced with "sensitive".
9760func (s DetectDominantLanguageInput) GoString() string {
9761	return s.String()
9762}
9763
9764// Validate inspects the fields of the type to determine if they are valid.
9765func (s *DetectDominantLanguageInput) Validate() error {
9766	invalidParams := request.ErrInvalidParams{Context: "DetectDominantLanguageInput"}
9767	if s.Text == nil {
9768		invalidParams.Add(request.NewErrParamRequired("Text"))
9769	}
9770	if s.Text != nil && len(*s.Text) < 1 {
9771		invalidParams.Add(request.NewErrParamMinLen("Text", 1))
9772	}
9773
9774	if invalidParams.Len() > 0 {
9775		return invalidParams
9776	}
9777	return nil
9778}
9779
9780// SetText sets the Text field's value.
9781func (s *DetectDominantLanguageInput) SetText(v string) *DetectDominantLanguageInput {
9782	s.Text = &v
9783	return s
9784}
9785
9786type DetectDominantLanguageOutput struct {
9787	_ struct{} `type:"structure" sensitive:"true"`
9788
9789	// The languages that Amazon Comprehend detected in the input text. For each
9790	// language, the response returns the RFC 5646 language code and the level of
9791	// confidence that Amazon Comprehend has in the accuracy of its inference. For
9792	// more information about RFC 5646, see Tags for Identifying Languages (https://tools.ietf.org/html/rfc5646)
9793	// on the IETF Tools web site.
9794	Languages []*DominantLanguage `type:"list"`
9795}
9796
9797// String returns the string representation.
9798//
9799// API parameter values that are decorated as "sensitive" in the API will not
9800// be included in the string output. The member name will be present, but the
9801// value will be replaced with "sensitive".
9802func (s DetectDominantLanguageOutput) String() string {
9803	return awsutil.Prettify(s)
9804}
9805
9806// GoString returns the string representation.
9807//
9808// API parameter values that are decorated as "sensitive" in the API will not
9809// be included in the string output. The member name will be present, but the
9810// value will be replaced with "sensitive".
9811func (s DetectDominantLanguageOutput) GoString() string {
9812	return s.String()
9813}
9814
9815// SetLanguages sets the Languages field's value.
9816func (s *DetectDominantLanguageOutput) SetLanguages(v []*DominantLanguage) *DetectDominantLanguageOutput {
9817	s.Languages = v
9818	return s
9819}
9820
9821type DetectEntitiesInput struct {
9822	_ struct{} `type:"structure"`
9823
9824	// The Amazon Resource Name of an endpoint that is associated with a custom
9825	// entity recognition model. Provide an endpoint if you want to detect entities
9826	// by using your own custom model instead of the default model that is used
9827	// by Amazon Comprehend.
9828	//
9829	// If you specify an endpoint, Amazon Comprehend uses the language of your custom
9830	// model, and it ignores any language code that you provide in your request.
9831	EndpointArn *string `type:"string"`
9832
9833	// The language of the input documents. You can specify any of the primary languages
9834	// supported by Amazon Comprehend. All documents must be in the same language.
9835	//
9836	// If your request includes the endpoint for a custom entity recognition model,
9837	// Amazon Comprehend uses the language of your custom model, and it ignores
9838	// any language code that you specify here.
9839	LanguageCode *string `type:"string" enum:"LanguageCode"`
9840
9841	// A UTF-8 text string. Each string must contain fewer that 5,000 bytes of UTF-8
9842	// encoded characters.
9843	//
9844	// Text is a sensitive parameter and its value will be
9845	// replaced with "sensitive" in string returned by DetectEntitiesInput's
9846	// String and GoString methods.
9847	//
9848	// Text is a required field
9849	Text *string `min:"1" type:"string" required:"true" sensitive:"true"`
9850}
9851
9852// String returns the string representation.
9853//
9854// API parameter values that are decorated as "sensitive" in the API will not
9855// be included in the string output. The member name will be present, but the
9856// value will be replaced with "sensitive".
9857func (s DetectEntitiesInput) String() string {
9858	return awsutil.Prettify(s)
9859}
9860
9861// GoString returns the string representation.
9862//
9863// API parameter values that are decorated as "sensitive" in the API will not
9864// be included in the string output. The member name will be present, but the
9865// value will be replaced with "sensitive".
9866func (s DetectEntitiesInput) GoString() string {
9867	return s.String()
9868}
9869
9870// Validate inspects the fields of the type to determine if they are valid.
9871func (s *DetectEntitiesInput) Validate() error {
9872	invalidParams := request.ErrInvalidParams{Context: "DetectEntitiesInput"}
9873	if s.Text == nil {
9874		invalidParams.Add(request.NewErrParamRequired("Text"))
9875	}
9876	if s.Text != nil && len(*s.Text) < 1 {
9877		invalidParams.Add(request.NewErrParamMinLen("Text", 1))
9878	}
9879
9880	if invalidParams.Len() > 0 {
9881		return invalidParams
9882	}
9883	return nil
9884}
9885
9886// SetEndpointArn sets the EndpointArn field's value.
9887func (s *DetectEntitiesInput) SetEndpointArn(v string) *DetectEntitiesInput {
9888	s.EndpointArn = &v
9889	return s
9890}
9891
9892// SetLanguageCode sets the LanguageCode field's value.
9893func (s *DetectEntitiesInput) SetLanguageCode(v string) *DetectEntitiesInput {
9894	s.LanguageCode = &v
9895	return s
9896}
9897
9898// SetText sets the Text field's value.
9899func (s *DetectEntitiesInput) SetText(v string) *DetectEntitiesInput {
9900	s.Text = &v
9901	return s
9902}
9903
9904type DetectEntitiesOutput struct {
9905	_ struct{} `type:"structure" sensitive:"true"`
9906
9907	// A collection of entities identified in the input text. For each entity, the
9908	// response provides the entity text, entity type, where the entity text begins
9909	// and ends, and the level of confidence that Amazon Comprehend has in the detection.
9910	//
9911	// If your request uses a custom entity recognition model, Amazon Comprehend
9912	// detects the entities that the model is trained to recognize. Otherwise, it
9913	// detects the default entity types. For a list of default entity types, see
9914	// how-entities.
9915	Entities []*Entity `type:"list"`
9916}
9917
9918// String returns the string representation.
9919//
9920// API parameter values that are decorated as "sensitive" in the API will not
9921// be included in the string output. The member name will be present, but the
9922// value will be replaced with "sensitive".
9923func (s DetectEntitiesOutput) String() string {
9924	return awsutil.Prettify(s)
9925}
9926
9927// GoString returns the string representation.
9928//
9929// API parameter values that are decorated as "sensitive" in the API will not
9930// be included in the string output. The member name will be present, but the
9931// value will be replaced with "sensitive".
9932func (s DetectEntitiesOutput) GoString() string {
9933	return s.String()
9934}
9935
9936// SetEntities sets the Entities field's value.
9937func (s *DetectEntitiesOutput) SetEntities(v []*Entity) *DetectEntitiesOutput {
9938	s.Entities = v
9939	return s
9940}
9941
9942type DetectKeyPhrasesInput struct {
9943	_ struct{} `type:"structure"`
9944
9945	// The language of the input documents. You can specify any of the primary languages
9946	// supported by Amazon Comprehend. All documents must be in the same language.
9947	//
9948	// LanguageCode is a required field
9949	LanguageCode *string `type:"string" required:"true" enum:"LanguageCode"`
9950
9951	// A UTF-8 text string. Each string must contain fewer that 5,000 bytes of UTF-8
9952	// encoded characters.
9953	//
9954	// Text is a sensitive parameter and its value will be
9955	// replaced with "sensitive" in string returned by DetectKeyPhrasesInput's
9956	// String and GoString methods.
9957	//
9958	// Text is a required field
9959	Text *string `min:"1" type:"string" required:"true" sensitive:"true"`
9960}
9961
9962// String returns the string representation.
9963//
9964// API parameter values that are decorated as "sensitive" in the API will not
9965// be included in the string output. The member name will be present, but the
9966// value will be replaced with "sensitive".
9967func (s DetectKeyPhrasesInput) String() string {
9968	return awsutil.Prettify(s)
9969}
9970
9971// GoString returns the string representation.
9972//
9973// API parameter values that are decorated as "sensitive" in the API will not
9974// be included in the string output. The member name will be present, but the
9975// value will be replaced with "sensitive".
9976func (s DetectKeyPhrasesInput) GoString() string {
9977	return s.String()
9978}
9979
9980// Validate inspects the fields of the type to determine if they are valid.
9981func (s *DetectKeyPhrasesInput) Validate() error {
9982	invalidParams := request.ErrInvalidParams{Context: "DetectKeyPhrasesInput"}
9983	if s.LanguageCode == nil {
9984		invalidParams.Add(request.NewErrParamRequired("LanguageCode"))
9985	}
9986	if s.Text == nil {
9987		invalidParams.Add(request.NewErrParamRequired("Text"))
9988	}
9989	if s.Text != nil && len(*s.Text) < 1 {
9990		invalidParams.Add(request.NewErrParamMinLen("Text", 1))
9991	}
9992
9993	if invalidParams.Len() > 0 {
9994		return invalidParams
9995	}
9996	return nil
9997}
9998
9999// SetLanguageCode sets the LanguageCode field's value.
10000func (s *DetectKeyPhrasesInput) SetLanguageCode(v string) *DetectKeyPhrasesInput {
10001	s.LanguageCode = &v
10002	return s
10003}
10004
10005// SetText sets the Text field's value.
10006func (s *DetectKeyPhrasesInput) SetText(v string) *DetectKeyPhrasesInput {
10007	s.Text = &v
10008	return s
10009}
10010
10011type DetectKeyPhrasesOutput struct {
10012	_ struct{} `type:"structure" sensitive:"true"`
10013
10014	// A collection of key phrases that Amazon Comprehend identified in the input
10015	// text. For each key phrase, the response provides the text of the key phrase,
10016	// where the key phrase begins and ends, and the level of confidence that Amazon
10017	// Comprehend has in the accuracy of the detection.
10018	KeyPhrases []*KeyPhrase `type:"list"`
10019}
10020
10021// String returns the string representation.
10022//
10023// API parameter values that are decorated as "sensitive" in the API will not
10024// be included in the string output. The member name will be present, but the
10025// value will be replaced with "sensitive".
10026func (s DetectKeyPhrasesOutput) String() string {
10027	return awsutil.Prettify(s)
10028}
10029
10030// GoString returns the string representation.
10031//
10032// API parameter values that are decorated as "sensitive" in the API will not
10033// be included in the string output. The member name will be present, but the
10034// value will be replaced with "sensitive".
10035func (s DetectKeyPhrasesOutput) GoString() string {
10036	return s.String()
10037}
10038
10039// SetKeyPhrases sets the KeyPhrases field's value.
10040func (s *DetectKeyPhrasesOutput) SetKeyPhrases(v []*KeyPhrase) *DetectKeyPhrasesOutput {
10041	s.KeyPhrases = v
10042	return s
10043}
10044
10045type DetectPiiEntitiesInput struct {
10046	_ struct{} `type:"structure"`
10047
10048	// The language of the input documents.
10049	//
10050	// LanguageCode is a required field
10051	LanguageCode *string `type:"string" required:"true" enum:"LanguageCode"`
10052
10053	// A UTF-8 text string. Each string must contain fewer that 5,000 bytes of UTF-8
10054	// encoded characters.
10055	//
10056	// Text is a required field
10057	Text *string `min:"1" type:"string" required:"true"`
10058}
10059
10060// String returns the string representation.
10061//
10062// API parameter values that are decorated as "sensitive" in the API will not
10063// be included in the string output. The member name will be present, but the
10064// value will be replaced with "sensitive".
10065func (s DetectPiiEntitiesInput) String() string {
10066	return awsutil.Prettify(s)
10067}
10068
10069// GoString returns the string representation.
10070//
10071// API parameter values that are decorated as "sensitive" in the API will not
10072// be included in the string output. The member name will be present, but the
10073// value will be replaced with "sensitive".
10074func (s DetectPiiEntitiesInput) GoString() string {
10075	return s.String()
10076}
10077
10078// Validate inspects the fields of the type to determine if they are valid.
10079func (s *DetectPiiEntitiesInput) Validate() error {
10080	invalidParams := request.ErrInvalidParams{Context: "DetectPiiEntitiesInput"}
10081	if s.LanguageCode == nil {
10082		invalidParams.Add(request.NewErrParamRequired("LanguageCode"))
10083	}
10084	if s.Text == nil {
10085		invalidParams.Add(request.NewErrParamRequired("Text"))
10086	}
10087	if s.Text != nil && len(*s.Text) < 1 {
10088		invalidParams.Add(request.NewErrParamMinLen("Text", 1))
10089	}
10090
10091	if invalidParams.Len() > 0 {
10092		return invalidParams
10093	}
10094	return nil
10095}
10096
10097// SetLanguageCode sets the LanguageCode field's value.
10098func (s *DetectPiiEntitiesInput) SetLanguageCode(v string) *DetectPiiEntitiesInput {
10099	s.LanguageCode = &v
10100	return s
10101}
10102
10103// SetText sets the Text field's value.
10104func (s *DetectPiiEntitiesInput) SetText(v string) *DetectPiiEntitiesInput {
10105	s.Text = &v
10106	return s
10107}
10108
10109type DetectPiiEntitiesOutput struct {
10110	_ struct{} `type:"structure"`
10111
10112	// A collection of PII entities identified in the input text. For each entity,
10113	// the response provides the entity type, where the entity text begins and ends,
10114	// and the level of confidence that Amazon Comprehend has in the detection.
10115	Entities []*PiiEntity `type:"list"`
10116}
10117
10118// String returns the string representation.
10119//
10120// API parameter values that are decorated as "sensitive" in the API will not
10121// be included in the string output. The member name will be present, but the
10122// value will be replaced with "sensitive".
10123func (s DetectPiiEntitiesOutput) String() string {
10124	return awsutil.Prettify(s)
10125}
10126
10127// GoString returns the string representation.
10128//
10129// API parameter values that are decorated as "sensitive" in the API will not
10130// be included in the string output. The member name will be present, but the
10131// value will be replaced with "sensitive".
10132func (s DetectPiiEntitiesOutput) GoString() string {
10133	return s.String()
10134}
10135
10136// SetEntities sets the Entities field's value.
10137func (s *DetectPiiEntitiesOutput) SetEntities(v []*PiiEntity) *DetectPiiEntitiesOutput {
10138	s.Entities = v
10139	return s
10140}
10141
10142type DetectSentimentInput struct {
10143	_ struct{} `type:"structure"`
10144
10145	// The language of the input documents. You can specify any of the primary languages
10146	// supported by Amazon Comprehend. All documents must be in the same language.
10147	//
10148	// LanguageCode is a required field
10149	LanguageCode *string `type:"string" required:"true" enum:"LanguageCode"`
10150
10151	// A UTF-8 text string. Each string must contain fewer that 5,000 bytes of UTF-8
10152	// encoded characters.
10153	//
10154	// Text is a sensitive parameter and its value will be
10155	// replaced with "sensitive" in string returned by DetectSentimentInput's
10156	// String and GoString methods.
10157	//
10158	// Text is a required field
10159	Text *string `min:"1" type:"string" required:"true" sensitive:"true"`
10160}
10161
10162// String returns the string representation.
10163//
10164// API parameter values that are decorated as "sensitive" in the API will not
10165// be included in the string output. The member name will be present, but the
10166// value will be replaced with "sensitive".
10167func (s DetectSentimentInput) String() string {
10168	return awsutil.Prettify(s)
10169}
10170
10171// GoString returns the string representation.
10172//
10173// API parameter values that are decorated as "sensitive" in the API will not
10174// be included in the string output. The member name will be present, but the
10175// value will be replaced with "sensitive".
10176func (s DetectSentimentInput) GoString() string {
10177	return s.String()
10178}
10179
10180// Validate inspects the fields of the type to determine if they are valid.
10181func (s *DetectSentimentInput) Validate() error {
10182	invalidParams := request.ErrInvalidParams{Context: "DetectSentimentInput"}
10183	if s.LanguageCode == nil {
10184		invalidParams.Add(request.NewErrParamRequired("LanguageCode"))
10185	}
10186	if s.Text == nil {
10187		invalidParams.Add(request.NewErrParamRequired("Text"))
10188	}
10189	if s.Text != nil && len(*s.Text) < 1 {
10190		invalidParams.Add(request.NewErrParamMinLen("Text", 1))
10191	}
10192
10193	if invalidParams.Len() > 0 {
10194		return invalidParams
10195	}
10196	return nil
10197}
10198
10199// SetLanguageCode sets the LanguageCode field's value.
10200func (s *DetectSentimentInput) SetLanguageCode(v string) *DetectSentimentInput {
10201	s.LanguageCode = &v
10202	return s
10203}
10204
10205// SetText sets the Text field's value.
10206func (s *DetectSentimentInput) SetText(v string) *DetectSentimentInput {
10207	s.Text = &v
10208	return s
10209}
10210
10211type DetectSentimentOutput struct {
10212	_ struct{} `type:"structure" sensitive:"true"`
10213
10214	// The inferred sentiment that Amazon Comprehend has the highest level of confidence
10215	// in.
10216	Sentiment *string `type:"string" enum:"SentimentType"`
10217
10218	// An object that lists the sentiments, and their corresponding confidence levels.
10219	SentimentScore *SentimentScore `type:"structure"`
10220}
10221
10222// String returns the string representation.
10223//
10224// API parameter values that are decorated as "sensitive" in the API will not
10225// be included in the string output. The member name will be present, but the
10226// value will be replaced with "sensitive".
10227func (s DetectSentimentOutput) String() string {
10228	return awsutil.Prettify(s)
10229}
10230
10231// GoString returns the string representation.
10232//
10233// API parameter values that are decorated as "sensitive" in the API will not
10234// be included in the string output. The member name will be present, but the
10235// value will be replaced with "sensitive".
10236func (s DetectSentimentOutput) GoString() string {
10237	return s.String()
10238}
10239
10240// SetSentiment sets the Sentiment field's value.
10241func (s *DetectSentimentOutput) SetSentiment(v string) *DetectSentimentOutput {
10242	s.Sentiment = &v
10243	return s
10244}
10245
10246// SetSentimentScore sets the SentimentScore field's value.
10247func (s *DetectSentimentOutput) SetSentimentScore(v *SentimentScore) *DetectSentimentOutput {
10248	s.SentimentScore = v
10249	return s
10250}
10251
10252type DetectSyntaxInput struct {
10253	_ struct{} `type:"structure"`
10254
10255	// The language code of the input documents. You can specify any of the following
10256	// languages supported by Amazon Comprehend: German ("de"), English ("en"),
10257	// Spanish ("es"), French ("fr"), Italian ("it"), or Portuguese ("pt").
10258	//
10259	// LanguageCode is a required field
10260	LanguageCode *string `type:"string" required:"true" enum:"SyntaxLanguageCode"`
10261
10262	// A UTF-8 string. Each string must contain fewer that 5,000 bytes of UTF encoded
10263	// characters.
10264	//
10265	// Text is a sensitive parameter and its value will be
10266	// replaced with "sensitive" in string returned by DetectSyntaxInput's
10267	// String and GoString methods.
10268	//
10269	// Text is a required field
10270	Text *string `min:"1" type:"string" required:"true" sensitive:"true"`
10271}
10272
10273// String returns the string representation.
10274//
10275// API parameter values that are decorated as "sensitive" in the API will not
10276// be included in the string output. The member name will be present, but the
10277// value will be replaced with "sensitive".
10278func (s DetectSyntaxInput) String() string {
10279	return awsutil.Prettify(s)
10280}
10281
10282// GoString returns the string representation.
10283//
10284// API parameter values that are decorated as "sensitive" in the API will not
10285// be included in the string output. The member name will be present, but the
10286// value will be replaced with "sensitive".
10287func (s DetectSyntaxInput) GoString() string {
10288	return s.String()
10289}
10290
10291// Validate inspects the fields of the type to determine if they are valid.
10292func (s *DetectSyntaxInput) Validate() error {
10293	invalidParams := request.ErrInvalidParams{Context: "DetectSyntaxInput"}
10294	if s.LanguageCode == nil {
10295		invalidParams.Add(request.NewErrParamRequired("LanguageCode"))
10296	}
10297	if s.Text == nil {
10298		invalidParams.Add(request.NewErrParamRequired("Text"))
10299	}
10300	if s.Text != nil && len(*s.Text) < 1 {
10301		invalidParams.Add(request.NewErrParamMinLen("Text", 1))
10302	}
10303
10304	if invalidParams.Len() > 0 {
10305		return invalidParams
10306	}
10307	return nil
10308}
10309
10310// SetLanguageCode sets the LanguageCode field's value.
10311func (s *DetectSyntaxInput) SetLanguageCode(v string) *DetectSyntaxInput {
10312	s.LanguageCode = &v
10313	return s
10314}
10315
10316// SetText sets the Text field's value.
10317func (s *DetectSyntaxInput) SetText(v string) *DetectSyntaxInput {
10318	s.Text = &v
10319	return s
10320}
10321
10322type DetectSyntaxOutput struct {
10323	_ struct{} `type:"structure" sensitive:"true"`
10324
10325	// A collection of syntax tokens describing the text. For each token, the response
10326	// provides the text, the token type, where the text begins and ends, and the
10327	// level of confidence that Amazon Comprehend has that the token is correct.
10328	// For a list of token types, see how-syntax.
10329	SyntaxTokens []*SyntaxToken `type:"list"`
10330}
10331
10332// String returns the string representation.
10333//
10334// API parameter values that are decorated as "sensitive" in the API will not
10335// be included in the string output. The member name will be present, but the
10336// value will be replaced with "sensitive".
10337func (s DetectSyntaxOutput) String() string {
10338	return awsutil.Prettify(s)
10339}
10340
10341// GoString returns the string representation.
10342//
10343// API parameter values that are decorated as "sensitive" in the API will not
10344// be included in the string output. The member name will be present, but the
10345// value will be replaced with "sensitive".
10346func (s DetectSyntaxOutput) GoString() string {
10347	return s.String()
10348}
10349
10350// SetSyntaxTokens sets the SyntaxTokens field's value.
10351func (s *DetectSyntaxOutput) SetSyntaxTokens(v []*SyntaxToken) *DetectSyntaxOutput {
10352	s.SyntaxTokens = v
10353	return s
10354}
10355
10356// Specifies the class that categorizes the document being analyzed
10357type DocumentClass struct {
10358	_ struct{} `type:"structure"`
10359
10360	// The name of the class.
10361	Name *string `min:"1" type:"string"`
10362
10363	// The confidence score that Amazon Comprehend has this class correctly attributed.
10364	Score *float64 `type:"float"`
10365}
10366
10367// String returns the string representation.
10368//
10369// API parameter values that are decorated as "sensitive" in the API will not
10370// be included in the string output. The member name will be present, but the
10371// value will be replaced with "sensitive".
10372func (s DocumentClass) String() string {
10373	return awsutil.Prettify(s)
10374}
10375
10376// GoString returns the string representation.
10377//
10378// API parameter values that are decorated as "sensitive" in the API will not
10379// be included in the string output. The member name will be present, but the
10380// value will be replaced with "sensitive".
10381func (s DocumentClass) GoString() string {
10382	return s.String()
10383}
10384
10385// SetName sets the Name field's value.
10386func (s *DocumentClass) SetName(v string) *DocumentClass {
10387	s.Name = &v
10388	return s
10389}
10390
10391// SetScore sets the Score field's value.
10392func (s *DocumentClass) SetScore(v float64) *DocumentClass {
10393	s.Score = &v
10394	return s
10395}
10396
10397// Provides information for filtering a list of document classification jobs.
10398// For more information, see the operation. You can provide only one filter
10399// parameter in each request.
10400type DocumentClassificationJobFilter struct {
10401	_ struct{} `type:"structure"`
10402
10403	// Filters on the name of the job.
10404	JobName *string `min:"1" type:"string"`
10405
10406	// Filters the list based on job status. Returns only jobs with the specified
10407	// status.
10408	JobStatus *string `type:"string" enum:"JobStatus"`
10409
10410	// Filters the list of jobs based on the time that the job was submitted for
10411	// processing. Returns only jobs submitted after the specified time. Jobs are
10412	// returned in descending order, newest to oldest.
10413	SubmitTimeAfter *time.Time `type:"timestamp"`
10414
10415	// Filters the list of jobs based on the time that the job was submitted for
10416	// processing. Returns only jobs submitted before the specified time. Jobs are
10417	// returned in ascending order, oldest to newest.
10418	SubmitTimeBefore *time.Time `type:"timestamp"`
10419}
10420
10421// String returns the string representation.
10422//
10423// API parameter values that are decorated as "sensitive" in the API will not
10424// be included in the string output. The member name will be present, but the
10425// value will be replaced with "sensitive".
10426func (s DocumentClassificationJobFilter) String() string {
10427	return awsutil.Prettify(s)
10428}
10429
10430// GoString returns the string representation.
10431//
10432// API parameter values that are decorated as "sensitive" in the API will not
10433// be included in the string output. The member name will be present, but the
10434// value will be replaced with "sensitive".
10435func (s DocumentClassificationJobFilter) GoString() string {
10436	return s.String()
10437}
10438
10439// Validate inspects the fields of the type to determine if they are valid.
10440func (s *DocumentClassificationJobFilter) Validate() error {
10441	invalidParams := request.ErrInvalidParams{Context: "DocumentClassificationJobFilter"}
10442	if s.JobName != nil && len(*s.JobName) < 1 {
10443		invalidParams.Add(request.NewErrParamMinLen("JobName", 1))
10444	}
10445
10446	if invalidParams.Len() > 0 {
10447		return invalidParams
10448	}
10449	return nil
10450}
10451
10452// SetJobName sets the JobName field's value.
10453func (s *DocumentClassificationJobFilter) SetJobName(v string) *DocumentClassificationJobFilter {
10454	s.JobName = &v
10455	return s
10456}
10457
10458// SetJobStatus sets the JobStatus field's value.
10459func (s *DocumentClassificationJobFilter) SetJobStatus(v string) *DocumentClassificationJobFilter {
10460	s.JobStatus = &v
10461	return s
10462}
10463
10464// SetSubmitTimeAfter sets the SubmitTimeAfter field's value.
10465func (s *DocumentClassificationJobFilter) SetSubmitTimeAfter(v time.Time) *DocumentClassificationJobFilter {
10466	s.SubmitTimeAfter = &v
10467	return s
10468}
10469
10470// SetSubmitTimeBefore sets the SubmitTimeBefore field's value.
10471func (s *DocumentClassificationJobFilter) SetSubmitTimeBefore(v time.Time) *DocumentClassificationJobFilter {
10472	s.SubmitTimeBefore = &v
10473	return s
10474}
10475
10476// Provides information about a document classification job.
10477type DocumentClassificationJobProperties struct {
10478	_ struct{} `type:"structure"`
10479
10480	// The Amazon Resource Name (ARN) of the AWS identity and Access Management
10481	// (IAM) role that grants Amazon Comprehend read access to your input data.
10482	DataAccessRoleArn *string `min:"20" type:"string"`
10483
10484	// The Amazon Resource Name (ARN) that identifies the document classifier.
10485	DocumentClassifierArn *string `type:"string"`
10486
10487	// The time that the document classification job completed.
10488	EndTime *time.Time `type:"timestamp"`
10489
10490	// The input data configuration that you supplied when you created the document
10491	// classification job.
10492	InputDataConfig *InputDataConfig `type:"structure"`
10493
10494	// The Amazon Resource Name (ARN) of the document classification job. It is
10495	// a unique, fully qualified identifier for the job. It includes the AWS account,
10496	// Region, and the job ID. The format of the ARN is as follows:
10497	//
10498	// arn:<partition>:comprehend:<region>:<account-id>:document-classification-job/<job-id>
10499	//
10500	// The following is an example job ARN:
10501	//
10502	// arn:aws:comprehend:us-west-2:111122223333:document-classification-job/1234abcd12ab34cd56ef1234567890ab
10503	JobArn *string `type:"string"`
10504
10505	// The identifier assigned to the document classification job.
10506	JobId *string `min:"1" type:"string"`
10507
10508	// The name that you assigned to the document classification job.
10509	JobName *string `min:"1" type:"string"`
10510
10511	// The current status of the document classification job. If the status is FAILED,
10512	// the Message field shows the reason for the failure.
10513	JobStatus *string `type:"string" enum:"JobStatus"`
10514
10515	// A description of the status of the job.
10516	Message *string `type:"string"`
10517
10518	// The output data configuration that you supplied when you created the document
10519	// classification job.
10520	OutputDataConfig *OutputDataConfig `type:"structure"`
10521
10522	// The time that the document classification job was submitted for processing.
10523	SubmitTime *time.Time `type:"timestamp"`
10524
10525	// ID for the AWS Key Management Service (KMS) key that Amazon Comprehend uses
10526	// to encrypt data on the storage volume attached to the ML compute instance(s)
10527	// that process the analysis job. The VolumeKmsKeyId can be either of the following
10528	// formats:
10529	//
10530	//    * KMS Key ID: "1234abcd-12ab-34cd-56ef-1234567890ab"
10531	//
10532	//    * Amazon Resource Name (ARN) of a KMS Key: "arn:aws:kms:us-west-2:111122223333:key/1234abcd-12ab-34cd-56ef-1234567890ab"
10533	VolumeKmsKeyId *string `type:"string"`
10534
10535	// Configuration parameters for a private Virtual Private Cloud (VPC) containing
10536	// the resources you are using for your document classification job. For more
10537	// information, see Amazon VPC (https://docs.aws.amazon.com/vpc/latest/userguide/what-is-amazon-vpc.html).
10538	VpcConfig *VpcConfig `type:"structure"`
10539}
10540
10541// String returns the string representation.
10542//
10543// API parameter values that are decorated as "sensitive" in the API will not
10544// be included in the string output. The member name will be present, but the
10545// value will be replaced with "sensitive".
10546func (s DocumentClassificationJobProperties) String() string {
10547	return awsutil.Prettify(s)
10548}
10549
10550// GoString returns the string representation.
10551//
10552// API parameter values that are decorated as "sensitive" in the API will not
10553// be included in the string output. The member name will be present, but the
10554// value will be replaced with "sensitive".
10555func (s DocumentClassificationJobProperties) GoString() string {
10556	return s.String()
10557}
10558
10559// SetDataAccessRoleArn sets the DataAccessRoleArn field's value.
10560func (s *DocumentClassificationJobProperties) SetDataAccessRoleArn(v string) *DocumentClassificationJobProperties {
10561	s.DataAccessRoleArn = &v
10562	return s
10563}
10564
10565// SetDocumentClassifierArn sets the DocumentClassifierArn field's value.
10566func (s *DocumentClassificationJobProperties) SetDocumentClassifierArn(v string) *DocumentClassificationJobProperties {
10567	s.DocumentClassifierArn = &v
10568	return s
10569}
10570
10571// SetEndTime sets the EndTime field's value.
10572func (s *DocumentClassificationJobProperties) SetEndTime(v time.Time) *DocumentClassificationJobProperties {
10573	s.EndTime = &v
10574	return s
10575}
10576
10577// SetInputDataConfig sets the InputDataConfig field's value.
10578func (s *DocumentClassificationJobProperties) SetInputDataConfig(v *InputDataConfig) *DocumentClassificationJobProperties {
10579	s.InputDataConfig = v
10580	return s
10581}
10582
10583// SetJobArn sets the JobArn field's value.
10584func (s *DocumentClassificationJobProperties) SetJobArn(v string) *DocumentClassificationJobProperties {
10585	s.JobArn = &v
10586	return s
10587}
10588
10589// SetJobId sets the JobId field's value.
10590func (s *DocumentClassificationJobProperties) SetJobId(v string) *DocumentClassificationJobProperties {
10591	s.JobId = &v
10592	return s
10593}
10594
10595// SetJobName sets the JobName field's value.
10596func (s *DocumentClassificationJobProperties) SetJobName(v string) *DocumentClassificationJobProperties {
10597	s.JobName = &v
10598	return s
10599}
10600
10601// SetJobStatus sets the JobStatus field's value.
10602func (s *DocumentClassificationJobProperties) SetJobStatus(v string) *DocumentClassificationJobProperties {
10603	s.JobStatus = &v
10604	return s
10605}
10606
10607// SetMessage sets the Message field's value.
10608func (s *DocumentClassificationJobProperties) SetMessage(v string) *DocumentClassificationJobProperties {
10609	s.Message = &v
10610	return s
10611}
10612
10613// SetOutputDataConfig sets the OutputDataConfig field's value.
10614func (s *DocumentClassificationJobProperties) SetOutputDataConfig(v *OutputDataConfig) *DocumentClassificationJobProperties {
10615	s.OutputDataConfig = v
10616	return s
10617}
10618
10619// SetSubmitTime sets the SubmitTime field's value.
10620func (s *DocumentClassificationJobProperties) SetSubmitTime(v time.Time) *DocumentClassificationJobProperties {
10621	s.SubmitTime = &v
10622	return s
10623}
10624
10625// SetVolumeKmsKeyId sets the VolumeKmsKeyId field's value.
10626func (s *DocumentClassificationJobProperties) SetVolumeKmsKeyId(v string) *DocumentClassificationJobProperties {
10627	s.VolumeKmsKeyId = &v
10628	return s
10629}
10630
10631// SetVpcConfig sets the VpcConfig field's value.
10632func (s *DocumentClassificationJobProperties) SetVpcConfig(v *VpcConfig) *DocumentClassificationJobProperties {
10633	s.VpcConfig = v
10634	return s
10635}
10636
10637// Provides information for filtering a list of document classifiers. You can
10638// only specify one filtering parameter in a request. For more information,
10639// see the operation.
10640type DocumentClassifierFilter struct {
10641	_ struct{} `type:"structure"`
10642
10643	// The name that you assigned to the document classifier
10644	DocumentClassifierName *string `type:"string"`
10645
10646	// Filters the list of classifiers based on status.
10647	Status *string `type:"string" enum:"ModelStatus"`
10648
10649	// Filters the list of classifiers based on the time that the classifier was
10650	// submitted for processing. Returns only classifiers submitted after the specified
10651	// time. Classifiers are returned in descending order, newest to oldest.
10652	SubmitTimeAfter *time.Time `type:"timestamp"`
10653
10654	// Filters the list of classifiers based on the time that the classifier was
10655	// submitted for processing. Returns only classifiers submitted before the specified
10656	// time. Classifiers are returned in ascending order, oldest to newest.
10657	SubmitTimeBefore *time.Time `type:"timestamp"`
10658}
10659
10660// String returns the string representation.
10661//
10662// API parameter values that are decorated as "sensitive" in the API will not
10663// be included in the string output. The member name will be present, but the
10664// value will be replaced with "sensitive".
10665func (s DocumentClassifierFilter) String() string {
10666	return awsutil.Prettify(s)
10667}
10668
10669// GoString returns the string representation.
10670//
10671// API parameter values that are decorated as "sensitive" in the API will not
10672// be included in the string output. The member name will be present, but the
10673// value will be replaced with "sensitive".
10674func (s DocumentClassifierFilter) GoString() string {
10675	return s.String()
10676}
10677
10678// SetDocumentClassifierName sets the DocumentClassifierName field's value.
10679func (s *DocumentClassifierFilter) SetDocumentClassifierName(v string) *DocumentClassifierFilter {
10680	s.DocumentClassifierName = &v
10681	return s
10682}
10683
10684// SetStatus sets the Status field's value.
10685func (s *DocumentClassifierFilter) SetStatus(v string) *DocumentClassifierFilter {
10686	s.Status = &v
10687	return s
10688}
10689
10690// SetSubmitTimeAfter sets the SubmitTimeAfter field's value.
10691func (s *DocumentClassifierFilter) SetSubmitTimeAfter(v time.Time) *DocumentClassifierFilter {
10692	s.SubmitTimeAfter = &v
10693	return s
10694}
10695
10696// SetSubmitTimeBefore sets the SubmitTimeBefore field's value.
10697func (s *DocumentClassifierFilter) SetSubmitTimeBefore(v time.Time) *DocumentClassifierFilter {
10698	s.SubmitTimeBefore = &v
10699	return s
10700}
10701
10702// The input properties for training a document classifier.
10703//
10704// For more information on how the input file is formatted, see how-document-classification-training-data.
10705type DocumentClassifierInputDataConfig struct {
10706	_ struct{} `type:"structure"`
10707
10708	// A list of augmented manifest files that provide training data for your custom
10709	// model. An augmented manifest file is a labeled dataset that is produced by
10710	// Amazon SageMaker Ground Truth.
10711	//
10712	// This parameter is required if you set DataFormat to AUGMENTED_MANIFEST.
10713	AugmentedManifests []*AugmentedManifestsListItem `type:"list"`
10714
10715	// The format of your training data:
10716	//
10717	//    * COMPREHEND_CSV: A two-column CSV file, where labels are provided in
10718	//    the first column, and documents are provided in the second. If you use
10719	//    this value, you must provide the S3Uri parameter in your request.
10720	//
10721	//    * AUGMENTED_MANIFEST: A labeled dataset that is produced by Amazon SageMaker
10722	//    Ground Truth. This file is in JSON lines format. Each line is a complete
10723	//    JSON object that contains a training document and its associated labels.
10724	//    If you use this value, you must provide the AugmentedManifests parameter
10725	//    in your request.
10726	//
10727	// If you don't specify a value, Amazon Comprehend uses COMPREHEND_CSV as the
10728	// default.
10729	DataFormat *string `type:"string" enum:"DocumentClassifierDataFormat"`
10730
10731	// Indicates the delimiter used to separate each label for training a multi-label
10732	// classifier. The default delimiter between labels is a pipe (|). You can use
10733	// a different character as a delimiter (if it's an allowed character) by specifying
10734	// it under Delimiter for labels. If the training documents use a delimiter
10735	// other than the default or the delimiter you specify, the labels on that line
10736	// will be combined to make a single unique label, such as LABELLABELLABEL.
10737	LabelDelimiter *string `min:"1" type:"string"`
10738
10739	// The Amazon S3 URI for the input data. The S3 bucket must be in the same region
10740	// as the API endpoint that you are calling. The URI can point to a single input
10741	// file or it can provide the prefix for a collection of input files.
10742	//
10743	// For example, if you use the URI S3://bucketName/prefix, if the prefix is
10744	// a single file, Amazon Comprehend uses that file as input. If more than one
10745	// file begins with the prefix, Amazon Comprehend uses all of them as input.
10746	//
10747	// This parameter is required if you set DataFormat to COMPREHEND_CSV.
10748	S3Uri *string `type:"string"`
10749
10750	// The Amazon S3 URI for the input data. The Amazon S3 bucket must be in the
10751	// same AWS Region as the API endpoint that you are calling. The URI can point
10752	// to a single input file or it can provide the prefix for a collection of input
10753	// files.
10754	TestS3Uri *string `type:"string"`
10755}
10756
10757// String returns the string representation.
10758//
10759// API parameter values that are decorated as "sensitive" in the API will not
10760// be included in the string output. The member name will be present, but the
10761// value will be replaced with "sensitive".
10762func (s DocumentClassifierInputDataConfig) String() string {
10763	return awsutil.Prettify(s)
10764}
10765
10766// GoString returns the string representation.
10767//
10768// API parameter values that are decorated as "sensitive" in the API will not
10769// be included in the string output. The member name will be present, but the
10770// value will be replaced with "sensitive".
10771func (s DocumentClassifierInputDataConfig) GoString() string {
10772	return s.String()
10773}
10774
10775// Validate inspects the fields of the type to determine if they are valid.
10776func (s *DocumentClassifierInputDataConfig) Validate() error {
10777	invalidParams := request.ErrInvalidParams{Context: "DocumentClassifierInputDataConfig"}
10778	if s.LabelDelimiter != nil && len(*s.LabelDelimiter) < 1 {
10779		invalidParams.Add(request.NewErrParamMinLen("LabelDelimiter", 1))
10780	}
10781	if s.AugmentedManifests != nil {
10782		for i, v := range s.AugmentedManifests {
10783			if v == nil {
10784				continue
10785			}
10786			if err := v.Validate(); err != nil {
10787				invalidParams.AddNested(fmt.Sprintf("%s[%v]", "AugmentedManifests", i), err.(request.ErrInvalidParams))
10788			}
10789		}
10790	}
10791
10792	if invalidParams.Len() > 0 {
10793		return invalidParams
10794	}
10795	return nil
10796}
10797
10798// SetAugmentedManifests sets the AugmentedManifests field's value.
10799func (s *DocumentClassifierInputDataConfig) SetAugmentedManifests(v []*AugmentedManifestsListItem) *DocumentClassifierInputDataConfig {
10800	s.AugmentedManifests = v
10801	return s
10802}
10803
10804// SetDataFormat sets the DataFormat field's value.
10805func (s *DocumentClassifierInputDataConfig) SetDataFormat(v string) *DocumentClassifierInputDataConfig {
10806	s.DataFormat = &v
10807	return s
10808}
10809
10810// SetLabelDelimiter sets the LabelDelimiter field's value.
10811func (s *DocumentClassifierInputDataConfig) SetLabelDelimiter(v string) *DocumentClassifierInputDataConfig {
10812	s.LabelDelimiter = &v
10813	return s
10814}
10815
10816// SetS3Uri sets the S3Uri field's value.
10817func (s *DocumentClassifierInputDataConfig) SetS3Uri(v string) *DocumentClassifierInputDataConfig {
10818	s.S3Uri = &v
10819	return s
10820}
10821
10822// SetTestS3Uri sets the TestS3Uri field's value.
10823func (s *DocumentClassifierInputDataConfig) SetTestS3Uri(v string) *DocumentClassifierInputDataConfig {
10824	s.TestS3Uri = &v
10825	return s
10826}
10827
10828// Provides output results configuration parameters for custom classifier jobs.
10829type DocumentClassifierOutputDataConfig struct {
10830	_ struct{} `type:"structure"`
10831
10832	// ID for the AWS Key Management Service (KMS) key that Amazon Comprehend uses
10833	// to encrypt the output results from an analysis job. The KmsKeyId can be one
10834	// of the following formats:
10835	//
10836	//    * KMS Key ID: "1234abcd-12ab-34cd-56ef-1234567890ab"
10837	//
10838	//    * Amazon Resource Name (ARN) of a KMS Key: "arn:aws:kms:us-west-2:111122223333:key/1234abcd-12ab-34cd-56ef-1234567890ab"
10839	//
10840	//    * KMS Key Alias: "alias/ExampleAlias"
10841	//
10842	//    * ARN of a KMS Key Alias: "arn:aws:kms:us-west-2:111122223333:alias/ExampleAlias"
10843	KmsKeyId *string `type:"string"`
10844
10845	// When you use the OutputDataConfig object while creating a custom classifier,
10846	// you specify the Amazon S3 location where you want to write the confusion
10847	// matrix. The URI must be in the same region as the API endpoint that you are
10848	// calling. The location is used as the prefix for the actual location of this
10849	// output file.
10850	//
10851	// When the custom classifier job is finished, the service creates the output
10852	// file in a directory specific to the job. The S3Uri field contains the location
10853	// of the output file, called output.tar.gz. It is a compressed archive that
10854	// contains the confusion matrix.
10855	S3Uri *string `type:"string"`
10856}
10857
10858// String returns the string representation.
10859//
10860// API parameter values that are decorated as "sensitive" in the API will not
10861// be included in the string output. The member name will be present, but the
10862// value will be replaced with "sensitive".
10863func (s DocumentClassifierOutputDataConfig) String() string {
10864	return awsutil.Prettify(s)
10865}
10866
10867// GoString returns the string representation.
10868//
10869// API parameter values that are decorated as "sensitive" in the API will not
10870// be included in the string output. The member name will be present, but the
10871// value will be replaced with "sensitive".
10872func (s DocumentClassifierOutputDataConfig) GoString() string {
10873	return s.String()
10874}
10875
10876// SetKmsKeyId sets the KmsKeyId field's value.
10877func (s *DocumentClassifierOutputDataConfig) SetKmsKeyId(v string) *DocumentClassifierOutputDataConfig {
10878	s.KmsKeyId = &v
10879	return s
10880}
10881
10882// SetS3Uri sets the S3Uri field's value.
10883func (s *DocumentClassifierOutputDataConfig) SetS3Uri(v string) *DocumentClassifierOutputDataConfig {
10884	s.S3Uri = &v
10885	return s
10886}
10887
10888// Provides information about a document classifier.
10889type DocumentClassifierProperties struct {
10890	_ struct{} `type:"structure"`
10891
10892	// Information about the document classifier, including the number of documents
10893	// used for training the classifier, the number of documents used for test the
10894	// classifier, and an accuracy rating.
10895	//
10896	// ClassifierMetadata is a sensitive parameter and its value will be
10897	// replaced with "sensitive" in string returned by DocumentClassifierProperties's
10898	// String and GoString methods.
10899	ClassifierMetadata *ClassifierMetadata `type:"structure" sensitive:"true"`
10900
10901	// The Amazon Resource Name (ARN) of the AWS Identity and Management (IAM) role
10902	// that grants Amazon Comprehend read access to your input data.
10903	DataAccessRoleArn *string `min:"20" type:"string"`
10904
10905	// The Amazon Resource Name (ARN) that identifies the document classifier.
10906	DocumentClassifierArn *string `type:"string"`
10907
10908	// The time that training the document classifier completed.
10909	EndTime *time.Time `type:"timestamp"`
10910
10911	// The input data configuration that you supplied when you created the document
10912	// classifier for training.
10913	InputDataConfig *DocumentClassifierInputDataConfig `type:"structure"`
10914
10915	// The language code for the language of the documents that the classifier was
10916	// trained on.
10917	LanguageCode *string `type:"string" enum:"LanguageCode"`
10918
10919	// Additional information about the status of the classifier.
10920	Message *string `type:"string"`
10921
10922	// Indicates the mode in which the specific classifier was trained. This also
10923	// indicates the format of input documents and the format of the confusion matrix.
10924	// Each classifier can only be trained in one mode and this cannot be changed
10925	// once the classifier is trained.
10926	Mode *string `type:"string" enum:"DocumentClassifierMode"`
10927
10928	// ID for the AWS Key Management Service (KMS) key that Amazon Comprehend uses
10929	// to encrypt trained custom models. The ModelKmsKeyId can be either of the
10930	// following formats:
10931	//
10932	//    * KMS Key ID: "1234abcd-12ab-34cd-56ef-1234567890ab"
10933	//
10934	//    * Amazon Resource Name (ARN) of a KMS Key: "arn:aws:kms:us-west-2:111122223333:key/1234abcd-12ab-34cd-56ef-1234567890ab"
10935	ModelKmsKeyId *string `type:"string"`
10936
10937	// Provides output results configuration parameters for custom classifier jobs.
10938	OutputDataConfig *DocumentClassifierOutputDataConfig `type:"structure"`
10939
10940	// The status of the document classifier. If the status is TRAINED the classifier
10941	// is ready to use. If the status is FAILED you can see additional information
10942	// about why the classifier wasn't trained in the Message field.
10943	Status *string `type:"string" enum:"ModelStatus"`
10944
10945	// The time that the document classifier was submitted for training.
10946	SubmitTime *time.Time `type:"timestamp"`
10947
10948	// The time that training of the document classifier was completed. Indicates
10949	// the time when the training completes on documentation classifiers. You are
10950	// billed for the time interval between this time and the value of TrainingStartTime.
10951	TrainingEndTime *time.Time `type:"timestamp"`
10952
10953	// Indicates the time when the training starts on documentation classifiers.
10954	// You are billed for the time interval between this time and the value of TrainingEndTime.
10955	TrainingStartTime *time.Time `type:"timestamp"`
10956
10957	// The version name that you assigned to the document classifier.
10958	VersionName *string `type:"string"`
10959
10960	// ID for the AWS Key Management Service (KMS) key that Amazon Comprehend uses
10961	// to encrypt data on the storage volume attached to the ML compute instance(s)
10962	// that process the analysis job. The VolumeKmsKeyId can be either of the following
10963	// formats:
10964	//
10965	//    * KMS Key ID: "1234abcd-12ab-34cd-56ef-1234567890ab"
10966	//
10967	//    * Amazon Resource Name (ARN) of a KMS Key: "arn:aws:kms:us-west-2:111122223333:key/1234abcd-12ab-34cd-56ef-1234567890ab"
10968	VolumeKmsKeyId *string `type:"string"`
10969
10970	// Configuration parameters for a private Virtual Private Cloud (VPC) containing
10971	// the resources you are using for your custom classifier. For more information,
10972	// see Amazon VPC (https://docs.aws.amazon.com/vpc/latest/userguide/what-is-amazon-vpc.html).
10973	VpcConfig *VpcConfig `type:"structure"`
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 DocumentClassifierProperties) 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 DocumentClassifierProperties) GoString() string {
10991	return s.String()
10992}
10993
10994// SetClassifierMetadata sets the ClassifierMetadata field's value.
10995func (s *DocumentClassifierProperties) SetClassifierMetadata(v *ClassifierMetadata) *DocumentClassifierProperties {
10996	s.ClassifierMetadata = v
10997	return s
10998}
10999
11000// SetDataAccessRoleArn sets the DataAccessRoleArn field's value.
11001func (s *DocumentClassifierProperties) SetDataAccessRoleArn(v string) *DocumentClassifierProperties {
11002	s.DataAccessRoleArn = &v
11003	return s
11004}
11005
11006// SetDocumentClassifierArn sets the DocumentClassifierArn field's value.
11007func (s *DocumentClassifierProperties) SetDocumentClassifierArn(v string) *DocumentClassifierProperties {
11008	s.DocumentClassifierArn = &v
11009	return s
11010}
11011
11012// SetEndTime sets the EndTime field's value.
11013func (s *DocumentClassifierProperties) SetEndTime(v time.Time) *DocumentClassifierProperties {
11014	s.EndTime = &v
11015	return s
11016}
11017
11018// SetInputDataConfig sets the InputDataConfig field's value.
11019func (s *DocumentClassifierProperties) SetInputDataConfig(v *DocumentClassifierInputDataConfig) *DocumentClassifierProperties {
11020	s.InputDataConfig = v
11021	return s
11022}
11023
11024// SetLanguageCode sets the LanguageCode field's value.
11025func (s *DocumentClassifierProperties) SetLanguageCode(v string) *DocumentClassifierProperties {
11026	s.LanguageCode = &v
11027	return s
11028}
11029
11030// SetMessage sets the Message field's value.
11031func (s *DocumentClassifierProperties) SetMessage(v string) *DocumentClassifierProperties {
11032	s.Message = &v
11033	return s
11034}
11035
11036// SetMode sets the Mode field's value.
11037func (s *DocumentClassifierProperties) SetMode(v string) *DocumentClassifierProperties {
11038	s.Mode = &v
11039	return s
11040}
11041
11042// SetModelKmsKeyId sets the ModelKmsKeyId field's value.
11043func (s *DocumentClassifierProperties) SetModelKmsKeyId(v string) *DocumentClassifierProperties {
11044	s.ModelKmsKeyId = &v
11045	return s
11046}
11047
11048// SetOutputDataConfig sets the OutputDataConfig field's value.
11049func (s *DocumentClassifierProperties) SetOutputDataConfig(v *DocumentClassifierOutputDataConfig) *DocumentClassifierProperties {
11050	s.OutputDataConfig = v
11051	return s
11052}
11053
11054// SetStatus sets the Status field's value.
11055func (s *DocumentClassifierProperties) SetStatus(v string) *DocumentClassifierProperties {
11056	s.Status = &v
11057	return s
11058}
11059
11060// SetSubmitTime sets the SubmitTime field's value.
11061func (s *DocumentClassifierProperties) SetSubmitTime(v time.Time) *DocumentClassifierProperties {
11062	s.SubmitTime = &v
11063	return s
11064}
11065
11066// SetTrainingEndTime sets the TrainingEndTime field's value.
11067func (s *DocumentClassifierProperties) SetTrainingEndTime(v time.Time) *DocumentClassifierProperties {
11068	s.TrainingEndTime = &v
11069	return s
11070}
11071
11072// SetTrainingStartTime sets the TrainingStartTime field's value.
11073func (s *DocumentClassifierProperties) SetTrainingStartTime(v time.Time) *DocumentClassifierProperties {
11074	s.TrainingStartTime = &v
11075	return s
11076}
11077
11078// SetVersionName sets the VersionName field's value.
11079func (s *DocumentClassifierProperties) SetVersionName(v string) *DocumentClassifierProperties {
11080	s.VersionName = &v
11081	return s
11082}
11083
11084// SetVolumeKmsKeyId sets the VolumeKmsKeyId field's value.
11085func (s *DocumentClassifierProperties) SetVolumeKmsKeyId(v string) *DocumentClassifierProperties {
11086	s.VolumeKmsKeyId = &v
11087	return s
11088}
11089
11090// SetVpcConfig sets the VpcConfig field's value.
11091func (s *DocumentClassifierProperties) SetVpcConfig(v *VpcConfig) *DocumentClassifierProperties {
11092	s.VpcConfig = v
11093	return s
11094}
11095
11096// Describes information about a document classifier and its versions.
11097type DocumentClassifierSummary struct {
11098	_ struct{} `type:"structure"`
11099
11100	// The name that you assigned the document classifier.
11101	DocumentClassifierName *string `type:"string"`
11102
11103	// The time that the latest document classifier version was submitted for processing.
11104	LatestVersionCreatedAt *time.Time `type:"timestamp"`
11105
11106	// The version name you assigned to the latest document classifier version.
11107	LatestVersionName *string `type:"string"`
11108
11109	// Provides the status of the latest document classifier version.
11110	LatestVersionStatus *string `type:"string" enum:"ModelStatus"`
11111
11112	// The number of versions you created.
11113	NumberOfVersions *int64 `type:"integer"`
11114}
11115
11116// String returns the string representation.
11117//
11118// API parameter values that are decorated as "sensitive" in the API will not
11119// be included in the string output. The member name will be present, but the
11120// value will be replaced with "sensitive".
11121func (s DocumentClassifierSummary) String() string {
11122	return awsutil.Prettify(s)
11123}
11124
11125// GoString returns the string representation.
11126//
11127// API parameter values that are decorated as "sensitive" in the API will not
11128// be included in the string output. The member name will be present, but the
11129// value will be replaced with "sensitive".
11130func (s DocumentClassifierSummary) GoString() string {
11131	return s.String()
11132}
11133
11134// SetDocumentClassifierName sets the DocumentClassifierName field's value.
11135func (s *DocumentClassifierSummary) SetDocumentClassifierName(v string) *DocumentClassifierSummary {
11136	s.DocumentClassifierName = &v
11137	return s
11138}
11139
11140// SetLatestVersionCreatedAt sets the LatestVersionCreatedAt field's value.
11141func (s *DocumentClassifierSummary) SetLatestVersionCreatedAt(v time.Time) *DocumentClassifierSummary {
11142	s.LatestVersionCreatedAt = &v
11143	return s
11144}
11145
11146// SetLatestVersionName sets the LatestVersionName field's value.
11147func (s *DocumentClassifierSummary) SetLatestVersionName(v string) *DocumentClassifierSummary {
11148	s.LatestVersionName = &v
11149	return s
11150}
11151
11152// SetLatestVersionStatus sets the LatestVersionStatus field's value.
11153func (s *DocumentClassifierSummary) SetLatestVersionStatus(v string) *DocumentClassifierSummary {
11154	s.LatestVersionStatus = &v
11155	return s
11156}
11157
11158// SetNumberOfVersions sets the NumberOfVersions field's value.
11159func (s *DocumentClassifierSummary) SetNumberOfVersions(v int64) *DocumentClassifierSummary {
11160	s.NumberOfVersions = &v
11161	return s
11162}
11163
11164// Specifies one of the label or labels that categorize the document being analyzed.
11165type DocumentLabel struct {
11166	_ struct{} `type:"structure"`
11167
11168	// The name of the label.
11169	Name *string `min:"1" type:"string"`
11170
11171	// The confidence score that Amazon Comprehend has this label correctly attributed.
11172	Score *float64 `type:"float"`
11173}
11174
11175// String returns the string representation.
11176//
11177// API parameter values that are decorated as "sensitive" in the API will not
11178// be included in the string output. The member name will be present, but the
11179// value will be replaced with "sensitive".
11180func (s DocumentLabel) String() string {
11181	return awsutil.Prettify(s)
11182}
11183
11184// GoString returns the string representation.
11185//
11186// API parameter values that are decorated as "sensitive" in the API will not
11187// be included in the string output. The member name will be present, but the
11188// value will be replaced with "sensitive".
11189func (s DocumentLabel) GoString() string {
11190	return s.String()
11191}
11192
11193// SetName sets the Name field's value.
11194func (s *DocumentLabel) SetName(v string) *DocumentLabel {
11195	s.Name = &v
11196	return s
11197}
11198
11199// SetScore sets the Score field's value.
11200func (s *DocumentLabel) SetScore(v float64) *DocumentLabel {
11201	s.Score = &v
11202	return s
11203}
11204
11205// The input properties for a topic detection job.
11206type DocumentReaderConfig struct {
11207	_ struct{} `type:"structure"`
11208
11209	// This enum field will start with two values which will apply to PDFs:
11210	//
11211	//    * TEXTRACT_DETECT_DOCUMENT_TEXT - The service calls DetectDocumentText
11212	//    for PDF documents per page.
11213	//
11214	//    * TEXTRACT_ANALYZE_DOCUMENT - The service calls AnalyzeDocument for PDF
11215	//    documents per page.
11216	//
11217	// DocumentReadAction is a required field
11218	DocumentReadAction *string `type:"string" required:"true" enum:"DocumentReadAction"`
11219
11220	// This enum field provides two values:
11221	//
11222	//    * SERVICE_DEFAULT - use service defaults for Document reading. For Digital
11223	//    PDF it would mean using an internal parser instead of Textract APIs
11224	//
11225	//    * FORCE_DOCUMENT_READ_ACTION - Always use specified action for DocumentReadAction,
11226	//    including Digital PDF.
11227	DocumentReadMode *string `type:"string" enum:"DocumentReadMode"`
11228
11229	// Specifies how the text in an input file should be processed:
11230	FeatureTypes []*string `min:"1" type:"list"`
11231}
11232
11233// String returns the string representation.
11234//
11235// API parameter values that are decorated as "sensitive" in the API will not
11236// be included in the string output. The member name will be present, but the
11237// value will be replaced with "sensitive".
11238func (s DocumentReaderConfig) String() string {
11239	return awsutil.Prettify(s)
11240}
11241
11242// GoString returns the string representation.
11243//
11244// API parameter values that are decorated as "sensitive" in the API will not
11245// be included in the string output. The member name will be present, but the
11246// value will be replaced with "sensitive".
11247func (s DocumentReaderConfig) GoString() string {
11248	return s.String()
11249}
11250
11251// Validate inspects the fields of the type to determine if they are valid.
11252func (s *DocumentReaderConfig) Validate() error {
11253	invalidParams := request.ErrInvalidParams{Context: "DocumentReaderConfig"}
11254	if s.DocumentReadAction == nil {
11255		invalidParams.Add(request.NewErrParamRequired("DocumentReadAction"))
11256	}
11257	if s.FeatureTypes != nil && len(s.FeatureTypes) < 1 {
11258		invalidParams.Add(request.NewErrParamMinLen("FeatureTypes", 1))
11259	}
11260
11261	if invalidParams.Len() > 0 {
11262		return invalidParams
11263	}
11264	return nil
11265}
11266
11267// SetDocumentReadAction sets the DocumentReadAction field's value.
11268func (s *DocumentReaderConfig) SetDocumentReadAction(v string) *DocumentReaderConfig {
11269	s.DocumentReadAction = &v
11270	return s
11271}
11272
11273// SetDocumentReadMode sets the DocumentReadMode field's value.
11274func (s *DocumentReaderConfig) SetDocumentReadMode(v string) *DocumentReaderConfig {
11275	s.DocumentReadMode = &v
11276	return s
11277}
11278
11279// SetFeatureTypes sets the FeatureTypes field's value.
11280func (s *DocumentReaderConfig) SetFeatureTypes(v []*string) *DocumentReaderConfig {
11281	s.FeatureTypes = v
11282	return s
11283}
11284
11285// Returns the code for the dominant language in the input text and the level
11286// of confidence that Amazon Comprehend has in the accuracy of the detection.
11287type DominantLanguage struct {
11288	_ struct{} `type:"structure"`
11289
11290	// The RFC 5646 language code for the dominant language. For more information
11291	// about RFC 5646, see Tags for Identifying Languages (https://tools.ietf.org/html/rfc5646)
11292	// on the IETF Tools web site.
11293	LanguageCode *string `min:"1" type:"string"`
11294
11295	// The level of confidence that Amazon Comprehend has in the accuracy of the
11296	// detection.
11297	Score *float64 `type:"float"`
11298}
11299
11300// String returns the string representation.
11301//
11302// API parameter values that are decorated as "sensitive" in the API will not
11303// be included in the string output. The member name will be present, but the
11304// value will be replaced with "sensitive".
11305func (s DominantLanguage) String() string {
11306	return awsutil.Prettify(s)
11307}
11308
11309// GoString returns the string representation.
11310//
11311// API parameter values that are decorated as "sensitive" in the API will not
11312// be included in the string output. The member name will be present, but the
11313// value will be replaced with "sensitive".
11314func (s DominantLanguage) GoString() string {
11315	return s.String()
11316}
11317
11318// SetLanguageCode sets the LanguageCode field's value.
11319func (s *DominantLanguage) SetLanguageCode(v string) *DominantLanguage {
11320	s.LanguageCode = &v
11321	return s
11322}
11323
11324// SetScore sets the Score field's value.
11325func (s *DominantLanguage) SetScore(v float64) *DominantLanguage {
11326	s.Score = &v
11327	return s
11328}
11329
11330// Provides information for filtering a list of dominant language detection
11331// jobs. For more information, see the operation.
11332type DominantLanguageDetectionJobFilter struct {
11333	_ struct{} `type:"structure"`
11334
11335	// Filters on the name of the job.
11336	JobName *string `min:"1" type:"string"`
11337
11338	// Filters the list of jobs based on job status. Returns only jobs with the
11339	// specified status.
11340	JobStatus *string `type:"string" enum:"JobStatus"`
11341
11342	// Filters the list of jobs based on the time that the job was submitted for
11343	// processing. Returns only jobs submitted after the specified time. Jobs are
11344	// returned in descending order, newest to oldest.
11345	SubmitTimeAfter *time.Time `type:"timestamp"`
11346
11347	// Filters the list of jobs based on the time that the job was submitted for
11348	// processing. Returns only jobs submitted before the specified time. Jobs are
11349	// returned in ascending order, oldest to newest.
11350	SubmitTimeBefore *time.Time `type:"timestamp"`
11351}
11352
11353// String returns the string representation.
11354//
11355// API parameter values that are decorated as "sensitive" in the API will not
11356// be included in the string output. The member name will be present, but the
11357// value will be replaced with "sensitive".
11358func (s DominantLanguageDetectionJobFilter) String() string {
11359	return awsutil.Prettify(s)
11360}
11361
11362// GoString returns the string representation.
11363//
11364// API parameter values that are decorated as "sensitive" in the API will not
11365// be included in the string output. The member name will be present, but the
11366// value will be replaced with "sensitive".
11367func (s DominantLanguageDetectionJobFilter) GoString() string {
11368	return s.String()
11369}
11370
11371// Validate inspects the fields of the type to determine if they are valid.
11372func (s *DominantLanguageDetectionJobFilter) Validate() error {
11373	invalidParams := request.ErrInvalidParams{Context: "DominantLanguageDetectionJobFilter"}
11374	if s.JobName != nil && len(*s.JobName) < 1 {
11375		invalidParams.Add(request.NewErrParamMinLen("JobName", 1))
11376	}
11377
11378	if invalidParams.Len() > 0 {
11379		return invalidParams
11380	}
11381	return nil
11382}
11383
11384// SetJobName sets the JobName field's value.
11385func (s *DominantLanguageDetectionJobFilter) SetJobName(v string) *DominantLanguageDetectionJobFilter {
11386	s.JobName = &v
11387	return s
11388}
11389
11390// SetJobStatus sets the JobStatus field's value.
11391func (s *DominantLanguageDetectionJobFilter) SetJobStatus(v string) *DominantLanguageDetectionJobFilter {
11392	s.JobStatus = &v
11393	return s
11394}
11395
11396// SetSubmitTimeAfter sets the SubmitTimeAfter field's value.
11397func (s *DominantLanguageDetectionJobFilter) SetSubmitTimeAfter(v time.Time) *DominantLanguageDetectionJobFilter {
11398	s.SubmitTimeAfter = &v
11399	return s
11400}
11401
11402// SetSubmitTimeBefore sets the SubmitTimeBefore field's value.
11403func (s *DominantLanguageDetectionJobFilter) SetSubmitTimeBefore(v time.Time) *DominantLanguageDetectionJobFilter {
11404	s.SubmitTimeBefore = &v
11405	return s
11406}
11407
11408// Provides information about a dominant language detection job.
11409type DominantLanguageDetectionJobProperties struct {
11410	_ struct{} `type:"structure"`
11411
11412	// The Amazon Resource Name (ARN) that gives Amazon Comprehend read access to
11413	// your input data.
11414	DataAccessRoleArn *string `min:"20" type:"string"`
11415
11416	// The time that the dominant language detection job completed.
11417	EndTime *time.Time `type:"timestamp"`
11418
11419	// The input data configuration that you supplied when you created the dominant
11420	// language detection job.
11421	InputDataConfig *InputDataConfig `type:"structure"`
11422
11423	// The Amazon Resource Name (ARN) of the dominant language detection job. It
11424	// is a unique, fully qualified identifier for the job. It includes the AWS
11425	// account, Region, and the job ID. The format of the ARN is as follows:
11426	//
11427	// arn:<partition>:comprehend:<region>:<account-id>:dominant-language-detection-job/<job-id>
11428	//
11429	// The following is an example job ARN:
11430	//
11431	// arn:aws:comprehend:us-west-2:111122223333:dominant-language-detection-job/1234abcd12ab34cd56ef1234567890ab
11432	JobArn *string `type:"string"`
11433
11434	// The identifier assigned to the dominant language detection job.
11435	JobId *string `min:"1" type:"string"`
11436
11437	// The name that you assigned to the dominant language detection job.
11438	JobName *string `min:"1" type:"string"`
11439
11440	// The current status of the dominant language detection job. If the status
11441	// is FAILED, the Message field shows the reason for the failure.
11442	JobStatus *string `type:"string" enum:"JobStatus"`
11443
11444	// A description for the status of a job.
11445	Message *string `type:"string"`
11446
11447	// The output data configuration that you supplied when you created the dominant
11448	// language detection job.
11449	OutputDataConfig *OutputDataConfig `type:"structure"`
11450
11451	// The time that the dominant language detection job was submitted for processing.
11452	SubmitTime *time.Time `type:"timestamp"`
11453
11454	// ID for the AWS Key Management Service (KMS) key that Amazon Comprehend uses
11455	// to encrypt data on the storage volume attached to the ML compute instance(s)
11456	// that process the analysis job. The VolumeKmsKeyId can be either of the following
11457	// formats:
11458	//
11459	//    * KMS Key ID: "1234abcd-12ab-34cd-56ef-1234567890ab"
11460	//
11461	//    * Amazon Resource Name (ARN) of a KMS Key: "arn:aws:kms:us-west-2:111122223333:key/1234abcd-12ab-34cd-56ef-1234567890ab"
11462	VolumeKmsKeyId *string `type:"string"`
11463
11464	// Configuration parameters for a private Virtual Private Cloud (VPC) containing
11465	// the resources you are using for your dominant language detection job. For
11466	// more information, see Amazon VPC (https://docs.aws.amazon.com/vpc/latest/userguide/what-is-amazon-vpc.html).
11467	VpcConfig *VpcConfig `type:"structure"`
11468}
11469
11470// String returns the string representation.
11471//
11472// API parameter values that are decorated as "sensitive" in the API will not
11473// be included in the string output. The member name will be present, but the
11474// value will be replaced with "sensitive".
11475func (s DominantLanguageDetectionJobProperties) String() string {
11476	return awsutil.Prettify(s)
11477}
11478
11479// GoString returns the string representation.
11480//
11481// API parameter values that are decorated as "sensitive" in the API will not
11482// be included in the string output. The member name will be present, but the
11483// value will be replaced with "sensitive".
11484func (s DominantLanguageDetectionJobProperties) GoString() string {
11485	return s.String()
11486}
11487
11488// SetDataAccessRoleArn sets the DataAccessRoleArn field's value.
11489func (s *DominantLanguageDetectionJobProperties) SetDataAccessRoleArn(v string) *DominantLanguageDetectionJobProperties {
11490	s.DataAccessRoleArn = &v
11491	return s
11492}
11493
11494// SetEndTime sets the EndTime field's value.
11495func (s *DominantLanguageDetectionJobProperties) SetEndTime(v time.Time) *DominantLanguageDetectionJobProperties {
11496	s.EndTime = &v
11497	return s
11498}
11499
11500// SetInputDataConfig sets the InputDataConfig field's value.
11501func (s *DominantLanguageDetectionJobProperties) SetInputDataConfig(v *InputDataConfig) *DominantLanguageDetectionJobProperties {
11502	s.InputDataConfig = v
11503	return s
11504}
11505
11506// SetJobArn sets the JobArn field's value.
11507func (s *DominantLanguageDetectionJobProperties) SetJobArn(v string) *DominantLanguageDetectionJobProperties {
11508	s.JobArn = &v
11509	return s
11510}
11511
11512// SetJobId sets the JobId field's value.
11513func (s *DominantLanguageDetectionJobProperties) SetJobId(v string) *DominantLanguageDetectionJobProperties {
11514	s.JobId = &v
11515	return s
11516}
11517
11518// SetJobName sets the JobName field's value.
11519func (s *DominantLanguageDetectionJobProperties) SetJobName(v string) *DominantLanguageDetectionJobProperties {
11520	s.JobName = &v
11521	return s
11522}
11523
11524// SetJobStatus sets the JobStatus field's value.
11525func (s *DominantLanguageDetectionJobProperties) SetJobStatus(v string) *DominantLanguageDetectionJobProperties {
11526	s.JobStatus = &v
11527	return s
11528}
11529
11530// SetMessage sets the Message field's value.
11531func (s *DominantLanguageDetectionJobProperties) SetMessage(v string) *DominantLanguageDetectionJobProperties {
11532	s.Message = &v
11533	return s
11534}
11535
11536// SetOutputDataConfig sets the OutputDataConfig field's value.
11537func (s *DominantLanguageDetectionJobProperties) SetOutputDataConfig(v *OutputDataConfig) *DominantLanguageDetectionJobProperties {
11538	s.OutputDataConfig = v
11539	return s
11540}
11541
11542// SetSubmitTime sets the SubmitTime field's value.
11543func (s *DominantLanguageDetectionJobProperties) SetSubmitTime(v time.Time) *DominantLanguageDetectionJobProperties {
11544	s.SubmitTime = &v
11545	return s
11546}
11547
11548// SetVolumeKmsKeyId sets the VolumeKmsKeyId field's value.
11549func (s *DominantLanguageDetectionJobProperties) SetVolumeKmsKeyId(v string) *DominantLanguageDetectionJobProperties {
11550	s.VolumeKmsKeyId = &v
11551	return s
11552}
11553
11554// SetVpcConfig sets the VpcConfig field's value.
11555func (s *DominantLanguageDetectionJobProperties) SetVpcConfig(v *VpcConfig) *DominantLanguageDetectionJobProperties {
11556	s.VpcConfig = v
11557	return s
11558}
11559
11560// The filter used to determine which endpoints are returned. You can filter
11561// jobs on their name, model, status, or the date and time that they were created.
11562// You can only set one filter at a time.
11563type EndpointFilter struct {
11564	_ struct{} `type:"structure"`
11565
11566	// Specifies a date after which the returned endpoint or endpoints were created.
11567	CreationTimeAfter *time.Time `type:"timestamp"`
11568
11569	// Specifies a date before which the returned endpoint or endpoints were created.
11570	CreationTimeBefore *time.Time `type:"timestamp"`
11571
11572	// The Amazon Resource Number (ARN) of the model to which the endpoint is attached.
11573	ModelArn *string `type:"string"`
11574
11575	// Specifies the status of the endpoint being returned. Possible values are:
11576	// Creating, Ready, Updating, Deleting, Failed.
11577	Status *string `type:"string" enum:"EndpointStatus"`
11578}
11579
11580// String returns the string representation.
11581//
11582// API parameter values that are decorated as "sensitive" in the API will not
11583// be included in the string output. The member name will be present, but the
11584// value will be replaced with "sensitive".
11585func (s EndpointFilter) String() string {
11586	return awsutil.Prettify(s)
11587}
11588
11589// GoString returns the string representation.
11590//
11591// API parameter values that are decorated as "sensitive" in the API will not
11592// be included in the string output. The member name will be present, but the
11593// value will be replaced with "sensitive".
11594func (s EndpointFilter) GoString() string {
11595	return s.String()
11596}
11597
11598// SetCreationTimeAfter sets the CreationTimeAfter field's value.
11599func (s *EndpointFilter) SetCreationTimeAfter(v time.Time) *EndpointFilter {
11600	s.CreationTimeAfter = &v
11601	return s
11602}
11603
11604// SetCreationTimeBefore sets the CreationTimeBefore field's value.
11605func (s *EndpointFilter) SetCreationTimeBefore(v time.Time) *EndpointFilter {
11606	s.CreationTimeBefore = &v
11607	return s
11608}
11609
11610// SetModelArn sets the ModelArn field's value.
11611func (s *EndpointFilter) SetModelArn(v string) *EndpointFilter {
11612	s.ModelArn = &v
11613	return s
11614}
11615
11616// SetStatus sets the Status field's value.
11617func (s *EndpointFilter) SetStatus(v string) *EndpointFilter {
11618	s.Status = &v
11619	return s
11620}
11621
11622// Specifies information about the specified endpoint.
11623type EndpointProperties struct {
11624	_ struct{} `type:"structure"`
11625
11626	// The creation date and time of the endpoint.
11627	CreationTime *time.Time `type:"timestamp"`
11628
11629	// The number of inference units currently used by the model using this endpoint.
11630	CurrentInferenceUnits *int64 `min:"1" type:"integer"`
11631
11632	// The Amazon Resource Name (ARN) of the AWS identity and Access Management
11633	// (IAM) role that grants Amazon Comprehend read access to trained custom models
11634	// encrypted with a customer managed key (ModelKmsKeyId).
11635	DataAccessRoleArn *string `min:"20" type:"string"`
11636
11637	// Data access role ARN to use in case the new model is encrypted with a customer
11638	// KMS key.
11639	DesiredDataAccessRoleArn *string `min:"20" type:"string"`
11640
11641	// The desired number of inference units to be used by the model using this
11642	// endpoint. Each inference unit represents of a throughput of 100 characters
11643	// per second.
11644	DesiredInferenceUnits *int64 `min:"1" type:"integer"`
11645
11646	// ARN of the new model to use for updating an existing endpoint. This ARN is
11647	// going to be different from the model ARN when the update is in progress
11648	DesiredModelArn *string `type:"string"`
11649
11650	// The Amazon Resource Number (ARN) of the endpoint.
11651	EndpointArn *string `type:"string"`
11652
11653	// The date and time that the endpoint was last modified.
11654	LastModifiedTime *time.Time `type:"timestamp"`
11655
11656	// Specifies a reason for failure in cases of Failed status.
11657	Message *string `type:"string"`
11658
11659	// The Amazon Resource Number (ARN) of the model to which the endpoint is attached.
11660	ModelArn *string `type:"string"`
11661
11662	// Specifies the status of the endpoint. Because the endpoint updates and creation
11663	// are asynchronous, so customers will need to wait for the endpoint to be Ready
11664	// status before making inference requests.
11665	Status *string `type:"string" enum:"EndpointStatus"`
11666}
11667
11668// String returns the string representation.
11669//
11670// API parameter values that are decorated as "sensitive" in the API will not
11671// be included in the string output. The member name will be present, but the
11672// value will be replaced with "sensitive".
11673func (s EndpointProperties) String() string {
11674	return awsutil.Prettify(s)
11675}
11676
11677// GoString returns the string representation.
11678//
11679// API parameter values that are decorated as "sensitive" in the API will not
11680// be included in the string output. The member name will be present, but the
11681// value will be replaced with "sensitive".
11682func (s EndpointProperties) GoString() string {
11683	return s.String()
11684}
11685
11686// SetCreationTime sets the CreationTime field's value.
11687func (s *EndpointProperties) SetCreationTime(v time.Time) *EndpointProperties {
11688	s.CreationTime = &v
11689	return s
11690}
11691
11692// SetCurrentInferenceUnits sets the CurrentInferenceUnits field's value.
11693func (s *EndpointProperties) SetCurrentInferenceUnits(v int64) *EndpointProperties {
11694	s.CurrentInferenceUnits = &v
11695	return s
11696}
11697
11698// SetDataAccessRoleArn sets the DataAccessRoleArn field's value.
11699func (s *EndpointProperties) SetDataAccessRoleArn(v string) *EndpointProperties {
11700	s.DataAccessRoleArn = &v
11701	return s
11702}
11703
11704// SetDesiredDataAccessRoleArn sets the DesiredDataAccessRoleArn field's value.
11705func (s *EndpointProperties) SetDesiredDataAccessRoleArn(v string) *EndpointProperties {
11706	s.DesiredDataAccessRoleArn = &v
11707	return s
11708}
11709
11710// SetDesiredInferenceUnits sets the DesiredInferenceUnits field's value.
11711func (s *EndpointProperties) SetDesiredInferenceUnits(v int64) *EndpointProperties {
11712	s.DesiredInferenceUnits = &v
11713	return s
11714}
11715
11716// SetDesiredModelArn sets the DesiredModelArn field's value.
11717func (s *EndpointProperties) SetDesiredModelArn(v string) *EndpointProperties {
11718	s.DesiredModelArn = &v
11719	return s
11720}
11721
11722// SetEndpointArn sets the EndpointArn field's value.
11723func (s *EndpointProperties) SetEndpointArn(v string) *EndpointProperties {
11724	s.EndpointArn = &v
11725	return s
11726}
11727
11728// SetLastModifiedTime sets the LastModifiedTime field's value.
11729func (s *EndpointProperties) SetLastModifiedTime(v time.Time) *EndpointProperties {
11730	s.LastModifiedTime = &v
11731	return s
11732}
11733
11734// SetMessage sets the Message field's value.
11735func (s *EndpointProperties) SetMessage(v string) *EndpointProperties {
11736	s.Message = &v
11737	return s
11738}
11739
11740// SetModelArn sets the ModelArn field's value.
11741func (s *EndpointProperties) SetModelArn(v string) *EndpointProperties {
11742	s.ModelArn = &v
11743	return s
11744}
11745
11746// SetStatus sets the Status field's value.
11747func (s *EndpointProperties) SetStatus(v string) *EndpointProperties {
11748	s.Status = &v
11749	return s
11750}
11751
11752// Provides information for filtering a list of dominant language detection
11753// jobs. For more information, see the operation.
11754type EntitiesDetectionJobFilter struct {
11755	_ struct{} `type:"structure"`
11756
11757	// Filters on the name of the job.
11758	JobName *string `min:"1" type:"string"`
11759
11760	// Filters the list of jobs based on job status. Returns only jobs with the
11761	// specified status.
11762	JobStatus *string `type:"string" enum:"JobStatus"`
11763
11764	// Filters the list of jobs based on the time that the job was submitted for
11765	// processing. Returns only jobs submitted after the specified time. Jobs are
11766	// returned in descending order, newest to oldest.
11767	SubmitTimeAfter *time.Time `type:"timestamp"`
11768
11769	// Filters the list of jobs based on the time that the job was submitted for
11770	// processing. Returns only jobs submitted before the specified time. Jobs are
11771	// returned in ascending order, oldest to newest.
11772	SubmitTimeBefore *time.Time `type:"timestamp"`
11773}
11774
11775// String returns the string representation.
11776//
11777// API parameter values that are decorated as "sensitive" in the API will not
11778// be included in the string output. The member name will be present, but the
11779// value will be replaced with "sensitive".
11780func (s EntitiesDetectionJobFilter) String() string {
11781	return awsutil.Prettify(s)
11782}
11783
11784// GoString returns the string representation.
11785//
11786// API parameter values that are decorated as "sensitive" in the API will not
11787// be included in the string output. The member name will be present, but the
11788// value will be replaced with "sensitive".
11789func (s EntitiesDetectionJobFilter) GoString() string {
11790	return s.String()
11791}
11792
11793// Validate inspects the fields of the type to determine if they are valid.
11794func (s *EntitiesDetectionJobFilter) Validate() error {
11795	invalidParams := request.ErrInvalidParams{Context: "EntitiesDetectionJobFilter"}
11796	if s.JobName != nil && len(*s.JobName) < 1 {
11797		invalidParams.Add(request.NewErrParamMinLen("JobName", 1))
11798	}
11799
11800	if invalidParams.Len() > 0 {
11801		return invalidParams
11802	}
11803	return nil
11804}
11805
11806// SetJobName sets the JobName field's value.
11807func (s *EntitiesDetectionJobFilter) SetJobName(v string) *EntitiesDetectionJobFilter {
11808	s.JobName = &v
11809	return s
11810}
11811
11812// SetJobStatus sets the JobStatus field's value.
11813func (s *EntitiesDetectionJobFilter) SetJobStatus(v string) *EntitiesDetectionJobFilter {
11814	s.JobStatus = &v
11815	return s
11816}
11817
11818// SetSubmitTimeAfter sets the SubmitTimeAfter field's value.
11819func (s *EntitiesDetectionJobFilter) SetSubmitTimeAfter(v time.Time) *EntitiesDetectionJobFilter {
11820	s.SubmitTimeAfter = &v
11821	return s
11822}
11823
11824// SetSubmitTimeBefore sets the SubmitTimeBefore field's value.
11825func (s *EntitiesDetectionJobFilter) SetSubmitTimeBefore(v time.Time) *EntitiesDetectionJobFilter {
11826	s.SubmitTimeBefore = &v
11827	return s
11828}
11829
11830// Provides information about an entities detection job.
11831type EntitiesDetectionJobProperties struct {
11832	_ struct{} `type:"structure"`
11833
11834	// The Amazon Resource Name (ARN) that gives Amazon Comprehend read access to
11835	// your input data.
11836	DataAccessRoleArn *string `min:"20" type:"string"`
11837
11838	// The time that the entities detection job completed
11839	EndTime *time.Time `type:"timestamp"`
11840
11841	// The Amazon Resource Name (ARN) that identifies the entity recognizer.
11842	EntityRecognizerArn *string `type:"string"`
11843
11844	// The input data configuration that you supplied when you created the entities
11845	// detection job.
11846	InputDataConfig *InputDataConfig `type:"structure"`
11847
11848	// The Amazon Resource Name (ARN) of the entities detection job. It is a unique,
11849	// fully qualified identifier for the job. It includes the AWS account, Region,
11850	// and the job ID. The format of the ARN is as follows:
11851	//
11852	// arn:<partition>:comprehend:<region>:<account-id>:entities-detection-job/<job-id>
11853	//
11854	// The following is an example job ARN:
11855	//
11856	// arn:aws:comprehend:us-west-2:111122223333:entities-detection-job/1234abcd12ab34cd56ef1234567890ab
11857	JobArn *string `type:"string"`
11858
11859	// The identifier assigned to the entities detection job.
11860	JobId *string `min:"1" type:"string"`
11861
11862	// The name that you assigned the entities detection job.
11863	JobName *string `min:"1" type:"string"`
11864
11865	// The current status of the entities detection job. If the status is FAILED,
11866	// the Message field shows the reason for the failure.
11867	JobStatus *string `type:"string" enum:"JobStatus"`
11868
11869	// The language code of the input documents.
11870	LanguageCode *string `type:"string" enum:"LanguageCode"`
11871
11872	// A description of the status of a job.
11873	Message *string `type:"string"`
11874
11875	// The output data configuration that you supplied when you created the entities
11876	// detection job.
11877	OutputDataConfig *OutputDataConfig `type:"structure"`
11878
11879	// The time that the entities detection job was submitted for processing.
11880	SubmitTime *time.Time `type:"timestamp"`
11881
11882	// ID for the AWS Key Management Service (KMS) key that Amazon Comprehend uses
11883	// to encrypt data on the storage volume attached to the ML compute instance(s)
11884	// that process the analysis job. The VolumeKmsKeyId can be either of the following
11885	// formats:
11886	//
11887	//    * KMS Key ID: "1234abcd-12ab-34cd-56ef-1234567890ab"
11888	//
11889	//    * Amazon Resource Name (ARN) of a KMS Key: "arn:aws:kms:us-west-2:111122223333:key/1234abcd-12ab-34cd-56ef-1234567890ab"
11890	VolumeKmsKeyId *string `type:"string"`
11891
11892	// Configuration parameters for a private Virtual Private Cloud (VPC) containing
11893	// the resources you are using for your entity detection job. For more information,
11894	// see Amazon VPC (https://docs.aws.amazon.com/vpc/latest/userguide/what-is-amazon-vpc.html).
11895	VpcConfig *VpcConfig `type:"structure"`
11896}
11897
11898// String returns the string representation.
11899//
11900// API parameter values that are decorated as "sensitive" in the API will not
11901// be included in the string output. The member name will be present, but the
11902// value will be replaced with "sensitive".
11903func (s EntitiesDetectionJobProperties) String() string {
11904	return awsutil.Prettify(s)
11905}
11906
11907// GoString returns the string representation.
11908//
11909// API parameter values that are decorated as "sensitive" in the API will not
11910// be included in the string output. The member name will be present, but the
11911// value will be replaced with "sensitive".
11912func (s EntitiesDetectionJobProperties) GoString() string {
11913	return s.String()
11914}
11915
11916// SetDataAccessRoleArn sets the DataAccessRoleArn field's value.
11917func (s *EntitiesDetectionJobProperties) SetDataAccessRoleArn(v string) *EntitiesDetectionJobProperties {
11918	s.DataAccessRoleArn = &v
11919	return s
11920}
11921
11922// SetEndTime sets the EndTime field's value.
11923func (s *EntitiesDetectionJobProperties) SetEndTime(v time.Time) *EntitiesDetectionJobProperties {
11924	s.EndTime = &v
11925	return s
11926}
11927
11928// SetEntityRecognizerArn sets the EntityRecognizerArn field's value.
11929func (s *EntitiesDetectionJobProperties) SetEntityRecognizerArn(v string) *EntitiesDetectionJobProperties {
11930	s.EntityRecognizerArn = &v
11931	return s
11932}
11933
11934// SetInputDataConfig sets the InputDataConfig field's value.
11935func (s *EntitiesDetectionJobProperties) SetInputDataConfig(v *InputDataConfig) *EntitiesDetectionJobProperties {
11936	s.InputDataConfig = v
11937	return s
11938}
11939
11940// SetJobArn sets the JobArn field's value.
11941func (s *EntitiesDetectionJobProperties) SetJobArn(v string) *EntitiesDetectionJobProperties {
11942	s.JobArn = &v
11943	return s
11944}
11945
11946// SetJobId sets the JobId field's value.
11947func (s *EntitiesDetectionJobProperties) SetJobId(v string) *EntitiesDetectionJobProperties {
11948	s.JobId = &v
11949	return s
11950}
11951
11952// SetJobName sets the JobName field's value.
11953func (s *EntitiesDetectionJobProperties) SetJobName(v string) *EntitiesDetectionJobProperties {
11954	s.JobName = &v
11955	return s
11956}
11957
11958// SetJobStatus sets the JobStatus field's value.
11959func (s *EntitiesDetectionJobProperties) SetJobStatus(v string) *EntitiesDetectionJobProperties {
11960	s.JobStatus = &v
11961	return s
11962}
11963
11964// SetLanguageCode sets the LanguageCode field's value.
11965func (s *EntitiesDetectionJobProperties) SetLanguageCode(v string) *EntitiesDetectionJobProperties {
11966	s.LanguageCode = &v
11967	return s
11968}
11969
11970// SetMessage sets the Message field's value.
11971func (s *EntitiesDetectionJobProperties) SetMessage(v string) *EntitiesDetectionJobProperties {
11972	s.Message = &v
11973	return s
11974}
11975
11976// SetOutputDataConfig sets the OutputDataConfig field's value.
11977func (s *EntitiesDetectionJobProperties) SetOutputDataConfig(v *OutputDataConfig) *EntitiesDetectionJobProperties {
11978	s.OutputDataConfig = v
11979	return s
11980}
11981
11982// SetSubmitTime sets the SubmitTime field's value.
11983func (s *EntitiesDetectionJobProperties) SetSubmitTime(v time.Time) *EntitiesDetectionJobProperties {
11984	s.SubmitTime = &v
11985	return s
11986}
11987
11988// SetVolumeKmsKeyId sets the VolumeKmsKeyId field's value.
11989func (s *EntitiesDetectionJobProperties) SetVolumeKmsKeyId(v string) *EntitiesDetectionJobProperties {
11990	s.VolumeKmsKeyId = &v
11991	return s
11992}
11993
11994// SetVpcConfig sets the VpcConfig field's value.
11995func (s *EntitiesDetectionJobProperties) SetVpcConfig(v *VpcConfig) *EntitiesDetectionJobProperties {
11996	s.VpcConfig = v
11997	return s
11998}
11999
12000// Provides information about an entity.
12001type Entity struct {
12002	_ struct{} `type:"structure"`
12003
12004	// A character offset in the input text that shows where the entity begins (the
12005	// first character is at position 0). The offset returns the position of each
12006	// UTF-8 code point in the string. A code point is the abstract character from
12007	// a particular graphical representation. For example, a multi-byte UTF-8 character
12008	// maps to a single code point.
12009	BeginOffset *int64 `type:"integer"`
12010
12011	// A character offset in the input text that shows where the entity ends. The
12012	// offset returns the position of each UTF-8 code point in the string. A code
12013	// point is the abstract character from a particular graphical representation.
12014	// For example, a multi-byte UTF-8 character maps to a single code point.
12015	EndOffset *int64 `type:"integer"`
12016
12017	// The level of confidence that Amazon Comprehend has in the accuracy of the
12018	// detection.
12019	Score *float64 `type:"float"`
12020
12021	// The text of the entity.
12022	Text *string `min:"1" type:"string"`
12023
12024	// The entity's type.
12025	Type *string `type:"string" enum:"EntityType"`
12026}
12027
12028// String returns the string representation.
12029//
12030// API parameter values that are decorated as "sensitive" in the API will not
12031// be included in the string output. The member name will be present, but the
12032// value will be replaced with "sensitive".
12033func (s Entity) String() string {
12034	return awsutil.Prettify(s)
12035}
12036
12037// GoString returns the string representation.
12038//
12039// API parameter values that are decorated as "sensitive" in the API will not
12040// be included in the string output. The member name will be present, but the
12041// value will be replaced with "sensitive".
12042func (s Entity) GoString() string {
12043	return s.String()
12044}
12045
12046// SetBeginOffset sets the BeginOffset field's value.
12047func (s *Entity) SetBeginOffset(v int64) *Entity {
12048	s.BeginOffset = &v
12049	return s
12050}
12051
12052// SetEndOffset sets the EndOffset field's value.
12053func (s *Entity) SetEndOffset(v int64) *Entity {
12054	s.EndOffset = &v
12055	return s
12056}
12057
12058// SetScore sets the Score field's value.
12059func (s *Entity) SetScore(v float64) *Entity {
12060	s.Score = &v
12061	return s
12062}
12063
12064// SetText sets the Text field's value.
12065func (s *Entity) SetText(v string) *Entity {
12066	s.Text = &v
12067	return s
12068}
12069
12070// SetType sets the Type field's value.
12071func (s *Entity) SetType(v string) *Entity {
12072	s.Type = &v
12073	return s
12074}
12075
12076// Specifies one of the label or labels that categorize the personally identifiable
12077// information (PII) entity being analyzed.
12078type EntityLabel struct {
12079	_ struct{} `type:"structure"`
12080
12081	// The name of the label.
12082	Name *string `type:"string" enum:"PiiEntityType"`
12083
12084	// The level of confidence that Amazon Comprehend has in the accuracy of the
12085	// detection.
12086	Score *float64 `type:"float"`
12087}
12088
12089// String returns the string representation.
12090//
12091// API parameter values that are decorated as "sensitive" in the API will not
12092// be included in the string output. The member name will be present, but the
12093// value will be replaced with "sensitive".
12094func (s EntityLabel) String() string {
12095	return awsutil.Prettify(s)
12096}
12097
12098// GoString returns the string representation.
12099//
12100// API parameter values that are decorated as "sensitive" in the API will not
12101// be included in the string output. The member name will be present, but the
12102// value will be replaced with "sensitive".
12103func (s EntityLabel) GoString() string {
12104	return s.String()
12105}
12106
12107// SetName sets the Name field's value.
12108func (s *EntityLabel) SetName(v string) *EntityLabel {
12109	s.Name = &v
12110	return s
12111}
12112
12113// SetScore sets the Score field's value.
12114func (s *EntityLabel) SetScore(v float64) *EntityLabel {
12115	s.Score = &v
12116	return s
12117}
12118
12119// Describes the annotations associated with a entity recognizer.
12120type EntityRecognizerAnnotations struct {
12121	_ struct{} `type:"structure"`
12122
12123	// Specifies the Amazon S3 location where the annotations for an entity recognizer
12124	// are located. The URI must be in the same region as the API endpoint that
12125	// you are calling.
12126	//
12127	// S3Uri is a required field
12128	S3Uri *string `type:"string" required:"true"`
12129
12130	// This specifies the Amazon S3 location where the test annotations for an entity
12131	// recognizer are located. The URI must be in the same AWS Region as the API
12132	// endpoint that you are calling.
12133	TestS3Uri *string `type:"string"`
12134}
12135
12136// String returns the string representation.
12137//
12138// API parameter values that are decorated as "sensitive" in the API will not
12139// be included in the string output. The member name will be present, but the
12140// value will be replaced with "sensitive".
12141func (s EntityRecognizerAnnotations) String() string {
12142	return awsutil.Prettify(s)
12143}
12144
12145// GoString returns the string representation.
12146//
12147// API parameter values that are decorated as "sensitive" in the API will not
12148// be included in the string output. The member name will be present, but the
12149// value will be replaced with "sensitive".
12150func (s EntityRecognizerAnnotations) GoString() string {
12151	return s.String()
12152}
12153
12154// Validate inspects the fields of the type to determine if they are valid.
12155func (s *EntityRecognizerAnnotations) Validate() error {
12156	invalidParams := request.ErrInvalidParams{Context: "EntityRecognizerAnnotations"}
12157	if s.S3Uri == nil {
12158		invalidParams.Add(request.NewErrParamRequired("S3Uri"))
12159	}
12160
12161	if invalidParams.Len() > 0 {
12162		return invalidParams
12163	}
12164	return nil
12165}
12166
12167// SetS3Uri sets the S3Uri field's value.
12168func (s *EntityRecognizerAnnotations) SetS3Uri(v string) *EntityRecognizerAnnotations {
12169	s.S3Uri = &v
12170	return s
12171}
12172
12173// SetTestS3Uri sets the TestS3Uri field's value.
12174func (s *EntityRecognizerAnnotations) SetTestS3Uri(v string) *EntityRecognizerAnnotations {
12175	s.TestS3Uri = &v
12176	return s
12177}
12178
12179// Describes the training documents submitted with an entity recognizer.
12180type EntityRecognizerDocuments struct {
12181	_ struct{} `type:"structure"`
12182
12183	// Specifies how the text in an input file should be processed. This is optional,
12184	// and the default is ONE_DOC_PER_LINE. ONE_DOC_PER_FILE - Each file is considered
12185	// a separate document. Use this option when you are processing large documents,
12186	// such as newspaper articles or scientific papers. ONE_DOC_PER_LINE - Each
12187	// line in a file is considered a separate document. Use this option when you
12188	// are processing many short documents, such as text messages.
12189	InputFormat *string `type:"string" enum:"InputFormat"`
12190
12191	// Specifies the Amazon S3 location where the training documents for an entity
12192	// recognizer are located. The URI must be in the same region as the API endpoint
12193	// that you are calling.
12194	//
12195	// S3Uri is a required field
12196	S3Uri *string `type:"string" required:"true"`
12197
12198	// Specifies the Amazon S3 location where the test documents for an entity recognizer
12199	// are located. The URI must be in the same AWS Region as the API endpoint that
12200	// you are calling.
12201	TestS3Uri *string `type:"string"`
12202}
12203
12204// String returns the string representation.
12205//
12206// API parameter values that are decorated as "sensitive" in the API will not
12207// be included in the string output. The member name will be present, but the
12208// value will be replaced with "sensitive".
12209func (s EntityRecognizerDocuments) String() string {
12210	return awsutil.Prettify(s)
12211}
12212
12213// GoString returns the string representation.
12214//
12215// API parameter values that are decorated as "sensitive" in the API will not
12216// be included in the string output. The member name will be present, but the
12217// value will be replaced with "sensitive".
12218func (s EntityRecognizerDocuments) GoString() string {
12219	return s.String()
12220}
12221
12222// Validate inspects the fields of the type to determine if they are valid.
12223func (s *EntityRecognizerDocuments) Validate() error {
12224	invalidParams := request.ErrInvalidParams{Context: "EntityRecognizerDocuments"}
12225	if s.S3Uri == nil {
12226		invalidParams.Add(request.NewErrParamRequired("S3Uri"))
12227	}
12228
12229	if invalidParams.Len() > 0 {
12230		return invalidParams
12231	}
12232	return nil
12233}
12234
12235// SetInputFormat sets the InputFormat field's value.
12236func (s *EntityRecognizerDocuments) SetInputFormat(v string) *EntityRecognizerDocuments {
12237	s.InputFormat = &v
12238	return s
12239}
12240
12241// SetS3Uri sets the S3Uri field's value.
12242func (s *EntityRecognizerDocuments) SetS3Uri(v string) *EntityRecognizerDocuments {
12243	s.S3Uri = &v
12244	return s
12245}
12246
12247// SetTestS3Uri sets the TestS3Uri field's value.
12248func (s *EntityRecognizerDocuments) SetTestS3Uri(v string) *EntityRecognizerDocuments {
12249	s.TestS3Uri = &v
12250	return s
12251}
12252
12253// Describes the entity recognizer submitted with an entity recognizer.
12254type EntityRecognizerEntityList struct {
12255	_ struct{} `type:"structure"`
12256
12257	// Specifies the Amazon S3 location where the entity list is located. The URI
12258	// must be in the same region as the API endpoint that you are calling.
12259	//
12260	// S3Uri is a required field
12261	S3Uri *string `type:"string" required:"true"`
12262}
12263
12264// String returns the string representation.
12265//
12266// API parameter values that are decorated as "sensitive" in the API will not
12267// be included in the string output. The member name will be present, but the
12268// value will be replaced with "sensitive".
12269func (s EntityRecognizerEntityList) String() string {
12270	return awsutil.Prettify(s)
12271}
12272
12273// GoString returns the string representation.
12274//
12275// API parameter values that are decorated as "sensitive" in the API will not
12276// be included in the string output. The member name will be present, but the
12277// value will be replaced with "sensitive".
12278func (s EntityRecognizerEntityList) GoString() string {
12279	return s.String()
12280}
12281
12282// Validate inspects the fields of the type to determine if they are valid.
12283func (s *EntityRecognizerEntityList) Validate() error {
12284	invalidParams := request.ErrInvalidParams{Context: "EntityRecognizerEntityList"}
12285	if s.S3Uri == nil {
12286		invalidParams.Add(request.NewErrParamRequired("S3Uri"))
12287	}
12288
12289	if invalidParams.Len() > 0 {
12290		return invalidParams
12291	}
12292	return nil
12293}
12294
12295// SetS3Uri sets the S3Uri field's value.
12296func (s *EntityRecognizerEntityList) SetS3Uri(v string) *EntityRecognizerEntityList {
12297	s.S3Uri = &v
12298	return s
12299}
12300
12301// Detailed information about the accuracy of an entity recognizer.
12302type EntityRecognizerEvaluationMetrics struct {
12303	_ struct{} `type:"structure"`
12304
12305	// A measure of how accurate the recognizer results are for the test data. It
12306	// is derived from the Precision and Recall values. The F1Score is the harmonic
12307	// average of the two scores. The highest score is 1, and the worst score is
12308	// 0.
12309	F1Score *float64 `type:"double"`
12310
12311	// A measure of the usefulness of the recognizer results in the test data. High
12312	// precision means that the recognizer returned substantially more relevant
12313	// results than irrelevant ones.
12314	Precision *float64 `type:"double"`
12315
12316	// A measure of how complete the recognizer results are for the test data. High
12317	// recall means that the recognizer returned most of the relevant results.
12318	Recall *float64 `type:"double"`
12319}
12320
12321// String returns the string representation.
12322//
12323// API parameter values that are decorated as "sensitive" in the API will not
12324// be included in the string output. The member name will be present, but the
12325// value will be replaced with "sensitive".
12326func (s EntityRecognizerEvaluationMetrics) String() string {
12327	return awsutil.Prettify(s)
12328}
12329
12330// GoString returns the string representation.
12331//
12332// API parameter values that are decorated as "sensitive" in the API will not
12333// be included in the string output. The member name will be present, but the
12334// value will be replaced with "sensitive".
12335func (s EntityRecognizerEvaluationMetrics) GoString() string {
12336	return s.String()
12337}
12338
12339// SetF1Score sets the F1Score field's value.
12340func (s *EntityRecognizerEvaluationMetrics) SetF1Score(v float64) *EntityRecognizerEvaluationMetrics {
12341	s.F1Score = &v
12342	return s
12343}
12344
12345// SetPrecision sets the Precision field's value.
12346func (s *EntityRecognizerEvaluationMetrics) SetPrecision(v float64) *EntityRecognizerEvaluationMetrics {
12347	s.Precision = &v
12348	return s
12349}
12350
12351// SetRecall sets the Recall field's value.
12352func (s *EntityRecognizerEvaluationMetrics) SetRecall(v float64) *EntityRecognizerEvaluationMetrics {
12353	s.Recall = &v
12354	return s
12355}
12356
12357// Provides information for filtering a list of entity recognizers. You can
12358// only specify one filtering parameter in a request. For more information,
12359// see the operation./>
12360type EntityRecognizerFilter struct {
12361	_ struct{} `type:"structure"`
12362
12363	// The name that you assigned the entity recognizer.
12364	RecognizerName *string `type:"string"`
12365
12366	// The status of an entity recognizer.
12367	Status *string `type:"string" enum:"ModelStatus"`
12368
12369	// Filters the list of entities based on the time that the list was submitted
12370	// for processing. Returns only jobs submitted after the specified time. Jobs
12371	// are returned in ascending order, oldest to newest.
12372	SubmitTimeAfter *time.Time `type:"timestamp"`
12373
12374	// Filters the list of entities based on the time that the list was submitted
12375	// for processing. Returns only jobs submitted before the specified time. Jobs
12376	// are returned in descending order, newest to oldest.
12377	SubmitTimeBefore *time.Time `type:"timestamp"`
12378}
12379
12380// String returns the string representation.
12381//
12382// API parameter values that are decorated as "sensitive" in the API will not
12383// be included in the string output. The member name will be present, but the
12384// value will be replaced with "sensitive".
12385func (s EntityRecognizerFilter) String() string {
12386	return awsutil.Prettify(s)
12387}
12388
12389// GoString returns the string representation.
12390//
12391// API parameter values that are decorated as "sensitive" in the API will not
12392// be included in the string output. The member name will be present, but the
12393// value will be replaced with "sensitive".
12394func (s EntityRecognizerFilter) GoString() string {
12395	return s.String()
12396}
12397
12398// SetRecognizerName sets the RecognizerName field's value.
12399func (s *EntityRecognizerFilter) SetRecognizerName(v string) *EntityRecognizerFilter {
12400	s.RecognizerName = &v
12401	return s
12402}
12403
12404// SetStatus sets the Status field's value.
12405func (s *EntityRecognizerFilter) SetStatus(v string) *EntityRecognizerFilter {
12406	s.Status = &v
12407	return s
12408}
12409
12410// SetSubmitTimeAfter sets the SubmitTimeAfter field's value.
12411func (s *EntityRecognizerFilter) SetSubmitTimeAfter(v time.Time) *EntityRecognizerFilter {
12412	s.SubmitTimeAfter = &v
12413	return s
12414}
12415
12416// SetSubmitTimeBefore sets the SubmitTimeBefore field's value.
12417func (s *EntityRecognizerFilter) SetSubmitTimeBefore(v time.Time) *EntityRecognizerFilter {
12418	s.SubmitTimeBefore = &v
12419	return s
12420}
12421
12422// Specifies the format and location of the input data.
12423type EntityRecognizerInputDataConfig struct {
12424	_ struct{} `type:"structure"`
12425
12426	// The S3 location of the CSV file that annotates your training documents.
12427	Annotations *EntityRecognizerAnnotations `type:"structure"`
12428
12429	// A list of augmented manifest files that provide training data for your custom
12430	// model. An augmented manifest file is a labeled dataset that is produced by
12431	// Amazon SageMaker Ground Truth.
12432	//
12433	// This parameter is required if you set DataFormat to AUGMENTED_MANIFEST.
12434	AugmentedManifests []*AugmentedManifestsListItem `type:"list"`
12435
12436	// The format of your training data:
12437	//
12438	//    * COMPREHEND_CSV: A CSV file that supplements your training documents.
12439	//    The CSV file contains information about the custom entities that your
12440	//    trained model will detect. The required format of the file depends on
12441	//    whether you are providing annotations or an entity list. If you use this
12442	//    value, you must provide your CSV file by using either the Annotations
12443	//    or EntityList parameters. You must provide your training documents by
12444	//    using the Documents parameter.
12445	//
12446	//    * AUGMENTED_MANIFEST: A labeled dataset that is produced by Amazon SageMaker
12447	//    Ground Truth. This file is in JSON lines format. Each line is a complete
12448	//    JSON object that contains a training document and its labels. Each label
12449	//    annotates a named entity in the training document. If you use this value,
12450	//    you must provide the AugmentedManifests parameter in your request.
12451	//
12452	// If you don't specify a value, Amazon Comprehend uses COMPREHEND_CSV as the
12453	// default.
12454	DataFormat *string `type:"string" enum:"EntityRecognizerDataFormat"`
12455
12456	// The S3 location of the folder that contains the training documents for your
12457	// custom entity recognizer.
12458	//
12459	// This parameter is required if you set DataFormat to COMPREHEND_CSV.
12460	Documents *EntityRecognizerDocuments `type:"structure"`
12461
12462	// The S3 location of the CSV file that has the entity list for your custom
12463	// entity recognizer.
12464	EntityList *EntityRecognizerEntityList `type:"structure"`
12465
12466	// The entity types in the labeled training data that Amazon Comprehend uses
12467	// to train the custom entity recognizer. Any entity types that you don't specify
12468	// are ignored.
12469	//
12470	// A maximum of 25 entity types can be used at one time to train an entity recognizer.
12471	// Entity types must not contain the following invalid characters: \n (line
12472	// break), \\n (escaped line break), \r (carriage return), \\r (escaped carriage
12473	// return), \t (tab), \\t (escaped tab), space, and , (comma).
12474	//
12475	// EntityTypes is a required field
12476	EntityTypes []*EntityTypesListItem `type:"list" required:"true"`
12477}
12478
12479// String returns the string representation.
12480//
12481// API parameter values that are decorated as "sensitive" in the API will not
12482// be included in the string output. The member name will be present, but the
12483// value will be replaced with "sensitive".
12484func (s EntityRecognizerInputDataConfig) String() string {
12485	return awsutil.Prettify(s)
12486}
12487
12488// GoString returns the string representation.
12489//
12490// API parameter values that are decorated as "sensitive" in the API will not
12491// be included in the string output. The member name will be present, but the
12492// value will be replaced with "sensitive".
12493func (s EntityRecognizerInputDataConfig) GoString() string {
12494	return s.String()
12495}
12496
12497// Validate inspects the fields of the type to determine if they are valid.
12498func (s *EntityRecognizerInputDataConfig) Validate() error {
12499	invalidParams := request.ErrInvalidParams{Context: "EntityRecognizerInputDataConfig"}
12500	if s.EntityTypes == nil {
12501		invalidParams.Add(request.NewErrParamRequired("EntityTypes"))
12502	}
12503	if s.Annotations != nil {
12504		if err := s.Annotations.Validate(); err != nil {
12505			invalidParams.AddNested("Annotations", err.(request.ErrInvalidParams))
12506		}
12507	}
12508	if s.AugmentedManifests != nil {
12509		for i, v := range s.AugmentedManifests {
12510			if v == nil {
12511				continue
12512			}
12513			if err := v.Validate(); err != nil {
12514				invalidParams.AddNested(fmt.Sprintf("%s[%v]", "AugmentedManifests", i), err.(request.ErrInvalidParams))
12515			}
12516		}
12517	}
12518	if s.Documents != nil {
12519		if err := s.Documents.Validate(); err != nil {
12520			invalidParams.AddNested("Documents", err.(request.ErrInvalidParams))
12521		}
12522	}
12523	if s.EntityList != nil {
12524		if err := s.EntityList.Validate(); err != nil {
12525			invalidParams.AddNested("EntityList", err.(request.ErrInvalidParams))
12526		}
12527	}
12528	if s.EntityTypes != nil {
12529		for i, v := range s.EntityTypes {
12530			if v == nil {
12531				continue
12532			}
12533			if err := v.Validate(); err != nil {
12534				invalidParams.AddNested(fmt.Sprintf("%s[%v]", "EntityTypes", i), err.(request.ErrInvalidParams))
12535			}
12536		}
12537	}
12538
12539	if invalidParams.Len() > 0 {
12540		return invalidParams
12541	}
12542	return nil
12543}
12544
12545// SetAnnotations sets the Annotations field's value.
12546func (s *EntityRecognizerInputDataConfig) SetAnnotations(v *EntityRecognizerAnnotations) *EntityRecognizerInputDataConfig {
12547	s.Annotations = v
12548	return s
12549}
12550
12551// SetAugmentedManifests sets the AugmentedManifests field's value.
12552func (s *EntityRecognizerInputDataConfig) SetAugmentedManifests(v []*AugmentedManifestsListItem) *EntityRecognizerInputDataConfig {
12553	s.AugmentedManifests = v
12554	return s
12555}
12556
12557// SetDataFormat sets the DataFormat field's value.
12558func (s *EntityRecognizerInputDataConfig) SetDataFormat(v string) *EntityRecognizerInputDataConfig {
12559	s.DataFormat = &v
12560	return s
12561}
12562
12563// SetDocuments sets the Documents field's value.
12564func (s *EntityRecognizerInputDataConfig) SetDocuments(v *EntityRecognizerDocuments) *EntityRecognizerInputDataConfig {
12565	s.Documents = v
12566	return s
12567}
12568
12569// SetEntityList sets the EntityList field's value.
12570func (s *EntityRecognizerInputDataConfig) SetEntityList(v *EntityRecognizerEntityList) *EntityRecognizerInputDataConfig {
12571	s.EntityList = v
12572	return s
12573}
12574
12575// SetEntityTypes sets the EntityTypes field's value.
12576func (s *EntityRecognizerInputDataConfig) SetEntityTypes(v []*EntityTypesListItem) *EntityRecognizerInputDataConfig {
12577	s.EntityTypes = v
12578	return s
12579}
12580
12581// Detailed information about an entity recognizer.
12582type EntityRecognizerMetadata struct {
12583	_ struct{} `type:"structure" sensitive:"true"`
12584
12585	// Entity types from the metadata of an entity recognizer.
12586	EntityTypes []*EntityRecognizerMetadataEntityTypesListItem `type:"list"`
12587
12588	// Detailed information about the accuracy of an entity recognizer.
12589	EvaluationMetrics *EntityRecognizerEvaluationMetrics `type:"structure"`
12590
12591	// The number of documents in the input data that were used to test the entity
12592	// recognizer. Typically this is 10 to 20 percent of the input documents.
12593	NumberOfTestDocuments *int64 `type:"integer"`
12594
12595	// The number of documents in the input data that were used to train the entity
12596	// recognizer. Typically this is 80 to 90 percent of the input documents.
12597	NumberOfTrainedDocuments *int64 `type:"integer"`
12598}
12599
12600// String returns the string representation.
12601//
12602// API parameter values that are decorated as "sensitive" in the API will not
12603// be included in the string output. The member name will be present, but the
12604// value will be replaced with "sensitive".
12605func (s EntityRecognizerMetadata) String() string {
12606	return awsutil.Prettify(s)
12607}
12608
12609// GoString returns the string representation.
12610//
12611// API parameter values that are decorated as "sensitive" in the API will not
12612// be included in the string output. The member name will be present, but the
12613// value will be replaced with "sensitive".
12614func (s EntityRecognizerMetadata) GoString() string {
12615	return s.String()
12616}
12617
12618// SetEntityTypes sets the EntityTypes field's value.
12619func (s *EntityRecognizerMetadata) SetEntityTypes(v []*EntityRecognizerMetadataEntityTypesListItem) *EntityRecognizerMetadata {
12620	s.EntityTypes = v
12621	return s
12622}
12623
12624// SetEvaluationMetrics sets the EvaluationMetrics field's value.
12625func (s *EntityRecognizerMetadata) SetEvaluationMetrics(v *EntityRecognizerEvaluationMetrics) *EntityRecognizerMetadata {
12626	s.EvaluationMetrics = v
12627	return s
12628}
12629
12630// SetNumberOfTestDocuments sets the NumberOfTestDocuments field's value.
12631func (s *EntityRecognizerMetadata) SetNumberOfTestDocuments(v int64) *EntityRecognizerMetadata {
12632	s.NumberOfTestDocuments = &v
12633	return s
12634}
12635
12636// SetNumberOfTrainedDocuments sets the NumberOfTrainedDocuments field's value.
12637func (s *EntityRecognizerMetadata) SetNumberOfTrainedDocuments(v int64) *EntityRecognizerMetadata {
12638	s.NumberOfTrainedDocuments = &v
12639	return s
12640}
12641
12642// Individual item from the list of entity types in the metadata of an entity
12643// recognizer.
12644type EntityRecognizerMetadataEntityTypesListItem struct {
12645	_ struct{} `type:"structure"`
12646
12647	// Detailed information about the accuracy of the entity recognizer for a specific
12648	// item on the list of entity types.
12649	EvaluationMetrics *EntityTypesEvaluationMetrics `type:"structure"`
12650
12651	// Indicates the number of times the given entity type was seen in the training
12652	// data.
12653	NumberOfTrainMentions *int64 `type:"integer"`
12654
12655	// Type of entity from the list of entity types in the metadata of an entity
12656	// recognizer.
12657	Type *string `type:"string"`
12658}
12659
12660// String returns the string representation.
12661//
12662// API parameter values that are decorated as "sensitive" in the API will not
12663// be included in the string output. The member name will be present, but the
12664// value will be replaced with "sensitive".
12665func (s EntityRecognizerMetadataEntityTypesListItem) String() string {
12666	return awsutil.Prettify(s)
12667}
12668
12669// GoString returns the string representation.
12670//
12671// API parameter values that are decorated as "sensitive" in the API will not
12672// be included in the string output. The member name will be present, but the
12673// value will be replaced with "sensitive".
12674func (s EntityRecognizerMetadataEntityTypesListItem) GoString() string {
12675	return s.String()
12676}
12677
12678// SetEvaluationMetrics sets the EvaluationMetrics field's value.
12679func (s *EntityRecognizerMetadataEntityTypesListItem) SetEvaluationMetrics(v *EntityTypesEvaluationMetrics) *EntityRecognizerMetadataEntityTypesListItem {
12680	s.EvaluationMetrics = v
12681	return s
12682}
12683
12684// SetNumberOfTrainMentions sets the NumberOfTrainMentions field's value.
12685func (s *EntityRecognizerMetadataEntityTypesListItem) SetNumberOfTrainMentions(v int64) *EntityRecognizerMetadataEntityTypesListItem {
12686	s.NumberOfTrainMentions = &v
12687	return s
12688}
12689
12690// SetType sets the Type field's value.
12691func (s *EntityRecognizerMetadataEntityTypesListItem) SetType(v string) *EntityRecognizerMetadataEntityTypesListItem {
12692	s.Type = &v
12693	return s
12694}
12695
12696// Describes information about an entity recognizer.
12697type EntityRecognizerProperties struct {
12698	_ struct{} `type:"structure"`
12699
12700	// The Amazon Resource Name (ARN) of the AWS Identity and Management (IAM) role
12701	// that grants Amazon Comprehend read access to your input data.
12702	DataAccessRoleArn *string `min:"20" type:"string"`
12703
12704	// The time that the recognizer creation completed.
12705	EndTime *time.Time `type:"timestamp"`
12706
12707	// The Amazon Resource Name (ARN) that identifies the entity recognizer.
12708	EntityRecognizerArn *string `type:"string"`
12709
12710	// The input data properties of an entity recognizer.
12711	InputDataConfig *EntityRecognizerInputDataConfig `type:"structure"`
12712
12713	// The language of the input documents. All documents must be in the same language.
12714	// Only English ("en") is currently supported.
12715	LanguageCode *string `type:"string" enum:"LanguageCode"`
12716
12717	// A description of the status of the recognizer.
12718	Message *string `type:"string"`
12719
12720	// ID for the AWS Key Management Service (KMS) key that Amazon Comprehend uses
12721	// to encrypt trained custom models. The ModelKmsKeyId can be either of the
12722	// following formats:
12723	//
12724	//    * KMS Key ID: "1234abcd-12ab-34cd-56ef-1234567890ab"
12725	//
12726	//    * Amazon Resource Name (ARN) of a KMS Key: "arn:aws:kms:us-west-2:111122223333:key/1234abcd-12ab-34cd-56ef-1234567890ab"
12727	ModelKmsKeyId *string `type:"string"`
12728
12729	// Provides information about an entity recognizer.
12730	//
12731	// RecognizerMetadata is a sensitive parameter and its value will be
12732	// replaced with "sensitive" in string returned by EntityRecognizerProperties's
12733	// String and GoString methods.
12734	RecognizerMetadata *EntityRecognizerMetadata `type:"structure" sensitive:"true"`
12735
12736	// Provides the status of the entity recognizer.
12737	Status *string `type:"string" enum:"ModelStatus"`
12738
12739	// The time that the recognizer was submitted for processing.
12740	SubmitTime *time.Time `type:"timestamp"`
12741
12742	// The time that training of the entity recognizer was completed.
12743	TrainingEndTime *time.Time `type:"timestamp"`
12744
12745	// The time that training of the entity recognizer started.
12746	TrainingStartTime *time.Time `type:"timestamp"`
12747
12748	// The version name you assigned to the entity recognizer.
12749	VersionName *string `type:"string"`
12750
12751	// ID for the AWS Key Management Service (KMS) key that Amazon Comprehend uses
12752	// to encrypt data on the storage volume attached to the ML compute instance(s)
12753	// that process the analysis job. The VolumeKmsKeyId can be either of the following
12754	// formats:
12755	//
12756	//    * KMS Key ID: "1234abcd-12ab-34cd-56ef-1234567890ab"
12757	//
12758	//    * Amazon Resource Name (ARN) of a KMS Key: "arn:aws:kms:us-west-2:111122223333:key/1234abcd-12ab-34cd-56ef-1234567890ab"
12759	VolumeKmsKeyId *string `type:"string"`
12760
12761	// Configuration parameters for a private Virtual Private Cloud (VPC) containing
12762	// the resources you are using for your custom entity recognizer. For more information,
12763	// see Amazon VPC (https://docs.aws.amazon.com/vpc/latest/userguide/what-is-amazon-vpc.html).
12764	VpcConfig *VpcConfig `type:"structure"`
12765}
12766
12767// String returns the string representation.
12768//
12769// API parameter values that are decorated as "sensitive" in the API will not
12770// be included in the string output. The member name will be present, but the
12771// value will be replaced with "sensitive".
12772func (s EntityRecognizerProperties) String() string {
12773	return awsutil.Prettify(s)
12774}
12775
12776// GoString returns the string representation.
12777//
12778// API parameter values that are decorated as "sensitive" in the API will not
12779// be included in the string output. The member name will be present, but the
12780// value will be replaced with "sensitive".
12781func (s EntityRecognizerProperties) GoString() string {
12782	return s.String()
12783}
12784
12785// SetDataAccessRoleArn sets the DataAccessRoleArn field's value.
12786func (s *EntityRecognizerProperties) SetDataAccessRoleArn(v string) *EntityRecognizerProperties {
12787	s.DataAccessRoleArn = &v
12788	return s
12789}
12790
12791// SetEndTime sets the EndTime field's value.
12792func (s *EntityRecognizerProperties) SetEndTime(v time.Time) *EntityRecognizerProperties {
12793	s.EndTime = &v
12794	return s
12795}
12796
12797// SetEntityRecognizerArn sets the EntityRecognizerArn field's value.
12798func (s *EntityRecognizerProperties) SetEntityRecognizerArn(v string) *EntityRecognizerProperties {
12799	s.EntityRecognizerArn = &v
12800	return s
12801}
12802
12803// SetInputDataConfig sets the InputDataConfig field's value.
12804func (s *EntityRecognizerProperties) SetInputDataConfig(v *EntityRecognizerInputDataConfig) *EntityRecognizerProperties {
12805	s.InputDataConfig = v
12806	return s
12807}
12808
12809// SetLanguageCode sets the LanguageCode field's value.
12810func (s *EntityRecognizerProperties) SetLanguageCode(v string) *EntityRecognizerProperties {
12811	s.LanguageCode = &v
12812	return s
12813}
12814
12815// SetMessage sets the Message field's value.
12816func (s *EntityRecognizerProperties) SetMessage(v string) *EntityRecognizerProperties {
12817	s.Message = &v
12818	return s
12819}
12820
12821// SetModelKmsKeyId sets the ModelKmsKeyId field's value.
12822func (s *EntityRecognizerProperties) SetModelKmsKeyId(v string) *EntityRecognizerProperties {
12823	s.ModelKmsKeyId = &v
12824	return s
12825}
12826
12827// SetRecognizerMetadata sets the RecognizerMetadata field's value.
12828func (s *EntityRecognizerProperties) SetRecognizerMetadata(v *EntityRecognizerMetadata) *EntityRecognizerProperties {
12829	s.RecognizerMetadata = v
12830	return s
12831}
12832
12833// SetStatus sets the Status field's value.
12834func (s *EntityRecognizerProperties) SetStatus(v string) *EntityRecognizerProperties {
12835	s.Status = &v
12836	return s
12837}
12838
12839// SetSubmitTime sets the SubmitTime field's value.
12840func (s *EntityRecognizerProperties) SetSubmitTime(v time.Time) *EntityRecognizerProperties {
12841	s.SubmitTime = &v
12842	return s
12843}
12844
12845// SetTrainingEndTime sets the TrainingEndTime field's value.
12846func (s *EntityRecognizerProperties) SetTrainingEndTime(v time.Time) *EntityRecognizerProperties {
12847	s.TrainingEndTime = &v
12848	return s
12849}
12850
12851// SetTrainingStartTime sets the TrainingStartTime field's value.
12852func (s *EntityRecognizerProperties) SetTrainingStartTime(v time.Time) *EntityRecognizerProperties {
12853	s.TrainingStartTime = &v
12854	return s
12855}
12856
12857// SetVersionName sets the VersionName field's value.
12858func (s *EntityRecognizerProperties) SetVersionName(v string) *EntityRecognizerProperties {
12859	s.VersionName = &v
12860	return s
12861}
12862
12863// SetVolumeKmsKeyId sets the VolumeKmsKeyId field's value.
12864func (s *EntityRecognizerProperties) SetVolumeKmsKeyId(v string) *EntityRecognizerProperties {
12865	s.VolumeKmsKeyId = &v
12866	return s
12867}
12868
12869// SetVpcConfig sets the VpcConfig field's value.
12870func (s *EntityRecognizerProperties) SetVpcConfig(v *VpcConfig) *EntityRecognizerProperties {
12871	s.VpcConfig = v
12872	return s
12873}
12874
12875// Describes the information about an entity recognizer and its versions.
12876type EntityRecognizerSummary struct {
12877	_ struct{} `type:"structure"`
12878
12879	// The time that the latest entity recognizer version was submitted for processing.
12880	LatestVersionCreatedAt *time.Time `type:"timestamp"`
12881
12882	// The version name you assigned to the latest entity recognizer version.
12883	LatestVersionName *string `type:"string"`
12884
12885	// Provides the status of the latest entity recognizer version.
12886	LatestVersionStatus *string `type:"string" enum:"ModelStatus"`
12887
12888	// The number of versions you created.
12889	NumberOfVersions *int64 `type:"integer"`
12890
12891	// The name that you assigned the entity recognizer.
12892	RecognizerName *string `type:"string"`
12893}
12894
12895// String returns the string representation.
12896//
12897// API parameter values that are decorated as "sensitive" in the API will not
12898// be included in the string output. The member name will be present, but the
12899// value will be replaced with "sensitive".
12900func (s EntityRecognizerSummary) String() string {
12901	return awsutil.Prettify(s)
12902}
12903
12904// GoString returns the string representation.
12905//
12906// API parameter values that are decorated as "sensitive" in the API will not
12907// be included in the string output. The member name will be present, but the
12908// value will be replaced with "sensitive".
12909func (s EntityRecognizerSummary) GoString() string {
12910	return s.String()
12911}
12912
12913// SetLatestVersionCreatedAt sets the LatestVersionCreatedAt field's value.
12914func (s *EntityRecognizerSummary) SetLatestVersionCreatedAt(v time.Time) *EntityRecognizerSummary {
12915	s.LatestVersionCreatedAt = &v
12916	return s
12917}
12918
12919// SetLatestVersionName sets the LatestVersionName field's value.
12920func (s *EntityRecognizerSummary) SetLatestVersionName(v string) *EntityRecognizerSummary {
12921	s.LatestVersionName = &v
12922	return s
12923}
12924
12925// SetLatestVersionStatus sets the LatestVersionStatus field's value.
12926func (s *EntityRecognizerSummary) SetLatestVersionStatus(v string) *EntityRecognizerSummary {
12927	s.LatestVersionStatus = &v
12928	return s
12929}
12930
12931// SetNumberOfVersions sets the NumberOfVersions field's value.
12932func (s *EntityRecognizerSummary) SetNumberOfVersions(v int64) *EntityRecognizerSummary {
12933	s.NumberOfVersions = &v
12934	return s
12935}
12936
12937// SetRecognizerName sets the RecognizerName field's value.
12938func (s *EntityRecognizerSummary) SetRecognizerName(v string) *EntityRecognizerSummary {
12939	s.RecognizerName = &v
12940	return s
12941}
12942
12943// Detailed information about the accuracy of an entity recognizer for a specific
12944// entity type.
12945type EntityTypesEvaluationMetrics struct {
12946	_ struct{} `type:"structure"`
12947
12948	// A measure of how accurate the recognizer results are for a specific entity
12949	// type in the test data. It is derived from the Precision and Recall values.
12950	// The F1Score is the harmonic average of the two scores. The highest score
12951	// is 1, and the worst score is 0.
12952	F1Score *float64 `type:"double"`
12953
12954	// A measure of the usefulness of the recognizer results for a specific entity
12955	// type in the test data. High precision means that the recognizer returned
12956	// substantially more relevant results than irrelevant ones.
12957	Precision *float64 `type:"double"`
12958
12959	// A measure of how complete the recognizer results are for a specific entity
12960	// type in the test data. High recall means that the recognizer returned most
12961	// of the relevant results.
12962	Recall *float64 `type:"double"`
12963}
12964
12965// String returns the string representation.
12966//
12967// API parameter values that are decorated as "sensitive" in the API will not
12968// be included in the string output. The member name will be present, but the
12969// value will be replaced with "sensitive".
12970func (s EntityTypesEvaluationMetrics) String() string {
12971	return awsutil.Prettify(s)
12972}
12973
12974// GoString returns the string representation.
12975//
12976// API parameter values that are decorated as "sensitive" in the API will not
12977// be included in the string output. The member name will be present, but the
12978// value will be replaced with "sensitive".
12979func (s EntityTypesEvaluationMetrics) GoString() string {
12980	return s.String()
12981}
12982
12983// SetF1Score sets the F1Score field's value.
12984func (s *EntityTypesEvaluationMetrics) SetF1Score(v float64) *EntityTypesEvaluationMetrics {
12985	s.F1Score = &v
12986	return s
12987}
12988
12989// SetPrecision sets the Precision field's value.
12990func (s *EntityTypesEvaluationMetrics) SetPrecision(v float64) *EntityTypesEvaluationMetrics {
12991	s.Precision = &v
12992	return s
12993}
12994
12995// SetRecall sets the Recall field's value.
12996func (s *EntityTypesEvaluationMetrics) SetRecall(v float64) *EntityTypesEvaluationMetrics {
12997	s.Recall = &v
12998	return s
12999}
13000
13001// An entity type within a labeled training dataset that Amazon Comprehend uses
13002// to train a custom entity recognizer.
13003type EntityTypesListItem struct {
13004	_ struct{} `type:"structure"`
13005
13006	// An entity type within a labeled training dataset that Amazon Comprehend uses
13007	// to train a custom entity recognizer.
13008	//
13009	// Entity types must not contain the following invalid characters: \n (line
13010	// break), \\n (escaped line break, \r (carriage return), \\r (escaped carriage
13011	// return), \t (tab), \\t (escaped tab), space, and , (comma).
13012	//
13013	// Type is a required field
13014	Type *string `type:"string" required:"true"`
13015}
13016
13017// String returns the string representation.
13018//
13019// API parameter values that are decorated as "sensitive" in the API will not
13020// be included in the string output. The member name will be present, but the
13021// value will be replaced with "sensitive".
13022func (s EntityTypesListItem) String() string {
13023	return awsutil.Prettify(s)
13024}
13025
13026// GoString returns the string representation.
13027//
13028// API parameter values that are decorated as "sensitive" in the API will not
13029// be included in the string output. The member name will be present, but the
13030// value will be replaced with "sensitive".
13031func (s EntityTypesListItem) GoString() string {
13032	return s.String()
13033}
13034
13035// Validate inspects the fields of the type to determine if they are valid.
13036func (s *EntityTypesListItem) Validate() error {
13037	invalidParams := request.ErrInvalidParams{Context: "EntityTypesListItem"}
13038	if s.Type == nil {
13039		invalidParams.Add(request.NewErrParamRequired("Type"))
13040	}
13041
13042	if invalidParams.Len() > 0 {
13043		return invalidParams
13044	}
13045	return nil
13046}
13047
13048// SetType sets the Type field's value.
13049func (s *EntityTypesListItem) SetType(v string) *EntityTypesListItem {
13050	s.Type = &v
13051	return s
13052}
13053
13054// Provides information for filtering a list of event detection jobs.
13055type EventsDetectionJobFilter struct {
13056	_ struct{} `type:"structure"`
13057
13058	// Filters on the name of the events detection job.
13059	JobName *string `min:"1" type:"string"`
13060
13061	// Filters the list of jobs based on job status. Returns only jobs with the
13062	// specified status.
13063	JobStatus *string `type:"string" enum:"JobStatus"`
13064
13065	// Filters the list of jobs based on the time that the job was submitted for
13066	// processing. Returns only jobs submitted after the specified time. Jobs are
13067	// returned in descending order, newest to oldest.
13068	SubmitTimeAfter *time.Time `type:"timestamp"`
13069
13070	// Filters the list of jobs based on the time that the job was submitted for
13071	// processing. Returns only jobs submitted before the specified time. Jobs are
13072	// returned in ascending order, oldest to newest.
13073	SubmitTimeBefore *time.Time `type:"timestamp"`
13074}
13075
13076// String returns the string representation.
13077//
13078// API parameter values that are decorated as "sensitive" in the API will not
13079// be included in the string output. The member name will be present, but the
13080// value will be replaced with "sensitive".
13081func (s EventsDetectionJobFilter) String() string {
13082	return awsutil.Prettify(s)
13083}
13084
13085// GoString returns the string representation.
13086//
13087// API parameter values that are decorated as "sensitive" in the API will not
13088// be included in the string output. The member name will be present, but the
13089// value will be replaced with "sensitive".
13090func (s EventsDetectionJobFilter) GoString() string {
13091	return s.String()
13092}
13093
13094// Validate inspects the fields of the type to determine if they are valid.
13095func (s *EventsDetectionJobFilter) Validate() error {
13096	invalidParams := request.ErrInvalidParams{Context: "EventsDetectionJobFilter"}
13097	if s.JobName != nil && len(*s.JobName) < 1 {
13098		invalidParams.Add(request.NewErrParamMinLen("JobName", 1))
13099	}
13100
13101	if invalidParams.Len() > 0 {
13102		return invalidParams
13103	}
13104	return nil
13105}
13106
13107// SetJobName sets the JobName field's value.
13108func (s *EventsDetectionJobFilter) SetJobName(v string) *EventsDetectionJobFilter {
13109	s.JobName = &v
13110	return s
13111}
13112
13113// SetJobStatus sets the JobStatus field's value.
13114func (s *EventsDetectionJobFilter) SetJobStatus(v string) *EventsDetectionJobFilter {
13115	s.JobStatus = &v
13116	return s
13117}
13118
13119// SetSubmitTimeAfter sets the SubmitTimeAfter field's value.
13120func (s *EventsDetectionJobFilter) SetSubmitTimeAfter(v time.Time) *EventsDetectionJobFilter {
13121	s.SubmitTimeAfter = &v
13122	return s
13123}
13124
13125// SetSubmitTimeBefore sets the SubmitTimeBefore field's value.
13126func (s *EventsDetectionJobFilter) SetSubmitTimeBefore(v time.Time) *EventsDetectionJobFilter {
13127	s.SubmitTimeBefore = &v
13128	return s
13129}
13130
13131// Provides information about an events detection job.
13132type EventsDetectionJobProperties struct {
13133	_ struct{} `type:"structure"`
13134
13135	// The Amazon Resource Name (ARN) of the AWS Identify and Access Management
13136	// (IAM) role that grants Amazon Comprehend read access to your input data.
13137	DataAccessRoleArn *string `min:"20" type:"string"`
13138
13139	// The time that the events detection job completed.
13140	EndTime *time.Time `type:"timestamp"`
13141
13142	// The input data configuration that you supplied when you created the events
13143	// detection job.
13144	InputDataConfig *InputDataConfig `type:"structure"`
13145
13146	// The Amazon Resource Name (ARN) of the events detection job. It is a unique,
13147	// fully qualified identifier for the job. It includes the AWS account, Region,
13148	// and the job ID. The format of the ARN is as follows:
13149	//
13150	// arn:<partition>:comprehend:<region>:<account-id>:events-detection-job/<job-id>
13151	//
13152	// The following is an example job ARN:
13153	//
13154	// arn:aws:comprehend:us-west-2:111122223333:events-detection-job/1234abcd12ab34cd56ef1234567890ab
13155	JobArn *string `type:"string"`
13156
13157	// The identifier assigned to the events detection job.
13158	JobId *string `min:"1" type:"string"`
13159
13160	// The name you assigned the events detection job.
13161	JobName *string `min:"1" type:"string"`
13162
13163	// The current status of the events detection job.
13164	JobStatus *string `type:"string" enum:"JobStatus"`
13165
13166	// The language code of the input documents.
13167	LanguageCode *string `type:"string" enum:"LanguageCode"`
13168
13169	// A description of the status of the events detection job.
13170	Message *string `type:"string"`
13171
13172	// The output data configuration that you supplied when you created the events
13173	// detection job.
13174	OutputDataConfig *OutputDataConfig `type:"structure"`
13175
13176	// The time that the events detection job was submitted for processing.
13177	SubmitTime *time.Time `type:"timestamp"`
13178
13179	// The types of events that are detected by the job.
13180	TargetEventTypes []*string `min:"1" type:"list"`
13181}
13182
13183// String returns the string representation.
13184//
13185// API parameter values that are decorated as "sensitive" in the API will not
13186// be included in the string output. The member name will be present, but the
13187// value will be replaced with "sensitive".
13188func (s EventsDetectionJobProperties) String() string {
13189	return awsutil.Prettify(s)
13190}
13191
13192// GoString returns the string representation.
13193//
13194// API parameter values that are decorated as "sensitive" in the API will not
13195// be included in the string output. The member name will be present, but the
13196// value will be replaced with "sensitive".
13197func (s EventsDetectionJobProperties) GoString() string {
13198	return s.String()
13199}
13200
13201// SetDataAccessRoleArn sets the DataAccessRoleArn field's value.
13202func (s *EventsDetectionJobProperties) SetDataAccessRoleArn(v string) *EventsDetectionJobProperties {
13203	s.DataAccessRoleArn = &v
13204	return s
13205}
13206
13207// SetEndTime sets the EndTime field's value.
13208func (s *EventsDetectionJobProperties) SetEndTime(v time.Time) *EventsDetectionJobProperties {
13209	s.EndTime = &v
13210	return s
13211}
13212
13213// SetInputDataConfig sets the InputDataConfig field's value.
13214func (s *EventsDetectionJobProperties) SetInputDataConfig(v *InputDataConfig) *EventsDetectionJobProperties {
13215	s.InputDataConfig = v
13216	return s
13217}
13218
13219// SetJobArn sets the JobArn field's value.
13220func (s *EventsDetectionJobProperties) SetJobArn(v string) *EventsDetectionJobProperties {
13221	s.JobArn = &v
13222	return s
13223}
13224
13225// SetJobId sets the JobId field's value.
13226func (s *EventsDetectionJobProperties) SetJobId(v string) *EventsDetectionJobProperties {
13227	s.JobId = &v
13228	return s
13229}
13230
13231// SetJobName sets the JobName field's value.
13232func (s *EventsDetectionJobProperties) SetJobName(v string) *EventsDetectionJobProperties {
13233	s.JobName = &v
13234	return s
13235}
13236
13237// SetJobStatus sets the JobStatus field's value.
13238func (s *EventsDetectionJobProperties) SetJobStatus(v string) *EventsDetectionJobProperties {
13239	s.JobStatus = &v
13240	return s
13241}
13242
13243// SetLanguageCode sets the LanguageCode field's value.
13244func (s *EventsDetectionJobProperties) SetLanguageCode(v string) *EventsDetectionJobProperties {
13245	s.LanguageCode = &v
13246	return s
13247}
13248
13249// SetMessage sets the Message field's value.
13250func (s *EventsDetectionJobProperties) SetMessage(v string) *EventsDetectionJobProperties {
13251	s.Message = &v
13252	return s
13253}
13254
13255// SetOutputDataConfig sets the OutputDataConfig field's value.
13256func (s *EventsDetectionJobProperties) SetOutputDataConfig(v *OutputDataConfig) *EventsDetectionJobProperties {
13257	s.OutputDataConfig = v
13258	return s
13259}
13260
13261// SetSubmitTime sets the SubmitTime field's value.
13262func (s *EventsDetectionJobProperties) SetSubmitTime(v time.Time) *EventsDetectionJobProperties {
13263	s.SubmitTime = &v
13264	return s
13265}
13266
13267// SetTargetEventTypes sets the TargetEventTypes field's value.
13268func (s *EventsDetectionJobProperties) SetTargetEventTypes(v []*string) *EventsDetectionJobProperties {
13269	s.TargetEventTypes = v
13270	return s
13271}
13272
13273// The input properties for an inference job.
13274type InputDataConfig struct {
13275	_ struct{} `type:"structure"`
13276
13277	// The document reader config field applies only for InputDataConfig of StartEntitiesDetectionJob.
13278	//
13279	// Use DocumentReaderConfig to provide specifications about how you want your
13280	// inference documents read. Currently it applies for PDF documents in StartEntitiesDetectionJob
13281	// custom inference.
13282	DocumentReaderConfig *DocumentReaderConfig `type:"structure"`
13283
13284	// Specifies how the text in an input file should be processed:
13285	//
13286	//    * ONE_DOC_PER_FILE - Each file is considered a separate document. Use
13287	//    this option when you are processing large documents, such as newspaper
13288	//    articles or scientific papers.
13289	//
13290	//    * ONE_DOC_PER_LINE - Each line in a file is considered a separate document.
13291	//    Use this option when you are processing many short documents, such as
13292	//    text messages.
13293	InputFormat *string `type:"string" enum:"InputFormat"`
13294
13295	// The Amazon S3 URI for the input data. The URI must be in same region as the
13296	// API endpoint that you are calling. The URI can point to a single input file
13297	// or it can provide the prefix for a collection of data files.
13298	//
13299	// For example, if you use the URI S3://bucketName/prefix, if the prefix is
13300	// a single file, Amazon Comprehend uses that file as input. If more than one
13301	// file begins with the prefix, Amazon Comprehend uses all of them as input.
13302	//
13303	// S3Uri is a required field
13304	S3Uri *string `type:"string" required:"true"`
13305}
13306
13307// String returns the string representation.
13308//
13309// API parameter values that are decorated as "sensitive" in the API will not
13310// be included in the string output. The member name will be present, but the
13311// value will be replaced with "sensitive".
13312func (s InputDataConfig) String() string {
13313	return awsutil.Prettify(s)
13314}
13315
13316// GoString returns the string representation.
13317//
13318// API parameter values that are decorated as "sensitive" in the API will not
13319// be included in the string output. The member name will be present, but the
13320// value will be replaced with "sensitive".
13321func (s InputDataConfig) GoString() string {
13322	return s.String()
13323}
13324
13325// Validate inspects the fields of the type to determine if they are valid.
13326func (s *InputDataConfig) Validate() error {
13327	invalidParams := request.ErrInvalidParams{Context: "InputDataConfig"}
13328	if s.S3Uri == nil {
13329		invalidParams.Add(request.NewErrParamRequired("S3Uri"))
13330	}
13331	if s.DocumentReaderConfig != nil {
13332		if err := s.DocumentReaderConfig.Validate(); err != nil {
13333			invalidParams.AddNested("DocumentReaderConfig", err.(request.ErrInvalidParams))
13334		}
13335	}
13336
13337	if invalidParams.Len() > 0 {
13338		return invalidParams
13339	}
13340	return nil
13341}
13342
13343// SetDocumentReaderConfig sets the DocumentReaderConfig field's value.
13344func (s *InputDataConfig) SetDocumentReaderConfig(v *DocumentReaderConfig) *InputDataConfig {
13345	s.DocumentReaderConfig = v
13346	return s
13347}
13348
13349// SetInputFormat sets the InputFormat field's value.
13350func (s *InputDataConfig) SetInputFormat(v string) *InputDataConfig {
13351	s.InputFormat = &v
13352	return s
13353}
13354
13355// SetS3Uri sets the S3Uri field's value.
13356func (s *InputDataConfig) SetS3Uri(v string) *InputDataConfig {
13357	s.S3Uri = &v
13358	return s
13359}
13360
13361// An internal server error occurred. Retry your request.
13362type InternalServerException struct {
13363	_            struct{}                  `type:"structure"`
13364	RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"`
13365
13366	Message_ *string `locationName:"Message" min:"1" type:"string"`
13367}
13368
13369// String returns the string representation.
13370//
13371// API parameter values that are decorated as "sensitive" in the API will not
13372// be included in the string output. The member name will be present, but the
13373// value will be replaced with "sensitive".
13374func (s InternalServerException) String() string {
13375	return awsutil.Prettify(s)
13376}
13377
13378// GoString returns the string representation.
13379//
13380// API parameter values that are decorated as "sensitive" in the API will not
13381// be included in the string output. The member name will be present, but the
13382// value will be replaced with "sensitive".
13383func (s InternalServerException) GoString() string {
13384	return s.String()
13385}
13386
13387func newErrorInternalServerException(v protocol.ResponseMetadata) error {
13388	return &InternalServerException{
13389		RespMetadata: v,
13390	}
13391}
13392
13393// Code returns the exception type name.
13394func (s *InternalServerException) Code() string {
13395	return "InternalServerException"
13396}
13397
13398// Message returns the exception's message.
13399func (s *InternalServerException) Message() string {
13400	if s.Message_ != nil {
13401		return *s.Message_
13402	}
13403	return ""
13404}
13405
13406// OrigErr always returns nil, satisfies awserr.Error interface.
13407func (s *InternalServerException) OrigErr() error {
13408	return nil
13409}
13410
13411func (s *InternalServerException) Error() string {
13412	return fmt.Sprintf("%s: %s", s.Code(), s.Message())
13413}
13414
13415// Status code returns the HTTP status code for the request's response error.
13416func (s *InternalServerException) StatusCode() int {
13417	return s.RespMetadata.StatusCode
13418}
13419
13420// RequestID returns the service's response RequestID for request.
13421func (s *InternalServerException) RequestID() string {
13422	return s.RespMetadata.RequestID
13423}
13424
13425// The filter specified for the operation is invalid. Specify a different filter.
13426type InvalidFilterException struct {
13427	_            struct{}                  `type:"structure"`
13428	RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"`
13429
13430	Message_ *string `locationName:"Message" min:"1" type:"string"`
13431}
13432
13433// String returns the string representation.
13434//
13435// API parameter values that are decorated as "sensitive" in the API will not
13436// be included in the string output. The member name will be present, but the
13437// value will be replaced with "sensitive".
13438func (s InvalidFilterException) String() string {
13439	return awsutil.Prettify(s)
13440}
13441
13442// GoString returns the string representation.
13443//
13444// API parameter values that are decorated as "sensitive" in the API will not
13445// be included in the string output. The member name will be present, but the
13446// value will be replaced with "sensitive".
13447func (s InvalidFilterException) GoString() string {
13448	return s.String()
13449}
13450
13451func newErrorInvalidFilterException(v protocol.ResponseMetadata) error {
13452	return &InvalidFilterException{
13453		RespMetadata: v,
13454	}
13455}
13456
13457// Code returns the exception type name.
13458func (s *InvalidFilterException) Code() string {
13459	return "InvalidFilterException"
13460}
13461
13462// Message returns the exception's message.
13463func (s *InvalidFilterException) Message() string {
13464	if s.Message_ != nil {
13465		return *s.Message_
13466	}
13467	return ""
13468}
13469
13470// OrigErr always returns nil, satisfies awserr.Error interface.
13471func (s *InvalidFilterException) OrigErr() error {
13472	return nil
13473}
13474
13475func (s *InvalidFilterException) Error() string {
13476	return fmt.Sprintf("%s: %s", s.Code(), s.Message())
13477}
13478
13479// Status code returns the HTTP status code for the request's response error.
13480func (s *InvalidFilterException) StatusCode() int {
13481	return s.RespMetadata.StatusCode
13482}
13483
13484// RequestID returns the service's response RequestID for request.
13485func (s *InvalidFilterException) RequestID() string {
13486	return s.RespMetadata.RequestID
13487}
13488
13489// The request is invalid.
13490type InvalidRequestException struct {
13491	_            struct{}                  `type:"structure"`
13492	RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"`
13493
13494	Message_ *string `locationName:"Message" min:"1" type:"string"`
13495}
13496
13497// String returns the string representation.
13498//
13499// API parameter values that are decorated as "sensitive" in the API will not
13500// be included in the string output. The member name will be present, but the
13501// value will be replaced with "sensitive".
13502func (s InvalidRequestException) String() string {
13503	return awsutil.Prettify(s)
13504}
13505
13506// GoString returns the string representation.
13507//
13508// API parameter values that are decorated as "sensitive" in the API will not
13509// be included in the string output. The member name will be present, but the
13510// value will be replaced with "sensitive".
13511func (s InvalidRequestException) GoString() string {
13512	return s.String()
13513}
13514
13515func newErrorInvalidRequestException(v protocol.ResponseMetadata) error {
13516	return &InvalidRequestException{
13517		RespMetadata: v,
13518	}
13519}
13520
13521// Code returns the exception type name.
13522func (s *InvalidRequestException) Code() string {
13523	return "InvalidRequestException"
13524}
13525
13526// Message returns the exception's message.
13527func (s *InvalidRequestException) Message() string {
13528	if s.Message_ != nil {
13529		return *s.Message_
13530	}
13531	return ""
13532}
13533
13534// OrigErr always returns nil, satisfies awserr.Error interface.
13535func (s *InvalidRequestException) OrigErr() error {
13536	return nil
13537}
13538
13539func (s *InvalidRequestException) Error() string {
13540	return fmt.Sprintf("%s: %s", s.Code(), s.Message())
13541}
13542
13543// Status code returns the HTTP status code for the request's response error.
13544func (s *InvalidRequestException) StatusCode() int {
13545	return s.RespMetadata.StatusCode
13546}
13547
13548// RequestID returns the service's response RequestID for request.
13549func (s *InvalidRequestException) RequestID() string {
13550	return s.RespMetadata.RequestID
13551}
13552
13553// The specified job was not found. Check the job ID and try again.
13554type JobNotFoundException struct {
13555	_            struct{}                  `type:"structure"`
13556	RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"`
13557
13558	Message_ *string `locationName:"Message" min:"1" type:"string"`
13559}
13560
13561// String returns the string representation.
13562//
13563// API parameter values that are decorated as "sensitive" in the API will not
13564// be included in the string output. The member name will be present, but the
13565// value will be replaced with "sensitive".
13566func (s JobNotFoundException) String() string {
13567	return awsutil.Prettify(s)
13568}
13569
13570// GoString returns the string representation.
13571//
13572// API parameter values that are decorated as "sensitive" in the API will not
13573// be included in the string output. The member name will be present, but the
13574// value will be replaced with "sensitive".
13575func (s JobNotFoundException) GoString() string {
13576	return s.String()
13577}
13578
13579func newErrorJobNotFoundException(v protocol.ResponseMetadata) error {
13580	return &JobNotFoundException{
13581		RespMetadata: v,
13582	}
13583}
13584
13585// Code returns the exception type name.
13586func (s *JobNotFoundException) Code() string {
13587	return "JobNotFoundException"
13588}
13589
13590// Message returns the exception's message.
13591func (s *JobNotFoundException) Message() string {
13592	if s.Message_ != nil {
13593		return *s.Message_
13594	}
13595	return ""
13596}
13597
13598// OrigErr always returns nil, satisfies awserr.Error interface.
13599func (s *JobNotFoundException) OrigErr() error {
13600	return nil
13601}
13602
13603func (s *JobNotFoundException) Error() string {
13604	return fmt.Sprintf("%s: %s", s.Code(), s.Message())
13605}
13606
13607// Status code returns the HTTP status code for the request's response error.
13608func (s *JobNotFoundException) StatusCode() int {
13609	return s.RespMetadata.StatusCode
13610}
13611
13612// RequestID returns the service's response RequestID for request.
13613func (s *JobNotFoundException) RequestID() string {
13614	return s.RespMetadata.RequestID
13615}
13616
13617// Describes a key noun phrase.
13618type KeyPhrase struct {
13619	_ struct{} `type:"structure"`
13620
13621	// A character offset in the input text that shows where the key phrase begins
13622	// (the first character is at position 0). The offset returns the position of
13623	// each UTF-8 code point in the string. A code point is the abstract character
13624	// from a particular graphical representation. For example, a multi-byte UTF-8
13625	// character maps to a single code point.
13626	BeginOffset *int64 `type:"integer"`
13627
13628	// A character offset in the input text where the key phrase ends. The offset
13629	// returns the position of each UTF-8 code point in the string. A code point
13630	// is the abstract character from a particular graphical representation. For
13631	// example, a multi-byte UTF-8 character maps to a single code point.
13632	EndOffset *int64 `type:"integer"`
13633
13634	// The level of confidence that Amazon Comprehend has in the accuracy of the
13635	// detection.
13636	Score *float64 `type:"float"`
13637
13638	// The text of a key noun phrase.
13639	Text *string `min:"1" type:"string"`
13640}
13641
13642// String returns the string representation.
13643//
13644// API parameter values that are decorated as "sensitive" in the API will not
13645// be included in the string output. The member name will be present, but the
13646// value will be replaced with "sensitive".
13647func (s KeyPhrase) String() string {
13648	return awsutil.Prettify(s)
13649}
13650
13651// GoString returns the string representation.
13652//
13653// API parameter values that are decorated as "sensitive" in the API will not
13654// be included in the string output. The member name will be present, but the
13655// value will be replaced with "sensitive".
13656func (s KeyPhrase) GoString() string {
13657	return s.String()
13658}
13659
13660// SetBeginOffset sets the BeginOffset field's value.
13661func (s *KeyPhrase) SetBeginOffset(v int64) *KeyPhrase {
13662	s.BeginOffset = &v
13663	return s
13664}
13665
13666// SetEndOffset sets the EndOffset field's value.
13667func (s *KeyPhrase) SetEndOffset(v int64) *KeyPhrase {
13668	s.EndOffset = &v
13669	return s
13670}
13671
13672// SetScore sets the Score field's value.
13673func (s *KeyPhrase) SetScore(v float64) *KeyPhrase {
13674	s.Score = &v
13675	return s
13676}
13677
13678// SetText sets the Text field's value.
13679func (s *KeyPhrase) SetText(v string) *KeyPhrase {
13680	s.Text = &v
13681	return s
13682}
13683
13684// Provides information for filtering a list of dominant language detection
13685// jobs. For more information, see the operation.
13686type KeyPhrasesDetectionJobFilter struct {
13687	_ struct{} `type:"structure"`
13688
13689	// Filters on the name of the job.
13690	JobName *string `min:"1" type:"string"`
13691
13692	// Filters the list of jobs based on job status. Returns only jobs with the
13693	// specified status.
13694	JobStatus *string `type:"string" enum:"JobStatus"`
13695
13696	// Filters the list of jobs based on the time that the job was submitted for
13697	// processing. Returns only jobs submitted after the specified time. Jobs are
13698	// returned in descending order, newest to oldest.
13699	SubmitTimeAfter *time.Time `type:"timestamp"`
13700
13701	// Filters the list of jobs based on the time that the job was submitted for
13702	// processing. Returns only jobs submitted before the specified time. Jobs are
13703	// returned in ascending order, oldest to newest.
13704	SubmitTimeBefore *time.Time `type:"timestamp"`
13705}
13706
13707// String returns the string representation.
13708//
13709// API parameter values that are decorated as "sensitive" in the API will not
13710// be included in the string output. The member name will be present, but the
13711// value will be replaced with "sensitive".
13712func (s KeyPhrasesDetectionJobFilter) String() string {
13713	return awsutil.Prettify(s)
13714}
13715
13716// GoString returns the string representation.
13717//
13718// API parameter values that are decorated as "sensitive" in the API will not
13719// be included in the string output. The member name will be present, but the
13720// value will be replaced with "sensitive".
13721func (s KeyPhrasesDetectionJobFilter) GoString() string {
13722	return s.String()
13723}
13724
13725// Validate inspects the fields of the type to determine if they are valid.
13726func (s *KeyPhrasesDetectionJobFilter) Validate() error {
13727	invalidParams := request.ErrInvalidParams{Context: "KeyPhrasesDetectionJobFilter"}
13728	if s.JobName != nil && len(*s.JobName) < 1 {
13729		invalidParams.Add(request.NewErrParamMinLen("JobName", 1))
13730	}
13731
13732	if invalidParams.Len() > 0 {
13733		return invalidParams
13734	}
13735	return nil
13736}
13737
13738// SetJobName sets the JobName field's value.
13739func (s *KeyPhrasesDetectionJobFilter) SetJobName(v string) *KeyPhrasesDetectionJobFilter {
13740	s.JobName = &v
13741	return s
13742}
13743
13744// SetJobStatus sets the JobStatus field's value.
13745func (s *KeyPhrasesDetectionJobFilter) SetJobStatus(v string) *KeyPhrasesDetectionJobFilter {
13746	s.JobStatus = &v
13747	return s
13748}
13749
13750// SetSubmitTimeAfter sets the SubmitTimeAfter field's value.
13751func (s *KeyPhrasesDetectionJobFilter) SetSubmitTimeAfter(v time.Time) *KeyPhrasesDetectionJobFilter {
13752	s.SubmitTimeAfter = &v
13753	return s
13754}
13755
13756// SetSubmitTimeBefore sets the SubmitTimeBefore field's value.
13757func (s *KeyPhrasesDetectionJobFilter) SetSubmitTimeBefore(v time.Time) *KeyPhrasesDetectionJobFilter {
13758	s.SubmitTimeBefore = &v
13759	return s
13760}
13761
13762// Provides information about a key phrases detection job.
13763type KeyPhrasesDetectionJobProperties struct {
13764	_ struct{} `type:"structure"`
13765
13766	// The Amazon Resource Name (ARN) that gives Amazon Comprehend read access to
13767	// your input data.
13768	DataAccessRoleArn *string `min:"20" type:"string"`
13769
13770	// The time that the key phrases detection job completed.
13771	EndTime *time.Time `type:"timestamp"`
13772
13773	// The input data configuration that you supplied when you created the key phrases
13774	// detection job.
13775	InputDataConfig *InputDataConfig `type:"structure"`
13776
13777	// The Amazon Resource Name (ARN) of the key phrases detection job. It is a
13778	// unique, fully qualified identifier for the job. It includes the AWS account,
13779	// Region, and the job ID. The format of the ARN is as follows:
13780	//
13781	// arn:<partition>:comprehend:<region>:<account-id>:key-phrases-detection-job/<job-id>
13782	//
13783	// The following is an example job ARN:
13784	//
13785	// arn:aws:comprehend:us-west-2:111122223333:key-phrases-detection-job/1234abcd12ab34cd56ef1234567890ab
13786	JobArn *string `type:"string"`
13787
13788	// The identifier assigned to the key phrases detection job.
13789	JobId *string `min:"1" type:"string"`
13790
13791	// The name that you assigned the key phrases detection job.
13792	JobName *string `min:"1" type:"string"`
13793
13794	// The current status of the key phrases detection job. If the status is FAILED,
13795	// the Message field shows the reason for the failure.
13796	JobStatus *string `type:"string" enum:"JobStatus"`
13797
13798	// The language code of the input documents.
13799	LanguageCode *string `type:"string" enum:"LanguageCode"`
13800
13801	// A description of the status of a job.
13802	Message *string `type:"string"`
13803
13804	// The output data configuration that you supplied when you created the key
13805	// phrases detection job.
13806	OutputDataConfig *OutputDataConfig `type:"structure"`
13807
13808	// The time that the key phrases detection job was submitted for processing.
13809	SubmitTime *time.Time `type:"timestamp"`
13810
13811	// ID for the AWS Key Management Service (KMS) key that Amazon Comprehend uses
13812	// to encrypt data on the storage volume attached to the ML compute instance(s)
13813	// that process the analysis job. The VolumeKmsKeyId can be either of the following
13814	// formats:
13815	//
13816	//    * KMS Key ID: "1234abcd-12ab-34cd-56ef-1234567890ab"
13817	//
13818	//    * Amazon Resource Name (ARN) of a KMS Key: "arn:aws:kms:us-west-2:111122223333:key/1234abcd-12ab-34cd-56ef-1234567890ab"
13819	VolumeKmsKeyId *string `type:"string"`
13820
13821	// Configuration parameters for a private Virtual Private Cloud (VPC) containing
13822	// the resources you are using for your key phrases detection job. For more
13823	// information, see Amazon VPC (https://docs.aws.amazon.com/vpc/latest/userguide/what-is-amazon-vpc.html).
13824	VpcConfig *VpcConfig `type:"structure"`
13825}
13826
13827// String returns the string representation.
13828//
13829// API parameter values that are decorated as "sensitive" in the API will not
13830// be included in the string output. The member name will be present, but the
13831// value will be replaced with "sensitive".
13832func (s KeyPhrasesDetectionJobProperties) String() string {
13833	return awsutil.Prettify(s)
13834}
13835
13836// GoString returns the string representation.
13837//
13838// API parameter values that are decorated as "sensitive" in the API will not
13839// be included in the string output. The member name will be present, but the
13840// value will be replaced with "sensitive".
13841func (s KeyPhrasesDetectionJobProperties) GoString() string {
13842	return s.String()
13843}
13844
13845// SetDataAccessRoleArn sets the DataAccessRoleArn field's value.
13846func (s *KeyPhrasesDetectionJobProperties) SetDataAccessRoleArn(v string) *KeyPhrasesDetectionJobProperties {
13847	s.DataAccessRoleArn = &v
13848	return s
13849}
13850
13851// SetEndTime sets the EndTime field's value.
13852func (s *KeyPhrasesDetectionJobProperties) SetEndTime(v time.Time) *KeyPhrasesDetectionJobProperties {
13853	s.EndTime = &v
13854	return s
13855}
13856
13857// SetInputDataConfig sets the InputDataConfig field's value.
13858func (s *KeyPhrasesDetectionJobProperties) SetInputDataConfig(v *InputDataConfig) *KeyPhrasesDetectionJobProperties {
13859	s.InputDataConfig = v
13860	return s
13861}
13862
13863// SetJobArn sets the JobArn field's value.
13864func (s *KeyPhrasesDetectionJobProperties) SetJobArn(v string) *KeyPhrasesDetectionJobProperties {
13865	s.JobArn = &v
13866	return s
13867}
13868
13869// SetJobId sets the JobId field's value.
13870func (s *KeyPhrasesDetectionJobProperties) SetJobId(v string) *KeyPhrasesDetectionJobProperties {
13871	s.JobId = &v
13872	return s
13873}
13874
13875// SetJobName sets the JobName field's value.
13876func (s *KeyPhrasesDetectionJobProperties) SetJobName(v string) *KeyPhrasesDetectionJobProperties {
13877	s.JobName = &v
13878	return s
13879}
13880
13881// SetJobStatus sets the JobStatus field's value.
13882func (s *KeyPhrasesDetectionJobProperties) SetJobStatus(v string) *KeyPhrasesDetectionJobProperties {
13883	s.JobStatus = &v
13884	return s
13885}
13886
13887// SetLanguageCode sets the LanguageCode field's value.
13888func (s *KeyPhrasesDetectionJobProperties) SetLanguageCode(v string) *KeyPhrasesDetectionJobProperties {
13889	s.LanguageCode = &v
13890	return s
13891}
13892
13893// SetMessage sets the Message field's value.
13894func (s *KeyPhrasesDetectionJobProperties) SetMessage(v string) *KeyPhrasesDetectionJobProperties {
13895	s.Message = &v
13896	return s
13897}
13898
13899// SetOutputDataConfig sets the OutputDataConfig field's value.
13900func (s *KeyPhrasesDetectionJobProperties) SetOutputDataConfig(v *OutputDataConfig) *KeyPhrasesDetectionJobProperties {
13901	s.OutputDataConfig = v
13902	return s
13903}
13904
13905// SetSubmitTime sets the SubmitTime field's value.
13906func (s *KeyPhrasesDetectionJobProperties) SetSubmitTime(v time.Time) *KeyPhrasesDetectionJobProperties {
13907	s.SubmitTime = &v
13908	return s
13909}
13910
13911// SetVolumeKmsKeyId sets the VolumeKmsKeyId field's value.
13912func (s *KeyPhrasesDetectionJobProperties) SetVolumeKmsKeyId(v string) *KeyPhrasesDetectionJobProperties {
13913	s.VolumeKmsKeyId = &v
13914	return s
13915}
13916
13917// SetVpcConfig sets the VpcConfig field's value.
13918func (s *KeyPhrasesDetectionJobProperties) SetVpcConfig(v *VpcConfig) *KeyPhrasesDetectionJobProperties {
13919	s.VpcConfig = v
13920	return s
13921}
13922
13923// The KMS customer managed key (CMK) entered cannot be validated. Verify the
13924// key and re-enter it.
13925type KmsKeyValidationException struct {
13926	_            struct{}                  `type:"structure"`
13927	RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"`
13928
13929	Message_ *string `locationName:"Message" min:"1" type:"string"`
13930}
13931
13932// String returns the string representation.
13933//
13934// API parameter values that are decorated as "sensitive" in the API will not
13935// be included in the string output. The member name will be present, but the
13936// value will be replaced with "sensitive".
13937func (s KmsKeyValidationException) String() string {
13938	return awsutil.Prettify(s)
13939}
13940
13941// GoString returns the string representation.
13942//
13943// API parameter values that are decorated as "sensitive" in the API will not
13944// be included in the string output. The member name will be present, but the
13945// value will be replaced with "sensitive".
13946func (s KmsKeyValidationException) GoString() string {
13947	return s.String()
13948}
13949
13950func newErrorKmsKeyValidationException(v protocol.ResponseMetadata) error {
13951	return &KmsKeyValidationException{
13952		RespMetadata: v,
13953	}
13954}
13955
13956// Code returns the exception type name.
13957func (s *KmsKeyValidationException) Code() string {
13958	return "KmsKeyValidationException"
13959}
13960
13961// Message returns the exception's message.
13962func (s *KmsKeyValidationException) Message() string {
13963	if s.Message_ != nil {
13964		return *s.Message_
13965	}
13966	return ""
13967}
13968
13969// OrigErr always returns nil, satisfies awserr.Error interface.
13970func (s *KmsKeyValidationException) OrigErr() error {
13971	return nil
13972}
13973
13974func (s *KmsKeyValidationException) Error() string {
13975	return fmt.Sprintf("%s: %s", s.Code(), s.Message())
13976}
13977
13978// Status code returns the HTTP status code for the request's response error.
13979func (s *KmsKeyValidationException) StatusCode() int {
13980	return s.RespMetadata.StatusCode
13981}
13982
13983// RequestID returns the service's response RequestID for request.
13984func (s *KmsKeyValidationException) RequestID() string {
13985	return s.RespMetadata.RequestID
13986}
13987
13988type ListDocumentClassificationJobsInput struct {
13989	_ struct{} `type:"structure"`
13990
13991	// Filters the jobs that are returned. You can filter jobs on their names, status,
13992	// or the date and time that they were submitted. You can only set one filter
13993	// at a time.
13994	Filter *DocumentClassificationJobFilter `type:"structure"`
13995
13996	// The maximum number of results to return in each page. The default is 100.
13997	MaxResults *int64 `min:"1" type:"integer"`
13998
13999	// Identifies the next page of results to return.
14000	NextToken *string `min:"1" type:"string"`
14001}
14002
14003// String returns the string representation.
14004//
14005// API parameter values that are decorated as "sensitive" in the API will not
14006// be included in the string output. The member name will be present, but the
14007// value will be replaced with "sensitive".
14008func (s ListDocumentClassificationJobsInput) String() string {
14009	return awsutil.Prettify(s)
14010}
14011
14012// GoString returns the string representation.
14013//
14014// API parameter values that are decorated as "sensitive" in the API will not
14015// be included in the string output. The member name will be present, but the
14016// value will be replaced with "sensitive".
14017func (s ListDocumentClassificationJobsInput) GoString() string {
14018	return s.String()
14019}
14020
14021// Validate inspects the fields of the type to determine if they are valid.
14022func (s *ListDocumentClassificationJobsInput) Validate() error {
14023	invalidParams := request.ErrInvalidParams{Context: "ListDocumentClassificationJobsInput"}
14024	if s.MaxResults != nil && *s.MaxResults < 1 {
14025		invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1))
14026	}
14027	if s.NextToken != nil && len(*s.NextToken) < 1 {
14028		invalidParams.Add(request.NewErrParamMinLen("NextToken", 1))
14029	}
14030	if s.Filter != nil {
14031		if err := s.Filter.Validate(); err != nil {
14032			invalidParams.AddNested("Filter", err.(request.ErrInvalidParams))
14033		}
14034	}
14035
14036	if invalidParams.Len() > 0 {
14037		return invalidParams
14038	}
14039	return nil
14040}
14041
14042// SetFilter sets the Filter field's value.
14043func (s *ListDocumentClassificationJobsInput) SetFilter(v *DocumentClassificationJobFilter) *ListDocumentClassificationJobsInput {
14044	s.Filter = v
14045	return s
14046}
14047
14048// SetMaxResults sets the MaxResults field's value.
14049func (s *ListDocumentClassificationJobsInput) SetMaxResults(v int64) *ListDocumentClassificationJobsInput {
14050	s.MaxResults = &v
14051	return s
14052}
14053
14054// SetNextToken sets the NextToken field's value.
14055func (s *ListDocumentClassificationJobsInput) SetNextToken(v string) *ListDocumentClassificationJobsInput {
14056	s.NextToken = &v
14057	return s
14058}
14059
14060type ListDocumentClassificationJobsOutput struct {
14061	_ struct{} `type:"structure"`
14062
14063	// A list containing the properties of each job returned.
14064	DocumentClassificationJobPropertiesList []*DocumentClassificationJobProperties `type:"list"`
14065
14066	// Identifies the next page of results to return.
14067	NextToken *string `min:"1" type:"string"`
14068}
14069
14070// String returns the string representation.
14071//
14072// API parameter values that are decorated as "sensitive" in the API will not
14073// be included in the string output. The member name will be present, but the
14074// value will be replaced with "sensitive".
14075func (s ListDocumentClassificationJobsOutput) String() string {
14076	return awsutil.Prettify(s)
14077}
14078
14079// GoString returns the string representation.
14080//
14081// API parameter values that are decorated as "sensitive" in the API will not
14082// be included in the string output. The member name will be present, but the
14083// value will be replaced with "sensitive".
14084func (s ListDocumentClassificationJobsOutput) GoString() string {
14085	return s.String()
14086}
14087
14088// SetDocumentClassificationJobPropertiesList sets the DocumentClassificationJobPropertiesList field's value.
14089func (s *ListDocumentClassificationJobsOutput) SetDocumentClassificationJobPropertiesList(v []*DocumentClassificationJobProperties) *ListDocumentClassificationJobsOutput {
14090	s.DocumentClassificationJobPropertiesList = v
14091	return s
14092}
14093
14094// SetNextToken sets the NextToken field's value.
14095func (s *ListDocumentClassificationJobsOutput) SetNextToken(v string) *ListDocumentClassificationJobsOutput {
14096	s.NextToken = &v
14097	return s
14098}
14099
14100type ListDocumentClassifierSummariesInput struct {
14101	_ struct{} `type:"structure"`
14102
14103	// The maximum number of results to return on each page. The default is 100.
14104	MaxResults *int64 `min:"1" type:"integer"`
14105
14106	// Identifies the next page of results to return.
14107	NextToken *string `min:"1" type:"string"`
14108}
14109
14110// String returns the string representation.
14111//
14112// API parameter values that are decorated as "sensitive" in the API will not
14113// be included in the string output. The member name will be present, but the
14114// value will be replaced with "sensitive".
14115func (s ListDocumentClassifierSummariesInput) String() string {
14116	return awsutil.Prettify(s)
14117}
14118
14119// GoString returns the string representation.
14120//
14121// API parameter values that are decorated as "sensitive" in the API will not
14122// be included in the string output. The member name will be present, but the
14123// value will be replaced with "sensitive".
14124func (s ListDocumentClassifierSummariesInput) GoString() string {
14125	return s.String()
14126}
14127
14128// Validate inspects the fields of the type to determine if they are valid.
14129func (s *ListDocumentClassifierSummariesInput) Validate() error {
14130	invalidParams := request.ErrInvalidParams{Context: "ListDocumentClassifierSummariesInput"}
14131	if s.MaxResults != nil && *s.MaxResults < 1 {
14132		invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1))
14133	}
14134	if s.NextToken != nil && len(*s.NextToken) < 1 {
14135		invalidParams.Add(request.NewErrParamMinLen("NextToken", 1))
14136	}
14137
14138	if invalidParams.Len() > 0 {
14139		return invalidParams
14140	}
14141	return nil
14142}
14143
14144// SetMaxResults sets the MaxResults field's value.
14145func (s *ListDocumentClassifierSummariesInput) SetMaxResults(v int64) *ListDocumentClassifierSummariesInput {
14146	s.MaxResults = &v
14147	return s
14148}
14149
14150// SetNextToken sets the NextToken field's value.
14151func (s *ListDocumentClassifierSummariesInput) SetNextToken(v string) *ListDocumentClassifierSummariesInput {
14152	s.NextToken = &v
14153	return s
14154}
14155
14156type ListDocumentClassifierSummariesOutput struct {
14157	_ struct{} `type:"structure"`
14158
14159	// The list of summaries of document classifiers.
14160	DocumentClassifierSummariesList []*DocumentClassifierSummary `type:"list"`
14161
14162	// Identifies the next page of results to return.
14163	NextToken *string `min:"1" type:"string"`
14164}
14165
14166// String returns the string representation.
14167//
14168// API parameter values that are decorated as "sensitive" in the API will not
14169// be included in the string output. The member name will be present, but the
14170// value will be replaced with "sensitive".
14171func (s ListDocumentClassifierSummariesOutput) String() string {
14172	return awsutil.Prettify(s)
14173}
14174
14175// GoString returns the string representation.
14176//
14177// API parameter values that are decorated as "sensitive" in the API will not
14178// be included in the string output. The member name will be present, but the
14179// value will be replaced with "sensitive".
14180func (s ListDocumentClassifierSummariesOutput) GoString() string {
14181	return s.String()
14182}
14183
14184// SetDocumentClassifierSummariesList sets the DocumentClassifierSummariesList field's value.
14185func (s *ListDocumentClassifierSummariesOutput) SetDocumentClassifierSummariesList(v []*DocumentClassifierSummary) *ListDocumentClassifierSummariesOutput {
14186	s.DocumentClassifierSummariesList = v
14187	return s
14188}
14189
14190// SetNextToken sets the NextToken field's value.
14191func (s *ListDocumentClassifierSummariesOutput) SetNextToken(v string) *ListDocumentClassifierSummariesOutput {
14192	s.NextToken = &v
14193	return s
14194}
14195
14196type ListDocumentClassifiersInput struct {
14197	_ struct{} `type:"structure"`
14198
14199	// Filters the jobs that are returned. You can filter jobs on their name, status,
14200	// or the date and time that they were submitted. You can only set one filter
14201	// at a time.
14202	Filter *DocumentClassifierFilter `type:"structure"`
14203
14204	// The maximum number of results to return in each page. The default is 100.
14205	MaxResults *int64 `min:"1" type:"integer"`
14206
14207	// Identifies the next page of results to return.
14208	NextToken *string `min:"1" type:"string"`
14209}
14210
14211// String returns the string representation.
14212//
14213// API parameter values that are decorated as "sensitive" in the API will not
14214// be included in the string output. The member name will be present, but the
14215// value will be replaced with "sensitive".
14216func (s ListDocumentClassifiersInput) String() string {
14217	return awsutil.Prettify(s)
14218}
14219
14220// GoString returns the string representation.
14221//
14222// API parameter values that are decorated as "sensitive" in the API will not
14223// be included in the string output. The member name will be present, but the
14224// value will be replaced with "sensitive".
14225func (s ListDocumentClassifiersInput) GoString() string {
14226	return s.String()
14227}
14228
14229// Validate inspects the fields of the type to determine if they are valid.
14230func (s *ListDocumentClassifiersInput) Validate() error {
14231	invalidParams := request.ErrInvalidParams{Context: "ListDocumentClassifiersInput"}
14232	if s.MaxResults != nil && *s.MaxResults < 1 {
14233		invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1))
14234	}
14235	if s.NextToken != nil && len(*s.NextToken) < 1 {
14236		invalidParams.Add(request.NewErrParamMinLen("NextToken", 1))
14237	}
14238
14239	if invalidParams.Len() > 0 {
14240		return invalidParams
14241	}
14242	return nil
14243}
14244
14245// SetFilter sets the Filter field's value.
14246func (s *ListDocumentClassifiersInput) SetFilter(v *DocumentClassifierFilter) *ListDocumentClassifiersInput {
14247	s.Filter = v
14248	return s
14249}
14250
14251// SetMaxResults sets the MaxResults field's value.
14252func (s *ListDocumentClassifiersInput) SetMaxResults(v int64) *ListDocumentClassifiersInput {
14253	s.MaxResults = &v
14254	return s
14255}
14256
14257// SetNextToken sets the NextToken field's value.
14258func (s *ListDocumentClassifiersInput) SetNextToken(v string) *ListDocumentClassifiersInput {
14259	s.NextToken = &v
14260	return s
14261}
14262
14263type ListDocumentClassifiersOutput struct {
14264	_ struct{} `type:"structure"`
14265
14266	// A list containing the properties of each job returned.
14267	DocumentClassifierPropertiesList []*DocumentClassifierProperties `type:"list"`
14268
14269	// Identifies the next page of results to return.
14270	NextToken *string `min:"1" type:"string"`
14271}
14272
14273// String returns the string representation.
14274//
14275// API parameter values that are decorated as "sensitive" in the API will not
14276// be included in the string output. The member name will be present, but the
14277// value will be replaced with "sensitive".
14278func (s ListDocumentClassifiersOutput) String() string {
14279	return awsutil.Prettify(s)
14280}
14281
14282// GoString returns the string representation.
14283//
14284// API parameter values that are decorated as "sensitive" in the API will not
14285// be included in the string output. The member name will be present, but the
14286// value will be replaced with "sensitive".
14287func (s ListDocumentClassifiersOutput) GoString() string {
14288	return s.String()
14289}
14290
14291// SetDocumentClassifierPropertiesList sets the DocumentClassifierPropertiesList field's value.
14292func (s *ListDocumentClassifiersOutput) SetDocumentClassifierPropertiesList(v []*DocumentClassifierProperties) *ListDocumentClassifiersOutput {
14293	s.DocumentClassifierPropertiesList = v
14294	return s
14295}
14296
14297// SetNextToken sets the NextToken field's value.
14298func (s *ListDocumentClassifiersOutput) SetNextToken(v string) *ListDocumentClassifiersOutput {
14299	s.NextToken = &v
14300	return s
14301}
14302
14303type ListDominantLanguageDetectionJobsInput struct {
14304	_ struct{} `type:"structure"`
14305
14306	// Filters that jobs that are returned. You can filter jobs on their name, status,
14307	// or the date and time that they were submitted. You can only set one filter
14308	// at a time.
14309	Filter *DominantLanguageDetectionJobFilter `type:"structure"`
14310
14311	// The maximum number of results to return in each page. The default is 100.
14312	MaxResults *int64 `min:"1" type:"integer"`
14313
14314	// Identifies the next page of results to return.
14315	NextToken *string `min:"1" type:"string"`
14316}
14317
14318// String returns the string representation.
14319//
14320// API parameter values that are decorated as "sensitive" in the API will not
14321// be included in the string output. The member name will be present, but the
14322// value will be replaced with "sensitive".
14323func (s ListDominantLanguageDetectionJobsInput) String() string {
14324	return awsutil.Prettify(s)
14325}
14326
14327// GoString returns the string representation.
14328//
14329// API parameter values that are decorated as "sensitive" in the API will not
14330// be included in the string output. The member name will be present, but the
14331// value will be replaced with "sensitive".
14332func (s ListDominantLanguageDetectionJobsInput) GoString() string {
14333	return s.String()
14334}
14335
14336// Validate inspects the fields of the type to determine if they are valid.
14337func (s *ListDominantLanguageDetectionJobsInput) Validate() error {
14338	invalidParams := request.ErrInvalidParams{Context: "ListDominantLanguageDetectionJobsInput"}
14339	if s.MaxResults != nil && *s.MaxResults < 1 {
14340		invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1))
14341	}
14342	if s.NextToken != nil && len(*s.NextToken) < 1 {
14343		invalidParams.Add(request.NewErrParamMinLen("NextToken", 1))
14344	}
14345	if s.Filter != nil {
14346		if err := s.Filter.Validate(); err != nil {
14347			invalidParams.AddNested("Filter", err.(request.ErrInvalidParams))
14348		}
14349	}
14350
14351	if invalidParams.Len() > 0 {
14352		return invalidParams
14353	}
14354	return nil
14355}
14356
14357// SetFilter sets the Filter field's value.
14358func (s *ListDominantLanguageDetectionJobsInput) SetFilter(v *DominantLanguageDetectionJobFilter) *ListDominantLanguageDetectionJobsInput {
14359	s.Filter = v
14360	return s
14361}
14362
14363// SetMaxResults sets the MaxResults field's value.
14364func (s *ListDominantLanguageDetectionJobsInput) SetMaxResults(v int64) *ListDominantLanguageDetectionJobsInput {
14365	s.MaxResults = &v
14366	return s
14367}
14368
14369// SetNextToken sets the NextToken field's value.
14370func (s *ListDominantLanguageDetectionJobsInput) SetNextToken(v string) *ListDominantLanguageDetectionJobsInput {
14371	s.NextToken = &v
14372	return s
14373}
14374
14375type ListDominantLanguageDetectionJobsOutput struct {
14376	_ struct{} `type:"structure"`
14377
14378	// A list containing the properties of each job that is returned.
14379	DominantLanguageDetectionJobPropertiesList []*DominantLanguageDetectionJobProperties `type:"list"`
14380
14381	// Identifies the next page of results to return.
14382	NextToken *string `min:"1" type:"string"`
14383}
14384
14385// String returns the string representation.
14386//
14387// API parameter values that are decorated as "sensitive" in the API will not
14388// be included in the string output. The member name will be present, but the
14389// value will be replaced with "sensitive".
14390func (s ListDominantLanguageDetectionJobsOutput) String() string {
14391	return awsutil.Prettify(s)
14392}
14393
14394// GoString returns the string representation.
14395//
14396// API parameter values that are decorated as "sensitive" in the API will not
14397// be included in the string output. The member name will be present, but the
14398// value will be replaced with "sensitive".
14399func (s ListDominantLanguageDetectionJobsOutput) GoString() string {
14400	return s.String()
14401}
14402
14403// SetDominantLanguageDetectionJobPropertiesList sets the DominantLanguageDetectionJobPropertiesList field's value.
14404func (s *ListDominantLanguageDetectionJobsOutput) SetDominantLanguageDetectionJobPropertiesList(v []*DominantLanguageDetectionJobProperties) *ListDominantLanguageDetectionJobsOutput {
14405	s.DominantLanguageDetectionJobPropertiesList = v
14406	return s
14407}
14408
14409// SetNextToken sets the NextToken field's value.
14410func (s *ListDominantLanguageDetectionJobsOutput) SetNextToken(v string) *ListDominantLanguageDetectionJobsOutput {
14411	s.NextToken = &v
14412	return s
14413}
14414
14415type ListEndpointsInput struct {
14416	_ struct{} `type:"structure"`
14417
14418	// Filters the endpoints that are returned. You can filter endpoints on their
14419	// name, model, status, or the date and time that they were created. You can
14420	// only set one filter at a time.
14421	Filter *EndpointFilter `type:"structure"`
14422
14423	// The maximum number of results to return in each page. The default is 100.
14424	MaxResults *int64 `min:"1" type:"integer"`
14425
14426	// Identifies the next page of results to return.
14427	NextToken *string `min:"1" type:"string"`
14428}
14429
14430// String returns the string representation.
14431//
14432// API parameter values that are decorated as "sensitive" in the API will not
14433// be included in the string output. The member name will be present, but the
14434// value will be replaced with "sensitive".
14435func (s ListEndpointsInput) String() string {
14436	return awsutil.Prettify(s)
14437}
14438
14439// GoString returns the string representation.
14440//
14441// API parameter values that are decorated as "sensitive" in the API will not
14442// be included in the string output. The member name will be present, but the
14443// value will be replaced with "sensitive".
14444func (s ListEndpointsInput) GoString() string {
14445	return s.String()
14446}
14447
14448// Validate inspects the fields of the type to determine if they are valid.
14449func (s *ListEndpointsInput) Validate() error {
14450	invalidParams := request.ErrInvalidParams{Context: "ListEndpointsInput"}
14451	if s.MaxResults != nil && *s.MaxResults < 1 {
14452		invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1))
14453	}
14454	if s.NextToken != nil && len(*s.NextToken) < 1 {
14455		invalidParams.Add(request.NewErrParamMinLen("NextToken", 1))
14456	}
14457
14458	if invalidParams.Len() > 0 {
14459		return invalidParams
14460	}
14461	return nil
14462}
14463
14464// SetFilter sets the Filter field's value.
14465func (s *ListEndpointsInput) SetFilter(v *EndpointFilter) *ListEndpointsInput {
14466	s.Filter = v
14467	return s
14468}
14469
14470// SetMaxResults sets the MaxResults field's value.
14471func (s *ListEndpointsInput) SetMaxResults(v int64) *ListEndpointsInput {
14472	s.MaxResults = &v
14473	return s
14474}
14475
14476// SetNextToken sets the NextToken field's value.
14477func (s *ListEndpointsInput) SetNextToken(v string) *ListEndpointsInput {
14478	s.NextToken = &v
14479	return s
14480}
14481
14482type ListEndpointsOutput struct {
14483	_ struct{} `type:"structure"`
14484
14485	// Displays a list of endpoint properties being retrieved by the service in
14486	// response to the request.
14487	EndpointPropertiesList []*EndpointProperties `type:"list"`
14488
14489	// Identifies the next page of results to return.
14490	NextToken *string `min:"1" type:"string"`
14491}
14492
14493// String returns the string representation.
14494//
14495// API parameter values that are decorated as "sensitive" in the API will not
14496// be included in the string output. The member name will be present, but the
14497// value will be replaced with "sensitive".
14498func (s ListEndpointsOutput) String() string {
14499	return awsutil.Prettify(s)
14500}
14501
14502// GoString returns the string representation.
14503//
14504// API parameter values that are decorated as "sensitive" in the API will not
14505// be included in the string output. The member name will be present, but the
14506// value will be replaced with "sensitive".
14507func (s ListEndpointsOutput) GoString() string {
14508	return s.String()
14509}
14510
14511// SetEndpointPropertiesList sets the EndpointPropertiesList field's value.
14512func (s *ListEndpointsOutput) SetEndpointPropertiesList(v []*EndpointProperties) *ListEndpointsOutput {
14513	s.EndpointPropertiesList = v
14514	return s
14515}
14516
14517// SetNextToken sets the NextToken field's value.
14518func (s *ListEndpointsOutput) SetNextToken(v string) *ListEndpointsOutput {
14519	s.NextToken = &v
14520	return s
14521}
14522
14523type ListEntitiesDetectionJobsInput struct {
14524	_ struct{} `type:"structure"`
14525
14526	// Filters the jobs that are returned. You can filter jobs on their name, status,
14527	// or the date and time that they were submitted. You can only set one filter
14528	// at a time.
14529	Filter *EntitiesDetectionJobFilter `type:"structure"`
14530
14531	// The maximum number of results to return in each page. The default is 100.
14532	MaxResults *int64 `min:"1" type:"integer"`
14533
14534	// Identifies the next page of results to return.
14535	NextToken *string `min:"1" type:"string"`
14536}
14537
14538// String returns the string representation.
14539//
14540// API parameter values that are decorated as "sensitive" in the API will not
14541// be included in the string output. The member name will be present, but the
14542// value will be replaced with "sensitive".
14543func (s ListEntitiesDetectionJobsInput) String() string {
14544	return awsutil.Prettify(s)
14545}
14546
14547// GoString returns the string representation.
14548//
14549// API parameter values that are decorated as "sensitive" in the API will not
14550// be included in the string output. The member name will be present, but the
14551// value will be replaced with "sensitive".
14552func (s ListEntitiesDetectionJobsInput) GoString() string {
14553	return s.String()
14554}
14555
14556// Validate inspects the fields of the type to determine if they are valid.
14557func (s *ListEntitiesDetectionJobsInput) Validate() error {
14558	invalidParams := request.ErrInvalidParams{Context: "ListEntitiesDetectionJobsInput"}
14559	if s.MaxResults != nil && *s.MaxResults < 1 {
14560		invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1))
14561	}
14562	if s.NextToken != nil && len(*s.NextToken) < 1 {
14563		invalidParams.Add(request.NewErrParamMinLen("NextToken", 1))
14564	}
14565	if s.Filter != nil {
14566		if err := s.Filter.Validate(); err != nil {
14567			invalidParams.AddNested("Filter", err.(request.ErrInvalidParams))
14568		}
14569	}
14570
14571	if invalidParams.Len() > 0 {
14572		return invalidParams
14573	}
14574	return nil
14575}
14576
14577// SetFilter sets the Filter field's value.
14578func (s *ListEntitiesDetectionJobsInput) SetFilter(v *EntitiesDetectionJobFilter) *ListEntitiesDetectionJobsInput {
14579	s.Filter = v
14580	return s
14581}
14582
14583// SetMaxResults sets the MaxResults field's value.
14584func (s *ListEntitiesDetectionJobsInput) SetMaxResults(v int64) *ListEntitiesDetectionJobsInput {
14585	s.MaxResults = &v
14586	return s
14587}
14588
14589// SetNextToken sets the NextToken field's value.
14590func (s *ListEntitiesDetectionJobsInput) SetNextToken(v string) *ListEntitiesDetectionJobsInput {
14591	s.NextToken = &v
14592	return s
14593}
14594
14595type ListEntitiesDetectionJobsOutput struct {
14596	_ struct{} `type:"structure"`
14597
14598	// A list containing the properties of each job that is returned.
14599	EntitiesDetectionJobPropertiesList []*EntitiesDetectionJobProperties `type:"list"`
14600
14601	// Identifies the next page of results to return.
14602	NextToken *string `min:"1" type:"string"`
14603}
14604
14605// String returns the string representation.
14606//
14607// API parameter values that are decorated as "sensitive" in the API will not
14608// be included in the string output. The member name will be present, but the
14609// value will be replaced with "sensitive".
14610func (s ListEntitiesDetectionJobsOutput) String() string {
14611	return awsutil.Prettify(s)
14612}
14613
14614// GoString returns the string representation.
14615//
14616// API parameter values that are decorated as "sensitive" in the API will not
14617// be included in the string output. The member name will be present, but the
14618// value will be replaced with "sensitive".
14619func (s ListEntitiesDetectionJobsOutput) GoString() string {
14620	return s.String()
14621}
14622
14623// SetEntitiesDetectionJobPropertiesList sets the EntitiesDetectionJobPropertiesList field's value.
14624func (s *ListEntitiesDetectionJobsOutput) SetEntitiesDetectionJobPropertiesList(v []*EntitiesDetectionJobProperties) *ListEntitiesDetectionJobsOutput {
14625	s.EntitiesDetectionJobPropertiesList = v
14626	return s
14627}
14628
14629// SetNextToken sets the NextToken field's value.
14630func (s *ListEntitiesDetectionJobsOutput) SetNextToken(v string) *ListEntitiesDetectionJobsOutput {
14631	s.NextToken = &v
14632	return s
14633}
14634
14635type ListEntityRecognizerSummariesInput struct {
14636	_ struct{} `type:"structure"`
14637
14638	// The maximum number of results to return on each page. The default is 100.
14639	MaxResults *int64 `min:"1" type:"integer"`
14640
14641	// Identifies the next page of results to return.
14642	NextToken *string `min:"1" type:"string"`
14643}
14644
14645// String returns the string representation.
14646//
14647// API parameter values that are decorated as "sensitive" in the API will not
14648// be included in the string output. The member name will be present, but the
14649// value will be replaced with "sensitive".
14650func (s ListEntityRecognizerSummariesInput) String() string {
14651	return awsutil.Prettify(s)
14652}
14653
14654// GoString returns the string representation.
14655//
14656// API parameter values that are decorated as "sensitive" in the API will not
14657// be included in the string output. The member name will be present, but the
14658// value will be replaced with "sensitive".
14659func (s ListEntityRecognizerSummariesInput) GoString() string {
14660	return s.String()
14661}
14662
14663// Validate inspects the fields of the type to determine if they are valid.
14664func (s *ListEntityRecognizerSummariesInput) Validate() error {
14665	invalidParams := request.ErrInvalidParams{Context: "ListEntityRecognizerSummariesInput"}
14666	if s.MaxResults != nil && *s.MaxResults < 1 {
14667		invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1))
14668	}
14669	if s.NextToken != nil && len(*s.NextToken) < 1 {
14670		invalidParams.Add(request.NewErrParamMinLen("NextToken", 1))
14671	}
14672
14673	if invalidParams.Len() > 0 {
14674		return invalidParams
14675	}
14676	return nil
14677}
14678
14679// SetMaxResults sets the MaxResults field's value.
14680func (s *ListEntityRecognizerSummariesInput) SetMaxResults(v int64) *ListEntityRecognizerSummariesInput {
14681	s.MaxResults = &v
14682	return s
14683}
14684
14685// SetNextToken sets the NextToken field's value.
14686func (s *ListEntityRecognizerSummariesInput) SetNextToken(v string) *ListEntityRecognizerSummariesInput {
14687	s.NextToken = &v
14688	return s
14689}
14690
14691type ListEntityRecognizerSummariesOutput struct {
14692	_ struct{} `type:"structure"`
14693
14694	// The list entity recognizer summaries.
14695	EntityRecognizerSummariesList []*EntityRecognizerSummary `type:"list"`
14696
14697	// The list entity recognizer summaries.
14698	NextToken *string `min:"1" type:"string"`
14699}
14700
14701// String returns the string representation.
14702//
14703// API parameter values that are decorated as "sensitive" in the API will not
14704// be included in the string output. The member name will be present, but the
14705// value will be replaced with "sensitive".
14706func (s ListEntityRecognizerSummariesOutput) String() string {
14707	return awsutil.Prettify(s)
14708}
14709
14710// GoString returns the string representation.
14711//
14712// API parameter values that are decorated as "sensitive" in the API will not
14713// be included in the string output. The member name will be present, but the
14714// value will be replaced with "sensitive".
14715func (s ListEntityRecognizerSummariesOutput) GoString() string {
14716	return s.String()
14717}
14718
14719// SetEntityRecognizerSummariesList sets the EntityRecognizerSummariesList field's value.
14720func (s *ListEntityRecognizerSummariesOutput) SetEntityRecognizerSummariesList(v []*EntityRecognizerSummary) *ListEntityRecognizerSummariesOutput {
14721	s.EntityRecognizerSummariesList = v
14722	return s
14723}
14724
14725// SetNextToken sets the NextToken field's value.
14726func (s *ListEntityRecognizerSummariesOutput) SetNextToken(v string) *ListEntityRecognizerSummariesOutput {
14727	s.NextToken = &v
14728	return s
14729}
14730
14731type ListEntityRecognizersInput struct {
14732	_ struct{} `type:"structure"`
14733
14734	// Filters the list of entities returned. You can filter on Status, SubmitTimeBefore,
14735	// or SubmitTimeAfter. You can only set one filter at a time.
14736	Filter *EntityRecognizerFilter `type:"structure"`
14737
14738	// The maximum number of results to return on each page. The default is 100.
14739	MaxResults *int64 `min:"1" type:"integer"`
14740
14741	// Identifies the next page of results to return.
14742	NextToken *string `min:"1" type:"string"`
14743}
14744
14745// String returns the string representation.
14746//
14747// API parameter values that are decorated as "sensitive" in the API will not
14748// be included in the string output. The member name will be present, but the
14749// value will be replaced with "sensitive".
14750func (s ListEntityRecognizersInput) String() string {
14751	return awsutil.Prettify(s)
14752}
14753
14754// GoString returns the string representation.
14755//
14756// API parameter values that are decorated as "sensitive" in the API will not
14757// be included in the string output. The member name will be present, but the
14758// value will be replaced with "sensitive".
14759func (s ListEntityRecognizersInput) GoString() string {
14760	return s.String()
14761}
14762
14763// Validate inspects the fields of the type to determine if they are valid.
14764func (s *ListEntityRecognizersInput) Validate() error {
14765	invalidParams := request.ErrInvalidParams{Context: "ListEntityRecognizersInput"}
14766	if s.MaxResults != nil && *s.MaxResults < 1 {
14767		invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1))
14768	}
14769	if s.NextToken != nil && len(*s.NextToken) < 1 {
14770		invalidParams.Add(request.NewErrParamMinLen("NextToken", 1))
14771	}
14772
14773	if invalidParams.Len() > 0 {
14774		return invalidParams
14775	}
14776	return nil
14777}
14778
14779// SetFilter sets the Filter field's value.
14780func (s *ListEntityRecognizersInput) SetFilter(v *EntityRecognizerFilter) *ListEntityRecognizersInput {
14781	s.Filter = v
14782	return s
14783}
14784
14785// SetMaxResults sets the MaxResults field's value.
14786func (s *ListEntityRecognizersInput) SetMaxResults(v int64) *ListEntityRecognizersInput {
14787	s.MaxResults = &v
14788	return s
14789}
14790
14791// SetNextToken sets the NextToken field's value.
14792func (s *ListEntityRecognizersInput) SetNextToken(v string) *ListEntityRecognizersInput {
14793	s.NextToken = &v
14794	return s
14795}
14796
14797type ListEntityRecognizersOutput struct {
14798	_ struct{} `type:"structure"`
14799
14800	// The list of properties of an entity recognizer.
14801	EntityRecognizerPropertiesList []*EntityRecognizerProperties `type:"list"`
14802
14803	// Identifies the next page of results to return.
14804	NextToken *string `min:"1" type:"string"`
14805}
14806
14807// String returns the string representation.
14808//
14809// API parameter values that are decorated as "sensitive" in the API will not
14810// be included in the string output. The member name will be present, but the
14811// value will be replaced with "sensitive".
14812func (s ListEntityRecognizersOutput) String() string {
14813	return awsutil.Prettify(s)
14814}
14815
14816// GoString returns the string representation.
14817//
14818// API parameter values that are decorated as "sensitive" in the API will not
14819// be included in the string output. The member name will be present, but the
14820// value will be replaced with "sensitive".
14821func (s ListEntityRecognizersOutput) GoString() string {
14822	return s.String()
14823}
14824
14825// SetEntityRecognizerPropertiesList sets the EntityRecognizerPropertiesList field's value.
14826func (s *ListEntityRecognizersOutput) SetEntityRecognizerPropertiesList(v []*EntityRecognizerProperties) *ListEntityRecognizersOutput {
14827	s.EntityRecognizerPropertiesList = v
14828	return s
14829}
14830
14831// SetNextToken sets the NextToken field's value.
14832func (s *ListEntityRecognizersOutput) SetNextToken(v string) *ListEntityRecognizersOutput {
14833	s.NextToken = &v
14834	return s
14835}
14836
14837type ListEventsDetectionJobsInput struct {
14838	_ struct{} `type:"structure"`
14839
14840	// Filters the jobs that are returned. You can filter jobs on their name, status,
14841	// or the date and time that they were submitted. You can only set one filter
14842	// at a time.
14843	Filter *EventsDetectionJobFilter `type:"structure"`
14844
14845	// The maximum number of results to return in each page.
14846	MaxResults *int64 `min:"1" type:"integer"`
14847
14848	// Identifies the next page of results to return.
14849	NextToken *string `min:"1" type:"string"`
14850}
14851
14852// String returns the string representation.
14853//
14854// API parameter values that are decorated as "sensitive" in the API will not
14855// be included in the string output. The member name will be present, but the
14856// value will be replaced with "sensitive".
14857func (s ListEventsDetectionJobsInput) String() string {
14858	return awsutil.Prettify(s)
14859}
14860
14861// GoString returns the string representation.
14862//
14863// API parameter values that are decorated as "sensitive" in the API will not
14864// be included in the string output. The member name will be present, but the
14865// value will be replaced with "sensitive".
14866func (s ListEventsDetectionJobsInput) GoString() string {
14867	return s.String()
14868}
14869
14870// Validate inspects the fields of the type to determine if they are valid.
14871func (s *ListEventsDetectionJobsInput) Validate() error {
14872	invalidParams := request.ErrInvalidParams{Context: "ListEventsDetectionJobsInput"}
14873	if s.MaxResults != nil && *s.MaxResults < 1 {
14874		invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1))
14875	}
14876	if s.NextToken != nil && len(*s.NextToken) < 1 {
14877		invalidParams.Add(request.NewErrParamMinLen("NextToken", 1))
14878	}
14879	if s.Filter != nil {
14880		if err := s.Filter.Validate(); err != nil {
14881			invalidParams.AddNested("Filter", err.(request.ErrInvalidParams))
14882		}
14883	}
14884
14885	if invalidParams.Len() > 0 {
14886		return invalidParams
14887	}
14888	return nil
14889}
14890
14891// SetFilter sets the Filter field's value.
14892func (s *ListEventsDetectionJobsInput) SetFilter(v *EventsDetectionJobFilter) *ListEventsDetectionJobsInput {
14893	s.Filter = v
14894	return s
14895}
14896
14897// SetMaxResults sets the MaxResults field's value.
14898func (s *ListEventsDetectionJobsInput) SetMaxResults(v int64) *ListEventsDetectionJobsInput {
14899	s.MaxResults = &v
14900	return s
14901}
14902
14903// SetNextToken sets the NextToken field's value.
14904func (s *ListEventsDetectionJobsInput) SetNextToken(v string) *ListEventsDetectionJobsInput {
14905	s.NextToken = &v
14906	return s
14907}
14908
14909type ListEventsDetectionJobsOutput struct {
14910	_ struct{} `type:"structure"`
14911
14912	// A list containing the properties of each job that is returned.
14913	EventsDetectionJobPropertiesList []*EventsDetectionJobProperties `type:"list"`
14914
14915	// Identifies the next page of results to return.
14916	NextToken *string `min:"1" type:"string"`
14917}
14918
14919// String returns the string representation.
14920//
14921// API parameter values that are decorated as "sensitive" in the API will not
14922// be included in the string output. The member name will be present, but the
14923// value will be replaced with "sensitive".
14924func (s ListEventsDetectionJobsOutput) String() string {
14925	return awsutil.Prettify(s)
14926}
14927
14928// GoString returns the string representation.
14929//
14930// API parameter values that are decorated as "sensitive" in the API will not
14931// be included in the string output. The member name will be present, but the
14932// value will be replaced with "sensitive".
14933func (s ListEventsDetectionJobsOutput) GoString() string {
14934	return s.String()
14935}
14936
14937// SetEventsDetectionJobPropertiesList sets the EventsDetectionJobPropertiesList field's value.
14938func (s *ListEventsDetectionJobsOutput) SetEventsDetectionJobPropertiesList(v []*EventsDetectionJobProperties) *ListEventsDetectionJobsOutput {
14939	s.EventsDetectionJobPropertiesList = v
14940	return s
14941}
14942
14943// SetNextToken sets the NextToken field's value.
14944func (s *ListEventsDetectionJobsOutput) SetNextToken(v string) *ListEventsDetectionJobsOutput {
14945	s.NextToken = &v
14946	return s
14947}
14948
14949type ListKeyPhrasesDetectionJobsInput struct {
14950	_ struct{} `type:"structure"`
14951
14952	// Filters the jobs that are returned. You can filter jobs on their name, status,
14953	// or the date and time that they were submitted. You can only set one filter
14954	// at a time.
14955	Filter *KeyPhrasesDetectionJobFilter `type:"structure"`
14956
14957	// The maximum number of results to return in each page. The default is 100.
14958	MaxResults *int64 `min:"1" type:"integer"`
14959
14960	// Identifies the next page of results to return.
14961	NextToken *string `min:"1" type:"string"`
14962}
14963
14964// String returns the string representation.
14965//
14966// API parameter values that are decorated as "sensitive" in the API will not
14967// be included in the string output. The member name will be present, but the
14968// value will be replaced with "sensitive".
14969func (s ListKeyPhrasesDetectionJobsInput) String() string {
14970	return awsutil.Prettify(s)
14971}
14972
14973// GoString returns the string representation.
14974//
14975// API parameter values that are decorated as "sensitive" in the API will not
14976// be included in the string output. The member name will be present, but the
14977// value will be replaced with "sensitive".
14978func (s ListKeyPhrasesDetectionJobsInput) GoString() string {
14979	return s.String()
14980}
14981
14982// Validate inspects the fields of the type to determine if they are valid.
14983func (s *ListKeyPhrasesDetectionJobsInput) Validate() error {
14984	invalidParams := request.ErrInvalidParams{Context: "ListKeyPhrasesDetectionJobsInput"}
14985	if s.MaxResults != nil && *s.MaxResults < 1 {
14986		invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1))
14987	}
14988	if s.NextToken != nil && len(*s.NextToken) < 1 {
14989		invalidParams.Add(request.NewErrParamMinLen("NextToken", 1))
14990	}
14991	if s.Filter != nil {
14992		if err := s.Filter.Validate(); err != nil {
14993			invalidParams.AddNested("Filter", err.(request.ErrInvalidParams))
14994		}
14995	}
14996
14997	if invalidParams.Len() > 0 {
14998		return invalidParams
14999	}
15000	return nil
15001}
15002
15003// SetFilter sets the Filter field's value.
15004func (s *ListKeyPhrasesDetectionJobsInput) SetFilter(v *KeyPhrasesDetectionJobFilter) *ListKeyPhrasesDetectionJobsInput {
15005	s.Filter = v
15006	return s
15007}
15008
15009// SetMaxResults sets the MaxResults field's value.
15010func (s *ListKeyPhrasesDetectionJobsInput) SetMaxResults(v int64) *ListKeyPhrasesDetectionJobsInput {
15011	s.MaxResults = &v
15012	return s
15013}
15014
15015// SetNextToken sets the NextToken field's value.
15016func (s *ListKeyPhrasesDetectionJobsInput) SetNextToken(v string) *ListKeyPhrasesDetectionJobsInput {
15017	s.NextToken = &v
15018	return s
15019}
15020
15021type ListKeyPhrasesDetectionJobsOutput struct {
15022	_ struct{} `type:"structure"`
15023
15024	// A list containing the properties of each job that is returned.
15025	KeyPhrasesDetectionJobPropertiesList []*KeyPhrasesDetectionJobProperties `type:"list"`
15026
15027	// Identifies the next page of results to return.
15028	NextToken *string `min:"1" type:"string"`
15029}
15030
15031// String returns the string representation.
15032//
15033// API parameter values that are decorated as "sensitive" in the API will not
15034// be included in the string output. The member name will be present, but the
15035// value will be replaced with "sensitive".
15036func (s ListKeyPhrasesDetectionJobsOutput) String() string {
15037	return awsutil.Prettify(s)
15038}
15039
15040// GoString returns the string representation.
15041//
15042// API parameter values that are decorated as "sensitive" in the API will not
15043// be included in the string output. The member name will be present, but the
15044// value will be replaced with "sensitive".
15045func (s ListKeyPhrasesDetectionJobsOutput) GoString() string {
15046	return s.String()
15047}
15048
15049// SetKeyPhrasesDetectionJobPropertiesList sets the KeyPhrasesDetectionJobPropertiesList field's value.
15050func (s *ListKeyPhrasesDetectionJobsOutput) SetKeyPhrasesDetectionJobPropertiesList(v []*KeyPhrasesDetectionJobProperties) *ListKeyPhrasesDetectionJobsOutput {
15051	s.KeyPhrasesDetectionJobPropertiesList = v
15052	return s
15053}
15054
15055// SetNextToken sets the NextToken field's value.
15056func (s *ListKeyPhrasesDetectionJobsOutput) SetNextToken(v string) *ListKeyPhrasesDetectionJobsOutput {
15057	s.NextToken = &v
15058	return s
15059}
15060
15061type ListPiiEntitiesDetectionJobsInput struct {
15062	_ struct{} `type:"structure"`
15063
15064	// Filters the jobs that are returned. You can filter jobs on their name, status,
15065	// or the date and time that they were submitted. You can only set one filter
15066	// at a time.
15067	Filter *PiiEntitiesDetectionJobFilter `type:"structure"`
15068
15069	// The maximum number of results to return in each page.
15070	MaxResults *int64 `min:"1" type:"integer"`
15071
15072	// Identifies the next page of results to return.
15073	NextToken *string `min:"1" type:"string"`
15074}
15075
15076// String returns the string representation.
15077//
15078// API parameter values that are decorated as "sensitive" in the API will not
15079// be included in the string output. The member name will be present, but the
15080// value will be replaced with "sensitive".
15081func (s ListPiiEntitiesDetectionJobsInput) String() string {
15082	return awsutil.Prettify(s)
15083}
15084
15085// GoString returns the string representation.
15086//
15087// API parameter values that are decorated as "sensitive" in the API will not
15088// be included in the string output. The member name will be present, but the
15089// value will be replaced with "sensitive".
15090func (s ListPiiEntitiesDetectionJobsInput) GoString() string {
15091	return s.String()
15092}
15093
15094// Validate inspects the fields of the type to determine if they are valid.
15095func (s *ListPiiEntitiesDetectionJobsInput) Validate() error {
15096	invalidParams := request.ErrInvalidParams{Context: "ListPiiEntitiesDetectionJobsInput"}
15097	if s.MaxResults != nil && *s.MaxResults < 1 {
15098		invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1))
15099	}
15100	if s.NextToken != nil && len(*s.NextToken) < 1 {
15101		invalidParams.Add(request.NewErrParamMinLen("NextToken", 1))
15102	}
15103	if s.Filter != nil {
15104		if err := s.Filter.Validate(); err != nil {
15105			invalidParams.AddNested("Filter", err.(request.ErrInvalidParams))
15106		}
15107	}
15108
15109	if invalidParams.Len() > 0 {
15110		return invalidParams
15111	}
15112	return nil
15113}
15114
15115// SetFilter sets the Filter field's value.
15116func (s *ListPiiEntitiesDetectionJobsInput) SetFilter(v *PiiEntitiesDetectionJobFilter) *ListPiiEntitiesDetectionJobsInput {
15117	s.Filter = v
15118	return s
15119}
15120
15121// SetMaxResults sets the MaxResults field's value.
15122func (s *ListPiiEntitiesDetectionJobsInput) SetMaxResults(v int64) *ListPiiEntitiesDetectionJobsInput {
15123	s.MaxResults = &v
15124	return s
15125}
15126
15127// SetNextToken sets the NextToken field's value.
15128func (s *ListPiiEntitiesDetectionJobsInput) SetNextToken(v string) *ListPiiEntitiesDetectionJobsInput {
15129	s.NextToken = &v
15130	return s
15131}
15132
15133type ListPiiEntitiesDetectionJobsOutput struct {
15134	_ struct{} `type:"structure"`
15135
15136	// Identifies the next page of results to return.
15137	NextToken *string `min:"1" type:"string"`
15138
15139	// A list containing the properties of each job that is returned.
15140	PiiEntitiesDetectionJobPropertiesList []*PiiEntitiesDetectionJobProperties `type:"list"`
15141}
15142
15143// String returns the string representation.
15144//
15145// API parameter values that are decorated as "sensitive" in the API will not
15146// be included in the string output. The member name will be present, but the
15147// value will be replaced with "sensitive".
15148func (s ListPiiEntitiesDetectionJobsOutput) String() string {
15149	return awsutil.Prettify(s)
15150}
15151
15152// GoString returns the string representation.
15153//
15154// API parameter values that are decorated as "sensitive" in the API will not
15155// be included in the string output. The member name will be present, but the
15156// value will be replaced with "sensitive".
15157func (s ListPiiEntitiesDetectionJobsOutput) GoString() string {
15158	return s.String()
15159}
15160
15161// SetNextToken sets the NextToken field's value.
15162func (s *ListPiiEntitiesDetectionJobsOutput) SetNextToken(v string) *ListPiiEntitiesDetectionJobsOutput {
15163	s.NextToken = &v
15164	return s
15165}
15166
15167// SetPiiEntitiesDetectionJobPropertiesList sets the PiiEntitiesDetectionJobPropertiesList field's value.
15168func (s *ListPiiEntitiesDetectionJobsOutput) SetPiiEntitiesDetectionJobPropertiesList(v []*PiiEntitiesDetectionJobProperties) *ListPiiEntitiesDetectionJobsOutput {
15169	s.PiiEntitiesDetectionJobPropertiesList = v
15170	return s
15171}
15172
15173type ListSentimentDetectionJobsInput struct {
15174	_ struct{} `type:"structure"`
15175
15176	// Filters the jobs that are returned. You can filter jobs on their name, status,
15177	// or the date and time that they were submitted. You can only set one filter
15178	// at a time.
15179	Filter *SentimentDetectionJobFilter `type:"structure"`
15180
15181	// The maximum number of results to return in each page. The default is 100.
15182	MaxResults *int64 `min:"1" type:"integer"`
15183
15184	// Identifies the next page of results to return.
15185	NextToken *string `min:"1" type:"string"`
15186}
15187
15188// String returns the string representation.
15189//
15190// API parameter values that are decorated as "sensitive" in the API will not
15191// be included in the string output. The member name will be present, but the
15192// value will be replaced with "sensitive".
15193func (s ListSentimentDetectionJobsInput) String() string {
15194	return awsutil.Prettify(s)
15195}
15196
15197// GoString returns the string representation.
15198//
15199// API parameter values that are decorated as "sensitive" in the API will not
15200// be included in the string output. The member name will be present, but the
15201// value will be replaced with "sensitive".
15202func (s ListSentimentDetectionJobsInput) GoString() string {
15203	return s.String()
15204}
15205
15206// Validate inspects the fields of the type to determine if they are valid.
15207func (s *ListSentimentDetectionJobsInput) Validate() error {
15208	invalidParams := request.ErrInvalidParams{Context: "ListSentimentDetectionJobsInput"}
15209	if s.MaxResults != nil && *s.MaxResults < 1 {
15210		invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1))
15211	}
15212	if s.NextToken != nil && len(*s.NextToken) < 1 {
15213		invalidParams.Add(request.NewErrParamMinLen("NextToken", 1))
15214	}
15215	if s.Filter != nil {
15216		if err := s.Filter.Validate(); err != nil {
15217			invalidParams.AddNested("Filter", err.(request.ErrInvalidParams))
15218		}
15219	}
15220
15221	if invalidParams.Len() > 0 {
15222		return invalidParams
15223	}
15224	return nil
15225}
15226
15227// SetFilter sets the Filter field's value.
15228func (s *ListSentimentDetectionJobsInput) SetFilter(v *SentimentDetectionJobFilter) *ListSentimentDetectionJobsInput {
15229	s.Filter = v
15230	return s
15231}
15232
15233// SetMaxResults sets the MaxResults field's value.
15234func (s *ListSentimentDetectionJobsInput) SetMaxResults(v int64) *ListSentimentDetectionJobsInput {
15235	s.MaxResults = &v
15236	return s
15237}
15238
15239// SetNextToken sets the NextToken field's value.
15240func (s *ListSentimentDetectionJobsInput) SetNextToken(v string) *ListSentimentDetectionJobsInput {
15241	s.NextToken = &v
15242	return s
15243}
15244
15245type ListSentimentDetectionJobsOutput struct {
15246	_ struct{} `type:"structure"`
15247
15248	// Identifies the next page of results to return.
15249	NextToken *string `min:"1" type:"string"`
15250
15251	// A list containing the properties of each job that is returned.
15252	SentimentDetectionJobPropertiesList []*SentimentDetectionJobProperties `type:"list"`
15253}
15254
15255// String returns the string representation.
15256//
15257// API parameter values that are decorated as "sensitive" in the API will not
15258// be included in the string output. The member name will be present, but the
15259// value will be replaced with "sensitive".
15260func (s ListSentimentDetectionJobsOutput) String() string {
15261	return awsutil.Prettify(s)
15262}
15263
15264// GoString returns the string representation.
15265//
15266// API parameter values that are decorated as "sensitive" in the API will not
15267// be included in the string output. The member name will be present, but the
15268// value will be replaced with "sensitive".
15269func (s ListSentimentDetectionJobsOutput) GoString() string {
15270	return s.String()
15271}
15272
15273// SetNextToken sets the NextToken field's value.
15274func (s *ListSentimentDetectionJobsOutput) SetNextToken(v string) *ListSentimentDetectionJobsOutput {
15275	s.NextToken = &v
15276	return s
15277}
15278
15279// SetSentimentDetectionJobPropertiesList sets the SentimentDetectionJobPropertiesList field's value.
15280func (s *ListSentimentDetectionJobsOutput) SetSentimentDetectionJobPropertiesList(v []*SentimentDetectionJobProperties) *ListSentimentDetectionJobsOutput {
15281	s.SentimentDetectionJobPropertiesList = v
15282	return s
15283}
15284
15285type ListTagsForResourceInput struct {
15286	_ struct{} `type:"structure"`
15287
15288	// The Amazon Resource Name (ARN) of the given Amazon Comprehend resource you
15289	// are querying.
15290	//
15291	// ResourceArn is a required field
15292	ResourceArn *string `type:"string" required:"true"`
15293}
15294
15295// String returns the string representation.
15296//
15297// API parameter values that are decorated as "sensitive" in the API will not
15298// be included in the string output. The member name will be present, but the
15299// value will be replaced with "sensitive".
15300func (s ListTagsForResourceInput) String() string {
15301	return awsutil.Prettify(s)
15302}
15303
15304// GoString returns the string representation.
15305//
15306// API parameter values that are decorated as "sensitive" in the API will not
15307// be included in the string output. The member name will be present, but the
15308// value will be replaced with "sensitive".
15309func (s ListTagsForResourceInput) GoString() string {
15310	return s.String()
15311}
15312
15313// Validate inspects the fields of the type to determine if they are valid.
15314func (s *ListTagsForResourceInput) Validate() error {
15315	invalidParams := request.ErrInvalidParams{Context: "ListTagsForResourceInput"}
15316	if s.ResourceArn == nil {
15317		invalidParams.Add(request.NewErrParamRequired("ResourceArn"))
15318	}
15319
15320	if invalidParams.Len() > 0 {
15321		return invalidParams
15322	}
15323	return nil
15324}
15325
15326// SetResourceArn sets the ResourceArn field's value.
15327func (s *ListTagsForResourceInput) SetResourceArn(v string) *ListTagsForResourceInput {
15328	s.ResourceArn = &v
15329	return s
15330}
15331
15332type ListTagsForResourceOutput struct {
15333	_ struct{} `type:"structure"`
15334
15335	// The Amazon Resource Name (ARN) of the given Amazon Comprehend resource you
15336	// are querying.
15337	ResourceArn *string `type:"string"`
15338
15339	// Tags associated with the Amazon Comprehend resource being queried. A tag
15340	// is a key-value pair that adds as a metadata to a resource used by Amazon
15341	// Comprehend. For example, a tag with "Sales" as the key might be added to
15342	// a resource to indicate its use by the sales department.
15343	Tags []*Tag `type:"list"`
15344}
15345
15346// String returns the string representation.
15347//
15348// API parameter values that are decorated as "sensitive" in the API will not
15349// be included in the string output. The member name will be present, but the
15350// value will be replaced with "sensitive".
15351func (s ListTagsForResourceOutput) String() string {
15352	return awsutil.Prettify(s)
15353}
15354
15355// GoString returns the string representation.
15356//
15357// API parameter values that are decorated as "sensitive" in the API will not
15358// be included in the string output. The member name will be present, but the
15359// value will be replaced with "sensitive".
15360func (s ListTagsForResourceOutput) GoString() string {
15361	return s.String()
15362}
15363
15364// SetResourceArn sets the ResourceArn field's value.
15365func (s *ListTagsForResourceOutput) SetResourceArn(v string) *ListTagsForResourceOutput {
15366	s.ResourceArn = &v
15367	return s
15368}
15369
15370// SetTags sets the Tags field's value.
15371func (s *ListTagsForResourceOutput) SetTags(v []*Tag) *ListTagsForResourceOutput {
15372	s.Tags = v
15373	return s
15374}
15375
15376type ListTopicsDetectionJobsInput struct {
15377	_ struct{} `type:"structure"`
15378
15379	// Filters the jobs that are returned. Jobs can be filtered on their name, status,
15380	// or the date and time that they were submitted. You can set only one filter
15381	// at a time.
15382	Filter *TopicsDetectionJobFilter `type:"structure"`
15383
15384	// The maximum number of results to return in each page. The default is 100.
15385	MaxResults *int64 `min:"1" type:"integer"`
15386
15387	// Identifies the next page of results to return.
15388	NextToken *string `min:"1" type:"string"`
15389}
15390
15391// String returns the string representation.
15392//
15393// API parameter values that are decorated as "sensitive" in the API will not
15394// be included in the string output. The member name will be present, but the
15395// value will be replaced with "sensitive".
15396func (s ListTopicsDetectionJobsInput) String() string {
15397	return awsutil.Prettify(s)
15398}
15399
15400// GoString returns the string representation.
15401//
15402// API parameter values that are decorated as "sensitive" in the API will not
15403// be included in the string output. The member name will be present, but the
15404// value will be replaced with "sensitive".
15405func (s ListTopicsDetectionJobsInput) GoString() string {
15406	return s.String()
15407}
15408
15409// Validate inspects the fields of the type to determine if they are valid.
15410func (s *ListTopicsDetectionJobsInput) Validate() error {
15411	invalidParams := request.ErrInvalidParams{Context: "ListTopicsDetectionJobsInput"}
15412	if s.MaxResults != nil && *s.MaxResults < 1 {
15413		invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1))
15414	}
15415	if s.NextToken != nil && len(*s.NextToken) < 1 {
15416		invalidParams.Add(request.NewErrParamMinLen("NextToken", 1))
15417	}
15418	if s.Filter != nil {
15419		if err := s.Filter.Validate(); err != nil {
15420			invalidParams.AddNested("Filter", err.(request.ErrInvalidParams))
15421		}
15422	}
15423
15424	if invalidParams.Len() > 0 {
15425		return invalidParams
15426	}
15427	return nil
15428}
15429
15430// SetFilter sets the Filter field's value.
15431func (s *ListTopicsDetectionJobsInput) SetFilter(v *TopicsDetectionJobFilter) *ListTopicsDetectionJobsInput {
15432	s.Filter = v
15433	return s
15434}
15435
15436// SetMaxResults sets the MaxResults field's value.
15437func (s *ListTopicsDetectionJobsInput) SetMaxResults(v int64) *ListTopicsDetectionJobsInput {
15438	s.MaxResults = &v
15439	return s
15440}
15441
15442// SetNextToken sets the NextToken field's value.
15443func (s *ListTopicsDetectionJobsInput) SetNextToken(v string) *ListTopicsDetectionJobsInput {
15444	s.NextToken = &v
15445	return s
15446}
15447
15448type ListTopicsDetectionJobsOutput struct {
15449	_ struct{} `type:"structure"`
15450
15451	// Identifies the next page of results to return.
15452	NextToken *string `min:"1" type:"string"`
15453
15454	// A list containing the properties of each job that is returned.
15455	TopicsDetectionJobPropertiesList []*TopicsDetectionJobProperties `type:"list"`
15456}
15457
15458// String returns the string representation.
15459//
15460// API parameter values that are decorated as "sensitive" in the API will not
15461// be included in the string output. The member name will be present, but the
15462// value will be replaced with "sensitive".
15463func (s ListTopicsDetectionJobsOutput) String() string {
15464	return awsutil.Prettify(s)
15465}
15466
15467// GoString returns the string representation.
15468//
15469// API parameter values that are decorated as "sensitive" in the API will not
15470// be included in the string output. The member name will be present, but the
15471// value will be replaced with "sensitive".
15472func (s ListTopicsDetectionJobsOutput) GoString() string {
15473	return s.String()
15474}
15475
15476// SetNextToken sets the NextToken field's value.
15477func (s *ListTopicsDetectionJobsOutput) SetNextToken(v string) *ListTopicsDetectionJobsOutput {
15478	s.NextToken = &v
15479	return s
15480}
15481
15482// SetTopicsDetectionJobPropertiesList sets the TopicsDetectionJobPropertiesList field's value.
15483func (s *ListTopicsDetectionJobsOutput) SetTopicsDetectionJobPropertiesList(v []*TopicsDetectionJobProperties) *ListTopicsDetectionJobsOutput {
15484	s.TopicsDetectionJobPropertiesList = v
15485	return s
15486}
15487
15488// Provides configuration parameters for the output of topic detection jobs.
15489type OutputDataConfig struct {
15490	_ struct{} `type:"structure"`
15491
15492	// ID for the AWS Key Management Service (KMS) key that Amazon Comprehend uses
15493	// to encrypt the output results from an analysis job. The KmsKeyId can be one
15494	// of the following formats:
15495	//
15496	//    * KMS Key ID: "1234abcd-12ab-34cd-56ef-1234567890ab"
15497	//
15498	//    * Amazon Resource Name (ARN) of a KMS Key: "arn:aws:kms:us-west-2:111122223333:key/1234abcd-12ab-34cd-56ef-1234567890ab"
15499	//
15500	//    * KMS Key Alias: "alias/ExampleAlias"
15501	//
15502	//    * ARN of a KMS Key Alias: "arn:aws:kms:us-west-2:111122223333:alias/ExampleAlias"
15503	KmsKeyId *string `type:"string"`
15504
15505	// When you use the OutputDataConfig object with asynchronous operations, you
15506	// specify the Amazon S3 location where you want to write the output data. The
15507	// URI must be in the same region as the API endpoint that you are calling.
15508	// The location is used as the prefix for the actual location of the output
15509	// file.
15510	//
15511	// When the topic detection job is finished, the service creates an output file
15512	// in a directory specific to the job. The S3Uri field contains the location
15513	// of the output file, called output.tar.gz. It is a compressed archive that
15514	// contains the ouput of the operation.
15515	//
15516	// S3Uri is a required field
15517	S3Uri *string `type:"string" required:"true"`
15518}
15519
15520// String returns the string representation.
15521//
15522// API parameter values that are decorated as "sensitive" in the API will not
15523// be included in the string output. The member name will be present, but the
15524// value will be replaced with "sensitive".
15525func (s OutputDataConfig) String() string {
15526	return awsutil.Prettify(s)
15527}
15528
15529// GoString returns the string representation.
15530//
15531// API parameter values that are decorated as "sensitive" in the API will not
15532// be included in the string output. The member name will be present, but the
15533// value will be replaced with "sensitive".
15534func (s OutputDataConfig) GoString() string {
15535	return s.String()
15536}
15537
15538// Validate inspects the fields of the type to determine if they are valid.
15539func (s *OutputDataConfig) Validate() error {
15540	invalidParams := request.ErrInvalidParams{Context: "OutputDataConfig"}
15541	if s.S3Uri == nil {
15542		invalidParams.Add(request.NewErrParamRequired("S3Uri"))
15543	}
15544
15545	if invalidParams.Len() > 0 {
15546		return invalidParams
15547	}
15548	return nil
15549}
15550
15551// SetKmsKeyId sets the KmsKeyId field's value.
15552func (s *OutputDataConfig) SetKmsKeyId(v string) *OutputDataConfig {
15553	s.KmsKeyId = &v
15554	return s
15555}
15556
15557// SetS3Uri sets the S3Uri field's value.
15558func (s *OutputDataConfig) SetS3Uri(v string) *OutputDataConfig {
15559	s.S3Uri = &v
15560	return s
15561}
15562
15563// Identifies the part of speech represented by the token and gives the confidence
15564// that Amazon Comprehend has that the part of speech was correctly identified.
15565// For more information about the parts of speech that Amazon Comprehend can
15566// identify, see how-syntax.
15567type PartOfSpeechTag struct {
15568	_ struct{} `type:"structure"`
15569
15570	// The confidence that Amazon Comprehend has that the part of speech was correctly
15571	// identified.
15572	Score *float64 `type:"float"`
15573
15574	// Identifies the part of speech that the token represents.
15575	Tag *string `type:"string" enum:"PartOfSpeechTagType"`
15576}
15577
15578// String returns the string representation.
15579//
15580// API parameter values that are decorated as "sensitive" in the API will not
15581// be included in the string output. The member name will be present, but the
15582// value will be replaced with "sensitive".
15583func (s PartOfSpeechTag) String() string {
15584	return awsutil.Prettify(s)
15585}
15586
15587// GoString returns the string representation.
15588//
15589// API parameter values that are decorated as "sensitive" in the API will not
15590// be included in the string output. The member name will be present, but the
15591// value will be replaced with "sensitive".
15592func (s PartOfSpeechTag) GoString() string {
15593	return s.String()
15594}
15595
15596// SetScore sets the Score field's value.
15597func (s *PartOfSpeechTag) SetScore(v float64) *PartOfSpeechTag {
15598	s.Score = &v
15599	return s
15600}
15601
15602// SetTag sets the Tag field's value.
15603func (s *PartOfSpeechTag) SetTag(v string) *PartOfSpeechTag {
15604	s.Tag = &v
15605	return s
15606}
15607
15608// Provides information for filtering a list of PII entity detection jobs.
15609type PiiEntitiesDetectionJobFilter struct {
15610	_ struct{} `type:"structure"`
15611
15612	// Filters on the name of the job.
15613	JobName *string `min:"1" type:"string"`
15614
15615	// Filters the list of jobs based on job status. Returns only jobs with the
15616	// specified status.
15617	JobStatus *string `type:"string" enum:"JobStatus"`
15618
15619	// Filters the list of jobs based on the time that the job was submitted for
15620	// processing. Returns only jobs submitted after the specified time. Jobs are
15621	// returned in descending order, newest to oldest.
15622	SubmitTimeAfter *time.Time `type:"timestamp"`
15623
15624	// Filters the list of jobs based on the time that the job was submitted for
15625	// processing. Returns only jobs submitted before the specified time. Jobs are
15626	// returned in ascending order, oldest to newest.
15627	SubmitTimeBefore *time.Time `type:"timestamp"`
15628}
15629
15630// String returns the string representation.
15631//
15632// API parameter values that are decorated as "sensitive" in the API will not
15633// be included in the string output. The member name will be present, but the
15634// value will be replaced with "sensitive".
15635func (s PiiEntitiesDetectionJobFilter) String() string {
15636	return awsutil.Prettify(s)
15637}
15638
15639// GoString returns the string representation.
15640//
15641// API parameter values that are decorated as "sensitive" in the API will not
15642// be included in the string output. The member name will be present, but the
15643// value will be replaced with "sensitive".
15644func (s PiiEntitiesDetectionJobFilter) GoString() string {
15645	return s.String()
15646}
15647
15648// Validate inspects the fields of the type to determine if they are valid.
15649func (s *PiiEntitiesDetectionJobFilter) Validate() error {
15650	invalidParams := request.ErrInvalidParams{Context: "PiiEntitiesDetectionJobFilter"}
15651	if s.JobName != nil && len(*s.JobName) < 1 {
15652		invalidParams.Add(request.NewErrParamMinLen("JobName", 1))
15653	}
15654
15655	if invalidParams.Len() > 0 {
15656		return invalidParams
15657	}
15658	return nil
15659}
15660
15661// SetJobName sets the JobName field's value.
15662func (s *PiiEntitiesDetectionJobFilter) SetJobName(v string) *PiiEntitiesDetectionJobFilter {
15663	s.JobName = &v
15664	return s
15665}
15666
15667// SetJobStatus sets the JobStatus field's value.
15668func (s *PiiEntitiesDetectionJobFilter) SetJobStatus(v string) *PiiEntitiesDetectionJobFilter {
15669	s.JobStatus = &v
15670	return s
15671}
15672
15673// SetSubmitTimeAfter sets the SubmitTimeAfter field's value.
15674func (s *PiiEntitiesDetectionJobFilter) SetSubmitTimeAfter(v time.Time) *PiiEntitiesDetectionJobFilter {
15675	s.SubmitTimeAfter = &v
15676	return s
15677}
15678
15679// SetSubmitTimeBefore sets the SubmitTimeBefore field's value.
15680func (s *PiiEntitiesDetectionJobFilter) SetSubmitTimeBefore(v time.Time) *PiiEntitiesDetectionJobFilter {
15681	s.SubmitTimeBefore = &v
15682	return s
15683}
15684
15685// Provides information about a PII entities detection job.
15686type PiiEntitiesDetectionJobProperties struct {
15687	_ struct{} `type:"structure"`
15688
15689	// The Amazon Resource Name (ARN) that gives Amazon Comprehend read access to
15690	// your input data.
15691	DataAccessRoleArn *string `min:"20" type:"string"`
15692
15693	// The time that the PII entities detection job completed.
15694	EndTime *time.Time `type:"timestamp"`
15695
15696	// The input properties for a PII entities detection job.
15697	InputDataConfig *InputDataConfig `type:"structure"`
15698
15699	// The Amazon Resource Name (ARN) of the PII entities detection job. It is a
15700	// unique, fully qualified identifier for the job. It includes the AWS account,
15701	// Region, and the job ID. The format of the ARN is as follows:
15702	//
15703	// arn:<partition>:comprehend:<region>:<account-id>:pii-entities-detection-job/<job-id>
15704	//
15705	// The following is an example job ARN:
15706	//
15707	// arn:aws:comprehend:us-west-2:111122223333:pii-entities-detection-job/1234abcd12ab34cd56ef1234567890ab
15708	JobArn *string `type:"string"`
15709
15710	// The identifier assigned to the PII entities detection job.
15711	JobId *string `min:"1" type:"string"`
15712
15713	// The name that you assigned the PII entities detection job.
15714	JobName *string `min:"1" type:"string"`
15715
15716	// The current status of the PII entities detection job. If the status is FAILED,
15717	// the Message field shows the reason for the failure.
15718	JobStatus *string `type:"string" enum:"JobStatus"`
15719
15720	// The language code of the input documents
15721	LanguageCode *string `type:"string" enum:"LanguageCode"`
15722
15723	// A description of the status of a job.
15724	Message *string `type:"string"`
15725
15726	// Specifies whether the output provides the locations (offsets) of PII entities
15727	// or a file in which PII entities are redacted.
15728	Mode *string `type:"string" enum:"PiiEntitiesDetectionMode"`
15729
15730	// The output data configuration that you supplied when you created the PII
15731	// entities detection job.
15732	OutputDataConfig *PiiOutputDataConfig `type:"structure"`
15733
15734	// Provides configuration parameters for PII entity redaction.
15735	//
15736	// This parameter is required if you set the Mode parameter to ONLY_REDACTION.
15737	// In that case, you must provide a RedactionConfig definition that includes
15738	// the PiiEntityTypes parameter.
15739	RedactionConfig *RedactionConfig `type:"structure"`
15740
15741	// The time that the PII entities detection job was submitted for processing.
15742	SubmitTime *time.Time `type:"timestamp"`
15743}
15744
15745// String returns the string representation.
15746//
15747// API parameter values that are decorated as "sensitive" in the API will not
15748// be included in the string output. The member name will be present, but the
15749// value will be replaced with "sensitive".
15750func (s PiiEntitiesDetectionJobProperties) String() string {
15751	return awsutil.Prettify(s)
15752}
15753
15754// GoString returns the string representation.
15755//
15756// API parameter values that are decorated as "sensitive" in the API will not
15757// be included in the string output. The member name will be present, but the
15758// value will be replaced with "sensitive".
15759func (s PiiEntitiesDetectionJobProperties) GoString() string {
15760	return s.String()
15761}
15762
15763// SetDataAccessRoleArn sets the DataAccessRoleArn field's value.
15764func (s *PiiEntitiesDetectionJobProperties) SetDataAccessRoleArn(v string) *PiiEntitiesDetectionJobProperties {
15765	s.DataAccessRoleArn = &v
15766	return s
15767}
15768
15769// SetEndTime sets the EndTime field's value.
15770func (s *PiiEntitiesDetectionJobProperties) SetEndTime(v time.Time) *PiiEntitiesDetectionJobProperties {
15771	s.EndTime = &v
15772	return s
15773}
15774
15775// SetInputDataConfig sets the InputDataConfig field's value.
15776func (s *PiiEntitiesDetectionJobProperties) SetInputDataConfig(v *InputDataConfig) *PiiEntitiesDetectionJobProperties {
15777	s.InputDataConfig = v
15778	return s
15779}
15780
15781// SetJobArn sets the JobArn field's value.
15782func (s *PiiEntitiesDetectionJobProperties) SetJobArn(v string) *PiiEntitiesDetectionJobProperties {
15783	s.JobArn = &v
15784	return s
15785}
15786
15787// SetJobId sets the JobId field's value.
15788func (s *PiiEntitiesDetectionJobProperties) SetJobId(v string) *PiiEntitiesDetectionJobProperties {
15789	s.JobId = &v
15790	return s
15791}
15792
15793// SetJobName sets the JobName field's value.
15794func (s *PiiEntitiesDetectionJobProperties) SetJobName(v string) *PiiEntitiesDetectionJobProperties {
15795	s.JobName = &v
15796	return s
15797}
15798
15799// SetJobStatus sets the JobStatus field's value.
15800func (s *PiiEntitiesDetectionJobProperties) SetJobStatus(v string) *PiiEntitiesDetectionJobProperties {
15801	s.JobStatus = &v
15802	return s
15803}
15804
15805// SetLanguageCode sets the LanguageCode field's value.
15806func (s *PiiEntitiesDetectionJobProperties) SetLanguageCode(v string) *PiiEntitiesDetectionJobProperties {
15807	s.LanguageCode = &v
15808	return s
15809}
15810
15811// SetMessage sets the Message field's value.
15812func (s *PiiEntitiesDetectionJobProperties) SetMessage(v string) *PiiEntitiesDetectionJobProperties {
15813	s.Message = &v
15814	return s
15815}
15816
15817// SetMode sets the Mode field's value.
15818func (s *PiiEntitiesDetectionJobProperties) SetMode(v string) *PiiEntitiesDetectionJobProperties {
15819	s.Mode = &v
15820	return s
15821}
15822
15823// SetOutputDataConfig sets the OutputDataConfig field's value.
15824func (s *PiiEntitiesDetectionJobProperties) SetOutputDataConfig(v *PiiOutputDataConfig) *PiiEntitiesDetectionJobProperties {
15825	s.OutputDataConfig = v
15826	return s
15827}
15828
15829// SetRedactionConfig sets the RedactionConfig field's value.
15830func (s *PiiEntitiesDetectionJobProperties) SetRedactionConfig(v *RedactionConfig) *PiiEntitiesDetectionJobProperties {
15831	s.RedactionConfig = v
15832	return s
15833}
15834
15835// SetSubmitTime sets the SubmitTime field's value.
15836func (s *PiiEntitiesDetectionJobProperties) SetSubmitTime(v time.Time) *PiiEntitiesDetectionJobProperties {
15837	s.SubmitTime = &v
15838	return s
15839}
15840
15841// Provides information about a PII entity.
15842type PiiEntity struct {
15843	_ struct{} `type:"structure"`
15844
15845	// A character offset in the input text that shows where the PII entity begins
15846	// (the first character is at position 0). The offset returns the position of
15847	// each UTF-8 code point in the string. A code point is the abstract character
15848	// from a particular graphical representation. For example, a multi-byte UTF-8
15849	// character maps to a single code point.
15850	BeginOffset *int64 `type:"integer"`
15851
15852	// A character offset in the input text that shows where the PII entity ends.
15853	// The offset returns the position of each UTF-8 code point in the string. A
15854	// code point is the abstract character from a particular graphical representation.
15855	// For example, a multi-byte UTF-8 character maps to a single code point.
15856	EndOffset *int64 `type:"integer"`
15857
15858	// The level of confidence that Amazon Comprehend has in the accuracy of the
15859	// detection.
15860	Score *float64 `type:"float"`
15861
15862	// The entity's type.
15863	Type *string `type:"string" enum:"PiiEntityType"`
15864}
15865
15866// String returns the string representation.
15867//
15868// API parameter values that are decorated as "sensitive" in the API will not
15869// be included in the string output. The member name will be present, but the
15870// value will be replaced with "sensitive".
15871func (s PiiEntity) String() string {
15872	return awsutil.Prettify(s)
15873}
15874
15875// GoString returns the string representation.
15876//
15877// API parameter values that are decorated as "sensitive" in the API will not
15878// be included in the string output. The member name will be present, but the
15879// value will be replaced with "sensitive".
15880func (s PiiEntity) GoString() string {
15881	return s.String()
15882}
15883
15884// SetBeginOffset sets the BeginOffset field's value.
15885func (s *PiiEntity) SetBeginOffset(v int64) *PiiEntity {
15886	s.BeginOffset = &v
15887	return s
15888}
15889
15890// SetEndOffset sets the EndOffset field's value.
15891func (s *PiiEntity) SetEndOffset(v int64) *PiiEntity {
15892	s.EndOffset = &v
15893	return s
15894}
15895
15896// SetScore sets the Score field's value.
15897func (s *PiiEntity) SetScore(v float64) *PiiEntity {
15898	s.Score = &v
15899	return s
15900}
15901
15902// SetType sets the Type field's value.
15903func (s *PiiEntity) SetType(v string) *PiiEntity {
15904	s.Type = &v
15905	return s
15906}
15907
15908// Provides configuration parameters for the output of PII entity detection
15909// jobs.
15910type PiiOutputDataConfig struct {
15911	_ struct{} `type:"structure"`
15912
15913	// ID for the AWS Key Management Service (KMS) key that Amazon Comprehend uses
15914	// to encrypt the output results from an analysis job.
15915	KmsKeyId *string `type:"string"`
15916
15917	// When you use the PiiOutputDataConfig object with asynchronous operations,
15918	// you specify the Amazon S3 location where you want to write the output data.
15919	//
15920	// S3Uri is a required field
15921	S3Uri *string `type:"string" required:"true"`
15922}
15923
15924// String returns the string representation.
15925//
15926// API parameter values that are decorated as "sensitive" in the API will not
15927// be included in the string output. The member name will be present, but the
15928// value will be replaced with "sensitive".
15929func (s PiiOutputDataConfig) String() string {
15930	return awsutil.Prettify(s)
15931}
15932
15933// GoString returns the string representation.
15934//
15935// API parameter values that are decorated as "sensitive" in the API will not
15936// be included in the string output. The member name will be present, but the
15937// value will be replaced with "sensitive".
15938func (s PiiOutputDataConfig) GoString() string {
15939	return s.String()
15940}
15941
15942// SetKmsKeyId sets the KmsKeyId field's value.
15943func (s *PiiOutputDataConfig) SetKmsKeyId(v string) *PiiOutputDataConfig {
15944	s.KmsKeyId = &v
15945	return s
15946}
15947
15948// SetS3Uri sets the S3Uri field's value.
15949func (s *PiiOutputDataConfig) SetS3Uri(v string) *PiiOutputDataConfig {
15950	s.S3Uri = &v
15951	return s
15952}
15953
15954// Provides configuration parameters for PII entity redaction.
15955type RedactionConfig struct {
15956	_ struct{} `type:"structure"`
15957
15958	// A character that replaces each character in the redacted PII entity.
15959	MaskCharacter *string `min:"1" type:"string"`
15960
15961	// Specifies whether the PII entity is redacted with the mask character or the
15962	// entity type.
15963	MaskMode *string `type:"string" enum:"PiiEntitiesDetectionMaskMode"`
15964
15965	// An array of the types of PII entities that Amazon Comprehend detects in the
15966	// input text for your request.
15967	PiiEntityTypes []*string `type:"list"`
15968}
15969
15970// String returns the string representation.
15971//
15972// API parameter values that are decorated as "sensitive" in the API will not
15973// be included in the string output. The member name will be present, but the
15974// value will be replaced with "sensitive".
15975func (s RedactionConfig) String() string {
15976	return awsutil.Prettify(s)
15977}
15978
15979// GoString returns the string representation.
15980//
15981// API parameter values that are decorated as "sensitive" in the API will not
15982// be included in the string output. The member name will be present, but the
15983// value will be replaced with "sensitive".
15984func (s RedactionConfig) GoString() string {
15985	return s.String()
15986}
15987
15988// Validate inspects the fields of the type to determine if they are valid.
15989func (s *RedactionConfig) Validate() error {
15990	invalidParams := request.ErrInvalidParams{Context: "RedactionConfig"}
15991	if s.MaskCharacter != nil && len(*s.MaskCharacter) < 1 {
15992		invalidParams.Add(request.NewErrParamMinLen("MaskCharacter", 1))
15993	}
15994
15995	if invalidParams.Len() > 0 {
15996		return invalidParams
15997	}
15998	return nil
15999}
16000
16001// SetMaskCharacter sets the MaskCharacter field's value.
16002func (s *RedactionConfig) SetMaskCharacter(v string) *RedactionConfig {
16003	s.MaskCharacter = &v
16004	return s
16005}
16006
16007// SetMaskMode sets the MaskMode field's value.
16008func (s *RedactionConfig) SetMaskMode(v string) *RedactionConfig {
16009	s.MaskMode = &v
16010	return s
16011}
16012
16013// SetPiiEntityTypes sets the PiiEntityTypes field's value.
16014func (s *RedactionConfig) SetPiiEntityTypes(v []*string) *RedactionConfig {
16015	s.PiiEntityTypes = v
16016	return s
16017}
16018
16019// The specified resource name is already in use. Use a different name and try
16020// your request again.
16021type ResourceInUseException struct {
16022	_            struct{}                  `type:"structure"`
16023	RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"`
16024
16025	Message_ *string `locationName:"Message" min:"1" type:"string"`
16026}
16027
16028// String returns the string representation.
16029//
16030// API parameter values that are decorated as "sensitive" in the API will not
16031// be included in the string output. The member name will be present, but the
16032// value will be replaced with "sensitive".
16033func (s ResourceInUseException) String() string {
16034	return awsutil.Prettify(s)
16035}
16036
16037// GoString returns the string representation.
16038//
16039// API parameter values that are decorated as "sensitive" in the API will not
16040// be included in the string output. The member name will be present, but the
16041// value will be replaced with "sensitive".
16042func (s ResourceInUseException) GoString() string {
16043	return s.String()
16044}
16045
16046func newErrorResourceInUseException(v protocol.ResponseMetadata) error {
16047	return &ResourceInUseException{
16048		RespMetadata: v,
16049	}
16050}
16051
16052// Code returns the exception type name.
16053func (s *ResourceInUseException) Code() string {
16054	return "ResourceInUseException"
16055}
16056
16057// Message returns the exception's message.
16058func (s *ResourceInUseException) Message() string {
16059	if s.Message_ != nil {
16060		return *s.Message_
16061	}
16062	return ""
16063}
16064
16065// OrigErr always returns nil, satisfies awserr.Error interface.
16066func (s *ResourceInUseException) OrigErr() error {
16067	return nil
16068}
16069
16070func (s *ResourceInUseException) Error() string {
16071	return fmt.Sprintf("%s: %s", s.Code(), s.Message())
16072}
16073
16074// Status code returns the HTTP status code for the request's response error.
16075func (s *ResourceInUseException) StatusCode() int {
16076	return s.RespMetadata.StatusCode
16077}
16078
16079// RequestID returns the service's response RequestID for request.
16080func (s *ResourceInUseException) RequestID() string {
16081	return s.RespMetadata.RequestID
16082}
16083
16084// The maximum number of resources per account has been exceeded. Review the
16085// resources, and then try your request again.
16086type ResourceLimitExceededException struct {
16087	_            struct{}                  `type:"structure"`
16088	RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"`
16089
16090	Message_ *string `locationName:"Message" min:"1" type:"string"`
16091}
16092
16093// String returns the string representation.
16094//
16095// API parameter values that are decorated as "sensitive" in the API will not
16096// be included in the string output. The member name will be present, but the
16097// value will be replaced with "sensitive".
16098func (s ResourceLimitExceededException) String() string {
16099	return awsutil.Prettify(s)
16100}
16101
16102// GoString returns the string representation.
16103//
16104// API parameter values that are decorated as "sensitive" in the API will not
16105// be included in the string output. The member name will be present, but the
16106// value will be replaced with "sensitive".
16107func (s ResourceLimitExceededException) GoString() string {
16108	return s.String()
16109}
16110
16111func newErrorResourceLimitExceededException(v protocol.ResponseMetadata) error {
16112	return &ResourceLimitExceededException{
16113		RespMetadata: v,
16114	}
16115}
16116
16117// Code returns the exception type name.
16118func (s *ResourceLimitExceededException) Code() string {
16119	return "ResourceLimitExceededException"
16120}
16121
16122// Message returns the exception's message.
16123func (s *ResourceLimitExceededException) Message() string {
16124	if s.Message_ != nil {
16125		return *s.Message_
16126	}
16127	return ""
16128}
16129
16130// OrigErr always returns nil, satisfies awserr.Error interface.
16131func (s *ResourceLimitExceededException) OrigErr() error {
16132	return nil
16133}
16134
16135func (s *ResourceLimitExceededException) Error() string {
16136	return fmt.Sprintf("%s: %s", s.Code(), s.Message())
16137}
16138
16139// Status code returns the HTTP status code for the request's response error.
16140func (s *ResourceLimitExceededException) StatusCode() int {
16141	return s.RespMetadata.StatusCode
16142}
16143
16144// RequestID returns the service's response RequestID for request.
16145func (s *ResourceLimitExceededException) RequestID() string {
16146	return s.RespMetadata.RequestID
16147}
16148
16149// The specified resource ARN was not found. Check the ARN and try your request
16150// again.
16151type ResourceNotFoundException struct {
16152	_            struct{}                  `type:"structure"`
16153	RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"`
16154
16155	Message_ *string `locationName:"Message" min:"1" type:"string"`
16156}
16157
16158// String returns the string representation.
16159//
16160// API parameter values that are decorated as "sensitive" in the API will not
16161// be included in the string output. The member name will be present, but the
16162// value will be replaced with "sensitive".
16163func (s ResourceNotFoundException) String() string {
16164	return awsutil.Prettify(s)
16165}
16166
16167// GoString returns the string representation.
16168//
16169// API parameter values that are decorated as "sensitive" in the API will not
16170// be included in the string output. The member name will be present, but the
16171// value will be replaced with "sensitive".
16172func (s ResourceNotFoundException) GoString() string {
16173	return s.String()
16174}
16175
16176func newErrorResourceNotFoundException(v protocol.ResponseMetadata) error {
16177	return &ResourceNotFoundException{
16178		RespMetadata: v,
16179	}
16180}
16181
16182// Code returns the exception type name.
16183func (s *ResourceNotFoundException) Code() string {
16184	return "ResourceNotFoundException"
16185}
16186
16187// Message returns the exception's message.
16188func (s *ResourceNotFoundException) Message() string {
16189	if s.Message_ != nil {
16190		return *s.Message_
16191	}
16192	return ""
16193}
16194
16195// OrigErr always returns nil, satisfies awserr.Error interface.
16196func (s *ResourceNotFoundException) OrigErr() error {
16197	return nil
16198}
16199
16200func (s *ResourceNotFoundException) Error() string {
16201	return fmt.Sprintf("%s: %s", s.Code(), s.Message())
16202}
16203
16204// Status code returns the HTTP status code for the request's response error.
16205func (s *ResourceNotFoundException) StatusCode() int {
16206	return s.RespMetadata.StatusCode
16207}
16208
16209// RequestID returns the service's response RequestID for request.
16210func (s *ResourceNotFoundException) RequestID() string {
16211	return s.RespMetadata.RequestID
16212}
16213
16214// The specified resource is not available. Check the resource and try your
16215// request again.
16216type ResourceUnavailableException struct {
16217	_            struct{}                  `type:"structure"`
16218	RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"`
16219
16220	Message_ *string `locationName:"Message" min:"1" type:"string"`
16221}
16222
16223// String returns the string representation.
16224//
16225// API parameter values that are decorated as "sensitive" in the API will not
16226// be included in the string output. The member name will be present, but the
16227// value will be replaced with "sensitive".
16228func (s ResourceUnavailableException) String() string {
16229	return awsutil.Prettify(s)
16230}
16231
16232// GoString returns the string representation.
16233//
16234// API parameter values that are decorated as "sensitive" in the API will not
16235// be included in the string output. The member name will be present, but the
16236// value will be replaced with "sensitive".
16237func (s ResourceUnavailableException) GoString() string {
16238	return s.String()
16239}
16240
16241func newErrorResourceUnavailableException(v protocol.ResponseMetadata) error {
16242	return &ResourceUnavailableException{
16243		RespMetadata: v,
16244	}
16245}
16246
16247// Code returns the exception type name.
16248func (s *ResourceUnavailableException) Code() string {
16249	return "ResourceUnavailableException"
16250}
16251
16252// Message returns the exception's message.
16253func (s *ResourceUnavailableException) Message() string {
16254	if s.Message_ != nil {
16255		return *s.Message_
16256	}
16257	return ""
16258}
16259
16260// OrigErr always returns nil, satisfies awserr.Error interface.
16261func (s *ResourceUnavailableException) OrigErr() error {
16262	return nil
16263}
16264
16265func (s *ResourceUnavailableException) Error() string {
16266	return fmt.Sprintf("%s: %s", s.Code(), s.Message())
16267}
16268
16269// Status code returns the HTTP status code for the request's response error.
16270func (s *ResourceUnavailableException) StatusCode() int {
16271	return s.RespMetadata.StatusCode
16272}
16273
16274// RequestID returns the service's response RequestID for request.
16275func (s *ResourceUnavailableException) RequestID() string {
16276	return s.RespMetadata.RequestID
16277}
16278
16279// Provides information for filtering a list of dominant language detection
16280// jobs. For more information, see the operation.
16281type SentimentDetectionJobFilter struct {
16282	_ struct{} `type:"structure"`
16283
16284	// Filters on the name of the job.
16285	JobName *string `min:"1" type:"string"`
16286
16287	// Filters the list of jobs based on job status. Returns only jobs with the
16288	// specified status.
16289	JobStatus *string `type:"string" enum:"JobStatus"`
16290
16291	// Filters the list of jobs based on the time that the job was submitted for
16292	// processing. Returns only jobs submitted after the specified time. Jobs are
16293	// returned in descending order, newest to oldest.
16294	SubmitTimeAfter *time.Time `type:"timestamp"`
16295
16296	// Filters the list of jobs based on the time that the job was submitted for
16297	// processing. Returns only jobs submitted before the specified time. Jobs are
16298	// returned in ascending order, oldest to newest.
16299	SubmitTimeBefore *time.Time `type:"timestamp"`
16300}
16301
16302// String returns the string representation.
16303//
16304// API parameter values that are decorated as "sensitive" in the API will not
16305// be included in the string output. The member name will be present, but the
16306// value will be replaced with "sensitive".
16307func (s SentimentDetectionJobFilter) String() string {
16308	return awsutil.Prettify(s)
16309}
16310
16311// GoString returns the string representation.
16312//
16313// API parameter values that are decorated as "sensitive" in the API will not
16314// be included in the string output. The member name will be present, but the
16315// value will be replaced with "sensitive".
16316func (s SentimentDetectionJobFilter) GoString() string {
16317	return s.String()
16318}
16319
16320// Validate inspects the fields of the type to determine if they are valid.
16321func (s *SentimentDetectionJobFilter) Validate() error {
16322	invalidParams := request.ErrInvalidParams{Context: "SentimentDetectionJobFilter"}
16323	if s.JobName != nil && len(*s.JobName) < 1 {
16324		invalidParams.Add(request.NewErrParamMinLen("JobName", 1))
16325	}
16326
16327	if invalidParams.Len() > 0 {
16328		return invalidParams
16329	}
16330	return nil
16331}
16332
16333// SetJobName sets the JobName field's value.
16334func (s *SentimentDetectionJobFilter) SetJobName(v string) *SentimentDetectionJobFilter {
16335	s.JobName = &v
16336	return s
16337}
16338
16339// SetJobStatus sets the JobStatus field's value.
16340func (s *SentimentDetectionJobFilter) SetJobStatus(v string) *SentimentDetectionJobFilter {
16341	s.JobStatus = &v
16342	return s
16343}
16344
16345// SetSubmitTimeAfter sets the SubmitTimeAfter field's value.
16346func (s *SentimentDetectionJobFilter) SetSubmitTimeAfter(v time.Time) *SentimentDetectionJobFilter {
16347	s.SubmitTimeAfter = &v
16348	return s
16349}
16350
16351// SetSubmitTimeBefore sets the SubmitTimeBefore field's value.
16352func (s *SentimentDetectionJobFilter) SetSubmitTimeBefore(v time.Time) *SentimentDetectionJobFilter {
16353	s.SubmitTimeBefore = &v
16354	return s
16355}
16356
16357// Provides information about a sentiment detection job.
16358type SentimentDetectionJobProperties struct {
16359	_ struct{} `type:"structure"`
16360
16361	// The Amazon Resource Name (ARN) that gives Amazon Comprehend read access to
16362	// your input data.
16363	DataAccessRoleArn *string `min:"20" type:"string"`
16364
16365	// The time that the sentiment detection job ended.
16366	EndTime *time.Time `type:"timestamp"`
16367
16368	// The input data configuration that you supplied when you created the sentiment
16369	// detection job.
16370	InputDataConfig *InputDataConfig `type:"structure"`
16371
16372	// The Amazon Resource Name (ARN) of the sentiment detection job. It is a unique,
16373	// fully qualified identifier for the job. It includes the AWS account, Region,
16374	// and the job ID. The format of the ARN is as follows:
16375	//
16376	// arn:<partition>:comprehend:<region>:<account-id>:sentiment-detection-job/<job-id>
16377	//
16378	// The following is an example job ARN:
16379	//
16380	// arn:aws:comprehend:us-west-2:111122223333:sentiment-detection-job/1234abcd12ab34cd56ef1234567890ab
16381	JobArn *string `type:"string"`
16382
16383	// The identifier assigned to the sentiment detection job.
16384	JobId *string `min:"1" type:"string"`
16385
16386	// The name that you assigned to the sentiment detection job
16387	JobName *string `min:"1" type:"string"`
16388
16389	// The current status of the sentiment detection job. If the status is FAILED,
16390	// the Messages field shows the reason for the failure.
16391	JobStatus *string `type:"string" enum:"JobStatus"`
16392
16393	// The language code of the input documents.
16394	LanguageCode *string `type:"string" enum:"LanguageCode"`
16395
16396	// A description of the status of a job.
16397	Message *string `type:"string"`
16398
16399	// The output data configuration that you supplied when you created the sentiment
16400	// detection job.
16401	OutputDataConfig *OutputDataConfig `type:"structure"`
16402
16403	// The time that the sentiment detection job was submitted for processing.
16404	SubmitTime *time.Time `type:"timestamp"`
16405
16406	// ID for the AWS Key Management Service (KMS) key that Amazon Comprehend uses
16407	// to encrypt data on the storage volume attached to the ML compute instance(s)
16408	// that process the analysis job. The VolumeKmsKeyId can be either of the following
16409	// formats:
16410	//
16411	//    * KMS Key ID: "1234abcd-12ab-34cd-56ef-1234567890ab"
16412	//
16413	//    * Amazon Resource Name (ARN) of a KMS Key: "arn:aws:kms:us-west-2:111122223333:key/1234abcd-12ab-34cd-56ef-1234567890ab"
16414	VolumeKmsKeyId *string `type:"string"`
16415
16416	// Configuration parameters for a private Virtual Private Cloud (VPC) containing
16417	// the resources you are using for your sentiment detection job. For more information,
16418	// see Amazon VPC (https://docs.aws.amazon.com/vpc/latest/userguide/what-is-amazon-vpc.html).
16419	VpcConfig *VpcConfig `type:"structure"`
16420}
16421
16422// String returns the string representation.
16423//
16424// API parameter values that are decorated as "sensitive" in the API will not
16425// be included in the string output. The member name will be present, but the
16426// value will be replaced with "sensitive".
16427func (s SentimentDetectionJobProperties) String() string {
16428	return awsutil.Prettify(s)
16429}
16430
16431// GoString returns the string representation.
16432//
16433// API parameter values that are decorated as "sensitive" in the API will not
16434// be included in the string output. The member name will be present, but the
16435// value will be replaced with "sensitive".
16436func (s SentimentDetectionJobProperties) GoString() string {
16437	return s.String()
16438}
16439
16440// SetDataAccessRoleArn sets the DataAccessRoleArn field's value.
16441func (s *SentimentDetectionJobProperties) SetDataAccessRoleArn(v string) *SentimentDetectionJobProperties {
16442	s.DataAccessRoleArn = &v
16443	return s
16444}
16445
16446// SetEndTime sets the EndTime field's value.
16447func (s *SentimentDetectionJobProperties) SetEndTime(v time.Time) *SentimentDetectionJobProperties {
16448	s.EndTime = &v
16449	return s
16450}
16451
16452// SetInputDataConfig sets the InputDataConfig field's value.
16453func (s *SentimentDetectionJobProperties) SetInputDataConfig(v *InputDataConfig) *SentimentDetectionJobProperties {
16454	s.InputDataConfig = v
16455	return s
16456}
16457
16458// SetJobArn sets the JobArn field's value.
16459func (s *SentimentDetectionJobProperties) SetJobArn(v string) *SentimentDetectionJobProperties {
16460	s.JobArn = &v
16461	return s
16462}
16463
16464// SetJobId sets the JobId field's value.
16465func (s *SentimentDetectionJobProperties) SetJobId(v string) *SentimentDetectionJobProperties {
16466	s.JobId = &v
16467	return s
16468}
16469
16470// SetJobName sets the JobName field's value.
16471func (s *SentimentDetectionJobProperties) SetJobName(v string) *SentimentDetectionJobProperties {
16472	s.JobName = &v
16473	return s
16474}
16475
16476// SetJobStatus sets the JobStatus field's value.
16477func (s *SentimentDetectionJobProperties) SetJobStatus(v string) *SentimentDetectionJobProperties {
16478	s.JobStatus = &v
16479	return s
16480}
16481
16482// SetLanguageCode sets the LanguageCode field's value.
16483func (s *SentimentDetectionJobProperties) SetLanguageCode(v string) *SentimentDetectionJobProperties {
16484	s.LanguageCode = &v
16485	return s
16486}
16487
16488// SetMessage sets the Message field's value.
16489func (s *SentimentDetectionJobProperties) SetMessage(v string) *SentimentDetectionJobProperties {
16490	s.Message = &v
16491	return s
16492}
16493
16494// SetOutputDataConfig sets the OutputDataConfig field's value.
16495func (s *SentimentDetectionJobProperties) SetOutputDataConfig(v *OutputDataConfig) *SentimentDetectionJobProperties {
16496	s.OutputDataConfig = v
16497	return s
16498}
16499
16500// SetSubmitTime sets the SubmitTime field's value.
16501func (s *SentimentDetectionJobProperties) SetSubmitTime(v time.Time) *SentimentDetectionJobProperties {
16502	s.SubmitTime = &v
16503	return s
16504}
16505
16506// SetVolumeKmsKeyId sets the VolumeKmsKeyId field's value.
16507func (s *SentimentDetectionJobProperties) SetVolumeKmsKeyId(v string) *SentimentDetectionJobProperties {
16508	s.VolumeKmsKeyId = &v
16509	return s
16510}
16511
16512// SetVpcConfig sets the VpcConfig field's value.
16513func (s *SentimentDetectionJobProperties) SetVpcConfig(v *VpcConfig) *SentimentDetectionJobProperties {
16514	s.VpcConfig = v
16515	return s
16516}
16517
16518// Describes the level of confidence that Amazon Comprehend has in the accuracy
16519// of its detection of sentiments.
16520type SentimentScore struct {
16521	_ struct{} `type:"structure"`
16522
16523	// The level of confidence that Amazon Comprehend has in the accuracy of its
16524	// detection of the MIXED sentiment.
16525	Mixed *float64 `type:"float"`
16526
16527	// The level of confidence that Amazon Comprehend has in the accuracy of its
16528	// detection of the NEGATIVE sentiment.
16529	Negative *float64 `type:"float"`
16530
16531	// The level of confidence that Amazon Comprehend has in the accuracy of its
16532	// detection of the NEUTRAL sentiment.
16533	Neutral *float64 `type:"float"`
16534
16535	// The level of confidence that Amazon Comprehend has in the accuracy of its
16536	// detection of the POSITIVE sentiment.
16537	Positive *float64 `type:"float"`
16538}
16539
16540// String returns the string representation.
16541//
16542// API parameter values that are decorated as "sensitive" in the API will not
16543// be included in the string output. The member name will be present, but the
16544// value will be replaced with "sensitive".
16545func (s SentimentScore) String() string {
16546	return awsutil.Prettify(s)
16547}
16548
16549// GoString returns the string representation.
16550//
16551// API parameter values that are decorated as "sensitive" in the API will not
16552// be included in the string output. The member name will be present, but the
16553// value will be replaced with "sensitive".
16554func (s SentimentScore) GoString() string {
16555	return s.String()
16556}
16557
16558// SetMixed sets the Mixed field's value.
16559func (s *SentimentScore) SetMixed(v float64) *SentimentScore {
16560	s.Mixed = &v
16561	return s
16562}
16563
16564// SetNegative sets the Negative field's value.
16565func (s *SentimentScore) SetNegative(v float64) *SentimentScore {
16566	s.Negative = &v
16567	return s
16568}
16569
16570// SetNeutral sets the Neutral field's value.
16571func (s *SentimentScore) SetNeutral(v float64) *SentimentScore {
16572	s.Neutral = &v
16573	return s
16574}
16575
16576// SetPositive sets the Positive field's value.
16577func (s *SentimentScore) SetPositive(v float64) *SentimentScore {
16578	s.Positive = &v
16579	return s
16580}
16581
16582type StartDocumentClassificationJobInput struct {
16583	_ struct{} `type:"structure"`
16584
16585	// A unique identifier for the request. If you do not set the client request
16586	// token, Amazon Comprehend generates one.
16587	ClientRequestToken *string `min:"1" type:"string" idempotencyToken:"true"`
16588
16589	// The Amazon Resource Name (ARN) of the AWS Identity and Access Management
16590	// (IAM) role that grants Amazon Comprehend read access to your input data.
16591	//
16592	// DataAccessRoleArn is a required field
16593	DataAccessRoleArn *string `min:"20" type:"string" required:"true"`
16594
16595	// The Amazon Resource Name (ARN) of the document classifier to use to process
16596	// the job.
16597	//
16598	// DocumentClassifierArn is a required field
16599	DocumentClassifierArn *string `type:"string" required:"true"`
16600
16601	// Specifies the format and location of the input data for the job.
16602	//
16603	// InputDataConfig is a required field
16604	InputDataConfig *InputDataConfig `type:"structure" required:"true"`
16605
16606	// The identifier of the job.
16607	JobName *string `min:"1" type:"string"`
16608
16609	// Specifies where to send the output files.
16610	//
16611	// OutputDataConfig is a required field
16612	OutputDataConfig *OutputDataConfig `type:"structure" required:"true"`
16613
16614	// Tags to be associated with the document classification job. A tag is a key-value
16615	// pair that adds metadata to a resource used by Amazon Comprehend. For example,
16616	// a tag with "Sales" as the key might be added to a resource to indicate its
16617	// use by the sales department.
16618	Tags []*Tag `type:"list"`
16619
16620	// ID for the AWS Key Management Service (KMS) key that Amazon Comprehend uses
16621	// to encrypt data on the storage volume attached to the ML compute instance(s)
16622	// that process the analysis job. The VolumeKmsKeyId can be either of the following
16623	// formats:
16624	//
16625	//    * KMS Key ID: "1234abcd-12ab-34cd-56ef-1234567890ab"
16626	//
16627	//    * Amazon Resource Name (ARN) of a KMS Key: "arn:aws:kms:us-west-2:111122223333:key/1234abcd-12ab-34cd-56ef-1234567890ab"
16628	VolumeKmsKeyId *string `type:"string"`
16629
16630	// Configuration parameters for an optional private Virtual Private Cloud (VPC)
16631	// containing the resources you are using for your document classification job.
16632	// For more information, see Amazon VPC (https://docs.aws.amazon.com/vpc/latest/userguide/what-is-amazon-vpc.html).
16633	VpcConfig *VpcConfig `type:"structure"`
16634}
16635
16636// String returns the string representation.
16637//
16638// API parameter values that are decorated as "sensitive" in the API will not
16639// be included in the string output. The member name will be present, but the
16640// value will be replaced with "sensitive".
16641func (s StartDocumentClassificationJobInput) String() string {
16642	return awsutil.Prettify(s)
16643}
16644
16645// GoString returns the string representation.
16646//
16647// API parameter values that are decorated as "sensitive" in the API will not
16648// be included in the string output. The member name will be present, but the
16649// value will be replaced with "sensitive".
16650func (s StartDocumentClassificationJobInput) GoString() string {
16651	return s.String()
16652}
16653
16654// Validate inspects the fields of the type to determine if they are valid.
16655func (s *StartDocumentClassificationJobInput) Validate() error {
16656	invalidParams := request.ErrInvalidParams{Context: "StartDocumentClassificationJobInput"}
16657	if s.ClientRequestToken != nil && len(*s.ClientRequestToken) < 1 {
16658		invalidParams.Add(request.NewErrParamMinLen("ClientRequestToken", 1))
16659	}
16660	if s.DataAccessRoleArn == nil {
16661		invalidParams.Add(request.NewErrParamRequired("DataAccessRoleArn"))
16662	}
16663	if s.DataAccessRoleArn != nil && len(*s.DataAccessRoleArn) < 20 {
16664		invalidParams.Add(request.NewErrParamMinLen("DataAccessRoleArn", 20))
16665	}
16666	if s.DocumentClassifierArn == nil {
16667		invalidParams.Add(request.NewErrParamRequired("DocumentClassifierArn"))
16668	}
16669	if s.InputDataConfig == nil {
16670		invalidParams.Add(request.NewErrParamRequired("InputDataConfig"))
16671	}
16672	if s.JobName != nil && len(*s.JobName) < 1 {
16673		invalidParams.Add(request.NewErrParamMinLen("JobName", 1))
16674	}
16675	if s.OutputDataConfig == nil {
16676		invalidParams.Add(request.NewErrParamRequired("OutputDataConfig"))
16677	}
16678	if s.InputDataConfig != nil {
16679		if err := s.InputDataConfig.Validate(); err != nil {
16680			invalidParams.AddNested("InputDataConfig", err.(request.ErrInvalidParams))
16681		}
16682	}
16683	if s.OutputDataConfig != nil {
16684		if err := s.OutputDataConfig.Validate(); err != nil {
16685			invalidParams.AddNested("OutputDataConfig", err.(request.ErrInvalidParams))
16686		}
16687	}
16688	if s.Tags != nil {
16689		for i, v := range s.Tags {
16690			if v == nil {
16691				continue
16692			}
16693			if err := v.Validate(); err != nil {
16694				invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Tags", i), err.(request.ErrInvalidParams))
16695			}
16696		}
16697	}
16698	if s.VpcConfig != nil {
16699		if err := s.VpcConfig.Validate(); err != nil {
16700			invalidParams.AddNested("VpcConfig", err.(request.ErrInvalidParams))
16701		}
16702	}
16703
16704	if invalidParams.Len() > 0 {
16705		return invalidParams
16706	}
16707	return nil
16708}
16709
16710// SetClientRequestToken sets the ClientRequestToken field's value.
16711func (s *StartDocumentClassificationJobInput) SetClientRequestToken(v string) *StartDocumentClassificationJobInput {
16712	s.ClientRequestToken = &v
16713	return s
16714}
16715
16716// SetDataAccessRoleArn sets the DataAccessRoleArn field's value.
16717func (s *StartDocumentClassificationJobInput) SetDataAccessRoleArn(v string) *StartDocumentClassificationJobInput {
16718	s.DataAccessRoleArn = &v
16719	return s
16720}
16721
16722// SetDocumentClassifierArn sets the DocumentClassifierArn field's value.
16723func (s *StartDocumentClassificationJobInput) SetDocumentClassifierArn(v string) *StartDocumentClassificationJobInput {
16724	s.DocumentClassifierArn = &v
16725	return s
16726}
16727
16728// SetInputDataConfig sets the InputDataConfig field's value.
16729func (s *StartDocumentClassificationJobInput) SetInputDataConfig(v *InputDataConfig) *StartDocumentClassificationJobInput {
16730	s.InputDataConfig = v
16731	return s
16732}
16733
16734// SetJobName sets the JobName field's value.
16735func (s *StartDocumentClassificationJobInput) SetJobName(v string) *StartDocumentClassificationJobInput {
16736	s.JobName = &v
16737	return s
16738}
16739
16740// SetOutputDataConfig sets the OutputDataConfig field's value.
16741func (s *StartDocumentClassificationJobInput) SetOutputDataConfig(v *OutputDataConfig) *StartDocumentClassificationJobInput {
16742	s.OutputDataConfig = v
16743	return s
16744}
16745
16746// SetTags sets the Tags field's value.
16747func (s *StartDocumentClassificationJobInput) SetTags(v []*Tag) *StartDocumentClassificationJobInput {
16748	s.Tags = v
16749	return s
16750}
16751
16752// SetVolumeKmsKeyId sets the VolumeKmsKeyId field's value.
16753func (s *StartDocumentClassificationJobInput) SetVolumeKmsKeyId(v string) *StartDocumentClassificationJobInput {
16754	s.VolumeKmsKeyId = &v
16755	return s
16756}
16757
16758// SetVpcConfig sets the VpcConfig field's value.
16759func (s *StartDocumentClassificationJobInput) SetVpcConfig(v *VpcConfig) *StartDocumentClassificationJobInput {
16760	s.VpcConfig = v
16761	return s
16762}
16763
16764type StartDocumentClassificationJobOutput struct {
16765	_ struct{} `type:"structure"`
16766
16767	// The Amazon Resource Name (ARN) of the document classification job. It is
16768	// a unique, fully qualified identifier for the job. It includes the AWS account,
16769	// Region, and the job ID. The format of the ARN is as follows:
16770	//
16771	// arn:<partition>:comprehend:<region>:<account-id>:document-classification-job/<job-id>
16772	//
16773	// The following is an example job ARN:
16774	//
16775	// arn:aws:comprehend:us-west-2:111122223333:document-classification-job/1234abcd12ab34cd56ef1234567890ab
16776	JobArn *string `type:"string"`
16777
16778	// The identifier generated for the job. To get the status of the job, use this
16779	// identifier with the operation.
16780	JobId *string `min:"1" type:"string"`
16781
16782	// The status of the job:
16783	//
16784	//    * SUBMITTED - The job has been received and queued for processing.
16785	//
16786	//    * IN_PROGRESS - Amazon Comprehend is processing the job.
16787	//
16788	//    * COMPLETED - The job was successfully completed and the output is available.
16789	//
16790	//    * FAILED - The job did not complete. For details, use the operation.
16791	//
16792	//    * STOP_REQUESTED - Amazon Comprehend has received a stop request for the
16793	//    job and is processing the request.
16794	//
16795	//    * STOPPED - The job was successfully stopped without completing.
16796	JobStatus *string `type:"string" enum:"JobStatus"`
16797}
16798
16799// String returns the string representation.
16800//
16801// API parameter values that are decorated as "sensitive" in the API will not
16802// be included in the string output. The member name will be present, but the
16803// value will be replaced with "sensitive".
16804func (s StartDocumentClassificationJobOutput) String() string {
16805	return awsutil.Prettify(s)
16806}
16807
16808// GoString returns the string representation.
16809//
16810// API parameter values that are decorated as "sensitive" in the API will not
16811// be included in the string output. The member name will be present, but the
16812// value will be replaced with "sensitive".
16813func (s StartDocumentClassificationJobOutput) GoString() string {
16814	return s.String()
16815}
16816
16817// SetJobArn sets the JobArn field's value.
16818func (s *StartDocumentClassificationJobOutput) SetJobArn(v string) *StartDocumentClassificationJobOutput {
16819	s.JobArn = &v
16820	return s
16821}
16822
16823// SetJobId sets the JobId field's value.
16824func (s *StartDocumentClassificationJobOutput) SetJobId(v string) *StartDocumentClassificationJobOutput {
16825	s.JobId = &v
16826	return s
16827}
16828
16829// SetJobStatus sets the JobStatus field's value.
16830func (s *StartDocumentClassificationJobOutput) SetJobStatus(v string) *StartDocumentClassificationJobOutput {
16831	s.JobStatus = &v
16832	return s
16833}
16834
16835type StartDominantLanguageDetectionJobInput struct {
16836	_ struct{} `type:"structure"`
16837
16838	// A unique identifier for the request. If you do not set the client request
16839	// token, Amazon Comprehend generates one.
16840	ClientRequestToken *string `min:"1" type:"string" idempotencyToken:"true"`
16841
16842	// The Amazon Resource Name (ARN) of the AWS Identity and Access Management
16843	// (IAM) role that grants Amazon Comprehend read access to your input data.
16844	// For more information, see https://docs.aws.amazon.com/comprehend/latest/dg/access-control-managing-permissions.html#auth-role-permissions
16845	// (https://docs.aws.amazon.com/comprehend/latest/dg/access-control-managing-permissions.html#auth-role-permissions).
16846	//
16847	// DataAccessRoleArn is a required field
16848	DataAccessRoleArn *string `min:"20" type:"string" required:"true"`
16849
16850	// Specifies the format and location of the input data for the job.
16851	//
16852	// InputDataConfig is a required field
16853	InputDataConfig *InputDataConfig `type:"structure" required:"true"`
16854
16855	// An identifier for the job.
16856	JobName *string `min:"1" type:"string"`
16857
16858	// Specifies where to send the output files.
16859	//
16860	// OutputDataConfig is a required field
16861	OutputDataConfig *OutputDataConfig `type:"structure" required:"true"`
16862
16863	// Tags to be associated with the dominant language detection job. A tag is
16864	// a key-value pair that adds metadata to a resource used by Amazon Comprehend.
16865	// For example, a tag with "Sales" as the key might be added to a resource to
16866	// indicate its use by the sales department.
16867	Tags []*Tag `type:"list"`
16868
16869	// ID for the AWS Key Management Service (KMS) key that Amazon Comprehend uses
16870	// to encrypt data on the storage volume attached to the ML compute instance(s)
16871	// that process the analysis job. The VolumeKmsKeyId can be either of the following
16872	// formats:
16873	//
16874	//    * KMS Key ID: "1234abcd-12ab-34cd-56ef-1234567890ab"
16875	//
16876	//    * Amazon Resource Name (ARN) of a KMS Key: "arn:aws:kms:us-west-2:111122223333:key/1234abcd-12ab-34cd-56ef-1234567890ab"
16877	VolumeKmsKeyId *string `type:"string"`
16878
16879	// Configuration parameters for an optional private Virtual Private Cloud (VPC)
16880	// containing the resources you are using for your dominant language detection
16881	// job. For more information, see Amazon VPC (https://docs.aws.amazon.com/vpc/latest/userguide/what-is-amazon-vpc.html).
16882	VpcConfig *VpcConfig `type:"structure"`
16883}
16884
16885// String returns the string representation.
16886//
16887// API parameter values that are decorated as "sensitive" in the API will not
16888// be included in the string output. The member name will be present, but the
16889// value will be replaced with "sensitive".
16890func (s StartDominantLanguageDetectionJobInput) String() string {
16891	return awsutil.Prettify(s)
16892}
16893
16894// GoString returns the string representation.
16895//
16896// API parameter values that are decorated as "sensitive" in the API will not
16897// be included in the string output. The member name will be present, but the
16898// value will be replaced with "sensitive".
16899func (s StartDominantLanguageDetectionJobInput) GoString() string {
16900	return s.String()
16901}
16902
16903// Validate inspects the fields of the type to determine if they are valid.
16904func (s *StartDominantLanguageDetectionJobInput) Validate() error {
16905	invalidParams := request.ErrInvalidParams{Context: "StartDominantLanguageDetectionJobInput"}
16906	if s.ClientRequestToken != nil && len(*s.ClientRequestToken) < 1 {
16907		invalidParams.Add(request.NewErrParamMinLen("ClientRequestToken", 1))
16908	}
16909	if s.DataAccessRoleArn == nil {
16910		invalidParams.Add(request.NewErrParamRequired("DataAccessRoleArn"))
16911	}
16912	if s.DataAccessRoleArn != nil && len(*s.DataAccessRoleArn) < 20 {
16913		invalidParams.Add(request.NewErrParamMinLen("DataAccessRoleArn", 20))
16914	}
16915	if s.InputDataConfig == nil {
16916		invalidParams.Add(request.NewErrParamRequired("InputDataConfig"))
16917	}
16918	if s.JobName != nil && len(*s.JobName) < 1 {
16919		invalidParams.Add(request.NewErrParamMinLen("JobName", 1))
16920	}
16921	if s.OutputDataConfig == nil {
16922		invalidParams.Add(request.NewErrParamRequired("OutputDataConfig"))
16923	}
16924	if s.InputDataConfig != nil {
16925		if err := s.InputDataConfig.Validate(); err != nil {
16926			invalidParams.AddNested("InputDataConfig", err.(request.ErrInvalidParams))
16927		}
16928	}
16929	if s.OutputDataConfig != nil {
16930		if err := s.OutputDataConfig.Validate(); err != nil {
16931			invalidParams.AddNested("OutputDataConfig", err.(request.ErrInvalidParams))
16932		}
16933	}
16934	if s.Tags != nil {
16935		for i, v := range s.Tags {
16936			if v == nil {
16937				continue
16938			}
16939			if err := v.Validate(); err != nil {
16940				invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Tags", i), err.(request.ErrInvalidParams))
16941			}
16942		}
16943	}
16944	if s.VpcConfig != nil {
16945		if err := s.VpcConfig.Validate(); err != nil {
16946			invalidParams.AddNested("VpcConfig", err.(request.ErrInvalidParams))
16947		}
16948	}
16949
16950	if invalidParams.Len() > 0 {
16951		return invalidParams
16952	}
16953	return nil
16954}
16955
16956// SetClientRequestToken sets the ClientRequestToken field's value.
16957func (s *StartDominantLanguageDetectionJobInput) SetClientRequestToken(v string) *StartDominantLanguageDetectionJobInput {
16958	s.ClientRequestToken = &v
16959	return s
16960}
16961
16962// SetDataAccessRoleArn sets the DataAccessRoleArn field's value.
16963func (s *StartDominantLanguageDetectionJobInput) SetDataAccessRoleArn(v string) *StartDominantLanguageDetectionJobInput {
16964	s.DataAccessRoleArn = &v
16965	return s
16966}
16967
16968// SetInputDataConfig sets the InputDataConfig field's value.
16969func (s *StartDominantLanguageDetectionJobInput) SetInputDataConfig(v *InputDataConfig) *StartDominantLanguageDetectionJobInput {
16970	s.InputDataConfig = v
16971	return s
16972}
16973
16974// SetJobName sets the JobName field's value.
16975func (s *StartDominantLanguageDetectionJobInput) SetJobName(v string) *StartDominantLanguageDetectionJobInput {
16976	s.JobName = &v
16977	return s
16978}
16979
16980// SetOutputDataConfig sets the OutputDataConfig field's value.
16981func (s *StartDominantLanguageDetectionJobInput) SetOutputDataConfig(v *OutputDataConfig) *StartDominantLanguageDetectionJobInput {
16982	s.OutputDataConfig = v
16983	return s
16984}
16985
16986// SetTags sets the Tags field's value.
16987func (s *StartDominantLanguageDetectionJobInput) SetTags(v []*Tag) *StartDominantLanguageDetectionJobInput {
16988	s.Tags = v
16989	return s
16990}
16991
16992// SetVolumeKmsKeyId sets the VolumeKmsKeyId field's value.
16993func (s *StartDominantLanguageDetectionJobInput) SetVolumeKmsKeyId(v string) *StartDominantLanguageDetectionJobInput {
16994	s.VolumeKmsKeyId = &v
16995	return s
16996}
16997
16998// SetVpcConfig sets the VpcConfig field's value.
16999func (s *StartDominantLanguageDetectionJobInput) SetVpcConfig(v *VpcConfig) *StartDominantLanguageDetectionJobInput {
17000	s.VpcConfig = v
17001	return s
17002}
17003
17004type StartDominantLanguageDetectionJobOutput struct {
17005	_ struct{} `type:"structure"`
17006
17007	// The Amazon Resource Name (ARN) of the dominant language detection job. It
17008	// is a unique, fully qualified identifier for the job. It includes the AWS
17009	// account, Region, and the job ID. The format of the ARN is as follows:
17010	//
17011	// arn:<partition>:comprehend:<region>:<account-id>:dominant-language-detection-job/<job-id>
17012	//
17013	// The following is an example job ARN:
17014	//
17015	// arn:aws:comprehend:us-west-2:111122223333:dominant-language-detection-job/1234abcd12ab34cd56ef1234567890ab
17016	JobArn *string `type:"string"`
17017
17018	// The identifier generated for the job. To get the status of a job, use this
17019	// identifier with the operation.
17020	JobId *string `min:"1" type:"string"`
17021
17022	// The status of the job.
17023	//
17024	//    * SUBMITTED - The job has been received and is queued for processing.
17025	//
17026	//    * IN_PROGRESS - Amazon Comprehend is processing the job.
17027	//
17028	//    * COMPLETED - The job was successfully completed and the output is available.
17029	//
17030	//    * FAILED - The job did not complete. To get details, use the operation.
17031	JobStatus *string `type:"string" enum:"JobStatus"`
17032}
17033
17034// String returns the string representation.
17035//
17036// API parameter values that are decorated as "sensitive" in the API will not
17037// be included in the string output. The member name will be present, but the
17038// value will be replaced with "sensitive".
17039func (s StartDominantLanguageDetectionJobOutput) String() string {
17040	return awsutil.Prettify(s)
17041}
17042
17043// GoString returns the string representation.
17044//
17045// API parameter values that are decorated as "sensitive" in the API will not
17046// be included in the string output. The member name will be present, but the
17047// value will be replaced with "sensitive".
17048func (s StartDominantLanguageDetectionJobOutput) GoString() string {
17049	return s.String()
17050}
17051
17052// SetJobArn sets the JobArn field's value.
17053func (s *StartDominantLanguageDetectionJobOutput) SetJobArn(v string) *StartDominantLanguageDetectionJobOutput {
17054	s.JobArn = &v
17055	return s
17056}
17057
17058// SetJobId sets the JobId field's value.
17059func (s *StartDominantLanguageDetectionJobOutput) SetJobId(v string) *StartDominantLanguageDetectionJobOutput {
17060	s.JobId = &v
17061	return s
17062}
17063
17064// SetJobStatus sets the JobStatus field's value.
17065func (s *StartDominantLanguageDetectionJobOutput) SetJobStatus(v string) *StartDominantLanguageDetectionJobOutput {
17066	s.JobStatus = &v
17067	return s
17068}
17069
17070type StartEntitiesDetectionJobInput struct {
17071	_ struct{} `type:"structure"`
17072
17073	// A unique identifier for the request. If you don't set the client request
17074	// token, Amazon Comprehend generates one.
17075	ClientRequestToken *string `min:"1" type:"string" idempotencyToken:"true"`
17076
17077	// The Amazon Resource Name (ARN) of the AWS Identity and Access Management
17078	// (IAM) role that grants Amazon Comprehend read access to your input data.
17079	// For more information, see https://docs.aws.amazon.com/comprehend/latest/dg/access-control-managing-permissions.html#auth-role-permissions
17080	// (https://docs.aws.amazon.com/comprehend/latest/dg/access-control-managing-permissions.html#auth-role-permissions).
17081	//
17082	// DataAccessRoleArn is a required field
17083	DataAccessRoleArn *string `min:"20" type:"string" required:"true"`
17084
17085	// The Amazon Resource Name (ARN) that identifies the specific entity recognizer
17086	// to be used by the StartEntitiesDetectionJob. This ARN is optional and is
17087	// only used for a custom entity recognition job.
17088	EntityRecognizerArn *string `type:"string"`
17089
17090	// Specifies the format and location of the input data for the job.
17091	//
17092	// InputDataConfig is a required field
17093	InputDataConfig *InputDataConfig `type:"structure" required:"true"`
17094
17095	// The identifier of the job.
17096	JobName *string `min:"1" type:"string"`
17097
17098	// The language of the input documents. All documents must be in the same language.
17099	// You can specify any of the languages supported by Amazon Comprehend. If custom
17100	// entities recognition is used, this parameter is ignored and the language
17101	// used for training the model is used instead.
17102	//
17103	// LanguageCode is a required field
17104	LanguageCode *string `type:"string" required:"true" enum:"LanguageCode"`
17105
17106	// Specifies where to send the output files.
17107	//
17108	// OutputDataConfig is a required field
17109	OutputDataConfig *OutputDataConfig `type:"structure" required:"true"`
17110
17111	// Tags to be associated with the entities detection job. A tag is a key-value
17112	// pair that adds metadata to a resource used by Amazon Comprehend. For example,
17113	// a tag with "Sales" as the key might be added to a resource to indicate its
17114	// use by the sales department.
17115	Tags []*Tag `type:"list"`
17116
17117	// ID for the AWS Key Management Service (KMS) key that Amazon Comprehend uses
17118	// to encrypt data on the storage volume attached to the ML compute instance(s)
17119	// that process the analysis job. The VolumeKmsKeyId can be either of the following
17120	// formats:
17121	//
17122	//    * KMS Key ID: "1234abcd-12ab-34cd-56ef-1234567890ab"
17123	//
17124	//    * Amazon Resource Name (ARN) of a KMS Key: "arn:aws:kms:us-west-2:111122223333:key/1234abcd-12ab-34cd-56ef-1234567890ab"
17125	VolumeKmsKeyId *string `type:"string"`
17126
17127	// Configuration parameters for an optional private Virtual Private Cloud (VPC)
17128	// containing the resources you are using for your entity detection job. For
17129	// more information, see Amazon VPC (https://docs.aws.amazon.com/vpc/latest/userguide/what-is-amazon-vpc.html).
17130	VpcConfig *VpcConfig `type:"structure"`
17131}
17132
17133// String returns the string representation.
17134//
17135// API parameter values that are decorated as "sensitive" in the API will not
17136// be included in the string output. The member name will be present, but the
17137// value will be replaced with "sensitive".
17138func (s StartEntitiesDetectionJobInput) String() string {
17139	return awsutil.Prettify(s)
17140}
17141
17142// GoString returns the string representation.
17143//
17144// API parameter values that are decorated as "sensitive" in the API will not
17145// be included in the string output. The member name will be present, but the
17146// value will be replaced with "sensitive".
17147func (s StartEntitiesDetectionJobInput) GoString() string {
17148	return s.String()
17149}
17150
17151// Validate inspects the fields of the type to determine if they are valid.
17152func (s *StartEntitiesDetectionJobInput) Validate() error {
17153	invalidParams := request.ErrInvalidParams{Context: "StartEntitiesDetectionJobInput"}
17154	if s.ClientRequestToken != nil && len(*s.ClientRequestToken) < 1 {
17155		invalidParams.Add(request.NewErrParamMinLen("ClientRequestToken", 1))
17156	}
17157	if s.DataAccessRoleArn == nil {
17158		invalidParams.Add(request.NewErrParamRequired("DataAccessRoleArn"))
17159	}
17160	if s.DataAccessRoleArn != nil && len(*s.DataAccessRoleArn) < 20 {
17161		invalidParams.Add(request.NewErrParamMinLen("DataAccessRoleArn", 20))
17162	}
17163	if s.InputDataConfig == nil {
17164		invalidParams.Add(request.NewErrParamRequired("InputDataConfig"))
17165	}
17166	if s.JobName != nil && len(*s.JobName) < 1 {
17167		invalidParams.Add(request.NewErrParamMinLen("JobName", 1))
17168	}
17169	if s.LanguageCode == nil {
17170		invalidParams.Add(request.NewErrParamRequired("LanguageCode"))
17171	}
17172	if s.OutputDataConfig == nil {
17173		invalidParams.Add(request.NewErrParamRequired("OutputDataConfig"))
17174	}
17175	if s.InputDataConfig != nil {
17176		if err := s.InputDataConfig.Validate(); err != nil {
17177			invalidParams.AddNested("InputDataConfig", err.(request.ErrInvalidParams))
17178		}
17179	}
17180	if s.OutputDataConfig != nil {
17181		if err := s.OutputDataConfig.Validate(); err != nil {
17182			invalidParams.AddNested("OutputDataConfig", err.(request.ErrInvalidParams))
17183		}
17184	}
17185	if s.Tags != nil {
17186		for i, v := range s.Tags {
17187			if v == nil {
17188				continue
17189			}
17190			if err := v.Validate(); err != nil {
17191				invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Tags", i), err.(request.ErrInvalidParams))
17192			}
17193		}
17194	}
17195	if s.VpcConfig != nil {
17196		if err := s.VpcConfig.Validate(); err != nil {
17197			invalidParams.AddNested("VpcConfig", err.(request.ErrInvalidParams))
17198		}
17199	}
17200
17201	if invalidParams.Len() > 0 {
17202		return invalidParams
17203	}
17204	return nil
17205}
17206
17207// SetClientRequestToken sets the ClientRequestToken field's value.
17208func (s *StartEntitiesDetectionJobInput) SetClientRequestToken(v string) *StartEntitiesDetectionJobInput {
17209	s.ClientRequestToken = &v
17210	return s
17211}
17212
17213// SetDataAccessRoleArn sets the DataAccessRoleArn field's value.
17214func (s *StartEntitiesDetectionJobInput) SetDataAccessRoleArn(v string) *StartEntitiesDetectionJobInput {
17215	s.DataAccessRoleArn = &v
17216	return s
17217}
17218
17219// SetEntityRecognizerArn sets the EntityRecognizerArn field's value.
17220func (s *StartEntitiesDetectionJobInput) SetEntityRecognizerArn(v string) *StartEntitiesDetectionJobInput {
17221	s.EntityRecognizerArn = &v
17222	return s
17223}
17224
17225// SetInputDataConfig sets the InputDataConfig field's value.
17226func (s *StartEntitiesDetectionJobInput) SetInputDataConfig(v *InputDataConfig) *StartEntitiesDetectionJobInput {
17227	s.InputDataConfig = v
17228	return s
17229}
17230
17231// SetJobName sets the JobName field's value.
17232func (s *StartEntitiesDetectionJobInput) SetJobName(v string) *StartEntitiesDetectionJobInput {
17233	s.JobName = &v
17234	return s
17235}
17236
17237// SetLanguageCode sets the LanguageCode field's value.
17238func (s *StartEntitiesDetectionJobInput) SetLanguageCode(v string) *StartEntitiesDetectionJobInput {
17239	s.LanguageCode = &v
17240	return s
17241}
17242
17243// SetOutputDataConfig sets the OutputDataConfig field's value.
17244func (s *StartEntitiesDetectionJobInput) SetOutputDataConfig(v *OutputDataConfig) *StartEntitiesDetectionJobInput {
17245	s.OutputDataConfig = v
17246	return s
17247}
17248
17249// SetTags sets the Tags field's value.
17250func (s *StartEntitiesDetectionJobInput) SetTags(v []*Tag) *StartEntitiesDetectionJobInput {
17251	s.Tags = v
17252	return s
17253}
17254
17255// SetVolumeKmsKeyId sets the VolumeKmsKeyId field's value.
17256func (s *StartEntitiesDetectionJobInput) SetVolumeKmsKeyId(v string) *StartEntitiesDetectionJobInput {
17257	s.VolumeKmsKeyId = &v
17258	return s
17259}
17260
17261// SetVpcConfig sets the VpcConfig field's value.
17262func (s *StartEntitiesDetectionJobInput) SetVpcConfig(v *VpcConfig) *StartEntitiesDetectionJobInput {
17263	s.VpcConfig = v
17264	return s
17265}
17266
17267type StartEntitiesDetectionJobOutput struct {
17268	_ struct{} `type:"structure"`
17269
17270	// The Amazon Resource Name (ARN) of the entities detection job. It is a unique,
17271	// fully qualified identifier for the job. It includes the AWS account, Region,
17272	// and the job ID. The format of the ARN is as follows:
17273	//
17274	// arn:<partition>:comprehend:<region>:<account-id>:entities-detection-job/<job-id>
17275	//
17276	// The following is an example job ARN:
17277	//
17278	// arn:aws:comprehend:us-west-2:111122223333:entities-detection-job/1234abcd12ab34cd56ef1234567890ab
17279	JobArn *string `type:"string"`
17280
17281	// The identifier generated for the job. To get the status of job, use this
17282	// identifier with the operation.
17283	JobId *string `min:"1" type:"string"`
17284
17285	// The status of the job.
17286	//
17287	//    * SUBMITTED - The job has been received and is queued for processing.
17288	//
17289	//    * IN_PROGRESS - Amazon Comprehend is processing the job.
17290	//
17291	//    * COMPLETED - The job was successfully completed and the output is available.
17292	//
17293	//    * FAILED - The job did not complete. To get details, use the operation.
17294	//
17295	//    * STOP_REQUESTED - Amazon Comprehend has received a stop request for the
17296	//    job and is processing the request.
17297	//
17298	//    * STOPPED - The job was successfully stopped without completing.
17299	JobStatus *string `type:"string" enum:"JobStatus"`
17300}
17301
17302// String returns the string representation.
17303//
17304// API parameter values that are decorated as "sensitive" in the API will not
17305// be included in the string output. The member name will be present, but the
17306// value will be replaced with "sensitive".
17307func (s StartEntitiesDetectionJobOutput) String() string {
17308	return awsutil.Prettify(s)
17309}
17310
17311// GoString returns the string representation.
17312//
17313// API parameter values that are decorated as "sensitive" in the API will not
17314// be included in the string output. The member name will be present, but the
17315// value will be replaced with "sensitive".
17316func (s StartEntitiesDetectionJobOutput) GoString() string {
17317	return s.String()
17318}
17319
17320// SetJobArn sets the JobArn field's value.
17321func (s *StartEntitiesDetectionJobOutput) SetJobArn(v string) *StartEntitiesDetectionJobOutput {
17322	s.JobArn = &v
17323	return s
17324}
17325
17326// SetJobId sets the JobId field's value.
17327func (s *StartEntitiesDetectionJobOutput) SetJobId(v string) *StartEntitiesDetectionJobOutput {
17328	s.JobId = &v
17329	return s
17330}
17331
17332// SetJobStatus sets the JobStatus field's value.
17333func (s *StartEntitiesDetectionJobOutput) SetJobStatus(v string) *StartEntitiesDetectionJobOutput {
17334	s.JobStatus = &v
17335	return s
17336}
17337
17338type StartEventsDetectionJobInput struct {
17339	_ struct{} `type:"structure"`
17340
17341	// An unique identifier for the request. If you don't set the client request
17342	// token, Amazon Comprehend generates one.
17343	ClientRequestToken *string `min:"1" type:"string" idempotencyToken:"true"`
17344
17345	// The Amazon Resource Name (ARN) of the AWS Identity and Access Management
17346	// (IAM) role that grants Amazon Comprehend read access to your input data.
17347	//
17348	// DataAccessRoleArn is a required field
17349	DataAccessRoleArn *string `min:"20" type:"string" required:"true"`
17350
17351	// Specifies the format and location of the input data for the job.
17352	//
17353	// InputDataConfig is a required field
17354	InputDataConfig *InputDataConfig `type:"structure" required:"true"`
17355
17356	// The identifier of the events detection job.
17357	JobName *string `min:"1" type:"string"`
17358
17359	// The language code of the input documents.
17360	//
17361	// LanguageCode is a required field
17362	LanguageCode *string `type:"string" required:"true" enum:"LanguageCode"`
17363
17364	// Specifies where to send the output files.
17365	//
17366	// OutputDataConfig is a required field
17367	OutputDataConfig *OutputDataConfig `type:"structure" required:"true"`
17368
17369	// Tags to be associated with the events detection job. A tag is a key-value
17370	// pair that adds metadata to a resource used by Amazon Comprehend. For example,
17371	// a tag with "Sales" as the key might be added to a resource to indicate its
17372	// use by the sales department.
17373	Tags []*Tag `type:"list"`
17374
17375	// The types of events to detect in the input documents.
17376	//
17377	// TargetEventTypes is a required field
17378	TargetEventTypes []*string `min:"1" type:"list" required:"true"`
17379}
17380
17381// String returns the string representation.
17382//
17383// API parameter values that are decorated as "sensitive" in the API will not
17384// be included in the string output. The member name will be present, but the
17385// value will be replaced with "sensitive".
17386func (s StartEventsDetectionJobInput) String() string {
17387	return awsutil.Prettify(s)
17388}
17389
17390// GoString returns the string representation.
17391//
17392// API parameter values that are decorated as "sensitive" in the API will not
17393// be included in the string output. The member name will be present, but the
17394// value will be replaced with "sensitive".
17395func (s StartEventsDetectionJobInput) GoString() string {
17396	return s.String()
17397}
17398
17399// Validate inspects the fields of the type to determine if they are valid.
17400func (s *StartEventsDetectionJobInput) Validate() error {
17401	invalidParams := request.ErrInvalidParams{Context: "StartEventsDetectionJobInput"}
17402	if s.ClientRequestToken != nil && len(*s.ClientRequestToken) < 1 {
17403		invalidParams.Add(request.NewErrParamMinLen("ClientRequestToken", 1))
17404	}
17405	if s.DataAccessRoleArn == nil {
17406		invalidParams.Add(request.NewErrParamRequired("DataAccessRoleArn"))
17407	}
17408	if s.DataAccessRoleArn != nil && len(*s.DataAccessRoleArn) < 20 {
17409		invalidParams.Add(request.NewErrParamMinLen("DataAccessRoleArn", 20))
17410	}
17411	if s.InputDataConfig == nil {
17412		invalidParams.Add(request.NewErrParamRequired("InputDataConfig"))
17413	}
17414	if s.JobName != nil && len(*s.JobName) < 1 {
17415		invalidParams.Add(request.NewErrParamMinLen("JobName", 1))
17416	}
17417	if s.LanguageCode == nil {
17418		invalidParams.Add(request.NewErrParamRequired("LanguageCode"))
17419	}
17420	if s.OutputDataConfig == nil {
17421		invalidParams.Add(request.NewErrParamRequired("OutputDataConfig"))
17422	}
17423	if s.TargetEventTypes == nil {
17424		invalidParams.Add(request.NewErrParamRequired("TargetEventTypes"))
17425	}
17426	if s.TargetEventTypes != nil && len(s.TargetEventTypes) < 1 {
17427		invalidParams.Add(request.NewErrParamMinLen("TargetEventTypes", 1))
17428	}
17429	if s.InputDataConfig != nil {
17430		if err := s.InputDataConfig.Validate(); err != nil {
17431			invalidParams.AddNested("InputDataConfig", err.(request.ErrInvalidParams))
17432		}
17433	}
17434	if s.OutputDataConfig != nil {
17435		if err := s.OutputDataConfig.Validate(); err != nil {
17436			invalidParams.AddNested("OutputDataConfig", err.(request.ErrInvalidParams))
17437		}
17438	}
17439	if s.Tags != nil {
17440		for i, v := range s.Tags {
17441			if v == nil {
17442				continue
17443			}
17444			if err := v.Validate(); err != nil {
17445				invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Tags", i), err.(request.ErrInvalidParams))
17446			}
17447		}
17448	}
17449
17450	if invalidParams.Len() > 0 {
17451		return invalidParams
17452	}
17453	return nil
17454}
17455
17456// SetClientRequestToken sets the ClientRequestToken field's value.
17457func (s *StartEventsDetectionJobInput) SetClientRequestToken(v string) *StartEventsDetectionJobInput {
17458	s.ClientRequestToken = &v
17459	return s
17460}
17461
17462// SetDataAccessRoleArn sets the DataAccessRoleArn field's value.
17463func (s *StartEventsDetectionJobInput) SetDataAccessRoleArn(v string) *StartEventsDetectionJobInput {
17464	s.DataAccessRoleArn = &v
17465	return s
17466}
17467
17468// SetInputDataConfig sets the InputDataConfig field's value.
17469func (s *StartEventsDetectionJobInput) SetInputDataConfig(v *InputDataConfig) *StartEventsDetectionJobInput {
17470	s.InputDataConfig = v
17471	return s
17472}
17473
17474// SetJobName sets the JobName field's value.
17475func (s *StartEventsDetectionJobInput) SetJobName(v string) *StartEventsDetectionJobInput {
17476	s.JobName = &v
17477	return s
17478}
17479
17480// SetLanguageCode sets the LanguageCode field's value.
17481func (s *StartEventsDetectionJobInput) SetLanguageCode(v string) *StartEventsDetectionJobInput {
17482	s.LanguageCode = &v
17483	return s
17484}
17485
17486// SetOutputDataConfig sets the OutputDataConfig field's value.
17487func (s *StartEventsDetectionJobInput) SetOutputDataConfig(v *OutputDataConfig) *StartEventsDetectionJobInput {
17488	s.OutputDataConfig = v
17489	return s
17490}
17491
17492// SetTags sets the Tags field's value.
17493func (s *StartEventsDetectionJobInput) SetTags(v []*Tag) *StartEventsDetectionJobInput {
17494	s.Tags = v
17495	return s
17496}
17497
17498// SetTargetEventTypes sets the TargetEventTypes field's value.
17499func (s *StartEventsDetectionJobInput) SetTargetEventTypes(v []*string) *StartEventsDetectionJobInput {
17500	s.TargetEventTypes = v
17501	return s
17502}
17503
17504type StartEventsDetectionJobOutput struct {
17505	_ struct{} `type:"structure"`
17506
17507	// The Amazon Resource Name (ARN) of the events detection job. It is a unique,
17508	// fully qualified identifier for the job. It includes the AWS account, Region,
17509	// and the job ID. The format of the ARN is as follows:
17510	//
17511	// arn:<partition>:comprehend:<region>:<account-id>:events-detection-job/<job-id>
17512	//
17513	// The following is an example job ARN:
17514	//
17515	// arn:aws:comprehend:us-west-2:111122223333:events-detection-job/1234abcd12ab34cd56ef1234567890ab
17516	JobArn *string `type:"string"`
17517
17518	// An unique identifier for the request. If you don't set the client request
17519	// token, Amazon Comprehend generates one.
17520	JobId *string `min:"1" type:"string"`
17521
17522	// The status of the events detection job.
17523	JobStatus *string `type:"string" enum:"JobStatus"`
17524}
17525
17526// String returns the string representation.
17527//
17528// API parameter values that are decorated as "sensitive" in the API will not
17529// be included in the string output. The member name will be present, but the
17530// value will be replaced with "sensitive".
17531func (s StartEventsDetectionJobOutput) String() string {
17532	return awsutil.Prettify(s)
17533}
17534
17535// GoString returns the string representation.
17536//
17537// API parameter values that are decorated as "sensitive" in the API will not
17538// be included in the string output. The member name will be present, but the
17539// value will be replaced with "sensitive".
17540func (s StartEventsDetectionJobOutput) GoString() string {
17541	return s.String()
17542}
17543
17544// SetJobArn sets the JobArn field's value.
17545func (s *StartEventsDetectionJobOutput) SetJobArn(v string) *StartEventsDetectionJobOutput {
17546	s.JobArn = &v
17547	return s
17548}
17549
17550// SetJobId sets the JobId field's value.
17551func (s *StartEventsDetectionJobOutput) SetJobId(v string) *StartEventsDetectionJobOutput {
17552	s.JobId = &v
17553	return s
17554}
17555
17556// SetJobStatus sets the JobStatus field's value.
17557func (s *StartEventsDetectionJobOutput) SetJobStatus(v string) *StartEventsDetectionJobOutput {
17558	s.JobStatus = &v
17559	return s
17560}
17561
17562type StartKeyPhrasesDetectionJobInput struct {
17563	_ struct{} `type:"structure"`
17564
17565	// A unique identifier for the request. If you don't set the client request
17566	// token, Amazon Comprehend generates one.
17567	ClientRequestToken *string `min:"1" type:"string" idempotencyToken:"true"`
17568
17569	// The Amazon Resource Name (ARN) of the AWS Identity and Access Management
17570	// (IAM) role that grants Amazon Comprehend read access to your input data.
17571	// For more information, see https://docs.aws.amazon.com/comprehend/latest/dg/access-control-managing-permissions.html#auth-role-permissions
17572	// (https://docs.aws.amazon.com/comprehend/latest/dg/access-control-managing-permissions.html#auth-role-permissions).
17573	//
17574	// DataAccessRoleArn is a required field
17575	DataAccessRoleArn *string `min:"20" type:"string" required:"true"`
17576
17577	// Specifies the format and location of the input data for the job.
17578	//
17579	// InputDataConfig is a required field
17580	InputDataConfig *InputDataConfig `type:"structure" required:"true"`
17581
17582	// The identifier of the job.
17583	JobName *string `min:"1" type:"string"`
17584
17585	// The language of the input documents. You can specify any of the primary languages
17586	// supported by Amazon Comprehend. All documents must be in the same language.
17587	//
17588	// LanguageCode is a required field
17589	LanguageCode *string `type:"string" required:"true" enum:"LanguageCode"`
17590
17591	// Specifies where to send the output files.
17592	//
17593	// OutputDataConfig is a required field
17594	OutputDataConfig *OutputDataConfig `type:"structure" required:"true"`
17595
17596	// Tags to be associated with the key phrases detection job. A tag is a key-value
17597	// pair that adds metadata to a resource used by Amazon Comprehend. For example,
17598	// a tag with "Sales" as the key might be added to a resource to indicate its
17599	// use by the sales department.
17600	Tags []*Tag `type:"list"`
17601
17602	// ID for the AWS Key Management Service (KMS) key that Amazon Comprehend uses
17603	// to encrypt data on the storage volume attached to the ML compute instance(s)
17604	// that process the analysis job. The VolumeKmsKeyId can be either of the following
17605	// formats:
17606	//
17607	//    * KMS Key ID: "1234abcd-12ab-34cd-56ef-1234567890ab"
17608	//
17609	//    * Amazon Resource Name (ARN) of a KMS Key: "arn:aws:kms:us-west-2:111122223333:key/1234abcd-12ab-34cd-56ef-1234567890ab"
17610	VolumeKmsKeyId *string `type:"string"`
17611
17612	// Configuration parameters for an optional private Virtual Private Cloud (VPC)
17613	// containing the resources you are using for your key phrases detection job.
17614	// For more information, see Amazon VPC (https://docs.aws.amazon.com/vpc/latest/userguide/what-is-amazon-vpc.html).
17615	VpcConfig *VpcConfig `type:"structure"`
17616}
17617
17618// String returns the string representation.
17619//
17620// API parameter values that are decorated as "sensitive" in the API will not
17621// be included in the string output. The member name will be present, but the
17622// value will be replaced with "sensitive".
17623func (s StartKeyPhrasesDetectionJobInput) String() string {
17624	return awsutil.Prettify(s)
17625}
17626
17627// GoString returns the string representation.
17628//
17629// API parameter values that are decorated as "sensitive" in the API will not
17630// be included in the string output. The member name will be present, but the
17631// value will be replaced with "sensitive".
17632func (s StartKeyPhrasesDetectionJobInput) GoString() string {
17633	return s.String()
17634}
17635
17636// Validate inspects the fields of the type to determine if they are valid.
17637func (s *StartKeyPhrasesDetectionJobInput) Validate() error {
17638	invalidParams := request.ErrInvalidParams{Context: "StartKeyPhrasesDetectionJobInput"}
17639	if s.ClientRequestToken != nil && len(*s.ClientRequestToken) < 1 {
17640		invalidParams.Add(request.NewErrParamMinLen("ClientRequestToken", 1))
17641	}
17642	if s.DataAccessRoleArn == nil {
17643		invalidParams.Add(request.NewErrParamRequired("DataAccessRoleArn"))
17644	}
17645	if s.DataAccessRoleArn != nil && len(*s.DataAccessRoleArn) < 20 {
17646		invalidParams.Add(request.NewErrParamMinLen("DataAccessRoleArn", 20))
17647	}
17648	if s.InputDataConfig == nil {
17649		invalidParams.Add(request.NewErrParamRequired("InputDataConfig"))
17650	}
17651	if s.JobName != nil && len(*s.JobName) < 1 {
17652		invalidParams.Add(request.NewErrParamMinLen("JobName", 1))
17653	}
17654	if s.LanguageCode == nil {
17655		invalidParams.Add(request.NewErrParamRequired("LanguageCode"))
17656	}
17657	if s.OutputDataConfig == nil {
17658		invalidParams.Add(request.NewErrParamRequired("OutputDataConfig"))
17659	}
17660	if s.InputDataConfig != nil {
17661		if err := s.InputDataConfig.Validate(); err != nil {
17662			invalidParams.AddNested("InputDataConfig", err.(request.ErrInvalidParams))
17663		}
17664	}
17665	if s.OutputDataConfig != nil {
17666		if err := s.OutputDataConfig.Validate(); err != nil {
17667			invalidParams.AddNested("OutputDataConfig", err.(request.ErrInvalidParams))
17668		}
17669	}
17670	if s.Tags != nil {
17671		for i, v := range s.Tags {
17672			if v == nil {
17673				continue
17674			}
17675			if err := v.Validate(); err != nil {
17676				invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Tags", i), err.(request.ErrInvalidParams))
17677			}
17678		}
17679	}
17680	if s.VpcConfig != nil {
17681		if err := s.VpcConfig.Validate(); err != nil {
17682			invalidParams.AddNested("VpcConfig", err.(request.ErrInvalidParams))
17683		}
17684	}
17685
17686	if invalidParams.Len() > 0 {
17687		return invalidParams
17688	}
17689	return nil
17690}
17691
17692// SetClientRequestToken sets the ClientRequestToken field's value.
17693func (s *StartKeyPhrasesDetectionJobInput) SetClientRequestToken(v string) *StartKeyPhrasesDetectionJobInput {
17694	s.ClientRequestToken = &v
17695	return s
17696}
17697
17698// SetDataAccessRoleArn sets the DataAccessRoleArn field's value.
17699func (s *StartKeyPhrasesDetectionJobInput) SetDataAccessRoleArn(v string) *StartKeyPhrasesDetectionJobInput {
17700	s.DataAccessRoleArn = &v
17701	return s
17702}
17703
17704// SetInputDataConfig sets the InputDataConfig field's value.
17705func (s *StartKeyPhrasesDetectionJobInput) SetInputDataConfig(v *InputDataConfig) *StartKeyPhrasesDetectionJobInput {
17706	s.InputDataConfig = v
17707	return s
17708}
17709
17710// SetJobName sets the JobName field's value.
17711func (s *StartKeyPhrasesDetectionJobInput) SetJobName(v string) *StartKeyPhrasesDetectionJobInput {
17712	s.JobName = &v
17713	return s
17714}
17715
17716// SetLanguageCode sets the LanguageCode field's value.
17717func (s *StartKeyPhrasesDetectionJobInput) SetLanguageCode(v string) *StartKeyPhrasesDetectionJobInput {
17718	s.LanguageCode = &v
17719	return s
17720}
17721
17722// SetOutputDataConfig sets the OutputDataConfig field's value.
17723func (s *StartKeyPhrasesDetectionJobInput) SetOutputDataConfig(v *OutputDataConfig) *StartKeyPhrasesDetectionJobInput {
17724	s.OutputDataConfig = v
17725	return s
17726}
17727
17728// SetTags sets the Tags field's value.
17729func (s *StartKeyPhrasesDetectionJobInput) SetTags(v []*Tag) *StartKeyPhrasesDetectionJobInput {
17730	s.Tags = v
17731	return s
17732}
17733
17734// SetVolumeKmsKeyId sets the VolumeKmsKeyId field's value.
17735func (s *StartKeyPhrasesDetectionJobInput) SetVolumeKmsKeyId(v string) *StartKeyPhrasesDetectionJobInput {
17736	s.VolumeKmsKeyId = &v
17737	return s
17738}
17739
17740// SetVpcConfig sets the VpcConfig field's value.
17741func (s *StartKeyPhrasesDetectionJobInput) SetVpcConfig(v *VpcConfig) *StartKeyPhrasesDetectionJobInput {
17742	s.VpcConfig = v
17743	return s
17744}
17745
17746type StartKeyPhrasesDetectionJobOutput struct {
17747	_ struct{} `type:"structure"`
17748
17749	// The Amazon Resource Name (ARN) of the key phrase detection job. It is a unique,
17750	// fully qualified identifier for the job. It includes the AWS account, Region,
17751	// and the job ID. The format of the ARN is as follows:
17752	//
17753	// arn:<partition>:comprehend:<region>:<account-id>:key-phrases-detection-job/<job-id>
17754	//
17755	// The following is an example job ARN:
17756	//
17757	// arn:aws:comprehend:us-west-2:111122223333:key-phrases-detection-job/1234abcd12ab34cd56ef1234567890ab
17758	JobArn *string `type:"string"`
17759
17760	// The identifier generated for the job. To get the status of a job, use this
17761	// identifier with the operation.
17762	JobId *string `min:"1" type:"string"`
17763
17764	// The status of the job.
17765	//
17766	//    * SUBMITTED - The job has been received and is queued for processing.
17767	//
17768	//    * IN_PROGRESS - Amazon Comprehend is processing the job.
17769	//
17770	//    * COMPLETED - The job was successfully completed and the output is available.
17771	//
17772	//    * FAILED - The job did not complete. To get details, use the operation.
17773	JobStatus *string `type:"string" enum:"JobStatus"`
17774}
17775
17776// String returns the string representation.
17777//
17778// API parameter values that are decorated as "sensitive" in the API will not
17779// be included in the string output. The member name will be present, but the
17780// value will be replaced with "sensitive".
17781func (s StartKeyPhrasesDetectionJobOutput) String() string {
17782	return awsutil.Prettify(s)
17783}
17784
17785// GoString returns the string representation.
17786//
17787// API parameter values that are decorated as "sensitive" in the API will not
17788// be included in the string output. The member name will be present, but the
17789// value will be replaced with "sensitive".
17790func (s StartKeyPhrasesDetectionJobOutput) GoString() string {
17791	return s.String()
17792}
17793
17794// SetJobArn sets the JobArn field's value.
17795func (s *StartKeyPhrasesDetectionJobOutput) SetJobArn(v string) *StartKeyPhrasesDetectionJobOutput {
17796	s.JobArn = &v
17797	return s
17798}
17799
17800// SetJobId sets the JobId field's value.
17801func (s *StartKeyPhrasesDetectionJobOutput) SetJobId(v string) *StartKeyPhrasesDetectionJobOutput {
17802	s.JobId = &v
17803	return s
17804}
17805
17806// SetJobStatus sets the JobStatus field's value.
17807func (s *StartKeyPhrasesDetectionJobOutput) SetJobStatus(v string) *StartKeyPhrasesDetectionJobOutput {
17808	s.JobStatus = &v
17809	return s
17810}
17811
17812type StartPiiEntitiesDetectionJobInput struct {
17813	_ struct{} `type:"structure"`
17814
17815	// A unique identifier for the request. If you don't set the client request
17816	// token, Amazon Comprehend generates one.
17817	ClientRequestToken *string `min:"1" type:"string" idempotencyToken:"true"`
17818
17819	// The Amazon Resource Name (ARN) of the AWS Identity and Access Management
17820	// (IAM) role that grants Amazon Comprehend read access to your input data.
17821	//
17822	// DataAccessRoleArn is a required field
17823	DataAccessRoleArn *string `min:"20" type:"string" required:"true"`
17824
17825	// The input properties for a PII entities detection job.
17826	//
17827	// InputDataConfig is a required field
17828	InputDataConfig *InputDataConfig `type:"structure" required:"true"`
17829
17830	// The identifier of the job.
17831	JobName *string `min:"1" type:"string"`
17832
17833	// The language of the input documents.
17834	//
17835	// LanguageCode is a required field
17836	LanguageCode *string `type:"string" required:"true" enum:"LanguageCode"`
17837
17838	// Specifies whether the output provides the locations (offsets) of PII entities
17839	// or a file in which PII entities are redacted.
17840	//
17841	// Mode is a required field
17842	Mode *string `type:"string" required:"true" enum:"PiiEntitiesDetectionMode"`
17843
17844	// Provides configuration parameters for the output of PII entity detection
17845	// jobs.
17846	//
17847	// OutputDataConfig is a required field
17848	OutputDataConfig *OutputDataConfig `type:"structure" required:"true"`
17849
17850	// Provides configuration parameters for PII entity redaction.
17851	//
17852	// This parameter is required if you set the Mode parameter to ONLY_REDACTION.
17853	// In that case, you must provide a RedactionConfig definition that includes
17854	// the PiiEntityTypes parameter.
17855	RedactionConfig *RedactionConfig `type:"structure"`
17856
17857	// Tags to be associated with the PII entities detection job. A tag is a key-value
17858	// pair that adds metadata to a resource used by Amazon Comprehend. For example,
17859	// a tag with "Sales" as the key might be added to a resource to indicate its
17860	// use by the sales department.
17861	Tags []*Tag `type:"list"`
17862}
17863
17864// String returns the string representation.
17865//
17866// API parameter values that are decorated as "sensitive" in the API will not
17867// be included in the string output. The member name will be present, but the
17868// value will be replaced with "sensitive".
17869func (s StartPiiEntitiesDetectionJobInput) String() string {
17870	return awsutil.Prettify(s)
17871}
17872
17873// GoString returns the string representation.
17874//
17875// API parameter values that are decorated as "sensitive" in the API will not
17876// be included in the string output. The member name will be present, but the
17877// value will be replaced with "sensitive".
17878func (s StartPiiEntitiesDetectionJobInput) GoString() string {
17879	return s.String()
17880}
17881
17882// Validate inspects the fields of the type to determine if they are valid.
17883func (s *StartPiiEntitiesDetectionJobInput) Validate() error {
17884	invalidParams := request.ErrInvalidParams{Context: "StartPiiEntitiesDetectionJobInput"}
17885	if s.ClientRequestToken != nil && len(*s.ClientRequestToken) < 1 {
17886		invalidParams.Add(request.NewErrParamMinLen("ClientRequestToken", 1))
17887	}
17888	if s.DataAccessRoleArn == nil {
17889		invalidParams.Add(request.NewErrParamRequired("DataAccessRoleArn"))
17890	}
17891	if s.DataAccessRoleArn != nil && len(*s.DataAccessRoleArn) < 20 {
17892		invalidParams.Add(request.NewErrParamMinLen("DataAccessRoleArn", 20))
17893	}
17894	if s.InputDataConfig == nil {
17895		invalidParams.Add(request.NewErrParamRequired("InputDataConfig"))
17896	}
17897	if s.JobName != nil && len(*s.JobName) < 1 {
17898		invalidParams.Add(request.NewErrParamMinLen("JobName", 1))
17899	}
17900	if s.LanguageCode == nil {
17901		invalidParams.Add(request.NewErrParamRequired("LanguageCode"))
17902	}
17903	if s.Mode == nil {
17904		invalidParams.Add(request.NewErrParamRequired("Mode"))
17905	}
17906	if s.OutputDataConfig == nil {
17907		invalidParams.Add(request.NewErrParamRequired("OutputDataConfig"))
17908	}
17909	if s.InputDataConfig != nil {
17910		if err := s.InputDataConfig.Validate(); err != nil {
17911			invalidParams.AddNested("InputDataConfig", err.(request.ErrInvalidParams))
17912		}
17913	}
17914	if s.OutputDataConfig != nil {
17915		if err := s.OutputDataConfig.Validate(); err != nil {
17916			invalidParams.AddNested("OutputDataConfig", err.(request.ErrInvalidParams))
17917		}
17918	}
17919	if s.RedactionConfig != nil {
17920		if err := s.RedactionConfig.Validate(); err != nil {
17921			invalidParams.AddNested("RedactionConfig", err.(request.ErrInvalidParams))
17922		}
17923	}
17924	if s.Tags != nil {
17925		for i, v := range s.Tags {
17926			if v == nil {
17927				continue
17928			}
17929			if err := v.Validate(); err != nil {
17930				invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Tags", i), err.(request.ErrInvalidParams))
17931			}
17932		}
17933	}
17934
17935	if invalidParams.Len() > 0 {
17936		return invalidParams
17937	}
17938	return nil
17939}
17940
17941// SetClientRequestToken sets the ClientRequestToken field's value.
17942func (s *StartPiiEntitiesDetectionJobInput) SetClientRequestToken(v string) *StartPiiEntitiesDetectionJobInput {
17943	s.ClientRequestToken = &v
17944	return s
17945}
17946
17947// SetDataAccessRoleArn sets the DataAccessRoleArn field's value.
17948func (s *StartPiiEntitiesDetectionJobInput) SetDataAccessRoleArn(v string) *StartPiiEntitiesDetectionJobInput {
17949	s.DataAccessRoleArn = &v
17950	return s
17951}
17952
17953// SetInputDataConfig sets the InputDataConfig field's value.
17954func (s *StartPiiEntitiesDetectionJobInput) SetInputDataConfig(v *InputDataConfig) *StartPiiEntitiesDetectionJobInput {
17955	s.InputDataConfig = v
17956	return s
17957}
17958
17959// SetJobName sets the JobName field's value.
17960func (s *StartPiiEntitiesDetectionJobInput) SetJobName(v string) *StartPiiEntitiesDetectionJobInput {
17961	s.JobName = &v
17962	return s
17963}
17964
17965// SetLanguageCode sets the LanguageCode field's value.
17966func (s *StartPiiEntitiesDetectionJobInput) SetLanguageCode(v string) *StartPiiEntitiesDetectionJobInput {
17967	s.LanguageCode = &v
17968	return s
17969}
17970
17971// SetMode sets the Mode field's value.
17972func (s *StartPiiEntitiesDetectionJobInput) SetMode(v string) *StartPiiEntitiesDetectionJobInput {
17973	s.Mode = &v
17974	return s
17975}
17976
17977// SetOutputDataConfig sets the OutputDataConfig field's value.
17978func (s *StartPiiEntitiesDetectionJobInput) SetOutputDataConfig(v *OutputDataConfig) *StartPiiEntitiesDetectionJobInput {
17979	s.OutputDataConfig = v
17980	return s
17981}
17982
17983// SetRedactionConfig sets the RedactionConfig field's value.
17984func (s *StartPiiEntitiesDetectionJobInput) SetRedactionConfig(v *RedactionConfig) *StartPiiEntitiesDetectionJobInput {
17985	s.RedactionConfig = v
17986	return s
17987}
17988
17989// SetTags sets the Tags field's value.
17990func (s *StartPiiEntitiesDetectionJobInput) SetTags(v []*Tag) *StartPiiEntitiesDetectionJobInput {
17991	s.Tags = v
17992	return s
17993}
17994
17995type StartPiiEntitiesDetectionJobOutput struct {
17996	_ struct{} `type:"structure"`
17997
17998	// The Amazon Resource Name (ARN) of the PII entity detection job. It is a unique,
17999	// fully qualified identifier for the job. It includes the AWS account, Region,
18000	// and the job ID. The format of the ARN is as follows:
18001	//
18002	// arn:<partition>:comprehend:<region>:<account-id>:pii-entities-detection-job/<job-id>
18003	//
18004	// The following is an example job ARN:
18005	//
18006	// arn:aws:comprehend:us-west-2:111122223333:pii-entities-detection-job/1234abcd12ab34cd56ef1234567890ab
18007	JobArn *string `type:"string"`
18008
18009	// The identifier generated for the job.
18010	JobId *string `min:"1" type:"string"`
18011
18012	// The status of the job.
18013	JobStatus *string `type:"string" enum:"JobStatus"`
18014}
18015
18016// String returns the string representation.
18017//
18018// API parameter values that are decorated as "sensitive" in the API will not
18019// be included in the string output. The member name will be present, but the
18020// value will be replaced with "sensitive".
18021func (s StartPiiEntitiesDetectionJobOutput) String() string {
18022	return awsutil.Prettify(s)
18023}
18024
18025// GoString returns the string representation.
18026//
18027// API parameter values that are decorated as "sensitive" in the API will not
18028// be included in the string output. The member name will be present, but the
18029// value will be replaced with "sensitive".
18030func (s StartPiiEntitiesDetectionJobOutput) GoString() string {
18031	return s.String()
18032}
18033
18034// SetJobArn sets the JobArn field's value.
18035func (s *StartPiiEntitiesDetectionJobOutput) SetJobArn(v string) *StartPiiEntitiesDetectionJobOutput {
18036	s.JobArn = &v
18037	return s
18038}
18039
18040// SetJobId sets the JobId field's value.
18041func (s *StartPiiEntitiesDetectionJobOutput) SetJobId(v string) *StartPiiEntitiesDetectionJobOutput {
18042	s.JobId = &v
18043	return s
18044}
18045
18046// SetJobStatus sets the JobStatus field's value.
18047func (s *StartPiiEntitiesDetectionJobOutput) SetJobStatus(v string) *StartPiiEntitiesDetectionJobOutput {
18048	s.JobStatus = &v
18049	return s
18050}
18051
18052type StartSentimentDetectionJobInput struct {
18053	_ struct{} `type:"structure"`
18054
18055	// A unique identifier for the request. If you don't set the client request
18056	// token, Amazon Comprehend generates one.
18057	ClientRequestToken *string `min:"1" type:"string" idempotencyToken:"true"`
18058
18059	// The Amazon Resource Name (ARN) of the AWS Identity and Access Management
18060	// (IAM) role that grants Amazon Comprehend read access to your input data.
18061	// For more information, see https://docs.aws.amazon.com/comprehend/latest/dg/access-control-managing-permissions.html#auth-role-permissions
18062	// (https://docs.aws.amazon.com/comprehend/latest/dg/access-control-managing-permissions.html#auth-role-permissions).
18063	//
18064	// DataAccessRoleArn is a required field
18065	DataAccessRoleArn *string `min:"20" type:"string" required:"true"`
18066
18067	// Specifies the format and location of the input data for the job.
18068	//
18069	// InputDataConfig is a required field
18070	InputDataConfig *InputDataConfig `type:"structure" required:"true"`
18071
18072	// The identifier of the job.
18073	JobName *string `min:"1" type:"string"`
18074
18075	// The language of the input documents. You can specify any of the primary languages
18076	// supported by Amazon Comprehend. All documents must be in the same language.
18077	//
18078	// LanguageCode is a required field
18079	LanguageCode *string `type:"string" required:"true" enum:"LanguageCode"`
18080
18081	// Specifies where to send the output files.
18082	//
18083	// OutputDataConfig is a required field
18084	OutputDataConfig *OutputDataConfig `type:"structure" required:"true"`
18085
18086	// Tags to be associated with the sentiment detection job. A tag is a key-value
18087	// pair that adds metadata to a resource used by Amazon Comprehend. For example,
18088	// a tag with "Sales" as the key might be added to a resource to indicate its
18089	// use by the sales department.
18090	Tags []*Tag `type:"list"`
18091
18092	// ID for the AWS Key Management Service (KMS) key that Amazon Comprehend uses
18093	// to encrypt data on the storage volume attached to the ML compute instance(s)
18094	// that process the analysis job. The VolumeKmsKeyId can be either of the following
18095	// formats:
18096	//
18097	//    * KMS Key ID: "1234abcd-12ab-34cd-56ef-1234567890ab"
18098	//
18099	//    * Amazon Resource Name (ARN) of a KMS Key: "arn:aws:kms:us-west-2:111122223333:key/1234abcd-12ab-34cd-56ef-1234567890ab"
18100	VolumeKmsKeyId *string `type:"string"`
18101
18102	// Configuration parameters for an optional private Virtual Private Cloud (VPC)
18103	// containing the resources you are using for your sentiment detection job.
18104	// For more information, see Amazon VPC (https://docs.aws.amazon.com/vpc/latest/userguide/what-is-amazon-vpc.html).
18105	VpcConfig *VpcConfig `type:"structure"`
18106}
18107
18108// String returns the string representation.
18109//
18110// API parameter values that are decorated as "sensitive" in the API will not
18111// be included in the string output. The member name will be present, but the
18112// value will be replaced with "sensitive".
18113func (s StartSentimentDetectionJobInput) String() string {
18114	return awsutil.Prettify(s)
18115}
18116
18117// GoString returns the string representation.
18118//
18119// API parameter values that are decorated as "sensitive" in the API will not
18120// be included in the string output. The member name will be present, but the
18121// value will be replaced with "sensitive".
18122func (s StartSentimentDetectionJobInput) GoString() string {
18123	return s.String()
18124}
18125
18126// Validate inspects the fields of the type to determine if they are valid.
18127func (s *StartSentimentDetectionJobInput) Validate() error {
18128	invalidParams := request.ErrInvalidParams{Context: "StartSentimentDetectionJobInput"}
18129	if s.ClientRequestToken != nil && len(*s.ClientRequestToken) < 1 {
18130		invalidParams.Add(request.NewErrParamMinLen("ClientRequestToken", 1))
18131	}
18132	if s.DataAccessRoleArn == nil {
18133		invalidParams.Add(request.NewErrParamRequired("DataAccessRoleArn"))
18134	}
18135	if s.DataAccessRoleArn != nil && len(*s.DataAccessRoleArn) < 20 {
18136		invalidParams.Add(request.NewErrParamMinLen("DataAccessRoleArn", 20))
18137	}
18138	if s.InputDataConfig == nil {
18139		invalidParams.Add(request.NewErrParamRequired("InputDataConfig"))
18140	}
18141	if s.JobName != nil && len(*s.JobName) < 1 {
18142		invalidParams.Add(request.NewErrParamMinLen("JobName", 1))
18143	}
18144	if s.LanguageCode == nil {
18145		invalidParams.Add(request.NewErrParamRequired("LanguageCode"))
18146	}
18147	if s.OutputDataConfig == nil {
18148		invalidParams.Add(request.NewErrParamRequired("OutputDataConfig"))
18149	}
18150	if s.InputDataConfig != nil {
18151		if err := s.InputDataConfig.Validate(); err != nil {
18152			invalidParams.AddNested("InputDataConfig", err.(request.ErrInvalidParams))
18153		}
18154	}
18155	if s.OutputDataConfig != nil {
18156		if err := s.OutputDataConfig.Validate(); err != nil {
18157			invalidParams.AddNested("OutputDataConfig", err.(request.ErrInvalidParams))
18158		}
18159	}
18160	if s.Tags != nil {
18161		for i, v := range s.Tags {
18162			if v == nil {
18163				continue
18164			}
18165			if err := v.Validate(); err != nil {
18166				invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Tags", i), err.(request.ErrInvalidParams))
18167			}
18168		}
18169	}
18170	if s.VpcConfig != nil {
18171		if err := s.VpcConfig.Validate(); err != nil {
18172			invalidParams.AddNested("VpcConfig", err.(request.ErrInvalidParams))
18173		}
18174	}
18175
18176	if invalidParams.Len() > 0 {
18177		return invalidParams
18178	}
18179	return nil
18180}
18181
18182// SetClientRequestToken sets the ClientRequestToken field's value.
18183func (s *StartSentimentDetectionJobInput) SetClientRequestToken(v string) *StartSentimentDetectionJobInput {
18184	s.ClientRequestToken = &v
18185	return s
18186}
18187
18188// SetDataAccessRoleArn sets the DataAccessRoleArn field's value.
18189func (s *StartSentimentDetectionJobInput) SetDataAccessRoleArn(v string) *StartSentimentDetectionJobInput {
18190	s.DataAccessRoleArn = &v
18191	return s
18192}
18193
18194// SetInputDataConfig sets the InputDataConfig field's value.
18195func (s *StartSentimentDetectionJobInput) SetInputDataConfig(v *InputDataConfig) *StartSentimentDetectionJobInput {
18196	s.InputDataConfig = v
18197	return s
18198}
18199
18200// SetJobName sets the JobName field's value.
18201func (s *StartSentimentDetectionJobInput) SetJobName(v string) *StartSentimentDetectionJobInput {
18202	s.JobName = &v
18203	return s
18204}
18205
18206// SetLanguageCode sets the LanguageCode field's value.
18207func (s *StartSentimentDetectionJobInput) SetLanguageCode(v string) *StartSentimentDetectionJobInput {
18208	s.LanguageCode = &v
18209	return s
18210}
18211
18212// SetOutputDataConfig sets the OutputDataConfig field's value.
18213func (s *StartSentimentDetectionJobInput) SetOutputDataConfig(v *OutputDataConfig) *StartSentimentDetectionJobInput {
18214	s.OutputDataConfig = v
18215	return s
18216}
18217
18218// SetTags sets the Tags field's value.
18219func (s *StartSentimentDetectionJobInput) SetTags(v []*Tag) *StartSentimentDetectionJobInput {
18220	s.Tags = v
18221	return s
18222}
18223
18224// SetVolumeKmsKeyId sets the VolumeKmsKeyId field's value.
18225func (s *StartSentimentDetectionJobInput) SetVolumeKmsKeyId(v string) *StartSentimentDetectionJobInput {
18226	s.VolumeKmsKeyId = &v
18227	return s
18228}
18229
18230// SetVpcConfig sets the VpcConfig field's value.
18231func (s *StartSentimentDetectionJobInput) SetVpcConfig(v *VpcConfig) *StartSentimentDetectionJobInput {
18232	s.VpcConfig = v
18233	return s
18234}
18235
18236type StartSentimentDetectionJobOutput struct {
18237	_ struct{} `type:"structure"`
18238
18239	// The Amazon Resource Name (ARN) of the sentiment detection job. It is a unique,
18240	// fully qualified identifier for the job. It includes the AWS account, Region,
18241	// and the job ID. The format of the ARN is as follows:
18242	//
18243	// arn:<partition>:comprehend:<region>:<account-id>:sentiment-detection-job/<job-id>
18244	//
18245	// The following is an example job ARN:
18246	//
18247	// arn:aws:comprehend:us-west-2:111122223333:sentiment-detection-job/1234abcd12ab34cd56ef1234567890ab
18248	JobArn *string `type:"string"`
18249
18250	// The identifier generated for the job. To get the status of a job, use this
18251	// identifier with the operation.
18252	JobId *string `min:"1" type:"string"`
18253
18254	// The status of the job.
18255	//
18256	//    * SUBMITTED - The job has been received and is queued for processing.
18257	//
18258	//    * IN_PROGRESS - Amazon Comprehend is processing the job.
18259	//
18260	//    * COMPLETED - The job was successfully completed and the output is available.
18261	//
18262	//    * FAILED - The job did not complete. To get details, use the operation.
18263	JobStatus *string `type:"string" enum:"JobStatus"`
18264}
18265
18266// String returns the string representation.
18267//
18268// API parameter values that are decorated as "sensitive" in the API will not
18269// be included in the string output. The member name will be present, but the
18270// value will be replaced with "sensitive".
18271func (s StartSentimentDetectionJobOutput) String() string {
18272	return awsutil.Prettify(s)
18273}
18274
18275// GoString returns the string representation.
18276//
18277// API parameter values that are decorated as "sensitive" in the API will not
18278// be included in the string output. The member name will be present, but the
18279// value will be replaced with "sensitive".
18280func (s StartSentimentDetectionJobOutput) GoString() string {
18281	return s.String()
18282}
18283
18284// SetJobArn sets the JobArn field's value.
18285func (s *StartSentimentDetectionJobOutput) SetJobArn(v string) *StartSentimentDetectionJobOutput {
18286	s.JobArn = &v
18287	return s
18288}
18289
18290// SetJobId sets the JobId field's value.
18291func (s *StartSentimentDetectionJobOutput) SetJobId(v string) *StartSentimentDetectionJobOutput {
18292	s.JobId = &v
18293	return s
18294}
18295
18296// SetJobStatus sets the JobStatus field's value.
18297func (s *StartSentimentDetectionJobOutput) SetJobStatus(v string) *StartSentimentDetectionJobOutput {
18298	s.JobStatus = &v
18299	return s
18300}
18301
18302type StartTopicsDetectionJobInput struct {
18303	_ struct{} `type:"structure"`
18304
18305	// A unique identifier for the request. If you do not set the client request
18306	// token, Amazon Comprehend generates one.
18307	ClientRequestToken *string `min:"1" type:"string" idempotencyToken:"true"`
18308
18309	// The Amazon Resource Name (ARN) of the AWS Identity and Access Management
18310	// (IAM) role that grants Amazon Comprehend read access to your input data.
18311	// For more information, see https://docs.aws.amazon.com/comprehend/latest/dg/access-control-managing-permissions.html#auth-role-permissions
18312	// (https://docs.aws.amazon.com/comprehend/latest/dg/access-control-managing-permissions.html#auth-role-permissions).
18313	//
18314	// DataAccessRoleArn is a required field
18315	DataAccessRoleArn *string `min:"20" type:"string" required:"true"`
18316
18317	// Specifies the format and location of the input data for the job.
18318	//
18319	// InputDataConfig is a required field
18320	InputDataConfig *InputDataConfig `type:"structure" required:"true"`
18321
18322	// The identifier of the job.
18323	JobName *string `min:"1" type:"string"`
18324
18325	// The number of topics to detect.
18326	NumberOfTopics *int64 `min:"1" type:"integer"`
18327
18328	// Specifies where to send the output files. The output is a compressed archive
18329	// with two files, topic-terms.csv that lists the terms associated with each
18330	// topic, and doc-topics.csv that lists the documents associated with each topic
18331	//
18332	// OutputDataConfig is a required field
18333	OutputDataConfig *OutputDataConfig `type:"structure" required:"true"`
18334
18335	// Tags to be associated with the topics detection job. A tag is a key-value
18336	// pair that adds metadata to a resource used by Amazon Comprehend. For example,
18337	// a tag with "Sales" as the key might be added to a resource to indicate its
18338	// use by the sales department.
18339	Tags []*Tag `type:"list"`
18340
18341	// ID for the AWS Key Management Service (KMS) key that Amazon Comprehend uses
18342	// to encrypt data on the storage volume attached to the ML compute instance(s)
18343	// that process the analysis job. The VolumeKmsKeyId can be either of the following
18344	// formats:
18345	//
18346	//    * KMS Key ID: "1234abcd-12ab-34cd-56ef-1234567890ab"
18347	//
18348	//    * Amazon Resource Name (ARN) of a KMS Key: "arn:aws:kms:us-west-2:111122223333:key/1234abcd-12ab-34cd-56ef-1234567890ab"
18349	VolumeKmsKeyId *string `type:"string"`
18350
18351	// Configuration parameters for an optional private Virtual Private Cloud (VPC)
18352	// containing the resources you are using for your topic detection job. For
18353	// more information, see Amazon VPC (https://docs.aws.amazon.com/vpc/latest/userguide/what-is-amazon-vpc.html).
18354	VpcConfig *VpcConfig `type:"structure"`
18355}
18356
18357// String returns the string representation.
18358//
18359// API parameter values that are decorated as "sensitive" in the API will not
18360// be included in the string output. The member name will be present, but the
18361// value will be replaced with "sensitive".
18362func (s StartTopicsDetectionJobInput) String() string {
18363	return awsutil.Prettify(s)
18364}
18365
18366// GoString returns the string representation.
18367//
18368// API parameter values that are decorated as "sensitive" in the API will not
18369// be included in the string output. The member name will be present, but the
18370// value will be replaced with "sensitive".
18371func (s StartTopicsDetectionJobInput) GoString() string {
18372	return s.String()
18373}
18374
18375// Validate inspects the fields of the type to determine if they are valid.
18376func (s *StartTopicsDetectionJobInput) Validate() error {
18377	invalidParams := request.ErrInvalidParams{Context: "StartTopicsDetectionJobInput"}
18378	if s.ClientRequestToken != nil && len(*s.ClientRequestToken) < 1 {
18379		invalidParams.Add(request.NewErrParamMinLen("ClientRequestToken", 1))
18380	}
18381	if s.DataAccessRoleArn == nil {
18382		invalidParams.Add(request.NewErrParamRequired("DataAccessRoleArn"))
18383	}
18384	if s.DataAccessRoleArn != nil && len(*s.DataAccessRoleArn) < 20 {
18385		invalidParams.Add(request.NewErrParamMinLen("DataAccessRoleArn", 20))
18386	}
18387	if s.InputDataConfig == nil {
18388		invalidParams.Add(request.NewErrParamRequired("InputDataConfig"))
18389	}
18390	if s.JobName != nil && len(*s.JobName) < 1 {
18391		invalidParams.Add(request.NewErrParamMinLen("JobName", 1))
18392	}
18393	if s.NumberOfTopics != nil && *s.NumberOfTopics < 1 {
18394		invalidParams.Add(request.NewErrParamMinValue("NumberOfTopics", 1))
18395	}
18396	if s.OutputDataConfig == nil {
18397		invalidParams.Add(request.NewErrParamRequired("OutputDataConfig"))
18398	}
18399	if s.InputDataConfig != nil {
18400		if err := s.InputDataConfig.Validate(); err != nil {
18401			invalidParams.AddNested("InputDataConfig", err.(request.ErrInvalidParams))
18402		}
18403	}
18404	if s.OutputDataConfig != nil {
18405		if err := s.OutputDataConfig.Validate(); err != nil {
18406			invalidParams.AddNested("OutputDataConfig", err.(request.ErrInvalidParams))
18407		}
18408	}
18409	if s.Tags != nil {
18410		for i, v := range s.Tags {
18411			if v == nil {
18412				continue
18413			}
18414			if err := v.Validate(); err != nil {
18415				invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Tags", i), err.(request.ErrInvalidParams))
18416			}
18417		}
18418	}
18419	if s.VpcConfig != nil {
18420		if err := s.VpcConfig.Validate(); err != nil {
18421			invalidParams.AddNested("VpcConfig", err.(request.ErrInvalidParams))
18422		}
18423	}
18424
18425	if invalidParams.Len() > 0 {
18426		return invalidParams
18427	}
18428	return nil
18429}
18430
18431// SetClientRequestToken sets the ClientRequestToken field's value.
18432func (s *StartTopicsDetectionJobInput) SetClientRequestToken(v string) *StartTopicsDetectionJobInput {
18433	s.ClientRequestToken = &v
18434	return s
18435}
18436
18437// SetDataAccessRoleArn sets the DataAccessRoleArn field's value.
18438func (s *StartTopicsDetectionJobInput) SetDataAccessRoleArn(v string) *StartTopicsDetectionJobInput {
18439	s.DataAccessRoleArn = &v
18440	return s
18441}
18442
18443// SetInputDataConfig sets the InputDataConfig field's value.
18444func (s *StartTopicsDetectionJobInput) SetInputDataConfig(v *InputDataConfig) *StartTopicsDetectionJobInput {
18445	s.InputDataConfig = v
18446	return s
18447}
18448
18449// SetJobName sets the JobName field's value.
18450func (s *StartTopicsDetectionJobInput) SetJobName(v string) *StartTopicsDetectionJobInput {
18451	s.JobName = &v
18452	return s
18453}
18454
18455// SetNumberOfTopics sets the NumberOfTopics field's value.
18456func (s *StartTopicsDetectionJobInput) SetNumberOfTopics(v int64) *StartTopicsDetectionJobInput {
18457	s.NumberOfTopics = &v
18458	return s
18459}
18460
18461// SetOutputDataConfig sets the OutputDataConfig field's value.
18462func (s *StartTopicsDetectionJobInput) SetOutputDataConfig(v *OutputDataConfig) *StartTopicsDetectionJobInput {
18463	s.OutputDataConfig = v
18464	return s
18465}
18466
18467// SetTags sets the Tags field's value.
18468func (s *StartTopicsDetectionJobInput) SetTags(v []*Tag) *StartTopicsDetectionJobInput {
18469	s.Tags = v
18470	return s
18471}
18472
18473// SetVolumeKmsKeyId sets the VolumeKmsKeyId field's value.
18474func (s *StartTopicsDetectionJobInput) SetVolumeKmsKeyId(v string) *StartTopicsDetectionJobInput {
18475	s.VolumeKmsKeyId = &v
18476	return s
18477}
18478
18479// SetVpcConfig sets the VpcConfig field's value.
18480func (s *StartTopicsDetectionJobInput) SetVpcConfig(v *VpcConfig) *StartTopicsDetectionJobInput {
18481	s.VpcConfig = v
18482	return s
18483}
18484
18485type StartTopicsDetectionJobOutput struct {
18486	_ struct{} `type:"structure"`
18487
18488	// The Amazon Resource Name (ARN) of the topics detection job. It is a unique,
18489	// fully qualified identifier for the job. It includes the AWS account, Region,
18490	// and the job ID. The format of the ARN is as follows:
18491	//
18492	// arn:<partition>:comprehend:<region>:<account-id>:topics-detection-job/<job-id>
18493	//
18494	// The following is an example job ARN:
18495	//
18496	// arn:aws:comprehend:us-west-2:111122223333:document-classification-job/1234abcd12ab34cd56ef1234567890ab
18497	JobArn *string `type:"string"`
18498
18499	// The identifier generated for the job. To get the status of the job, use this
18500	// identifier with the DescribeTopicDetectionJob operation.
18501	JobId *string `min:"1" type:"string"`
18502
18503	// The status of the job:
18504	//
18505	//    * SUBMITTED - The job has been received and is queued for processing.
18506	//
18507	//    * IN_PROGRESS - Amazon Comprehend is processing the job.
18508	//
18509	//    * COMPLETED - The job was successfully completed and the output is available.
18510	//
18511	//    * FAILED - The job did not complete. To get details, use the DescribeTopicDetectionJob
18512	//    operation.
18513	JobStatus *string `type:"string" enum:"JobStatus"`
18514}
18515
18516// String returns the string representation.
18517//
18518// API parameter values that are decorated as "sensitive" in the API will not
18519// be included in the string output. The member name will be present, but the
18520// value will be replaced with "sensitive".
18521func (s StartTopicsDetectionJobOutput) String() string {
18522	return awsutil.Prettify(s)
18523}
18524
18525// GoString returns the string representation.
18526//
18527// API parameter values that are decorated as "sensitive" in the API will not
18528// be included in the string output. The member name will be present, but the
18529// value will be replaced with "sensitive".
18530func (s StartTopicsDetectionJobOutput) GoString() string {
18531	return s.String()
18532}
18533
18534// SetJobArn sets the JobArn field's value.
18535func (s *StartTopicsDetectionJobOutput) SetJobArn(v string) *StartTopicsDetectionJobOutput {
18536	s.JobArn = &v
18537	return s
18538}
18539
18540// SetJobId sets the JobId field's value.
18541func (s *StartTopicsDetectionJobOutput) SetJobId(v string) *StartTopicsDetectionJobOutput {
18542	s.JobId = &v
18543	return s
18544}
18545
18546// SetJobStatus sets the JobStatus field's value.
18547func (s *StartTopicsDetectionJobOutput) SetJobStatus(v string) *StartTopicsDetectionJobOutput {
18548	s.JobStatus = &v
18549	return s
18550}
18551
18552type StopDominantLanguageDetectionJobInput struct {
18553	_ struct{} `type:"structure"`
18554
18555	// The identifier of the dominant language detection job to stop.
18556	//
18557	// JobId is a required field
18558	JobId *string `min:"1" type:"string" required:"true"`
18559}
18560
18561// String returns the string representation.
18562//
18563// API parameter values that are decorated as "sensitive" in the API will not
18564// be included in the string output. The member name will be present, but the
18565// value will be replaced with "sensitive".
18566func (s StopDominantLanguageDetectionJobInput) String() string {
18567	return awsutil.Prettify(s)
18568}
18569
18570// GoString returns the string representation.
18571//
18572// API parameter values that are decorated as "sensitive" in the API will not
18573// be included in the string output. The member name will be present, but the
18574// value will be replaced with "sensitive".
18575func (s StopDominantLanguageDetectionJobInput) GoString() string {
18576	return s.String()
18577}
18578
18579// Validate inspects the fields of the type to determine if they are valid.
18580func (s *StopDominantLanguageDetectionJobInput) Validate() error {
18581	invalidParams := request.ErrInvalidParams{Context: "StopDominantLanguageDetectionJobInput"}
18582	if s.JobId == nil {
18583		invalidParams.Add(request.NewErrParamRequired("JobId"))
18584	}
18585	if s.JobId != nil && len(*s.JobId) < 1 {
18586		invalidParams.Add(request.NewErrParamMinLen("JobId", 1))
18587	}
18588
18589	if invalidParams.Len() > 0 {
18590		return invalidParams
18591	}
18592	return nil
18593}
18594
18595// SetJobId sets the JobId field's value.
18596func (s *StopDominantLanguageDetectionJobInput) SetJobId(v string) *StopDominantLanguageDetectionJobInput {
18597	s.JobId = &v
18598	return s
18599}
18600
18601type StopDominantLanguageDetectionJobOutput struct {
18602	_ struct{} `type:"structure"`
18603
18604	// The identifier of the dominant language detection job to stop.
18605	JobId *string `min:"1" type:"string"`
18606
18607	// Either STOP_REQUESTED if the job is currently running, or STOPPED if the
18608	// job was previously stopped with the StopDominantLanguageDetectionJob operation.
18609	JobStatus *string `type:"string" enum:"JobStatus"`
18610}
18611
18612// String returns the string representation.
18613//
18614// API parameter values that are decorated as "sensitive" in the API will not
18615// be included in the string output. The member name will be present, but the
18616// value will be replaced with "sensitive".
18617func (s StopDominantLanguageDetectionJobOutput) String() string {
18618	return awsutil.Prettify(s)
18619}
18620
18621// GoString returns the string representation.
18622//
18623// API parameter values that are decorated as "sensitive" in the API will not
18624// be included in the string output. The member name will be present, but the
18625// value will be replaced with "sensitive".
18626func (s StopDominantLanguageDetectionJobOutput) GoString() string {
18627	return s.String()
18628}
18629
18630// SetJobId sets the JobId field's value.
18631func (s *StopDominantLanguageDetectionJobOutput) SetJobId(v string) *StopDominantLanguageDetectionJobOutput {
18632	s.JobId = &v
18633	return s
18634}
18635
18636// SetJobStatus sets the JobStatus field's value.
18637func (s *StopDominantLanguageDetectionJobOutput) SetJobStatus(v string) *StopDominantLanguageDetectionJobOutput {
18638	s.JobStatus = &v
18639	return s
18640}
18641
18642type StopEntitiesDetectionJobInput struct {
18643	_ struct{} `type:"structure"`
18644
18645	// The identifier of the entities detection job to stop.
18646	//
18647	// JobId is a required field
18648	JobId *string `min:"1" type:"string" required:"true"`
18649}
18650
18651// String returns the string representation.
18652//
18653// API parameter values that are decorated as "sensitive" in the API will not
18654// be included in the string output. The member name will be present, but the
18655// value will be replaced with "sensitive".
18656func (s StopEntitiesDetectionJobInput) String() string {
18657	return awsutil.Prettify(s)
18658}
18659
18660// GoString returns the string representation.
18661//
18662// API parameter values that are decorated as "sensitive" in the API will not
18663// be included in the string output. The member name will be present, but the
18664// value will be replaced with "sensitive".
18665func (s StopEntitiesDetectionJobInput) GoString() string {
18666	return s.String()
18667}
18668
18669// Validate inspects the fields of the type to determine if they are valid.
18670func (s *StopEntitiesDetectionJobInput) Validate() error {
18671	invalidParams := request.ErrInvalidParams{Context: "StopEntitiesDetectionJobInput"}
18672	if s.JobId == nil {
18673		invalidParams.Add(request.NewErrParamRequired("JobId"))
18674	}
18675	if s.JobId != nil && len(*s.JobId) < 1 {
18676		invalidParams.Add(request.NewErrParamMinLen("JobId", 1))
18677	}
18678
18679	if invalidParams.Len() > 0 {
18680		return invalidParams
18681	}
18682	return nil
18683}
18684
18685// SetJobId sets the JobId field's value.
18686func (s *StopEntitiesDetectionJobInput) SetJobId(v string) *StopEntitiesDetectionJobInput {
18687	s.JobId = &v
18688	return s
18689}
18690
18691type StopEntitiesDetectionJobOutput struct {
18692	_ struct{} `type:"structure"`
18693
18694	// The identifier of the entities detection job to stop.
18695	JobId *string `min:"1" type:"string"`
18696
18697	// Either STOP_REQUESTED if the job is currently running, or STOPPED if the
18698	// job was previously stopped with the StopEntitiesDetectionJob operation.
18699	JobStatus *string `type:"string" enum:"JobStatus"`
18700}
18701
18702// String returns the string representation.
18703//
18704// API parameter values that are decorated as "sensitive" in the API will not
18705// be included in the string output. The member name will be present, but the
18706// value will be replaced with "sensitive".
18707func (s StopEntitiesDetectionJobOutput) String() string {
18708	return awsutil.Prettify(s)
18709}
18710
18711// GoString returns the string representation.
18712//
18713// API parameter values that are decorated as "sensitive" in the API will not
18714// be included in the string output. The member name will be present, but the
18715// value will be replaced with "sensitive".
18716func (s StopEntitiesDetectionJobOutput) GoString() string {
18717	return s.String()
18718}
18719
18720// SetJobId sets the JobId field's value.
18721func (s *StopEntitiesDetectionJobOutput) SetJobId(v string) *StopEntitiesDetectionJobOutput {
18722	s.JobId = &v
18723	return s
18724}
18725
18726// SetJobStatus sets the JobStatus field's value.
18727func (s *StopEntitiesDetectionJobOutput) SetJobStatus(v string) *StopEntitiesDetectionJobOutput {
18728	s.JobStatus = &v
18729	return s
18730}
18731
18732type StopEventsDetectionJobInput struct {
18733	_ struct{} `type:"structure"`
18734
18735	// The identifier of the events detection job to stop.
18736	//
18737	// JobId is a required field
18738	JobId *string `min:"1" type:"string" required:"true"`
18739}
18740
18741// String returns the string representation.
18742//
18743// API parameter values that are decorated as "sensitive" in the API will not
18744// be included in the string output. The member name will be present, but the
18745// value will be replaced with "sensitive".
18746func (s StopEventsDetectionJobInput) String() string {
18747	return awsutil.Prettify(s)
18748}
18749
18750// GoString returns the string representation.
18751//
18752// API parameter values that are decorated as "sensitive" in the API will not
18753// be included in the string output. The member name will be present, but the
18754// value will be replaced with "sensitive".
18755func (s StopEventsDetectionJobInput) GoString() string {
18756	return s.String()
18757}
18758
18759// Validate inspects the fields of the type to determine if they are valid.
18760func (s *StopEventsDetectionJobInput) Validate() error {
18761	invalidParams := request.ErrInvalidParams{Context: "StopEventsDetectionJobInput"}
18762	if s.JobId == nil {
18763		invalidParams.Add(request.NewErrParamRequired("JobId"))
18764	}
18765	if s.JobId != nil && len(*s.JobId) < 1 {
18766		invalidParams.Add(request.NewErrParamMinLen("JobId", 1))
18767	}
18768
18769	if invalidParams.Len() > 0 {
18770		return invalidParams
18771	}
18772	return nil
18773}
18774
18775// SetJobId sets the JobId field's value.
18776func (s *StopEventsDetectionJobInput) SetJobId(v string) *StopEventsDetectionJobInput {
18777	s.JobId = &v
18778	return s
18779}
18780
18781type StopEventsDetectionJobOutput struct {
18782	_ struct{} `type:"structure"`
18783
18784	// The identifier of the events detection job to stop.
18785	JobId *string `min:"1" type:"string"`
18786
18787	// The status of the events detection job.
18788	JobStatus *string `type:"string" enum:"JobStatus"`
18789}
18790
18791// String returns the string representation.
18792//
18793// API parameter values that are decorated as "sensitive" in the API will not
18794// be included in the string output. The member name will be present, but the
18795// value will be replaced with "sensitive".
18796func (s StopEventsDetectionJobOutput) String() string {
18797	return awsutil.Prettify(s)
18798}
18799
18800// GoString returns the string representation.
18801//
18802// API parameter values that are decorated as "sensitive" in the API will not
18803// be included in the string output. The member name will be present, but the
18804// value will be replaced with "sensitive".
18805func (s StopEventsDetectionJobOutput) GoString() string {
18806	return s.String()
18807}
18808
18809// SetJobId sets the JobId field's value.
18810func (s *StopEventsDetectionJobOutput) SetJobId(v string) *StopEventsDetectionJobOutput {
18811	s.JobId = &v
18812	return s
18813}
18814
18815// SetJobStatus sets the JobStatus field's value.
18816func (s *StopEventsDetectionJobOutput) SetJobStatus(v string) *StopEventsDetectionJobOutput {
18817	s.JobStatus = &v
18818	return s
18819}
18820
18821type StopKeyPhrasesDetectionJobInput struct {
18822	_ struct{} `type:"structure"`
18823
18824	// The identifier of the key phrases detection job to stop.
18825	//
18826	// JobId is a required field
18827	JobId *string `min:"1" type:"string" required:"true"`
18828}
18829
18830// String returns the string representation.
18831//
18832// API parameter values that are decorated as "sensitive" in the API will not
18833// be included in the string output. The member name will be present, but the
18834// value will be replaced with "sensitive".
18835func (s StopKeyPhrasesDetectionJobInput) String() string {
18836	return awsutil.Prettify(s)
18837}
18838
18839// GoString returns the string representation.
18840//
18841// API parameter values that are decorated as "sensitive" in the API will not
18842// be included in the string output. The member name will be present, but the
18843// value will be replaced with "sensitive".
18844func (s StopKeyPhrasesDetectionJobInput) GoString() string {
18845	return s.String()
18846}
18847
18848// Validate inspects the fields of the type to determine if they are valid.
18849func (s *StopKeyPhrasesDetectionJobInput) Validate() error {
18850	invalidParams := request.ErrInvalidParams{Context: "StopKeyPhrasesDetectionJobInput"}
18851	if s.JobId == nil {
18852		invalidParams.Add(request.NewErrParamRequired("JobId"))
18853	}
18854	if s.JobId != nil && len(*s.JobId) < 1 {
18855		invalidParams.Add(request.NewErrParamMinLen("JobId", 1))
18856	}
18857
18858	if invalidParams.Len() > 0 {
18859		return invalidParams
18860	}
18861	return nil
18862}
18863
18864// SetJobId sets the JobId field's value.
18865func (s *StopKeyPhrasesDetectionJobInput) SetJobId(v string) *StopKeyPhrasesDetectionJobInput {
18866	s.JobId = &v
18867	return s
18868}
18869
18870type StopKeyPhrasesDetectionJobOutput struct {
18871	_ struct{} `type:"structure"`
18872
18873	// The identifier of the key phrases detection job to stop.
18874	JobId *string `min:"1" type:"string"`
18875
18876	// Either STOP_REQUESTED if the job is currently running, or STOPPED if the
18877	// job was previously stopped with the StopKeyPhrasesDetectionJob operation.
18878	JobStatus *string `type:"string" enum:"JobStatus"`
18879}
18880
18881// String returns the string representation.
18882//
18883// API parameter values that are decorated as "sensitive" in the API will not
18884// be included in the string output. The member name will be present, but the
18885// value will be replaced with "sensitive".
18886func (s StopKeyPhrasesDetectionJobOutput) String() string {
18887	return awsutil.Prettify(s)
18888}
18889
18890// GoString returns the string representation.
18891//
18892// API parameter values that are decorated as "sensitive" in the API will not
18893// be included in the string output. The member name will be present, but the
18894// value will be replaced with "sensitive".
18895func (s StopKeyPhrasesDetectionJobOutput) GoString() string {
18896	return s.String()
18897}
18898
18899// SetJobId sets the JobId field's value.
18900func (s *StopKeyPhrasesDetectionJobOutput) SetJobId(v string) *StopKeyPhrasesDetectionJobOutput {
18901	s.JobId = &v
18902	return s
18903}
18904
18905// SetJobStatus sets the JobStatus field's value.
18906func (s *StopKeyPhrasesDetectionJobOutput) SetJobStatus(v string) *StopKeyPhrasesDetectionJobOutput {
18907	s.JobStatus = &v
18908	return s
18909}
18910
18911type StopPiiEntitiesDetectionJobInput struct {
18912	_ struct{} `type:"structure"`
18913
18914	// The identifier of the PII entities detection job to stop.
18915	//
18916	// JobId is a required field
18917	JobId *string `min:"1" type:"string" required:"true"`
18918}
18919
18920// String returns the string representation.
18921//
18922// API parameter values that are decorated as "sensitive" in the API will not
18923// be included in the string output. The member name will be present, but the
18924// value will be replaced with "sensitive".
18925func (s StopPiiEntitiesDetectionJobInput) String() string {
18926	return awsutil.Prettify(s)
18927}
18928
18929// GoString returns the string representation.
18930//
18931// API parameter values that are decorated as "sensitive" in the API will not
18932// be included in the string output. The member name will be present, but the
18933// value will be replaced with "sensitive".
18934func (s StopPiiEntitiesDetectionJobInput) GoString() string {
18935	return s.String()
18936}
18937
18938// Validate inspects the fields of the type to determine if they are valid.
18939func (s *StopPiiEntitiesDetectionJobInput) Validate() error {
18940	invalidParams := request.ErrInvalidParams{Context: "StopPiiEntitiesDetectionJobInput"}
18941	if s.JobId == nil {
18942		invalidParams.Add(request.NewErrParamRequired("JobId"))
18943	}
18944	if s.JobId != nil && len(*s.JobId) < 1 {
18945		invalidParams.Add(request.NewErrParamMinLen("JobId", 1))
18946	}
18947
18948	if invalidParams.Len() > 0 {
18949		return invalidParams
18950	}
18951	return nil
18952}
18953
18954// SetJobId sets the JobId field's value.
18955func (s *StopPiiEntitiesDetectionJobInput) SetJobId(v string) *StopPiiEntitiesDetectionJobInput {
18956	s.JobId = &v
18957	return s
18958}
18959
18960type StopPiiEntitiesDetectionJobOutput struct {
18961	_ struct{} `type:"structure"`
18962
18963	// The identifier of the PII entities detection job to stop.
18964	JobId *string `min:"1" type:"string"`
18965
18966	// The status of the PII entities detection job.
18967	JobStatus *string `type:"string" enum:"JobStatus"`
18968}
18969
18970// String returns the string representation.
18971//
18972// API parameter values that are decorated as "sensitive" in the API will not
18973// be included in the string output. The member name will be present, but the
18974// value will be replaced with "sensitive".
18975func (s StopPiiEntitiesDetectionJobOutput) String() string {
18976	return awsutil.Prettify(s)
18977}
18978
18979// GoString returns the string representation.
18980//
18981// API parameter values that are decorated as "sensitive" in the API will not
18982// be included in the string output. The member name will be present, but the
18983// value will be replaced with "sensitive".
18984func (s StopPiiEntitiesDetectionJobOutput) GoString() string {
18985	return s.String()
18986}
18987
18988// SetJobId sets the JobId field's value.
18989func (s *StopPiiEntitiesDetectionJobOutput) SetJobId(v string) *StopPiiEntitiesDetectionJobOutput {
18990	s.JobId = &v
18991	return s
18992}
18993
18994// SetJobStatus sets the JobStatus field's value.
18995func (s *StopPiiEntitiesDetectionJobOutput) SetJobStatus(v string) *StopPiiEntitiesDetectionJobOutput {
18996	s.JobStatus = &v
18997	return s
18998}
18999
19000type StopSentimentDetectionJobInput struct {
19001	_ struct{} `type:"structure"`
19002
19003	// The identifier of the sentiment detection job to stop.
19004	//
19005	// JobId is a required field
19006	JobId *string `min:"1" type:"string" required:"true"`
19007}
19008
19009// String returns the string representation.
19010//
19011// API parameter values that are decorated as "sensitive" in the API will not
19012// be included in the string output. The member name will be present, but the
19013// value will be replaced with "sensitive".
19014func (s StopSentimentDetectionJobInput) String() string {
19015	return awsutil.Prettify(s)
19016}
19017
19018// GoString returns the string representation.
19019//
19020// API parameter values that are decorated as "sensitive" in the API will not
19021// be included in the string output. The member name will be present, but the
19022// value will be replaced with "sensitive".
19023func (s StopSentimentDetectionJobInput) GoString() string {
19024	return s.String()
19025}
19026
19027// Validate inspects the fields of the type to determine if they are valid.
19028func (s *StopSentimentDetectionJobInput) Validate() error {
19029	invalidParams := request.ErrInvalidParams{Context: "StopSentimentDetectionJobInput"}
19030	if s.JobId == nil {
19031		invalidParams.Add(request.NewErrParamRequired("JobId"))
19032	}
19033	if s.JobId != nil && len(*s.JobId) < 1 {
19034		invalidParams.Add(request.NewErrParamMinLen("JobId", 1))
19035	}
19036
19037	if invalidParams.Len() > 0 {
19038		return invalidParams
19039	}
19040	return nil
19041}
19042
19043// SetJobId sets the JobId field's value.
19044func (s *StopSentimentDetectionJobInput) SetJobId(v string) *StopSentimentDetectionJobInput {
19045	s.JobId = &v
19046	return s
19047}
19048
19049type StopSentimentDetectionJobOutput struct {
19050	_ struct{} `type:"structure"`
19051
19052	// The identifier of the sentiment detection job to stop.
19053	JobId *string `min:"1" type:"string"`
19054
19055	// Either STOP_REQUESTED if the job is currently running, or STOPPED if the
19056	// job was previously stopped with the StopSentimentDetectionJob operation.
19057	JobStatus *string `type:"string" enum:"JobStatus"`
19058}
19059
19060// String returns the string representation.
19061//
19062// API parameter values that are decorated as "sensitive" in the API will not
19063// be included in the string output. The member name will be present, but the
19064// value will be replaced with "sensitive".
19065func (s StopSentimentDetectionJobOutput) String() string {
19066	return awsutil.Prettify(s)
19067}
19068
19069// GoString returns the string representation.
19070//
19071// API parameter values that are decorated as "sensitive" in the API will not
19072// be included in the string output. The member name will be present, but the
19073// value will be replaced with "sensitive".
19074func (s StopSentimentDetectionJobOutput) GoString() string {
19075	return s.String()
19076}
19077
19078// SetJobId sets the JobId field's value.
19079func (s *StopSentimentDetectionJobOutput) SetJobId(v string) *StopSentimentDetectionJobOutput {
19080	s.JobId = &v
19081	return s
19082}
19083
19084// SetJobStatus sets the JobStatus field's value.
19085func (s *StopSentimentDetectionJobOutput) SetJobStatus(v string) *StopSentimentDetectionJobOutput {
19086	s.JobStatus = &v
19087	return s
19088}
19089
19090type StopTrainingDocumentClassifierInput struct {
19091	_ struct{} `type:"structure"`
19092
19093	// The Amazon Resource Name (ARN) that identifies the document classifier currently
19094	// being trained.
19095	//
19096	// DocumentClassifierArn is a required field
19097	DocumentClassifierArn *string `type:"string" required:"true"`
19098}
19099
19100// String returns the string representation.
19101//
19102// API parameter values that are decorated as "sensitive" in the API will not
19103// be included in the string output. The member name will be present, but the
19104// value will be replaced with "sensitive".
19105func (s StopTrainingDocumentClassifierInput) String() string {
19106	return awsutil.Prettify(s)
19107}
19108
19109// GoString returns the string representation.
19110//
19111// API parameter values that are decorated as "sensitive" in the API will not
19112// be included in the string output. The member name will be present, but the
19113// value will be replaced with "sensitive".
19114func (s StopTrainingDocumentClassifierInput) GoString() string {
19115	return s.String()
19116}
19117
19118// Validate inspects the fields of the type to determine if they are valid.
19119func (s *StopTrainingDocumentClassifierInput) Validate() error {
19120	invalidParams := request.ErrInvalidParams{Context: "StopTrainingDocumentClassifierInput"}
19121	if s.DocumentClassifierArn == nil {
19122		invalidParams.Add(request.NewErrParamRequired("DocumentClassifierArn"))
19123	}
19124
19125	if invalidParams.Len() > 0 {
19126		return invalidParams
19127	}
19128	return nil
19129}
19130
19131// SetDocumentClassifierArn sets the DocumentClassifierArn field's value.
19132func (s *StopTrainingDocumentClassifierInput) SetDocumentClassifierArn(v string) *StopTrainingDocumentClassifierInput {
19133	s.DocumentClassifierArn = &v
19134	return s
19135}
19136
19137type StopTrainingDocumentClassifierOutput struct {
19138	_ struct{} `type:"structure"`
19139}
19140
19141// String returns the string representation.
19142//
19143// API parameter values that are decorated as "sensitive" in the API will not
19144// be included in the string output. The member name will be present, but the
19145// value will be replaced with "sensitive".
19146func (s StopTrainingDocumentClassifierOutput) String() string {
19147	return awsutil.Prettify(s)
19148}
19149
19150// GoString returns the string representation.
19151//
19152// API parameter values that are decorated as "sensitive" in the API will not
19153// be included in the string output. The member name will be present, but the
19154// value will be replaced with "sensitive".
19155func (s StopTrainingDocumentClassifierOutput) GoString() string {
19156	return s.String()
19157}
19158
19159type StopTrainingEntityRecognizerInput struct {
19160	_ struct{} `type:"structure"`
19161
19162	// The Amazon Resource Name (ARN) that identifies the entity recognizer currently
19163	// being trained.
19164	//
19165	// EntityRecognizerArn is a required field
19166	EntityRecognizerArn *string `type:"string" required:"true"`
19167}
19168
19169// String returns the string representation.
19170//
19171// API parameter values that are decorated as "sensitive" in the API will not
19172// be included in the string output. The member name will be present, but the
19173// value will be replaced with "sensitive".
19174func (s StopTrainingEntityRecognizerInput) String() string {
19175	return awsutil.Prettify(s)
19176}
19177
19178// GoString returns the string representation.
19179//
19180// API parameter values that are decorated as "sensitive" in the API will not
19181// be included in the string output. The member name will be present, but the
19182// value will be replaced with "sensitive".
19183func (s StopTrainingEntityRecognizerInput) GoString() string {
19184	return s.String()
19185}
19186
19187// Validate inspects the fields of the type to determine if they are valid.
19188func (s *StopTrainingEntityRecognizerInput) Validate() error {
19189	invalidParams := request.ErrInvalidParams{Context: "StopTrainingEntityRecognizerInput"}
19190	if s.EntityRecognizerArn == nil {
19191		invalidParams.Add(request.NewErrParamRequired("EntityRecognizerArn"))
19192	}
19193
19194	if invalidParams.Len() > 0 {
19195		return invalidParams
19196	}
19197	return nil
19198}
19199
19200// SetEntityRecognizerArn sets the EntityRecognizerArn field's value.
19201func (s *StopTrainingEntityRecognizerInput) SetEntityRecognizerArn(v string) *StopTrainingEntityRecognizerInput {
19202	s.EntityRecognizerArn = &v
19203	return s
19204}
19205
19206type StopTrainingEntityRecognizerOutput struct {
19207	_ struct{} `type:"structure"`
19208}
19209
19210// String returns the string representation.
19211//
19212// API parameter values that are decorated as "sensitive" in the API will not
19213// be included in the string output. The member name will be present, but the
19214// value will be replaced with "sensitive".
19215func (s StopTrainingEntityRecognizerOutput) String() string {
19216	return awsutil.Prettify(s)
19217}
19218
19219// GoString returns the string representation.
19220//
19221// API parameter values that are decorated as "sensitive" in the API will not
19222// be included in the string output. The member name will be present, but the
19223// value will be replaced with "sensitive".
19224func (s StopTrainingEntityRecognizerOutput) GoString() string {
19225	return s.String()
19226}
19227
19228// Represents a work in the input text that was recognized and assigned a part
19229// of speech. There is one syntax token record for each word in the source text.
19230type SyntaxToken struct {
19231	_ struct{} `type:"structure"`
19232
19233	// The zero-based offset from the beginning of the source text to the first
19234	// character in the word.
19235	BeginOffset *int64 `type:"integer"`
19236
19237	// The zero-based offset from the beginning of the source text to the last character
19238	// in the word.
19239	EndOffset *int64 `type:"integer"`
19240
19241	// Provides the part of speech label and the confidence level that Amazon Comprehend
19242	// has that the part of speech was correctly identified. For more information,
19243	// see how-syntax.
19244	PartOfSpeech *PartOfSpeechTag `type:"structure"`
19245
19246	// The word that was recognized in the source text.
19247	Text *string `min:"1" type:"string"`
19248
19249	// A unique identifier for a token.
19250	TokenId *int64 `type:"integer"`
19251}
19252
19253// String returns the string representation.
19254//
19255// API parameter values that are decorated as "sensitive" in the API will not
19256// be included in the string output. The member name will be present, but the
19257// value will be replaced with "sensitive".
19258func (s SyntaxToken) String() string {
19259	return awsutil.Prettify(s)
19260}
19261
19262// GoString returns the string representation.
19263//
19264// API parameter values that are decorated as "sensitive" in the API will not
19265// be included in the string output. The member name will be present, but the
19266// value will be replaced with "sensitive".
19267func (s SyntaxToken) GoString() string {
19268	return s.String()
19269}
19270
19271// SetBeginOffset sets the BeginOffset field's value.
19272func (s *SyntaxToken) SetBeginOffset(v int64) *SyntaxToken {
19273	s.BeginOffset = &v
19274	return s
19275}
19276
19277// SetEndOffset sets the EndOffset field's value.
19278func (s *SyntaxToken) SetEndOffset(v int64) *SyntaxToken {
19279	s.EndOffset = &v
19280	return s
19281}
19282
19283// SetPartOfSpeech sets the PartOfSpeech field's value.
19284func (s *SyntaxToken) SetPartOfSpeech(v *PartOfSpeechTag) *SyntaxToken {
19285	s.PartOfSpeech = v
19286	return s
19287}
19288
19289// SetText sets the Text field's value.
19290func (s *SyntaxToken) SetText(v string) *SyntaxToken {
19291	s.Text = &v
19292	return s
19293}
19294
19295// SetTokenId sets the TokenId field's value.
19296func (s *SyntaxToken) SetTokenId(v int64) *SyntaxToken {
19297	s.TokenId = &v
19298	return s
19299}
19300
19301// A key-value pair that adds as a metadata to a resource used by Amazon Comprehend.
19302// For example, a tag with the key-value pair ‘Department’:’Sales’ might
19303// be added to a resource to indicate its use by a particular department.
19304type Tag struct {
19305	_ struct{} `type:"structure"`
19306
19307	// The initial part of a key-value pair that forms a tag associated with a given
19308	// resource. For instance, if you want to show which resources are used by which
19309	// departments, you might use “Department” as the key portion of the pair,
19310	// with multiple possible values such as “sales,” “legal,” and “administration.”
19311	//
19312	// Key is a required field
19313	Key *string `min:"1" type:"string" required:"true"`
19314
19315	// The second part of a key-value pair that forms a tag associated with a given
19316	// resource. For instance, if you want to show which resources are used by which
19317	// departments, you might use “Department” as the initial (key) portion
19318	// of the pair, with a value of “sales” to indicate the sales department.
19319	Value *string `type:"string"`
19320}
19321
19322// String returns the string representation.
19323//
19324// API parameter values that are decorated as "sensitive" in the API will not
19325// be included in the string output. The member name will be present, but the
19326// value will be replaced with "sensitive".
19327func (s Tag) String() string {
19328	return awsutil.Prettify(s)
19329}
19330
19331// GoString returns the string representation.
19332//
19333// API parameter values that are decorated as "sensitive" in the API will not
19334// be included in the string output. The member name will be present, but the
19335// value will be replaced with "sensitive".
19336func (s Tag) GoString() string {
19337	return s.String()
19338}
19339
19340// Validate inspects the fields of the type to determine if they are valid.
19341func (s *Tag) Validate() error {
19342	invalidParams := request.ErrInvalidParams{Context: "Tag"}
19343	if s.Key == nil {
19344		invalidParams.Add(request.NewErrParamRequired("Key"))
19345	}
19346	if s.Key != nil && len(*s.Key) < 1 {
19347		invalidParams.Add(request.NewErrParamMinLen("Key", 1))
19348	}
19349
19350	if invalidParams.Len() > 0 {
19351		return invalidParams
19352	}
19353	return nil
19354}
19355
19356// SetKey sets the Key field's value.
19357func (s *Tag) SetKey(v string) *Tag {
19358	s.Key = &v
19359	return s
19360}
19361
19362// SetValue sets the Value field's value.
19363func (s *Tag) SetValue(v string) *Tag {
19364	s.Value = &v
19365	return s
19366}
19367
19368type TagResourceInput struct {
19369	_ struct{} `type:"structure"`
19370
19371	// The Amazon Resource Name (ARN) of the given Amazon Comprehend resource to
19372	// which you want to associate the tags.
19373	//
19374	// ResourceArn is a required field
19375	ResourceArn *string `type:"string" required:"true"`
19376
19377	// Tags being associated with a specific Amazon Comprehend resource. There can
19378	// be a maximum of 50 tags (both existing and pending) associated with a specific
19379	// resource.
19380	//
19381	// Tags is a required field
19382	Tags []*Tag `type:"list" required:"true"`
19383}
19384
19385// String returns the string representation.
19386//
19387// API parameter values that are decorated as "sensitive" in the API will not
19388// be included in the string output. The member name will be present, but the
19389// value will be replaced with "sensitive".
19390func (s TagResourceInput) String() string {
19391	return awsutil.Prettify(s)
19392}
19393
19394// GoString returns the string representation.
19395//
19396// API parameter values that are decorated as "sensitive" in the API will not
19397// be included in the string output. The member name will be present, but the
19398// value will be replaced with "sensitive".
19399func (s TagResourceInput) GoString() string {
19400	return s.String()
19401}
19402
19403// Validate inspects the fields of the type to determine if they are valid.
19404func (s *TagResourceInput) Validate() error {
19405	invalidParams := request.ErrInvalidParams{Context: "TagResourceInput"}
19406	if s.ResourceArn == nil {
19407		invalidParams.Add(request.NewErrParamRequired("ResourceArn"))
19408	}
19409	if s.Tags == nil {
19410		invalidParams.Add(request.NewErrParamRequired("Tags"))
19411	}
19412	if s.Tags != nil {
19413		for i, v := range s.Tags {
19414			if v == nil {
19415				continue
19416			}
19417			if err := v.Validate(); err != nil {
19418				invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Tags", i), err.(request.ErrInvalidParams))
19419			}
19420		}
19421	}
19422
19423	if invalidParams.Len() > 0 {
19424		return invalidParams
19425	}
19426	return nil
19427}
19428
19429// SetResourceArn sets the ResourceArn field's value.
19430func (s *TagResourceInput) SetResourceArn(v string) *TagResourceInput {
19431	s.ResourceArn = &v
19432	return s
19433}
19434
19435// SetTags sets the Tags field's value.
19436func (s *TagResourceInput) SetTags(v []*Tag) *TagResourceInput {
19437	s.Tags = v
19438	return s
19439}
19440
19441type TagResourceOutput struct {
19442	_ struct{} `type:"structure"`
19443}
19444
19445// String returns the string representation.
19446//
19447// API parameter values that are decorated as "sensitive" in the API will not
19448// be included in the string output. The member name will be present, but the
19449// value will be replaced with "sensitive".
19450func (s TagResourceOutput) String() string {
19451	return awsutil.Prettify(s)
19452}
19453
19454// GoString returns the string representation.
19455//
19456// API parameter values that are decorated as "sensitive" in the API will not
19457// be included in the string output. The member name will be present, but the
19458// value will be replaced with "sensitive".
19459func (s TagResourceOutput) GoString() string {
19460	return s.String()
19461}
19462
19463// The size of the input text exceeds the limit. Use a smaller document.
19464type TextSizeLimitExceededException struct {
19465	_            struct{}                  `type:"structure"`
19466	RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"`
19467
19468	Message_ *string `locationName:"Message" min:"1" type:"string"`
19469}
19470
19471// String returns the string representation.
19472//
19473// API parameter values that are decorated as "sensitive" in the API will not
19474// be included in the string output. The member name will be present, but the
19475// value will be replaced with "sensitive".
19476func (s TextSizeLimitExceededException) String() string {
19477	return awsutil.Prettify(s)
19478}
19479
19480// GoString returns the string representation.
19481//
19482// API parameter values that are decorated as "sensitive" in the API will not
19483// be included in the string output. The member name will be present, but the
19484// value will be replaced with "sensitive".
19485func (s TextSizeLimitExceededException) GoString() string {
19486	return s.String()
19487}
19488
19489func newErrorTextSizeLimitExceededException(v protocol.ResponseMetadata) error {
19490	return &TextSizeLimitExceededException{
19491		RespMetadata: v,
19492	}
19493}
19494
19495// Code returns the exception type name.
19496func (s *TextSizeLimitExceededException) Code() string {
19497	return "TextSizeLimitExceededException"
19498}
19499
19500// Message returns the exception's message.
19501func (s *TextSizeLimitExceededException) Message() string {
19502	if s.Message_ != nil {
19503		return *s.Message_
19504	}
19505	return ""
19506}
19507
19508// OrigErr always returns nil, satisfies awserr.Error interface.
19509func (s *TextSizeLimitExceededException) OrigErr() error {
19510	return nil
19511}
19512
19513func (s *TextSizeLimitExceededException) Error() string {
19514	return fmt.Sprintf("%s: %s", s.Code(), s.Message())
19515}
19516
19517// Status code returns the HTTP status code for the request's response error.
19518func (s *TextSizeLimitExceededException) StatusCode() int {
19519	return s.RespMetadata.StatusCode
19520}
19521
19522// RequestID returns the service's response RequestID for request.
19523func (s *TextSizeLimitExceededException) RequestID() string {
19524	return s.RespMetadata.RequestID
19525}
19526
19527// The number of requests exceeds the limit. Resubmit your request later.
19528type TooManyRequestsException struct {
19529	_            struct{}                  `type:"structure"`
19530	RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"`
19531
19532	Message_ *string `locationName:"Message" min:"1" type:"string"`
19533}
19534
19535// String returns the string representation.
19536//
19537// API parameter values that are decorated as "sensitive" in the API will not
19538// be included in the string output. The member name will be present, but the
19539// value will be replaced with "sensitive".
19540func (s TooManyRequestsException) String() string {
19541	return awsutil.Prettify(s)
19542}
19543
19544// GoString returns the string representation.
19545//
19546// API parameter values that are decorated as "sensitive" in the API will not
19547// be included in the string output. The member name will be present, but the
19548// value will be replaced with "sensitive".
19549func (s TooManyRequestsException) GoString() string {
19550	return s.String()
19551}
19552
19553func newErrorTooManyRequestsException(v protocol.ResponseMetadata) error {
19554	return &TooManyRequestsException{
19555		RespMetadata: v,
19556	}
19557}
19558
19559// Code returns the exception type name.
19560func (s *TooManyRequestsException) Code() string {
19561	return "TooManyRequestsException"
19562}
19563
19564// Message returns the exception's message.
19565func (s *TooManyRequestsException) Message() string {
19566	if s.Message_ != nil {
19567		return *s.Message_
19568	}
19569	return ""
19570}
19571
19572// OrigErr always returns nil, satisfies awserr.Error interface.
19573func (s *TooManyRequestsException) OrigErr() error {
19574	return nil
19575}
19576
19577func (s *TooManyRequestsException) Error() string {
19578	return fmt.Sprintf("%s: %s", s.Code(), s.Message())
19579}
19580
19581// Status code returns the HTTP status code for the request's response error.
19582func (s *TooManyRequestsException) StatusCode() int {
19583	return s.RespMetadata.StatusCode
19584}
19585
19586// RequestID returns the service's response RequestID for request.
19587func (s *TooManyRequestsException) RequestID() string {
19588	return s.RespMetadata.RequestID
19589}
19590
19591// The request contains more tag keys than can be associated with a resource
19592// (50 tag keys per resource).
19593type TooManyTagKeysException struct {
19594	_            struct{}                  `type:"structure"`
19595	RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"`
19596
19597	Message_ *string `locationName:"Message" min:"1" type:"string"`
19598}
19599
19600// String returns the string representation.
19601//
19602// API parameter values that are decorated as "sensitive" in the API will not
19603// be included in the string output. The member name will be present, but the
19604// value will be replaced with "sensitive".
19605func (s TooManyTagKeysException) String() string {
19606	return awsutil.Prettify(s)
19607}
19608
19609// GoString returns the string representation.
19610//
19611// API parameter values that are decorated as "sensitive" in the API will not
19612// be included in the string output. The member name will be present, but the
19613// value will be replaced with "sensitive".
19614func (s TooManyTagKeysException) GoString() string {
19615	return s.String()
19616}
19617
19618func newErrorTooManyTagKeysException(v protocol.ResponseMetadata) error {
19619	return &TooManyTagKeysException{
19620		RespMetadata: v,
19621	}
19622}
19623
19624// Code returns the exception type name.
19625func (s *TooManyTagKeysException) Code() string {
19626	return "TooManyTagKeysException"
19627}
19628
19629// Message returns the exception's message.
19630func (s *TooManyTagKeysException) Message() string {
19631	if s.Message_ != nil {
19632		return *s.Message_
19633	}
19634	return ""
19635}
19636
19637// OrigErr always returns nil, satisfies awserr.Error interface.
19638func (s *TooManyTagKeysException) OrigErr() error {
19639	return nil
19640}
19641
19642func (s *TooManyTagKeysException) Error() string {
19643	return fmt.Sprintf("%s: %s", s.Code(), s.Message())
19644}
19645
19646// Status code returns the HTTP status code for the request's response error.
19647func (s *TooManyTagKeysException) StatusCode() int {
19648	return s.RespMetadata.StatusCode
19649}
19650
19651// RequestID returns the service's response RequestID for request.
19652func (s *TooManyTagKeysException) RequestID() string {
19653	return s.RespMetadata.RequestID
19654}
19655
19656// The request contains more tags than can be associated with a resource (50
19657// tags per resource). The maximum number of tags includes both existing tags
19658// and those included in your current request.
19659type TooManyTagsException struct {
19660	_            struct{}                  `type:"structure"`
19661	RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"`
19662
19663	Message_ *string `locationName:"Message" min:"1" type:"string"`
19664}
19665
19666// String returns the string representation.
19667//
19668// API parameter values that are decorated as "sensitive" in the API will not
19669// be included in the string output. The member name will be present, but the
19670// value will be replaced with "sensitive".
19671func (s TooManyTagsException) String() string {
19672	return awsutil.Prettify(s)
19673}
19674
19675// GoString returns the string representation.
19676//
19677// API parameter values that are decorated as "sensitive" in the API will not
19678// be included in the string output. The member name will be present, but the
19679// value will be replaced with "sensitive".
19680func (s TooManyTagsException) GoString() string {
19681	return s.String()
19682}
19683
19684func newErrorTooManyTagsException(v protocol.ResponseMetadata) error {
19685	return &TooManyTagsException{
19686		RespMetadata: v,
19687	}
19688}
19689
19690// Code returns the exception type name.
19691func (s *TooManyTagsException) Code() string {
19692	return "TooManyTagsException"
19693}
19694
19695// Message returns the exception's message.
19696func (s *TooManyTagsException) Message() string {
19697	if s.Message_ != nil {
19698		return *s.Message_
19699	}
19700	return ""
19701}
19702
19703// OrigErr always returns nil, satisfies awserr.Error interface.
19704func (s *TooManyTagsException) OrigErr() error {
19705	return nil
19706}
19707
19708func (s *TooManyTagsException) Error() string {
19709	return fmt.Sprintf("%s: %s", s.Code(), s.Message())
19710}
19711
19712// Status code returns the HTTP status code for the request's response error.
19713func (s *TooManyTagsException) StatusCode() int {
19714	return s.RespMetadata.StatusCode
19715}
19716
19717// RequestID returns the service's response RequestID for request.
19718func (s *TooManyTagsException) RequestID() string {
19719	return s.RespMetadata.RequestID
19720}
19721
19722// Provides information for filtering topic detection jobs. For more information,
19723// see .
19724type TopicsDetectionJobFilter struct {
19725	_ struct{} `type:"structure"`
19726
19727	JobName *string `min:"1" type:"string"`
19728
19729	// Filters the list of topic detection jobs based on job status. Returns only
19730	// jobs with the specified status.
19731	JobStatus *string `type:"string" enum:"JobStatus"`
19732
19733	// Filters the list of jobs based on the time that the job was submitted for
19734	// processing. Only returns jobs submitted after the specified time. Jobs are
19735	// returned in ascending order, oldest to newest.
19736	SubmitTimeAfter *time.Time `type:"timestamp"`
19737
19738	// Filters the list of jobs based on the time that the job was submitted for
19739	// processing. Only returns jobs submitted before the specified time. Jobs are
19740	// returned in descending order, newest to oldest.
19741	SubmitTimeBefore *time.Time `type:"timestamp"`
19742}
19743
19744// String returns the string representation.
19745//
19746// API parameter values that are decorated as "sensitive" in the API will not
19747// be included in the string output. The member name will be present, but the
19748// value will be replaced with "sensitive".
19749func (s TopicsDetectionJobFilter) String() string {
19750	return awsutil.Prettify(s)
19751}
19752
19753// GoString returns the string representation.
19754//
19755// API parameter values that are decorated as "sensitive" in the API will not
19756// be included in the string output. The member name will be present, but the
19757// value will be replaced with "sensitive".
19758func (s TopicsDetectionJobFilter) GoString() string {
19759	return s.String()
19760}
19761
19762// Validate inspects the fields of the type to determine if they are valid.
19763func (s *TopicsDetectionJobFilter) Validate() error {
19764	invalidParams := request.ErrInvalidParams{Context: "TopicsDetectionJobFilter"}
19765	if s.JobName != nil && len(*s.JobName) < 1 {
19766		invalidParams.Add(request.NewErrParamMinLen("JobName", 1))
19767	}
19768
19769	if invalidParams.Len() > 0 {
19770		return invalidParams
19771	}
19772	return nil
19773}
19774
19775// SetJobName sets the JobName field's value.
19776func (s *TopicsDetectionJobFilter) SetJobName(v string) *TopicsDetectionJobFilter {
19777	s.JobName = &v
19778	return s
19779}
19780
19781// SetJobStatus sets the JobStatus field's value.
19782func (s *TopicsDetectionJobFilter) SetJobStatus(v string) *TopicsDetectionJobFilter {
19783	s.JobStatus = &v
19784	return s
19785}
19786
19787// SetSubmitTimeAfter sets the SubmitTimeAfter field's value.
19788func (s *TopicsDetectionJobFilter) SetSubmitTimeAfter(v time.Time) *TopicsDetectionJobFilter {
19789	s.SubmitTimeAfter = &v
19790	return s
19791}
19792
19793// SetSubmitTimeBefore sets the SubmitTimeBefore field's value.
19794func (s *TopicsDetectionJobFilter) SetSubmitTimeBefore(v time.Time) *TopicsDetectionJobFilter {
19795	s.SubmitTimeBefore = &v
19796	return s
19797}
19798
19799// Provides information about a topic detection job.
19800type TopicsDetectionJobProperties struct {
19801	_ struct{} `type:"structure"`
19802
19803	// The Amazon Resource Name (ARN) of the AWS Identity and Management (IAM) role
19804	// that grants Amazon Comprehend read access to your job data.
19805	DataAccessRoleArn *string `min:"20" type:"string"`
19806
19807	// The time that the topic detection job was completed.
19808	EndTime *time.Time `type:"timestamp"`
19809
19810	// The input data configuration supplied when you created the topic detection
19811	// job.
19812	InputDataConfig *InputDataConfig `type:"structure"`
19813
19814	// The Amazon Resource Name (ARN) of the topics detection job. It is a unique,
19815	// fully qualified identifier for the job. It includes the AWS account, Region,
19816	// and the job ID. The format of the ARN is as follows:
19817	//
19818	// arn:<partition>:comprehend:<region>:<account-id>:topics-detection-job/<job-id>
19819	//
19820	// The following is an example job ARN:
19821	//
19822	// arn:aws:comprehend:us-west-2:111122223333:topics-detection-job/1234abcd12ab34cd56ef1234567890ab
19823	JobArn *string `type:"string"`
19824
19825	// The identifier assigned to the topic detection job.
19826	JobId *string `min:"1" type:"string"`
19827
19828	// The name of the topic detection job.
19829	JobName *string `min:"1" type:"string"`
19830
19831	// The current status of the topic detection job. If the status is Failed, the
19832	// reason for the failure is shown in the Message field.
19833	JobStatus *string `type:"string" enum:"JobStatus"`
19834
19835	// A description for the status of a job.
19836	Message *string `type:"string"`
19837
19838	// The number of topics to detect supplied when you created the topic detection
19839	// job. The default is 10.
19840	NumberOfTopics *int64 `type:"integer"`
19841
19842	// The output data configuration supplied when you created the topic detection
19843	// job.
19844	OutputDataConfig *OutputDataConfig `type:"structure"`
19845
19846	// The time that the topic detection job was submitted for processing.
19847	SubmitTime *time.Time `type:"timestamp"`
19848
19849	// ID for the AWS Key Management Service (KMS) key that Amazon Comprehend uses
19850	// to encrypt data on the storage volume attached to the ML compute instance(s)
19851	// that process the analysis job. The VolumeKmsKeyId can be either of the following
19852	// formats:
19853	//
19854	//    * KMS Key ID: "1234abcd-12ab-34cd-56ef-1234567890ab"
19855	//
19856	//    * Amazon Resource Name (ARN) of a KMS Key: "arn:aws:kms:us-west-2:111122223333:key/1234abcd-12ab-34cd-56ef-1234567890ab"
19857	VolumeKmsKeyId *string `type:"string"`
19858
19859	// Configuration parameters for a private Virtual Private Cloud (VPC) containing
19860	// the resources you are using for your topic detection job. For more information,
19861	// see Amazon VPC (https://docs.aws.amazon.com/vpc/latest/userguide/what-is-amazon-vpc.html).
19862	VpcConfig *VpcConfig `type:"structure"`
19863}
19864
19865// String returns the string representation.
19866//
19867// API parameter values that are decorated as "sensitive" in the API will not
19868// be included in the string output. The member name will be present, but the
19869// value will be replaced with "sensitive".
19870func (s TopicsDetectionJobProperties) String() string {
19871	return awsutil.Prettify(s)
19872}
19873
19874// GoString returns the string representation.
19875//
19876// API parameter values that are decorated as "sensitive" in the API will not
19877// be included in the string output. The member name will be present, but the
19878// value will be replaced with "sensitive".
19879func (s TopicsDetectionJobProperties) GoString() string {
19880	return s.String()
19881}
19882
19883// SetDataAccessRoleArn sets the DataAccessRoleArn field's value.
19884func (s *TopicsDetectionJobProperties) SetDataAccessRoleArn(v string) *TopicsDetectionJobProperties {
19885	s.DataAccessRoleArn = &v
19886	return s
19887}
19888
19889// SetEndTime sets the EndTime field's value.
19890func (s *TopicsDetectionJobProperties) SetEndTime(v time.Time) *TopicsDetectionJobProperties {
19891	s.EndTime = &v
19892	return s
19893}
19894
19895// SetInputDataConfig sets the InputDataConfig field's value.
19896func (s *TopicsDetectionJobProperties) SetInputDataConfig(v *InputDataConfig) *TopicsDetectionJobProperties {
19897	s.InputDataConfig = v
19898	return s
19899}
19900
19901// SetJobArn sets the JobArn field's value.
19902func (s *TopicsDetectionJobProperties) SetJobArn(v string) *TopicsDetectionJobProperties {
19903	s.JobArn = &v
19904	return s
19905}
19906
19907// SetJobId sets the JobId field's value.
19908func (s *TopicsDetectionJobProperties) SetJobId(v string) *TopicsDetectionJobProperties {
19909	s.JobId = &v
19910	return s
19911}
19912
19913// SetJobName sets the JobName field's value.
19914func (s *TopicsDetectionJobProperties) SetJobName(v string) *TopicsDetectionJobProperties {
19915	s.JobName = &v
19916	return s
19917}
19918
19919// SetJobStatus sets the JobStatus field's value.
19920func (s *TopicsDetectionJobProperties) SetJobStatus(v string) *TopicsDetectionJobProperties {
19921	s.JobStatus = &v
19922	return s
19923}
19924
19925// SetMessage sets the Message field's value.
19926func (s *TopicsDetectionJobProperties) SetMessage(v string) *TopicsDetectionJobProperties {
19927	s.Message = &v
19928	return s
19929}
19930
19931// SetNumberOfTopics sets the NumberOfTopics field's value.
19932func (s *TopicsDetectionJobProperties) SetNumberOfTopics(v int64) *TopicsDetectionJobProperties {
19933	s.NumberOfTopics = &v
19934	return s
19935}
19936
19937// SetOutputDataConfig sets the OutputDataConfig field's value.
19938func (s *TopicsDetectionJobProperties) SetOutputDataConfig(v *OutputDataConfig) *TopicsDetectionJobProperties {
19939	s.OutputDataConfig = v
19940	return s
19941}
19942
19943// SetSubmitTime sets the SubmitTime field's value.
19944func (s *TopicsDetectionJobProperties) SetSubmitTime(v time.Time) *TopicsDetectionJobProperties {
19945	s.SubmitTime = &v
19946	return s
19947}
19948
19949// SetVolumeKmsKeyId sets the VolumeKmsKeyId field's value.
19950func (s *TopicsDetectionJobProperties) SetVolumeKmsKeyId(v string) *TopicsDetectionJobProperties {
19951	s.VolumeKmsKeyId = &v
19952	return s
19953}
19954
19955// SetVpcConfig sets the VpcConfig field's value.
19956func (s *TopicsDetectionJobProperties) SetVpcConfig(v *VpcConfig) *TopicsDetectionJobProperties {
19957	s.VpcConfig = v
19958	return s
19959}
19960
19961// Amazon Comprehend can't process the language of the input text. For custom
19962// entity recognition APIs, only English, Spanish, French, Italian, German,
19963// or Portuguese are accepted. For a list of supported languages, see supported-languages.
19964type UnsupportedLanguageException struct {
19965	_            struct{}                  `type:"structure"`
19966	RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"`
19967
19968	Message_ *string `locationName:"Message" min:"1" type:"string"`
19969}
19970
19971// String returns the string representation.
19972//
19973// API parameter values that are decorated as "sensitive" in the API will not
19974// be included in the string output. The member name will be present, but the
19975// value will be replaced with "sensitive".
19976func (s UnsupportedLanguageException) String() string {
19977	return awsutil.Prettify(s)
19978}
19979
19980// GoString returns the string representation.
19981//
19982// API parameter values that are decorated as "sensitive" in the API will not
19983// be included in the string output. The member name will be present, but the
19984// value will be replaced with "sensitive".
19985func (s UnsupportedLanguageException) GoString() string {
19986	return s.String()
19987}
19988
19989func newErrorUnsupportedLanguageException(v protocol.ResponseMetadata) error {
19990	return &UnsupportedLanguageException{
19991		RespMetadata: v,
19992	}
19993}
19994
19995// Code returns the exception type name.
19996func (s *UnsupportedLanguageException) Code() string {
19997	return "UnsupportedLanguageException"
19998}
19999
20000// Message returns the exception's message.
20001func (s *UnsupportedLanguageException) Message() string {
20002	if s.Message_ != nil {
20003		return *s.Message_
20004	}
20005	return ""
20006}
20007
20008// OrigErr always returns nil, satisfies awserr.Error interface.
20009func (s *UnsupportedLanguageException) OrigErr() error {
20010	return nil
20011}
20012
20013func (s *UnsupportedLanguageException) Error() string {
20014	return fmt.Sprintf("%s: %s", s.Code(), s.Message())
20015}
20016
20017// Status code returns the HTTP status code for the request's response error.
20018func (s *UnsupportedLanguageException) StatusCode() int {
20019	return s.RespMetadata.StatusCode
20020}
20021
20022// RequestID returns the service's response RequestID for request.
20023func (s *UnsupportedLanguageException) RequestID() string {
20024	return s.RespMetadata.RequestID
20025}
20026
20027type UntagResourceInput struct {
20028	_ struct{} `type:"structure"`
20029
20030	// The Amazon Resource Name (ARN) of the given Amazon Comprehend resource from
20031	// which you want to remove the tags.
20032	//
20033	// ResourceArn is a required field
20034	ResourceArn *string `type:"string" required:"true"`
20035
20036	// The initial part of a key-value pair that forms a tag being removed from
20037	// a given resource. For example, a tag with "Sales" as the key might be added
20038	// to a resource to indicate its use by the sales department. Keys must be unique
20039	// and cannot be duplicated for a particular resource.
20040	//
20041	// TagKeys is a required field
20042	TagKeys []*string `type:"list" required:"true"`
20043}
20044
20045// String returns the string representation.
20046//
20047// API parameter values that are decorated as "sensitive" in the API will not
20048// be included in the string output. The member name will be present, but the
20049// value will be replaced with "sensitive".
20050func (s UntagResourceInput) String() string {
20051	return awsutil.Prettify(s)
20052}
20053
20054// GoString returns the string representation.
20055//
20056// API parameter values that are decorated as "sensitive" in the API will not
20057// be included in the string output. The member name will be present, but the
20058// value will be replaced with "sensitive".
20059func (s UntagResourceInput) GoString() string {
20060	return s.String()
20061}
20062
20063// Validate inspects the fields of the type to determine if they are valid.
20064func (s *UntagResourceInput) Validate() error {
20065	invalidParams := request.ErrInvalidParams{Context: "UntagResourceInput"}
20066	if s.ResourceArn == nil {
20067		invalidParams.Add(request.NewErrParamRequired("ResourceArn"))
20068	}
20069	if s.TagKeys == nil {
20070		invalidParams.Add(request.NewErrParamRequired("TagKeys"))
20071	}
20072
20073	if invalidParams.Len() > 0 {
20074		return invalidParams
20075	}
20076	return nil
20077}
20078
20079// SetResourceArn sets the ResourceArn field's value.
20080func (s *UntagResourceInput) SetResourceArn(v string) *UntagResourceInput {
20081	s.ResourceArn = &v
20082	return s
20083}
20084
20085// SetTagKeys sets the TagKeys field's value.
20086func (s *UntagResourceInput) SetTagKeys(v []*string) *UntagResourceInput {
20087	s.TagKeys = v
20088	return s
20089}
20090
20091type UntagResourceOutput struct {
20092	_ struct{} `type:"structure"`
20093}
20094
20095// String returns the string representation.
20096//
20097// API parameter values that are decorated as "sensitive" in the API will not
20098// be included in the string output. The member name will be present, but the
20099// value will be replaced with "sensitive".
20100func (s UntagResourceOutput) String() string {
20101	return awsutil.Prettify(s)
20102}
20103
20104// GoString returns the string representation.
20105//
20106// API parameter values that are decorated as "sensitive" in the API will not
20107// be included in the string output. The member name will be present, but the
20108// value will be replaced with "sensitive".
20109func (s UntagResourceOutput) GoString() string {
20110	return s.String()
20111}
20112
20113type UpdateEndpointInput struct {
20114	_ struct{} `type:"structure"`
20115
20116	// Data access role ARN to use in case the new model is encrypted with a customer
20117	// CMK.
20118	DesiredDataAccessRoleArn *string `min:"20" type:"string"`
20119
20120	// The desired number of inference units to be used by the model using this
20121	// endpoint. Each inference unit represents of a throughput of 100 characters
20122	// per second.
20123	DesiredInferenceUnits *int64 `min:"1" type:"integer"`
20124
20125	// The ARN of the new model to use when updating an existing endpoint.
20126	DesiredModelArn *string `type:"string"`
20127
20128	// The Amazon Resource Number (ARN) of the endpoint being updated.
20129	//
20130	// EndpointArn is a required field
20131	EndpointArn *string `type:"string" required:"true"`
20132}
20133
20134// String returns the string representation.
20135//
20136// API parameter values that are decorated as "sensitive" in the API will not
20137// be included in the string output. The member name will be present, but the
20138// value will be replaced with "sensitive".
20139func (s UpdateEndpointInput) String() string {
20140	return awsutil.Prettify(s)
20141}
20142
20143// GoString returns the string representation.
20144//
20145// API parameter values that are decorated as "sensitive" in the API will not
20146// be included in the string output. The member name will be present, but the
20147// value will be replaced with "sensitive".
20148func (s UpdateEndpointInput) GoString() string {
20149	return s.String()
20150}
20151
20152// Validate inspects the fields of the type to determine if they are valid.
20153func (s *UpdateEndpointInput) Validate() error {
20154	invalidParams := request.ErrInvalidParams{Context: "UpdateEndpointInput"}
20155	if s.DesiredDataAccessRoleArn != nil && len(*s.DesiredDataAccessRoleArn) < 20 {
20156		invalidParams.Add(request.NewErrParamMinLen("DesiredDataAccessRoleArn", 20))
20157	}
20158	if s.DesiredInferenceUnits != nil && *s.DesiredInferenceUnits < 1 {
20159		invalidParams.Add(request.NewErrParamMinValue("DesiredInferenceUnits", 1))
20160	}
20161	if s.EndpointArn == nil {
20162		invalidParams.Add(request.NewErrParamRequired("EndpointArn"))
20163	}
20164
20165	if invalidParams.Len() > 0 {
20166		return invalidParams
20167	}
20168	return nil
20169}
20170
20171// SetDesiredDataAccessRoleArn sets the DesiredDataAccessRoleArn field's value.
20172func (s *UpdateEndpointInput) SetDesiredDataAccessRoleArn(v string) *UpdateEndpointInput {
20173	s.DesiredDataAccessRoleArn = &v
20174	return s
20175}
20176
20177// SetDesiredInferenceUnits sets the DesiredInferenceUnits field's value.
20178func (s *UpdateEndpointInput) SetDesiredInferenceUnits(v int64) *UpdateEndpointInput {
20179	s.DesiredInferenceUnits = &v
20180	return s
20181}
20182
20183// SetDesiredModelArn sets the DesiredModelArn field's value.
20184func (s *UpdateEndpointInput) SetDesiredModelArn(v string) *UpdateEndpointInput {
20185	s.DesiredModelArn = &v
20186	return s
20187}
20188
20189// SetEndpointArn sets the EndpointArn field's value.
20190func (s *UpdateEndpointInput) SetEndpointArn(v string) *UpdateEndpointInput {
20191	s.EndpointArn = &v
20192	return s
20193}
20194
20195type UpdateEndpointOutput struct {
20196	_ struct{} `type:"structure"`
20197}
20198
20199// String returns the string representation.
20200//
20201// API parameter values that are decorated as "sensitive" in the API will not
20202// be included in the string output. The member name will be present, but the
20203// value will be replaced with "sensitive".
20204func (s UpdateEndpointOutput) String() string {
20205	return awsutil.Prettify(s)
20206}
20207
20208// GoString returns the string representation.
20209//
20210// API parameter values that are decorated as "sensitive" in the API will not
20211// be included in the string output. The member name will be present, but the
20212// value will be replaced with "sensitive".
20213func (s UpdateEndpointOutput) GoString() string {
20214	return s.String()
20215}
20216
20217// Configuration parameters for an optional private Virtual Private Cloud (VPC)
20218// containing the resources you are using for the job. For more information,
20219// see Amazon VPC (https://docs.aws.amazon.com/vpc/latest/userguide/what-is-amazon-vpc.html).
20220type VpcConfig struct {
20221	_ struct{} `type:"structure"`
20222
20223	// The ID number for a security group on an instance of your private VPC. Security
20224	// groups on your VPC function serve as a virtual firewall to control inbound
20225	// and outbound traffic and provides security for the resources that you’ll
20226	// be accessing on the VPC. This ID number is preceded by "sg-", for instance:
20227	// "sg-03b388029b0a285ea". For more information, see Security Groups for your
20228	// VPC (https://docs.aws.amazon.com/vpc/latest/userguide/VPC_SecurityGroups.html).
20229	//
20230	// SecurityGroupIds is a required field
20231	SecurityGroupIds []*string `min:"1" type:"list" required:"true"`
20232
20233	// The ID for each subnet being used in your private VPC. This subnet is a subset
20234	// of the a range of IPv4 addresses used by the VPC and is specific to a given
20235	// availability zone in the VPC’s region. This ID number is preceded by "subnet-",
20236	// for instance: "subnet-04ccf456919e69055". For more information, see VPCs
20237	// and Subnets (https://docs.aws.amazon.com/vpc/latest/userguide/VPC_Subnets.html).
20238	//
20239	// Subnets is a required field
20240	Subnets []*string `min:"1" type:"list" required:"true"`
20241}
20242
20243// String returns the string representation.
20244//
20245// API parameter values that are decorated as "sensitive" in the API will not
20246// be included in the string output. The member name will be present, but the
20247// value will be replaced with "sensitive".
20248func (s VpcConfig) String() string {
20249	return awsutil.Prettify(s)
20250}
20251
20252// GoString returns the string representation.
20253//
20254// API parameter values that are decorated as "sensitive" in the API will not
20255// be included in the string output. The member name will be present, but the
20256// value will be replaced with "sensitive".
20257func (s VpcConfig) GoString() string {
20258	return s.String()
20259}
20260
20261// Validate inspects the fields of the type to determine if they are valid.
20262func (s *VpcConfig) Validate() error {
20263	invalidParams := request.ErrInvalidParams{Context: "VpcConfig"}
20264	if s.SecurityGroupIds == nil {
20265		invalidParams.Add(request.NewErrParamRequired("SecurityGroupIds"))
20266	}
20267	if s.SecurityGroupIds != nil && len(s.SecurityGroupIds) < 1 {
20268		invalidParams.Add(request.NewErrParamMinLen("SecurityGroupIds", 1))
20269	}
20270	if s.Subnets == nil {
20271		invalidParams.Add(request.NewErrParamRequired("Subnets"))
20272	}
20273	if s.Subnets != nil && len(s.Subnets) < 1 {
20274		invalidParams.Add(request.NewErrParamMinLen("Subnets", 1))
20275	}
20276
20277	if invalidParams.Len() > 0 {
20278		return invalidParams
20279	}
20280	return nil
20281}
20282
20283// SetSecurityGroupIds sets the SecurityGroupIds field's value.
20284func (s *VpcConfig) SetSecurityGroupIds(v []*string) *VpcConfig {
20285	s.SecurityGroupIds = v
20286	return s
20287}
20288
20289// SetSubnets sets the Subnets field's value.
20290func (s *VpcConfig) SetSubnets(v []*string) *VpcConfig {
20291	s.Subnets = v
20292	return s
20293}
20294
20295const (
20296	// AugmentedManifestsDocumentTypeFormatPlainTextDocument is a AugmentedManifestsDocumentTypeFormat enum value
20297	AugmentedManifestsDocumentTypeFormatPlainTextDocument = "PLAIN_TEXT_DOCUMENT"
20298
20299	// AugmentedManifestsDocumentTypeFormatSemiStructuredDocument is a AugmentedManifestsDocumentTypeFormat enum value
20300	AugmentedManifestsDocumentTypeFormatSemiStructuredDocument = "SEMI_STRUCTURED_DOCUMENT"
20301)
20302
20303// AugmentedManifestsDocumentTypeFormat_Values returns all elements of the AugmentedManifestsDocumentTypeFormat enum
20304func AugmentedManifestsDocumentTypeFormat_Values() []string {
20305	return []string{
20306		AugmentedManifestsDocumentTypeFormatPlainTextDocument,
20307		AugmentedManifestsDocumentTypeFormatSemiStructuredDocument,
20308	}
20309}
20310
20311const (
20312	// DocumentClassifierDataFormatComprehendCsv is a DocumentClassifierDataFormat enum value
20313	DocumentClassifierDataFormatComprehendCsv = "COMPREHEND_CSV"
20314
20315	// DocumentClassifierDataFormatAugmentedManifest is a DocumentClassifierDataFormat enum value
20316	DocumentClassifierDataFormatAugmentedManifest = "AUGMENTED_MANIFEST"
20317)
20318
20319// DocumentClassifierDataFormat_Values returns all elements of the DocumentClassifierDataFormat enum
20320func DocumentClassifierDataFormat_Values() []string {
20321	return []string{
20322		DocumentClassifierDataFormatComprehendCsv,
20323		DocumentClassifierDataFormatAugmentedManifest,
20324	}
20325}
20326
20327const (
20328	// DocumentClassifierModeMultiClass is a DocumentClassifierMode enum value
20329	DocumentClassifierModeMultiClass = "MULTI_CLASS"
20330
20331	// DocumentClassifierModeMultiLabel is a DocumentClassifierMode enum value
20332	DocumentClassifierModeMultiLabel = "MULTI_LABEL"
20333)
20334
20335// DocumentClassifierMode_Values returns all elements of the DocumentClassifierMode enum
20336func DocumentClassifierMode_Values() []string {
20337	return []string{
20338		DocumentClassifierModeMultiClass,
20339		DocumentClassifierModeMultiLabel,
20340	}
20341}
20342
20343const (
20344	// DocumentReadActionTextractDetectDocumentText is a DocumentReadAction enum value
20345	DocumentReadActionTextractDetectDocumentText = "TEXTRACT_DETECT_DOCUMENT_TEXT"
20346
20347	// DocumentReadActionTextractAnalyzeDocument is a DocumentReadAction enum value
20348	DocumentReadActionTextractAnalyzeDocument = "TEXTRACT_ANALYZE_DOCUMENT"
20349)
20350
20351// DocumentReadAction_Values returns all elements of the DocumentReadAction enum
20352func DocumentReadAction_Values() []string {
20353	return []string{
20354		DocumentReadActionTextractDetectDocumentText,
20355		DocumentReadActionTextractAnalyzeDocument,
20356	}
20357}
20358
20359// A list of the types of analyses to perform. This field specifies what feature
20360// types need to be extracted from the document where entity recognition is
20361// expected.
20362//
20363//    * TABLES - Add TABLES to the list to return information about the tables
20364//    that are detected in the input document.
20365//
20366//    * FORMS - Add FORMS to return detected form data.
20367const (
20368	// DocumentReadFeatureTypesTables is a DocumentReadFeatureTypes enum value
20369	DocumentReadFeatureTypesTables = "TABLES"
20370
20371	// DocumentReadFeatureTypesForms is a DocumentReadFeatureTypes enum value
20372	DocumentReadFeatureTypesForms = "FORMS"
20373)
20374
20375// DocumentReadFeatureTypes_Values returns all elements of the DocumentReadFeatureTypes enum
20376func DocumentReadFeatureTypes_Values() []string {
20377	return []string{
20378		DocumentReadFeatureTypesTables,
20379		DocumentReadFeatureTypesForms,
20380	}
20381}
20382
20383const (
20384	// DocumentReadModeServiceDefault is a DocumentReadMode enum value
20385	DocumentReadModeServiceDefault = "SERVICE_DEFAULT"
20386
20387	// DocumentReadModeForceDocumentReadAction is a DocumentReadMode enum value
20388	DocumentReadModeForceDocumentReadAction = "FORCE_DOCUMENT_READ_ACTION"
20389)
20390
20391// DocumentReadMode_Values returns all elements of the DocumentReadMode enum
20392func DocumentReadMode_Values() []string {
20393	return []string{
20394		DocumentReadModeServiceDefault,
20395		DocumentReadModeForceDocumentReadAction,
20396	}
20397}
20398
20399const (
20400	// EndpointStatusCreating is a EndpointStatus enum value
20401	EndpointStatusCreating = "CREATING"
20402
20403	// EndpointStatusDeleting is a EndpointStatus enum value
20404	EndpointStatusDeleting = "DELETING"
20405
20406	// EndpointStatusFailed is a EndpointStatus enum value
20407	EndpointStatusFailed = "FAILED"
20408
20409	// EndpointStatusInService is a EndpointStatus enum value
20410	EndpointStatusInService = "IN_SERVICE"
20411
20412	// EndpointStatusUpdating is a EndpointStatus enum value
20413	EndpointStatusUpdating = "UPDATING"
20414)
20415
20416// EndpointStatus_Values returns all elements of the EndpointStatus enum
20417func EndpointStatus_Values() []string {
20418	return []string{
20419		EndpointStatusCreating,
20420		EndpointStatusDeleting,
20421		EndpointStatusFailed,
20422		EndpointStatusInService,
20423		EndpointStatusUpdating,
20424	}
20425}
20426
20427const (
20428	// EntityRecognizerDataFormatComprehendCsv is a EntityRecognizerDataFormat enum value
20429	EntityRecognizerDataFormatComprehendCsv = "COMPREHEND_CSV"
20430
20431	// EntityRecognizerDataFormatAugmentedManifest is a EntityRecognizerDataFormat enum value
20432	EntityRecognizerDataFormatAugmentedManifest = "AUGMENTED_MANIFEST"
20433)
20434
20435// EntityRecognizerDataFormat_Values returns all elements of the EntityRecognizerDataFormat enum
20436func EntityRecognizerDataFormat_Values() []string {
20437	return []string{
20438		EntityRecognizerDataFormatComprehendCsv,
20439		EntityRecognizerDataFormatAugmentedManifest,
20440	}
20441}
20442
20443const (
20444	// EntityTypePerson is a EntityType enum value
20445	EntityTypePerson = "PERSON"
20446
20447	// EntityTypeLocation is a EntityType enum value
20448	EntityTypeLocation = "LOCATION"
20449
20450	// EntityTypeOrganization is a EntityType enum value
20451	EntityTypeOrganization = "ORGANIZATION"
20452
20453	// EntityTypeCommercialItem is a EntityType enum value
20454	EntityTypeCommercialItem = "COMMERCIAL_ITEM"
20455
20456	// EntityTypeEvent is a EntityType enum value
20457	EntityTypeEvent = "EVENT"
20458
20459	// EntityTypeDate is a EntityType enum value
20460	EntityTypeDate = "DATE"
20461
20462	// EntityTypeQuantity is a EntityType enum value
20463	EntityTypeQuantity = "QUANTITY"
20464
20465	// EntityTypeTitle is a EntityType enum value
20466	EntityTypeTitle = "TITLE"
20467
20468	// EntityTypeOther is a EntityType enum value
20469	EntityTypeOther = "OTHER"
20470)
20471
20472// EntityType_Values returns all elements of the EntityType enum
20473func EntityType_Values() []string {
20474	return []string{
20475		EntityTypePerson,
20476		EntityTypeLocation,
20477		EntityTypeOrganization,
20478		EntityTypeCommercialItem,
20479		EntityTypeEvent,
20480		EntityTypeDate,
20481		EntityTypeQuantity,
20482		EntityTypeTitle,
20483		EntityTypeOther,
20484	}
20485}
20486
20487const (
20488	// InputFormatOneDocPerFile is a InputFormat enum value
20489	InputFormatOneDocPerFile = "ONE_DOC_PER_FILE"
20490
20491	// InputFormatOneDocPerLine is a InputFormat enum value
20492	InputFormatOneDocPerLine = "ONE_DOC_PER_LINE"
20493)
20494
20495// InputFormat_Values returns all elements of the InputFormat enum
20496func InputFormat_Values() []string {
20497	return []string{
20498		InputFormatOneDocPerFile,
20499		InputFormatOneDocPerLine,
20500	}
20501}
20502
20503const (
20504	// JobStatusSubmitted is a JobStatus enum value
20505	JobStatusSubmitted = "SUBMITTED"
20506
20507	// JobStatusInProgress is a JobStatus enum value
20508	JobStatusInProgress = "IN_PROGRESS"
20509
20510	// JobStatusCompleted is a JobStatus enum value
20511	JobStatusCompleted = "COMPLETED"
20512
20513	// JobStatusFailed is a JobStatus enum value
20514	JobStatusFailed = "FAILED"
20515
20516	// JobStatusStopRequested is a JobStatus enum value
20517	JobStatusStopRequested = "STOP_REQUESTED"
20518
20519	// JobStatusStopped is a JobStatus enum value
20520	JobStatusStopped = "STOPPED"
20521)
20522
20523// JobStatus_Values returns all elements of the JobStatus enum
20524func JobStatus_Values() []string {
20525	return []string{
20526		JobStatusSubmitted,
20527		JobStatusInProgress,
20528		JobStatusCompleted,
20529		JobStatusFailed,
20530		JobStatusStopRequested,
20531		JobStatusStopped,
20532	}
20533}
20534
20535const (
20536	// LanguageCodeEn is a LanguageCode enum value
20537	LanguageCodeEn = "en"
20538
20539	// LanguageCodeEs is a LanguageCode enum value
20540	LanguageCodeEs = "es"
20541
20542	// LanguageCodeFr is a LanguageCode enum value
20543	LanguageCodeFr = "fr"
20544
20545	// LanguageCodeDe is a LanguageCode enum value
20546	LanguageCodeDe = "de"
20547
20548	// LanguageCodeIt is a LanguageCode enum value
20549	LanguageCodeIt = "it"
20550
20551	// LanguageCodePt is a LanguageCode enum value
20552	LanguageCodePt = "pt"
20553
20554	// LanguageCodeAr is a LanguageCode enum value
20555	LanguageCodeAr = "ar"
20556
20557	// LanguageCodeHi is a LanguageCode enum value
20558	LanguageCodeHi = "hi"
20559
20560	// LanguageCodeJa is a LanguageCode enum value
20561	LanguageCodeJa = "ja"
20562
20563	// LanguageCodeKo is a LanguageCode enum value
20564	LanguageCodeKo = "ko"
20565
20566	// LanguageCodeZh is a LanguageCode enum value
20567	LanguageCodeZh = "zh"
20568
20569	// LanguageCodeZhTw is a LanguageCode enum value
20570	LanguageCodeZhTw = "zh-TW"
20571)
20572
20573// LanguageCode_Values returns all elements of the LanguageCode enum
20574func LanguageCode_Values() []string {
20575	return []string{
20576		LanguageCodeEn,
20577		LanguageCodeEs,
20578		LanguageCodeFr,
20579		LanguageCodeDe,
20580		LanguageCodeIt,
20581		LanguageCodePt,
20582		LanguageCodeAr,
20583		LanguageCodeHi,
20584		LanguageCodeJa,
20585		LanguageCodeKo,
20586		LanguageCodeZh,
20587		LanguageCodeZhTw,
20588	}
20589}
20590
20591const (
20592	// ModelStatusSubmitted is a ModelStatus enum value
20593	ModelStatusSubmitted = "SUBMITTED"
20594
20595	// ModelStatusTraining is a ModelStatus enum value
20596	ModelStatusTraining = "TRAINING"
20597
20598	// ModelStatusDeleting is a ModelStatus enum value
20599	ModelStatusDeleting = "DELETING"
20600
20601	// ModelStatusStopRequested is a ModelStatus enum value
20602	ModelStatusStopRequested = "STOP_REQUESTED"
20603
20604	// ModelStatusStopped is a ModelStatus enum value
20605	ModelStatusStopped = "STOPPED"
20606
20607	// ModelStatusInError is a ModelStatus enum value
20608	ModelStatusInError = "IN_ERROR"
20609
20610	// ModelStatusTrained is a ModelStatus enum value
20611	ModelStatusTrained = "TRAINED"
20612)
20613
20614// ModelStatus_Values returns all elements of the ModelStatus enum
20615func ModelStatus_Values() []string {
20616	return []string{
20617		ModelStatusSubmitted,
20618		ModelStatusTraining,
20619		ModelStatusDeleting,
20620		ModelStatusStopRequested,
20621		ModelStatusStopped,
20622		ModelStatusInError,
20623		ModelStatusTrained,
20624	}
20625}
20626
20627const (
20628	// PartOfSpeechTagTypeAdj is a PartOfSpeechTagType enum value
20629	PartOfSpeechTagTypeAdj = "ADJ"
20630
20631	// PartOfSpeechTagTypeAdp is a PartOfSpeechTagType enum value
20632	PartOfSpeechTagTypeAdp = "ADP"
20633
20634	// PartOfSpeechTagTypeAdv is a PartOfSpeechTagType enum value
20635	PartOfSpeechTagTypeAdv = "ADV"
20636
20637	// PartOfSpeechTagTypeAux is a PartOfSpeechTagType enum value
20638	PartOfSpeechTagTypeAux = "AUX"
20639
20640	// PartOfSpeechTagTypeConj is a PartOfSpeechTagType enum value
20641	PartOfSpeechTagTypeConj = "CONJ"
20642
20643	// PartOfSpeechTagTypeCconj is a PartOfSpeechTagType enum value
20644	PartOfSpeechTagTypeCconj = "CCONJ"
20645
20646	// PartOfSpeechTagTypeDet is a PartOfSpeechTagType enum value
20647	PartOfSpeechTagTypeDet = "DET"
20648
20649	// PartOfSpeechTagTypeIntj is a PartOfSpeechTagType enum value
20650	PartOfSpeechTagTypeIntj = "INTJ"
20651
20652	// PartOfSpeechTagTypeNoun is a PartOfSpeechTagType enum value
20653	PartOfSpeechTagTypeNoun = "NOUN"
20654
20655	// PartOfSpeechTagTypeNum is a PartOfSpeechTagType enum value
20656	PartOfSpeechTagTypeNum = "NUM"
20657
20658	// PartOfSpeechTagTypeO is a PartOfSpeechTagType enum value
20659	PartOfSpeechTagTypeO = "O"
20660
20661	// PartOfSpeechTagTypePart is a PartOfSpeechTagType enum value
20662	PartOfSpeechTagTypePart = "PART"
20663
20664	// PartOfSpeechTagTypePron is a PartOfSpeechTagType enum value
20665	PartOfSpeechTagTypePron = "PRON"
20666
20667	// PartOfSpeechTagTypePropn is a PartOfSpeechTagType enum value
20668	PartOfSpeechTagTypePropn = "PROPN"
20669
20670	// PartOfSpeechTagTypePunct is a PartOfSpeechTagType enum value
20671	PartOfSpeechTagTypePunct = "PUNCT"
20672
20673	// PartOfSpeechTagTypeSconj is a PartOfSpeechTagType enum value
20674	PartOfSpeechTagTypeSconj = "SCONJ"
20675
20676	// PartOfSpeechTagTypeSym is a PartOfSpeechTagType enum value
20677	PartOfSpeechTagTypeSym = "SYM"
20678
20679	// PartOfSpeechTagTypeVerb is a PartOfSpeechTagType enum value
20680	PartOfSpeechTagTypeVerb = "VERB"
20681)
20682
20683// PartOfSpeechTagType_Values returns all elements of the PartOfSpeechTagType enum
20684func PartOfSpeechTagType_Values() []string {
20685	return []string{
20686		PartOfSpeechTagTypeAdj,
20687		PartOfSpeechTagTypeAdp,
20688		PartOfSpeechTagTypeAdv,
20689		PartOfSpeechTagTypeAux,
20690		PartOfSpeechTagTypeConj,
20691		PartOfSpeechTagTypeCconj,
20692		PartOfSpeechTagTypeDet,
20693		PartOfSpeechTagTypeIntj,
20694		PartOfSpeechTagTypeNoun,
20695		PartOfSpeechTagTypeNum,
20696		PartOfSpeechTagTypeO,
20697		PartOfSpeechTagTypePart,
20698		PartOfSpeechTagTypePron,
20699		PartOfSpeechTagTypePropn,
20700		PartOfSpeechTagTypePunct,
20701		PartOfSpeechTagTypeSconj,
20702		PartOfSpeechTagTypeSym,
20703		PartOfSpeechTagTypeVerb,
20704	}
20705}
20706
20707const (
20708	// PiiEntitiesDetectionMaskModeMask is a PiiEntitiesDetectionMaskMode enum value
20709	PiiEntitiesDetectionMaskModeMask = "MASK"
20710
20711	// PiiEntitiesDetectionMaskModeReplaceWithPiiEntityType is a PiiEntitiesDetectionMaskMode enum value
20712	PiiEntitiesDetectionMaskModeReplaceWithPiiEntityType = "REPLACE_WITH_PII_ENTITY_TYPE"
20713)
20714
20715// PiiEntitiesDetectionMaskMode_Values returns all elements of the PiiEntitiesDetectionMaskMode enum
20716func PiiEntitiesDetectionMaskMode_Values() []string {
20717	return []string{
20718		PiiEntitiesDetectionMaskModeMask,
20719		PiiEntitiesDetectionMaskModeReplaceWithPiiEntityType,
20720	}
20721}
20722
20723const (
20724	// PiiEntitiesDetectionModeOnlyRedaction is a PiiEntitiesDetectionMode enum value
20725	PiiEntitiesDetectionModeOnlyRedaction = "ONLY_REDACTION"
20726
20727	// PiiEntitiesDetectionModeOnlyOffsets is a PiiEntitiesDetectionMode enum value
20728	PiiEntitiesDetectionModeOnlyOffsets = "ONLY_OFFSETS"
20729)
20730
20731// PiiEntitiesDetectionMode_Values returns all elements of the PiiEntitiesDetectionMode enum
20732func PiiEntitiesDetectionMode_Values() []string {
20733	return []string{
20734		PiiEntitiesDetectionModeOnlyRedaction,
20735		PiiEntitiesDetectionModeOnlyOffsets,
20736	}
20737}
20738
20739const (
20740	// PiiEntityTypeBankAccountNumber is a PiiEntityType enum value
20741	PiiEntityTypeBankAccountNumber = "BANK_ACCOUNT_NUMBER"
20742
20743	// PiiEntityTypeBankRouting is a PiiEntityType enum value
20744	PiiEntityTypeBankRouting = "BANK_ROUTING"
20745
20746	// PiiEntityTypeCreditDebitNumber is a PiiEntityType enum value
20747	PiiEntityTypeCreditDebitNumber = "CREDIT_DEBIT_NUMBER"
20748
20749	// PiiEntityTypeCreditDebitCvv is a PiiEntityType enum value
20750	PiiEntityTypeCreditDebitCvv = "CREDIT_DEBIT_CVV"
20751
20752	// PiiEntityTypeCreditDebitExpiry is a PiiEntityType enum value
20753	PiiEntityTypeCreditDebitExpiry = "CREDIT_DEBIT_EXPIRY"
20754
20755	// PiiEntityTypePin is a PiiEntityType enum value
20756	PiiEntityTypePin = "PIN"
20757
20758	// PiiEntityTypeEmail is a PiiEntityType enum value
20759	PiiEntityTypeEmail = "EMAIL"
20760
20761	// PiiEntityTypeAddress is a PiiEntityType enum value
20762	PiiEntityTypeAddress = "ADDRESS"
20763
20764	// PiiEntityTypeName is a PiiEntityType enum value
20765	PiiEntityTypeName = "NAME"
20766
20767	// PiiEntityTypePhone is a PiiEntityType enum value
20768	PiiEntityTypePhone = "PHONE"
20769
20770	// PiiEntityTypeSsn is a PiiEntityType enum value
20771	PiiEntityTypeSsn = "SSN"
20772
20773	// PiiEntityTypeDateTime is a PiiEntityType enum value
20774	PiiEntityTypeDateTime = "DATE_TIME"
20775
20776	// PiiEntityTypePassportNumber is a PiiEntityType enum value
20777	PiiEntityTypePassportNumber = "PASSPORT_NUMBER"
20778
20779	// PiiEntityTypeDriverId is a PiiEntityType enum value
20780	PiiEntityTypeDriverId = "DRIVER_ID"
20781
20782	// PiiEntityTypeUrl is a PiiEntityType enum value
20783	PiiEntityTypeUrl = "URL"
20784
20785	// PiiEntityTypeAge is a PiiEntityType enum value
20786	PiiEntityTypeAge = "AGE"
20787
20788	// PiiEntityTypeUsername is a PiiEntityType enum value
20789	PiiEntityTypeUsername = "USERNAME"
20790
20791	// PiiEntityTypePassword is a PiiEntityType enum value
20792	PiiEntityTypePassword = "PASSWORD"
20793
20794	// PiiEntityTypeAwsAccessKey is a PiiEntityType enum value
20795	PiiEntityTypeAwsAccessKey = "AWS_ACCESS_KEY"
20796
20797	// PiiEntityTypeAwsSecretKey is a PiiEntityType enum value
20798	PiiEntityTypeAwsSecretKey = "AWS_SECRET_KEY"
20799
20800	// PiiEntityTypeIpAddress is a PiiEntityType enum value
20801	PiiEntityTypeIpAddress = "IP_ADDRESS"
20802
20803	// PiiEntityTypeMacAddress is a PiiEntityType enum value
20804	PiiEntityTypeMacAddress = "MAC_ADDRESS"
20805
20806	// PiiEntityTypeAll is a PiiEntityType enum value
20807	PiiEntityTypeAll = "ALL"
20808)
20809
20810// PiiEntityType_Values returns all elements of the PiiEntityType enum
20811func PiiEntityType_Values() []string {
20812	return []string{
20813		PiiEntityTypeBankAccountNumber,
20814		PiiEntityTypeBankRouting,
20815		PiiEntityTypeCreditDebitNumber,
20816		PiiEntityTypeCreditDebitCvv,
20817		PiiEntityTypeCreditDebitExpiry,
20818		PiiEntityTypePin,
20819		PiiEntityTypeEmail,
20820		PiiEntityTypeAddress,
20821		PiiEntityTypeName,
20822		PiiEntityTypePhone,
20823		PiiEntityTypeSsn,
20824		PiiEntityTypeDateTime,
20825		PiiEntityTypePassportNumber,
20826		PiiEntityTypeDriverId,
20827		PiiEntityTypeUrl,
20828		PiiEntityTypeAge,
20829		PiiEntityTypeUsername,
20830		PiiEntityTypePassword,
20831		PiiEntityTypeAwsAccessKey,
20832		PiiEntityTypeAwsSecretKey,
20833		PiiEntityTypeIpAddress,
20834		PiiEntityTypeMacAddress,
20835		PiiEntityTypeAll,
20836	}
20837}
20838
20839const (
20840	// SentimentTypePositive is a SentimentType enum value
20841	SentimentTypePositive = "POSITIVE"
20842
20843	// SentimentTypeNegative is a SentimentType enum value
20844	SentimentTypeNegative = "NEGATIVE"
20845
20846	// SentimentTypeNeutral is a SentimentType enum value
20847	SentimentTypeNeutral = "NEUTRAL"
20848
20849	// SentimentTypeMixed is a SentimentType enum value
20850	SentimentTypeMixed = "MIXED"
20851)
20852
20853// SentimentType_Values returns all elements of the SentimentType enum
20854func SentimentType_Values() []string {
20855	return []string{
20856		SentimentTypePositive,
20857		SentimentTypeNegative,
20858		SentimentTypeNeutral,
20859		SentimentTypeMixed,
20860	}
20861}
20862
20863const (
20864	// SplitTrain is a Split enum value
20865	SplitTrain = "TRAIN"
20866
20867	// SplitTest is a Split enum value
20868	SplitTest = "TEST"
20869)
20870
20871// Split_Values returns all elements of the Split enum
20872func Split_Values() []string {
20873	return []string{
20874		SplitTrain,
20875		SplitTest,
20876	}
20877}
20878
20879const (
20880	// SyntaxLanguageCodeEn is a SyntaxLanguageCode enum value
20881	SyntaxLanguageCodeEn = "en"
20882
20883	// SyntaxLanguageCodeEs is a SyntaxLanguageCode enum value
20884	SyntaxLanguageCodeEs = "es"
20885
20886	// SyntaxLanguageCodeFr is a SyntaxLanguageCode enum value
20887	SyntaxLanguageCodeFr = "fr"
20888
20889	// SyntaxLanguageCodeDe is a SyntaxLanguageCode enum value
20890	SyntaxLanguageCodeDe = "de"
20891
20892	// SyntaxLanguageCodeIt is a SyntaxLanguageCode enum value
20893	SyntaxLanguageCodeIt = "it"
20894
20895	// SyntaxLanguageCodePt is a SyntaxLanguageCode enum value
20896	SyntaxLanguageCodePt = "pt"
20897)
20898
20899// SyntaxLanguageCode_Values returns all elements of the SyntaxLanguageCode enum
20900func SyntaxLanguageCode_Values() []string {
20901	return []string{
20902		SyntaxLanguageCodeEn,
20903		SyntaxLanguageCodeEs,
20904		SyntaxLanguageCodeFr,
20905		SyntaxLanguageCodeDe,
20906		SyntaxLanguageCodeIt,
20907		SyntaxLanguageCodePt,
20908	}
20909}
20910