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 all custom
170//   entity recognition APIs (such as CreateEntityRecognizer), only English is
171//   accepted. For most other APIs, such as those for Custom Classification, Amazon
172//   Comprehend accepts text in all supported languages. For a list of supported
173//   languages, see supported-languages.
174//
175//   * BatchSizeLimitExceededException
176//   The number of documents in the request exceeds the limit of 25. Try your
177//   request again with fewer documents.
178//
179//   * InternalServerException
180//   An internal server error occurred. Retry your request.
181//
182// See also, https://docs.aws.amazon.com/goto/WebAPI/comprehend-2017-11-27/BatchDetectEntities
183func (c *Comprehend) BatchDetectEntities(input *BatchDetectEntitiesInput) (*BatchDetectEntitiesOutput, error) {
184	req, out := c.BatchDetectEntitiesRequest(input)
185	return out, req.Send()
186}
187
188// BatchDetectEntitiesWithContext is the same as BatchDetectEntities with the addition of
189// the ability to pass a context and additional request options.
190//
191// See BatchDetectEntities for details on how to use this API operation.
192//
193// The context must be non-nil and will be used for request cancellation. If
194// the context is nil a panic will occur. In the future the SDK may create
195// sub-contexts for http.Requests. See https://golang.org/pkg/context/
196// for more information on using Contexts.
197func (c *Comprehend) BatchDetectEntitiesWithContext(ctx aws.Context, input *BatchDetectEntitiesInput, opts ...request.Option) (*BatchDetectEntitiesOutput, error) {
198	req, out := c.BatchDetectEntitiesRequest(input)
199	req.SetContext(ctx)
200	req.ApplyOptions(opts...)
201	return out, req.Send()
202}
203
204const opBatchDetectKeyPhrases = "BatchDetectKeyPhrases"
205
206// BatchDetectKeyPhrasesRequest generates a "aws/request.Request" representing the
207// client's request for the BatchDetectKeyPhrases operation. The "output" return
208// value will be populated with the request's response once the request completes
209// successfully.
210//
211// Use "Send" method on the returned Request to send the API call to the service.
212// the "output" return value is not valid until after Send returns without error.
213//
214// See BatchDetectKeyPhrases for more information on using the BatchDetectKeyPhrases
215// API call, and error handling.
216//
217// This method is useful when you want to inject custom logic or configuration
218// into the SDK's request lifecycle. Such as custom headers, or retry logic.
219//
220//
221//    // Example sending a request using the BatchDetectKeyPhrasesRequest method.
222//    req, resp := client.BatchDetectKeyPhrasesRequest(params)
223//
224//    err := req.Send()
225//    if err == nil { // resp is now filled
226//        fmt.Println(resp)
227//    }
228//
229// See also, https://docs.aws.amazon.com/goto/WebAPI/comprehend-2017-11-27/BatchDetectKeyPhrases
230func (c *Comprehend) BatchDetectKeyPhrasesRequest(input *BatchDetectKeyPhrasesInput) (req *request.Request, output *BatchDetectKeyPhrasesOutput) {
231	op := &request.Operation{
232		Name:       opBatchDetectKeyPhrases,
233		HTTPMethod: "POST",
234		HTTPPath:   "/",
235	}
236
237	if input == nil {
238		input = &BatchDetectKeyPhrasesInput{}
239	}
240
241	output = &BatchDetectKeyPhrasesOutput{}
242	req = c.newRequest(op, input, output)
243	return
244}
245
246// BatchDetectKeyPhrases API operation for Amazon Comprehend.
247//
248// Detects the key noun phrases found in a batch of documents.
249//
250// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
251// with awserr.Error's Code and Message methods to get detailed information about
252// the error.
253//
254// See the AWS API reference guide for Amazon Comprehend's
255// API operation BatchDetectKeyPhrases for usage and error information.
256//
257// Returned Error Types:
258//   * InvalidRequestException
259//   The request is invalid.
260//
261//   * TextSizeLimitExceededException
262//   The size of the input text exceeds the limit. Use a smaller document.
263//
264//   * UnsupportedLanguageException
265//   Amazon Comprehend can't process the language of the input text. For all custom
266//   entity recognition APIs (such as CreateEntityRecognizer), only English is
267//   accepted. For most other APIs, such as those for Custom Classification, Amazon
268//   Comprehend accepts text in all supported languages. For a list of supported
269//   languages, see supported-languages.
270//
271//   * BatchSizeLimitExceededException
272//   The number of documents in the request exceeds the limit of 25. Try your
273//   request again with fewer documents.
274//
275//   * InternalServerException
276//   An internal server error occurred. Retry your request.
277//
278// See also, https://docs.aws.amazon.com/goto/WebAPI/comprehend-2017-11-27/BatchDetectKeyPhrases
279func (c *Comprehend) BatchDetectKeyPhrases(input *BatchDetectKeyPhrasesInput) (*BatchDetectKeyPhrasesOutput, error) {
280	req, out := c.BatchDetectKeyPhrasesRequest(input)
281	return out, req.Send()
282}
283
284// BatchDetectKeyPhrasesWithContext is the same as BatchDetectKeyPhrases with the addition of
285// the ability to pass a context and additional request options.
286//
287// See BatchDetectKeyPhrases for details on how to use this API operation.
288//
289// The context must be non-nil and will be used for request cancellation. If
290// the context is nil a panic will occur. In the future the SDK may create
291// sub-contexts for http.Requests. See https://golang.org/pkg/context/
292// for more information on using Contexts.
293func (c *Comprehend) BatchDetectKeyPhrasesWithContext(ctx aws.Context, input *BatchDetectKeyPhrasesInput, opts ...request.Option) (*BatchDetectKeyPhrasesOutput, error) {
294	req, out := c.BatchDetectKeyPhrasesRequest(input)
295	req.SetContext(ctx)
296	req.ApplyOptions(opts...)
297	return out, req.Send()
298}
299
300const opBatchDetectSentiment = "BatchDetectSentiment"
301
302// BatchDetectSentimentRequest generates a "aws/request.Request" representing the
303// client's request for the BatchDetectSentiment operation. The "output" return
304// value will be populated with the request's response once the request completes
305// successfully.
306//
307// Use "Send" method on the returned Request to send the API call to the service.
308// the "output" return value is not valid until after Send returns without error.
309//
310// See BatchDetectSentiment for more information on using the BatchDetectSentiment
311// API call, and error handling.
312//
313// This method is useful when you want to inject custom logic or configuration
314// into the SDK's request lifecycle. Such as custom headers, or retry logic.
315//
316//
317//    // Example sending a request using the BatchDetectSentimentRequest method.
318//    req, resp := client.BatchDetectSentimentRequest(params)
319//
320//    err := req.Send()
321//    if err == nil { // resp is now filled
322//        fmt.Println(resp)
323//    }
324//
325// See also, https://docs.aws.amazon.com/goto/WebAPI/comprehend-2017-11-27/BatchDetectSentiment
326func (c *Comprehend) BatchDetectSentimentRequest(input *BatchDetectSentimentInput) (req *request.Request, output *BatchDetectSentimentOutput) {
327	op := &request.Operation{
328		Name:       opBatchDetectSentiment,
329		HTTPMethod: "POST",
330		HTTPPath:   "/",
331	}
332
333	if input == nil {
334		input = &BatchDetectSentimentInput{}
335	}
336
337	output = &BatchDetectSentimentOutput{}
338	req = c.newRequest(op, input, output)
339	return
340}
341
342// BatchDetectSentiment API operation for Amazon Comprehend.
343//
344// Inspects a batch of documents and returns an inference of the prevailing
345// sentiment, POSITIVE, NEUTRAL, MIXED, or NEGATIVE, in each one.
346//
347// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
348// with awserr.Error's Code and Message methods to get detailed information about
349// the error.
350//
351// See the AWS API reference guide for Amazon Comprehend's
352// API operation BatchDetectSentiment for usage and error information.
353//
354// Returned Error Types:
355//   * InvalidRequestException
356//   The request is invalid.
357//
358//   * TextSizeLimitExceededException
359//   The size of the input text exceeds the limit. Use a smaller document.
360//
361//   * UnsupportedLanguageException
362//   Amazon Comprehend can't process the language of the input text. For all custom
363//   entity recognition APIs (such as CreateEntityRecognizer), only English is
364//   accepted. For most other APIs, such as those for Custom Classification, Amazon
365//   Comprehend accepts text in all supported languages. For a list of supported
366//   languages, see supported-languages.
367//
368//   * BatchSizeLimitExceededException
369//   The number of documents in the request exceeds the limit of 25. Try your
370//   request again with fewer documents.
371//
372//   * InternalServerException
373//   An internal server error occurred. Retry your request.
374//
375// See also, https://docs.aws.amazon.com/goto/WebAPI/comprehend-2017-11-27/BatchDetectSentiment
376func (c *Comprehend) BatchDetectSentiment(input *BatchDetectSentimentInput) (*BatchDetectSentimentOutput, error) {
377	req, out := c.BatchDetectSentimentRequest(input)
378	return out, req.Send()
379}
380
381// BatchDetectSentimentWithContext is the same as BatchDetectSentiment with the addition of
382// the ability to pass a context and additional request options.
383//
384// See BatchDetectSentiment for details on how to use this API operation.
385//
386// The context must be non-nil and will be used for request cancellation. If
387// the context is nil a panic will occur. In the future the SDK may create
388// sub-contexts for http.Requests. See https://golang.org/pkg/context/
389// for more information on using Contexts.
390func (c *Comprehend) BatchDetectSentimentWithContext(ctx aws.Context, input *BatchDetectSentimentInput, opts ...request.Option) (*BatchDetectSentimentOutput, error) {
391	req, out := c.BatchDetectSentimentRequest(input)
392	req.SetContext(ctx)
393	req.ApplyOptions(opts...)
394	return out, req.Send()
395}
396
397const opBatchDetectSyntax = "BatchDetectSyntax"
398
399// BatchDetectSyntaxRequest generates a "aws/request.Request" representing the
400// client's request for the BatchDetectSyntax operation. The "output" return
401// value will be populated with the request's response once the request completes
402// successfully.
403//
404// Use "Send" method on the returned Request to send the API call to the service.
405// the "output" return value is not valid until after Send returns without error.
406//
407// See BatchDetectSyntax for more information on using the BatchDetectSyntax
408// API call, and error handling.
409//
410// This method is useful when you want to inject custom logic or configuration
411// into the SDK's request lifecycle. Such as custom headers, or retry logic.
412//
413//
414//    // Example sending a request using the BatchDetectSyntaxRequest method.
415//    req, resp := client.BatchDetectSyntaxRequest(params)
416//
417//    err := req.Send()
418//    if err == nil { // resp is now filled
419//        fmt.Println(resp)
420//    }
421//
422// See also, https://docs.aws.amazon.com/goto/WebAPI/comprehend-2017-11-27/BatchDetectSyntax
423func (c *Comprehend) BatchDetectSyntaxRequest(input *BatchDetectSyntaxInput) (req *request.Request, output *BatchDetectSyntaxOutput) {
424	op := &request.Operation{
425		Name:       opBatchDetectSyntax,
426		HTTPMethod: "POST",
427		HTTPPath:   "/",
428	}
429
430	if input == nil {
431		input = &BatchDetectSyntaxInput{}
432	}
433
434	output = &BatchDetectSyntaxOutput{}
435	req = c.newRequest(op, input, output)
436	return
437}
438
439// BatchDetectSyntax API operation for Amazon Comprehend.
440//
441// Inspects the text of a batch of documents for the syntax and part of speech
442// of the words in the document and returns information about them. For more
443// information, see how-syntax.
444//
445// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
446// with awserr.Error's Code and Message methods to get detailed information about
447// the error.
448//
449// See the AWS API reference guide for Amazon Comprehend's
450// API operation BatchDetectSyntax for usage and error information.
451//
452// Returned Error Types:
453//   * InvalidRequestException
454//   The request is invalid.
455//
456//   * TextSizeLimitExceededException
457//   The size of the input text exceeds the limit. Use a smaller document.
458//
459//   * UnsupportedLanguageException
460//   Amazon Comprehend can't process the language of the input text. For all custom
461//   entity recognition APIs (such as CreateEntityRecognizer), only English is
462//   accepted. For most other APIs, such as those for Custom Classification, Amazon
463//   Comprehend accepts text in all supported languages. For a list of supported
464//   languages, see supported-languages.
465//
466//   * BatchSizeLimitExceededException
467//   The number of documents in the request exceeds the limit of 25. Try your
468//   request again with fewer documents.
469//
470//   * InternalServerException
471//   An internal server error occurred. Retry your request.
472//
473// See also, https://docs.aws.amazon.com/goto/WebAPI/comprehend-2017-11-27/BatchDetectSyntax
474func (c *Comprehend) BatchDetectSyntax(input *BatchDetectSyntaxInput) (*BatchDetectSyntaxOutput, error) {
475	req, out := c.BatchDetectSyntaxRequest(input)
476	return out, req.Send()
477}
478
479// BatchDetectSyntaxWithContext is the same as BatchDetectSyntax with the addition of
480// the ability to pass a context and additional request options.
481//
482// See BatchDetectSyntax for details on how to use this API operation.
483//
484// The context must be non-nil and will be used for request cancellation. If
485// the context is nil a panic will occur. In the future the SDK may create
486// sub-contexts for http.Requests. See https://golang.org/pkg/context/
487// for more information on using Contexts.
488func (c *Comprehend) BatchDetectSyntaxWithContext(ctx aws.Context, input *BatchDetectSyntaxInput, opts ...request.Option) (*BatchDetectSyntaxOutput, error) {
489	req, out := c.BatchDetectSyntaxRequest(input)
490	req.SetContext(ctx)
491	req.ApplyOptions(opts...)
492	return out, req.Send()
493}
494
495const opClassifyDocument = "ClassifyDocument"
496
497// ClassifyDocumentRequest generates a "aws/request.Request" representing the
498// client's request for the ClassifyDocument operation. The "output" return
499// value will be populated with the request's response once the request completes
500// successfully.
501//
502// Use "Send" method on the returned Request to send the API call to the service.
503// the "output" return value is not valid until after Send returns without error.
504//
505// See ClassifyDocument for more information on using the ClassifyDocument
506// API call, and error handling.
507//
508// This method is useful when you want to inject custom logic or configuration
509// into the SDK's request lifecycle. Such as custom headers, or retry logic.
510//
511//
512//    // Example sending a request using the ClassifyDocumentRequest method.
513//    req, resp := client.ClassifyDocumentRequest(params)
514//
515//    err := req.Send()
516//    if err == nil { // resp is now filled
517//        fmt.Println(resp)
518//    }
519//
520// See also, https://docs.aws.amazon.com/goto/WebAPI/comprehend-2017-11-27/ClassifyDocument
521func (c *Comprehend) ClassifyDocumentRequest(input *ClassifyDocumentInput) (req *request.Request, output *ClassifyDocumentOutput) {
522	op := &request.Operation{
523		Name:       opClassifyDocument,
524		HTTPMethod: "POST",
525		HTTPPath:   "/",
526	}
527
528	if input == nil {
529		input = &ClassifyDocumentInput{}
530	}
531
532	output = &ClassifyDocumentOutput{}
533	req = c.newRequest(op, input, output)
534	return
535}
536
537// ClassifyDocument API operation for Amazon Comprehend.
538//
539// Creates a new document classification request to analyze a single document
540// in real-time, using a previously created and trained custom model and an
541// endpoint.
542//
543// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
544// with awserr.Error's Code and Message methods to get detailed information about
545// the error.
546//
547// See the AWS API reference guide for Amazon Comprehend's
548// API operation ClassifyDocument for usage and error information.
549//
550// Returned Error Types:
551//   * InvalidRequestException
552//   The request is invalid.
553//
554//   * ResourceUnavailableException
555//   The specified resource is not available. Check the resource and try your
556//   request again.
557//
558//   * TextSizeLimitExceededException
559//   The size of the input text exceeds the limit. Use a smaller document.
560//
561//   * InternalServerException
562//   An internal server error occurred. Retry your request.
563//
564// See also, https://docs.aws.amazon.com/goto/WebAPI/comprehend-2017-11-27/ClassifyDocument
565func (c *Comprehend) ClassifyDocument(input *ClassifyDocumentInput) (*ClassifyDocumentOutput, error) {
566	req, out := c.ClassifyDocumentRequest(input)
567	return out, req.Send()
568}
569
570// ClassifyDocumentWithContext is the same as ClassifyDocument with the addition of
571// the ability to pass a context and additional request options.
572//
573// See ClassifyDocument for details on how to use this API operation.
574//
575// The context must be non-nil and will be used for request cancellation. If
576// the context is nil a panic will occur. In the future the SDK may create
577// sub-contexts for http.Requests. See https://golang.org/pkg/context/
578// for more information on using Contexts.
579func (c *Comprehend) ClassifyDocumentWithContext(ctx aws.Context, input *ClassifyDocumentInput, opts ...request.Option) (*ClassifyDocumentOutput, error) {
580	req, out := c.ClassifyDocumentRequest(input)
581	req.SetContext(ctx)
582	req.ApplyOptions(opts...)
583	return out, req.Send()
584}
585
586const opCreateDocumentClassifier = "CreateDocumentClassifier"
587
588// CreateDocumentClassifierRequest generates a "aws/request.Request" representing the
589// client's request for the CreateDocumentClassifier operation. The "output" return
590// value will be populated with the request's response once the request completes
591// successfully.
592//
593// Use "Send" method on the returned Request to send the API call to the service.
594// the "output" return value is not valid until after Send returns without error.
595//
596// See CreateDocumentClassifier for more information on using the CreateDocumentClassifier
597// API call, and error handling.
598//
599// This method is useful when you want to inject custom logic or configuration
600// into the SDK's request lifecycle. Such as custom headers, or retry logic.
601//
602//
603//    // Example sending a request using the CreateDocumentClassifierRequest method.
604//    req, resp := client.CreateDocumentClassifierRequest(params)
605//
606//    err := req.Send()
607//    if err == nil { // resp is now filled
608//        fmt.Println(resp)
609//    }
610//
611// See also, https://docs.aws.amazon.com/goto/WebAPI/comprehend-2017-11-27/CreateDocumentClassifier
612func (c *Comprehend) CreateDocumentClassifierRequest(input *CreateDocumentClassifierInput) (req *request.Request, output *CreateDocumentClassifierOutput) {
613	op := &request.Operation{
614		Name:       opCreateDocumentClassifier,
615		HTTPMethod: "POST",
616		HTTPPath:   "/",
617	}
618
619	if input == nil {
620		input = &CreateDocumentClassifierInput{}
621	}
622
623	output = &CreateDocumentClassifierOutput{}
624	req = c.newRequest(op, input, output)
625	return
626}
627
628// CreateDocumentClassifier API operation for Amazon Comprehend.
629//
630// Creates a new document classifier that you can use to categorize documents.
631// To create a classifier, you provide a set of training documents that labeled
632// with the categories that you want to use. After the classifier is trained
633// you can use it to categorize a set of labeled documents into the categories.
634// For more information, see how-document-classification.
635//
636// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
637// with awserr.Error's Code and Message methods to get detailed information about
638// the error.
639//
640// See the AWS API reference guide for Amazon Comprehend's
641// API operation CreateDocumentClassifier for usage and error information.
642//
643// Returned Error Types:
644//   * InvalidRequestException
645//   The request is invalid.
646//
647//   * ResourceInUseException
648//   The specified resource name is already in use. Use a different name and try
649//   your request again.
650//
651//   * TooManyTagsException
652//   The request contains more tags than can be associated with a resource (50
653//   tags per resource). The maximum number of tags includes both existing tags
654//   and those included in your current request.
655//
656//   * TooManyRequestsException
657//   The number of requests exceeds the limit. Resubmit your request later.
658//
659//   * ResourceLimitExceededException
660//   The maximum number of resources per account has been exceeded. Review the
661//   resources, and then try your request again.
662//
663//   * UnsupportedLanguageException
664//   Amazon Comprehend can't process the language of the input text. For all custom
665//   entity recognition APIs (such as CreateEntityRecognizer), only English is
666//   accepted. For most other APIs, such as those for Custom Classification, Amazon
667//   Comprehend accepts text in all supported languages. For a list of supported
668//   languages, see supported-languages.
669//
670//   * KmsKeyValidationException
671//   The KMS customer managed key (CMK) entered cannot be validated. Verify the
672//   key and re-enter it.
673//
674//   * InternalServerException
675//   An internal server error occurred. Retry your request.
676//
677// See also, https://docs.aws.amazon.com/goto/WebAPI/comprehend-2017-11-27/CreateDocumentClassifier
678func (c *Comprehend) CreateDocumentClassifier(input *CreateDocumentClassifierInput) (*CreateDocumentClassifierOutput, error) {
679	req, out := c.CreateDocumentClassifierRequest(input)
680	return out, req.Send()
681}
682
683// CreateDocumentClassifierWithContext is the same as CreateDocumentClassifier with the addition of
684// the ability to pass a context and additional request options.
685//
686// See CreateDocumentClassifier for details on how to use this API operation.
687//
688// The context must be non-nil and will be used for request cancellation. If
689// the context is nil a panic will occur. In the future the SDK may create
690// sub-contexts for http.Requests. See https://golang.org/pkg/context/
691// for more information on using Contexts.
692func (c *Comprehend) CreateDocumentClassifierWithContext(ctx aws.Context, input *CreateDocumentClassifierInput, opts ...request.Option) (*CreateDocumentClassifierOutput, error) {
693	req, out := c.CreateDocumentClassifierRequest(input)
694	req.SetContext(ctx)
695	req.ApplyOptions(opts...)
696	return out, req.Send()
697}
698
699const opCreateEndpoint = "CreateEndpoint"
700
701// CreateEndpointRequest generates a "aws/request.Request" representing the
702// client's request for the CreateEndpoint operation. The "output" return
703// value will be populated with the request's response once the request completes
704// successfully.
705//
706// Use "Send" method on the returned Request to send the API call to the service.
707// the "output" return value is not valid until after Send returns without error.
708//
709// See CreateEndpoint for more information on using the CreateEndpoint
710// API call, and error handling.
711//
712// This method is useful when you want to inject custom logic or configuration
713// into the SDK's request lifecycle. Such as custom headers, or retry logic.
714//
715//
716//    // Example sending a request using the CreateEndpointRequest method.
717//    req, resp := client.CreateEndpointRequest(params)
718//
719//    err := req.Send()
720//    if err == nil { // resp is now filled
721//        fmt.Println(resp)
722//    }
723//
724// See also, https://docs.aws.amazon.com/goto/WebAPI/comprehend-2017-11-27/CreateEndpoint
725func (c *Comprehend) CreateEndpointRequest(input *CreateEndpointInput) (req *request.Request, output *CreateEndpointOutput) {
726	op := &request.Operation{
727		Name:       opCreateEndpoint,
728		HTTPMethod: "POST",
729		HTTPPath:   "/",
730	}
731
732	if input == nil {
733		input = &CreateEndpointInput{}
734	}
735
736	output = &CreateEndpointOutput{}
737	req = c.newRequest(op, input, output)
738	return
739}
740
741// CreateEndpoint API operation for Amazon Comprehend.
742//
743// Creates a model-specific endpoint for synchronous inference for a previously
744// trained custom model
745//
746// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
747// with awserr.Error's Code and Message methods to get detailed information about
748// the error.
749//
750// See the AWS API reference guide for Amazon Comprehend's
751// API operation CreateEndpoint for usage and error information.
752//
753// Returned Error Types:
754//   * InvalidRequestException
755//   The request is invalid.
756//
757//   * ResourceInUseException
758//   The specified resource name is already in use. Use a different name and try
759//   your request again.
760//
761//   * ResourceLimitExceededException
762//   The maximum number of resources per account has been exceeded. Review the
763//   resources, and then try your request again.
764//
765//   * ResourceNotFoundException
766//   The specified resource ARN was not found. Check the ARN and try your request
767//   again.
768//
769//   * ResourceUnavailableException
770//   The specified resource is not available. Check the resource and try your
771//   request again.
772//
773//   * TooManyRequestsException
774//   The number of requests exceeds the limit. Resubmit your request later.
775//
776//   * TooManyTagsException
777//   The request contains more tags than can be associated with a resource (50
778//   tags per resource). The maximum number of tags includes both existing tags
779//   and those included in your current request.
780//
781//   * InternalServerException
782//   An internal server error occurred. Retry your request.
783//
784// See also, https://docs.aws.amazon.com/goto/WebAPI/comprehend-2017-11-27/CreateEndpoint
785func (c *Comprehend) CreateEndpoint(input *CreateEndpointInput) (*CreateEndpointOutput, error) {
786	req, out := c.CreateEndpointRequest(input)
787	return out, req.Send()
788}
789
790// CreateEndpointWithContext is the same as CreateEndpoint with the addition of
791// the ability to pass a context and additional request options.
792//
793// See CreateEndpoint for details on how to use this API operation.
794//
795// The context must be non-nil and will be used for request cancellation. If
796// the context is nil a panic will occur. In the future the SDK may create
797// sub-contexts for http.Requests. See https://golang.org/pkg/context/
798// for more information on using Contexts.
799func (c *Comprehend) CreateEndpointWithContext(ctx aws.Context, input *CreateEndpointInput, opts ...request.Option) (*CreateEndpointOutput, error) {
800	req, out := c.CreateEndpointRequest(input)
801	req.SetContext(ctx)
802	req.ApplyOptions(opts...)
803	return out, req.Send()
804}
805
806const opCreateEntityRecognizer = "CreateEntityRecognizer"
807
808// CreateEntityRecognizerRequest generates a "aws/request.Request" representing the
809// client's request for the CreateEntityRecognizer operation. The "output" return
810// value will be populated with the request's response once the request completes
811// successfully.
812//
813// Use "Send" method on the returned Request to send the API call to the service.
814// the "output" return value is not valid until after Send returns without error.
815//
816// See CreateEntityRecognizer for more information on using the CreateEntityRecognizer
817// API call, and error handling.
818//
819// This method is useful when you want to inject custom logic or configuration
820// into the SDK's request lifecycle. Such as custom headers, or retry logic.
821//
822//
823//    // Example sending a request using the CreateEntityRecognizerRequest method.
824//    req, resp := client.CreateEntityRecognizerRequest(params)
825//
826//    err := req.Send()
827//    if err == nil { // resp is now filled
828//        fmt.Println(resp)
829//    }
830//
831// See also, https://docs.aws.amazon.com/goto/WebAPI/comprehend-2017-11-27/CreateEntityRecognizer
832func (c *Comprehend) CreateEntityRecognizerRequest(input *CreateEntityRecognizerInput) (req *request.Request, output *CreateEntityRecognizerOutput) {
833	op := &request.Operation{
834		Name:       opCreateEntityRecognizer,
835		HTTPMethod: "POST",
836		HTTPPath:   "/",
837	}
838
839	if input == nil {
840		input = &CreateEntityRecognizerInput{}
841	}
842
843	output = &CreateEntityRecognizerOutput{}
844	req = c.newRequest(op, input, output)
845	return
846}
847
848// CreateEntityRecognizer API operation for Amazon Comprehend.
849//
850// Creates an entity recognizer using submitted files. After your CreateEntityRecognizer
851// request is submitted, you can check job status using the API.
852//
853// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
854// with awserr.Error's Code and Message methods to get detailed information about
855// the error.
856//
857// See the AWS API reference guide for Amazon Comprehend's
858// API operation CreateEntityRecognizer for usage and error information.
859//
860// Returned Error Types:
861//   * InvalidRequestException
862//   The request is invalid.
863//
864//   * ResourceInUseException
865//   The specified resource name is already in use. Use a different name and try
866//   your request again.
867//
868//   * TooManyTagsException
869//   The request contains more tags than can be associated with a resource (50
870//   tags per resource). The maximum number of tags includes both existing tags
871//   and those included in your current request.
872//
873//   * TooManyRequestsException
874//   The number of requests exceeds the limit. Resubmit your request later.
875//
876//   * ResourceLimitExceededException
877//   The maximum number of resources per account has been exceeded. Review the
878//   resources, and then try your request again.
879//
880//   * UnsupportedLanguageException
881//   Amazon Comprehend can't process the language of the input text. For all custom
882//   entity recognition APIs (such as CreateEntityRecognizer), only English is
883//   accepted. For most other APIs, such as those for Custom Classification, Amazon
884//   Comprehend accepts text in all supported languages. For a list of supported
885//   languages, see supported-languages.
886//
887//   * KmsKeyValidationException
888//   The KMS customer managed key (CMK) entered cannot be validated. Verify the
889//   key and re-enter it.
890//
891//   * InternalServerException
892//   An internal server error occurred. Retry your request.
893//
894// See also, https://docs.aws.amazon.com/goto/WebAPI/comprehend-2017-11-27/CreateEntityRecognizer
895func (c *Comprehend) CreateEntityRecognizer(input *CreateEntityRecognizerInput) (*CreateEntityRecognizerOutput, error) {
896	req, out := c.CreateEntityRecognizerRequest(input)
897	return out, req.Send()
898}
899
900// CreateEntityRecognizerWithContext is the same as CreateEntityRecognizer with the addition of
901// the ability to pass a context and additional request options.
902//
903// See CreateEntityRecognizer for details on how to use this API operation.
904//
905// The context must be non-nil and will be used for request cancellation. If
906// the context is nil a panic will occur. In the future the SDK may create
907// sub-contexts for http.Requests. See https://golang.org/pkg/context/
908// for more information on using Contexts.
909func (c *Comprehend) CreateEntityRecognizerWithContext(ctx aws.Context, input *CreateEntityRecognizerInput, opts ...request.Option) (*CreateEntityRecognizerOutput, error) {
910	req, out := c.CreateEntityRecognizerRequest(input)
911	req.SetContext(ctx)
912	req.ApplyOptions(opts...)
913	return out, req.Send()
914}
915
916const opDeleteDocumentClassifier = "DeleteDocumentClassifier"
917
918// DeleteDocumentClassifierRequest generates a "aws/request.Request" representing the
919// client's request for the DeleteDocumentClassifier operation. The "output" return
920// value will be populated with the request's response once the request completes
921// successfully.
922//
923// Use "Send" method on the returned Request to send the API call to the service.
924// the "output" return value is not valid until after Send returns without error.
925//
926// See DeleteDocumentClassifier for more information on using the DeleteDocumentClassifier
927// API call, and error handling.
928//
929// This method is useful when you want to inject custom logic or configuration
930// into the SDK's request lifecycle. Such as custom headers, or retry logic.
931//
932//
933//    // Example sending a request using the DeleteDocumentClassifierRequest method.
934//    req, resp := client.DeleteDocumentClassifierRequest(params)
935//
936//    err := req.Send()
937//    if err == nil { // resp is now filled
938//        fmt.Println(resp)
939//    }
940//
941// See also, https://docs.aws.amazon.com/goto/WebAPI/comprehend-2017-11-27/DeleteDocumentClassifier
942func (c *Comprehend) DeleteDocumentClassifierRequest(input *DeleteDocumentClassifierInput) (req *request.Request, output *DeleteDocumentClassifierOutput) {
943	op := &request.Operation{
944		Name:       opDeleteDocumentClassifier,
945		HTTPMethod: "POST",
946		HTTPPath:   "/",
947	}
948
949	if input == nil {
950		input = &DeleteDocumentClassifierInput{}
951	}
952
953	output = &DeleteDocumentClassifierOutput{}
954	req = c.newRequest(op, input, output)
955	req.Handlers.Unmarshal.Swap(jsonrpc.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler)
956	return
957}
958
959// DeleteDocumentClassifier API operation for Amazon Comprehend.
960//
961// Deletes a previously created document classifier
962//
963// Only those classifiers that are in terminated states (IN_ERROR, TRAINED)
964// will be deleted. If an active inference job is using the model, a ResourceInUseException
965// will be returned.
966//
967// This is an asynchronous action that puts the classifier into a DELETING state,
968// and it is then removed by a background job. Once removed, the classifier
969// disappears from your account and is no longer available for use.
970//
971// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
972// with awserr.Error's Code and Message methods to get detailed information about
973// the error.
974//
975// See the AWS API reference guide for Amazon Comprehend's
976// API operation DeleteDocumentClassifier for usage and error information.
977//
978// Returned Error Types:
979//   * InvalidRequestException
980//   The request is invalid.
981//
982//   * TooManyRequestsException
983//   The number of requests exceeds the limit. Resubmit your request later.
984//
985//   * ResourceNotFoundException
986//   The specified resource ARN was not found. Check the ARN and try your request
987//   again.
988//
989//   * ResourceUnavailableException
990//   The specified resource is not available. Check the resource and try your
991//   request again.
992//
993//   * ResourceInUseException
994//   The specified resource name is already in use. Use a different name and try
995//   your request again.
996//
997//   * InternalServerException
998//   An internal server error occurred. Retry your request.
999//
1000// See also, https://docs.aws.amazon.com/goto/WebAPI/comprehend-2017-11-27/DeleteDocumentClassifier
1001func (c *Comprehend) DeleteDocumentClassifier(input *DeleteDocumentClassifierInput) (*DeleteDocumentClassifierOutput, error) {
1002	req, out := c.DeleteDocumentClassifierRequest(input)
1003	return out, req.Send()
1004}
1005
1006// DeleteDocumentClassifierWithContext is the same as DeleteDocumentClassifier with the addition of
1007// the ability to pass a context and additional request options.
1008//
1009// See DeleteDocumentClassifier for details on how to use this API operation.
1010//
1011// The context must be non-nil and will be used for request cancellation. If
1012// the context is nil a panic will occur. In the future the SDK may create
1013// sub-contexts for http.Requests. See https://golang.org/pkg/context/
1014// for more information on using Contexts.
1015func (c *Comprehend) DeleteDocumentClassifierWithContext(ctx aws.Context, input *DeleteDocumentClassifierInput, opts ...request.Option) (*DeleteDocumentClassifierOutput, error) {
1016	req, out := c.DeleteDocumentClassifierRequest(input)
1017	req.SetContext(ctx)
1018	req.ApplyOptions(opts...)
1019	return out, req.Send()
1020}
1021
1022const opDeleteEndpoint = "DeleteEndpoint"
1023
1024// DeleteEndpointRequest generates a "aws/request.Request" representing the
1025// client's request for the DeleteEndpoint operation. The "output" return
1026// value will be populated with the request's response once the request completes
1027// successfully.
1028//
1029// Use "Send" method on the returned Request to send the API call to the service.
1030// the "output" return value is not valid until after Send returns without error.
1031//
1032// See DeleteEndpoint for more information on using the DeleteEndpoint
1033// API call, and error handling.
1034//
1035// This method is useful when you want to inject custom logic or configuration
1036// into the SDK's request lifecycle. Such as custom headers, or retry logic.
1037//
1038//
1039//    // Example sending a request using the DeleteEndpointRequest method.
1040//    req, resp := client.DeleteEndpointRequest(params)
1041//
1042//    err := req.Send()
1043//    if err == nil { // resp is now filled
1044//        fmt.Println(resp)
1045//    }
1046//
1047// See also, https://docs.aws.amazon.com/goto/WebAPI/comprehend-2017-11-27/DeleteEndpoint
1048func (c *Comprehend) DeleteEndpointRequest(input *DeleteEndpointInput) (req *request.Request, output *DeleteEndpointOutput) {
1049	op := &request.Operation{
1050		Name:       opDeleteEndpoint,
1051		HTTPMethod: "POST",
1052		HTTPPath:   "/",
1053	}
1054
1055	if input == nil {
1056		input = &DeleteEndpointInput{}
1057	}
1058
1059	output = &DeleteEndpointOutput{}
1060	req = c.newRequest(op, input, output)
1061	req.Handlers.Unmarshal.Swap(jsonrpc.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler)
1062	return
1063}
1064
1065// DeleteEndpoint API operation for Amazon Comprehend.
1066//
1067// Deletes a model-specific endpoint for a previously-trained custom model.
1068// All endpoints must be deleted in order for the model to be deleted.
1069//
1070// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
1071// with awserr.Error's Code and Message methods to get detailed information about
1072// the error.
1073//
1074// See the AWS API reference guide for Amazon Comprehend's
1075// API operation DeleteEndpoint for usage and error information.
1076//
1077// Returned Error Types:
1078//   * InvalidRequestException
1079//   The request is invalid.
1080//
1081//   * ResourceInUseException
1082//   The specified resource name is already in use. Use a different name and try
1083//   your request again.
1084//
1085//   * ResourceNotFoundException
1086//   The specified resource ARN was not found. Check the ARN and try your request
1087//   again.
1088//
1089//   * TooManyRequestsException
1090//   The number of requests exceeds the limit. Resubmit your request later.
1091//
1092//   * InternalServerException
1093//   An internal server error occurred. Retry your request.
1094//
1095// See also, https://docs.aws.amazon.com/goto/WebAPI/comprehend-2017-11-27/DeleteEndpoint
1096func (c *Comprehend) DeleteEndpoint(input *DeleteEndpointInput) (*DeleteEndpointOutput, error) {
1097	req, out := c.DeleteEndpointRequest(input)
1098	return out, req.Send()
1099}
1100
1101// DeleteEndpointWithContext is the same as DeleteEndpoint with the addition of
1102// the ability to pass a context and additional request options.
1103//
1104// See DeleteEndpoint for details on how to use this API operation.
1105//
1106// The context must be non-nil and will be used for request cancellation. If
1107// the context is nil a panic will occur. In the future the SDK may create
1108// sub-contexts for http.Requests. See https://golang.org/pkg/context/
1109// for more information on using Contexts.
1110func (c *Comprehend) DeleteEndpointWithContext(ctx aws.Context, input *DeleteEndpointInput, opts ...request.Option) (*DeleteEndpointOutput, error) {
1111	req, out := c.DeleteEndpointRequest(input)
1112	req.SetContext(ctx)
1113	req.ApplyOptions(opts...)
1114	return out, req.Send()
1115}
1116
1117const opDeleteEntityRecognizer = "DeleteEntityRecognizer"
1118
1119// DeleteEntityRecognizerRequest generates a "aws/request.Request" representing the
1120// client's request for the DeleteEntityRecognizer operation. The "output" return
1121// value will be populated with the request's response once the request completes
1122// successfully.
1123//
1124// Use "Send" method on the returned Request to send the API call to the service.
1125// the "output" return value is not valid until after Send returns without error.
1126//
1127// See DeleteEntityRecognizer for more information on using the DeleteEntityRecognizer
1128// API call, and error handling.
1129//
1130// This method is useful when you want to inject custom logic or configuration
1131// into the SDK's request lifecycle. Such as custom headers, or retry logic.
1132//
1133//
1134//    // Example sending a request using the DeleteEntityRecognizerRequest method.
1135//    req, resp := client.DeleteEntityRecognizerRequest(params)
1136//
1137//    err := req.Send()
1138//    if err == nil { // resp is now filled
1139//        fmt.Println(resp)
1140//    }
1141//
1142// See also, https://docs.aws.amazon.com/goto/WebAPI/comprehend-2017-11-27/DeleteEntityRecognizer
1143func (c *Comprehend) DeleteEntityRecognizerRequest(input *DeleteEntityRecognizerInput) (req *request.Request, output *DeleteEntityRecognizerOutput) {
1144	op := &request.Operation{
1145		Name:       opDeleteEntityRecognizer,
1146		HTTPMethod: "POST",
1147		HTTPPath:   "/",
1148	}
1149
1150	if input == nil {
1151		input = &DeleteEntityRecognizerInput{}
1152	}
1153
1154	output = &DeleteEntityRecognizerOutput{}
1155	req = c.newRequest(op, input, output)
1156	req.Handlers.Unmarshal.Swap(jsonrpc.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler)
1157	return
1158}
1159
1160// DeleteEntityRecognizer API operation for Amazon Comprehend.
1161//
1162// Deletes an entity recognizer.
1163//
1164// Only those recognizers that are in terminated states (IN_ERROR, TRAINED)
1165// will be deleted. If an active inference job is using the model, a ResourceInUseException
1166// will be returned.
1167//
1168// This is an asynchronous action that puts the recognizer into a DELETING state,
1169// and it is then removed by a background job. Once removed, the recognizer
1170// disappears from your account and is no longer available for use.
1171//
1172// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
1173// with awserr.Error's Code and Message methods to get detailed information about
1174// the error.
1175//
1176// See the AWS API reference guide for Amazon Comprehend's
1177// API operation DeleteEntityRecognizer for usage and error information.
1178//
1179// Returned Error Types:
1180//   * InvalidRequestException
1181//   The request is invalid.
1182//
1183//   * TooManyRequestsException
1184//   The number of requests exceeds the limit. Resubmit your request later.
1185//
1186//   * ResourceNotFoundException
1187//   The specified resource ARN was not found. Check the ARN and try your request
1188//   again.
1189//
1190//   * ResourceUnavailableException
1191//   The specified resource is not available. Check the resource and try your
1192//   request again.
1193//
1194//   * ResourceInUseException
1195//   The specified resource name is already in use. Use a different name and try
1196//   your request again.
1197//
1198//   * InternalServerException
1199//   An internal server error occurred. Retry your request.
1200//
1201// See also, https://docs.aws.amazon.com/goto/WebAPI/comprehend-2017-11-27/DeleteEntityRecognizer
1202func (c *Comprehend) DeleteEntityRecognizer(input *DeleteEntityRecognizerInput) (*DeleteEntityRecognizerOutput, error) {
1203	req, out := c.DeleteEntityRecognizerRequest(input)
1204	return out, req.Send()
1205}
1206
1207// DeleteEntityRecognizerWithContext is the same as DeleteEntityRecognizer with the addition of
1208// the ability to pass a context and additional request options.
1209//
1210// See DeleteEntityRecognizer for details on how to use this API operation.
1211//
1212// The context must be non-nil and will be used for request cancellation. If
1213// the context is nil a panic will occur. In the future the SDK may create
1214// sub-contexts for http.Requests. See https://golang.org/pkg/context/
1215// for more information on using Contexts.
1216func (c *Comprehend) DeleteEntityRecognizerWithContext(ctx aws.Context, input *DeleteEntityRecognizerInput, opts ...request.Option) (*DeleteEntityRecognizerOutput, error) {
1217	req, out := c.DeleteEntityRecognizerRequest(input)
1218	req.SetContext(ctx)
1219	req.ApplyOptions(opts...)
1220	return out, req.Send()
1221}
1222
1223const opDescribeDocumentClassificationJob = "DescribeDocumentClassificationJob"
1224
1225// DescribeDocumentClassificationJobRequest generates a "aws/request.Request" representing the
1226// client's request for the DescribeDocumentClassificationJob operation. The "output" return
1227// value will be populated with the request's response once the request completes
1228// successfully.
1229//
1230// Use "Send" method on the returned Request to send the API call to the service.
1231// the "output" return value is not valid until after Send returns without error.
1232//
1233// See DescribeDocumentClassificationJob for more information on using the DescribeDocumentClassificationJob
1234// API call, and error handling.
1235//
1236// This method is useful when you want to inject custom logic or configuration
1237// into the SDK's request lifecycle. Such as custom headers, or retry logic.
1238//
1239//
1240//    // Example sending a request using the DescribeDocumentClassificationJobRequest method.
1241//    req, resp := client.DescribeDocumentClassificationJobRequest(params)
1242//
1243//    err := req.Send()
1244//    if err == nil { // resp is now filled
1245//        fmt.Println(resp)
1246//    }
1247//
1248// See also, https://docs.aws.amazon.com/goto/WebAPI/comprehend-2017-11-27/DescribeDocumentClassificationJob
1249func (c *Comprehend) DescribeDocumentClassificationJobRequest(input *DescribeDocumentClassificationJobInput) (req *request.Request, output *DescribeDocumentClassificationJobOutput) {
1250	op := &request.Operation{
1251		Name:       opDescribeDocumentClassificationJob,
1252		HTTPMethod: "POST",
1253		HTTPPath:   "/",
1254	}
1255
1256	if input == nil {
1257		input = &DescribeDocumentClassificationJobInput{}
1258	}
1259
1260	output = &DescribeDocumentClassificationJobOutput{}
1261	req = c.newRequest(op, input, output)
1262	return
1263}
1264
1265// DescribeDocumentClassificationJob API operation for Amazon Comprehend.
1266//
1267// Gets the properties associated with a document classification job. Use this
1268// operation to get the status of a classification job.
1269//
1270// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
1271// with awserr.Error's Code and Message methods to get detailed information about
1272// the error.
1273//
1274// See the AWS API reference guide for Amazon Comprehend's
1275// API operation DescribeDocumentClassificationJob for usage and error information.
1276//
1277// Returned Error Types:
1278//   * InvalidRequestException
1279//   The request is invalid.
1280//
1281//   * TooManyRequestsException
1282//   The number of requests exceeds the limit. Resubmit your request later.
1283//
1284//   * JobNotFoundException
1285//   The specified job was not found. Check the job ID and try again.
1286//
1287//   * InternalServerException
1288//   An internal server error occurred. Retry your request.
1289//
1290// See also, https://docs.aws.amazon.com/goto/WebAPI/comprehend-2017-11-27/DescribeDocumentClassificationJob
1291func (c *Comprehend) DescribeDocumentClassificationJob(input *DescribeDocumentClassificationJobInput) (*DescribeDocumentClassificationJobOutput, error) {
1292	req, out := c.DescribeDocumentClassificationJobRequest(input)
1293	return out, req.Send()
1294}
1295
1296// DescribeDocumentClassificationJobWithContext is the same as DescribeDocumentClassificationJob with the addition of
1297// the ability to pass a context and additional request options.
1298//
1299// See DescribeDocumentClassificationJob for details on how to use this API operation.
1300//
1301// The context must be non-nil and will be used for request cancellation. If
1302// the context is nil a panic will occur. In the future the SDK may create
1303// sub-contexts for http.Requests. See https://golang.org/pkg/context/
1304// for more information on using Contexts.
1305func (c *Comprehend) DescribeDocumentClassificationJobWithContext(ctx aws.Context, input *DescribeDocumentClassificationJobInput, opts ...request.Option) (*DescribeDocumentClassificationJobOutput, error) {
1306	req, out := c.DescribeDocumentClassificationJobRequest(input)
1307	req.SetContext(ctx)
1308	req.ApplyOptions(opts...)
1309	return out, req.Send()
1310}
1311
1312const opDescribeDocumentClassifier = "DescribeDocumentClassifier"
1313
1314// DescribeDocumentClassifierRequest generates a "aws/request.Request" representing the
1315// client's request for the DescribeDocumentClassifier operation. The "output" return
1316// value will be populated with the request's response once the request completes
1317// successfully.
1318//
1319// Use "Send" method on the returned Request to send the API call to the service.
1320// the "output" return value is not valid until after Send returns without error.
1321//
1322// See DescribeDocumentClassifier for more information on using the DescribeDocumentClassifier
1323// API call, and error handling.
1324//
1325// This method is useful when you want to inject custom logic or configuration
1326// into the SDK's request lifecycle. Such as custom headers, or retry logic.
1327//
1328//
1329//    // Example sending a request using the DescribeDocumentClassifierRequest method.
1330//    req, resp := client.DescribeDocumentClassifierRequest(params)
1331//
1332//    err := req.Send()
1333//    if err == nil { // resp is now filled
1334//        fmt.Println(resp)
1335//    }
1336//
1337// See also, https://docs.aws.amazon.com/goto/WebAPI/comprehend-2017-11-27/DescribeDocumentClassifier
1338func (c *Comprehend) DescribeDocumentClassifierRequest(input *DescribeDocumentClassifierInput) (req *request.Request, output *DescribeDocumentClassifierOutput) {
1339	op := &request.Operation{
1340		Name:       opDescribeDocumentClassifier,
1341		HTTPMethod: "POST",
1342		HTTPPath:   "/",
1343	}
1344
1345	if input == nil {
1346		input = &DescribeDocumentClassifierInput{}
1347	}
1348
1349	output = &DescribeDocumentClassifierOutput{}
1350	req = c.newRequest(op, input, output)
1351	return
1352}
1353
1354// DescribeDocumentClassifier API operation for Amazon Comprehend.
1355//
1356// Gets the properties associated with a document classifier.
1357//
1358// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
1359// with awserr.Error's Code and Message methods to get detailed information about
1360// the error.
1361//
1362// See the AWS API reference guide for Amazon Comprehend's
1363// API operation DescribeDocumentClassifier for usage and error information.
1364//
1365// Returned Error Types:
1366//   * InvalidRequestException
1367//   The request is invalid.
1368//
1369//   * TooManyRequestsException
1370//   The number of requests exceeds the limit. Resubmit your request later.
1371//
1372//   * ResourceNotFoundException
1373//   The specified resource ARN was not found. Check the ARN and try your request
1374//   again.
1375//
1376//   * InternalServerException
1377//   An internal server error occurred. Retry your request.
1378//
1379// See also, https://docs.aws.amazon.com/goto/WebAPI/comprehend-2017-11-27/DescribeDocumentClassifier
1380func (c *Comprehend) DescribeDocumentClassifier(input *DescribeDocumentClassifierInput) (*DescribeDocumentClassifierOutput, error) {
1381	req, out := c.DescribeDocumentClassifierRequest(input)
1382	return out, req.Send()
1383}
1384
1385// DescribeDocumentClassifierWithContext is the same as DescribeDocumentClassifier with the addition of
1386// the ability to pass a context and additional request options.
1387//
1388// See DescribeDocumentClassifier for details on how to use this API operation.
1389//
1390// The context must be non-nil and will be used for request cancellation. If
1391// the context is nil a panic will occur. In the future the SDK may create
1392// sub-contexts for http.Requests. See https://golang.org/pkg/context/
1393// for more information on using Contexts.
1394func (c *Comprehend) DescribeDocumentClassifierWithContext(ctx aws.Context, input *DescribeDocumentClassifierInput, opts ...request.Option) (*DescribeDocumentClassifierOutput, error) {
1395	req, out := c.DescribeDocumentClassifierRequest(input)
1396	req.SetContext(ctx)
1397	req.ApplyOptions(opts...)
1398	return out, req.Send()
1399}
1400
1401const opDescribeDominantLanguageDetectionJob = "DescribeDominantLanguageDetectionJob"
1402
1403// DescribeDominantLanguageDetectionJobRequest generates a "aws/request.Request" representing the
1404// client's request for the DescribeDominantLanguageDetectionJob operation. The "output" return
1405// value will be populated with the request's response once the request completes
1406// successfully.
1407//
1408// Use "Send" method on the returned Request to send the API call to the service.
1409// the "output" return value is not valid until after Send returns without error.
1410//
1411// See DescribeDominantLanguageDetectionJob for more information on using the DescribeDominantLanguageDetectionJob
1412// API call, and error handling.
1413//
1414// This method is useful when you want to inject custom logic or configuration
1415// into the SDK's request lifecycle. Such as custom headers, or retry logic.
1416//
1417//
1418//    // Example sending a request using the DescribeDominantLanguageDetectionJobRequest method.
1419//    req, resp := client.DescribeDominantLanguageDetectionJobRequest(params)
1420//
1421//    err := req.Send()
1422//    if err == nil { // resp is now filled
1423//        fmt.Println(resp)
1424//    }
1425//
1426// See also, https://docs.aws.amazon.com/goto/WebAPI/comprehend-2017-11-27/DescribeDominantLanguageDetectionJob
1427func (c *Comprehend) DescribeDominantLanguageDetectionJobRequest(input *DescribeDominantLanguageDetectionJobInput) (req *request.Request, output *DescribeDominantLanguageDetectionJobOutput) {
1428	op := &request.Operation{
1429		Name:       opDescribeDominantLanguageDetectionJob,
1430		HTTPMethod: "POST",
1431		HTTPPath:   "/",
1432	}
1433
1434	if input == nil {
1435		input = &DescribeDominantLanguageDetectionJobInput{}
1436	}
1437
1438	output = &DescribeDominantLanguageDetectionJobOutput{}
1439	req = c.newRequest(op, input, output)
1440	return
1441}
1442
1443// DescribeDominantLanguageDetectionJob API operation for Amazon Comprehend.
1444//
1445// Gets the properties associated with a dominant language detection job. Use
1446// this operation to get the status of a detection job.
1447//
1448// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
1449// with awserr.Error's Code and Message methods to get detailed information about
1450// the error.
1451//
1452// See the AWS API reference guide for Amazon Comprehend's
1453// API operation DescribeDominantLanguageDetectionJob for usage and error information.
1454//
1455// Returned Error Types:
1456//   * InvalidRequestException
1457//   The request is invalid.
1458//
1459//   * JobNotFoundException
1460//   The specified job was not found. Check the job ID and try again.
1461//
1462//   * TooManyRequestsException
1463//   The number of requests exceeds the limit. Resubmit your request later.
1464//
1465//   * InternalServerException
1466//   An internal server error occurred. Retry your request.
1467//
1468// See also, https://docs.aws.amazon.com/goto/WebAPI/comprehend-2017-11-27/DescribeDominantLanguageDetectionJob
1469func (c *Comprehend) DescribeDominantLanguageDetectionJob(input *DescribeDominantLanguageDetectionJobInput) (*DescribeDominantLanguageDetectionJobOutput, error) {
1470	req, out := c.DescribeDominantLanguageDetectionJobRequest(input)
1471	return out, req.Send()
1472}
1473
1474// DescribeDominantLanguageDetectionJobWithContext is the same as DescribeDominantLanguageDetectionJob with the addition of
1475// the ability to pass a context and additional request options.
1476//
1477// See DescribeDominantLanguageDetectionJob for details on how to use this API operation.
1478//
1479// The context must be non-nil and will be used for request cancellation. If
1480// the context is nil a panic will occur. In the future the SDK may create
1481// sub-contexts for http.Requests. See https://golang.org/pkg/context/
1482// for more information on using Contexts.
1483func (c *Comprehend) DescribeDominantLanguageDetectionJobWithContext(ctx aws.Context, input *DescribeDominantLanguageDetectionJobInput, opts ...request.Option) (*DescribeDominantLanguageDetectionJobOutput, error) {
1484	req, out := c.DescribeDominantLanguageDetectionJobRequest(input)
1485	req.SetContext(ctx)
1486	req.ApplyOptions(opts...)
1487	return out, req.Send()
1488}
1489
1490const opDescribeEndpoint = "DescribeEndpoint"
1491
1492// DescribeEndpointRequest generates a "aws/request.Request" representing the
1493// client's request for the DescribeEndpoint operation. The "output" return
1494// value will be populated with the request's response once the request completes
1495// successfully.
1496//
1497// Use "Send" method on the returned Request to send the API call to the service.
1498// the "output" return value is not valid until after Send returns without error.
1499//
1500// See DescribeEndpoint for more information on using the DescribeEndpoint
1501// API call, and error handling.
1502//
1503// This method is useful when you want to inject custom logic or configuration
1504// into the SDK's request lifecycle. Such as custom headers, or retry logic.
1505//
1506//
1507//    // Example sending a request using the DescribeEndpointRequest method.
1508//    req, resp := client.DescribeEndpointRequest(params)
1509//
1510//    err := req.Send()
1511//    if err == nil { // resp is now filled
1512//        fmt.Println(resp)
1513//    }
1514//
1515// See also, https://docs.aws.amazon.com/goto/WebAPI/comprehend-2017-11-27/DescribeEndpoint
1516func (c *Comprehend) DescribeEndpointRequest(input *DescribeEndpointInput) (req *request.Request, output *DescribeEndpointOutput) {
1517	op := &request.Operation{
1518		Name:       opDescribeEndpoint,
1519		HTTPMethod: "POST",
1520		HTTPPath:   "/",
1521	}
1522
1523	if input == nil {
1524		input = &DescribeEndpointInput{}
1525	}
1526
1527	output = &DescribeEndpointOutput{}
1528	req = c.newRequest(op, input, output)
1529	return
1530}
1531
1532// DescribeEndpoint API operation for Amazon Comprehend.
1533//
1534// Gets the properties associated with a specific endpoint. Use this operation
1535// to get the status of an endpoint.
1536//
1537// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
1538// with awserr.Error's Code and Message methods to get detailed information about
1539// the error.
1540//
1541// See the AWS API reference guide for Amazon Comprehend's
1542// API operation DescribeEndpoint for usage and error information.
1543//
1544// Returned Error Types:
1545//   * InvalidRequestException
1546//   The request is invalid.
1547//
1548//   * TooManyRequestsException
1549//   The number of requests exceeds the limit. Resubmit your request later.
1550//
1551//   * ResourceNotFoundException
1552//   The specified resource ARN was not found. Check the ARN and try your request
1553//   again.
1554//
1555//   * InternalServerException
1556//   An internal server error occurred. Retry your request.
1557//
1558// See also, https://docs.aws.amazon.com/goto/WebAPI/comprehend-2017-11-27/DescribeEndpoint
1559func (c *Comprehend) DescribeEndpoint(input *DescribeEndpointInput) (*DescribeEndpointOutput, error) {
1560	req, out := c.DescribeEndpointRequest(input)
1561	return out, req.Send()
1562}
1563
1564// DescribeEndpointWithContext is the same as DescribeEndpoint with the addition of
1565// the ability to pass a context and additional request options.
1566//
1567// See DescribeEndpoint for details on how to use this API operation.
1568//
1569// The context must be non-nil and will be used for request cancellation. If
1570// the context is nil a panic will occur. In the future the SDK may create
1571// sub-contexts for http.Requests. See https://golang.org/pkg/context/
1572// for more information on using Contexts.
1573func (c *Comprehend) DescribeEndpointWithContext(ctx aws.Context, input *DescribeEndpointInput, opts ...request.Option) (*DescribeEndpointOutput, error) {
1574	req, out := c.DescribeEndpointRequest(input)
1575	req.SetContext(ctx)
1576	req.ApplyOptions(opts...)
1577	return out, req.Send()
1578}
1579
1580const opDescribeEntitiesDetectionJob = "DescribeEntitiesDetectionJob"
1581
1582// DescribeEntitiesDetectionJobRequest generates a "aws/request.Request" representing the
1583// client's request for the DescribeEntitiesDetectionJob operation. The "output" return
1584// value will be populated with the request's response once the request completes
1585// successfully.
1586//
1587// Use "Send" method on the returned Request to send the API call to the service.
1588// the "output" return value is not valid until after Send returns without error.
1589//
1590// See DescribeEntitiesDetectionJob for more information on using the DescribeEntitiesDetectionJob
1591// API call, and error handling.
1592//
1593// This method is useful when you want to inject custom logic or configuration
1594// into the SDK's request lifecycle. Such as custom headers, or retry logic.
1595//
1596//
1597//    // Example sending a request using the DescribeEntitiesDetectionJobRequest method.
1598//    req, resp := client.DescribeEntitiesDetectionJobRequest(params)
1599//
1600//    err := req.Send()
1601//    if err == nil { // resp is now filled
1602//        fmt.Println(resp)
1603//    }
1604//
1605// See also, https://docs.aws.amazon.com/goto/WebAPI/comprehend-2017-11-27/DescribeEntitiesDetectionJob
1606func (c *Comprehend) DescribeEntitiesDetectionJobRequest(input *DescribeEntitiesDetectionJobInput) (req *request.Request, output *DescribeEntitiesDetectionJobOutput) {
1607	op := &request.Operation{
1608		Name:       opDescribeEntitiesDetectionJob,
1609		HTTPMethod: "POST",
1610		HTTPPath:   "/",
1611	}
1612
1613	if input == nil {
1614		input = &DescribeEntitiesDetectionJobInput{}
1615	}
1616
1617	output = &DescribeEntitiesDetectionJobOutput{}
1618	req = c.newRequest(op, input, output)
1619	return
1620}
1621
1622// DescribeEntitiesDetectionJob API operation for Amazon Comprehend.
1623//
1624// Gets the properties associated with an entities detection job. Use this operation
1625// to get the status of a detection job.
1626//
1627// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
1628// with awserr.Error's Code and Message methods to get detailed information about
1629// the error.
1630//
1631// See the AWS API reference guide for Amazon Comprehend's
1632// API operation DescribeEntitiesDetectionJob for usage and error information.
1633//
1634// Returned Error Types:
1635//   * InvalidRequestException
1636//   The request is invalid.
1637//
1638//   * JobNotFoundException
1639//   The specified job was not found. Check the job ID and try again.
1640//
1641//   * TooManyRequestsException
1642//   The number of requests exceeds the limit. Resubmit your request later.
1643//
1644//   * InternalServerException
1645//   An internal server error occurred. Retry your request.
1646//
1647// See also, https://docs.aws.amazon.com/goto/WebAPI/comprehend-2017-11-27/DescribeEntitiesDetectionJob
1648func (c *Comprehend) DescribeEntitiesDetectionJob(input *DescribeEntitiesDetectionJobInput) (*DescribeEntitiesDetectionJobOutput, error) {
1649	req, out := c.DescribeEntitiesDetectionJobRequest(input)
1650	return out, req.Send()
1651}
1652
1653// DescribeEntitiesDetectionJobWithContext is the same as DescribeEntitiesDetectionJob with the addition of
1654// the ability to pass a context and additional request options.
1655//
1656// See DescribeEntitiesDetectionJob for details on how to use this API operation.
1657//
1658// The context must be non-nil and will be used for request cancellation. If
1659// the context is nil a panic will occur. In the future the SDK may create
1660// sub-contexts for http.Requests. See https://golang.org/pkg/context/
1661// for more information on using Contexts.
1662func (c *Comprehend) DescribeEntitiesDetectionJobWithContext(ctx aws.Context, input *DescribeEntitiesDetectionJobInput, opts ...request.Option) (*DescribeEntitiesDetectionJobOutput, error) {
1663	req, out := c.DescribeEntitiesDetectionJobRequest(input)
1664	req.SetContext(ctx)
1665	req.ApplyOptions(opts...)
1666	return out, req.Send()
1667}
1668
1669const opDescribeEntityRecognizer = "DescribeEntityRecognizer"
1670
1671// DescribeEntityRecognizerRequest generates a "aws/request.Request" representing the
1672// client's request for the DescribeEntityRecognizer operation. The "output" return
1673// value will be populated with the request's response once the request completes
1674// successfully.
1675//
1676// Use "Send" method on the returned Request to send the API call to the service.
1677// the "output" return value is not valid until after Send returns without error.
1678//
1679// See DescribeEntityRecognizer for more information on using the DescribeEntityRecognizer
1680// API call, and error handling.
1681//
1682// This method is useful when you want to inject custom logic or configuration
1683// into the SDK's request lifecycle. Such as custom headers, or retry logic.
1684//
1685//
1686//    // Example sending a request using the DescribeEntityRecognizerRequest method.
1687//    req, resp := client.DescribeEntityRecognizerRequest(params)
1688//
1689//    err := req.Send()
1690//    if err == nil { // resp is now filled
1691//        fmt.Println(resp)
1692//    }
1693//
1694// See also, https://docs.aws.amazon.com/goto/WebAPI/comprehend-2017-11-27/DescribeEntityRecognizer
1695func (c *Comprehend) DescribeEntityRecognizerRequest(input *DescribeEntityRecognizerInput) (req *request.Request, output *DescribeEntityRecognizerOutput) {
1696	op := &request.Operation{
1697		Name:       opDescribeEntityRecognizer,
1698		HTTPMethod: "POST",
1699		HTTPPath:   "/",
1700	}
1701
1702	if input == nil {
1703		input = &DescribeEntityRecognizerInput{}
1704	}
1705
1706	output = &DescribeEntityRecognizerOutput{}
1707	req = c.newRequest(op, input, output)
1708	return
1709}
1710
1711// DescribeEntityRecognizer API operation for Amazon Comprehend.
1712//
1713// Provides details about an entity recognizer including status, S3 buckets
1714// containing training data, recognizer metadata, metrics, and so on.
1715//
1716// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
1717// with awserr.Error's Code and Message methods to get detailed information about
1718// the error.
1719//
1720// See the AWS API reference guide for Amazon Comprehend's
1721// API operation DescribeEntityRecognizer for usage and error information.
1722//
1723// Returned Error Types:
1724//   * InvalidRequestException
1725//   The request is invalid.
1726//
1727//   * TooManyRequestsException
1728//   The number of requests exceeds the limit. Resubmit your request later.
1729//
1730//   * ResourceNotFoundException
1731//   The specified resource ARN was not found. Check the ARN and try your request
1732//   again.
1733//
1734//   * InternalServerException
1735//   An internal server error occurred. Retry your request.
1736//
1737// See also, https://docs.aws.amazon.com/goto/WebAPI/comprehend-2017-11-27/DescribeEntityRecognizer
1738func (c *Comprehend) DescribeEntityRecognizer(input *DescribeEntityRecognizerInput) (*DescribeEntityRecognizerOutput, error) {
1739	req, out := c.DescribeEntityRecognizerRequest(input)
1740	return out, req.Send()
1741}
1742
1743// DescribeEntityRecognizerWithContext is the same as DescribeEntityRecognizer with the addition of
1744// the ability to pass a context and additional request options.
1745//
1746// See DescribeEntityRecognizer for details on how to use this API operation.
1747//
1748// The context must be non-nil and will be used for request cancellation. If
1749// the context is nil a panic will occur. In the future the SDK may create
1750// sub-contexts for http.Requests. See https://golang.org/pkg/context/
1751// for more information on using Contexts.
1752func (c *Comprehend) DescribeEntityRecognizerWithContext(ctx aws.Context, input *DescribeEntityRecognizerInput, opts ...request.Option) (*DescribeEntityRecognizerOutput, error) {
1753	req, out := c.DescribeEntityRecognizerRequest(input)
1754	req.SetContext(ctx)
1755	req.ApplyOptions(opts...)
1756	return out, req.Send()
1757}
1758
1759const opDescribeKeyPhrasesDetectionJob = "DescribeKeyPhrasesDetectionJob"
1760
1761// DescribeKeyPhrasesDetectionJobRequest generates a "aws/request.Request" representing the
1762// client's request for the DescribeKeyPhrasesDetectionJob operation. The "output" return
1763// value will be populated with the request's response once the request completes
1764// successfully.
1765//
1766// Use "Send" method on the returned Request to send the API call to the service.
1767// the "output" return value is not valid until after Send returns without error.
1768//
1769// See DescribeKeyPhrasesDetectionJob for more information on using the DescribeKeyPhrasesDetectionJob
1770// API call, and error handling.
1771//
1772// This method is useful when you want to inject custom logic or configuration
1773// into the SDK's request lifecycle. Such as custom headers, or retry logic.
1774//
1775//
1776//    // Example sending a request using the DescribeKeyPhrasesDetectionJobRequest method.
1777//    req, resp := client.DescribeKeyPhrasesDetectionJobRequest(params)
1778//
1779//    err := req.Send()
1780//    if err == nil { // resp is now filled
1781//        fmt.Println(resp)
1782//    }
1783//
1784// See also, https://docs.aws.amazon.com/goto/WebAPI/comprehend-2017-11-27/DescribeKeyPhrasesDetectionJob
1785func (c *Comprehend) DescribeKeyPhrasesDetectionJobRequest(input *DescribeKeyPhrasesDetectionJobInput) (req *request.Request, output *DescribeKeyPhrasesDetectionJobOutput) {
1786	op := &request.Operation{
1787		Name:       opDescribeKeyPhrasesDetectionJob,
1788		HTTPMethod: "POST",
1789		HTTPPath:   "/",
1790	}
1791
1792	if input == nil {
1793		input = &DescribeKeyPhrasesDetectionJobInput{}
1794	}
1795
1796	output = &DescribeKeyPhrasesDetectionJobOutput{}
1797	req = c.newRequest(op, input, output)
1798	return
1799}
1800
1801// DescribeKeyPhrasesDetectionJob API operation for Amazon Comprehend.
1802//
1803// Gets the properties associated with a key phrases detection job. Use this
1804// operation to get the status of a detection job.
1805//
1806// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
1807// with awserr.Error's Code and Message methods to get detailed information about
1808// the error.
1809//
1810// See the AWS API reference guide for Amazon Comprehend's
1811// API operation DescribeKeyPhrasesDetectionJob for usage and error information.
1812//
1813// Returned Error Types:
1814//   * InvalidRequestException
1815//   The request is invalid.
1816//
1817//   * JobNotFoundException
1818//   The specified job was not found. Check the job ID and try again.
1819//
1820//   * TooManyRequestsException
1821//   The number of requests exceeds the limit. Resubmit your request later.
1822//
1823//   * InternalServerException
1824//   An internal server error occurred. Retry your request.
1825//
1826// See also, https://docs.aws.amazon.com/goto/WebAPI/comprehend-2017-11-27/DescribeKeyPhrasesDetectionJob
1827func (c *Comprehend) DescribeKeyPhrasesDetectionJob(input *DescribeKeyPhrasesDetectionJobInput) (*DescribeKeyPhrasesDetectionJobOutput, error) {
1828	req, out := c.DescribeKeyPhrasesDetectionJobRequest(input)
1829	return out, req.Send()
1830}
1831
1832// DescribeKeyPhrasesDetectionJobWithContext is the same as DescribeKeyPhrasesDetectionJob with the addition of
1833// the ability to pass a context and additional request options.
1834//
1835// See DescribeKeyPhrasesDetectionJob for details on how to use this API operation.
1836//
1837// The context must be non-nil and will be used for request cancellation. If
1838// the context is nil a panic will occur. In the future the SDK may create
1839// sub-contexts for http.Requests. See https://golang.org/pkg/context/
1840// for more information on using Contexts.
1841func (c *Comprehend) DescribeKeyPhrasesDetectionJobWithContext(ctx aws.Context, input *DescribeKeyPhrasesDetectionJobInput, opts ...request.Option) (*DescribeKeyPhrasesDetectionJobOutput, error) {
1842	req, out := c.DescribeKeyPhrasesDetectionJobRequest(input)
1843	req.SetContext(ctx)
1844	req.ApplyOptions(opts...)
1845	return out, req.Send()
1846}
1847
1848const opDescribeSentimentDetectionJob = "DescribeSentimentDetectionJob"
1849
1850// DescribeSentimentDetectionJobRequest generates a "aws/request.Request" representing the
1851// client's request for the DescribeSentimentDetectionJob operation. The "output" return
1852// value will be populated with the request's response once the request completes
1853// successfully.
1854//
1855// Use "Send" method on the returned Request to send the API call to the service.
1856// the "output" return value is not valid until after Send returns without error.
1857//
1858// See DescribeSentimentDetectionJob for more information on using the DescribeSentimentDetectionJob
1859// API call, and error handling.
1860//
1861// This method is useful when you want to inject custom logic or configuration
1862// into the SDK's request lifecycle. Such as custom headers, or retry logic.
1863//
1864//
1865//    // Example sending a request using the DescribeSentimentDetectionJobRequest method.
1866//    req, resp := client.DescribeSentimentDetectionJobRequest(params)
1867//
1868//    err := req.Send()
1869//    if err == nil { // resp is now filled
1870//        fmt.Println(resp)
1871//    }
1872//
1873// See also, https://docs.aws.amazon.com/goto/WebAPI/comprehend-2017-11-27/DescribeSentimentDetectionJob
1874func (c *Comprehend) DescribeSentimentDetectionJobRequest(input *DescribeSentimentDetectionJobInput) (req *request.Request, output *DescribeSentimentDetectionJobOutput) {
1875	op := &request.Operation{
1876		Name:       opDescribeSentimentDetectionJob,
1877		HTTPMethod: "POST",
1878		HTTPPath:   "/",
1879	}
1880
1881	if input == nil {
1882		input = &DescribeSentimentDetectionJobInput{}
1883	}
1884
1885	output = &DescribeSentimentDetectionJobOutput{}
1886	req = c.newRequest(op, input, output)
1887	return
1888}
1889
1890// DescribeSentimentDetectionJob API operation for Amazon Comprehend.
1891//
1892// Gets the properties associated with a sentiment detection job. Use this operation
1893// to get the status of a detection job.
1894//
1895// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
1896// with awserr.Error's Code and Message methods to get detailed information about
1897// the error.
1898//
1899// See the AWS API reference guide for Amazon Comprehend's
1900// API operation DescribeSentimentDetectionJob for usage and error information.
1901//
1902// Returned Error Types:
1903//   * InvalidRequestException
1904//   The request is invalid.
1905//
1906//   * JobNotFoundException
1907//   The specified job was not found. Check the job ID and try again.
1908//
1909//   * TooManyRequestsException
1910//   The number of requests exceeds the limit. Resubmit your request later.
1911//
1912//   * InternalServerException
1913//   An internal server error occurred. Retry your request.
1914//
1915// See also, https://docs.aws.amazon.com/goto/WebAPI/comprehend-2017-11-27/DescribeSentimentDetectionJob
1916func (c *Comprehend) DescribeSentimentDetectionJob(input *DescribeSentimentDetectionJobInput) (*DescribeSentimentDetectionJobOutput, error) {
1917	req, out := c.DescribeSentimentDetectionJobRequest(input)
1918	return out, req.Send()
1919}
1920
1921// DescribeSentimentDetectionJobWithContext is the same as DescribeSentimentDetectionJob with the addition of
1922// the ability to pass a context and additional request options.
1923//
1924// See DescribeSentimentDetectionJob for details on how to use this API operation.
1925//
1926// The context must be non-nil and will be used for request cancellation. If
1927// the context is nil a panic will occur. In the future the SDK may create
1928// sub-contexts for http.Requests. See https://golang.org/pkg/context/
1929// for more information on using Contexts.
1930func (c *Comprehend) DescribeSentimentDetectionJobWithContext(ctx aws.Context, input *DescribeSentimentDetectionJobInput, opts ...request.Option) (*DescribeSentimentDetectionJobOutput, error) {
1931	req, out := c.DescribeSentimentDetectionJobRequest(input)
1932	req.SetContext(ctx)
1933	req.ApplyOptions(opts...)
1934	return out, req.Send()
1935}
1936
1937const opDescribeTopicsDetectionJob = "DescribeTopicsDetectionJob"
1938
1939// DescribeTopicsDetectionJobRequest generates a "aws/request.Request" representing the
1940// client's request for the DescribeTopicsDetectionJob operation. The "output" return
1941// value will be populated with the request's response once the request completes
1942// successfully.
1943//
1944// Use "Send" method on the returned Request to send the API call to the service.
1945// the "output" return value is not valid until after Send returns without error.
1946//
1947// See DescribeTopicsDetectionJob for more information on using the DescribeTopicsDetectionJob
1948// API call, and error handling.
1949//
1950// This method is useful when you want to inject custom logic or configuration
1951// into the SDK's request lifecycle. Such as custom headers, or retry logic.
1952//
1953//
1954//    // Example sending a request using the DescribeTopicsDetectionJobRequest method.
1955//    req, resp := client.DescribeTopicsDetectionJobRequest(params)
1956//
1957//    err := req.Send()
1958//    if err == nil { // resp is now filled
1959//        fmt.Println(resp)
1960//    }
1961//
1962// See also, https://docs.aws.amazon.com/goto/WebAPI/comprehend-2017-11-27/DescribeTopicsDetectionJob
1963func (c *Comprehend) DescribeTopicsDetectionJobRequest(input *DescribeTopicsDetectionJobInput) (req *request.Request, output *DescribeTopicsDetectionJobOutput) {
1964	op := &request.Operation{
1965		Name:       opDescribeTopicsDetectionJob,
1966		HTTPMethod: "POST",
1967		HTTPPath:   "/",
1968	}
1969
1970	if input == nil {
1971		input = &DescribeTopicsDetectionJobInput{}
1972	}
1973
1974	output = &DescribeTopicsDetectionJobOutput{}
1975	req = c.newRequest(op, input, output)
1976	return
1977}
1978
1979// DescribeTopicsDetectionJob API operation for Amazon Comprehend.
1980//
1981// Gets the properties associated with a topic detection job. Use this operation
1982// to get the status of a detection job.
1983//
1984// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
1985// with awserr.Error's Code and Message methods to get detailed information about
1986// the error.
1987//
1988// See the AWS API reference guide for Amazon Comprehend's
1989// API operation DescribeTopicsDetectionJob for usage and error information.
1990//
1991// Returned Error Types:
1992//   * InvalidRequestException
1993//   The request is invalid.
1994//
1995//   * JobNotFoundException
1996//   The specified job was not found. Check the job ID and try again.
1997//
1998//   * TooManyRequestsException
1999//   The number of requests exceeds the limit. Resubmit your request later.
2000//
2001//   * InternalServerException
2002//   An internal server error occurred. Retry your request.
2003//
2004// See also, https://docs.aws.amazon.com/goto/WebAPI/comprehend-2017-11-27/DescribeTopicsDetectionJob
2005func (c *Comprehend) DescribeTopicsDetectionJob(input *DescribeTopicsDetectionJobInput) (*DescribeTopicsDetectionJobOutput, error) {
2006	req, out := c.DescribeTopicsDetectionJobRequest(input)
2007	return out, req.Send()
2008}
2009
2010// DescribeTopicsDetectionJobWithContext is the same as DescribeTopicsDetectionJob with the addition of
2011// the ability to pass a context and additional request options.
2012//
2013// See DescribeTopicsDetectionJob for details on how to use this API operation.
2014//
2015// The context must be non-nil and will be used for request cancellation. If
2016// the context is nil a panic will occur. In the future the SDK may create
2017// sub-contexts for http.Requests. See https://golang.org/pkg/context/
2018// for more information on using Contexts.
2019func (c *Comprehend) DescribeTopicsDetectionJobWithContext(ctx aws.Context, input *DescribeTopicsDetectionJobInput, opts ...request.Option) (*DescribeTopicsDetectionJobOutput, error) {
2020	req, out := c.DescribeTopicsDetectionJobRequest(input)
2021	req.SetContext(ctx)
2022	req.ApplyOptions(opts...)
2023	return out, req.Send()
2024}
2025
2026const opDetectDominantLanguage = "DetectDominantLanguage"
2027
2028// DetectDominantLanguageRequest generates a "aws/request.Request" representing the
2029// client's request for the DetectDominantLanguage operation. The "output" return
2030// value will be populated with the request's response once the request completes
2031// successfully.
2032//
2033// Use "Send" method on the returned Request to send the API call to the service.
2034// the "output" return value is not valid until after Send returns without error.
2035//
2036// See DetectDominantLanguage for more information on using the DetectDominantLanguage
2037// API call, and error handling.
2038//
2039// This method is useful when you want to inject custom logic or configuration
2040// into the SDK's request lifecycle. Such as custom headers, or retry logic.
2041//
2042//
2043//    // Example sending a request using the DetectDominantLanguageRequest method.
2044//    req, resp := client.DetectDominantLanguageRequest(params)
2045//
2046//    err := req.Send()
2047//    if err == nil { // resp is now filled
2048//        fmt.Println(resp)
2049//    }
2050//
2051// See also, https://docs.aws.amazon.com/goto/WebAPI/comprehend-2017-11-27/DetectDominantLanguage
2052func (c *Comprehend) DetectDominantLanguageRequest(input *DetectDominantLanguageInput) (req *request.Request, output *DetectDominantLanguageOutput) {
2053	op := &request.Operation{
2054		Name:       opDetectDominantLanguage,
2055		HTTPMethod: "POST",
2056		HTTPPath:   "/",
2057	}
2058
2059	if input == nil {
2060		input = &DetectDominantLanguageInput{}
2061	}
2062
2063	output = &DetectDominantLanguageOutput{}
2064	req = c.newRequest(op, input, output)
2065	return
2066}
2067
2068// DetectDominantLanguage API operation for Amazon Comprehend.
2069//
2070// Determines the dominant language of the input text. For a list of languages
2071// that Amazon Comprehend can detect, see Amazon Comprehend Supported Languages
2072// (https://docs.aws.amazon.com/comprehend/latest/dg/how-languages.html).
2073//
2074// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
2075// with awserr.Error's Code and Message methods to get detailed information about
2076// the error.
2077//
2078// See the AWS API reference guide for Amazon Comprehend's
2079// API operation DetectDominantLanguage for usage and error information.
2080//
2081// Returned Error Types:
2082//   * InvalidRequestException
2083//   The request is invalid.
2084//
2085//   * TextSizeLimitExceededException
2086//   The size of the input text exceeds the limit. Use a smaller document.
2087//
2088//   * InternalServerException
2089//   An internal server error occurred. Retry your request.
2090//
2091// See also, https://docs.aws.amazon.com/goto/WebAPI/comprehend-2017-11-27/DetectDominantLanguage
2092func (c *Comprehend) DetectDominantLanguage(input *DetectDominantLanguageInput) (*DetectDominantLanguageOutput, error) {
2093	req, out := c.DetectDominantLanguageRequest(input)
2094	return out, req.Send()
2095}
2096
2097// DetectDominantLanguageWithContext is the same as DetectDominantLanguage with the addition of
2098// the ability to pass a context and additional request options.
2099//
2100// See DetectDominantLanguage for details on how to use this API operation.
2101//
2102// The context must be non-nil and will be used for request cancellation. If
2103// the context is nil a panic will occur. In the future the SDK may create
2104// sub-contexts for http.Requests. See https://golang.org/pkg/context/
2105// for more information on using Contexts.
2106func (c *Comprehend) DetectDominantLanguageWithContext(ctx aws.Context, input *DetectDominantLanguageInput, opts ...request.Option) (*DetectDominantLanguageOutput, error) {
2107	req, out := c.DetectDominantLanguageRequest(input)
2108	req.SetContext(ctx)
2109	req.ApplyOptions(opts...)
2110	return out, req.Send()
2111}
2112
2113const opDetectEntities = "DetectEntities"
2114
2115// DetectEntitiesRequest generates a "aws/request.Request" representing the
2116// client's request for the DetectEntities operation. The "output" return
2117// value will be populated with the request's response once the request completes
2118// successfully.
2119//
2120// Use "Send" method on the returned Request to send the API call to the service.
2121// the "output" return value is not valid until after Send returns without error.
2122//
2123// See DetectEntities for more information on using the DetectEntities
2124// API call, and error handling.
2125//
2126// This method is useful when you want to inject custom logic or configuration
2127// into the SDK's request lifecycle. Such as custom headers, or retry logic.
2128//
2129//
2130//    // Example sending a request using the DetectEntitiesRequest method.
2131//    req, resp := client.DetectEntitiesRequest(params)
2132//
2133//    err := req.Send()
2134//    if err == nil { // resp is now filled
2135//        fmt.Println(resp)
2136//    }
2137//
2138// See also, https://docs.aws.amazon.com/goto/WebAPI/comprehend-2017-11-27/DetectEntities
2139func (c *Comprehend) DetectEntitiesRequest(input *DetectEntitiesInput) (req *request.Request, output *DetectEntitiesOutput) {
2140	op := &request.Operation{
2141		Name:       opDetectEntities,
2142		HTTPMethod: "POST",
2143		HTTPPath:   "/",
2144	}
2145
2146	if input == nil {
2147		input = &DetectEntitiesInput{}
2148	}
2149
2150	output = &DetectEntitiesOutput{}
2151	req = c.newRequest(op, input, output)
2152	return
2153}
2154
2155// DetectEntities API operation for Amazon Comprehend.
2156//
2157// Inspects text for named entities, and returns information about them. For
2158// more information, about named entities, see how-entities.
2159//
2160// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
2161// with awserr.Error's Code and Message methods to get detailed information about
2162// the error.
2163//
2164// See the AWS API reference guide for Amazon Comprehend's
2165// API operation DetectEntities for usage and error information.
2166//
2167// Returned Error Types:
2168//   * InvalidRequestException
2169//   The request is invalid.
2170//
2171//   * ResourceUnavailableException
2172//   The specified resource is not available. Check the resource and try your
2173//   request again.
2174//
2175//   * TextSizeLimitExceededException
2176//   The size of the input text exceeds the limit. Use a smaller document.
2177//
2178//   * UnsupportedLanguageException
2179//   Amazon Comprehend can't process the language of the input text. For all custom
2180//   entity recognition APIs (such as CreateEntityRecognizer), only English is
2181//   accepted. For most other APIs, such as those for Custom Classification, Amazon
2182//   Comprehend accepts text in all supported languages. For a list of supported
2183//   languages, see supported-languages.
2184//
2185//   * InternalServerException
2186//   An internal server error occurred. Retry your request.
2187//
2188// See also, https://docs.aws.amazon.com/goto/WebAPI/comprehend-2017-11-27/DetectEntities
2189func (c *Comprehend) DetectEntities(input *DetectEntitiesInput) (*DetectEntitiesOutput, error) {
2190	req, out := c.DetectEntitiesRequest(input)
2191	return out, req.Send()
2192}
2193
2194// DetectEntitiesWithContext is the same as DetectEntities with the addition of
2195// the ability to pass a context and additional request options.
2196//
2197// See DetectEntities for details on how to use this API operation.
2198//
2199// The context must be non-nil and will be used for request cancellation. If
2200// the context is nil a panic will occur. In the future the SDK may create
2201// sub-contexts for http.Requests. See https://golang.org/pkg/context/
2202// for more information on using Contexts.
2203func (c *Comprehend) DetectEntitiesWithContext(ctx aws.Context, input *DetectEntitiesInput, opts ...request.Option) (*DetectEntitiesOutput, error) {
2204	req, out := c.DetectEntitiesRequest(input)
2205	req.SetContext(ctx)
2206	req.ApplyOptions(opts...)
2207	return out, req.Send()
2208}
2209
2210const opDetectKeyPhrases = "DetectKeyPhrases"
2211
2212// DetectKeyPhrasesRequest generates a "aws/request.Request" representing the
2213// client's request for the DetectKeyPhrases operation. The "output" return
2214// value will be populated with the request's response once the request completes
2215// successfully.
2216//
2217// Use "Send" method on the returned Request to send the API call to the service.
2218// the "output" return value is not valid until after Send returns without error.
2219//
2220// See DetectKeyPhrases for more information on using the DetectKeyPhrases
2221// API call, and error handling.
2222//
2223// This method is useful when you want to inject custom logic or configuration
2224// into the SDK's request lifecycle. Such as custom headers, or retry logic.
2225//
2226//
2227//    // Example sending a request using the DetectKeyPhrasesRequest method.
2228//    req, resp := client.DetectKeyPhrasesRequest(params)
2229//
2230//    err := req.Send()
2231//    if err == nil { // resp is now filled
2232//        fmt.Println(resp)
2233//    }
2234//
2235// See also, https://docs.aws.amazon.com/goto/WebAPI/comprehend-2017-11-27/DetectKeyPhrases
2236func (c *Comprehend) DetectKeyPhrasesRequest(input *DetectKeyPhrasesInput) (req *request.Request, output *DetectKeyPhrasesOutput) {
2237	op := &request.Operation{
2238		Name:       opDetectKeyPhrases,
2239		HTTPMethod: "POST",
2240		HTTPPath:   "/",
2241	}
2242
2243	if input == nil {
2244		input = &DetectKeyPhrasesInput{}
2245	}
2246
2247	output = &DetectKeyPhrasesOutput{}
2248	req = c.newRequest(op, input, output)
2249	return
2250}
2251
2252// DetectKeyPhrases API operation for Amazon Comprehend.
2253//
2254// Detects the key noun phrases found in the text.
2255//
2256// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
2257// with awserr.Error's Code and Message methods to get detailed information about
2258// the error.
2259//
2260// See the AWS API reference guide for Amazon Comprehend's
2261// API operation DetectKeyPhrases for usage and error information.
2262//
2263// Returned Error Types:
2264//   * InvalidRequestException
2265//   The request is invalid.
2266//
2267//   * TextSizeLimitExceededException
2268//   The size of the input text exceeds the limit. Use a smaller document.
2269//
2270//   * UnsupportedLanguageException
2271//   Amazon Comprehend can't process the language of the input text. For all custom
2272//   entity recognition APIs (such as CreateEntityRecognizer), only English is
2273//   accepted. For most other APIs, such as those for Custom Classification, Amazon
2274//   Comprehend accepts text in all supported languages. For a list of supported
2275//   languages, see supported-languages.
2276//
2277//   * InternalServerException
2278//   An internal server error occurred. Retry your request.
2279//
2280// See also, https://docs.aws.amazon.com/goto/WebAPI/comprehend-2017-11-27/DetectKeyPhrases
2281func (c *Comprehend) DetectKeyPhrases(input *DetectKeyPhrasesInput) (*DetectKeyPhrasesOutput, error) {
2282	req, out := c.DetectKeyPhrasesRequest(input)
2283	return out, req.Send()
2284}
2285
2286// DetectKeyPhrasesWithContext is the same as DetectKeyPhrases with the addition of
2287// the ability to pass a context and additional request options.
2288//
2289// See DetectKeyPhrases for details on how to use this API operation.
2290//
2291// The context must be non-nil and will be used for request cancellation. If
2292// the context is nil a panic will occur. In the future the SDK may create
2293// sub-contexts for http.Requests. See https://golang.org/pkg/context/
2294// for more information on using Contexts.
2295func (c *Comprehend) DetectKeyPhrasesWithContext(ctx aws.Context, input *DetectKeyPhrasesInput, opts ...request.Option) (*DetectKeyPhrasesOutput, error) {
2296	req, out := c.DetectKeyPhrasesRequest(input)
2297	req.SetContext(ctx)
2298	req.ApplyOptions(opts...)
2299	return out, req.Send()
2300}
2301
2302const opDetectSentiment = "DetectSentiment"
2303
2304// DetectSentimentRequest generates a "aws/request.Request" representing the
2305// client's request for the DetectSentiment operation. The "output" return
2306// value will be populated with the request's response once the request completes
2307// successfully.
2308//
2309// Use "Send" method on the returned Request to send the API call to the service.
2310// the "output" return value is not valid until after Send returns without error.
2311//
2312// See DetectSentiment for more information on using the DetectSentiment
2313// API call, and error handling.
2314//
2315// This method is useful when you want to inject custom logic or configuration
2316// into the SDK's request lifecycle. Such as custom headers, or retry logic.
2317//
2318//
2319//    // Example sending a request using the DetectSentimentRequest method.
2320//    req, resp := client.DetectSentimentRequest(params)
2321//
2322//    err := req.Send()
2323//    if err == nil { // resp is now filled
2324//        fmt.Println(resp)
2325//    }
2326//
2327// See also, https://docs.aws.amazon.com/goto/WebAPI/comprehend-2017-11-27/DetectSentiment
2328func (c *Comprehend) DetectSentimentRequest(input *DetectSentimentInput) (req *request.Request, output *DetectSentimentOutput) {
2329	op := &request.Operation{
2330		Name:       opDetectSentiment,
2331		HTTPMethod: "POST",
2332		HTTPPath:   "/",
2333	}
2334
2335	if input == nil {
2336		input = &DetectSentimentInput{}
2337	}
2338
2339	output = &DetectSentimentOutput{}
2340	req = c.newRequest(op, input, output)
2341	return
2342}
2343
2344// DetectSentiment API operation for Amazon Comprehend.
2345//
2346// Inspects text and returns an inference of the prevailing sentiment (POSITIVE,
2347// NEUTRAL, MIXED, or NEGATIVE).
2348//
2349// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
2350// with awserr.Error's Code and Message methods to get detailed information about
2351// the error.
2352//
2353// See the AWS API reference guide for Amazon Comprehend's
2354// API operation DetectSentiment for usage and error information.
2355//
2356// Returned Error Types:
2357//   * InvalidRequestException
2358//   The request is invalid.
2359//
2360//   * TextSizeLimitExceededException
2361//   The size of the input text exceeds the limit. Use a smaller document.
2362//
2363//   * UnsupportedLanguageException
2364//   Amazon Comprehend can't process the language of the input text. For all custom
2365//   entity recognition APIs (such as CreateEntityRecognizer), only English is
2366//   accepted. For most other APIs, such as those for Custom Classification, Amazon
2367//   Comprehend accepts text in all supported languages. For a list of supported
2368//   languages, see supported-languages.
2369//
2370//   * InternalServerException
2371//   An internal server error occurred. Retry your request.
2372//
2373// See also, https://docs.aws.amazon.com/goto/WebAPI/comprehend-2017-11-27/DetectSentiment
2374func (c *Comprehend) DetectSentiment(input *DetectSentimentInput) (*DetectSentimentOutput, error) {
2375	req, out := c.DetectSentimentRequest(input)
2376	return out, req.Send()
2377}
2378
2379// DetectSentimentWithContext is the same as DetectSentiment with the addition of
2380// the ability to pass a context and additional request options.
2381//
2382// See DetectSentiment for details on how to use this API operation.
2383//
2384// The context must be non-nil and will be used for request cancellation. If
2385// the context is nil a panic will occur. In the future the SDK may create
2386// sub-contexts for http.Requests. See https://golang.org/pkg/context/
2387// for more information on using Contexts.
2388func (c *Comprehend) DetectSentimentWithContext(ctx aws.Context, input *DetectSentimentInput, opts ...request.Option) (*DetectSentimentOutput, error) {
2389	req, out := c.DetectSentimentRequest(input)
2390	req.SetContext(ctx)
2391	req.ApplyOptions(opts...)
2392	return out, req.Send()
2393}
2394
2395const opDetectSyntax = "DetectSyntax"
2396
2397// DetectSyntaxRequest generates a "aws/request.Request" representing the
2398// client's request for the DetectSyntax operation. The "output" return
2399// value will be populated with the request's response once the request completes
2400// successfully.
2401//
2402// Use "Send" method on the returned Request to send the API call to the service.
2403// the "output" return value is not valid until after Send returns without error.
2404//
2405// See DetectSyntax for more information on using the DetectSyntax
2406// API call, and error handling.
2407//
2408// This method is useful when you want to inject custom logic or configuration
2409// into the SDK's request lifecycle. Such as custom headers, or retry logic.
2410//
2411//
2412//    // Example sending a request using the DetectSyntaxRequest method.
2413//    req, resp := client.DetectSyntaxRequest(params)
2414//
2415//    err := req.Send()
2416//    if err == nil { // resp is now filled
2417//        fmt.Println(resp)
2418//    }
2419//
2420// See also, https://docs.aws.amazon.com/goto/WebAPI/comprehend-2017-11-27/DetectSyntax
2421func (c *Comprehend) DetectSyntaxRequest(input *DetectSyntaxInput) (req *request.Request, output *DetectSyntaxOutput) {
2422	op := &request.Operation{
2423		Name:       opDetectSyntax,
2424		HTTPMethod: "POST",
2425		HTTPPath:   "/",
2426	}
2427
2428	if input == nil {
2429		input = &DetectSyntaxInput{}
2430	}
2431
2432	output = &DetectSyntaxOutput{}
2433	req = c.newRequest(op, input, output)
2434	return
2435}
2436
2437// DetectSyntax API operation for Amazon Comprehend.
2438//
2439// Inspects text for syntax and the part of speech of words in the document.
2440// For more information, how-syntax.
2441//
2442// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
2443// with awserr.Error's Code and Message methods to get detailed information about
2444// the error.
2445//
2446// See the AWS API reference guide for Amazon Comprehend's
2447// API operation DetectSyntax for usage and error information.
2448//
2449// Returned Error Types:
2450//   * InvalidRequestException
2451//   The request is invalid.
2452//
2453//   * TextSizeLimitExceededException
2454//   The size of the input text exceeds the limit. Use a smaller document.
2455//
2456//   * UnsupportedLanguageException
2457//   Amazon Comprehend can't process the language of the input text. For all custom
2458//   entity recognition APIs (such as CreateEntityRecognizer), only English is
2459//   accepted. For most other APIs, such as those for Custom Classification, Amazon
2460//   Comprehend accepts text in all supported languages. For a list of supported
2461//   languages, see supported-languages.
2462//
2463//   * InternalServerException
2464//   An internal server error occurred. Retry your request.
2465//
2466// See also, https://docs.aws.amazon.com/goto/WebAPI/comprehend-2017-11-27/DetectSyntax
2467func (c *Comprehend) DetectSyntax(input *DetectSyntaxInput) (*DetectSyntaxOutput, error) {
2468	req, out := c.DetectSyntaxRequest(input)
2469	return out, req.Send()
2470}
2471
2472// DetectSyntaxWithContext is the same as DetectSyntax with the addition of
2473// the ability to pass a context and additional request options.
2474//
2475// See DetectSyntax for details on how to use this API operation.
2476//
2477// The context must be non-nil and will be used for request cancellation. If
2478// the context is nil a panic will occur. In the future the SDK may create
2479// sub-contexts for http.Requests. See https://golang.org/pkg/context/
2480// for more information on using Contexts.
2481func (c *Comprehend) DetectSyntaxWithContext(ctx aws.Context, input *DetectSyntaxInput, opts ...request.Option) (*DetectSyntaxOutput, error) {
2482	req, out := c.DetectSyntaxRequest(input)
2483	req.SetContext(ctx)
2484	req.ApplyOptions(opts...)
2485	return out, req.Send()
2486}
2487
2488const opListDocumentClassificationJobs = "ListDocumentClassificationJobs"
2489
2490// ListDocumentClassificationJobsRequest generates a "aws/request.Request" representing the
2491// client's request for the ListDocumentClassificationJobs operation. The "output" return
2492// value will be populated with the request's response once the request completes
2493// successfully.
2494//
2495// Use "Send" method on the returned Request to send the API call to the service.
2496// the "output" return value is not valid until after Send returns without error.
2497//
2498// See ListDocumentClassificationJobs for more information on using the ListDocumentClassificationJobs
2499// API call, and error handling.
2500//
2501// This method is useful when you want to inject custom logic or configuration
2502// into the SDK's request lifecycle. Such as custom headers, or retry logic.
2503//
2504//
2505//    // Example sending a request using the ListDocumentClassificationJobsRequest method.
2506//    req, resp := client.ListDocumentClassificationJobsRequest(params)
2507//
2508//    err := req.Send()
2509//    if err == nil { // resp is now filled
2510//        fmt.Println(resp)
2511//    }
2512//
2513// See also, https://docs.aws.amazon.com/goto/WebAPI/comprehend-2017-11-27/ListDocumentClassificationJobs
2514func (c *Comprehend) ListDocumentClassificationJobsRequest(input *ListDocumentClassificationJobsInput) (req *request.Request, output *ListDocumentClassificationJobsOutput) {
2515	op := &request.Operation{
2516		Name:       opListDocumentClassificationJobs,
2517		HTTPMethod: "POST",
2518		HTTPPath:   "/",
2519		Paginator: &request.Paginator{
2520			InputTokens:     []string{"NextToken"},
2521			OutputTokens:    []string{"NextToken"},
2522			LimitToken:      "MaxResults",
2523			TruncationToken: "",
2524		},
2525	}
2526
2527	if input == nil {
2528		input = &ListDocumentClassificationJobsInput{}
2529	}
2530
2531	output = &ListDocumentClassificationJobsOutput{}
2532	req = c.newRequest(op, input, output)
2533	return
2534}
2535
2536// ListDocumentClassificationJobs API operation for Amazon Comprehend.
2537//
2538// Gets a list of the documentation classification jobs that you have submitted.
2539//
2540// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
2541// with awserr.Error's Code and Message methods to get detailed information about
2542// the error.
2543//
2544// See the AWS API reference guide for Amazon Comprehend's
2545// API operation ListDocumentClassificationJobs for usage and error information.
2546//
2547// Returned Error Types:
2548//   * InvalidRequestException
2549//   The request is invalid.
2550//
2551//   * TooManyRequestsException
2552//   The number of requests exceeds the limit. Resubmit your request later.
2553//
2554//   * InvalidFilterException
2555//   The filter specified for the operation is invalid. Specify a different filter.
2556//
2557//   * InternalServerException
2558//   An internal server error occurred. Retry your request.
2559//
2560// See also, https://docs.aws.amazon.com/goto/WebAPI/comprehend-2017-11-27/ListDocumentClassificationJobs
2561func (c *Comprehend) ListDocumentClassificationJobs(input *ListDocumentClassificationJobsInput) (*ListDocumentClassificationJobsOutput, error) {
2562	req, out := c.ListDocumentClassificationJobsRequest(input)
2563	return out, req.Send()
2564}
2565
2566// ListDocumentClassificationJobsWithContext is the same as ListDocumentClassificationJobs with the addition of
2567// the ability to pass a context and additional request options.
2568//
2569// See ListDocumentClassificationJobs for details on how to use this API operation.
2570//
2571// The context must be non-nil and will be used for request cancellation. If
2572// the context is nil a panic will occur. In the future the SDK may create
2573// sub-contexts for http.Requests. See https://golang.org/pkg/context/
2574// for more information on using Contexts.
2575func (c *Comprehend) ListDocumentClassificationJobsWithContext(ctx aws.Context, input *ListDocumentClassificationJobsInput, opts ...request.Option) (*ListDocumentClassificationJobsOutput, error) {
2576	req, out := c.ListDocumentClassificationJobsRequest(input)
2577	req.SetContext(ctx)
2578	req.ApplyOptions(opts...)
2579	return out, req.Send()
2580}
2581
2582// ListDocumentClassificationJobsPages iterates over the pages of a ListDocumentClassificationJobs operation,
2583// calling the "fn" function with the response data for each page. To stop
2584// iterating, return false from the fn function.
2585//
2586// See ListDocumentClassificationJobs method for more information on how to use this operation.
2587//
2588// Note: This operation can generate multiple requests to a service.
2589//
2590//    // Example iterating over at most 3 pages of a ListDocumentClassificationJobs operation.
2591//    pageNum := 0
2592//    err := client.ListDocumentClassificationJobsPages(params,
2593//        func(page *comprehend.ListDocumentClassificationJobsOutput, lastPage bool) bool {
2594//            pageNum++
2595//            fmt.Println(page)
2596//            return pageNum <= 3
2597//        })
2598//
2599func (c *Comprehend) ListDocumentClassificationJobsPages(input *ListDocumentClassificationJobsInput, fn func(*ListDocumentClassificationJobsOutput, bool) bool) error {
2600	return c.ListDocumentClassificationJobsPagesWithContext(aws.BackgroundContext(), input, fn)
2601}
2602
2603// ListDocumentClassificationJobsPagesWithContext same as ListDocumentClassificationJobsPages except
2604// it takes a Context and allows setting request options on the pages.
2605//
2606// The context must be non-nil and will be used for request cancellation. If
2607// the context is nil a panic will occur. In the future the SDK may create
2608// sub-contexts for http.Requests. See https://golang.org/pkg/context/
2609// for more information on using Contexts.
2610func (c *Comprehend) ListDocumentClassificationJobsPagesWithContext(ctx aws.Context, input *ListDocumentClassificationJobsInput, fn func(*ListDocumentClassificationJobsOutput, bool) bool, opts ...request.Option) error {
2611	p := request.Pagination{
2612		NewRequest: func() (*request.Request, error) {
2613			var inCpy *ListDocumentClassificationJobsInput
2614			if input != nil {
2615				tmp := *input
2616				inCpy = &tmp
2617			}
2618			req, _ := c.ListDocumentClassificationJobsRequest(inCpy)
2619			req.SetContext(ctx)
2620			req.ApplyOptions(opts...)
2621			return req, nil
2622		},
2623	}
2624
2625	for p.Next() {
2626		if !fn(p.Page().(*ListDocumentClassificationJobsOutput), !p.HasNextPage()) {
2627			break
2628		}
2629	}
2630
2631	return p.Err()
2632}
2633
2634const opListDocumentClassifiers = "ListDocumentClassifiers"
2635
2636// ListDocumentClassifiersRequest generates a "aws/request.Request" representing the
2637// client's request for the ListDocumentClassifiers operation. The "output" return
2638// value will be populated with the request's response once the request completes
2639// successfully.
2640//
2641// Use "Send" method on the returned Request to send the API call to the service.
2642// the "output" return value is not valid until after Send returns without error.
2643//
2644// See ListDocumentClassifiers for more information on using the ListDocumentClassifiers
2645// API call, and error handling.
2646//
2647// This method is useful when you want to inject custom logic or configuration
2648// into the SDK's request lifecycle. Such as custom headers, or retry logic.
2649//
2650//
2651//    // Example sending a request using the ListDocumentClassifiersRequest method.
2652//    req, resp := client.ListDocumentClassifiersRequest(params)
2653//
2654//    err := req.Send()
2655//    if err == nil { // resp is now filled
2656//        fmt.Println(resp)
2657//    }
2658//
2659// See also, https://docs.aws.amazon.com/goto/WebAPI/comprehend-2017-11-27/ListDocumentClassifiers
2660func (c *Comprehend) ListDocumentClassifiersRequest(input *ListDocumentClassifiersInput) (req *request.Request, output *ListDocumentClassifiersOutput) {
2661	op := &request.Operation{
2662		Name:       opListDocumentClassifiers,
2663		HTTPMethod: "POST",
2664		HTTPPath:   "/",
2665		Paginator: &request.Paginator{
2666			InputTokens:     []string{"NextToken"},
2667			OutputTokens:    []string{"NextToken"},
2668			LimitToken:      "MaxResults",
2669			TruncationToken: "",
2670		},
2671	}
2672
2673	if input == nil {
2674		input = &ListDocumentClassifiersInput{}
2675	}
2676
2677	output = &ListDocumentClassifiersOutput{}
2678	req = c.newRequest(op, input, output)
2679	return
2680}
2681
2682// ListDocumentClassifiers API operation for Amazon Comprehend.
2683//
2684// Gets a list of the document classifiers that you have created.
2685//
2686// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
2687// with awserr.Error's Code and Message methods to get detailed information about
2688// the error.
2689//
2690// See the AWS API reference guide for Amazon Comprehend's
2691// API operation ListDocumentClassifiers for usage and error information.
2692//
2693// Returned Error Types:
2694//   * InvalidRequestException
2695//   The request is invalid.
2696//
2697//   * TooManyRequestsException
2698//   The number of requests exceeds the limit. Resubmit your request later.
2699//
2700//   * InvalidFilterException
2701//   The filter specified for the operation is invalid. Specify a different filter.
2702//
2703//   * InternalServerException
2704//   An internal server error occurred. Retry your request.
2705//
2706// See also, https://docs.aws.amazon.com/goto/WebAPI/comprehend-2017-11-27/ListDocumentClassifiers
2707func (c *Comprehend) ListDocumentClassifiers(input *ListDocumentClassifiersInput) (*ListDocumentClassifiersOutput, error) {
2708	req, out := c.ListDocumentClassifiersRequest(input)
2709	return out, req.Send()
2710}
2711
2712// ListDocumentClassifiersWithContext is the same as ListDocumentClassifiers with the addition of
2713// the ability to pass a context and additional request options.
2714//
2715// See ListDocumentClassifiers for details on how to use this API operation.
2716//
2717// The context must be non-nil and will be used for request cancellation. If
2718// the context is nil a panic will occur. In the future the SDK may create
2719// sub-contexts for http.Requests. See https://golang.org/pkg/context/
2720// for more information on using Contexts.
2721func (c *Comprehend) ListDocumentClassifiersWithContext(ctx aws.Context, input *ListDocumentClassifiersInput, opts ...request.Option) (*ListDocumentClassifiersOutput, error) {
2722	req, out := c.ListDocumentClassifiersRequest(input)
2723	req.SetContext(ctx)
2724	req.ApplyOptions(opts...)
2725	return out, req.Send()
2726}
2727
2728// ListDocumentClassifiersPages iterates over the pages of a ListDocumentClassifiers operation,
2729// calling the "fn" function with the response data for each page. To stop
2730// iterating, return false from the fn function.
2731//
2732// See ListDocumentClassifiers method for more information on how to use this operation.
2733//
2734// Note: This operation can generate multiple requests to a service.
2735//
2736//    // Example iterating over at most 3 pages of a ListDocumentClassifiers operation.
2737//    pageNum := 0
2738//    err := client.ListDocumentClassifiersPages(params,
2739//        func(page *comprehend.ListDocumentClassifiersOutput, lastPage bool) bool {
2740//            pageNum++
2741//            fmt.Println(page)
2742//            return pageNum <= 3
2743//        })
2744//
2745func (c *Comprehend) ListDocumentClassifiersPages(input *ListDocumentClassifiersInput, fn func(*ListDocumentClassifiersOutput, bool) bool) error {
2746	return c.ListDocumentClassifiersPagesWithContext(aws.BackgroundContext(), input, fn)
2747}
2748
2749// ListDocumentClassifiersPagesWithContext same as ListDocumentClassifiersPages except
2750// it takes a Context and allows setting request options on the pages.
2751//
2752// The context must be non-nil and will be used for request cancellation. If
2753// the context is nil a panic will occur. In the future the SDK may create
2754// sub-contexts for http.Requests. See https://golang.org/pkg/context/
2755// for more information on using Contexts.
2756func (c *Comprehend) ListDocumentClassifiersPagesWithContext(ctx aws.Context, input *ListDocumentClassifiersInput, fn func(*ListDocumentClassifiersOutput, bool) bool, opts ...request.Option) error {
2757	p := request.Pagination{
2758		NewRequest: func() (*request.Request, error) {
2759			var inCpy *ListDocumentClassifiersInput
2760			if input != nil {
2761				tmp := *input
2762				inCpy = &tmp
2763			}
2764			req, _ := c.ListDocumentClassifiersRequest(inCpy)
2765			req.SetContext(ctx)
2766			req.ApplyOptions(opts...)
2767			return req, nil
2768		},
2769	}
2770
2771	for p.Next() {
2772		if !fn(p.Page().(*ListDocumentClassifiersOutput), !p.HasNextPage()) {
2773			break
2774		}
2775	}
2776
2777	return p.Err()
2778}
2779
2780const opListDominantLanguageDetectionJobs = "ListDominantLanguageDetectionJobs"
2781
2782// ListDominantLanguageDetectionJobsRequest generates a "aws/request.Request" representing the
2783// client's request for the ListDominantLanguageDetectionJobs operation. The "output" return
2784// value will be populated with the request's response once the request completes
2785// successfully.
2786//
2787// Use "Send" method on the returned Request to send the API call to the service.
2788// the "output" return value is not valid until after Send returns without error.
2789//
2790// See ListDominantLanguageDetectionJobs for more information on using the ListDominantLanguageDetectionJobs
2791// API call, and error handling.
2792//
2793// This method is useful when you want to inject custom logic or configuration
2794// into the SDK's request lifecycle. Such as custom headers, or retry logic.
2795//
2796//
2797//    // Example sending a request using the ListDominantLanguageDetectionJobsRequest method.
2798//    req, resp := client.ListDominantLanguageDetectionJobsRequest(params)
2799//
2800//    err := req.Send()
2801//    if err == nil { // resp is now filled
2802//        fmt.Println(resp)
2803//    }
2804//
2805// See also, https://docs.aws.amazon.com/goto/WebAPI/comprehend-2017-11-27/ListDominantLanguageDetectionJobs
2806func (c *Comprehend) ListDominantLanguageDetectionJobsRequest(input *ListDominantLanguageDetectionJobsInput) (req *request.Request, output *ListDominantLanguageDetectionJobsOutput) {
2807	op := &request.Operation{
2808		Name:       opListDominantLanguageDetectionJobs,
2809		HTTPMethod: "POST",
2810		HTTPPath:   "/",
2811		Paginator: &request.Paginator{
2812			InputTokens:     []string{"NextToken"},
2813			OutputTokens:    []string{"NextToken"},
2814			LimitToken:      "MaxResults",
2815			TruncationToken: "",
2816		},
2817	}
2818
2819	if input == nil {
2820		input = &ListDominantLanguageDetectionJobsInput{}
2821	}
2822
2823	output = &ListDominantLanguageDetectionJobsOutput{}
2824	req = c.newRequest(op, input, output)
2825	return
2826}
2827
2828// ListDominantLanguageDetectionJobs API operation for Amazon Comprehend.
2829//
2830// Gets a list of the dominant language detection jobs that you have submitted.
2831//
2832// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
2833// with awserr.Error's Code and Message methods to get detailed information about
2834// the error.
2835//
2836// See the AWS API reference guide for Amazon Comprehend's
2837// API operation ListDominantLanguageDetectionJobs for usage and error information.
2838//
2839// Returned Error Types:
2840//   * InvalidRequestException
2841//   The request is invalid.
2842//
2843//   * TooManyRequestsException
2844//   The number of requests exceeds the limit. Resubmit your request later.
2845//
2846//   * InvalidFilterException
2847//   The filter specified for the operation is invalid. Specify a different filter.
2848//
2849//   * InternalServerException
2850//   An internal server error occurred. Retry your request.
2851//
2852// See also, https://docs.aws.amazon.com/goto/WebAPI/comprehend-2017-11-27/ListDominantLanguageDetectionJobs
2853func (c *Comprehend) ListDominantLanguageDetectionJobs(input *ListDominantLanguageDetectionJobsInput) (*ListDominantLanguageDetectionJobsOutput, error) {
2854	req, out := c.ListDominantLanguageDetectionJobsRequest(input)
2855	return out, req.Send()
2856}
2857
2858// ListDominantLanguageDetectionJobsWithContext is the same as ListDominantLanguageDetectionJobs with the addition of
2859// the ability to pass a context and additional request options.
2860//
2861// See ListDominantLanguageDetectionJobs for details on how to use this API operation.
2862//
2863// The context must be non-nil and will be used for request cancellation. If
2864// the context is nil a panic will occur. In the future the SDK may create
2865// sub-contexts for http.Requests. See https://golang.org/pkg/context/
2866// for more information on using Contexts.
2867func (c *Comprehend) ListDominantLanguageDetectionJobsWithContext(ctx aws.Context, input *ListDominantLanguageDetectionJobsInput, opts ...request.Option) (*ListDominantLanguageDetectionJobsOutput, error) {
2868	req, out := c.ListDominantLanguageDetectionJobsRequest(input)
2869	req.SetContext(ctx)
2870	req.ApplyOptions(opts...)
2871	return out, req.Send()
2872}
2873
2874// ListDominantLanguageDetectionJobsPages iterates over the pages of a ListDominantLanguageDetectionJobs operation,
2875// calling the "fn" function with the response data for each page. To stop
2876// iterating, return false from the fn function.
2877//
2878// See ListDominantLanguageDetectionJobs method for more information on how to use this operation.
2879//
2880// Note: This operation can generate multiple requests to a service.
2881//
2882//    // Example iterating over at most 3 pages of a ListDominantLanguageDetectionJobs operation.
2883//    pageNum := 0
2884//    err := client.ListDominantLanguageDetectionJobsPages(params,
2885//        func(page *comprehend.ListDominantLanguageDetectionJobsOutput, lastPage bool) bool {
2886//            pageNum++
2887//            fmt.Println(page)
2888//            return pageNum <= 3
2889//        })
2890//
2891func (c *Comprehend) ListDominantLanguageDetectionJobsPages(input *ListDominantLanguageDetectionJobsInput, fn func(*ListDominantLanguageDetectionJobsOutput, bool) bool) error {
2892	return c.ListDominantLanguageDetectionJobsPagesWithContext(aws.BackgroundContext(), input, fn)
2893}
2894
2895// ListDominantLanguageDetectionJobsPagesWithContext same as ListDominantLanguageDetectionJobsPages except
2896// it takes a Context and allows setting request options on the pages.
2897//
2898// The context must be non-nil and will be used for request cancellation. If
2899// the context is nil a panic will occur. In the future the SDK may create
2900// sub-contexts for http.Requests. See https://golang.org/pkg/context/
2901// for more information on using Contexts.
2902func (c *Comprehend) ListDominantLanguageDetectionJobsPagesWithContext(ctx aws.Context, input *ListDominantLanguageDetectionJobsInput, fn func(*ListDominantLanguageDetectionJobsOutput, bool) bool, opts ...request.Option) error {
2903	p := request.Pagination{
2904		NewRequest: func() (*request.Request, error) {
2905			var inCpy *ListDominantLanguageDetectionJobsInput
2906			if input != nil {
2907				tmp := *input
2908				inCpy = &tmp
2909			}
2910			req, _ := c.ListDominantLanguageDetectionJobsRequest(inCpy)
2911			req.SetContext(ctx)
2912			req.ApplyOptions(opts...)
2913			return req, nil
2914		},
2915	}
2916
2917	for p.Next() {
2918		if !fn(p.Page().(*ListDominantLanguageDetectionJobsOutput), !p.HasNextPage()) {
2919			break
2920		}
2921	}
2922
2923	return p.Err()
2924}
2925
2926const opListEndpoints = "ListEndpoints"
2927
2928// ListEndpointsRequest generates a "aws/request.Request" representing the
2929// client's request for the ListEndpoints operation. The "output" return
2930// value will be populated with the request's response once the request completes
2931// successfully.
2932//
2933// Use "Send" method on the returned Request to send the API call to the service.
2934// the "output" return value is not valid until after Send returns without error.
2935//
2936// See ListEndpoints for more information on using the ListEndpoints
2937// API call, and error handling.
2938//
2939// This method is useful when you want to inject custom logic or configuration
2940// into the SDK's request lifecycle. Such as custom headers, or retry logic.
2941//
2942//
2943//    // Example sending a request using the ListEndpointsRequest method.
2944//    req, resp := client.ListEndpointsRequest(params)
2945//
2946//    err := req.Send()
2947//    if err == nil { // resp is now filled
2948//        fmt.Println(resp)
2949//    }
2950//
2951// See also, https://docs.aws.amazon.com/goto/WebAPI/comprehend-2017-11-27/ListEndpoints
2952func (c *Comprehend) ListEndpointsRequest(input *ListEndpointsInput) (req *request.Request, output *ListEndpointsOutput) {
2953	op := &request.Operation{
2954		Name:       opListEndpoints,
2955		HTTPMethod: "POST",
2956		HTTPPath:   "/",
2957	}
2958
2959	if input == nil {
2960		input = &ListEndpointsInput{}
2961	}
2962
2963	output = &ListEndpointsOutput{}
2964	req = c.newRequest(op, input, output)
2965	return
2966}
2967
2968// ListEndpoints API operation for Amazon Comprehend.
2969//
2970// Gets a list of all existing endpoints that you've created.
2971//
2972// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
2973// with awserr.Error's Code and Message methods to get detailed information about
2974// the error.
2975//
2976// See the AWS API reference guide for Amazon Comprehend's
2977// API operation ListEndpoints for usage and error information.
2978//
2979// Returned Error Types:
2980//   * InvalidRequestException
2981//   The request is invalid.
2982//
2983//   * TooManyRequestsException
2984//   The number of requests exceeds the limit. Resubmit your request later.
2985//
2986//   * InternalServerException
2987//   An internal server error occurred. Retry your request.
2988//
2989// See also, https://docs.aws.amazon.com/goto/WebAPI/comprehend-2017-11-27/ListEndpoints
2990func (c *Comprehend) ListEndpoints(input *ListEndpointsInput) (*ListEndpointsOutput, error) {
2991	req, out := c.ListEndpointsRequest(input)
2992	return out, req.Send()
2993}
2994
2995// ListEndpointsWithContext is the same as ListEndpoints with the addition of
2996// the ability to pass a context and additional request options.
2997//
2998// See ListEndpoints for details on how to use this API operation.
2999//
3000// The context must be non-nil and will be used for request cancellation. If
3001// the context is nil a panic will occur. In the future the SDK may create
3002// sub-contexts for http.Requests. See https://golang.org/pkg/context/
3003// for more information on using Contexts.
3004func (c *Comprehend) ListEndpointsWithContext(ctx aws.Context, input *ListEndpointsInput, opts ...request.Option) (*ListEndpointsOutput, error) {
3005	req, out := c.ListEndpointsRequest(input)
3006	req.SetContext(ctx)
3007	req.ApplyOptions(opts...)
3008	return out, req.Send()
3009}
3010
3011const opListEntitiesDetectionJobs = "ListEntitiesDetectionJobs"
3012
3013// ListEntitiesDetectionJobsRequest generates a "aws/request.Request" representing the
3014// client's request for the ListEntitiesDetectionJobs operation. The "output" return
3015// value will be populated with the request's response once the request completes
3016// successfully.
3017//
3018// Use "Send" method on the returned Request to send the API call to the service.
3019// the "output" return value is not valid until after Send returns without error.
3020//
3021// See ListEntitiesDetectionJobs for more information on using the ListEntitiesDetectionJobs
3022// API call, and error handling.
3023//
3024// This method is useful when you want to inject custom logic or configuration
3025// into the SDK's request lifecycle. Such as custom headers, or retry logic.
3026//
3027//
3028//    // Example sending a request using the ListEntitiesDetectionJobsRequest method.
3029//    req, resp := client.ListEntitiesDetectionJobsRequest(params)
3030//
3031//    err := req.Send()
3032//    if err == nil { // resp is now filled
3033//        fmt.Println(resp)
3034//    }
3035//
3036// See also, https://docs.aws.amazon.com/goto/WebAPI/comprehend-2017-11-27/ListEntitiesDetectionJobs
3037func (c *Comprehend) ListEntitiesDetectionJobsRequest(input *ListEntitiesDetectionJobsInput) (req *request.Request, output *ListEntitiesDetectionJobsOutput) {
3038	op := &request.Operation{
3039		Name:       opListEntitiesDetectionJobs,
3040		HTTPMethod: "POST",
3041		HTTPPath:   "/",
3042		Paginator: &request.Paginator{
3043			InputTokens:     []string{"NextToken"},
3044			OutputTokens:    []string{"NextToken"},
3045			LimitToken:      "MaxResults",
3046			TruncationToken: "",
3047		},
3048	}
3049
3050	if input == nil {
3051		input = &ListEntitiesDetectionJobsInput{}
3052	}
3053
3054	output = &ListEntitiesDetectionJobsOutput{}
3055	req = c.newRequest(op, input, output)
3056	return
3057}
3058
3059// ListEntitiesDetectionJobs API operation for Amazon Comprehend.
3060//
3061// Gets a list of the entity detection jobs that you have submitted.
3062//
3063// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
3064// with awserr.Error's Code and Message methods to get detailed information about
3065// the error.
3066//
3067// See the AWS API reference guide for Amazon Comprehend's
3068// API operation ListEntitiesDetectionJobs for usage and error information.
3069//
3070// Returned Error Types:
3071//   * InvalidRequestException
3072//   The request is invalid.
3073//
3074//   * TooManyRequestsException
3075//   The number of requests exceeds the limit. Resubmit your request later.
3076//
3077//   * InvalidFilterException
3078//   The filter specified for the operation is invalid. Specify a different filter.
3079//
3080//   * InternalServerException
3081//   An internal server error occurred. Retry your request.
3082//
3083// See also, https://docs.aws.amazon.com/goto/WebAPI/comprehend-2017-11-27/ListEntitiesDetectionJobs
3084func (c *Comprehend) ListEntitiesDetectionJobs(input *ListEntitiesDetectionJobsInput) (*ListEntitiesDetectionJobsOutput, error) {
3085	req, out := c.ListEntitiesDetectionJobsRequest(input)
3086	return out, req.Send()
3087}
3088
3089// ListEntitiesDetectionJobsWithContext is the same as ListEntitiesDetectionJobs with the addition of
3090// the ability to pass a context and additional request options.
3091//
3092// See ListEntitiesDetectionJobs for details on how to use this API operation.
3093//
3094// The context must be non-nil and will be used for request cancellation. If
3095// the context is nil a panic will occur. In the future the SDK may create
3096// sub-contexts for http.Requests. See https://golang.org/pkg/context/
3097// for more information on using Contexts.
3098func (c *Comprehend) ListEntitiesDetectionJobsWithContext(ctx aws.Context, input *ListEntitiesDetectionJobsInput, opts ...request.Option) (*ListEntitiesDetectionJobsOutput, error) {
3099	req, out := c.ListEntitiesDetectionJobsRequest(input)
3100	req.SetContext(ctx)
3101	req.ApplyOptions(opts...)
3102	return out, req.Send()
3103}
3104
3105// ListEntitiesDetectionJobsPages iterates over the pages of a ListEntitiesDetectionJobs operation,
3106// calling the "fn" function with the response data for each page. To stop
3107// iterating, return false from the fn function.
3108//
3109// See ListEntitiesDetectionJobs method for more information on how to use this operation.
3110//
3111// Note: This operation can generate multiple requests to a service.
3112//
3113//    // Example iterating over at most 3 pages of a ListEntitiesDetectionJobs operation.
3114//    pageNum := 0
3115//    err := client.ListEntitiesDetectionJobsPages(params,
3116//        func(page *comprehend.ListEntitiesDetectionJobsOutput, lastPage bool) bool {
3117//            pageNum++
3118//            fmt.Println(page)
3119//            return pageNum <= 3
3120//        })
3121//
3122func (c *Comprehend) ListEntitiesDetectionJobsPages(input *ListEntitiesDetectionJobsInput, fn func(*ListEntitiesDetectionJobsOutput, bool) bool) error {
3123	return c.ListEntitiesDetectionJobsPagesWithContext(aws.BackgroundContext(), input, fn)
3124}
3125
3126// ListEntitiesDetectionJobsPagesWithContext same as ListEntitiesDetectionJobsPages except
3127// it takes a Context and allows setting request options on the pages.
3128//
3129// The context must be non-nil and will be used for request cancellation. If
3130// the context is nil a panic will occur. In the future the SDK may create
3131// sub-contexts for http.Requests. See https://golang.org/pkg/context/
3132// for more information on using Contexts.
3133func (c *Comprehend) ListEntitiesDetectionJobsPagesWithContext(ctx aws.Context, input *ListEntitiesDetectionJobsInput, fn func(*ListEntitiesDetectionJobsOutput, bool) bool, opts ...request.Option) error {
3134	p := request.Pagination{
3135		NewRequest: func() (*request.Request, error) {
3136			var inCpy *ListEntitiesDetectionJobsInput
3137			if input != nil {
3138				tmp := *input
3139				inCpy = &tmp
3140			}
3141			req, _ := c.ListEntitiesDetectionJobsRequest(inCpy)
3142			req.SetContext(ctx)
3143			req.ApplyOptions(opts...)
3144			return req, nil
3145		},
3146	}
3147
3148	for p.Next() {
3149		if !fn(p.Page().(*ListEntitiesDetectionJobsOutput), !p.HasNextPage()) {
3150			break
3151		}
3152	}
3153
3154	return p.Err()
3155}
3156
3157const opListEntityRecognizers = "ListEntityRecognizers"
3158
3159// ListEntityRecognizersRequest generates a "aws/request.Request" representing the
3160// client's request for the ListEntityRecognizers operation. The "output" return
3161// value will be populated with the request's response once the request completes
3162// successfully.
3163//
3164// Use "Send" method on the returned Request to send the API call to the service.
3165// the "output" return value is not valid until after Send returns without error.
3166//
3167// See ListEntityRecognizers for more information on using the ListEntityRecognizers
3168// API call, and error handling.
3169//
3170// This method is useful when you want to inject custom logic or configuration
3171// into the SDK's request lifecycle. Such as custom headers, or retry logic.
3172//
3173//
3174//    // Example sending a request using the ListEntityRecognizersRequest method.
3175//    req, resp := client.ListEntityRecognizersRequest(params)
3176//
3177//    err := req.Send()
3178//    if err == nil { // resp is now filled
3179//        fmt.Println(resp)
3180//    }
3181//
3182// See also, https://docs.aws.amazon.com/goto/WebAPI/comprehend-2017-11-27/ListEntityRecognizers
3183func (c *Comprehend) ListEntityRecognizersRequest(input *ListEntityRecognizersInput) (req *request.Request, output *ListEntityRecognizersOutput) {
3184	op := &request.Operation{
3185		Name:       opListEntityRecognizers,
3186		HTTPMethod: "POST",
3187		HTTPPath:   "/",
3188		Paginator: &request.Paginator{
3189			InputTokens:     []string{"NextToken"},
3190			OutputTokens:    []string{"NextToken"},
3191			LimitToken:      "MaxResults",
3192			TruncationToken: "",
3193		},
3194	}
3195
3196	if input == nil {
3197		input = &ListEntityRecognizersInput{}
3198	}
3199
3200	output = &ListEntityRecognizersOutput{}
3201	req = c.newRequest(op, input, output)
3202	return
3203}
3204
3205// ListEntityRecognizers API operation for Amazon Comprehend.
3206//
3207// Gets a list of the properties of all entity recognizers that you created,
3208// including recognizers currently in training. Allows you to filter the list
3209// of recognizers based on criteria such as status and submission time. This
3210// call returns up to 500 entity recognizers in the list, with a default number
3211// of 100 recognizers in the list.
3212//
3213// The results of this list are not in any particular order. Please get the
3214// list and sort locally if needed.
3215//
3216// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
3217// with awserr.Error's Code and Message methods to get detailed information about
3218// the error.
3219//
3220// See the AWS API reference guide for Amazon Comprehend's
3221// API operation ListEntityRecognizers for usage and error information.
3222//
3223// Returned Error Types:
3224//   * InvalidRequestException
3225//   The request is invalid.
3226//
3227//   * TooManyRequestsException
3228//   The number of requests exceeds the limit. Resubmit your request later.
3229//
3230//   * InvalidFilterException
3231//   The filter specified for the operation is invalid. Specify a different filter.
3232//
3233//   * InternalServerException
3234//   An internal server error occurred. Retry your request.
3235//
3236// See also, https://docs.aws.amazon.com/goto/WebAPI/comprehend-2017-11-27/ListEntityRecognizers
3237func (c *Comprehend) ListEntityRecognizers(input *ListEntityRecognizersInput) (*ListEntityRecognizersOutput, error) {
3238	req, out := c.ListEntityRecognizersRequest(input)
3239	return out, req.Send()
3240}
3241
3242// ListEntityRecognizersWithContext is the same as ListEntityRecognizers with the addition of
3243// the ability to pass a context and additional request options.
3244//
3245// See ListEntityRecognizers for details on how to use this API operation.
3246//
3247// The context must be non-nil and will be used for request cancellation. If
3248// the context is nil a panic will occur. In the future the SDK may create
3249// sub-contexts for http.Requests. See https://golang.org/pkg/context/
3250// for more information on using Contexts.
3251func (c *Comprehend) ListEntityRecognizersWithContext(ctx aws.Context, input *ListEntityRecognizersInput, opts ...request.Option) (*ListEntityRecognizersOutput, error) {
3252	req, out := c.ListEntityRecognizersRequest(input)
3253	req.SetContext(ctx)
3254	req.ApplyOptions(opts...)
3255	return out, req.Send()
3256}
3257
3258// ListEntityRecognizersPages iterates over the pages of a ListEntityRecognizers operation,
3259// calling the "fn" function with the response data for each page. To stop
3260// iterating, return false from the fn function.
3261//
3262// See ListEntityRecognizers method for more information on how to use this operation.
3263//
3264// Note: This operation can generate multiple requests to a service.
3265//
3266//    // Example iterating over at most 3 pages of a ListEntityRecognizers operation.
3267//    pageNum := 0
3268//    err := client.ListEntityRecognizersPages(params,
3269//        func(page *comprehend.ListEntityRecognizersOutput, lastPage bool) bool {
3270//            pageNum++
3271//            fmt.Println(page)
3272//            return pageNum <= 3
3273//        })
3274//
3275func (c *Comprehend) ListEntityRecognizersPages(input *ListEntityRecognizersInput, fn func(*ListEntityRecognizersOutput, bool) bool) error {
3276	return c.ListEntityRecognizersPagesWithContext(aws.BackgroundContext(), input, fn)
3277}
3278
3279// ListEntityRecognizersPagesWithContext same as ListEntityRecognizersPages except
3280// it takes a Context and allows setting request options on the pages.
3281//
3282// The context must be non-nil and will be used for request cancellation. If
3283// the context is nil a panic will occur. In the future the SDK may create
3284// sub-contexts for http.Requests. See https://golang.org/pkg/context/
3285// for more information on using Contexts.
3286func (c *Comprehend) ListEntityRecognizersPagesWithContext(ctx aws.Context, input *ListEntityRecognizersInput, fn func(*ListEntityRecognizersOutput, bool) bool, opts ...request.Option) error {
3287	p := request.Pagination{
3288		NewRequest: func() (*request.Request, error) {
3289			var inCpy *ListEntityRecognizersInput
3290			if input != nil {
3291				tmp := *input
3292				inCpy = &tmp
3293			}
3294			req, _ := c.ListEntityRecognizersRequest(inCpy)
3295			req.SetContext(ctx)
3296			req.ApplyOptions(opts...)
3297			return req, nil
3298		},
3299	}
3300
3301	for p.Next() {
3302		if !fn(p.Page().(*ListEntityRecognizersOutput), !p.HasNextPage()) {
3303			break
3304		}
3305	}
3306
3307	return p.Err()
3308}
3309
3310const opListKeyPhrasesDetectionJobs = "ListKeyPhrasesDetectionJobs"
3311
3312// ListKeyPhrasesDetectionJobsRequest generates a "aws/request.Request" representing the
3313// client's request for the ListKeyPhrasesDetectionJobs operation. The "output" return
3314// value will be populated with the request's response once the request completes
3315// successfully.
3316//
3317// Use "Send" method on the returned Request to send the API call to the service.
3318// the "output" return value is not valid until after Send returns without error.
3319//
3320// See ListKeyPhrasesDetectionJobs for more information on using the ListKeyPhrasesDetectionJobs
3321// API call, and error handling.
3322//
3323// This method is useful when you want to inject custom logic or configuration
3324// into the SDK's request lifecycle. Such as custom headers, or retry logic.
3325//
3326//
3327//    // Example sending a request using the ListKeyPhrasesDetectionJobsRequest method.
3328//    req, resp := client.ListKeyPhrasesDetectionJobsRequest(params)
3329//
3330//    err := req.Send()
3331//    if err == nil { // resp is now filled
3332//        fmt.Println(resp)
3333//    }
3334//
3335// See also, https://docs.aws.amazon.com/goto/WebAPI/comprehend-2017-11-27/ListKeyPhrasesDetectionJobs
3336func (c *Comprehend) ListKeyPhrasesDetectionJobsRequest(input *ListKeyPhrasesDetectionJobsInput) (req *request.Request, output *ListKeyPhrasesDetectionJobsOutput) {
3337	op := &request.Operation{
3338		Name:       opListKeyPhrasesDetectionJobs,
3339		HTTPMethod: "POST",
3340		HTTPPath:   "/",
3341		Paginator: &request.Paginator{
3342			InputTokens:     []string{"NextToken"},
3343			OutputTokens:    []string{"NextToken"},
3344			LimitToken:      "MaxResults",
3345			TruncationToken: "",
3346		},
3347	}
3348
3349	if input == nil {
3350		input = &ListKeyPhrasesDetectionJobsInput{}
3351	}
3352
3353	output = &ListKeyPhrasesDetectionJobsOutput{}
3354	req = c.newRequest(op, input, output)
3355	return
3356}
3357
3358// ListKeyPhrasesDetectionJobs API operation for Amazon Comprehend.
3359//
3360// Get a list of key phrase detection jobs that you have submitted.
3361//
3362// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
3363// with awserr.Error's Code and Message methods to get detailed information about
3364// the error.
3365//
3366// See the AWS API reference guide for Amazon Comprehend's
3367// API operation ListKeyPhrasesDetectionJobs for usage and error information.
3368//
3369// Returned Error Types:
3370//   * InvalidRequestException
3371//   The request is invalid.
3372//
3373//   * TooManyRequestsException
3374//   The number of requests exceeds the limit. Resubmit your request later.
3375//
3376//   * InvalidFilterException
3377//   The filter specified for the operation is invalid. Specify a different filter.
3378//
3379//   * InternalServerException
3380//   An internal server error occurred. Retry your request.
3381//
3382// See also, https://docs.aws.amazon.com/goto/WebAPI/comprehend-2017-11-27/ListKeyPhrasesDetectionJobs
3383func (c *Comprehend) ListKeyPhrasesDetectionJobs(input *ListKeyPhrasesDetectionJobsInput) (*ListKeyPhrasesDetectionJobsOutput, error) {
3384	req, out := c.ListKeyPhrasesDetectionJobsRequest(input)
3385	return out, req.Send()
3386}
3387
3388// ListKeyPhrasesDetectionJobsWithContext is the same as ListKeyPhrasesDetectionJobs with the addition of
3389// the ability to pass a context and additional request options.
3390//
3391// See ListKeyPhrasesDetectionJobs for details on how to use this API operation.
3392//
3393// The context must be non-nil and will be used for request cancellation. If
3394// the context is nil a panic will occur. In the future the SDK may create
3395// sub-contexts for http.Requests. See https://golang.org/pkg/context/
3396// for more information on using Contexts.
3397func (c *Comprehend) ListKeyPhrasesDetectionJobsWithContext(ctx aws.Context, input *ListKeyPhrasesDetectionJobsInput, opts ...request.Option) (*ListKeyPhrasesDetectionJobsOutput, error) {
3398	req, out := c.ListKeyPhrasesDetectionJobsRequest(input)
3399	req.SetContext(ctx)
3400	req.ApplyOptions(opts...)
3401	return out, req.Send()
3402}
3403
3404// ListKeyPhrasesDetectionJobsPages iterates over the pages of a ListKeyPhrasesDetectionJobs operation,
3405// calling the "fn" function with the response data for each page. To stop
3406// iterating, return false from the fn function.
3407//
3408// See ListKeyPhrasesDetectionJobs method for more information on how to use this operation.
3409//
3410// Note: This operation can generate multiple requests to a service.
3411//
3412//    // Example iterating over at most 3 pages of a ListKeyPhrasesDetectionJobs operation.
3413//    pageNum := 0
3414//    err := client.ListKeyPhrasesDetectionJobsPages(params,
3415//        func(page *comprehend.ListKeyPhrasesDetectionJobsOutput, lastPage bool) bool {
3416//            pageNum++
3417//            fmt.Println(page)
3418//            return pageNum <= 3
3419//        })
3420//
3421func (c *Comprehend) ListKeyPhrasesDetectionJobsPages(input *ListKeyPhrasesDetectionJobsInput, fn func(*ListKeyPhrasesDetectionJobsOutput, bool) bool) error {
3422	return c.ListKeyPhrasesDetectionJobsPagesWithContext(aws.BackgroundContext(), input, fn)
3423}
3424
3425// ListKeyPhrasesDetectionJobsPagesWithContext same as ListKeyPhrasesDetectionJobsPages except
3426// it takes a Context and allows setting request options on the pages.
3427//
3428// The context must be non-nil and will be used for request cancellation. If
3429// the context is nil a panic will occur. In the future the SDK may create
3430// sub-contexts for http.Requests. See https://golang.org/pkg/context/
3431// for more information on using Contexts.
3432func (c *Comprehend) ListKeyPhrasesDetectionJobsPagesWithContext(ctx aws.Context, input *ListKeyPhrasesDetectionJobsInput, fn func(*ListKeyPhrasesDetectionJobsOutput, bool) bool, opts ...request.Option) error {
3433	p := request.Pagination{
3434		NewRequest: func() (*request.Request, error) {
3435			var inCpy *ListKeyPhrasesDetectionJobsInput
3436			if input != nil {
3437				tmp := *input
3438				inCpy = &tmp
3439			}
3440			req, _ := c.ListKeyPhrasesDetectionJobsRequest(inCpy)
3441			req.SetContext(ctx)
3442			req.ApplyOptions(opts...)
3443			return req, nil
3444		},
3445	}
3446
3447	for p.Next() {
3448		if !fn(p.Page().(*ListKeyPhrasesDetectionJobsOutput), !p.HasNextPage()) {
3449			break
3450		}
3451	}
3452
3453	return p.Err()
3454}
3455
3456const opListSentimentDetectionJobs = "ListSentimentDetectionJobs"
3457
3458// ListSentimentDetectionJobsRequest generates a "aws/request.Request" representing the
3459// client's request for the ListSentimentDetectionJobs operation. The "output" return
3460// value will be populated with the request's response once the request completes
3461// successfully.
3462//
3463// Use "Send" method on the returned Request to send the API call to the service.
3464// the "output" return value is not valid until after Send returns without error.
3465//
3466// See ListSentimentDetectionJobs for more information on using the ListSentimentDetectionJobs
3467// API call, and error handling.
3468//
3469// This method is useful when you want to inject custom logic or configuration
3470// into the SDK's request lifecycle. Such as custom headers, or retry logic.
3471//
3472//
3473//    // Example sending a request using the ListSentimentDetectionJobsRequest method.
3474//    req, resp := client.ListSentimentDetectionJobsRequest(params)
3475//
3476//    err := req.Send()
3477//    if err == nil { // resp is now filled
3478//        fmt.Println(resp)
3479//    }
3480//
3481// See also, https://docs.aws.amazon.com/goto/WebAPI/comprehend-2017-11-27/ListSentimentDetectionJobs
3482func (c *Comprehend) ListSentimentDetectionJobsRequest(input *ListSentimentDetectionJobsInput) (req *request.Request, output *ListSentimentDetectionJobsOutput) {
3483	op := &request.Operation{
3484		Name:       opListSentimentDetectionJobs,
3485		HTTPMethod: "POST",
3486		HTTPPath:   "/",
3487		Paginator: &request.Paginator{
3488			InputTokens:     []string{"NextToken"},
3489			OutputTokens:    []string{"NextToken"},
3490			LimitToken:      "MaxResults",
3491			TruncationToken: "",
3492		},
3493	}
3494
3495	if input == nil {
3496		input = &ListSentimentDetectionJobsInput{}
3497	}
3498
3499	output = &ListSentimentDetectionJobsOutput{}
3500	req = c.newRequest(op, input, output)
3501	return
3502}
3503
3504// ListSentimentDetectionJobs API operation for Amazon Comprehend.
3505//
3506// Gets a list of sentiment detection jobs that you have submitted.
3507//
3508// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
3509// with awserr.Error's Code and Message methods to get detailed information about
3510// the error.
3511//
3512// See the AWS API reference guide for Amazon Comprehend's
3513// API operation ListSentimentDetectionJobs for usage and error information.
3514//
3515// Returned Error Types:
3516//   * InvalidRequestException
3517//   The request is invalid.
3518//
3519//   * TooManyRequestsException
3520//   The number of requests exceeds the limit. Resubmit your request later.
3521//
3522//   * InvalidFilterException
3523//   The filter specified for the operation is invalid. Specify a different filter.
3524//
3525//   * InternalServerException
3526//   An internal server error occurred. Retry your request.
3527//
3528// See also, https://docs.aws.amazon.com/goto/WebAPI/comprehend-2017-11-27/ListSentimentDetectionJobs
3529func (c *Comprehend) ListSentimentDetectionJobs(input *ListSentimentDetectionJobsInput) (*ListSentimentDetectionJobsOutput, error) {
3530	req, out := c.ListSentimentDetectionJobsRequest(input)
3531	return out, req.Send()
3532}
3533
3534// ListSentimentDetectionJobsWithContext is the same as ListSentimentDetectionJobs with the addition of
3535// the ability to pass a context and additional request options.
3536//
3537// See ListSentimentDetectionJobs for details on how to use this API operation.
3538//
3539// The context must be non-nil and will be used for request cancellation. If
3540// the context is nil a panic will occur. In the future the SDK may create
3541// sub-contexts for http.Requests. See https://golang.org/pkg/context/
3542// for more information on using Contexts.
3543func (c *Comprehend) ListSentimentDetectionJobsWithContext(ctx aws.Context, input *ListSentimentDetectionJobsInput, opts ...request.Option) (*ListSentimentDetectionJobsOutput, error) {
3544	req, out := c.ListSentimentDetectionJobsRequest(input)
3545	req.SetContext(ctx)
3546	req.ApplyOptions(opts...)
3547	return out, req.Send()
3548}
3549
3550// ListSentimentDetectionJobsPages iterates over the pages of a ListSentimentDetectionJobs operation,
3551// calling the "fn" function with the response data for each page. To stop
3552// iterating, return false from the fn function.
3553//
3554// See ListSentimentDetectionJobs method for more information on how to use this operation.
3555//
3556// Note: This operation can generate multiple requests to a service.
3557//
3558//    // Example iterating over at most 3 pages of a ListSentimentDetectionJobs operation.
3559//    pageNum := 0
3560//    err := client.ListSentimentDetectionJobsPages(params,
3561//        func(page *comprehend.ListSentimentDetectionJobsOutput, lastPage bool) bool {
3562//            pageNum++
3563//            fmt.Println(page)
3564//            return pageNum <= 3
3565//        })
3566//
3567func (c *Comprehend) ListSentimentDetectionJobsPages(input *ListSentimentDetectionJobsInput, fn func(*ListSentimentDetectionJobsOutput, bool) bool) error {
3568	return c.ListSentimentDetectionJobsPagesWithContext(aws.BackgroundContext(), input, fn)
3569}
3570
3571// ListSentimentDetectionJobsPagesWithContext same as ListSentimentDetectionJobsPages except
3572// it takes a Context and allows setting request options on the pages.
3573//
3574// The context must be non-nil and will be used for request cancellation. If
3575// the context is nil a panic will occur. In the future the SDK may create
3576// sub-contexts for http.Requests. See https://golang.org/pkg/context/
3577// for more information on using Contexts.
3578func (c *Comprehend) ListSentimentDetectionJobsPagesWithContext(ctx aws.Context, input *ListSentimentDetectionJobsInput, fn func(*ListSentimentDetectionJobsOutput, bool) bool, opts ...request.Option) error {
3579	p := request.Pagination{
3580		NewRequest: func() (*request.Request, error) {
3581			var inCpy *ListSentimentDetectionJobsInput
3582			if input != nil {
3583				tmp := *input
3584				inCpy = &tmp
3585			}
3586			req, _ := c.ListSentimentDetectionJobsRequest(inCpy)
3587			req.SetContext(ctx)
3588			req.ApplyOptions(opts...)
3589			return req, nil
3590		},
3591	}
3592
3593	for p.Next() {
3594		if !fn(p.Page().(*ListSentimentDetectionJobsOutput), !p.HasNextPage()) {
3595			break
3596		}
3597	}
3598
3599	return p.Err()
3600}
3601
3602const opListTagsForResource = "ListTagsForResource"
3603
3604// ListTagsForResourceRequest generates a "aws/request.Request" representing the
3605// client's request for the ListTagsForResource operation. The "output" return
3606// value will be populated with the request's response once the request completes
3607// successfully.
3608//
3609// Use "Send" method on the returned Request to send the API call to the service.
3610// the "output" return value is not valid until after Send returns without error.
3611//
3612// See ListTagsForResource for more information on using the ListTagsForResource
3613// API call, and error handling.
3614//
3615// This method is useful when you want to inject custom logic or configuration
3616// into the SDK's request lifecycle. Such as custom headers, or retry logic.
3617//
3618//
3619//    // Example sending a request using the ListTagsForResourceRequest method.
3620//    req, resp := client.ListTagsForResourceRequest(params)
3621//
3622//    err := req.Send()
3623//    if err == nil { // resp is now filled
3624//        fmt.Println(resp)
3625//    }
3626//
3627// See also, https://docs.aws.amazon.com/goto/WebAPI/comprehend-2017-11-27/ListTagsForResource
3628func (c *Comprehend) ListTagsForResourceRequest(input *ListTagsForResourceInput) (req *request.Request, output *ListTagsForResourceOutput) {
3629	op := &request.Operation{
3630		Name:       opListTagsForResource,
3631		HTTPMethod: "POST",
3632		HTTPPath:   "/",
3633	}
3634
3635	if input == nil {
3636		input = &ListTagsForResourceInput{}
3637	}
3638
3639	output = &ListTagsForResourceOutput{}
3640	req = c.newRequest(op, input, output)
3641	return
3642}
3643
3644// ListTagsForResource API operation for Amazon Comprehend.
3645//
3646// Lists all tags associated with a given Amazon Comprehend resource.
3647//
3648// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
3649// with awserr.Error's Code and Message methods to get detailed information about
3650// the error.
3651//
3652// See the AWS API reference guide for Amazon Comprehend's
3653// API operation ListTagsForResource for usage and error information.
3654//
3655// Returned Error Types:
3656//   * InvalidRequestException
3657//   The request is invalid.
3658//
3659//   * ResourceNotFoundException
3660//   The specified resource ARN was not found. Check the ARN and try your request
3661//   again.
3662//
3663//   * InternalServerException
3664//   An internal server error occurred. Retry your request.
3665//
3666// See also, https://docs.aws.amazon.com/goto/WebAPI/comprehend-2017-11-27/ListTagsForResource
3667func (c *Comprehend) ListTagsForResource(input *ListTagsForResourceInput) (*ListTagsForResourceOutput, error) {
3668	req, out := c.ListTagsForResourceRequest(input)
3669	return out, req.Send()
3670}
3671
3672// ListTagsForResourceWithContext is the same as ListTagsForResource with the addition of
3673// the ability to pass a context and additional request options.
3674//
3675// See ListTagsForResource for details on how to use this API operation.
3676//
3677// The context must be non-nil and will be used for request cancellation. If
3678// the context is nil a panic will occur. In the future the SDK may create
3679// sub-contexts for http.Requests. See https://golang.org/pkg/context/
3680// for more information on using Contexts.
3681func (c *Comprehend) ListTagsForResourceWithContext(ctx aws.Context, input *ListTagsForResourceInput, opts ...request.Option) (*ListTagsForResourceOutput, error) {
3682	req, out := c.ListTagsForResourceRequest(input)
3683	req.SetContext(ctx)
3684	req.ApplyOptions(opts...)
3685	return out, req.Send()
3686}
3687
3688const opListTopicsDetectionJobs = "ListTopicsDetectionJobs"
3689
3690// ListTopicsDetectionJobsRequest generates a "aws/request.Request" representing the
3691// client's request for the ListTopicsDetectionJobs operation. The "output" return
3692// value will be populated with the request's response once the request completes
3693// successfully.
3694//
3695// Use "Send" method on the returned Request to send the API call to the service.
3696// the "output" return value is not valid until after Send returns without error.
3697//
3698// See ListTopicsDetectionJobs for more information on using the ListTopicsDetectionJobs
3699// API call, and error handling.
3700//
3701// This method is useful when you want to inject custom logic or configuration
3702// into the SDK's request lifecycle. Such as custom headers, or retry logic.
3703//
3704//
3705//    // Example sending a request using the ListTopicsDetectionJobsRequest method.
3706//    req, resp := client.ListTopicsDetectionJobsRequest(params)
3707//
3708//    err := req.Send()
3709//    if err == nil { // resp is now filled
3710//        fmt.Println(resp)
3711//    }
3712//
3713// See also, https://docs.aws.amazon.com/goto/WebAPI/comprehend-2017-11-27/ListTopicsDetectionJobs
3714func (c *Comprehend) ListTopicsDetectionJobsRequest(input *ListTopicsDetectionJobsInput) (req *request.Request, output *ListTopicsDetectionJobsOutput) {
3715	op := &request.Operation{
3716		Name:       opListTopicsDetectionJobs,
3717		HTTPMethod: "POST",
3718		HTTPPath:   "/",
3719		Paginator: &request.Paginator{
3720			InputTokens:     []string{"NextToken"},
3721			OutputTokens:    []string{"NextToken"},
3722			LimitToken:      "MaxResults",
3723			TruncationToken: "",
3724		},
3725	}
3726
3727	if input == nil {
3728		input = &ListTopicsDetectionJobsInput{}
3729	}
3730
3731	output = &ListTopicsDetectionJobsOutput{}
3732	req = c.newRequest(op, input, output)
3733	return
3734}
3735
3736// ListTopicsDetectionJobs API operation for Amazon Comprehend.
3737//
3738// Gets a list of the topic detection jobs that you have submitted.
3739//
3740// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
3741// with awserr.Error's Code and Message methods to get detailed information about
3742// the error.
3743//
3744// See the AWS API reference guide for Amazon Comprehend's
3745// API operation ListTopicsDetectionJobs for usage and error information.
3746//
3747// Returned Error Types:
3748//   * InvalidRequestException
3749//   The request is invalid.
3750//
3751//   * TooManyRequestsException
3752//   The number of requests exceeds the limit. Resubmit your request later.
3753//
3754//   * InvalidFilterException
3755//   The filter specified for the operation is invalid. Specify a different filter.
3756//
3757//   * InternalServerException
3758//   An internal server error occurred. Retry your request.
3759//
3760// See also, https://docs.aws.amazon.com/goto/WebAPI/comprehend-2017-11-27/ListTopicsDetectionJobs
3761func (c *Comprehend) ListTopicsDetectionJobs(input *ListTopicsDetectionJobsInput) (*ListTopicsDetectionJobsOutput, error) {
3762	req, out := c.ListTopicsDetectionJobsRequest(input)
3763	return out, req.Send()
3764}
3765
3766// ListTopicsDetectionJobsWithContext is the same as ListTopicsDetectionJobs with the addition of
3767// the ability to pass a context and additional request options.
3768//
3769// See ListTopicsDetectionJobs for details on how to use this API operation.
3770//
3771// The context must be non-nil and will be used for request cancellation. If
3772// the context is nil a panic will occur. In the future the SDK may create
3773// sub-contexts for http.Requests. See https://golang.org/pkg/context/
3774// for more information on using Contexts.
3775func (c *Comprehend) ListTopicsDetectionJobsWithContext(ctx aws.Context, input *ListTopicsDetectionJobsInput, opts ...request.Option) (*ListTopicsDetectionJobsOutput, error) {
3776	req, out := c.ListTopicsDetectionJobsRequest(input)
3777	req.SetContext(ctx)
3778	req.ApplyOptions(opts...)
3779	return out, req.Send()
3780}
3781
3782// ListTopicsDetectionJobsPages iterates over the pages of a ListTopicsDetectionJobs operation,
3783// calling the "fn" function with the response data for each page. To stop
3784// iterating, return false from the fn function.
3785//
3786// See ListTopicsDetectionJobs method for more information on how to use this operation.
3787//
3788// Note: This operation can generate multiple requests to a service.
3789//
3790//    // Example iterating over at most 3 pages of a ListTopicsDetectionJobs operation.
3791//    pageNum := 0
3792//    err := client.ListTopicsDetectionJobsPages(params,
3793//        func(page *comprehend.ListTopicsDetectionJobsOutput, lastPage bool) bool {
3794//            pageNum++
3795//            fmt.Println(page)
3796//            return pageNum <= 3
3797//        })
3798//
3799func (c *Comprehend) ListTopicsDetectionJobsPages(input *ListTopicsDetectionJobsInput, fn func(*ListTopicsDetectionJobsOutput, bool) bool) error {
3800	return c.ListTopicsDetectionJobsPagesWithContext(aws.BackgroundContext(), input, fn)
3801}
3802
3803// ListTopicsDetectionJobsPagesWithContext same as ListTopicsDetectionJobsPages except
3804// it takes a Context and allows setting request options on the pages.
3805//
3806// The context must be non-nil and will be used for request cancellation. If
3807// the context is nil a panic will occur. In the future the SDK may create
3808// sub-contexts for http.Requests. See https://golang.org/pkg/context/
3809// for more information on using Contexts.
3810func (c *Comprehend) ListTopicsDetectionJobsPagesWithContext(ctx aws.Context, input *ListTopicsDetectionJobsInput, fn func(*ListTopicsDetectionJobsOutput, bool) bool, opts ...request.Option) error {
3811	p := request.Pagination{
3812		NewRequest: func() (*request.Request, error) {
3813			var inCpy *ListTopicsDetectionJobsInput
3814			if input != nil {
3815				tmp := *input
3816				inCpy = &tmp
3817			}
3818			req, _ := c.ListTopicsDetectionJobsRequest(inCpy)
3819			req.SetContext(ctx)
3820			req.ApplyOptions(opts...)
3821			return req, nil
3822		},
3823	}
3824
3825	for p.Next() {
3826		if !fn(p.Page().(*ListTopicsDetectionJobsOutput), !p.HasNextPage()) {
3827			break
3828		}
3829	}
3830
3831	return p.Err()
3832}
3833
3834const opStartDocumentClassificationJob = "StartDocumentClassificationJob"
3835
3836// StartDocumentClassificationJobRequest generates a "aws/request.Request" representing the
3837// client's request for the StartDocumentClassificationJob operation. The "output" return
3838// value will be populated with the request's response once the request completes
3839// successfully.
3840//
3841// Use "Send" method on the returned Request to send the API call to the service.
3842// the "output" return value is not valid until after Send returns without error.
3843//
3844// See StartDocumentClassificationJob for more information on using the StartDocumentClassificationJob
3845// API call, and error handling.
3846//
3847// This method is useful when you want to inject custom logic or configuration
3848// into the SDK's request lifecycle. Such as custom headers, or retry logic.
3849//
3850//
3851//    // Example sending a request using the StartDocumentClassificationJobRequest method.
3852//    req, resp := client.StartDocumentClassificationJobRequest(params)
3853//
3854//    err := req.Send()
3855//    if err == nil { // resp is now filled
3856//        fmt.Println(resp)
3857//    }
3858//
3859// See also, https://docs.aws.amazon.com/goto/WebAPI/comprehend-2017-11-27/StartDocumentClassificationJob
3860func (c *Comprehend) StartDocumentClassificationJobRequest(input *StartDocumentClassificationJobInput) (req *request.Request, output *StartDocumentClassificationJobOutput) {
3861	op := &request.Operation{
3862		Name:       opStartDocumentClassificationJob,
3863		HTTPMethod: "POST",
3864		HTTPPath:   "/",
3865	}
3866
3867	if input == nil {
3868		input = &StartDocumentClassificationJobInput{}
3869	}
3870
3871	output = &StartDocumentClassificationJobOutput{}
3872	req = c.newRequest(op, input, output)
3873	return
3874}
3875
3876// StartDocumentClassificationJob API operation for Amazon Comprehend.
3877//
3878// Starts an asynchronous document classification job. Use the operation to
3879// track the progress of the job.
3880//
3881// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
3882// with awserr.Error's Code and Message methods to get detailed information about
3883// the error.
3884//
3885// See the AWS API reference guide for Amazon Comprehend's
3886// API operation StartDocumentClassificationJob for usage and error information.
3887//
3888// Returned Error Types:
3889//   * InvalidRequestException
3890//   The request is invalid.
3891//
3892//   * TooManyRequestsException
3893//   The number of requests exceeds the limit. Resubmit your request later.
3894//
3895//   * ResourceNotFoundException
3896//   The specified resource ARN was not found. Check the ARN and try your request
3897//   again.
3898//
3899//   * ResourceUnavailableException
3900//   The specified resource is not available. Check the resource and try your
3901//   request again.
3902//
3903//   * KmsKeyValidationException
3904//   The KMS customer managed key (CMK) entered cannot be validated. Verify the
3905//   key and re-enter it.
3906//
3907//   * InternalServerException
3908//   An internal server error occurred. Retry your request.
3909//
3910// See also, https://docs.aws.amazon.com/goto/WebAPI/comprehend-2017-11-27/StartDocumentClassificationJob
3911func (c *Comprehend) StartDocumentClassificationJob(input *StartDocumentClassificationJobInput) (*StartDocumentClassificationJobOutput, error) {
3912	req, out := c.StartDocumentClassificationJobRequest(input)
3913	return out, req.Send()
3914}
3915
3916// StartDocumentClassificationJobWithContext is the same as StartDocumentClassificationJob with the addition of
3917// the ability to pass a context and additional request options.
3918//
3919// See StartDocumentClassificationJob for details on how to use this API operation.
3920//
3921// The context must be non-nil and will be used for request cancellation. If
3922// the context is nil a panic will occur. In the future the SDK may create
3923// sub-contexts for http.Requests. See https://golang.org/pkg/context/
3924// for more information on using Contexts.
3925func (c *Comprehend) StartDocumentClassificationJobWithContext(ctx aws.Context, input *StartDocumentClassificationJobInput, opts ...request.Option) (*StartDocumentClassificationJobOutput, error) {
3926	req, out := c.StartDocumentClassificationJobRequest(input)
3927	req.SetContext(ctx)
3928	req.ApplyOptions(opts...)
3929	return out, req.Send()
3930}
3931
3932const opStartDominantLanguageDetectionJob = "StartDominantLanguageDetectionJob"
3933
3934// StartDominantLanguageDetectionJobRequest generates a "aws/request.Request" representing the
3935// client's request for the StartDominantLanguageDetectionJob operation. The "output" return
3936// value will be populated with the request's response once the request completes
3937// successfully.
3938//
3939// Use "Send" method on the returned Request to send the API call to the service.
3940// the "output" return value is not valid until after Send returns without error.
3941//
3942// See StartDominantLanguageDetectionJob for more information on using the StartDominantLanguageDetectionJob
3943// API call, and error handling.
3944//
3945// This method is useful when you want to inject custom logic or configuration
3946// into the SDK's request lifecycle. Such as custom headers, or retry logic.
3947//
3948//
3949//    // Example sending a request using the StartDominantLanguageDetectionJobRequest method.
3950//    req, resp := client.StartDominantLanguageDetectionJobRequest(params)
3951//
3952//    err := req.Send()
3953//    if err == nil { // resp is now filled
3954//        fmt.Println(resp)
3955//    }
3956//
3957// See also, https://docs.aws.amazon.com/goto/WebAPI/comprehend-2017-11-27/StartDominantLanguageDetectionJob
3958func (c *Comprehend) StartDominantLanguageDetectionJobRequest(input *StartDominantLanguageDetectionJobInput) (req *request.Request, output *StartDominantLanguageDetectionJobOutput) {
3959	op := &request.Operation{
3960		Name:       opStartDominantLanguageDetectionJob,
3961		HTTPMethod: "POST",
3962		HTTPPath:   "/",
3963	}
3964
3965	if input == nil {
3966		input = &StartDominantLanguageDetectionJobInput{}
3967	}
3968
3969	output = &StartDominantLanguageDetectionJobOutput{}
3970	req = c.newRequest(op, input, output)
3971	return
3972}
3973
3974// StartDominantLanguageDetectionJob API operation for Amazon Comprehend.
3975//
3976// Starts an asynchronous dominant language detection job for a collection of
3977// documents. Use the operation to track the status of a job.
3978//
3979// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
3980// with awserr.Error's Code and Message methods to get detailed information about
3981// the error.
3982//
3983// See the AWS API reference guide for Amazon Comprehend's
3984// API operation StartDominantLanguageDetectionJob for usage and error information.
3985//
3986// Returned Error Types:
3987//   * InvalidRequestException
3988//   The request is invalid.
3989//
3990//   * TooManyRequestsException
3991//   The number of requests exceeds the limit. Resubmit your request later.
3992//
3993//   * KmsKeyValidationException
3994//   The KMS customer managed key (CMK) entered cannot be validated. Verify the
3995//   key and re-enter it.
3996//
3997//   * InternalServerException
3998//   An internal server error occurred. Retry your request.
3999//
4000// See also, https://docs.aws.amazon.com/goto/WebAPI/comprehend-2017-11-27/StartDominantLanguageDetectionJob
4001func (c *Comprehend) StartDominantLanguageDetectionJob(input *StartDominantLanguageDetectionJobInput) (*StartDominantLanguageDetectionJobOutput, error) {
4002	req, out := c.StartDominantLanguageDetectionJobRequest(input)
4003	return out, req.Send()
4004}
4005
4006// StartDominantLanguageDetectionJobWithContext is the same as StartDominantLanguageDetectionJob with the addition of
4007// the ability to pass a context and additional request options.
4008//
4009// See StartDominantLanguageDetectionJob for details on how to use this API operation.
4010//
4011// The context must be non-nil and will be used for request cancellation. If
4012// the context is nil a panic will occur. In the future the SDK may create
4013// sub-contexts for http.Requests. See https://golang.org/pkg/context/
4014// for more information on using Contexts.
4015func (c *Comprehend) StartDominantLanguageDetectionJobWithContext(ctx aws.Context, input *StartDominantLanguageDetectionJobInput, opts ...request.Option) (*StartDominantLanguageDetectionJobOutput, error) {
4016	req, out := c.StartDominantLanguageDetectionJobRequest(input)
4017	req.SetContext(ctx)
4018	req.ApplyOptions(opts...)
4019	return out, req.Send()
4020}
4021
4022const opStartEntitiesDetectionJob = "StartEntitiesDetectionJob"
4023
4024// StartEntitiesDetectionJobRequest generates a "aws/request.Request" representing the
4025// client's request for the StartEntitiesDetectionJob operation. The "output" return
4026// value will be populated with the request's response once the request completes
4027// successfully.
4028//
4029// Use "Send" method on the returned Request to send the API call to the service.
4030// the "output" return value is not valid until after Send returns without error.
4031//
4032// See StartEntitiesDetectionJob for more information on using the StartEntitiesDetectionJob
4033// API call, and error handling.
4034//
4035// This method is useful when you want to inject custom logic or configuration
4036// into the SDK's request lifecycle. Such as custom headers, or retry logic.
4037//
4038//
4039//    // Example sending a request using the StartEntitiesDetectionJobRequest method.
4040//    req, resp := client.StartEntitiesDetectionJobRequest(params)
4041//
4042//    err := req.Send()
4043//    if err == nil { // resp is now filled
4044//        fmt.Println(resp)
4045//    }
4046//
4047// See also, https://docs.aws.amazon.com/goto/WebAPI/comprehend-2017-11-27/StartEntitiesDetectionJob
4048func (c *Comprehend) StartEntitiesDetectionJobRequest(input *StartEntitiesDetectionJobInput) (req *request.Request, output *StartEntitiesDetectionJobOutput) {
4049	op := &request.Operation{
4050		Name:       opStartEntitiesDetectionJob,
4051		HTTPMethod: "POST",
4052		HTTPPath:   "/",
4053	}
4054
4055	if input == nil {
4056		input = &StartEntitiesDetectionJobInput{}
4057	}
4058
4059	output = &StartEntitiesDetectionJobOutput{}
4060	req = c.newRequest(op, input, output)
4061	return
4062}
4063
4064// StartEntitiesDetectionJob API operation for Amazon Comprehend.
4065//
4066// Starts an asynchronous entity detection job for a collection of documents.
4067// Use the operation to track the status of a job.
4068//
4069// This API can be used for either standard entity detection or custom entity
4070// recognition. In order to be used for custom entity recognition, the optional
4071// EntityRecognizerArn must be used in order to provide access to the recognizer
4072// being used to detect the custom entity.
4073//
4074// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
4075// with awserr.Error's Code and Message methods to get detailed information about
4076// the error.
4077//
4078// See the AWS API reference guide for Amazon Comprehend's
4079// API operation StartEntitiesDetectionJob for usage and error information.
4080//
4081// Returned Error Types:
4082//   * InvalidRequestException
4083//   The request is invalid.
4084//
4085//   * TooManyRequestsException
4086//   The number of requests exceeds the limit. Resubmit your request later.
4087//
4088//   * ResourceNotFoundException
4089//   The specified resource ARN was not found. Check the ARN and try your request
4090//   again.
4091//
4092//   * ResourceUnavailableException
4093//   The specified resource is not available. Check the resource and try your
4094//   request again.
4095//
4096//   * KmsKeyValidationException
4097//   The KMS customer managed key (CMK) entered cannot be validated. Verify the
4098//   key and re-enter it.
4099//
4100//   * InternalServerException
4101//   An internal server error occurred. Retry your request.
4102//
4103// See also, https://docs.aws.amazon.com/goto/WebAPI/comprehend-2017-11-27/StartEntitiesDetectionJob
4104func (c *Comprehend) StartEntitiesDetectionJob(input *StartEntitiesDetectionJobInput) (*StartEntitiesDetectionJobOutput, error) {
4105	req, out := c.StartEntitiesDetectionJobRequest(input)
4106	return out, req.Send()
4107}
4108
4109// StartEntitiesDetectionJobWithContext is the same as StartEntitiesDetectionJob with the addition of
4110// the ability to pass a context and additional request options.
4111//
4112// See StartEntitiesDetectionJob for details on how to use this API operation.
4113//
4114// The context must be non-nil and will be used for request cancellation. If
4115// the context is nil a panic will occur. In the future the SDK may create
4116// sub-contexts for http.Requests. See https://golang.org/pkg/context/
4117// for more information on using Contexts.
4118func (c *Comprehend) StartEntitiesDetectionJobWithContext(ctx aws.Context, input *StartEntitiesDetectionJobInput, opts ...request.Option) (*StartEntitiesDetectionJobOutput, error) {
4119	req, out := c.StartEntitiesDetectionJobRequest(input)
4120	req.SetContext(ctx)
4121	req.ApplyOptions(opts...)
4122	return out, req.Send()
4123}
4124
4125const opStartKeyPhrasesDetectionJob = "StartKeyPhrasesDetectionJob"
4126
4127// StartKeyPhrasesDetectionJobRequest generates a "aws/request.Request" representing the
4128// client's request for the StartKeyPhrasesDetectionJob operation. The "output" return
4129// value will be populated with the request's response once the request completes
4130// successfully.
4131//
4132// Use "Send" method on the returned Request to send the API call to the service.
4133// the "output" return value is not valid until after Send returns without error.
4134//
4135// See StartKeyPhrasesDetectionJob for more information on using the StartKeyPhrasesDetectionJob
4136// API call, and error handling.
4137//
4138// This method is useful when you want to inject custom logic or configuration
4139// into the SDK's request lifecycle. Such as custom headers, or retry logic.
4140//
4141//
4142//    // Example sending a request using the StartKeyPhrasesDetectionJobRequest method.
4143//    req, resp := client.StartKeyPhrasesDetectionJobRequest(params)
4144//
4145//    err := req.Send()
4146//    if err == nil { // resp is now filled
4147//        fmt.Println(resp)
4148//    }
4149//
4150// See also, https://docs.aws.amazon.com/goto/WebAPI/comprehend-2017-11-27/StartKeyPhrasesDetectionJob
4151func (c *Comprehend) StartKeyPhrasesDetectionJobRequest(input *StartKeyPhrasesDetectionJobInput) (req *request.Request, output *StartKeyPhrasesDetectionJobOutput) {
4152	op := &request.Operation{
4153		Name:       opStartKeyPhrasesDetectionJob,
4154		HTTPMethod: "POST",
4155		HTTPPath:   "/",
4156	}
4157
4158	if input == nil {
4159		input = &StartKeyPhrasesDetectionJobInput{}
4160	}
4161
4162	output = &StartKeyPhrasesDetectionJobOutput{}
4163	req = c.newRequest(op, input, output)
4164	return
4165}
4166
4167// StartKeyPhrasesDetectionJob API operation for Amazon Comprehend.
4168//
4169// Starts an asynchronous key phrase detection job for a collection of documents.
4170// Use the operation to track the status of a job.
4171//
4172// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
4173// with awserr.Error's Code and Message methods to get detailed information about
4174// the error.
4175//
4176// See the AWS API reference guide for Amazon Comprehend's
4177// API operation StartKeyPhrasesDetectionJob for usage and error information.
4178//
4179// Returned Error Types:
4180//   * InvalidRequestException
4181//   The request is invalid.
4182//
4183//   * TooManyRequestsException
4184//   The number of requests exceeds the limit. Resubmit your request later.
4185//
4186//   * KmsKeyValidationException
4187//   The KMS customer managed key (CMK) entered cannot be validated. Verify the
4188//   key and re-enter it.
4189//
4190//   * InternalServerException
4191//   An internal server error occurred. Retry your request.
4192//
4193// See also, https://docs.aws.amazon.com/goto/WebAPI/comprehend-2017-11-27/StartKeyPhrasesDetectionJob
4194func (c *Comprehend) StartKeyPhrasesDetectionJob(input *StartKeyPhrasesDetectionJobInput) (*StartKeyPhrasesDetectionJobOutput, error) {
4195	req, out := c.StartKeyPhrasesDetectionJobRequest(input)
4196	return out, req.Send()
4197}
4198
4199// StartKeyPhrasesDetectionJobWithContext is the same as StartKeyPhrasesDetectionJob with the addition of
4200// the ability to pass a context and additional request options.
4201//
4202// See StartKeyPhrasesDetectionJob for details on how to use this API operation.
4203//
4204// The context must be non-nil and will be used for request cancellation. If
4205// the context is nil a panic will occur. In the future the SDK may create
4206// sub-contexts for http.Requests. See https://golang.org/pkg/context/
4207// for more information on using Contexts.
4208func (c *Comprehend) StartKeyPhrasesDetectionJobWithContext(ctx aws.Context, input *StartKeyPhrasesDetectionJobInput, opts ...request.Option) (*StartKeyPhrasesDetectionJobOutput, error) {
4209	req, out := c.StartKeyPhrasesDetectionJobRequest(input)
4210	req.SetContext(ctx)
4211	req.ApplyOptions(opts...)
4212	return out, req.Send()
4213}
4214
4215const opStartSentimentDetectionJob = "StartSentimentDetectionJob"
4216
4217// StartSentimentDetectionJobRequest generates a "aws/request.Request" representing the
4218// client's request for the StartSentimentDetectionJob operation. The "output" return
4219// value will be populated with the request's response once the request completes
4220// successfully.
4221//
4222// Use "Send" method on the returned Request to send the API call to the service.
4223// the "output" return value is not valid until after Send returns without error.
4224//
4225// See StartSentimentDetectionJob for more information on using the StartSentimentDetectionJob
4226// API call, and error handling.
4227//
4228// This method is useful when you want to inject custom logic or configuration
4229// into the SDK's request lifecycle. Such as custom headers, or retry logic.
4230//
4231//
4232//    // Example sending a request using the StartSentimentDetectionJobRequest method.
4233//    req, resp := client.StartSentimentDetectionJobRequest(params)
4234//
4235//    err := req.Send()
4236//    if err == nil { // resp is now filled
4237//        fmt.Println(resp)
4238//    }
4239//
4240// See also, https://docs.aws.amazon.com/goto/WebAPI/comprehend-2017-11-27/StartSentimentDetectionJob
4241func (c *Comprehend) StartSentimentDetectionJobRequest(input *StartSentimentDetectionJobInput) (req *request.Request, output *StartSentimentDetectionJobOutput) {
4242	op := &request.Operation{
4243		Name:       opStartSentimentDetectionJob,
4244		HTTPMethod: "POST",
4245		HTTPPath:   "/",
4246	}
4247
4248	if input == nil {
4249		input = &StartSentimentDetectionJobInput{}
4250	}
4251
4252	output = &StartSentimentDetectionJobOutput{}
4253	req = c.newRequest(op, input, output)
4254	return
4255}
4256
4257// StartSentimentDetectionJob API operation for Amazon Comprehend.
4258//
4259// Starts an asynchronous sentiment detection job for a collection of documents.
4260// use the operation to track the status of a job.
4261//
4262// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
4263// with awserr.Error's Code and Message methods to get detailed information about
4264// the error.
4265//
4266// See the AWS API reference guide for Amazon Comprehend's
4267// API operation StartSentimentDetectionJob for usage and error information.
4268//
4269// Returned Error Types:
4270//   * InvalidRequestException
4271//   The request is invalid.
4272//
4273//   * TooManyRequestsException
4274//   The number of requests exceeds the limit. Resubmit your request later.
4275//
4276//   * KmsKeyValidationException
4277//   The KMS customer managed key (CMK) entered cannot be validated. Verify the
4278//   key and re-enter it.
4279//
4280//   * InternalServerException
4281//   An internal server error occurred. Retry your request.
4282//
4283// See also, https://docs.aws.amazon.com/goto/WebAPI/comprehend-2017-11-27/StartSentimentDetectionJob
4284func (c *Comprehend) StartSentimentDetectionJob(input *StartSentimentDetectionJobInput) (*StartSentimentDetectionJobOutput, error) {
4285	req, out := c.StartSentimentDetectionJobRequest(input)
4286	return out, req.Send()
4287}
4288
4289// StartSentimentDetectionJobWithContext is the same as StartSentimentDetectionJob with the addition of
4290// the ability to pass a context and additional request options.
4291//
4292// See StartSentimentDetectionJob for details on how to use this API operation.
4293//
4294// The context must be non-nil and will be used for request cancellation. If
4295// the context is nil a panic will occur. In the future the SDK may create
4296// sub-contexts for http.Requests. See https://golang.org/pkg/context/
4297// for more information on using Contexts.
4298func (c *Comprehend) StartSentimentDetectionJobWithContext(ctx aws.Context, input *StartSentimentDetectionJobInput, opts ...request.Option) (*StartSentimentDetectionJobOutput, error) {
4299	req, out := c.StartSentimentDetectionJobRequest(input)
4300	req.SetContext(ctx)
4301	req.ApplyOptions(opts...)
4302	return out, req.Send()
4303}
4304
4305const opStartTopicsDetectionJob = "StartTopicsDetectionJob"
4306
4307// StartTopicsDetectionJobRequest generates a "aws/request.Request" representing the
4308// client's request for the StartTopicsDetectionJob operation. The "output" return
4309// value will be populated with the request's response once the request completes
4310// successfully.
4311//
4312// Use "Send" method on the returned Request to send the API call to the service.
4313// the "output" return value is not valid until after Send returns without error.
4314//
4315// See StartTopicsDetectionJob for more information on using the StartTopicsDetectionJob
4316// API call, and error handling.
4317//
4318// This method is useful when you want to inject custom logic or configuration
4319// into the SDK's request lifecycle. Such as custom headers, or retry logic.
4320//
4321//
4322//    // Example sending a request using the StartTopicsDetectionJobRequest method.
4323//    req, resp := client.StartTopicsDetectionJobRequest(params)
4324//
4325//    err := req.Send()
4326//    if err == nil { // resp is now filled
4327//        fmt.Println(resp)
4328//    }
4329//
4330// See also, https://docs.aws.amazon.com/goto/WebAPI/comprehend-2017-11-27/StartTopicsDetectionJob
4331func (c *Comprehend) StartTopicsDetectionJobRequest(input *StartTopicsDetectionJobInput) (req *request.Request, output *StartTopicsDetectionJobOutput) {
4332	op := &request.Operation{
4333		Name:       opStartTopicsDetectionJob,
4334		HTTPMethod: "POST",
4335		HTTPPath:   "/",
4336	}
4337
4338	if input == nil {
4339		input = &StartTopicsDetectionJobInput{}
4340	}
4341
4342	output = &StartTopicsDetectionJobOutput{}
4343	req = c.newRequest(op, input, output)
4344	return
4345}
4346
4347// StartTopicsDetectionJob API operation for Amazon Comprehend.
4348//
4349// Starts an asynchronous topic detection job. Use the DescribeTopicDetectionJob
4350// operation to track the status of a job.
4351//
4352// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
4353// with awserr.Error's Code and Message methods to get detailed information about
4354// the error.
4355//
4356// See the AWS API reference guide for Amazon Comprehend's
4357// API operation StartTopicsDetectionJob for usage and error information.
4358//
4359// Returned Error Types:
4360//   * InvalidRequestException
4361//   The request is invalid.
4362//
4363//   * TooManyRequestsException
4364//   The number of requests exceeds the limit. Resubmit your request later.
4365//
4366//   * KmsKeyValidationException
4367//   The KMS customer managed key (CMK) entered cannot be validated. Verify the
4368//   key and re-enter it.
4369//
4370//   * InternalServerException
4371//   An internal server error occurred. Retry your request.
4372//
4373// See also, https://docs.aws.amazon.com/goto/WebAPI/comprehend-2017-11-27/StartTopicsDetectionJob
4374func (c *Comprehend) StartTopicsDetectionJob(input *StartTopicsDetectionJobInput) (*StartTopicsDetectionJobOutput, error) {
4375	req, out := c.StartTopicsDetectionJobRequest(input)
4376	return out, req.Send()
4377}
4378
4379// StartTopicsDetectionJobWithContext is the same as StartTopicsDetectionJob with the addition of
4380// the ability to pass a context and additional request options.
4381//
4382// See StartTopicsDetectionJob for details on how to use this API operation.
4383//
4384// The context must be non-nil and will be used for request cancellation. If
4385// the context is nil a panic will occur. In the future the SDK may create
4386// sub-contexts for http.Requests. See https://golang.org/pkg/context/
4387// for more information on using Contexts.
4388func (c *Comprehend) StartTopicsDetectionJobWithContext(ctx aws.Context, input *StartTopicsDetectionJobInput, opts ...request.Option) (*StartTopicsDetectionJobOutput, error) {
4389	req, out := c.StartTopicsDetectionJobRequest(input)
4390	req.SetContext(ctx)
4391	req.ApplyOptions(opts...)
4392	return out, req.Send()
4393}
4394
4395const opStopDominantLanguageDetectionJob = "StopDominantLanguageDetectionJob"
4396
4397// StopDominantLanguageDetectionJobRequest generates a "aws/request.Request" representing the
4398// client's request for the StopDominantLanguageDetectionJob operation. The "output" return
4399// value will be populated with the request's response once the request completes
4400// successfully.
4401//
4402// Use "Send" method on the returned Request to send the API call to the service.
4403// the "output" return value is not valid until after Send returns without error.
4404//
4405// See StopDominantLanguageDetectionJob for more information on using the StopDominantLanguageDetectionJob
4406// API call, and error handling.
4407//
4408// This method is useful when you want to inject custom logic or configuration
4409// into the SDK's request lifecycle. Such as custom headers, or retry logic.
4410//
4411//
4412//    // Example sending a request using the StopDominantLanguageDetectionJobRequest method.
4413//    req, resp := client.StopDominantLanguageDetectionJobRequest(params)
4414//
4415//    err := req.Send()
4416//    if err == nil { // resp is now filled
4417//        fmt.Println(resp)
4418//    }
4419//
4420// See also, https://docs.aws.amazon.com/goto/WebAPI/comprehend-2017-11-27/StopDominantLanguageDetectionJob
4421func (c *Comprehend) StopDominantLanguageDetectionJobRequest(input *StopDominantLanguageDetectionJobInput) (req *request.Request, output *StopDominantLanguageDetectionJobOutput) {
4422	op := &request.Operation{
4423		Name:       opStopDominantLanguageDetectionJob,
4424		HTTPMethod: "POST",
4425		HTTPPath:   "/",
4426	}
4427
4428	if input == nil {
4429		input = &StopDominantLanguageDetectionJobInput{}
4430	}
4431
4432	output = &StopDominantLanguageDetectionJobOutput{}
4433	req = c.newRequest(op, input, output)
4434	return
4435}
4436
4437// StopDominantLanguageDetectionJob API operation for Amazon Comprehend.
4438//
4439// Stops a dominant language detection job in progress.
4440//
4441// If the job state is IN_PROGRESS the job is marked for termination and put
4442// into the STOP_REQUESTED state. If the job completes before it can be stopped,
4443// it is put into the COMPLETED state; otherwise the job is stopped and put
4444// into the STOPPED state.
4445//
4446// If the job is in the COMPLETED or FAILED state when you call the StopDominantLanguageDetectionJob
4447// operation, the operation returns a 400 Internal Request Exception.
4448//
4449// When a job is stopped, any documents already processed are written to the
4450// output location.
4451//
4452// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
4453// with awserr.Error's Code and Message methods to get detailed information about
4454// the error.
4455//
4456// See the AWS API reference guide for Amazon Comprehend's
4457// API operation StopDominantLanguageDetectionJob for usage and error information.
4458//
4459// Returned Error Types:
4460//   * InvalidRequestException
4461//   The request is invalid.
4462//
4463//   * JobNotFoundException
4464//   The specified job was not found. Check the job ID and try again.
4465//
4466//   * InternalServerException
4467//   An internal server error occurred. Retry your request.
4468//
4469// See also, https://docs.aws.amazon.com/goto/WebAPI/comprehend-2017-11-27/StopDominantLanguageDetectionJob
4470func (c *Comprehend) StopDominantLanguageDetectionJob(input *StopDominantLanguageDetectionJobInput) (*StopDominantLanguageDetectionJobOutput, error) {
4471	req, out := c.StopDominantLanguageDetectionJobRequest(input)
4472	return out, req.Send()
4473}
4474
4475// StopDominantLanguageDetectionJobWithContext is the same as StopDominantLanguageDetectionJob with the addition of
4476// the ability to pass a context and additional request options.
4477//
4478// See StopDominantLanguageDetectionJob for details on how to use this API operation.
4479//
4480// The context must be non-nil and will be used for request cancellation. If
4481// the context is nil a panic will occur. In the future the SDK may create
4482// sub-contexts for http.Requests. See https://golang.org/pkg/context/
4483// for more information on using Contexts.
4484func (c *Comprehend) StopDominantLanguageDetectionJobWithContext(ctx aws.Context, input *StopDominantLanguageDetectionJobInput, opts ...request.Option) (*StopDominantLanguageDetectionJobOutput, error) {
4485	req, out := c.StopDominantLanguageDetectionJobRequest(input)
4486	req.SetContext(ctx)
4487	req.ApplyOptions(opts...)
4488	return out, req.Send()
4489}
4490
4491const opStopEntitiesDetectionJob = "StopEntitiesDetectionJob"
4492
4493// StopEntitiesDetectionJobRequest generates a "aws/request.Request" representing the
4494// client's request for the StopEntitiesDetectionJob operation. The "output" return
4495// value will be populated with the request's response once the request completes
4496// successfully.
4497//
4498// Use "Send" method on the returned Request to send the API call to the service.
4499// the "output" return value is not valid until after Send returns without error.
4500//
4501// See StopEntitiesDetectionJob for more information on using the StopEntitiesDetectionJob
4502// API call, and error handling.
4503//
4504// This method is useful when you want to inject custom logic or configuration
4505// into the SDK's request lifecycle. Such as custom headers, or retry logic.
4506//
4507//
4508//    // Example sending a request using the StopEntitiesDetectionJobRequest method.
4509//    req, resp := client.StopEntitiesDetectionJobRequest(params)
4510//
4511//    err := req.Send()
4512//    if err == nil { // resp is now filled
4513//        fmt.Println(resp)
4514//    }
4515//
4516// See also, https://docs.aws.amazon.com/goto/WebAPI/comprehend-2017-11-27/StopEntitiesDetectionJob
4517func (c *Comprehend) StopEntitiesDetectionJobRequest(input *StopEntitiesDetectionJobInput) (req *request.Request, output *StopEntitiesDetectionJobOutput) {
4518	op := &request.Operation{
4519		Name:       opStopEntitiesDetectionJob,
4520		HTTPMethod: "POST",
4521		HTTPPath:   "/",
4522	}
4523
4524	if input == nil {
4525		input = &StopEntitiesDetectionJobInput{}
4526	}
4527
4528	output = &StopEntitiesDetectionJobOutput{}
4529	req = c.newRequest(op, input, output)
4530	return
4531}
4532
4533// StopEntitiesDetectionJob API operation for Amazon Comprehend.
4534//
4535// Stops an entities detection job in progress.
4536//
4537// If the job state is IN_PROGRESS the job is marked for termination and put
4538// into the STOP_REQUESTED state. If the job completes before it can be stopped,
4539// it is put into the COMPLETED state; otherwise the job is stopped and put
4540// into the STOPPED state.
4541//
4542// If the job is in the COMPLETED or FAILED state when you call the StopDominantLanguageDetectionJob
4543// operation, the operation returns a 400 Internal Request Exception.
4544//
4545// When a job is stopped, any documents already processed are written to the
4546// output location.
4547//
4548// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
4549// with awserr.Error's Code and Message methods to get detailed information about
4550// the error.
4551//
4552// See the AWS API reference guide for Amazon Comprehend's
4553// API operation StopEntitiesDetectionJob for usage and error information.
4554//
4555// Returned Error Types:
4556//   * InvalidRequestException
4557//   The request is invalid.
4558//
4559//   * JobNotFoundException
4560//   The specified job was not found. Check the job ID and try again.
4561//
4562//   * InternalServerException
4563//   An internal server error occurred. Retry your request.
4564//
4565// See also, https://docs.aws.amazon.com/goto/WebAPI/comprehend-2017-11-27/StopEntitiesDetectionJob
4566func (c *Comprehend) StopEntitiesDetectionJob(input *StopEntitiesDetectionJobInput) (*StopEntitiesDetectionJobOutput, error) {
4567	req, out := c.StopEntitiesDetectionJobRequest(input)
4568	return out, req.Send()
4569}
4570
4571// StopEntitiesDetectionJobWithContext is the same as StopEntitiesDetectionJob with the addition of
4572// the ability to pass a context and additional request options.
4573//
4574// See StopEntitiesDetectionJob for details on how to use this API operation.
4575//
4576// The context must be non-nil and will be used for request cancellation. If
4577// the context is nil a panic will occur. In the future the SDK may create
4578// sub-contexts for http.Requests. See https://golang.org/pkg/context/
4579// for more information on using Contexts.
4580func (c *Comprehend) StopEntitiesDetectionJobWithContext(ctx aws.Context, input *StopEntitiesDetectionJobInput, opts ...request.Option) (*StopEntitiesDetectionJobOutput, error) {
4581	req, out := c.StopEntitiesDetectionJobRequest(input)
4582	req.SetContext(ctx)
4583	req.ApplyOptions(opts...)
4584	return out, req.Send()
4585}
4586
4587const opStopKeyPhrasesDetectionJob = "StopKeyPhrasesDetectionJob"
4588
4589// StopKeyPhrasesDetectionJobRequest generates a "aws/request.Request" representing the
4590// client's request for the StopKeyPhrasesDetectionJob operation. The "output" return
4591// value will be populated with the request's response once the request completes
4592// successfully.
4593//
4594// Use "Send" method on the returned Request to send the API call to the service.
4595// the "output" return value is not valid until after Send returns without error.
4596//
4597// See StopKeyPhrasesDetectionJob for more information on using the StopKeyPhrasesDetectionJob
4598// API call, and error handling.
4599//
4600// This method is useful when you want to inject custom logic or configuration
4601// into the SDK's request lifecycle. Such as custom headers, or retry logic.
4602//
4603//
4604//    // Example sending a request using the StopKeyPhrasesDetectionJobRequest method.
4605//    req, resp := client.StopKeyPhrasesDetectionJobRequest(params)
4606//
4607//    err := req.Send()
4608//    if err == nil { // resp is now filled
4609//        fmt.Println(resp)
4610//    }
4611//
4612// See also, https://docs.aws.amazon.com/goto/WebAPI/comprehend-2017-11-27/StopKeyPhrasesDetectionJob
4613func (c *Comprehend) StopKeyPhrasesDetectionJobRequest(input *StopKeyPhrasesDetectionJobInput) (req *request.Request, output *StopKeyPhrasesDetectionJobOutput) {
4614	op := &request.Operation{
4615		Name:       opStopKeyPhrasesDetectionJob,
4616		HTTPMethod: "POST",
4617		HTTPPath:   "/",
4618	}
4619
4620	if input == nil {
4621		input = &StopKeyPhrasesDetectionJobInput{}
4622	}
4623
4624	output = &StopKeyPhrasesDetectionJobOutput{}
4625	req = c.newRequest(op, input, output)
4626	return
4627}
4628
4629// StopKeyPhrasesDetectionJob API operation for Amazon Comprehend.
4630//
4631// Stops a key phrases detection job in progress.
4632//
4633// If the job state is IN_PROGRESS the job is marked for termination and put
4634// into the STOP_REQUESTED state. If the job completes before it can be stopped,
4635// it is put into the COMPLETED state; otherwise the job is stopped and put
4636// into the STOPPED state.
4637//
4638// If the job is in the COMPLETED or FAILED state when you call the StopDominantLanguageDetectionJob
4639// operation, the operation returns a 400 Internal Request Exception.
4640//
4641// When a job is stopped, any documents already processed are written to the
4642// output location.
4643//
4644// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
4645// with awserr.Error's Code and Message methods to get detailed information about
4646// the error.
4647//
4648// See the AWS API reference guide for Amazon Comprehend's
4649// API operation StopKeyPhrasesDetectionJob for usage and error information.
4650//
4651// Returned Error Types:
4652//   * InvalidRequestException
4653//   The request is invalid.
4654//
4655//   * JobNotFoundException
4656//   The specified job was not found. Check the job ID and try again.
4657//
4658//   * InternalServerException
4659//   An internal server error occurred. Retry your request.
4660//
4661// See also, https://docs.aws.amazon.com/goto/WebAPI/comprehend-2017-11-27/StopKeyPhrasesDetectionJob
4662func (c *Comprehend) StopKeyPhrasesDetectionJob(input *StopKeyPhrasesDetectionJobInput) (*StopKeyPhrasesDetectionJobOutput, error) {
4663	req, out := c.StopKeyPhrasesDetectionJobRequest(input)
4664	return out, req.Send()
4665}
4666
4667// StopKeyPhrasesDetectionJobWithContext is the same as StopKeyPhrasesDetectionJob with the addition of
4668// the ability to pass a context and additional request options.
4669//
4670// See StopKeyPhrasesDetectionJob for details on how to use this API operation.
4671//
4672// The context must be non-nil and will be used for request cancellation. If
4673// the context is nil a panic will occur. In the future the SDK may create
4674// sub-contexts for http.Requests. See https://golang.org/pkg/context/
4675// for more information on using Contexts.
4676func (c *Comprehend) StopKeyPhrasesDetectionJobWithContext(ctx aws.Context, input *StopKeyPhrasesDetectionJobInput, opts ...request.Option) (*StopKeyPhrasesDetectionJobOutput, error) {
4677	req, out := c.StopKeyPhrasesDetectionJobRequest(input)
4678	req.SetContext(ctx)
4679	req.ApplyOptions(opts...)
4680	return out, req.Send()
4681}
4682
4683const opStopSentimentDetectionJob = "StopSentimentDetectionJob"
4684
4685// StopSentimentDetectionJobRequest generates a "aws/request.Request" representing the
4686// client's request for the StopSentimentDetectionJob operation. The "output" return
4687// value will be populated with the request's response once the request completes
4688// successfully.
4689//
4690// Use "Send" method on the returned Request to send the API call to the service.
4691// the "output" return value is not valid until after Send returns without error.
4692//
4693// See StopSentimentDetectionJob for more information on using the StopSentimentDetectionJob
4694// API call, and error handling.
4695//
4696// This method is useful when you want to inject custom logic or configuration
4697// into the SDK's request lifecycle. Such as custom headers, or retry logic.
4698//
4699//
4700//    // Example sending a request using the StopSentimentDetectionJobRequest method.
4701//    req, resp := client.StopSentimentDetectionJobRequest(params)
4702//
4703//    err := req.Send()
4704//    if err == nil { // resp is now filled
4705//        fmt.Println(resp)
4706//    }
4707//
4708// See also, https://docs.aws.amazon.com/goto/WebAPI/comprehend-2017-11-27/StopSentimentDetectionJob
4709func (c *Comprehend) StopSentimentDetectionJobRequest(input *StopSentimentDetectionJobInput) (req *request.Request, output *StopSentimentDetectionJobOutput) {
4710	op := &request.Operation{
4711		Name:       opStopSentimentDetectionJob,
4712		HTTPMethod: "POST",
4713		HTTPPath:   "/",
4714	}
4715
4716	if input == nil {
4717		input = &StopSentimentDetectionJobInput{}
4718	}
4719
4720	output = &StopSentimentDetectionJobOutput{}
4721	req = c.newRequest(op, input, output)
4722	return
4723}
4724
4725// StopSentimentDetectionJob API operation for Amazon Comprehend.
4726//
4727// Stops a sentiment detection job in progress.
4728//
4729// If the job state is IN_PROGRESS the job is marked for termination and put
4730// into the STOP_REQUESTED state. If the job completes before it can be stopped,
4731// it is put into the COMPLETED state; otherwise the job is be stopped and put
4732// into the STOPPED state.
4733//
4734// If the job is in the COMPLETED or FAILED state when you call the StopDominantLanguageDetectionJob
4735// operation, the operation returns a 400 Internal Request Exception.
4736//
4737// When a job is stopped, any documents already processed are written to the
4738// output location.
4739//
4740// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
4741// with awserr.Error's Code and Message methods to get detailed information about
4742// the error.
4743//
4744// See the AWS API reference guide for Amazon Comprehend's
4745// API operation StopSentimentDetectionJob for usage and error information.
4746//
4747// Returned Error Types:
4748//   * InvalidRequestException
4749//   The request is invalid.
4750//
4751//   * JobNotFoundException
4752//   The specified job was not found. Check the job ID and try again.
4753//
4754//   * InternalServerException
4755//   An internal server error occurred. Retry your request.
4756//
4757// See also, https://docs.aws.amazon.com/goto/WebAPI/comprehend-2017-11-27/StopSentimentDetectionJob
4758func (c *Comprehend) StopSentimentDetectionJob(input *StopSentimentDetectionJobInput) (*StopSentimentDetectionJobOutput, error) {
4759	req, out := c.StopSentimentDetectionJobRequest(input)
4760	return out, req.Send()
4761}
4762
4763// StopSentimentDetectionJobWithContext is the same as StopSentimentDetectionJob with the addition of
4764// the ability to pass a context and additional request options.
4765//
4766// See StopSentimentDetectionJob for details on how to use this API operation.
4767//
4768// The context must be non-nil and will be used for request cancellation. If
4769// the context is nil a panic will occur. In the future the SDK may create
4770// sub-contexts for http.Requests. See https://golang.org/pkg/context/
4771// for more information on using Contexts.
4772func (c *Comprehend) StopSentimentDetectionJobWithContext(ctx aws.Context, input *StopSentimentDetectionJobInput, opts ...request.Option) (*StopSentimentDetectionJobOutput, error) {
4773	req, out := c.StopSentimentDetectionJobRequest(input)
4774	req.SetContext(ctx)
4775	req.ApplyOptions(opts...)
4776	return out, req.Send()
4777}
4778
4779const opStopTrainingDocumentClassifier = "StopTrainingDocumentClassifier"
4780
4781// StopTrainingDocumentClassifierRequest generates a "aws/request.Request" representing the
4782// client's request for the StopTrainingDocumentClassifier operation. The "output" return
4783// value will be populated with the request's response once the request completes
4784// successfully.
4785//
4786// Use "Send" method on the returned Request to send the API call to the service.
4787// the "output" return value is not valid until after Send returns without error.
4788//
4789// See StopTrainingDocumentClassifier for more information on using the StopTrainingDocumentClassifier
4790// API call, and error handling.
4791//
4792// This method is useful when you want to inject custom logic or configuration
4793// into the SDK's request lifecycle. Such as custom headers, or retry logic.
4794//
4795//
4796//    // Example sending a request using the StopTrainingDocumentClassifierRequest method.
4797//    req, resp := client.StopTrainingDocumentClassifierRequest(params)
4798//
4799//    err := req.Send()
4800//    if err == nil { // resp is now filled
4801//        fmt.Println(resp)
4802//    }
4803//
4804// See also, https://docs.aws.amazon.com/goto/WebAPI/comprehend-2017-11-27/StopTrainingDocumentClassifier
4805func (c *Comprehend) StopTrainingDocumentClassifierRequest(input *StopTrainingDocumentClassifierInput) (req *request.Request, output *StopTrainingDocumentClassifierOutput) {
4806	op := &request.Operation{
4807		Name:       opStopTrainingDocumentClassifier,
4808		HTTPMethod: "POST",
4809		HTTPPath:   "/",
4810	}
4811
4812	if input == nil {
4813		input = &StopTrainingDocumentClassifierInput{}
4814	}
4815
4816	output = &StopTrainingDocumentClassifierOutput{}
4817	req = c.newRequest(op, input, output)
4818	req.Handlers.Unmarshal.Swap(jsonrpc.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler)
4819	return
4820}
4821
4822// StopTrainingDocumentClassifier API operation for Amazon Comprehend.
4823//
4824// Stops a document classifier training job while in progress.
4825//
4826// If the training job state is TRAINING, the job is marked for termination
4827// and put into the STOP_REQUESTED state. If the training job completes before
4828// it can be stopped, it is put into the TRAINED; otherwise the training job
4829// is stopped and put into the STOPPED state and the service sends back an HTTP
4830// 200 response with an empty HTTP body.
4831//
4832// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
4833// with awserr.Error's Code and Message methods to get detailed information about
4834// the error.
4835//
4836// See the AWS API reference guide for Amazon Comprehend's
4837// API operation StopTrainingDocumentClassifier for usage and error information.
4838//
4839// Returned Error Types:
4840//   * InvalidRequestException
4841//   The request is invalid.
4842//
4843//   * TooManyRequestsException
4844//   The number of requests exceeds the limit. Resubmit your request later.
4845//
4846//   * ResourceNotFoundException
4847//   The specified resource ARN was not found. Check the ARN and try your request
4848//   again.
4849//
4850//   * InternalServerException
4851//   An internal server error occurred. Retry your request.
4852//
4853// See also, https://docs.aws.amazon.com/goto/WebAPI/comprehend-2017-11-27/StopTrainingDocumentClassifier
4854func (c *Comprehend) StopTrainingDocumentClassifier(input *StopTrainingDocumentClassifierInput) (*StopTrainingDocumentClassifierOutput, error) {
4855	req, out := c.StopTrainingDocumentClassifierRequest(input)
4856	return out, req.Send()
4857}
4858
4859// StopTrainingDocumentClassifierWithContext is the same as StopTrainingDocumentClassifier with the addition of
4860// the ability to pass a context and additional request options.
4861//
4862// See StopTrainingDocumentClassifier for details on how to use this API operation.
4863//
4864// The context must be non-nil and will be used for request cancellation. If
4865// the context is nil a panic will occur. In the future the SDK may create
4866// sub-contexts for http.Requests. See https://golang.org/pkg/context/
4867// for more information on using Contexts.
4868func (c *Comprehend) StopTrainingDocumentClassifierWithContext(ctx aws.Context, input *StopTrainingDocumentClassifierInput, opts ...request.Option) (*StopTrainingDocumentClassifierOutput, error) {
4869	req, out := c.StopTrainingDocumentClassifierRequest(input)
4870	req.SetContext(ctx)
4871	req.ApplyOptions(opts...)
4872	return out, req.Send()
4873}
4874
4875const opStopTrainingEntityRecognizer = "StopTrainingEntityRecognizer"
4876
4877// StopTrainingEntityRecognizerRequest generates a "aws/request.Request" representing the
4878// client's request for the StopTrainingEntityRecognizer operation. The "output" return
4879// value will be populated with the request's response once the request completes
4880// successfully.
4881//
4882// Use "Send" method on the returned Request to send the API call to the service.
4883// the "output" return value is not valid until after Send returns without error.
4884//
4885// See StopTrainingEntityRecognizer for more information on using the StopTrainingEntityRecognizer
4886// API call, and error handling.
4887//
4888// This method is useful when you want to inject custom logic or configuration
4889// into the SDK's request lifecycle. Such as custom headers, or retry logic.
4890//
4891//
4892//    // Example sending a request using the StopTrainingEntityRecognizerRequest method.
4893//    req, resp := client.StopTrainingEntityRecognizerRequest(params)
4894//
4895//    err := req.Send()
4896//    if err == nil { // resp is now filled
4897//        fmt.Println(resp)
4898//    }
4899//
4900// See also, https://docs.aws.amazon.com/goto/WebAPI/comprehend-2017-11-27/StopTrainingEntityRecognizer
4901func (c *Comprehend) StopTrainingEntityRecognizerRequest(input *StopTrainingEntityRecognizerInput) (req *request.Request, output *StopTrainingEntityRecognizerOutput) {
4902	op := &request.Operation{
4903		Name:       opStopTrainingEntityRecognizer,
4904		HTTPMethod: "POST",
4905		HTTPPath:   "/",
4906	}
4907
4908	if input == nil {
4909		input = &StopTrainingEntityRecognizerInput{}
4910	}
4911
4912	output = &StopTrainingEntityRecognizerOutput{}
4913	req = c.newRequest(op, input, output)
4914	req.Handlers.Unmarshal.Swap(jsonrpc.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler)
4915	return
4916}
4917
4918// StopTrainingEntityRecognizer API operation for Amazon Comprehend.
4919//
4920// Stops an entity recognizer training job while in progress.
4921//
4922// If the training job state is TRAINING, the job is marked for termination
4923// and put into the STOP_REQUESTED state. If the training job completes before
4924// it can be stopped, it is put into the TRAINED; otherwise the training job
4925// is stopped and putted into the STOPPED state and the service sends back an
4926// HTTP 200 response with an empty HTTP body.
4927//
4928// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
4929// with awserr.Error's Code and Message methods to get detailed information about
4930// the error.
4931//
4932// See the AWS API reference guide for Amazon Comprehend's
4933// API operation StopTrainingEntityRecognizer for usage and error information.
4934//
4935// Returned Error Types:
4936//   * InvalidRequestException
4937//   The request is invalid.
4938//
4939//   * TooManyRequestsException
4940//   The number of requests exceeds the limit. Resubmit your request later.
4941//
4942//   * ResourceNotFoundException
4943//   The specified resource ARN was not found. Check the ARN and try your request
4944//   again.
4945//
4946//   * InternalServerException
4947//   An internal server error occurred. Retry your request.
4948//
4949// See also, https://docs.aws.amazon.com/goto/WebAPI/comprehend-2017-11-27/StopTrainingEntityRecognizer
4950func (c *Comprehend) StopTrainingEntityRecognizer(input *StopTrainingEntityRecognizerInput) (*StopTrainingEntityRecognizerOutput, error) {
4951	req, out := c.StopTrainingEntityRecognizerRequest(input)
4952	return out, req.Send()
4953}
4954
4955// StopTrainingEntityRecognizerWithContext is the same as StopTrainingEntityRecognizer with the addition of
4956// the ability to pass a context and additional request options.
4957//
4958// See StopTrainingEntityRecognizer for details on how to use this API operation.
4959//
4960// The context must be non-nil and will be used for request cancellation. If
4961// the context is nil a panic will occur. In the future the SDK may create
4962// sub-contexts for http.Requests. See https://golang.org/pkg/context/
4963// for more information on using Contexts.
4964func (c *Comprehend) StopTrainingEntityRecognizerWithContext(ctx aws.Context, input *StopTrainingEntityRecognizerInput, opts ...request.Option) (*StopTrainingEntityRecognizerOutput, error) {
4965	req, out := c.StopTrainingEntityRecognizerRequest(input)
4966	req.SetContext(ctx)
4967	req.ApplyOptions(opts...)
4968	return out, req.Send()
4969}
4970
4971const opTagResource = "TagResource"
4972
4973// TagResourceRequest generates a "aws/request.Request" representing the
4974// client's request for the TagResource operation. The "output" return
4975// value will be populated with the request's response once the request completes
4976// successfully.
4977//
4978// Use "Send" method on the returned Request to send the API call to the service.
4979// the "output" return value is not valid until after Send returns without error.
4980//
4981// See TagResource for more information on using the TagResource
4982// API call, and error handling.
4983//
4984// This method is useful when you want to inject custom logic or configuration
4985// into the SDK's request lifecycle. Such as custom headers, or retry logic.
4986//
4987//
4988//    // Example sending a request using the TagResourceRequest method.
4989//    req, resp := client.TagResourceRequest(params)
4990//
4991//    err := req.Send()
4992//    if err == nil { // resp is now filled
4993//        fmt.Println(resp)
4994//    }
4995//
4996// See also, https://docs.aws.amazon.com/goto/WebAPI/comprehend-2017-11-27/TagResource
4997func (c *Comprehend) TagResourceRequest(input *TagResourceInput) (req *request.Request, output *TagResourceOutput) {
4998	op := &request.Operation{
4999		Name:       opTagResource,
5000		HTTPMethod: "POST",
5001		HTTPPath:   "/",
5002	}
5003
5004	if input == nil {
5005		input = &TagResourceInput{}
5006	}
5007
5008	output = &TagResourceOutput{}
5009	req = c.newRequest(op, input, output)
5010	req.Handlers.Unmarshal.Swap(jsonrpc.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler)
5011	return
5012}
5013
5014// TagResource API operation for Amazon Comprehend.
5015//
5016// Associates a specific tag with an Amazon Comprehend resource. A tag is a
5017// key-value pair that adds as a metadata to a resource used by Amazon Comprehend.
5018// For example, a tag with "Sales" as the key might be added to a resource to
5019// indicate its use by the sales department.
5020//
5021// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
5022// with awserr.Error's Code and Message methods to get detailed information about
5023// the error.
5024//
5025// See the AWS API reference guide for Amazon Comprehend's
5026// API operation TagResource for usage and error information.
5027//
5028// Returned Error Types:
5029//   * InvalidRequestException
5030//   The request is invalid.
5031//
5032//   * ConcurrentModificationException
5033//   Concurrent modification of the tags associated with an Amazon Comprehend
5034//   resource is not supported.
5035//
5036//   * ResourceNotFoundException
5037//   The specified resource ARN was not found. Check the ARN and try your request
5038//   again.
5039//
5040//   * TooManyTagsException
5041//   The request contains more tags than can be associated with a resource (50
5042//   tags per resource). The maximum number of tags includes both existing tags
5043//   and those included in your current request.
5044//
5045//   * InternalServerException
5046//   An internal server error occurred. Retry your request.
5047//
5048// See also, https://docs.aws.amazon.com/goto/WebAPI/comprehend-2017-11-27/TagResource
5049func (c *Comprehend) TagResource(input *TagResourceInput) (*TagResourceOutput, error) {
5050	req, out := c.TagResourceRequest(input)
5051	return out, req.Send()
5052}
5053
5054// TagResourceWithContext is the same as TagResource with the addition of
5055// the ability to pass a context and additional request options.
5056//
5057// See TagResource for details on how to use this API operation.
5058//
5059// The context must be non-nil and will be used for request cancellation. If
5060// the context is nil a panic will occur. In the future the SDK may create
5061// sub-contexts for http.Requests. See https://golang.org/pkg/context/
5062// for more information on using Contexts.
5063func (c *Comprehend) TagResourceWithContext(ctx aws.Context, input *TagResourceInput, opts ...request.Option) (*TagResourceOutput, error) {
5064	req, out := c.TagResourceRequest(input)
5065	req.SetContext(ctx)
5066	req.ApplyOptions(opts...)
5067	return out, req.Send()
5068}
5069
5070const opUntagResource = "UntagResource"
5071
5072// UntagResourceRequest generates a "aws/request.Request" representing the
5073// client's request for the UntagResource operation. The "output" return
5074// value will be populated with the request's response once the request completes
5075// successfully.
5076//
5077// Use "Send" method on the returned Request to send the API call to the service.
5078// the "output" return value is not valid until after Send returns without error.
5079//
5080// See UntagResource for more information on using the UntagResource
5081// API call, and error handling.
5082//
5083// This method is useful when you want to inject custom logic or configuration
5084// into the SDK's request lifecycle. Such as custom headers, or retry logic.
5085//
5086//
5087//    // Example sending a request using the UntagResourceRequest method.
5088//    req, resp := client.UntagResourceRequest(params)
5089//
5090//    err := req.Send()
5091//    if err == nil { // resp is now filled
5092//        fmt.Println(resp)
5093//    }
5094//
5095// See also, https://docs.aws.amazon.com/goto/WebAPI/comprehend-2017-11-27/UntagResource
5096func (c *Comprehend) UntagResourceRequest(input *UntagResourceInput) (req *request.Request, output *UntagResourceOutput) {
5097	op := &request.Operation{
5098		Name:       opUntagResource,
5099		HTTPMethod: "POST",
5100		HTTPPath:   "/",
5101	}
5102
5103	if input == nil {
5104		input = &UntagResourceInput{}
5105	}
5106
5107	output = &UntagResourceOutput{}
5108	req = c.newRequest(op, input, output)
5109	req.Handlers.Unmarshal.Swap(jsonrpc.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler)
5110	return
5111}
5112
5113// UntagResource API operation for Amazon Comprehend.
5114//
5115// Removes a specific tag associated with an Amazon Comprehend resource.
5116//
5117// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
5118// with awserr.Error's Code and Message methods to get detailed information about
5119// the error.
5120//
5121// See the AWS API reference guide for Amazon Comprehend's
5122// API operation UntagResource for usage and error information.
5123//
5124// Returned Error Types:
5125//   * TooManyTagKeysException
5126//   The request contains more tag keys than can be associated with a resource
5127//   (50 tag keys per resource).
5128//
5129//   * InvalidRequestException
5130//   The request is invalid.
5131//
5132//   * ConcurrentModificationException
5133//   Concurrent modification of the tags associated with an Amazon Comprehend
5134//   resource is not supported.
5135//
5136//   * ResourceNotFoundException
5137//   The specified resource ARN was not found. Check the ARN and try your request
5138//   again.
5139//
5140//   * InternalServerException
5141//   An internal server error occurred. Retry your request.
5142//
5143// See also, https://docs.aws.amazon.com/goto/WebAPI/comprehend-2017-11-27/UntagResource
5144func (c *Comprehend) UntagResource(input *UntagResourceInput) (*UntagResourceOutput, error) {
5145	req, out := c.UntagResourceRequest(input)
5146	return out, req.Send()
5147}
5148
5149// UntagResourceWithContext is the same as UntagResource with the addition of
5150// the ability to pass a context and additional request options.
5151//
5152// See UntagResource for details on how to use this API operation.
5153//
5154// The context must be non-nil and will be used for request cancellation. If
5155// the context is nil a panic will occur. In the future the SDK may create
5156// sub-contexts for http.Requests. See https://golang.org/pkg/context/
5157// for more information on using Contexts.
5158func (c *Comprehend) UntagResourceWithContext(ctx aws.Context, input *UntagResourceInput, opts ...request.Option) (*UntagResourceOutput, error) {
5159	req, out := c.UntagResourceRequest(input)
5160	req.SetContext(ctx)
5161	req.ApplyOptions(opts...)
5162	return out, req.Send()
5163}
5164
5165const opUpdateEndpoint = "UpdateEndpoint"
5166
5167// UpdateEndpointRequest generates a "aws/request.Request" representing the
5168// client's request for the UpdateEndpoint operation. The "output" return
5169// value will be populated with the request's response once the request completes
5170// successfully.
5171//
5172// Use "Send" method on the returned Request to send the API call to the service.
5173// the "output" return value is not valid until after Send returns without error.
5174//
5175// See UpdateEndpoint for more information on using the UpdateEndpoint
5176// API call, and error handling.
5177//
5178// This method is useful when you want to inject custom logic or configuration
5179// into the SDK's request lifecycle. Such as custom headers, or retry logic.
5180//
5181//
5182//    // Example sending a request using the UpdateEndpointRequest method.
5183//    req, resp := client.UpdateEndpointRequest(params)
5184//
5185//    err := req.Send()
5186//    if err == nil { // resp is now filled
5187//        fmt.Println(resp)
5188//    }
5189//
5190// See also, https://docs.aws.amazon.com/goto/WebAPI/comprehend-2017-11-27/UpdateEndpoint
5191func (c *Comprehend) UpdateEndpointRequest(input *UpdateEndpointInput) (req *request.Request, output *UpdateEndpointOutput) {
5192	op := &request.Operation{
5193		Name:       opUpdateEndpoint,
5194		HTTPMethod: "POST",
5195		HTTPPath:   "/",
5196	}
5197
5198	if input == nil {
5199		input = &UpdateEndpointInput{}
5200	}
5201
5202	output = &UpdateEndpointOutput{}
5203	req = c.newRequest(op, input, output)
5204	req.Handlers.Unmarshal.Swap(jsonrpc.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler)
5205	return
5206}
5207
5208// UpdateEndpoint API operation for Amazon Comprehend.
5209//
5210// Updates information about the specified endpoint.
5211//
5212// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
5213// with awserr.Error's Code and Message methods to get detailed information about
5214// the error.
5215//
5216// See the AWS API reference guide for Amazon Comprehend's
5217// API operation UpdateEndpoint for usage and error information.
5218//
5219// Returned Error Types:
5220//   * InvalidRequestException
5221//   The request is invalid.
5222//
5223//   * TooManyRequestsException
5224//   The number of requests exceeds the limit. Resubmit your request later.
5225//
5226//   * ResourceInUseException
5227//   The specified resource name is already in use. Use a different name and try
5228//   your request again.
5229//
5230//   * ResourceLimitExceededException
5231//   The maximum number of resources per account has been exceeded. Review the
5232//   resources, and then try your request again.
5233//
5234//   * ResourceNotFoundException
5235//   The specified resource ARN was not found. Check the ARN and try your request
5236//   again.
5237//
5238//   * ResourceUnavailableException
5239//   The specified resource is not available. Check the resource and try your
5240//   request again.
5241//
5242//   * InternalServerException
5243//   An internal server error occurred. Retry your request.
5244//
5245// See also, https://docs.aws.amazon.com/goto/WebAPI/comprehend-2017-11-27/UpdateEndpoint
5246func (c *Comprehend) UpdateEndpoint(input *UpdateEndpointInput) (*UpdateEndpointOutput, error) {
5247	req, out := c.UpdateEndpointRequest(input)
5248	return out, req.Send()
5249}
5250
5251// UpdateEndpointWithContext is the same as UpdateEndpoint with the addition of
5252// the ability to pass a context and additional request options.
5253//
5254// See UpdateEndpoint for details on how to use this API operation.
5255//
5256// The context must be non-nil and will be used for request cancellation. If
5257// the context is nil a panic will occur. In the future the SDK may create
5258// sub-contexts for http.Requests. See https://golang.org/pkg/context/
5259// for more information on using Contexts.
5260func (c *Comprehend) UpdateEndpointWithContext(ctx aws.Context, input *UpdateEndpointInput, opts ...request.Option) (*UpdateEndpointOutput, error) {
5261	req, out := c.UpdateEndpointRequest(input)
5262	req.SetContext(ctx)
5263	req.ApplyOptions(opts...)
5264	return out, req.Send()
5265}
5266
5267type BatchDetectDominantLanguageInput struct {
5268	_ struct{} `type:"structure"`
5269
5270	// A list containing the text of the input documents. The list can contain a
5271	// maximum of 25 documents. Each document should contain at least 20 characters
5272	// and must contain fewer than 5,000 bytes of UTF-8 encoded characters.
5273	//
5274	// TextList is a required field
5275	TextList []*string `type:"list" required:"true" sensitive:"true"`
5276}
5277
5278// String returns the string representation
5279func (s BatchDetectDominantLanguageInput) String() string {
5280	return awsutil.Prettify(s)
5281}
5282
5283// GoString returns the string representation
5284func (s BatchDetectDominantLanguageInput) GoString() string {
5285	return s.String()
5286}
5287
5288// Validate inspects the fields of the type to determine if they are valid.
5289func (s *BatchDetectDominantLanguageInput) Validate() error {
5290	invalidParams := request.ErrInvalidParams{Context: "BatchDetectDominantLanguageInput"}
5291	if s.TextList == nil {
5292		invalidParams.Add(request.NewErrParamRequired("TextList"))
5293	}
5294
5295	if invalidParams.Len() > 0 {
5296		return invalidParams
5297	}
5298	return nil
5299}
5300
5301// SetTextList sets the TextList field's value.
5302func (s *BatchDetectDominantLanguageInput) SetTextList(v []*string) *BatchDetectDominantLanguageInput {
5303	s.TextList = v
5304	return s
5305}
5306
5307// The result of calling the operation. The operation returns one object for
5308// each document that is successfully processed by the operation.
5309type BatchDetectDominantLanguageItemResult struct {
5310	_ struct{} `type:"structure"`
5311
5312	// The zero-based index of the document in the input list.
5313	Index *int64 `type:"integer"`
5314
5315	// One or more DominantLanguage objects describing the dominant languages in
5316	// the document.
5317	Languages []*DominantLanguage `type:"list"`
5318}
5319
5320// String returns the string representation
5321func (s BatchDetectDominantLanguageItemResult) String() string {
5322	return awsutil.Prettify(s)
5323}
5324
5325// GoString returns the string representation
5326func (s BatchDetectDominantLanguageItemResult) GoString() string {
5327	return s.String()
5328}
5329
5330// SetIndex sets the Index field's value.
5331func (s *BatchDetectDominantLanguageItemResult) SetIndex(v int64) *BatchDetectDominantLanguageItemResult {
5332	s.Index = &v
5333	return s
5334}
5335
5336// SetLanguages sets the Languages field's value.
5337func (s *BatchDetectDominantLanguageItemResult) SetLanguages(v []*DominantLanguage) *BatchDetectDominantLanguageItemResult {
5338	s.Languages = v
5339	return s
5340}
5341
5342type BatchDetectDominantLanguageOutput struct {
5343	_ struct{} `type:"structure" sensitive:"true"`
5344
5345	// A list containing one object for each document that contained an error. The
5346	// results are sorted in ascending order by the Index field and match the order
5347	// of the documents in the input list. If there are no errors in the batch,
5348	// the ErrorList is empty.
5349	//
5350	// ErrorList is a required field
5351	ErrorList []*BatchItemError `type:"list" required:"true"`
5352
5353	// A list of objects containing the results of the operation. The results are
5354	// sorted in ascending order by the Index field and match the order of the documents
5355	// in the input list. If all of the documents contain an error, the ResultList
5356	// is empty.
5357	//
5358	// ResultList is a required field
5359	ResultList []*BatchDetectDominantLanguageItemResult `type:"list" required:"true"`
5360}
5361
5362// String returns the string representation
5363func (s BatchDetectDominantLanguageOutput) String() string {
5364	return awsutil.Prettify(s)
5365}
5366
5367// GoString returns the string representation
5368func (s BatchDetectDominantLanguageOutput) GoString() string {
5369	return s.String()
5370}
5371
5372// SetErrorList sets the ErrorList field's value.
5373func (s *BatchDetectDominantLanguageOutput) SetErrorList(v []*BatchItemError) *BatchDetectDominantLanguageOutput {
5374	s.ErrorList = v
5375	return s
5376}
5377
5378// SetResultList sets the ResultList field's value.
5379func (s *BatchDetectDominantLanguageOutput) SetResultList(v []*BatchDetectDominantLanguageItemResult) *BatchDetectDominantLanguageOutput {
5380	s.ResultList = v
5381	return s
5382}
5383
5384type BatchDetectEntitiesInput struct {
5385	_ struct{} `type:"structure"`
5386
5387	// The language of the input documents. You can specify any of the primary languages
5388	// supported by Amazon Comprehend. All documents must be in the same language.
5389	//
5390	// LanguageCode is a required field
5391	LanguageCode *string `type:"string" required:"true" enum:"LanguageCode"`
5392
5393	// A list containing the text of the input documents. The list can contain a
5394	// maximum of 25 documents. Each document must contain fewer than 5,000 bytes
5395	// of UTF-8 encoded characters.
5396	//
5397	// TextList is a required field
5398	TextList []*string `type:"list" required:"true" sensitive:"true"`
5399}
5400
5401// String returns the string representation
5402func (s BatchDetectEntitiesInput) String() string {
5403	return awsutil.Prettify(s)
5404}
5405
5406// GoString returns the string representation
5407func (s BatchDetectEntitiesInput) GoString() string {
5408	return s.String()
5409}
5410
5411// Validate inspects the fields of the type to determine if they are valid.
5412func (s *BatchDetectEntitiesInput) Validate() error {
5413	invalidParams := request.ErrInvalidParams{Context: "BatchDetectEntitiesInput"}
5414	if s.LanguageCode == nil {
5415		invalidParams.Add(request.NewErrParamRequired("LanguageCode"))
5416	}
5417	if s.TextList == nil {
5418		invalidParams.Add(request.NewErrParamRequired("TextList"))
5419	}
5420
5421	if invalidParams.Len() > 0 {
5422		return invalidParams
5423	}
5424	return nil
5425}
5426
5427// SetLanguageCode sets the LanguageCode field's value.
5428func (s *BatchDetectEntitiesInput) SetLanguageCode(v string) *BatchDetectEntitiesInput {
5429	s.LanguageCode = &v
5430	return s
5431}
5432
5433// SetTextList sets the TextList field's value.
5434func (s *BatchDetectEntitiesInput) SetTextList(v []*string) *BatchDetectEntitiesInput {
5435	s.TextList = v
5436	return s
5437}
5438
5439// The result of calling the operation. The operation returns one object for
5440// each document that is successfully processed by the operation.
5441type BatchDetectEntitiesItemResult struct {
5442	_ struct{} `type:"structure"`
5443
5444	// One or more Entity objects, one for each entity detected in the document.
5445	Entities []*Entity `type:"list"`
5446
5447	// The zero-based index of the document in the input list.
5448	Index *int64 `type:"integer"`
5449}
5450
5451// String returns the string representation
5452func (s BatchDetectEntitiesItemResult) String() string {
5453	return awsutil.Prettify(s)
5454}
5455
5456// GoString returns the string representation
5457func (s BatchDetectEntitiesItemResult) GoString() string {
5458	return s.String()
5459}
5460
5461// SetEntities sets the Entities field's value.
5462func (s *BatchDetectEntitiesItemResult) SetEntities(v []*Entity) *BatchDetectEntitiesItemResult {
5463	s.Entities = v
5464	return s
5465}
5466
5467// SetIndex sets the Index field's value.
5468func (s *BatchDetectEntitiesItemResult) SetIndex(v int64) *BatchDetectEntitiesItemResult {
5469	s.Index = &v
5470	return s
5471}
5472
5473type BatchDetectEntitiesOutput struct {
5474	_ struct{} `type:"structure" sensitive:"true"`
5475
5476	// A list containing one object for each document that contained an error. The
5477	// results are sorted in ascending order by the Index field and match the order
5478	// of the documents in the input list. If there are no errors in the batch,
5479	// the ErrorList is empty.
5480	//
5481	// ErrorList is a required field
5482	ErrorList []*BatchItemError `type:"list" required:"true"`
5483
5484	// A list of objects containing the results of the operation. The results are
5485	// sorted in ascending order by the Index field and match the order of the documents
5486	// in the input list. If all of the documents contain an error, the ResultList
5487	// is empty.
5488	//
5489	// ResultList is a required field
5490	ResultList []*BatchDetectEntitiesItemResult `type:"list" required:"true"`
5491}
5492
5493// String returns the string representation
5494func (s BatchDetectEntitiesOutput) String() string {
5495	return awsutil.Prettify(s)
5496}
5497
5498// GoString returns the string representation
5499func (s BatchDetectEntitiesOutput) GoString() string {
5500	return s.String()
5501}
5502
5503// SetErrorList sets the ErrorList field's value.
5504func (s *BatchDetectEntitiesOutput) SetErrorList(v []*BatchItemError) *BatchDetectEntitiesOutput {
5505	s.ErrorList = v
5506	return s
5507}
5508
5509// SetResultList sets the ResultList field's value.
5510func (s *BatchDetectEntitiesOutput) SetResultList(v []*BatchDetectEntitiesItemResult) *BatchDetectEntitiesOutput {
5511	s.ResultList = v
5512	return s
5513}
5514
5515type BatchDetectKeyPhrasesInput struct {
5516	_ struct{} `type:"structure"`
5517
5518	// The language of the input documents. You can specify any of the primary languages
5519	// supported by Amazon Comprehend. All documents must be in the same language.
5520	//
5521	// LanguageCode is a required field
5522	LanguageCode *string `type:"string" required:"true" enum:"LanguageCode"`
5523
5524	// A list containing the text of the input documents. The list can contain a
5525	// maximum of 25 documents. Each document must contain fewer that 5,000 bytes
5526	// of UTF-8 encoded characters.
5527	//
5528	// TextList is a required field
5529	TextList []*string `type:"list" required:"true" sensitive:"true"`
5530}
5531
5532// String returns the string representation
5533func (s BatchDetectKeyPhrasesInput) String() string {
5534	return awsutil.Prettify(s)
5535}
5536
5537// GoString returns the string representation
5538func (s BatchDetectKeyPhrasesInput) GoString() string {
5539	return s.String()
5540}
5541
5542// Validate inspects the fields of the type to determine if they are valid.
5543func (s *BatchDetectKeyPhrasesInput) Validate() error {
5544	invalidParams := request.ErrInvalidParams{Context: "BatchDetectKeyPhrasesInput"}
5545	if s.LanguageCode == nil {
5546		invalidParams.Add(request.NewErrParamRequired("LanguageCode"))
5547	}
5548	if s.TextList == nil {
5549		invalidParams.Add(request.NewErrParamRequired("TextList"))
5550	}
5551
5552	if invalidParams.Len() > 0 {
5553		return invalidParams
5554	}
5555	return nil
5556}
5557
5558// SetLanguageCode sets the LanguageCode field's value.
5559func (s *BatchDetectKeyPhrasesInput) SetLanguageCode(v string) *BatchDetectKeyPhrasesInput {
5560	s.LanguageCode = &v
5561	return s
5562}
5563
5564// SetTextList sets the TextList field's value.
5565func (s *BatchDetectKeyPhrasesInput) SetTextList(v []*string) *BatchDetectKeyPhrasesInput {
5566	s.TextList = v
5567	return s
5568}
5569
5570// The result of calling the operation. The operation returns one object for
5571// each document that is successfully processed by the operation.
5572type BatchDetectKeyPhrasesItemResult struct {
5573	_ struct{} `type:"structure"`
5574
5575	// The zero-based index of the document in the input list.
5576	Index *int64 `type:"integer"`
5577
5578	// One or more KeyPhrase objects, one for each key phrase detected in the document.
5579	KeyPhrases []*KeyPhrase `type:"list"`
5580}
5581
5582// String returns the string representation
5583func (s BatchDetectKeyPhrasesItemResult) String() string {
5584	return awsutil.Prettify(s)
5585}
5586
5587// GoString returns the string representation
5588func (s BatchDetectKeyPhrasesItemResult) GoString() string {
5589	return s.String()
5590}
5591
5592// SetIndex sets the Index field's value.
5593func (s *BatchDetectKeyPhrasesItemResult) SetIndex(v int64) *BatchDetectKeyPhrasesItemResult {
5594	s.Index = &v
5595	return s
5596}
5597
5598// SetKeyPhrases sets the KeyPhrases field's value.
5599func (s *BatchDetectKeyPhrasesItemResult) SetKeyPhrases(v []*KeyPhrase) *BatchDetectKeyPhrasesItemResult {
5600	s.KeyPhrases = v
5601	return s
5602}
5603
5604type BatchDetectKeyPhrasesOutput struct {
5605	_ struct{} `type:"structure" sensitive:"true"`
5606
5607	// A list containing one object for each document that contained an error. The
5608	// results are sorted in ascending order by the Index field and match the order
5609	// of the documents in the input list. If there are no errors in the batch,
5610	// the ErrorList is empty.
5611	//
5612	// ErrorList is a required field
5613	ErrorList []*BatchItemError `type:"list" required:"true"`
5614
5615	// A list of objects containing the results of the operation. The results are
5616	// sorted in ascending order by the Index field and match the order of the documents
5617	// in the input list. If all of the documents contain an error, the ResultList
5618	// is empty.
5619	//
5620	// ResultList is a required field
5621	ResultList []*BatchDetectKeyPhrasesItemResult `type:"list" required:"true"`
5622}
5623
5624// String returns the string representation
5625func (s BatchDetectKeyPhrasesOutput) String() string {
5626	return awsutil.Prettify(s)
5627}
5628
5629// GoString returns the string representation
5630func (s BatchDetectKeyPhrasesOutput) GoString() string {
5631	return s.String()
5632}
5633
5634// SetErrorList sets the ErrorList field's value.
5635func (s *BatchDetectKeyPhrasesOutput) SetErrorList(v []*BatchItemError) *BatchDetectKeyPhrasesOutput {
5636	s.ErrorList = v
5637	return s
5638}
5639
5640// SetResultList sets the ResultList field's value.
5641func (s *BatchDetectKeyPhrasesOutput) SetResultList(v []*BatchDetectKeyPhrasesItemResult) *BatchDetectKeyPhrasesOutput {
5642	s.ResultList = v
5643	return s
5644}
5645
5646type BatchDetectSentimentInput struct {
5647	_ struct{} `type:"structure"`
5648
5649	// The language of the input documents. You can specify any of the primary languages
5650	// supported by Amazon Comprehend. All documents must be in the same language.
5651	//
5652	// LanguageCode is a required field
5653	LanguageCode *string `type:"string" required:"true" enum:"LanguageCode"`
5654
5655	// A list containing the text of the input documents. The list can contain a
5656	// maximum of 25 documents. Each document must contain fewer that 5,000 bytes
5657	// of UTF-8 encoded characters.
5658	//
5659	// TextList is a required field
5660	TextList []*string `type:"list" required:"true" sensitive:"true"`
5661}
5662
5663// String returns the string representation
5664func (s BatchDetectSentimentInput) String() string {
5665	return awsutil.Prettify(s)
5666}
5667
5668// GoString returns the string representation
5669func (s BatchDetectSentimentInput) GoString() string {
5670	return s.String()
5671}
5672
5673// Validate inspects the fields of the type to determine if they are valid.
5674func (s *BatchDetectSentimentInput) Validate() error {
5675	invalidParams := request.ErrInvalidParams{Context: "BatchDetectSentimentInput"}
5676	if s.LanguageCode == nil {
5677		invalidParams.Add(request.NewErrParamRequired("LanguageCode"))
5678	}
5679	if s.TextList == nil {
5680		invalidParams.Add(request.NewErrParamRequired("TextList"))
5681	}
5682
5683	if invalidParams.Len() > 0 {
5684		return invalidParams
5685	}
5686	return nil
5687}
5688
5689// SetLanguageCode sets the LanguageCode field's value.
5690func (s *BatchDetectSentimentInput) SetLanguageCode(v string) *BatchDetectSentimentInput {
5691	s.LanguageCode = &v
5692	return s
5693}
5694
5695// SetTextList sets the TextList field's value.
5696func (s *BatchDetectSentimentInput) SetTextList(v []*string) *BatchDetectSentimentInput {
5697	s.TextList = v
5698	return s
5699}
5700
5701// The result of calling the operation. The operation returns one object for
5702// each document that is successfully processed by the operation.
5703type BatchDetectSentimentItemResult struct {
5704	_ struct{} `type:"structure"`
5705
5706	// The zero-based index of the document in the input list.
5707	Index *int64 `type:"integer"`
5708
5709	// The sentiment detected in the document.
5710	Sentiment *string `type:"string" enum:"SentimentType"`
5711
5712	// The level of confidence that Amazon Comprehend has in the accuracy of its
5713	// sentiment detection.
5714	SentimentScore *SentimentScore `type:"structure"`
5715}
5716
5717// String returns the string representation
5718func (s BatchDetectSentimentItemResult) String() string {
5719	return awsutil.Prettify(s)
5720}
5721
5722// GoString returns the string representation
5723func (s BatchDetectSentimentItemResult) GoString() string {
5724	return s.String()
5725}
5726
5727// SetIndex sets the Index field's value.
5728func (s *BatchDetectSentimentItemResult) SetIndex(v int64) *BatchDetectSentimentItemResult {
5729	s.Index = &v
5730	return s
5731}
5732
5733// SetSentiment sets the Sentiment field's value.
5734func (s *BatchDetectSentimentItemResult) SetSentiment(v string) *BatchDetectSentimentItemResult {
5735	s.Sentiment = &v
5736	return s
5737}
5738
5739// SetSentimentScore sets the SentimentScore field's value.
5740func (s *BatchDetectSentimentItemResult) SetSentimentScore(v *SentimentScore) *BatchDetectSentimentItemResult {
5741	s.SentimentScore = v
5742	return s
5743}
5744
5745type BatchDetectSentimentOutput struct {
5746	_ struct{} `type:"structure" sensitive:"true"`
5747
5748	// A list containing one object for each document that contained an error. The
5749	// results are sorted in ascending order by the Index field and match the order
5750	// of the documents in the input list. If there are no errors in the batch,
5751	// the ErrorList is empty.
5752	//
5753	// ErrorList is a required field
5754	ErrorList []*BatchItemError `type:"list" required:"true"`
5755
5756	// A list of objects containing the results of the operation. The results are
5757	// sorted in ascending order by the Index field and match the order of the documents
5758	// in the input list. If all of the documents contain an error, the ResultList
5759	// is empty.
5760	//
5761	// ResultList is a required field
5762	ResultList []*BatchDetectSentimentItemResult `type:"list" required:"true"`
5763}
5764
5765// String returns the string representation
5766func (s BatchDetectSentimentOutput) String() string {
5767	return awsutil.Prettify(s)
5768}
5769
5770// GoString returns the string representation
5771func (s BatchDetectSentimentOutput) GoString() string {
5772	return s.String()
5773}
5774
5775// SetErrorList sets the ErrorList field's value.
5776func (s *BatchDetectSentimentOutput) SetErrorList(v []*BatchItemError) *BatchDetectSentimentOutput {
5777	s.ErrorList = v
5778	return s
5779}
5780
5781// SetResultList sets the ResultList field's value.
5782func (s *BatchDetectSentimentOutput) SetResultList(v []*BatchDetectSentimentItemResult) *BatchDetectSentimentOutput {
5783	s.ResultList = v
5784	return s
5785}
5786
5787type BatchDetectSyntaxInput struct {
5788	_ struct{} `type:"structure"`
5789
5790	// The language of the input documents. You can specify any of the following
5791	// languages supported by Amazon Comprehend: German ("de"), English ("en"),
5792	// Spanish ("es"), French ("fr"), Italian ("it"), or Portuguese ("pt"). All
5793	// documents must be in the same language.
5794	//
5795	// LanguageCode is a required field
5796	LanguageCode *string `type:"string" required:"true" enum:"SyntaxLanguageCode"`
5797
5798	// A list containing the text of the input documents. The list can contain a
5799	// maximum of 25 documents. Each document must contain fewer that 5,000 bytes
5800	// of UTF-8 encoded characters.
5801	//
5802	// TextList is a required field
5803	TextList []*string `type:"list" required:"true" sensitive:"true"`
5804}
5805
5806// String returns the string representation
5807func (s BatchDetectSyntaxInput) String() string {
5808	return awsutil.Prettify(s)
5809}
5810
5811// GoString returns the string representation
5812func (s BatchDetectSyntaxInput) GoString() string {
5813	return s.String()
5814}
5815
5816// Validate inspects the fields of the type to determine if they are valid.
5817func (s *BatchDetectSyntaxInput) Validate() error {
5818	invalidParams := request.ErrInvalidParams{Context: "BatchDetectSyntaxInput"}
5819	if s.LanguageCode == nil {
5820		invalidParams.Add(request.NewErrParamRequired("LanguageCode"))
5821	}
5822	if s.TextList == nil {
5823		invalidParams.Add(request.NewErrParamRequired("TextList"))
5824	}
5825
5826	if invalidParams.Len() > 0 {
5827		return invalidParams
5828	}
5829	return nil
5830}
5831
5832// SetLanguageCode sets the LanguageCode field's value.
5833func (s *BatchDetectSyntaxInput) SetLanguageCode(v string) *BatchDetectSyntaxInput {
5834	s.LanguageCode = &v
5835	return s
5836}
5837
5838// SetTextList sets the TextList field's value.
5839func (s *BatchDetectSyntaxInput) SetTextList(v []*string) *BatchDetectSyntaxInput {
5840	s.TextList = v
5841	return s
5842}
5843
5844// The result of calling the operation. The operation returns one object that
5845// is successfully processed by the operation.
5846type BatchDetectSyntaxItemResult struct {
5847	_ struct{} `type:"structure"`
5848
5849	// The zero-based index of the document in the input list.
5850	Index *int64 `type:"integer"`
5851
5852	// The syntax tokens for the words in the document, one token for each word.
5853	SyntaxTokens []*SyntaxToken `type:"list"`
5854}
5855
5856// String returns the string representation
5857func (s BatchDetectSyntaxItemResult) String() string {
5858	return awsutil.Prettify(s)
5859}
5860
5861// GoString returns the string representation
5862func (s BatchDetectSyntaxItemResult) GoString() string {
5863	return s.String()
5864}
5865
5866// SetIndex sets the Index field's value.
5867func (s *BatchDetectSyntaxItemResult) SetIndex(v int64) *BatchDetectSyntaxItemResult {
5868	s.Index = &v
5869	return s
5870}
5871
5872// SetSyntaxTokens sets the SyntaxTokens field's value.
5873func (s *BatchDetectSyntaxItemResult) SetSyntaxTokens(v []*SyntaxToken) *BatchDetectSyntaxItemResult {
5874	s.SyntaxTokens = v
5875	return s
5876}
5877
5878type BatchDetectSyntaxOutput struct {
5879	_ struct{} `type:"structure" sensitive:"true"`
5880
5881	// A list containing one object for each document that contained an error. The
5882	// results are sorted in ascending order by the Index field and match the order
5883	// of the documents in the input list. If there are no errors in the batch,
5884	// the ErrorList is empty.
5885	//
5886	// ErrorList is a required field
5887	ErrorList []*BatchItemError `type:"list" required:"true"`
5888
5889	// A list of objects containing the results of the operation. The results are
5890	// sorted in ascending order by the Index field and match the order of the documents
5891	// in the input list. If all of the documents contain an error, the ResultList
5892	// is empty.
5893	//
5894	// ResultList is a required field
5895	ResultList []*BatchDetectSyntaxItemResult `type:"list" required:"true"`
5896}
5897
5898// String returns the string representation
5899func (s BatchDetectSyntaxOutput) String() string {
5900	return awsutil.Prettify(s)
5901}
5902
5903// GoString returns the string representation
5904func (s BatchDetectSyntaxOutput) GoString() string {
5905	return s.String()
5906}
5907
5908// SetErrorList sets the ErrorList field's value.
5909func (s *BatchDetectSyntaxOutput) SetErrorList(v []*BatchItemError) *BatchDetectSyntaxOutput {
5910	s.ErrorList = v
5911	return s
5912}
5913
5914// SetResultList sets the ResultList field's value.
5915func (s *BatchDetectSyntaxOutput) SetResultList(v []*BatchDetectSyntaxItemResult) *BatchDetectSyntaxOutput {
5916	s.ResultList = v
5917	return s
5918}
5919
5920// Describes an error that occurred while processing a document in a batch.
5921// The operation returns on BatchItemError object for each document that contained
5922// an error.
5923type BatchItemError struct {
5924	_ struct{} `type:"structure"`
5925
5926	// The numeric error code of the error.
5927	ErrorCode *string `min:"1" type:"string"`
5928
5929	// A text description of the error.
5930	ErrorMessage *string `min:"1" type:"string"`
5931
5932	// The zero-based index of the document in the input list.
5933	Index *int64 `type:"integer"`
5934}
5935
5936// String returns the string representation
5937func (s BatchItemError) String() string {
5938	return awsutil.Prettify(s)
5939}
5940
5941// GoString returns the string representation
5942func (s BatchItemError) GoString() string {
5943	return s.String()
5944}
5945
5946// SetErrorCode sets the ErrorCode field's value.
5947func (s *BatchItemError) SetErrorCode(v string) *BatchItemError {
5948	s.ErrorCode = &v
5949	return s
5950}
5951
5952// SetErrorMessage sets the ErrorMessage field's value.
5953func (s *BatchItemError) SetErrorMessage(v string) *BatchItemError {
5954	s.ErrorMessage = &v
5955	return s
5956}
5957
5958// SetIndex sets the Index field's value.
5959func (s *BatchItemError) SetIndex(v int64) *BatchItemError {
5960	s.Index = &v
5961	return s
5962}
5963
5964// The number of documents in the request exceeds the limit of 25. Try your
5965// request again with fewer documents.
5966type BatchSizeLimitExceededException struct {
5967	_            struct{}                  `type:"structure"`
5968	RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"`
5969
5970	Message_ *string `locationName:"Message" min:"1" type:"string"`
5971}
5972
5973// String returns the string representation
5974func (s BatchSizeLimitExceededException) String() string {
5975	return awsutil.Prettify(s)
5976}
5977
5978// GoString returns the string representation
5979func (s BatchSizeLimitExceededException) GoString() string {
5980	return s.String()
5981}
5982
5983func newErrorBatchSizeLimitExceededException(v protocol.ResponseMetadata) error {
5984	return &BatchSizeLimitExceededException{
5985		RespMetadata: v,
5986	}
5987}
5988
5989// Code returns the exception type name.
5990func (s *BatchSizeLimitExceededException) Code() string {
5991	return "BatchSizeLimitExceededException"
5992}
5993
5994// Message returns the exception's message.
5995func (s *BatchSizeLimitExceededException) Message() string {
5996	if s.Message_ != nil {
5997		return *s.Message_
5998	}
5999	return ""
6000}
6001
6002// OrigErr always returns nil, satisfies awserr.Error interface.
6003func (s *BatchSizeLimitExceededException) OrigErr() error {
6004	return nil
6005}
6006
6007func (s *BatchSizeLimitExceededException) Error() string {
6008	return fmt.Sprintf("%s: %s", s.Code(), s.Message())
6009}
6010
6011// Status code returns the HTTP status code for the request's response error.
6012func (s *BatchSizeLimitExceededException) StatusCode() int {
6013	return s.RespMetadata.StatusCode
6014}
6015
6016// RequestID returns the service's response RequestID for request.
6017func (s *BatchSizeLimitExceededException) RequestID() string {
6018	return s.RespMetadata.RequestID
6019}
6020
6021// Describes the result metrics for the test data associated with an documentation
6022// classifier.
6023type ClassifierEvaluationMetrics struct {
6024	_ struct{} `type:"structure"`
6025
6026	// The fraction of the labels that were correct recognized. It is computed by
6027	// dividing the number of labels in the test documents that were correctly recognized
6028	// by the total number of labels in the test documents.
6029	Accuracy *float64 `type:"double"`
6030
6031	// A measure of how accurate the classifier results are for the test data. It
6032	// is derived from the Precision and Recall values. The F1Score is the harmonic
6033	// average of the two scores. The highest score is 1, and the worst score is
6034	// 0.
6035	F1Score *float64 `type:"double"`
6036
6037	// Indicates the fraction of labels that are incorrectly predicted. Also seen
6038	// as the fraction of wrong labels compared to the total number of labels. Scores
6039	// closer to zero are better.
6040	HammingLoss *float64 `type:"double"`
6041
6042	// A measure of how accurate the classifier results are for the test data. It
6043	// is a combination of the Micro Precision and Micro Recall values. The Micro
6044	// F1Score is the harmonic mean of the two scores. The highest score is 1, and
6045	// the worst score is 0.
6046	MicroF1Score *float64 `type:"double"`
6047
6048	// A measure of the usefulness of the recognizer results in the test data. High
6049	// precision means that the recognizer returned substantially more relevant
6050	// results than irrelevant ones. Unlike the Precision metric which comes from
6051	// averaging the precision of all available labels, this is based on the overall
6052	// score of all precision scores added together.
6053	MicroPrecision *float64 `type:"double"`
6054
6055	// A measure of how complete the classifier results are for the test data. High
6056	// recall means that the classifier returned most of the relevant results. Specifically,
6057	// this indicates how many of the correct categories in the text that the model
6058	// can predict. It is a percentage of correct categories in the text that can
6059	// found. Instead of averaging the recall scores of all labels (as with Recall),
6060	// micro Recall is based on the overall score of all recall scores added together.
6061	MicroRecall *float64 `type:"double"`
6062
6063	// A measure of the usefulness of the classifier results in the test data. High
6064	// precision means that the classifier returned substantially more relevant
6065	// results than irrelevant ones.
6066	Precision *float64 `type:"double"`
6067
6068	// A measure of how complete the classifier results are for the test data. High
6069	// recall means that the classifier returned most of the relevant results.
6070	Recall *float64 `type:"double"`
6071}
6072
6073// String returns the string representation
6074func (s ClassifierEvaluationMetrics) String() string {
6075	return awsutil.Prettify(s)
6076}
6077
6078// GoString returns the string representation
6079func (s ClassifierEvaluationMetrics) GoString() string {
6080	return s.String()
6081}
6082
6083// SetAccuracy sets the Accuracy field's value.
6084func (s *ClassifierEvaluationMetrics) SetAccuracy(v float64) *ClassifierEvaluationMetrics {
6085	s.Accuracy = &v
6086	return s
6087}
6088
6089// SetF1Score sets the F1Score field's value.
6090func (s *ClassifierEvaluationMetrics) SetF1Score(v float64) *ClassifierEvaluationMetrics {
6091	s.F1Score = &v
6092	return s
6093}
6094
6095// SetHammingLoss sets the HammingLoss field's value.
6096func (s *ClassifierEvaluationMetrics) SetHammingLoss(v float64) *ClassifierEvaluationMetrics {
6097	s.HammingLoss = &v
6098	return s
6099}
6100
6101// SetMicroF1Score sets the MicroF1Score field's value.
6102func (s *ClassifierEvaluationMetrics) SetMicroF1Score(v float64) *ClassifierEvaluationMetrics {
6103	s.MicroF1Score = &v
6104	return s
6105}
6106
6107// SetMicroPrecision sets the MicroPrecision field's value.
6108func (s *ClassifierEvaluationMetrics) SetMicroPrecision(v float64) *ClassifierEvaluationMetrics {
6109	s.MicroPrecision = &v
6110	return s
6111}
6112
6113// SetMicroRecall sets the MicroRecall field's value.
6114func (s *ClassifierEvaluationMetrics) SetMicroRecall(v float64) *ClassifierEvaluationMetrics {
6115	s.MicroRecall = &v
6116	return s
6117}
6118
6119// SetPrecision sets the Precision field's value.
6120func (s *ClassifierEvaluationMetrics) SetPrecision(v float64) *ClassifierEvaluationMetrics {
6121	s.Precision = &v
6122	return s
6123}
6124
6125// SetRecall sets the Recall field's value.
6126func (s *ClassifierEvaluationMetrics) SetRecall(v float64) *ClassifierEvaluationMetrics {
6127	s.Recall = &v
6128	return s
6129}
6130
6131// Provides information about a document classifier.
6132type ClassifierMetadata struct {
6133	_ struct{} `type:"structure" sensitive:"true"`
6134
6135	// Describes the result metrics for the test data associated with an documentation
6136	// classifier.
6137	EvaluationMetrics *ClassifierEvaluationMetrics `type:"structure"`
6138
6139	// The number of labels in the input data.
6140	NumberOfLabels *int64 `type:"integer"`
6141
6142	// The number of documents in the input data that were used to test the classifier.
6143	// Typically this is 10 to 20 percent of the input documents, up to 10,000 documents.
6144	NumberOfTestDocuments *int64 `type:"integer"`
6145
6146	// The number of documents in the input data that were used to train the classifier.
6147	// Typically this is 80 to 90 percent of the input documents.
6148	NumberOfTrainedDocuments *int64 `type:"integer"`
6149}
6150
6151// String returns the string representation
6152func (s ClassifierMetadata) String() string {
6153	return awsutil.Prettify(s)
6154}
6155
6156// GoString returns the string representation
6157func (s ClassifierMetadata) GoString() string {
6158	return s.String()
6159}
6160
6161// SetEvaluationMetrics sets the EvaluationMetrics field's value.
6162func (s *ClassifierMetadata) SetEvaluationMetrics(v *ClassifierEvaluationMetrics) *ClassifierMetadata {
6163	s.EvaluationMetrics = v
6164	return s
6165}
6166
6167// SetNumberOfLabels sets the NumberOfLabels field's value.
6168func (s *ClassifierMetadata) SetNumberOfLabels(v int64) *ClassifierMetadata {
6169	s.NumberOfLabels = &v
6170	return s
6171}
6172
6173// SetNumberOfTestDocuments sets the NumberOfTestDocuments field's value.
6174func (s *ClassifierMetadata) SetNumberOfTestDocuments(v int64) *ClassifierMetadata {
6175	s.NumberOfTestDocuments = &v
6176	return s
6177}
6178
6179// SetNumberOfTrainedDocuments sets the NumberOfTrainedDocuments field's value.
6180func (s *ClassifierMetadata) SetNumberOfTrainedDocuments(v int64) *ClassifierMetadata {
6181	s.NumberOfTrainedDocuments = &v
6182	return s
6183}
6184
6185type ClassifyDocumentInput struct {
6186	_ struct{} `type:"structure"`
6187
6188	// The Amazon Resource Number (ARN) of the endpoint.
6189	//
6190	// EndpointArn is a required field
6191	EndpointArn *string `type:"string" required:"true"`
6192
6193	// The document text to be analyzed.
6194	//
6195	// Text is a required field
6196	Text *string `min:"1" type:"string" required:"true" sensitive:"true"`
6197}
6198
6199// String returns the string representation
6200func (s ClassifyDocumentInput) String() string {
6201	return awsutil.Prettify(s)
6202}
6203
6204// GoString returns the string representation
6205func (s ClassifyDocumentInput) GoString() string {
6206	return s.String()
6207}
6208
6209// Validate inspects the fields of the type to determine if they are valid.
6210func (s *ClassifyDocumentInput) Validate() error {
6211	invalidParams := request.ErrInvalidParams{Context: "ClassifyDocumentInput"}
6212	if s.EndpointArn == nil {
6213		invalidParams.Add(request.NewErrParamRequired("EndpointArn"))
6214	}
6215	if s.Text == nil {
6216		invalidParams.Add(request.NewErrParamRequired("Text"))
6217	}
6218	if s.Text != nil && len(*s.Text) < 1 {
6219		invalidParams.Add(request.NewErrParamMinLen("Text", 1))
6220	}
6221
6222	if invalidParams.Len() > 0 {
6223		return invalidParams
6224	}
6225	return nil
6226}
6227
6228// SetEndpointArn sets the EndpointArn field's value.
6229func (s *ClassifyDocumentInput) SetEndpointArn(v string) *ClassifyDocumentInput {
6230	s.EndpointArn = &v
6231	return s
6232}
6233
6234// SetText sets the Text field's value.
6235func (s *ClassifyDocumentInput) SetText(v string) *ClassifyDocumentInput {
6236	s.Text = &v
6237	return s
6238}
6239
6240type ClassifyDocumentOutput struct {
6241	_ struct{} `type:"structure" sensitive:"true"`
6242
6243	// The classes used by the document being analyzed. These are used for multi-class
6244	// trained models. Individual classes are mutually exclusive and each document
6245	// is expected to have only a single class assigned to it. For example, an animal
6246	// can be a dog or a cat, but not both at the same time.
6247	Classes []*DocumentClass `type:"list"`
6248
6249	// The labels used the document being analyzed. These are used for multi-label
6250	// trained models. Individual labels represent different categories that are
6251	// related in some manner and are not multually exclusive. For example, a movie
6252	// can be just an action movie, or it can be an action movie, a science fiction
6253	// movie, and a comedy, all at the same time.
6254	Labels []*DocumentLabel `type:"list"`
6255}
6256
6257// String returns the string representation
6258func (s ClassifyDocumentOutput) String() string {
6259	return awsutil.Prettify(s)
6260}
6261
6262// GoString returns the string representation
6263func (s ClassifyDocumentOutput) GoString() string {
6264	return s.String()
6265}
6266
6267// SetClasses sets the Classes field's value.
6268func (s *ClassifyDocumentOutput) SetClasses(v []*DocumentClass) *ClassifyDocumentOutput {
6269	s.Classes = v
6270	return s
6271}
6272
6273// SetLabels sets the Labels field's value.
6274func (s *ClassifyDocumentOutput) SetLabels(v []*DocumentLabel) *ClassifyDocumentOutput {
6275	s.Labels = v
6276	return s
6277}
6278
6279// Concurrent modification of the tags associated with an Amazon Comprehend
6280// resource is not supported.
6281type ConcurrentModificationException struct {
6282	_            struct{}                  `type:"structure"`
6283	RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"`
6284
6285	Message_ *string `locationName:"Message" min:"1" type:"string"`
6286}
6287
6288// String returns the string representation
6289func (s ConcurrentModificationException) String() string {
6290	return awsutil.Prettify(s)
6291}
6292
6293// GoString returns the string representation
6294func (s ConcurrentModificationException) GoString() string {
6295	return s.String()
6296}
6297
6298func newErrorConcurrentModificationException(v protocol.ResponseMetadata) error {
6299	return &ConcurrentModificationException{
6300		RespMetadata: v,
6301	}
6302}
6303
6304// Code returns the exception type name.
6305func (s *ConcurrentModificationException) Code() string {
6306	return "ConcurrentModificationException"
6307}
6308
6309// Message returns the exception's message.
6310func (s *ConcurrentModificationException) Message() string {
6311	if s.Message_ != nil {
6312		return *s.Message_
6313	}
6314	return ""
6315}
6316
6317// OrigErr always returns nil, satisfies awserr.Error interface.
6318func (s *ConcurrentModificationException) OrigErr() error {
6319	return nil
6320}
6321
6322func (s *ConcurrentModificationException) Error() string {
6323	return fmt.Sprintf("%s: %s", s.Code(), s.Message())
6324}
6325
6326// Status code returns the HTTP status code for the request's response error.
6327func (s *ConcurrentModificationException) StatusCode() int {
6328	return s.RespMetadata.StatusCode
6329}
6330
6331// RequestID returns the service's response RequestID for request.
6332func (s *ConcurrentModificationException) RequestID() string {
6333	return s.RespMetadata.RequestID
6334}
6335
6336type CreateDocumentClassifierInput struct {
6337	_ struct{} `type:"structure"`
6338
6339	// A unique identifier for the request. If you don't set the client request
6340	// token, Amazon Comprehend generates one.
6341	ClientRequestToken *string `min:"1" type:"string" idempotencyToken:"true"`
6342
6343	// The Amazon Resource Name (ARN) of the AWS Identity and Management (IAM) role
6344	// that grants Amazon Comprehend read access to your input data.
6345	//
6346	// DataAccessRoleArn is a required field
6347	DataAccessRoleArn *string `min:"20" type:"string" required:"true"`
6348
6349	// The name of the document classifier.
6350	//
6351	// DocumentClassifierName is a required field
6352	DocumentClassifierName *string `type:"string" required:"true"`
6353
6354	// Specifies the format and location of the input data for the job.
6355	//
6356	// InputDataConfig is a required field
6357	InputDataConfig *DocumentClassifierInputDataConfig `type:"structure" required:"true"`
6358
6359	// The language of the input documents. You can specify any of the following
6360	// languages supported by Amazon Comprehend: German ("de"), English ("en"),
6361	// Spanish ("es"), French ("fr"), Italian ("it"), or Portuguese ("pt"). All
6362	// documents must be in the same language.
6363	//
6364	// LanguageCode is a required field
6365	LanguageCode *string `type:"string" required:"true" enum:"LanguageCode"`
6366
6367	// Indicates the mode in which the classifier will be trained. The classifier
6368	// can be trained in multi-class mode, which identifies one and only one class
6369	// for each document, or multi-label mode, which identifies one or more labels
6370	// for each document. In multi-label mode, multiple labels for an individual
6371	// document are separated by a delimiter. The default delimiter between labels
6372	// is a pipe (|).
6373	Mode *string `type:"string" enum:"DocumentClassifierMode"`
6374
6375	// Enables the addition of output results configuration parameters for custom
6376	// classifier jobs.
6377	OutputDataConfig *DocumentClassifierOutputDataConfig `type:"structure"`
6378
6379	// Tags to be associated with the document classifier being created. A tag is
6380	// a key-value pair that adds as a metadata to a resource used by Amazon Comprehend.
6381	// For example, a tag with "Sales" as the key might be added to a resource to
6382	// indicate its use by the sales department.
6383	Tags []*Tag `type:"list"`
6384
6385	// ID for the AWS Key Management Service (KMS) key that Amazon Comprehend uses
6386	// to encrypt data on the storage volume attached to the ML compute instance(s)
6387	// that process the analysis job. The VolumeKmsKeyId can be either of the following
6388	// formats:
6389	//
6390	//    * KMS Key ID: "1234abcd-12ab-34cd-56ef-1234567890ab"
6391	//
6392	//    * Amazon Resource Name (ARN) of a KMS Key: "arn:aws:kms:us-west-2:111122223333:key/1234abcd-12ab-34cd-56ef-1234567890ab"
6393	VolumeKmsKeyId *string `type:"string"`
6394
6395	// Configuration parameters for an optional private Virtual Private Cloud (VPC)
6396	// containing the resources you are using for your custom classifier. For more
6397	// information, see Amazon VPC (https://docs.aws.amazon.com/vpc/latest/userguide/what-is-amazon-vpc.html).
6398	VpcConfig *VpcConfig `type:"structure"`
6399}
6400
6401// String returns the string representation
6402func (s CreateDocumentClassifierInput) String() string {
6403	return awsutil.Prettify(s)
6404}
6405
6406// GoString returns the string representation
6407func (s CreateDocumentClassifierInput) GoString() string {
6408	return s.String()
6409}
6410
6411// Validate inspects the fields of the type to determine if they are valid.
6412func (s *CreateDocumentClassifierInput) Validate() error {
6413	invalidParams := request.ErrInvalidParams{Context: "CreateDocumentClassifierInput"}
6414	if s.ClientRequestToken != nil && len(*s.ClientRequestToken) < 1 {
6415		invalidParams.Add(request.NewErrParamMinLen("ClientRequestToken", 1))
6416	}
6417	if s.DataAccessRoleArn == nil {
6418		invalidParams.Add(request.NewErrParamRequired("DataAccessRoleArn"))
6419	}
6420	if s.DataAccessRoleArn != nil && len(*s.DataAccessRoleArn) < 20 {
6421		invalidParams.Add(request.NewErrParamMinLen("DataAccessRoleArn", 20))
6422	}
6423	if s.DocumentClassifierName == nil {
6424		invalidParams.Add(request.NewErrParamRequired("DocumentClassifierName"))
6425	}
6426	if s.InputDataConfig == nil {
6427		invalidParams.Add(request.NewErrParamRequired("InputDataConfig"))
6428	}
6429	if s.LanguageCode == nil {
6430		invalidParams.Add(request.NewErrParamRequired("LanguageCode"))
6431	}
6432	if s.InputDataConfig != nil {
6433		if err := s.InputDataConfig.Validate(); err != nil {
6434			invalidParams.AddNested("InputDataConfig", err.(request.ErrInvalidParams))
6435		}
6436	}
6437	if s.Tags != nil {
6438		for i, v := range s.Tags {
6439			if v == nil {
6440				continue
6441			}
6442			if err := v.Validate(); err != nil {
6443				invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Tags", i), err.(request.ErrInvalidParams))
6444			}
6445		}
6446	}
6447	if s.VpcConfig != nil {
6448		if err := s.VpcConfig.Validate(); err != nil {
6449			invalidParams.AddNested("VpcConfig", err.(request.ErrInvalidParams))
6450		}
6451	}
6452
6453	if invalidParams.Len() > 0 {
6454		return invalidParams
6455	}
6456	return nil
6457}
6458
6459// SetClientRequestToken sets the ClientRequestToken field's value.
6460func (s *CreateDocumentClassifierInput) SetClientRequestToken(v string) *CreateDocumentClassifierInput {
6461	s.ClientRequestToken = &v
6462	return s
6463}
6464
6465// SetDataAccessRoleArn sets the DataAccessRoleArn field's value.
6466func (s *CreateDocumentClassifierInput) SetDataAccessRoleArn(v string) *CreateDocumentClassifierInput {
6467	s.DataAccessRoleArn = &v
6468	return s
6469}
6470
6471// SetDocumentClassifierName sets the DocumentClassifierName field's value.
6472func (s *CreateDocumentClassifierInput) SetDocumentClassifierName(v string) *CreateDocumentClassifierInput {
6473	s.DocumentClassifierName = &v
6474	return s
6475}
6476
6477// SetInputDataConfig sets the InputDataConfig field's value.
6478func (s *CreateDocumentClassifierInput) SetInputDataConfig(v *DocumentClassifierInputDataConfig) *CreateDocumentClassifierInput {
6479	s.InputDataConfig = v
6480	return s
6481}
6482
6483// SetLanguageCode sets the LanguageCode field's value.
6484func (s *CreateDocumentClassifierInput) SetLanguageCode(v string) *CreateDocumentClassifierInput {
6485	s.LanguageCode = &v
6486	return s
6487}
6488
6489// SetMode sets the Mode field's value.
6490func (s *CreateDocumentClassifierInput) SetMode(v string) *CreateDocumentClassifierInput {
6491	s.Mode = &v
6492	return s
6493}
6494
6495// SetOutputDataConfig sets the OutputDataConfig field's value.
6496func (s *CreateDocumentClassifierInput) SetOutputDataConfig(v *DocumentClassifierOutputDataConfig) *CreateDocumentClassifierInput {
6497	s.OutputDataConfig = v
6498	return s
6499}
6500
6501// SetTags sets the Tags field's value.
6502func (s *CreateDocumentClassifierInput) SetTags(v []*Tag) *CreateDocumentClassifierInput {
6503	s.Tags = v
6504	return s
6505}
6506
6507// SetVolumeKmsKeyId sets the VolumeKmsKeyId field's value.
6508func (s *CreateDocumentClassifierInput) SetVolumeKmsKeyId(v string) *CreateDocumentClassifierInput {
6509	s.VolumeKmsKeyId = &v
6510	return s
6511}
6512
6513// SetVpcConfig sets the VpcConfig field's value.
6514func (s *CreateDocumentClassifierInput) SetVpcConfig(v *VpcConfig) *CreateDocumentClassifierInput {
6515	s.VpcConfig = v
6516	return s
6517}
6518
6519type CreateDocumentClassifierOutput struct {
6520	_ struct{} `type:"structure"`
6521
6522	// The Amazon Resource Name (ARN) that identifies the document classifier.
6523	DocumentClassifierArn *string `type:"string"`
6524}
6525
6526// String returns the string representation
6527func (s CreateDocumentClassifierOutput) String() string {
6528	return awsutil.Prettify(s)
6529}
6530
6531// GoString returns the string representation
6532func (s CreateDocumentClassifierOutput) GoString() string {
6533	return s.String()
6534}
6535
6536// SetDocumentClassifierArn sets the DocumentClassifierArn field's value.
6537func (s *CreateDocumentClassifierOutput) SetDocumentClassifierArn(v string) *CreateDocumentClassifierOutput {
6538	s.DocumentClassifierArn = &v
6539	return s
6540}
6541
6542type CreateEndpointInput struct {
6543	_ struct{} `type:"structure"`
6544
6545	// An idempotency token provided by the customer. If this token matches a previous
6546	// endpoint creation request, Amazon Comprehend will not return a ResourceInUseException.
6547	ClientRequestToken *string `min:"1" type:"string" idempotencyToken:"true"`
6548
6549	// The desired number of inference units to be used by the model using this
6550	// endpoint. Each inference unit represents of a throughput of 100 characters
6551	// per second.
6552	//
6553	// DesiredInferenceUnits is a required field
6554	DesiredInferenceUnits *int64 `min:"1" type:"integer" required:"true"`
6555
6556	// This is the descriptive suffix that becomes part of the EndpointArn used
6557	// for all subsequent requests to this resource.
6558	//
6559	// EndpointName is a required field
6560	EndpointName *string `type:"string" required:"true"`
6561
6562	// The Amazon Resource Number (ARN) of the model to which the endpoint will
6563	// be attached.
6564	//
6565	// ModelArn is a required field
6566	ModelArn *string `type:"string" required:"true"`
6567
6568	// Tags associated with the endpoint being created. A tag is a key-value pair
6569	// that adds metadata to the endpoint. For example, a tag with "Sales" as the
6570	// key might be added to an endpoint to indicate its use by the sales department.
6571	Tags []*Tag `type:"list"`
6572}
6573
6574// String returns the string representation
6575func (s CreateEndpointInput) String() string {
6576	return awsutil.Prettify(s)
6577}
6578
6579// GoString returns the string representation
6580func (s CreateEndpointInput) GoString() string {
6581	return s.String()
6582}
6583
6584// Validate inspects the fields of the type to determine if they are valid.
6585func (s *CreateEndpointInput) Validate() error {
6586	invalidParams := request.ErrInvalidParams{Context: "CreateEndpointInput"}
6587	if s.ClientRequestToken != nil && len(*s.ClientRequestToken) < 1 {
6588		invalidParams.Add(request.NewErrParamMinLen("ClientRequestToken", 1))
6589	}
6590	if s.DesiredInferenceUnits == nil {
6591		invalidParams.Add(request.NewErrParamRequired("DesiredInferenceUnits"))
6592	}
6593	if s.DesiredInferenceUnits != nil && *s.DesiredInferenceUnits < 1 {
6594		invalidParams.Add(request.NewErrParamMinValue("DesiredInferenceUnits", 1))
6595	}
6596	if s.EndpointName == nil {
6597		invalidParams.Add(request.NewErrParamRequired("EndpointName"))
6598	}
6599	if s.ModelArn == nil {
6600		invalidParams.Add(request.NewErrParamRequired("ModelArn"))
6601	}
6602	if s.Tags != nil {
6603		for i, v := range s.Tags {
6604			if v == nil {
6605				continue
6606			}
6607			if err := v.Validate(); err != nil {
6608				invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Tags", i), err.(request.ErrInvalidParams))
6609			}
6610		}
6611	}
6612
6613	if invalidParams.Len() > 0 {
6614		return invalidParams
6615	}
6616	return nil
6617}
6618
6619// SetClientRequestToken sets the ClientRequestToken field's value.
6620func (s *CreateEndpointInput) SetClientRequestToken(v string) *CreateEndpointInput {
6621	s.ClientRequestToken = &v
6622	return s
6623}
6624
6625// SetDesiredInferenceUnits sets the DesiredInferenceUnits field's value.
6626func (s *CreateEndpointInput) SetDesiredInferenceUnits(v int64) *CreateEndpointInput {
6627	s.DesiredInferenceUnits = &v
6628	return s
6629}
6630
6631// SetEndpointName sets the EndpointName field's value.
6632func (s *CreateEndpointInput) SetEndpointName(v string) *CreateEndpointInput {
6633	s.EndpointName = &v
6634	return s
6635}
6636
6637// SetModelArn sets the ModelArn field's value.
6638func (s *CreateEndpointInput) SetModelArn(v string) *CreateEndpointInput {
6639	s.ModelArn = &v
6640	return s
6641}
6642
6643// SetTags sets the Tags field's value.
6644func (s *CreateEndpointInput) SetTags(v []*Tag) *CreateEndpointInput {
6645	s.Tags = v
6646	return s
6647}
6648
6649type CreateEndpointOutput struct {
6650	_ struct{} `type:"structure"`
6651
6652	// The Amazon Resource Number (ARN) of the endpoint being created.
6653	EndpointArn *string `type:"string"`
6654}
6655
6656// String returns the string representation
6657func (s CreateEndpointOutput) String() string {
6658	return awsutil.Prettify(s)
6659}
6660
6661// GoString returns the string representation
6662func (s CreateEndpointOutput) GoString() string {
6663	return s.String()
6664}
6665
6666// SetEndpointArn sets the EndpointArn field's value.
6667func (s *CreateEndpointOutput) SetEndpointArn(v string) *CreateEndpointOutput {
6668	s.EndpointArn = &v
6669	return s
6670}
6671
6672type CreateEntityRecognizerInput struct {
6673	_ struct{} `type:"structure"`
6674
6675	// A unique identifier for the request. If you don't set the client request
6676	// token, Amazon Comprehend generates one.
6677	ClientRequestToken *string `min:"1" type:"string" idempotencyToken:"true"`
6678
6679	// The Amazon Resource Name (ARN) of the AWS Identity and Management (IAM) role
6680	// that grants Amazon Comprehend read access to your input data.
6681	//
6682	// DataAccessRoleArn is a required field
6683	DataAccessRoleArn *string `min:"20" type:"string" required:"true"`
6684
6685	// Specifies the format and location of the input data. The S3 bucket containing
6686	// the input data must be located in the same region as the entity recognizer
6687	// being created.
6688	//
6689	// InputDataConfig is a required field
6690	InputDataConfig *EntityRecognizerInputDataConfig `type:"structure" required:"true"`
6691
6692	// The language of the input documents. All documents must be in the same language.
6693	// Only English ("en") is currently supported.
6694	//
6695	// LanguageCode is a required field
6696	LanguageCode *string `type:"string" required:"true" enum:"LanguageCode"`
6697
6698	// The name given to the newly created recognizer. Recognizer names can be a
6699	// maximum of 256 characters. Alphanumeric characters, hyphens (-) and underscores
6700	// (_) are allowed. The name must be unique in the account/region.
6701	//
6702	// RecognizerName is a required field
6703	RecognizerName *string `type:"string" required:"true"`
6704
6705	// Tags to be associated with the entity recognizer being created. A tag is
6706	// a key-value pair that adds as a metadata to a resource used by Amazon Comprehend.
6707	// For example, a tag with "Sales" as the key might be added to a resource to
6708	// indicate its use by the sales department.
6709	Tags []*Tag `type:"list"`
6710
6711	// ID for the AWS Key Management Service (KMS) key that Amazon Comprehend uses
6712	// to encrypt data on the storage volume attached to the ML compute instance(s)
6713	// that process the analysis job. The VolumeKmsKeyId can be either of the following
6714	// formats:
6715	//
6716	//    * KMS Key ID: "1234abcd-12ab-34cd-56ef-1234567890ab"
6717	//
6718	//    * Amazon Resource Name (ARN) of a KMS Key: "arn:aws:kms:us-west-2:111122223333:key/1234abcd-12ab-34cd-56ef-1234567890ab"
6719	VolumeKmsKeyId *string `type:"string"`
6720
6721	// Configuration parameters for an optional private Virtual Private Cloud (VPC)
6722	// containing the resources you are using for your custom entity recognizer.
6723	// For more information, see Amazon VPC (https://docs.aws.amazon.com/vpc/latest/userguide/what-is-amazon-vpc.html).
6724	VpcConfig *VpcConfig `type:"structure"`
6725}
6726
6727// String returns the string representation
6728func (s CreateEntityRecognizerInput) String() string {
6729	return awsutil.Prettify(s)
6730}
6731
6732// GoString returns the string representation
6733func (s CreateEntityRecognizerInput) GoString() string {
6734	return s.String()
6735}
6736
6737// Validate inspects the fields of the type to determine if they are valid.
6738func (s *CreateEntityRecognizerInput) Validate() error {
6739	invalidParams := request.ErrInvalidParams{Context: "CreateEntityRecognizerInput"}
6740	if s.ClientRequestToken != nil && len(*s.ClientRequestToken) < 1 {
6741		invalidParams.Add(request.NewErrParamMinLen("ClientRequestToken", 1))
6742	}
6743	if s.DataAccessRoleArn == nil {
6744		invalidParams.Add(request.NewErrParamRequired("DataAccessRoleArn"))
6745	}
6746	if s.DataAccessRoleArn != nil && len(*s.DataAccessRoleArn) < 20 {
6747		invalidParams.Add(request.NewErrParamMinLen("DataAccessRoleArn", 20))
6748	}
6749	if s.InputDataConfig == nil {
6750		invalidParams.Add(request.NewErrParamRequired("InputDataConfig"))
6751	}
6752	if s.LanguageCode == nil {
6753		invalidParams.Add(request.NewErrParamRequired("LanguageCode"))
6754	}
6755	if s.RecognizerName == nil {
6756		invalidParams.Add(request.NewErrParamRequired("RecognizerName"))
6757	}
6758	if s.InputDataConfig != nil {
6759		if err := s.InputDataConfig.Validate(); err != nil {
6760			invalidParams.AddNested("InputDataConfig", err.(request.ErrInvalidParams))
6761		}
6762	}
6763	if s.Tags != nil {
6764		for i, v := range s.Tags {
6765			if v == nil {
6766				continue
6767			}
6768			if err := v.Validate(); err != nil {
6769				invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Tags", i), err.(request.ErrInvalidParams))
6770			}
6771		}
6772	}
6773	if s.VpcConfig != nil {
6774		if err := s.VpcConfig.Validate(); err != nil {
6775			invalidParams.AddNested("VpcConfig", err.(request.ErrInvalidParams))
6776		}
6777	}
6778
6779	if invalidParams.Len() > 0 {
6780		return invalidParams
6781	}
6782	return nil
6783}
6784
6785// SetClientRequestToken sets the ClientRequestToken field's value.
6786func (s *CreateEntityRecognizerInput) SetClientRequestToken(v string) *CreateEntityRecognizerInput {
6787	s.ClientRequestToken = &v
6788	return s
6789}
6790
6791// SetDataAccessRoleArn sets the DataAccessRoleArn field's value.
6792func (s *CreateEntityRecognizerInput) SetDataAccessRoleArn(v string) *CreateEntityRecognizerInput {
6793	s.DataAccessRoleArn = &v
6794	return s
6795}
6796
6797// SetInputDataConfig sets the InputDataConfig field's value.
6798func (s *CreateEntityRecognizerInput) SetInputDataConfig(v *EntityRecognizerInputDataConfig) *CreateEntityRecognizerInput {
6799	s.InputDataConfig = v
6800	return s
6801}
6802
6803// SetLanguageCode sets the LanguageCode field's value.
6804func (s *CreateEntityRecognizerInput) SetLanguageCode(v string) *CreateEntityRecognizerInput {
6805	s.LanguageCode = &v
6806	return s
6807}
6808
6809// SetRecognizerName sets the RecognizerName field's value.
6810func (s *CreateEntityRecognizerInput) SetRecognizerName(v string) *CreateEntityRecognizerInput {
6811	s.RecognizerName = &v
6812	return s
6813}
6814
6815// SetTags sets the Tags field's value.
6816func (s *CreateEntityRecognizerInput) SetTags(v []*Tag) *CreateEntityRecognizerInput {
6817	s.Tags = v
6818	return s
6819}
6820
6821// SetVolumeKmsKeyId sets the VolumeKmsKeyId field's value.
6822func (s *CreateEntityRecognizerInput) SetVolumeKmsKeyId(v string) *CreateEntityRecognizerInput {
6823	s.VolumeKmsKeyId = &v
6824	return s
6825}
6826
6827// SetVpcConfig sets the VpcConfig field's value.
6828func (s *CreateEntityRecognizerInput) SetVpcConfig(v *VpcConfig) *CreateEntityRecognizerInput {
6829	s.VpcConfig = v
6830	return s
6831}
6832
6833type CreateEntityRecognizerOutput struct {
6834	_ struct{} `type:"structure"`
6835
6836	// The Amazon Resource Name (ARN) that identifies the entity recognizer.
6837	EntityRecognizerArn *string `type:"string"`
6838}
6839
6840// String returns the string representation
6841func (s CreateEntityRecognizerOutput) String() string {
6842	return awsutil.Prettify(s)
6843}
6844
6845// GoString returns the string representation
6846func (s CreateEntityRecognizerOutput) GoString() string {
6847	return s.String()
6848}
6849
6850// SetEntityRecognizerArn sets the EntityRecognizerArn field's value.
6851func (s *CreateEntityRecognizerOutput) SetEntityRecognizerArn(v string) *CreateEntityRecognizerOutput {
6852	s.EntityRecognizerArn = &v
6853	return s
6854}
6855
6856type DeleteDocumentClassifierInput struct {
6857	_ struct{} `type:"structure"`
6858
6859	// The Amazon Resource Name (ARN) that identifies the document classifier.
6860	//
6861	// DocumentClassifierArn is a required field
6862	DocumentClassifierArn *string `type:"string" required:"true"`
6863}
6864
6865// String returns the string representation
6866func (s DeleteDocumentClassifierInput) String() string {
6867	return awsutil.Prettify(s)
6868}
6869
6870// GoString returns the string representation
6871func (s DeleteDocumentClassifierInput) GoString() string {
6872	return s.String()
6873}
6874
6875// Validate inspects the fields of the type to determine if they are valid.
6876func (s *DeleteDocumentClassifierInput) Validate() error {
6877	invalidParams := request.ErrInvalidParams{Context: "DeleteDocumentClassifierInput"}
6878	if s.DocumentClassifierArn == nil {
6879		invalidParams.Add(request.NewErrParamRequired("DocumentClassifierArn"))
6880	}
6881
6882	if invalidParams.Len() > 0 {
6883		return invalidParams
6884	}
6885	return nil
6886}
6887
6888// SetDocumentClassifierArn sets the DocumentClassifierArn field's value.
6889func (s *DeleteDocumentClassifierInput) SetDocumentClassifierArn(v string) *DeleteDocumentClassifierInput {
6890	s.DocumentClassifierArn = &v
6891	return s
6892}
6893
6894type DeleteDocumentClassifierOutput struct {
6895	_ struct{} `type:"structure"`
6896}
6897
6898// String returns the string representation
6899func (s DeleteDocumentClassifierOutput) String() string {
6900	return awsutil.Prettify(s)
6901}
6902
6903// GoString returns the string representation
6904func (s DeleteDocumentClassifierOutput) GoString() string {
6905	return s.String()
6906}
6907
6908type DeleteEndpointInput struct {
6909	_ struct{} `type:"structure"`
6910
6911	// The Amazon Resource Number (ARN) of the endpoint being deleted.
6912	//
6913	// EndpointArn is a required field
6914	EndpointArn *string `type:"string" required:"true"`
6915}
6916
6917// String returns the string representation
6918func (s DeleteEndpointInput) String() string {
6919	return awsutil.Prettify(s)
6920}
6921
6922// GoString returns the string representation
6923func (s DeleteEndpointInput) GoString() string {
6924	return s.String()
6925}
6926
6927// Validate inspects the fields of the type to determine if they are valid.
6928func (s *DeleteEndpointInput) Validate() error {
6929	invalidParams := request.ErrInvalidParams{Context: "DeleteEndpointInput"}
6930	if s.EndpointArn == nil {
6931		invalidParams.Add(request.NewErrParamRequired("EndpointArn"))
6932	}
6933
6934	if invalidParams.Len() > 0 {
6935		return invalidParams
6936	}
6937	return nil
6938}
6939
6940// SetEndpointArn sets the EndpointArn field's value.
6941func (s *DeleteEndpointInput) SetEndpointArn(v string) *DeleteEndpointInput {
6942	s.EndpointArn = &v
6943	return s
6944}
6945
6946type DeleteEndpointOutput struct {
6947	_ struct{} `type:"structure"`
6948}
6949
6950// String returns the string representation
6951func (s DeleteEndpointOutput) String() string {
6952	return awsutil.Prettify(s)
6953}
6954
6955// GoString returns the string representation
6956func (s DeleteEndpointOutput) GoString() string {
6957	return s.String()
6958}
6959
6960type DeleteEntityRecognizerInput struct {
6961	_ struct{} `type:"structure"`
6962
6963	// The Amazon Resource Name (ARN) that identifies the entity recognizer.
6964	//
6965	// EntityRecognizerArn is a required field
6966	EntityRecognizerArn *string `type:"string" required:"true"`
6967}
6968
6969// String returns the string representation
6970func (s DeleteEntityRecognizerInput) String() string {
6971	return awsutil.Prettify(s)
6972}
6973
6974// GoString returns the string representation
6975func (s DeleteEntityRecognizerInput) GoString() string {
6976	return s.String()
6977}
6978
6979// Validate inspects the fields of the type to determine if they are valid.
6980func (s *DeleteEntityRecognizerInput) Validate() error {
6981	invalidParams := request.ErrInvalidParams{Context: "DeleteEntityRecognizerInput"}
6982	if s.EntityRecognizerArn == nil {
6983		invalidParams.Add(request.NewErrParamRequired("EntityRecognizerArn"))
6984	}
6985
6986	if invalidParams.Len() > 0 {
6987		return invalidParams
6988	}
6989	return nil
6990}
6991
6992// SetEntityRecognizerArn sets the EntityRecognizerArn field's value.
6993func (s *DeleteEntityRecognizerInput) SetEntityRecognizerArn(v string) *DeleteEntityRecognizerInput {
6994	s.EntityRecognizerArn = &v
6995	return s
6996}
6997
6998type DeleteEntityRecognizerOutput struct {
6999	_ struct{} `type:"structure"`
7000}
7001
7002// String returns the string representation
7003func (s DeleteEntityRecognizerOutput) String() string {
7004	return awsutil.Prettify(s)
7005}
7006
7007// GoString returns the string representation
7008func (s DeleteEntityRecognizerOutput) GoString() string {
7009	return s.String()
7010}
7011
7012type DescribeDocumentClassificationJobInput struct {
7013	_ struct{} `type:"structure"`
7014
7015	// The identifier that Amazon Comprehend generated for the job. The operation
7016	// returns this identifier in its response.
7017	//
7018	// JobId is a required field
7019	JobId *string `min:"1" type:"string" required:"true"`
7020}
7021
7022// String returns the string representation
7023func (s DescribeDocumentClassificationJobInput) String() string {
7024	return awsutil.Prettify(s)
7025}
7026
7027// GoString returns the string representation
7028func (s DescribeDocumentClassificationJobInput) GoString() string {
7029	return s.String()
7030}
7031
7032// Validate inspects the fields of the type to determine if they are valid.
7033func (s *DescribeDocumentClassificationJobInput) Validate() error {
7034	invalidParams := request.ErrInvalidParams{Context: "DescribeDocumentClassificationJobInput"}
7035	if s.JobId == nil {
7036		invalidParams.Add(request.NewErrParamRequired("JobId"))
7037	}
7038	if s.JobId != nil && len(*s.JobId) < 1 {
7039		invalidParams.Add(request.NewErrParamMinLen("JobId", 1))
7040	}
7041
7042	if invalidParams.Len() > 0 {
7043		return invalidParams
7044	}
7045	return nil
7046}
7047
7048// SetJobId sets the JobId field's value.
7049func (s *DescribeDocumentClassificationJobInput) SetJobId(v string) *DescribeDocumentClassificationJobInput {
7050	s.JobId = &v
7051	return s
7052}
7053
7054type DescribeDocumentClassificationJobOutput struct {
7055	_ struct{} `type:"structure"`
7056
7057	// An object that describes the properties associated with the document classification
7058	// job.
7059	DocumentClassificationJobProperties *DocumentClassificationJobProperties `type:"structure"`
7060}
7061
7062// String returns the string representation
7063func (s DescribeDocumentClassificationJobOutput) String() string {
7064	return awsutil.Prettify(s)
7065}
7066
7067// GoString returns the string representation
7068func (s DescribeDocumentClassificationJobOutput) GoString() string {
7069	return s.String()
7070}
7071
7072// SetDocumentClassificationJobProperties sets the DocumentClassificationJobProperties field's value.
7073func (s *DescribeDocumentClassificationJobOutput) SetDocumentClassificationJobProperties(v *DocumentClassificationJobProperties) *DescribeDocumentClassificationJobOutput {
7074	s.DocumentClassificationJobProperties = v
7075	return s
7076}
7077
7078type DescribeDocumentClassifierInput struct {
7079	_ struct{} `type:"structure"`
7080
7081	// The Amazon Resource Name (ARN) that identifies the document classifier. The
7082	// operation returns this identifier in its response.
7083	//
7084	// DocumentClassifierArn is a required field
7085	DocumentClassifierArn *string `type:"string" required:"true"`
7086}
7087
7088// String returns the string representation
7089func (s DescribeDocumentClassifierInput) String() string {
7090	return awsutil.Prettify(s)
7091}
7092
7093// GoString returns the string representation
7094func (s DescribeDocumentClassifierInput) GoString() string {
7095	return s.String()
7096}
7097
7098// Validate inspects the fields of the type to determine if they are valid.
7099func (s *DescribeDocumentClassifierInput) Validate() error {
7100	invalidParams := request.ErrInvalidParams{Context: "DescribeDocumentClassifierInput"}
7101	if s.DocumentClassifierArn == nil {
7102		invalidParams.Add(request.NewErrParamRequired("DocumentClassifierArn"))
7103	}
7104
7105	if invalidParams.Len() > 0 {
7106		return invalidParams
7107	}
7108	return nil
7109}
7110
7111// SetDocumentClassifierArn sets the DocumentClassifierArn field's value.
7112func (s *DescribeDocumentClassifierInput) SetDocumentClassifierArn(v string) *DescribeDocumentClassifierInput {
7113	s.DocumentClassifierArn = &v
7114	return s
7115}
7116
7117type DescribeDocumentClassifierOutput struct {
7118	_ struct{} `type:"structure"`
7119
7120	// An object that contains the properties associated with a document classifier.
7121	DocumentClassifierProperties *DocumentClassifierProperties `type:"structure"`
7122}
7123
7124// String returns the string representation
7125func (s DescribeDocumentClassifierOutput) String() string {
7126	return awsutil.Prettify(s)
7127}
7128
7129// GoString returns the string representation
7130func (s DescribeDocumentClassifierOutput) GoString() string {
7131	return s.String()
7132}
7133
7134// SetDocumentClassifierProperties sets the DocumentClassifierProperties field's value.
7135func (s *DescribeDocumentClassifierOutput) SetDocumentClassifierProperties(v *DocumentClassifierProperties) *DescribeDocumentClassifierOutput {
7136	s.DocumentClassifierProperties = v
7137	return s
7138}
7139
7140type DescribeDominantLanguageDetectionJobInput struct {
7141	_ struct{} `type:"structure"`
7142
7143	// The identifier that Amazon Comprehend generated for the job. The operation
7144	// returns this identifier in its response.
7145	//
7146	// JobId is a required field
7147	JobId *string `min:"1" type:"string" required:"true"`
7148}
7149
7150// String returns the string representation
7151func (s DescribeDominantLanguageDetectionJobInput) String() string {
7152	return awsutil.Prettify(s)
7153}
7154
7155// GoString returns the string representation
7156func (s DescribeDominantLanguageDetectionJobInput) GoString() string {
7157	return s.String()
7158}
7159
7160// Validate inspects the fields of the type to determine if they are valid.
7161func (s *DescribeDominantLanguageDetectionJobInput) Validate() error {
7162	invalidParams := request.ErrInvalidParams{Context: "DescribeDominantLanguageDetectionJobInput"}
7163	if s.JobId == nil {
7164		invalidParams.Add(request.NewErrParamRequired("JobId"))
7165	}
7166	if s.JobId != nil && len(*s.JobId) < 1 {
7167		invalidParams.Add(request.NewErrParamMinLen("JobId", 1))
7168	}
7169
7170	if invalidParams.Len() > 0 {
7171		return invalidParams
7172	}
7173	return nil
7174}
7175
7176// SetJobId sets the JobId field's value.
7177func (s *DescribeDominantLanguageDetectionJobInput) SetJobId(v string) *DescribeDominantLanguageDetectionJobInput {
7178	s.JobId = &v
7179	return s
7180}
7181
7182type DescribeDominantLanguageDetectionJobOutput struct {
7183	_ struct{} `type:"structure"`
7184
7185	// An object that contains the properties associated with a dominant language
7186	// detection job.
7187	DominantLanguageDetectionJobProperties *DominantLanguageDetectionJobProperties `type:"structure"`
7188}
7189
7190// String returns the string representation
7191func (s DescribeDominantLanguageDetectionJobOutput) String() string {
7192	return awsutil.Prettify(s)
7193}
7194
7195// GoString returns the string representation
7196func (s DescribeDominantLanguageDetectionJobOutput) GoString() string {
7197	return s.String()
7198}
7199
7200// SetDominantLanguageDetectionJobProperties sets the DominantLanguageDetectionJobProperties field's value.
7201func (s *DescribeDominantLanguageDetectionJobOutput) SetDominantLanguageDetectionJobProperties(v *DominantLanguageDetectionJobProperties) *DescribeDominantLanguageDetectionJobOutput {
7202	s.DominantLanguageDetectionJobProperties = v
7203	return s
7204}
7205
7206type DescribeEndpointInput struct {
7207	_ struct{} `type:"structure"`
7208
7209	// The Amazon Resource Number (ARN) of the endpoint being described.
7210	//
7211	// EndpointArn is a required field
7212	EndpointArn *string `type:"string" required:"true"`
7213}
7214
7215// String returns the string representation
7216func (s DescribeEndpointInput) String() string {
7217	return awsutil.Prettify(s)
7218}
7219
7220// GoString returns the string representation
7221func (s DescribeEndpointInput) GoString() string {
7222	return s.String()
7223}
7224
7225// Validate inspects the fields of the type to determine if they are valid.
7226func (s *DescribeEndpointInput) Validate() error {
7227	invalidParams := request.ErrInvalidParams{Context: "DescribeEndpointInput"}
7228	if s.EndpointArn == nil {
7229		invalidParams.Add(request.NewErrParamRequired("EndpointArn"))
7230	}
7231
7232	if invalidParams.Len() > 0 {
7233		return invalidParams
7234	}
7235	return nil
7236}
7237
7238// SetEndpointArn sets the EndpointArn field's value.
7239func (s *DescribeEndpointInput) SetEndpointArn(v string) *DescribeEndpointInput {
7240	s.EndpointArn = &v
7241	return s
7242}
7243
7244type DescribeEndpointOutput struct {
7245	_ struct{} `type:"structure"`
7246
7247	// Describes information associated with the specific endpoint.
7248	EndpointProperties *EndpointProperties `type:"structure"`
7249}
7250
7251// String returns the string representation
7252func (s DescribeEndpointOutput) String() string {
7253	return awsutil.Prettify(s)
7254}
7255
7256// GoString returns the string representation
7257func (s DescribeEndpointOutput) GoString() string {
7258	return s.String()
7259}
7260
7261// SetEndpointProperties sets the EndpointProperties field's value.
7262func (s *DescribeEndpointOutput) SetEndpointProperties(v *EndpointProperties) *DescribeEndpointOutput {
7263	s.EndpointProperties = v
7264	return s
7265}
7266
7267type DescribeEntitiesDetectionJobInput struct {
7268	_ struct{} `type:"structure"`
7269
7270	// The identifier that Amazon Comprehend generated for the job. The operation
7271	// returns this identifier in its response.
7272	//
7273	// JobId is a required field
7274	JobId *string `min:"1" type:"string" required:"true"`
7275}
7276
7277// String returns the string representation
7278func (s DescribeEntitiesDetectionJobInput) String() string {
7279	return awsutil.Prettify(s)
7280}
7281
7282// GoString returns the string representation
7283func (s DescribeEntitiesDetectionJobInput) GoString() string {
7284	return s.String()
7285}
7286
7287// Validate inspects the fields of the type to determine if they are valid.
7288func (s *DescribeEntitiesDetectionJobInput) Validate() error {
7289	invalidParams := request.ErrInvalidParams{Context: "DescribeEntitiesDetectionJobInput"}
7290	if s.JobId == nil {
7291		invalidParams.Add(request.NewErrParamRequired("JobId"))
7292	}
7293	if s.JobId != nil && len(*s.JobId) < 1 {
7294		invalidParams.Add(request.NewErrParamMinLen("JobId", 1))
7295	}
7296
7297	if invalidParams.Len() > 0 {
7298		return invalidParams
7299	}
7300	return nil
7301}
7302
7303// SetJobId sets the JobId field's value.
7304func (s *DescribeEntitiesDetectionJobInput) SetJobId(v string) *DescribeEntitiesDetectionJobInput {
7305	s.JobId = &v
7306	return s
7307}
7308
7309type DescribeEntitiesDetectionJobOutput struct {
7310	_ struct{} `type:"structure"`
7311
7312	// An object that contains the properties associated with an entities detection
7313	// job.
7314	EntitiesDetectionJobProperties *EntitiesDetectionJobProperties `type:"structure"`
7315}
7316
7317// String returns the string representation
7318func (s DescribeEntitiesDetectionJobOutput) String() string {
7319	return awsutil.Prettify(s)
7320}
7321
7322// GoString returns the string representation
7323func (s DescribeEntitiesDetectionJobOutput) GoString() string {
7324	return s.String()
7325}
7326
7327// SetEntitiesDetectionJobProperties sets the EntitiesDetectionJobProperties field's value.
7328func (s *DescribeEntitiesDetectionJobOutput) SetEntitiesDetectionJobProperties(v *EntitiesDetectionJobProperties) *DescribeEntitiesDetectionJobOutput {
7329	s.EntitiesDetectionJobProperties = v
7330	return s
7331}
7332
7333type DescribeEntityRecognizerInput struct {
7334	_ struct{} `type:"structure"`
7335
7336	// The Amazon Resource Name (ARN) that identifies the entity recognizer.
7337	//
7338	// EntityRecognizerArn is a required field
7339	EntityRecognizerArn *string `type:"string" required:"true"`
7340}
7341
7342// String returns the string representation
7343func (s DescribeEntityRecognizerInput) String() string {
7344	return awsutil.Prettify(s)
7345}
7346
7347// GoString returns the string representation
7348func (s DescribeEntityRecognizerInput) GoString() string {
7349	return s.String()
7350}
7351
7352// Validate inspects the fields of the type to determine if they are valid.
7353func (s *DescribeEntityRecognizerInput) Validate() error {
7354	invalidParams := request.ErrInvalidParams{Context: "DescribeEntityRecognizerInput"}
7355	if s.EntityRecognizerArn == nil {
7356		invalidParams.Add(request.NewErrParamRequired("EntityRecognizerArn"))
7357	}
7358
7359	if invalidParams.Len() > 0 {
7360		return invalidParams
7361	}
7362	return nil
7363}
7364
7365// SetEntityRecognizerArn sets the EntityRecognizerArn field's value.
7366func (s *DescribeEntityRecognizerInput) SetEntityRecognizerArn(v string) *DescribeEntityRecognizerInput {
7367	s.EntityRecognizerArn = &v
7368	return s
7369}
7370
7371type DescribeEntityRecognizerOutput struct {
7372	_ struct{} `type:"structure"`
7373
7374	// Describes information associated with an entity recognizer.
7375	EntityRecognizerProperties *EntityRecognizerProperties `type:"structure"`
7376}
7377
7378// String returns the string representation
7379func (s DescribeEntityRecognizerOutput) String() string {
7380	return awsutil.Prettify(s)
7381}
7382
7383// GoString returns the string representation
7384func (s DescribeEntityRecognizerOutput) GoString() string {
7385	return s.String()
7386}
7387
7388// SetEntityRecognizerProperties sets the EntityRecognizerProperties field's value.
7389func (s *DescribeEntityRecognizerOutput) SetEntityRecognizerProperties(v *EntityRecognizerProperties) *DescribeEntityRecognizerOutput {
7390	s.EntityRecognizerProperties = v
7391	return s
7392}
7393
7394type DescribeKeyPhrasesDetectionJobInput struct {
7395	_ struct{} `type:"structure"`
7396
7397	// The identifier that Amazon Comprehend generated for the job. The operation
7398	// returns this identifier in its response.
7399	//
7400	// JobId is a required field
7401	JobId *string `min:"1" type:"string" required:"true"`
7402}
7403
7404// String returns the string representation
7405func (s DescribeKeyPhrasesDetectionJobInput) String() string {
7406	return awsutil.Prettify(s)
7407}
7408
7409// GoString returns the string representation
7410func (s DescribeKeyPhrasesDetectionJobInput) GoString() string {
7411	return s.String()
7412}
7413
7414// Validate inspects the fields of the type to determine if they are valid.
7415func (s *DescribeKeyPhrasesDetectionJobInput) Validate() error {
7416	invalidParams := request.ErrInvalidParams{Context: "DescribeKeyPhrasesDetectionJobInput"}
7417	if s.JobId == nil {
7418		invalidParams.Add(request.NewErrParamRequired("JobId"))
7419	}
7420	if s.JobId != nil && len(*s.JobId) < 1 {
7421		invalidParams.Add(request.NewErrParamMinLen("JobId", 1))
7422	}
7423
7424	if invalidParams.Len() > 0 {
7425		return invalidParams
7426	}
7427	return nil
7428}
7429
7430// SetJobId sets the JobId field's value.
7431func (s *DescribeKeyPhrasesDetectionJobInput) SetJobId(v string) *DescribeKeyPhrasesDetectionJobInput {
7432	s.JobId = &v
7433	return s
7434}
7435
7436type DescribeKeyPhrasesDetectionJobOutput struct {
7437	_ struct{} `type:"structure"`
7438
7439	// An object that contains the properties associated with a key phrases detection
7440	// job.
7441	KeyPhrasesDetectionJobProperties *KeyPhrasesDetectionJobProperties `type:"structure"`
7442}
7443
7444// String returns the string representation
7445func (s DescribeKeyPhrasesDetectionJobOutput) String() string {
7446	return awsutil.Prettify(s)
7447}
7448
7449// GoString returns the string representation
7450func (s DescribeKeyPhrasesDetectionJobOutput) GoString() string {
7451	return s.String()
7452}
7453
7454// SetKeyPhrasesDetectionJobProperties sets the KeyPhrasesDetectionJobProperties field's value.
7455func (s *DescribeKeyPhrasesDetectionJobOutput) SetKeyPhrasesDetectionJobProperties(v *KeyPhrasesDetectionJobProperties) *DescribeKeyPhrasesDetectionJobOutput {
7456	s.KeyPhrasesDetectionJobProperties = v
7457	return s
7458}
7459
7460type DescribeSentimentDetectionJobInput struct {
7461	_ struct{} `type:"structure"`
7462
7463	// The identifier that Amazon Comprehend generated for the job. The operation
7464	// returns this identifier in its response.
7465	//
7466	// JobId is a required field
7467	JobId *string `min:"1" type:"string" required:"true"`
7468}
7469
7470// String returns the string representation
7471func (s DescribeSentimentDetectionJobInput) String() string {
7472	return awsutil.Prettify(s)
7473}
7474
7475// GoString returns the string representation
7476func (s DescribeSentimentDetectionJobInput) GoString() string {
7477	return s.String()
7478}
7479
7480// Validate inspects the fields of the type to determine if they are valid.
7481func (s *DescribeSentimentDetectionJobInput) Validate() error {
7482	invalidParams := request.ErrInvalidParams{Context: "DescribeSentimentDetectionJobInput"}
7483	if s.JobId == nil {
7484		invalidParams.Add(request.NewErrParamRequired("JobId"))
7485	}
7486	if s.JobId != nil && len(*s.JobId) < 1 {
7487		invalidParams.Add(request.NewErrParamMinLen("JobId", 1))
7488	}
7489
7490	if invalidParams.Len() > 0 {
7491		return invalidParams
7492	}
7493	return nil
7494}
7495
7496// SetJobId sets the JobId field's value.
7497func (s *DescribeSentimentDetectionJobInput) SetJobId(v string) *DescribeSentimentDetectionJobInput {
7498	s.JobId = &v
7499	return s
7500}
7501
7502type DescribeSentimentDetectionJobOutput struct {
7503	_ struct{} `type:"structure"`
7504
7505	// An object that contains the properties associated with a sentiment detection
7506	// job.
7507	SentimentDetectionJobProperties *SentimentDetectionJobProperties `type:"structure"`
7508}
7509
7510// String returns the string representation
7511func (s DescribeSentimentDetectionJobOutput) String() string {
7512	return awsutil.Prettify(s)
7513}
7514
7515// GoString returns the string representation
7516func (s DescribeSentimentDetectionJobOutput) GoString() string {
7517	return s.String()
7518}
7519
7520// SetSentimentDetectionJobProperties sets the SentimentDetectionJobProperties field's value.
7521func (s *DescribeSentimentDetectionJobOutput) SetSentimentDetectionJobProperties(v *SentimentDetectionJobProperties) *DescribeSentimentDetectionJobOutput {
7522	s.SentimentDetectionJobProperties = v
7523	return s
7524}
7525
7526type DescribeTopicsDetectionJobInput struct {
7527	_ struct{} `type:"structure"`
7528
7529	// The identifier assigned by the user to the detection job.
7530	//
7531	// JobId is a required field
7532	JobId *string `min:"1" type:"string" required:"true"`
7533}
7534
7535// String returns the string representation
7536func (s DescribeTopicsDetectionJobInput) String() string {
7537	return awsutil.Prettify(s)
7538}
7539
7540// GoString returns the string representation
7541func (s DescribeTopicsDetectionJobInput) GoString() string {
7542	return s.String()
7543}
7544
7545// Validate inspects the fields of the type to determine if they are valid.
7546func (s *DescribeTopicsDetectionJobInput) Validate() error {
7547	invalidParams := request.ErrInvalidParams{Context: "DescribeTopicsDetectionJobInput"}
7548	if s.JobId == nil {
7549		invalidParams.Add(request.NewErrParamRequired("JobId"))
7550	}
7551	if s.JobId != nil && len(*s.JobId) < 1 {
7552		invalidParams.Add(request.NewErrParamMinLen("JobId", 1))
7553	}
7554
7555	if invalidParams.Len() > 0 {
7556		return invalidParams
7557	}
7558	return nil
7559}
7560
7561// SetJobId sets the JobId field's value.
7562func (s *DescribeTopicsDetectionJobInput) SetJobId(v string) *DescribeTopicsDetectionJobInput {
7563	s.JobId = &v
7564	return s
7565}
7566
7567type DescribeTopicsDetectionJobOutput struct {
7568	_ struct{} `type:"structure"`
7569
7570	// The list of properties for the requested job.
7571	TopicsDetectionJobProperties *TopicsDetectionJobProperties `type:"structure"`
7572}
7573
7574// String returns the string representation
7575func (s DescribeTopicsDetectionJobOutput) String() string {
7576	return awsutil.Prettify(s)
7577}
7578
7579// GoString returns the string representation
7580func (s DescribeTopicsDetectionJobOutput) GoString() string {
7581	return s.String()
7582}
7583
7584// SetTopicsDetectionJobProperties sets the TopicsDetectionJobProperties field's value.
7585func (s *DescribeTopicsDetectionJobOutput) SetTopicsDetectionJobProperties(v *TopicsDetectionJobProperties) *DescribeTopicsDetectionJobOutput {
7586	s.TopicsDetectionJobProperties = v
7587	return s
7588}
7589
7590type DetectDominantLanguageInput struct {
7591	_ struct{} `type:"structure"`
7592
7593	// A UTF-8 text string. Each string should contain at least 20 characters and
7594	// must contain fewer that 5,000 bytes of UTF-8 encoded characters.
7595	//
7596	// Text is a required field
7597	Text *string `min:"1" type:"string" required:"true" sensitive:"true"`
7598}
7599
7600// String returns the string representation
7601func (s DetectDominantLanguageInput) String() string {
7602	return awsutil.Prettify(s)
7603}
7604
7605// GoString returns the string representation
7606func (s DetectDominantLanguageInput) GoString() string {
7607	return s.String()
7608}
7609
7610// Validate inspects the fields of the type to determine if they are valid.
7611func (s *DetectDominantLanguageInput) Validate() error {
7612	invalidParams := request.ErrInvalidParams{Context: "DetectDominantLanguageInput"}
7613	if s.Text == nil {
7614		invalidParams.Add(request.NewErrParamRequired("Text"))
7615	}
7616	if s.Text != nil && len(*s.Text) < 1 {
7617		invalidParams.Add(request.NewErrParamMinLen("Text", 1))
7618	}
7619
7620	if invalidParams.Len() > 0 {
7621		return invalidParams
7622	}
7623	return nil
7624}
7625
7626// SetText sets the Text field's value.
7627func (s *DetectDominantLanguageInput) SetText(v string) *DetectDominantLanguageInput {
7628	s.Text = &v
7629	return s
7630}
7631
7632type DetectDominantLanguageOutput struct {
7633	_ struct{} `type:"structure" sensitive:"true"`
7634
7635	// The languages that Amazon Comprehend detected in the input text. For each
7636	// language, the response returns the RFC 5646 language code and the level of
7637	// confidence that Amazon Comprehend has in the accuracy of its inference. For
7638	// more information about RFC 5646, see Tags for Identifying Languages (https://tools.ietf.org/html/rfc5646)
7639	// on the IETF Tools web site.
7640	Languages []*DominantLanguage `type:"list"`
7641}
7642
7643// String returns the string representation
7644func (s DetectDominantLanguageOutput) String() string {
7645	return awsutil.Prettify(s)
7646}
7647
7648// GoString returns the string representation
7649func (s DetectDominantLanguageOutput) GoString() string {
7650	return s.String()
7651}
7652
7653// SetLanguages sets the Languages field's value.
7654func (s *DetectDominantLanguageOutput) SetLanguages(v []*DominantLanguage) *DetectDominantLanguageOutput {
7655	s.Languages = v
7656	return s
7657}
7658
7659type DetectEntitiesInput struct {
7660	_ struct{} `type:"structure"`
7661
7662	// The Amazon Resource Name of an endpoint that is associated with a custom
7663	// entity recognition model. Provide an endpoint if you want to detect entities
7664	// by using your own custom model instead of the default model that is used
7665	// by Amazon Comprehend.
7666	//
7667	// If you specify an endpoint, Amazon Comprehend uses the language of your custom
7668	// model, and it ignores any language code that you provide in your request.
7669	EndpointArn *string `type:"string"`
7670
7671	// The language of the input documents. You can specify any of the primary languages
7672	// supported by Amazon Comprehend. All documents must be in the same language.
7673	//
7674	// If your request includes the endpoint for a custom entity recognition model,
7675	// Amazon Comprehend uses the language of your custom model, and it ignores
7676	// any language code that you specify here.
7677	LanguageCode *string `type:"string" enum:"LanguageCode"`
7678
7679	// A UTF-8 text string. Each string must contain fewer that 5,000 bytes of UTF-8
7680	// encoded characters.
7681	//
7682	// Text is a required field
7683	Text *string `min:"1" type:"string" required:"true" sensitive:"true"`
7684}
7685
7686// String returns the string representation
7687func (s DetectEntitiesInput) String() string {
7688	return awsutil.Prettify(s)
7689}
7690
7691// GoString returns the string representation
7692func (s DetectEntitiesInput) GoString() string {
7693	return s.String()
7694}
7695
7696// Validate inspects the fields of the type to determine if they are valid.
7697func (s *DetectEntitiesInput) Validate() error {
7698	invalidParams := request.ErrInvalidParams{Context: "DetectEntitiesInput"}
7699	if s.Text == nil {
7700		invalidParams.Add(request.NewErrParamRequired("Text"))
7701	}
7702	if s.Text != nil && len(*s.Text) < 1 {
7703		invalidParams.Add(request.NewErrParamMinLen("Text", 1))
7704	}
7705
7706	if invalidParams.Len() > 0 {
7707		return invalidParams
7708	}
7709	return nil
7710}
7711
7712// SetEndpointArn sets the EndpointArn field's value.
7713func (s *DetectEntitiesInput) SetEndpointArn(v string) *DetectEntitiesInput {
7714	s.EndpointArn = &v
7715	return s
7716}
7717
7718// SetLanguageCode sets the LanguageCode field's value.
7719func (s *DetectEntitiesInput) SetLanguageCode(v string) *DetectEntitiesInput {
7720	s.LanguageCode = &v
7721	return s
7722}
7723
7724// SetText sets the Text field's value.
7725func (s *DetectEntitiesInput) SetText(v string) *DetectEntitiesInput {
7726	s.Text = &v
7727	return s
7728}
7729
7730type DetectEntitiesOutput struct {
7731	_ struct{} `type:"structure" sensitive:"true"`
7732
7733	// A collection of entities identified in the input text. For each entity, the
7734	// response provides the entity text, entity type, where the entity text begins
7735	// and ends, and the level of confidence that Amazon Comprehend has in the detection.
7736	//
7737	// If your request uses a custom entity recognition model, Amazon Comprehend
7738	// detects the entities that the model is trained to recognize. Otherwise, it
7739	// detects the default entity types. For a list of default entity types, see
7740	// how-entities.
7741	Entities []*Entity `type:"list"`
7742}
7743
7744// String returns the string representation
7745func (s DetectEntitiesOutput) String() string {
7746	return awsutil.Prettify(s)
7747}
7748
7749// GoString returns the string representation
7750func (s DetectEntitiesOutput) GoString() string {
7751	return s.String()
7752}
7753
7754// SetEntities sets the Entities field's value.
7755func (s *DetectEntitiesOutput) SetEntities(v []*Entity) *DetectEntitiesOutput {
7756	s.Entities = v
7757	return s
7758}
7759
7760type DetectKeyPhrasesInput struct {
7761	_ struct{} `type:"structure"`
7762
7763	// The language of the input documents. You can specify any of the primary languages
7764	// supported by Amazon Comprehend. All documents must be in the same language.
7765	//
7766	// LanguageCode is a required field
7767	LanguageCode *string `type:"string" required:"true" enum:"LanguageCode"`
7768
7769	// A UTF-8 text string. Each string must contain fewer that 5,000 bytes of UTF-8
7770	// encoded characters.
7771	//
7772	// Text is a required field
7773	Text *string `min:"1" type:"string" required:"true" sensitive:"true"`
7774}
7775
7776// String returns the string representation
7777func (s DetectKeyPhrasesInput) String() string {
7778	return awsutil.Prettify(s)
7779}
7780
7781// GoString returns the string representation
7782func (s DetectKeyPhrasesInput) GoString() string {
7783	return s.String()
7784}
7785
7786// Validate inspects the fields of the type to determine if they are valid.
7787func (s *DetectKeyPhrasesInput) Validate() error {
7788	invalidParams := request.ErrInvalidParams{Context: "DetectKeyPhrasesInput"}
7789	if s.LanguageCode == nil {
7790		invalidParams.Add(request.NewErrParamRequired("LanguageCode"))
7791	}
7792	if s.Text == nil {
7793		invalidParams.Add(request.NewErrParamRequired("Text"))
7794	}
7795	if s.Text != nil && len(*s.Text) < 1 {
7796		invalidParams.Add(request.NewErrParamMinLen("Text", 1))
7797	}
7798
7799	if invalidParams.Len() > 0 {
7800		return invalidParams
7801	}
7802	return nil
7803}
7804
7805// SetLanguageCode sets the LanguageCode field's value.
7806func (s *DetectKeyPhrasesInput) SetLanguageCode(v string) *DetectKeyPhrasesInput {
7807	s.LanguageCode = &v
7808	return s
7809}
7810
7811// SetText sets the Text field's value.
7812func (s *DetectKeyPhrasesInput) SetText(v string) *DetectKeyPhrasesInput {
7813	s.Text = &v
7814	return s
7815}
7816
7817type DetectKeyPhrasesOutput struct {
7818	_ struct{} `type:"structure" sensitive:"true"`
7819
7820	// A collection of key phrases that Amazon Comprehend identified in the input
7821	// text. For each key phrase, the response provides the text of the key phrase,
7822	// where the key phrase begins and ends, and the level of confidence that Amazon
7823	// Comprehend has in the accuracy of the detection.
7824	KeyPhrases []*KeyPhrase `type:"list"`
7825}
7826
7827// String returns the string representation
7828func (s DetectKeyPhrasesOutput) String() string {
7829	return awsutil.Prettify(s)
7830}
7831
7832// GoString returns the string representation
7833func (s DetectKeyPhrasesOutput) GoString() string {
7834	return s.String()
7835}
7836
7837// SetKeyPhrases sets the KeyPhrases field's value.
7838func (s *DetectKeyPhrasesOutput) SetKeyPhrases(v []*KeyPhrase) *DetectKeyPhrasesOutput {
7839	s.KeyPhrases = v
7840	return s
7841}
7842
7843type DetectSentimentInput struct {
7844	_ struct{} `type:"structure"`
7845
7846	// The language of the input documents. You can specify any of the primary languages
7847	// supported by Amazon Comprehend. All documents must be in the same language.
7848	//
7849	// LanguageCode is a required field
7850	LanguageCode *string `type:"string" required:"true" enum:"LanguageCode"`
7851
7852	// A UTF-8 text string. Each string must contain fewer that 5,000 bytes of UTF-8
7853	// encoded characters.
7854	//
7855	// Text is a required field
7856	Text *string `min:"1" type:"string" required:"true" sensitive:"true"`
7857}
7858
7859// String returns the string representation
7860func (s DetectSentimentInput) String() string {
7861	return awsutil.Prettify(s)
7862}
7863
7864// GoString returns the string representation
7865func (s DetectSentimentInput) GoString() string {
7866	return s.String()
7867}
7868
7869// Validate inspects the fields of the type to determine if they are valid.
7870func (s *DetectSentimentInput) Validate() error {
7871	invalidParams := request.ErrInvalidParams{Context: "DetectSentimentInput"}
7872	if s.LanguageCode == nil {
7873		invalidParams.Add(request.NewErrParamRequired("LanguageCode"))
7874	}
7875	if s.Text == nil {
7876		invalidParams.Add(request.NewErrParamRequired("Text"))
7877	}
7878	if s.Text != nil && len(*s.Text) < 1 {
7879		invalidParams.Add(request.NewErrParamMinLen("Text", 1))
7880	}
7881
7882	if invalidParams.Len() > 0 {
7883		return invalidParams
7884	}
7885	return nil
7886}
7887
7888// SetLanguageCode sets the LanguageCode field's value.
7889func (s *DetectSentimentInput) SetLanguageCode(v string) *DetectSentimentInput {
7890	s.LanguageCode = &v
7891	return s
7892}
7893
7894// SetText sets the Text field's value.
7895func (s *DetectSentimentInput) SetText(v string) *DetectSentimentInput {
7896	s.Text = &v
7897	return s
7898}
7899
7900type DetectSentimentOutput struct {
7901	_ struct{} `type:"structure" sensitive:"true"`
7902
7903	// The inferred sentiment that Amazon Comprehend has the highest level of confidence
7904	// in.
7905	Sentiment *string `type:"string" enum:"SentimentType"`
7906
7907	// An object that lists the sentiments, and their corresponding confidence levels.
7908	SentimentScore *SentimentScore `type:"structure"`
7909}
7910
7911// String returns the string representation
7912func (s DetectSentimentOutput) String() string {
7913	return awsutil.Prettify(s)
7914}
7915
7916// GoString returns the string representation
7917func (s DetectSentimentOutput) GoString() string {
7918	return s.String()
7919}
7920
7921// SetSentiment sets the Sentiment field's value.
7922func (s *DetectSentimentOutput) SetSentiment(v string) *DetectSentimentOutput {
7923	s.Sentiment = &v
7924	return s
7925}
7926
7927// SetSentimentScore sets the SentimentScore field's value.
7928func (s *DetectSentimentOutput) SetSentimentScore(v *SentimentScore) *DetectSentimentOutput {
7929	s.SentimentScore = v
7930	return s
7931}
7932
7933type DetectSyntaxInput struct {
7934	_ struct{} `type:"structure"`
7935
7936	// The language code of the input documents. You can specify any of the following
7937	// languages supported by Amazon Comprehend: German ("de"), English ("en"),
7938	// Spanish ("es"), French ("fr"), Italian ("it"), or Portuguese ("pt").
7939	//
7940	// LanguageCode is a required field
7941	LanguageCode *string `type:"string" required:"true" enum:"SyntaxLanguageCode"`
7942
7943	// A UTF-8 string. Each string must contain fewer that 5,000 bytes of UTF encoded
7944	// characters.
7945	//
7946	// Text is a required field
7947	Text *string `min:"1" type:"string" required:"true" sensitive:"true"`
7948}
7949
7950// String returns the string representation
7951func (s DetectSyntaxInput) String() string {
7952	return awsutil.Prettify(s)
7953}
7954
7955// GoString returns the string representation
7956func (s DetectSyntaxInput) GoString() string {
7957	return s.String()
7958}
7959
7960// Validate inspects the fields of the type to determine if they are valid.
7961func (s *DetectSyntaxInput) Validate() error {
7962	invalidParams := request.ErrInvalidParams{Context: "DetectSyntaxInput"}
7963	if s.LanguageCode == nil {
7964		invalidParams.Add(request.NewErrParamRequired("LanguageCode"))
7965	}
7966	if s.Text == nil {
7967		invalidParams.Add(request.NewErrParamRequired("Text"))
7968	}
7969	if s.Text != nil && len(*s.Text) < 1 {
7970		invalidParams.Add(request.NewErrParamMinLen("Text", 1))
7971	}
7972
7973	if invalidParams.Len() > 0 {
7974		return invalidParams
7975	}
7976	return nil
7977}
7978
7979// SetLanguageCode sets the LanguageCode field's value.
7980func (s *DetectSyntaxInput) SetLanguageCode(v string) *DetectSyntaxInput {
7981	s.LanguageCode = &v
7982	return s
7983}
7984
7985// SetText sets the Text field's value.
7986func (s *DetectSyntaxInput) SetText(v string) *DetectSyntaxInput {
7987	s.Text = &v
7988	return s
7989}
7990
7991type DetectSyntaxOutput struct {
7992	_ struct{} `type:"structure" sensitive:"true"`
7993
7994	// A collection of syntax tokens describing the text. For each token, the response
7995	// provides the text, the token type, where the text begins and ends, and the
7996	// level of confidence that Amazon Comprehend has that the token is correct.
7997	// For a list of token types, see how-syntax.
7998	SyntaxTokens []*SyntaxToken `type:"list"`
7999}
8000
8001// String returns the string representation
8002func (s DetectSyntaxOutput) String() string {
8003	return awsutil.Prettify(s)
8004}
8005
8006// GoString returns the string representation
8007func (s DetectSyntaxOutput) GoString() string {
8008	return s.String()
8009}
8010
8011// SetSyntaxTokens sets the SyntaxTokens field's value.
8012func (s *DetectSyntaxOutput) SetSyntaxTokens(v []*SyntaxToken) *DetectSyntaxOutput {
8013	s.SyntaxTokens = v
8014	return s
8015}
8016
8017// Specifies the class that categorizes the document being analyzed
8018type DocumentClass struct {
8019	_ struct{} `type:"structure"`
8020
8021	// The name of the class.
8022	Name *string `min:"1" type:"string"`
8023
8024	// The confidence score that Amazon Comprehend has this class correctly attributed.
8025	Score *float64 `type:"float"`
8026}
8027
8028// String returns the string representation
8029func (s DocumentClass) String() string {
8030	return awsutil.Prettify(s)
8031}
8032
8033// GoString returns the string representation
8034func (s DocumentClass) GoString() string {
8035	return s.String()
8036}
8037
8038// SetName sets the Name field's value.
8039func (s *DocumentClass) SetName(v string) *DocumentClass {
8040	s.Name = &v
8041	return s
8042}
8043
8044// SetScore sets the Score field's value.
8045func (s *DocumentClass) SetScore(v float64) *DocumentClass {
8046	s.Score = &v
8047	return s
8048}
8049
8050// Provides information for filtering a list of document classification jobs.
8051// For more information, see the operation. You can provide only one filter
8052// parameter in each request.
8053type DocumentClassificationJobFilter struct {
8054	_ struct{} `type:"structure"`
8055
8056	// Filters on the name of the job.
8057	JobName *string `min:"1" type:"string"`
8058
8059	// Filters the list based on job status. Returns only jobs with the specified
8060	// status.
8061	JobStatus *string `type:"string" enum:"JobStatus"`
8062
8063	// Filters the list of jobs based on the time that the job was submitted for
8064	// processing. Returns only jobs submitted after the specified time. Jobs are
8065	// returned in descending order, newest to oldest.
8066	SubmitTimeAfter *time.Time `type:"timestamp"`
8067
8068	// Filters the list of jobs based on the time that the job was submitted for
8069	// processing. Returns only jobs submitted before the specified time. Jobs are
8070	// returned in ascending order, oldest to newest.
8071	SubmitTimeBefore *time.Time `type:"timestamp"`
8072}
8073
8074// String returns the string representation
8075func (s DocumentClassificationJobFilter) String() string {
8076	return awsutil.Prettify(s)
8077}
8078
8079// GoString returns the string representation
8080func (s DocumentClassificationJobFilter) GoString() string {
8081	return s.String()
8082}
8083
8084// Validate inspects the fields of the type to determine if they are valid.
8085func (s *DocumentClassificationJobFilter) Validate() error {
8086	invalidParams := request.ErrInvalidParams{Context: "DocumentClassificationJobFilter"}
8087	if s.JobName != nil && len(*s.JobName) < 1 {
8088		invalidParams.Add(request.NewErrParamMinLen("JobName", 1))
8089	}
8090
8091	if invalidParams.Len() > 0 {
8092		return invalidParams
8093	}
8094	return nil
8095}
8096
8097// SetJobName sets the JobName field's value.
8098func (s *DocumentClassificationJobFilter) SetJobName(v string) *DocumentClassificationJobFilter {
8099	s.JobName = &v
8100	return s
8101}
8102
8103// SetJobStatus sets the JobStatus field's value.
8104func (s *DocumentClassificationJobFilter) SetJobStatus(v string) *DocumentClassificationJobFilter {
8105	s.JobStatus = &v
8106	return s
8107}
8108
8109// SetSubmitTimeAfter sets the SubmitTimeAfter field's value.
8110func (s *DocumentClassificationJobFilter) SetSubmitTimeAfter(v time.Time) *DocumentClassificationJobFilter {
8111	s.SubmitTimeAfter = &v
8112	return s
8113}
8114
8115// SetSubmitTimeBefore sets the SubmitTimeBefore field's value.
8116func (s *DocumentClassificationJobFilter) SetSubmitTimeBefore(v time.Time) *DocumentClassificationJobFilter {
8117	s.SubmitTimeBefore = &v
8118	return s
8119}
8120
8121// Provides information about a document classification job.
8122type DocumentClassificationJobProperties struct {
8123	_ struct{} `type:"structure"`
8124
8125	// The Amazon Resource Name (ARN) of the AWS identity and Access Management
8126	// (IAM) role that grants Amazon Comprehend read access to your input data.
8127	DataAccessRoleArn *string `min:"20" type:"string"`
8128
8129	// The Amazon Resource Name (ARN) that identifies the document classifier.
8130	DocumentClassifierArn *string `type:"string"`
8131
8132	// The time that the document classification job completed.
8133	EndTime *time.Time `type:"timestamp"`
8134
8135	// The input data configuration that you supplied when you created the document
8136	// classification job.
8137	InputDataConfig *InputDataConfig `type:"structure"`
8138
8139	// The identifier assigned to the document classification job.
8140	JobId *string `min:"1" type:"string"`
8141
8142	// The name that you assigned to the document classification job.
8143	JobName *string `min:"1" type:"string"`
8144
8145	// The current status of the document classification job. If the status is FAILED,
8146	// the Message field shows the reason for the failure.
8147	JobStatus *string `type:"string" enum:"JobStatus"`
8148
8149	// A description of the status of the job.
8150	Message *string `type:"string"`
8151
8152	// The output data configuration that you supplied when you created the document
8153	// classification job.
8154	OutputDataConfig *OutputDataConfig `type:"structure"`
8155
8156	// The time that the document classification job was submitted for processing.
8157	SubmitTime *time.Time `type:"timestamp"`
8158
8159	// ID for the AWS Key Management Service (KMS) key that Amazon Comprehend uses
8160	// to encrypt data on the storage volume attached to the ML compute instance(s)
8161	// that process the analysis job. The VolumeKmsKeyId can be either of the following
8162	// formats:
8163	//
8164	//    * KMS Key ID: "1234abcd-12ab-34cd-56ef-1234567890ab"
8165	//
8166	//    * Amazon Resource Name (ARN) of a KMS Key: "arn:aws:kms:us-west-2:111122223333:key/1234abcd-12ab-34cd-56ef-1234567890ab"
8167	VolumeKmsKeyId *string `type:"string"`
8168
8169	// Configuration parameters for a private Virtual Private Cloud (VPC) containing
8170	// the resources you are using for your document classification job. For more
8171	// information, see Amazon VPC (https://docs.aws.amazon.com/vpc/latest/userguide/what-is-amazon-vpc.html).
8172	VpcConfig *VpcConfig `type:"structure"`
8173}
8174
8175// String returns the string representation
8176func (s DocumentClassificationJobProperties) String() string {
8177	return awsutil.Prettify(s)
8178}
8179
8180// GoString returns the string representation
8181func (s DocumentClassificationJobProperties) GoString() string {
8182	return s.String()
8183}
8184
8185// SetDataAccessRoleArn sets the DataAccessRoleArn field's value.
8186func (s *DocumentClassificationJobProperties) SetDataAccessRoleArn(v string) *DocumentClassificationJobProperties {
8187	s.DataAccessRoleArn = &v
8188	return s
8189}
8190
8191// SetDocumentClassifierArn sets the DocumentClassifierArn field's value.
8192func (s *DocumentClassificationJobProperties) SetDocumentClassifierArn(v string) *DocumentClassificationJobProperties {
8193	s.DocumentClassifierArn = &v
8194	return s
8195}
8196
8197// SetEndTime sets the EndTime field's value.
8198func (s *DocumentClassificationJobProperties) SetEndTime(v time.Time) *DocumentClassificationJobProperties {
8199	s.EndTime = &v
8200	return s
8201}
8202
8203// SetInputDataConfig sets the InputDataConfig field's value.
8204func (s *DocumentClassificationJobProperties) SetInputDataConfig(v *InputDataConfig) *DocumentClassificationJobProperties {
8205	s.InputDataConfig = v
8206	return s
8207}
8208
8209// SetJobId sets the JobId field's value.
8210func (s *DocumentClassificationJobProperties) SetJobId(v string) *DocumentClassificationJobProperties {
8211	s.JobId = &v
8212	return s
8213}
8214
8215// SetJobName sets the JobName field's value.
8216func (s *DocumentClassificationJobProperties) SetJobName(v string) *DocumentClassificationJobProperties {
8217	s.JobName = &v
8218	return s
8219}
8220
8221// SetJobStatus sets the JobStatus field's value.
8222func (s *DocumentClassificationJobProperties) SetJobStatus(v string) *DocumentClassificationJobProperties {
8223	s.JobStatus = &v
8224	return s
8225}
8226
8227// SetMessage sets the Message field's value.
8228func (s *DocumentClassificationJobProperties) SetMessage(v string) *DocumentClassificationJobProperties {
8229	s.Message = &v
8230	return s
8231}
8232
8233// SetOutputDataConfig sets the OutputDataConfig field's value.
8234func (s *DocumentClassificationJobProperties) SetOutputDataConfig(v *OutputDataConfig) *DocumentClassificationJobProperties {
8235	s.OutputDataConfig = v
8236	return s
8237}
8238
8239// SetSubmitTime sets the SubmitTime field's value.
8240func (s *DocumentClassificationJobProperties) SetSubmitTime(v time.Time) *DocumentClassificationJobProperties {
8241	s.SubmitTime = &v
8242	return s
8243}
8244
8245// SetVolumeKmsKeyId sets the VolumeKmsKeyId field's value.
8246func (s *DocumentClassificationJobProperties) SetVolumeKmsKeyId(v string) *DocumentClassificationJobProperties {
8247	s.VolumeKmsKeyId = &v
8248	return s
8249}
8250
8251// SetVpcConfig sets the VpcConfig field's value.
8252func (s *DocumentClassificationJobProperties) SetVpcConfig(v *VpcConfig) *DocumentClassificationJobProperties {
8253	s.VpcConfig = v
8254	return s
8255}
8256
8257// Provides information for filtering a list of document classifiers. You can
8258// only specify one filtering parameter in a request. For more information,
8259// see the operation.
8260type DocumentClassifierFilter struct {
8261	_ struct{} `type:"structure"`
8262
8263	// Filters the list of classifiers based on status.
8264	Status *string `type:"string" enum:"ModelStatus"`
8265
8266	// Filters the list of classifiers based on the time that the classifier was
8267	// submitted for processing. Returns only classifiers submitted after the specified
8268	// time. Classifiers are returned in descending order, newest to oldest.
8269	SubmitTimeAfter *time.Time `type:"timestamp"`
8270
8271	// Filters the list of classifiers based on the time that the classifier was
8272	// submitted for processing. Returns only classifiers submitted before the specified
8273	// time. Classifiers are returned in ascending order, oldest to newest.
8274	SubmitTimeBefore *time.Time `type:"timestamp"`
8275}
8276
8277// String returns the string representation
8278func (s DocumentClassifierFilter) String() string {
8279	return awsutil.Prettify(s)
8280}
8281
8282// GoString returns the string representation
8283func (s DocumentClassifierFilter) GoString() string {
8284	return s.String()
8285}
8286
8287// SetStatus sets the Status field's value.
8288func (s *DocumentClassifierFilter) SetStatus(v string) *DocumentClassifierFilter {
8289	s.Status = &v
8290	return s
8291}
8292
8293// SetSubmitTimeAfter sets the SubmitTimeAfter field's value.
8294func (s *DocumentClassifierFilter) SetSubmitTimeAfter(v time.Time) *DocumentClassifierFilter {
8295	s.SubmitTimeAfter = &v
8296	return s
8297}
8298
8299// SetSubmitTimeBefore sets the SubmitTimeBefore field's value.
8300func (s *DocumentClassifierFilter) SetSubmitTimeBefore(v time.Time) *DocumentClassifierFilter {
8301	s.SubmitTimeBefore = &v
8302	return s
8303}
8304
8305// The input properties for training a document classifier.
8306//
8307// For more information on how the input file is formatted, see how-document-classification-training-data.
8308type DocumentClassifierInputDataConfig struct {
8309	_ struct{} `type:"structure"`
8310
8311	// Indicates the delimiter used to separate each label for training a multi-label
8312	// classifier. The default delimiter between labels is a pipe (|). You can use
8313	// a different character as a delimiter (if it's an allowed character) by specifying
8314	// it under Delimiter for labels. If the training documents use a delimiter
8315	// other than the default or the delimiter you specify, the labels on that line
8316	// will be combined to make a single unique label, such as LABELLABELLABEL.
8317	LabelDelimiter *string `min:"1" type:"string"`
8318
8319	// The Amazon S3 URI for the input data. The S3 bucket must be in the same region
8320	// as the API endpoint that you are calling. The URI can point to a single input
8321	// file or it can provide the prefix for a collection of input files.
8322	//
8323	// For example, if you use the URI S3://bucketName/prefix, if the prefix is
8324	// a single file, Amazon Comprehend uses that file as input. If more than one
8325	// file begins with the prefix, Amazon Comprehend uses all of them as input.
8326	//
8327	// S3Uri is a required field
8328	S3Uri *string `type:"string" required:"true"`
8329}
8330
8331// String returns the string representation
8332func (s DocumentClassifierInputDataConfig) String() string {
8333	return awsutil.Prettify(s)
8334}
8335
8336// GoString returns the string representation
8337func (s DocumentClassifierInputDataConfig) GoString() string {
8338	return s.String()
8339}
8340
8341// Validate inspects the fields of the type to determine if they are valid.
8342func (s *DocumentClassifierInputDataConfig) Validate() error {
8343	invalidParams := request.ErrInvalidParams{Context: "DocumentClassifierInputDataConfig"}
8344	if s.LabelDelimiter != nil && len(*s.LabelDelimiter) < 1 {
8345		invalidParams.Add(request.NewErrParamMinLen("LabelDelimiter", 1))
8346	}
8347	if s.S3Uri == nil {
8348		invalidParams.Add(request.NewErrParamRequired("S3Uri"))
8349	}
8350
8351	if invalidParams.Len() > 0 {
8352		return invalidParams
8353	}
8354	return nil
8355}
8356
8357// SetLabelDelimiter sets the LabelDelimiter field's value.
8358func (s *DocumentClassifierInputDataConfig) SetLabelDelimiter(v string) *DocumentClassifierInputDataConfig {
8359	s.LabelDelimiter = &v
8360	return s
8361}
8362
8363// SetS3Uri sets the S3Uri field's value.
8364func (s *DocumentClassifierInputDataConfig) SetS3Uri(v string) *DocumentClassifierInputDataConfig {
8365	s.S3Uri = &v
8366	return s
8367}
8368
8369// Provides output results configuration parameters for custom classifier jobs.
8370type DocumentClassifierOutputDataConfig struct {
8371	_ struct{} `type:"structure"`
8372
8373	// ID for the AWS Key Management Service (KMS) key that Amazon Comprehend uses
8374	// to encrypt the output results from an analysis job. The KmsKeyId can be one
8375	// of the following formats:
8376	//
8377	//    * KMS Key ID: "1234abcd-12ab-34cd-56ef-1234567890ab"
8378	//
8379	//    * Amazon Resource Name (ARN) of a KMS Key: "arn:aws:kms:us-west-2:111122223333:key/1234abcd-12ab-34cd-56ef-1234567890ab"
8380	//
8381	//    * KMS Key Alias: "alias/ExampleAlias"
8382	//
8383	//    * ARN of a KMS Key Alias: "arn:aws:kms:us-west-2:111122223333:alias/ExampleAlias"
8384	KmsKeyId *string `type:"string"`
8385
8386	// When you use the OutputDataConfig object while creating a custom classifier,
8387	// you specify the Amazon S3 location where you want to write the confusion
8388	// matrix. The URI must be in the same region as the API endpoint that you are
8389	// calling. The location is used as the prefix for the actual location of this
8390	// output file.
8391	//
8392	// When the custom classifier job is finished, the service creates the output
8393	// file in a directory specific to the job. The S3Uri field contains the location
8394	// of the output file, called output.tar.gz. It is a compressed archive that
8395	// contains the confusion matrix.
8396	S3Uri *string `type:"string"`
8397}
8398
8399// String returns the string representation
8400func (s DocumentClassifierOutputDataConfig) String() string {
8401	return awsutil.Prettify(s)
8402}
8403
8404// GoString returns the string representation
8405func (s DocumentClassifierOutputDataConfig) GoString() string {
8406	return s.String()
8407}
8408
8409// SetKmsKeyId sets the KmsKeyId field's value.
8410func (s *DocumentClassifierOutputDataConfig) SetKmsKeyId(v string) *DocumentClassifierOutputDataConfig {
8411	s.KmsKeyId = &v
8412	return s
8413}
8414
8415// SetS3Uri sets the S3Uri field's value.
8416func (s *DocumentClassifierOutputDataConfig) SetS3Uri(v string) *DocumentClassifierOutputDataConfig {
8417	s.S3Uri = &v
8418	return s
8419}
8420
8421// Provides information about a document classifier.
8422type DocumentClassifierProperties struct {
8423	_ struct{} `type:"structure"`
8424
8425	// Information about the document classifier, including the number of documents
8426	// used for training the classifier, the number of documents used for test the
8427	// classifier, and an accuracy rating.
8428	ClassifierMetadata *ClassifierMetadata `type:"structure" sensitive:"true"`
8429
8430	// The Amazon Resource Name (ARN) of the AWS Identity and Management (IAM) role
8431	// that grants Amazon Comprehend read access to your input data.
8432	DataAccessRoleArn *string `min:"20" type:"string"`
8433
8434	// The Amazon Resource Name (ARN) that identifies the document classifier.
8435	DocumentClassifierArn *string `type:"string"`
8436
8437	// The time that training the document classifier completed.
8438	EndTime *time.Time `type:"timestamp"`
8439
8440	// The input data configuration that you supplied when you created the document
8441	// classifier for training.
8442	InputDataConfig *DocumentClassifierInputDataConfig `type:"structure"`
8443
8444	// The language code for the language of the documents that the classifier was
8445	// trained on.
8446	LanguageCode *string `type:"string" enum:"LanguageCode"`
8447
8448	// Additional information about the status of the classifier.
8449	Message *string `type:"string"`
8450
8451	// Indicates the mode in which the specific classifier was trained. This also
8452	// indicates the format of input documents and the format of the confusion matrix.
8453	// Each classifier can only be trained in one mode and this cannot be changed
8454	// once the classifier is trained.
8455	Mode *string `type:"string" enum:"DocumentClassifierMode"`
8456
8457	// Provides output results configuration parameters for custom classifier jobs.
8458	OutputDataConfig *DocumentClassifierOutputDataConfig `type:"structure"`
8459
8460	// The status of the document classifier. If the status is TRAINED the classifier
8461	// is ready to use. If the status is FAILED you can see additional information
8462	// about why the classifier wasn't trained in the Message field.
8463	Status *string `type:"string" enum:"ModelStatus"`
8464
8465	// The time that the document classifier was submitted for training.
8466	SubmitTime *time.Time `type:"timestamp"`
8467
8468	// The time that training of the document classifier was completed. Indicates
8469	// the time when the training completes on documentation classifiers. You are
8470	// billed for the time interval between this time and the value of TrainingStartTime.
8471	TrainingEndTime *time.Time `type:"timestamp"`
8472
8473	// Indicates the time when the training starts on documentation classifiers.
8474	// You are billed for the time interval between this time and the value of TrainingEndTime.
8475	TrainingStartTime *time.Time `type:"timestamp"`
8476
8477	// ID for the AWS Key Management Service (KMS) key that Amazon Comprehend uses
8478	// to encrypt data on the storage volume attached to the ML compute instance(s)
8479	// that process the analysis job. The VolumeKmsKeyId can be either of the following
8480	// formats:
8481	//
8482	//    * KMS Key ID: "1234abcd-12ab-34cd-56ef-1234567890ab"
8483	//
8484	//    * Amazon Resource Name (ARN) of a KMS Key: "arn:aws:kms:us-west-2:111122223333:key/1234abcd-12ab-34cd-56ef-1234567890ab"
8485	VolumeKmsKeyId *string `type:"string"`
8486
8487	// Configuration parameters for a private Virtual Private Cloud (VPC) containing
8488	// the resources you are using for your custom classifier. For more information,
8489	// see Amazon VPC (https://docs.aws.amazon.com/vpc/latest/userguide/what-is-amazon-vpc.html).
8490	VpcConfig *VpcConfig `type:"structure"`
8491}
8492
8493// String returns the string representation
8494func (s DocumentClassifierProperties) String() string {
8495	return awsutil.Prettify(s)
8496}
8497
8498// GoString returns the string representation
8499func (s DocumentClassifierProperties) GoString() string {
8500	return s.String()
8501}
8502
8503// SetClassifierMetadata sets the ClassifierMetadata field's value.
8504func (s *DocumentClassifierProperties) SetClassifierMetadata(v *ClassifierMetadata) *DocumentClassifierProperties {
8505	s.ClassifierMetadata = v
8506	return s
8507}
8508
8509// SetDataAccessRoleArn sets the DataAccessRoleArn field's value.
8510func (s *DocumentClassifierProperties) SetDataAccessRoleArn(v string) *DocumentClassifierProperties {
8511	s.DataAccessRoleArn = &v
8512	return s
8513}
8514
8515// SetDocumentClassifierArn sets the DocumentClassifierArn field's value.
8516func (s *DocumentClassifierProperties) SetDocumentClassifierArn(v string) *DocumentClassifierProperties {
8517	s.DocumentClassifierArn = &v
8518	return s
8519}
8520
8521// SetEndTime sets the EndTime field's value.
8522func (s *DocumentClassifierProperties) SetEndTime(v time.Time) *DocumentClassifierProperties {
8523	s.EndTime = &v
8524	return s
8525}
8526
8527// SetInputDataConfig sets the InputDataConfig field's value.
8528func (s *DocumentClassifierProperties) SetInputDataConfig(v *DocumentClassifierInputDataConfig) *DocumentClassifierProperties {
8529	s.InputDataConfig = v
8530	return s
8531}
8532
8533// SetLanguageCode sets the LanguageCode field's value.
8534func (s *DocumentClassifierProperties) SetLanguageCode(v string) *DocumentClassifierProperties {
8535	s.LanguageCode = &v
8536	return s
8537}
8538
8539// SetMessage sets the Message field's value.
8540func (s *DocumentClassifierProperties) SetMessage(v string) *DocumentClassifierProperties {
8541	s.Message = &v
8542	return s
8543}
8544
8545// SetMode sets the Mode field's value.
8546func (s *DocumentClassifierProperties) SetMode(v string) *DocumentClassifierProperties {
8547	s.Mode = &v
8548	return s
8549}
8550
8551// SetOutputDataConfig sets the OutputDataConfig field's value.
8552func (s *DocumentClassifierProperties) SetOutputDataConfig(v *DocumentClassifierOutputDataConfig) *DocumentClassifierProperties {
8553	s.OutputDataConfig = v
8554	return s
8555}
8556
8557// SetStatus sets the Status field's value.
8558func (s *DocumentClassifierProperties) SetStatus(v string) *DocumentClassifierProperties {
8559	s.Status = &v
8560	return s
8561}
8562
8563// SetSubmitTime sets the SubmitTime field's value.
8564func (s *DocumentClassifierProperties) SetSubmitTime(v time.Time) *DocumentClassifierProperties {
8565	s.SubmitTime = &v
8566	return s
8567}
8568
8569// SetTrainingEndTime sets the TrainingEndTime field's value.
8570func (s *DocumentClassifierProperties) SetTrainingEndTime(v time.Time) *DocumentClassifierProperties {
8571	s.TrainingEndTime = &v
8572	return s
8573}
8574
8575// SetTrainingStartTime sets the TrainingStartTime field's value.
8576func (s *DocumentClassifierProperties) SetTrainingStartTime(v time.Time) *DocumentClassifierProperties {
8577	s.TrainingStartTime = &v
8578	return s
8579}
8580
8581// SetVolumeKmsKeyId sets the VolumeKmsKeyId field's value.
8582func (s *DocumentClassifierProperties) SetVolumeKmsKeyId(v string) *DocumentClassifierProperties {
8583	s.VolumeKmsKeyId = &v
8584	return s
8585}
8586
8587// SetVpcConfig sets the VpcConfig field's value.
8588func (s *DocumentClassifierProperties) SetVpcConfig(v *VpcConfig) *DocumentClassifierProperties {
8589	s.VpcConfig = v
8590	return s
8591}
8592
8593// Specifies one of the label or labels that categorize the document being analyzed.
8594type DocumentLabel struct {
8595	_ struct{} `type:"structure"`
8596
8597	// The name of the label.
8598	Name *string `min:"1" type:"string"`
8599
8600	// The confidence score that Amazon Comprehend has this label correctly attributed.
8601	Score *float64 `type:"float"`
8602}
8603
8604// String returns the string representation
8605func (s DocumentLabel) String() string {
8606	return awsutil.Prettify(s)
8607}
8608
8609// GoString returns the string representation
8610func (s DocumentLabel) GoString() string {
8611	return s.String()
8612}
8613
8614// SetName sets the Name field's value.
8615func (s *DocumentLabel) SetName(v string) *DocumentLabel {
8616	s.Name = &v
8617	return s
8618}
8619
8620// SetScore sets the Score field's value.
8621func (s *DocumentLabel) SetScore(v float64) *DocumentLabel {
8622	s.Score = &v
8623	return s
8624}
8625
8626// Returns the code for the dominant language in the input text and the level
8627// of confidence that Amazon Comprehend has in the accuracy of the detection.
8628type DominantLanguage struct {
8629	_ struct{} `type:"structure"`
8630
8631	// The RFC 5646 language code for the dominant language. For more information
8632	// about RFC 5646, see Tags for Identifying Languages (https://tools.ietf.org/html/rfc5646)
8633	// on the IETF Tools web site.
8634	LanguageCode *string `min:"1" type:"string"`
8635
8636	// The level of confidence that Amazon Comprehend has in the accuracy of the
8637	// detection.
8638	Score *float64 `type:"float"`
8639}
8640
8641// String returns the string representation
8642func (s DominantLanguage) String() string {
8643	return awsutil.Prettify(s)
8644}
8645
8646// GoString returns the string representation
8647func (s DominantLanguage) GoString() string {
8648	return s.String()
8649}
8650
8651// SetLanguageCode sets the LanguageCode field's value.
8652func (s *DominantLanguage) SetLanguageCode(v string) *DominantLanguage {
8653	s.LanguageCode = &v
8654	return s
8655}
8656
8657// SetScore sets the Score field's value.
8658func (s *DominantLanguage) SetScore(v float64) *DominantLanguage {
8659	s.Score = &v
8660	return s
8661}
8662
8663// Provides information for filtering a list of dominant language detection
8664// jobs. For more information, see the operation.
8665type DominantLanguageDetectionJobFilter struct {
8666	_ struct{} `type:"structure"`
8667
8668	// Filters on the name of the job.
8669	JobName *string `min:"1" type:"string"`
8670
8671	// Filters the list of jobs based on job status. Returns only jobs with the
8672	// specified status.
8673	JobStatus *string `type:"string" enum:"JobStatus"`
8674
8675	// Filters the list of jobs based on the time that the job was submitted for
8676	// processing. Returns only jobs submitted after the specified time. Jobs are
8677	// returned in descending order, newest to oldest.
8678	SubmitTimeAfter *time.Time `type:"timestamp"`
8679
8680	// Filters the list of jobs based on the time that the job was submitted for
8681	// processing. Returns only jobs submitted before the specified time. Jobs are
8682	// returned in ascending order, oldest to newest.
8683	SubmitTimeBefore *time.Time `type:"timestamp"`
8684}
8685
8686// String returns the string representation
8687func (s DominantLanguageDetectionJobFilter) String() string {
8688	return awsutil.Prettify(s)
8689}
8690
8691// GoString returns the string representation
8692func (s DominantLanguageDetectionJobFilter) GoString() string {
8693	return s.String()
8694}
8695
8696// Validate inspects the fields of the type to determine if they are valid.
8697func (s *DominantLanguageDetectionJobFilter) Validate() error {
8698	invalidParams := request.ErrInvalidParams{Context: "DominantLanguageDetectionJobFilter"}
8699	if s.JobName != nil && len(*s.JobName) < 1 {
8700		invalidParams.Add(request.NewErrParamMinLen("JobName", 1))
8701	}
8702
8703	if invalidParams.Len() > 0 {
8704		return invalidParams
8705	}
8706	return nil
8707}
8708
8709// SetJobName sets the JobName field's value.
8710func (s *DominantLanguageDetectionJobFilter) SetJobName(v string) *DominantLanguageDetectionJobFilter {
8711	s.JobName = &v
8712	return s
8713}
8714
8715// SetJobStatus sets the JobStatus field's value.
8716func (s *DominantLanguageDetectionJobFilter) SetJobStatus(v string) *DominantLanguageDetectionJobFilter {
8717	s.JobStatus = &v
8718	return s
8719}
8720
8721// SetSubmitTimeAfter sets the SubmitTimeAfter field's value.
8722func (s *DominantLanguageDetectionJobFilter) SetSubmitTimeAfter(v time.Time) *DominantLanguageDetectionJobFilter {
8723	s.SubmitTimeAfter = &v
8724	return s
8725}
8726
8727// SetSubmitTimeBefore sets the SubmitTimeBefore field's value.
8728func (s *DominantLanguageDetectionJobFilter) SetSubmitTimeBefore(v time.Time) *DominantLanguageDetectionJobFilter {
8729	s.SubmitTimeBefore = &v
8730	return s
8731}
8732
8733// Provides information about a dominant language detection job.
8734type DominantLanguageDetectionJobProperties struct {
8735	_ struct{} `type:"structure"`
8736
8737	// The Amazon Resource Name (ARN) that gives Amazon Comprehend read access to
8738	// your input data.
8739	DataAccessRoleArn *string `min:"20" type:"string"`
8740
8741	// The time that the dominant language detection job completed.
8742	EndTime *time.Time `type:"timestamp"`
8743
8744	// The input data configuration that you supplied when you created the dominant
8745	// language detection job.
8746	InputDataConfig *InputDataConfig `type:"structure"`
8747
8748	// The identifier assigned to the dominant language detection job.
8749	JobId *string `min:"1" type:"string"`
8750
8751	// The name that you assigned to the dominant language detection job.
8752	JobName *string `min:"1" type:"string"`
8753
8754	// The current status of the dominant language detection job. If the status
8755	// is FAILED, the Message field shows the reason for the failure.
8756	JobStatus *string `type:"string" enum:"JobStatus"`
8757
8758	// A description for the status of a job.
8759	Message *string `type:"string"`
8760
8761	// The output data configuration that you supplied when you created the dominant
8762	// language detection job.
8763	OutputDataConfig *OutputDataConfig `type:"structure"`
8764
8765	// The time that the dominant language detection job was submitted for processing.
8766	SubmitTime *time.Time `type:"timestamp"`
8767
8768	// ID for the AWS Key Management Service (KMS) key that Amazon Comprehend uses
8769	// to encrypt data on the storage volume attached to the ML compute instance(s)
8770	// that process the analysis job. The VolumeKmsKeyId can be either of the following
8771	// formats:
8772	//
8773	//    * KMS Key ID: "1234abcd-12ab-34cd-56ef-1234567890ab"
8774	//
8775	//    * Amazon Resource Name (ARN) of a KMS Key: "arn:aws:kms:us-west-2:111122223333:key/1234abcd-12ab-34cd-56ef-1234567890ab"
8776	VolumeKmsKeyId *string `type:"string"`
8777
8778	// Configuration parameters for a private Virtual Private Cloud (VPC) containing
8779	// the resources you are using for your dominant language detection job. For
8780	// more information, see Amazon VPC (https://docs.aws.amazon.com/vpc/latest/userguide/what-is-amazon-vpc.html).
8781	VpcConfig *VpcConfig `type:"structure"`
8782}
8783
8784// String returns the string representation
8785func (s DominantLanguageDetectionJobProperties) String() string {
8786	return awsutil.Prettify(s)
8787}
8788
8789// GoString returns the string representation
8790func (s DominantLanguageDetectionJobProperties) GoString() string {
8791	return s.String()
8792}
8793
8794// SetDataAccessRoleArn sets the DataAccessRoleArn field's value.
8795func (s *DominantLanguageDetectionJobProperties) SetDataAccessRoleArn(v string) *DominantLanguageDetectionJobProperties {
8796	s.DataAccessRoleArn = &v
8797	return s
8798}
8799
8800// SetEndTime sets the EndTime field's value.
8801func (s *DominantLanguageDetectionJobProperties) SetEndTime(v time.Time) *DominantLanguageDetectionJobProperties {
8802	s.EndTime = &v
8803	return s
8804}
8805
8806// SetInputDataConfig sets the InputDataConfig field's value.
8807func (s *DominantLanguageDetectionJobProperties) SetInputDataConfig(v *InputDataConfig) *DominantLanguageDetectionJobProperties {
8808	s.InputDataConfig = v
8809	return s
8810}
8811
8812// SetJobId sets the JobId field's value.
8813func (s *DominantLanguageDetectionJobProperties) SetJobId(v string) *DominantLanguageDetectionJobProperties {
8814	s.JobId = &v
8815	return s
8816}
8817
8818// SetJobName sets the JobName field's value.
8819func (s *DominantLanguageDetectionJobProperties) SetJobName(v string) *DominantLanguageDetectionJobProperties {
8820	s.JobName = &v
8821	return s
8822}
8823
8824// SetJobStatus sets the JobStatus field's value.
8825func (s *DominantLanguageDetectionJobProperties) SetJobStatus(v string) *DominantLanguageDetectionJobProperties {
8826	s.JobStatus = &v
8827	return s
8828}
8829
8830// SetMessage sets the Message field's value.
8831func (s *DominantLanguageDetectionJobProperties) SetMessage(v string) *DominantLanguageDetectionJobProperties {
8832	s.Message = &v
8833	return s
8834}
8835
8836// SetOutputDataConfig sets the OutputDataConfig field's value.
8837func (s *DominantLanguageDetectionJobProperties) SetOutputDataConfig(v *OutputDataConfig) *DominantLanguageDetectionJobProperties {
8838	s.OutputDataConfig = v
8839	return s
8840}
8841
8842// SetSubmitTime sets the SubmitTime field's value.
8843func (s *DominantLanguageDetectionJobProperties) SetSubmitTime(v time.Time) *DominantLanguageDetectionJobProperties {
8844	s.SubmitTime = &v
8845	return s
8846}
8847
8848// SetVolumeKmsKeyId sets the VolumeKmsKeyId field's value.
8849func (s *DominantLanguageDetectionJobProperties) SetVolumeKmsKeyId(v string) *DominantLanguageDetectionJobProperties {
8850	s.VolumeKmsKeyId = &v
8851	return s
8852}
8853
8854// SetVpcConfig sets the VpcConfig field's value.
8855func (s *DominantLanguageDetectionJobProperties) SetVpcConfig(v *VpcConfig) *DominantLanguageDetectionJobProperties {
8856	s.VpcConfig = v
8857	return s
8858}
8859
8860// The filter used to determine which endpoints are are returned. You can filter
8861// jobs on their name, model, status, or the date and time that they were created.
8862// You can only set one filter at a time.
8863type EndpointFilter struct {
8864	_ struct{} `type:"structure"`
8865
8866	// Specifies a date after which the returned endpoint or endpoints were created.
8867	CreationTimeAfter *time.Time `type:"timestamp"`
8868
8869	// Specifies a date before which the returned endpoint or endpoints were created.
8870	CreationTimeBefore *time.Time `type:"timestamp"`
8871
8872	// The Amazon Resource Number (ARN) of the model to which the endpoint is attached.
8873	ModelArn *string `type:"string"`
8874
8875	// Specifies the status of the endpoint being returned. Possible values are:
8876	// Creating, Ready, Updating, Deleting, Failed.
8877	Status *string `type:"string" enum:"EndpointStatus"`
8878}
8879
8880// String returns the string representation
8881func (s EndpointFilter) String() string {
8882	return awsutil.Prettify(s)
8883}
8884
8885// GoString returns the string representation
8886func (s EndpointFilter) GoString() string {
8887	return s.String()
8888}
8889
8890// SetCreationTimeAfter sets the CreationTimeAfter field's value.
8891func (s *EndpointFilter) SetCreationTimeAfter(v time.Time) *EndpointFilter {
8892	s.CreationTimeAfter = &v
8893	return s
8894}
8895
8896// SetCreationTimeBefore sets the CreationTimeBefore field's value.
8897func (s *EndpointFilter) SetCreationTimeBefore(v time.Time) *EndpointFilter {
8898	s.CreationTimeBefore = &v
8899	return s
8900}
8901
8902// SetModelArn sets the ModelArn field's value.
8903func (s *EndpointFilter) SetModelArn(v string) *EndpointFilter {
8904	s.ModelArn = &v
8905	return s
8906}
8907
8908// SetStatus sets the Status field's value.
8909func (s *EndpointFilter) SetStatus(v string) *EndpointFilter {
8910	s.Status = &v
8911	return s
8912}
8913
8914// Specifies information about the specified endpoint.
8915type EndpointProperties struct {
8916	_ struct{} `type:"structure"`
8917
8918	// The creation date and time of the endpoint.
8919	CreationTime *time.Time `type:"timestamp"`
8920
8921	// The number of inference units currently used by the model using this endpoint.
8922	CurrentInferenceUnits *int64 `min:"1" type:"integer"`
8923
8924	// The desired number of inference units to be used by the model using this
8925	// endpoint. Each inference unit represents of a throughput of 100 characters
8926	// per second.
8927	DesiredInferenceUnits *int64 `min:"1" type:"integer"`
8928
8929	// The Amazon Resource Number (ARN) of the endpoint.
8930	EndpointArn *string `type:"string"`
8931
8932	// The date and time that the endpoint was last modified.
8933	LastModifiedTime *time.Time `type:"timestamp"`
8934
8935	// Specifies a reason for failure in cases of Failed status.
8936	Message *string `type:"string"`
8937
8938	// The Amazon Resource Number (ARN) of the model to which the endpoint is attached.
8939	ModelArn *string `type:"string"`
8940
8941	// Specifies the status of the endpoint. Because the endpoint updates and creation
8942	// are asynchronous, so customers will need to wait for the endpoint to be Ready
8943	// status before making inference requests.
8944	Status *string `type:"string" enum:"EndpointStatus"`
8945}
8946
8947// String returns the string representation
8948func (s EndpointProperties) String() string {
8949	return awsutil.Prettify(s)
8950}
8951
8952// GoString returns the string representation
8953func (s EndpointProperties) GoString() string {
8954	return s.String()
8955}
8956
8957// SetCreationTime sets the CreationTime field's value.
8958func (s *EndpointProperties) SetCreationTime(v time.Time) *EndpointProperties {
8959	s.CreationTime = &v
8960	return s
8961}
8962
8963// SetCurrentInferenceUnits sets the CurrentInferenceUnits field's value.
8964func (s *EndpointProperties) SetCurrentInferenceUnits(v int64) *EndpointProperties {
8965	s.CurrentInferenceUnits = &v
8966	return s
8967}
8968
8969// SetDesiredInferenceUnits sets the DesiredInferenceUnits field's value.
8970func (s *EndpointProperties) SetDesiredInferenceUnits(v int64) *EndpointProperties {
8971	s.DesiredInferenceUnits = &v
8972	return s
8973}
8974
8975// SetEndpointArn sets the EndpointArn field's value.
8976func (s *EndpointProperties) SetEndpointArn(v string) *EndpointProperties {
8977	s.EndpointArn = &v
8978	return s
8979}
8980
8981// SetLastModifiedTime sets the LastModifiedTime field's value.
8982func (s *EndpointProperties) SetLastModifiedTime(v time.Time) *EndpointProperties {
8983	s.LastModifiedTime = &v
8984	return s
8985}
8986
8987// SetMessage sets the Message field's value.
8988func (s *EndpointProperties) SetMessage(v string) *EndpointProperties {
8989	s.Message = &v
8990	return s
8991}
8992
8993// SetModelArn sets the ModelArn field's value.
8994func (s *EndpointProperties) SetModelArn(v string) *EndpointProperties {
8995	s.ModelArn = &v
8996	return s
8997}
8998
8999// SetStatus sets the Status field's value.
9000func (s *EndpointProperties) SetStatus(v string) *EndpointProperties {
9001	s.Status = &v
9002	return s
9003}
9004
9005// Provides information for filtering a list of dominant language detection
9006// jobs. For more information, see the operation.
9007type EntitiesDetectionJobFilter struct {
9008	_ struct{} `type:"structure"`
9009
9010	// Filters on the name of the job.
9011	JobName *string `min:"1" type:"string"`
9012
9013	// Filters the list of jobs based on job status. Returns only jobs with the
9014	// specified status.
9015	JobStatus *string `type:"string" enum:"JobStatus"`
9016
9017	// Filters the list of jobs based on the time that the job was submitted for
9018	// processing. Returns only jobs submitted after the specified time. Jobs are
9019	// returned in descending order, newest to oldest.
9020	SubmitTimeAfter *time.Time `type:"timestamp"`
9021
9022	// Filters the list of jobs based on the time that the job was submitted for
9023	// processing. Returns only jobs submitted before the specified time. Jobs are
9024	// returned in ascending order, oldest to newest.
9025	SubmitTimeBefore *time.Time `type:"timestamp"`
9026}
9027
9028// String returns the string representation
9029func (s EntitiesDetectionJobFilter) String() string {
9030	return awsutil.Prettify(s)
9031}
9032
9033// GoString returns the string representation
9034func (s EntitiesDetectionJobFilter) GoString() string {
9035	return s.String()
9036}
9037
9038// Validate inspects the fields of the type to determine if they are valid.
9039func (s *EntitiesDetectionJobFilter) Validate() error {
9040	invalidParams := request.ErrInvalidParams{Context: "EntitiesDetectionJobFilter"}
9041	if s.JobName != nil && len(*s.JobName) < 1 {
9042		invalidParams.Add(request.NewErrParamMinLen("JobName", 1))
9043	}
9044
9045	if invalidParams.Len() > 0 {
9046		return invalidParams
9047	}
9048	return nil
9049}
9050
9051// SetJobName sets the JobName field's value.
9052func (s *EntitiesDetectionJobFilter) SetJobName(v string) *EntitiesDetectionJobFilter {
9053	s.JobName = &v
9054	return s
9055}
9056
9057// SetJobStatus sets the JobStatus field's value.
9058func (s *EntitiesDetectionJobFilter) SetJobStatus(v string) *EntitiesDetectionJobFilter {
9059	s.JobStatus = &v
9060	return s
9061}
9062
9063// SetSubmitTimeAfter sets the SubmitTimeAfter field's value.
9064func (s *EntitiesDetectionJobFilter) SetSubmitTimeAfter(v time.Time) *EntitiesDetectionJobFilter {
9065	s.SubmitTimeAfter = &v
9066	return s
9067}
9068
9069// SetSubmitTimeBefore sets the SubmitTimeBefore field's value.
9070func (s *EntitiesDetectionJobFilter) SetSubmitTimeBefore(v time.Time) *EntitiesDetectionJobFilter {
9071	s.SubmitTimeBefore = &v
9072	return s
9073}
9074
9075// Provides information about an entities detection job.
9076type EntitiesDetectionJobProperties struct {
9077	_ struct{} `type:"structure"`
9078
9079	// The Amazon Resource Name (ARN) that gives Amazon Comprehend read access to
9080	// your input data.
9081	DataAccessRoleArn *string `min:"20" type:"string"`
9082
9083	// The time that the entities detection job completed
9084	EndTime *time.Time `type:"timestamp"`
9085
9086	// The Amazon Resource Name (ARN) that identifies the entity recognizer.
9087	EntityRecognizerArn *string `type:"string"`
9088
9089	// The input data configuration that you supplied when you created the entities
9090	// detection job.
9091	InputDataConfig *InputDataConfig `type:"structure"`
9092
9093	// The identifier assigned to the entities detection job.
9094	JobId *string `min:"1" type:"string"`
9095
9096	// The name that you assigned the entities detection job.
9097	JobName *string `min:"1" type:"string"`
9098
9099	// The current status of the entities detection job. If the status is FAILED,
9100	// the Message field shows the reason for the failure.
9101	JobStatus *string `type:"string" enum:"JobStatus"`
9102
9103	// The language code of the input documents.
9104	LanguageCode *string `type:"string" enum:"LanguageCode"`
9105
9106	// A description of the status of a job.
9107	Message *string `type:"string"`
9108
9109	// The output data configuration that you supplied when you created the entities
9110	// detection job.
9111	OutputDataConfig *OutputDataConfig `type:"structure"`
9112
9113	// The time that the entities detection job was submitted for processing.
9114	SubmitTime *time.Time `type:"timestamp"`
9115
9116	// ID for the AWS Key Management Service (KMS) key that Amazon Comprehend uses
9117	// to encrypt data on the storage volume attached to the ML compute instance(s)
9118	// that process the analysis job. The VolumeKmsKeyId can be either of the following
9119	// formats:
9120	//
9121	//    * KMS Key ID: "1234abcd-12ab-34cd-56ef-1234567890ab"
9122	//
9123	//    * Amazon Resource Name (ARN) of a KMS Key: "arn:aws:kms:us-west-2:111122223333:key/1234abcd-12ab-34cd-56ef-1234567890ab"
9124	VolumeKmsKeyId *string `type:"string"`
9125
9126	// Configuration parameters for a private Virtual Private Cloud (VPC) containing
9127	// the resources you are using for your entity detection job. For more information,
9128	// see Amazon VPC (https://docs.aws.amazon.com/vpc/latest/userguide/what-is-amazon-vpc.html).
9129	VpcConfig *VpcConfig `type:"structure"`
9130}
9131
9132// String returns the string representation
9133func (s EntitiesDetectionJobProperties) String() string {
9134	return awsutil.Prettify(s)
9135}
9136
9137// GoString returns the string representation
9138func (s EntitiesDetectionJobProperties) GoString() string {
9139	return s.String()
9140}
9141
9142// SetDataAccessRoleArn sets the DataAccessRoleArn field's value.
9143func (s *EntitiesDetectionJobProperties) SetDataAccessRoleArn(v string) *EntitiesDetectionJobProperties {
9144	s.DataAccessRoleArn = &v
9145	return s
9146}
9147
9148// SetEndTime sets the EndTime field's value.
9149func (s *EntitiesDetectionJobProperties) SetEndTime(v time.Time) *EntitiesDetectionJobProperties {
9150	s.EndTime = &v
9151	return s
9152}
9153
9154// SetEntityRecognizerArn sets the EntityRecognizerArn field's value.
9155func (s *EntitiesDetectionJobProperties) SetEntityRecognizerArn(v string) *EntitiesDetectionJobProperties {
9156	s.EntityRecognizerArn = &v
9157	return s
9158}
9159
9160// SetInputDataConfig sets the InputDataConfig field's value.
9161func (s *EntitiesDetectionJobProperties) SetInputDataConfig(v *InputDataConfig) *EntitiesDetectionJobProperties {
9162	s.InputDataConfig = v
9163	return s
9164}
9165
9166// SetJobId sets the JobId field's value.
9167func (s *EntitiesDetectionJobProperties) SetJobId(v string) *EntitiesDetectionJobProperties {
9168	s.JobId = &v
9169	return s
9170}
9171
9172// SetJobName sets the JobName field's value.
9173func (s *EntitiesDetectionJobProperties) SetJobName(v string) *EntitiesDetectionJobProperties {
9174	s.JobName = &v
9175	return s
9176}
9177
9178// SetJobStatus sets the JobStatus field's value.
9179func (s *EntitiesDetectionJobProperties) SetJobStatus(v string) *EntitiesDetectionJobProperties {
9180	s.JobStatus = &v
9181	return s
9182}
9183
9184// SetLanguageCode sets the LanguageCode field's value.
9185func (s *EntitiesDetectionJobProperties) SetLanguageCode(v string) *EntitiesDetectionJobProperties {
9186	s.LanguageCode = &v
9187	return s
9188}
9189
9190// SetMessage sets the Message field's value.
9191func (s *EntitiesDetectionJobProperties) SetMessage(v string) *EntitiesDetectionJobProperties {
9192	s.Message = &v
9193	return s
9194}
9195
9196// SetOutputDataConfig sets the OutputDataConfig field's value.
9197func (s *EntitiesDetectionJobProperties) SetOutputDataConfig(v *OutputDataConfig) *EntitiesDetectionJobProperties {
9198	s.OutputDataConfig = v
9199	return s
9200}
9201
9202// SetSubmitTime sets the SubmitTime field's value.
9203func (s *EntitiesDetectionJobProperties) SetSubmitTime(v time.Time) *EntitiesDetectionJobProperties {
9204	s.SubmitTime = &v
9205	return s
9206}
9207
9208// SetVolumeKmsKeyId sets the VolumeKmsKeyId field's value.
9209func (s *EntitiesDetectionJobProperties) SetVolumeKmsKeyId(v string) *EntitiesDetectionJobProperties {
9210	s.VolumeKmsKeyId = &v
9211	return s
9212}
9213
9214// SetVpcConfig sets the VpcConfig field's value.
9215func (s *EntitiesDetectionJobProperties) SetVpcConfig(v *VpcConfig) *EntitiesDetectionJobProperties {
9216	s.VpcConfig = v
9217	return s
9218}
9219
9220// Provides information about an entity.
9221type Entity struct {
9222	_ struct{} `type:"structure"`
9223
9224	// A character offset in the input text that shows where the entity begins (the
9225	// first character is at position 0). The offset returns the position of each
9226	// UTF-8 code point in the string. A code point is the abstract character from
9227	// a particular graphical representation. For example, a multi-byte UTF-8 character
9228	// maps to a single code point.
9229	BeginOffset *int64 `type:"integer"`
9230
9231	// A character offset in the input text that shows where the entity ends. The
9232	// offset returns the position of each UTF-8 code point in the string. A code
9233	// point is the abstract character from a particular graphical representation.
9234	// For example, a multi-byte UTF-8 character maps to a single code point.
9235	EndOffset *int64 `type:"integer"`
9236
9237	// The level of confidence that Amazon Comprehend has in the accuracy of the
9238	// detection.
9239	Score *float64 `type:"float"`
9240
9241	// The text of the entity.
9242	Text *string `min:"1" type:"string"`
9243
9244	// The entity's type.
9245	Type *string `type:"string" enum:"EntityType"`
9246}
9247
9248// String returns the string representation
9249func (s Entity) String() string {
9250	return awsutil.Prettify(s)
9251}
9252
9253// GoString returns the string representation
9254func (s Entity) GoString() string {
9255	return s.String()
9256}
9257
9258// SetBeginOffset sets the BeginOffset field's value.
9259func (s *Entity) SetBeginOffset(v int64) *Entity {
9260	s.BeginOffset = &v
9261	return s
9262}
9263
9264// SetEndOffset sets the EndOffset field's value.
9265func (s *Entity) SetEndOffset(v int64) *Entity {
9266	s.EndOffset = &v
9267	return s
9268}
9269
9270// SetScore sets the Score field's value.
9271func (s *Entity) SetScore(v float64) *Entity {
9272	s.Score = &v
9273	return s
9274}
9275
9276// SetText sets the Text field's value.
9277func (s *Entity) SetText(v string) *Entity {
9278	s.Text = &v
9279	return s
9280}
9281
9282// SetType sets the Type field's value.
9283func (s *Entity) SetType(v string) *Entity {
9284	s.Type = &v
9285	return s
9286}
9287
9288// Describes the annotations associated with a entity recognizer.
9289type EntityRecognizerAnnotations struct {
9290	_ struct{} `type:"structure"`
9291
9292	// Specifies the Amazon S3 location where the annotations for an entity recognizer
9293	// are located. The URI must be in the same region as the API endpoint that
9294	// you are calling.
9295	//
9296	// S3Uri is a required field
9297	S3Uri *string `type:"string" required:"true"`
9298}
9299
9300// String returns the string representation
9301func (s EntityRecognizerAnnotations) String() string {
9302	return awsutil.Prettify(s)
9303}
9304
9305// GoString returns the string representation
9306func (s EntityRecognizerAnnotations) GoString() string {
9307	return s.String()
9308}
9309
9310// Validate inspects the fields of the type to determine if they are valid.
9311func (s *EntityRecognizerAnnotations) Validate() error {
9312	invalidParams := request.ErrInvalidParams{Context: "EntityRecognizerAnnotations"}
9313	if s.S3Uri == nil {
9314		invalidParams.Add(request.NewErrParamRequired("S3Uri"))
9315	}
9316
9317	if invalidParams.Len() > 0 {
9318		return invalidParams
9319	}
9320	return nil
9321}
9322
9323// SetS3Uri sets the S3Uri field's value.
9324func (s *EntityRecognizerAnnotations) SetS3Uri(v string) *EntityRecognizerAnnotations {
9325	s.S3Uri = &v
9326	return s
9327}
9328
9329// Describes the training documents submitted with an entity recognizer.
9330type EntityRecognizerDocuments struct {
9331	_ struct{} `type:"structure"`
9332
9333	// Specifies the Amazon S3 location where the training documents for an entity
9334	// recognizer are located. The URI must be in the same region as the API endpoint
9335	// that you are calling.
9336	//
9337	// S3Uri is a required field
9338	S3Uri *string `type:"string" required:"true"`
9339}
9340
9341// String returns the string representation
9342func (s EntityRecognizerDocuments) String() string {
9343	return awsutil.Prettify(s)
9344}
9345
9346// GoString returns the string representation
9347func (s EntityRecognizerDocuments) GoString() string {
9348	return s.String()
9349}
9350
9351// Validate inspects the fields of the type to determine if they are valid.
9352func (s *EntityRecognizerDocuments) Validate() error {
9353	invalidParams := request.ErrInvalidParams{Context: "EntityRecognizerDocuments"}
9354	if s.S3Uri == nil {
9355		invalidParams.Add(request.NewErrParamRequired("S3Uri"))
9356	}
9357
9358	if invalidParams.Len() > 0 {
9359		return invalidParams
9360	}
9361	return nil
9362}
9363
9364// SetS3Uri sets the S3Uri field's value.
9365func (s *EntityRecognizerDocuments) SetS3Uri(v string) *EntityRecognizerDocuments {
9366	s.S3Uri = &v
9367	return s
9368}
9369
9370// Describes the entity recognizer submitted with an entity recognizer.
9371type EntityRecognizerEntityList struct {
9372	_ struct{} `type:"structure"`
9373
9374	// Specifies the Amazon S3 location where the entity list is located. The URI
9375	// must be in the same region as the API endpoint that you are calling.
9376	//
9377	// S3Uri is a required field
9378	S3Uri *string `type:"string" required:"true"`
9379}
9380
9381// String returns the string representation
9382func (s EntityRecognizerEntityList) String() string {
9383	return awsutil.Prettify(s)
9384}
9385
9386// GoString returns the string representation
9387func (s EntityRecognizerEntityList) GoString() string {
9388	return s.String()
9389}
9390
9391// Validate inspects the fields of the type to determine if they are valid.
9392func (s *EntityRecognizerEntityList) Validate() error {
9393	invalidParams := request.ErrInvalidParams{Context: "EntityRecognizerEntityList"}
9394	if s.S3Uri == nil {
9395		invalidParams.Add(request.NewErrParamRequired("S3Uri"))
9396	}
9397
9398	if invalidParams.Len() > 0 {
9399		return invalidParams
9400	}
9401	return nil
9402}
9403
9404// SetS3Uri sets the S3Uri field's value.
9405func (s *EntityRecognizerEntityList) SetS3Uri(v string) *EntityRecognizerEntityList {
9406	s.S3Uri = &v
9407	return s
9408}
9409
9410// Detailed information about the accuracy of an entity recognizer.
9411type EntityRecognizerEvaluationMetrics struct {
9412	_ struct{} `type:"structure"`
9413
9414	// A measure of how accurate the recognizer results are for the test data. It
9415	// is derived from the Precision and Recall values. The F1Score is the harmonic
9416	// average of the two scores. The highest score is 1, and the worst score is
9417	// 0.
9418	F1Score *float64 `type:"double"`
9419
9420	// A measure of the usefulness of the recognizer results in the test data. High
9421	// precision means that the recognizer returned substantially more relevant
9422	// results than irrelevant ones.
9423	Precision *float64 `type:"double"`
9424
9425	// A measure of how complete the recognizer results are for the test data. High
9426	// recall means that the recognizer returned most of the relevant results.
9427	Recall *float64 `type:"double"`
9428}
9429
9430// String returns the string representation
9431func (s EntityRecognizerEvaluationMetrics) String() string {
9432	return awsutil.Prettify(s)
9433}
9434
9435// GoString returns the string representation
9436func (s EntityRecognizerEvaluationMetrics) GoString() string {
9437	return s.String()
9438}
9439
9440// SetF1Score sets the F1Score field's value.
9441func (s *EntityRecognizerEvaluationMetrics) SetF1Score(v float64) *EntityRecognizerEvaluationMetrics {
9442	s.F1Score = &v
9443	return s
9444}
9445
9446// SetPrecision sets the Precision field's value.
9447func (s *EntityRecognizerEvaluationMetrics) SetPrecision(v float64) *EntityRecognizerEvaluationMetrics {
9448	s.Precision = &v
9449	return s
9450}
9451
9452// SetRecall sets the Recall field's value.
9453func (s *EntityRecognizerEvaluationMetrics) SetRecall(v float64) *EntityRecognizerEvaluationMetrics {
9454	s.Recall = &v
9455	return s
9456}
9457
9458// Provides information for filtering a list of entity recognizers. You can
9459// only specify one filtering parameter in a request. For more information,
9460// see the operation./>
9461type EntityRecognizerFilter struct {
9462	_ struct{} `type:"structure"`
9463
9464	// The status of an entity recognizer.
9465	Status *string `type:"string" enum:"ModelStatus"`
9466
9467	// Filters the list of entities based on the time that the list was submitted
9468	// for processing. Returns only jobs submitted after the specified time. Jobs
9469	// are returned in ascending order, oldest to newest.
9470	SubmitTimeAfter *time.Time `type:"timestamp"`
9471
9472	// Filters the list of entities based on the time that the list was submitted
9473	// for processing. Returns only jobs submitted before the specified time. Jobs
9474	// are returned in descending order, newest to oldest.
9475	SubmitTimeBefore *time.Time `type:"timestamp"`
9476}
9477
9478// String returns the string representation
9479func (s EntityRecognizerFilter) String() string {
9480	return awsutil.Prettify(s)
9481}
9482
9483// GoString returns the string representation
9484func (s EntityRecognizerFilter) GoString() string {
9485	return s.String()
9486}
9487
9488// SetStatus sets the Status field's value.
9489func (s *EntityRecognizerFilter) SetStatus(v string) *EntityRecognizerFilter {
9490	s.Status = &v
9491	return s
9492}
9493
9494// SetSubmitTimeAfter sets the SubmitTimeAfter field's value.
9495func (s *EntityRecognizerFilter) SetSubmitTimeAfter(v time.Time) *EntityRecognizerFilter {
9496	s.SubmitTimeAfter = &v
9497	return s
9498}
9499
9500// SetSubmitTimeBefore sets the SubmitTimeBefore field's value.
9501func (s *EntityRecognizerFilter) SetSubmitTimeBefore(v time.Time) *EntityRecognizerFilter {
9502	s.SubmitTimeBefore = &v
9503	return s
9504}
9505
9506// Specifies the format and location of the input data.
9507type EntityRecognizerInputDataConfig struct {
9508	_ struct{} `type:"structure"`
9509
9510	// S3 location of the annotations file for an entity recognizer.
9511	Annotations *EntityRecognizerAnnotations `type:"structure"`
9512
9513	// S3 location of the documents folder for an entity recognizer
9514	//
9515	// Documents is a required field
9516	Documents *EntityRecognizerDocuments `type:"structure" required:"true"`
9517
9518	// S3 location of the entity list for an entity recognizer.
9519	EntityList *EntityRecognizerEntityList `type:"structure"`
9520
9521	// The entity types in the input data for an entity recognizer. A maximum of
9522	// 12 entity types can be used at one time to train an entity recognizer.
9523	//
9524	// EntityTypes is a required field
9525	EntityTypes []*EntityTypesListItem `type:"list" required:"true"`
9526}
9527
9528// String returns the string representation
9529func (s EntityRecognizerInputDataConfig) String() string {
9530	return awsutil.Prettify(s)
9531}
9532
9533// GoString returns the string representation
9534func (s EntityRecognizerInputDataConfig) GoString() string {
9535	return s.String()
9536}
9537
9538// Validate inspects the fields of the type to determine if they are valid.
9539func (s *EntityRecognizerInputDataConfig) Validate() error {
9540	invalidParams := request.ErrInvalidParams{Context: "EntityRecognizerInputDataConfig"}
9541	if s.Documents == nil {
9542		invalidParams.Add(request.NewErrParamRequired("Documents"))
9543	}
9544	if s.EntityTypes == nil {
9545		invalidParams.Add(request.NewErrParamRequired("EntityTypes"))
9546	}
9547	if s.Annotations != nil {
9548		if err := s.Annotations.Validate(); err != nil {
9549			invalidParams.AddNested("Annotations", err.(request.ErrInvalidParams))
9550		}
9551	}
9552	if s.Documents != nil {
9553		if err := s.Documents.Validate(); err != nil {
9554			invalidParams.AddNested("Documents", err.(request.ErrInvalidParams))
9555		}
9556	}
9557	if s.EntityList != nil {
9558		if err := s.EntityList.Validate(); err != nil {
9559			invalidParams.AddNested("EntityList", err.(request.ErrInvalidParams))
9560		}
9561	}
9562	if s.EntityTypes != nil {
9563		for i, v := range s.EntityTypes {
9564			if v == nil {
9565				continue
9566			}
9567			if err := v.Validate(); err != nil {
9568				invalidParams.AddNested(fmt.Sprintf("%s[%v]", "EntityTypes", i), err.(request.ErrInvalidParams))
9569			}
9570		}
9571	}
9572
9573	if invalidParams.Len() > 0 {
9574		return invalidParams
9575	}
9576	return nil
9577}
9578
9579// SetAnnotations sets the Annotations field's value.
9580func (s *EntityRecognizerInputDataConfig) SetAnnotations(v *EntityRecognizerAnnotations) *EntityRecognizerInputDataConfig {
9581	s.Annotations = v
9582	return s
9583}
9584
9585// SetDocuments sets the Documents field's value.
9586func (s *EntityRecognizerInputDataConfig) SetDocuments(v *EntityRecognizerDocuments) *EntityRecognizerInputDataConfig {
9587	s.Documents = v
9588	return s
9589}
9590
9591// SetEntityList sets the EntityList field's value.
9592func (s *EntityRecognizerInputDataConfig) SetEntityList(v *EntityRecognizerEntityList) *EntityRecognizerInputDataConfig {
9593	s.EntityList = v
9594	return s
9595}
9596
9597// SetEntityTypes sets the EntityTypes field's value.
9598func (s *EntityRecognizerInputDataConfig) SetEntityTypes(v []*EntityTypesListItem) *EntityRecognizerInputDataConfig {
9599	s.EntityTypes = v
9600	return s
9601}
9602
9603// Detailed information about an entity recognizer.
9604type EntityRecognizerMetadata struct {
9605	_ struct{} `type:"structure" sensitive:"true"`
9606
9607	// Entity types from the metadata of an entity recognizer.
9608	EntityTypes []*EntityRecognizerMetadataEntityTypesListItem `type:"list"`
9609
9610	// Detailed information about the accuracy of an entity recognizer.
9611	EvaluationMetrics *EntityRecognizerEvaluationMetrics `type:"structure"`
9612
9613	// The number of documents in the input data that were used to test the entity
9614	// recognizer. Typically this is 10 to 20 percent of the input documents.
9615	NumberOfTestDocuments *int64 `type:"integer"`
9616
9617	// The number of documents in the input data that were used to train the entity
9618	// recognizer. Typically this is 80 to 90 percent of the input documents.
9619	NumberOfTrainedDocuments *int64 `type:"integer"`
9620}
9621
9622// String returns the string representation
9623func (s EntityRecognizerMetadata) String() string {
9624	return awsutil.Prettify(s)
9625}
9626
9627// GoString returns the string representation
9628func (s EntityRecognizerMetadata) GoString() string {
9629	return s.String()
9630}
9631
9632// SetEntityTypes sets the EntityTypes field's value.
9633func (s *EntityRecognizerMetadata) SetEntityTypes(v []*EntityRecognizerMetadataEntityTypesListItem) *EntityRecognizerMetadata {
9634	s.EntityTypes = v
9635	return s
9636}
9637
9638// SetEvaluationMetrics sets the EvaluationMetrics field's value.
9639func (s *EntityRecognizerMetadata) SetEvaluationMetrics(v *EntityRecognizerEvaluationMetrics) *EntityRecognizerMetadata {
9640	s.EvaluationMetrics = v
9641	return s
9642}
9643
9644// SetNumberOfTestDocuments sets the NumberOfTestDocuments field's value.
9645func (s *EntityRecognizerMetadata) SetNumberOfTestDocuments(v int64) *EntityRecognizerMetadata {
9646	s.NumberOfTestDocuments = &v
9647	return s
9648}
9649
9650// SetNumberOfTrainedDocuments sets the NumberOfTrainedDocuments field's value.
9651func (s *EntityRecognizerMetadata) SetNumberOfTrainedDocuments(v int64) *EntityRecognizerMetadata {
9652	s.NumberOfTrainedDocuments = &v
9653	return s
9654}
9655
9656// Individual item from the list of entity types in the metadata of an entity
9657// recognizer.
9658type EntityRecognizerMetadataEntityTypesListItem struct {
9659	_ struct{} `type:"structure"`
9660
9661	// Detailed information about the accuracy of the entity recognizer for a specific
9662	// item on the list of entity types.
9663	EvaluationMetrics *EntityTypesEvaluationMetrics `type:"structure"`
9664
9665	// Indicates the number of times the given entity type was seen in the training
9666	// data.
9667	NumberOfTrainMentions *int64 `type:"integer"`
9668
9669	// Type of entity from the list of entity types in the metadata of an entity
9670	// recognizer.
9671	Type *string `type:"string"`
9672}
9673
9674// String returns the string representation
9675func (s EntityRecognizerMetadataEntityTypesListItem) String() string {
9676	return awsutil.Prettify(s)
9677}
9678
9679// GoString returns the string representation
9680func (s EntityRecognizerMetadataEntityTypesListItem) GoString() string {
9681	return s.String()
9682}
9683
9684// SetEvaluationMetrics sets the EvaluationMetrics field's value.
9685func (s *EntityRecognizerMetadataEntityTypesListItem) SetEvaluationMetrics(v *EntityTypesEvaluationMetrics) *EntityRecognizerMetadataEntityTypesListItem {
9686	s.EvaluationMetrics = v
9687	return s
9688}
9689
9690// SetNumberOfTrainMentions sets the NumberOfTrainMentions field's value.
9691func (s *EntityRecognizerMetadataEntityTypesListItem) SetNumberOfTrainMentions(v int64) *EntityRecognizerMetadataEntityTypesListItem {
9692	s.NumberOfTrainMentions = &v
9693	return s
9694}
9695
9696// SetType sets the Type field's value.
9697func (s *EntityRecognizerMetadataEntityTypesListItem) SetType(v string) *EntityRecognizerMetadataEntityTypesListItem {
9698	s.Type = &v
9699	return s
9700}
9701
9702// Describes information about an entity recognizer.
9703type EntityRecognizerProperties struct {
9704	_ struct{} `type:"structure"`
9705
9706	// The Amazon Resource Name (ARN) of the AWS Identity and Management (IAM) role
9707	// that grants Amazon Comprehend read access to your input data.
9708	DataAccessRoleArn *string `min:"20" type:"string"`
9709
9710	// The time that the recognizer creation completed.
9711	EndTime *time.Time `type:"timestamp"`
9712
9713	// The Amazon Resource Name (ARN) that identifies the entity recognizer.
9714	EntityRecognizerArn *string `type:"string"`
9715
9716	// The input data properties of an entity recognizer.
9717	InputDataConfig *EntityRecognizerInputDataConfig `type:"structure"`
9718
9719	// The language of the input documents. All documents must be in the same language.
9720	// Only English ("en") is currently supported.
9721	LanguageCode *string `type:"string" enum:"LanguageCode"`
9722
9723	// A description of the status of the recognizer.
9724	Message *string `type:"string"`
9725
9726	// Provides information about an entity recognizer.
9727	RecognizerMetadata *EntityRecognizerMetadata `type:"structure" sensitive:"true"`
9728
9729	// Provides the status of the entity recognizer.
9730	Status *string `type:"string" enum:"ModelStatus"`
9731
9732	// The time that the recognizer was submitted for processing.
9733	SubmitTime *time.Time `type:"timestamp"`
9734
9735	// The time that training of the entity recognizer was completed.
9736	TrainingEndTime *time.Time `type:"timestamp"`
9737
9738	// The time that training of the entity recognizer started.
9739	TrainingStartTime *time.Time `type:"timestamp"`
9740
9741	// ID for the AWS Key Management Service (KMS) key that Amazon Comprehend uses
9742	// to encrypt data on the storage volume attached to the ML compute instance(s)
9743	// that process the analysis job. The VolumeKmsKeyId can be either of the following
9744	// formats:
9745	//
9746	//    * KMS Key ID: "1234abcd-12ab-34cd-56ef-1234567890ab"
9747	//
9748	//    * Amazon Resource Name (ARN) of a KMS Key: "arn:aws:kms:us-west-2:111122223333:key/1234abcd-12ab-34cd-56ef-1234567890ab"
9749	VolumeKmsKeyId *string `type:"string"`
9750
9751	// Configuration parameters for a private Virtual Private Cloud (VPC) containing
9752	// the resources you are using for your custom entity recognizer. For more information,
9753	// see Amazon VPC (https://docs.aws.amazon.com/vpc/latest/userguide/what-is-amazon-vpc.html).
9754	VpcConfig *VpcConfig `type:"structure"`
9755}
9756
9757// String returns the string representation
9758func (s EntityRecognizerProperties) String() string {
9759	return awsutil.Prettify(s)
9760}
9761
9762// GoString returns the string representation
9763func (s EntityRecognizerProperties) GoString() string {
9764	return s.String()
9765}
9766
9767// SetDataAccessRoleArn sets the DataAccessRoleArn field's value.
9768func (s *EntityRecognizerProperties) SetDataAccessRoleArn(v string) *EntityRecognizerProperties {
9769	s.DataAccessRoleArn = &v
9770	return s
9771}
9772
9773// SetEndTime sets the EndTime field's value.
9774func (s *EntityRecognizerProperties) SetEndTime(v time.Time) *EntityRecognizerProperties {
9775	s.EndTime = &v
9776	return s
9777}
9778
9779// SetEntityRecognizerArn sets the EntityRecognizerArn field's value.
9780func (s *EntityRecognizerProperties) SetEntityRecognizerArn(v string) *EntityRecognizerProperties {
9781	s.EntityRecognizerArn = &v
9782	return s
9783}
9784
9785// SetInputDataConfig sets the InputDataConfig field's value.
9786func (s *EntityRecognizerProperties) SetInputDataConfig(v *EntityRecognizerInputDataConfig) *EntityRecognizerProperties {
9787	s.InputDataConfig = v
9788	return s
9789}
9790
9791// SetLanguageCode sets the LanguageCode field's value.
9792func (s *EntityRecognizerProperties) SetLanguageCode(v string) *EntityRecognizerProperties {
9793	s.LanguageCode = &v
9794	return s
9795}
9796
9797// SetMessage sets the Message field's value.
9798func (s *EntityRecognizerProperties) SetMessage(v string) *EntityRecognizerProperties {
9799	s.Message = &v
9800	return s
9801}
9802
9803// SetRecognizerMetadata sets the RecognizerMetadata field's value.
9804func (s *EntityRecognizerProperties) SetRecognizerMetadata(v *EntityRecognizerMetadata) *EntityRecognizerProperties {
9805	s.RecognizerMetadata = v
9806	return s
9807}
9808
9809// SetStatus sets the Status field's value.
9810func (s *EntityRecognizerProperties) SetStatus(v string) *EntityRecognizerProperties {
9811	s.Status = &v
9812	return s
9813}
9814
9815// SetSubmitTime sets the SubmitTime field's value.
9816func (s *EntityRecognizerProperties) SetSubmitTime(v time.Time) *EntityRecognizerProperties {
9817	s.SubmitTime = &v
9818	return s
9819}
9820
9821// SetTrainingEndTime sets the TrainingEndTime field's value.
9822func (s *EntityRecognizerProperties) SetTrainingEndTime(v time.Time) *EntityRecognizerProperties {
9823	s.TrainingEndTime = &v
9824	return s
9825}
9826
9827// SetTrainingStartTime sets the TrainingStartTime field's value.
9828func (s *EntityRecognizerProperties) SetTrainingStartTime(v time.Time) *EntityRecognizerProperties {
9829	s.TrainingStartTime = &v
9830	return s
9831}
9832
9833// SetVolumeKmsKeyId sets the VolumeKmsKeyId field's value.
9834func (s *EntityRecognizerProperties) SetVolumeKmsKeyId(v string) *EntityRecognizerProperties {
9835	s.VolumeKmsKeyId = &v
9836	return s
9837}
9838
9839// SetVpcConfig sets the VpcConfig field's value.
9840func (s *EntityRecognizerProperties) SetVpcConfig(v *VpcConfig) *EntityRecognizerProperties {
9841	s.VpcConfig = v
9842	return s
9843}
9844
9845// Detailed information about the accuracy of an entity recognizer for a specific
9846// entity type.
9847type EntityTypesEvaluationMetrics struct {
9848	_ struct{} `type:"structure"`
9849
9850	// A measure of how accurate the recognizer results are for for a specific entity
9851	// type in the test data. It is derived from the Precision and Recall values.
9852	// The F1Score is the harmonic average of the two scores. The highest score
9853	// is 1, and the worst score is 0.
9854	F1Score *float64 `type:"double"`
9855
9856	// A measure of the usefulness of the recognizer results for a specific entity
9857	// type in the test data. High precision means that the recognizer returned
9858	// substantially more relevant results than irrelevant ones.
9859	Precision *float64 `type:"double"`
9860
9861	// A measure of how complete the recognizer results are for a specific entity
9862	// type in the test data. High recall means that the recognizer returned most
9863	// of the relevant results.
9864	Recall *float64 `type:"double"`
9865}
9866
9867// String returns the string representation
9868func (s EntityTypesEvaluationMetrics) String() string {
9869	return awsutil.Prettify(s)
9870}
9871
9872// GoString returns the string representation
9873func (s EntityTypesEvaluationMetrics) GoString() string {
9874	return s.String()
9875}
9876
9877// SetF1Score sets the F1Score field's value.
9878func (s *EntityTypesEvaluationMetrics) SetF1Score(v float64) *EntityTypesEvaluationMetrics {
9879	s.F1Score = &v
9880	return s
9881}
9882
9883// SetPrecision sets the Precision field's value.
9884func (s *EntityTypesEvaluationMetrics) SetPrecision(v float64) *EntityTypesEvaluationMetrics {
9885	s.Precision = &v
9886	return s
9887}
9888
9889// SetRecall sets the Recall field's value.
9890func (s *EntityTypesEvaluationMetrics) SetRecall(v float64) *EntityTypesEvaluationMetrics {
9891	s.Recall = &v
9892	return s
9893}
9894
9895// Information about an individual item on a list of entity types.
9896type EntityTypesListItem struct {
9897	_ struct{} `type:"structure"`
9898
9899	// Entity type of an item on an entity type list.
9900	//
9901	// Type is a required field
9902	Type *string `type:"string" required:"true"`
9903}
9904
9905// String returns the string representation
9906func (s EntityTypesListItem) String() string {
9907	return awsutil.Prettify(s)
9908}
9909
9910// GoString returns the string representation
9911func (s EntityTypesListItem) GoString() string {
9912	return s.String()
9913}
9914
9915// Validate inspects the fields of the type to determine if they are valid.
9916func (s *EntityTypesListItem) Validate() error {
9917	invalidParams := request.ErrInvalidParams{Context: "EntityTypesListItem"}
9918	if s.Type == nil {
9919		invalidParams.Add(request.NewErrParamRequired("Type"))
9920	}
9921
9922	if invalidParams.Len() > 0 {
9923		return invalidParams
9924	}
9925	return nil
9926}
9927
9928// SetType sets the Type field's value.
9929func (s *EntityTypesListItem) SetType(v string) *EntityTypesListItem {
9930	s.Type = &v
9931	return s
9932}
9933
9934// The input properties for a topic detection job.
9935type InputDataConfig struct {
9936	_ struct{} `type:"structure"`
9937
9938	// Specifies how the text in an input file should be processed:
9939	//
9940	//    * ONE_DOC_PER_FILE - Each file is considered a separate document. Use
9941	//    this option when you are processing large documents, such as newspaper
9942	//    articles or scientific papers.
9943	//
9944	//    * ONE_DOC_PER_LINE - Each line in a file is considered a separate document.
9945	//    Use this option when you are processing many short documents, such as
9946	//    text messages.
9947	InputFormat *string `type:"string" enum:"InputFormat"`
9948
9949	// The Amazon S3 URI for the input data. The URI must be in same region as the
9950	// API endpoint that you are calling. The URI can point to a single input file
9951	// or it can provide the prefix for a collection of data files.
9952	//
9953	// For example, if you use the URI S3://bucketName/prefix, if the prefix is
9954	// a single file, Amazon Comprehend uses that file as input. If more than one
9955	// file begins with the prefix, Amazon Comprehend uses all of them as input.
9956	//
9957	// S3Uri is a required field
9958	S3Uri *string `type:"string" required:"true"`
9959}
9960
9961// String returns the string representation
9962func (s InputDataConfig) String() string {
9963	return awsutil.Prettify(s)
9964}
9965
9966// GoString returns the string representation
9967func (s InputDataConfig) GoString() string {
9968	return s.String()
9969}
9970
9971// Validate inspects the fields of the type to determine if they are valid.
9972func (s *InputDataConfig) Validate() error {
9973	invalidParams := request.ErrInvalidParams{Context: "InputDataConfig"}
9974	if s.S3Uri == nil {
9975		invalidParams.Add(request.NewErrParamRequired("S3Uri"))
9976	}
9977
9978	if invalidParams.Len() > 0 {
9979		return invalidParams
9980	}
9981	return nil
9982}
9983
9984// SetInputFormat sets the InputFormat field's value.
9985func (s *InputDataConfig) SetInputFormat(v string) *InputDataConfig {
9986	s.InputFormat = &v
9987	return s
9988}
9989
9990// SetS3Uri sets the S3Uri field's value.
9991func (s *InputDataConfig) SetS3Uri(v string) *InputDataConfig {
9992	s.S3Uri = &v
9993	return s
9994}
9995
9996// An internal server error occurred. Retry your request.
9997type InternalServerException struct {
9998	_            struct{}                  `type:"structure"`
9999	RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"`
10000
10001	Message_ *string `locationName:"Message" min:"1" type:"string"`
10002}
10003
10004// String returns the string representation
10005func (s InternalServerException) String() string {
10006	return awsutil.Prettify(s)
10007}
10008
10009// GoString returns the string representation
10010func (s InternalServerException) GoString() string {
10011	return s.String()
10012}
10013
10014func newErrorInternalServerException(v protocol.ResponseMetadata) error {
10015	return &InternalServerException{
10016		RespMetadata: v,
10017	}
10018}
10019
10020// Code returns the exception type name.
10021func (s *InternalServerException) Code() string {
10022	return "InternalServerException"
10023}
10024
10025// Message returns the exception's message.
10026func (s *InternalServerException) Message() string {
10027	if s.Message_ != nil {
10028		return *s.Message_
10029	}
10030	return ""
10031}
10032
10033// OrigErr always returns nil, satisfies awserr.Error interface.
10034func (s *InternalServerException) OrigErr() error {
10035	return nil
10036}
10037
10038func (s *InternalServerException) Error() string {
10039	return fmt.Sprintf("%s: %s", s.Code(), s.Message())
10040}
10041
10042// Status code returns the HTTP status code for the request's response error.
10043func (s *InternalServerException) StatusCode() int {
10044	return s.RespMetadata.StatusCode
10045}
10046
10047// RequestID returns the service's response RequestID for request.
10048func (s *InternalServerException) RequestID() string {
10049	return s.RespMetadata.RequestID
10050}
10051
10052// The filter specified for the operation is invalid. Specify a different filter.
10053type InvalidFilterException struct {
10054	_            struct{}                  `type:"structure"`
10055	RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"`
10056
10057	Message_ *string `locationName:"Message" min:"1" type:"string"`
10058}
10059
10060// String returns the string representation
10061func (s InvalidFilterException) String() string {
10062	return awsutil.Prettify(s)
10063}
10064
10065// GoString returns the string representation
10066func (s InvalidFilterException) GoString() string {
10067	return s.String()
10068}
10069
10070func newErrorInvalidFilterException(v protocol.ResponseMetadata) error {
10071	return &InvalidFilterException{
10072		RespMetadata: v,
10073	}
10074}
10075
10076// Code returns the exception type name.
10077func (s *InvalidFilterException) Code() string {
10078	return "InvalidFilterException"
10079}
10080
10081// Message returns the exception's message.
10082func (s *InvalidFilterException) Message() string {
10083	if s.Message_ != nil {
10084		return *s.Message_
10085	}
10086	return ""
10087}
10088
10089// OrigErr always returns nil, satisfies awserr.Error interface.
10090func (s *InvalidFilterException) OrigErr() error {
10091	return nil
10092}
10093
10094func (s *InvalidFilterException) Error() string {
10095	return fmt.Sprintf("%s: %s", s.Code(), s.Message())
10096}
10097
10098// Status code returns the HTTP status code for the request's response error.
10099func (s *InvalidFilterException) StatusCode() int {
10100	return s.RespMetadata.StatusCode
10101}
10102
10103// RequestID returns the service's response RequestID for request.
10104func (s *InvalidFilterException) RequestID() string {
10105	return s.RespMetadata.RequestID
10106}
10107
10108// The request is invalid.
10109type InvalidRequestException struct {
10110	_            struct{}                  `type:"structure"`
10111	RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"`
10112
10113	Message_ *string `locationName:"Message" min:"1" type:"string"`
10114}
10115
10116// String returns the string representation
10117func (s InvalidRequestException) String() string {
10118	return awsutil.Prettify(s)
10119}
10120
10121// GoString returns the string representation
10122func (s InvalidRequestException) GoString() string {
10123	return s.String()
10124}
10125
10126func newErrorInvalidRequestException(v protocol.ResponseMetadata) error {
10127	return &InvalidRequestException{
10128		RespMetadata: v,
10129	}
10130}
10131
10132// Code returns the exception type name.
10133func (s *InvalidRequestException) Code() string {
10134	return "InvalidRequestException"
10135}
10136
10137// Message returns the exception's message.
10138func (s *InvalidRequestException) Message() string {
10139	if s.Message_ != nil {
10140		return *s.Message_
10141	}
10142	return ""
10143}
10144
10145// OrigErr always returns nil, satisfies awserr.Error interface.
10146func (s *InvalidRequestException) OrigErr() error {
10147	return nil
10148}
10149
10150func (s *InvalidRequestException) Error() string {
10151	return fmt.Sprintf("%s: %s", s.Code(), s.Message())
10152}
10153
10154// Status code returns the HTTP status code for the request's response error.
10155func (s *InvalidRequestException) StatusCode() int {
10156	return s.RespMetadata.StatusCode
10157}
10158
10159// RequestID returns the service's response RequestID for request.
10160func (s *InvalidRequestException) RequestID() string {
10161	return s.RespMetadata.RequestID
10162}
10163
10164// The specified job was not found. Check the job ID and try again.
10165type JobNotFoundException struct {
10166	_            struct{}                  `type:"structure"`
10167	RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"`
10168
10169	Message_ *string `locationName:"Message" min:"1" type:"string"`
10170}
10171
10172// String returns the string representation
10173func (s JobNotFoundException) String() string {
10174	return awsutil.Prettify(s)
10175}
10176
10177// GoString returns the string representation
10178func (s JobNotFoundException) GoString() string {
10179	return s.String()
10180}
10181
10182func newErrorJobNotFoundException(v protocol.ResponseMetadata) error {
10183	return &JobNotFoundException{
10184		RespMetadata: v,
10185	}
10186}
10187
10188// Code returns the exception type name.
10189func (s *JobNotFoundException) Code() string {
10190	return "JobNotFoundException"
10191}
10192
10193// Message returns the exception's message.
10194func (s *JobNotFoundException) Message() string {
10195	if s.Message_ != nil {
10196		return *s.Message_
10197	}
10198	return ""
10199}
10200
10201// OrigErr always returns nil, satisfies awserr.Error interface.
10202func (s *JobNotFoundException) OrigErr() error {
10203	return nil
10204}
10205
10206func (s *JobNotFoundException) Error() string {
10207	return fmt.Sprintf("%s: %s", s.Code(), s.Message())
10208}
10209
10210// Status code returns the HTTP status code for the request's response error.
10211func (s *JobNotFoundException) StatusCode() int {
10212	return s.RespMetadata.StatusCode
10213}
10214
10215// RequestID returns the service's response RequestID for request.
10216func (s *JobNotFoundException) RequestID() string {
10217	return s.RespMetadata.RequestID
10218}
10219
10220// Describes a key noun phrase.
10221type KeyPhrase struct {
10222	_ struct{} `type:"structure"`
10223
10224	// A character offset in the input text that shows where the key phrase begins
10225	// (the first character is at position 0). The offset returns the position of
10226	// each UTF-8 code point in the string. A code point is the abstract character
10227	// from a particular graphical representation. For example, a multi-byte UTF-8
10228	// character maps to a single code point.
10229	BeginOffset *int64 `type:"integer"`
10230
10231	// A character offset in the input text where the key phrase ends. The offset
10232	// returns the position of each UTF-8 code point in the string. A code point
10233	// is the abstract character from a particular graphical representation. For
10234	// example, a multi-byte UTF-8 character maps to a single code point.
10235	EndOffset *int64 `type:"integer"`
10236
10237	// The level of confidence that Amazon Comprehend has in the accuracy of the
10238	// detection.
10239	Score *float64 `type:"float"`
10240
10241	// The text of a key noun phrase.
10242	Text *string `min:"1" type:"string"`
10243}
10244
10245// String returns the string representation
10246func (s KeyPhrase) String() string {
10247	return awsutil.Prettify(s)
10248}
10249
10250// GoString returns the string representation
10251func (s KeyPhrase) GoString() string {
10252	return s.String()
10253}
10254
10255// SetBeginOffset sets the BeginOffset field's value.
10256func (s *KeyPhrase) SetBeginOffset(v int64) *KeyPhrase {
10257	s.BeginOffset = &v
10258	return s
10259}
10260
10261// SetEndOffset sets the EndOffset field's value.
10262func (s *KeyPhrase) SetEndOffset(v int64) *KeyPhrase {
10263	s.EndOffset = &v
10264	return s
10265}
10266
10267// SetScore sets the Score field's value.
10268func (s *KeyPhrase) SetScore(v float64) *KeyPhrase {
10269	s.Score = &v
10270	return s
10271}
10272
10273// SetText sets the Text field's value.
10274func (s *KeyPhrase) SetText(v string) *KeyPhrase {
10275	s.Text = &v
10276	return s
10277}
10278
10279// Provides information for filtering a list of dominant language detection
10280// jobs. For more information, see the operation.
10281type KeyPhrasesDetectionJobFilter struct {
10282	_ struct{} `type:"structure"`
10283
10284	// Filters on the name of the job.
10285	JobName *string `min:"1" type:"string"`
10286
10287	// Filters the list of jobs based on job status. Returns only jobs with the
10288	// specified status.
10289	JobStatus *string `type:"string" enum:"JobStatus"`
10290
10291	// Filters the list of jobs based on the time that the job was submitted for
10292	// processing. Returns only jobs submitted after the specified time. Jobs are
10293	// returned in descending order, newest to oldest.
10294	SubmitTimeAfter *time.Time `type:"timestamp"`
10295
10296	// Filters the list of jobs based on the time that the job was submitted for
10297	// processing. Returns only jobs submitted before the specified time. Jobs are
10298	// returned in ascending order, oldest to newest.
10299	SubmitTimeBefore *time.Time `type:"timestamp"`
10300}
10301
10302// String returns the string representation
10303func (s KeyPhrasesDetectionJobFilter) String() string {
10304	return awsutil.Prettify(s)
10305}
10306
10307// GoString returns the string representation
10308func (s KeyPhrasesDetectionJobFilter) GoString() string {
10309	return s.String()
10310}
10311
10312// Validate inspects the fields of the type to determine if they are valid.
10313func (s *KeyPhrasesDetectionJobFilter) Validate() error {
10314	invalidParams := request.ErrInvalidParams{Context: "KeyPhrasesDetectionJobFilter"}
10315	if s.JobName != nil && len(*s.JobName) < 1 {
10316		invalidParams.Add(request.NewErrParamMinLen("JobName", 1))
10317	}
10318
10319	if invalidParams.Len() > 0 {
10320		return invalidParams
10321	}
10322	return nil
10323}
10324
10325// SetJobName sets the JobName field's value.
10326func (s *KeyPhrasesDetectionJobFilter) SetJobName(v string) *KeyPhrasesDetectionJobFilter {
10327	s.JobName = &v
10328	return s
10329}
10330
10331// SetJobStatus sets the JobStatus field's value.
10332func (s *KeyPhrasesDetectionJobFilter) SetJobStatus(v string) *KeyPhrasesDetectionJobFilter {
10333	s.JobStatus = &v
10334	return s
10335}
10336
10337// SetSubmitTimeAfter sets the SubmitTimeAfter field's value.
10338func (s *KeyPhrasesDetectionJobFilter) SetSubmitTimeAfter(v time.Time) *KeyPhrasesDetectionJobFilter {
10339	s.SubmitTimeAfter = &v
10340	return s
10341}
10342
10343// SetSubmitTimeBefore sets the SubmitTimeBefore field's value.
10344func (s *KeyPhrasesDetectionJobFilter) SetSubmitTimeBefore(v time.Time) *KeyPhrasesDetectionJobFilter {
10345	s.SubmitTimeBefore = &v
10346	return s
10347}
10348
10349// Provides information about a key phrases detection job.
10350type KeyPhrasesDetectionJobProperties struct {
10351	_ struct{} `type:"structure"`
10352
10353	// The Amazon Resource Name (ARN) that gives Amazon Comprehend read access to
10354	// your input data.
10355	DataAccessRoleArn *string `min:"20" type:"string"`
10356
10357	// The time that the key phrases detection job completed.
10358	EndTime *time.Time `type:"timestamp"`
10359
10360	// The input data configuration that you supplied when you created the key phrases
10361	// detection job.
10362	InputDataConfig *InputDataConfig `type:"structure"`
10363
10364	// The identifier assigned to the key phrases detection job.
10365	JobId *string `min:"1" type:"string"`
10366
10367	// The name that you assigned the key phrases detection job.
10368	JobName *string `min:"1" type:"string"`
10369
10370	// The current status of the key phrases detection job. If the status is FAILED,
10371	// the Message field shows the reason for the failure.
10372	JobStatus *string `type:"string" enum:"JobStatus"`
10373
10374	// The language code of the input documents.
10375	LanguageCode *string `type:"string" enum:"LanguageCode"`
10376
10377	// A description of the status of a job.
10378	Message *string `type:"string"`
10379
10380	// The output data configuration that you supplied when you created the key
10381	// phrases detection job.
10382	OutputDataConfig *OutputDataConfig `type:"structure"`
10383
10384	// The time that the key phrases detection job was submitted for processing.
10385	SubmitTime *time.Time `type:"timestamp"`
10386
10387	// ID for the AWS Key Management Service (KMS) key that Amazon Comprehend uses
10388	// to encrypt data on the storage volume attached to the ML compute instance(s)
10389	// that process the analysis job. The VolumeKmsKeyId can be either of the following
10390	// formats:
10391	//
10392	//    * KMS Key ID: "1234abcd-12ab-34cd-56ef-1234567890ab"
10393	//
10394	//    * Amazon Resource Name (ARN) of a KMS Key: "arn:aws:kms:us-west-2:111122223333:key/1234abcd-12ab-34cd-56ef-1234567890ab"
10395	VolumeKmsKeyId *string `type:"string"`
10396
10397	// Configuration parameters for a private Virtual Private Cloud (VPC) containing
10398	// the resources you are using for your key phrases detection job. For more
10399	// information, see Amazon VPC (https://docs.aws.amazon.com/vpc/latest/userguide/what-is-amazon-vpc.html).
10400	VpcConfig *VpcConfig `type:"structure"`
10401}
10402
10403// String returns the string representation
10404func (s KeyPhrasesDetectionJobProperties) String() string {
10405	return awsutil.Prettify(s)
10406}
10407
10408// GoString returns the string representation
10409func (s KeyPhrasesDetectionJobProperties) GoString() string {
10410	return s.String()
10411}
10412
10413// SetDataAccessRoleArn sets the DataAccessRoleArn field's value.
10414func (s *KeyPhrasesDetectionJobProperties) SetDataAccessRoleArn(v string) *KeyPhrasesDetectionJobProperties {
10415	s.DataAccessRoleArn = &v
10416	return s
10417}
10418
10419// SetEndTime sets the EndTime field's value.
10420func (s *KeyPhrasesDetectionJobProperties) SetEndTime(v time.Time) *KeyPhrasesDetectionJobProperties {
10421	s.EndTime = &v
10422	return s
10423}
10424
10425// SetInputDataConfig sets the InputDataConfig field's value.
10426func (s *KeyPhrasesDetectionJobProperties) SetInputDataConfig(v *InputDataConfig) *KeyPhrasesDetectionJobProperties {
10427	s.InputDataConfig = v
10428	return s
10429}
10430
10431// SetJobId sets the JobId field's value.
10432func (s *KeyPhrasesDetectionJobProperties) SetJobId(v string) *KeyPhrasesDetectionJobProperties {
10433	s.JobId = &v
10434	return s
10435}
10436
10437// SetJobName sets the JobName field's value.
10438func (s *KeyPhrasesDetectionJobProperties) SetJobName(v string) *KeyPhrasesDetectionJobProperties {
10439	s.JobName = &v
10440	return s
10441}
10442
10443// SetJobStatus sets the JobStatus field's value.
10444func (s *KeyPhrasesDetectionJobProperties) SetJobStatus(v string) *KeyPhrasesDetectionJobProperties {
10445	s.JobStatus = &v
10446	return s
10447}
10448
10449// SetLanguageCode sets the LanguageCode field's value.
10450func (s *KeyPhrasesDetectionJobProperties) SetLanguageCode(v string) *KeyPhrasesDetectionJobProperties {
10451	s.LanguageCode = &v
10452	return s
10453}
10454
10455// SetMessage sets the Message field's value.
10456func (s *KeyPhrasesDetectionJobProperties) SetMessage(v string) *KeyPhrasesDetectionJobProperties {
10457	s.Message = &v
10458	return s
10459}
10460
10461// SetOutputDataConfig sets the OutputDataConfig field's value.
10462func (s *KeyPhrasesDetectionJobProperties) SetOutputDataConfig(v *OutputDataConfig) *KeyPhrasesDetectionJobProperties {
10463	s.OutputDataConfig = v
10464	return s
10465}
10466
10467// SetSubmitTime sets the SubmitTime field's value.
10468func (s *KeyPhrasesDetectionJobProperties) SetSubmitTime(v time.Time) *KeyPhrasesDetectionJobProperties {
10469	s.SubmitTime = &v
10470	return s
10471}
10472
10473// SetVolumeKmsKeyId sets the VolumeKmsKeyId field's value.
10474func (s *KeyPhrasesDetectionJobProperties) SetVolumeKmsKeyId(v string) *KeyPhrasesDetectionJobProperties {
10475	s.VolumeKmsKeyId = &v
10476	return s
10477}
10478
10479// SetVpcConfig sets the VpcConfig field's value.
10480func (s *KeyPhrasesDetectionJobProperties) SetVpcConfig(v *VpcConfig) *KeyPhrasesDetectionJobProperties {
10481	s.VpcConfig = v
10482	return s
10483}
10484
10485// The KMS customer managed key (CMK) entered cannot be validated. Verify the
10486// key and re-enter it.
10487type KmsKeyValidationException struct {
10488	_            struct{}                  `type:"structure"`
10489	RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"`
10490
10491	Message_ *string `locationName:"Message" min:"1" type:"string"`
10492}
10493
10494// String returns the string representation
10495func (s KmsKeyValidationException) String() string {
10496	return awsutil.Prettify(s)
10497}
10498
10499// GoString returns the string representation
10500func (s KmsKeyValidationException) GoString() string {
10501	return s.String()
10502}
10503
10504func newErrorKmsKeyValidationException(v protocol.ResponseMetadata) error {
10505	return &KmsKeyValidationException{
10506		RespMetadata: v,
10507	}
10508}
10509
10510// Code returns the exception type name.
10511func (s *KmsKeyValidationException) Code() string {
10512	return "KmsKeyValidationException"
10513}
10514
10515// Message returns the exception's message.
10516func (s *KmsKeyValidationException) Message() string {
10517	if s.Message_ != nil {
10518		return *s.Message_
10519	}
10520	return ""
10521}
10522
10523// OrigErr always returns nil, satisfies awserr.Error interface.
10524func (s *KmsKeyValidationException) OrigErr() error {
10525	return nil
10526}
10527
10528func (s *KmsKeyValidationException) Error() string {
10529	return fmt.Sprintf("%s: %s", s.Code(), s.Message())
10530}
10531
10532// Status code returns the HTTP status code for the request's response error.
10533func (s *KmsKeyValidationException) StatusCode() int {
10534	return s.RespMetadata.StatusCode
10535}
10536
10537// RequestID returns the service's response RequestID for request.
10538func (s *KmsKeyValidationException) RequestID() string {
10539	return s.RespMetadata.RequestID
10540}
10541
10542type ListDocumentClassificationJobsInput struct {
10543	_ struct{} `type:"structure"`
10544
10545	// Filters the jobs that are returned. You can filter jobs on their names, status,
10546	// or the date and time that they were submitted. You can only set one filter
10547	// at a time.
10548	Filter *DocumentClassificationJobFilter `type:"structure"`
10549
10550	// The maximum number of results to return in each page. The default is 100.
10551	MaxResults *int64 `min:"1" type:"integer"`
10552
10553	// Identifies the next page of results to return.
10554	NextToken *string `min:"1" type:"string"`
10555}
10556
10557// String returns the string representation
10558func (s ListDocumentClassificationJobsInput) String() string {
10559	return awsutil.Prettify(s)
10560}
10561
10562// GoString returns the string representation
10563func (s ListDocumentClassificationJobsInput) GoString() string {
10564	return s.String()
10565}
10566
10567// Validate inspects the fields of the type to determine if they are valid.
10568func (s *ListDocumentClassificationJobsInput) Validate() error {
10569	invalidParams := request.ErrInvalidParams{Context: "ListDocumentClassificationJobsInput"}
10570	if s.MaxResults != nil && *s.MaxResults < 1 {
10571		invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1))
10572	}
10573	if s.NextToken != nil && len(*s.NextToken) < 1 {
10574		invalidParams.Add(request.NewErrParamMinLen("NextToken", 1))
10575	}
10576	if s.Filter != nil {
10577		if err := s.Filter.Validate(); err != nil {
10578			invalidParams.AddNested("Filter", err.(request.ErrInvalidParams))
10579		}
10580	}
10581
10582	if invalidParams.Len() > 0 {
10583		return invalidParams
10584	}
10585	return nil
10586}
10587
10588// SetFilter sets the Filter field's value.
10589func (s *ListDocumentClassificationJobsInput) SetFilter(v *DocumentClassificationJobFilter) *ListDocumentClassificationJobsInput {
10590	s.Filter = v
10591	return s
10592}
10593
10594// SetMaxResults sets the MaxResults field's value.
10595func (s *ListDocumentClassificationJobsInput) SetMaxResults(v int64) *ListDocumentClassificationJobsInput {
10596	s.MaxResults = &v
10597	return s
10598}
10599
10600// SetNextToken sets the NextToken field's value.
10601func (s *ListDocumentClassificationJobsInput) SetNextToken(v string) *ListDocumentClassificationJobsInput {
10602	s.NextToken = &v
10603	return s
10604}
10605
10606type ListDocumentClassificationJobsOutput struct {
10607	_ struct{} `type:"structure"`
10608
10609	// A list containing the properties of each job returned.
10610	DocumentClassificationJobPropertiesList []*DocumentClassificationJobProperties `type:"list"`
10611
10612	// Identifies the next page of results to return.
10613	NextToken *string `min:"1" type:"string"`
10614}
10615
10616// String returns the string representation
10617func (s ListDocumentClassificationJobsOutput) String() string {
10618	return awsutil.Prettify(s)
10619}
10620
10621// GoString returns the string representation
10622func (s ListDocumentClassificationJobsOutput) GoString() string {
10623	return s.String()
10624}
10625
10626// SetDocumentClassificationJobPropertiesList sets the DocumentClassificationJobPropertiesList field's value.
10627func (s *ListDocumentClassificationJobsOutput) SetDocumentClassificationJobPropertiesList(v []*DocumentClassificationJobProperties) *ListDocumentClassificationJobsOutput {
10628	s.DocumentClassificationJobPropertiesList = v
10629	return s
10630}
10631
10632// SetNextToken sets the NextToken field's value.
10633func (s *ListDocumentClassificationJobsOutput) SetNextToken(v string) *ListDocumentClassificationJobsOutput {
10634	s.NextToken = &v
10635	return s
10636}
10637
10638type ListDocumentClassifiersInput struct {
10639	_ struct{} `type:"structure"`
10640
10641	// Filters the jobs that are returned. You can filter jobs on their name, status,
10642	// or the date and time that they were submitted. You can only set one filter
10643	// at a time.
10644	Filter *DocumentClassifierFilter `type:"structure"`
10645
10646	// The maximum number of results to return in each page. The default is 100.
10647	MaxResults *int64 `min:"1" type:"integer"`
10648
10649	// Identifies the next page of results to return.
10650	NextToken *string `min:"1" type:"string"`
10651}
10652
10653// String returns the string representation
10654func (s ListDocumentClassifiersInput) String() string {
10655	return awsutil.Prettify(s)
10656}
10657
10658// GoString returns the string representation
10659func (s ListDocumentClassifiersInput) GoString() string {
10660	return s.String()
10661}
10662
10663// Validate inspects the fields of the type to determine if they are valid.
10664func (s *ListDocumentClassifiersInput) Validate() error {
10665	invalidParams := request.ErrInvalidParams{Context: "ListDocumentClassifiersInput"}
10666	if s.MaxResults != nil && *s.MaxResults < 1 {
10667		invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1))
10668	}
10669	if s.NextToken != nil && len(*s.NextToken) < 1 {
10670		invalidParams.Add(request.NewErrParamMinLen("NextToken", 1))
10671	}
10672
10673	if invalidParams.Len() > 0 {
10674		return invalidParams
10675	}
10676	return nil
10677}
10678
10679// SetFilter sets the Filter field's value.
10680func (s *ListDocumentClassifiersInput) SetFilter(v *DocumentClassifierFilter) *ListDocumentClassifiersInput {
10681	s.Filter = v
10682	return s
10683}
10684
10685// SetMaxResults sets the MaxResults field's value.
10686func (s *ListDocumentClassifiersInput) SetMaxResults(v int64) *ListDocumentClassifiersInput {
10687	s.MaxResults = &v
10688	return s
10689}
10690
10691// SetNextToken sets the NextToken field's value.
10692func (s *ListDocumentClassifiersInput) SetNextToken(v string) *ListDocumentClassifiersInput {
10693	s.NextToken = &v
10694	return s
10695}
10696
10697type ListDocumentClassifiersOutput struct {
10698	_ struct{} `type:"structure"`
10699
10700	// A list containing the properties of each job returned.
10701	DocumentClassifierPropertiesList []*DocumentClassifierProperties `type:"list"`
10702
10703	// Identifies the next page of results to return.
10704	NextToken *string `min:"1" type:"string"`
10705}
10706
10707// String returns the string representation
10708func (s ListDocumentClassifiersOutput) String() string {
10709	return awsutil.Prettify(s)
10710}
10711
10712// GoString returns the string representation
10713func (s ListDocumentClassifiersOutput) GoString() string {
10714	return s.String()
10715}
10716
10717// SetDocumentClassifierPropertiesList sets the DocumentClassifierPropertiesList field's value.
10718func (s *ListDocumentClassifiersOutput) SetDocumentClassifierPropertiesList(v []*DocumentClassifierProperties) *ListDocumentClassifiersOutput {
10719	s.DocumentClassifierPropertiesList = v
10720	return s
10721}
10722
10723// SetNextToken sets the NextToken field's value.
10724func (s *ListDocumentClassifiersOutput) SetNextToken(v string) *ListDocumentClassifiersOutput {
10725	s.NextToken = &v
10726	return s
10727}
10728
10729type ListDominantLanguageDetectionJobsInput struct {
10730	_ struct{} `type:"structure"`
10731
10732	// Filters that jobs that are returned. You can filter jobs on their name, status,
10733	// or the date and time that they were submitted. You can only set one filter
10734	// at a time.
10735	Filter *DominantLanguageDetectionJobFilter `type:"structure"`
10736
10737	// The maximum number of results to return in each page. The default is 100.
10738	MaxResults *int64 `min:"1" type:"integer"`
10739
10740	// Identifies the next page of results to return.
10741	NextToken *string `min:"1" type:"string"`
10742}
10743
10744// String returns the string representation
10745func (s ListDominantLanguageDetectionJobsInput) String() string {
10746	return awsutil.Prettify(s)
10747}
10748
10749// GoString returns the string representation
10750func (s ListDominantLanguageDetectionJobsInput) GoString() string {
10751	return s.String()
10752}
10753
10754// Validate inspects the fields of the type to determine if they are valid.
10755func (s *ListDominantLanguageDetectionJobsInput) Validate() error {
10756	invalidParams := request.ErrInvalidParams{Context: "ListDominantLanguageDetectionJobsInput"}
10757	if s.MaxResults != nil && *s.MaxResults < 1 {
10758		invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1))
10759	}
10760	if s.NextToken != nil && len(*s.NextToken) < 1 {
10761		invalidParams.Add(request.NewErrParamMinLen("NextToken", 1))
10762	}
10763	if s.Filter != nil {
10764		if err := s.Filter.Validate(); err != nil {
10765			invalidParams.AddNested("Filter", err.(request.ErrInvalidParams))
10766		}
10767	}
10768
10769	if invalidParams.Len() > 0 {
10770		return invalidParams
10771	}
10772	return nil
10773}
10774
10775// SetFilter sets the Filter field's value.
10776func (s *ListDominantLanguageDetectionJobsInput) SetFilter(v *DominantLanguageDetectionJobFilter) *ListDominantLanguageDetectionJobsInput {
10777	s.Filter = v
10778	return s
10779}
10780
10781// SetMaxResults sets the MaxResults field's value.
10782func (s *ListDominantLanguageDetectionJobsInput) SetMaxResults(v int64) *ListDominantLanguageDetectionJobsInput {
10783	s.MaxResults = &v
10784	return s
10785}
10786
10787// SetNextToken sets the NextToken field's value.
10788func (s *ListDominantLanguageDetectionJobsInput) SetNextToken(v string) *ListDominantLanguageDetectionJobsInput {
10789	s.NextToken = &v
10790	return s
10791}
10792
10793type ListDominantLanguageDetectionJobsOutput struct {
10794	_ struct{} `type:"structure"`
10795
10796	// A list containing the properties of each job that is returned.
10797	DominantLanguageDetectionJobPropertiesList []*DominantLanguageDetectionJobProperties `type:"list"`
10798
10799	// Identifies the next page of results to return.
10800	NextToken *string `min:"1" type:"string"`
10801}
10802
10803// String returns the string representation
10804func (s ListDominantLanguageDetectionJobsOutput) String() string {
10805	return awsutil.Prettify(s)
10806}
10807
10808// GoString returns the string representation
10809func (s ListDominantLanguageDetectionJobsOutput) GoString() string {
10810	return s.String()
10811}
10812
10813// SetDominantLanguageDetectionJobPropertiesList sets the DominantLanguageDetectionJobPropertiesList field's value.
10814func (s *ListDominantLanguageDetectionJobsOutput) SetDominantLanguageDetectionJobPropertiesList(v []*DominantLanguageDetectionJobProperties) *ListDominantLanguageDetectionJobsOutput {
10815	s.DominantLanguageDetectionJobPropertiesList = v
10816	return s
10817}
10818
10819// SetNextToken sets the NextToken field's value.
10820func (s *ListDominantLanguageDetectionJobsOutput) SetNextToken(v string) *ListDominantLanguageDetectionJobsOutput {
10821	s.NextToken = &v
10822	return s
10823}
10824
10825type ListEndpointsInput struct {
10826	_ struct{} `type:"structure"`
10827
10828	// Filters the endpoints that are returned. You can filter endpoints on their
10829	// name, model, status, or the date and time that they were created. You can
10830	// only set one filter at a time.
10831	Filter *EndpointFilter `type:"structure"`
10832
10833	// The maximum number of results to return in each page. The default is 100.
10834	MaxResults *int64 `min:"1" type:"integer"`
10835
10836	// Identifies the next page of results to return.
10837	NextToken *string `min:"1" type:"string"`
10838}
10839
10840// String returns the string representation
10841func (s ListEndpointsInput) String() string {
10842	return awsutil.Prettify(s)
10843}
10844
10845// GoString returns the string representation
10846func (s ListEndpointsInput) GoString() string {
10847	return s.String()
10848}
10849
10850// Validate inspects the fields of the type to determine if they are valid.
10851func (s *ListEndpointsInput) Validate() error {
10852	invalidParams := request.ErrInvalidParams{Context: "ListEndpointsInput"}
10853	if s.MaxResults != nil && *s.MaxResults < 1 {
10854		invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1))
10855	}
10856	if s.NextToken != nil && len(*s.NextToken) < 1 {
10857		invalidParams.Add(request.NewErrParamMinLen("NextToken", 1))
10858	}
10859
10860	if invalidParams.Len() > 0 {
10861		return invalidParams
10862	}
10863	return nil
10864}
10865
10866// SetFilter sets the Filter field's value.
10867func (s *ListEndpointsInput) SetFilter(v *EndpointFilter) *ListEndpointsInput {
10868	s.Filter = v
10869	return s
10870}
10871
10872// SetMaxResults sets the MaxResults field's value.
10873func (s *ListEndpointsInput) SetMaxResults(v int64) *ListEndpointsInput {
10874	s.MaxResults = &v
10875	return s
10876}
10877
10878// SetNextToken sets the NextToken field's value.
10879func (s *ListEndpointsInput) SetNextToken(v string) *ListEndpointsInput {
10880	s.NextToken = &v
10881	return s
10882}
10883
10884type ListEndpointsOutput struct {
10885	_ struct{} `type:"structure"`
10886
10887	// Displays a list of endpoint properties being retrieved by the service in
10888	// response to the request.
10889	EndpointPropertiesList []*EndpointProperties `type:"list"`
10890
10891	// Identifies the next page of results to return.
10892	NextToken *string `min:"1" type:"string"`
10893}
10894
10895// String returns the string representation
10896func (s ListEndpointsOutput) String() string {
10897	return awsutil.Prettify(s)
10898}
10899
10900// GoString returns the string representation
10901func (s ListEndpointsOutput) GoString() string {
10902	return s.String()
10903}
10904
10905// SetEndpointPropertiesList sets the EndpointPropertiesList field's value.
10906func (s *ListEndpointsOutput) SetEndpointPropertiesList(v []*EndpointProperties) *ListEndpointsOutput {
10907	s.EndpointPropertiesList = v
10908	return s
10909}
10910
10911// SetNextToken sets the NextToken field's value.
10912func (s *ListEndpointsOutput) SetNextToken(v string) *ListEndpointsOutput {
10913	s.NextToken = &v
10914	return s
10915}
10916
10917type ListEntitiesDetectionJobsInput struct {
10918	_ struct{} `type:"structure"`
10919
10920	// Filters the jobs that are returned. You can filter jobs on their name, status,
10921	// or the date and time that they were submitted. You can only set one filter
10922	// at a time.
10923	Filter *EntitiesDetectionJobFilter `type:"structure"`
10924
10925	// The maximum number of results to return in each page. The default is 100.
10926	MaxResults *int64 `min:"1" type:"integer"`
10927
10928	// Identifies the next page of results to return.
10929	NextToken *string `min:"1" type:"string"`
10930}
10931
10932// String returns the string representation
10933func (s ListEntitiesDetectionJobsInput) String() string {
10934	return awsutil.Prettify(s)
10935}
10936
10937// GoString returns the string representation
10938func (s ListEntitiesDetectionJobsInput) GoString() string {
10939	return s.String()
10940}
10941
10942// Validate inspects the fields of the type to determine if they are valid.
10943func (s *ListEntitiesDetectionJobsInput) Validate() error {
10944	invalidParams := request.ErrInvalidParams{Context: "ListEntitiesDetectionJobsInput"}
10945	if s.MaxResults != nil && *s.MaxResults < 1 {
10946		invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1))
10947	}
10948	if s.NextToken != nil && len(*s.NextToken) < 1 {
10949		invalidParams.Add(request.NewErrParamMinLen("NextToken", 1))
10950	}
10951	if s.Filter != nil {
10952		if err := s.Filter.Validate(); err != nil {
10953			invalidParams.AddNested("Filter", err.(request.ErrInvalidParams))
10954		}
10955	}
10956
10957	if invalidParams.Len() > 0 {
10958		return invalidParams
10959	}
10960	return nil
10961}
10962
10963// SetFilter sets the Filter field's value.
10964func (s *ListEntitiesDetectionJobsInput) SetFilter(v *EntitiesDetectionJobFilter) *ListEntitiesDetectionJobsInput {
10965	s.Filter = v
10966	return s
10967}
10968
10969// SetMaxResults sets the MaxResults field's value.
10970func (s *ListEntitiesDetectionJobsInput) SetMaxResults(v int64) *ListEntitiesDetectionJobsInput {
10971	s.MaxResults = &v
10972	return s
10973}
10974
10975// SetNextToken sets the NextToken field's value.
10976func (s *ListEntitiesDetectionJobsInput) SetNextToken(v string) *ListEntitiesDetectionJobsInput {
10977	s.NextToken = &v
10978	return s
10979}
10980
10981type ListEntitiesDetectionJobsOutput struct {
10982	_ struct{} `type:"structure"`
10983
10984	// A list containing the properties of each job that is returned.
10985	EntitiesDetectionJobPropertiesList []*EntitiesDetectionJobProperties `type:"list"`
10986
10987	// Identifies the next page of results to return.
10988	NextToken *string `min:"1" type:"string"`
10989}
10990
10991// String returns the string representation
10992func (s ListEntitiesDetectionJobsOutput) String() string {
10993	return awsutil.Prettify(s)
10994}
10995
10996// GoString returns the string representation
10997func (s ListEntitiesDetectionJobsOutput) GoString() string {
10998	return s.String()
10999}
11000
11001// SetEntitiesDetectionJobPropertiesList sets the EntitiesDetectionJobPropertiesList field's value.
11002func (s *ListEntitiesDetectionJobsOutput) SetEntitiesDetectionJobPropertiesList(v []*EntitiesDetectionJobProperties) *ListEntitiesDetectionJobsOutput {
11003	s.EntitiesDetectionJobPropertiesList = v
11004	return s
11005}
11006
11007// SetNextToken sets the NextToken field's value.
11008func (s *ListEntitiesDetectionJobsOutput) SetNextToken(v string) *ListEntitiesDetectionJobsOutput {
11009	s.NextToken = &v
11010	return s
11011}
11012
11013type ListEntityRecognizersInput struct {
11014	_ struct{} `type:"structure"`
11015
11016	// Filters the list of entities returned. You can filter on Status, SubmitTimeBefore,
11017	// or SubmitTimeAfter. You can only set one filter at a time.
11018	Filter *EntityRecognizerFilter `type:"structure"`
11019
11020	// The maximum number of results to return on each page. The default is 100.
11021	MaxResults *int64 `min:"1" type:"integer"`
11022
11023	// Identifies the next page of results to return.
11024	NextToken *string `min:"1" type:"string"`
11025}
11026
11027// String returns the string representation
11028func (s ListEntityRecognizersInput) String() string {
11029	return awsutil.Prettify(s)
11030}
11031
11032// GoString returns the string representation
11033func (s ListEntityRecognizersInput) GoString() string {
11034	return s.String()
11035}
11036
11037// Validate inspects the fields of the type to determine if they are valid.
11038func (s *ListEntityRecognizersInput) Validate() error {
11039	invalidParams := request.ErrInvalidParams{Context: "ListEntityRecognizersInput"}
11040	if s.MaxResults != nil && *s.MaxResults < 1 {
11041		invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1))
11042	}
11043	if s.NextToken != nil && len(*s.NextToken) < 1 {
11044		invalidParams.Add(request.NewErrParamMinLen("NextToken", 1))
11045	}
11046
11047	if invalidParams.Len() > 0 {
11048		return invalidParams
11049	}
11050	return nil
11051}
11052
11053// SetFilter sets the Filter field's value.
11054func (s *ListEntityRecognizersInput) SetFilter(v *EntityRecognizerFilter) *ListEntityRecognizersInput {
11055	s.Filter = v
11056	return s
11057}
11058
11059// SetMaxResults sets the MaxResults field's value.
11060func (s *ListEntityRecognizersInput) SetMaxResults(v int64) *ListEntityRecognizersInput {
11061	s.MaxResults = &v
11062	return s
11063}
11064
11065// SetNextToken sets the NextToken field's value.
11066func (s *ListEntityRecognizersInput) SetNextToken(v string) *ListEntityRecognizersInput {
11067	s.NextToken = &v
11068	return s
11069}
11070
11071type ListEntityRecognizersOutput struct {
11072	_ struct{} `type:"structure"`
11073
11074	// The list of properties of an entity recognizer.
11075	EntityRecognizerPropertiesList []*EntityRecognizerProperties `type:"list"`
11076
11077	// Identifies the next page of results to return.
11078	NextToken *string `min:"1" type:"string"`
11079}
11080
11081// String returns the string representation
11082func (s ListEntityRecognizersOutput) String() string {
11083	return awsutil.Prettify(s)
11084}
11085
11086// GoString returns the string representation
11087func (s ListEntityRecognizersOutput) GoString() string {
11088	return s.String()
11089}
11090
11091// SetEntityRecognizerPropertiesList sets the EntityRecognizerPropertiesList field's value.
11092func (s *ListEntityRecognizersOutput) SetEntityRecognizerPropertiesList(v []*EntityRecognizerProperties) *ListEntityRecognizersOutput {
11093	s.EntityRecognizerPropertiesList = v
11094	return s
11095}
11096
11097// SetNextToken sets the NextToken field's value.
11098func (s *ListEntityRecognizersOutput) SetNextToken(v string) *ListEntityRecognizersOutput {
11099	s.NextToken = &v
11100	return s
11101}
11102
11103type ListKeyPhrasesDetectionJobsInput struct {
11104	_ struct{} `type:"structure"`
11105
11106	// Filters the jobs that are returned. You can filter jobs on their name, status,
11107	// or the date and time that they were submitted. You can only set one filter
11108	// at a time.
11109	Filter *KeyPhrasesDetectionJobFilter `type:"structure"`
11110
11111	// The maximum number of results to return in each page. The default is 100.
11112	MaxResults *int64 `min:"1" type:"integer"`
11113
11114	// Identifies the next page of results to return.
11115	NextToken *string `min:"1" type:"string"`
11116}
11117
11118// String returns the string representation
11119func (s ListKeyPhrasesDetectionJobsInput) String() string {
11120	return awsutil.Prettify(s)
11121}
11122
11123// GoString returns the string representation
11124func (s ListKeyPhrasesDetectionJobsInput) GoString() string {
11125	return s.String()
11126}
11127
11128// Validate inspects the fields of the type to determine if they are valid.
11129func (s *ListKeyPhrasesDetectionJobsInput) Validate() error {
11130	invalidParams := request.ErrInvalidParams{Context: "ListKeyPhrasesDetectionJobsInput"}
11131	if s.MaxResults != nil && *s.MaxResults < 1 {
11132		invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1))
11133	}
11134	if s.NextToken != nil && len(*s.NextToken) < 1 {
11135		invalidParams.Add(request.NewErrParamMinLen("NextToken", 1))
11136	}
11137	if s.Filter != nil {
11138		if err := s.Filter.Validate(); err != nil {
11139			invalidParams.AddNested("Filter", err.(request.ErrInvalidParams))
11140		}
11141	}
11142
11143	if invalidParams.Len() > 0 {
11144		return invalidParams
11145	}
11146	return nil
11147}
11148
11149// SetFilter sets the Filter field's value.
11150func (s *ListKeyPhrasesDetectionJobsInput) SetFilter(v *KeyPhrasesDetectionJobFilter) *ListKeyPhrasesDetectionJobsInput {
11151	s.Filter = v
11152	return s
11153}
11154
11155// SetMaxResults sets the MaxResults field's value.
11156func (s *ListKeyPhrasesDetectionJobsInput) SetMaxResults(v int64) *ListKeyPhrasesDetectionJobsInput {
11157	s.MaxResults = &v
11158	return s
11159}
11160
11161// SetNextToken sets the NextToken field's value.
11162func (s *ListKeyPhrasesDetectionJobsInput) SetNextToken(v string) *ListKeyPhrasesDetectionJobsInput {
11163	s.NextToken = &v
11164	return s
11165}
11166
11167type ListKeyPhrasesDetectionJobsOutput struct {
11168	_ struct{} `type:"structure"`
11169
11170	// A list containing the properties of each job that is returned.
11171	KeyPhrasesDetectionJobPropertiesList []*KeyPhrasesDetectionJobProperties `type:"list"`
11172
11173	// Identifies the next page of results to return.
11174	NextToken *string `min:"1" type:"string"`
11175}
11176
11177// String returns the string representation
11178func (s ListKeyPhrasesDetectionJobsOutput) String() string {
11179	return awsutil.Prettify(s)
11180}
11181
11182// GoString returns the string representation
11183func (s ListKeyPhrasesDetectionJobsOutput) GoString() string {
11184	return s.String()
11185}
11186
11187// SetKeyPhrasesDetectionJobPropertiesList sets the KeyPhrasesDetectionJobPropertiesList field's value.
11188func (s *ListKeyPhrasesDetectionJobsOutput) SetKeyPhrasesDetectionJobPropertiesList(v []*KeyPhrasesDetectionJobProperties) *ListKeyPhrasesDetectionJobsOutput {
11189	s.KeyPhrasesDetectionJobPropertiesList = v
11190	return s
11191}
11192
11193// SetNextToken sets the NextToken field's value.
11194func (s *ListKeyPhrasesDetectionJobsOutput) SetNextToken(v string) *ListKeyPhrasesDetectionJobsOutput {
11195	s.NextToken = &v
11196	return s
11197}
11198
11199type ListSentimentDetectionJobsInput struct {
11200	_ struct{} `type:"structure"`
11201
11202	// Filters the jobs that are returned. You can filter jobs on their name, status,
11203	// or the date and time that they were submitted. You can only set one filter
11204	// at a time.
11205	Filter *SentimentDetectionJobFilter `type:"structure"`
11206
11207	// The maximum number of results to return in each page. The default is 100.
11208	MaxResults *int64 `min:"1" type:"integer"`
11209
11210	// Identifies the next page of results to return.
11211	NextToken *string `min:"1" type:"string"`
11212}
11213
11214// String returns the string representation
11215func (s ListSentimentDetectionJobsInput) String() string {
11216	return awsutil.Prettify(s)
11217}
11218
11219// GoString returns the string representation
11220func (s ListSentimentDetectionJobsInput) GoString() string {
11221	return s.String()
11222}
11223
11224// Validate inspects the fields of the type to determine if they are valid.
11225func (s *ListSentimentDetectionJobsInput) Validate() error {
11226	invalidParams := request.ErrInvalidParams{Context: "ListSentimentDetectionJobsInput"}
11227	if s.MaxResults != nil && *s.MaxResults < 1 {
11228		invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1))
11229	}
11230	if s.NextToken != nil && len(*s.NextToken) < 1 {
11231		invalidParams.Add(request.NewErrParamMinLen("NextToken", 1))
11232	}
11233	if s.Filter != nil {
11234		if err := s.Filter.Validate(); err != nil {
11235			invalidParams.AddNested("Filter", err.(request.ErrInvalidParams))
11236		}
11237	}
11238
11239	if invalidParams.Len() > 0 {
11240		return invalidParams
11241	}
11242	return nil
11243}
11244
11245// SetFilter sets the Filter field's value.
11246func (s *ListSentimentDetectionJobsInput) SetFilter(v *SentimentDetectionJobFilter) *ListSentimentDetectionJobsInput {
11247	s.Filter = v
11248	return s
11249}
11250
11251// SetMaxResults sets the MaxResults field's value.
11252func (s *ListSentimentDetectionJobsInput) SetMaxResults(v int64) *ListSentimentDetectionJobsInput {
11253	s.MaxResults = &v
11254	return s
11255}
11256
11257// SetNextToken sets the NextToken field's value.
11258func (s *ListSentimentDetectionJobsInput) SetNextToken(v string) *ListSentimentDetectionJobsInput {
11259	s.NextToken = &v
11260	return s
11261}
11262
11263type ListSentimentDetectionJobsOutput struct {
11264	_ struct{} `type:"structure"`
11265
11266	// Identifies the next page of results to return.
11267	NextToken *string `min:"1" type:"string"`
11268
11269	// A list containing the properties of each job that is returned.
11270	SentimentDetectionJobPropertiesList []*SentimentDetectionJobProperties `type:"list"`
11271}
11272
11273// String returns the string representation
11274func (s ListSentimentDetectionJobsOutput) String() string {
11275	return awsutil.Prettify(s)
11276}
11277
11278// GoString returns the string representation
11279func (s ListSentimentDetectionJobsOutput) GoString() string {
11280	return s.String()
11281}
11282
11283// SetNextToken sets the NextToken field's value.
11284func (s *ListSentimentDetectionJobsOutput) SetNextToken(v string) *ListSentimentDetectionJobsOutput {
11285	s.NextToken = &v
11286	return s
11287}
11288
11289// SetSentimentDetectionJobPropertiesList sets the SentimentDetectionJobPropertiesList field's value.
11290func (s *ListSentimentDetectionJobsOutput) SetSentimentDetectionJobPropertiesList(v []*SentimentDetectionJobProperties) *ListSentimentDetectionJobsOutput {
11291	s.SentimentDetectionJobPropertiesList = v
11292	return s
11293}
11294
11295type ListTagsForResourceInput struct {
11296	_ struct{} `type:"structure"`
11297
11298	// The Amazon Resource Name (ARN) of the given Amazon Comprehend resource you
11299	// are querying.
11300	//
11301	// ResourceArn is a required field
11302	ResourceArn *string `type:"string" required:"true"`
11303}
11304
11305// String returns the string representation
11306func (s ListTagsForResourceInput) String() string {
11307	return awsutil.Prettify(s)
11308}
11309
11310// GoString returns the string representation
11311func (s ListTagsForResourceInput) GoString() string {
11312	return s.String()
11313}
11314
11315// Validate inspects the fields of the type to determine if they are valid.
11316func (s *ListTagsForResourceInput) Validate() error {
11317	invalidParams := request.ErrInvalidParams{Context: "ListTagsForResourceInput"}
11318	if s.ResourceArn == nil {
11319		invalidParams.Add(request.NewErrParamRequired("ResourceArn"))
11320	}
11321
11322	if invalidParams.Len() > 0 {
11323		return invalidParams
11324	}
11325	return nil
11326}
11327
11328// SetResourceArn sets the ResourceArn field's value.
11329func (s *ListTagsForResourceInput) SetResourceArn(v string) *ListTagsForResourceInput {
11330	s.ResourceArn = &v
11331	return s
11332}
11333
11334type ListTagsForResourceOutput struct {
11335	_ struct{} `type:"structure"`
11336
11337	// The Amazon Resource Name (ARN) of the given Amazon Comprehend resource you
11338	// are querying.
11339	ResourceArn *string `type:"string"`
11340
11341	// Tags associated with the Amazon Comprehend resource being queried. A tag
11342	// is a key-value pair that adds as a metadata to a resource used by Amazon
11343	// Comprehend. For example, a tag with "Sales" as the key might be added to
11344	// a resource to indicate its use by the sales department.
11345	Tags []*Tag `type:"list"`
11346}
11347
11348// String returns the string representation
11349func (s ListTagsForResourceOutput) String() string {
11350	return awsutil.Prettify(s)
11351}
11352
11353// GoString returns the string representation
11354func (s ListTagsForResourceOutput) GoString() string {
11355	return s.String()
11356}
11357
11358// SetResourceArn sets the ResourceArn field's value.
11359func (s *ListTagsForResourceOutput) SetResourceArn(v string) *ListTagsForResourceOutput {
11360	s.ResourceArn = &v
11361	return s
11362}
11363
11364// SetTags sets the Tags field's value.
11365func (s *ListTagsForResourceOutput) SetTags(v []*Tag) *ListTagsForResourceOutput {
11366	s.Tags = v
11367	return s
11368}
11369
11370type ListTopicsDetectionJobsInput struct {
11371	_ struct{} `type:"structure"`
11372
11373	// Filters the jobs that are returned. Jobs can be filtered on their name, status,
11374	// or the date and time that they were submitted. You can set only one filter
11375	// at a time.
11376	Filter *TopicsDetectionJobFilter `type:"structure"`
11377
11378	// The maximum number of results to return in each page. The default is 100.
11379	MaxResults *int64 `min:"1" type:"integer"`
11380
11381	// Identifies the next page of results to return.
11382	NextToken *string `min:"1" type:"string"`
11383}
11384
11385// String returns the string representation
11386func (s ListTopicsDetectionJobsInput) String() string {
11387	return awsutil.Prettify(s)
11388}
11389
11390// GoString returns the string representation
11391func (s ListTopicsDetectionJobsInput) GoString() string {
11392	return s.String()
11393}
11394
11395// Validate inspects the fields of the type to determine if they are valid.
11396func (s *ListTopicsDetectionJobsInput) Validate() error {
11397	invalidParams := request.ErrInvalidParams{Context: "ListTopicsDetectionJobsInput"}
11398	if s.MaxResults != nil && *s.MaxResults < 1 {
11399		invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1))
11400	}
11401	if s.NextToken != nil && len(*s.NextToken) < 1 {
11402		invalidParams.Add(request.NewErrParamMinLen("NextToken", 1))
11403	}
11404	if s.Filter != nil {
11405		if err := s.Filter.Validate(); err != nil {
11406			invalidParams.AddNested("Filter", err.(request.ErrInvalidParams))
11407		}
11408	}
11409
11410	if invalidParams.Len() > 0 {
11411		return invalidParams
11412	}
11413	return nil
11414}
11415
11416// SetFilter sets the Filter field's value.
11417func (s *ListTopicsDetectionJobsInput) SetFilter(v *TopicsDetectionJobFilter) *ListTopicsDetectionJobsInput {
11418	s.Filter = v
11419	return s
11420}
11421
11422// SetMaxResults sets the MaxResults field's value.
11423func (s *ListTopicsDetectionJobsInput) SetMaxResults(v int64) *ListTopicsDetectionJobsInput {
11424	s.MaxResults = &v
11425	return s
11426}
11427
11428// SetNextToken sets the NextToken field's value.
11429func (s *ListTopicsDetectionJobsInput) SetNextToken(v string) *ListTopicsDetectionJobsInput {
11430	s.NextToken = &v
11431	return s
11432}
11433
11434type ListTopicsDetectionJobsOutput struct {
11435	_ struct{} `type:"structure"`
11436
11437	// Identifies the next page of results to return.
11438	NextToken *string `min:"1" type:"string"`
11439
11440	// A list containing the properties of each job that is returned.
11441	TopicsDetectionJobPropertiesList []*TopicsDetectionJobProperties `type:"list"`
11442}
11443
11444// String returns the string representation
11445func (s ListTopicsDetectionJobsOutput) String() string {
11446	return awsutil.Prettify(s)
11447}
11448
11449// GoString returns the string representation
11450func (s ListTopicsDetectionJobsOutput) GoString() string {
11451	return s.String()
11452}
11453
11454// SetNextToken sets the NextToken field's value.
11455func (s *ListTopicsDetectionJobsOutput) SetNextToken(v string) *ListTopicsDetectionJobsOutput {
11456	s.NextToken = &v
11457	return s
11458}
11459
11460// SetTopicsDetectionJobPropertiesList sets the TopicsDetectionJobPropertiesList field's value.
11461func (s *ListTopicsDetectionJobsOutput) SetTopicsDetectionJobPropertiesList(v []*TopicsDetectionJobProperties) *ListTopicsDetectionJobsOutput {
11462	s.TopicsDetectionJobPropertiesList = v
11463	return s
11464}
11465
11466// Provides configuration parameters for the output of topic detection jobs.
11467type OutputDataConfig struct {
11468	_ struct{} `type:"structure"`
11469
11470	// ID for the AWS Key Management Service (KMS) key that Amazon Comprehend uses
11471	// to encrypt the output results from an analysis job. The KmsKeyId can be one
11472	// of the following formats:
11473	//
11474	//    * KMS Key ID: "1234abcd-12ab-34cd-56ef-1234567890ab"
11475	//
11476	//    * Amazon Resource Name (ARN) of a KMS Key: "arn:aws:kms:us-west-2:111122223333:key/1234abcd-12ab-34cd-56ef-1234567890ab"
11477	//
11478	//    * KMS Key Alias: "alias/ExampleAlias"
11479	//
11480	//    * ARN of a KMS Key Alias: "arn:aws:kms:us-west-2:111122223333:alias/ExampleAlias"
11481	KmsKeyId *string `type:"string"`
11482
11483	// When you use the OutputDataConfig object with asynchronous operations, you
11484	// specify the Amazon S3 location where you want to write the output data. The
11485	// URI must be in the same region as the API endpoint that you are calling.
11486	// The location is used as the prefix for the actual location of the output
11487	// file.
11488	//
11489	// When the topic detection job is finished, the service creates an output file
11490	// in a directory specific to the job. The S3Uri field contains the location
11491	// of the output file, called output.tar.gz. It is a compressed archive that
11492	// contains the ouput of the operation.
11493	//
11494	// S3Uri is a required field
11495	S3Uri *string `type:"string" required:"true"`
11496}
11497
11498// String returns the string representation
11499func (s OutputDataConfig) String() string {
11500	return awsutil.Prettify(s)
11501}
11502
11503// GoString returns the string representation
11504func (s OutputDataConfig) GoString() string {
11505	return s.String()
11506}
11507
11508// Validate inspects the fields of the type to determine if they are valid.
11509func (s *OutputDataConfig) Validate() error {
11510	invalidParams := request.ErrInvalidParams{Context: "OutputDataConfig"}
11511	if s.S3Uri == nil {
11512		invalidParams.Add(request.NewErrParamRequired("S3Uri"))
11513	}
11514
11515	if invalidParams.Len() > 0 {
11516		return invalidParams
11517	}
11518	return nil
11519}
11520
11521// SetKmsKeyId sets the KmsKeyId field's value.
11522func (s *OutputDataConfig) SetKmsKeyId(v string) *OutputDataConfig {
11523	s.KmsKeyId = &v
11524	return s
11525}
11526
11527// SetS3Uri sets the S3Uri field's value.
11528func (s *OutputDataConfig) SetS3Uri(v string) *OutputDataConfig {
11529	s.S3Uri = &v
11530	return s
11531}
11532
11533// Identifies the part of speech represented by the token and gives the confidence
11534// that Amazon Comprehend has that the part of speech was correctly identified.
11535// For more information about the parts of speech that Amazon Comprehend can
11536// identify, see how-syntax.
11537type PartOfSpeechTag struct {
11538	_ struct{} `type:"structure"`
11539
11540	// The confidence that Amazon Comprehend has that the part of speech was correctly
11541	// identified.
11542	Score *float64 `type:"float"`
11543
11544	// Identifies the part of speech that the token represents.
11545	Tag *string `type:"string" enum:"PartOfSpeechTagType"`
11546}
11547
11548// String returns the string representation
11549func (s PartOfSpeechTag) String() string {
11550	return awsutil.Prettify(s)
11551}
11552
11553// GoString returns the string representation
11554func (s PartOfSpeechTag) GoString() string {
11555	return s.String()
11556}
11557
11558// SetScore sets the Score field's value.
11559func (s *PartOfSpeechTag) SetScore(v float64) *PartOfSpeechTag {
11560	s.Score = &v
11561	return s
11562}
11563
11564// SetTag sets the Tag field's value.
11565func (s *PartOfSpeechTag) SetTag(v string) *PartOfSpeechTag {
11566	s.Tag = &v
11567	return s
11568}
11569
11570// The specified resource name is already in use. Use a different name and try
11571// your request again.
11572type ResourceInUseException struct {
11573	_            struct{}                  `type:"structure"`
11574	RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"`
11575
11576	Message_ *string `locationName:"Message" min:"1" type:"string"`
11577}
11578
11579// String returns the string representation
11580func (s ResourceInUseException) String() string {
11581	return awsutil.Prettify(s)
11582}
11583
11584// GoString returns the string representation
11585func (s ResourceInUseException) GoString() string {
11586	return s.String()
11587}
11588
11589func newErrorResourceInUseException(v protocol.ResponseMetadata) error {
11590	return &ResourceInUseException{
11591		RespMetadata: v,
11592	}
11593}
11594
11595// Code returns the exception type name.
11596func (s *ResourceInUseException) Code() string {
11597	return "ResourceInUseException"
11598}
11599
11600// Message returns the exception's message.
11601func (s *ResourceInUseException) Message() string {
11602	if s.Message_ != nil {
11603		return *s.Message_
11604	}
11605	return ""
11606}
11607
11608// OrigErr always returns nil, satisfies awserr.Error interface.
11609func (s *ResourceInUseException) OrigErr() error {
11610	return nil
11611}
11612
11613func (s *ResourceInUseException) Error() string {
11614	return fmt.Sprintf("%s: %s", s.Code(), s.Message())
11615}
11616
11617// Status code returns the HTTP status code for the request's response error.
11618func (s *ResourceInUseException) StatusCode() int {
11619	return s.RespMetadata.StatusCode
11620}
11621
11622// RequestID returns the service's response RequestID for request.
11623func (s *ResourceInUseException) RequestID() string {
11624	return s.RespMetadata.RequestID
11625}
11626
11627// The maximum number of resources per account has been exceeded. Review the
11628// resources, and then try your request again.
11629type ResourceLimitExceededException struct {
11630	_            struct{}                  `type:"structure"`
11631	RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"`
11632
11633	Message_ *string `locationName:"Message" min:"1" type:"string"`
11634}
11635
11636// String returns the string representation
11637func (s ResourceLimitExceededException) String() string {
11638	return awsutil.Prettify(s)
11639}
11640
11641// GoString returns the string representation
11642func (s ResourceLimitExceededException) GoString() string {
11643	return s.String()
11644}
11645
11646func newErrorResourceLimitExceededException(v protocol.ResponseMetadata) error {
11647	return &ResourceLimitExceededException{
11648		RespMetadata: v,
11649	}
11650}
11651
11652// Code returns the exception type name.
11653func (s *ResourceLimitExceededException) Code() string {
11654	return "ResourceLimitExceededException"
11655}
11656
11657// Message returns the exception's message.
11658func (s *ResourceLimitExceededException) Message() string {
11659	if s.Message_ != nil {
11660		return *s.Message_
11661	}
11662	return ""
11663}
11664
11665// OrigErr always returns nil, satisfies awserr.Error interface.
11666func (s *ResourceLimitExceededException) OrigErr() error {
11667	return nil
11668}
11669
11670func (s *ResourceLimitExceededException) Error() string {
11671	return fmt.Sprintf("%s: %s", s.Code(), s.Message())
11672}
11673
11674// Status code returns the HTTP status code for the request's response error.
11675func (s *ResourceLimitExceededException) StatusCode() int {
11676	return s.RespMetadata.StatusCode
11677}
11678
11679// RequestID returns the service's response RequestID for request.
11680func (s *ResourceLimitExceededException) RequestID() string {
11681	return s.RespMetadata.RequestID
11682}
11683
11684// The specified resource ARN was not found. Check the ARN and try your request
11685// again.
11686type ResourceNotFoundException struct {
11687	_            struct{}                  `type:"structure"`
11688	RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"`
11689
11690	Message_ *string `locationName:"Message" min:"1" type:"string"`
11691}
11692
11693// String returns the string representation
11694func (s ResourceNotFoundException) String() string {
11695	return awsutil.Prettify(s)
11696}
11697
11698// GoString returns the string representation
11699func (s ResourceNotFoundException) GoString() string {
11700	return s.String()
11701}
11702
11703func newErrorResourceNotFoundException(v protocol.ResponseMetadata) error {
11704	return &ResourceNotFoundException{
11705		RespMetadata: v,
11706	}
11707}
11708
11709// Code returns the exception type name.
11710func (s *ResourceNotFoundException) Code() string {
11711	return "ResourceNotFoundException"
11712}
11713
11714// Message returns the exception's message.
11715func (s *ResourceNotFoundException) Message() string {
11716	if s.Message_ != nil {
11717		return *s.Message_
11718	}
11719	return ""
11720}
11721
11722// OrigErr always returns nil, satisfies awserr.Error interface.
11723func (s *ResourceNotFoundException) OrigErr() error {
11724	return nil
11725}
11726
11727func (s *ResourceNotFoundException) Error() string {
11728	return fmt.Sprintf("%s: %s", s.Code(), s.Message())
11729}
11730
11731// Status code returns the HTTP status code for the request's response error.
11732func (s *ResourceNotFoundException) StatusCode() int {
11733	return s.RespMetadata.StatusCode
11734}
11735
11736// RequestID returns the service's response RequestID for request.
11737func (s *ResourceNotFoundException) RequestID() string {
11738	return s.RespMetadata.RequestID
11739}
11740
11741// The specified resource is not available. Check the resource and try your
11742// request again.
11743type ResourceUnavailableException struct {
11744	_            struct{}                  `type:"structure"`
11745	RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"`
11746
11747	Message_ *string `locationName:"Message" min:"1" type:"string"`
11748}
11749
11750// String returns the string representation
11751func (s ResourceUnavailableException) String() string {
11752	return awsutil.Prettify(s)
11753}
11754
11755// GoString returns the string representation
11756func (s ResourceUnavailableException) GoString() string {
11757	return s.String()
11758}
11759
11760func newErrorResourceUnavailableException(v protocol.ResponseMetadata) error {
11761	return &ResourceUnavailableException{
11762		RespMetadata: v,
11763	}
11764}
11765
11766// Code returns the exception type name.
11767func (s *ResourceUnavailableException) Code() string {
11768	return "ResourceUnavailableException"
11769}
11770
11771// Message returns the exception's message.
11772func (s *ResourceUnavailableException) Message() string {
11773	if s.Message_ != nil {
11774		return *s.Message_
11775	}
11776	return ""
11777}
11778
11779// OrigErr always returns nil, satisfies awserr.Error interface.
11780func (s *ResourceUnavailableException) OrigErr() error {
11781	return nil
11782}
11783
11784func (s *ResourceUnavailableException) Error() string {
11785	return fmt.Sprintf("%s: %s", s.Code(), s.Message())
11786}
11787
11788// Status code returns the HTTP status code for the request's response error.
11789func (s *ResourceUnavailableException) StatusCode() int {
11790	return s.RespMetadata.StatusCode
11791}
11792
11793// RequestID returns the service's response RequestID for request.
11794func (s *ResourceUnavailableException) RequestID() string {
11795	return s.RespMetadata.RequestID
11796}
11797
11798// Provides information for filtering a list of dominant language detection
11799// jobs. For more information, see the operation.
11800type SentimentDetectionJobFilter struct {
11801	_ struct{} `type:"structure"`
11802
11803	// Filters on the name of the job.
11804	JobName *string `min:"1" type:"string"`
11805
11806	// Filters the list of jobs based on job status. Returns only jobs with the
11807	// specified status.
11808	JobStatus *string `type:"string" enum:"JobStatus"`
11809
11810	// Filters the list of jobs based on the time that the job was submitted for
11811	// processing. Returns only jobs submitted after the specified time. Jobs are
11812	// returned in descending order, newest to oldest.
11813	SubmitTimeAfter *time.Time `type:"timestamp"`
11814
11815	// Filters the list of jobs based on the time that the job was submitted for
11816	// processing. Returns only jobs submitted before the specified time. Jobs are
11817	// returned in ascending order, oldest to newest.
11818	SubmitTimeBefore *time.Time `type:"timestamp"`
11819}
11820
11821// String returns the string representation
11822func (s SentimentDetectionJobFilter) String() string {
11823	return awsutil.Prettify(s)
11824}
11825
11826// GoString returns the string representation
11827func (s SentimentDetectionJobFilter) GoString() string {
11828	return s.String()
11829}
11830
11831// Validate inspects the fields of the type to determine if they are valid.
11832func (s *SentimentDetectionJobFilter) Validate() error {
11833	invalidParams := request.ErrInvalidParams{Context: "SentimentDetectionJobFilter"}
11834	if s.JobName != nil && len(*s.JobName) < 1 {
11835		invalidParams.Add(request.NewErrParamMinLen("JobName", 1))
11836	}
11837
11838	if invalidParams.Len() > 0 {
11839		return invalidParams
11840	}
11841	return nil
11842}
11843
11844// SetJobName sets the JobName field's value.
11845func (s *SentimentDetectionJobFilter) SetJobName(v string) *SentimentDetectionJobFilter {
11846	s.JobName = &v
11847	return s
11848}
11849
11850// SetJobStatus sets the JobStatus field's value.
11851func (s *SentimentDetectionJobFilter) SetJobStatus(v string) *SentimentDetectionJobFilter {
11852	s.JobStatus = &v
11853	return s
11854}
11855
11856// SetSubmitTimeAfter sets the SubmitTimeAfter field's value.
11857func (s *SentimentDetectionJobFilter) SetSubmitTimeAfter(v time.Time) *SentimentDetectionJobFilter {
11858	s.SubmitTimeAfter = &v
11859	return s
11860}
11861
11862// SetSubmitTimeBefore sets the SubmitTimeBefore field's value.
11863func (s *SentimentDetectionJobFilter) SetSubmitTimeBefore(v time.Time) *SentimentDetectionJobFilter {
11864	s.SubmitTimeBefore = &v
11865	return s
11866}
11867
11868// Provides information about a sentiment detection job.
11869type SentimentDetectionJobProperties struct {
11870	_ struct{} `type:"structure"`
11871
11872	// The Amazon Resource Name (ARN) that gives Amazon Comprehend read access to
11873	// your input data.
11874	DataAccessRoleArn *string `min:"20" type:"string"`
11875
11876	// The time that the sentiment detection job ended.
11877	EndTime *time.Time `type:"timestamp"`
11878
11879	// The input data configuration that you supplied when you created the sentiment
11880	// detection job.
11881	InputDataConfig *InputDataConfig `type:"structure"`
11882
11883	// The identifier assigned to the sentiment detection job.
11884	JobId *string `min:"1" type:"string"`
11885
11886	// The name that you assigned to the sentiment detection job
11887	JobName *string `min:"1" type:"string"`
11888
11889	// The current status of the sentiment detection job. If the status is FAILED,
11890	// the Messages field shows the reason for the failure.
11891	JobStatus *string `type:"string" enum:"JobStatus"`
11892
11893	// The language code of the input documents.
11894	LanguageCode *string `type:"string" enum:"LanguageCode"`
11895
11896	// A description of the status of a job.
11897	Message *string `type:"string"`
11898
11899	// The output data configuration that you supplied when you created the sentiment
11900	// detection job.
11901	OutputDataConfig *OutputDataConfig `type:"structure"`
11902
11903	// The time that the sentiment detection job was submitted for processing.
11904	SubmitTime *time.Time `type:"timestamp"`
11905
11906	// ID for the AWS Key Management Service (KMS) key that Amazon Comprehend uses
11907	// to encrypt data on the storage volume attached to the ML compute instance(s)
11908	// that process the analysis job. The VolumeKmsKeyId can be either of the following
11909	// formats:
11910	//
11911	//    * KMS Key ID: "1234abcd-12ab-34cd-56ef-1234567890ab"
11912	//
11913	//    * Amazon Resource Name (ARN) of a KMS Key: "arn:aws:kms:us-west-2:111122223333:key/1234abcd-12ab-34cd-56ef-1234567890ab"
11914	VolumeKmsKeyId *string `type:"string"`
11915
11916	// Configuration parameters for a private Virtual Private Cloud (VPC) containing
11917	// the resources you are using for your sentiment detection job. For more information,
11918	// see Amazon VPC (https://docs.aws.amazon.com/vpc/latest/userguide/what-is-amazon-vpc.html).
11919	VpcConfig *VpcConfig `type:"structure"`
11920}
11921
11922// String returns the string representation
11923func (s SentimentDetectionJobProperties) String() string {
11924	return awsutil.Prettify(s)
11925}
11926
11927// GoString returns the string representation
11928func (s SentimentDetectionJobProperties) GoString() string {
11929	return s.String()
11930}
11931
11932// SetDataAccessRoleArn sets the DataAccessRoleArn field's value.
11933func (s *SentimentDetectionJobProperties) SetDataAccessRoleArn(v string) *SentimentDetectionJobProperties {
11934	s.DataAccessRoleArn = &v
11935	return s
11936}
11937
11938// SetEndTime sets the EndTime field's value.
11939func (s *SentimentDetectionJobProperties) SetEndTime(v time.Time) *SentimentDetectionJobProperties {
11940	s.EndTime = &v
11941	return s
11942}
11943
11944// SetInputDataConfig sets the InputDataConfig field's value.
11945func (s *SentimentDetectionJobProperties) SetInputDataConfig(v *InputDataConfig) *SentimentDetectionJobProperties {
11946	s.InputDataConfig = v
11947	return s
11948}
11949
11950// SetJobId sets the JobId field's value.
11951func (s *SentimentDetectionJobProperties) SetJobId(v string) *SentimentDetectionJobProperties {
11952	s.JobId = &v
11953	return s
11954}
11955
11956// SetJobName sets the JobName field's value.
11957func (s *SentimentDetectionJobProperties) SetJobName(v string) *SentimentDetectionJobProperties {
11958	s.JobName = &v
11959	return s
11960}
11961
11962// SetJobStatus sets the JobStatus field's value.
11963func (s *SentimentDetectionJobProperties) SetJobStatus(v string) *SentimentDetectionJobProperties {
11964	s.JobStatus = &v
11965	return s
11966}
11967
11968// SetLanguageCode sets the LanguageCode field's value.
11969func (s *SentimentDetectionJobProperties) SetLanguageCode(v string) *SentimentDetectionJobProperties {
11970	s.LanguageCode = &v
11971	return s
11972}
11973
11974// SetMessage sets the Message field's value.
11975func (s *SentimentDetectionJobProperties) SetMessage(v string) *SentimentDetectionJobProperties {
11976	s.Message = &v
11977	return s
11978}
11979
11980// SetOutputDataConfig sets the OutputDataConfig field's value.
11981func (s *SentimentDetectionJobProperties) SetOutputDataConfig(v *OutputDataConfig) *SentimentDetectionJobProperties {
11982	s.OutputDataConfig = v
11983	return s
11984}
11985
11986// SetSubmitTime sets the SubmitTime field's value.
11987func (s *SentimentDetectionJobProperties) SetSubmitTime(v time.Time) *SentimentDetectionJobProperties {
11988	s.SubmitTime = &v
11989	return s
11990}
11991
11992// SetVolumeKmsKeyId sets the VolumeKmsKeyId field's value.
11993func (s *SentimentDetectionJobProperties) SetVolumeKmsKeyId(v string) *SentimentDetectionJobProperties {
11994	s.VolumeKmsKeyId = &v
11995	return s
11996}
11997
11998// SetVpcConfig sets the VpcConfig field's value.
11999func (s *SentimentDetectionJobProperties) SetVpcConfig(v *VpcConfig) *SentimentDetectionJobProperties {
12000	s.VpcConfig = v
12001	return s
12002}
12003
12004// Describes the level of confidence that Amazon Comprehend has in the accuracy
12005// of its detection of sentiments.
12006type SentimentScore struct {
12007	_ struct{} `type:"structure"`
12008
12009	// The level of confidence that Amazon Comprehend has in the accuracy of its
12010	// detection of the MIXED sentiment.
12011	Mixed *float64 `type:"float"`
12012
12013	// The level of confidence that Amazon Comprehend has in the accuracy of its
12014	// detection of the NEGATIVE sentiment.
12015	Negative *float64 `type:"float"`
12016
12017	// The level of confidence that Amazon Comprehend has in the accuracy of its
12018	// detection of the NEUTRAL sentiment.
12019	Neutral *float64 `type:"float"`
12020
12021	// The level of confidence that Amazon Comprehend has in the accuracy of its
12022	// detection of the POSITIVE sentiment.
12023	Positive *float64 `type:"float"`
12024}
12025
12026// String returns the string representation
12027func (s SentimentScore) String() string {
12028	return awsutil.Prettify(s)
12029}
12030
12031// GoString returns the string representation
12032func (s SentimentScore) GoString() string {
12033	return s.String()
12034}
12035
12036// SetMixed sets the Mixed field's value.
12037func (s *SentimentScore) SetMixed(v float64) *SentimentScore {
12038	s.Mixed = &v
12039	return s
12040}
12041
12042// SetNegative sets the Negative field's value.
12043func (s *SentimentScore) SetNegative(v float64) *SentimentScore {
12044	s.Negative = &v
12045	return s
12046}
12047
12048// SetNeutral sets the Neutral field's value.
12049func (s *SentimentScore) SetNeutral(v float64) *SentimentScore {
12050	s.Neutral = &v
12051	return s
12052}
12053
12054// SetPositive sets the Positive field's value.
12055func (s *SentimentScore) SetPositive(v float64) *SentimentScore {
12056	s.Positive = &v
12057	return s
12058}
12059
12060type StartDocumentClassificationJobInput struct {
12061	_ struct{} `type:"structure"`
12062
12063	// A unique identifier for the request. If you do not set the client request
12064	// token, Amazon Comprehend generates one.
12065	ClientRequestToken *string `min:"1" type:"string" idempotencyToken:"true"`
12066
12067	// The Amazon Resource Name (ARN) of the AWS Identity and Access Management
12068	// (IAM) role that grants Amazon Comprehend read access to your input data.
12069	//
12070	// DataAccessRoleArn is a required field
12071	DataAccessRoleArn *string `min:"20" type:"string" required:"true"`
12072
12073	// The Amazon Resource Name (ARN) of the document classifier to use to process
12074	// the job.
12075	//
12076	// DocumentClassifierArn is a required field
12077	DocumentClassifierArn *string `type:"string" required:"true"`
12078
12079	// Specifies the format and location of the input data for the job.
12080	//
12081	// InputDataConfig is a required field
12082	InputDataConfig *InputDataConfig `type:"structure" required:"true"`
12083
12084	// The identifier of the job.
12085	JobName *string `min:"1" type:"string"`
12086
12087	// Specifies where to send the output files.
12088	//
12089	// OutputDataConfig is a required field
12090	OutputDataConfig *OutputDataConfig `type:"structure" required:"true"`
12091
12092	// ID for the AWS Key Management Service (KMS) key that Amazon Comprehend uses
12093	// to encrypt data on the storage volume attached to the ML compute instance(s)
12094	// that process the analysis job. The VolumeKmsKeyId can be either of the following
12095	// formats:
12096	//
12097	//    * KMS Key ID: "1234abcd-12ab-34cd-56ef-1234567890ab"
12098	//
12099	//    * Amazon Resource Name (ARN) of a KMS Key: "arn:aws:kms:us-west-2:111122223333:key/1234abcd-12ab-34cd-56ef-1234567890ab"
12100	VolumeKmsKeyId *string `type:"string"`
12101
12102	// Configuration parameters for an optional private Virtual Private Cloud (VPC)
12103	// containing the resources you are using for your document classification job.
12104	// For more information, see Amazon VPC (https://docs.aws.amazon.com/vpc/latest/userguide/what-is-amazon-vpc.html).
12105	VpcConfig *VpcConfig `type:"structure"`
12106}
12107
12108// String returns the string representation
12109func (s StartDocumentClassificationJobInput) String() string {
12110	return awsutil.Prettify(s)
12111}
12112
12113// GoString returns the string representation
12114func (s StartDocumentClassificationJobInput) GoString() string {
12115	return s.String()
12116}
12117
12118// Validate inspects the fields of the type to determine if they are valid.
12119func (s *StartDocumentClassificationJobInput) Validate() error {
12120	invalidParams := request.ErrInvalidParams{Context: "StartDocumentClassificationJobInput"}
12121	if s.ClientRequestToken != nil && len(*s.ClientRequestToken) < 1 {
12122		invalidParams.Add(request.NewErrParamMinLen("ClientRequestToken", 1))
12123	}
12124	if s.DataAccessRoleArn == nil {
12125		invalidParams.Add(request.NewErrParamRequired("DataAccessRoleArn"))
12126	}
12127	if s.DataAccessRoleArn != nil && len(*s.DataAccessRoleArn) < 20 {
12128		invalidParams.Add(request.NewErrParamMinLen("DataAccessRoleArn", 20))
12129	}
12130	if s.DocumentClassifierArn == nil {
12131		invalidParams.Add(request.NewErrParamRequired("DocumentClassifierArn"))
12132	}
12133	if s.InputDataConfig == nil {
12134		invalidParams.Add(request.NewErrParamRequired("InputDataConfig"))
12135	}
12136	if s.JobName != nil && len(*s.JobName) < 1 {
12137		invalidParams.Add(request.NewErrParamMinLen("JobName", 1))
12138	}
12139	if s.OutputDataConfig == nil {
12140		invalidParams.Add(request.NewErrParamRequired("OutputDataConfig"))
12141	}
12142	if s.InputDataConfig != nil {
12143		if err := s.InputDataConfig.Validate(); err != nil {
12144			invalidParams.AddNested("InputDataConfig", err.(request.ErrInvalidParams))
12145		}
12146	}
12147	if s.OutputDataConfig != nil {
12148		if err := s.OutputDataConfig.Validate(); err != nil {
12149			invalidParams.AddNested("OutputDataConfig", err.(request.ErrInvalidParams))
12150		}
12151	}
12152	if s.VpcConfig != nil {
12153		if err := s.VpcConfig.Validate(); err != nil {
12154			invalidParams.AddNested("VpcConfig", err.(request.ErrInvalidParams))
12155		}
12156	}
12157
12158	if invalidParams.Len() > 0 {
12159		return invalidParams
12160	}
12161	return nil
12162}
12163
12164// SetClientRequestToken sets the ClientRequestToken field's value.
12165func (s *StartDocumentClassificationJobInput) SetClientRequestToken(v string) *StartDocumentClassificationJobInput {
12166	s.ClientRequestToken = &v
12167	return s
12168}
12169
12170// SetDataAccessRoleArn sets the DataAccessRoleArn field's value.
12171func (s *StartDocumentClassificationJobInput) SetDataAccessRoleArn(v string) *StartDocumentClassificationJobInput {
12172	s.DataAccessRoleArn = &v
12173	return s
12174}
12175
12176// SetDocumentClassifierArn sets the DocumentClassifierArn field's value.
12177func (s *StartDocumentClassificationJobInput) SetDocumentClassifierArn(v string) *StartDocumentClassificationJobInput {
12178	s.DocumentClassifierArn = &v
12179	return s
12180}
12181
12182// SetInputDataConfig sets the InputDataConfig field's value.
12183func (s *StartDocumentClassificationJobInput) SetInputDataConfig(v *InputDataConfig) *StartDocumentClassificationJobInput {
12184	s.InputDataConfig = v
12185	return s
12186}
12187
12188// SetJobName sets the JobName field's value.
12189func (s *StartDocumentClassificationJobInput) SetJobName(v string) *StartDocumentClassificationJobInput {
12190	s.JobName = &v
12191	return s
12192}
12193
12194// SetOutputDataConfig sets the OutputDataConfig field's value.
12195func (s *StartDocumentClassificationJobInput) SetOutputDataConfig(v *OutputDataConfig) *StartDocumentClassificationJobInput {
12196	s.OutputDataConfig = v
12197	return s
12198}
12199
12200// SetVolumeKmsKeyId sets the VolumeKmsKeyId field's value.
12201func (s *StartDocumentClassificationJobInput) SetVolumeKmsKeyId(v string) *StartDocumentClassificationJobInput {
12202	s.VolumeKmsKeyId = &v
12203	return s
12204}
12205
12206// SetVpcConfig sets the VpcConfig field's value.
12207func (s *StartDocumentClassificationJobInput) SetVpcConfig(v *VpcConfig) *StartDocumentClassificationJobInput {
12208	s.VpcConfig = v
12209	return s
12210}
12211
12212type StartDocumentClassificationJobOutput struct {
12213	_ struct{} `type:"structure"`
12214
12215	// The identifier generated for the job. To get the status of the job, use this
12216	// identifier with the operation.
12217	JobId *string `min:"1" type:"string"`
12218
12219	// The status of the job:
12220	//
12221	//    * SUBMITTED - The job has been received and queued for processing.
12222	//
12223	//    * IN_PROGRESS - Amazon Comprehend is processing the job.
12224	//
12225	//    * COMPLETED - The job was successfully completed and the output is available.
12226	//
12227	//    * FAILED - The job did not complete. For details, use the operation.
12228	//
12229	//    * STOP_REQUESTED - Amazon Comprehend has received a stop request for the
12230	//    job and is processing the request.
12231	//
12232	//    * STOPPED - The job was successfully stopped without completing.
12233	JobStatus *string `type:"string" enum:"JobStatus"`
12234}
12235
12236// String returns the string representation
12237func (s StartDocumentClassificationJobOutput) String() string {
12238	return awsutil.Prettify(s)
12239}
12240
12241// GoString returns the string representation
12242func (s StartDocumentClassificationJobOutput) GoString() string {
12243	return s.String()
12244}
12245
12246// SetJobId sets the JobId field's value.
12247func (s *StartDocumentClassificationJobOutput) SetJobId(v string) *StartDocumentClassificationJobOutput {
12248	s.JobId = &v
12249	return s
12250}
12251
12252// SetJobStatus sets the JobStatus field's value.
12253func (s *StartDocumentClassificationJobOutput) SetJobStatus(v string) *StartDocumentClassificationJobOutput {
12254	s.JobStatus = &v
12255	return s
12256}
12257
12258type StartDominantLanguageDetectionJobInput struct {
12259	_ struct{} `type:"structure"`
12260
12261	// A unique identifier for the request. If you do not set the client request
12262	// token, Amazon Comprehend generates one.
12263	ClientRequestToken *string `min:"1" type:"string" idempotencyToken:"true"`
12264
12265	// The Amazon Resource Name (ARN) of the AWS Identity and Access Management
12266	// (IAM) role that grants Amazon Comprehend read access to your input data.
12267	// For more information, see https://docs.aws.amazon.com/comprehend/latest/dg/access-control-managing-permissions.html#auth-role-permissions
12268	// (https://docs.aws.amazon.com/comprehend/latest/dg/access-control-managing-permissions.html#auth-role-permissions).
12269	//
12270	// DataAccessRoleArn is a required field
12271	DataAccessRoleArn *string `min:"20" type:"string" required:"true"`
12272
12273	// Specifies the format and location of the input data for the job.
12274	//
12275	// InputDataConfig is a required field
12276	InputDataConfig *InputDataConfig `type:"structure" required:"true"`
12277
12278	// An identifier for the job.
12279	JobName *string `min:"1" type:"string"`
12280
12281	// Specifies where to send the output files.
12282	//
12283	// OutputDataConfig is a required field
12284	OutputDataConfig *OutputDataConfig `type:"structure" required:"true"`
12285
12286	// ID for the AWS Key Management Service (KMS) key that Amazon Comprehend uses
12287	// to encrypt data on the storage volume attached to the ML compute instance(s)
12288	// that process the analysis job. The VolumeKmsKeyId can be either of the following
12289	// formats:
12290	//
12291	//    * KMS Key ID: "1234abcd-12ab-34cd-56ef-1234567890ab"
12292	//
12293	//    * Amazon Resource Name (ARN) of a KMS Key: "arn:aws:kms:us-west-2:111122223333:key/1234abcd-12ab-34cd-56ef-1234567890ab"
12294	VolumeKmsKeyId *string `type:"string"`
12295
12296	// Configuration parameters for an optional private Virtual Private Cloud (VPC)
12297	// containing the resources you are using for your dominant language detection
12298	// job. For more information, see Amazon VPC (https://docs.aws.amazon.com/vpc/latest/userguide/what-is-amazon-vpc.html).
12299	VpcConfig *VpcConfig `type:"structure"`
12300}
12301
12302// String returns the string representation
12303func (s StartDominantLanguageDetectionJobInput) String() string {
12304	return awsutil.Prettify(s)
12305}
12306
12307// GoString returns the string representation
12308func (s StartDominantLanguageDetectionJobInput) GoString() string {
12309	return s.String()
12310}
12311
12312// Validate inspects the fields of the type to determine if they are valid.
12313func (s *StartDominantLanguageDetectionJobInput) Validate() error {
12314	invalidParams := request.ErrInvalidParams{Context: "StartDominantLanguageDetectionJobInput"}
12315	if s.ClientRequestToken != nil && len(*s.ClientRequestToken) < 1 {
12316		invalidParams.Add(request.NewErrParamMinLen("ClientRequestToken", 1))
12317	}
12318	if s.DataAccessRoleArn == nil {
12319		invalidParams.Add(request.NewErrParamRequired("DataAccessRoleArn"))
12320	}
12321	if s.DataAccessRoleArn != nil && len(*s.DataAccessRoleArn) < 20 {
12322		invalidParams.Add(request.NewErrParamMinLen("DataAccessRoleArn", 20))
12323	}
12324	if s.InputDataConfig == nil {
12325		invalidParams.Add(request.NewErrParamRequired("InputDataConfig"))
12326	}
12327	if s.JobName != nil && len(*s.JobName) < 1 {
12328		invalidParams.Add(request.NewErrParamMinLen("JobName", 1))
12329	}
12330	if s.OutputDataConfig == nil {
12331		invalidParams.Add(request.NewErrParamRequired("OutputDataConfig"))
12332	}
12333	if s.InputDataConfig != nil {
12334		if err := s.InputDataConfig.Validate(); err != nil {
12335			invalidParams.AddNested("InputDataConfig", err.(request.ErrInvalidParams))
12336		}
12337	}
12338	if s.OutputDataConfig != nil {
12339		if err := s.OutputDataConfig.Validate(); err != nil {
12340			invalidParams.AddNested("OutputDataConfig", err.(request.ErrInvalidParams))
12341		}
12342	}
12343	if s.VpcConfig != nil {
12344		if err := s.VpcConfig.Validate(); err != nil {
12345			invalidParams.AddNested("VpcConfig", err.(request.ErrInvalidParams))
12346		}
12347	}
12348
12349	if invalidParams.Len() > 0 {
12350		return invalidParams
12351	}
12352	return nil
12353}
12354
12355// SetClientRequestToken sets the ClientRequestToken field's value.
12356func (s *StartDominantLanguageDetectionJobInput) SetClientRequestToken(v string) *StartDominantLanguageDetectionJobInput {
12357	s.ClientRequestToken = &v
12358	return s
12359}
12360
12361// SetDataAccessRoleArn sets the DataAccessRoleArn field's value.
12362func (s *StartDominantLanguageDetectionJobInput) SetDataAccessRoleArn(v string) *StartDominantLanguageDetectionJobInput {
12363	s.DataAccessRoleArn = &v
12364	return s
12365}
12366
12367// SetInputDataConfig sets the InputDataConfig field's value.
12368func (s *StartDominantLanguageDetectionJobInput) SetInputDataConfig(v *InputDataConfig) *StartDominantLanguageDetectionJobInput {
12369	s.InputDataConfig = v
12370	return s
12371}
12372
12373// SetJobName sets the JobName field's value.
12374func (s *StartDominantLanguageDetectionJobInput) SetJobName(v string) *StartDominantLanguageDetectionJobInput {
12375	s.JobName = &v
12376	return s
12377}
12378
12379// SetOutputDataConfig sets the OutputDataConfig field's value.
12380func (s *StartDominantLanguageDetectionJobInput) SetOutputDataConfig(v *OutputDataConfig) *StartDominantLanguageDetectionJobInput {
12381	s.OutputDataConfig = v
12382	return s
12383}
12384
12385// SetVolumeKmsKeyId sets the VolumeKmsKeyId field's value.
12386func (s *StartDominantLanguageDetectionJobInput) SetVolumeKmsKeyId(v string) *StartDominantLanguageDetectionJobInput {
12387	s.VolumeKmsKeyId = &v
12388	return s
12389}
12390
12391// SetVpcConfig sets the VpcConfig field's value.
12392func (s *StartDominantLanguageDetectionJobInput) SetVpcConfig(v *VpcConfig) *StartDominantLanguageDetectionJobInput {
12393	s.VpcConfig = v
12394	return s
12395}
12396
12397type StartDominantLanguageDetectionJobOutput struct {
12398	_ struct{} `type:"structure"`
12399
12400	// The identifier generated for the job. To get the status of a job, use this
12401	// identifier with the operation.
12402	JobId *string `min:"1" type:"string"`
12403
12404	// The status of the job.
12405	//
12406	//    * SUBMITTED - The job has been received and is queued for processing.
12407	//
12408	//    * IN_PROGRESS - Amazon Comprehend is processing the job.
12409	//
12410	//    * COMPLETED - The job was successfully completed and the output is available.
12411	//
12412	//    * FAILED - The job did not complete. To get details, use the operation.
12413	JobStatus *string `type:"string" enum:"JobStatus"`
12414}
12415
12416// String returns the string representation
12417func (s StartDominantLanguageDetectionJobOutput) String() string {
12418	return awsutil.Prettify(s)
12419}
12420
12421// GoString returns the string representation
12422func (s StartDominantLanguageDetectionJobOutput) GoString() string {
12423	return s.String()
12424}
12425
12426// SetJobId sets the JobId field's value.
12427func (s *StartDominantLanguageDetectionJobOutput) SetJobId(v string) *StartDominantLanguageDetectionJobOutput {
12428	s.JobId = &v
12429	return s
12430}
12431
12432// SetJobStatus sets the JobStatus field's value.
12433func (s *StartDominantLanguageDetectionJobOutput) SetJobStatus(v string) *StartDominantLanguageDetectionJobOutput {
12434	s.JobStatus = &v
12435	return s
12436}
12437
12438type StartEntitiesDetectionJobInput struct {
12439	_ struct{} `type:"structure"`
12440
12441	// A unique identifier for the request. If you don't set the client request
12442	// token, Amazon Comprehend generates one.
12443	ClientRequestToken *string `min:"1" type:"string" idempotencyToken:"true"`
12444
12445	// The Amazon Resource Name (ARN) of the AWS Identity and Access Management
12446	// (IAM) role that grants Amazon Comprehend read access to your input data.
12447	// For more information, see https://docs.aws.amazon.com/comprehend/latest/dg/access-control-managing-permissions.html#auth-role-permissions
12448	// (https://docs.aws.amazon.com/comprehend/latest/dg/access-control-managing-permissions.html#auth-role-permissions).
12449	//
12450	// DataAccessRoleArn is a required field
12451	DataAccessRoleArn *string `min:"20" type:"string" required:"true"`
12452
12453	// The Amazon Resource Name (ARN) that identifies the specific entity recognizer
12454	// to be used by the StartEntitiesDetectionJob. This ARN is optional and is
12455	// only used for a custom entity recognition job.
12456	EntityRecognizerArn *string `type:"string"`
12457
12458	// Specifies the format and location of the input data for the job.
12459	//
12460	// InputDataConfig is a required field
12461	InputDataConfig *InputDataConfig `type:"structure" required:"true"`
12462
12463	// The identifier of the job.
12464	JobName *string `min:"1" type:"string"`
12465
12466	// The language of the input documents. All documents must be in the same language.
12467	// You can specify any of the languages supported by Amazon Comprehend. If custom
12468	// entities recognition is used, this parameter is ignored and the language
12469	// used for training the model is used instead.
12470	//
12471	// LanguageCode is a required field
12472	LanguageCode *string `type:"string" required:"true" enum:"LanguageCode"`
12473
12474	// Specifies where to send the output files.
12475	//
12476	// OutputDataConfig is a required field
12477	OutputDataConfig *OutputDataConfig `type:"structure" required:"true"`
12478
12479	// ID for the AWS Key Management Service (KMS) key that Amazon Comprehend uses
12480	// to encrypt data on the storage volume attached to the ML compute instance(s)
12481	// that process the analysis job. The VolumeKmsKeyId can be either of the following
12482	// formats:
12483	//
12484	//    * KMS Key ID: "1234abcd-12ab-34cd-56ef-1234567890ab"
12485	//
12486	//    * Amazon Resource Name (ARN) of a KMS Key: "arn:aws:kms:us-west-2:111122223333:key/1234abcd-12ab-34cd-56ef-1234567890ab"
12487	VolumeKmsKeyId *string `type:"string"`
12488
12489	// Configuration parameters for an optional private Virtual Private Cloud (VPC)
12490	// containing the resources you are using for your entity detection job. For
12491	// more information, see Amazon VPC (https://docs.aws.amazon.com/vpc/latest/userguide/what-is-amazon-vpc.html).
12492	VpcConfig *VpcConfig `type:"structure"`
12493}
12494
12495// String returns the string representation
12496func (s StartEntitiesDetectionJobInput) String() string {
12497	return awsutil.Prettify(s)
12498}
12499
12500// GoString returns the string representation
12501func (s StartEntitiesDetectionJobInput) GoString() string {
12502	return s.String()
12503}
12504
12505// Validate inspects the fields of the type to determine if they are valid.
12506func (s *StartEntitiesDetectionJobInput) Validate() error {
12507	invalidParams := request.ErrInvalidParams{Context: "StartEntitiesDetectionJobInput"}
12508	if s.ClientRequestToken != nil && len(*s.ClientRequestToken) < 1 {
12509		invalidParams.Add(request.NewErrParamMinLen("ClientRequestToken", 1))
12510	}
12511	if s.DataAccessRoleArn == nil {
12512		invalidParams.Add(request.NewErrParamRequired("DataAccessRoleArn"))
12513	}
12514	if s.DataAccessRoleArn != nil && len(*s.DataAccessRoleArn) < 20 {
12515		invalidParams.Add(request.NewErrParamMinLen("DataAccessRoleArn", 20))
12516	}
12517	if s.InputDataConfig == nil {
12518		invalidParams.Add(request.NewErrParamRequired("InputDataConfig"))
12519	}
12520	if s.JobName != nil && len(*s.JobName) < 1 {
12521		invalidParams.Add(request.NewErrParamMinLen("JobName", 1))
12522	}
12523	if s.LanguageCode == nil {
12524		invalidParams.Add(request.NewErrParamRequired("LanguageCode"))
12525	}
12526	if s.OutputDataConfig == nil {
12527		invalidParams.Add(request.NewErrParamRequired("OutputDataConfig"))
12528	}
12529	if s.InputDataConfig != nil {
12530		if err := s.InputDataConfig.Validate(); err != nil {
12531			invalidParams.AddNested("InputDataConfig", err.(request.ErrInvalidParams))
12532		}
12533	}
12534	if s.OutputDataConfig != nil {
12535		if err := s.OutputDataConfig.Validate(); err != nil {
12536			invalidParams.AddNested("OutputDataConfig", err.(request.ErrInvalidParams))
12537		}
12538	}
12539	if s.VpcConfig != nil {
12540		if err := s.VpcConfig.Validate(); err != nil {
12541			invalidParams.AddNested("VpcConfig", err.(request.ErrInvalidParams))
12542		}
12543	}
12544
12545	if invalidParams.Len() > 0 {
12546		return invalidParams
12547	}
12548	return nil
12549}
12550
12551// SetClientRequestToken sets the ClientRequestToken field's value.
12552func (s *StartEntitiesDetectionJobInput) SetClientRequestToken(v string) *StartEntitiesDetectionJobInput {
12553	s.ClientRequestToken = &v
12554	return s
12555}
12556
12557// SetDataAccessRoleArn sets the DataAccessRoleArn field's value.
12558func (s *StartEntitiesDetectionJobInput) SetDataAccessRoleArn(v string) *StartEntitiesDetectionJobInput {
12559	s.DataAccessRoleArn = &v
12560	return s
12561}
12562
12563// SetEntityRecognizerArn sets the EntityRecognizerArn field's value.
12564func (s *StartEntitiesDetectionJobInput) SetEntityRecognizerArn(v string) *StartEntitiesDetectionJobInput {
12565	s.EntityRecognizerArn = &v
12566	return s
12567}
12568
12569// SetInputDataConfig sets the InputDataConfig field's value.
12570func (s *StartEntitiesDetectionJobInput) SetInputDataConfig(v *InputDataConfig) *StartEntitiesDetectionJobInput {
12571	s.InputDataConfig = v
12572	return s
12573}
12574
12575// SetJobName sets the JobName field's value.
12576func (s *StartEntitiesDetectionJobInput) SetJobName(v string) *StartEntitiesDetectionJobInput {
12577	s.JobName = &v
12578	return s
12579}
12580
12581// SetLanguageCode sets the LanguageCode field's value.
12582func (s *StartEntitiesDetectionJobInput) SetLanguageCode(v string) *StartEntitiesDetectionJobInput {
12583	s.LanguageCode = &v
12584	return s
12585}
12586
12587// SetOutputDataConfig sets the OutputDataConfig field's value.
12588func (s *StartEntitiesDetectionJobInput) SetOutputDataConfig(v *OutputDataConfig) *StartEntitiesDetectionJobInput {
12589	s.OutputDataConfig = v
12590	return s
12591}
12592
12593// SetVolumeKmsKeyId sets the VolumeKmsKeyId field's value.
12594func (s *StartEntitiesDetectionJobInput) SetVolumeKmsKeyId(v string) *StartEntitiesDetectionJobInput {
12595	s.VolumeKmsKeyId = &v
12596	return s
12597}
12598
12599// SetVpcConfig sets the VpcConfig field's value.
12600func (s *StartEntitiesDetectionJobInput) SetVpcConfig(v *VpcConfig) *StartEntitiesDetectionJobInput {
12601	s.VpcConfig = v
12602	return s
12603}
12604
12605type StartEntitiesDetectionJobOutput struct {
12606	_ struct{} `type:"structure"`
12607
12608	// The identifier generated for the job. To get the status of job, use this
12609	// identifier with the operation.
12610	JobId *string `min:"1" type:"string"`
12611
12612	// The status of the job.
12613	//
12614	//    * SUBMITTED - The job has been received and is queued for processing.
12615	//
12616	//    * IN_PROGRESS - Amazon Comprehend is processing the job.
12617	//
12618	//    * COMPLETED - The job was successfully completed and the output is available.
12619	//
12620	//    * FAILED - The job did not complete. To get details, use the operation.
12621	//
12622	//    * STOP_REQUESTED - Amazon Comprehend has received a stop request for the
12623	//    job and is processing the request.
12624	//
12625	//    * STOPPED - The job was successfully stopped without completing.
12626	JobStatus *string `type:"string" enum:"JobStatus"`
12627}
12628
12629// String returns the string representation
12630func (s StartEntitiesDetectionJobOutput) String() string {
12631	return awsutil.Prettify(s)
12632}
12633
12634// GoString returns the string representation
12635func (s StartEntitiesDetectionJobOutput) GoString() string {
12636	return s.String()
12637}
12638
12639// SetJobId sets the JobId field's value.
12640func (s *StartEntitiesDetectionJobOutput) SetJobId(v string) *StartEntitiesDetectionJobOutput {
12641	s.JobId = &v
12642	return s
12643}
12644
12645// SetJobStatus sets the JobStatus field's value.
12646func (s *StartEntitiesDetectionJobOutput) SetJobStatus(v string) *StartEntitiesDetectionJobOutput {
12647	s.JobStatus = &v
12648	return s
12649}
12650
12651type StartKeyPhrasesDetectionJobInput struct {
12652	_ struct{} `type:"structure"`
12653
12654	// A unique identifier for the request. If you don't set the client request
12655	// token, Amazon Comprehend generates one.
12656	ClientRequestToken *string `min:"1" type:"string" idempotencyToken:"true"`
12657
12658	// The Amazon Resource Name (ARN) of the AWS Identity and Access Management
12659	// (IAM) role that grants Amazon Comprehend read access to your input data.
12660	// For more information, see https://docs.aws.amazon.com/comprehend/latest/dg/access-control-managing-permissions.html#auth-role-permissions
12661	// (https://docs.aws.amazon.com/comprehend/latest/dg/access-control-managing-permissions.html#auth-role-permissions).
12662	//
12663	// DataAccessRoleArn is a required field
12664	DataAccessRoleArn *string `min:"20" type:"string" required:"true"`
12665
12666	// Specifies the format and location of the input data for the job.
12667	//
12668	// InputDataConfig is a required field
12669	InputDataConfig *InputDataConfig `type:"structure" required:"true"`
12670
12671	// The identifier of the job.
12672	JobName *string `min:"1" type:"string"`
12673
12674	// The language of the input documents. You can specify any of the primary languages
12675	// supported by Amazon Comprehend. All documents must be in the same language.
12676	//
12677	// LanguageCode is a required field
12678	LanguageCode *string `type:"string" required:"true" enum:"LanguageCode"`
12679
12680	// Specifies where to send the output files.
12681	//
12682	// OutputDataConfig is a required field
12683	OutputDataConfig *OutputDataConfig `type:"structure" required:"true"`
12684
12685	// ID for the AWS Key Management Service (KMS) key that Amazon Comprehend uses
12686	// to encrypt data on the storage volume attached to the ML compute instance(s)
12687	// that process the analysis job. The VolumeKmsKeyId can be either of the following
12688	// formats:
12689	//
12690	//    * KMS Key ID: "1234abcd-12ab-34cd-56ef-1234567890ab"
12691	//
12692	//    * Amazon Resource Name (ARN) of a KMS Key: "arn:aws:kms:us-west-2:111122223333:key/1234abcd-12ab-34cd-56ef-1234567890ab"
12693	VolumeKmsKeyId *string `type:"string"`
12694
12695	// Configuration parameters for an optional private Virtual Private Cloud (VPC)
12696	// containing the resources you are using for your key phrases detection job.
12697	// For more information, see Amazon VPC (https://docs.aws.amazon.com/vpc/latest/userguide/what-is-amazon-vpc.html).
12698	VpcConfig *VpcConfig `type:"structure"`
12699}
12700
12701// String returns the string representation
12702func (s StartKeyPhrasesDetectionJobInput) String() string {
12703	return awsutil.Prettify(s)
12704}
12705
12706// GoString returns the string representation
12707func (s StartKeyPhrasesDetectionJobInput) GoString() string {
12708	return s.String()
12709}
12710
12711// Validate inspects the fields of the type to determine if they are valid.
12712func (s *StartKeyPhrasesDetectionJobInput) Validate() error {
12713	invalidParams := request.ErrInvalidParams{Context: "StartKeyPhrasesDetectionJobInput"}
12714	if s.ClientRequestToken != nil && len(*s.ClientRequestToken) < 1 {
12715		invalidParams.Add(request.NewErrParamMinLen("ClientRequestToken", 1))
12716	}
12717	if s.DataAccessRoleArn == nil {
12718		invalidParams.Add(request.NewErrParamRequired("DataAccessRoleArn"))
12719	}
12720	if s.DataAccessRoleArn != nil && len(*s.DataAccessRoleArn) < 20 {
12721		invalidParams.Add(request.NewErrParamMinLen("DataAccessRoleArn", 20))
12722	}
12723	if s.InputDataConfig == nil {
12724		invalidParams.Add(request.NewErrParamRequired("InputDataConfig"))
12725	}
12726	if s.JobName != nil && len(*s.JobName) < 1 {
12727		invalidParams.Add(request.NewErrParamMinLen("JobName", 1))
12728	}
12729	if s.LanguageCode == nil {
12730		invalidParams.Add(request.NewErrParamRequired("LanguageCode"))
12731	}
12732	if s.OutputDataConfig == nil {
12733		invalidParams.Add(request.NewErrParamRequired("OutputDataConfig"))
12734	}
12735	if s.InputDataConfig != nil {
12736		if err := s.InputDataConfig.Validate(); err != nil {
12737			invalidParams.AddNested("InputDataConfig", err.(request.ErrInvalidParams))
12738		}
12739	}
12740	if s.OutputDataConfig != nil {
12741		if err := s.OutputDataConfig.Validate(); err != nil {
12742			invalidParams.AddNested("OutputDataConfig", err.(request.ErrInvalidParams))
12743		}
12744	}
12745	if s.VpcConfig != nil {
12746		if err := s.VpcConfig.Validate(); err != nil {
12747			invalidParams.AddNested("VpcConfig", err.(request.ErrInvalidParams))
12748		}
12749	}
12750
12751	if invalidParams.Len() > 0 {
12752		return invalidParams
12753	}
12754	return nil
12755}
12756
12757// SetClientRequestToken sets the ClientRequestToken field's value.
12758func (s *StartKeyPhrasesDetectionJobInput) SetClientRequestToken(v string) *StartKeyPhrasesDetectionJobInput {
12759	s.ClientRequestToken = &v
12760	return s
12761}
12762
12763// SetDataAccessRoleArn sets the DataAccessRoleArn field's value.
12764func (s *StartKeyPhrasesDetectionJobInput) SetDataAccessRoleArn(v string) *StartKeyPhrasesDetectionJobInput {
12765	s.DataAccessRoleArn = &v
12766	return s
12767}
12768
12769// SetInputDataConfig sets the InputDataConfig field's value.
12770func (s *StartKeyPhrasesDetectionJobInput) SetInputDataConfig(v *InputDataConfig) *StartKeyPhrasesDetectionJobInput {
12771	s.InputDataConfig = v
12772	return s
12773}
12774
12775// SetJobName sets the JobName field's value.
12776func (s *StartKeyPhrasesDetectionJobInput) SetJobName(v string) *StartKeyPhrasesDetectionJobInput {
12777	s.JobName = &v
12778	return s
12779}
12780
12781// SetLanguageCode sets the LanguageCode field's value.
12782func (s *StartKeyPhrasesDetectionJobInput) SetLanguageCode(v string) *StartKeyPhrasesDetectionJobInput {
12783	s.LanguageCode = &v
12784	return s
12785}
12786
12787// SetOutputDataConfig sets the OutputDataConfig field's value.
12788func (s *StartKeyPhrasesDetectionJobInput) SetOutputDataConfig(v *OutputDataConfig) *StartKeyPhrasesDetectionJobInput {
12789	s.OutputDataConfig = v
12790	return s
12791}
12792
12793// SetVolumeKmsKeyId sets the VolumeKmsKeyId field's value.
12794func (s *StartKeyPhrasesDetectionJobInput) SetVolumeKmsKeyId(v string) *StartKeyPhrasesDetectionJobInput {
12795	s.VolumeKmsKeyId = &v
12796	return s
12797}
12798
12799// SetVpcConfig sets the VpcConfig field's value.
12800func (s *StartKeyPhrasesDetectionJobInput) SetVpcConfig(v *VpcConfig) *StartKeyPhrasesDetectionJobInput {
12801	s.VpcConfig = v
12802	return s
12803}
12804
12805type StartKeyPhrasesDetectionJobOutput struct {
12806	_ struct{} `type:"structure"`
12807
12808	// The identifier generated for the job. To get the status of a job, use this
12809	// identifier with the operation.
12810	JobId *string `min:"1" type:"string"`
12811
12812	// The status of the job.
12813	//
12814	//    * SUBMITTED - The job has been received and is queued for processing.
12815	//
12816	//    * IN_PROGRESS - Amazon Comprehend is processing the job.
12817	//
12818	//    * COMPLETED - The job was successfully completed and the output is available.
12819	//
12820	//    * FAILED - The job did not complete. To get details, use the operation.
12821	JobStatus *string `type:"string" enum:"JobStatus"`
12822}
12823
12824// String returns the string representation
12825func (s StartKeyPhrasesDetectionJobOutput) String() string {
12826	return awsutil.Prettify(s)
12827}
12828
12829// GoString returns the string representation
12830func (s StartKeyPhrasesDetectionJobOutput) GoString() string {
12831	return s.String()
12832}
12833
12834// SetJobId sets the JobId field's value.
12835func (s *StartKeyPhrasesDetectionJobOutput) SetJobId(v string) *StartKeyPhrasesDetectionJobOutput {
12836	s.JobId = &v
12837	return s
12838}
12839
12840// SetJobStatus sets the JobStatus field's value.
12841func (s *StartKeyPhrasesDetectionJobOutput) SetJobStatus(v string) *StartKeyPhrasesDetectionJobOutput {
12842	s.JobStatus = &v
12843	return s
12844}
12845
12846type StartSentimentDetectionJobInput struct {
12847	_ struct{} `type:"structure"`
12848
12849	// A unique identifier for the request. If you don't set the client request
12850	// token, Amazon Comprehend generates one.
12851	ClientRequestToken *string `min:"1" type:"string" idempotencyToken:"true"`
12852
12853	// The Amazon Resource Name (ARN) of the AWS Identity and Access Management
12854	// (IAM) role that grants Amazon Comprehend read access to your input data.
12855	// For more information, see https://docs.aws.amazon.com/comprehend/latest/dg/access-control-managing-permissions.html#auth-role-permissions
12856	// (https://docs.aws.amazon.com/comprehend/latest/dg/access-control-managing-permissions.html#auth-role-permissions).
12857	//
12858	// DataAccessRoleArn is a required field
12859	DataAccessRoleArn *string `min:"20" type:"string" required:"true"`
12860
12861	// Specifies the format and location of the input data for the job.
12862	//
12863	// InputDataConfig is a required field
12864	InputDataConfig *InputDataConfig `type:"structure" required:"true"`
12865
12866	// The identifier of the job.
12867	JobName *string `min:"1" type:"string"`
12868
12869	// The language of the input documents. You can specify any of the primary languages
12870	// supported by Amazon Comprehend. All documents must be in the same language.
12871	//
12872	// LanguageCode is a required field
12873	LanguageCode *string `type:"string" required:"true" enum:"LanguageCode"`
12874
12875	// Specifies where to send the output files.
12876	//
12877	// OutputDataConfig is a required field
12878	OutputDataConfig *OutputDataConfig `type:"structure" required:"true"`
12879
12880	// ID for the AWS Key Management Service (KMS) key that Amazon Comprehend uses
12881	// to encrypt data on the storage volume attached to the ML compute instance(s)
12882	// that process the analysis job. The VolumeKmsKeyId can be either of the following
12883	// formats:
12884	//
12885	//    * KMS Key ID: "1234abcd-12ab-34cd-56ef-1234567890ab"
12886	//
12887	//    * Amazon Resource Name (ARN) of a KMS Key: "arn:aws:kms:us-west-2:111122223333:key/1234abcd-12ab-34cd-56ef-1234567890ab"
12888	VolumeKmsKeyId *string `type:"string"`
12889
12890	// Configuration parameters for an optional private Virtual Private Cloud (VPC)
12891	// containing the resources you are using for your sentiment detection job.
12892	// For more information, see Amazon VPC (https://docs.aws.amazon.com/vpc/latest/userguide/what-is-amazon-vpc.html).
12893	VpcConfig *VpcConfig `type:"structure"`
12894}
12895
12896// String returns the string representation
12897func (s StartSentimentDetectionJobInput) String() string {
12898	return awsutil.Prettify(s)
12899}
12900
12901// GoString returns the string representation
12902func (s StartSentimentDetectionJobInput) GoString() string {
12903	return s.String()
12904}
12905
12906// Validate inspects the fields of the type to determine if they are valid.
12907func (s *StartSentimentDetectionJobInput) Validate() error {
12908	invalidParams := request.ErrInvalidParams{Context: "StartSentimentDetectionJobInput"}
12909	if s.ClientRequestToken != nil && len(*s.ClientRequestToken) < 1 {
12910		invalidParams.Add(request.NewErrParamMinLen("ClientRequestToken", 1))
12911	}
12912	if s.DataAccessRoleArn == nil {
12913		invalidParams.Add(request.NewErrParamRequired("DataAccessRoleArn"))
12914	}
12915	if s.DataAccessRoleArn != nil && len(*s.DataAccessRoleArn) < 20 {
12916		invalidParams.Add(request.NewErrParamMinLen("DataAccessRoleArn", 20))
12917	}
12918	if s.InputDataConfig == nil {
12919		invalidParams.Add(request.NewErrParamRequired("InputDataConfig"))
12920	}
12921	if s.JobName != nil && len(*s.JobName) < 1 {
12922		invalidParams.Add(request.NewErrParamMinLen("JobName", 1))
12923	}
12924	if s.LanguageCode == nil {
12925		invalidParams.Add(request.NewErrParamRequired("LanguageCode"))
12926	}
12927	if s.OutputDataConfig == nil {
12928		invalidParams.Add(request.NewErrParamRequired("OutputDataConfig"))
12929	}
12930	if s.InputDataConfig != nil {
12931		if err := s.InputDataConfig.Validate(); err != nil {
12932			invalidParams.AddNested("InputDataConfig", err.(request.ErrInvalidParams))
12933		}
12934	}
12935	if s.OutputDataConfig != nil {
12936		if err := s.OutputDataConfig.Validate(); err != nil {
12937			invalidParams.AddNested("OutputDataConfig", err.(request.ErrInvalidParams))
12938		}
12939	}
12940	if s.VpcConfig != nil {
12941		if err := s.VpcConfig.Validate(); err != nil {
12942			invalidParams.AddNested("VpcConfig", err.(request.ErrInvalidParams))
12943		}
12944	}
12945
12946	if invalidParams.Len() > 0 {
12947		return invalidParams
12948	}
12949	return nil
12950}
12951
12952// SetClientRequestToken sets the ClientRequestToken field's value.
12953func (s *StartSentimentDetectionJobInput) SetClientRequestToken(v string) *StartSentimentDetectionJobInput {
12954	s.ClientRequestToken = &v
12955	return s
12956}
12957
12958// SetDataAccessRoleArn sets the DataAccessRoleArn field's value.
12959func (s *StartSentimentDetectionJobInput) SetDataAccessRoleArn(v string) *StartSentimentDetectionJobInput {
12960	s.DataAccessRoleArn = &v
12961	return s
12962}
12963
12964// SetInputDataConfig sets the InputDataConfig field's value.
12965func (s *StartSentimentDetectionJobInput) SetInputDataConfig(v *InputDataConfig) *StartSentimentDetectionJobInput {
12966	s.InputDataConfig = v
12967	return s
12968}
12969
12970// SetJobName sets the JobName field's value.
12971func (s *StartSentimentDetectionJobInput) SetJobName(v string) *StartSentimentDetectionJobInput {
12972	s.JobName = &v
12973	return s
12974}
12975
12976// SetLanguageCode sets the LanguageCode field's value.
12977func (s *StartSentimentDetectionJobInput) SetLanguageCode(v string) *StartSentimentDetectionJobInput {
12978	s.LanguageCode = &v
12979	return s
12980}
12981
12982// SetOutputDataConfig sets the OutputDataConfig field's value.
12983func (s *StartSentimentDetectionJobInput) SetOutputDataConfig(v *OutputDataConfig) *StartSentimentDetectionJobInput {
12984	s.OutputDataConfig = v
12985	return s
12986}
12987
12988// SetVolumeKmsKeyId sets the VolumeKmsKeyId field's value.
12989func (s *StartSentimentDetectionJobInput) SetVolumeKmsKeyId(v string) *StartSentimentDetectionJobInput {
12990	s.VolumeKmsKeyId = &v
12991	return s
12992}
12993
12994// SetVpcConfig sets the VpcConfig field's value.
12995func (s *StartSentimentDetectionJobInput) SetVpcConfig(v *VpcConfig) *StartSentimentDetectionJobInput {
12996	s.VpcConfig = v
12997	return s
12998}
12999
13000type StartSentimentDetectionJobOutput struct {
13001	_ struct{} `type:"structure"`
13002
13003	// The identifier generated for the job. To get the status of a job, use this
13004	// identifier with the operation.
13005	JobId *string `min:"1" type:"string"`
13006
13007	// The status of the job.
13008	//
13009	//    * SUBMITTED - The job has been received and is queued for processing.
13010	//
13011	//    * IN_PROGRESS - Amazon Comprehend is processing the job.
13012	//
13013	//    * COMPLETED - The job was successfully completed and the output is available.
13014	//
13015	//    * FAILED - The job did not complete. To get details, use the operation.
13016	JobStatus *string `type:"string" enum:"JobStatus"`
13017}
13018
13019// String returns the string representation
13020func (s StartSentimentDetectionJobOutput) String() string {
13021	return awsutil.Prettify(s)
13022}
13023
13024// GoString returns the string representation
13025func (s StartSentimentDetectionJobOutput) GoString() string {
13026	return s.String()
13027}
13028
13029// SetJobId sets the JobId field's value.
13030func (s *StartSentimentDetectionJobOutput) SetJobId(v string) *StartSentimentDetectionJobOutput {
13031	s.JobId = &v
13032	return s
13033}
13034
13035// SetJobStatus sets the JobStatus field's value.
13036func (s *StartSentimentDetectionJobOutput) SetJobStatus(v string) *StartSentimentDetectionJobOutput {
13037	s.JobStatus = &v
13038	return s
13039}
13040
13041type StartTopicsDetectionJobInput struct {
13042	_ struct{} `type:"structure"`
13043
13044	// A unique identifier for the request. If you do not set the client request
13045	// token, Amazon Comprehend generates one.
13046	ClientRequestToken *string `min:"1" type:"string" idempotencyToken:"true"`
13047
13048	// The Amazon Resource Name (ARN) of the AWS Identity and Access Management
13049	// (IAM) role that grants Amazon Comprehend read access to your input data.
13050	// For more information, see https://docs.aws.amazon.com/comprehend/latest/dg/access-control-managing-permissions.html#auth-role-permissions
13051	// (https://docs.aws.amazon.com/comprehend/latest/dg/access-control-managing-permissions.html#auth-role-permissions).
13052	//
13053	// DataAccessRoleArn is a required field
13054	DataAccessRoleArn *string `min:"20" type:"string" required:"true"`
13055
13056	// Specifies the format and location of the input data for the job.
13057	//
13058	// InputDataConfig is a required field
13059	InputDataConfig *InputDataConfig `type:"structure" required:"true"`
13060
13061	// The identifier of the job.
13062	JobName *string `min:"1" type:"string"`
13063
13064	// The number of topics to detect.
13065	NumberOfTopics *int64 `min:"1" type:"integer"`
13066
13067	// Specifies where to send the output files. The output is a compressed archive
13068	// with two files, topic-terms.csv that lists the terms associated with each
13069	// topic, and doc-topics.csv that lists the documents associated with each topic
13070	//
13071	// OutputDataConfig is a required field
13072	OutputDataConfig *OutputDataConfig `type:"structure" required:"true"`
13073
13074	// ID for the AWS Key Management Service (KMS) key that Amazon Comprehend uses
13075	// to encrypt data on the storage volume attached to the ML compute instance(s)
13076	// that process the analysis job. The VolumeKmsKeyId can be either of the following
13077	// formats:
13078	//
13079	//    * KMS Key ID: "1234abcd-12ab-34cd-56ef-1234567890ab"
13080	//
13081	//    * Amazon Resource Name (ARN) of a KMS Key: "arn:aws:kms:us-west-2:111122223333:key/1234abcd-12ab-34cd-56ef-1234567890ab"
13082	VolumeKmsKeyId *string `type:"string"`
13083
13084	// Configuration parameters for an optional private Virtual Private Cloud (VPC)
13085	// containing the resources you are using for your topic detection job. For
13086	// more information, see Amazon VPC (https://docs.aws.amazon.com/vpc/latest/userguide/what-is-amazon-vpc.html).
13087	VpcConfig *VpcConfig `type:"structure"`
13088}
13089
13090// String returns the string representation
13091func (s StartTopicsDetectionJobInput) String() string {
13092	return awsutil.Prettify(s)
13093}
13094
13095// GoString returns the string representation
13096func (s StartTopicsDetectionJobInput) GoString() string {
13097	return s.String()
13098}
13099
13100// Validate inspects the fields of the type to determine if they are valid.
13101func (s *StartTopicsDetectionJobInput) Validate() error {
13102	invalidParams := request.ErrInvalidParams{Context: "StartTopicsDetectionJobInput"}
13103	if s.ClientRequestToken != nil && len(*s.ClientRequestToken) < 1 {
13104		invalidParams.Add(request.NewErrParamMinLen("ClientRequestToken", 1))
13105	}
13106	if s.DataAccessRoleArn == nil {
13107		invalidParams.Add(request.NewErrParamRequired("DataAccessRoleArn"))
13108	}
13109	if s.DataAccessRoleArn != nil && len(*s.DataAccessRoleArn) < 20 {
13110		invalidParams.Add(request.NewErrParamMinLen("DataAccessRoleArn", 20))
13111	}
13112	if s.InputDataConfig == nil {
13113		invalidParams.Add(request.NewErrParamRequired("InputDataConfig"))
13114	}
13115	if s.JobName != nil && len(*s.JobName) < 1 {
13116		invalidParams.Add(request.NewErrParamMinLen("JobName", 1))
13117	}
13118	if s.NumberOfTopics != nil && *s.NumberOfTopics < 1 {
13119		invalidParams.Add(request.NewErrParamMinValue("NumberOfTopics", 1))
13120	}
13121	if s.OutputDataConfig == nil {
13122		invalidParams.Add(request.NewErrParamRequired("OutputDataConfig"))
13123	}
13124	if s.InputDataConfig != nil {
13125		if err := s.InputDataConfig.Validate(); err != nil {
13126			invalidParams.AddNested("InputDataConfig", err.(request.ErrInvalidParams))
13127		}
13128	}
13129	if s.OutputDataConfig != nil {
13130		if err := s.OutputDataConfig.Validate(); err != nil {
13131			invalidParams.AddNested("OutputDataConfig", err.(request.ErrInvalidParams))
13132		}
13133	}
13134	if s.VpcConfig != nil {
13135		if err := s.VpcConfig.Validate(); err != nil {
13136			invalidParams.AddNested("VpcConfig", err.(request.ErrInvalidParams))
13137		}
13138	}
13139
13140	if invalidParams.Len() > 0 {
13141		return invalidParams
13142	}
13143	return nil
13144}
13145
13146// SetClientRequestToken sets the ClientRequestToken field's value.
13147func (s *StartTopicsDetectionJobInput) SetClientRequestToken(v string) *StartTopicsDetectionJobInput {
13148	s.ClientRequestToken = &v
13149	return s
13150}
13151
13152// SetDataAccessRoleArn sets the DataAccessRoleArn field's value.
13153func (s *StartTopicsDetectionJobInput) SetDataAccessRoleArn(v string) *StartTopicsDetectionJobInput {
13154	s.DataAccessRoleArn = &v
13155	return s
13156}
13157
13158// SetInputDataConfig sets the InputDataConfig field's value.
13159func (s *StartTopicsDetectionJobInput) SetInputDataConfig(v *InputDataConfig) *StartTopicsDetectionJobInput {
13160	s.InputDataConfig = v
13161	return s
13162}
13163
13164// SetJobName sets the JobName field's value.
13165func (s *StartTopicsDetectionJobInput) SetJobName(v string) *StartTopicsDetectionJobInput {
13166	s.JobName = &v
13167	return s
13168}
13169
13170// SetNumberOfTopics sets the NumberOfTopics field's value.
13171func (s *StartTopicsDetectionJobInput) SetNumberOfTopics(v int64) *StartTopicsDetectionJobInput {
13172	s.NumberOfTopics = &v
13173	return s
13174}
13175
13176// SetOutputDataConfig sets the OutputDataConfig field's value.
13177func (s *StartTopicsDetectionJobInput) SetOutputDataConfig(v *OutputDataConfig) *StartTopicsDetectionJobInput {
13178	s.OutputDataConfig = v
13179	return s
13180}
13181
13182// SetVolumeKmsKeyId sets the VolumeKmsKeyId field's value.
13183func (s *StartTopicsDetectionJobInput) SetVolumeKmsKeyId(v string) *StartTopicsDetectionJobInput {
13184	s.VolumeKmsKeyId = &v
13185	return s
13186}
13187
13188// SetVpcConfig sets the VpcConfig field's value.
13189func (s *StartTopicsDetectionJobInput) SetVpcConfig(v *VpcConfig) *StartTopicsDetectionJobInput {
13190	s.VpcConfig = v
13191	return s
13192}
13193
13194type StartTopicsDetectionJobOutput struct {
13195	_ struct{} `type:"structure"`
13196
13197	// The identifier generated for the job. To get the status of the job, use this
13198	// identifier with the DescribeTopicDetectionJob operation.
13199	JobId *string `min:"1" type:"string"`
13200
13201	// The status of the job:
13202	//
13203	//    * SUBMITTED - The job has been received and is queued for processing.
13204	//
13205	//    * IN_PROGRESS - Amazon Comprehend is processing the job.
13206	//
13207	//    * COMPLETED - The job was successfully completed and the output is available.
13208	//
13209	//    * FAILED - The job did not complete. To get details, use the DescribeTopicDetectionJob
13210	//    operation.
13211	JobStatus *string `type:"string" enum:"JobStatus"`
13212}
13213
13214// String returns the string representation
13215func (s StartTopicsDetectionJobOutput) String() string {
13216	return awsutil.Prettify(s)
13217}
13218
13219// GoString returns the string representation
13220func (s StartTopicsDetectionJobOutput) GoString() string {
13221	return s.String()
13222}
13223
13224// SetJobId sets the JobId field's value.
13225func (s *StartTopicsDetectionJobOutput) SetJobId(v string) *StartTopicsDetectionJobOutput {
13226	s.JobId = &v
13227	return s
13228}
13229
13230// SetJobStatus sets the JobStatus field's value.
13231func (s *StartTopicsDetectionJobOutput) SetJobStatus(v string) *StartTopicsDetectionJobOutput {
13232	s.JobStatus = &v
13233	return s
13234}
13235
13236type StopDominantLanguageDetectionJobInput struct {
13237	_ struct{} `type:"structure"`
13238
13239	// The identifier of the dominant language detection job to stop.
13240	//
13241	// JobId is a required field
13242	JobId *string `min:"1" type:"string" required:"true"`
13243}
13244
13245// String returns the string representation
13246func (s StopDominantLanguageDetectionJobInput) String() string {
13247	return awsutil.Prettify(s)
13248}
13249
13250// GoString returns the string representation
13251func (s StopDominantLanguageDetectionJobInput) GoString() string {
13252	return s.String()
13253}
13254
13255// Validate inspects the fields of the type to determine if they are valid.
13256func (s *StopDominantLanguageDetectionJobInput) Validate() error {
13257	invalidParams := request.ErrInvalidParams{Context: "StopDominantLanguageDetectionJobInput"}
13258	if s.JobId == nil {
13259		invalidParams.Add(request.NewErrParamRequired("JobId"))
13260	}
13261	if s.JobId != nil && len(*s.JobId) < 1 {
13262		invalidParams.Add(request.NewErrParamMinLen("JobId", 1))
13263	}
13264
13265	if invalidParams.Len() > 0 {
13266		return invalidParams
13267	}
13268	return nil
13269}
13270
13271// SetJobId sets the JobId field's value.
13272func (s *StopDominantLanguageDetectionJobInput) SetJobId(v string) *StopDominantLanguageDetectionJobInput {
13273	s.JobId = &v
13274	return s
13275}
13276
13277type StopDominantLanguageDetectionJobOutput struct {
13278	_ struct{} `type:"structure"`
13279
13280	// The identifier of the dominant language detection job to stop.
13281	JobId *string `min:"1" type:"string"`
13282
13283	// Either STOP_REQUESTED if the job is currently running, or STOPPED if the
13284	// job was previously stopped with the StopDominantLanguageDetectionJob operation.
13285	JobStatus *string `type:"string" enum:"JobStatus"`
13286}
13287
13288// String returns the string representation
13289func (s StopDominantLanguageDetectionJobOutput) String() string {
13290	return awsutil.Prettify(s)
13291}
13292
13293// GoString returns the string representation
13294func (s StopDominantLanguageDetectionJobOutput) GoString() string {
13295	return s.String()
13296}
13297
13298// SetJobId sets the JobId field's value.
13299func (s *StopDominantLanguageDetectionJobOutput) SetJobId(v string) *StopDominantLanguageDetectionJobOutput {
13300	s.JobId = &v
13301	return s
13302}
13303
13304// SetJobStatus sets the JobStatus field's value.
13305func (s *StopDominantLanguageDetectionJobOutput) SetJobStatus(v string) *StopDominantLanguageDetectionJobOutput {
13306	s.JobStatus = &v
13307	return s
13308}
13309
13310type StopEntitiesDetectionJobInput struct {
13311	_ struct{} `type:"structure"`
13312
13313	// The identifier of the entities detection job to stop.
13314	//
13315	// JobId is a required field
13316	JobId *string `min:"1" type:"string" required:"true"`
13317}
13318
13319// String returns the string representation
13320func (s StopEntitiesDetectionJobInput) String() string {
13321	return awsutil.Prettify(s)
13322}
13323
13324// GoString returns the string representation
13325func (s StopEntitiesDetectionJobInput) GoString() string {
13326	return s.String()
13327}
13328
13329// Validate inspects the fields of the type to determine if they are valid.
13330func (s *StopEntitiesDetectionJobInput) Validate() error {
13331	invalidParams := request.ErrInvalidParams{Context: "StopEntitiesDetectionJobInput"}
13332	if s.JobId == nil {
13333		invalidParams.Add(request.NewErrParamRequired("JobId"))
13334	}
13335	if s.JobId != nil && len(*s.JobId) < 1 {
13336		invalidParams.Add(request.NewErrParamMinLen("JobId", 1))
13337	}
13338
13339	if invalidParams.Len() > 0 {
13340		return invalidParams
13341	}
13342	return nil
13343}
13344
13345// SetJobId sets the JobId field's value.
13346func (s *StopEntitiesDetectionJobInput) SetJobId(v string) *StopEntitiesDetectionJobInput {
13347	s.JobId = &v
13348	return s
13349}
13350
13351type StopEntitiesDetectionJobOutput struct {
13352	_ struct{} `type:"structure"`
13353
13354	// The identifier of the entities detection job to stop.
13355	JobId *string `min:"1" type:"string"`
13356
13357	// Either STOP_REQUESTED if the job is currently running, or STOPPED if the
13358	// job was previously stopped with the StopEntitiesDetectionJob operation.
13359	JobStatus *string `type:"string" enum:"JobStatus"`
13360}
13361
13362// String returns the string representation
13363func (s StopEntitiesDetectionJobOutput) String() string {
13364	return awsutil.Prettify(s)
13365}
13366
13367// GoString returns the string representation
13368func (s StopEntitiesDetectionJobOutput) GoString() string {
13369	return s.String()
13370}
13371
13372// SetJobId sets the JobId field's value.
13373func (s *StopEntitiesDetectionJobOutput) SetJobId(v string) *StopEntitiesDetectionJobOutput {
13374	s.JobId = &v
13375	return s
13376}
13377
13378// SetJobStatus sets the JobStatus field's value.
13379func (s *StopEntitiesDetectionJobOutput) SetJobStatus(v string) *StopEntitiesDetectionJobOutput {
13380	s.JobStatus = &v
13381	return s
13382}
13383
13384type StopKeyPhrasesDetectionJobInput struct {
13385	_ struct{} `type:"structure"`
13386
13387	// The identifier of the key phrases detection job to stop.
13388	//
13389	// JobId is a required field
13390	JobId *string `min:"1" type:"string" required:"true"`
13391}
13392
13393// String returns the string representation
13394func (s StopKeyPhrasesDetectionJobInput) String() string {
13395	return awsutil.Prettify(s)
13396}
13397
13398// GoString returns the string representation
13399func (s StopKeyPhrasesDetectionJobInput) GoString() string {
13400	return s.String()
13401}
13402
13403// Validate inspects the fields of the type to determine if they are valid.
13404func (s *StopKeyPhrasesDetectionJobInput) Validate() error {
13405	invalidParams := request.ErrInvalidParams{Context: "StopKeyPhrasesDetectionJobInput"}
13406	if s.JobId == nil {
13407		invalidParams.Add(request.NewErrParamRequired("JobId"))
13408	}
13409	if s.JobId != nil && len(*s.JobId) < 1 {
13410		invalidParams.Add(request.NewErrParamMinLen("JobId", 1))
13411	}
13412
13413	if invalidParams.Len() > 0 {
13414		return invalidParams
13415	}
13416	return nil
13417}
13418
13419// SetJobId sets the JobId field's value.
13420func (s *StopKeyPhrasesDetectionJobInput) SetJobId(v string) *StopKeyPhrasesDetectionJobInput {
13421	s.JobId = &v
13422	return s
13423}
13424
13425type StopKeyPhrasesDetectionJobOutput struct {
13426	_ struct{} `type:"structure"`
13427
13428	// The identifier of the key phrases detection job to stop.
13429	JobId *string `min:"1" type:"string"`
13430
13431	// Either STOP_REQUESTED if the job is currently running, or STOPPED if the
13432	// job was previously stopped with the StopKeyPhrasesDetectionJob operation.
13433	JobStatus *string `type:"string" enum:"JobStatus"`
13434}
13435
13436// String returns the string representation
13437func (s StopKeyPhrasesDetectionJobOutput) String() string {
13438	return awsutil.Prettify(s)
13439}
13440
13441// GoString returns the string representation
13442func (s StopKeyPhrasesDetectionJobOutput) GoString() string {
13443	return s.String()
13444}
13445
13446// SetJobId sets the JobId field's value.
13447func (s *StopKeyPhrasesDetectionJobOutput) SetJobId(v string) *StopKeyPhrasesDetectionJobOutput {
13448	s.JobId = &v
13449	return s
13450}
13451
13452// SetJobStatus sets the JobStatus field's value.
13453func (s *StopKeyPhrasesDetectionJobOutput) SetJobStatus(v string) *StopKeyPhrasesDetectionJobOutput {
13454	s.JobStatus = &v
13455	return s
13456}
13457
13458type StopSentimentDetectionJobInput struct {
13459	_ struct{} `type:"structure"`
13460
13461	// The identifier of the sentiment detection job to stop.
13462	//
13463	// JobId is a required field
13464	JobId *string `min:"1" type:"string" required:"true"`
13465}
13466
13467// String returns the string representation
13468func (s StopSentimentDetectionJobInput) String() string {
13469	return awsutil.Prettify(s)
13470}
13471
13472// GoString returns the string representation
13473func (s StopSentimentDetectionJobInput) GoString() string {
13474	return s.String()
13475}
13476
13477// Validate inspects the fields of the type to determine if they are valid.
13478func (s *StopSentimentDetectionJobInput) Validate() error {
13479	invalidParams := request.ErrInvalidParams{Context: "StopSentimentDetectionJobInput"}
13480	if s.JobId == nil {
13481		invalidParams.Add(request.NewErrParamRequired("JobId"))
13482	}
13483	if s.JobId != nil && len(*s.JobId) < 1 {
13484		invalidParams.Add(request.NewErrParamMinLen("JobId", 1))
13485	}
13486
13487	if invalidParams.Len() > 0 {
13488		return invalidParams
13489	}
13490	return nil
13491}
13492
13493// SetJobId sets the JobId field's value.
13494func (s *StopSentimentDetectionJobInput) SetJobId(v string) *StopSentimentDetectionJobInput {
13495	s.JobId = &v
13496	return s
13497}
13498
13499type StopSentimentDetectionJobOutput struct {
13500	_ struct{} `type:"structure"`
13501
13502	// The identifier of the sentiment detection job to stop.
13503	JobId *string `min:"1" type:"string"`
13504
13505	// Either STOP_REQUESTED if the job is currently running, or STOPPED if the
13506	// job was previously stopped with the StopSentimentDetectionJob operation.
13507	JobStatus *string `type:"string" enum:"JobStatus"`
13508}
13509
13510// String returns the string representation
13511func (s StopSentimentDetectionJobOutput) String() string {
13512	return awsutil.Prettify(s)
13513}
13514
13515// GoString returns the string representation
13516func (s StopSentimentDetectionJobOutput) GoString() string {
13517	return s.String()
13518}
13519
13520// SetJobId sets the JobId field's value.
13521func (s *StopSentimentDetectionJobOutput) SetJobId(v string) *StopSentimentDetectionJobOutput {
13522	s.JobId = &v
13523	return s
13524}
13525
13526// SetJobStatus sets the JobStatus field's value.
13527func (s *StopSentimentDetectionJobOutput) SetJobStatus(v string) *StopSentimentDetectionJobOutput {
13528	s.JobStatus = &v
13529	return s
13530}
13531
13532type StopTrainingDocumentClassifierInput struct {
13533	_ struct{} `type:"structure"`
13534
13535	// The Amazon Resource Name (ARN) that identifies the document classifier currently
13536	// being trained.
13537	//
13538	// DocumentClassifierArn is a required field
13539	DocumentClassifierArn *string `type:"string" required:"true"`
13540}
13541
13542// String returns the string representation
13543func (s StopTrainingDocumentClassifierInput) String() string {
13544	return awsutil.Prettify(s)
13545}
13546
13547// GoString returns the string representation
13548func (s StopTrainingDocumentClassifierInput) GoString() string {
13549	return s.String()
13550}
13551
13552// Validate inspects the fields of the type to determine if they are valid.
13553func (s *StopTrainingDocumentClassifierInput) Validate() error {
13554	invalidParams := request.ErrInvalidParams{Context: "StopTrainingDocumentClassifierInput"}
13555	if s.DocumentClassifierArn == nil {
13556		invalidParams.Add(request.NewErrParamRequired("DocumentClassifierArn"))
13557	}
13558
13559	if invalidParams.Len() > 0 {
13560		return invalidParams
13561	}
13562	return nil
13563}
13564
13565// SetDocumentClassifierArn sets the DocumentClassifierArn field's value.
13566func (s *StopTrainingDocumentClassifierInput) SetDocumentClassifierArn(v string) *StopTrainingDocumentClassifierInput {
13567	s.DocumentClassifierArn = &v
13568	return s
13569}
13570
13571type StopTrainingDocumentClassifierOutput struct {
13572	_ struct{} `type:"structure"`
13573}
13574
13575// String returns the string representation
13576func (s StopTrainingDocumentClassifierOutput) String() string {
13577	return awsutil.Prettify(s)
13578}
13579
13580// GoString returns the string representation
13581func (s StopTrainingDocumentClassifierOutput) GoString() string {
13582	return s.String()
13583}
13584
13585type StopTrainingEntityRecognizerInput struct {
13586	_ struct{} `type:"structure"`
13587
13588	// The Amazon Resource Name (ARN) that identifies the entity recognizer currently
13589	// being trained.
13590	//
13591	// EntityRecognizerArn is a required field
13592	EntityRecognizerArn *string `type:"string" required:"true"`
13593}
13594
13595// String returns the string representation
13596func (s StopTrainingEntityRecognizerInput) String() string {
13597	return awsutil.Prettify(s)
13598}
13599
13600// GoString returns the string representation
13601func (s StopTrainingEntityRecognizerInput) GoString() string {
13602	return s.String()
13603}
13604
13605// Validate inspects the fields of the type to determine if they are valid.
13606func (s *StopTrainingEntityRecognizerInput) Validate() error {
13607	invalidParams := request.ErrInvalidParams{Context: "StopTrainingEntityRecognizerInput"}
13608	if s.EntityRecognizerArn == nil {
13609		invalidParams.Add(request.NewErrParamRequired("EntityRecognizerArn"))
13610	}
13611
13612	if invalidParams.Len() > 0 {
13613		return invalidParams
13614	}
13615	return nil
13616}
13617
13618// SetEntityRecognizerArn sets the EntityRecognizerArn field's value.
13619func (s *StopTrainingEntityRecognizerInput) SetEntityRecognizerArn(v string) *StopTrainingEntityRecognizerInput {
13620	s.EntityRecognizerArn = &v
13621	return s
13622}
13623
13624type StopTrainingEntityRecognizerOutput struct {
13625	_ struct{} `type:"structure"`
13626}
13627
13628// String returns the string representation
13629func (s StopTrainingEntityRecognizerOutput) String() string {
13630	return awsutil.Prettify(s)
13631}
13632
13633// GoString returns the string representation
13634func (s StopTrainingEntityRecognizerOutput) GoString() string {
13635	return s.String()
13636}
13637
13638// Represents a work in the input text that was recognized and assigned a part
13639// of speech. There is one syntax token record for each word in the source text.
13640type SyntaxToken struct {
13641	_ struct{} `type:"structure"`
13642
13643	// The zero-based offset from the beginning of the source text to the first
13644	// character in the word.
13645	BeginOffset *int64 `type:"integer"`
13646
13647	// The zero-based offset from the beginning of the source text to the last character
13648	// in the word.
13649	EndOffset *int64 `type:"integer"`
13650
13651	// Provides the part of speech label and the confidence level that Amazon Comprehend
13652	// has that the part of speech was correctly identified. For more information,
13653	// see how-syntax.
13654	PartOfSpeech *PartOfSpeechTag `type:"structure"`
13655
13656	// The word that was recognized in the source text.
13657	Text *string `min:"1" type:"string"`
13658
13659	// A unique identifier for a token.
13660	TokenId *int64 `type:"integer"`
13661}
13662
13663// String returns the string representation
13664func (s SyntaxToken) String() string {
13665	return awsutil.Prettify(s)
13666}
13667
13668// GoString returns the string representation
13669func (s SyntaxToken) GoString() string {
13670	return s.String()
13671}
13672
13673// SetBeginOffset sets the BeginOffset field's value.
13674func (s *SyntaxToken) SetBeginOffset(v int64) *SyntaxToken {
13675	s.BeginOffset = &v
13676	return s
13677}
13678
13679// SetEndOffset sets the EndOffset field's value.
13680func (s *SyntaxToken) SetEndOffset(v int64) *SyntaxToken {
13681	s.EndOffset = &v
13682	return s
13683}
13684
13685// SetPartOfSpeech sets the PartOfSpeech field's value.
13686func (s *SyntaxToken) SetPartOfSpeech(v *PartOfSpeechTag) *SyntaxToken {
13687	s.PartOfSpeech = v
13688	return s
13689}
13690
13691// SetText sets the Text field's value.
13692func (s *SyntaxToken) SetText(v string) *SyntaxToken {
13693	s.Text = &v
13694	return s
13695}
13696
13697// SetTokenId sets the TokenId field's value.
13698func (s *SyntaxToken) SetTokenId(v int64) *SyntaxToken {
13699	s.TokenId = &v
13700	return s
13701}
13702
13703// A key-value pair that adds as a metadata to a resource used by Amazon Comprehend.
13704// For example, a tag with the key-value pair ‘Department’:’Sales’ might
13705// be added to a resource to indicate its use by a particular department.
13706type Tag struct {
13707	_ struct{} `type:"structure"`
13708
13709	// The initial part of a key-value pair that forms a tag associated with a given
13710	// resource. For instance, if you want to show which resources are used by which
13711	// departments, you might use “Department” as the key portion of the pair,
13712	// with multiple possible values such as “sales,” “legal,” and “administration.”
13713	//
13714	// Key is a required field
13715	Key *string `min:"1" type:"string" required:"true"`
13716
13717	// The second part of a key-value pair that forms a tag associated with a given
13718	// resource. For instance, if you want to show which resources are used by which
13719	// departments, you might use “Department” as the initial (key) portion
13720	// of the pair, with a value of “sales” to indicate the sales department.
13721	Value *string `type:"string"`
13722}
13723
13724// String returns the string representation
13725func (s Tag) String() string {
13726	return awsutil.Prettify(s)
13727}
13728
13729// GoString returns the string representation
13730func (s Tag) GoString() string {
13731	return s.String()
13732}
13733
13734// Validate inspects the fields of the type to determine if they are valid.
13735func (s *Tag) Validate() error {
13736	invalidParams := request.ErrInvalidParams{Context: "Tag"}
13737	if s.Key == nil {
13738		invalidParams.Add(request.NewErrParamRequired("Key"))
13739	}
13740	if s.Key != nil && len(*s.Key) < 1 {
13741		invalidParams.Add(request.NewErrParamMinLen("Key", 1))
13742	}
13743
13744	if invalidParams.Len() > 0 {
13745		return invalidParams
13746	}
13747	return nil
13748}
13749
13750// SetKey sets the Key field's value.
13751func (s *Tag) SetKey(v string) *Tag {
13752	s.Key = &v
13753	return s
13754}
13755
13756// SetValue sets the Value field's value.
13757func (s *Tag) SetValue(v string) *Tag {
13758	s.Value = &v
13759	return s
13760}
13761
13762type TagResourceInput struct {
13763	_ struct{} `type:"structure"`
13764
13765	// The Amazon Resource Name (ARN) of the given Amazon Comprehend resource to
13766	// which you want to associate the tags.
13767	//
13768	// ResourceArn is a required field
13769	ResourceArn *string `type:"string" required:"true"`
13770
13771	// Tags being associated with a specific Amazon Comprehend resource. There can
13772	// be a maximum of 50 tags (both existing and pending) associated with a specific
13773	// resource.
13774	//
13775	// Tags is a required field
13776	Tags []*Tag `type:"list" required:"true"`
13777}
13778
13779// String returns the string representation
13780func (s TagResourceInput) String() string {
13781	return awsutil.Prettify(s)
13782}
13783
13784// GoString returns the string representation
13785func (s TagResourceInput) GoString() string {
13786	return s.String()
13787}
13788
13789// Validate inspects the fields of the type to determine if they are valid.
13790func (s *TagResourceInput) Validate() error {
13791	invalidParams := request.ErrInvalidParams{Context: "TagResourceInput"}
13792	if s.ResourceArn == nil {
13793		invalidParams.Add(request.NewErrParamRequired("ResourceArn"))
13794	}
13795	if s.Tags == nil {
13796		invalidParams.Add(request.NewErrParamRequired("Tags"))
13797	}
13798	if s.Tags != nil {
13799		for i, v := range s.Tags {
13800			if v == nil {
13801				continue
13802			}
13803			if err := v.Validate(); err != nil {
13804				invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Tags", i), err.(request.ErrInvalidParams))
13805			}
13806		}
13807	}
13808
13809	if invalidParams.Len() > 0 {
13810		return invalidParams
13811	}
13812	return nil
13813}
13814
13815// SetResourceArn sets the ResourceArn field's value.
13816func (s *TagResourceInput) SetResourceArn(v string) *TagResourceInput {
13817	s.ResourceArn = &v
13818	return s
13819}
13820
13821// SetTags sets the Tags field's value.
13822func (s *TagResourceInput) SetTags(v []*Tag) *TagResourceInput {
13823	s.Tags = v
13824	return s
13825}
13826
13827type TagResourceOutput struct {
13828	_ struct{} `type:"structure"`
13829}
13830
13831// String returns the string representation
13832func (s TagResourceOutput) String() string {
13833	return awsutil.Prettify(s)
13834}
13835
13836// GoString returns the string representation
13837func (s TagResourceOutput) GoString() string {
13838	return s.String()
13839}
13840
13841// The size of the input text exceeds the limit. Use a smaller document.
13842type TextSizeLimitExceededException struct {
13843	_            struct{}                  `type:"structure"`
13844	RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"`
13845
13846	Message_ *string `locationName:"Message" min:"1" type:"string"`
13847}
13848
13849// String returns the string representation
13850func (s TextSizeLimitExceededException) String() string {
13851	return awsutil.Prettify(s)
13852}
13853
13854// GoString returns the string representation
13855func (s TextSizeLimitExceededException) GoString() string {
13856	return s.String()
13857}
13858
13859func newErrorTextSizeLimitExceededException(v protocol.ResponseMetadata) error {
13860	return &TextSizeLimitExceededException{
13861		RespMetadata: v,
13862	}
13863}
13864
13865// Code returns the exception type name.
13866func (s *TextSizeLimitExceededException) Code() string {
13867	return "TextSizeLimitExceededException"
13868}
13869
13870// Message returns the exception's message.
13871func (s *TextSizeLimitExceededException) Message() string {
13872	if s.Message_ != nil {
13873		return *s.Message_
13874	}
13875	return ""
13876}
13877
13878// OrigErr always returns nil, satisfies awserr.Error interface.
13879func (s *TextSizeLimitExceededException) OrigErr() error {
13880	return nil
13881}
13882
13883func (s *TextSizeLimitExceededException) Error() string {
13884	return fmt.Sprintf("%s: %s", s.Code(), s.Message())
13885}
13886
13887// Status code returns the HTTP status code for the request's response error.
13888func (s *TextSizeLimitExceededException) StatusCode() int {
13889	return s.RespMetadata.StatusCode
13890}
13891
13892// RequestID returns the service's response RequestID for request.
13893func (s *TextSizeLimitExceededException) RequestID() string {
13894	return s.RespMetadata.RequestID
13895}
13896
13897// The number of requests exceeds the limit. Resubmit your request later.
13898type TooManyRequestsException struct {
13899	_            struct{}                  `type:"structure"`
13900	RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"`
13901
13902	Message_ *string `locationName:"Message" min:"1" type:"string"`
13903}
13904
13905// String returns the string representation
13906func (s TooManyRequestsException) String() string {
13907	return awsutil.Prettify(s)
13908}
13909
13910// GoString returns the string representation
13911func (s TooManyRequestsException) GoString() string {
13912	return s.String()
13913}
13914
13915func newErrorTooManyRequestsException(v protocol.ResponseMetadata) error {
13916	return &TooManyRequestsException{
13917		RespMetadata: v,
13918	}
13919}
13920
13921// Code returns the exception type name.
13922func (s *TooManyRequestsException) Code() string {
13923	return "TooManyRequestsException"
13924}
13925
13926// Message returns the exception's message.
13927func (s *TooManyRequestsException) Message() string {
13928	if s.Message_ != nil {
13929		return *s.Message_
13930	}
13931	return ""
13932}
13933
13934// OrigErr always returns nil, satisfies awserr.Error interface.
13935func (s *TooManyRequestsException) OrigErr() error {
13936	return nil
13937}
13938
13939func (s *TooManyRequestsException) Error() string {
13940	return fmt.Sprintf("%s: %s", s.Code(), s.Message())
13941}
13942
13943// Status code returns the HTTP status code for the request's response error.
13944func (s *TooManyRequestsException) StatusCode() int {
13945	return s.RespMetadata.StatusCode
13946}
13947
13948// RequestID returns the service's response RequestID for request.
13949func (s *TooManyRequestsException) RequestID() string {
13950	return s.RespMetadata.RequestID
13951}
13952
13953// The request contains more tag keys than can be associated with a resource
13954// (50 tag keys per resource).
13955type TooManyTagKeysException struct {
13956	_            struct{}                  `type:"structure"`
13957	RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"`
13958
13959	Message_ *string `locationName:"Message" min:"1" type:"string"`
13960}
13961
13962// String returns the string representation
13963func (s TooManyTagKeysException) String() string {
13964	return awsutil.Prettify(s)
13965}
13966
13967// GoString returns the string representation
13968func (s TooManyTagKeysException) GoString() string {
13969	return s.String()
13970}
13971
13972func newErrorTooManyTagKeysException(v protocol.ResponseMetadata) error {
13973	return &TooManyTagKeysException{
13974		RespMetadata: v,
13975	}
13976}
13977
13978// Code returns the exception type name.
13979func (s *TooManyTagKeysException) Code() string {
13980	return "TooManyTagKeysException"
13981}
13982
13983// Message returns the exception's message.
13984func (s *TooManyTagKeysException) Message() string {
13985	if s.Message_ != nil {
13986		return *s.Message_
13987	}
13988	return ""
13989}
13990
13991// OrigErr always returns nil, satisfies awserr.Error interface.
13992func (s *TooManyTagKeysException) OrigErr() error {
13993	return nil
13994}
13995
13996func (s *TooManyTagKeysException) Error() string {
13997	return fmt.Sprintf("%s: %s", s.Code(), s.Message())
13998}
13999
14000// Status code returns the HTTP status code for the request's response error.
14001func (s *TooManyTagKeysException) StatusCode() int {
14002	return s.RespMetadata.StatusCode
14003}
14004
14005// RequestID returns the service's response RequestID for request.
14006func (s *TooManyTagKeysException) RequestID() string {
14007	return s.RespMetadata.RequestID
14008}
14009
14010// The request contains more tags than can be associated with a resource (50
14011// tags per resource). The maximum number of tags includes both existing tags
14012// and those included in your current request.
14013type TooManyTagsException struct {
14014	_            struct{}                  `type:"structure"`
14015	RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"`
14016
14017	Message_ *string `locationName:"Message" min:"1" type:"string"`
14018}
14019
14020// String returns the string representation
14021func (s TooManyTagsException) String() string {
14022	return awsutil.Prettify(s)
14023}
14024
14025// GoString returns the string representation
14026func (s TooManyTagsException) GoString() string {
14027	return s.String()
14028}
14029
14030func newErrorTooManyTagsException(v protocol.ResponseMetadata) error {
14031	return &TooManyTagsException{
14032		RespMetadata: v,
14033	}
14034}
14035
14036// Code returns the exception type name.
14037func (s *TooManyTagsException) Code() string {
14038	return "TooManyTagsException"
14039}
14040
14041// Message returns the exception's message.
14042func (s *TooManyTagsException) Message() string {
14043	if s.Message_ != nil {
14044		return *s.Message_
14045	}
14046	return ""
14047}
14048
14049// OrigErr always returns nil, satisfies awserr.Error interface.
14050func (s *TooManyTagsException) OrigErr() error {
14051	return nil
14052}
14053
14054func (s *TooManyTagsException) Error() string {
14055	return fmt.Sprintf("%s: %s", s.Code(), s.Message())
14056}
14057
14058// Status code returns the HTTP status code for the request's response error.
14059func (s *TooManyTagsException) StatusCode() int {
14060	return s.RespMetadata.StatusCode
14061}
14062
14063// RequestID returns the service's response RequestID for request.
14064func (s *TooManyTagsException) RequestID() string {
14065	return s.RespMetadata.RequestID
14066}
14067
14068// Provides information for filtering topic detection jobs. For more information,
14069// see .
14070type TopicsDetectionJobFilter struct {
14071	_ struct{} `type:"structure"`
14072
14073	JobName *string `min:"1" type:"string"`
14074
14075	// Filters the list of topic detection jobs based on job status. Returns only
14076	// jobs with the specified status.
14077	JobStatus *string `type:"string" enum:"JobStatus"`
14078
14079	// Filters the list of jobs based on the time that the job was submitted for
14080	// processing. Only returns jobs submitted after the specified time. Jobs are
14081	// returned in ascending order, oldest to newest.
14082	SubmitTimeAfter *time.Time `type:"timestamp"`
14083
14084	// Filters the list of jobs based on the time that the job was submitted for
14085	// processing. Only returns jobs submitted before the specified time. Jobs are
14086	// returned in descending order, newest to oldest.
14087	SubmitTimeBefore *time.Time `type:"timestamp"`
14088}
14089
14090// String returns the string representation
14091func (s TopicsDetectionJobFilter) String() string {
14092	return awsutil.Prettify(s)
14093}
14094
14095// GoString returns the string representation
14096func (s TopicsDetectionJobFilter) GoString() string {
14097	return s.String()
14098}
14099
14100// Validate inspects the fields of the type to determine if they are valid.
14101func (s *TopicsDetectionJobFilter) Validate() error {
14102	invalidParams := request.ErrInvalidParams{Context: "TopicsDetectionJobFilter"}
14103	if s.JobName != nil && len(*s.JobName) < 1 {
14104		invalidParams.Add(request.NewErrParamMinLen("JobName", 1))
14105	}
14106
14107	if invalidParams.Len() > 0 {
14108		return invalidParams
14109	}
14110	return nil
14111}
14112
14113// SetJobName sets the JobName field's value.
14114func (s *TopicsDetectionJobFilter) SetJobName(v string) *TopicsDetectionJobFilter {
14115	s.JobName = &v
14116	return s
14117}
14118
14119// SetJobStatus sets the JobStatus field's value.
14120func (s *TopicsDetectionJobFilter) SetJobStatus(v string) *TopicsDetectionJobFilter {
14121	s.JobStatus = &v
14122	return s
14123}
14124
14125// SetSubmitTimeAfter sets the SubmitTimeAfter field's value.
14126func (s *TopicsDetectionJobFilter) SetSubmitTimeAfter(v time.Time) *TopicsDetectionJobFilter {
14127	s.SubmitTimeAfter = &v
14128	return s
14129}
14130
14131// SetSubmitTimeBefore sets the SubmitTimeBefore field's value.
14132func (s *TopicsDetectionJobFilter) SetSubmitTimeBefore(v time.Time) *TopicsDetectionJobFilter {
14133	s.SubmitTimeBefore = &v
14134	return s
14135}
14136
14137// Provides information about a topic detection job.
14138type TopicsDetectionJobProperties struct {
14139	_ struct{} `type:"structure"`
14140
14141	// The Amazon Resource Name (ARN) of the AWS Identity and Management (IAM) role
14142	// that grants Amazon Comprehend read access to your job data.
14143	DataAccessRoleArn *string `min:"20" type:"string"`
14144
14145	// The time that the topic detection job was completed.
14146	EndTime *time.Time `type:"timestamp"`
14147
14148	// The input data configuration supplied when you created the topic detection
14149	// job.
14150	InputDataConfig *InputDataConfig `type:"structure"`
14151
14152	// The identifier assigned to the topic detection job.
14153	JobId *string `min:"1" type:"string"`
14154
14155	// The name of the topic detection job.
14156	JobName *string `min:"1" type:"string"`
14157
14158	// The current status of the topic detection job. If the status is Failed, the
14159	// reason for the failure is shown in the Message field.
14160	JobStatus *string `type:"string" enum:"JobStatus"`
14161
14162	// A description for the status of a job.
14163	Message *string `type:"string"`
14164
14165	// The number of topics to detect supplied when you created the topic detection
14166	// job. The default is 10.
14167	NumberOfTopics *int64 `type:"integer"`
14168
14169	// The output data configuration supplied when you created the topic detection
14170	// job.
14171	OutputDataConfig *OutputDataConfig `type:"structure"`
14172
14173	// The time that the topic detection job was submitted for processing.
14174	SubmitTime *time.Time `type:"timestamp"`
14175
14176	// ID for the AWS Key Management Service (KMS) key that Amazon Comprehend uses
14177	// to encrypt data on the storage volume attached to the ML compute instance(s)
14178	// that process the analysis job. The VolumeKmsKeyId can be either of the following
14179	// formats:
14180	//
14181	//    * KMS Key ID: "1234abcd-12ab-34cd-56ef-1234567890ab"
14182	//
14183	//    * Amazon Resource Name (ARN) of a KMS Key: "arn:aws:kms:us-west-2:111122223333:key/1234abcd-12ab-34cd-56ef-1234567890ab"
14184	VolumeKmsKeyId *string `type:"string"`
14185
14186	// Configuration parameters for a private Virtual Private Cloud (VPC) containing
14187	// the resources you are using for your topic detection job. For more information,
14188	// see Amazon VPC (https://docs.aws.amazon.com/vpc/latest/userguide/what-is-amazon-vpc.html).
14189	VpcConfig *VpcConfig `type:"structure"`
14190}
14191
14192// String returns the string representation
14193func (s TopicsDetectionJobProperties) String() string {
14194	return awsutil.Prettify(s)
14195}
14196
14197// GoString returns the string representation
14198func (s TopicsDetectionJobProperties) GoString() string {
14199	return s.String()
14200}
14201
14202// SetDataAccessRoleArn sets the DataAccessRoleArn field's value.
14203func (s *TopicsDetectionJobProperties) SetDataAccessRoleArn(v string) *TopicsDetectionJobProperties {
14204	s.DataAccessRoleArn = &v
14205	return s
14206}
14207
14208// SetEndTime sets the EndTime field's value.
14209func (s *TopicsDetectionJobProperties) SetEndTime(v time.Time) *TopicsDetectionJobProperties {
14210	s.EndTime = &v
14211	return s
14212}
14213
14214// SetInputDataConfig sets the InputDataConfig field's value.
14215func (s *TopicsDetectionJobProperties) SetInputDataConfig(v *InputDataConfig) *TopicsDetectionJobProperties {
14216	s.InputDataConfig = v
14217	return s
14218}
14219
14220// SetJobId sets the JobId field's value.
14221func (s *TopicsDetectionJobProperties) SetJobId(v string) *TopicsDetectionJobProperties {
14222	s.JobId = &v
14223	return s
14224}
14225
14226// SetJobName sets the JobName field's value.
14227func (s *TopicsDetectionJobProperties) SetJobName(v string) *TopicsDetectionJobProperties {
14228	s.JobName = &v
14229	return s
14230}
14231
14232// SetJobStatus sets the JobStatus field's value.
14233func (s *TopicsDetectionJobProperties) SetJobStatus(v string) *TopicsDetectionJobProperties {
14234	s.JobStatus = &v
14235	return s
14236}
14237
14238// SetMessage sets the Message field's value.
14239func (s *TopicsDetectionJobProperties) SetMessage(v string) *TopicsDetectionJobProperties {
14240	s.Message = &v
14241	return s
14242}
14243
14244// SetNumberOfTopics sets the NumberOfTopics field's value.
14245func (s *TopicsDetectionJobProperties) SetNumberOfTopics(v int64) *TopicsDetectionJobProperties {
14246	s.NumberOfTopics = &v
14247	return s
14248}
14249
14250// SetOutputDataConfig sets the OutputDataConfig field's value.
14251func (s *TopicsDetectionJobProperties) SetOutputDataConfig(v *OutputDataConfig) *TopicsDetectionJobProperties {
14252	s.OutputDataConfig = v
14253	return s
14254}
14255
14256// SetSubmitTime sets the SubmitTime field's value.
14257func (s *TopicsDetectionJobProperties) SetSubmitTime(v time.Time) *TopicsDetectionJobProperties {
14258	s.SubmitTime = &v
14259	return s
14260}
14261
14262// SetVolumeKmsKeyId sets the VolumeKmsKeyId field's value.
14263func (s *TopicsDetectionJobProperties) SetVolumeKmsKeyId(v string) *TopicsDetectionJobProperties {
14264	s.VolumeKmsKeyId = &v
14265	return s
14266}
14267
14268// SetVpcConfig sets the VpcConfig field's value.
14269func (s *TopicsDetectionJobProperties) SetVpcConfig(v *VpcConfig) *TopicsDetectionJobProperties {
14270	s.VpcConfig = v
14271	return s
14272}
14273
14274// Amazon Comprehend can't process the language of the input text. For all custom
14275// entity recognition APIs (such as CreateEntityRecognizer), only English is
14276// accepted. For most other APIs, such as those for Custom Classification, Amazon
14277// Comprehend accepts text in all supported languages. For a list of supported
14278// languages, see supported-languages.
14279type UnsupportedLanguageException struct {
14280	_            struct{}                  `type:"structure"`
14281	RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"`
14282
14283	Message_ *string `locationName:"Message" min:"1" type:"string"`
14284}
14285
14286// String returns the string representation
14287func (s UnsupportedLanguageException) String() string {
14288	return awsutil.Prettify(s)
14289}
14290
14291// GoString returns the string representation
14292func (s UnsupportedLanguageException) GoString() string {
14293	return s.String()
14294}
14295
14296func newErrorUnsupportedLanguageException(v protocol.ResponseMetadata) error {
14297	return &UnsupportedLanguageException{
14298		RespMetadata: v,
14299	}
14300}
14301
14302// Code returns the exception type name.
14303func (s *UnsupportedLanguageException) Code() string {
14304	return "UnsupportedLanguageException"
14305}
14306
14307// Message returns the exception's message.
14308func (s *UnsupportedLanguageException) Message() string {
14309	if s.Message_ != nil {
14310		return *s.Message_
14311	}
14312	return ""
14313}
14314
14315// OrigErr always returns nil, satisfies awserr.Error interface.
14316func (s *UnsupportedLanguageException) OrigErr() error {
14317	return nil
14318}
14319
14320func (s *UnsupportedLanguageException) Error() string {
14321	return fmt.Sprintf("%s: %s", s.Code(), s.Message())
14322}
14323
14324// Status code returns the HTTP status code for the request's response error.
14325func (s *UnsupportedLanguageException) StatusCode() int {
14326	return s.RespMetadata.StatusCode
14327}
14328
14329// RequestID returns the service's response RequestID for request.
14330func (s *UnsupportedLanguageException) RequestID() string {
14331	return s.RespMetadata.RequestID
14332}
14333
14334type UntagResourceInput struct {
14335	_ struct{} `type:"structure"`
14336
14337	// The Amazon Resource Name (ARN) of the given Amazon Comprehend resource from
14338	// which you want to remove the tags.
14339	//
14340	// ResourceArn is a required field
14341	ResourceArn *string `type:"string" required:"true"`
14342
14343	// The initial part of a key-value pair that forms a tag being removed from
14344	// a given resource. For example, a tag with "Sales" as the key might be added
14345	// to a resource to indicate its use by the sales department. Keys must be unique
14346	// and cannot be duplicated for a particular resource.
14347	//
14348	// TagKeys is a required field
14349	TagKeys []*string `type:"list" required:"true"`
14350}
14351
14352// String returns the string representation
14353func (s UntagResourceInput) String() string {
14354	return awsutil.Prettify(s)
14355}
14356
14357// GoString returns the string representation
14358func (s UntagResourceInput) GoString() string {
14359	return s.String()
14360}
14361
14362// Validate inspects the fields of the type to determine if they are valid.
14363func (s *UntagResourceInput) Validate() error {
14364	invalidParams := request.ErrInvalidParams{Context: "UntagResourceInput"}
14365	if s.ResourceArn == nil {
14366		invalidParams.Add(request.NewErrParamRequired("ResourceArn"))
14367	}
14368	if s.TagKeys == nil {
14369		invalidParams.Add(request.NewErrParamRequired("TagKeys"))
14370	}
14371
14372	if invalidParams.Len() > 0 {
14373		return invalidParams
14374	}
14375	return nil
14376}
14377
14378// SetResourceArn sets the ResourceArn field's value.
14379func (s *UntagResourceInput) SetResourceArn(v string) *UntagResourceInput {
14380	s.ResourceArn = &v
14381	return s
14382}
14383
14384// SetTagKeys sets the TagKeys field's value.
14385func (s *UntagResourceInput) SetTagKeys(v []*string) *UntagResourceInput {
14386	s.TagKeys = v
14387	return s
14388}
14389
14390type UntagResourceOutput struct {
14391	_ struct{} `type:"structure"`
14392}
14393
14394// String returns the string representation
14395func (s UntagResourceOutput) String() string {
14396	return awsutil.Prettify(s)
14397}
14398
14399// GoString returns the string representation
14400func (s UntagResourceOutput) GoString() string {
14401	return s.String()
14402}
14403
14404type UpdateEndpointInput struct {
14405	_ struct{} `type:"structure"`
14406
14407	// The desired number of inference units to be used by the model using this
14408	// endpoint. Each inference unit represents of a throughput of 100 characters
14409	// per second.
14410	//
14411	// DesiredInferenceUnits is a required field
14412	DesiredInferenceUnits *int64 `min:"1" type:"integer" required:"true"`
14413
14414	// The Amazon Resource Number (ARN) of the endpoint being updated.
14415	//
14416	// EndpointArn is a required field
14417	EndpointArn *string `type:"string" required:"true"`
14418}
14419
14420// String returns the string representation
14421func (s UpdateEndpointInput) String() string {
14422	return awsutil.Prettify(s)
14423}
14424
14425// GoString returns the string representation
14426func (s UpdateEndpointInput) GoString() string {
14427	return s.String()
14428}
14429
14430// Validate inspects the fields of the type to determine if they are valid.
14431func (s *UpdateEndpointInput) Validate() error {
14432	invalidParams := request.ErrInvalidParams{Context: "UpdateEndpointInput"}
14433	if s.DesiredInferenceUnits == nil {
14434		invalidParams.Add(request.NewErrParamRequired("DesiredInferenceUnits"))
14435	}
14436	if s.DesiredInferenceUnits != nil && *s.DesiredInferenceUnits < 1 {
14437		invalidParams.Add(request.NewErrParamMinValue("DesiredInferenceUnits", 1))
14438	}
14439	if s.EndpointArn == nil {
14440		invalidParams.Add(request.NewErrParamRequired("EndpointArn"))
14441	}
14442
14443	if invalidParams.Len() > 0 {
14444		return invalidParams
14445	}
14446	return nil
14447}
14448
14449// SetDesiredInferenceUnits sets the DesiredInferenceUnits field's value.
14450func (s *UpdateEndpointInput) SetDesiredInferenceUnits(v int64) *UpdateEndpointInput {
14451	s.DesiredInferenceUnits = &v
14452	return s
14453}
14454
14455// SetEndpointArn sets the EndpointArn field's value.
14456func (s *UpdateEndpointInput) SetEndpointArn(v string) *UpdateEndpointInput {
14457	s.EndpointArn = &v
14458	return s
14459}
14460
14461type UpdateEndpointOutput struct {
14462	_ struct{} `type:"structure"`
14463}
14464
14465// String returns the string representation
14466func (s UpdateEndpointOutput) String() string {
14467	return awsutil.Prettify(s)
14468}
14469
14470// GoString returns the string representation
14471func (s UpdateEndpointOutput) GoString() string {
14472	return s.String()
14473}
14474
14475// Configuration parameters for an optional private Virtual Private Cloud (VPC)
14476// containing the resources you are using for the job. For For more information,
14477// see Amazon VPC (https://docs.aws.amazon.com/vpc/latest/userguide/what-is-amazon-vpc.html).
14478type VpcConfig struct {
14479	_ struct{} `type:"structure"`
14480
14481	// The ID number for a security group on an instance of your private VPC. Security
14482	// groups on your VPC function serve as a virtual firewall to control inbound
14483	// and outbound traffic and provides security for the resources that you’ll
14484	// be accessing on the VPC. This ID number is preceded by "sg-", for instance:
14485	// "sg-03b388029b0a285ea". For more information, see Security Groups for your
14486	// VPC (https://docs.aws.amazon.com/vpc/latest/userguide/VPC_SecurityGroups.html).
14487	//
14488	// SecurityGroupIds is a required field
14489	SecurityGroupIds []*string `min:"1" type:"list" required:"true"`
14490
14491	// The ID for each subnet being used in your private VPC. This subnet is a subset
14492	// of the a range of IPv4 addresses used by the VPC and is specific to a given
14493	// availability zone in the VPC’s region. This ID number is preceded by "subnet-",
14494	// for instance: "subnet-04ccf456919e69055". For more information, see VPCs
14495	// and Subnets (https://docs.aws.amazon.com/vpc/latest/userguide/VPC_Subnets.html).
14496	//
14497	// Subnets is a required field
14498	Subnets []*string `min:"1" type:"list" required:"true"`
14499}
14500
14501// String returns the string representation
14502func (s VpcConfig) String() string {
14503	return awsutil.Prettify(s)
14504}
14505
14506// GoString returns the string representation
14507func (s VpcConfig) GoString() string {
14508	return s.String()
14509}
14510
14511// Validate inspects the fields of the type to determine if they are valid.
14512func (s *VpcConfig) Validate() error {
14513	invalidParams := request.ErrInvalidParams{Context: "VpcConfig"}
14514	if s.SecurityGroupIds == nil {
14515		invalidParams.Add(request.NewErrParamRequired("SecurityGroupIds"))
14516	}
14517	if s.SecurityGroupIds != nil && len(s.SecurityGroupIds) < 1 {
14518		invalidParams.Add(request.NewErrParamMinLen("SecurityGroupIds", 1))
14519	}
14520	if s.Subnets == nil {
14521		invalidParams.Add(request.NewErrParamRequired("Subnets"))
14522	}
14523	if s.Subnets != nil && len(s.Subnets) < 1 {
14524		invalidParams.Add(request.NewErrParamMinLen("Subnets", 1))
14525	}
14526
14527	if invalidParams.Len() > 0 {
14528		return invalidParams
14529	}
14530	return nil
14531}
14532
14533// SetSecurityGroupIds sets the SecurityGroupIds field's value.
14534func (s *VpcConfig) SetSecurityGroupIds(v []*string) *VpcConfig {
14535	s.SecurityGroupIds = v
14536	return s
14537}
14538
14539// SetSubnets sets the Subnets field's value.
14540func (s *VpcConfig) SetSubnets(v []*string) *VpcConfig {
14541	s.Subnets = v
14542	return s
14543}
14544
14545const (
14546	// DocumentClassifierModeMultiClass is a DocumentClassifierMode enum value
14547	DocumentClassifierModeMultiClass = "MULTI_CLASS"
14548
14549	// DocumentClassifierModeMultiLabel is a DocumentClassifierMode enum value
14550	DocumentClassifierModeMultiLabel = "MULTI_LABEL"
14551)
14552
14553const (
14554	// EndpointStatusCreating is a EndpointStatus enum value
14555	EndpointStatusCreating = "CREATING"
14556
14557	// EndpointStatusDeleting is a EndpointStatus enum value
14558	EndpointStatusDeleting = "DELETING"
14559
14560	// EndpointStatusFailed is a EndpointStatus enum value
14561	EndpointStatusFailed = "FAILED"
14562
14563	// EndpointStatusInService is a EndpointStatus enum value
14564	EndpointStatusInService = "IN_SERVICE"
14565
14566	// EndpointStatusUpdating is a EndpointStatus enum value
14567	EndpointStatusUpdating = "UPDATING"
14568)
14569
14570const (
14571	// EntityTypePerson is a EntityType enum value
14572	EntityTypePerson = "PERSON"
14573
14574	// EntityTypeLocation is a EntityType enum value
14575	EntityTypeLocation = "LOCATION"
14576
14577	// EntityTypeOrganization is a EntityType enum value
14578	EntityTypeOrganization = "ORGANIZATION"
14579
14580	// EntityTypeCommercialItem is a EntityType enum value
14581	EntityTypeCommercialItem = "COMMERCIAL_ITEM"
14582
14583	// EntityTypeEvent is a EntityType enum value
14584	EntityTypeEvent = "EVENT"
14585
14586	// EntityTypeDate is a EntityType enum value
14587	EntityTypeDate = "DATE"
14588
14589	// EntityTypeQuantity is a EntityType enum value
14590	EntityTypeQuantity = "QUANTITY"
14591
14592	// EntityTypeTitle is a EntityType enum value
14593	EntityTypeTitle = "TITLE"
14594
14595	// EntityTypeOther is a EntityType enum value
14596	EntityTypeOther = "OTHER"
14597)
14598
14599const (
14600	// InputFormatOneDocPerFile is a InputFormat enum value
14601	InputFormatOneDocPerFile = "ONE_DOC_PER_FILE"
14602
14603	// InputFormatOneDocPerLine is a InputFormat enum value
14604	InputFormatOneDocPerLine = "ONE_DOC_PER_LINE"
14605)
14606
14607const (
14608	// JobStatusSubmitted is a JobStatus enum value
14609	JobStatusSubmitted = "SUBMITTED"
14610
14611	// JobStatusInProgress is a JobStatus enum value
14612	JobStatusInProgress = "IN_PROGRESS"
14613
14614	// JobStatusCompleted is a JobStatus enum value
14615	JobStatusCompleted = "COMPLETED"
14616
14617	// JobStatusFailed is a JobStatus enum value
14618	JobStatusFailed = "FAILED"
14619
14620	// JobStatusStopRequested is a JobStatus enum value
14621	JobStatusStopRequested = "STOP_REQUESTED"
14622
14623	// JobStatusStopped is a JobStatus enum value
14624	JobStatusStopped = "STOPPED"
14625)
14626
14627const (
14628	// LanguageCodeEn is a LanguageCode enum value
14629	LanguageCodeEn = "en"
14630
14631	// LanguageCodeEs is a LanguageCode enum value
14632	LanguageCodeEs = "es"
14633
14634	// LanguageCodeFr is a LanguageCode enum value
14635	LanguageCodeFr = "fr"
14636
14637	// LanguageCodeDe is a LanguageCode enum value
14638	LanguageCodeDe = "de"
14639
14640	// LanguageCodeIt is a LanguageCode enum value
14641	LanguageCodeIt = "it"
14642
14643	// LanguageCodePt is a LanguageCode enum value
14644	LanguageCodePt = "pt"
14645
14646	// LanguageCodeAr is a LanguageCode enum value
14647	LanguageCodeAr = "ar"
14648
14649	// LanguageCodeHi is a LanguageCode enum value
14650	LanguageCodeHi = "hi"
14651
14652	// LanguageCodeJa is a LanguageCode enum value
14653	LanguageCodeJa = "ja"
14654
14655	// LanguageCodeKo is a LanguageCode enum value
14656	LanguageCodeKo = "ko"
14657
14658	// LanguageCodeZh is a LanguageCode enum value
14659	LanguageCodeZh = "zh"
14660
14661	// LanguageCodeZhTw is a LanguageCode enum value
14662	LanguageCodeZhTw = "zh-TW"
14663)
14664
14665const (
14666	// ModelStatusSubmitted is a ModelStatus enum value
14667	ModelStatusSubmitted = "SUBMITTED"
14668
14669	// ModelStatusTraining is a ModelStatus enum value
14670	ModelStatusTraining = "TRAINING"
14671
14672	// ModelStatusDeleting is a ModelStatus enum value
14673	ModelStatusDeleting = "DELETING"
14674
14675	// ModelStatusStopRequested is a ModelStatus enum value
14676	ModelStatusStopRequested = "STOP_REQUESTED"
14677
14678	// ModelStatusStopped is a ModelStatus enum value
14679	ModelStatusStopped = "STOPPED"
14680
14681	// ModelStatusInError is a ModelStatus enum value
14682	ModelStatusInError = "IN_ERROR"
14683
14684	// ModelStatusTrained is a ModelStatus enum value
14685	ModelStatusTrained = "TRAINED"
14686)
14687
14688const (
14689	// PartOfSpeechTagTypeAdj is a PartOfSpeechTagType enum value
14690	PartOfSpeechTagTypeAdj = "ADJ"
14691
14692	// PartOfSpeechTagTypeAdp is a PartOfSpeechTagType enum value
14693	PartOfSpeechTagTypeAdp = "ADP"
14694
14695	// PartOfSpeechTagTypeAdv is a PartOfSpeechTagType enum value
14696	PartOfSpeechTagTypeAdv = "ADV"
14697
14698	// PartOfSpeechTagTypeAux is a PartOfSpeechTagType enum value
14699	PartOfSpeechTagTypeAux = "AUX"
14700
14701	// PartOfSpeechTagTypeConj is a PartOfSpeechTagType enum value
14702	PartOfSpeechTagTypeConj = "CONJ"
14703
14704	// PartOfSpeechTagTypeCconj is a PartOfSpeechTagType enum value
14705	PartOfSpeechTagTypeCconj = "CCONJ"
14706
14707	// PartOfSpeechTagTypeDet is a PartOfSpeechTagType enum value
14708	PartOfSpeechTagTypeDet = "DET"
14709
14710	// PartOfSpeechTagTypeIntj is a PartOfSpeechTagType enum value
14711	PartOfSpeechTagTypeIntj = "INTJ"
14712
14713	// PartOfSpeechTagTypeNoun is a PartOfSpeechTagType enum value
14714	PartOfSpeechTagTypeNoun = "NOUN"
14715
14716	// PartOfSpeechTagTypeNum is a PartOfSpeechTagType enum value
14717	PartOfSpeechTagTypeNum = "NUM"
14718
14719	// PartOfSpeechTagTypeO is a PartOfSpeechTagType enum value
14720	PartOfSpeechTagTypeO = "O"
14721
14722	// PartOfSpeechTagTypePart is a PartOfSpeechTagType enum value
14723	PartOfSpeechTagTypePart = "PART"
14724
14725	// PartOfSpeechTagTypePron is a PartOfSpeechTagType enum value
14726	PartOfSpeechTagTypePron = "PRON"
14727
14728	// PartOfSpeechTagTypePropn is a PartOfSpeechTagType enum value
14729	PartOfSpeechTagTypePropn = "PROPN"
14730
14731	// PartOfSpeechTagTypePunct is a PartOfSpeechTagType enum value
14732	PartOfSpeechTagTypePunct = "PUNCT"
14733
14734	// PartOfSpeechTagTypeSconj is a PartOfSpeechTagType enum value
14735	PartOfSpeechTagTypeSconj = "SCONJ"
14736
14737	// PartOfSpeechTagTypeSym is a PartOfSpeechTagType enum value
14738	PartOfSpeechTagTypeSym = "SYM"
14739
14740	// PartOfSpeechTagTypeVerb is a PartOfSpeechTagType enum value
14741	PartOfSpeechTagTypeVerb = "VERB"
14742)
14743
14744const (
14745	// SentimentTypePositive is a SentimentType enum value
14746	SentimentTypePositive = "POSITIVE"
14747
14748	// SentimentTypeNegative is a SentimentType enum value
14749	SentimentTypeNegative = "NEGATIVE"
14750
14751	// SentimentTypeNeutral is a SentimentType enum value
14752	SentimentTypeNeutral = "NEUTRAL"
14753
14754	// SentimentTypeMixed is a SentimentType enum value
14755	SentimentTypeMixed = "MIXED"
14756)
14757
14758const (
14759	// SyntaxLanguageCodeEn is a SyntaxLanguageCode enum value
14760	SyntaxLanguageCodeEn = "en"
14761
14762	// SyntaxLanguageCodeEs is a SyntaxLanguageCode enum value
14763	SyntaxLanguageCodeEs = "es"
14764
14765	// SyntaxLanguageCodeFr is a SyntaxLanguageCode enum value
14766	SyntaxLanguageCodeFr = "fr"
14767
14768	// SyntaxLanguageCodeDe is a SyntaxLanguageCode enum value
14769	SyntaxLanguageCodeDe = "de"
14770
14771	// SyntaxLanguageCodeIt is a SyntaxLanguageCode enum value
14772	SyntaxLanguageCodeIt = "it"
14773
14774	// SyntaxLanguageCodePt is a SyntaxLanguageCode enum value
14775	SyntaxLanguageCodePt = "pt"
14776)
14777