1// Code generated by private/model/cli/gen-api/main.go. DO NOT EDIT.
2
3package frauddetector
4
5import (
6	"fmt"
7
8	"github.com/aws/aws-sdk-go/aws"
9	"github.com/aws/aws-sdk-go/aws/awsutil"
10	"github.com/aws/aws-sdk-go/aws/request"
11	"github.com/aws/aws-sdk-go/private/protocol"
12	"github.com/aws/aws-sdk-go/private/protocol/jsonrpc"
13)
14
15const opBatchCreateVariable = "BatchCreateVariable"
16
17// BatchCreateVariableRequest generates a "aws/request.Request" representing the
18// client's request for the BatchCreateVariable operation. The "output" return
19// value will be populated with the request's response once the request completes
20// successfully.
21//
22// Use "Send" method on the returned Request to send the API call to the service.
23// the "output" return value is not valid until after Send returns without error.
24//
25// See BatchCreateVariable for more information on using the BatchCreateVariable
26// API call, and error handling.
27//
28// This method is useful when you want to inject custom logic or configuration
29// into the SDK's request lifecycle. Such as custom headers, or retry logic.
30//
31//
32//    // Example sending a request using the BatchCreateVariableRequest method.
33//    req, resp := client.BatchCreateVariableRequest(params)
34//
35//    err := req.Send()
36//    if err == nil { // resp is now filled
37//        fmt.Println(resp)
38//    }
39//
40// See also, https://docs.aws.amazon.com/goto/WebAPI/frauddetector-2019-11-15/BatchCreateVariable
41func (c *FraudDetector) BatchCreateVariableRequest(input *BatchCreateVariableInput) (req *request.Request, output *BatchCreateVariableOutput) {
42	op := &request.Operation{
43		Name:       opBatchCreateVariable,
44		HTTPMethod: "POST",
45		HTTPPath:   "/",
46	}
47
48	if input == nil {
49		input = &BatchCreateVariableInput{}
50	}
51
52	output = &BatchCreateVariableOutput{}
53	req = c.newRequest(op, input, output)
54	return
55}
56
57// BatchCreateVariable API operation for Amazon Fraud Detector.
58//
59// Creates a batch of variables.
60//
61// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
62// with awserr.Error's Code and Message methods to get detailed information about
63// the error.
64//
65// See the AWS API reference guide for Amazon Fraud Detector's
66// API operation BatchCreateVariable for usage and error information.
67//
68// Returned Error Types:
69//   * ValidationException
70//   An exception indicating a specified value is not allowed.
71//
72//   * InternalServerException
73//   An exception indicating an internal server error.
74//
75//   * ThrottlingException
76//   An exception indicating a throttling error.
77//
78//   * AccessDeniedException
79//   An exception indicating Amazon Fraud Detector does not have the needed permissions.
80//   This can occur if you submit a request, such as PutExternalModel, that specifies
81//   a role that is not in your account.
82//
83// See also, https://docs.aws.amazon.com/goto/WebAPI/frauddetector-2019-11-15/BatchCreateVariable
84func (c *FraudDetector) BatchCreateVariable(input *BatchCreateVariableInput) (*BatchCreateVariableOutput, error) {
85	req, out := c.BatchCreateVariableRequest(input)
86	return out, req.Send()
87}
88
89// BatchCreateVariableWithContext is the same as BatchCreateVariable with the addition of
90// the ability to pass a context and additional request options.
91//
92// See BatchCreateVariable for details on how to use this API operation.
93//
94// The context must be non-nil and will be used for request cancellation. If
95// the context is nil a panic will occur. In the future the SDK may create
96// sub-contexts for http.Requests. See https://golang.org/pkg/context/
97// for more information on using Contexts.
98func (c *FraudDetector) BatchCreateVariableWithContext(ctx aws.Context, input *BatchCreateVariableInput, opts ...request.Option) (*BatchCreateVariableOutput, error) {
99	req, out := c.BatchCreateVariableRequest(input)
100	req.SetContext(ctx)
101	req.ApplyOptions(opts...)
102	return out, req.Send()
103}
104
105const opBatchGetVariable = "BatchGetVariable"
106
107// BatchGetVariableRequest generates a "aws/request.Request" representing the
108// client's request for the BatchGetVariable operation. The "output" return
109// value will be populated with the request's response once the request completes
110// successfully.
111//
112// Use "Send" method on the returned Request to send the API call to the service.
113// the "output" return value is not valid until after Send returns without error.
114//
115// See BatchGetVariable for more information on using the BatchGetVariable
116// API call, and error handling.
117//
118// This method is useful when you want to inject custom logic or configuration
119// into the SDK's request lifecycle. Such as custom headers, or retry logic.
120//
121//
122//    // Example sending a request using the BatchGetVariableRequest method.
123//    req, resp := client.BatchGetVariableRequest(params)
124//
125//    err := req.Send()
126//    if err == nil { // resp is now filled
127//        fmt.Println(resp)
128//    }
129//
130// See also, https://docs.aws.amazon.com/goto/WebAPI/frauddetector-2019-11-15/BatchGetVariable
131func (c *FraudDetector) BatchGetVariableRequest(input *BatchGetVariableInput) (req *request.Request, output *BatchGetVariableOutput) {
132	op := &request.Operation{
133		Name:       opBatchGetVariable,
134		HTTPMethod: "POST",
135		HTTPPath:   "/",
136	}
137
138	if input == nil {
139		input = &BatchGetVariableInput{}
140	}
141
142	output = &BatchGetVariableOutput{}
143	req = c.newRequest(op, input, output)
144	return
145}
146
147// BatchGetVariable API operation for Amazon Fraud Detector.
148//
149// Gets a batch of variables.
150//
151// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
152// with awserr.Error's Code and Message methods to get detailed information about
153// the error.
154//
155// See the AWS API reference guide for Amazon Fraud Detector's
156// API operation BatchGetVariable for usage and error information.
157//
158// Returned Error Types:
159//   * ValidationException
160//   An exception indicating a specified value is not allowed.
161//
162//   * InternalServerException
163//   An exception indicating an internal server error.
164//
165//   * ThrottlingException
166//   An exception indicating a throttling error.
167//
168//   * AccessDeniedException
169//   An exception indicating Amazon Fraud Detector does not have the needed permissions.
170//   This can occur if you submit a request, such as PutExternalModel, that specifies
171//   a role that is not in your account.
172//
173// See also, https://docs.aws.amazon.com/goto/WebAPI/frauddetector-2019-11-15/BatchGetVariable
174func (c *FraudDetector) BatchGetVariable(input *BatchGetVariableInput) (*BatchGetVariableOutput, error) {
175	req, out := c.BatchGetVariableRequest(input)
176	return out, req.Send()
177}
178
179// BatchGetVariableWithContext is the same as BatchGetVariable with the addition of
180// the ability to pass a context and additional request options.
181//
182// See BatchGetVariable for details on how to use this API operation.
183//
184// The context must be non-nil and will be used for request cancellation. If
185// the context is nil a panic will occur. In the future the SDK may create
186// sub-contexts for http.Requests. See https://golang.org/pkg/context/
187// for more information on using Contexts.
188func (c *FraudDetector) BatchGetVariableWithContext(ctx aws.Context, input *BatchGetVariableInput, opts ...request.Option) (*BatchGetVariableOutput, error) {
189	req, out := c.BatchGetVariableRequest(input)
190	req.SetContext(ctx)
191	req.ApplyOptions(opts...)
192	return out, req.Send()
193}
194
195const opCancelBatchPredictionJob = "CancelBatchPredictionJob"
196
197// CancelBatchPredictionJobRequest generates a "aws/request.Request" representing the
198// client's request for the CancelBatchPredictionJob operation. The "output" return
199// value will be populated with the request's response once the request completes
200// successfully.
201//
202// Use "Send" method on the returned Request to send the API call to the service.
203// the "output" return value is not valid until after Send returns without error.
204//
205// See CancelBatchPredictionJob for more information on using the CancelBatchPredictionJob
206// API call, and error handling.
207//
208// This method is useful when you want to inject custom logic or configuration
209// into the SDK's request lifecycle. Such as custom headers, or retry logic.
210//
211//
212//    // Example sending a request using the CancelBatchPredictionJobRequest method.
213//    req, resp := client.CancelBatchPredictionJobRequest(params)
214//
215//    err := req.Send()
216//    if err == nil { // resp is now filled
217//        fmt.Println(resp)
218//    }
219//
220// See also, https://docs.aws.amazon.com/goto/WebAPI/frauddetector-2019-11-15/CancelBatchPredictionJob
221func (c *FraudDetector) CancelBatchPredictionJobRequest(input *CancelBatchPredictionJobInput) (req *request.Request, output *CancelBatchPredictionJobOutput) {
222	op := &request.Operation{
223		Name:       opCancelBatchPredictionJob,
224		HTTPMethod: "POST",
225		HTTPPath:   "/",
226	}
227
228	if input == nil {
229		input = &CancelBatchPredictionJobInput{}
230	}
231
232	output = &CancelBatchPredictionJobOutput{}
233	req = c.newRequest(op, input, output)
234	req.Handlers.Unmarshal.Swap(jsonrpc.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler)
235	return
236}
237
238// CancelBatchPredictionJob API operation for Amazon Fraud Detector.
239//
240// Cancels the specified batch prediction job.
241//
242// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
243// with awserr.Error's Code and Message methods to get detailed information about
244// the error.
245//
246// See the AWS API reference guide for Amazon Fraud Detector's
247// API operation CancelBatchPredictionJob for usage and error information.
248//
249// Returned Error Types:
250//   * ValidationException
251//   An exception indicating a specified value is not allowed.
252//
253//   * ResourceNotFoundException
254//   An exception indicating the specified resource was not found. This can occur
255//   if you submit a request, such as CreateBatchPredictionJob, but the detector
256//   name or version does not exist.
257//
258//   * InternalServerException
259//   An exception indicating an internal server error.
260//
261//   * ThrottlingException
262//   An exception indicating a throttling error.
263//
264//   * AccessDeniedException
265//   An exception indicating Amazon Fraud Detector does not have the needed permissions.
266//   This can occur if you submit a request, such as PutExternalModel, that specifies
267//   a role that is not in your account.
268//
269// See also, https://docs.aws.amazon.com/goto/WebAPI/frauddetector-2019-11-15/CancelBatchPredictionJob
270func (c *FraudDetector) CancelBatchPredictionJob(input *CancelBatchPredictionJobInput) (*CancelBatchPredictionJobOutput, error) {
271	req, out := c.CancelBatchPredictionJobRequest(input)
272	return out, req.Send()
273}
274
275// CancelBatchPredictionJobWithContext is the same as CancelBatchPredictionJob with the addition of
276// the ability to pass a context and additional request options.
277//
278// See CancelBatchPredictionJob for details on how to use this API operation.
279//
280// The context must be non-nil and will be used for request cancellation. If
281// the context is nil a panic will occur. In the future the SDK may create
282// sub-contexts for http.Requests. See https://golang.org/pkg/context/
283// for more information on using Contexts.
284func (c *FraudDetector) CancelBatchPredictionJobWithContext(ctx aws.Context, input *CancelBatchPredictionJobInput, opts ...request.Option) (*CancelBatchPredictionJobOutput, error) {
285	req, out := c.CancelBatchPredictionJobRequest(input)
286	req.SetContext(ctx)
287	req.ApplyOptions(opts...)
288	return out, req.Send()
289}
290
291const opCreateBatchPredictionJob = "CreateBatchPredictionJob"
292
293// CreateBatchPredictionJobRequest generates a "aws/request.Request" representing the
294// client's request for the CreateBatchPredictionJob operation. The "output" return
295// value will be populated with the request's response once the request completes
296// successfully.
297//
298// Use "Send" method on the returned Request to send the API call to the service.
299// the "output" return value is not valid until after Send returns without error.
300//
301// See CreateBatchPredictionJob for more information on using the CreateBatchPredictionJob
302// API call, and error handling.
303//
304// This method is useful when you want to inject custom logic or configuration
305// into the SDK's request lifecycle. Such as custom headers, or retry logic.
306//
307//
308//    // Example sending a request using the CreateBatchPredictionJobRequest method.
309//    req, resp := client.CreateBatchPredictionJobRequest(params)
310//
311//    err := req.Send()
312//    if err == nil { // resp is now filled
313//        fmt.Println(resp)
314//    }
315//
316// See also, https://docs.aws.amazon.com/goto/WebAPI/frauddetector-2019-11-15/CreateBatchPredictionJob
317func (c *FraudDetector) CreateBatchPredictionJobRequest(input *CreateBatchPredictionJobInput) (req *request.Request, output *CreateBatchPredictionJobOutput) {
318	op := &request.Operation{
319		Name:       opCreateBatchPredictionJob,
320		HTTPMethod: "POST",
321		HTTPPath:   "/",
322	}
323
324	if input == nil {
325		input = &CreateBatchPredictionJobInput{}
326	}
327
328	output = &CreateBatchPredictionJobOutput{}
329	req = c.newRequest(op, input, output)
330	req.Handlers.Unmarshal.Swap(jsonrpc.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler)
331	return
332}
333
334// CreateBatchPredictionJob API operation for Amazon Fraud Detector.
335//
336// Creates a batch prediction job.
337//
338// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
339// with awserr.Error's Code and Message methods to get detailed information about
340// the error.
341//
342// See the AWS API reference guide for Amazon Fraud Detector's
343// API operation CreateBatchPredictionJob for usage and error information.
344//
345// Returned Error Types:
346//   * ValidationException
347//   An exception indicating a specified value is not allowed.
348//
349//   * InternalServerException
350//   An exception indicating an internal server error.
351//
352//   * ThrottlingException
353//   An exception indicating a throttling error.
354//
355//   * AccessDeniedException
356//   An exception indicating Amazon Fraud Detector does not have the needed permissions.
357//   This can occur if you submit a request, such as PutExternalModel, that specifies
358//   a role that is not in your account.
359//
360//   * ResourceNotFoundException
361//   An exception indicating the specified resource was not found. This can occur
362//   if you submit a request, such as CreateBatchPredictionJob, but the detector
363//   name or version does not exist.
364//
365// See also, https://docs.aws.amazon.com/goto/WebAPI/frauddetector-2019-11-15/CreateBatchPredictionJob
366func (c *FraudDetector) CreateBatchPredictionJob(input *CreateBatchPredictionJobInput) (*CreateBatchPredictionJobOutput, error) {
367	req, out := c.CreateBatchPredictionJobRequest(input)
368	return out, req.Send()
369}
370
371// CreateBatchPredictionJobWithContext is the same as CreateBatchPredictionJob with the addition of
372// the ability to pass a context and additional request options.
373//
374// See CreateBatchPredictionJob for details on how to use this API operation.
375//
376// The context must be non-nil and will be used for request cancellation. If
377// the context is nil a panic will occur. In the future the SDK may create
378// sub-contexts for http.Requests. See https://golang.org/pkg/context/
379// for more information on using Contexts.
380func (c *FraudDetector) CreateBatchPredictionJobWithContext(ctx aws.Context, input *CreateBatchPredictionJobInput, opts ...request.Option) (*CreateBatchPredictionJobOutput, error) {
381	req, out := c.CreateBatchPredictionJobRequest(input)
382	req.SetContext(ctx)
383	req.ApplyOptions(opts...)
384	return out, req.Send()
385}
386
387const opCreateDetectorVersion = "CreateDetectorVersion"
388
389// CreateDetectorVersionRequest generates a "aws/request.Request" representing the
390// client's request for the CreateDetectorVersion operation. The "output" return
391// value will be populated with the request's response once the request completes
392// successfully.
393//
394// Use "Send" method on the returned Request to send the API call to the service.
395// the "output" return value is not valid until after Send returns without error.
396//
397// See CreateDetectorVersion for more information on using the CreateDetectorVersion
398// API call, and error handling.
399//
400// This method is useful when you want to inject custom logic or configuration
401// into the SDK's request lifecycle. Such as custom headers, or retry logic.
402//
403//
404//    // Example sending a request using the CreateDetectorVersionRequest method.
405//    req, resp := client.CreateDetectorVersionRequest(params)
406//
407//    err := req.Send()
408//    if err == nil { // resp is now filled
409//        fmt.Println(resp)
410//    }
411//
412// See also, https://docs.aws.amazon.com/goto/WebAPI/frauddetector-2019-11-15/CreateDetectorVersion
413func (c *FraudDetector) CreateDetectorVersionRequest(input *CreateDetectorVersionInput) (req *request.Request, output *CreateDetectorVersionOutput) {
414	op := &request.Operation{
415		Name:       opCreateDetectorVersion,
416		HTTPMethod: "POST",
417		HTTPPath:   "/",
418	}
419
420	if input == nil {
421		input = &CreateDetectorVersionInput{}
422	}
423
424	output = &CreateDetectorVersionOutput{}
425	req = c.newRequest(op, input, output)
426	return
427}
428
429// CreateDetectorVersion API operation for Amazon Fraud Detector.
430//
431// Creates a detector version. The detector version starts in a DRAFT status.
432//
433// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
434// with awserr.Error's Code and Message methods to get detailed information about
435// the error.
436//
437// See the AWS API reference guide for Amazon Fraud Detector's
438// API operation CreateDetectorVersion for usage and error information.
439//
440// Returned Error Types:
441//   * ValidationException
442//   An exception indicating a specified value is not allowed.
443//
444//   * ResourceNotFoundException
445//   An exception indicating the specified resource was not found. This can occur
446//   if you submit a request, such as CreateBatchPredictionJob, but the detector
447//   name or version does not exist.
448//
449//   * InternalServerException
450//   An exception indicating an internal server error.
451//
452//   * ThrottlingException
453//   An exception indicating a throttling error.
454//
455//   * AccessDeniedException
456//   An exception indicating Amazon Fraud Detector does not have the needed permissions.
457//   This can occur if you submit a request, such as PutExternalModel, that specifies
458//   a role that is not in your account.
459//
460// See also, https://docs.aws.amazon.com/goto/WebAPI/frauddetector-2019-11-15/CreateDetectorVersion
461func (c *FraudDetector) CreateDetectorVersion(input *CreateDetectorVersionInput) (*CreateDetectorVersionOutput, error) {
462	req, out := c.CreateDetectorVersionRequest(input)
463	return out, req.Send()
464}
465
466// CreateDetectorVersionWithContext is the same as CreateDetectorVersion with the addition of
467// the ability to pass a context and additional request options.
468//
469// See CreateDetectorVersion for details on how to use this API operation.
470//
471// The context must be non-nil and will be used for request cancellation. If
472// the context is nil a panic will occur. In the future the SDK may create
473// sub-contexts for http.Requests. See https://golang.org/pkg/context/
474// for more information on using Contexts.
475func (c *FraudDetector) CreateDetectorVersionWithContext(ctx aws.Context, input *CreateDetectorVersionInput, opts ...request.Option) (*CreateDetectorVersionOutput, error) {
476	req, out := c.CreateDetectorVersionRequest(input)
477	req.SetContext(ctx)
478	req.ApplyOptions(opts...)
479	return out, req.Send()
480}
481
482const opCreateModel = "CreateModel"
483
484// CreateModelRequest generates a "aws/request.Request" representing the
485// client's request for the CreateModel operation. The "output" return
486// value will be populated with the request's response once the request completes
487// successfully.
488//
489// Use "Send" method on the returned Request to send the API call to the service.
490// the "output" return value is not valid until after Send returns without error.
491//
492// See CreateModel for more information on using the CreateModel
493// API call, and error handling.
494//
495// This method is useful when you want to inject custom logic or configuration
496// into the SDK's request lifecycle. Such as custom headers, or retry logic.
497//
498//
499//    // Example sending a request using the CreateModelRequest method.
500//    req, resp := client.CreateModelRequest(params)
501//
502//    err := req.Send()
503//    if err == nil { // resp is now filled
504//        fmt.Println(resp)
505//    }
506//
507// See also, https://docs.aws.amazon.com/goto/WebAPI/frauddetector-2019-11-15/CreateModel
508func (c *FraudDetector) CreateModelRequest(input *CreateModelInput) (req *request.Request, output *CreateModelOutput) {
509	op := &request.Operation{
510		Name:       opCreateModel,
511		HTTPMethod: "POST",
512		HTTPPath:   "/",
513	}
514
515	if input == nil {
516		input = &CreateModelInput{}
517	}
518
519	output = &CreateModelOutput{}
520	req = c.newRequest(op, input, output)
521	req.Handlers.Unmarshal.Swap(jsonrpc.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler)
522	return
523}
524
525// CreateModel API operation for Amazon Fraud Detector.
526//
527// Creates a model using the specified model type.
528//
529// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
530// with awserr.Error's Code and Message methods to get detailed information about
531// the error.
532//
533// See the AWS API reference guide for Amazon Fraud Detector's
534// API operation CreateModel for usage and error information.
535//
536// Returned Error Types:
537//   * ValidationException
538//   An exception indicating a specified value is not allowed.
539//
540//   * InternalServerException
541//   An exception indicating an internal server error.
542//
543//   * ThrottlingException
544//   An exception indicating a throttling error.
545//
546//   * AccessDeniedException
547//   An exception indicating Amazon Fraud Detector does not have the needed permissions.
548//   This can occur if you submit a request, such as PutExternalModel, that specifies
549//   a role that is not in your account.
550//
551// See also, https://docs.aws.amazon.com/goto/WebAPI/frauddetector-2019-11-15/CreateModel
552func (c *FraudDetector) CreateModel(input *CreateModelInput) (*CreateModelOutput, error) {
553	req, out := c.CreateModelRequest(input)
554	return out, req.Send()
555}
556
557// CreateModelWithContext is the same as CreateModel with the addition of
558// the ability to pass a context and additional request options.
559//
560// See CreateModel for details on how to use this API operation.
561//
562// The context must be non-nil and will be used for request cancellation. If
563// the context is nil a panic will occur. In the future the SDK may create
564// sub-contexts for http.Requests. See https://golang.org/pkg/context/
565// for more information on using Contexts.
566func (c *FraudDetector) CreateModelWithContext(ctx aws.Context, input *CreateModelInput, opts ...request.Option) (*CreateModelOutput, error) {
567	req, out := c.CreateModelRequest(input)
568	req.SetContext(ctx)
569	req.ApplyOptions(opts...)
570	return out, req.Send()
571}
572
573const opCreateModelVersion = "CreateModelVersion"
574
575// CreateModelVersionRequest generates a "aws/request.Request" representing the
576// client's request for the CreateModelVersion operation. The "output" return
577// value will be populated with the request's response once the request completes
578// successfully.
579//
580// Use "Send" method on the returned Request to send the API call to the service.
581// the "output" return value is not valid until after Send returns without error.
582//
583// See CreateModelVersion for more information on using the CreateModelVersion
584// API call, and error handling.
585//
586// This method is useful when you want to inject custom logic or configuration
587// into the SDK's request lifecycle. Such as custom headers, or retry logic.
588//
589//
590//    // Example sending a request using the CreateModelVersionRequest method.
591//    req, resp := client.CreateModelVersionRequest(params)
592//
593//    err := req.Send()
594//    if err == nil { // resp is now filled
595//        fmt.Println(resp)
596//    }
597//
598// See also, https://docs.aws.amazon.com/goto/WebAPI/frauddetector-2019-11-15/CreateModelVersion
599func (c *FraudDetector) CreateModelVersionRequest(input *CreateModelVersionInput) (req *request.Request, output *CreateModelVersionOutput) {
600	op := &request.Operation{
601		Name:       opCreateModelVersion,
602		HTTPMethod: "POST",
603		HTTPPath:   "/",
604	}
605
606	if input == nil {
607		input = &CreateModelVersionInput{}
608	}
609
610	output = &CreateModelVersionOutput{}
611	req = c.newRequest(op, input, output)
612	return
613}
614
615// CreateModelVersion API operation for Amazon Fraud Detector.
616//
617// Creates a version of the model using the specified model type and model id.
618//
619// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
620// with awserr.Error's Code and Message methods to get detailed information about
621// the error.
622//
623// See the AWS API reference guide for Amazon Fraud Detector's
624// API operation CreateModelVersion for usage and error information.
625//
626// Returned Error Types:
627//   * ValidationException
628//   An exception indicating a specified value is not allowed.
629//
630//   * ResourceNotFoundException
631//   An exception indicating the specified resource was not found. This can occur
632//   if you submit a request, such as CreateBatchPredictionJob, but the detector
633//   name or version does not exist.
634//
635//   * AccessDeniedException
636//   An exception indicating Amazon Fraud Detector does not have the needed permissions.
637//   This can occur if you submit a request, such as PutExternalModel, that specifies
638//   a role that is not in your account.
639//
640//   * ThrottlingException
641//   An exception indicating a throttling error.
642//
643//   * InternalServerException
644//   An exception indicating an internal server error.
645//
646// See also, https://docs.aws.amazon.com/goto/WebAPI/frauddetector-2019-11-15/CreateModelVersion
647func (c *FraudDetector) CreateModelVersion(input *CreateModelVersionInput) (*CreateModelVersionOutput, error) {
648	req, out := c.CreateModelVersionRequest(input)
649	return out, req.Send()
650}
651
652// CreateModelVersionWithContext is the same as CreateModelVersion with the addition of
653// the ability to pass a context and additional request options.
654//
655// See CreateModelVersion for details on how to use this API operation.
656//
657// The context must be non-nil and will be used for request cancellation. If
658// the context is nil a panic will occur. In the future the SDK may create
659// sub-contexts for http.Requests. See https://golang.org/pkg/context/
660// for more information on using Contexts.
661func (c *FraudDetector) CreateModelVersionWithContext(ctx aws.Context, input *CreateModelVersionInput, opts ...request.Option) (*CreateModelVersionOutput, error) {
662	req, out := c.CreateModelVersionRequest(input)
663	req.SetContext(ctx)
664	req.ApplyOptions(opts...)
665	return out, req.Send()
666}
667
668const opCreateRule = "CreateRule"
669
670// CreateRuleRequest generates a "aws/request.Request" representing the
671// client's request for the CreateRule operation. The "output" return
672// value will be populated with the request's response once the request completes
673// successfully.
674//
675// Use "Send" method on the returned Request to send the API call to the service.
676// the "output" return value is not valid until after Send returns without error.
677//
678// See CreateRule for more information on using the CreateRule
679// API call, and error handling.
680//
681// This method is useful when you want to inject custom logic or configuration
682// into the SDK's request lifecycle. Such as custom headers, or retry logic.
683//
684//
685//    // Example sending a request using the CreateRuleRequest method.
686//    req, resp := client.CreateRuleRequest(params)
687//
688//    err := req.Send()
689//    if err == nil { // resp is now filled
690//        fmt.Println(resp)
691//    }
692//
693// See also, https://docs.aws.amazon.com/goto/WebAPI/frauddetector-2019-11-15/CreateRule
694func (c *FraudDetector) CreateRuleRequest(input *CreateRuleInput) (req *request.Request, output *CreateRuleOutput) {
695	op := &request.Operation{
696		Name:       opCreateRule,
697		HTTPMethod: "POST",
698		HTTPPath:   "/",
699	}
700
701	if input == nil {
702		input = &CreateRuleInput{}
703	}
704
705	output = &CreateRuleOutput{}
706	req = c.newRequest(op, input, output)
707	return
708}
709
710// CreateRule API operation for Amazon Fraud Detector.
711//
712// Creates a rule for use with the specified detector.
713//
714// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
715// with awserr.Error's Code and Message methods to get detailed information about
716// the error.
717//
718// See the AWS API reference guide for Amazon Fraud Detector's
719// API operation CreateRule for usage and error information.
720//
721// Returned Error Types:
722//   * ValidationException
723//   An exception indicating a specified value is not allowed.
724//
725//   * InternalServerException
726//   An exception indicating an internal server error.
727//
728//   * ThrottlingException
729//   An exception indicating a throttling error.
730//
731//   * AccessDeniedException
732//   An exception indicating Amazon Fraud Detector does not have the needed permissions.
733//   This can occur if you submit a request, such as PutExternalModel, that specifies
734//   a role that is not in your account.
735//
736// See also, https://docs.aws.amazon.com/goto/WebAPI/frauddetector-2019-11-15/CreateRule
737func (c *FraudDetector) CreateRule(input *CreateRuleInput) (*CreateRuleOutput, error) {
738	req, out := c.CreateRuleRequest(input)
739	return out, req.Send()
740}
741
742// CreateRuleWithContext is the same as CreateRule with the addition of
743// the ability to pass a context and additional request options.
744//
745// See CreateRule for details on how to use this API operation.
746//
747// The context must be non-nil and will be used for request cancellation. If
748// the context is nil a panic will occur. In the future the SDK may create
749// sub-contexts for http.Requests. See https://golang.org/pkg/context/
750// for more information on using Contexts.
751func (c *FraudDetector) CreateRuleWithContext(ctx aws.Context, input *CreateRuleInput, opts ...request.Option) (*CreateRuleOutput, error) {
752	req, out := c.CreateRuleRequest(input)
753	req.SetContext(ctx)
754	req.ApplyOptions(opts...)
755	return out, req.Send()
756}
757
758const opCreateVariable = "CreateVariable"
759
760// CreateVariableRequest generates a "aws/request.Request" representing the
761// client's request for the CreateVariable operation. The "output" return
762// value will be populated with the request's response once the request completes
763// successfully.
764//
765// Use "Send" method on the returned Request to send the API call to the service.
766// the "output" return value is not valid until after Send returns without error.
767//
768// See CreateVariable for more information on using the CreateVariable
769// API call, and error handling.
770//
771// This method is useful when you want to inject custom logic or configuration
772// into the SDK's request lifecycle. Such as custom headers, or retry logic.
773//
774//
775//    // Example sending a request using the CreateVariableRequest method.
776//    req, resp := client.CreateVariableRequest(params)
777//
778//    err := req.Send()
779//    if err == nil { // resp is now filled
780//        fmt.Println(resp)
781//    }
782//
783// See also, https://docs.aws.amazon.com/goto/WebAPI/frauddetector-2019-11-15/CreateVariable
784func (c *FraudDetector) CreateVariableRequest(input *CreateVariableInput) (req *request.Request, output *CreateVariableOutput) {
785	op := &request.Operation{
786		Name:       opCreateVariable,
787		HTTPMethod: "POST",
788		HTTPPath:   "/",
789	}
790
791	if input == nil {
792		input = &CreateVariableInput{}
793	}
794
795	output = &CreateVariableOutput{}
796	req = c.newRequest(op, input, output)
797	req.Handlers.Unmarshal.Swap(jsonrpc.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler)
798	return
799}
800
801// CreateVariable API operation for Amazon Fraud Detector.
802//
803// Creates a variable.
804//
805// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
806// with awserr.Error's Code and Message methods to get detailed information about
807// the error.
808//
809// See the AWS API reference guide for Amazon Fraud Detector's
810// API operation CreateVariable for usage and error information.
811//
812// Returned Error Types:
813//   * ValidationException
814//   An exception indicating a specified value is not allowed.
815//
816//   * InternalServerException
817//   An exception indicating an internal server error.
818//
819//   * ThrottlingException
820//   An exception indicating a throttling error.
821//
822//   * AccessDeniedException
823//   An exception indicating Amazon Fraud Detector does not have the needed permissions.
824//   This can occur if you submit a request, such as PutExternalModel, that specifies
825//   a role that is not in your account.
826//
827// See also, https://docs.aws.amazon.com/goto/WebAPI/frauddetector-2019-11-15/CreateVariable
828func (c *FraudDetector) CreateVariable(input *CreateVariableInput) (*CreateVariableOutput, error) {
829	req, out := c.CreateVariableRequest(input)
830	return out, req.Send()
831}
832
833// CreateVariableWithContext is the same as CreateVariable with the addition of
834// the ability to pass a context and additional request options.
835//
836// See CreateVariable for details on how to use this API operation.
837//
838// The context must be non-nil and will be used for request cancellation. If
839// the context is nil a panic will occur. In the future the SDK may create
840// sub-contexts for http.Requests. See https://golang.org/pkg/context/
841// for more information on using Contexts.
842func (c *FraudDetector) CreateVariableWithContext(ctx aws.Context, input *CreateVariableInput, opts ...request.Option) (*CreateVariableOutput, error) {
843	req, out := c.CreateVariableRequest(input)
844	req.SetContext(ctx)
845	req.ApplyOptions(opts...)
846	return out, req.Send()
847}
848
849const opDeleteBatchPredictionJob = "DeleteBatchPredictionJob"
850
851// DeleteBatchPredictionJobRequest generates a "aws/request.Request" representing the
852// client's request for the DeleteBatchPredictionJob operation. The "output" return
853// value will be populated with the request's response once the request completes
854// successfully.
855//
856// Use "Send" method on the returned Request to send the API call to the service.
857// the "output" return value is not valid until after Send returns without error.
858//
859// See DeleteBatchPredictionJob for more information on using the DeleteBatchPredictionJob
860// API call, and error handling.
861//
862// This method is useful when you want to inject custom logic or configuration
863// into the SDK's request lifecycle. Such as custom headers, or retry logic.
864//
865//
866//    // Example sending a request using the DeleteBatchPredictionJobRequest method.
867//    req, resp := client.DeleteBatchPredictionJobRequest(params)
868//
869//    err := req.Send()
870//    if err == nil { // resp is now filled
871//        fmt.Println(resp)
872//    }
873//
874// See also, https://docs.aws.amazon.com/goto/WebAPI/frauddetector-2019-11-15/DeleteBatchPredictionJob
875func (c *FraudDetector) DeleteBatchPredictionJobRequest(input *DeleteBatchPredictionJobInput) (req *request.Request, output *DeleteBatchPredictionJobOutput) {
876	op := &request.Operation{
877		Name:       opDeleteBatchPredictionJob,
878		HTTPMethod: "POST",
879		HTTPPath:   "/",
880	}
881
882	if input == nil {
883		input = &DeleteBatchPredictionJobInput{}
884	}
885
886	output = &DeleteBatchPredictionJobOutput{}
887	req = c.newRequest(op, input, output)
888	req.Handlers.Unmarshal.Swap(jsonrpc.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler)
889	return
890}
891
892// DeleteBatchPredictionJob API operation for Amazon Fraud Detector.
893//
894// Deletes a batch prediction job.
895//
896// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
897// with awserr.Error's Code and Message methods to get detailed information about
898// the error.
899//
900// See the AWS API reference guide for Amazon Fraud Detector's
901// API operation DeleteBatchPredictionJob for usage and error information.
902//
903// Returned Error Types:
904//   * ValidationException
905//   An exception indicating a specified value is not allowed.
906//
907//   * ResourceNotFoundException
908//   An exception indicating the specified resource was not found. This can occur
909//   if you submit a request, such as CreateBatchPredictionJob, but the detector
910//   name or version does not exist.
911//
912//   * InternalServerException
913//   An exception indicating an internal server error.
914//
915//   * ThrottlingException
916//   An exception indicating a throttling error.
917//
918//   * AccessDeniedException
919//   An exception indicating Amazon Fraud Detector does not have the needed permissions.
920//   This can occur if you submit a request, such as PutExternalModel, that specifies
921//   a role that is not in your account.
922//
923// See also, https://docs.aws.amazon.com/goto/WebAPI/frauddetector-2019-11-15/DeleteBatchPredictionJob
924func (c *FraudDetector) DeleteBatchPredictionJob(input *DeleteBatchPredictionJobInput) (*DeleteBatchPredictionJobOutput, error) {
925	req, out := c.DeleteBatchPredictionJobRequest(input)
926	return out, req.Send()
927}
928
929// DeleteBatchPredictionJobWithContext is the same as DeleteBatchPredictionJob with the addition of
930// the ability to pass a context and additional request options.
931//
932// See DeleteBatchPredictionJob for details on how to use this API operation.
933//
934// The context must be non-nil and will be used for request cancellation. If
935// the context is nil a panic will occur. In the future the SDK may create
936// sub-contexts for http.Requests. See https://golang.org/pkg/context/
937// for more information on using Contexts.
938func (c *FraudDetector) DeleteBatchPredictionJobWithContext(ctx aws.Context, input *DeleteBatchPredictionJobInput, opts ...request.Option) (*DeleteBatchPredictionJobOutput, error) {
939	req, out := c.DeleteBatchPredictionJobRequest(input)
940	req.SetContext(ctx)
941	req.ApplyOptions(opts...)
942	return out, req.Send()
943}
944
945const opDeleteDetector = "DeleteDetector"
946
947// DeleteDetectorRequest generates a "aws/request.Request" representing the
948// client's request for the DeleteDetector operation. The "output" return
949// value will be populated with the request's response once the request completes
950// successfully.
951//
952// Use "Send" method on the returned Request to send the API call to the service.
953// the "output" return value is not valid until after Send returns without error.
954//
955// See DeleteDetector for more information on using the DeleteDetector
956// API call, and error handling.
957//
958// This method is useful when you want to inject custom logic or configuration
959// into the SDK's request lifecycle. Such as custom headers, or retry logic.
960//
961//
962//    // Example sending a request using the DeleteDetectorRequest method.
963//    req, resp := client.DeleteDetectorRequest(params)
964//
965//    err := req.Send()
966//    if err == nil { // resp is now filled
967//        fmt.Println(resp)
968//    }
969//
970// See also, https://docs.aws.amazon.com/goto/WebAPI/frauddetector-2019-11-15/DeleteDetector
971func (c *FraudDetector) DeleteDetectorRequest(input *DeleteDetectorInput) (req *request.Request, output *DeleteDetectorOutput) {
972	op := &request.Operation{
973		Name:       opDeleteDetector,
974		HTTPMethod: "POST",
975		HTTPPath:   "/",
976	}
977
978	if input == nil {
979		input = &DeleteDetectorInput{}
980	}
981
982	output = &DeleteDetectorOutput{}
983	req = c.newRequest(op, input, output)
984	req.Handlers.Unmarshal.Swap(jsonrpc.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler)
985	return
986}
987
988// DeleteDetector API operation for Amazon Fraud Detector.
989//
990// Deletes the detector. Before deleting a detector, you must first delete all
991// detector versions and rule versions associated with the detector.
992//
993// When you delete a detector, Amazon Fraud Detector permanently deletes the
994// detector and the data is no longer stored in Amazon Fraud Detector.
995//
996// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
997// with awserr.Error's Code and Message methods to get detailed information about
998// the error.
999//
1000// See the AWS API reference guide for Amazon Fraud Detector's
1001// API operation DeleteDetector for usage and error information.
1002//
1003// Returned Error Types:
1004//   * ConflictException
1005//   An exception indicating there was a conflict during a delete operation. The
1006//   following delete operations can cause a conflict exception:
1007//
1008//      * DeleteDetector: A conflict exception will occur if the detector has
1009//      associated Rules or DetectorVersions. You can only delete a detector if
1010//      it has no Rules or DetectorVersions.
1011//
1012//      * DeleteDetectorVersion: A conflict exception will occur if the DetectorVersion
1013//      status is ACTIVE.
1014//
1015//      * DeleteRule: A conflict exception will occur if the RuleVersion is in
1016//      use by an associated ACTIVE or INACTIVE DetectorVersion.
1017//
1018//   * ValidationException
1019//   An exception indicating a specified value is not allowed.
1020//
1021//   * InternalServerException
1022//   An exception indicating an internal server error.
1023//
1024//   * ThrottlingException
1025//   An exception indicating a throttling error.
1026//
1027//   * AccessDeniedException
1028//   An exception indicating Amazon Fraud Detector does not have the needed permissions.
1029//   This can occur if you submit a request, such as PutExternalModel, that specifies
1030//   a role that is not in your account.
1031//
1032// See also, https://docs.aws.amazon.com/goto/WebAPI/frauddetector-2019-11-15/DeleteDetector
1033func (c *FraudDetector) DeleteDetector(input *DeleteDetectorInput) (*DeleteDetectorOutput, error) {
1034	req, out := c.DeleteDetectorRequest(input)
1035	return out, req.Send()
1036}
1037
1038// DeleteDetectorWithContext is the same as DeleteDetector with the addition of
1039// the ability to pass a context and additional request options.
1040//
1041// See DeleteDetector for details on how to use this API operation.
1042//
1043// The context must be non-nil and will be used for request cancellation. If
1044// the context is nil a panic will occur. In the future the SDK may create
1045// sub-contexts for http.Requests. See https://golang.org/pkg/context/
1046// for more information on using Contexts.
1047func (c *FraudDetector) DeleteDetectorWithContext(ctx aws.Context, input *DeleteDetectorInput, opts ...request.Option) (*DeleteDetectorOutput, error) {
1048	req, out := c.DeleteDetectorRequest(input)
1049	req.SetContext(ctx)
1050	req.ApplyOptions(opts...)
1051	return out, req.Send()
1052}
1053
1054const opDeleteDetectorVersion = "DeleteDetectorVersion"
1055
1056// DeleteDetectorVersionRequest generates a "aws/request.Request" representing the
1057// client's request for the DeleteDetectorVersion operation. The "output" return
1058// value will be populated with the request's response once the request completes
1059// successfully.
1060//
1061// Use "Send" method on the returned Request to send the API call to the service.
1062// the "output" return value is not valid until after Send returns without error.
1063//
1064// See DeleteDetectorVersion for more information on using the DeleteDetectorVersion
1065// API call, and error handling.
1066//
1067// This method is useful when you want to inject custom logic or configuration
1068// into the SDK's request lifecycle. Such as custom headers, or retry logic.
1069//
1070//
1071//    // Example sending a request using the DeleteDetectorVersionRequest method.
1072//    req, resp := client.DeleteDetectorVersionRequest(params)
1073//
1074//    err := req.Send()
1075//    if err == nil { // resp is now filled
1076//        fmt.Println(resp)
1077//    }
1078//
1079// See also, https://docs.aws.amazon.com/goto/WebAPI/frauddetector-2019-11-15/DeleteDetectorVersion
1080func (c *FraudDetector) DeleteDetectorVersionRequest(input *DeleteDetectorVersionInput) (req *request.Request, output *DeleteDetectorVersionOutput) {
1081	op := &request.Operation{
1082		Name:       opDeleteDetectorVersion,
1083		HTTPMethod: "POST",
1084		HTTPPath:   "/",
1085	}
1086
1087	if input == nil {
1088		input = &DeleteDetectorVersionInput{}
1089	}
1090
1091	output = &DeleteDetectorVersionOutput{}
1092	req = c.newRequest(op, input, output)
1093	req.Handlers.Unmarshal.Swap(jsonrpc.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler)
1094	return
1095}
1096
1097// DeleteDetectorVersion API operation for Amazon Fraud Detector.
1098//
1099// Deletes the detector version. You cannot delete detector versions that are
1100// in ACTIVE status.
1101//
1102// When you delete a detector version, Amazon Fraud Detector permanently deletes
1103// the detector and the data is no longer stored in Amazon Fraud Detector.
1104//
1105// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
1106// with awserr.Error's Code and Message methods to get detailed information about
1107// the error.
1108//
1109// See the AWS API reference guide for Amazon Fraud Detector's
1110// API operation DeleteDetectorVersion for usage and error information.
1111//
1112// Returned Error Types:
1113//   * ValidationException
1114//   An exception indicating a specified value is not allowed.
1115//
1116//   * ResourceNotFoundException
1117//   An exception indicating the specified resource was not found. This can occur
1118//   if you submit a request, such as CreateBatchPredictionJob, but the detector
1119//   name or version does not exist.
1120//
1121//   * InternalServerException
1122//   An exception indicating an internal server error.
1123//
1124//   * ThrottlingException
1125//   An exception indicating a throttling error.
1126//
1127//   * ConflictException
1128//   An exception indicating there was a conflict during a delete operation. The
1129//   following delete operations can cause a conflict exception:
1130//
1131//      * DeleteDetector: A conflict exception will occur if the detector has
1132//      associated Rules or DetectorVersions. You can only delete a detector if
1133//      it has no Rules or DetectorVersions.
1134//
1135//      * DeleteDetectorVersion: A conflict exception will occur if the DetectorVersion
1136//      status is ACTIVE.
1137//
1138//      * DeleteRule: A conflict exception will occur if the RuleVersion is in
1139//      use by an associated ACTIVE or INACTIVE DetectorVersion.
1140//
1141//   * AccessDeniedException
1142//   An exception indicating Amazon Fraud Detector does not have the needed permissions.
1143//   This can occur if you submit a request, such as PutExternalModel, that specifies
1144//   a role that is not in your account.
1145//
1146// See also, https://docs.aws.amazon.com/goto/WebAPI/frauddetector-2019-11-15/DeleteDetectorVersion
1147func (c *FraudDetector) DeleteDetectorVersion(input *DeleteDetectorVersionInput) (*DeleteDetectorVersionOutput, error) {
1148	req, out := c.DeleteDetectorVersionRequest(input)
1149	return out, req.Send()
1150}
1151
1152// DeleteDetectorVersionWithContext is the same as DeleteDetectorVersion with the addition of
1153// the ability to pass a context and additional request options.
1154//
1155// See DeleteDetectorVersion for details on how to use this API operation.
1156//
1157// The context must be non-nil and will be used for request cancellation. If
1158// the context is nil a panic will occur. In the future the SDK may create
1159// sub-contexts for http.Requests. See https://golang.org/pkg/context/
1160// for more information on using Contexts.
1161func (c *FraudDetector) DeleteDetectorVersionWithContext(ctx aws.Context, input *DeleteDetectorVersionInput, opts ...request.Option) (*DeleteDetectorVersionOutput, error) {
1162	req, out := c.DeleteDetectorVersionRequest(input)
1163	req.SetContext(ctx)
1164	req.ApplyOptions(opts...)
1165	return out, req.Send()
1166}
1167
1168const opDeleteEntityType = "DeleteEntityType"
1169
1170// DeleteEntityTypeRequest generates a "aws/request.Request" representing the
1171// client's request for the DeleteEntityType operation. The "output" return
1172// value will be populated with the request's response once the request completes
1173// successfully.
1174//
1175// Use "Send" method on the returned Request to send the API call to the service.
1176// the "output" return value is not valid until after Send returns without error.
1177//
1178// See DeleteEntityType for more information on using the DeleteEntityType
1179// API call, and error handling.
1180//
1181// This method is useful when you want to inject custom logic or configuration
1182// into the SDK's request lifecycle. Such as custom headers, or retry logic.
1183//
1184//
1185//    // Example sending a request using the DeleteEntityTypeRequest method.
1186//    req, resp := client.DeleteEntityTypeRequest(params)
1187//
1188//    err := req.Send()
1189//    if err == nil { // resp is now filled
1190//        fmt.Println(resp)
1191//    }
1192//
1193// See also, https://docs.aws.amazon.com/goto/WebAPI/frauddetector-2019-11-15/DeleteEntityType
1194func (c *FraudDetector) DeleteEntityTypeRequest(input *DeleteEntityTypeInput) (req *request.Request, output *DeleteEntityTypeOutput) {
1195	op := &request.Operation{
1196		Name:       opDeleteEntityType,
1197		HTTPMethod: "POST",
1198		HTTPPath:   "/",
1199	}
1200
1201	if input == nil {
1202		input = &DeleteEntityTypeInput{}
1203	}
1204
1205	output = &DeleteEntityTypeOutput{}
1206	req = c.newRequest(op, input, output)
1207	req.Handlers.Unmarshal.Swap(jsonrpc.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler)
1208	return
1209}
1210
1211// DeleteEntityType API operation for Amazon Fraud Detector.
1212//
1213// Deletes an entity type.
1214//
1215// You cannot delete an entity type that is included in an event type.
1216//
1217// When you delete an entity type, Amazon Fraud Detector permanently deletes
1218// that entity type and the data is no longer stored in Amazon Fraud Detector.
1219//
1220// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
1221// with awserr.Error's Code and Message methods to get detailed information about
1222// the error.
1223//
1224// See the AWS API reference guide for Amazon Fraud Detector's
1225// API operation DeleteEntityType for usage and error information.
1226//
1227// Returned Error Types:
1228//   * ValidationException
1229//   An exception indicating a specified value is not allowed.
1230//
1231//   * ConflictException
1232//   An exception indicating there was a conflict during a delete operation. The
1233//   following delete operations can cause a conflict exception:
1234//
1235//      * DeleteDetector: A conflict exception will occur if the detector has
1236//      associated Rules or DetectorVersions. You can only delete a detector if
1237//      it has no Rules or DetectorVersions.
1238//
1239//      * DeleteDetectorVersion: A conflict exception will occur if the DetectorVersion
1240//      status is ACTIVE.
1241//
1242//      * DeleteRule: A conflict exception will occur if the RuleVersion is in
1243//      use by an associated ACTIVE or INACTIVE DetectorVersion.
1244//
1245//   * InternalServerException
1246//   An exception indicating an internal server error.
1247//
1248//   * ThrottlingException
1249//   An exception indicating a throttling error.
1250//
1251//   * AccessDeniedException
1252//   An exception indicating Amazon Fraud Detector does not have the needed permissions.
1253//   This can occur if you submit a request, such as PutExternalModel, that specifies
1254//   a role that is not in your account.
1255//
1256// See also, https://docs.aws.amazon.com/goto/WebAPI/frauddetector-2019-11-15/DeleteEntityType
1257func (c *FraudDetector) DeleteEntityType(input *DeleteEntityTypeInput) (*DeleteEntityTypeOutput, error) {
1258	req, out := c.DeleteEntityTypeRequest(input)
1259	return out, req.Send()
1260}
1261
1262// DeleteEntityTypeWithContext is the same as DeleteEntityType with the addition of
1263// the ability to pass a context and additional request options.
1264//
1265// See DeleteEntityType for details on how to use this API operation.
1266//
1267// The context must be non-nil and will be used for request cancellation. If
1268// the context is nil a panic will occur. In the future the SDK may create
1269// sub-contexts for http.Requests. See https://golang.org/pkg/context/
1270// for more information on using Contexts.
1271func (c *FraudDetector) DeleteEntityTypeWithContext(ctx aws.Context, input *DeleteEntityTypeInput, opts ...request.Option) (*DeleteEntityTypeOutput, error) {
1272	req, out := c.DeleteEntityTypeRequest(input)
1273	req.SetContext(ctx)
1274	req.ApplyOptions(opts...)
1275	return out, req.Send()
1276}
1277
1278const opDeleteEvent = "DeleteEvent"
1279
1280// DeleteEventRequest generates a "aws/request.Request" representing the
1281// client's request for the DeleteEvent operation. The "output" return
1282// value will be populated with the request's response once the request completes
1283// successfully.
1284//
1285// Use "Send" method on the returned Request to send the API call to the service.
1286// the "output" return value is not valid until after Send returns without error.
1287//
1288// See DeleteEvent for more information on using the DeleteEvent
1289// API call, and error handling.
1290//
1291// This method is useful when you want to inject custom logic or configuration
1292// into the SDK's request lifecycle. Such as custom headers, or retry logic.
1293//
1294//
1295//    // Example sending a request using the DeleteEventRequest method.
1296//    req, resp := client.DeleteEventRequest(params)
1297//
1298//    err := req.Send()
1299//    if err == nil { // resp is now filled
1300//        fmt.Println(resp)
1301//    }
1302//
1303// See also, https://docs.aws.amazon.com/goto/WebAPI/frauddetector-2019-11-15/DeleteEvent
1304func (c *FraudDetector) DeleteEventRequest(input *DeleteEventInput) (req *request.Request, output *DeleteEventOutput) {
1305	op := &request.Operation{
1306		Name:       opDeleteEvent,
1307		HTTPMethod: "POST",
1308		HTTPPath:   "/",
1309	}
1310
1311	if input == nil {
1312		input = &DeleteEventInput{}
1313	}
1314
1315	output = &DeleteEventOutput{}
1316	req = c.newRequest(op, input, output)
1317	req.Handlers.Unmarshal.Swap(jsonrpc.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler)
1318	return
1319}
1320
1321// DeleteEvent API operation for Amazon Fraud Detector.
1322//
1323// Deletes the specified event.
1324//
1325// When you delete an event, Amazon Fraud Detector permanently deletes that
1326// event and the event data is no longer stored in Amazon Fraud Detector.
1327//
1328// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
1329// with awserr.Error's Code and Message methods to get detailed information about
1330// the error.
1331//
1332// See the AWS API reference guide for Amazon Fraud Detector's
1333// API operation DeleteEvent for usage and error information.
1334//
1335// Returned Error Types:
1336//   * InternalServerException
1337//   An exception indicating an internal server error.
1338//
1339//   * ThrottlingException
1340//   An exception indicating a throttling error.
1341//
1342//   * AccessDeniedException
1343//   An exception indicating Amazon Fraud Detector does not have the needed permissions.
1344//   This can occur if you submit a request, such as PutExternalModel, that specifies
1345//   a role that is not in your account.
1346//
1347//   * ValidationException
1348//   An exception indicating a specified value is not allowed.
1349//
1350// See also, https://docs.aws.amazon.com/goto/WebAPI/frauddetector-2019-11-15/DeleteEvent
1351func (c *FraudDetector) DeleteEvent(input *DeleteEventInput) (*DeleteEventOutput, error) {
1352	req, out := c.DeleteEventRequest(input)
1353	return out, req.Send()
1354}
1355
1356// DeleteEventWithContext is the same as DeleteEvent with the addition of
1357// the ability to pass a context and additional request options.
1358//
1359// See DeleteEvent for details on how to use this API operation.
1360//
1361// The context must be non-nil and will be used for request cancellation. If
1362// the context is nil a panic will occur. In the future the SDK may create
1363// sub-contexts for http.Requests. See https://golang.org/pkg/context/
1364// for more information on using Contexts.
1365func (c *FraudDetector) DeleteEventWithContext(ctx aws.Context, input *DeleteEventInput, opts ...request.Option) (*DeleteEventOutput, error) {
1366	req, out := c.DeleteEventRequest(input)
1367	req.SetContext(ctx)
1368	req.ApplyOptions(opts...)
1369	return out, req.Send()
1370}
1371
1372const opDeleteEventType = "DeleteEventType"
1373
1374// DeleteEventTypeRequest generates a "aws/request.Request" representing the
1375// client's request for the DeleteEventType operation. The "output" return
1376// value will be populated with the request's response once the request completes
1377// successfully.
1378//
1379// Use "Send" method on the returned Request to send the API call to the service.
1380// the "output" return value is not valid until after Send returns without error.
1381//
1382// See DeleteEventType for more information on using the DeleteEventType
1383// API call, and error handling.
1384//
1385// This method is useful when you want to inject custom logic or configuration
1386// into the SDK's request lifecycle. Such as custom headers, or retry logic.
1387//
1388//
1389//    // Example sending a request using the DeleteEventTypeRequest method.
1390//    req, resp := client.DeleteEventTypeRequest(params)
1391//
1392//    err := req.Send()
1393//    if err == nil { // resp is now filled
1394//        fmt.Println(resp)
1395//    }
1396//
1397// See also, https://docs.aws.amazon.com/goto/WebAPI/frauddetector-2019-11-15/DeleteEventType
1398func (c *FraudDetector) DeleteEventTypeRequest(input *DeleteEventTypeInput) (req *request.Request, output *DeleteEventTypeOutput) {
1399	op := &request.Operation{
1400		Name:       opDeleteEventType,
1401		HTTPMethod: "POST",
1402		HTTPPath:   "/",
1403	}
1404
1405	if input == nil {
1406		input = &DeleteEventTypeInput{}
1407	}
1408
1409	output = &DeleteEventTypeOutput{}
1410	req = c.newRequest(op, input, output)
1411	req.Handlers.Unmarshal.Swap(jsonrpc.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler)
1412	return
1413}
1414
1415// DeleteEventType API operation for Amazon Fraud Detector.
1416//
1417// Deletes an event type.
1418//
1419// You cannot delete an event type that is used in a detector or a model.
1420//
1421// When you delete an entity type, Amazon Fraud Detector permanently deletes
1422// that entity type and the data is no longer stored in Amazon Fraud Detector.
1423//
1424// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
1425// with awserr.Error's Code and Message methods to get detailed information about
1426// the error.
1427//
1428// See the AWS API reference guide for Amazon Fraud Detector's
1429// API operation DeleteEventType for usage and error information.
1430//
1431// Returned Error Types:
1432//   * ConflictException
1433//   An exception indicating there was a conflict during a delete operation. The
1434//   following delete operations can cause a conflict exception:
1435//
1436//      * DeleteDetector: A conflict exception will occur if the detector has
1437//      associated Rules or DetectorVersions. You can only delete a detector if
1438//      it has no Rules or DetectorVersions.
1439//
1440//      * DeleteDetectorVersion: A conflict exception will occur if the DetectorVersion
1441//      status is ACTIVE.
1442//
1443//      * DeleteRule: A conflict exception will occur if the RuleVersion is in
1444//      use by an associated ACTIVE or INACTIVE DetectorVersion.
1445//
1446//   * ValidationException
1447//   An exception indicating a specified value is not allowed.
1448//
1449//   * InternalServerException
1450//   An exception indicating an internal server error.
1451//
1452//   * ThrottlingException
1453//   An exception indicating a throttling error.
1454//
1455//   * AccessDeniedException
1456//   An exception indicating Amazon Fraud Detector does not have the needed permissions.
1457//   This can occur if you submit a request, such as PutExternalModel, that specifies
1458//   a role that is not in your account.
1459//
1460// See also, https://docs.aws.amazon.com/goto/WebAPI/frauddetector-2019-11-15/DeleteEventType
1461func (c *FraudDetector) DeleteEventType(input *DeleteEventTypeInput) (*DeleteEventTypeOutput, error) {
1462	req, out := c.DeleteEventTypeRequest(input)
1463	return out, req.Send()
1464}
1465
1466// DeleteEventTypeWithContext is the same as DeleteEventType with the addition of
1467// the ability to pass a context and additional request options.
1468//
1469// See DeleteEventType for details on how to use this API operation.
1470//
1471// The context must be non-nil and will be used for request cancellation. If
1472// the context is nil a panic will occur. In the future the SDK may create
1473// sub-contexts for http.Requests. See https://golang.org/pkg/context/
1474// for more information on using Contexts.
1475func (c *FraudDetector) DeleteEventTypeWithContext(ctx aws.Context, input *DeleteEventTypeInput, opts ...request.Option) (*DeleteEventTypeOutput, error) {
1476	req, out := c.DeleteEventTypeRequest(input)
1477	req.SetContext(ctx)
1478	req.ApplyOptions(opts...)
1479	return out, req.Send()
1480}
1481
1482const opDeleteExternalModel = "DeleteExternalModel"
1483
1484// DeleteExternalModelRequest generates a "aws/request.Request" representing the
1485// client's request for the DeleteExternalModel operation. The "output" return
1486// value will be populated with the request's response once the request completes
1487// successfully.
1488//
1489// Use "Send" method on the returned Request to send the API call to the service.
1490// the "output" return value is not valid until after Send returns without error.
1491//
1492// See DeleteExternalModel for more information on using the DeleteExternalModel
1493// API call, and error handling.
1494//
1495// This method is useful when you want to inject custom logic or configuration
1496// into the SDK's request lifecycle. Such as custom headers, or retry logic.
1497//
1498//
1499//    // Example sending a request using the DeleteExternalModelRequest method.
1500//    req, resp := client.DeleteExternalModelRequest(params)
1501//
1502//    err := req.Send()
1503//    if err == nil { // resp is now filled
1504//        fmt.Println(resp)
1505//    }
1506//
1507// See also, https://docs.aws.amazon.com/goto/WebAPI/frauddetector-2019-11-15/DeleteExternalModel
1508func (c *FraudDetector) DeleteExternalModelRequest(input *DeleteExternalModelInput) (req *request.Request, output *DeleteExternalModelOutput) {
1509	op := &request.Operation{
1510		Name:       opDeleteExternalModel,
1511		HTTPMethod: "POST",
1512		HTTPPath:   "/",
1513	}
1514
1515	if input == nil {
1516		input = &DeleteExternalModelInput{}
1517	}
1518
1519	output = &DeleteExternalModelOutput{}
1520	req = c.newRequest(op, input, output)
1521	req.Handlers.Unmarshal.Swap(jsonrpc.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler)
1522	return
1523}
1524
1525// DeleteExternalModel API operation for Amazon Fraud Detector.
1526//
1527// Removes a SageMaker model from Amazon Fraud Detector.
1528//
1529// You can remove an Amazon SageMaker model if it is not associated with a detector
1530// version. Removing a SageMaker model disconnects it from Amazon Fraud Detector,
1531// but the model remains available in SageMaker.
1532//
1533// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
1534// with awserr.Error's Code and Message methods to get detailed information about
1535// the error.
1536//
1537// See the AWS API reference guide for Amazon Fraud Detector's
1538// API operation DeleteExternalModel for usage and error information.
1539//
1540// Returned Error Types:
1541//   * ValidationException
1542//   An exception indicating a specified value is not allowed.
1543//
1544//   * ConflictException
1545//   An exception indicating there was a conflict during a delete operation. The
1546//   following delete operations can cause a conflict exception:
1547//
1548//      * DeleteDetector: A conflict exception will occur if the detector has
1549//      associated Rules or DetectorVersions. You can only delete a detector if
1550//      it has no Rules or DetectorVersions.
1551//
1552//      * DeleteDetectorVersion: A conflict exception will occur if the DetectorVersion
1553//      status is ACTIVE.
1554//
1555//      * DeleteRule: A conflict exception will occur if the RuleVersion is in
1556//      use by an associated ACTIVE or INACTIVE DetectorVersion.
1557//
1558//   * InternalServerException
1559//   An exception indicating an internal server error.
1560//
1561//   * ThrottlingException
1562//   An exception indicating a throttling error.
1563//
1564//   * AccessDeniedException
1565//   An exception indicating Amazon Fraud Detector does not have the needed permissions.
1566//   This can occur if you submit a request, such as PutExternalModel, that specifies
1567//   a role that is not in your account.
1568//
1569// See also, https://docs.aws.amazon.com/goto/WebAPI/frauddetector-2019-11-15/DeleteExternalModel
1570func (c *FraudDetector) DeleteExternalModel(input *DeleteExternalModelInput) (*DeleteExternalModelOutput, error) {
1571	req, out := c.DeleteExternalModelRequest(input)
1572	return out, req.Send()
1573}
1574
1575// DeleteExternalModelWithContext is the same as DeleteExternalModel with the addition of
1576// the ability to pass a context and additional request options.
1577//
1578// See DeleteExternalModel for details on how to use this API operation.
1579//
1580// The context must be non-nil and will be used for request cancellation. If
1581// the context is nil a panic will occur. In the future the SDK may create
1582// sub-contexts for http.Requests. See https://golang.org/pkg/context/
1583// for more information on using Contexts.
1584func (c *FraudDetector) DeleteExternalModelWithContext(ctx aws.Context, input *DeleteExternalModelInput, opts ...request.Option) (*DeleteExternalModelOutput, error) {
1585	req, out := c.DeleteExternalModelRequest(input)
1586	req.SetContext(ctx)
1587	req.ApplyOptions(opts...)
1588	return out, req.Send()
1589}
1590
1591const opDeleteLabel = "DeleteLabel"
1592
1593// DeleteLabelRequest generates a "aws/request.Request" representing the
1594// client's request for the DeleteLabel operation. The "output" return
1595// value will be populated with the request's response once the request completes
1596// successfully.
1597//
1598// Use "Send" method on the returned Request to send the API call to the service.
1599// the "output" return value is not valid until after Send returns without error.
1600//
1601// See DeleteLabel for more information on using the DeleteLabel
1602// API call, and error handling.
1603//
1604// This method is useful when you want to inject custom logic or configuration
1605// into the SDK's request lifecycle. Such as custom headers, or retry logic.
1606//
1607//
1608//    // Example sending a request using the DeleteLabelRequest method.
1609//    req, resp := client.DeleteLabelRequest(params)
1610//
1611//    err := req.Send()
1612//    if err == nil { // resp is now filled
1613//        fmt.Println(resp)
1614//    }
1615//
1616// See also, https://docs.aws.amazon.com/goto/WebAPI/frauddetector-2019-11-15/DeleteLabel
1617func (c *FraudDetector) DeleteLabelRequest(input *DeleteLabelInput) (req *request.Request, output *DeleteLabelOutput) {
1618	op := &request.Operation{
1619		Name:       opDeleteLabel,
1620		HTTPMethod: "POST",
1621		HTTPPath:   "/",
1622	}
1623
1624	if input == nil {
1625		input = &DeleteLabelInput{}
1626	}
1627
1628	output = &DeleteLabelOutput{}
1629	req = c.newRequest(op, input, output)
1630	req.Handlers.Unmarshal.Swap(jsonrpc.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler)
1631	return
1632}
1633
1634// DeleteLabel API operation for Amazon Fraud Detector.
1635//
1636// Deletes a label.
1637//
1638// You cannot delete labels that are included in an event type in Amazon Fraud
1639// Detector.
1640//
1641// You cannot delete a label assigned to an event ID. You must first delete
1642// the relevant event ID.
1643//
1644// When you delete a label, Amazon Fraud Detector permanently deletes that label
1645// and the data is no longer stored in Amazon Fraud Detector.
1646//
1647// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
1648// with awserr.Error's Code and Message methods to get detailed information about
1649// the error.
1650//
1651// See the AWS API reference guide for Amazon Fraud Detector's
1652// API operation DeleteLabel for usage and error information.
1653//
1654// Returned Error Types:
1655//   * ValidationException
1656//   An exception indicating a specified value is not allowed.
1657//
1658//   * ConflictException
1659//   An exception indicating there was a conflict during a delete operation. The
1660//   following delete operations can cause a conflict exception:
1661//
1662//      * DeleteDetector: A conflict exception will occur if the detector has
1663//      associated Rules or DetectorVersions. You can only delete a detector if
1664//      it has no Rules or DetectorVersions.
1665//
1666//      * DeleteDetectorVersion: A conflict exception will occur if the DetectorVersion
1667//      status is ACTIVE.
1668//
1669//      * DeleteRule: A conflict exception will occur if the RuleVersion is in
1670//      use by an associated ACTIVE or INACTIVE DetectorVersion.
1671//
1672//   * ThrottlingException
1673//   An exception indicating a throttling error.
1674//
1675//   * InternalServerException
1676//   An exception indicating an internal server error.
1677//
1678// See also, https://docs.aws.amazon.com/goto/WebAPI/frauddetector-2019-11-15/DeleteLabel
1679func (c *FraudDetector) DeleteLabel(input *DeleteLabelInput) (*DeleteLabelOutput, error) {
1680	req, out := c.DeleteLabelRequest(input)
1681	return out, req.Send()
1682}
1683
1684// DeleteLabelWithContext is the same as DeleteLabel with the addition of
1685// the ability to pass a context and additional request options.
1686//
1687// See DeleteLabel for details on how to use this API operation.
1688//
1689// The context must be non-nil and will be used for request cancellation. If
1690// the context is nil a panic will occur. In the future the SDK may create
1691// sub-contexts for http.Requests. See https://golang.org/pkg/context/
1692// for more information on using Contexts.
1693func (c *FraudDetector) DeleteLabelWithContext(ctx aws.Context, input *DeleteLabelInput, opts ...request.Option) (*DeleteLabelOutput, error) {
1694	req, out := c.DeleteLabelRequest(input)
1695	req.SetContext(ctx)
1696	req.ApplyOptions(opts...)
1697	return out, req.Send()
1698}
1699
1700const opDeleteModel = "DeleteModel"
1701
1702// DeleteModelRequest generates a "aws/request.Request" representing the
1703// client's request for the DeleteModel operation. The "output" return
1704// value will be populated with the request's response once the request completes
1705// successfully.
1706//
1707// Use "Send" method on the returned Request to send the API call to the service.
1708// the "output" return value is not valid until after Send returns without error.
1709//
1710// See DeleteModel for more information on using the DeleteModel
1711// API call, and error handling.
1712//
1713// This method is useful when you want to inject custom logic or configuration
1714// into the SDK's request lifecycle. Such as custom headers, or retry logic.
1715//
1716//
1717//    // Example sending a request using the DeleteModelRequest method.
1718//    req, resp := client.DeleteModelRequest(params)
1719//
1720//    err := req.Send()
1721//    if err == nil { // resp is now filled
1722//        fmt.Println(resp)
1723//    }
1724//
1725// See also, https://docs.aws.amazon.com/goto/WebAPI/frauddetector-2019-11-15/DeleteModel
1726func (c *FraudDetector) DeleteModelRequest(input *DeleteModelInput) (req *request.Request, output *DeleteModelOutput) {
1727	op := &request.Operation{
1728		Name:       opDeleteModel,
1729		HTTPMethod: "POST",
1730		HTTPPath:   "/",
1731	}
1732
1733	if input == nil {
1734		input = &DeleteModelInput{}
1735	}
1736
1737	output = &DeleteModelOutput{}
1738	req = c.newRequest(op, input, output)
1739	req.Handlers.Unmarshal.Swap(jsonrpc.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler)
1740	return
1741}
1742
1743// DeleteModel API operation for Amazon Fraud Detector.
1744//
1745// Deletes a model.
1746//
1747// You can delete models and model versions in Amazon Fraud Detector, provided
1748// that they are not associated with a detector version.
1749//
1750// When you delete a model, Amazon Fraud Detector permanently deletes that model
1751// and the data is no longer stored in Amazon Fraud Detector.
1752//
1753// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
1754// with awserr.Error's Code and Message methods to get detailed information about
1755// the error.
1756//
1757// See the AWS API reference guide for Amazon Fraud Detector's
1758// API operation DeleteModel for usage and error information.
1759//
1760// Returned Error Types:
1761//   * ConflictException
1762//   An exception indicating there was a conflict during a delete operation. The
1763//   following delete operations can cause a conflict exception:
1764//
1765//      * DeleteDetector: A conflict exception will occur if the detector has
1766//      associated Rules or DetectorVersions. You can only delete a detector if
1767//      it has no Rules or DetectorVersions.
1768//
1769//      * DeleteDetectorVersion: A conflict exception will occur if the DetectorVersion
1770//      status is ACTIVE.
1771//
1772//      * DeleteRule: A conflict exception will occur if the RuleVersion is in
1773//      use by an associated ACTIVE or INACTIVE DetectorVersion.
1774//
1775//   * ValidationException
1776//   An exception indicating a specified value is not allowed.
1777//
1778//   * InternalServerException
1779//   An exception indicating an internal server error.
1780//
1781//   * ThrottlingException
1782//   An exception indicating a throttling error.
1783//
1784//   * AccessDeniedException
1785//   An exception indicating Amazon Fraud Detector does not have the needed permissions.
1786//   This can occur if you submit a request, such as PutExternalModel, that specifies
1787//   a role that is not in your account.
1788//
1789// See also, https://docs.aws.amazon.com/goto/WebAPI/frauddetector-2019-11-15/DeleteModel
1790func (c *FraudDetector) DeleteModel(input *DeleteModelInput) (*DeleteModelOutput, error) {
1791	req, out := c.DeleteModelRequest(input)
1792	return out, req.Send()
1793}
1794
1795// DeleteModelWithContext is the same as DeleteModel with the addition of
1796// the ability to pass a context and additional request options.
1797//
1798// See DeleteModel for details on how to use this API operation.
1799//
1800// The context must be non-nil and will be used for request cancellation. If
1801// the context is nil a panic will occur. In the future the SDK may create
1802// sub-contexts for http.Requests. See https://golang.org/pkg/context/
1803// for more information on using Contexts.
1804func (c *FraudDetector) DeleteModelWithContext(ctx aws.Context, input *DeleteModelInput, opts ...request.Option) (*DeleteModelOutput, error) {
1805	req, out := c.DeleteModelRequest(input)
1806	req.SetContext(ctx)
1807	req.ApplyOptions(opts...)
1808	return out, req.Send()
1809}
1810
1811const opDeleteModelVersion = "DeleteModelVersion"
1812
1813// DeleteModelVersionRequest generates a "aws/request.Request" representing the
1814// client's request for the DeleteModelVersion operation. The "output" return
1815// value will be populated with the request's response once the request completes
1816// successfully.
1817//
1818// Use "Send" method on the returned Request to send the API call to the service.
1819// the "output" return value is not valid until after Send returns without error.
1820//
1821// See DeleteModelVersion for more information on using the DeleteModelVersion
1822// API call, and error handling.
1823//
1824// This method is useful when you want to inject custom logic or configuration
1825// into the SDK's request lifecycle. Such as custom headers, or retry logic.
1826//
1827//
1828//    // Example sending a request using the DeleteModelVersionRequest method.
1829//    req, resp := client.DeleteModelVersionRequest(params)
1830//
1831//    err := req.Send()
1832//    if err == nil { // resp is now filled
1833//        fmt.Println(resp)
1834//    }
1835//
1836// See also, https://docs.aws.amazon.com/goto/WebAPI/frauddetector-2019-11-15/DeleteModelVersion
1837func (c *FraudDetector) DeleteModelVersionRequest(input *DeleteModelVersionInput) (req *request.Request, output *DeleteModelVersionOutput) {
1838	op := &request.Operation{
1839		Name:       opDeleteModelVersion,
1840		HTTPMethod: "POST",
1841		HTTPPath:   "/",
1842	}
1843
1844	if input == nil {
1845		input = &DeleteModelVersionInput{}
1846	}
1847
1848	output = &DeleteModelVersionOutput{}
1849	req = c.newRequest(op, input, output)
1850	req.Handlers.Unmarshal.Swap(jsonrpc.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler)
1851	return
1852}
1853
1854// DeleteModelVersion API operation for Amazon Fraud Detector.
1855//
1856// Deletes a model version.
1857//
1858// You can delete models and model versions in Amazon Fraud Detector, provided
1859// that they are not associated with a detector version.
1860//
1861// When you delete a model version, Amazon Fraud Detector permanently deletes
1862// that model version and the data is no longer stored in Amazon Fraud Detector.
1863//
1864// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
1865// with awserr.Error's Code and Message methods to get detailed information about
1866// the error.
1867//
1868// See the AWS API reference guide for Amazon Fraud Detector's
1869// API operation DeleteModelVersion for usage and error information.
1870//
1871// Returned Error Types:
1872//   * ValidationException
1873//   An exception indicating a specified value is not allowed.
1874//
1875//   * InternalServerException
1876//   An exception indicating an internal server error.
1877//
1878//   * AccessDeniedException
1879//   An exception indicating Amazon Fraud Detector does not have the needed permissions.
1880//   This can occur if you submit a request, such as PutExternalModel, that specifies
1881//   a role that is not in your account.
1882//
1883//   * ThrottlingException
1884//   An exception indicating a throttling error.
1885//
1886//   * ConflictException
1887//   An exception indicating there was a conflict during a delete operation. The
1888//   following delete operations can cause a conflict exception:
1889//
1890//      * DeleteDetector: A conflict exception will occur if the detector has
1891//      associated Rules or DetectorVersions. You can only delete a detector if
1892//      it has no Rules or DetectorVersions.
1893//
1894//      * DeleteDetectorVersion: A conflict exception will occur if the DetectorVersion
1895//      status is ACTIVE.
1896//
1897//      * DeleteRule: A conflict exception will occur if the RuleVersion is in
1898//      use by an associated ACTIVE or INACTIVE DetectorVersion.
1899//
1900// See also, https://docs.aws.amazon.com/goto/WebAPI/frauddetector-2019-11-15/DeleteModelVersion
1901func (c *FraudDetector) DeleteModelVersion(input *DeleteModelVersionInput) (*DeleteModelVersionOutput, error) {
1902	req, out := c.DeleteModelVersionRequest(input)
1903	return out, req.Send()
1904}
1905
1906// DeleteModelVersionWithContext is the same as DeleteModelVersion with the addition of
1907// the ability to pass a context and additional request options.
1908//
1909// See DeleteModelVersion for details on how to use this API operation.
1910//
1911// The context must be non-nil and will be used for request cancellation. If
1912// the context is nil a panic will occur. In the future the SDK may create
1913// sub-contexts for http.Requests. See https://golang.org/pkg/context/
1914// for more information on using Contexts.
1915func (c *FraudDetector) DeleteModelVersionWithContext(ctx aws.Context, input *DeleteModelVersionInput, opts ...request.Option) (*DeleteModelVersionOutput, error) {
1916	req, out := c.DeleteModelVersionRequest(input)
1917	req.SetContext(ctx)
1918	req.ApplyOptions(opts...)
1919	return out, req.Send()
1920}
1921
1922const opDeleteOutcome = "DeleteOutcome"
1923
1924// DeleteOutcomeRequest generates a "aws/request.Request" representing the
1925// client's request for the DeleteOutcome operation. The "output" return
1926// value will be populated with the request's response once the request completes
1927// successfully.
1928//
1929// Use "Send" method on the returned Request to send the API call to the service.
1930// the "output" return value is not valid until after Send returns without error.
1931//
1932// See DeleteOutcome for more information on using the DeleteOutcome
1933// API call, and error handling.
1934//
1935// This method is useful when you want to inject custom logic or configuration
1936// into the SDK's request lifecycle. Such as custom headers, or retry logic.
1937//
1938//
1939//    // Example sending a request using the DeleteOutcomeRequest method.
1940//    req, resp := client.DeleteOutcomeRequest(params)
1941//
1942//    err := req.Send()
1943//    if err == nil { // resp is now filled
1944//        fmt.Println(resp)
1945//    }
1946//
1947// See also, https://docs.aws.amazon.com/goto/WebAPI/frauddetector-2019-11-15/DeleteOutcome
1948func (c *FraudDetector) DeleteOutcomeRequest(input *DeleteOutcomeInput) (req *request.Request, output *DeleteOutcomeOutput) {
1949	op := &request.Operation{
1950		Name:       opDeleteOutcome,
1951		HTTPMethod: "POST",
1952		HTTPPath:   "/",
1953	}
1954
1955	if input == nil {
1956		input = &DeleteOutcomeInput{}
1957	}
1958
1959	output = &DeleteOutcomeOutput{}
1960	req = c.newRequest(op, input, output)
1961	req.Handlers.Unmarshal.Swap(jsonrpc.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler)
1962	return
1963}
1964
1965// DeleteOutcome API operation for Amazon Fraud Detector.
1966//
1967// Deletes an outcome.
1968//
1969// You cannot delete an outcome that is used in a rule version.
1970//
1971// When you delete an outcome, Amazon Fraud Detector permanently deletes that
1972// outcome and the data is no longer stored in Amazon Fraud Detector.
1973//
1974// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
1975// with awserr.Error's Code and Message methods to get detailed information about
1976// the error.
1977//
1978// See the AWS API reference guide for Amazon Fraud Detector's
1979// API operation DeleteOutcome for usage and error information.
1980//
1981// Returned Error Types:
1982//   * ValidationException
1983//   An exception indicating a specified value is not allowed.
1984//
1985//   * InternalServerException
1986//   An exception indicating an internal server error.
1987//
1988//   * ThrottlingException
1989//   An exception indicating a throttling error.
1990//
1991//   * ConflictException
1992//   An exception indicating there was a conflict during a delete operation. The
1993//   following delete operations can cause a conflict exception:
1994//
1995//      * DeleteDetector: A conflict exception will occur if the detector has
1996//      associated Rules or DetectorVersions. You can only delete a detector if
1997//      it has no Rules or DetectorVersions.
1998//
1999//      * DeleteDetectorVersion: A conflict exception will occur if the DetectorVersion
2000//      status is ACTIVE.
2001//
2002//      * DeleteRule: A conflict exception will occur if the RuleVersion is in
2003//      use by an associated ACTIVE or INACTIVE DetectorVersion.
2004//
2005//   * AccessDeniedException
2006//   An exception indicating Amazon Fraud Detector does not have the needed permissions.
2007//   This can occur if you submit a request, such as PutExternalModel, that specifies
2008//   a role that is not in your account.
2009//
2010// See also, https://docs.aws.amazon.com/goto/WebAPI/frauddetector-2019-11-15/DeleteOutcome
2011func (c *FraudDetector) DeleteOutcome(input *DeleteOutcomeInput) (*DeleteOutcomeOutput, error) {
2012	req, out := c.DeleteOutcomeRequest(input)
2013	return out, req.Send()
2014}
2015
2016// DeleteOutcomeWithContext is the same as DeleteOutcome with the addition of
2017// the ability to pass a context and additional request options.
2018//
2019// See DeleteOutcome for details on how to use this API operation.
2020//
2021// The context must be non-nil and will be used for request cancellation. If
2022// the context is nil a panic will occur. In the future the SDK may create
2023// sub-contexts for http.Requests. See https://golang.org/pkg/context/
2024// for more information on using Contexts.
2025func (c *FraudDetector) DeleteOutcomeWithContext(ctx aws.Context, input *DeleteOutcomeInput, opts ...request.Option) (*DeleteOutcomeOutput, error) {
2026	req, out := c.DeleteOutcomeRequest(input)
2027	req.SetContext(ctx)
2028	req.ApplyOptions(opts...)
2029	return out, req.Send()
2030}
2031
2032const opDeleteRule = "DeleteRule"
2033
2034// DeleteRuleRequest generates a "aws/request.Request" representing the
2035// client's request for the DeleteRule operation. The "output" return
2036// value will be populated with the request's response once the request completes
2037// successfully.
2038//
2039// Use "Send" method on the returned Request to send the API call to the service.
2040// the "output" return value is not valid until after Send returns without error.
2041//
2042// See DeleteRule for more information on using the DeleteRule
2043// API call, and error handling.
2044//
2045// This method is useful when you want to inject custom logic or configuration
2046// into the SDK's request lifecycle. Such as custom headers, or retry logic.
2047//
2048//
2049//    // Example sending a request using the DeleteRuleRequest method.
2050//    req, resp := client.DeleteRuleRequest(params)
2051//
2052//    err := req.Send()
2053//    if err == nil { // resp is now filled
2054//        fmt.Println(resp)
2055//    }
2056//
2057// See also, https://docs.aws.amazon.com/goto/WebAPI/frauddetector-2019-11-15/DeleteRule
2058func (c *FraudDetector) DeleteRuleRequest(input *DeleteRuleInput) (req *request.Request, output *DeleteRuleOutput) {
2059	op := &request.Operation{
2060		Name:       opDeleteRule,
2061		HTTPMethod: "POST",
2062		HTTPPath:   "/",
2063	}
2064
2065	if input == nil {
2066		input = &DeleteRuleInput{}
2067	}
2068
2069	output = &DeleteRuleOutput{}
2070	req = c.newRequest(op, input, output)
2071	req.Handlers.Unmarshal.Swap(jsonrpc.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler)
2072	return
2073}
2074
2075// DeleteRule API operation for Amazon Fraud Detector.
2076//
2077// Deletes the rule. You cannot delete a rule if it is used by an ACTIVE or
2078// INACTIVE detector version.
2079//
2080// When you delete a rule, Amazon Fraud Detector permanently deletes that rule
2081// and the data is no longer stored in Amazon Fraud Detector.
2082//
2083// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
2084// with awserr.Error's Code and Message methods to get detailed information about
2085// the error.
2086//
2087// See the AWS API reference guide for Amazon Fraud Detector's
2088// API operation DeleteRule for usage and error information.
2089//
2090// Returned Error Types:
2091//   * ConflictException
2092//   An exception indicating there was a conflict during a delete operation. The
2093//   following delete operations can cause a conflict exception:
2094//
2095//      * DeleteDetector: A conflict exception will occur if the detector has
2096//      associated Rules or DetectorVersions. You can only delete a detector if
2097//      it has no Rules or DetectorVersions.
2098//
2099//      * DeleteDetectorVersion: A conflict exception will occur if the DetectorVersion
2100//      status is ACTIVE.
2101//
2102//      * DeleteRule: A conflict exception will occur if the RuleVersion is in
2103//      use by an associated ACTIVE or INACTIVE DetectorVersion.
2104//
2105//   * ValidationException
2106//   An exception indicating a specified value is not allowed.
2107//
2108//   * InternalServerException
2109//   An exception indicating an internal server error.
2110//
2111//   * ThrottlingException
2112//   An exception indicating a throttling error.
2113//
2114//   * AccessDeniedException
2115//   An exception indicating Amazon Fraud Detector does not have the needed permissions.
2116//   This can occur if you submit a request, such as PutExternalModel, that specifies
2117//   a role that is not in your account.
2118//
2119// See also, https://docs.aws.amazon.com/goto/WebAPI/frauddetector-2019-11-15/DeleteRule
2120func (c *FraudDetector) DeleteRule(input *DeleteRuleInput) (*DeleteRuleOutput, error) {
2121	req, out := c.DeleteRuleRequest(input)
2122	return out, req.Send()
2123}
2124
2125// DeleteRuleWithContext is the same as DeleteRule with the addition of
2126// the ability to pass a context and additional request options.
2127//
2128// See DeleteRule for details on how to use this API operation.
2129//
2130// The context must be non-nil and will be used for request cancellation. If
2131// the context is nil a panic will occur. In the future the SDK may create
2132// sub-contexts for http.Requests. See https://golang.org/pkg/context/
2133// for more information on using Contexts.
2134func (c *FraudDetector) DeleteRuleWithContext(ctx aws.Context, input *DeleteRuleInput, opts ...request.Option) (*DeleteRuleOutput, error) {
2135	req, out := c.DeleteRuleRequest(input)
2136	req.SetContext(ctx)
2137	req.ApplyOptions(opts...)
2138	return out, req.Send()
2139}
2140
2141const opDeleteVariable = "DeleteVariable"
2142
2143// DeleteVariableRequest generates a "aws/request.Request" representing the
2144// client's request for the DeleteVariable operation. The "output" return
2145// value will be populated with the request's response once the request completes
2146// successfully.
2147//
2148// Use "Send" method on the returned Request to send the API call to the service.
2149// the "output" return value is not valid until after Send returns without error.
2150//
2151// See DeleteVariable for more information on using the DeleteVariable
2152// API call, and error handling.
2153//
2154// This method is useful when you want to inject custom logic or configuration
2155// into the SDK's request lifecycle. Such as custom headers, or retry logic.
2156//
2157//
2158//    // Example sending a request using the DeleteVariableRequest method.
2159//    req, resp := client.DeleteVariableRequest(params)
2160//
2161//    err := req.Send()
2162//    if err == nil { // resp is now filled
2163//        fmt.Println(resp)
2164//    }
2165//
2166// See also, https://docs.aws.amazon.com/goto/WebAPI/frauddetector-2019-11-15/DeleteVariable
2167func (c *FraudDetector) DeleteVariableRequest(input *DeleteVariableInput) (req *request.Request, output *DeleteVariableOutput) {
2168	op := &request.Operation{
2169		Name:       opDeleteVariable,
2170		HTTPMethod: "POST",
2171		HTTPPath:   "/",
2172	}
2173
2174	if input == nil {
2175		input = &DeleteVariableInput{}
2176	}
2177
2178	output = &DeleteVariableOutput{}
2179	req = c.newRequest(op, input, output)
2180	req.Handlers.Unmarshal.Swap(jsonrpc.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler)
2181	return
2182}
2183
2184// DeleteVariable API operation for Amazon Fraud Detector.
2185//
2186// Deletes a variable.
2187//
2188// You can't delete variables that are included in an event type in Amazon Fraud
2189// Detector.
2190//
2191// Amazon Fraud Detector automatically deletes model output variables and SageMaker
2192// model output variables when you delete the model. You can't delete these
2193// variables manually.
2194//
2195// When you delete a variable, Amazon Fraud Detector permanently deletes that
2196// variable and the data is no longer stored in Amazon Fraud Detector.
2197//
2198// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
2199// with awserr.Error's Code and Message methods to get detailed information about
2200// the error.
2201//
2202// See the AWS API reference guide for Amazon Fraud Detector's
2203// API operation DeleteVariable for usage and error information.
2204//
2205// Returned Error Types:
2206//   * ValidationException
2207//   An exception indicating a specified value is not allowed.
2208//
2209//   * ConflictException
2210//   An exception indicating there was a conflict during a delete operation. The
2211//   following delete operations can cause a conflict exception:
2212//
2213//      * DeleteDetector: A conflict exception will occur if the detector has
2214//      associated Rules or DetectorVersions. You can only delete a detector if
2215//      it has no Rules or DetectorVersions.
2216//
2217//      * DeleteDetectorVersion: A conflict exception will occur if the DetectorVersion
2218//      status is ACTIVE.
2219//
2220//      * DeleteRule: A conflict exception will occur if the RuleVersion is in
2221//      use by an associated ACTIVE or INACTIVE DetectorVersion.
2222//
2223//   * InternalServerException
2224//   An exception indicating an internal server error.
2225//
2226//   * ThrottlingException
2227//   An exception indicating a throttling error.
2228//
2229//   * AccessDeniedException
2230//   An exception indicating Amazon Fraud Detector does not have the needed permissions.
2231//   This can occur if you submit a request, such as PutExternalModel, that specifies
2232//   a role that is not in your account.
2233//
2234// See also, https://docs.aws.amazon.com/goto/WebAPI/frauddetector-2019-11-15/DeleteVariable
2235func (c *FraudDetector) DeleteVariable(input *DeleteVariableInput) (*DeleteVariableOutput, error) {
2236	req, out := c.DeleteVariableRequest(input)
2237	return out, req.Send()
2238}
2239
2240// DeleteVariableWithContext is the same as DeleteVariable with the addition of
2241// the ability to pass a context and additional request options.
2242//
2243// See DeleteVariable for details on how to use this API operation.
2244//
2245// The context must be non-nil and will be used for request cancellation. If
2246// the context is nil a panic will occur. In the future the SDK may create
2247// sub-contexts for http.Requests. See https://golang.org/pkg/context/
2248// for more information on using Contexts.
2249func (c *FraudDetector) DeleteVariableWithContext(ctx aws.Context, input *DeleteVariableInput, opts ...request.Option) (*DeleteVariableOutput, error) {
2250	req, out := c.DeleteVariableRequest(input)
2251	req.SetContext(ctx)
2252	req.ApplyOptions(opts...)
2253	return out, req.Send()
2254}
2255
2256const opDescribeDetector = "DescribeDetector"
2257
2258// DescribeDetectorRequest generates a "aws/request.Request" representing the
2259// client's request for the DescribeDetector operation. The "output" return
2260// value will be populated with the request's response once the request completes
2261// successfully.
2262//
2263// Use "Send" method on the returned Request to send the API call to the service.
2264// the "output" return value is not valid until after Send returns without error.
2265//
2266// See DescribeDetector for more information on using the DescribeDetector
2267// API call, and error handling.
2268//
2269// This method is useful when you want to inject custom logic or configuration
2270// into the SDK's request lifecycle. Such as custom headers, or retry logic.
2271//
2272//
2273//    // Example sending a request using the DescribeDetectorRequest method.
2274//    req, resp := client.DescribeDetectorRequest(params)
2275//
2276//    err := req.Send()
2277//    if err == nil { // resp is now filled
2278//        fmt.Println(resp)
2279//    }
2280//
2281// See also, https://docs.aws.amazon.com/goto/WebAPI/frauddetector-2019-11-15/DescribeDetector
2282func (c *FraudDetector) DescribeDetectorRequest(input *DescribeDetectorInput) (req *request.Request, output *DescribeDetectorOutput) {
2283	op := &request.Operation{
2284		Name:       opDescribeDetector,
2285		HTTPMethod: "POST",
2286		HTTPPath:   "/",
2287	}
2288
2289	if input == nil {
2290		input = &DescribeDetectorInput{}
2291	}
2292
2293	output = &DescribeDetectorOutput{}
2294	req = c.newRequest(op, input, output)
2295	return
2296}
2297
2298// DescribeDetector API operation for Amazon Fraud Detector.
2299//
2300// Gets all versions for a specified detector.
2301//
2302// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
2303// with awserr.Error's Code and Message methods to get detailed information about
2304// the error.
2305//
2306// See the AWS API reference guide for Amazon Fraud Detector's
2307// API operation DescribeDetector for usage and error information.
2308//
2309// Returned Error Types:
2310//   * ValidationException
2311//   An exception indicating a specified value is not allowed.
2312//
2313//   * ResourceNotFoundException
2314//   An exception indicating the specified resource was not found. This can occur
2315//   if you submit a request, such as CreateBatchPredictionJob, but the detector
2316//   name or version does not exist.
2317//
2318//   * InternalServerException
2319//   An exception indicating an internal server error.
2320//
2321//   * ThrottlingException
2322//   An exception indicating a throttling error.
2323//
2324//   * AccessDeniedException
2325//   An exception indicating Amazon Fraud Detector does not have the needed permissions.
2326//   This can occur if you submit a request, such as PutExternalModel, that specifies
2327//   a role that is not in your account.
2328//
2329// See also, https://docs.aws.amazon.com/goto/WebAPI/frauddetector-2019-11-15/DescribeDetector
2330func (c *FraudDetector) DescribeDetector(input *DescribeDetectorInput) (*DescribeDetectorOutput, error) {
2331	req, out := c.DescribeDetectorRequest(input)
2332	return out, req.Send()
2333}
2334
2335// DescribeDetectorWithContext is the same as DescribeDetector with the addition of
2336// the ability to pass a context and additional request options.
2337//
2338// See DescribeDetector for details on how to use this API operation.
2339//
2340// The context must be non-nil and will be used for request cancellation. If
2341// the context is nil a panic will occur. In the future the SDK may create
2342// sub-contexts for http.Requests. See https://golang.org/pkg/context/
2343// for more information on using Contexts.
2344func (c *FraudDetector) DescribeDetectorWithContext(ctx aws.Context, input *DescribeDetectorInput, opts ...request.Option) (*DescribeDetectorOutput, error) {
2345	req, out := c.DescribeDetectorRequest(input)
2346	req.SetContext(ctx)
2347	req.ApplyOptions(opts...)
2348	return out, req.Send()
2349}
2350
2351const opDescribeModelVersions = "DescribeModelVersions"
2352
2353// DescribeModelVersionsRequest generates a "aws/request.Request" representing the
2354// client's request for the DescribeModelVersions operation. The "output" return
2355// value will be populated with the request's response once the request completes
2356// successfully.
2357//
2358// Use "Send" method on the returned Request to send the API call to the service.
2359// the "output" return value is not valid until after Send returns without error.
2360//
2361// See DescribeModelVersions for more information on using the DescribeModelVersions
2362// API call, and error handling.
2363//
2364// This method is useful when you want to inject custom logic or configuration
2365// into the SDK's request lifecycle. Such as custom headers, or retry logic.
2366//
2367//
2368//    // Example sending a request using the DescribeModelVersionsRequest method.
2369//    req, resp := client.DescribeModelVersionsRequest(params)
2370//
2371//    err := req.Send()
2372//    if err == nil { // resp is now filled
2373//        fmt.Println(resp)
2374//    }
2375//
2376// See also, https://docs.aws.amazon.com/goto/WebAPI/frauddetector-2019-11-15/DescribeModelVersions
2377func (c *FraudDetector) DescribeModelVersionsRequest(input *DescribeModelVersionsInput) (req *request.Request, output *DescribeModelVersionsOutput) {
2378	op := &request.Operation{
2379		Name:       opDescribeModelVersions,
2380		HTTPMethod: "POST",
2381		HTTPPath:   "/",
2382		Paginator: &request.Paginator{
2383			InputTokens:     []string{"nextToken"},
2384			OutputTokens:    []string{"nextToken"},
2385			LimitToken:      "maxResults",
2386			TruncationToken: "",
2387		},
2388	}
2389
2390	if input == nil {
2391		input = &DescribeModelVersionsInput{}
2392	}
2393
2394	output = &DescribeModelVersionsOutput{}
2395	req = c.newRequest(op, input, output)
2396	return
2397}
2398
2399// DescribeModelVersions API operation for Amazon Fraud Detector.
2400//
2401// Gets all of the model versions for the specified model type or for the specified
2402// model type and model ID. You can also get details for a single, specified
2403// model version.
2404//
2405// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
2406// with awserr.Error's Code and Message methods to get detailed information about
2407// the error.
2408//
2409// See the AWS API reference guide for Amazon Fraud Detector's
2410// API operation DescribeModelVersions for usage and error information.
2411//
2412// Returned Error Types:
2413//   * ValidationException
2414//   An exception indicating a specified value is not allowed.
2415//
2416//   * ResourceNotFoundException
2417//   An exception indicating the specified resource was not found. This can occur
2418//   if you submit a request, such as CreateBatchPredictionJob, but the detector
2419//   name or version does not exist.
2420//
2421//   * InternalServerException
2422//   An exception indicating an internal server error.
2423//
2424//   * ThrottlingException
2425//   An exception indicating a throttling error.
2426//
2427//   * AccessDeniedException
2428//   An exception indicating Amazon Fraud Detector does not have the needed permissions.
2429//   This can occur if you submit a request, such as PutExternalModel, that specifies
2430//   a role that is not in your account.
2431//
2432// See also, https://docs.aws.amazon.com/goto/WebAPI/frauddetector-2019-11-15/DescribeModelVersions
2433func (c *FraudDetector) DescribeModelVersions(input *DescribeModelVersionsInput) (*DescribeModelVersionsOutput, error) {
2434	req, out := c.DescribeModelVersionsRequest(input)
2435	return out, req.Send()
2436}
2437
2438// DescribeModelVersionsWithContext is the same as DescribeModelVersions with the addition of
2439// the ability to pass a context and additional request options.
2440//
2441// See DescribeModelVersions for details on how to use this API operation.
2442//
2443// The context must be non-nil and will be used for request cancellation. If
2444// the context is nil a panic will occur. In the future the SDK may create
2445// sub-contexts for http.Requests. See https://golang.org/pkg/context/
2446// for more information on using Contexts.
2447func (c *FraudDetector) DescribeModelVersionsWithContext(ctx aws.Context, input *DescribeModelVersionsInput, opts ...request.Option) (*DescribeModelVersionsOutput, error) {
2448	req, out := c.DescribeModelVersionsRequest(input)
2449	req.SetContext(ctx)
2450	req.ApplyOptions(opts...)
2451	return out, req.Send()
2452}
2453
2454// DescribeModelVersionsPages iterates over the pages of a DescribeModelVersions operation,
2455// calling the "fn" function with the response data for each page. To stop
2456// iterating, return false from the fn function.
2457//
2458// See DescribeModelVersions method for more information on how to use this operation.
2459//
2460// Note: This operation can generate multiple requests to a service.
2461//
2462//    // Example iterating over at most 3 pages of a DescribeModelVersions operation.
2463//    pageNum := 0
2464//    err := client.DescribeModelVersionsPages(params,
2465//        func(page *frauddetector.DescribeModelVersionsOutput, lastPage bool) bool {
2466//            pageNum++
2467//            fmt.Println(page)
2468//            return pageNum <= 3
2469//        })
2470//
2471func (c *FraudDetector) DescribeModelVersionsPages(input *DescribeModelVersionsInput, fn func(*DescribeModelVersionsOutput, bool) bool) error {
2472	return c.DescribeModelVersionsPagesWithContext(aws.BackgroundContext(), input, fn)
2473}
2474
2475// DescribeModelVersionsPagesWithContext same as DescribeModelVersionsPages except
2476// it takes a Context and allows setting request options on the pages.
2477//
2478// The context must be non-nil and will be used for request cancellation. If
2479// the context is nil a panic will occur. In the future the SDK may create
2480// sub-contexts for http.Requests. See https://golang.org/pkg/context/
2481// for more information on using Contexts.
2482func (c *FraudDetector) DescribeModelVersionsPagesWithContext(ctx aws.Context, input *DescribeModelVersionsInput, fn func(*DescribeModelVersionsOutput, bool) bool, opts ...request.Option) error {
2483	p := request.Pagination{
2484		NewRequest: func() (*request.Request, error) {
2485			var inCpy *DescribeModelVersionsInput
2486			if input != nil {
2487				tmp := *input
2488				inCpy = &tmp
2489			}
2490			req, _ := c.DescribeModelVersionsRequest(inCpy)
2491			req.SetContext(ctx)
2492			req.ApplyOptions(opts...)
2493			return req, nil
2494		},
2495	}
2496
2497	for p.Next() {
2498		if !fn(p.Page().(*DescribeModelVersionsOutput), !p.HasNextPage()) {
2499			break
2500		}
2501	}
2502
2503	return p.Err()
2504}
2505
2506const opGetBatchPredictionJobs = "GetBatchPredictionJobs"
2507
2508// GetBatchPredictionJobsRequest generates a "aws/request.Request" representing the
2509// client's request for the GetBatchPredictionJobs operation. The "output" return
2510// value will be populated with the request's response once the request completes
2511// successfully.
2512//
2513// Use "Send" method on the returned Request to send the API call to the service.
2514// the "output" return value is not valid until after Send returns without error.
2515//
2516// See GetBatchPredictionJobs for more information on using the GetBatchPredictionJobs
2517// API call, and error handling.
2518//
2519// This method is useful when you want to inject custom logic or configuration
2520// into the SDK's request lifecycle. Such as custom headers, or retry logic.
2521//
2522//
2523//    // Example sending a request using the GetBatchPredictionJobsRequest method.
2524//    req, resp := client.GetBatchPredictionJobsRequest(params)
2525//
2526//    err := req.Send()
2527//    if err == nil { // resp is now filled
2528//        fmt.Println(resp)
2529//    }
2530//
2531// See also, https://docs.aws.amazon.com/goto/WebAPI/frauddetector-2019-11-15/GetBatchPredictionJobs
2532func (c *FraudDetector) GetBatchPredictionJobsRequest(input *GetBatchPredictionJobsInput) (req *request.Request, output *GetBatchPredictionJobsOutput) {
2533	op := &request.Operation{
2534		Name:       opGetBatchPredictionJobs,
2535		HTTPMethod: "POST",
2536		HTTPPath:   "/",
2537		Paginator: &request.Paginator{
2538			InputTokens:     []string{"nextToken"},
2539			OutputTokens:    []string{"nextToken"},
2540			LimitToken:      "maxResults",
2541			TruncationToken: "",
2542		},
2543	}
2544
2545	if input == nil {
2546		input = &GetBatchPredictionJobsInput{}
2547	}
2548
2549	output = &GetBatchPredictionJobsOutput{}
2550	req = c.newRequest(op, input, output)
2551	return
2552}
2553
2554// GetBatchPredictionJobs API operation for Amazon Fraud Detector.
2555//
2556// Gets all batch prediction jobs or a specific job if you specify a job ID.
2557// This is a paginated API. If you provide a null maxResults, this action retrieves
2558// a maximum of 50 records per page. If you provide a maxResults, the value
2559// must be between 1 and 50. To get the next page results, provide the pagination
2560// token from the GetBatchPredictionJobsResponse as part of your request. A
2561// null pagination token fetches the records from the beginning.
2562//
2563// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
2564// with awserr.Error's Code and Message methods to get detailed information about
2565// the error.
2566//
2567// See the AWS API reference guide for Amazon Fraud Detector's
2568// API operation GetBatchPredictionJobs for usage and error information.
2569//
2570// Returned Error Types:
2571//   * ValidationException
2572//   An exception indicating a specified value is not allowed.
2573//
2574//   * ResourceNotFoundException
2575//   An exception indicating the specified resource was not found. This can occur
2576//   if you submit a request, such as CreateBatchPredictionJob, but the detector
2577//   name or version does not exist.
2578//
2579//   * InternalServerException
2580//   An exception indicating an internal server error.
2581//
2582//   * ThrottlingException
2583//   An exception indicating a throttling error.
2584//
2585//   * AccessDeniedException
2586//   An exception indicating Amazon Fraud Detector does not have the needed permissions.
2587//   This can occur if you submit a request, such as PutExternalModel, that specifies
2588//   a role that is not in your account.
2589//
2590// See also, https://docs.aws.amazon.com/goto/WebAPI/frauddetector-2019-11-15/GetBatchPredictionJobs
2591func (c *FraudDetector) GetBatchPredictionJobs(input *GetBatchPredictionJobsInput) (*GetBatchPredictionJobsOutput, error) {
2592	req, out := c.GetBatchPredictionJobsRequest(input)
2593	return out, req.Send()
2594}
2595
2596// GetBatchPredictionJobsWithContext is the same as GetBatchPredictionJobs with the addition of
2597// the ability to pass a context and additional request options.
2598//
2599// See GetBatchPredictionJobs for details on how to use this API operation.
2600//
2601// The context must be non-nil and will be used for request cancellation. If
2602// the context is nil a panic will occur. In the future the SDK may create
2603// sub-contexts for http.Requests. See https://golang.org/pkg/context/
2604// for more information on using Contexts.
2605func (c *FraudDetector) GetBatchPredictionJobsWithContext(ctx aws.Context, input *GetBatchPredictionJobsInput, opts ...request.Option) (*GetBatchPredictionJobsOutput, error) {
2606	req, out := c.GetBatchPredictionJobsRequest(input)
2607	req.SetContext(ctx)
2608	req.ApplyOptions(opts...)
2609	return out, req.Send()
2610}
2611
2612// GetBatchPredictionJobsPages iterates over the pages of a GetBatchPredictionJobs operation,
2613// calling the "fn" function with the response data for each page. To stop
2614// iterating, return false from the fn function.
2615//
2616// See GetBatchPredictionJobs method for more information on how to use this operation.
2617//
2618// Note: This operation can generate multiple requests to a service.
2619//
2620//    // Example iterating over at most 3 pages of a GetBatchPredictionJobs operation.
2621//    pageNum := 0
2622//    err := client.GetBatchPredictionJobsPages(params,
2623//        func(page *frauddetector.GetBatchPredictionJobsOutput, lastPage bool) bool {
2624//            pageNum++
2625//            fmt.Println(page)
2626//            return pageNum <= 3
2627//        })
2628//
2629func (c *FraudDetector) GetBatchPredictionJobsPages(input *GetBatchPredictionJobsInput, fn func(*GetBatchPredictionJobsOutput, bool) bool) error {
2630	return c.GetBatchPredictionJobsPagesWithContext(aws.BackgroundContext(), input, fn)
2631}
2632
2633// GetBatchPredictionJobsPagesWithContext same as GetBatchPredictionJobsPages except
2634// it takes a Context and allows setting request options on the pages.
2635//
2636// The context must be non-nil and will be used for request cancellation. If
2637// the context is nil a panic will occur. In the future the SDK may create
2638// sub-contexts for http.Requests. See https://golang.org/pkg/context/
2639// for more information on using Contexts.
2640func (c *FraudDetector) GetBatchPredictionJobsPagesWithContext(ctx aws.Context, input *GetBatchPredictionJobsInput, fn func(*GetBatchPredictionJobsOutput, bool) bool, opts ...request.Option) error {
2641	p := request.Pagination{
2642		NewRequest: func() (*request.Request, error) {
2643			var inCpy *GetBatchPredictionJobsInput
2644			if input != nil {
2645				tmp := *input
2646				inCpy = &tmp
2647			}
2648			req, _ := c.GetBatchPredictionJobsRequest(inCpy)
2649			req.SetContext(ctx)
2650			req.ApplyOptions(opts...)
2651			return req, nil
2652		},
2653	}
2654
2655	for p.Next() {
2656		if !fn(p.Page().(*GetBatchPredictionJobsOutput), !p.HasNextPage()) {
2657			break
2658		}
2659	}
2660
2661	return p.Err()
2662}
2663
2664const opGetDetectorVersion = "GetDetectorVersion"
2665
2666// GetDetectorVersionRequest generates a "aws/request.Request" representing the
2667// client's request for the GetDetectorVersion operation. The "output" return
2668// value will be populated with the request's response once the request completes
2669// successfully.
2670//
2671// Use "Send" method on the returned Request to send the API call to the service.
2672// the "output" return value is not valid until after Send returns without error.
2673//
2674// See GetDetectorVersion for more information on using the GetDetectorVersion
2675// API call, and error handling.
2676//
2677// This method is useful when you want to inject custom logic or configuration
2678// into the SDK's request lifecycle. Such as custom headers, or retry logic.
2679//
2680//
2681//    // Example sending a request using the GetDetectorVersionRequest method.
2682//    req, resp := client.GetDetectorVersionRequest(params)
2683//
2684//    err := req.Send()
2685//    if err == nil { // resp is now filled
2686//        fmt.Println(resp)
2687//    }
2688//
2689// See also, https://docs.aws.amazon.com/goto/WebAPI/frauddetector-2019-11-15/GetDetectorVersion
2690func (c *FraudDetector) GetDetectorVersionRequest(input *GetDetectorVersionInput) (req *request.Request, output *GetDetectorVersionOutput) {
2691	op := &request.Operation{
2692		Name:       opGetDetectorVersion,
2693		HTTPMethod: "POST",
2694		HTTPPath:   "/",
2695	}
2696
2697	if input == nil {
2698		input = &GetDetectorVersionInput{}
2699	}
2700
2701	output = &GetDetectorVersionOutput{}
2702	req = c.newRequest(op, input, output)
2703	return
2704}
2705
2706// GetDetectorVersion API operation for Amazon Fraud Detector.
2707//
2708// Gets a particular detector version.
2709//
2710// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
2711// with awserr.Error's Code and Message methods to get detailed information about
2712// the error.
2713//
2714// See the AWS API reference guide for Amazon Fraud Detector's
2715// API operation GetDetectorVersion for usage and error information.
2716//
2717// Returned Error Types:
2718//   * ValidationException
2719//   An exception indicating a specified value is not allowed.
2720//
2721//   * ResourceNotFoundException
2722//   An exception indicating the specified resource was not found. This can occur
2723//   if you submit a request, such as CreateBatchPredictionJob, but the detector
2724//   name or version does not exist.
2725//
2726//   * InternalServerException
2727//   An exception indicating an internal server error.
2728//
2729//   * ThrottlingException
2730//   An exception indicating a throttling error.
2731//
2732//   * AccessDeniedException
2733//   An exception indicating Amazon Fraud Detector does not have the needed permissions.
2734//   This can occur if you submit a request, such as PutExternalModel, that specifies
2735//   a role that is not in your account.
2736//
2737// See also, https://docs.aws.amazon.com/goto/WebAPI/frauddetector-2019-11-15/GetDetectorVersion
2738func (c *FraudDetector) GetDetectorVersion(input *GetDetectorVersionInput) (*GetDetectorVersionOutput, error) {
2739	req, out := c.GetDetectorVersionRequest(input)
2740	return out, req.Send()
2741}
2742
2743// GetDetectorVersionWithContext is the same as GetDetectorVersion with the addition of
2744// the ability to pass a context and additional request options.
2745//
2746// See GetDetectorVersion for details on how to use this API operation.
2747//
2748// The context must be non-nil and will be used for request cancellation. If
2749// the context is nil a panic will occur. In the future the SDK may create
2750// sub-contexts for http.Requests. See https://golang.org/pkg/context/
2751// for more information on using Contexts.
2752func (c *FraudDetector) GetDetectorVersionWithContext(ctx aws.Context, input *GetDetectorVersionInput, opts ...request.Option) (*GetDetectorVersionOutput, error) {
2753	req, out := c.GetDetectorVersionRequest(input)
2754	req.SetContext(ctx)
2755	req.ApplyOptions(opts...)
2756	return out, req.Send()
2757}
2758
2759const opGetDetectors = "GetDetectors"
2760
2761// GetDetectorsRequest generates a "aws/request.Request" representing the
2762// client's request for the GetDetectors operation. The "output" return
2763// value will be populated with the request's response once the request completes
2764// successfully.
2765//
2766// Use "Send" method on the returned Request to send the API call to the service.
2767// the "output" return value is not valid until after Send returns without error.
2768//
2769// See GetDetectors for more information on using the GetDetectors
2770// API call, and error handling.
2771//
2772// This method is useful when you want to inject custom logic or configuration
2773// into the SDK's request lifecycle. Such as custom headers, or retry logic.
2774//
2775//
2776//    // Example sending a request using the GetDetectorsRequest method.
2777//    req, resp := client.GetDetectorsRequest(params)
2778//
2779//    err := req.Send()
2780//    if err == nil { // resp is now filled
2781//        fmt.Println(resp)
2782//    }
2783//
2784// See also, https://docs.aws.amazon.com/goto/WebAPI/frauddetector-2019-11-15/GetDetectors
2785func (c *FraudDetector) GetDetectorsRequest(input *GetDetectorsInput) (req *request.Request, output *GetDetectorsOutput) {
2786	op := &request.Operation{
2787		Name:       opGetDetectors,
2788		HTTPMethod: "POST",
2789		HTTPPath:   "/",
2790		Paginator: &request.Paginator{
2791			InputTokens:     []string{"nextToken"},
2792			OutputTokens:    []string{"nextToken"},
2793			LimitToken:      "maxResults",
2794			TruncationToken: "",
2795		},
2796	}
2797
2798	if input == nil {
2799		input = &GetDetectorsInput{}
2800	}
2801
2802	output = &GetDetectorsOutput{}
2803	req = c.newRequest(op, input, output)
2804	return
2805}
2806
2807// GetDetectors API operation for Amazon Fraud Detector.
2808//
2809// Gets all detectors or a single detector if a detectorId is specified. This
2810// is a paginated API. If you provide a null maxResults, this action retrieves
2811// a maximum of 10 records per page. If you provide a maxResults, the value
2812// must be between 5 and 10. To get the next page results, provide the pagination
2813// token from the GetDetectorsResponse as part of your request. A null pagination
2814// token fetches the records from the beginning.
2815//
2816// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
2817// with awserr.Error's Code and Message methods to get detailed information about
2818// the error.
2819//
2820// See the AWS API reference guide for Amazon Fraud Detector's
2821// API operation GetDetectors for usage and error information.
2822//
2823// Returned Error Types:
2824//   * ValidationException
2825//   An exception indicating a specified value is not allowed.
2826//
2827//   * ResourceNotFoundException
2828//   An exception indicating the specified resource was not found. This can occur
2829//   if you submit a request, such as CreateBatchPredictionJob, but the detector
2830//   name or version does not exist.
2831//
2832//   * InternalServerException
2833//   An exception indicating an internal server error.
2834//
2835//   * ThrottlingException
2836//   An exception indicating a throttling error.
2837//
2838//   * AccessDeniedException
2839//   An exception indicating Amazon Fraud Detector does not have the needed permissions.
2840//   This can occur if you submit a request, such as PutExternalModel, that specifies
2841//   a role that is not in your account.
2842//
2843// See also, https://docs.aws.amazon.com/goto/WebAPI/frauddetector-2019-11-15/GetDetectors
2844func (c *FraudDetector) GetDetectors(input *GetDetectorsInput) (*GetDetectorsOutput, error) {
2845	req, out := c.GetDetectorsRequest(input)
2846	return out, req.Send()
2847}
2848
2849// GetDetectorsWithContext is the same as GetDetectors with the addition of
2850// the ability to pass a context and additional request options.
2851//
2852// See GetDetectors for details on how to use this API operation.
2853//
2854// The context must be non-nil and will be used for request cancellation. If
2855// the context is nil a panic will occur. In the future the SDK may create
2856// sub-contexts for http.Requests. See https://golang.org/pkg/context/
2857// for more information on using Contexts.
2858func (c *FraudDetector) GetDetectorsWithContext(ctx aws.Context, input *GetDetectorsInput, opts ...request.Option) (*GetDetectorsOutput, error) {
2859	req, out := c.GetDetectorsRequest(input)
2860	req.SetContext(ctx)
2861	req.ApplyOptions(opts...)
2862	return out, req.Send()
2863}
2864
2865// GetDetectorsPages iterates over the pages of a GetDetectors operation,
2866// calling the "fn" function with the response data for each page. To stop
2867// iterating, return false from the fn function.
2868//
2869// See GetDetectors method for more information on how to use this operation.
2870//
2871// Note: This operation can generate multiple requests to a service.
2872//
2873//    // Example iterating over at most 3 pages of a GetDetectors operation.
2874//    pageNum := 0
2875//    err := client.GetDetectorsPages(params,
2876//        func(page *frauddetector.GetDetectorsOutput, lastPage bool) bool {
2877//            pageNum++
2878//            fmt.Println(page)
2879//            return pageNum <= 3
2880//        })
2881//
2882func (c *FraudDetector) GetDetectorsPages(input *GetDetectorsInput, fn func(*GetDetectorsOutput, bool) bool) error {
2883	return c.GetDetectorsPagesWithContext(aws.BackgroundContext(), input, fn)
2884}
2885
2886// GetDetectorsPagesWithContext same as GetDetectorsPages except
2887// it takes a Context and allows setting request options on the pages.
2888//
2889// The context must be non-nil and will be used for request cancellation. If
2890// the context is nil a panic will occur. In the future the SDK may create
2891// sub-contexts for http.Requests. See https://golang.org/pkg/context/
2892// for more information on using Contexts.
2893func (c *FraudDetector) GetDetectorsPagesWithContext(ctx aws.Context, input *GetDetectorsInput, fn func(*GetDetectorsOutput, bool) bool, opts ...request.Option) error {
2894	p := request.Pagination{
2895		NewRequest: func() (*request.Request, error) {
2896			var inCpy *GetDetectorsInput
2897			if input != nil {
2898				tmp := *input
2899				inCpy = &tmp
2900			}
2901			req, _ := c.GetDetectorsRequest(inCpy)
2902			req.SetContext(ctx)
2903			req.ApplyOptions(opts...)
2904			return req, nil
2905		},
2906	}
2907
2908	for p.Next() {
2909		if !fn(p.Page().(*GetDetectorsOutput), !p.HasNextPage()) {
2910			break
2911		}
2912	}
2913
2914	return p.Err()
2915}
2916
2917const opGetEntityTypes = "GetEntityTypes"
2918
2919// GetEntityTypesRequest generates a "aws/request.Request" representing the
2920// client's request for the GetEntityTypes operation. The "output" return
2921// value will be populated with the request's response once the request completes
2922// successfully.
2923//
2924// Use "Send" method on the returned Request to send the API call to the service.
2925// the "output" return value is not valid until after Send returns without error.
2926//
2927// See GetEntityTypes for more information on using the GetEntityTypes
2928// API call, and error handling.
2929//
2930// This method is useful when you want to inject custom logic or configuration
2931// into the SDK's request lifecycle. Such as custom headers, or retry logic.
2932//
2933//
2934//    // Example sending a request using the GetEntityTypesRequest method.
2935//    req, resp := client.GetEntityTypesRequest(params)
2936//
2937//    err := req.Send()
2938//    if err == nil { // resp is now filled
2939//        fmt.Println(resp)
2940//    }
2941//
2942// See also, https://docs.aws.amazon.com/goto/WebAPI/frauddetector-2019-11-15/GetEntityTypes
2943func (c *FraudDetector) GetEntityTypesRequest(input *GetEntityTypesInput) (req *request.Request, output *GetEntityTypesOutput) {
2944	op := &request.Operation{
2945		Name:       opGetEntityTypes,
2946		HTTPMethod: "POST",
2947		HTTPPath:   "/",
2948		Paginator: &request.Paginator{
2949			InputTokens:     []string{"nextToken"},
2950			OutputTokens:    []string{"nextToken"},
2951			LimitToken:      "maxResults",
2952			TruncationToken: "",
2953		},
2954	}
2955
2956	if input == nil {
2957		input = &GetEntityTypesInput{}
2958	}
2959
2960	output = &GetEntityTypesOutput{}
2961	req = c.newRequest(op, input, output)
2962	return
2963}
2964
2965// GetEntityTypes API operation for Amazon Fraud Detector.
2966//
2967// Gets all entity types or a specific entity type if a name is specified. This
2968// is a paginated API. If you provide a null maxResults, this action retrieves
2969// a maximum of 10 records per page. If you provide a maxResults, the value
2970// must be between 5 and 10. To get the next page results, provide the pagination
2971// token from the GetEntityTypesResponse as part of your request. A null pagination
2972// token fetches the records from the beginning.
2973//
2974// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
2975// with awserr.Error's Code and Message methods to get detailed information about
2976// the error.
2977//
2978// See the AWS API reference guide for Amazon Fraud Detector's
2979// API operation GetEntityTypes for usage and error information.
2980//
2981// Returned Error Types:
2982//   * ValidationException
2983//   An exception indicating a specified value is not allowed.
2984//
2985//   * ResourceNotFoundException
2986//   An exception indicating the specified resource was not found. This can occur
2987//   if you submit a request, such as CreateBatchPredictionJob, but the detector
2988//   name or version does not exist.
2989//
2990//   * InternalServerException
2991//   An exception indicating an internal server error.
2992//
2993//   * ThrottlingException
2994//   An exception indicating a throttling error.
2995//
2996//   * AccessDeniedException
2997//   An exception indicating Amazon Fraud Detector does not have the needed permissions.
2998//   This can occur if you submit a request, such as PutExternalModel, that specifies
2999//   a role that is not in your account.
3000//
3001// See also, https://docs.aws.amazon.com/goto/WebAPI/frauddetector-2019-11-15/GetEntityTypes
3002func (c *FraudDetector) GetEntityTypes(input *GetEntityTypesInput) (*GetEntityTypesOutput, error) {
3003	req, out := c.GetEntityTypesRequest(input)
3004	return out, req.Send()
3005}
3006
3007// GetEntityTypesWithContext is the same as GetEntityTypes with the addition of
3008// the ability to pass a context and additional request options.
3009//
3010// See GetEntityTypes for details on how to use this API operation.
3011//
3012// The context must be non-nil and will be used for request cancellation. If
3013// the context is nil a panic will occur. In the future the SDK may create
3014// sub-contexts for http.Requests. See https://golang.org/pkg/context/
3015// for more information on using Contexts.
3016func (c *FraudDetector) GetEntityTypesWithContext(ctx aws.Context, input *GetEntityTypesInput, opts ...request.Option) (*GetEntityTypesOutput, error) {
3017	req, out := c.GetEntityTypesRequest(input)
3018	req.SetContext(ctx)
3019	req.ApplyOptions(opts...)
3020	return out, req.Send()
3021}
3022
3023// GetEntityTypesPages iterates over the pages of a GetEntityTypes operation,
3024// calling the "fn" function with the response data for each page. To stop
3025// iterating, return false from the fn function.
3026//
3027// See GetEntityTypes method for more information on how to use this operation.
3028//
3029// Note: This operation can generate multiple requests to a service.
3030//
3031//    // Example iterating over at most 3 pages of a GetEntityTypes operation.
3032//    pageNum := 0
3033//    err := client.GetEntityTypesPages(params,
3034//        func(page *frauddetector.GetEntityTypesOutput, lastPage bool) bool {
3035//            pageNum++
3036//            fmt.Println(page)
3037//            return pageNum <= 3
3038//        })
3039//
3040func (c *FraudDetector) GetEntityTypesPages(input *GetEntityTypesInput, fn func(*GetEntityTypesOutput, bool) bool) error {
3041	return c.GetEntityTypesPagesWithContext(aws.BackgroundContext(), input, fn)
3042}
3043
3044// GetEntityTypesPagesWithContext same as GetEntityTypesPages except
3045// it takes a Context and allows setting request options on the pages.
3046//
3047// The context must be non-nil and will be used for request cancellation. If
3048// the context is nil a panic will occur. In the future the SDK may create
3049// sub-contexts for http.Requests. See https://golang.org/pkg/context/
3050// for more information on using Contexts.
3051func (c *FraudDetector) GetEntityTypesPagesWithContext(ctx aws.Context, input *GetEntityTypesInput, fn func(*GetEntityTypesOutput, bool) bool, opts ...request.Option) error {
3052	p := request.Pagination{
3053		NewRequest: func() (*request.Request, error) {
3054			var inCpy *GetEntityTypesInput
3055			if input != nil {
3056				tmp := *input
3057				inCpy = &tmp
3058			}
3059			req, _ := c.GetEntityTypesRequest(inCpy)
3060			req.SetContext(ctx)
3061			req.ApplyOptions(opts...)
3062			return req, nil
3063		},
3064	}
3065
3066	for p.Next() {
3067		if !fn(p.Page().(*GetEntityTypesOutput), !p.HasNextPage()) {
3068			break
3069		}
3070	}
3071
3072	return p.Err()
3073}
3074
3075const opGetEventPrediction = "GetEventPrediction"
3076
3077// GetEventPredictionRequest generates a "aws/request.Request" representing the
3078// client's request for the GetEventPrediction operation. The "output" return
3079// value will be populated with the request's response once the request completes
3080// successfully.
3081//
3082// Use "Send" method on the returned Request to send the API call to the service.
3083// the "output" return value is not valid until after Send returns without error.
3084//
3085// See GetEventPrediction for more information on using the GetEventPrediction
3086// API call, and error handling.
3087//
3088// This method is useful when you want to inject custom logic or configuration
3089// into the SDK's request lifecycle. Such as custom headers, or retry logic.
3090//
3091//
3092//    // Example sending a request using the GetEventPredictionRequest method.
3093//    req, resp := client.GetEventPredictionRequest(params)
3094//
3095//    err := req.Send()
3096//    if err == nil { // resp is now filled
3097//        fmt.Println(resp)
3098//    }
3099//
3100// See also, https://docs.aws.amazon.com/goto/WebAPI/frauddetector-2019-11-15/GetEventPrediction
3101func (c *FraudDetector) GetEventPredictionRequest(input *GetEventPredictionInput) (req *request.Request, output *GetEventPredictionOutput) {
3102	op := &request.Operation{
3103		Name:       opGetEventPrediction,
3104		HTTPMethod: "POST",
3105		HTTPPath:   "/",
3106	}
3107
3108	if input == nil {
3109		input = &GetEventPredictionInput{}
3110	}
3111
3112	output = &GetEventPredictionOutput{}
3113	req = c.newRequest(op, input, output)
3114	return
3115}
3116
3117// GetEventPrediction API operation for Amazon Fraud Detector.
3118//
3119// Evaluates an event against a detector version. If a version ID is not provided,
3120// the detector’s (ACTIVE) version is used.
3121//
3122// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
3123// with awserr.Error's Code and Message methods to get detailed information about
3124// the error.
3125//
3126// See the AWS API reference guide for Amazon Fraud Detector's
3127// API operation GetEventPrediction for usage and error information.
3128//
3129// Returned Error Types:
3130//   * ValidationException
3131//   An exception indicating a specified value is not allowed.
3132//
3133//   * ResourceNotFoundException
3134//   An exception indicating the specified resource was not found. This can occur
3135//   if you submit a request, such as CreateBatchPredictionJob, but the detector
3136//   name or version does not exist.
3137//
3138//   * InternalServerException
3139//   An exception indicating an internal server error.
3140//
3141//   * ThrottlingException
3142//   An exception indicating a throttling error.
3143//
3144//   * AccessDeniedException
3145//   An exception indicating Amazon Fraud Detector does not have the needed permissions.
3146//   This can occur if you submit a request, such as PutExternalModel, that specifies
3147//   a role that is not in your account.
3148//
3149//   * ConflictException
3150//   An exception indicating there was a conflict during a delete operation. The
3151//   following delete operations can cause a conflict exception:
3152//
3153//      * DeleteDetector: A conflict exception will occur if the detector has
3154//      associated Rules or DetectorVersions. You can only delete a detector if
3155//      it has no Rules or DetectorVersions.
3156//
3157//      * DeleteDetectorVersion: A conflict exception will occur if the DetectorVersion
3158//      status is ACTIVE.
3159//
3160//      * DeleteRule: A conflict exception will occur if the RuleVersion is in
3161//      use by an associated ACTIVE or INACTIVE DetectorVersion.
3162//
3163//   * ResourceUnavailableException
3164//   An exception indicating that the attached customer-owned (external) model
3165//   threw an exception when Amazon Fraud Detector invoked the model.
3166//
3167// See also, https://docs.aws.amazon.com/goto/WebAPI/frauddetector-2019-11-15/GetEventPrediction
3168func (c *FraudDetector) GetEventPrediction(input *GetEventPredictionInput) (*GetEventPredictionOutput, error) {
3169	req, out := c.GetEventPredictionRequest(input)
3170	return out, req.Send()
3171}
3172
3173// GetEventPredictionWithContext is the same as GetEventPrediction with the addition of
3174// the ability to pass a context and additional request options.
3175//
3176// See GetEventPrediction for details on how to use this API operation.
3177//
3178// The context must be non-nil and will be used for request cancellation. If
3179// the context is nil a panic will occur. In the future the SDK may create
3180// sub-contexts for http.Requests. See https://golang.org/pkg/context/
3181// for more information on using Contexts.
3182func (c *FraudDetector) GetEventPredictionWithContext(ctx aws.Context, input *GetEventPredictionInput, opts ...request.Option) (*GetEventPredictionOutput, error) {
3183	req, out := c.GetEventPredictionRequest(input)
3184	req.SetContext(ctx)
3185	req.ApplyOptions(opts...)
3186	return out, req.Send()
3187}
3188
3189const opGetEventTypes = "GetEventTypes"
3190
3191// GetEventTypesRequest generates a "aws/request.Request" representing the
3192// client's request for the GetEventTypes operation. The "output" return
3193// value will be populated with the request's response once the request completes
3194// successfully.
3195//
3196// Use "Send" method on the returned Request to send the API call to the service.
3197// the "output" return value is not valid until after Send returns without error.
3198//
3199// See GetEventTypes for more information on using the GetEventTypes
3200// API call, and error handling.
3201//
3202// This method is useful when you want to inject custom logic or configuration
3203// into the SDK's request lifecycle. Such as custom headers, or retry logic.
3204//
3205//
3206//    // Example sending a request using the GetEventTypesRequest method.
3207//    req, resp := client.GetEventTypesRequest(params)
3208//
3209//    err := req.Send()
3210//    if err == nil { // resp is now filled
3211//        fmt.Println(resp)
3212//    }
3213//
3214// See also, https://docs.aws.amazon.com/goto/WebAPI/frauddetector-2019-11-15/GetEventTypes
3215func (c *FraudDetector) GetEventTypesRequest(input *GetEventTypesInput) (req *request.Request, output *GetEventTypesOutput) {
3216	op := &request.Operation{
3217		Name:       opGetEventTypes,
3218		HTTPMethod: "POST",
3219		HTTPPath:   "/",
3220		Paginator: &request.Paginator{
3221			InputTokens:     []string{"nextToken"},
3222			OutputTokens:    []string{"nextToken"},
3223			LimitToken:      "maxResults",
3224			TruncationToken: "",
3225		},
3226	}
3227
3228	if input == nil {
3229		input = &GetEventTypesInput{}
3230	}
3231
3232	output = &GetEventTypesOutput{}
3233	req = c.newRequest(op, input, output)
3234	return
3235}
3236
3237// GetEventTypes API operation for Amazon Fraud Detector.
3238//
3239// Gets all event types or a specific event type if name is provided. This is
3240// a paginated API. If you provide a null maxResults, this action retrieves
3241// a maximum of 10 records per page. If you provide a maxResults, the value
3242// must be between 5 and 10. To get the next page results, provide the pagination
3243// token from the GetEventTypesResponse as part of your request. A null pagination
3244// token fetches the records from the beginning.
3245//
3246// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
3247// with awserr.Error's Code and Message methods to get detailed information about
3248// the error.
3249//
3250// See the AWS API reference guide for Amazon Fraud Detector's
3251// API operation GetEventTypes for usage and error information.
3252//
3253// Returned Error Types:
3254//   * ValidationException
3255//   An exception indicating a specified value is not allowed.
3256//
3257//   * ResourceNotFoundException
3258//   An exception indicating the specified resource was not found. This can occur
3259//   if you submit a request, such as CreateBatchPredictionJob, but the detector
3260//   name or version does not exist.
3261//
3262//   * InternalServerException
3263//   An exception indicating an internal server error.
3264//
3265//   * ThrottlingException
3266//   An exception indicating a throttling error.
3267//
3268//   * AccessDeniedException
3269//   An exception indicating Amazon Fraud Detector does not have the needed permissions.
3270//   This can occur if you submit a request, such as PutExternalModel, that specifies
3271//   a role that is not in your account.
3272//
3273// See also, https://docs.aws.amazon.com/goto/WebAPI/frauddetector-2019-11-15/GetEventTypes
3274func (c *FraudDetector) GetEventTypes(input *GetEventTypesInput) (*GetEventTypesOutput, error) {
3275	req, out := c.GetEventTypesRequest(input)
3276	return out, req.Send()
3277}
3278
3279// GetEventTypesWithContext is the same as GetEventTypes with the addition of
3280// the ability to pass a context and additional request options.
3281//
3282// See GetEventTypes for details on how to use this API operation.
3283//
3284// The context must be non-nil and will be used for request cancellation. If
3285// the context is nil a panic will occur. In the future the SDK may create
3286// sub-contexts for http.Requests. See https://golang.org/pkg/context/
3287// for more information on using Contexts.
3288func (c *FraudDetector) GetEventTypesWithContext(ctx aws.Context, input *GetEventTypesInput, opts ...request.Option) (*GetEventTypesOutput, error) {
3289	req, out := c.GetEventTypesRequest(input)
3290	req.SetContext(ctx)
3291	req.ApplyOptions(opts...)
3292	return out, req.Send()
3293}
3294
3295// GetEventTypesPages iterates over the pages of a GetEventTypes operation,
3296// calling the "fn" function with the response data for each page. To stop
3297// iterating, return false from the fn function.
3298//
3299// See GetEventTypes method for more information on how to use this operation.
3300//
3301// Note: This operation can generate multiple requests to a service.
3302//
3303//    // Example iterating over at most 3 pages of a GetEventTypes operation.
3304//    pageNum := 0
3305//    err := client.GetEventTypesPages(params,
3306//        func(page *frauddetector.GetEventTypesOutput, lastPage bool) bool {
3307//            pageNum++
3308//            fmt.Println(page)
3309//            return pageNum <= 3
3310//        })
3311//
3312func (c *FraudDetector) GetEventTypesPages(input *GetEventTypesInput, fn func(*GetEventTypesOutput, bool) bool) error {
3313	return c.GetEventTypesPagesWithContext(aws.BackgroundContext(), input, fn)
3314}
3315
3316// GetEventTypesPagesWithContext same as GetEventTypesPages except
3317// it takes a Context and allows setting request options on the pages.
3318//
3319// The context must be non-nil and will be used for request cancellation. If
3320// the context is nil a panic will occur. In the future the SDK may create
3321// sub-contexts for http.Requests. See https://golang.org/pkg/context/
3322// for more information on using Contexts.
3323func (c *FraudDetector) GetEventTypesPagesWithContext(ctx aws.Context, input *GetEventTypesInput, fn func(*GetEventTypesOutput, bool) bool, opts ...request.Option) error {
3324	p := request.Pagination{
3325		NewRequest: func() (*request.Request, error) {
3326			var inCpy *GetEventTypesInput
3327			if input != nil {
3328				tmp := *input
3329				inCpy = &tmp
3330			}
3331			req, _ := c.GetEventTypesRequest(inCpy)
3332			req.SetContext(ctx)
3333			req.ApplyOptions(opts...)
3334			return req, nil
3335		},
3336	}
3337
3338	for p.Next() {
3339		if !fn(p.Page().(*GetEventTypesOutput), !p.HasNextPage()) {
3340			break
3341		}
3342	}
3343
3344	return p.Err()
3345}
3346
3347const opGetExternalModels = "GetExternalModels"
3348
3349// GetExternalModelsRequest generates a "aws/request.Request" representing the
3350// client's request for the GetExternalModels operation. The "output" return
3351// value will be populated with the request's response once the request completes
3352// successfully.
3353//
3354// Use "Send" method on the returned Request to send the API call to the service.
3355// the "output" return value is not valid until after Send returns without error.
3356//
3357// See GetExternalModels for more information on using the GetExternalModels
3358// API call, and error handling.
3359//
3360// This method is useful when you want to inject custom logic or configuration
3361// into the SDK's request lifecycle. Such as custom headers, or retry logic.
3362//
3363//
3364//    // Example sending a request using the GetExternalModelsRequest method.
3365//    req, resp := client.GetExternalModelsRequest(params)
3366//
3367//    err := req.Send()
3368//    if err == nil { // resp is now filled
3369//        fmt.Println(resp)
3370//    }
3371//
3372// See also, https://docs.aws.amazon.com/goto/WebAPI/frauddetector-2019-11-15/GetExternalModels
3373func (c *FraudDetector) GetExternalModelsRequest(input *GetExternalModelsInput) (req *request.Request, output *GetExternalModelsOutput) {
3374	op := &request.Operation{
3375		Name:       opGetExternalModels,
3376		HTTPMethod: "POST",
3377		HTTPPath:   "/",
3378		Paginator: &request.Paginator{
3379			InputTokens:     []string{"nextToken"},
3380			OutputTokens:    []string{"nextToken"},
3381			LimitToken:      "maxResults",
3382			TruncationToken: "",
3383		},
3384	}
3385
3386	if input == nil {
3387		input = &GetExternalModelsInput{}
3388	}
3389
3390	output = &GetExternalModelsOutput{}
3391	req = c.newRequest(op, input, output)
3392	return
3393}
3394
3395// GetExternalModels API operation for Amazon Fraud Detector.
3396//
3397// Gets the details for one or more Amazon SageMaker models that have been imported
3398// into the service. This is a paginated API. If you provide a null maxResults,
3399// this actions retrieves a maximum of 10 records per page. If you provide a
3400// maxResults, the value must be between 5 and 10. To get the next page results,
3401// provide the pagination token from the GetExternalModelsResult as part of
3402// your request. A null pagination token fetches the records from the beginning.
3403//
3404// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
3405// with awserr.Error's Code and Message methods to get detailed information about
3406// the error.
3407//
3408// See the AWS API reference guide for Amazon Fraud Detector's
3409// API operation GetExternalModels for usage and error information.
3410//
3411// Returned Error Types:
3412//   * ValidationException
3413//   An exception indicating a specified value is not allowed.
3414//
3415//   * ResourceNotFoundException
3416//   An exception indicating the specified resource was not found. This can occur
3417//   if you submit a request, such as CreateBatchPredictionJob, but the detector
3418//   name or version does not exist.
3419//
3420//   * InternalServerException
3421//   An exception indicating an internal server error.
3422//
3423//   * ThrottlingException
3424//   An exception indicating a throttling error.
3425//
3426//   * AccessDeniedException
3427//   An exception indicating Amazon Fraud Detector does not have the needed permissions.
3428//   This can occur if you submit a request, such as PutExternalModel, that specifies
3429//   a role that is not in your account.
3430//
3431// See also, https://docs.aws.amazon.com/goto/WebAPI/frauddetector-2019-11-15/GetExternalModels
3432func (c *FraudDetector) GetExternalModels(input *GetExternalModelsInput) (*GetExternalModelsOutput, error) {
3433	req, out := c.GetExternalModelsRequest(input)
3434	return out, req.Send()
3435}
3436
3437// GetExternalModelsWithContext is the same as GetExternalModels with the addition of
3438// the ability to pass a context and additional request options.
3439//
3440// See GetExternalModels for details on how to use this API operation.
3441//
3442// The context must be non-nil and will be used for request cancellation. If
3443// the context is nil a panic will occur. In the future the SDK may create
3444// sub-contexts for http.Requests. See https://golang.org/pkg/context/
3445// for more information on using Contexts.
3446func (c *FraudDetector) GetExternalModelsWithContext(ctx aws.Context, input *GetExternalModelsInput, opts ...request.Option) (*GetExternalModelsOutput, error) {
3447	req, out := c.GetExternalModelsRequest(input)
3448	req.SetContext(ctx)
3449	req.ApplyOptions(opts...)
3450	return out, req.Send()
3451}
3452
3453// GetExternalModelsPages iterates over the pages of a GetExternalModels operation,
3454// calling the "fn" function with the response data for each page. To stop
3455// iterating, return false from the fn function.
3456//
3457// See GetExternalModels method for more information on how to use this operation.
3458//
3459// Note: This operation can generate multiple requests to a service.
3460//
3461//    // Example iterating over at most 3 pages of a GetExternalModels operation.
3462//    pageNum := 0
3463//    err := client.GetExternalModelsPages(params,
3464//        func(page *frauddetector.GetExternalModelsOutput, lastPage bool) bool {
3465//            pageNum++
3466//            fmt.Println(page)
3467//            return pageNum <= 3
3468//        })
3469//
3470func (c *FraudDetector) GetExternalModelsPages(input *GetExternalModelsInput, fn func(*GetExternalModelsOutput, bool) bool) error {
3471	return c.GetExternalModelsPagesWithContext(aws.BackgroundContext(), input, fn)
3472}
3473
3474// GetExternalModelsPagesWithContext same as GetExternalModelsPages except
3475// it takes a Context and allows setting request options on the pages.
3476//
3477// The context must be non-nil and will be used for request cancellation. If
3478// the context is nil a panic will occur. In the future the SDK may create
3479// sub-contexts for http.Requests. See https://golang.org/pkg/context/
3480// for more information on using Contexts.
3481func (c *FraudDetector) GetExternalModelsPagesWithContext(ctx aws.Context, input *GetExternalModelsInput, fn func(*GetExternalModelsOutput, bool) bool, opts ...request.Option) error {
3482	p := request.Pagination{
3483		NewRequest: func() (*request.Request, error) {
3484			var inCpy *GetExternalModelsInput
3485			if input != nil {
3486				tmp := *input
3487				inCpy = &tmp
3488			}
3489			req, _ := c.GetExternalModelsRequest(inCpy)
3490			req.SetContext(ctx)
3491			req.ApplyOptions(opts...)
3492			return req, nil
3493		},
3494	}
3495
3496	for p.Next() {
3497		if !fn(p.Page().(*GetExternalModelsOutput), !p.HasNextPage()) {
3498			break
3499		}
3500	}
3501
3502	return p.Err()
3503}
3504
3505const opGetKMSEncryptionKey = "GetKMSEncryptionKey"
3506
3507// GetKMSEncryptionKeyRequest generates a "aws/request.Request" representing the
3508// client's request for the GetKMSEncryptionKey operation. The "output" return
3509// value will be populated with the request's response once the request completes
3510// successfully.
3511//
3512// Use "Send" method on the returned Request to send the API call to the service.
3513// the "output" return value is not valid until after Send returns without error.
3514//
3515// See GetKMSEncryptionKey for more information on using the GetKMSEncryptionKey
3516// API call, and error handling.
3517//
3518// This method is useful when you want to inject custom logic or configuration
3519// into the SDK's request lifecycle. Such as custom headers, or retry logic.
3520//
3521//
3522//    // Example sending a request using the GetKMSEncryptionKeyRequest method.
3523//    req, resp := client.GetKMSEncryptionKeyRequest(params)
3524//
3525//    err := req.Send()
3526//    if err == nil { // resp is now filled
3527//        fmt.Println(resp)
3528//    }
3529//
3530// See also, https://docs.aws.amazon.com/goto/WebAPI/frauddetector-2019-11-15/GetKMSEncryptionKey
3531func (c *FraudDetector) GetKMSEncryptionKeyRequest(input *GetKMSEncryptionKeyInput) (req *request.Request, output *GetKMSEncryptionKeyOutput) {
3532	op := &request.Operation{
3533		Name:       opGetKMSEncryptionKey,
3534		HTTPMethod: "POST",
3535		HTTPPath:   "/",
3536	}
3537
3538	if input == nil {
3539		input = &GetKMSEncryptionKeyInput{}
3540	}
3541
3542	output = &GetKMSEncryptionKeyOutput{}
3543	req = c.newRequest(op, input, output)
3544	return
3545}
3546
3547// GetKMSEncryptionKey API operation for Amazon Fraud Detector.
3548//
3549// Gets the encryption key if a Key Management Service (KMS) customer master
3550// key (CMK) has been specified to be used to encrypt content in Amazon Fraud
3551// Detector.
3552//
3553// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
3554// with awserr.Error's Code and Message methods to get detailed information about
3555// the error.
3556//
3557// See the AWS API reference guide for Amazon Fraud Detector's
3558// API operation GetKMSEncryptionKey for usage and error information.
3559//
3560// Returned Error Types:
3561//   * ResourceNotFoundException
3562//   An exception indicating the specified resource was not found. This can occur
3563//   if you submit a request, such as CreateBatchPredictionJob, but the detector
3564//   name or version does not exist.
3565//
3566//   * InternalServerException
3567//   An exception indicating an internal server error.
3568//
3569//   * ThrottlingException
3570//   An exception indicating a throttling error.
3571//
3572//   * AccessDeniedException
3573//   An exception indicating Amazon Fraud Detector does not have the needed permissions.
3574//   This can occur if you submit a request, such as PutExternalModel, that specifies
3575//   a role that is not in your account.
3576//
3577// See also, https://docs.aws.amazon.com/goto/WebAPI/frauddetector-2019-11-15/GetKMSEncryptionKey
3578func (c *FraudDetector) GetKMSEncryptionKey(input *GetKMSEncryptionKeyInput) (*GetKMSEncryptionKeyOutput, error) {
3579	req, out := c.GetKMSEncryptionKeyRequest(input)
3580	return out, req.Send()
3581}
3582
3583// GetKMSEncryptionKeyWithContext is the same as GetKMSEncryptionKey with the addition of
3584// the ability to pass a context and additional request options.
3585//
3586// See GetKMSEncryptionKey for details on how to use this API operation.
3587//
3588// The context must be non-nil and will be used for request cancellation. If
3589// the context is nil a panic will occur. In the future the SDK may create
3590// sub-contexts for http.Requests. See https://golang.org/pkg/context/
3591// for more information on using Contexts.
3592func (c *FraudDetector) GetKMSEncryptionKeyWithContext(ctx aws.Context, input *GetKMSEncryptionKeyInput, opts ...request.Option) (*GetKMSEncryptionKeyOutput, error) {
3593	req, out := c.GetKMSEncryptionKeyRequest(input)
3594	req.SetContext(ctx)
3595	req.ApplyOptions(opts...)
3596	return out, req.Send()
3597}
3598
3599const opGetLabels = "GetLabels"
3600
3601// GetLabelsRequest generates a "aws/request.Request" representing the
3602// client's request for the GetLabels operation. The "output" return
3603// value will be populated with the request's response once the request completes
3604// successfully.
3605//
3606// Use "Send" method on the returned Request to send the API call to the service.
3607// the "output" return value is not valid until after Send returns without error.
3608//
3609// See GetLabels for more information on using the GetLabels
3610// API call, and error handling.
3611//
3612// This method is useful when you want to inject custom logic or configuration
3613// into the SDK's request lifecycle. Such as custom headers, or retry logic.
3614//
3615//
3616//    // Example sending a request using the GetLabelsRequest method.
3617//    req, resp := client.GetLabelsRequest(params)
3618//
3619//    err := req.Send()
3620//    if err == nil { // resp is now filled
3621//        fmt.Println(resp)
3622//    }
3623//
3624// See also, https://docs.aws.amazon.com/goto/WebAPI/frauddetector-2019-11-15/GetLabels
3625func (c *FraudDetector) GetLabelsRequest(input *GetLabelsInput) (req *request.Request, output *GetLabelsOutput) {
3626	op := &request.Operation{
3627		Name:       opGetLabels,
3628		HTTPMethod: "POST",
3629		HTTPPath:   "/",
3630		Paginator: &request.Paginator{
3631			InputTokens:     []string{"nextToken"},
3632			OutputTokens:    []string{"nextToken"},
3633			LimitToken:      "maxResults",
3634			TruncationToken: "",
3635		},
3636	}
3637
3638	if input == nil {
3639		input = &GetLabelsInput{}
3640	}
3641
3642	output = &GetLabelsOutput{}
3643	req = c.newRequest(op, input, output)
3644	return
3645}
3646
3647// GetLabels API operation for Amazon Fraud Detector.
3648//
3649// Gets all labels or a specific label if name is provided. This is a paginated
3650// API. If you provide a null maxResults, this action retrieves a maximum of
3651// 50 records per page. If you provide a maxResults, the value must be between
3652// 10 and 50. To get the next page results, provide the pagination token from
3653// the GetGetLabelsResponse as part of your request. A null pagination token
3654// fetches the records from the beginning.
3655//
3656// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
3657// with awserr.Error's Code and Message methods to get detailed information about
3658// the error.
3659//
3660// See the AWS API reference guide for Amazon Fraud Detector's
3661// API operation GetLabels for usage and error information.
3662//
3663// Returned Error Types:
3664//   * ValidationException
3665//   An exception indicating a specified value is not allowed.
3666//
3667//   * ResourceNotFoundException
3668//   An exception indicating the specified resource was not found. This can occur
3669//   if you submit a request, such as CreateBatchPredictionJob, but the detector
3670//   name or version does not exist.
3671//
3672//   * InternalServerException
3673//   An exception indicating an internal server error.
3674//
3675//   * ThrottlingException
3676//   An exception indicating a throttling error.
3677//
3678//   * AccessDeniedException
3679//   An exception indicating Amazon Fraud Detector does not have the needed permissions.
3680//   This can occur if you submit a request, such as PutExternalModel, that specifies
3681//   a role that is not in your account.
3682//
3683// See also, https://docs.aws.amazon.com/goto/WebAPI/frauddetector-2019-11-15/GetLabels
3684func (c *FraudDetector) GetLabels(input *GetLabelsInput) (*GetLabelsOutput, error) {
3685	req, out := c.GetLabelsRequest(input)
3686	return out, req.Send()
3687}
3688
3689// GetLabelsWithContext is the same as GetLabels with the addition of
3690// the ability to pass a context and additional request options.
3691//
3692// See GetLabels for details on how to use this API operation.
3693//
3694// The context must be non-nil and will be used for request cancellation. If
3695// the context is nil a panic will occur. In the future the SDK may create
3696// sub-contexts for http.Requests. See https://golang.org/pkg/context/
3697// for more information on using Contexts.
3698func (c *FraudDetector) GetLabelsWithContext(ctx aws.Context, input *GetLabelsInput, opts ...request.Option) (*GetLabelsOutput, error) {
3699	req, out := c.GetLabelsRequest(input)
3700	req.SetContext(ctx)
3701	req.ApplyOptions(opts...)
3702	return out, req.Send()
3703}
3704
3705// GetLabelsPages iterates over the pages of a GetLabels operation,
3706// calling the "fn" function with the response data for each page. To stop
3707// iterating, return false from the fn function.
3708//
3709// See GetLabels method for more information on how to use this operation.
3710//
3711// Note: This operation can generate multiple requests to a service.
3712//
3713//    // Example iterating over at most 3 pages of a GetLabels operation.
3714//    pageNum := 0
3715//    err := client.GetLabelsPages(params,
3716//        func(page *frauddetector.GetLabelsOutput, lastPage bool) bool {
3717//            pageNum++
3718//            fmt.Println(page)
3719//            return pageNum <= 3
3720//        })
3721//
3722func (c *FraudDetector) GetLabelsPages(input *GetLabelsInput, fn func(*GetLabelsOutput, bool) bool) error {
3723	return c.GetLabelsPagesWithContext(aws.BackgroundContext(), input, fn)
3724}
3725
3726// GetLabelsPagesWithContext same as GetLabelsPages except
3727// it takes a Context and allows setting request options on the pages.
3728//
3729// The context must be non-nil and will be used for request cancellation. If
3730// the context is nil a panic will occur. In the future the SDK may create
3731// sub-contexts for http.Requests. See https://golang.org/pkg/context/
3732// for more information on using Contexts.
3733func (c *FraudDetector) GetLabelsPagesWithContext(ctx aws.Context, input *GetLabelsInput, fn func(*GetLabelsOutput, bool) bool, opts ...request.Option) error {
3734	p := request.Pagination{
3735		NewRequest: func() (*request.Request, error) {
3736			var inCpy *GetLabelsInput
3737			if input != nil {
3738				tmp := *input
3739				inCpy = &tmp
3740			}
3741			req, _ := c.GetLabelsRequest(inCpy)
3742			req.SetContext(ctx)
3743			req.ApplyOptions(opts...)
3744			return req, nil
3745		},
3746	}
3747
3748	for p.Next() {
3749		if !fn(p.Page().(*GetLabelsOutput), !p.HasNextPage()) {
3750			break
3751		}
3752	}
3753
3754	return p.Err()
3755}
3756
3757const opGetModelVersion = "GetModelVersion"
3758
3759// GetModelVersionRequest generates a "aws/request.Request" representing the
3760// client's request for the GetModelVersion operation. The "output" return
3761// value will be populated with the request's response once the request completes
3762// successfully.
3763//
3764// Use "Send" method on the returned Request to send the API call to the service.
3765// the "output" return value is not valid until after Send returns without error.
3766//
3767// See GetModelVersion for more information on using the GetModelVersion
3768// API call, and error handling.
3769//
3770// This method is useful when you want to inject custom logic or configuration
3771// into the SDK's request lifecycle. Such as custom headers, or retry logic.
3772//
3773//
3774//    // Example sending a request using the GetModelVersionRequest method.
3775//    req, resp := client.GetModelVersionRequest(params)
3776//
3777//    err := req.Send()
3778//    if err == nil { // resp is now filled
3779//        fmt.Println(resp)
3780//    }
3781//
3782// See also, https://docs.aws.amazon.com/goto/WebAPI/frauddetector-2019-11-15/GetModelVersion
3783func (c *FraudDetector) GetModelVersionRequest(input *GetModelVersionInput) (req *request.Request, output *GetModelVersionOutput) {
3784	op := &request.Operation{
3785		Name:       opGetModelVersion,
3786		HTTPMethod: "POST",
3787		HTTPPath:   "/",
3788	}
3789
3790	if input == nil {
3791		input = &GetModelVersionInput{}
3792	}
3793
3794	output = &GetModelVersionOutput{}
3795	req = c.newRequest(op, input, output)
3796	return
3797}
3798
3799// GetModelVersion API operation for Amazon Fraud Detector.
3800//
3801// Gets the details of the specified model version.
3802//
3803// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
3804// with awserr.Error's Code and Message methods to get detailed information about
3805// the error.
3806//
3807// See the AWS API reference guide for Amazon Fraud Detector's
3808// API operation GetModelVersion for usage and error information.
3809//
3810// Returned Error Types:
3811//   * ValidationException
3812//   An exception indicating a specified value is not allowed.
3813//
3814//   * ResourceNotFoundException
3815//   An exception indicating the specified resource was not found. This can occur
3816//   if you submit a request, such as CreateBatchPredictionJob, but the detector
3817//   name or version does not exist.
3818//
3819//   * InternalServerException
3820//   An exception indicating an internal server error.
3821//
3822//   * ThrottlingException
3823//   An exception indicating a throttling error.
3824//
3825//   * AccessDeniedException
3826//   An exception indicating Amazon Fraud Detector does not have the needed permissions.
3827//   This can occur if you submit a request, such as PutExternalModel, that specifies
3828//   a role that is not in your account.
3829//
3830// See also, https://docs.aws.amazon.com/goto/WebAPI/frauddetector-2019-11-15/GetModelVersion
3831func (c *FraudDetector) GetModelVersion(input *GetModelVersionInput) (*GetModelVersionOutput, error) {
3832	req, out := c.GetModelVersionRequest(input)
3833	return out, req.Send()
3834}
3835
3836// GetModelVersionWithContext is the same as GetModelVersion with the addition of
3837// the ability to pass a context and additional request options.
3838//
3839// See GetModelVersion for details on how to use this API operation.
3840//
3841// The context must be non-nil and will be used for request cancellation. If
3842// the context is nil a panic will occur. In the future the SDK may create
3843// sub-contexts for http.Requests. See https://golang.org/pkg/context/
3844// for more information on using Contexts.
3845func (c *FraudDetector) GetModelVersionWithContext(ctx aws.Context, input *GetModelVersionInput, opts ...request.Option) (*GetModelVersionOutput, error) {
3846	req, out := c.GetModelVersionRequest(input)
3847	req.SetContext(ctx)
3848	req.ApplyOptions(opts...)
3849	return out, req.Send()
3850}
3851
3852const opGetModels = "GetModels"
3853
3854// GetModelsRequest generates a "aws/request.Request" representing the
3855// client's request for the GetModels operation. The "output" return
3856// value will be populated with the request's response once the request completes
3857// successfully.
3858//
3859// Use "Send" method on the returned Request to send the API call to the service.
3860// the "output" return value is not valid until after Send returns without error.
3861//
3862// See GetModels for more information on using the GetModels
3863// API call, and error handling.
3864//
3865// This method is useful when you want to inject custom logic or configuration
3866// into the SDK's request lifecycle. Such as custom headers, or retry logic.
3867//
3868//
3869//    // Example sending a request using the GetModelsRequest method.
3870//    req, resp := client.GetModelsRequest(params)
3871//
3872//    err := req.Send()
3873//    if err == nil { // resp is now filled
3874//        fmt.Println(resp)
3875//    }
3876//
3877// See also, https://docs.aws.amazon.com/goto/WebAPI/frauddetector-2019-11-15/GetModels
3878func (c *FraudDetector) GetModelsRequest(input *GetModelsInput) (req *request.Request, output *GetModelsOutput) {
3879	op := &request.Operation{
3880		Name:       opGetModels,
3881		HTTPMethod: "POST",
3882		HTTPPath:   "/",
3883		Paginator: &request.Paginator{
3884			InputTokens:     []string{"nextToken"},
3885			OutputTokens:    []string{"nextToken"},
3886			LimitToken:      "maxResults",
3887			TruncationToken: "",
3888		},
3889	}
3890
3891	if input == nil {
3892		input = &GetModelsInput{}
3893	}
3894
3895	output = &GetModelsOutput{}
3896	req = c.newRequest(op, input, output)
3897	return
3898}
3899
3900// GetModels API operation for Amazon Fraud Detector.
3901//
3902// Gets one or more models. Gets all models for the Amazon Web Services account
3903// if no model type and no model id provided. Gets all models for the Amazon
3904// Web Services account and model type, if the model type is specified but model
3905// id is not provided. Gets a specific model if (model type, model id) tuple
3906// is specified.
3907//
3908// This is a paginated API. If you provide a null maxResults, this action retrieves
3909// a maximum of 10 records per page. If you provide a maxResults, the value
3910// must be between 1 and 10. To get the next page results, provide the pagination
3911// token from the response as part of your request. A null pagination token
3912// fetches the records from the beginning.
3913//
3914// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
3915// with awserr.Error's Code and Message methods to get detailed information about
3916// the error.
3917//
3918// See the AWS API reference guide for Amazon Fraud Detector's
3919// API operation GetModels for usage and error information.
3920//
3921// Returned Error Types:
3922//   * ValidationException
3923//   An exception indicating a specified value is not allowed.
3924//
3925//   * ResourceNotFoundException
3926//   An exception indicating the specified resource was not found. This can occur
3927//   if you submit a request, such as CreateBatchPredictionJob, but the detector
3928//   name or version does not exist.
3929//
3930//   * InternalServerException
3931//   An exception indicating an internal server error.
3932//
3933//   * ThrottlingException
3934//   An exception indicating a throttling error.
3935//
3936//   * AccessDeniedException
3937//   An exception indicating Amazon Fraud Detector does not have the needed permissions.
3938//   This can occur if you submit a request, such as PutExternalModel, that specifies
3939//   a role that is not in your account.
3940//
3941// See also, https://docs.aws.amazon.com/goto/WebAPI/frauddetector-2019-11-15/GetModels
3942func (c *FraudDetector) GetModels(input *GetModelsInput) (*GetModelsOutput, error) {
3943	req, out := c.GetModelsRequest(input)
3944	return out, req.Send()
3945}
3946
3947// GetModelsWithContext is the same as GetModels with the addition of
3948// the ability to pass a context and additional request options.
3949//
3950// See GetModels for details on how to use this API operation.
3951//
3952// The context must be non-nil and will be used for request cancellation. If
3953// the context is nil a panic will occur. In the future the SDK may create
3954// sub-contexts for http.Requests. See https://golang.org/pkg/context/
3955// for more information on using Contexts.
3956func (c *FraudDetector) GetModelsWithContext(ctx aws.Context, input *GetModelsInput, opts ...request.Option) (*GetModelsOutput, error) {
3957	req, out := c.GetModelsRequest(input)
3958	req.SetContext(ctx)
3959	req.ApplyOptions(opts...)
3960	return out, req.Send()
3961}
3962
3963// GetModelsPages iterates over the pages of a GetModels operation,
3964// calling the "fn" function with the response data for each page. To stop
3965// iterating, return false from the fn function.
3966//
3967// See GetModels method for more information on how to use this operation.
3968//
3969// Note: This operation can generate multiple requests to a service.
3970//
3971//    // Example iterating over at most 3 pages of a GetModels operation.
3972//    pageNum := 0
3973//    err := client.GetModelsPages(params,
3974//        func(page *frauddetector.GetModelsOutput, lastPage bool) bool {
3975//            pageNum++
3976//            fmt.Println(page)
3977//            return pageNum <= 3
3978//        })
3979//
3980func (c *FraudDetector) GetModelsPages(input *GetModelsInput, fn func(*GetModelsOutput, bool) bool) error {
3981	return c.GetModelsPagesWithContext(aws.BackgroundContext(), input, fn)
3982}
3983
3984// GetModelsPagesWithContext same as GetModelsPages except
3985// it takes a Context and allows setting request options on the pages.
3986//
3987// The context must be non-nil and will be used for request cancellation. If
3988// the context is nil a panic will occur. In the future the SDK may create
3989// sub-contexts for http.Requests. See https://golang.org/pkg/context/
3990// for more information on using Contexts.
3991func (c *FraudDetector) GetModelsPagesWithContext(ctx aws.Context, input *GetModelsInput, fn func(*GetModelsOutput, bool) bool, opts ...request.Option) error {
3992	p := request.Pagination{
3993		NewRequest: func() (*request.Request, error) {
3994			var inCpy *GetModelsInput
3995			if input != nil {
3996				tmp := *input
3997				inCpy = &tmp
3998			}
3999			req, _ := c.GetModelsRequest(inCpy)
4000			req.SetContext(ctx)
4001			req.ApplyOptions(opts...)
4002			return req, nil
4003		},
4004	}
4005
4006	for p.Next() {
4007		if !fn(p.Page().(*GetModelsOutput), !p.HasNextPage()) {
4008			break
4009		}
4010	}
4011
4012	return p.Err()
4013}
4014
4015const opGetOutcomes = "GetOutcomes"
4016
4017// GetOutcomesRequest generates a "aws/request.Request" representing the
4018// client's request for the GetOutcomes operation. The "output" return
4019// value will be populated with the request's response once the request completes
4020// successfully.
4021//
4022// Use "Send" method on the returned Request to send the API call to the service.
4023// the "output" return value is not valid until after Send returns without error.
4024//
4025// See GetOutcomes for more information on using the GetOutcomes
4026// API call, and error handling.
4027//
4028// This method is useful when you want to inject custom logic or configuration
4029// into the SDK's request lifecycle. Such as custom headers, or retry logic.
4030//
4031//
4032//    // Example sending a request using the GetOutcomesRequest method.
4033//    req, resp := client.GetOutcomesRequest(params)
4034//
4035//    err := req.Send()
4036//    if err == nil { // resp is now filled
4037//        fmt.Println(resp)
4038//    }
4039//
4040// See also, https://docs.aws.amazon.com/goto/WebAPI/frauddetector-2019-11-15/GetOutcomes
4041func (c *FraudDetector) GetOutcomesRequest(input *GetOutcomesInput) (req *request.Request, output *GetOutcomesOutput) {
4042	op := &request.Operation{
4043		Name:       opGetOutcomes,
4044		HTTPMethod: "POST",
4045		HTTPPath:   "/",
4046		Paginator: &request.Paginator{
4047			InputTokens:     []string{"nextToken"},
4048			OutputTokens:    []string{"nextToken"},
4049			LimitToken:      "maxResults",
4050			TruncationToken: "",
4051		},
4052	}
4053
4054	if input == nil {
4055		input = &GetOutcomesInput{}
4056	}
4057
4058	output = &GetOutcomesOutput{}
4059	req = c.newRequest(op, input, output)
4060	return
4061}
4062
4063// GetOutcomes API operation for Amazon Fraud Detector.
4064//
4065// Gets one or more outcomes. This is a paginated API. If you provide a null
4066// maxResults, this actions retrieves a maximum of 100 records per page. If
4067// you provide a maxResults, the value must be between 50 and 100. To get the
4068// next page results, provide the pagination token from the GetOutcomesResult
4069// as part of your request. A null pagination token fetches the records from
4070// the beginning.
4071//
4072// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
4073// with awserr.Error's Code and Message methods to get detailed information about
4074// the error.
4075//
4076// See the AWS API reference guide for Amazon Fraud Detector's
4077// API operation GetOutcomes for usage and error information.
4078//
4079// Returned Error Types:
4080//   * ValidationException
4081//   An exception indicating a specified value is not allowed.
4082//
4083//   * ResourceNotFoundException
4084//   An exception indicating the specified resource was not found. This can occur
4085//   if you submit a request, such as CreateBatchPredictionJob, but the detector
4086//   name or version does not exist.
4087//
4088//   * InternalServerException
4089//   An exception indicating an internal server error.
4090//
4091//   * ThrottlingException
4092//   An exception indicating a throttling error.
4093//
4094//   * AccessDeniedException
4095//   An exception indicating Amazon Fraud Detector does not have the needed permissions.
4096//   This can occur if you submit a request, such as PutExternalModel, that specifies
4097//   a role that is not in your account.
4098//
4099// See also, https://docs.aws.amazon.com/goto/WebAPI/frauddetector-2019-11-15/GetOutcomes
4100func (c *FraudDetector) GetOutcomes(input *GetOutcomesInput) (*GetOutcomesOutput, error) {
4101	req, out := c.GetOutcomesRequest(input)
4102	return out, req.Send()
4103}
4104
4105// GetOutcomesWithContext is the same as GetOutcomes with the addition of
4106// the ability to pass a context and additional request options.
4107//
4108// See GetOutcomes for details on how to use this API operation.
4109//
4110// The context must be non-nil and will be used for request cancellation. If
4111// the context is nil a panic will occur. In the future the SDK may create
4112// sub-contexts for http.Requests. See https://golang.org/pkg/context/
4113// for more information on using Contexts.
4114func (c *FraudDetector) GetOutcomesWithContext(ctx aws.Context, input *GetOutcomesInput, opts ...request.Option) (*GetOutcomesOutput, error) {
4115	req, out := c.GetOutcomesRequest(input)
4116	req.SetContext(ctx)
4117	req.ApplyOptions(opts...)
4118	return out, req.Send()
4119}
4120
4121// GetOutcomesPages iterates over the pages of a GetOutcomes operation,
4122// calling the "fn" function with the response data for each page. To stop
4123// iterating, return false from the fn function.
4124//
4125// See GetOutcomes method for more information on how to use this operation.
4126//
4127// Note: This operation can generate multiple requests to a service.
4128//
4129//    // Example iterating over at most 3 pages of a GetOutcomes operation.
4130//    pageNum := 0
4131//    err := client.GetOutcomesPages(params,
4132//        func(page *frauddetector.GetOutcomesOutput, lastPage bool) bool {
4133//            pageNum++
4134//            fmt.Println(page)
4135//            return pageNum <= 3
4136//        })
4137//
4138func (c *FraudDetector) GetOutcomesPages(input *GetOutcomesInput, fn func(*GetOutcomesOutput, bool) bool) error {
4139	return c.GetOutcomesPagesWithContext(aws.BackgroundContext(), input, fn)
4140}
4141
4142// GetOutcomesPagesWithContext same as GetOutcomesPages except
4143// it takes a Context and allows setting request options on the pages.
4144//
4145// The context must be non-nil and will be used for request cancellation. If
4146// the context is nil a panic will occur. In the future the SDK may create
4147// sub-contexts for http.Requests. See https://golang.org/pkg/context/
4148// for more information on using Contexts.
4149func (c *FraudDetector) GetOutcomesPagesWithContext(ctx aws.Context, input *GetOutcomesInput, fn func(*GetOutcomesOutput, bool) bool, opts ...request.Option) error {
4150	p := request.Pagination{
4151		NewRequest: func() (*request.Request, error) {
4152			var inCpy *GetOutcomesInput
4153			if input != nil {
4154				tmp := *input
4155				inCpy = &tmp
4156			}
4157			req, _ := c.GetOutcomesRequest(inCpy)
4158			req.SetContext(ctx)
4159			req.ApplyOptions(opts...)
4160			return req, nil
4161		},
4162	}
4163
4164	for p.Next() {
4165		if !fn(p.Page().(*GetOutcomesOutput), !p.HasNextPage()) {
4166			break
4167		}
4168	}
4169
4170	return p.Err()
4171}
4172
4173const opGetRules = "GetRules"
4174
4175// GetRulesRequest generates a "aws/request.Request" representing the
4176// client's request for the GetRules operation. The "output" return
4177// value will be populated with the request's response once the request completes
4178// successfully.
4179//
4180// Use "Send" method on the returned Request to send the API call to the service.
4181// the "output" return value is not valid until after Send returns without error.
4182//
4183// See GetRules for more information on using the GetRules
4184// API call, and error handling.
4185//
4186// This method is useful when you want to inject custom logic or configuration
4187// into the SDK's request lifecycle. Such as custom headers, or retry logic.
4188//
4189//
4190//    // Example sending a request using the GetRulesRequest method.
4191//    req, resp := client.GetRulesRequest(params)
4192//
4193//    err := req.Send()
4194//    if err == nil { // resp is now filled
4195//        fmt.Println(resp)
4196//    }
4197//
4198// See also, https://docs.aws.amazon.com/goto/WebAPI/frauddetector-2019-11-15/GetRules
4199func (c *FraudDetector) GetRulesRequest(input *GetRulesInput) (req *request.Request, output *GetRulesOutput) {
4200	op := &request.Operation{
4201		Name:       opGetRules,
4202		HTTPMethod: "POST",
4203		HTTPPath:   "/",
4204		Paginator: &request.Paginator{
4205			InputTokens:     []string{"nextToken"},
4206			OutputTokens:    []string{"nextToken"},
4207			LimitToken:      "maxResults",
4208			TruncationToken: "",
4209		},
4210	}
4211
4212	if input == nil {
4213		input = &GetRulesInput{}
4214	}
4215
4216	output = &GetRulesOutput{}
4217	req = c.newRequest(op, input, output)
4218	return
4219}
4220
4221// GetRules API operation for Amazon Fraud Detector.
4222//
4223// Get all rules for a detector (paginated) if ruleId and ruleVersion are not
4224// specified. Gets all rules for the detector and the ruleId if present (paginated).
4225// Gets a specific rule if both the ruleId and the ruleVersion are specified.
4226//
4227// This is a paginated API. Providing null maxResults results in retrieving
4228// maximum of 100 records per page. If you provide maxResults the value must
4229// be between 50 and 100. To get the next page result, a provide a pagination
4230// token from GetRulesResult as part of your request. Null pagination token
4231// fetches the records from the beginning.
4232//
4233// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
4234// with awserr.Error's Code and Message methods to get detailed information about
4235// the error.
4236//
4237// See the AWS API reference guide for Amazon Fraud Detector's
4238// API operation GetRules for usage and error information.
4239//
4240// Returned Error Types:
4241//   * ValidationException
4242//   An exception indicating a specified value is not allowed.
4243//
4244//   * ResourceNotFoundException
4245//   An exception indicating the specified resource was not found. This can occur
4246//   if you submit a request, such as CreateBatchPredictionJob, but the detector
4247//   name or version does not exist.
4248//
4249//   * InternalServerException
4250//   An exception indicating an internal server error.
4251//
4252//   * ThrottlingException
4253//   An exception indicating a throttling error.
4254//
4255//   * AccessDeniedException
4256//   An exception indicating Amazon Fraud Detector does not have the needed permissions.
4257//   This can occur if you submit a request, such as PutExternalModel, that specifies
4258//   a role that is not in your account.
4259//
4260// See also, https://docs.aws.amazon.com/goto/WebAPI/frauddetector-2019-11-15/GetRules
4261func (c *FraudDetector) GetRules(input *GetRulesInput) (*GetRulesOutput, error) {
4262	req, out := c.GetRulesRequest(input)
4263	return out, req.Send()
4264}
4265
4266// GetRulesWithContext is the same as GetRules with the addition of
4267// the ability to pass a context and additional request options.
4268//
4269// See GetRules for details on how to use this API operation.
4270//
4271// The context must be non-nil and will be used for request cancellation. If
4272// the context is nil a panic will occur. In the future the SDK may create
4273// sub-contexts for http.Requests. See https://golang.org/pkg/context/
4274// for more information on using Contexts.
4275func (c *FraudDetector) GetRulesWithContext(ctx aws.Context, input *GetRulesInput, opts ...request.Option) (*GetRulesOutput, error) {
4276	req, out := c.GetRulesRequest(input)
4277	req.SetContext(ctx)
4278	req.ApplyOptions(opts...)
4279	return out, req.Send()
4280}
4281
4282// GetRulesPages iterates over the pages of a GetRules operation,
4283// calling the "fn" function with the response data for each page. To stop
4284// iterating, return false from the fn function.
4285//
4286// See GetRules method for more information on how to use this operation.
4287//
4288// Note: This operation can generate multiple requests to a service.
4289//
4290//    // Example iterating over at most 3 pages of a GetRules operation.
4291//    pageNum := 0
4292//    err := client.GetRulesPages(params,
4293//        func(page *frauddetector.GetRulesOutput, lastPage bool) bool {
4294//            pageNum++
4295//            fmt.Println(page)
4296//            return pageNum <= 3
4297//        })
4298//
4299func (c *FraudDetector) GetRulesPages(input *GetRulesInput, fn func(*GetRulesOutput, bool) bool) error {
4300	return c.GetRulesPagesWithContext(aws.BackgroundContext(), input, fn)
4301}
4302
4303// GetRulesPagesWithContext same as GetRulesPages except
4304// it takes a Context and allows setting request options on the pages.
4305//
4306// The context must be non-nil and will be used for request cancellation. If
4307// the context is nil a panic will occur. In the future the SDK may create
4308// sub-contexts for http.Requests. See https://golang.org/pkg/context/
4309// for more information on using Contexts.
4310func (c *FraudDetector) GetRulesPagesWithContext(ctx aws.Context, input *GetRulesInput, fn func(*GetRulesOutput, bool) bool, opts ...request.Option) error {
4311	p := request.Pagination{
4312		NewRequest: func() (*request.Request, error) {
4313			var inCpy *GetRulesInput
4314			if input != nil {
4315				tmp := *input
4316				inCpy = &tmp
4317			}
4318			req, _ := c.GetRulesRequest(inCpy)
4319			req.SetContext(ctx)
4320			req.ApplyOptions(opts...)
4321			return req, nil
4322		},
4323	}
4324
4325	for p.Next() {
4326		if !fn(p.Page().(*GetRulesOutput), !p.HasNextPage()) {
4327			break
4328		}
4329	}
4330
4331	return p.Err()
4332}
4333
4334const opGetVariables = "GetVariables"
4335
4336// GetVariablesRequest generates a "aws/request.Request" representing the
4337// client's request for the GetVariables operation. The "output" return
4338// value will be populated with the request's response once the request completes
4339// successfully.
4340//
4341// Use "Send" method on the returned Request to send the API call to the service.
4342// the "output" return value is not valid until after Send returns without error.
4343//
4344// See GetVariables for more information on using the GetVariables
4345// API call, and error handling.
4346//
4347// This method is useful when you want to inject custom logic or configuration
4348// into the SDK's request lifecycle. Such as custom headers, or retry logic.
4349//
4350//
4351//    // Example sending a request using the GetVariablesRequest method.
4352//    req, resp := client.GetVariablesRequest(params)
4353//
4354//    err := req.Send()
4355//    if err == nil { // resp is now filled
4356//        fmt.Println(resp)
4357//    }
4358//
4359// See also, https://docs.aws.amazon.com/goto/WebAPI/frauddetector-2019-11-15/GetVariables
4360func (c *FraudDetector) GetVariablesRequest(input *GetVariablesInput) (req *request.Request, output *GetVariablesOutput) {
4361	op := &request.Operation{
4362		Name:       opGetVariables,
4363		HTTPMethod: "POST",
4364		HTTPPath:   "/",
4365		Paginator: &request.Paginator{
4366			InputTokens:     []string{"nextToken"},
4367			OutputTokens:    []string{"nextToken"},
4368			LimitToken:      "maxResults",
4369			TruncationToken: "",
4370		},
4371	}
4372
4373	if input == nil {
4374		input = &GetVariablesInput{}
4375	}
4376
4377	output = &GetVariablesOutput{}
4378	req = c.newRequest(op, input, output)
4379	return
4380}
4381
4382// GetVariables API operation for Amazon Fraud Detector.
4383//
4384// Gets all of the variables or the specific variable. This is a paginated API.
4385// Providing null maxSizePerPage results in retrieving maximum of 100 records
4386// per page. If you provide maxSizePerPage the value must be between 50 and
4387// 100. To get the next page result, a provide a pagination token from GetVariablesResult
4388// as part of your request. Null pagination token fetches the records from the
4389// beginning.
4390//
4391// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
4392// with awserr.Error's Code and Message methods to get detailed information about
4393// the error.
4394//
4395// See the AWS API reference guide for Amazon Fraud Detector's
4396// API operation GetVariables for usage and error information.
4397//
4398// Returned Error Types:
4399//   * ValidationException
4400//   An exception indicating a specified value is not allowed.
4401//
4402//   * ResourceNotFoundException
4403//   An exception indicating the specified resource was not found. This can occur
4404//   if you submit a request, such as CreateBatchPredictionJob, but the detector
4405//   name or version does not exist.
4406//
4407//   * InternalServerException
4408//   An exception indicating an internal server error.
4409//
4410//   * ThrottlingException
4411//   An exception indicating a throttling error.
4412//
4413//   * AccessDeniedException
4414//   An exception indicating Amazon Fraud Detector does not have the needed permissions.
4415//   This can occur if you submit a request, such as PutExternalModel, that specifies
4416//   a role that is not in your account.
4417//
4418// See also, https://docs.aws.amazon.com/goto/WebAPI/frauddetector-2019-11-15/GetVariables
4419func (c *FraudDetector) GetVariables(input *GetVariablesInput) (*GetVariablesOutput, error) {
4420	req, out := c.GetVariablesRequest(input)
4421	return out, req.Send()
4422}
4423
4424// GetVariablesWithContext is the same as GetVariables with the addition of
4425// the ability to pass a context and additional request options.
4426//
4427// See GetVariables for details on how to use this API operation.
4428//
4429// The context must be non-nil and will be used for request cancellation. If
4430// the context is nil a panic will occur. In the future the SDK may create
4431// sub-contexts for http.Requests. See https://golang.org/pkg/context/
4432// for more information on using Contexts.
4433func (c *FraudDetector) GetVariablesWithContext(ctx aws.Context, input *GetVariablesInput, opts ...request.Option) (*GetVariablesOutput, error) {
4434	req, out := c.GetVariablesRequest(input)
4435	req.SetContext(ctx)
4436	req.ApplyOptions(opts...)
4437	return out, req.Send()
4438}
4439
4440// GetVariablesPages iterates over the pages of a GetVariables operation,
4441// calling the "fn" function with the response data for each page. To stop
4442// iterating, return false from the fn function.
4443//
4444// See GetVariables method for more information on how to use this operation.
4445//
4446// Note: This operation can generate multiple requests to a service.
4447//
4448//    // Example iterating over at most 3 pages of a GetVariables operation.
4449//    pageNum := 0
4450//    err := client.GetVariablesPages(params,
4451//        func(page *frauddetector.GetVariablesOutput, lastPage bool) bool {
4452//            pageNum++
4453//            fmt.Println(page)
4454//            return pageNum <= 3
4455//        })
4456//
4457func (c *FraudDetector) GetVariablesPages(input *GetVariablesInput, fn func(*GetVariablesOutput, bool) bool) error {
4458	return c.GetVariablesPagesWithContext(aws.BackgroundContext(), input, fn)
4459}
4460
4461// GetVariablesPagesWithContext same as GetVariablesPages except
4462// it takes a Context and allows setting request options on the pages.
4463//
4464// The context must be non-nil and will be used for request cancellation. If
4465// the context is nil a panic will occur. In the future the SDK may create
4466// sub-contexts for http.Requests. See https://golang.org/pkg/context/
4467// for more information on using Contexts.
4468func (c *FraudDetector) GetVariablesPagesWithContext(ctx aws.Context, input *GetVariablesInput, fn func(*GetVariablesOutput, bool) bool, opts ...request.Option) error {
4469	p := request.Pagination{
4470		NewRequest: func() (*request.Request, error) {
4471			var inCpy *GetVariablesInput
4472			if input != nil {
4473				tmp := *input
4474				inCpy = &tmp
4475			}
4476			req, _ := c.GetVariablesRequest(inCpy)
4477			req.SetContext(ctx)
4478			req.ApplyOptions(opts...)
4479			return req, nil
4480		},
4481	}
4482
4483	for p.Next() {
4484		if !fn(p.Page().(*GetVariablesOutput), !p.HasNextPage()) {
4485			break
4486		}
4487	}
4488
4489	return p.Err()
4490}
4491
4492const opListTagsForResource = "ListTagsForResource"
4493
4494// ListTagsForResourceRequest generates a "aws/request.Request" representing the
4495// client's request for the ListTagsForResource operation. The "output" return
4496// value will be populated with the request's response once the request completes
4497// successfully.
4498//
4499// Use "Send" method on the returned Request to send the API call to the service.
4500// the "output" return value is not valid until after Send returns without error.
4501//
4502// See ListTagsForResource for more information on using the ListTagsForResource
4503// API call, and error handling.
4504//
4505// This method is useful when you want to inject custom logic or configuration
4506// into the SDK's request lifecycle. Such as custom headers, or retry logic.
4507//
4508//
4509//    // Example sending a request using the ListTagsForResourceRequest method.
4510//    req, resp := client.ListTagsForResourceRequest(params)
4511//
4512//    err := req.Send()
4513//    if err == nil { // resp is now filled
4514//        fmt.Println(resp)
4515//    }
4516//
4517// See also, https://docs.aws.amazon.com/goto/WebAPI/frauddetector-2019-11-15/ListTagsForResource
4518func (c *FraudDetector) ListTagsForResourceRequest(input *ListTagsForResourceInput) (req *request.Request, output *ListTagsForResourceOutput) {
4519	op := &request.Operation{
4520		Name:       opListTagsForResource,
4521		HTTPMethod: "POST",
4522		HTTPPath:   "/",
4523		Paginator: &request.Paginator{
4524			InputTokens:     []string{"nextToken"},
4525			OutputTokens:    []string{"nextToken"},
4526			LimitToken:      "maxResults",
4527			TruncationToken: "",
4528		},
4529	}
4530
4531	if input == nil {
4532		input = &ListTagsForResourceInput{}
4533	}
4534
4535	output = &ListTagsForResourceOutput{}
4536	req = c.newRequest(op, input, output)
4537	return
4538}
4539
4540// ListTagsForResource API operation for Amazon Fraud Detector.
4541//
4542// Lists all tags associated with the resource. This is a paginated API. To
4543// get the next page results, provide the pagination token from the response
4544// as part of your request. A null pagination token fetches the records from
4545// the beginning.
4546//
4547// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
4548// with awserr.Error's Code and Message methods to get detailed information about
4549// the error.
4550//
4551// See the AWS API reference guide for Amazon Fraud Detector's
4552// API operation ListTagsForResource for usage and error information.
4553//
4554// Returned Error Types:
4555//   * ValidationException
4556//   An exception indicating a specified value is not allowed.
4557//
4558//   * ResourceNotFoundException
4559//   An exception indicating the specified resource was not found. This can occur
4560//   if you submit a request, such as CreateBatchPredictionJob, but the detector
4561//   name or version does not exist.
4562//
4563//   * ThrottlingException
4564//   An exception indicating a throttling error.
4565//
4566//   * AccessDeniedException
4567//   An exception indicating Amazon Fraud Detector does not have the needed permissions.
4568//   This can occur if you submit a request, such as PutExternalModel, that specifies
4569//   a role that is not in your account.
4570//
4571// See also, https://docs.aws.amazon.com/goto/WebAPI/frauddetector-2019-11-15/ListTagsForResource
4572func (c *FraudDetector) ListTagsForResource(input *ListTagsForResourceInput) (*ListTagsForResourceOutput, error) {
4573	req, out := c.ListTagsForResourceRequest(input)
4574	return out, req.Send()
4575}
4576
4577// ListTagsForResourceWithContext is the same as ListTagsForResource with the addition of
4578// the ability to pass a context and additional request options.
4579//
4580// See ListTagsForResource for details on how to use this API operation.
4581//
4582// The context must be non-nil and will be used for request cancellation. If
4583// the context is nil a panic will occur. In the future the SDK may create
4584// sub-contexts for http.Requests. See https://golang.org/pkg/context/
4585// for more information on using Contexts.
4586func (c *FraudDetector) ListTagsForResourceWithContext(ctx aws.Context, input *ListTagsForResourceInput, opts ...request.Option) (*ListTagsForResourceOutput, error) {
4587	req, out := c.ListTagsForResourceRequest(input)
4588	req.SetContext(ctx)
4589	req.ApplyOptions(opts...)
4590	return out, req.Send()
4591}
4592
4593// ListTagsForResourcePages iterates over the pages of a ListTagsForResource operation,
4594// calling the "fn" function with the response data for each page. To stop
4595// iterating, return false from the fn function.
4596//
4597// See ListTagsForResource method for more information on how to use this operation.
4598//
4599// Note: This operation can generate multiple requests to a service.
4600//
4601//    // Example iterating over at most 3 pages of a ListTagsForResource operation.
4602//    pageNum := 0
4603//    err := client.ListTagsForResourcePages(params,
4604//        func(page *frauddetector.ListTagsForResourceOutput, lastPage bool) bool {
4605//            pageNum++
4606//            fmt.Println(page)
4607//            return pageNum <= 3
4608//        })
4609//
4610func (c *FraudDetector) ListTagsForResourcePages(input *ListTagsForResourceInput, fn func(*ListTagsForResourceOutput, bool) bool) error {
4611	return c.ListTagsForResourcePagesWithContext(aws.BackgroundContext(), input, fn)
4612}
4613
4614// ListTagsForResourcePagesWithContext same as ListTagsForResourcePages except
4615// it takes a Context and allows setting request options on the pages.
4616//
4617// The context must be non-nil and will be used for request cancellation. If
4618// the context is nil a panic will occur. In the future the SDK may create
4619// sub-contexts for http.Requests. See https://golang.org/pkg/context/
4620// for more information on using Contexts.
4621func (c *FraudDetector) ListTagsForResourcePagesWithContext(ctx aws.Context, input *ListTagsForResourceInput, fn func(*ListTagsForResourceOutput, bool) bool, opts ...request.Option) error {
4622	p := request.Pagination{
4623		NewRequest: func() (*request.Request, error) {
4624			var inCpy *ListTagsForResourceInput
4625			if input != nil {
4626				tmp := *input
4627				inCpy = &tmp
4628			}
4629			req, _ := c.ListTagsForResourceRequest(inCpy)
4630			req.SetContext(ctx)
4631			req.ApplyOptions(opts...)
4632			return req, nil
4633		},
4634	}
4635
4636	for p.Next() {
4637		if !fn(p.Page().(*ListTagsForResourceOutput), !p.HasNextPage()) {
4638			break
4639		}
4640	}
4641
4642	return p.Err()
4643}
4644
4645const opPutDetector = "PutDetector"
4646
4647// PutDetectorRequest generates a "aws/request.Request" representing the
4648// client's request for the PutDetector operation. The "output" return
4649// value will be populated with the request's response once the request completes
4650// successfully.
4651//
4652// Use "Send" method on the returned Request to send the API call to the service.
4653// the "output" return value is not valid until after Send returns without error.
4654//
4655// See PutDetector for more information on using the PutDetector
4656// API call, and error handling.
4657//
4658// This method is useful when you want to inject custom logic or configuration
4659// into the SDK's request lifecycle. Such as custom headers, or retry logic.
4660//
4661//
4662//    // Example sending a request using the PutDetectorRequest method.
4663//    req, resp := client.PutDetectorRequest(params)
4664//
4665//    err := req.Send()
4666//    if err == nil { // resp is now filled
4667//        fmt.Println(resp)
4668//    }
4669//
4670// See also, https://docs.aws.amazon.com/goto/WebAPI/frauddetector-2019-11-15/PutDetector
4671func (c *FraudDetector) PutDetectorRequest(input *PutDetectorInput) (req *request.Request, output *PutDetectorOutput) {
4672	op := &request.Operation{
4673		Name:       opPutDetector,
4674		HTTPMethod: "POST",
4675		HTTPPath:   "/",
4676	}
4677
4678	if input == nil {
4679		input = &PutDetectorInput{}
4680	}
4681
4682	output = &PutDetectorOutput{}
4683	req = c.newRequest(op, input, output)
4684	req.Handlers.Unmarshal.Swap(jsonrpc.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler)
4685	return
4686}
4687
4688// PutDetector API operation for Amazon Fraud Detector.
4689//
4690// Creates or updates a detector.
4691//
4692// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
4693// with awserr.Error's Code and Message methods to get detailed information about
4694// the error.
4695//
4696// See the AWS API reference guide for Amazon Fraud Detector's
4697// API operation PutDetector for usage and error information.
4698//
4699// Returned Error Types:
4700//   * ValidationException
4701//   An exception indicating a specified value is not allowed.
4702//
4703//   * InternalServerException
4704//   An exception indicating an internal server error.
4705//
4706//   * ThrottlingException
4707//   An exception indicating a throttling error.
4708//
4709//   * AccessDeniedException
4710//   An exception indicating Amazon Fraud Detector does not have the needed permissions.
4711//   This can occur if you submit a request, such as PutExternalModel, that specifies
4712//   a role that is not in your account.
4713//
4714//   * ConflictException
4715//   An exception indicating there was a conflict during a delete operation. The
4716//   following delete operations can cause a conflict exception:
4717//
4718//      * DeleteDetector: A conflict exception will occur if the detector has
4719//      associated Rules or DetectorVersions. You can only delete a detector if
4720//      it has no Rules or DetectorVersions.
4721//
4722//      * DeleteDetectorVersion: A conflict exception will occur if the DetectorVersion
4723//      status is ACTIVE.
4724//
4725//      * DeleteRule: A conflict exception will occur if the RuleVersion is in
4726//      use by an associated ACTIVE or INACTIVE DetectorVersion.
4727//
4728// See also, https://docs.aws.amazon.com/goto/WebAPI/frauddetector-2019-11-15/PutDetector
4729func (c *FraudDetector) PutDetector(input *PutDetectorInput) (*PutDetectorOutput, error) {
4730	req, out := c.PutDetectorRequest(input)
4731	return out, req.Send()
4732}
4733
4734// PutDetectorWithContext is the same as PutDetector with the addition of
4735// the ability to pass a context and additional request options.
4736//
4737// See PutDetector for details on how to use this API operation.
4738//
4739// The context must be non-nil and will be used for request cancellation. If
4740// the context is nil a panic will occur. In the future the SDK may create
4741// sub-contexts for http.Requests. See https://golang.org/pkg/context/
4742// for more information on using Contexts.
4743func (c *FraudDetector) PutDetectorWithContext(ctx aws.Context, input *PutDetectorInput, opts ...request.Option) (*PutDetectorOutput, error) {
4744	req, out := c.PutDetectorRequest(input)
4745	req.SetContext(ctx)
4746	req.ApplyOptions(opts...)
4747	return out, req.Send()
4748}
4749
4750const opPutEntityType = "PutEntityType"
4751
4752// PutEntityTypeRequest generates a "aws/request.Request" representing the
4753// client's request for the PutEntityType operation. The "output" return
4754// value will be populated with the request's response once the request completes
4755// successfully.
4756//
4757// Use "Send" method on the returned Request to send the API call to the service.
4758// the "output" return value is not valid until after Send returns without error.
4759//
4760// See PutEntityType for more information on using the PutEntityType
4761// API call, and error handling.
4762//
4763// This method is useful when you want to inject custom logic or configuration
4764// into the SDK's request lifecycle. Such as custom headers, or retry logic.
4765//
4766//
4767//    // Example sending a request using the PutEntityTypeRequest method.
4768//    req, resp := client.PutEntityTypeRequest(params)
4769//
4770//    err := req.Send()
4771//    if err == nil { // resp is now filled
4772//        fmt.Println(resp)
4773//    }
4774//
4775// See also, https://docs.aws.amazon.com/goto/WebAPI/frauddetector-2019-11-15/PutEntityType
4776func (c *FraudDetector) PutEntityTypeRequest(input *PutEntityTypeInput) (req *request.Request, output *PutEntityTypeOutput) {
4777	op := &request.Operation{
4778		Name:       opPutEntityType,
4779		HTTPMethod: "POST",
4780		HTTPPath:   "/",
4781	}
4782
4783	if input == nil {
4784		input = &PutEntityTypeInput{}
4785	}
4786
4787	output = &PutEntityTypeOutput{}
4788	req = c.newRequest(op, input, output)
4789	req.Handlers.Unmarshal.Swap(jsonrpc.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler)
4790	return
4791}
4792
4793// PutEntityType API operation for Amazon Fraud Detector.
4794//
4795// Creates or updates an entity type. An entity represents who is performing
4796// the event. As part of a fraud prediction, you pass the entity ID to indicate
4797// the specific entity who performed the event. An entity type classifies the
4798// entity. Example classifications include customer, merchant, or account.
4799//
4800// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
4801// with awserr.Error's Code and Message methods to get detailed information about
4802// the error.
4803//
4804// See the AWS API reference guide for Amazon Fraud Detector's
4805// API operation PutEntityType for usage and error information.
4806//
4807// Returned Error Types:
4808//   * ValidationException
4809//   An exception indicating a specified value is not allowed.
4810//
4811//   * InternalServerException
4812//   An exception indicating an internal server error.
4813//
4814//   * ThrottlingException
4815//   An exception indicating a throttling error.
4816//
4817//   * AccessDeniedException
4818//   An exception indicating Amazon Fraud Detector does not have the needed permissions.
4819//   This can occur if you submit a request, such as PutExternalModel, that specifies
4820//   a role that is not in your account.
4821//
4822//   * ConflictException
4823//   An exception indicating there was a conflict during a delete operation. The
4824//   following delete operations can cause a conflict exception:
4825//
4826//      * DeleteDetector: A conflict exception will occur if the detector has
4827//      associated Rules or DetectorVersions. You can only delete a detector if
4828//      it has no Rules or DetectorVersions.
4829//
4830//      * DeleteDetectorVersion: A conflict exception will occur if the DetectorVersion
4831//      status is ACTIVE.
4832//
4833//      * DeleteRule: A conflict exception will occur if the RuleVersion is in
4834//      use by an associated ACTIVE or INACTIVE DetectorVersion.
4835//
4836// See also, https://docs.aws.amazon.com/goto/WebAPI/frauddetector-2019-11-15/PutEntityType
4837func (c *FraudDetector) PutEntityType(input *PutEntityTypeInput) (*PutEntityTypeOutput, error) {
4838	req, out := c.PutEntityTypeRequest(input)
4839	return out, req.Send()
4840}
4841
4842// PutEntityTypeWithContext is the same as PutEntityType with the addition of
4843// the ability to pass a context and additional request options.
4844//
4845// See PutEntityType for details on how to use this API operation.
4846//
4847// The context must be non-nil and will be used for request cancellation. If
4848// the context is nil a panic will occur. In the future the SDK may create
4849// sub-contexts for http.Requests. See https://golang.org/pkg/context/
4850// for more information on using Contexts.
4851func (c *FraudDetector) PutEntityTypeWithContext(ctx aws.Context, input *PutEntityTypeInput, opts ...request.Option) (*PutEntityTypeOutput, error) {
4852	req, out := c.PutEntityTypeRequest(input)
4853	req.SetContext(ctx)
4854	req.ApplyOptions(opts...)
4855	return out, req.Send()
4856}
4857
4858const opPutEventType = "PutEventType"
4859
4860// PutEventTypeRequest generates a "aws/request.Request" representing the
4861// client's request for the PutEventType operation. The "output" return
4862// value will be populated with the request's response once the request completes
4863// successfully.
4864//
4865// Use "Send" method on the returned Request to send the API call to the service.
4866// the "output" return value is not valid until after Send returns without error.
4867//
4868// See PutEventType for more information on using the PutEventType
4869// API call, and error handling.
4870//
4871// This method is useful when you want to inject custom logic or configuration
4872// into the SDK's request lifecycle. Such as custom headers, or retry logic.
4873//
4874//
4875//    // Example sending a request using the PutEventTypeRequest method.
4876//    req, resp := client.PutEventTypeRequest(params)
4877//
4878//    err := req.Send()
4879//    if err == nil { // resp is now filled
4880//        fmt.Println(resp)
4881//    }
4882//
4883// See also, https://docs.aws.amazon.com/goto/WebAPI/frauddetector-2019-11-15/PutEventType
4884func (c *FraudDetector) PutEventTypeRequest(input *PutEventTypeInput) (req *request.Request, output *PutEventTypeOutput) {
4885	op := &request.Operation{
4886		Name:       opPutEventType,
4887		HTTPMethod: "POST",
4888		HTTPPath:   "/",
4889	}
4890
4891	if input == nil {
4892		input = &PutEventTypeInput{}
4893	}
4894
4895	output = &PutEventTypeOutput{}
4896	req = c.newRequest(op, input, output)
4897	req.Handlers.Unmarshal.Swap(jsonrpc.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler)
4898	return
4899}
4900
4901// PutEventType API operation for Amazon Fraud Detector.
4902//
4903// Creates or updates an event type. An event is a business activity that is
4904// evaluated for fraud risk. With Amazon Fraud Detector, you generate fraud
4905// predictions for events. An event type defines the structure for an event
4906// sent to Amazon Fraud Detector. This includes the variables sent as part of
4907// the event, the entity performing the event (such as a customer), and the
4908// labels that classify the event. Example event types include online payment
4909// transactions, account registrations, and authentications.
4910//
4911// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
4912// with awserr.Error's Code and Message methods to get detailed information about
4913// the error.
4914//
4915// See the AWS API reference guide for Amazon Fraud Detector's
4916// API operation PutEventType for usage and error information.
4917//
4918// Returned Error Types:
4919//   * ValidationException
4920//   An exception indicating a specified value is not allowed.
4921//
4922//   * InternalServerException
4923//   An exception indicating an internal server error.
4924//
4925//   * ThrottlingException
4926//   An exception indicating a throttling error.
4927//
4928//   * AccessDeniedException
4929//   An exception indicating Amazon Fraud Detector does not have the needed permissions.
4930//   This can occur if you submit a request, such as PutExternalModel, that specifies
4931//   a role that is not in your account.
4932//
4933//   * ConflictException
4934//   An exception indicating there was a conflict during a delete operation. The
4935//   following delete operations can cause a conflict exception:
4936//
4937//      * DeleteDetector: A conflict exception will occur if the detector has
4938//      associated Rules or DetectorVersions. You can only delete a detector if
4939//      it has no Rules or DetectorVersions.
4940//
4941//      * DeleteDetectorVersion: A conflict exception will occur if the DetectorVersion
4942//      status is ACTIVE.
4943//
4944//      * DeleteRule: A conflict exception will occur if the RuleVersion is in
4945//      use by an associated ACTIVE or INACTIVE DetectorVersion.
4946//
4947// See also, https://docs.aws.amazon.com/goto/WebAPI/frauddetector-2019-11-15/PutEventType
4948func (c *FraudDetector) PutEventType(input *PutEventTypeInput) (*PutEventTypeOutput, error) {
4949	req, out := c.PutEventTypeRequest(input)
4950	return out, req.Send()
4951}
4952
4953// PutEventTypeWithContext is the same as PutEventType with the addition of
4954// the ability to pass a context and additional request options.
4955//
4956// See PutEventType for details on how to use this API operation.
4957//
4958// The context must be non-nil and will be used for request cancellation. If
4959// the context is nil a panic will occur. In the future the SDK may create
4960// sub-contexts for http.Requests. See https://golang.org/pkg/context/
4961// for more information on using Contexts.
4962func (c *FraudDetector) PutEventTypeWithContext(ctx aws.Context, input *PutEventTypeInput, opts ...request.Option) (*PutEventTypeOutput, error) {
4963	req, out := c.PutEventTypeRequest(input)
4964	req.SetContext(ctx)
4965	req.ApplyOptions(opts...)
4966	return out, req.Send()
4967}
4968
4969const opPutExternalModel = "PutExternalModel"
4970
4971// PutExternalModelRequest generates a "aws/request.Request" representing the
4972// client's request for the PutExternalModel operation. The "output" return
4973// value will be populated with the request's response once the request completes
4974// successfully.
4975//
4976// Use "Send" method on the returned Request to send the API call to the service.
4977// the "output" return value is not valid until after Send returns without error.
4978//
4979// See PutExternalModel for more information on using the PutExternalModel
4980// API call, and error handling.
4981//
4982// This method is useful when you want to inject custom logic or configuration
4983// into the SDK's request lifecycle. Such as custom headers, or retry logic.
4984//
4985//
4986//    // Example sending a request using the PutExternalModelRequest method.
4987//    req, resp := client.PutExternalModelRequest(params)
4988//
4989//    err := req.Send()
4990//    if err == nil { // resp is now filled
4991//        fmt.Println(resp)
4992//    }
4993//
4994// See also, https://docs.aws.amazon.com/goto/WebAPI/frauddetector-2019-11-15/PutExternalModel
4995func (c *FraudDetector) PutExternalModelRequest(input *PutExternalModelInput) (req *request.Request, output *PutExternalModelOutput) {
4996	op := &request.Operation{
4997		Name:       opPutExternalModel,
4998		HTTPMethod: "POST",
4999		HTTPPath:   "/",
5000	}
5001
5002	if input == nil {
5003		input = &PutExternalModelInput{}
5004	}
5005
5006	output = &PutExternalModelOutput{}
5007	req = c.newRequest(op, input, output)
5008	req.Handlers.Unmarshal.Swap(jsonrpc.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler)
5009	return
5010}
5011
5012// PutExternalModel API operation for Amazon Fraud Detector.
5013//
5014// Creates or updates an Amazon SageMaker model endpoint. You can also use this
5015// action to update the configuration of the model endpoint, including the IAM
5016// role and/or the mapped variables.
5017//
5018// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
5019// with awserr.Error's Code and Message methods to get detailed information about
5020// the error.
5021//
5022// See the AWS API reference guide for Amazon Fraud Detector's
5023// API operation PutExternalModel for usage and error information.
5024//
5025// Returned Error Types:
5026//   * ValidationException
5027//   An exception indicating a specified value is not allowed.
5028//
5029//   * InternalServerException
5030//   An exception indicating an internal server error.
5031//
5032//   * ThrottlingException
5033//   An exception indicating a throttling error.
5034//
5035//   * AccessDeniedException
5036//   An exception indicating Amazon Fraud Detector does not have the needed permissions.
5037//   This can occur if you submit a request, such as PutExternalModel, that specifies
5038//   a role that is not in your account.
5039//
5040//   * ConflictException
5041//   An exception indicating there was a conflict during a delete operation. The
5042//   following delete operations can cause a conflict exception:
5043//
5044//      * DeleteDetector: A conflict exception will occur if the detector has
5045//      associated Rules or DetectorVersions. You can only delete a detector if
5046//      it has no Rules or DetectorVersions.
5047//
5048//      * DeleteDetectorVersion: A conflict exception will occur if the DetectorVersion
5049//      status is ACTIVE.
5050//
5051//      * DeleteRule: A conflict exception will occur if the RuleVersion is in
5052//      use by an associated ACTIVE or INACTIVE DetectorVersion.
5053//
5054// See also, https://docs.aws.amazon.com/goto/WebAPI/frauddetector-2019-11-15/PutExternalModel
5055func (c *FraudDetector) PutExternalModel(input *PutExternalModelInput) (*PutExternalModelOutput, error) {
5056	req, out := c.PutExternalModelRequest(input)
5057	return out, req.Send()
5058}
5059
5060// PutExternalModelWithContext is the same as PutExternalModel with the addition of
5061// the ability to pass a context and additional request options.
5062//
5063// See PutExternalModel for details on how to use this API operation.
5064//
5065// The context must be non-nil and will be used for request cancellation. If
5066// the context is nil a panic will occur. In the future the SDK may create
5067// sub-contexts for http.Requests. See https://golang.org/pkg/context/
5068// for more information on using Contexts.
5069func (c *FraudDetector) PutExternalModelWithContext(ctx aws.Context, input *PutExternalModelInput, opts ...request.Option) (*PutExternalModelOutput, error) {
5070	req, out := c.PutExternalModelRequest(input)
5071	req.SetContext(ctx)
5072	req.ApplyOptions(opts...)
5073	return out, req.Send()
5074}
5075
5076const opPutKMSEncryptionKey = "PutKMSEncryptionKey"
5077
5078// PutKMSEncryptionKeyRequest generates a "aws/request.Request" representing the
5079// client's request for the PutKMSEncryptionKey operation. The "output" return
5080// value will be populated with the request's response once the request completes
5081// successfully.
5082//
5083// Use "Send" method on the returned Request to send the API call to the service.
5084// the "output" return value is not valid until after Send returns without error.
5085//
5086// See PutKMSEncryptionKey for more information on using the PutKMSEncryptionKey
5087// API call, and error handling.
5088//
5089// This method is useful when you want to inject custom logic or configuration
5090// into the SDK's request lifecycle. Such as custom headers, or retry logic.
5091//
5092//
5093//    // Example sending a request using the PutKMSEncryptionKeyRequest method.
5094//    req, resp := client.PutKMSEncryptionKeyRequest(params)
5095//
5096//    err := req.Send()
5097//    if err == nil { // resp is now filled
5098//        fmt.Println(resp)
5099//    }
5100//
5101// See also, https://docs.aws.amazon.com/goto/WebAPI/frauddetector-2019-11-15/PutKMSEncryptionKey
5102func (c *FraudDetector) PutKMSEncryptionKeyRequest(input *PutKMSEncryptionKeyInput) (req *request.Request, output *PutKMSEncryptionKeyOutput) {
5103	op := &request.Operation{
5104		Name:       opPutKMSEncryptionKey,
5105		HTTPMethod: "POST",
5106		HTTPPath:   "/",
5107	}
5108
5109	if input == nil {
5110		input = &PutKMSEncryptionKeyInput{}
5111	}
5112
5113	output = &PutKMSEncryptionKeyOutput{}
5114	req = c.newRequest(op, input, output)
5115	req.Handlers.Unmarshal.Swap(jsonrpc.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler)
5116	return
5117}
5118
5119// PutKMSEncryptionKey API operation for Amazon Fraud Detector.
5120//
5121// Specifies the Key Management Service (KMS) customer master key (CMK) to be
5122// used to encrypt content in Amazon Fraud Detector.
5123//
5124// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
5125// with awserr.Error's Code and Message methods to get detailed information about
5126// the error.
5127//
5128// See the AWS API reference guide for Amazon Fraud Detector's
5129// API operation PutKMSEncryptionKey for usage and error information.
5130//
5131// Returned Error Types:
5132//   * ValidationException
5133//   An exception indicating a specified value is not allowed.
5134//
5135//   * ResourceNotFoundException
5136//   An exception indicating the specified resource was not found. This can occur
5137//   if you submit a request, such as CreateBatchPredictionJob, but the detector
5138//   name or version does not exist.
5139//
5140//   * InternalServerException
5141//   An exception indicating an internal server error.
5142//
5143//   * ThrottlingException
5144//   An exception indicating a throttling error.
5145//
5146//   * AccessDeniedException
5147//   An exception indicating Amazon Fraud Detector does not have the needed permissions.
5148//   This can occur if you submit a request, such as PutExternalModel, that specifies
5149//   a role that is not in your account.
5150//
5151//   * ConflictException
5152//   An exception indicating there was a conflict during a delete operation. The
5153//   following delete operations can cause a conflict exception:
5154//
5155//      * DeleteDetector: A conflict exception will occur if the detector has
5156//      associated Rules or DetectorVersions. You can only delete a detector if
5157//      it has no Rules or DetectorVersions.
5158//
5159//      * DeleteDetectorVersion: A conflict exception will occur if the DetectorVersion
5160//      status is ACTIVE.
5161//
5162//      * DeleteRule: A conflict exception will occur if the RuleVersion is in
5163//      use by an associated ACTIVE or INACTIVE DetectorVersion.
5164//
5165// See also, https://docs.aws.amazon.com/goto/WebAPI/frauddetector-2019-11-15/PutKMSEncryptionKey
5166func (c *FraudDetector) PutKMSEncryptionKey(input *PutKMSEncryptionKeyInput) (*PutKMSEncryptionKeyOutput, error) {
5167	req, out := c.PutKMSEncryptionKeyRequest(input)
5168	return out, req.Send()
5169}
5170
5171// PutKMSEncryptionKeyWithContext is the same as PutKMSEncryptionKey with the addition of
5172// the ability to pass a context and additional request options.
5173//
5174// See PutKMSEncryptionKey for details on how to use this API operation.
5175//
5176// The context must be non-nil and will be used for request cancellation. If
5177// the context is nil a panic will occur. In the future the SDK may create
5178// sub-contexts for http.Requests. See https://golang.org/pkg/context/
5179// for more information on using Contexts.
5180func (c *FraudDetector) PutKMSEncryptionKeyWithContext(ctx aws.Context, input *PutKMSEncryptionKeyInput, opts ...request.Option) (*PutKMSEncryptionKeyOutput, error) {
5181	req, out := c.PutKMSEncryptionKeyRequest(input)
5182	req.SetContext(ctx)
5183	req.ApplyOptions(opts...)
5184	return out, req.Send()
5185}
5186
5187const opPutLabel = "PutLabel"
5188
5189// PutLabelRequest generates a "aws/request.Request" representing the
5190// client's request for the PutLabel operation. The "output" return
5191// value will be populated with the request's response once the request completes
5192// successfully.
5193//
5194// Use "Send" method on the returned Request to send the API call to the service.
5195// the "output" return value is not valid until after Send returns without error.
5196//
5197// See PutLabel for more information on using the PutLabel
5198// API call, and error handling.
5199//
5200// This method is useful when you want to inject custom logic or configuration
5201// into the SDK's request lifecycle. Such as custom headers, or retry logic.
5202//
5203//
5204//    // Example sending a request using the PutLabelRequest method.
5205//    req, resp := client.PutLabelRequest(params)
5206//
5207//    err := req.Send()
5208//    if err == nil { // resp is now filled
5209//        fmt.Println(resp)
5210//    }
5211//
5212// See also, https://docs.aws.amazon.com/goto/WebAPI/frauddetector-2019-11-15/PutLabel
5213func (c *FraudDetector) PutLabelRequest(input *PutLabelInput) (req *request.Request, output *PutLabelOutput) {
5214	op := &request.Operation{
5215		Name:       opPutLabel,
5216		HTTPMethod: "POST",
5217		HTTPPath:   "/",
5218	}
5219
5220	if input == nil {
5221		input = &PutLabelInput{}
5222	}
5223
5224	output = &PutLabelOutput{}
5225	req = c.newRequest(op, input, output)
5226	req.Handlers.Unmarshal.Swap(jsonrpc.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler)
5227	return
5228}
5229
5230// PutLabel API operation for Amazon Fraud Detector.
5231//
5232// Creates or updates label. A label classifies an event as fraudulent or legitimate.
5233// Labels are associated with event types and used to train supervised machine
5234// learning models in Amazon Fraud Detector.
5235//
5236// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
5237// with awserr.Error's Code and Message methods to get detailed information about
5238// the error.
5239//
5240// See the AWS API reference guide for Amazon Fraud Detector's
5241// API operation PutLabel for usage and error information.
5242//
5243// Returned Error Types:
5244//   * ValidationException
5245//   An exception indicating a specified value is not allowed.
5246//
5247//   * InternalServerException
5248//   An exception indicating an internal server error.
5249//
5250//   * ThrottlingException
5251//   An exception indicating a throttling error.
5252//
5253//   * AccessDeniedException
5254//   An exception indicating Amazon Fraud Detector does not have the needed permissions.
5255//   This can occur if you submit a request, such as PutExternalModel, that specifies
5256//   a role that is not in your account.
5257//
5258//   * ConflictException
5259//   An exception indicating there was a conflict during a delete operation. The
5260//   following delete operations can cause a conflict exception:
5261//
5262//      * DeleteDetector: A conflict exception will occur if the detector has
5263//      associated Rules or DetectorVersions. You can only delete a detector if
5264//      it has no Rules or DetectorVersions.
5265//
5266//      * DeleteDetectorVersion: A conflict exception will occur if the DetectorVersion
5267//      status is ACTIVE.
5268//
5269//      * DeleteRule: A conflict exception will occur if the RuleVersion is in
5270//      use by an associated ACTIVE or INACTIVE DetectorVersion.
5271//
5272// See also, https://docs.aws.amazon.com/goto/WebAPI/frauddetector-2019-11-15/PutLabel
5273func (c *FraudDetector) PutLabel(input *PutLabelInput) (*PutLabelOutput, error) {
5274	req, out := c.PutLabelRequest(input)
5275	return out, req.Send()
5276}
5277
5278// PutLabelWithContext is the same as PutLabel with the addition of
5279// the ability to pass a context and additional request options.
5280//
5281// See PutLabel for details on how to use this API operation.
5282//
5283// The context must be non-nil and will be used for request cancellation. If
5284// the context is nil a panic will occur. In the future the SDK may create
5285// sub-contexts for http.Requests. See https://golang.org/pkg/context/
5286// for more information on using Contexts.
5287func (c *FraudDetector) PutLabelWithContext(ctx aws.Context, input *PutLabelInput, opts ...request.Option) (*PutLabelOutput, error) {
5288	req, out := c.PutLabelRequest(input)
5289	req.SetContext(ctx)
5290	req.ApplyOptions(opts...)
5291	return out, req.Send()
5292}
5293
5294const opPutOutcome = "PutOutcome"
5295
5296// PutOutcomeRequest generates a "aws/request.Request" representing the
5297// client's request for the PutOutcome operation. The "output" return
5298// value will be populated with the request's response once the request completes
5299// successfully.
5300//
5301// Use "Send" method on the returned Request to send the API call to the service.
5302// the "output" return value is not valid until after Send returns without error.
5303//
5304// See PutOutcome for more information on using the PutOutcome
5305// API call, and error handling.
5306//
5307// This method is useful when you want to inject custom logic or configuration
5308// into the SDK's request lifecycle. Such as custom headers, or retry logic.
5309//
5310//
5311//    // Example sending a request using the PutOutcomeRequest method.
5312//    req, resp := client.PutOutcomeRequest(params)
5313//
5314//    err := req.Send()
5315//    if err == nil { // resp is now filled
5316//        fmt.Println(resp)
5317//    }
5318//
5319// See also, https://docs.aws.amazon.com/goto/WebAPI/frauddetector-2019-11-15/PutOutcome
5320func (c *FraudDetector) PutOutcomeRequest(input *PutOutcomeInput) (req *request.Request, output *PutOutcomeOutput) {
5321	op := &request.Operation{
5322		Name:       opPutOutcome,
5323		HTTPMethod: "POST",
5324		HTTPPath:   "/",
5325	}
5326
5327	if input == nil {
5328		input = &PutOutcomeInput{}
5329	}
5330
5331	output = &PutOutcomeOutput{}
5332	req = c.newRequest(op, input, output)
5333	req.Handlers.Unmarshal.Swap(jsonrpc.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler)
5334	return
5335}
5336
5337// PutOutcome API operation for Amazon Fraud Detector.
5338//
5339// Creates or updates an outcome.
5340//
5341// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
5342// with awserr.Error's Code and Message methods to get detailed information about
5343// the error.
5344//
5345// See the AWS API reference guide for Amazon Fraud Detector's
5346// API operation PutOutcome for usage and error information.
5347//
5348// Returned Error Types:
5349//   * ValidationException
5350//   An exception indicating a specified value is not allowed.
5351//
5352//   * InternalServerException
5353//   An exception indicating an internal server error.
5354//
5355//   * ThrottlingException
5356//   An exception indicating a throttling error.
5357//
5358//   * AccessDeniedException
5359//   An exception indicating Amazon Fraud Detector does not have the needed permissions.
5360//   This can occur if you submit a request, such as PutExternalModel, that specifies
5361//   a role that is not in your account.
5362//
5363//   * ConflictException
5364//   An exception indicating there was a conflict during a delete operation. The
5365//   following delete operations can cause a conflict exception:
5366//
5367//      * DeleteDetector: A conflict exception will occur if the detector has
5368//      associated Rules or DetectorVersions. You can only delete a detector if
5369//      it has no Rules or DetectorVersions.
5370//
5371//      * DeleteDetectorVersion: A conflict exception will occur if the DetectorVersion
5372//      status is ACTIVE.
5373//
5374//      * DeleteRule: A conflict exception will occur if the RuleVersion is in
5375//      use by an associated ACTIVE or INACTIVE DetectorVersion.
5376//
5377// See also, https://docs.aws.amazon.com/goto/WebAPI/frauddetector-2019-11-15/PutOutcome
5378func (c *FraudDetector) PutOutcome(input *PutOutcomeInput) (*PutOutcomeOutput, error) {
5379	req, out := c.PutOutcomeRequest(input)
5380	return out, req.Send()
5381}
5382
5383// PutOutcomeWithContext is the same as PutOutcome with the addition of
5384// the ability to pass a context and additional request options.
5385//
5386// See PutOutcome for details on how to use this API operation.
5387//
5388// The context must be non-nil and will be used for request cancellation. If
5389// the context is nil a panic will occur. In the future the SDK may create
5390// sub-contexts for http.Requests. See https://golang.org/pkg/context/
5391// for more information on using Contexts.
5392func (c *FraudDetector) PutOutcomeWithContext(ctx aws.Context, input *PutOutcomeInput, opts ...request.Option) (*PutOutcomeOutput, error) {
5393	req, out := c.PutOutcomeRequest(input)
5394	req.SetContext(ctx)
5395	req.ApplyOptions(opts...)
5396	return out, req.Send()
5397}
5398
5399const opTagResource = "TagResource"
5400
5401// TagResourceRequest generates a "aws/request.Request" representing the
5402// client's request for the TagResource operation. The "output" return
5403// value will be populated with the request's response once the request completes
5404// successfully.
5405//
5406// Use "Send" method on the returned Request to send the API call to the service.
5407// the "output" return value is not valid until after Send returns without error.
5408//
5409// See TagResource for more information on using the TagResource
5410// API call, and error handling.
5411//
5412// This method is useful when you want to inject custom logic or configuration
5413// into the SDK's request lifecycle. Such as custom headers, or retry logic.
5414//
5415//
5416//    // Example sending a request using the TagResourceRequest method.
5417//    req, resp := client.TagResourceRequest(params)
5418//
5419//    err := req.Send()
5420//    if err == nil { // resp is now filled
5421//        fmt.Println(resp)
5422//    }
5423//
5424// See also, https://docs.aws.amazon.com/goto/WebAPI/frauddetector-2019-11-15/TagResource
5425func (c *FraudDetector) TagResourceRequest(input *TagResourceInput) (req *request.Request, output *TagResourceOutput) {
5426	op := &request.Operation{
5427		Name:       opTagResource,
5428		HTTPMethod: "POST",
5429		HTTPPath:   "/",
5430	}
5431
5432	if input == nil {
5433		input = &TagResourceInput{}
5434	}
5435
5436	output = &TagResourceOutput{}
5437	req = c.newRequest(op, input, output)
5438	req.Handlers.Unmarshal.Swap(jsonrpc.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler)
5439	return
5440}
5441
5442// TagResource API operation for Amazon Fraud Detector.
5443//
5444// Assigns tags to a resource.
5445//
5446// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
5447// with awserr.Error's Code and Message methods to get detailed information about
5448// the error.
5449//
5450// See the AWS API reference guide for Amazon Fraud Detector's
5451// API operation TagResource for usage and error information.
5452//
5453// Returned Error Types:
5454//   * ValidationException
5455//   An exception indicating a specified value is not allowed.
5456//
5457//   * ResourceNotFoundException
5458//   An exception indicating the specified resource was not found. This can occur
5459//   if you submit a request, such as CreateBatchPredictionJob, but the detector
5460//   name or version does not exist.
5461//
5462//   * ThrottlingException
5463//   An exception indicating a throttling error.
5464//
5465//   * AccessDeniedException
5466//   An exception indicating Amazon Fraud Detector does not have the needed permissions.
5467//   This can occur if you submit a request, such as PutExternalModel, that specifies
5468//   a role that is not in your account.
5469//
5470// See also, https://docs.aws.amazon.com/goto/WebAPI/frauddetector-2019-11-15/TagResource
5471func (c *FraudDetector) TagResource(input *TagResourceInput) (*TagResourceOutput, error) {
5472	req, out := c.TagResourceRequest(input)
5473	return out, req.Send()
5474}
5475
5476// TagResourceWithContext is the same as TagResource with the addition of
5477// the ability to pass a context and additional request options.
5478//
5479// See TagResource for details on how to use this API operation.
5480//
5481// The context must be non-nil and will be used for request cancellation. If
5482// the context is nil a panic will occur. In the future the SDK may create
5483// sub-contexts for http.Requests. See https://golang.org/pkg/context/
5484// for more information on using Contexts.
5485func (c *FraudDetector) TagResourceWithContext(ctx aws.Context, input *TagResourceInput, opts ...request.Option) (*TagResourceOutput, error) {
5486	req, out := c.TagResourceRequest(input)
5487	req.SetContext(ctx)
5488	req.ApplyOptions(opts...)
5489	return out, req.Send()
5490}
5491
5492const opUntagResource = "UntagResource"
5493
5494// UntagResourceRequest generates a "aws/request.Request" representing the
5495// client's request for the UntagResource operation. The "output" return
5496// value will be populated with the request's response once the request completes
5497// successfully.
5498//
5499// Use "Send" method on the returned Request to send the API call to the service.
5500// the "output" return value is not valid until after Send returns without error.
5501//
5502// See UntagResource for more information on using the UntagResource
5503// API call, and error handling.
5504//
5505// This method is useful when you want to inject custom logic or configuration
5506// into the SDK's request lifecycle. Such as custom headers, or retry logic.
5507//
5508//
5509//    // Example sending a request using the UntagResourceRequest method.
5510//    req, resp := client.UntagResourceRequest(params)
5511//
5512//    err := req.Send()
5513//    if err == nil { // resp is now filled
5514//        fmt.Println(resp)
5515//    }
5516//
5517// See also, https://docs.aws.amazon.com/goto/WebAPI/frauddetector-2019-11-15/UntagResource
5518func (c *FraudDetector) UntagResourceRequest(input *UntagResourceInput) (req *request.Request, output *UntagResourceOutput) {
5519	op := &request.Operation{
5520		Name:       opUntagResource,
5521		HTTPMethod: "POST",
5522		HTTPPath:   "/",
5523	}
5524
5525	if input == nil {
5526		input = &UntagResourceInput{}
5527	}
5528
5529	output = &UntagResourceOutput{}
5530	req = c.newRequest(op, input, output)
5531	req.Handlers.Unmarshal.Swap(jsonrpc.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler)
5532	return
5533}
5534
5535// UntagResource API operation for Amazon Fraud Detector.
5536//
5537// Removes tags from a resource.
5538//
5539// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
5540// with awserr.Error's Code and Message methods to get detailed information about
5541// the error.
5542//
5543// See the AWS API reference guide for Amazon Fraud Detector's
5544// API operation UntagResource for usage and error information.
5545//
5546// Returned Error Types:
5547//   * ValidationException
5548//   An exception indicating a specified value is not allowed.
5549//
5550//   * ResourceNotFoundException
5551//   An exception indicating the specified resource was not found. This can occur
5552//   if you submit a request, such as CreateBatchPredictionJob, but the detector
5553//   name or version does not exist.
5554//
5555//   * ThrottlingException
5556//   An exception indicating a throttling error.
5557//
5558//   * AccessDeniedException
5559//   An exception indicating Amazon Fraud Detector does not have the needed permissions.
5560//   This can occur if you submit a request, such as PutExternalModel, that specifies
5561//   a role that is not in your account.
5562//
5563// See also, https://docs.aws.amazon.com/goto/WebAPI/frauddetector-2019-11-15/UntagResource
5564func (c *FraudDetector) UntagResource(input *UntagResourceInput) (*UntagResourceOutput, error) {
5565	req, out := c.UntagResourceRequest(input)
5566	return out, req.Send()
5567}
5568
5569// UntagResourceWithContext is the same as UntagResource with the addition of
5570// the ability to pass a context and additional request options.
5571//
5572// See UntagResource for details on how to use this API operation.
5573//
5574// The context must be non-nil and will be used for request cancellation. If
5575// the context is nil a panic will occur. In the future the SDK may create
5576// sub-contexts for http.Requests. See https://golang.org/pkg/context/
5577// for more information on using Contexts.
5578func (c *FraudDetector) UntagResourceWithContext(ctx aws.Context, input *UntagResourceInput, opts ...request.Option) (*UntagResourceOutput, error) {
5579	req, out := c.UntagResourceRequest(input)
5580	req.SetContext(ctx)
5581	req.ApplyOptions(opts...)
5582	return out, req.Send()
5583}
5584
5585const opUpdateDetectorVersion = "UpdateDetectorVersion"
5586
5587// UpdateDetectorVersionRequest generates a "aws/request.Request" representing the
5588// client's request for the UpdateDetectorVersion operation. The "output" return
5589// value will be populated with the request's response once the request completes
5590// successfully.
5591//
5592// Use "Send" method on the returned Request to send the API call to the service.
5593// the "output" return value is not valid until after Send returns without error.
5594//
5595// See UpdateDetectorVersion for more information on using the UpdateDetectorVersion
5596// API call, and error handling.
5597//
5598// This method is useful when you want to inject custom logic or configuration
5599// into the SDK's request lifecycle. Such as custom headers, or retry logic.
5600//
5601//
5602//    // Example sending a request using the UpdateDetectorVersionRequest method.
5603//    req, resp := client.UpdateDetectorVersionRequest(params)
5604//
5605//    err := req.Send()
5606//    if err == nil { // resp is now filled
5607//        fmt.Println(resp)
5608//    }
5609//
5610// See also, https://docs.aws.amazon.com/goto/WebAPI/frauddetector-2019-11-15/UpdateDetectorVersion
5611func (c *FraudDetector) UpdateDetectorVersionRequest(input *UpdateDetectorVersionInput) (req *request.Request, output *UpdateDetectorVersionOutput) {
5612	op := &request.Operation{
5613		Name:       opUpdateDetectorVersion,
5614		HTTPMethod: "POST",
5615		HTTPPath:   "/",
5616	}
5617
5618	if input == nil {
5619		input = &UpdateDetectorVersionInput{}
5620	}
5621
5622	output = &UpdateDetectorVersionOutput{}
5623	req = c.newRequest(op, input, output)
5624	req.Handlers.Unmarshal.Swap(jsonrpc.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler)
5625	return
5626}
5627
5628// UpdateDetectorVersion API operation for Amazon Fraud Detector.
5629//
5630// Updates a detector version. The detector version attributes that you can
5631// update include models, external model endpoints, rules, rule execution mode,
5632// and description. You can only update a DRAFT detector version.
5633//
5634// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
5635// with awserr.Error's Code and Message methods to get detailed information about
5636// the error.
5637//
5638// See the AWS API reference guide for Amazon Fraud Detector's
5639// API operation UpdateDetectorVersion for usage and error information.
5640//
5641// Returned Error Types:
5642//   * ValidationException
5643//   An exception indicating a specified value is not allowed.
5644//
5645//   * ResourceNotFoundException
5646//   An exception indicating the specified resource was not found. This can occur
5647//   if you submit a request, such as CreateBatchPredictionJob, but the detector
5648//   name or version does not exist.
5649//
5650//   * InternalServerException
5651//   An exception indicating an internal server error.
5652//
5653//   * ThrottlingException
5654//   An exception indicating a throttling error.
5655//
5656//   * AccessDeniedException
5657//   An exception indicating Amazon Fraud Detector does not have the needed permissions.
5658//   This can occur if you submit a request, such as PutExternalModel, that specifies
5659//   a role that is not in your account.
5660//
5661//   * ConflictException
5662//   An exception indicating there was a conflict during a delete operation. The
5663//   following delete operations can cause a conflict exception:
5664//
5665//      * DeleteDetector: A conflict exception will occur if the detector has
5666//      associated Rules or DetectorVersions. You can only delete a detector if
5667//      it has no Rules or DetectorVersions.
5668//
5669//      * DeleteDetectorVersion: A conflict exception will occur if the DetectorVersion
5670//      status is ACTIVE.
5671//
5672//      * DeleteRule: A conflict exception will occur if the RuleVersion is in
5673//      use by an associated ACTIVE or INACTIVE DetectorVersion.
5674//
5675// See also, https://docs.aws.amazon.com/goto/WebAPI/frauddetector-2019-11-15/UpdateDetectorVersion
5676func (c *FraudDetector) UpdateDetectorVersion(input *UpdateDetectorVersionInput) (*UpdateDetectorVersionOutput, error) {
5677	req, out := c.UpdateDetectorVersionRequest(input)
5678	return out, req.Send()
5679}
5680
5681// UpdateDetectorVersionWithContext is the same as UpdateDetectorVersion with the addition of
5682// the ability to pass a context and additional request options.
5683//
5684// See UpdateDetectorVersion for details on how to use this API operation.
5685//
5686// The context must be non-nil and will be used for request cancellation. If
5687// the context is nil a panic will occur. In the future the SDK may create
5688// sub-contexts for http.Requests. See https://golang.org/pkg/context/
5689// for more information on using Contexts.
5690func (c *FraudDetector) UpdateDetectorVersionWithContext(ctx aws.Context, input *UpdateDetectorVersionInput, opts ...request.Option) (*UpdateDetectorVersionOutput, error) {
5691	req, out := c.UpdateDetectorVersionRequest(input)
5692	req.SetContext(ctx)
5693	req.ApplyOptions(opts...)
5694	return out, req.Send()
5695}
5696
5697const opUpdateDetectorVersionMetadata = "UpdateDetectorVersionMetadata"
5698
5699// UpdateDetectorVersionMetadataRequest generates a "aws/request.Request" representing the
5700// client's request for the UpdateDetectorVersionMetadata operation. The "output" return
5701// value will be populated with the request's response once the request completes
5702// successfully.
5703//
5704// Use "Send" method on the returned Request to send the API call to the service.
5705// the "output" return value is not valid until after Send returns without error.
5706//
5707// See UpdateDetectorVersionMetadata for more information on using the UpdateDetectorVersionMetadata
5708// API call, and error handling.
5709//
5710// This method is useful when you want to inject custom logic or configuration
5711// into the SDK's request lifecycle. Such as custom headers, or retry logic.
5712//
5713//
5714//    // Example sending a request using the UpdateDetectorVersionMetadataRequest method.
5715//    req, resp := client.UpdateDetectorVersionMetadataRequest(params)
5716//
5717//    err := req.Send()
5718//    if err == nil { // resp is now filled
5719//        fmt.Println(resp)
5720//    }
5721//
5722// See also, https://docs.aws.amazon.com/goto/WebAPI/frauddetector-2019-11-15/UpdateDetectorVersionMetadata
5723func (c *FraudDetector) UpdateDetectorVersionMetadataRequest(input *UpdateDetectorVersionMetadataInput) (req *request.Request, output *UpdateDetectorVersionMetadataOutput) {
5724	op := &request.Operation{
5725		Name:       opUpdateDetectorVersionMetadata,
5726		HTTPMethod: "POST",
5727		HTTPPath:   "/",
5728	}
5729
5730	if input == nil {
5731		input = &UpdateDetectorVersionMetadataInput{}
5732	}
5733
5734	output = &UpdateDetectorVersionMetadataOutput{}
5735	req = c.newRequest(op, input, output)
5736	req.Handlers.Unmarshal.Swap(jsonrpc.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler)
5737	return
5738}
5739
5740// UpdateDetectorVersionMetadata API operation for Amazon Fraud Detector.
5741//
5742// Updates the detector version's description. You can update the metadata for
5743// any detector version (DRAFT, ACTIVE, or INACTIVE).
5744//
5745// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
5746// with awserr.Error's Code and Message methods to get detailed information about
5747// the error.
5748//
5749// See the AWS API reference guide for Amazon Fraud Detector's
5750// API operation UpdateDetectorVersionMetadata for usage and error information.
5751//
5752// Returned Error Types:
5753//   * ValidationException
5754//   An exception indicating a specified value is not allowed.
5755//
5756//   * InternalServerException
5757//   An exception indicating an internal server error.
5758//
5759//   * ThrottlingException
5760//   An exception indicating a throttling error.
5761//
5762//   * AccessDeniedException
5763//   An exception indicating Amazon Fraud Detector does not have the needed permissions.
5764//   This can occur if you submit a request, such as PutExternalModel, that specifies
5765//   a role that is not in your account.
5766//
5767//   * ConflictException
5768//   An exception indicating there was a conflict during a delete operation. The
5769//   following delete operations can cause a conflict exception:
5770//
5771//      * DeleteDetector: A conflict exception will occur if the detector has
5772//      associated Rules or DetectorVersions. You can only delete a detector if
5773//      it has no Rules or DetectorVersions.
5774//
5775//      * DeleteDetectorVersion: A conflict exception will occur if the DetectorVersion
5776//      status is ACTIVE.
5777//
5778//      * DeleteRule: A conflict exception will occur if the RuleVersion is in
5779//      use by an associated ACTIVE or INACTIVE DetectorVersion.
5780//
5781// See also, https://docs.aws.amazon.com/goto/WebAPI/frauddetector-2019-11-15/UpdateDetectorVersionMetadata
5782func (c *FraudDetector) UpdateDetectorVersionMetadata(input *UpdateDetectorVersionMetadataInput) (*UpdateDetectorVersionMetadataOutput, error) {
5783	req, out := c.UpdateDetectorVersionMetadataRequest(input)
5784	return out, req.Send()
5785}
5786
5787// UpdateDetectorVersionMetadataWithContext is the same as UpdateDetectorVersionMetadata with the addition of
5788// the ability to pass a context and additional request options.
5789//
5790// See UpdateDetectorVersionMetadata for details on how to use this API operation.
5791//
5792// The context must be non-nil and will be used for request cancellation. If
5793// the context is nil a panic will occur. In the future the SDK may create
5794// sub-contexts for http.Requests. See https://golang.org/pkg/context/
5795// for more information on using Contexts.
5796func (c *FraudDetector) UpdateDetectorVersionMetadataWithContext(ctx aws.Context, input *UpdateDetectorVersionMetadataInput, opts ...request.Option) (*UpdateDetectorVersionMetadataOutput, error) {
5797	req, out := c.UpdateDetectorVersionMetadataRequest(input)
5798	req.SetContext(ctx)
5799	req.ApplyOptions(opts...)
5800	return out, req.Send()
5801}
5802
5803const opUpdateDetectorVersionStatus = "UpdateDetectorVersionStatus"
5804
5805// UpdateDetectorVersionStatusRequest generates a "aws/request.Request" representing the
5806// client's request for the UpdateDetectorVersionStatus operation. The "output" return
5807// value will be populated with the request's response once the request completes
5808// successfully.
5809//
5810// Use "Send" method on the returned Request to send the API call to the service.
5811// the "output" return value is not valid until after Send returns without error.
5812//
5813// See UpdateDetectorVersionStatus for more information on using the UpdateDetectorVersionStatus
5814// API call, and error handling.
5815//
5816// This method is useful when you want to inject custom logic or configuration
5817// into the SDK's request lifecycle. Such as custom headers, or retry logic.
5818//
5819//
5820//    // Example sending a request using the UpdateDetectorVersionStatusRequest method.
5821//    req, resp := client.UpdateDetectorVersionStatusRequest(params)
5822//
5823//    err := req.Send()
5824//    if err == nil { // resp is now filled
5825//        fmt.Println(resp)
5826//    }
5827//
5828// See also, https://docs.aws.amazon.com/goto/WebAPI/frauddetector-2019-11-15/UpdateDetectorVersionStatus
5829func (c *FraudDetector) UpdateDetectorVersionStatusRequest(input *UpdateDetectorVersionStatusInput) (req *request.Request, output *UpdateDetectorVersionStatusOutput) {
5830	op := &request.Operation{
5831		Name:       opUpdateDetectorVersionStatus,
5832		HTTPMethod: "POST",
5833		HTTPPath:   "/",
5834	}
5835
5836	if input == nil {
5837		input = &UpdateDetectorVersionStatusInput{}
5838	}
5839
5840	output = &UpdateDetectorVersionStatusOutput{}
5841	req = c.newRequest(op, input, output)
5842	req.Handlers.Unmarshal.Swap(jsonrpc.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler)
5843	return
5844}
5845
5846// UpdateDetectorVersionStatus API operation for Amazon Fraud Detector.
5847//
5848// Updates the detector version’s status. You can perform the following promotions
5849// or demotions using UpdateDetectorVersionStatus: DRAFT to ACTIVE, ACTIVE to
5850// INACTIVE, and INACTIVE to ACTIVE.
5851//
5852// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
5853// with awserr.Error's Code and Message methods to get detailed information about
5854// the error.
5855//
5856// See the AWS API reference guide for Amazon Fraud Detector's
5857// API operation UpdateDetectorVersionStatus for usage and error information.
5858//
5859// Returned Error Types:
5860//   * ValidationException
5861//   An exception indicating a specified value is not allowed.
5862//
5863//   * ResourceNotFoundException
5864//   An exception indicating the specified resource was not found. This can occur
5865//   if you submit a request, such as CreateBatchPredictionJob, but the detector
5866//   name or version does not exist.
5867//
5868//   * InternalServerException
5869//   An exception indicating an internal server error.
5870//
5871//   * ThrottlingException
5872//   An exception indicating a throttling error.
5873//
5874//   * AccessDeniedException
5875//   An exception indicating Amazon Fraud Detector does not have the needed permissions.
5876//   This can occur if you submit a request, such as PutExternalModel, that specifies
5877//   a role that is not in your account.
5878//
5879//   * ConflictException
5880//   An exception indicating there was a conflict during a delete operation. The
5881//   following delete operations can cause a conflict exception:
5882//
5883//      * DeleteDetector: A conflict exception will occur if the detector has
5884//      associated Rules or DetectorVersions. You can only delete a detector if
5885//      it has no Rules or DetectorVersions.
5886//
5887//      * DeleteDetectorVersion: A conflict exception will occur if the DetectorVersion
5888//      status is ACTIVE.
5889//
5890//      * DeleteRule: A conflict exception will occur if the RuleVersion is in
5891//      use by an associated ACTIVE or INACTIVE DetectorVersion.
5892//
5893// See also, https://docs.aws.amazon.com/goto/WebAPI/frauddetector-2019-11-15/UpdateDetectorVersionStatus
5894func (c *FraudDetector) UpdateDetectorVersionStatus(input *UpdateDetectorVersionStatusInput) (*UpdateDetectorVersionStatusOutput, error) {
5895	req, out := c.UpdateDetectorVersionStatusRequest(input)
5896	return out, req.Send()
5897}
5898
5899// UpdateDetectorVersionStatusWithContext is the same as UpdateDetectorVersionStatus with the addition of
5900// the ability to pass a context and additional request options.
5901//
5902// See UpdateDetectorVersionStatus for details on how to use this API operation.
5903//
5904// The context must be non-nil and will be used for request cancellation. If
5905// the context is nil a panic will occur. In the future the SDK may create
5906// sub-contexts for http.Requests. See https://golang.org/pkg/context/
5907// for more information on using Contexts.
5908func (c *FraudDetector) UpdateDetectorVersionStatusWithContext(ctx aws.Context, input *UpdateDetectorVersionStatusInput, opts ...request.Option) (*UpdateDetectorVersionStatusOutput, error) {
5909	req, out := c.UpdateDetectorVersionStatusRequest(input)
5910	req.SetContext(ctx)
5911	req.ApplyOptions(opts...)
5912	return out, req.Send()
5913}
5914
5915const opUpdateModel = "UpdateModel"
5916
5917// UpdateModelRequest generates a "aws/request.Request" representing the
5918// client's request for the UpdateModel operation. The "output" return
5919// value will be populated with the request's response once the request completes
5920// successfully.
5921//
5922// Use "Send" method on the returned Request to send the API call to the service.
5923// the "output" return value is not valid until after Send returns without error.
5924//
5925// See UpdateModel for more information on using the UpdateModel
5926// API call, and error handling.
5927//
5928// This method is useful when you want to inject custom logic or configuration
5929// into the SDK's request lifecycle. Such as custom headers, or retry logic.
5930//
5931//
5932//    // Example sending a request using the UpdateModelRequest method.
5933//    req, resp := client.UpdateModelRequest(params)
5934//
5935//    err := req.Send()
5936//    if err == nil { // resp is now filled
5937//        fmt.Println(resp)
5938//    }
5939//
5940// See also, https://docs.aws.amazon.com/goto/WebAPI/frauddetector-2019-11-15/UpdateModel
5941func (c *FraudDetector) UpdateModelRequest(input *UpdateModelInput) (req *request.Request, output *UpdateModelOutput) {
5942	op := &request.Operation{
5943		Name:       opUpdateModel,
5944		HTTPMethod: "POST",
5945		HTTPPath:   "/",
5946	}
5947
5948	if input == nil {
5949		input = &UpdateModelInput{}
5950	}
5951
5952	output = &UpdateModelOutput{}
5953	req = c.newRequest(op, input, output)
5954	req.Handlers.Unmarshal.Swap(jsonrpc.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler)
5955	return
5956}
5957
5958// UpdateModel API operation for Amazon Fraud Detector.
5959//
5960// Updates a model. You can update the description attribute using this action.
5961//
5962// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
5963// with awserr.Error's Code and Message methods to get detailed information about
5964// the error.
5965//
5966// See the AWS API reference guide for Amazon Fraud Detector's
5967// API operation UpdateModel for usage and error information.
5968//
5969// Returned Error Types:
5970//   * ValidationException
5971//   An exception indicating a specified value is not allowed.
5972//
5973//   * ResourceNotFoundException
5974//   An exception indicating the specified resource was not found. This can occur
5975//   if you submit a request, such as CreateBatchPredictionJob, but the detector
5976//   name or version does not exist.
5977//
5978//   * InternalServerException
5979//   An exception indicating an internal server error.
5980//
5981//   * ThrottlingException
5982//   An exception indicating a throttling error.
5983//
5984//   * AccessDeniedException
5985//   An exception indicating Amazon Fraud Detector does not have the needed permissions.
5986//   This can occur if you submit a request, such as PutExternalModel, that specifies
5987//   a role that is not in your account.
5988//
5989//   * ConflictException
5990//   An exception indicating there was a conflict during a delete operation. The
5991//   following delete operations can cause a conflict exception:
5992//
5993//      * DeleteDetector: A conflict exception will occur if the detector has
5994//      associated Rules or DetectorVersions. You can only delete a detector if
5995//      it has no Rules or DetectorVersions.
5996//
5997//      * DeleteDetectorVersion: A conflict exception will occur if the DetectorVersion
5998//      status is ACTIVE.
5999//
6000//      * DeleteRule: A conflict exception will occur if the RuleVersion is in
6001//      use by an associated ACTIVE or INACTIVE DetectorVersion.
6002//
6003// See also, https://docs.aws.amazon.com/goto/WebAPI/frauddetector-2019-11-15/UpdateModel
6004func (c *FraudDetector) UpdateModel(input *UpdateModelInput) (*UpdateModelOutput, error) {
6005	req, out := c.UpdateModelRequest(input)
6006	return out, req.Send()
6007}
6008
6009// UpdateModelWithContext is the same as UpdateModel with the addition of
6010// the ability to pass a context and additional request options.
6011//
6012// See UpdateModel for details on how to use this API operation.
6013//
6014// The context must be non-nil and will be used for request cancellation. If
6015// the context is nil a panic will occur. In the future the SDK may create
6016// sub-contexts for http.Requests. See https://golang.org/pkg/context/
6017// for more information on using Contexts.
6018func (c *FraudDetector) UpdateModelWithContext(ctx aws.Context, input *UpdateModelInput, opts ...request.Option) (*UpdateModelOutput, error) {
6019	req, out := c.UpdateModelRequest(input)
6020	req.SetContext(ctx)
6021	req.ApplyOptions(opts...)
6022	return out, req.Send()
6023}
6024
6025const opUpdateModelVersion = "UpdateModelVersion"
6026
6027// UpdateModelVersionRequest generates a "aws/request.Request" representing the
6028// client's request for the UpdateModelVersion operation. The "output" return
6029// value will be populated with the request's response once the request completes
6030// successfully.
6031//
6032// Use "Send" method on the returned Request to send the API call to the service.
6033// the "output" return value is not valid until after Send returns without error.
6034//
6035// See UpdateModelVersion for more information on using the UpdateModelVersion
6036// API call, and error handling.
6037//
6038// This method is useful when you want to inject custom logic or configuration
6039// into the SDK's request lifecycle. Such as custom headers, or retry logic.
6040//
6041//
6042//    // Example sending a request using the UpdateModelVersionRequest method.
6043//    req, resp := client.UpdateModelVersionRequest(params)
6044//
6045//    err := req.Send()
6046//    if err == nil { // resp is now filled
6047//        fmt.Println(resp)
6048//    }
6049//
6050// See also, https://docs.aws.amazon.com/goto/WebAPI/frauddetector-2019-11-15/UpdateModelVersion
6051func (c *FraudDetector) UpdateModelVersionRequest(input *UpdateModelVersionInput) (req *request.Request, output *UpdateModelVersionOutput) {
6052	op := &request.Operation{
6053		Name:       opUpdateModelVersion,
6054		HTTPMethod: "POST",
6055		HTTPPath:   "/",
6056	}
6057
6058	if input == nil {
6059		input = &UpdateModelVersionInput{}
6060	}
6061
6062	output = &UpdateModelVersionOutput{}
6063	req = c.newRequest(op, input, output)
6064	return
6065}
6066
6067// UpdateModelVersion API operation for Amazon Fraud Detector.
6068//
6069// Updates a model version. Updating a model version retrains an existing model
6070// version using updated training data and produces a new minor version of the
6071// model. You can update the training data set location and data access role
6072// attributes using this action. This action creates and trains a new minor
6073// version of the model, for example version 1.01, 1.02, 1.03.
6074//
6075// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
6076// with awserr.Error's Code and Message methods to get detailed information about
6077// the error.
6078//
6079// See the AWS API reference guide for Amazon Fraud Detector's
6080// API operation UpdateModelVersion for usage and error information.
6081//
6082// Returned Error Types:
6083//   * ValidationException
6084//   An exception indicating a specified value is not allowed.
6085//
6086//   * ResourceNotFoundException
6087//   An exception indicating the specified resource was not found. This can occur
6088//   if you submit a request, such as CreateBatchPredictionJob, but the detector
6089//   name or version does not exist.
6090//
6091//   * AccessDeniedException
6092//   An exception indicating Amazon Fraud Detector does not have the needed permissions.
6093//   This can occur if you submit a request, such as PutExternalModel, that specifies
6094//   a role that is not in your account.
6095//
6096//   * ThrottlingException
6097//   An exception indicating a throttling error.
6098//
6099//   * InternalServerException
6100//   An exception indicating an internal server error.
6101//
6102//   * ConflictException
6103//   An exception indicating there was a conflict during a delete operation. The
6104//   following delete operations can cause a conflict exception:
6105//
6106//      * DeleteDetector: A conflict exception will occur if the detector has
6107//      associated Rules or DetectorVersions. You can only delete a detector if
6108//      it has no Rules or DetectorVersions.
6109//
6110//      * DeleteDetectorVersion: A conflict exception will occur if the DetectorVersion
6111//      status is ACTIVE.
6112//
6113//      * DeleteRule: A conflict exception will occur if the RuleVersion is in
6114//      use by an associated ACTIVE or INACTIVE DetectorVersion.
6115//
6116// See also, https://docs.aws.amazon.com/goto/WebAPI/frauddetector-2019-11-15/UpdateModelVersion
6117func (c *FraudDetector) UpdateModelVersion(input *UpdateModelVersionInput) (*UpdateModelVersionOutput, error) {
6118	req, out := c.UpdateModelVersionRequest(input)
6119	return out, req.Send()
6120}
6121
6122// UpdateModelVersionWithContext is the same as UpdateModelVersion with the addition of
6123// the ability to pass a context and additional request options.
6124//
6125// See UpdateModelVersion for details on how to use this API operation.
6126//
6127// The context must be non-nil and will be used for request cancellation. If
6128// the context is nil a panic will occur. In the future the SDK may create
6129// sub-contexts for http.Requests. See https://golang.org/pkg/context/
6130// for more information on using Contexts.
6131func (c *FraudDetector) UpdateModelVersionWithContext(ctx aws.Context, input *UpdateModelVersionInput, opts ...request.Option) (*UpdateModelVersionOutput, error) {
6132	req, out := c.UpdateModelVersionRequest(input)
6133	req.SetContext(ctx)
6134	req.ApplyOptions(opts...)
6135	return out, req.Send()
6136}
6137
6138const opUpdateModelVersionStatus = "UpdateModelVersionStatus"
6139
6140// UpdateModelVersionStatusRequest generates a "aws/request.Request" representing the
6141// client's request for the UpdateModelVersionStatus operation. The "output" return
6142// value will be populated with the request's response once the request completes
6143// successfully.
6144//
6145// Use "Send" method on the returned Request to send the API call to the service.
6146// the "output" return value is not valid until after Send returns without error.
6147//
6148// See UpdateModelVersionStatus for more information on using the UpdateModelVersionStatus
6149// API call, and error handling.
6150//
6151// This method is useful when you want to inject custom logic or configuration
6152// into the SDK's request lifecycle. Such as custom headers, or retry logic.
6153//
6154//
6155//    // Example sending a request using the UpdateModelVersionStatusRequest method.
6156//    req, resp := client.UpdateModelVersionStatusRequest(params)
6157//
6158//    err := req.Send()
6159//    if err == nil { // resp is now filled
6160//        fmt.Println(resp)
6161//    }
6162//
6163// See also, https://docs.aws.amazon.com/goto/WebAPI/frauddetector-2019-11-15/UpdateModelVersionStatus
6164func (c *FraudDetector) UpdateModelVersionStatusRequest(input *UpdateModelVersionStatusInput) (req *request.Request, output *UpdateModelVersionStatusOutput) {
6165	op := &request.Operation{
6166		Name:       opUpdateModelVersionStatus,
6167		HTTPMethod: "POST",
6168		HTTPPath:   "/",
6169	}
6170
6171	if input == nil {
6172		input = &UpdateModelVersionStatusInput{}
6173	}
6174
6175	output = &UpdateModelVersionStatusOutput{}
6176	req = c.newRequest(op, input, output)
6177	req.Handlers.Unmarshal.Swap(jsonrpc.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler)
6178	return
6179}
6180
6181// UpdateModelVersionStatus API operation for Amazon Fraud Detector.
6182//
6183// Updates the status of a model version.
6184//
6185// You can perform the following status updates:
6186//
6187// Change the TRAINING_COMPLETE status to ACTIVE.
6188//
6189// Change ACTIVEto INACTIVE.
6190//
6191// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
6192// with awserr.Error's Code and Message methods to get detailed information about
6193// the error.
6194//
6195// See the AWS API reference guide for Amazon Fraud Detector's
6196// API operation UpdateModelVersionStatus for usage and error information.
6197//
6198// Returned Error Types:
6199//   * ValidationException
6200//   An exception indicating a specified value is not allowed.
6201//
6202//   * ResourceNotFoundException
6203//   An exception indicating the specified resource was not found. This can occur
6204//   if you submit a request, such as CreateBatchPredictionJob, but the detector
6205//   name or version does not exist.
6206//
6207//   * InternalServerException
6208//   An exception indicating an internal server error.
6209//
6210//   * ThrottlingException
6211//   An exception indicating a throttling error.
6212//
6213//   * AccessDeniedException
6214//   An exception indicating Amazon Fraud Detector does not have the needed permissions.
6215//   This can occur if you submit a request, such as PutExternalModel, that specifies
6216//   a role that is not in your account.
6217//
6218//   * ConflictException
6219//   An exception indicating there was a conflict during a delete operation. The
6220//   following delete operations can cause a conflict exception:
6221//
6222//      * DeleteDetector: A conflict exception will occur if the detector has
6223//      associated Rules or DetectorVersions. You can only delete a detector if
6224//      it has no Rules or DetectorVersions.
6225//
6226//      * DeleteDetectorVersion: A conflict exception will occur if the DetectorVersion
6227//      status is ACTIVE.
6228//
6229//      * DeleteRule: A conflict exception will occur if the RuleVersion is in
6230//      use by an associated ACTIVE or INACTIVE DetectorVersion.
6231//
6232// See also, https://docs.aws.amazon.com/goto/WebAPI/frauddetector-2019-11-15/UpdateModelVersionStatus
6233func (c *FraudDetector) UpdateModelVersionStatus(input *UpdateModelVersionStatusInput) (*UpdateModelVersionStatusOutput, error) {
6234	req, out := c.UpdateModelVersionStatusRequest(input)
6235	return out, req.Send()
6236}
6237
6238// UpdateModelVersionStatusWithContext is the same as UpdateModelVersionStatus with the addition of
6239// the ability to pass a context and additional request options.
6240//
6241// See UpdateModelVersionStatus for details on how to use this API operation.
6242//
6243// The context must be non-nil and will be used for request cancellation. If
6244// the context is nil a panic will occur. In the future the SDK may create
6245// sub-contexts for http.Requests. See https://golang.org/pkg/context/
6246// for more information on using Contexts.
6247func (c *FraudDetector) UpdateModelVersionStatusWithContext(ctx aws.Context, input *UpdateModelVersionStatusInput, opts ...request.Option) (*UpdateModelVersionStatusOutput, error) {
6248	req, out := c.UpdateModelVersionStatusRequest(input)
6249	req.SetContext(ctx)
6250	req.ApplyOptions(opts...)
6251	return out, req.Send()
6252}
6253
6254const opUpdateRuleMetadata = "UpdateRuleMetadata"
6255
6256// UpdateRuleMetadataRequest generates a "aws/request.Request" representing the
6257// client's request for the UpdateRuleMetadata operation. The "output" return
6258// value will be populated with the request's response once the request completes
6259// successfully.
6260//
6261// Use "Send" method on the returned Request to send the API call to the service.
6262// the "output" return value is not valid until after Send returns without error.
6263//
6264// See UpdateRuleMetadata for more information on using the UpdateRuleMetadata
6265// API call, and error handling.
6266//
6267// This method is useful when you want to inject custom logic or configuration
6268// into the SDK's request lifecycle. Such as custom headers, or retry logic.
6269//
6270//
6271//    // Example sending a request using the UpdateRuleMetadataRequest method.
6272//    req, resp := client.UpdateRuleMetadataRequest(params)
6273//
6274//    err := req.Send()
6275//    if err == nil { // resp is now filled
6276//        fmt.Println(resp)
6277//    }
6278//
6279// See also, https://docs.aws.amazon.com/goto/WebAPI/frauddetector-2019-11-15/UpdateRuleMetadata
6280func (c *FraudDetector) UpdateRuleMetadataRequest(input *UpdateRuleMetadataInput) (req *request.Request, output *UpdateRuleMetadataOutput) {
6281	op := &request.Operation{
6282		Name:       opUpdateRuleMetadata,
6283		HTTPMethod: "POST",
6284		HTTPPath:   "/",
6285	}
6286
6287	if input == nil {
6288		input = &UpdateRuleMetadataInput{}
6289	}
6290
6291	output = &UpdateRuleMetadataOutput{}
6292	req = c.newRequest(op, input, output)
6293	req.Handlers.Unmarshal.Swap(jsonrpc.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler)
6294	return
6295}
6296
6297// UpdateRuleMetadata API operation for Amazon Fraud Detector.
6298//
6299// Updates a rule's metadata. The description attribute can be updated.
6300//
6301// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
6302// with awserr.Error's Code and Message methods to get detailed information about
6303// the error.
6304//
6305// See the AWS API reference guide for Amazon Fraud Detector's
6306// API operation UpdateRuleMetadata for usage and error information.
6307//
6308// Returned Error Types:
6309//   * ValidationException
6310//   An exception indicating a specified value is not allowed.
6311//
6312//   * ResourceNotFoundException
6313//   An exception indicating the specified resource was not found. This can occur
6314//   if you submit a request, such as CreateBatchPredictionJob, but the detector
6315//   name or version does not exist.
6316//
6317//   * InternalServerException
6318//   An exception indicating an internal server error.
6319//
6320//   * ThrottlingException
6321//   An exception indicating a throttling error.
6322//
6323//   * AccessDeniedException
6324//   An exception indicating Amazon Fraud Detector does not have the needed permissions.
6325//   This can occur if you submit a request, such as PutExternalModel, that specifies
6326//   a role that is not in your account.
6327//
6328//   * ConflictException
6329//   An exception indicating there was a conflict during a delete operation. The
6330//   following delete operations can cause a conflict exception:
6331//
6332//      * DeleteDetector: A conflict exception will occur if the detector has
6333//      associated Rules or DetectorVersions. You can only delete a detector if
6334//      it has no Rules or DetectorVersions.
6335//
6336//      * DeleteDetectorVersion: A conflict exception will occur if the DetectorVersion
6337//      status is ACTIVE.
6338//
6339//      * DeleteRule: A conflict exception will occur if the RuleVersion is in
6340//      use by an associated ACTIVE or INACTIVE DetectorVersion.
6341//
6342// See also, https://docs.aws.amazon.com/goto/WebAPI/frauddetector-2019-11-15/UpdateRuleMetadata
6343func (c *FraudDetector) UpdateRuleMetadata(input *UpdateRuleMetadataInput) (*UpdateRuleMetadataOutput, error) {
6344	req, out := c.UpdateRuleMetadataRequest(input)
6345	return out, req.Send()
6346}
6347
6348// UpdateRuleMetadataWithContext is the same as UpdateRuleMetadata with the addition of
6349// the ability to pass a context and additional request options.
6350//
6351// See UpdateRuleMetadata for details on how to use this API operation.
6352//
6353// The context must be non-nil and will be used for request cancellation. If
6354// the context is nil a panic will occur. In the future the SDK may create
6355// sub-contexts for http.Requests. See https://golang.org/pkg/context/
6356// for more information on using Contexts.
6357func (c *FraudDetector) UpdateRuleMetadataWithContext(ctx aws.Context, input *UpdateRuleMetadataInput, opts ...request.Option) (*UpdateRuleMetadataOutput, error) {
6358	req, out := c.UpdateRuleMetadataRequest(input)
6359	req.SetContext(ctx)
6360	req.ApplyOptions(opts...)
6361	return out, req.Send()
6362}
6363
6364const opUpdateRuleVersion = "UpdateRuleVersion"
6365
6366// UpdateRuleVersionRequest generates a "aws/request.Request" representing the
6367// client's request for the UpdateRuleVersion operation. The "output" return
6368// value will be populated with the request's response once the request completes
6369// successfully.
6370//
6371// Use "Send" method on the returned Request to send the API call to the service.
6372// the "output" return value is not valid until after Send returns without error.
6373//
6374// See UpdateRuleVersion for more information on using the UpdateRuleVersion
6375// API call, and error handling.
6376//
6377// This method is useful when you want to inject custom logic or configuration
6378// into the SDK's request lifecycle. Such as custom headers, or retry logic.
6379//
6380//
6381//    // Example sending a request using the UpdateRuleVersionRequest method.
6382//    req, resp := client.UpdateRuleVersionRequest(params)
6383//
6384//    err := req.Send()
6385//    if err == nil { // resp is now filled
6386//        fmt.Println(resp)
6387//    }
6388//
6389// See also, https://docs.aws.amazon.com/goto/WebAPI/frauddetector-2019-11-15/UpdateRuleVersion
6390func (c *FraudDetector) UpdateRuleVersionRequest(input *UpdateRuleVersionInput) (req *request.Request, output *UpdateRuleVersionOutput) {
6391	op := &request.Operation{
6392		Name:       opUpdateRuleVersion,
6393		HTTPMethod: "POST",
6394		HTTPPath:   "/",
6395	}
6396
6397	if input == nil {
6398		input = &UpdateRuleVersionInput{}
6399	}
6400
6401	output = &UpdateRuleVersionOutput{}
6402	req = c.newRequest(op, input, output)
6403	return
6404}
6405
6406// UpdateRuleVersion API operation for Amazon Fraud Detector.
6407//
6408// Updates a rule version resulting in a new rule version. Updates a rule version
6409// resulting in a new rule version (version 1, 2, 3 ...).
6410//
6411// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
6412// with awserr.Error's Code and Message methods to get detailed information about
6413// the error.
6414//
6415// See the AWS API reference guide for Amazon Fraud Detector's
6416// API operation UpdateRuleVersion for usage and error information.
6417//
6418// Returned Error Types:
6419//   * ValidationException
6420//   An exception indicating a specified value is not allowed.
6421//
6422//   * ResourceNotFoundException
6423//   An exception indicating the specified resource was not found. This can occur
6424//   if you submit a request, such as CreateBatchPredictionJob, but the detector
6425//   name or version does not exist.
6426//
6427//   * InternalServerException
6428//   An exception indicating an internal server error.
6429//
6430//   * ThrottlingException
6431//   An exception indicating a throttling error.
6432//
6433//   * AccessDeniedException
6434//   An exception indicating Amazon Fraud Detector does not have the needed permissions.
6435//   This can occur if you submit a request, such as PutExternalModel, that specifies
6436//   a role that is not in your account.
6437//
6438//   * ConflictException
6439//   An exception indicating there was a conflict during a delete operation. The
6440//   following delete operations can cause a conflict exception:
6441//
6442//      * DeleteDetector: A conflict exception will occur if the detector has
6443//      associated Rules or DetectorVersions. You can only delete a detector if
6444//      it has no Rules or DetectorVersions.
6445//
6446//      * DeleteDetectorVersion: A conflict exception will occur if the DetectorVersion
6447//      status is ACTIVE.
6448//
6449//      * DeleteRule: A conflict exception will occur if the RuleVersion is in
6450//      use by an associated ACTIVE or INACTIVE DetectorVersion.
6451//
6452// See also, https://docs.aws.amazon.com/goto/WebAPI/frauddetector-2019-11-15/UpdateRuleVersion
6453func (c *FraudDetector) UpdateRuleVersion(input *UpdateRuleVersionInput) (*UpdateRuleVersionOutput, error) {
6454	req, out := c.UpdateRuleVersionRequest(input)
6455	return out, req.Send()
6456}
6457
6458// UpdateRuleVersionWithContext is the same as UpdateRuleVersion with the addition of
6459// the ability to pass a context and additional request options.
6460//
6461// See UpdateRuleVersion for details on how to use this API operation.
6462//
6463// The context must be non-nil and will be used for request cancellation. If
6464// the context is nil a panic will occur. In the future the SDK may create
6465// sub-contexts for http.Requests. See https://golang.org/pkg/context/
6466// for more information on using Contexts.
6467func (c *FraudDetector) UpdateRuleVersionWithContext(ctx aws.Context, input *UpdateRuleVersionInput, opts ...request.Option) (*UpdateRuleVersionOutput, error) {
6468	req, out := c.UpdateRuleVersionRequest(input)
6469	req.SetContext(ctx)
6470	req.ApplyOptions(opts...)
6471	return out, req.Send()
6472}
6473
6474const opUpdateVariable = "UpdateVariable"
6475
6476// UpdateVariableRequest generates a "aws/request.Request" representing the
6477// client's request for the UpdateVariable operation. The "output" return
6478// value will be populated with the request's response once the request completes
6479// successfully.
6480//
6481// Use "Send" method on the returned Request to send the API call to the service.
6482// the "output" return value is not valid until after Send returns without error.
6483//
6484// See UpdateVariable for more information on using the UpdateVariable
6485// API call, and error handling.
6486//
6487// This method is useful when you want to inject custom logic or configuration
6488// into the SDK's request lifecycle. Such as custom headers, or retry logic.
6489//
6490//
6491//    // Example sending a request using the UpdateVariableRequest method.
6492//    req, resp := client.UpdateVariableRequest(params)
6493//
6494//    err := req.Send()
6495//    if err == nil { // resp is now filled
6496//        fmt.Println(resp)
6497//    }
6498//
6499// See also, https://docs.aws.amazon.com/goto/WebAPI/frauddetector-2019-11-15/UpdateVariable
6500func (c *FraudDetector) UpdateVariableRequest(input *UpdateVariableInput) (req *request.Request, output *UpdateVariableOutput) {
6501	op := &request.Operation{
6502		Name:       opUpdateVariable,
6503		HTTPMethod: "POST",
6504		HTTPPath:   "/",
6505	}
6506
6507	if input == nil {
6508		input = &UpdateVariableInput{}
6509	}
6510
6511	output = &UpdateVariableOutput{}
6512	req = c.newRequest(op, input, output)
6513	req.Handlers.Unmarshal.Swap(jsonrpc.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler)
6514	return
6515}
6516
6517// UpdateVariable API operation for Amazon Fraud Detector.
6518//
6519// Updates a variable.
6520//
6521// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
6522// with awserr.Error's Code and Message methods to get detailed information about
6523// the error.
6524//
6525// See the AWS API reference guide for Amazon Fraud Detector's
6526// API operation UpdateVariable for usage and error information.
6527//
6528// Returned Error Types:
6529//   * ValidationException
6530//   An exception indicating a specified value is not allowed.
6531//
6532//   * ResourceNotFoundException
6533//   An exception indicating the specified resource was not found. This can occur
6534//   if you submit a request, such as CreateBatchPredictionJob, but the detector
6535//   name or version does not exist.
6536//
6537//   * InternalServerException
6538//   An exception indicating an internal server error.
6539//
6540//   * ThrottlingException
6541//   An exception indicating a throttling error.
6542//
6543//   * AccessDeniedException
6544//   An exception indicating Amazon Fraud Detector does not have the needed permissions.
6545//   This can occur if you submit a request, such as PutExternalModel, that specifies
6546//   a role that is not in your account.
6547//
6548//   * ConflictException
6549//   An exception indicating there was a conflict during a delete operation. The
6550//   following delete operations can cause a conflict exception:
6551//
6552//      * DeleteDetector: A conflict exception will occur if the detector has
6553//      associated Rules or DetectorVersions. You can only delete a detector if
6554//      it has no Rules or DetectorVersions.
6555//
6556//      * DeleteDetectorVersion: A conflict exception will occur if the DetectorVersion
6557//      status is ACTIVE.
6558//
6559//      * DeleteRule: A conflict exception will occur if the RuleVersion is in
6560//      use by an associated ACTIVE or INACTIVE DetectorVersion.
6561//
6562// See also, https://docs.aws.amazon.com/goto/WebAPI/frauddetector-2019-11-15/UpdateVariable
6563func (c *FraudDetector) UpdateVariable(input *UpdateVariableInput) (*UpdateVariableOutput, error) {
6564	req, out := c.UpdateVariableRequest(input)
6565	return out, req.Send()
6566}
6567
6568// UpdateVariableWithContext is the same as UpdateVariable with the addition of
6569// the ability to pass a context and additional request options.
6570//
6571// See UpdateVariable for details on how to use this API operation.
6572//
6573// The context must be non-nil and will be used for request cancellation. If
6574// the context is nil a panic will occur. In the future the SDK may create
6575// sub-contexts for http.Requests. See https://golang.org/pkg/context/
6576// for more information on using Contexts.
6577func (c *FraudDetector) UpdateVariableWithContext(ctx aws.Context, input *UpdateVariableInput, opts ...request.Option) (*UpdateVariableOutput, error) {
6578	req, out := c.UpdateVariableRequest(input)
6579	req.SetContext(ctx)
6580	req.ApplyOptions(opts...)
6581	return out, req.Send()
6582}
6583
6584// An exception indicating Amazon Fraud Detector does not have the needed permissions.
6585// This can occur if you submit a request, such as PutExternalModel, that specifies
6586// a role that is not in your account.
6587type AccessDeniedException struct {
6588	_            struct{}                  `type:"structure"`
6589	RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"`
6590
6591	Message_ *string `locationName:"message" type:"string"`
6592}
6593
6594// String returns the string representation
6595func (s AccessDeniedException) String() string {
6596	return awsutil.Prettify(s)
6597}
6598
6599// GoString returns the string representation
6600func (s AccessDeniedException) GoString() string {
6601	return s.String()
6602}
6603
6604func newErrorAccessDeniedException(v protocol.ResponseMetadata) error {
6605	return &AccessDeniedException{
6606		RespMetadata: v,
6607	}
6608}
6609
6610// Code returns the exception type name.
6611func (s *AccessDeniedException) Code() string {
6612	return "AccessDeniedException"
6613}
6614
6615// Message returns the exception's message.
6616func (s *AccessDeniedException) Message() string {
6617	if s.Message_ != nil {
6618		return *s.Message_
6619	}
6620	return ""
6621}
6622
6623// OrigErr always returns nil, satisfies awserr.Error interface.
6624func (s *AccessDeniedException) OrigErr() error {
6625	return nil
6626}
6627
6628func (s *AccessDeniedException) Error() string {
6629	return fmt.Sprintf("%s: %s", s.Code(), s.Message())
6630}
6631
6632// Status code returns the HTTP status code for the request's response error.
6633func (s *AccessDeniedException) StatusCode() int {
6634	return s.RespMetadata.StatusCode
6635}
6636
6637// RequestID returns the service's response RequestID for request.
6638func (s *AccessDeniedException) RequestID() string {
6639	return s.RespMetadata.RequestID
6640}
6641
6642// Provides the error of the batch create variable API.
6643type BatchCreateVariableError struct {
6644	_ struct{} `type:"structure"`
6645
6646	// The error code.
6647	Code *int64 `locationName:"code" type:"integer"`
6648
6649	// The error message.
6650	Message *string `locationName:"message" type:"string"`
6651
6652	// The name.
6653	Name *string `locationName:"name" type:"string"`
6654}
6655
6656// String returns the string representation
6657func (s BatchCreateVariableError) String() string {
6658	return awsutil.Prettify(s)
6659}
6660
6661// GoString returns the string representation
6662func (s BatchCreateVariableError) GoString() string {
6663	return s.String()
6664}
6665
6666// SetCode sets the Code field's value.
6667func (s *BatchCreateVariableError) SetCode(v int64) *BatchCreateVariableError {
6668	s.Code = &v
6669	return s
6670}
6671
6672// SetMessage sets the Message field's value.
6673func (s *BatchCreateVariableError) SetMessage(v string) *BatchCreateVariableError {
6674	s.Message = &v
6675	return s
6676}
6677
6678// SetName sets the Name field's value.
6679func (s *BatchCreateVariableError) SetName(v string) *BatchCreateVariableError {
6680	s.Name = &v
6681	return s
6682}
6683
6684type BatchCreateVariableInput struct {
6685	_ struct{} `type:"structure"`
6686
6687	// A collection of key and value pairs.
6688	Tags []*Tag `locationName:"tags" type:"list"`
6689
6690	// The list of variables for the batch create variable request.
6691	//
6692	// VariableEntries is a required field
6693	VariableEntries []*VariableEntry `locationName:"variableEntries" min:"1" type:"list" required:"true"`
6694}
6695
6696// String returns the string representation
6697func (s BatchCreateVariableInput) String() string {
6698	return awsutil.Prettify(s)
6699}
6700
6701// GoString returns the string representation
6702func (s BatchCreateVariableInput) GoString() string {
6703	return s.String()
6704}
6705
6706// Validate inspects the fields of the type to determine if they are valid.
6707func (s *BatchCreateVariableInput) Validate() error {
6708	invalidParams := request.ErrInvalidParams{Context: "BatchCreateVariableInput"}
6709	if s.VariableEntries == nil {
6710		invalidParams.Add(request.NewErrParamRequired("VariableEntries"))
6711	}
6712	if s.VariableEntries != nil && len(s.VariableEntries) < 1 {
6713		invalidParams.Add(request.NewErrParamMinLen("VariableEntries", 1))
6714	}
6715	if s.Tags != nil {
6716		for i, v := range s.Tags {
6717			if v == nil {
6718				continue
6719			}
6720			if err := v.Validate(); err != nil {
6721				invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Tags", i), err.(request.ErrInvalidParams))
6722			}
6723		}
6724	}
6725
6726	if invalidParams.Len() > 0 {
6727		return invalidParams
6728	}
6729	return nil
6730}
6731
6732// SetTags sets the Tags field's value.
6733func (s *BatchCreateVariableInput) SetTags(v []*Tag) *BatchCreateVariableInput {
6734	s.Tags = v
6735	return s
6736}
6737
6738// SetVariableEntries sets the VariableEntries field's value.
6739func (s *BatchCreateVariableInput) SetVariableEntries(v []*VariableEntry) *BatchCreateVariableInput {
6740	s.VariableEntries = v
6741	return s
6742}
6743
6744type BatchCreateVariableOutput struct {
6745	_ struct{} `type:"structure"`
6746
6747	// Provides the errors for the BatchCreateVariable request.
6748	Errors []*BatchCreateVariableError `locationName:"errors" type:"list"`
6749}
6750
6751// String returns the string representation
6752func (s BatchCreateVariableOutput) String() string {
6753	return awsutil.Prettify(s)
6754}
6755
6756// GoString returns the string representation
6757func (s BatchCreateVariableOutput) GoString() string {
6758	return s.String()
6759}
6760
6761// SetErrors sets the Errors field's value.
6762func (s *BatchCreateVariableOutput) SetErrors(v []*BatchCreateVariableError) *BatchCreateVariableOutput {
6763	s.Errors = v
6764	return s
6765}
6766
6767// Provides the error of the batch get variable API.
6768type BatchGetVariableError struct {
6769	_ struct{} `type:"structure"`
6770
6771	// The error code.
6772	Code *int64 `locationName:"code" type:"integer"`
6773
6774	// The error message.
6775	Message *string `locationName:"message" type:"string"`
6776
6777	// The error name.
6778	Name *string `locationName:"name" type:"string"`
6779}
6780
6781// String returns the string representation
6782func (s BatchGetVariableError) String() string {
6783	return awsutil.Prettify(s)
6784}
6785
6786// GoString returns the string representation
6787func (s BatchGetVariableError) GoString() string {
6788	return s.String()
6789}
6790
6791// SetCode sets the Code field's value.
6792func (s *BatchGetVariableError) SetCode(v int64) *BatchGetVariableError {
6793	s.Code = &v
6794	return s
6795}
6796
6797// SetMessage sets the Message field's value.
6798func (s *BatchGetVariableError) SetMessage(v string) *BatchGetVariableError {
6799	s.Message = &v
6800	return s
6801}
6802
6803// SetName sets the Name field's value.
6804func (s *BatchGetVariableError) SetName(v string) *BatchGetVariableError {
6805	s.Name = &v
6806	return s
6807}
6808
6809type BatchGetVariableInput struct {
6810	_ struct{} `type:"structure"`
6811
6812	// The list of variable names to get.
6813	//
6814	// Names is a required field
6815	Names []*string `locationName:"names" min:"1" type:"list" required:"true"`
6816}
6817
6818// String returns the string representation
6819func (s BatchGetVariableInput) String() string {
6820	return awsutil.Prettify(s)
6821}
6822
6823// GoString returns the string representation
6824func (s BatchGetVariableInput) GoString() string {
6825	return s.String()
6826}
6827
6828// Validate inspects the fields of the type to determine if they are valid.
6829func (s *BatchGetVariableInput) Validate() error {
6830	invalidParams := request.ErrInvalidParams{Context: "BatchGetVariableInput"}
6831	if s.Names == nil {
6832		invalidParams.Add(request.NewErrParamRequired("Names"))
6833	}
6834	if s.Names != nil && len(s.Names) < 1 {
6835		invalidParams.Add(request.NewErrParamMinLen("Names", 1))
6836	}
6837
6838	if invalidParams.Len() > 0 {
6839		return invalidParams
6840	}
6841	return nil
6842}
6843
6844// SetNames sets the Names field's value.
6845func (s *BatchGetVariableInput) SetNames(v []*string) *BatchGetVariableInput {
6846	s.Names = v
6847	return s
6848}
6849
6850type BatchGetVariableOutput struct {
6851	_ struct{} `type:"structure"`
6852
6853	// The errors from the request.
6854	Errors []*BatchGetVariableError `locationName:"errors" type:"list"`
6855
6856	// The returned variables.
6857	Variables []*Variable `locationName:"variables" type:"list"`
6858}
6859
6860// String returns the string representation
6861func (s BatchGetVariableOutput) String() string {
6862	return awsutil.Prettify(s)
6863}
6864
6865// GoString returns the string representation
6866func (s BatchGetVariableOutput) GoString() string {
6867	return s.String()
6868}
6869
6870// SetErrors sets the Errors field's value.
6871func (s *BatchGetVariableOutput) SetErrors(v []*BatchGetVariableError) *BatchGetVariableOutput {
6872	s.Errors = v
6873	return s
6874}
6875
6876// SetVariables sets the Variables field's value.
6877func (s *BatchGetVariableOutput) SetVariables(v []*Variable) *BatchGetVariableOutput {
6878	s.Variables = v
6879	return s
6880}
6881
6882// The batch prediction details.
6883type BatchPrediction struct {
6884	_ struct{} `type:"structure"`
6885
6886	// The ARN of batch prediction job.
6887	Arn *string `locationName:"arn" min:"1" type:"string"`
6888
6889	// Timestamp of when the batch prediction job comleted.
6890	CompletionTime *string `locationName:"completionTime" min:"11" type:"string"`
6891
6892	// The name of the detector.
6893	DetectorName *string `locationName:"detectorName" min:"1" type:"string"`
6894
6895	// The detector version.
6896	DetectorVersion *string `locationName:"detectorVersion" min:"3" type:"string"`
6897
6898	// The name of the event type.
6899	EventTypeName *string `locationName:"eventTypeName" min:"1" type:"string"`
6900
6901	// The reason a batch prediction job failed.
6902	FailureReason *string `locationName:"failureReason" type:"string"`
6903
6904	// The ARN of the IAM role to use for this job request.
6905	IamRoleArn *string `locationName:"iamRoleArn" min:"1" type:"string"`
6906
6907	// The Amazon S3 location of your training file.
6908	InputPath *string `locationName:"inputPath" min:"1" type:"string"`
6909
6910	// The job ID for the batch prediction.
6911	JobId *string `locationName:"jobId" min:"1" type:"string"`
6912
6913	// Timestamp of most recent heartbeat indicating the batch prediction job was
6914	// making progress.
6915	LastHeartbeatTime *string `locationName:"lastHeartbeatTime" min:"11" type:"string"`
6916
6917	// The Amazon S3 location of your output file.
6918	OutputPath *string `locationName:"outputPath" min:"1" type:"string"`
6919
6920	// The number of records processed by the batch prediction job.
6921	ProcessedRecordsCount *int64 `locationName:"processedRecordsCount" type:"integer"`
6922
6923	// Timestamp of when the batch prediction job started.
6924	StartTime *string `locationName:"startTime" min:"11" type:"string"`
6925
6926	// The batch prediction status.
6927	Status *string `locationName:"status" type:"string" enum:"AsyncJobStatus"`
6928
6929	// The total number of records in the batch prediction job.
6930	TotalRecordsCount *int64 `locationName:"totalRecordsCount" type:"integer"`
6931}
6932
6933// String returns the string representation
6934func (s BatchPrediction) String() string {
6935	return awsutil.Prettify(s)
6936}
6937
6938// GoString returns the string representation
6939func (s BatchPrediction) GoString() string {
6940	return s.String()
6941}
6942
6943// SetArn sets the Arn field's value.
6944func (s *BatchPrediction) SetArn(v string) *BatchPrediction {
6945	s.Arn = &v
6946	return s
6947}
6948
6949// SetCompletionTime sets the CompletionTime field's value.
6950func (s *BatchPrediction) SetCompletionTime(v string) *BatchPrediction {
6951	s.CompletionTime = &v
6952	return s
6953}
6954
6955// SetDetectorName sets the DetectorName field's value.
6956func (s *BatchPrediction) SetDetectorName(v string) *BatchPrediction {
6957	s.DetectorName = &v
6958	return s
6959}
6960
6961// SetDetectorVersion sets the DetectorVersion field's value.
6962func (s *BatchPrediction) SetDetectorVersion(v string) *BatchPrediction {
6963	s.DetectorVersion = &v
6964	return s
6965}
6966
6967// SetEventTypeName sets the EventTypeName field's value.
6968func (s *BatchPrediction) SetEventTypeName(v string) *BatchPrediction {
6969	s.EventTypeName = &v
6970	return s
6971}
6972
6973// SetFailureReason sets the FailureReason field's value.
6974func (s *BatchPrediction) SetFailureReason(v string) *BatchPrediction {
6975	s.FailureReason = &v
6976	return s
6977}
6978
6979// SetIamRoleArn sets the IamRoleArn field's value.
6980func (s *BatchPrediction) SetIamRoleArn(v string) *BatchPrediction {
6981	s.IamRoleArn = &v
6982	return s
6983}
6984
6985// SetInputPath sets the InputPath field's value.
6986func (s *BatchPrediction) SetInputPath(v string) *BatchPrediction {
6987	s.InputPath = &v
6988	return s
6989}
6990
6991// SetJobId sets the JobId field's value.
6992func (s *BatchPrediction) SetJobId(v string) *BatchPrediction {
6993	s.JobId = &v
6994	return s
6995}
6996
6997// SetLastHeartbeatTime sets the LastHeartbeatTime field's value.
6998func (s *BatchPrediction) SetLastHeartbeatTime(v string) *BatchPrediction {
6999	s.LastHeartbeatTime = &v
7000	return s
7001}
7002
7003// SetOutputPath sets the OutputPath field's value.
7004func (s *BatchPrediction) SetOutputPath(v string) *BatchPrediction {
7005	s.OutputPath = &v
7006	return s
7007}
7008
7009// SetProcessedRecordsCount sets the ProcessedRecordsCount field's value.
7010func (s *BatchPrediction) SetProcessedRecordsCount(v int64) *BatchPrediction {
7011	s.ProcessedRecordsCount = &v
7012	return s
7013}
7014
7015// SetStartTime sets the StartTime field's value.
7016func (s *BatchPrediction) SetStartTime(v string) *BatchPrediction {
7017	s.StartTime = &v
7018	return s
7019}
7020
7021// SetStatus sets the Status field's value.
7022func (s *BatchPrediction) SetStatus(v string) *BatchPrediction {
7023	s.Status = &v
7024	return s
7025}
7026
7027// SetTotalRecordsCount sets the TotalRecordsCount field's value.
7028func (s *BatchPrediction) SetTotalRecordsCount(v int64) *BatchPrediction {
7029	s.TotalRecordsCount = &v
7030	return s
7031}
7032
7033type CancelBatchPredictionJobInput struct {
7034	_ struct{} `type:"structure"`
7035
7036	// The ID of the batch prediction job to cancel.
7037	//
7038	// JobId is a required field
7039	JobId *string `locationName:"jobId" min:"1" type:"string" required:"true"`
7040}
7041
7042// String returns the string representation
7043func (s CancelBatchPredictionJobInput) String() string {
7044	return awsutil.Prettify(s)
7045}
7046
7047// GoString returns the string representation
7048func (s CancelBatchPredictionJobInput) GoString() string {
7049	return s.String()
7050}
7051
7052// Validate inspects the fields of the type to determine if they are valid.
7053func (s *CancelBatchPredictionJobInput) Validate() error {
7054	invalidParams := request.ErrInvalidParams{Context: "CancelBatchPredictionJobInput"}
7055	if s.JobId == nil {
7056		invalidParams.Add(request.NewErrParamRequired("JobId"))
7057	}
7058	if s.JobId != nil && len(*s.JobId) < 1 {
7059		invalidParams.Add(request.NewErrParamMinLen("JobId", 1))
7060	}
7061
7062	if invalidParams.Len() > 0 {
7063		return invalidParams
7064	}
7065	return nil
7066}
7067
7068// SetJobId sets the JobId field's value.
7069func (s *CancelBatchPredictionJobInput) SetJobId(v string) *CancelBatchPredictionJobInput {
7070	s.JobId = &v
7071	return s
7072}
7073
7074type CancelBatchPredictionJobOutput struct {
7075	_ struct{} `type:"structure"`
7076}
7077
7078// String returns the string representation
7079func (s CancelBatchPredictionJobOutput) String() string {
7080	return awsutil.Prettify(s)
7081}
7082
7083// GoString returns the string representation
7084func (s CancelBatchPredictionJobOutput) GoString() string {
7085	return s.String()
7086}
7087
7088// An exception indicating there was a conflict during a delete operation. The
7089// following delete operations can cause a conflict exception:
7090//
7091//    * DeleteDetector: A conflict exception will occur if the detector has
7092//    associated Rules or DetectorVersions. You can only delete a detector if
7093//    it has no Rules or DetectorVersions.
7094//
7095//    * DeleteDetectorVersion: A conflict exception will occur if the DetectorVersion
7096//    status is ACTIVE.
7097//
7098//    * DeleteRule: A conflict exception will occur if the RuleVersion is in
7099//    use by an associated ACTIVE or INACTIVE DetectorVersion.
7100type ConflictException struct {
7101	_            struct{}                  `type:"structure"`
7102	RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"`
7103
7104	Message_ *string `locationName:"message" type:"string"`
7105}
7106
7107// String returns the string representation
7108func (s ConflictException) String() string {
7109	return awsutil.Prettify(s)
7110}
7111
7112// GoString returns the string representation
7113func (s ConflictException) GoString() string {
7114	return s.String()
7115}
7116
7117func newErrorConflictException(v protocol.ResponseMetadata) error {
7118	return &ConflictException{
7119		RespMetadata: v,
7120	}
7121}
7122
7123// Code returns the exception type name.
7124func (s *ConflictException) Code() string {
7125	return "ConflictException"
7126}
7127
7128// Message returns the exception's message.
7129func (s *ConflictException) Message() string {
7130	if s.Message_ != nil {
7131		return *s.Message_
7132	}
7133	return ""
7134}
7135
7136// OrigErr always returns nil, satisfies awserr.Error interface.
7137func (s *ConflictException) OrigErr() error {
7138	return nil
7139}
7140
7141func (s *ConflictException) Error() string {
7142	return fmt.Sprintf("%s: %s", s.Code(), s.Message())
7143}
7144
7145// Status code returns the HTTP status code for the request's response error.
7146func (s *ConflictException) StatusCode() int {
7147	return s.RespMetadata.StatusCode
7148}
7149
7150// RequestID returns the service's response RequestID for request.
7151func (s *ConflictException) RequestID() string {
7152	return s.RespMetadata.RequestID
7153}
7154
7155type CreateBatchPredictionJobInput struct {
7156	_ struct{} `type:"structure"`
7157
7158	// The name of the detector.
7159	//
7160	// DetectorName is a required field
7161	DetectorName *string `locationName:"detectorName" min:"1" type:"string" required:"true"`
7162
7163	// The detector version.
7164	DetectorVersion *string `locationName:"detectorVersion" min:"1" type:"string"`
7165
7166	// The name of the event type.
7167	//
7168	// EventTypeName is a required field
7169	EventTypeName *string `locationName:"eventTypeName" min:"1" type:"string" required:"true"`
7170
7171	// The ARN of the IAM role to use for this job request.
7172	//
7173	// IamRoleArn is a required field
7174	IamRoleArn *string `locationName:"iamRoleArn" min:"1" type:"string" required:"true"`
7175
7176	// The Amazon S3 location of your training file.
7177	//
7178	// InputPath is a required field
7179	InputPath *string `locationName:"inputPath" min:"1" type:"string" required:"true"`
7180
7181	// The ID of the batch prediction job.
7182	//
7183	// JobId is a required field
7184	JobId *string `locationName:"jobId" min:"1" type:"string" required:"true"`
7185
7186	// The Amazon S3 location of your output file.
7187	//
7188	// OutputPath is a required field
7189	OutputPath *string `locationName:"outputPath" min:"1" type:"string" required:"true"`
7190
7191	// A collection of key and value pairs.
7192	Tags []*Tag `locationName:"tags" type:"list"`
7193}
7194
7195// String returns the string representation
7196func (s CreateBatchPredictionJobInput) String() string {
7197	return awsutil.Prettify(s)
7198}
7199
7200// GoString returns the string representation
7201func (s CreateBatchPredictionJobInput) GoString() string {
7202	return s.String()
7203}
7204
7205// Validate inspects the fields of the type to determine if they are valid.
7206func (s *CreateBatchPredictionJobInput) Validate() error {
7207	invalidParams := request.ErrInvalidParams{Context: "CreateBatchPredictionJobInput"}
7208	if s.DetectorName == nil {
7209		invalidParams.Add(request.NewErrParamRequired("DetectorName"))
7210	}
7211	if s.DetectorName != nil && len(*s.DetectorName) < 1 {
7212		invalidParams.Add(request.NewErrParamMinLen("DetectorName", 1))
7213	}
7214	if s.DetectorVersion != nil && len(*s.DetectorVersion) < 1 {
7215		invalidParams.Add(request.NewErrParamMinLen("DetectorVersion", 1))
7216	}
7217	if s.EventTypeName == nil {
7218		invalidParams.Add(request.NewErrParamRequired("EventTypeName"))
7219	}
7220	if s.EventTypeName != nil && len(*s.EventTypeName) < 1 {
7221		invalidParams.Add(request.NewErrParamMinLen("EventTypeName", 1))
7222	}
7223	if s.IamRoleArn == nil {
7224		invalidParams.Add(request.NewErrParamRequired("IamRoleArn"))
7225	}
7226	if s.IamRoleArn != nil && len(*s.IamRoleArn) < 1 {
7227		invalidParams.Add(request.NewErrParamMinLen("IamRoleArn", 1))
7228	}
7229	if s.InputPath == nil {
7230		invalidParams.Add(request.NewErrParamRequired("InputPath"))
7231	}
7232	if s.InputPath != nil && len(*s.InputPath) < 1 {
7233		invalidParams.Add(request.NewErrParamMinLen("InputPath", 1))
7234	}
7235	if s.JobId == nil {
7236		invalidParams.Add(request.NewErrParamRequired("JobId"))
7237	}
7238	if s.JobId != nil && len(*s.JobId) < 1 {
7239		invalidParams.Add(request.NewErrParamMinLen("JobId", 1))
7240	}
7241	if s.OutputPath == nil {
7242		invalidParams.Add(request.NewErrParamRequired("OutputPath"))
7243	}
7244	if s.OutputPath != nil && len(*s.OutputPath) < 1 {
7245		invalidParams.Add(request.NewErrParamMinLen("OutputPath", 1))
7246	}
7247	if s.Tags != nil {
7248		for i, v := range s.Tags {
7249			if v == nil {
7250				continue
7251			}
7252			if err := v.Validate(); err != nil {
7253				invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Tags", i), err.(request.ErrInvalidParams))
7254			}
7255		}
7256	}
7257
7258	if invalidParams.Len() > 0 {
7259		return invalidParams
7260	}
7261	return nil
7262}
7263
7264// SetDetectorName sets the DetectorName field's value.
7265func (s *CreateBatchPredictionJobInput) SetDetectorName(v string) *CreateBatchPredictionJobInput {
7266	s.DetectorName = &v
7267	return s
7268}
7269
7270// SetDetectorVersion sets the DetectorVersion field's value.
7271func (s *CreateBatchPredictionJobInput) SetDetectorVersion(v string) *CreateBatchPredictionJobInput {
7272	s.DetectorVersion = &v
7273	return s
7274}
7275
7276// SetEventTypeName sets the EventTypeName field's value.
7277func (s *CreateBatchPredictionJobInput) SetEventTypeName(v string) *CreateBatchPredictionJobInput {
7278	s.EventTypeName = &v
7279	return s
7280}
7281
7282// SetIamRoleArn sets the IamRoleArn field's value.
7283func (s *CreateBatchPredictionJobInput) SetIamRoleArn(v string) *CreateBatchPredictionJobInput {
7284	s.IamRoleArn = &v
7285	return s
7286}
7287
7288// SetInputPath sets the InputPath field's value.
7289func (s *CreateBatchPredictionJobInput) SetInputPath(v string) *CreateBatchPredictionJobInput {
7290	s.InputPath = &v
7291	return s
7292}
7293
7294// SetJobId sets the JobId field's value.
7295func (s *CreateBatchPredictionJobInput) SetJobId(v string) *CreateBatchPredictionJobInput {
7296	s.JobId = &v
7297	return s
7298}
7299
7300// SetOutputPath sets the OutputPath field's value.
7301func (s *CreateBatchPredictionJobInput) SetOutputPath(v string) *CreateBatchPredictionJobInput {
7302	s.OutputPath = &v
7303	return s
7304}
7305
7306// SetTags sets the Tags field's value.
7307func (s *CreateBatchPredictionJobInput) SetTags(v []*Tag) *CreateBatchPredictionJobInput {
7308	s.Tags = v
7309	return s
7310}
7311
7312type CreateBatchPredictionJobOutput struct {
7313	_ struct{} `type:"structure"`
7314}
7315
7316// String returns the string representation
7317func (s CreateBatchPredictionJobOutput) String() string {
7318	return awsutil.Prettify(s)
7319}
7320
7321// GoString returns the string representation
7322func (s CreateBatchPredictionJobOutput) GoString() string {
7323	return s.String()
7324}
7325
7326type CreateDetectorVersionInput struct {
7327	_ struct{} `type:"structure"`
7328
7329	// The description of the detector version.
7330	Description *string `locationName:"description" min:"1" type:"string"`
7331
7332	// The ID of the detector under which you want to create a new version.
7333	//
7334	// DetectorId is a required field
7335	DetectorId *string `locationName:"detectorId" min:"1" type:"string" required:"true"`
7336
7337	// The Amazon Sagemaker model endpoints to include in the detector version.
7338	ExternalModelEndpoints []*string `locationName:"externalModelEndpoints" type:"list"`
7339
7340	// The model versions to include in the detector version.
7341	ModelVersions []*ModelVersion `locationName:"modelVersions" type:"list"`
7342
7343	// The rule execution mode for the rules included in the detector version.
7344	//
7345	// You can define and edit the rule mode at the detector version level, when
7346	// it is in draft status.
7347	//
7348	// If you specify FIRST_MATCHED, Amazon Fraud Detector evaluates rules sequentially,
7349	// first to last, stopping at the first matched rule. Amazon Fraud dectector
7350	// then provides the outcomes for that single rule.
7351	//
7352	// If you specifiy ALL_MATCHED, Amazon Fraud Detector evaluates all rules and
7353	// returns the outcomes for all matched rules.
7354	//
7355	// The default behavior is FIRST_MATCHED.
7356	RuleExecutionMode *string `locationName:"ruleExecutionMode" type:"string" enum:"RuleExecutionMode"`
7357
7358	// The rules to include in the detector version.
7359	//
7360	// Rules is a required field
7361	Rules []*Rule `locationName:"rules" type:"list" required:"true"`
7362
7363	// A collection of key and value pairs.
7364	Tags []*Tag `locationName:"tags" type:"list"`
7365}
7366
7367// String returns the string representation
7368func (s CreateDetectorVersionInput) String() string {
7369	return awsutil.Prettify(s)
7370}
7371
7372// GoString returns the string representation
7373func (s CreateDetectorVersionInput) GoString() string {
7374	return s.String()
7375}
7376
7377// Validate inspects the fields of the type to determine if they are valid.
7378func (s *CreateDetectorVersionInput) Validate() error {
7379	invalidParams := request.ErrInvalidParams{Context: "CreateDetectorVersionInput"}
7380	if s.Description != nil && len(*s.Description) < 1 {
7381		invalidParams.Add(request.NewErrParamMinLen("Description", 1))
7382	}
7383	if s.DetectorId == nil {
7384		invalidParams.Add(request.NewErrParamRequired("DetectorId"))
7385	}
7386	if s.DetectorId != nil && len(*s.DetectorId) < 1 {
7387		invalidParams.Add(request.NewErrParamMinLen("DetectorId", 1))
7388	}
7389	if s.Rules == nil {
7390		invalidParams.Add(request.NewErrParamRequired("Rules"))
7391	}
7392	if s.ModelVersions != nil {
7393		for i, v := range s.ModelVersions {
7394			if v == nil {
7395				continue
7396			}
7397			if err := v.Validate(); err != nil {
7398				invalidParams.AddNested(fmt.Sprintf("%s[%v]", "ModelVersions", i), err.(request.ErrInvalidParams))
7399			}
7400		}
7401	}
7402	if s.Rules != nil {
7403		for i, v := range s.Rules {
7404			if v == nil {
7405				continue
7406			}
7407			if err := v.Validate(); err != nil {
7408				invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Rules", i), err.(request.ErrInvalidParams))
7409			}
7410		}
7411	}
7412	if s.Tags != nil {
7413		for i, v := range s.Tags {
7414			if v == nil {
7415				continue
7416			}
7417			if err := v.Validate(); err != nil {
7418				invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Tags", i), err.(request.ErrInvalidParams))
7419			}
7420		}
7421	}
7422
7423	if invalidParams.Len() > 0 {
7424		return invalidParams
7425	}
7426	return nil
7427}
7428
7429// SetDescription sets the Description field's value.
7430func (s *CreateDetectorVersionInput) SetDescription(v string) *CreateDetectorVersionInput {
7431	s.Description = &v
7432	return s
7433}
7434
7435// SetDetectorId sets the DetectorId field's value.
7436func (s *CreateDetectorVersionInput) SetDetectorId(v string) *CreateDetectorVersionInput {
7437	s.DetectorId = &v
7438	return s
7439}
7440
7441// SetExternalModelEndpoints sets the ExternalModelEndpoints field's value.
7442func (s *CreateDetectorVersionInput) SetExternalModelEndpoints(v []*string) *CreateDetectorVersionInput {
7443	s.ExternalModelEndpoints = v
7444	return s
7445}
7446
7447// SetModelVersions sets the ModelVersions field's value.
7448func (s *CreateDetectorVersionInput) SetModelVersions(v []*ModelVersion) *CreateDetectorVersionInput {
7449	s.ModelVersions = v
7450	return s
7451}
7452
7453// SetRuleExecutionMode sets the RuleExecutionMode field's value.
7454func (s *CreateDetectorVersionInput) SetRuleExecutionMode(v string) *CreateDetectorVersionInput {
7455	s.RuleExecutionMode = &v
7456	return s
7457}
7458
7459// SetRules sets the Rules field's value.
7460func (s *CreateDetectorVersionInput) SetRules(v []*Rule) *CreateDetectorVersionInput {
7461	s.Rules = v
7462	return s
7463}
7464
7465// SetTags sets the Tags field's value.
7466func (s *CreateDetectorVersionInput) SetTags(v []*Tag) *CreateDetectorVersionInput {
7467	s.Tags = v
7468	return s
7469}
7470
7471type CreateDetectorVersionOutput struct {
7472	_ struct{} `type:"structure"`
7473
7474	// The ID for the created version's parent detector.
7475	DetectorId *string `locationName:"detectorId" min:"1" type:"string"`
7476
7477	// The ID for the created detector.
7478	DetectorVersionId *string `locationName:"detectorVersionId" min:"1" type:"string"`
7479
7480	// The status of the detector version.
7481	Status *string `locationName:"status" type:"string" enum:"DetectorVersionStatus"`
7482}
7483
7484// String returns the string representation
7485func (s CreateDetectorVersionOutput) String() string {
7486	return awsutil.Prettify(s)
7487}
7488
7489// GoString returns the string representation
7490func (s CreateDetectorVersionOutput) GoString() string {
7491	return s.String()
7492}
7493
7494// SetDetectorId sets the DetectorId field's value.
7495func (s *CreateDetectorVersionOutput) SetDetectorId(v string) *CreateDetectorVersionOutput {
7496	s.DetectorId = &v
7497	return s
7498}
7499
7500// SetDetectorVersionId sets the DetectorVersionId field's value.
7501func (s *CreateDetectorVersionOutput) SetDetectorVersionId(v string) *CreateDetectorVersionOutput {
7502	s.DetectorVersionId = &v
7503	return s
7504}
7505
7506// SetStatus sets the Status field's value.
7507func (s *CreateDetectorVersionOutput) SetStatus(v string) *CreateDetectorVersionOutput {
7508	s.Status = &v
7509	return s
7510}
7511
7512type CreateModelInput struct {
7513	_ struct{} `type:"structure"`
7514
7515	// The model description.
7516	Description *string `locationName:"description" min:"1" type:"string"`
7517
7518	// The name of the event type.
7519	//
7520	// EventTypeName is a required field
7521	EventTypeName *string `locationName:"eventTypeName" type:"string" required:"true"`
7522
7523	// The model ID.
7524	//
7525	// ModelId is a required field
7526	ModelId *string `locationName:"modelId" min:"1" type:"string" required:"true"`
7527
7528	// The model type.
7529	//
7530	// ModelType is a required field
7531	ModelType *string `locationName:"modelType" type:"string" required:"true" enum:"ModelTypeEnum"`
7532
7533	// A collection of key and value pairs.
7534	Tags []*Tag `locationName:"tags" type:"list"`
7535}
7536
7537// String returns the string representation
7538func (s CreateModelInput) String() string {
7539	return awsutil.Prettify(s)
7540}
7541
7542// GoString returns the string representation
7543func (s CreateModelInput) GoString() string {
7544	return s.String()
7545}
7546
7547// Validate inspects the fields of the type to determine if they are valid.
7548func (s *CreateModelInput) Validate() error {
7549	invalidParams := request.ErrInvalidParams{Context: "CreateModelInput"}
7550	if s.Description != nil && len(*s.Description) < 1 {
7551		invalidParams.Add(request.NewErrParamMinLen("Description", 1))
7552	}
7553	if s.EventTypeName == nil {
7554		invalidParams.Add(request.NewErrParamRequired("EventTypeName"))
7555	}
7556	if s.ModelId == nil {
7557		invalidParams.Add(request.NewErrParamRequired("ModelId"))
7558	}
7559	if s.ModelId != nil && len(*s.ModelId) < 1 {
7560		invalidParams.Add(request.NewErrParamMinLen("ModelId", 1))
7561	}
7562	if s.ModelType == nil {
7563		invalidParams.Add(request.NewErrParamRequired("ModelType"))
7564	}
7565	if s.Tags != nil {
7566		for i, v := range s.Tags {
7567			if v == nil {
7568				continue
7569			}
7570			if err := v.Validate(); err != nil {
7571				invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Tags", i), err.(request.ErrInvalidParams))
7572			}
7573		}
7574	}
7575
7576	if invalidParams.Len() > 0 {
7577		return invalidParams
7578	}
7579	return nil
7580}
7581
7582// SetDescription sets the Description field's value.
7583func (s *CreateModelInput) SetDescription(v string) *CreateModelInput {
7584	s.Description = &v
7585	return s
7586}
7587
7588// SetEventTypeName sets the EventTypeName field's value.
7589func (s *CreateModelInput) SetEventTypeName(v string) *CreateModelInput {
7590	s.EventTypeName = &v
7591	return s
7592}
7593
7594// SetModelId sets the ModelId field's value.
7595func (s *CreateModelInput) SetModelId(v string) *CreateModelInput {
7596	s.ModelId = &v
7597	return s
7598}
7599
7600// SetModelType sets the ModelType field's value.
7601func (s *CreateModelInput) SetModelType(v string) *CreateModelInput {
7602	s.ModelType = &v
7603	return s
7604}
7605
7606// SetTags sets the Tags field's value.
7607func (s *CreateModelInput) SetTags(v []*Tag) *CreateModelInput {
7608	s.Tags = v
7609	return s
7610}
7611
7612type CreateModelOutput struct {
7613	_ struct{} `type:"structure"`
7614}
7615
7616// String returns the string representation
7617func (s CreateModelOutput) String() string {
7618	return awsutil.Prettify(s)
7619}
7620
7621// GoString returns the string representation
7622func (s CreateModelOutput) GoString() string {
7623	return s.String()
7624}
7625
7626type CreateModelVersionInput struct {
7627	_ struct{} `type:"structure"`
7628
7629	// Details for the external events data used for model version training. Required
7630	// if trainingDataSource is EXTERNAL_EVENTS.
7631	ExternalEventsDetail *ExternalEventsDetail `locationName:"externalEventsDetail" type:"structure"`
7632
7633	// The model ID.
7634	//
7635	// ModelId is a required field
7636	ModelId *string `locationName:"modelId" min:"1" type:"string" required:"true"`
7637
7638	// The model type.
7639	//
7640	// ModelType is a required field
7641	ModelType *string `locationName:"modelType" type:"string" required:"true" enum:"ModelTypeEnum"`
7642
7643	// A collection of key and value pairs.
7644	Tags []*Tag `locationName:"tags" type:"list"`
7645
7646	// The training data schema.
7647	//
7648	// TrainingDataSchema is a required field
7649	TrainingDataSchema *TrainingDataSchema `locationName:"trainingDataSchema" type:"structure" required:"true"`
7650
7651	// The training data source location in Amazon S3.
7652	//
7653	// TrainingDataSource is a required field
7654	TrainingDataSource *string `locationName:"trainingDataSource" type:"string" required:"true" enum:"TrainingDataSourceEnum"`
7655}
7656
7657// String returns the string representation
7658func (s CreateModelVersionInput) String() string {
7659	return awsutil.Prettify(s)
7660}
7661
7662// GoString returns the string representation
7663func (s CreateModelVersionInput) GoString() string {
7664	return s.String()
7665}
7666
7667// Validate inspects the fields of the type to determine if they are valid.
7668func (s *CreateModelVersionInput) Validate() error {
7669	invalidParams := request.ErrInvalidParams{Context: "CreateModelVersionInput"}
7670	if s.ModelId == nil {
7671		invalidParams.Add(request.NewErrParamRequired("ModelId"))
7672	}
7673	if s.ModelId != nil && len(*s.ModelId) < 1 {
7674		invalidParams.Add(request.NewErrParamMinLen("ModelId", 1))
7675	}
7676	if s.ModelType == nil {
7677		invalidParams.Add(request.NewErrParamRequired("ModelType"))
7678	}
7679	if s.TrainingDataSchema == nil {
7680		invalidParams.Add(request.NewErrParamRequired("TrainingDataSchema"))
7681	}
7682	if s.TrainingDataSource == nil {
7683		invalidParams.Add(request.NewErrParamRequired("TrainingDataSource"))
7684	}
7685	if s.ExternalEventsDetail != nil {
7686		if err := s.ExternalEventsDetail.Validate(); err != nil {
7687			invalidParams.AddNested("ExternalEventsDetail", err.(request.ErrInvalidParams))
7688		}
7689	}
7690	if s.Tags != nil {
7691		for i, v := range s.Tags {
7692			if v == nil {
7693				continue
7694			}
7695			if err := v.Validate(); err != nil {
7696				invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Tags", i), err.(request.ErrInvalidParams))
7697			}
7698		}
7699	}
7700	if s.TrainingDataSchema != nil {
7701		if err := s.TrainingDataSchema.Validate(); err != nil {
7702			invalidParams.AddNested("TrainingDataSchema", err.(request.ErrInvalidParams))
7703		}
7704	}
7705
7706	if invalidParams.Len() > 0 {
7707		return invalidParams
7708	}
7709	return nil
7710}
7711
7712// SetExternalEventsDetail sets the ExternalEventsDetail field's value.
7713func (s *CreateModelVersionInput) SetExternalEventsDetail(v *ExternalEventsDetail) *CreateModelVersionInput {
7714	s.ExternalEventsDetail = v
7715	return s
7716}
7717
7718// SetModelId sets the ModelId field's value.
7719func (s *CreateModelVersionInput) SetModelId(v string) *CreateModelVersionInput {
7720	s.ModelId = &v
7721	return s
7722}
7723
7724// SetModelType sets the ModelType field's value.
7725func (s *CreateModelVersionInput) SetModelType(v string) *CreateModelVersionInput {
7726	s.ModelType = &v
7727	return s
7728}
7729
7730// SetTags sets the Tags field's value.
7731func (s *CreateModelVersionInput) SetTags(v []*Tag) *CreateModelVersionInput {
7732	s.Tags = v
7733	return s
7734}
7735
7736// SetTrainingDataSchema sets the TrainingDataSchema field's value.
7737func (s *CreateModelVersionInput) SetTrainingDataSchema(v *TrainingDataSchema) *CreateModelVersionInput {
7738	s.TrainingDataSchema = v
7739	return s
7740}
7741
7742// SetTrainingDataSource sets the TrainingDataSource field's value.
7743func (s *CreateModelVersionInput) SetTrainingDataSource(v string) *CreateModelVersionInput {
7744	s.TrainingDataSource = &v
7745	return s
7746}
7747
7748type CreateModelVersionOutput struct {
7749	_ struct{} `type:"structure"`
7750
7751	// The model ID.
7752	ModelId *string `locationName:"modelId" min:"1" type:"string"`
7753
7754	// The model type.
7755	ModelType *string `locationName:"modelType" type:"string" enum:"ModelTypeEnum"`
7756
7757	// The model version number of the model version created.
7758	ModelVersionNumber *string `locationName:"modelVersionNumber" min:"1" type:"string"`
7759
7760	// The model version status.
7761	Status *string `locationName:"status" type:"string"`
7762}
7763
7764// String returns the string representation
7765func (s CreateModelVersionOutput) String() string {
7766	return awsutil.Prettify(s)
7767}
7768
7769// GoString returns the string representation
7770func (s CreateModelVersionOutput) GoString() string {
7771	return s.String()
7772}
7773
7774// SetModelId sets the ModelId field's value.
7775func (s *CreateModelVersionOutput) SetModelId(v string) *CreateModelVersionOutput {
7776	s.ModelId = &v
7777	return s
7778}
7779
7780// SetModelType sets the ModelType field's value.
7781func (s *CreateModelVersionOutput) SetModelType(v string) *CreateModelVersionOutput {
7782	s.ModelType = &v
7783	return s
7784}
7785
7786// SetModelVersionNumber sets the ModelVersionNumber field's value.
7787func (s *CreateModelVersionOutput) SetModelVersionNumber(v string) *CreateModelVersionOutput {
7788	s.ModelVersionNumber = &v
7789	return s
7790}
7791
7792// SetStatus sets the Status field's value.
7793func (s *CreateModelVersionOutput) SetStatus(v string) *CreateModelVersionOutput {
7794	s.Status = &v
7795	return s
7796}
7797
7798type CreateRuleInput struct {
7799	_ struct{} `type:"structure"`
7800
7801	// The rule description.
7802	Description *string `locationName:"description" min:"1" type:"string"`
7803
7804	// The detector ID for the rule's parent detector.
7805	//
7806	// DetectorId is a required field
7807	DetectorId *string `locationName:"detectorId" min:"1" type:"string" required:"true"`
7808
7809	// The rule expression.
7810	//
7811	// Expression is a required field
7812	Expression *string `locationName:"expression" min:"1" type:"string" required:"true" sensitive:"true"`
7813
7814	// The language of the rule.
7815	//
7816	// Language is a required field
7817	Language *string `locationName:"language" type:"string" required:"true" enum:"Language"`
7818
7819	// The outcome or outcomes returned when the rule expression matches.
7820	//
7821	// Outcomes is a required field
7822	Outcomes []*string `locationName:"outcomes" min:"1" type:"list" required:"true"`
7823
7824	// The rule ID.
7825	//
7826	// RuleId is a required field
7827	RuleId *string `locationName:"ruleId" min:"1" type:"string" required:"true"`
7828
7829	// A collection of key and value pairs.
7830	Tags []*Tag `locationName:"tags" type:"list"`
7831}
7832
7833// String returns the string representation
7834func (s CreateRuleInput) String() string {
7835	return awsutil.Prettify(s)
7836}
7837
7838// GoString returns the string representation
7839func (s CreateRuleInput) GoString() string {
7840	return s.String()
7841}
7842
7843// Validate inspects the fields of the type to determine if they are valid.
7844func (s *CreateRuleInput) Validate() error {
7845	invalidParams := request.ErrInvalidParams{Context: "CreateRuleInput"}
7846	if s.Description != nil && len(*s.Description) < 1 {
7847		invalidParams.Add(request.NewErrParamMinLen("Description", 1))
7848	}
7849	if s.DetectorId == nil {
7850		invalidParams.Add(request.NewErrParamRequired("DetectorId"))
7851	}
7852	if s.DetectorId != nil && len(*s.DetectorId) < 1 {
7853		invalidParams.Add(request.NewErrParamMinLen("DetectorId", 1))
7854	}
7855	if s.Expression == nil {
7856		invalidParams.Add(request.NewErrParamRequired("Expression"))
7857	}
7858	if s.Expression != nil && len(*s.Expression) < 1 {
7859		invalidParams.Add(request.NewErrParamMinLen("Expression", 1))
7860	}
7861	if s.Language == nil {
7862		invalidParams.Add(request.NewErrParamRequired("Language"))
7863	}
7864	if s.Outcomes == nil {
7865		invalidParams.Add(request.NewErrParamRequired("Outcomes"))
7866	}
7867	if s.Outcomes != nil && len(s.Outcomes) < 1 {
7868		invalidParams.Add(request.NewErrParamMinLen("Outcomes", 1))
7869	}
7870	if s.RuleId == nil {
7871		invalidParams.Add(request.NewErrParamRequired("RuleId"))
7872	}
7873	if s.RuleId != nil && len(*s.RuleId) < 1 {
7874		invalidParams.Add(request.NewErrParamMinLen("RuleId", 1))
7875	}
7876	if s.Tags != nil {
7877		for i, v := range s.Tags {
7878			if v == nil {
7879				continue
7880			}
7881			if err := v.Validate(); err != nil {
7882				invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Tags", i), err.(request.ErrInvalidParams))
7883			}
7884		}
7885	}
7886
7887	if invalidParams.Len() > 0 {
7888		return invalidParams
7889	}
7890	return nil
7891}
7892
7893// SetDescription sets the Description field's value.
7894func (s *CreateRuleInput) SetDescription(v string) *CreateRuleInput {
7895	s.Description = &v
7896	return s
7897}
7898
7899// SetDetectorId sets the DetectorId field's value.
7900func (s *CreateRuleInput) SetDetectorId(v string) *CreateRuleInput {
7901	s.DetectorId = &v
7902	return s
7903}
7904
7905// SetExpression sets the Expression field's value.
7906func (s *CreateRuleInput) SetExpression(v string) *CreateRuleInput {
7907	s.Expression = &v
7908	return s
7909}
7910
7911// SetLanguage sets the Language field's value.
7912func (s *CreateRuleInput) SetLanguage(v string) *CreateRuleInput {
7913	s.Language = &v
7914	return s
7915}
7916
7917// SetOutcomes sets the Outcomes field's value.
7918func (s *CreateRuleInput) SetOutcomes(v []*string) *CreateRuleInput {
7919	s.Outcomes = v
7920	return s
7921}
7922
7923// SetRuleId sets the RuleId field's value.
7924func (s *CreateRuleInput) SetRuleId(v string) *CreateRuleInput {
7925	s.RuleId = &v
7926	return s
7927}
7928
7929// SetTags sets the Tags field's value.
7930func (s *CreateRuleInput) SetTags(v []*Tag) *CreateRuleInput {
7931	s.Tags = v
7932	return s
7933}
7934
7935type CreateRuleOutput struct {
7936	_ struct{} `type:"structure"`
7937
7938	// The created rule.
7939	Rule *Rule `locationName:"rule" type:"structure"`
7940}
7941
7942// String returns the string representation
7943func (s CreateRuleOutput) String() string {
7944	return awsutil.Prettify(s)
7945}
7946
7947// GoString returns the string representation
7948func (s CreateRuleOutput) GoString() string {
7949	return s.String()
7950}
7951
7952// SetRule sets the Rule field's value.
7953func (s *CreateRuleOutput) SetRule(v *Rule) *CreateRuleOutput {
7954	s.Rule = v
7955	return s
7956}
7957
7958type CreateVariableInput struct {
7959	_ struct{} `type:"structure"`
7960
7961	// The source of the data.
7962	//
7963	// DataSource is a required field
7964	DataSource *string `locationName:"dataSource" type:"string" required:"true" enum:"DataSource"`
7965
7966	// The data type.
7967	//
7968	// DataType is a required field
7969	DataType *string `locationName:"dataType" type:"string" required:"true" enum:"DataType"`
7970
7971	// The default value for the variable when no value is received.
7972	//
7973	// DefaultValue is a required field
7974	DefaultValue *string `locationName:"defaultValue" type:"string" required:"true"`
7975
7976	// The description.
7977	Description *string `locationName:"description" type:"string"`
7978
7979	// The name of the variable.
7980	//
7981	// Name is a required field
7982	Name *string `locationName:"name" type:"string" required:"true"`
7983
7984	// A collection of key and value pairs.
7985	Tags []*Tag `locationName:"tags" type:"list"`
7986
7987	// The variable type. For more information see Variable types (https://docs.aws.amazon.com/frauddetector/latest/ug/create-a-variable.html#variable-types).
7988	//
7989	// Valid Values: AUTH_CODE | AVS | BILLING_ADDRESS_L1 | BILLING_ADDRESS_L2 |
7990	// BILLING_CITY | BILLING_COUNTRY | BILLING_NAME | BILLING_PHONE | BILLING_STATE
7991	// | BILLING_ZIP | CARD_BIN | CATEGORICAL | CURRENCY_CODE | EMAIL_ADDRESS |
7992	// FINGERPRINT | FRAUD_LABEL | FREE_FORM_TEXT | IP_ADDRESS | NUMERIC | ORDER_ID
7993	// | PAYMENT_TYPE | PHONE_NUMBER | PRICE | PRODUCT_CATEGORY | SHIPPING_ADDRESS_L1
7994	// | SHIPPING_ADDRESS_L2 | SHIPPING_CITY | SHIPPING_COUNTRY | SHIPPING_NAME
7995	// | SHIPPING_PHONE | SHIPPING_STATE | SHIPPING_ZIP | USERAGENT
7996	VariableType *string `locationName:"variableType" type:"string"`
7997}
7998
7999// String returns the string representation
8000func (s CreateVariableInput) String() string {
8001	return awsutil.Prettify(s)
8002}
8003
8004// GoString returns the string representation
8005func (s CreateVariableInput) GoString() string {
8006	return s.String()
8007}
8008
8009// Validate inspects the fields of the type to determine if they are valid.
8010func (s *CreateVariableInput) Validate() error {
8011	invalidParams := request.ErrInvalidParams{Context: "CreateVariableInput"}
8012	if s.DataSource == nil {
8013		invalidParams.Add(request.NewErrParamRequired("DataSource"))
8014	}
8015	if s.DataType == nil {
8016		invalidParams.Add(request.NewErrParamRequired("DataType"))
8017	}
8018	if s.DefaultValue == nil {
8019		invalidParams.Add(request.NewErrParamRequired("DefaultValue"))
8020	}
8021	if s.Name == nil {
8022		invalidParams.Add(request.NewErrParamRequired("Name"))
8023	}
8024	if s.Tags != nil {
8025		for i, v := range s.Tags {
8026			if v == nil {
8027				continue
8028			}
8029			if err := v.Validate(); err != nil {
8030				invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Tags", i), err.(request.ErrInvalidParams))
8031			}
8032		}
8033	}
8034
8035	if invalidParams.Len() > 0 {
8036		return invalidParams
8037	}
8038	return nil
8039}
8040
8041// SetDataSource sets the DataSource field's value.
8042func (s *CreateVariableInput) SetDataSource(v string) *CreateVariableInput {
8043	s.DataSource = &v
8044	return s
8045}
8046
8047// SetDataType sets the DataType field's value.
8048func (s *CreateVariableInput) SetDataType(v string) *CreateVariableInput {
8049	s.DataType = &v
8050	return s
8051}
8052
8053// SetDefaultValue sets the DefaultValue field's value.
8054func (s *CreateVariableInput) SetDefaultValue(v string) *CreateVariableInput {
8055	s.DefaultValue = &v
8056	return s
8057}
8058
8059// SetDescription sets the Description field's value.
8060func (s *CreateVariableInput) SetDescription(v string) *CreateVariableInput {
8061	s.Description = &v
8062	return s
8063}
8064
8065// SetName sets the Name field's value.
8066func (s *CreateVariableInput) SetName(v string) *CreateVariableInput {
8067	s.Name = &v
8068	return s
8069}
8070
8071// SetTags sets the Tags field's value.
8072func (s *CreateVariableInput) SetTags(v []*Tag) *CreateVariableInput {
8073	s.Tags = v
8074	return s
8075}
8076
8077// SetVariableType sets the VariableType field's value.
8078func (s *CreateVariableInput) SetVariableType(v string) *CreateVariableInput {
8079	s.VariableType = &v
8080	return s
8081}
8082
8083type CreateVariableOutput struct {
8084	_ struct{} `type:"structure"`
8085}
8086
8087// String returns the string representation
8088func (s CreateVariableOutput) String() string {
8089	return awsutil.Prettify(s)
8090}
8091
8092// GoString returns the string representation
8093func (s CreateVariableOutput) GoString() string {
8094	return s.String()
8095}
8096
8097// The model training validation messages.
8098type DataValidationMetrics struct {
8099	_ struct{} `type:"structure"`
8100
8101	// The field-specific model training validation messages.
8102	FieldLevelMessages []*FieldValidationMessage `locationName:"fieldLevelMessages" type:"list"`
8103
8104	// The file-specific model training validation messages.
8105	FileLevelMessages []*FileValidationMessage `locationName:"fileLevelMessages" type:"list"`
8106}
8107
8108// String returns the string representation
8109func (s DataValidationMetrics) String() string {
8110	return awsutil.Prettify(s)
8111}
8112
8113// GoString returns the string representation
8114func (s DataValidationMetrics) GoString() string {
8115	return s.String()
8116}
8117
8118// SetFieldLevelMessages sets the FieldLevelMessages field's value.
8119func (s *DataValidationMetrics) SetFieldLevelMessages(v []*FieldValidationMessage) *DataValidationMetrics {
8120	s.FieldLevelMessages = v
8121	return s
8122}
8123
8124// SetFileLevelMessages sets the FileLevelMessages field's value.
8125func (s *DataValidationMetrics) SetFileLevelMessages(v []*FileValidationMessage) *DataValidationMetrics {
8126	s.FileLevelMessages = v
8127	return s
8128}
8129
8130type DeleteBatchPredictionJobInput struct {
8131	_ struct{} `type:"structure"`
8132
8133	// The ID of the batch prediction job to delete.
8134	//
8135	// JobId is a required field
8136	JobId *string `locationName:"jobId" min:"1" type:"string" required:"true"`
8137}
8138
8139// String returns the string representation
8140func (s DeleteBatchPredictionJobInput) String() string {
8141	return awsutil.Prettify(s)
8142}
8143
8144// GoString returns the string representation
8145func (s DeleteBatchPredictionJobInput) GoString() string {
8146	return s.String()
8147}
8148
8149// Validate inspects the fields of the type to determine if they are valid.
8150func (s *DeleteBatchPredictionJobInput) Validate() error {
8151	invalidParams := request.ErrInvalidParams{Context: "DeleteBatchPredictionJobInput"}
8152	if s.JobId == nil {
8153		invalidParams.Add(request.NewErrParamRequired("JobId"))
8154	}
8155	if s.JobId != nil && len(*s.JobId) < 1 {
8156		invalidParams.Add(request.NewErrParamMinLen("JobId", 1))
8157	}
8158
8159	if invalidParams.Len() > 0 {
8160		return invalidParams
8161	}
8162	return nil
8163}
8164
8165// SetJobId sets the JobId field's value.
8166func (s *DeleteBatchPredictionJobInput) SetJobId(v string) *DeleteBatchPredictionJobInput {
8167	s.JobId = &v
8168	return s
8169}
8170
8171type DeleteBatchPredictionJobOutput struct {
8172	_ struct{} `type:"structure"`
8173}
8174
8175// String returns the string representation
8176func (s DeleteBatchPredictionJobOutput) String() string {
8177	return awsutil.Prettify(s)
8178}
8179
8180// GoString returns the string representation
8181func (s DeleteBatchPredictionJobOutput) GoString() string {
8182	return s.String()
8183}
8184
8185type DeleteDetectorInput struct {
8186	_ struct{} `type:"structure"`
8187
8188	// The ID of the detector to delete.
8189	//
8190	// DetectorId is a required field
8191	DetectorId *string `locationName:"detectorId" min:"1" type:"string" required:"true"`
8192}
8193
8194// String returns the string representation
8195func (s DeleteDetectorInput) String() string {
8196	return awsutil.Prettify(s)
8197}
8198
8199// GoString returns the string representation
8200func (s DeleteDetectorInput) GoString() string {
8201	return s.String()
8202}
8203
8204// Validate inspects the fields of the type to determine if they are valid.
8205func (s *DeleteDetectorInput) Validate() error {
8206	invalidParams := request.ErrInvalidParams{Context: "DeleteDetectorInput"}
8207	if s.DetectorId == nil {
8208		invalidParams.Add(request.NewErrParamRequired("DetectorId"))
8209	}
8210	if s.DetectorId != nil && len(*s.DetectorId) < 1 {
8211		invalidParams.Add(request.NewErrParamMinLen("DetectorId", 1))
8212	}
8213
8214	if invalidParams.Len() > 0 {
8215		return invalidParams
8216	}
8217	return nil
8218}
8219
8220// SetDetectorId sets the DetectorId field's value.
8221func (s *DeleteDetectorInput) SetDetectorId(v string) *DeleteDetectorInput {
8222	s.DetectorId = &v
8223	return s
8224}
8225
8226type DeleteDetectorOutput struct {
8227	_ struct{} `type:"structure"`
8228}
8229
8230// String returns the string representation
8231func (s DeleteDetectorOutput) String() string {
8232	return awsutil.Prettify(s)
8233}
8234
8235// GoString returns the string representation
8236func (s DeleteDetectorOutput) GoString() string {
8237	return s.String()
8238}
8239
8240type DeleteDetectorVersionInput struct {
8241	_ struct{} `type:"structure"`
8242
8243	// The ID of the parent detector for the detector version to delete.
8244	//
8245	// DetectorId is a required field
8246	DetectorId *string `locationName:"detectorId" min:"1" type:"string" required:"true"`
8247
8248	// The ID of the detector version to delete.
8249	//
8250	// DetectorVersionId is a required field
8251	DetectorVersionId *string `locationName:"detectorVersionId" min:"1" type:"string" required:"true"`
8252}
8253
8254// String returns the string representation
8255func (s DeleteDetectorVersionInput) String() string {
8256	return awsutil.Prettify(s)
8257}
8258
8259// GoString returns the string representation
8260func (s DeleteDetectorVersionInput) GoString() string {
8261	return s.String()
8262}
8263
8264// Validate inspects the fields of the type to determine if they are valid.
8265func (s *DeleteDetectorVersionInput) Validate() error {
8266	invalidParams := request.ErrInvalidParams{Context: "DeleteDetectorVersionInput"}
8267	if s.DetectorId == nil {
8268		invalidParams.Add(request.NewErrParamRequired("DetectorId"))
8269	}
8270	if s.DetectorId != nil && len(*s.DetectorId) < 1 {
8271		invalidParams.Add(request.NewErrParamMinLen("DetectorId", 1))
8272	}
8273	if s.DetectorVersionId == nil {
8274		invalidParams.Add(request.NewErrParamRequired("DetectorVersionId"))
8275	}
8276	if s.DetectorVersionId != nil && len(*s.DetectorVersionId) < 1 {
8277		invalidParams.Add(request.NewErrParamMinLen("DetectorVersionId", 1))
8278	}
8279
8280	if invalidParams.Len() > 0 {
8281		return invalidParams
8282	}
8283	return nil
8284}
8285
8286// SetDetectorId sets the DetectorId field's value.
8287func (s *DeleteDetectorVersionInput) SetDetectorId(v string) *DeleteDetectorVersionInput {
8288	s.DetectorId = &v
8289	return s
8290}
8291
8292// SetDetectorVersionId sets the DetectorVersionId field's value.
8293func (s *DeleteDetectorVersionInput) SetDetectorVersionId(v string) *DeleteDetectorVersionInput {
8294	s.DetectorVersionId = &v
8295	return s
8296}
8297
8298type DeleteDetectorVersionOutput struct {
8299	_ struct{} `type:"structure"`
8300}
8301
8302// String returns the string representation
8303func (s DeleteDetectorVersionOutput) String() string {
8304	return awsutil.Prettify(s)
8305}
8306
8307// GoString returns the string representation
8308func (s DeleteDetectorVersionOutput) GoString() string {
8309	return s.String()
8310}
8311
8312type DeleteEntityTypeInput struct {
8313	_ struct{} `type:"structure"`
8314
8315	// The name of the entity type to delete.
8316	//
8317	// Name is a required field
8318	Name *string `locationName:"name" min:"1" type:"string" required:"true"`
8319}
8320
8321// String returns the string representation
8322func (s DeleteEntityTypeInput) String() string {
8323	return awsutil.Prettify(s)
8324}
8325
8326// GoString returns the string representation
8327func (s DeleteEntityTypeInput) GoString() string {
8328	return s.String()
8329}
8330
8331// Validate inspects the fields of the type to determine if they are valid.
8332func (s *DeleteEntityTypeInput) Validate() error {
8333	invalidParams := request.ErrInvalidParams{Context: "DeleteEntityTypeInput"}
8334	if s.Name == nil {
8335		invalidParams.Add(request.NewErrParamRequired("Name"))
8336	}
8337	if s.Name != nil && len(*s.Name) < 1 {
8338		invalidParams.Add(request.NewErrParamMinLen("Name", 1))
8339	}
8340
8341	if invalidParams.Len() > 0 {
8342		return invalidParams
8343	}
8344	return nil
8345}
8346
8347// SetName sets the Name field's value.
8348func (s *DeleteEntityTypeInput) SetName(v string) *DeleteEntityTypeInput {
8349	s.Name = &v
8350	return s
8351}
8352
8353type DeleteEntityTypeOutput struct {
8354	_ struct{} `type:"structure"`
8355}
8356
8357// String returns the string representation
8358func (s DeleteEntityTypeOutput) String() string {
8359	return awsutil.Prettify(s)
8360}
8361
8362// GoString returns the string representation
8363func (s DeleteEntityTypeOutput) GoString() string {
8364	return s.String()
8365}
8366
8367type DeleteEventInput struct {
8368	_ struct{} `type:"structure"`
8369
8370	// The ID of the event to delete.
8371	//
8372	// EventId is a required field
8373	EventId *string `locationName:"eventId" min:"1" type:"string" required:"true"`
8374
8375	// The name of the event type.
8376	//
8377	// EventTypeName is a required field
8378	EventTypeName *string `locationName:"eventTypeName" min:"1" type:"string" required:"true"`
8379}
8380
8381// String returns the string representation
8382func (s DeleteEventInput) String() string {
8383	return awsutil.Prettify(s)
8384}
8385
8386// GoString returns the string representation
8387func (s DeleteEventInput) GoString() string {
8388	return s.String()
8389}
8390
8391// Validate inspects the fields of the type to determine if they are valid.
8392func (s *DeleteEventInput) Validate() error {
8393	invalidParams := request.ErrInvalidParams{Context: "DeleteEventInput"}
8394	if s.EventId == nil {
8395		invalidParams.Add(request.NewErrParamRequired("EventId"))
8396	}
8397	if s.EventId != nil && len(*s.EventId) < 1 {
8398		invalidParams.Add(request.NewErrParamMinLen("EventId", 1))
8399	}
8400	if s.EventTypeName == nil {
8401		invalidParams.Add(request.NewErrParamRequired("EventTypeName"))
8402	}
8403	if s.EventTypeName != nil && len(*s.EventTypeName) < 1 {
8404		invalidParams.Add(request.NewErrParamMinLen("EventTypeName", 1))
8405	}
8406
8407	if invalidParams.Len() > 0 {
8408		return invalidParams
8409	}
8410	return nil
8411}
8412
8413// SetEventId sets the EventId field's value.
8414func (s *DeleteEventInput) SetEventId(v string) *DeleteEventInput {
8415	s.EventId = &v
8416	return s
8417}
8418
8419// SetEventTypeName sets the EventTypeName field's value.
8420func (s *DeleteEventInput) SetEventTypeName(v string) *DeleteEventInput {
8421	s.EventTypeName = &v
8422	return s
8423}
8424
8425type DeleteEventOutput struct {
8426	_ struct{} `type:"structure"`
8427}
8428
8429// String returns the string representation
8430func (s DeleteEventOutput) String() string {
8431	return awsutil.Prettify(s)
8432}
8433
8434// GoString returns the string representation
8435func (s DeleteEventOutput) GoString() string {
8436	return s.String()
8437}
8438
8439type DeleteEventTypeInput struct {
8440	_ struct{} `type:"structure"`
8441
8442	// The name of the event type to delete.
8443	//
8444	// Name is a required field
8445	Name *string `locationName:"name" min:"1" type:"string" required:"true"`
8446}
8447
8448// String returns the string representation
8449func (s DeleteEventTypeInput) String() string {
8450	return awsutil.Prettify(s)
8451}
8452
8453// GoString returns the string representation
8454func (s DeleteEventTypeInput) GoString() string {
8455	return s.String()
8456}
8457
8458// Validate inspects the fields of the type to determine if they are valid.
8459func (s *DeleteEventTypeInput) Validate() error {
8460	invalidParams := request.ErrInvalidParams{Context: "DeleteEventTypeInput"}
8461	if s.Name == nil {
8462		invalidParams.Add(request.NewErrParamRequired("Name"))
8463	}
8464	if s.Name != nil && len(*s.Name) < 1 {
8465		invalidParams.Add(request.NewErrParamMinLen("Name", 1))
8466	}
8467
8468	if invalidParams.Len() > 0 {
8469		return invalidParams
8470	}
8471	return nil
8472}
8473
8474// SetName sets the Name field's value.
8475func (s *DeleteEventTypeInput) SetName(v string) *DeleteEventTypeInput {
8476	s.Name = &v
8477	return s
8478}
8479
8480type DeleteEventTypeOutput struct {
8481	_ struct{} `type:"structure"`
8482}
8483
8484// String returns the string representation
8485func (s DeleteEventTypeOutput) String() string {
8486	return awsutil.Prettify(s)
8487}
8488
8489// GoString returns the string representation
8490func (s DeleteEventTypeOutput) GoString() string {
8491	return s.String()
8492}
8493
8494type DeleteExternalModelInput struct {
8495	_ struct{} `type:"structure"`
8496
8497	// The endpoint of the Amazon Sagemaker model to delete.
8498	//
8499	// ModelEndpoint is a required field
8500	ModelEndpoint *string `locationName:"modelEndpoint" min:"1" type:"string" required:"true"`
8501}
8502
8503// String returns the string representation
8504func (s DeleteExternalModelInput) String() string {
8505	return awsutil.Prettify(s)
8506}
8507
8508// GoString returns the string representation
8509func (s DeleteExternalModelInput) GoString() string {
8510	return s.String()
8511}
8512
8513// Validate inspects the fields of the type to determine if they are valid.
8514func (s *DeleteExternalModelInput) Validate() error {
8515	invalidParams := request.ErrInvalidParams{Context: "DeleteExternalModelInput"}
8516	if s.ModelEndpoint == nil {
8517		invalidParams.Add(request.NewErrParamRequired("ModelEndpoint"))
8518	}
8519	if s.ModelEndpoint != nil && len(*s.ModelEndpoint) < 1 {
8520		invalidParams.Add(request.NewErrParamMinLen("ModelEndpoint", 1))
8521	}
8522
8523	if invalidParams.Len() > 0 {
8524		return invalidParams
8525	}
8526	return nil
8527}
8528
8529// SetModelEndpoint sets the ModelEndpoint field's value.
8530func (s *DeleteExternalModelInput) SetModelEndpoint(v string) *DeleteExternalModelInput {
8531	s.ModelEndpoint = &v
8532	return s
8533}
8534
8535type DeleteExternalModelOutput struct {
8536	_ struct{} `type:"structure"`
8537}
8538
8539// String returns the string representation
8540func (s DeleteExternalModelOutput) String() string {
8541	return awsutil.Prettify(s)
8542}
8543
8544// GoString returns the string representation
8545func (s DeleteExternalModelOutput) GoString() string {
8546	return s.String()
8547}
8548
8549type DeleteLabelInput struct {
8550	_ struct{} `type:"structure"`
8551
8552	// The name of the label to delete.
8553	//
8554	// Name is a required field
8555	Name *string `locationName:"name" min:"1" type:"string" required:"true"`
8556}
8557
8558// String returns the string representation
8559func (s DeleteLabelInput) String() string {
8560	return awsutil.Prettify(s)
8561}
8562
8563// GoString returns the string representation
8564func (s DeleteLabelInput) GoString() string {
8565	return s.String()
8566}
8567
8568// Validate inspects the fields of the type to determine if they are valid.
8569func (s *DeleteLabelInput) Validate() error {
8570	invalidParams := request.ErrInvalidParams{Context: "DeleteLabelInput"}
8571	if s.Name == nil {
8572		invalidParams.Add(request.NewErrParamRequired("Name"))
8573	}
8574	if s.Name != nil && len(*s.Name) < 1 {
8575		invalidParams.Add(request.NewErrParamMinLen("Name", 1))
8576	}
8577
8578	if invalidParams.Len() > 0 {
8579		return invalidParams
8580	}
8581	return nil
8582}
8583
8584// SetName sets the Name field's value.
8585func (s *DeleteLabelInput) SetName(v string) *DeleteLabelInput {
8586	s.Name = &v
8587	return s
8588}
8589
8590type DeleteLabelOutput struct {
8591	_ struct{} `type:"structure"`
8592}
8593
8594// String returns the string representation
8595func (s DeleteLabelOutput) String() string {
8596	return awsutil.Prettify(s)
8597}
8598
8599// GoString returns the string representation
8600func (s DeleteLabelOutput) GoString() string {
8601	return s.String()
8602}
8603
8604type DeleteModelInput struct {
8605	_ struct{} `type:"structure"`
8606
8607	// The model ID of the model to delete.
8608	//
8609	// ModelId is a required field
8610	ModelId *string `locationName:"modelId" min:"1" type:"string" required:"true"`
8611
8612	// The model type of the model to delete.
8613	//
8614	// ModelType is a required field
8615	ModelType *string `locationName:"modelType" type:"string" required:"true" enum:"ModelTypeEnum"`
8616}
8617
8618// String returns the string representation
8619func (s DeleteModelInput) String() string {
8620	return awsutil.Prettify(s)
8621}
8622
8623// GoString returns the string representation
8624func (s DeleteModelInput) GoString() string {
8625	return s.String()
8626}
8627
8628// Validate inspects the fields of the type to determine if they are valid.
8629func (s *DeleteModelInput) Validate() error {
8630	invalidParams := request.ErrInvalidParams{Context: "DeleteModelInput"}
8631	if s.ModelId == nil {
8632		invalidParams.Add(request.NewErrParamRequired("ModelId"))
8633	}
8634	if s.ModelId != nil && len(*s.ModelId) < 1 {
8635		invalidParams.Add(request.NewErrParamMinLen("ModelId", 1))
8636	}
8637	if s.ModelType == nil {
8638		invalidParams.Add(request.NewErrParamRequired("ModelType"))
8639	}
8640
8641	if invalidParams.Len() > 0 {
8642		return invalidParams
8643	}
8644	return nil
8645}
8646
8647// SetModelId sets the ModelId field's value.
8648func (s *DeleteModelInput) SetModelId(v string) *DeleteModelInput {
8649	s.ModelId = &v
8650	return s
8651}
8652
8653// SetModelType sets the ModelType field's value.
8654func (s *DeleteModelInput) SetModelType(v string) *DeleteModelInput {
8655	s.ModelType = &v
8656	return s
8657}
8658
8659type DeleteModelOutput struct {
8660	_ struct{} `type:"structure"`
8661}
8662
8663// String returns the string representation
8664func (s DeleteModelOutput) String() string {
8665	return awsutil.Prettify(s)
8666}
8667
8668// GoString returns the string representation
8669func (s DeleteModelOutput) GoString() string {
8670	return s.String()
8671}
8672
8673type DeleteModelVersionInput struct {
8674	_ struct{} `type:"structure"`
8675
8676	// The model ID of the model version to delete.
8677	//
8678	// ModelId is a required field
8679	ModelId *string `locationName:"modelId" min:"1" type:"string" required:"true"`
8680
8681	// The model type of the model version to delete.
8682	//
8683	// ModelType is a required field
8684	ModelType *string `locationName:"modelType" type:"string" required:"true" enum:"ModelTypeEnum"`
8685
8686	// The model version number of the model version to delete.
8687	//
8688	// ModelVersionNumber is a required field
8689	ModelVersionNumber *string `locationName:"modelVersionNumber" min:"3" type:"string" required:"true"`
8690}
8691
8692// String returns the string representation
8693func (s DeleteModelVersionInput) String() string {
8694	return awsutil.Prettify(s)
8695}
8696
8697// GoString returns the string representation
8698func (s DeleteModelVersionInput) GoString() string {
8699	return s.String()
8700}
8701
8702// Validate inspects the fields of the type to determine if they are valid.
8703func (s *DeleteModelVersionInput) Validate() error {
8704	invalidParams := request.ErrInvalidParams{Context: "DeleteModelVersionInput"}
8705	if s.ModelId == nil {
8706		invalidParams.Add(request.NewErrParamRequired("ModelId"))
8707	}
8708	if s.ModelId != nil && len(*s.ModelId) < 1 {
8709		invalidParams.Add(request.NewErrParamMinLen("ModelId", 1))
8710	}
8711	if s.ModelType == nil {
8712		invalidParams.Add(request.NewErrParamRequired("ModelType"))
8713	}
8714	if s.ModelVersionNumber == nil {
8715		invalidParams.Add(request.NewErrParamRequired("ModelVersionNumber"))
8716	}
8717	if s.ModelVersionNumber != nil && len(*s.ModelVersionNumber) < 3 {
8718		invalidParams.Add(request.NewErrParamMinLen("ModelVersionNumber", 3))
8719	}
8720
8721	if invalidParams.Len() > 0 {
8722		return invalidParams
8723	}
8724	return nil
8725}
8726
8727// SetModelId sets the ModelId field's value.
8728func (s *DeleteModelVersionInput) SetModelId(v string) *DeleteModelVersionInput {
8729	s.ModelId = &v
8730	return s
8731}
8732
8733// SetModelType sets the ModelType field's value.
8734func (s *DeleteModelVersionInput) SetModelType(v string) *DeleteModelVersionInput {
8735	s.ModelType = &v
8736	return s
8737}
8738
8739// SetModelVersionNumber sets the ModelVersionNumber field's value.
8740func (s *DeleteModelVersionInput) SetModelVersionNumber(v string) *DeleteModelVersionInput {
8741	s.ModelVersionNumber = &v
8742	return s
8743}
8744
8745type DeleteModelVersionOutput struct {
8746	_ struct{} `type:"structure"`
8747}
8748
8749// String returns the string representation
8750func (s DeleteModelVersionOutput) String() string {
8751	return awsutil.Prettify(s)
8752}
8753
8754// GoString returns the string representation
8755func (s DeleteModelVersionOutput) GoString() string {
8756	return s.String()
8757}
8758
8759type DeleteOutcomeInput struct {
8760	_ struct{} `type:"structure"`
8761
8762	// The name of the outcome to delete.
8763	//
8764	// Name is a required field
8765	Name *string `locationName:"name" min:"1" type:"string" required:"true"`
8766}
8767
8768// String returns the string representation
8769func (s DeleteOutcomeInput) String() string {
8770	return awsutil.Prettify(s)
8771}
8772
8773// GoString returns the string representation
8774func (s DeleteOutcomeInput) GoString() string {
8775	return s.String()
8776}
8777
8778// Validate inspects the fields of the type to determine if they are valid.
8779func (s *DeleteOutcomeInput) Validate() error {
8780	invalidParams := request.ErrInvalidParams{Context: "DeleteOutcomeInput"}
8781	if s.Name == nil {
8782		invalidParams.Add(request.NewErrParamRequired("Name"))
8783	}
8784	if s.Name != nil && len(*s.Name) < 1 {
8785		invalidParams.Add(request.NewErrParamMinLen("Name", 1))
8786	}
8787
8788	if invalidParams.Len() > 0 {
8789		return invalidParams
8790	}
8791	return nil
8792}
8793
8794// SetName sets the Name field's value.
8795func (s *DeleteOutcomeInput) SetName(v string) *DeleteOutcomeInput {
8796	s.Name = &v
8797	return s
8798}
8799
8800type DeleteOutcomeOutput struct {
8801	_ struct{} `type:"structure"`
8802}
8803
8804// String returns the string representation
8805func (s DeleteOutcomeOutput) String() string {
8806	return awsutil.Prettify(s)
8807}
8808
8809// GoString returns the string representation
8810func (s DeleteOutcomeOutput) GoString() string {
8811	return s.String()
8812}
8813
8814type DeleteRuleInput struct {
8815	_ struct{} `type:"structure"`
8816
8817	// A rule.
8818	//
8819	// Rule is a required field
8820	Rule *Rule `locationName:"rule" type:"structure" required:"true"`
8821}
8822
8823// String returns the string representation
8824func (s DeleteRuleInput) String() string {
8825	return awsutil.Prettify(s)
8826}
8827
8828// GoString returns the string representation
8829func (s DeleteRuleInput) GoString() string {
8830	return s.String()
8831}
8832
8833// Validate inspects the fields of the type to determine if they are valid.
8834func (s *DeleteRuleInput) Validate() error {
8835	invalidParams := request.ErrInvalidParams{Context: "DeleteRuleInput"}
8836	if s.Rule == nil {
8837		invalidParams.Add(request.NewErrParamRequired("Rule"))
8838	}
8839	if s.Rule != nil {
8840		if err := s.Rule.Validate(); err != nil {
8841			invalidParams.AddNested("Rule", err.(request.ErrInvalidParams))
8842		}
8843	}
8844
8845	if invalidParams.Len() > 0 {
8846		return invalidParams
8847	}
8848	return nil
8849}
8850
8851// SetRule sets the Rule field's value.
8852func (s *DeleteRuleInput) SetRule(v *Rule) *DeleteRuleInput {
8853	s.Rule = v
8854	return s
8855}
8856
8857type DeleteRuleOutput struct {
8858	_ struct{} `type:"structure"`
8859}
8860
8861// String returns the string representation
8862func (s DeleteRuleOutput) String() string {
8863	return awsutil.Prettify(s)
8864}
8865
8866// GoString returns the string representation
8867func (s DeleteRuleOutput) GoString() string {
8868	return s.String()
8869}
8870
8871type DeleteVariableInput struct {
8872	_ struct{} `type:"structure"`
8873
8874	// The name of the variable to delete.
8875	//
8876	// Name is a required field
8877	Name *string `locationName:"name" type:"string" required:"true"`
8878}
8879
8880// String returns the string representation
8881func (s DeleteVariableInput) String() string {
8882	return awsutil.Prettify(s)
8883}
8884
8885// GoString returns the string representation
8886func (s DeleteVariableInput) GoString() string {
8887	return s.String()
8888}
8889
8890// Validate inspects the fields of the type to determine if they are valid.
8891func (s *DeleteVariableInput) Validate() error {
8892	invalidParams := request.ErrInvalidParams{Context: "DeleteVariableInput"}
8893	if s.Name == nil {
8894		invalidParams.Add(request.NewErrParamRequired("Name"))
8895	}
8896
8897	if invalidParams.Len() > 0 {
8898		return invalidParams
8899	}
8900	return nil
8901}
8902
8903// SetName sets the Name field's value.
8904func (s *DeleteVariableInput) SetName(v string) *DeleteVariableInput {
8905	s.Name = &v
8906	return s
8907}
8908
8909type DeleteVariableOutput struct {
8910	_ struct{} `type:"structure"`
8911}
8912
8913// String returns the string representation
8914func (s DeleteVariableOutput) String() string {
8915	return awsutil.Prettify(s)
8916}
8917
8918// GoString returns the string representation
8919func (s DeleteVariableOutput) GoString() string {
8920	return s.String()
8921}
8922
8923type DescribeDetectorInput struct {
8924	_ struct{} `type:"structure"`
8925
8926	// The detector ID.
8927	//
8928	// DetectorId is a required field
8929	DetectorId *string `locationName:"detectorId" min:"1" type:"string" required:"true"`
8930
8931	// The maximum number of results to return for the request.
8932	MaxResults *int64 `locationName:"maxResults" min:"1000" type:"integer"`
8933
8934	// The next token from the previous response.
8935	NextToken *string `locationName:"nextToken" type:"string"`
8936}
8937
8938// String returns the string representation
8939func (s DescribeDetectorInput) String() string {
8940	return awsutil.Prettify(s)
8941}
8942
8943// GoString returns the string representation
8944func (s DescribeDetectorInput) GoString() string {
8945	return s.String()
8946}
8947
8948// Validate inspects the fields of the type to determine if they are valid.
8949func (s *DescribeDetectorInput) Validate() error {
8950	invalidParams := request.ErrInvalidParams{Context: "DescribeDetectorInput"}
8951	if s.DetectorId == nil {
8952		invalidParams.Add(request.NewErrParamRequired("DetectorId"))
8953	}
8954	if s.DetectorId != nil && len(*s.DetectorId) < 1 {
8955		invalidParams.Add(request.NewErrParamMinLen("DetectorId", 1))
8956	}
8957	if s.MaxResults != nil && *s.MaxResults < 1000 {
8958		invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1000))
8959	}
8960
8961	if invalidParams.Len() > 0 {
8962		return invalidParams
8963	}
8964	return nil
8965}
8966
8967// SetDetectorId sets the DetectorId field's value.
8968func (s *DescribeDetectorInput) SetDetectorId(v string) *DescribeDetectorInput {
8969	s.DetectorId = &v
8970	return s
8971}
8972
8973// SetMaxResults sets the MaxResults field's value.
8974func (s *DescribeDetectorInput) SetMaxResults(v int64) *DescribeDetectorInput {
8975	s.MaxResults = &v
8976	return s
8977}
8978
8979// SetNextToken sets the NextToken field's value.
8980func (s *DescribeDetectorInput) SetNextToken(v string) *DescribeDetectorInput {
8981	s.NextToken = &v
8982	return s
8983}
8984
8985type DescribeDetectorOutput struct {
8986	_ struct{} `type:"structure"`
8987
8988	// The detector ARN.
8989	Arn *string `locationName:"arn" min:"1" type:"string"`
8990
8991	// The detector ID.
8992	DetectorId *string `locationName:"detectorId" min:"1" type:"string"`
8993
8994	// The status and description for each detector version.
8995	DetectorVersionSummaries []*DetectorVersionSummary `locationName:"detectorVersionSummaries" type:"list"`
8996
8997	// The next token to be used for subsequent requests.
8998	NextToken *string `locationName:"nextToken" type:"string"`
8999}
9000
9001// String returns the string representation
9002func (s DescribeDetectorOutput) String() string {
9003	return awsutil.Prettify(s)
9004}
9005
9006// GoString returns the string representation
9007func (s DescribeDetectorOutput) GoString() string {
9008	return s.String()
9009}
9010
9011// SetArn sets the Arn field's value.
9012func (s *DescribeDetectorOutput) SetArn(v string) *DescribeDetectorOutput {
9013	s.Arn = &v
9014	return s
9015}
9016
9017// SetDetectorId sets the DetectorId field's value.
9018func (s *DescribeDetectorOutput) SetDetectorId(v string) *DescribeDetectorOutput {
9019	s.DetectorId = &v
9020	return s
9021}
9022
9023// SetDetectorVersionSummaries sets the DetectorVersionSummaries field's value.
9024func (s *DescribeDetectorOutput) SetDetectorVersionSummaries(v []*DetectorVersionSummary) *DescribeDetectorOutput {
9025	s.DetectorVersionSummaries = v
9026	return s
9027}
9028
9029// SetNextToken sets the NextToken field's value.
9030func (s *DescribeDetectorOutput) SetNextToken(v string) *DescribeDetectorOutput {
9031	s.NextToken = &v
9032	return s
9033}
9034
9035type DescribeModelVersionsInput struct {
9036	_ struct{} `type:"structure"`
9037
9038	// The maximum number of results to return.
9039	MaxResults *int64 `locationName:"maxResults" min:"1" type:"integer"`
9040
9041	// The model ID.
9042	ModelId *string `locationName:"modelId" min:"1" type:"string"`
9043
9044	// The model type.
9045	ModelType *string `locationName:"modelType" type:"string" enum:"ModelTypeEnum"`
9046
9047	// The model version number.
9048	ModelVersionNumber *string `locationName:"modelVersionNumber" min:"3" type:"string"`
9049
9050	// The next token from the previous results.
9051	NextToken *string `locationName:"nextToken" type:"string"`
9052}
9053
9054// String returns the string representation
9055func (s DescribeModelVersionsInput) String() string {
9056	return awsutil.Prettify(s)
9057}
9058
9059// GoString returns the string representation
9060func (s DescribeModelVersionsInput) GoString() string {
9061	return s.String()
9062}
9063
9064// Validate inspects the fields of the type to determine if they are valid.
9065func (s *DescribeModelVersionsInput) Validate() error {
9066	invalidParams := request.ErrInvalidParams{Context: "DescribeModelVersionsInput"}
9067	if s.MaxResults != nil && *s.MaxResults < 1 {
9068		invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1))
9069	}
9070	if s.ModelId != nil && len(*s.ModelId) < 1 {
9071		invalidParams.Add(request.NewErrParamMinLen("ModelId", 1))
9072	}
9073	if s.ModelVersionNumber != nil && len(*s.ModelVersionNumber) < 3 {
9074		invalidParams.Add(request.NewErrParamMinLen("ModelVersionNumber", 3))
9075	}
9076
9077	if invalidParams.Len() > 0 {
9078		return invalidParams
9079	}
9080	return nil
9081}
9082
9083// SetMaxResults sets the MaxResults field's value.
9084func (s *DescribeModelVersionsInput) SetMaxResults(v int64) *DescribeModelVersionsInput {
9085	s.MaxResults = &v
9086	return s
9087}
9088
9089// SetModelId sets the ModelId field's value.
9090func (s *DescribeModelVersionsInput) SetModelId(v string) *DescribeModelVersionsInput {
9091	s.ModelId = &v
9092	return s
9093}
9094
9095// SetModelType sets the ModelType field's value.
9096func (s *DescribeModelVersionsInput) SetModelType(v string) *DescribeModelVersionsInput {
9097	s.ModelType = &v
9098	return s
9099}
9100
9101// SetModelVersionNumber sets the ModelVersionNumber field's value.
9102func (s *DescribeModelVersionsInput) SetModelVersionNumber(v string) *DescribeModelVersionsInput {
9103	s.ModelVersionNumber = &v
9104	return s
9105}
9106
9107// SetNextToken sets the NextToken field's value.
9108func (s *DescribeModelVersionsInput) SetNextToken(v string) *DescribeModelVersionsInput {
9109	s.NextToken = &v
9110	return s
9111}
9112
9113type DescribeModelVersionsOutput struct {
9114	_ struct{} `type:"structure"`
9115
9116	// The model version details.
9117	ModelVersionDetails []*ModelVersionDetail `locationName:"modelVersionDetails" type:"list"`
9118
9119	// The next token.
9120	NextToken *string `locationName:"nextToken" type:"string"`
9121}
9122
9123// String returns the string representation
9124func (s DescribeModelVersionsOutput) String() string {
9125	return awsutil.Prettify(s)
9126}
9127
9128// GoString returns the string representation
9129func (s DescribeModelVersionsOutput) GoString() string {
9130	return s.String()
9131}
9132
9133// SetModelVersionDetails sets the ModelVersionDetails field's value.
9134func (s *DescribeModelVersionsOutput) SetModelVersionDetails(v []*ModelVersionDetail) *DescribeModelVersionsOutput {
9135	s.ModelVersionDetails = v
9136	return s
9137}
9138
9139// SetNextToken sets the NextToken field's value.
9140func (s *DescribeModelVersionsOutput) SetNextToken(v string) *DescribeModelVersionsOutput {
9141	s.NextToken = &v
9142	return s
9143}
9144
9145// The detector.
9146type Detector struct {
9147	_ struct{} `type:"structure"`
9148
9149	// The detector ARN.
9150	Arn *string `locationName:"arn" min:"1" type:"string"`
9151
9152	// Timestamp of when the detector was created.
9153	CreatedTime *string `locationName:"createdTime" min:"11" type:"string"`
9154
9155	// The detector description.
9156	Description *string `locationName:"description" min:"1" type:"string"`
9157
9158	// The detector ID.
9159	DetectorId *string `locationName:"detectorId" min:"1" type:"string"`
9160
9161	// The name of the event type.
9162	EventTypeName *string `locationName:"eventTypeName" min:"1" type:"string"`
9163
9164	// Timestamp of when the detector was last updated.
9165	LastUpdatedTime *string `locationName:"lastUpdatedTime" min:"11" type:"string"`
9166}
9167
9168// String returns the string representation
9169func (s Detector) String() string {
9170	return awsutil.Prettify(s)
9171}
9172
9173// GoString returns the string representation
9174func (s Detector) GoString() string {
9175	return s.String()
9176}
9177
9178// SetArn sets the Arn field's value.
9179func (s *Detector) SetArn(v string) *Detector {
9180	s.Arn = &v
9181	return s
9182}
9183
9184// SetCreatedTime sets the CreatedTime field's value.
9185func (s *Detector) SetCreatedTime(v string) *Detector {
9186	s.CreatedTime = &v
9187	return s
9188}
9189
9190// SetDescription sets the Description field's value.
9191func (s *Detector) SetDescription(v string) *Detector {
9192	s.Description = &v
9193	return s
9194}
9195
9196// SetDetectorId sets the DetectorId field's value.
9197func (s *Detector) SetDetectorId(v string) *Detector {
9198	s.DetectorId = &v
9199	return s
9200}
9201
9202// SetEventTypeName sets the EventTypeName field's value.
9203func (s *Detector) SetEventTypeName(v string) *Detector {
9204	s.EventTypeName = &v
9205	return s
9206}
9207
9208// SetLastUpdatedTime sets the LastUpdatedTime field's value.
9209func (s *Detector) SetLastUpdatedTime(v string) *Detector {
9210	s.LastUpdatedTime = &v
9211	return s
9212}
9213
9214// The summary of the detector version.
9215type DetectorVersionSummary struct {
9216	_ struct{} `type:"structure"`
9217
9218	// The detector version description.
9219	Description *string `locationName:"description" min:"1" type:"string"`
9220
9221	// The detector version ID.
9222	DetectorVersionId *string `locationName:"detectorVersionId" min:"1" type:"string"`
9223
9224	// Timestamp of when the detector version was last updated.
9225	LastUpdatedTime *string `locationName:"lastUpdatedTime" min:"11" type:"string"`
9226
9227	// The detector version status.
9228	Status *string `locationName:"status" type:"string" enum:"DetectorVersionStatus"`
9229}
9230
9231// String returns the string representation
9232func (s DetectorVersionSummary) String() string {
9233	return awsutil.Prettify(s)
9234}
9235
9236// GoString returns the string representation
9237func (s DetectorVersionSummary) GoString() string {
9238	return s.String()
9239}
9240
9241// SetDescription sets the Description field's value.
9242func (s *DetectorVersionSummary) SetDescription(v string) *DetectorVersionSummary {
9243	s.Description = &v
9244	return s
9245}
9246
9247// SetDetectorVersionId sets the DetectorVersionId field's value.
9248func (s *DetectorVersionSummary) SetDetectorVersionId(v string) *DetectorVersionSummary {
9249	s.DetectorVersionId = &v
9250	return s
9251}
9252
9253// SetLastUpdatedTime sets the LastUpdatedTime field's value.
9254func (s *DetectorVersionSummary) SetLastUpdatedTime(v string) *DetectorVersionSummary {
9255	s.LastUpdatedTime = &v
9256	return s
9257}
9258
9259// SetStatus sets the Status field's value.
9260func (s *DetectorVersionSummary) SetStatus(v string) *DetectorVersionSummary {
9261	s.Status = &v
9262	return s
9263}
9264
9265// The entity details.
9266type Entity struct {
9267	_ struct{} `type:"structure" sensitive:"true"`
9268
9269	// The entity ID. If you do not know the entityId, you can pass unknown, which
9270	// is areserved string literal.
9271	//
9272	// EntityId is a required field
9273	EntityId *string `locationName:"entityId" min:"1" type:"string" required:"true"`
9274
9275	// The entity type.
9276	//
9277	// EntityType is a required field
9278	EntityType *string `locationName:"entityType" type:"string" required:"true"`
9279}
9280
9281// String returns the string representation
9282func (s Entity) String() string {
9283	return awsutil.Prettify(s)
9284}
9285
9286// GoString returns the string representation
9287func (s Entity) GoString() string {
9288	return s.String()
9289}
9290
9291// Validate inspects the fields of the type to determine if they are valid.
9292func (s *Entity) Validate() error {
9293	invalidParams := request.ErrInvalidParams{Context: "Entity"}
9294	if s.EntityId == nil {
9295		invalidParams.Add(request.NewErrParamRequired("EntityId"))
9296	}
9297	if s.EntityId != nil && len(*s.EntityId) < 1 {
9298		invalidParams.Add(request.NewErrParamMinLen("EntityId", 1))
9299	}
9300	if s.EntityType == nil {
9301		invalidParams.Add(request.NewErrParamRequired("EntityType"))
9302	}
9303
9304	if invalidParams.Len() > 0 {
9305		return invalidParams
9306	}
9307	return nil
9308}
9309
9310// SetEntityId sets the EntityId field's value.
9311func (s *Entity) SetEntityId(v string) *Entity {
9312	s.EntityId = &v
9313	return s
9314}
9315
9316// SetEntityType sets the EntityType field's value.
9317func (s *Entity) SetEntityType(v string) *Entity {
9318	s.EntityType = &v
9319	return s
9320}
9321
9322// The entity type details.
9323type EntityType struct {
9324	_ struct{} `type:"structure"`
9325
9326	// The entity type ARN.
9327	Arn *string `locationName:"arn" min:"1" type:"string"`
9328
9329	// Timestamp of when the entity type was created.
9330	CreatedTime *string `locationName:"createdTime" min:"11" type:"string"`
9331
9332	// The entity type description.
9333	Description *string `locationName:"description" min:"1" type:"string"`
9334
9335	// Timestamp of when the entity type was last updated.
9336	LastUpdatedTime *string `locationName:"lastUpdatedTime" min:"11" type:"string"`
9337
9338	// The entity type name.
9339	Name *string `locationName:"name" type:"string"`
9340}
9341
9342// String returns the string representation
9343func (s EntityType) String() string {
9344	return awsutil.Prettify(s)
9345}
9346
9347// GoString returns the string representation
9348func (s EntityType) GoString() string {
9349	return s.String()
9350}
9351
9352// SetArn sets the Arn field's value.
9353func (s *EntityType) SetArn(v string) *EntityType {
9354	s.Arn = &v
9355	return s
9356}
9357
9358// SetCreatedTime sets the CreatedTime field's value.
9359func (s *EntityType) SetCreatedTime(v string) *EntityType {
9360	s.CreatedTime = &v
9361	return s
9362}
9363
9364// SetDescription sets the Description field's value.
9365func (s *EntityType) SetDescription(v string) *EntityType {
9366	s.Description = &v
9367	return s
9368}
9369
9370// SetLastUpdatedTime sets the LastUpdatedTime field's value.
9371func (s *EntityType) SetLastUpdatedTime(v string) *EntityType {
9372	s.LastUpdatedTime = &v
9373	return s
9374}
9375
9376// SetName sets the Name field's value.
9377func (s *EntityType) SetName(v string) *EntityType {
9378	s.Name = &v
9379	return s
9380}
9381
9382// The event type details.
9383type EventType struct {
9384	_ struct{} `type:"structure" sensitive:"true"`
9385
9386	// The entity type ARN.
9387	Arn *string `locationName:"arn" min:"1" type:"string"`
9388
9389	// Timestamp of when the event type was created.
9390	CreatedTime *string `locationName:"createdTime" min:"11" type:"string"`
9391
9392	// The event type description.
9393	Description *string `locationName:"description" min:"1" type:"string"`
9394
9395	// The event type entity types.
9396	EntityTypes []*string `locationName:"entityTypes" min:"1" type:"list"`
9397
9398	// The event type event variables.
9399	EventVariables []*string `locationName:"eventVariables" type:"list"`
9400
9401	// The event type labels.
9402	Labels []*string `locationName:"labels" type:"list"`
9403
9404	// Timestamp of when the event type was last updated.
9405	LastUpdatedTime *string `locationName:"lastUpdatedTime" min:"11" type:"string"`
9406
9407	// The event type name.
9408	Name *string `locationName:"name" type:"string"`
9409}
9410
9411// String returns the string representation
9412func (s EventType) String() string {
9413	return awsutil.Prettify(s)
9414}
9415
9416// GoString returns the string representation
9417func (s EventType) GoString() string {
9418	return s.String()
9419}
9420
9421// SetArn sets the Arn field's value.
9422func (s *EventType) SetArn(v string) *EventType {
9423	s.Arn = &v
9424	return s
9425}
9426
9427// SetCreatedTime sets the CreatedTime field's value.
9428func (s *EventType) SetCreatedTime(v string) *EventType {
9429	s.CreatedTime = &v
9430	return s
9431}
9432
9433// SetDescription sets the Description field's value.
9434func (s *EventType) SetDescription(v string) *EventType {
9435	s.Description = &v
9436	return s
9437}
9438
9439// SetEntityTypes sets the EntityTypes field's value.
9440func (s *EventType) SetEntityTypes(v []*string) *EventType {
9441	s.EntityTypes = v
9442	return s
9443}
9444
9445// SetEventVariables sets the EventVariables field's value.
9446func (s *EventType) SetEventVariables(v []*string) *EventType {
9447	s.EventVariables = v
9448	return s
9449}
9450
9451// SetLabels sets the Labels field's value.
9452func (s *EventType) SetLabels(v []*string) *EventType {
9453	s.Labels = v
9454	return s
9455}
9456
9457// SetLastUpdatedTime sets the LastUpdatedTime field's value.
9458func (s *EventType) SetLastUpdatedTime(v string) *EventType {
9459	s.LastUpdatedTime = &v
9460	return s
9461}
9462
9463// SetName sets the Name field's value.
9464func (s *EventType) SetName(v string) *EventType {
9465	s.Name = &v
9466	return s
9467}
9468
9469// Details for the external events data used for model version training.
9470type ExternalEventsDetail struct {
9471	_ struct{} `type:"structure"`
9472
9473	// The ARN of the role that provides Amazon Fraud Detector access to the data
9474	// location.
9475	//
9476	// DataAccessRoleArn is a required field
9477	DataAccessRoleArn *string `locationName:"dataAccessRoleArn" min:"1" type:"string" required:"true"`
9478
9479	// The Amazon S3 bucket location for the data.
9480	//
9481	// DataLocation is a required field
9482	DataLocation *string `locationName:"dataLocation" min:"1" type:"string" required:"true"`
9483}
9484
9485// String returns the string representation
9486func (s ExternalEventsDetail) String() string {
9487	return awsutil.Prettify(s)
9488}
9489
9490// GoString returns the string representation
9491func (s ExternalEventsDetail) GoString() string {
9492	return s.String()
9493}
9494
9495// Validate inspects the fields of the type to determine if they are valid.
9496func (s *ExternalEventsDetail) Validate() error {
9497	invalidParams := request.ErrInvalidParams{Context: "ExternalEventsDetail"}
9498	if s.DataAccessRoleArn == nil {
9499		invalidParams.Add(request.NewErrParamRequired("DataAccessRoleArn"))
9500	}
9501	if s.DataAccessRoleArn != nil && len(*s.DataAccessRoleArn) < 1 {
9502		invalidParams.Add(request.NewErrParamMinLen("DataAccessRoleArn", 1))
9503	}
9504	if s.DataLocation == nil {
9505		invalidParams.Add(request.NewErrParamRequired("DataLocation"))
9506	}
9507	if s.DataLocation != nil && len(*s.DataLocation) < 1 {
9508		invalidParams.Add(request.NewErrParamMinLen("DataLocation", 1))
9509	}
9510
9511	if invalidParams.Len() > 0 {
9512		return invalidParams
9513	}
9514	return nil
9515}
9516
9517// SetDataAccessRoleArn sets the DataAccessRoleArn field's value.
9518func (s *ExternalEventsDetail) SetDataAccessRoleArn(v string) *ExternalEventsDetail {
9519	s.DataAccessRoleArn = &v
9520	return s
9521}
9522
9523// SetDataLocation sets the DataLocation field's value.
9524func (s *ExternalEventsDetail) SetDataLocation(v string) *ExternalEventsDetail {
9525	s.DataLocation = &v
9526	return s
9527}
9528
9529// The Amazon SageMaker model.
9530type ExternalModel struct {
9531	_ struct{} `type:"structure"`
9532
9533	// The model ARN.
9534	Arn *string `locationName:"arn" min:"1" type:"string"`
9535
9536	// Timestamp of when the model was last created.
9537	CreatedTime *string `locationName:"createdTime" min:"11" type:"string"`
9538
9539	// The input configuration.
9540	InputConfiguration *ModelInputConfiguration `locationName:"inputConfiguration" type:"structure"`
9541
9542	// The role used to invoke the model.
9543	InvokeModelEndpointRoleArn *string `locationName:"invokeModelEndpointRoleArn" type:"string"`
9544
9545	// Timestamp of when the model was last updated.
9546	LastUpdatedTime *string `locationName:"lastUpdatedTime" min:"11" type:"string"`
9547
9548	// The Amazon SageMaker model endpoints.
9549	ModelEndpoint *string `locationName:"modelEndpoint" type:"string"`
9550
9551	// The Amazon Fraud Detector status for the external model endpoint
9552	ModelEndpointStatus *string `locationName:"modelEndpointStatus" type:"string" enum:"ModelEndpointStatus"`
9553
9554	// The source of the model.
9555	ModelSource *string `locationName:"modelSource" type:"string" enum:"ModelSource"`
9556
9557	// The output configuration.
9558	OutputConfiguration *ModelOutputConfiguration `locationName:"outputConfiguration" type:"structure"`
9559}
9560
9561// String returns the string representation
9562func (s ExternalModel) String() string {
9563	return awsutil.Prettify(s)
9564}
9565
9566// GoString returns the string representation
9567func (s ExternalModel) GoString() string {
9568	return s.String()
9569}
9570
9571// SetArn sets the Arn field's value.
9572func (s *ExternalModel) SetArn(v string) *ExternalModel {
9573	s.Arn = &v
9574	return s
9575}
9576
9577// SetCreatedTime sets the CreatedTime field's value.
9578func (s *ExternalModel) SetCreatedTime(v string) *ExternalModel {
9579	s.CreatedTime = &v
9580	return s
9581}
9582
9583// SetInputConfiguration sets the InputConfiguration field's value.
9584func (s *ExternalModel) SetInputConfiguration(v *ModelInputConfiguration) *ExternalModel {
9585	s.InputConfiguration = v
9586	return s
9587}
9588
9589// SetInvokeModelEndpointRoleArn sets the InvokeModelEndpointRoleArn field's value.
9590func (s *ExternalModel) SetInvokeModelEndpointRoleArn(v string) *ExternalModel {
9591	s.InvokeModelEndpointRoleArn = &v
9592	return s
9593}
9594
9595// SetLastUpdatedTime sets the LastUpdatedTime field's value.
9596func (s *ExternalModel) SetLastUpdatedTime(v string) *ExternalModel {
9597	s.LastUpdatedTime = &v
9598	return s
9599}
9600
9601// SetModelEndpoint sets the ModelEndpoint field's value.
9602func (s *ExternalModel) SetModelEndpoint(v string) *ExternalModel {
9603	s.ModelEndpoint = &v
9604	return s
9605}
9606
9607// SetModelEndpointStatus sets the ModelEndpointStatus field's value.
9608func (s *ExternalModel) SetModelEndpointStatus(v string) *ExternalModel {
9609	s.ModelEndpointStatus = &v
9610	return s
9611}
9612
9613// SetModelSource sets the ModelSource field's value.
9614func (s *ExternalModel) SetModelSource(v string) *ExternalModel {
9615	s.ModelSource = &v
9616	return s
9617}
9618
9619// SetOutputConfiguration sets the OutputConfiguration field's value.
9620func (s *ExternalModel) SetOutputConfiguration(v *ModelOutputConfiguration) *ExternalModel {
9621	s.OutputConfiguration = v
9622	return s
9623}
9624
9625// The fraud prediction scores from Amazon SageMaker model.
9626type ExternalModelOutputs struct {
9627	_ struct{} `type:"structure"`
9628
9629	// The Amazon SageMaker model.
9630	ExternalModel *ExternalModelSummary `locationName:"externalModel" type:"structure"`
9631
9632	// The fraud prediction scores from Amazon SageMaker model.
9633	Outputs map[string]*string `locationName:"outputs" type:"map"`
9634}
9635
9636// String returns the string representation
9637func (s ExternalModelOutputs) String() string {
9638	return awsutil.Prettify(s)
9639}
9640
9641// GoString returns the string representation
9642func (s ExternalModelOutputs) GoString() string {
9643	return s.String()
9644}
9645
9646// SetExternalModel sets the ExternalModel field's value.
9647func (s *ExternalModelOutputs) SetExternalModel(v *ExternalModelSummary) *ExternalModelOutputs {
9648	s.ExternalModel = v
9649	return s
9650}
9651
9652// SetOutputs sets the Outputs field's value.
9653func (s *ExternalModelOutputs) SetOutputs(v map[string]*string) *ExternalModelOutputs {
9654	s.Outputs = v
9655	return s
9656}
9657
9658// The Amazon SageMaker model.
9659type ExternalModelSummary struct {
9660	_ struct{} `type:"structure"`
9661
9662	// The endpoint of the Amazon SageMaker model.
9663	ModelEndpoint *string `locationName:"modelEndpoint" type:"string"`
9664
9665	// The source of the model.
9666	ModelSource *string `locationName:"modelSource" type:"string" enum:"ModelSource"`
9667}
9668
9669// String returns the string representation
9670func (s ExternalModelSummary) String() string {
9671	return awsutil.Prettify(s)
9672}
9673
9674// GoString returns the string representation
9675func (s ExternalModelSummary) GoString() string {
9676	return s.String()
9677}
9678
9679// SetModelEndpoint sets the ModelEndpoint field's value.
9680func (s *ExternalModelSummary) SetModelEndpoint(v string) *ExternalModelSummary {
9681	s.ModelEndpoint = &v
9682	return s
9683}
9684
9685// SetModelSource sets the ModelSource field's value.
9686func (s *ExternalModelSummary) SetModelSource(v string) *ExternalModelSummary {
9687	s.ModelSource = &v
9688	return s
9689}
9690
9691// The message details.
9692type FieldValidationMessage struct {
9693	_ struct{} `type:"structure"`
9694
9695	// The message content.
9696	Content *string `locationName:"content" type:"string"`
9697
9698	// The field name.
9699	FieldName *string `locationName:"fieldName" type:"string"`
9700
9701	// The message ID.
9702	Identifier *string `locationName:"identifier" type:"string"`
9703
9704	// The message title.
9705	Title *string `locationName:"title" type:"string"`
9706
9707	// The message type.
9708	Type *string `locationName:"type" type:"string"`
9709}
9710
9711// String returns the string representation
9712func (s FieldValidationMessage) String() string {
9713	return awsutil.Prettify(s)
9714}
9715
9716// GoString returns the string representation
9717func (s FieldValidationMessage) GoString() string {
9718	return s.String()
9719}
9720
9721// SetContent sets the Content field's value.
9722func (s *FieldValidationMessage) SetContent(v string) *FieldValidationMessage {
9723	s.Content = &v
9724	return s
9725}
9726
9727// SetFieldName sets the FieldName field's value.
9728func (s *FieldValidationMessage) SetFieldName(v string) *FieldValidationMessage {
9729	s.FieldName = &v
9730	return s
9731}
9732
9733// SetIdentifier sets the Identifier field's value.
9734func (s *FieldValidationMessage) SetIdentifier(v string) *FieldValidationMessage {
9735	s.Identifier = &v
9736	return s
9737}
9738
9739// SetTitle sets the Title field's value.
9740func (s *FieldValidationMessage) SetTitle(v string) *FieldValidationMessage {
9741	s.Title = &v
9742	return s
9743}
9744
9745// SetType sets the Type field's value.
9746func (s *FieldValidationMessage) SetType(v string) *FieldValidationMessage {
9747	s.Type = &v
9748	return s
9749}
9750
9751// The message details.
9752type FileValidationMessage struct {
9753	_ struct{} `type:"structure"`
9754
9755	// The message content.
9756	Content *string `locationName:"content" type:"string"`
9757
9758	// The message title.
9759	Title *string `locationName:"title" type:"string"`
9760
9761	// The message type.
9762	Type *string `locationName:"type" type:"string"`
9763}
9764
9765// String returns the string representation
9766func (s FileValidationMessage) String() string {
9767	return awsutil.Prettify(s)
9768}
9769
9770// GoString returns the string representation
9771func (s FileValidationMessage) GoString() string {
9772	return s.String()
9773}
9774
9775// SetContent sets the Content field's value.
9776func (s *FileValidationMessage) SetContent(v string) *FileValidationMessage {
9777	s.Content = &v
9778	return s
9779}
9780
9781// SetTitle sets the Title field's value.
9782func (s *FileValidationMessage) SetTitle(v string) *FileValidationMessage {
9783	s.Title = &v
9784	return s
9785}
9786
9787// SetType sets the Type field's value.
9788func (s *FileValidationMessage) SetType(v string) *FileValidationMessage {
9789	s.Type = &v
9790	return s
9791}
9792
9793type GetBatchPredictionJobsInput struct {
9794	_ struct{} `type:"structure"`
9795
9796	// The batch prediction job for which to get the details.
9797	JobId *string `locationName:"jobId" min:"1" type:"string"`
9798
9799	// The maximum number of objects to return for the request.
9800	MaxResults *int64 `locationName:"maxResults" min:"1" type:"integer"`
9801
9802	// The next token from the previous request.
9803	NextToken *string `locationName:"nextToken" type:"string"`
9804}
9805
9806// String returns the string representation
9807func (s GetBatchPredictionJobsInput) String() string {
9808	return awsutil.Prettify(s)
9809}
9810
9811// GoString returns the string representation
9812func (s GetBatchPredictionJobsInput) GoString() string {
9813	return s.String()
9814}
9815
9816// Validate inspects the fields of the type to determine if they are valid.
9817func (s *GetBatchPredictionJobsInput) Validate() error {
9818	invalidParams := request.ErrInvalidParams{Context: "GetBatchPredictionJobsInput"}
9819	if s.JobId != nil && len(*s.JobId) < 1 {
9820		invalidParams.Add(request.NewErrParamMinLen("JobId", 1))
9821	}
9822	if s.MaxResults != nil && *s.MaxResults < 1 {
9823		invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1))
9824	}
9825
9826	if invalidParams.Len() > 0 {
9827		return invalidParams
9828	}
9829	return nil
9830}
9831
9832// SetJobId sets the JobId field's value.
9833func (s *GetBatchPredictionJobsInput) SetJobId(v string) *GetBatchPredictionJobsInput {
9834	s.JobId = &v
9835	return s
9836}
9837
9838// SetMaxResults sets the MaxResults field's value.
9839func (s *GetBatchPredictionJobsInput) SetMaxResults(v int64) *GetBatchPredictionJobsInput {
9840	s.MaxResults = &v
9841	return s
9842}
9843
9844// SetNextToken sets the NextToken field's value.
9845func (s *GetBatchPredictionJobsInput) SetNextToken(v string) *GetBatchPredictionJobsInput {
9846	s.NextToken = &v
9847	return s
9848}
9849
9850type GetBatchPredictionJobsOutput struct {
9851	_ struct{} `type:"structure"`
9852
9853	// An array containing the details of each batch prediction job.
9854	BatchPredictions []*BatchPrediction `locationName:"batchPredictions" type:"list"`
9855
9856	// The next token for the subsequent request.
9857	NextToken *string `locationName:"nextToken" type:"string"`
9858}
9859
9860// String returns the string representation
9861func (s GetBatchPredictionJobsOutput) String() string {
9862	return awsutil.Prettify(s)
9863}
9864
9865// GoString returns the string representation
9866func (s GetBatchPredictionJobsOutput) GoString() string {
9867	return s.String()
9868}
9869
9870// SetBatchPredictions sets the BatchPredictions field's value.
9871func (s *GetBatchPredictionJobsOutput) SetBatchPredictions(v []*BatchPrediction) *GetBatchPredictionJobsOutput {
9872	s.BatchPredictions = v
9873	return s
9874}
9875
9876// SetNextToken sets the NextToken field's value.
9877func (s *GetBatchPredictionJobsOutput) SetNextToken(v string) *GetBatchPredictionJobsOutput {
9878	s.NextToken = &v
9879	return s
9880}
9881
9882type GetDetectorVersionInput struct {
9883	_ struct{} `type:"structure"`
9884
9885	// The detector ID.
9886	//
9887	// DetectorId is a required field
9888	DetectorId *string `locationName:"detectorId" min:"1" type:"string" required:"true"`
9889
9890	// The detector version ID.
9891	//
9892	// DetectorVersionId is a required field
9893	DetectorVersionId *string `locationName:"detectorVersionId" min:"1" type:"string" required:"true"`
9894}
9895
9896// String returns the string representation
9897func (s GetDetectorVersionInput) String() string {
9898	return awsutil.Prettify(s)
9899}
9900
9901// GoString returns the string representation
9902func (s GetDetectorVersionInput) GoString() string {
9903	return s.String()
9904}
9905
9906// Validate inspects the fields of the type to determine if they are valid.
9907func (s *GetDetectorVersionInput) Validate() error {
9908	invalidParams := request.ErrInvalidParams{Context: "GetDetectorVersionInput"}
9909	if s.DetectorId == nil {
9910		invalidParams.Add(request.NewErrParamRequired("DetectorId"))
9911	}
9912	if s.DetectorId != nil && len(*s.DetectorId) < 1 {
9913		invalidParams.Add(request.NewErrParamMinLen("DetectorId", 1))
9914	}
9915	if s.DetectorVersionId == nil {
9916		invalidParams.Add(request.NewErrParamRequired("DetectorVersionId"))
9917	}
9918	if s.DetectorVersionId != nil && len(*s.DetectorVersionId) < 1 {
9919		invalidParams.Add(request.NewErrParamMinLen("DetectorVersionId", 1))
9920	}
9921
9922	if invalidParams.Len() > 0 {
9923		return invalidParams
9924	}
9925	return nil
9926}
9927
9928// SetDetectorId sets the DetectorId field's value.
9929func (s *GetDetectorVersionInput) SetDetectorId(v string) *GetDetectorVersionInput {
9930	s.DetectorId = &v
9931	return s
9932}
9933
9934// SetDetectorVersionId sets the DetectorVersionId field's value.
9935func (s *GetDetectorVersionInput) SetDetectorVersionId(v string) *GetDetectorVersionInput {
9936	s.DetectorVersionId = &v
9937	return s
9938}
9939
9940type GetDetectorVersionOutput struct {
9941	_ struct{} `type:"structure"`
9942
9943	// The detector version ARN.
9944	Arn *string `locationName:"arn" min:"1" type:"string"`
9945
9946	// The timestamp when the detector version was created.
9947	CreatedTime *string `locationName:"createdTime" min:"11" type:"string"`
9948
9949	// The detector version description.
9950	Description *string `locationName:"description" min:"1" type:"string"`
9951
9952	// The detector ID.
9953	DetectorId *string `locationName:"detectorId" min:"1" type:"string"`
9954
9955	// The detector version ID.
9956	DetectorVersionId *string `locationName:"detectorVersionId" min:"1" type:"string"`
9957
9958	// The Amazon SageMaker model endpoints included in the detector version.
9959	ExternalModelEndpoints []*string `locationName:"externalModelEndpoints" type:"list"`
9960
9961	// The timestamp when the detector version was last updated.
9962	LastUpdatedTime *string `locationName:"lastUpdatedTime" min:"11" type:"string"`
9963
9964	// The model versions included in the detector version.
9965	ModelVersions []*ModelVersion `locationName:"modelVersions" type:"list"`
9966
9967	// The execution mode of the rule in the dectector
9968	//
9969	// FIRST_MATCHED indicates that Amazon Fraud Detector evaluates rules sequentially,
9970	// first to last, stopping at the first matched rule. Amazon Fraud dectector
9971	// then provides the outcomes for that single rule.
9972	//
9973	// ALL_MATCHED indicates that Amazon Fraud Detector evaluates all rules and
9974	// returns the outcomes for all matched rules. You can define and edit the rule
9975	// mode at the detector version level, when it is in draft status.
9976	RuleExecutionMode *string `locationName:"ruleExecutionMode" type:"string" enum:"RuleExecutionMode"`
9977
9978	// The rules included in the detector version.
9979	Rules []*Rule `locationName:"rules" type:"list"`
9980
9981	// The status of the detector version.
9982	Status *string `locationName:"status" type:"string" enum:"DetectorVersionStatus"`
9983}
9984
9985// String returns the string representation
9986func (s GetDetectorVersionOutput) String() string {
9987	return awsutil.Prettify(s)
9988}
9989
9990// GoString returns the string representation
9991func (s GetDetectorVersionOutput) GoString() string {
9992	return s.String()
9993}
9994
9995// SetArn sets the Arn field's value.
9996func (s *GetDetectorVersionOutput) SetArn(v string) *GetDetectorVersionOutput {
9997	s.Arn = &v
9998	return s
9999}
10000
10001// SetCreatedTime sets the CreatedTime field's value.
10002func (s *GetDetectorVersionOutput) SetCreatedTime(v string) *GetDetectorVersionOutput {
10003	s.CreatedTime = &v
10004	return s
10005}
10006
10007// SetDescription sets the Description field's value.
10008func (s *GetDetectorVersionOutput) SetDescription(v string) *GetDetectorVersionOutput {
10009	s.Description = &v
10010	return s
10011}
10012
10013// SetDetectorId sets the DetectorId field's value.
10014func (s *GetDetectorVersionOutput) SetDetectorId(v string) *GetDetectorVersionOutput {
10015	s.DetectorId = &v
10016	return s
10017}
10018
10019// SetDetectorVersionId sets the DetectorVersionId field's value.
10020func (s *GetDetectorVersionOutput) SetDetectorVersionId(v string) *GetDetectorVersionOutput {
10021	s.DetectorVersionId = &v
10022	return s
10023}
10024
10025// SetExternalModelEndpoints sets the ExternalModelEndpoints field's value.
10026func (s *GetDetectorVersionOutput) SetExternalModelEndpoints(v []*string) *GetDetectorVersionOutput {
10027	s.ExternalModelEndpoints = v
10028	return s
10029}
10030
10031// SetLastUpdatedTime sets the LastUpdatedTime field's value.
10032func (s *GetDetectorVersionOutput) SetLastUpdatedTime(v string) *GetDetectorVersionOutput {
10033	s.LastUpdatedTime = &v
10034	return s
10035}
10036
10037// SetModelVersions sets the ModelVersions field's value.
10038func (s *GetDetectorVersionOutput) SetModelVersions(v []*ModelVersion) *GetDetectorVersionOutput {
10039	s.ModelVersions = v
10040	return s
10041}
10042
10043// SetRuleExecutionMode sets the RuleExecutionMode field's value.
10044func (s *GetDetectorVersionOutput) SetRuleExecutionMode(v string) *GetDetectorVersionOutput {
10045	s.RuleExecutionMode = &v
10046	return s
10047}
10048
10049// SetRules sets the Rules field's value.
10050func (s *GetDetectorVersionOutput) SetRules(v []*Rule) *GetDetectorVersionOutput {
10051	s.Rules = v
10052	return s
10053}
10054
10055// SetStatus sets the Status field's value.
10056func (s *GetDetectorVersionOutput) SetStatus(v string) *GetDetectorVersionOutput {
10057	s.Status = &v
10058	return s
10059}
10060
10061type GetDetectorsInput struct {
10062	_ struct{} `type:"structure"`
10063
10064	// The detector ID.
10065	DetectorId *string `locationName:"detectorId" min:"1" type:"string"`
10066
10067	// The maximum number of objects to return for the request.
10068	MaxResults *int64 `locationName:"maxResults" min:"5" type:"integer"`
10069
10070	// The next token for the subsequent request.
10071	NextToken *string `locationName:"nextToken" type:"string"`
10072}
10073
10074// String returns the string representation
10075func (s GetDetectorsInput) String() string {
10076	return awsutil.Prettify(s)
10077}
10078
10079// GoString returns the string representation
10080func (s GetDetectorsInput) GoString() string {
10081	return s.String()
10082}
10083
10084// Validate inspects the fields of the type to determine if they are valid.
10085func (s *GetDetectorsInput) Validate() error {
10086	invalidParams := request.ErrInvalidParams{Context: "GetDetectorsInput"}
10087	if s.DetectorId != nil && len(*s.DetectorId) < 1 {
10088		invalidParams.Add(request.NewErrParamMinLen("DetectorId", 1))
10089	}
10090	if s.MaxResults != nil && *s.MaxResults < 5 {
10091		invalidParams.Add(request.NewErrParamMinValue("MaxResults", 5))
10092	}
10093
10094	if invalidParams.Len() > 0 {
10095		return invalidParams
10096	}
10097	return nil
10098}
10099
10100// SetDetectorId sets the DetectorId field's value.
10101func (s *GetDetectorsInput) SetDetectorId(v string) *GetDetectorsInput {
10102	s.DetectorId = &v
10103	return s
10104}
10105
10106// SetMaxResults sets the MaxResults field's value.
10107func (s *GetDetectorsInput) SetMaxResults(v int64) *GetDetectorsInput {
10108	s.MaxResults = &v
10109	return s
10110}
10111
10112// SetNextToken sets the NextToken field's value.
10113func (s *GetDetectorsInput) SetNextToken(v string) *GetDetectorsInput {
10114	s.NextToken = &v
10115	return s
10116}
10117
10118type GetDetectorsOutput struct {
10119	_ struct{} `type:"structure"`
10120
10121	// The detectors.
10122	Detectors []*Detector `locationName:"detectors" type:"list"`
10123
10124	// The next page token.
10125	NextToken *string `locationName:"nextToken" type:"string"`
10126}
10127
10128// String returns the string representation
10129func (s GetDetectorsOutput) String() string {
10130	return awsutil.Prettify(s)
10131}
10132
10133// GoString returns the string representation
10134func (s GetDetectorsOutput) GoString() string {
10135	return s.String()
10136}
10137
10138// SetDetectors sets the Detectors field's value.
10139func (s *GetDetectorsOutput) SetDetectors(v []*Detector) *GetDetectorsOutput {
10140	s.Detectors = v
10141	return s
10142}
10143
10144// SetNextToken sets the NextToken field's value.
10145func (s *GetDetectorsOutput) SetNextToken(v string) *GetDetectorsOutput {
10146	s.NextToken = &v
10147	return s
10148}
10149
10150type GetEntityTypesInput struct {
10151	_ struct{} `type:"structure"`
10152
10153	// The maximum number of objects to return for the request.
10154	MaxResults *int64 `locationName:"maxResults" min:"5" type:"integer"`
10155
10156	// The name.
10157	Name *string `locationName:"name" min:"1" type:"string"`
10158
10159	// The next token for the subsequent request.
10160	NextToken *string `locationName:"nextToken" type:"string"`
10161}
10162
10163// String returns the string representation
10164func (s GetEntityTypesInput) String() string {
10165	return awsutil.Prettify(s)
10166}
10167
10168// GoString returns the string representation
10169func (s GetEntityTypesInput) GoString() string {
10170	return s.String()
10171}
10172
10173// Validate inspects the fields of the type to determine if they are valid.
10174func (s *GetEntityTypesInput) Validate() error {
10175	invalidParams := request.ErrInvalidParams{Context: "GetEntityTypesInput"}
10176	if s.MaxResults != nil && *s.MaxResults < 5 {
10177		invalidParams.Add(request.NewErrParamMinValue("MaxResults", 5))
10178	}
10179	if s.Name != nil && len(*s.Name) < 1 {
10180		invalidParams.Add(request.NewErrParamMinLen("Name", 1))
10181	}
10182
10183	if invalidParams.Len() > 0 {
10184		return invalidParams
10185	}
10186	return nil
10187}
10188
10189// SetMaxResults sets the MaxResults field's value.
10190func (s *GetEntityTypesInput) SetMaxResults(v int64) *GetEntityTypesInput {
10191	s.MaxResults = &v
10192	return s
10193}
10194
10195// SetName sets the Name field's value.
10196func (s *GetEntityTypesInput) SetName(v string) *GetEntityTypesInput {
10197	s.Name = &v
10198	return s
10199}
10200
10201// SetNextToken sets the NextToken field's value.
10202func (s *GetEntityTypesInput) SetNextToken(v string) *GetEntityTypesInput {
10203	s.NextToken = &v
10204	return s
10205}
10206
10207type GetEntityTypesOutput struct {
10208	_ struct{} `type:"structure"`
10209
10210	// An array of entity types.
10211	EntityTypes []*EntityType `locationName:"entityTypes" type:"list"`
10212
10213	// The next page token.
10214	NextToken *string `locationName:"nextToken" type:"string"`
10215}
10216
10217// String returns the string representation
10218func (s GetEntityTypesOutput) String() string {
10219	return awsutil.Prettify(s)
10220}
10221
10222// GoString returns the string representation
10223func (s GetEntityTypesOutput) GoString() string {
10224	return s.String()
10225}
10226
10227// SetEntityTypes sets the EntityTypes field's value.
10228func (s *GetEntityTypesOutput) SetEntityTypes(v []*EntityType) *GetEntityTypesOutput {
10229	s.EntityTypes = v
10230	return s
10231}
10232
10233// SetNextToken sets the NextToken field's value.
10234func (s *GetEntityTypesOutput) SetNextToken(v string) *GetEntityTypesOutput {
10235	s.NextToken = &v
10236	return s
10237}
10238
10239type GetEventPredictionInput struct {
10240	_ struct{} `type:"structure"`
10241
10242	// The detector ID.
10243	//
10244	// DetectorId is a required field
10245	DetectorId *string `locationName:"detectorId" type:"string" required:"true"`
10246
10247	// The detector version ID.
10248	DetectorVersionId *string `locationName:"detectorVersionId" min:"1" type:"string"`
10249
10250	// The entity type (associated with the detector's event type) and specific
10251	// entity ID representing who performed the event. If an entity id is not available,
10252	// use "UNKNOWN."
10253	//
10254	// Entities is a required field
10255	Entities []*Entity `locationName:"entities" type:"list" required:"true"`
10256
10257	// The unique ID used to identify the event.
10258	//
10259	// EventId is a required field
10260	EventId *string `locationName:"eventId" type:"string" required:"true"`
10261
10262	// Timestamp that defines when the event under evaluation occurred.
10263	//
10264	// EventTimestamp is a required field
10265	EventTimestamp *string `locationName:"eventTimestamp" min:"10" type:"string" required:"true"`
10266
10267	// The event type associated with the detector specified for the prediction.
10268	//
10269	// EventTypeName is a required field
10270	EventTypeName *string `locationName:"eventTypeName" type:"string" required:"true"`
10271
10272	// Names of the event type's variables you defined in Amazon Fraud Detector
10273	// to represent data elements and their corresponding values for the event you
10274	// are sending for evaluation.
10275	//
10276	//    * You must provide at least one eventVariable
10277	//
10278	//    * If detectorVersion is associated with a modelVersion, you must provide
10279	//    at least one associated eventVariable
10280	//
10281	// To ensure highest possible fraud prediction and to simplify your data preparation,
10282	// Amazon Fraud Detector will replace all missing variables or values as follows:
10283	//
10284	// For Amazon Fraud Detector trained models:
10285	//
10286	// If a null value is provided explicitly for a variable or if a variable is
10287	// missing, model will replace the null value or the missing variable (no variable
10288	// name in the eventVariables map) with calculated default mean/medians for
10289	// numeric variables and with special values for categorical variables.
10290	//
10291	// For External models ( for example, imported SageMaker):
10292	//
10293	// If a null value is provided explicitly for a variable, the model and rules
10294	// will use “null” as the value. If a variable is not provided (no variable
10295	// name in the eventVariables map), model and rules will use the default value
10296	// that is provided for the variable.
10297	//
10298	// EventVariables is a required field
10299	EventVariables map[string]*string `locationName:"eventVariables" min:"1" type:"map" required:"true"`
10300
10301	// The Amazon SageMaker model endpoint input data blobs.
10302	ExternalModelEndpointDataBlobs map[string]*ModelEndpointDataBlob `locationName:"externalModelEndpointDataBlobs" type:"map" sensitive:"true"`
10303}
10304
10305// String returns the string representation
10306func (s GetEventPredictionInput) String() string {
10307	return awsutil.Prettify(s)
10308}
10309
10310// GoString returns the string representation
10311func (s GetEventPredictionInput) GoString() string {
10312	return s.String()
10313}
10314
10315// Validate inspects the fields of the type to determine if they are valid.
10316func (s *GetEventPredictionInput) Validate() error {
10317	invalidParams := request.ErrInvalidParams{Context: "GetEventPredictionInput"}
10318	if s.DetectorId == nil {
10319		invalidParams.Add(request.NewErrParamRequired("DetectorId"))
10320	}
10321	if s.DetectorVersionId != nil && len(*s.DetectorVersionId) < 1 {
10322		invalidParams.Add(request.NewErrParamMinLen("DetectorVersionId", 1))
10323	}
10324	if s.Entities == nil {
10325		invalidParams.Add(request.NewErrParamRequired("Entities"))
10326	}
10327	if s.EventId == nil {
10328		invalidParams.Add(request.NewErrParamRequired("EventId"))
10329	}
10330	if s.EventTimestamp == nil {
10331		invalidParams.Add(request.NewErrParamRequired("EventTimestamp"))
10332	}
10333	if s.EventTimestamp != nil && len(*s.EventTimestamp) < 10 {
10334		invalidParams.Add(request.NewErrParamMinLen("EventTimestamp", 10))
10335	}
10336	if s.EventTypeName == nil {
10337		invalidParams.Add(request.NewErrParamRequired("EventTypeName"))
10338	}
10339	if s.EventVariables == nil {
10340		invalidParams.Add(request.NewErrParamRequired("EventVariables"))
10341	}
10342	if s.EventVariables != nil && len(s.EventVariables) < 1 {
10343		invalidParams.Add(request.NewErrParamMinLen("EventVariables", 1))
10344	}
10345	if s.Entities != nil {
10346		for i, v := range s.Entities {
10347			if v == nil {
10348				continue
10349			}
10350			if err := v.Validate(); err != nil {
10351				invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Entities", i), err.(request.ErrInvalidParams))
10352			}
10353		}
10354	}
10355	if s.ExternalModelEndpointDataBlobs != nil {
10356		for i, v := range s.ExternalModelEndpointDataBlobs {
10357			if v == nil {
10358				continue
10359			}
10360			if err := v.Validate(); err != nil {
10361				invalidParams.AddNested(fmt.Sprintf("%s[%v]", "ExternalModelEndpointDataBlobs", i), err.(request.ErrInvalidParams))
10362			}
10363		}
10364	}
10365
10366	if invalidParams.Len() > 0 {
10367		return invalidParams
10368	}
10369	return nil
10370}
10371
10372// SetDetectorId sets the DetectorId field's value.
10373func (s *GetEventPredictionInput) SetDetectorId(v string) *GetEventPredictionInput {
10374	s.DetectorId = &v
10375	return s
10376}
10377
10378// SetDetectorVersionId sets the DetectorVersionId field's value.
10379func (s *GetEventPredictionInput) SetDetectorVersionId(v string) *GetEventPredictionInput {
10380	s.DetectorVersionId = &v
10381	return s
10382}
10383
10384// SetEntities sets the Entities field's value.
10385func (s *GetEventPredictionInput) SetEntities(v []*Entity) *GetEventPredictionInput {
10386	s.Entities = v
10387	return s
10388}
10389
10390// SetEventId sets the EventId field's value.
10391func (s *GetEventPredictionInput) SetEventId(v string) *GetEventPredictionInput {
10392	s.EventId = &v
10393	return s
10394}
10395
10396// SetEventTimestamp sets the EventTimestamp field's value.
10397func (s *GetEventPredictionInput) SetEventTimestamp(v string) *GetEventPredictionInput {
10398	s.EventTimestamp = &v
10399	return s
10400}
10401
10402// SetEventTypeName sets the EventTypeName field's value.
10403func (s *GetEventPredictionInput) SetEventTypeName(v string) *GetEventPredictionInput {
10404	s.EventTypeName = &v
10405	return s
10406}
10407
10408// SetEventVariables sets the EventVariables field's value.
10409func (s *GetEventPredictionInput) SetEventVariables(v map[string]*string) *GetEventPredictionInput {
10410	s.EventVariables = v
10411	return s
10412}
10413
10414// SetExternalModelEndpointDataBlobs sets the ExternalModelEndpointDataBlobs field's value.
10415func (s *GetEventPredictionInput) SetExternalModelEndpointDataBlobs(v map[string]*ModelEndpointDataBlob) *GetEventPredictionInput {
10416	s.ExternalModelEndpointDataBlobs = v
10417	return s
10418}
10419
10420type GetEventPredictionOutput struct {
10421	_ struct{} `type:"structure"`
10422
10423	// The model scores for Amazon SageMaker models.
10424	ExternalModelOutputs []*ExternalModelOutputs `locationName:"externalModelOutputs" type:"list"`
10425
10426	// The model scores. Amazon Fraud Detector generates model scores between 0
10427	// and 1000, where 0 is low fraud risk and 1000 is high fraud risk. Model scores
10428	// are directly related to the false positive rate (FPR). For example, a score
10429	// of 600 corresponds to an estimated 10% false positive rate whereas a score
10430	// of 900 corresponds to an estimated 2% false positive rate.
10431	ModelScores []*ModelScores `locationName:"modelScores" type:"list"`
10432
10433	// The results from the rules.
10434	RuleResults []*RuleResult `locationName:"ruleResults" type:"list"`
10435}
10436
10437// String returns the string representation
10438func (s GetEventPredictionOutput) String() string {
10439	return awsutil.Prettify(s)
10440}
10441
10442// GoString returns the string representation
10443func (s GetEventPredictionOutput) GoString() string {
10444	return s.String()
10445}
10446
10447// SetExternalModelOutputs sets the ExternalModelOutputs field's value.
10448func (s *GetEventPredictionOutput) SetExternalModelOutputs(v []*ExternalModelOutputs) *GetEventPredictionOutput {
10449	s.ExternalModelOutputs = v
10450	return s
10451}
10452
10453// SetModelScores sets the ModelScores field's value.
10454func (s *GetEventPredictionOutput) SetModelScores(v []*ModelScores) *GetEventPredictionOutput {
10455	s.ModelScores = v
10456	return s
10457}
10458
10459// SetRuleResults sets the RuleResults field's value.
10460func (s *GetEventPredictionOutput) SetRuleResults(v []*RuleResult) *GetEventPredictionOutput {
10461	s.RuleResults = v
10462	return s
10463}
10464
10465type GetEventTypesInput struct {
10466	_ struct{} `type:"structure"`
10467
10468	// The maximum number of objects to return for the request.
10469	MaxResults *int64 `locationName:"maxResults" min:"5" type:"integer"`
10470
10471	// The name.
10472	Name *string `locationName:"name" min:"1" type:"string"`
10473
10474	// The next token for the subsequent request.
10475	NextToken *string `locationName:"nextToken" type:"string"`
10476}
10477
10478// String returns the string representation
10479func (s GetEventTypesInput) String() string {
10480	return awsutil.Prettify(s)
10481}
10482
10483// GoString returns the string representation
10484func (s GetEventTypesInput) GoString() string {
10485	return s.String()
10486}
10487
10488// Validate inspects the fields of the type to determine if they are valid.
10489func (s *GetEventTypesInput) Validate() error {
10490	invalidParams := request.ErrInvalidParams{Context: "GetEventTypesInput"}
10491	if s.MaxResults != nil && *s.MaxResults < 5 {
10492		invalidParams.Add(request.NewErrParamMinValue("MaxResults", 5))
10493	}
10494	if s.Name != nil && len(*s.Name) < 1 {
10495		invalidParams.Add(request.NewErrParamMinLen("Name", 1))
10496	}
10497
10498	if invalidParams.Len() > 0 {
10499		return invalidParams
10500	}
10501	return nil
10502}
10503
10504// SetMaxResults sets the MaxResults field's value.
10505func (s *GetEventTypesInput) SetMaxResults(v int64) *GetEventTypesInput {
10506	s.MaxResults = &v
10507	return s
10508}
10509
10510// SetName sets the Name field's value.
10511func (s *GetEventTypesInput) SetName(v string) *GetEventTypesInput {
10512	s.Name = &v
10513	return s
10514}
10515
10516// SetNextToken sets the NextToken field's value.
10517func (s *GetEventTypesInput) SetNextToken(v string) *GetEventTypesInput {
10518	s.NextToken = &v
10519	return s
10520}
10521
10522type GetEventTypesOutput struct {
10523	_ struct{} `type:"structure"`
10524
10525	// An array of event types.
10526	EventTypes []*EventType `locationName:"eventTypes" type:"list"`
10527
10528	// The next page token.
10529	NextToken *string `locationName:"nextToken" type:"string"`
10530}
10531
10532// String returns the string representation
10533func (s GetEventTypesOutput) String() string {
10534	return awsutil.Prettify(s)
10535}
10536
10537// GoString returns the string representation
10538func (s GetEventTypesOutput) GoString() string {
10539	return s.String()
10540}
10541
10542// SetEventTypes sets the EventTypes field's value.
10543func (s *GetEventTypesOutput) SetEventTypes(v []*EventType) *GetEventTypesOutput {
10544	s.EventTypes = v
10545	return s
10546}
10547
10548// SetNextToken sets the NextToken field's value.
10549func (s *GetEventTypesOutput) SetNextToken(v string) *GetEventTypesOutput {
10550	s.NextToken = &v
10551	return s
10552}
10553
10554type GetExternalModelsInput struct {
10555	_ struct{} `type:"structure"`
10556
10557	// The maximum number of objects to return for the request.
10558	MaxResults *int64 `locationName:"maxResults" min:"5" type:"integer"`
10559
10560	// The Amazon SageMaker model endpoint.
10561	ModelEndpoint *string `locationName:"modelEndpoint" type:"string"`
10562
10563	// The next page token for the request.
10564	NextToken *string `locationName:"nextToken" type:"string"`
10565}
10566
10567// String returns the string representation
10568func (s GetExternalModelsInput) String() string {
10569	return awsutil.Prettify(s)
10570}
10571
10572// GoString returns the string representation
10573func (s GetExternalModelsInput) GoString() string {
10574	return s.String()
10575}
10576
10577// Validate inspects the fields of the type to determine if they are valid.
10578func (s *GetExternalModelsInput) Validate() error {
10579	invalidParams := request.ErrInvalidParams{Context: "GetExternalModelsInput"}
10580	if s.MaxResults != nil && *s.MaxResults < 5 {
10581		invalidParams.Add(request.NewErrParamMinValue("MaxResults", 5))
10582	}
10583
10584	if invalidParams.Len() > 0 {
10585		return invalidParams
10586	}
10587	return nil
10588}
10589
10590// SetMaxResults sets the MaxResults field's value.
10591func (s *GetExternalModelsInput) SetMaxResults(v int64) *GetExternalModelsInput {
10592	s.MaxResults = &v
10593	return s
10594}
10595
10596// SetModelEndpoint sets the ModelEndpoint field's value.
10597func (s *GetExternalModelsInput) SetModelEndpoint(v string) *GetExternalModelsInput {
10598	s.ModelEndpoint = &v
10599	return s
10600}
10601
10602// SetNextToken sets the NextToken field's value.
10603func (s *GetExternalModelsInput) SetNextToken(v string) *GetExternalModelsInput {
10604	s.NextToken = &v
10605	return s
10606}
10607
10608type GetExternalModelsOutput struct {
10609	_ struct{} `type:"structure"`
10610
10611	// Gets the Amazon SageMaker models.
10612	ExternalModels []*ExternalModel `locationName:"externalModels" type:"list"`
10613
10614	// The next page token to be used in subsequent requests.
10615	NextToken *string `locationName:"nextToken" type:"string"`
10616}
10617
10618// String returns the string representation
10619func (s GetExternalModelsOutput) String() string {
10620	return awsutil.Prettify(s)
10621}
10622
10623// GoString returns the string representation
10624func (s GetExternalModelsOutput) GoString() string {
10625	return s.String()
10626}
10627
10628// SetExternalModels sets the ExternalModels field's value.
10629func (s *GetExternalModelsOutput) SetExternalModels(v []*ExternalModel) *GetExternalModelsOutput {
10630	s.ExternalModels = v
10631	return s
10632}
10633
10634// SetNextToken sets the NextToken field's value.
10635func (s *GetExternalModelsOutput) SetNextToken(v string) *GetExternalModelsOutput {
10636	s.NextToken = &v
10637	return s
10638}
10639
10640type GetKMSEncryptionKeyInput struct {
10641	_ struct{} `type:"structure"`
10642}
10643
10644// String returns the string representation
10645func (s GetKMSEncryptionKeyInput) String() string {
10646	return awsutil.Prettify(s)
10647}
10648
10649// GoString returns the string representation
10650func (s GetKMSEncryptionKeyInput) GoString() string {
10651	return s.String()
10652}
10653
10654type GetKMSEncryptionKeyOutput struct {
10655	_ struct{} `type:"structure"`
10656
10657	// The KMS encryption key.
10658	KmsKey *KMSKey `locationName:"kmsKey" type:"structure"`
10659}
10660
10661// String returns the string representation
10662func (s GetKMSEncryptionKeyOutput) String() string {
10663	return awsutil.Prettify(s)
10664}
10665
10666// GoString returns the string representation
10667func (s GetKMSEncryptionKeyOutput) GoString() string {
10668	return s.String()
10669}
10670
10671// SetKmsKey sets the KmsKey field's value.
10672func (s *GetKMSEncryptionKeyOutput) SetKmsKey(v *KMSKey) *GetKMSEncryptionKeyOutput {
10673	s.KmsKey = v
10674	return s
10675}
10676
10677type GetLabelsInput struct {
10678	_ struct{} `type:"structure"`
10679
10680	// The maximum number of objects to return for the request.
10681	MaxResults *int64 `locationName:"maxResults" min:"10" type:"integer"`
10682
10683	// The name of the label or labels to get.
10684	Name *string `locationName:"name" min:"1" type:"string"`
10685
10686	// The next token for the subsequent request.
10687	NextToken *string `locationName:"nextToken" type:"string"`
10688}
10689
10690// String returns the string representation
10691func (s GetLabelsInput) String() string {
10692	return awsutil.Prettify(s)
10693}
10694
10695// GoString returns the string representation
10696func (s GetLabelsInput) GoString() string {
10697	return s.String()
10698}
10699
10700// Validate inspects the fields of the type to determine if they are valid.
10701func (s *GetLabelsInput) Validate() error {
10702	invalidParams := request.ErrInvalidParams{Context: "GetLabelsInput"}
10703	if s.MaxResults != nil && *s.MaxResults < 10 {
10704		invalidParams.Add(request.NewErrParamMinValue("MaxResults", 10))
10705	}
10706	if s.Name != nil && len(*s.Name) < 1 {
10707		invalidParams.Add(request.NewErrParamMinLen("Name", 1))
10708	}
10709
10710	if invalidParams.Len() > 0 {
10711		return invalidParams
10712	}
10713	return nil
10714}
10715
10716// SetMaxResults sets the MaxResults field's value.
10717func (s *GetLabelsInput) SetMaxResults(v int64) *GetLabelsInput {
10718	s.MaxResults = &v
10719	return s
10720}
10721
10722// SetName sets the Name field's value.
10723func (s *GetLabelsInput) SetName(v string) *GetLabelsInput {
10724	s.Name = &v
10725	return s
10726}
10727
10728// SetNextToken sets the NextToken field's value.
10729func (s *GetLabelsInput) SetNextToken(v string) *GetLabelsInput {
10730	s.NextToken = &v
10731	return s
10732}
10733
10734type GetLabelsOutput struct {
10735	_ struct{} `type:"structure"`
10736
10737	// An array of labels.
10738	Labels []*Label `locationName:"labels" type:"list"`
10739
10740	// The next page token.
10741	NextToken *string `locationName:"nextToken" type:"string"`
10742}
10743
10744// String returns the string representation
10745func (s GetLabelsOutput) String() string {
10746	return awsutil.Prettify(s)
10747}
10748
10749// GoString returns the string representation
10750func (s GetLabelsOutput) GoString() string {
10751	return s.String()
10752}
10753
10754// SetLabels sets the Labels field's value.
10755func (s *GetLabelsOutput) SetLabels(v []*Label) *GetLabelsOutput {
10756	s.Labels = v
10757	return s
10758}
10759
10760// SetNextToken sets the NextToken field's value.
10761func (s *GetLabelsOutput) SetNextToken(v string) *GetLabelsOutput {
10762	s.NextToken = &v
10763	return s
10764}
10765
10766type GetModelVersionInput struct {
10767	_ struct{} `type:"structure"`
10768
10769	// The model ID.
10770	//
10771	// ModelId is a required field
10772	ModelId *string `locationName:"modelId" min:"1" type:"string" required:"true"`
10773
10774	// The model type.
10775	//
10776	// ModelType is a required field
10777	ModelType *string `locationName:"modelType" type:"string" required:"true" enum:"ModelTypeEnum"`
10778
10779	// The model version number.
10780	//
10781	// ModelVersionNumber is a required field
10782	ModelVersionNumber *string `locationName:"modelVersionNumber" min:"3" type:"string" required:"true"`
10783}
10784
10785// String returns the string representation
10786func (s GetModelVersionInput) String() string {
10787	return awsutil.Prettify(s)
10788}
10789
10790// GoString returns the string representation
10791func (s GetModelVersionInput) GoString() string {
10792	return s.String()
10793}
10794
10795// Validate inspects the fields of the type to determine if they are valid.
10796func (s *GetModelVersionInput) Validate() error {
10797	invalidParams := request.ErrInvalidParams{Context: "GetModelVersionInput"}
10798	if s.ModelId == nil {
10799		invalidParams.Add(request.NewErrParamRequired("ModelId"))
10800	}
10801	if s.ModelId != nil && len(*s.ModelId) < 1 {
10802		invalidParams.Add(request.NewErrParamMinLen("ModelId", 1))
10803	}
10804	if s.ModelType == nil {
10805		invalidParams.Add(request.NewErrParamRequired("ModelType"))
10806	}
10807	if s.ModelVersionNumber == nil {
10808		invalidParams.Add(request.NewErrParamRequired("ModelVersionNumber"))
10809	}
10810	if s.ModelVersionNumber != nil && len(*s.ModelVersionNumber) < 3 {
10811		invalidParams.Add(request.NewErrParamMinLen("ModelVersionNumber", 3))
10812	}
10813
10814	if invalidParams.Len() > 0 {
10815		return invalidParams
10816	}
10817	return nil
10818}
10819
10820// SetModelId sets the ModelId field's value.
10821func (s *GetModelVersionInput) SetModelId(v string) *GetModelVersionInput {
10822	s.ModelId = &v
10823	return s
10824}
10825
10826// SetModelType sets the ModelType field's value.
10827func (s *GetModelVersionInput) SetModelType(v string) *GetModelVersionInput {
10828	s.ModelType = &v
10829	return s
10830}
10831
10832// SetModelVersionNumber sets the ModelVersionNumber field's value.
10833func (s *GetModelVersionInput) SetModelVersionNumber(v string) *GetModelVersionInput {
10834	s.ModelVersionNumber = &v
10835	return s
10836}
10837
10838type GetModelVersionOutput struct {
10839	_ struct{} `type:"structure"`
10840
10841	// The model version ARN.
10842	Arn *string `locationName:"arn" min:"1" type:"string"`
10843
10844	// The event details.
10845	ExternalEventsDetail *ExternalEventsDetail `locationName:"externalEventsDetail" type:"structure"`
10846
10847	// The model ID.
10848	ModelId *string `locationName:"modelId" min:"1" type:"string"`
10849
10850	// The model type.
10851	ModelType *string `locationName:"modelType" type:"string" enum:"ModelTypeEnum"`
10852
10853	// The model version number.
10854	ModelVersionNumber *string `locationName:"modelVersionNumber" min:"3" type:"string"`
10855
10856	// The model version status.
10857	//
10858	// Possible values are:
10859	//
10860	//    * TRAINING_IN_PROGRESS
10861	//
10862	//    * TRAINING_COMPLETE
10863	//
10864	//    * ACTIVATE_REQUESTED
10865	//
10866	//    * ACTIVATE_IN_PROGRESS
10867	//
10868	//    * ACTIVE
10869	//
10870	//    * INACTIVATE_REQUESTED
10871	//
10872	//    * INACTIVATE_IN_PROGRESS
10873	//
10874	//    * INACTIVE
10875	//
10876	//    * ERROR
10877	Status *string `locationName:"status" type:"string"`
10878
10879	// The training data schema.
10880	TrainingDataSchema *TrainingDataSchema `locationName:"trainingDataSchema" type:"structure"`
10881
10882	// The training data source.
10883	TrainingDataSource *string `locationName:"trainingDataSource" type:"string" enum:"TrainingDataSourceEnum"`
10884}
10885
10886// String returns the string representation
10887func (s GetModelVersionOutput) String() string {
10888	return awsutil.Prettify(s)
10889}
10890
10891// GoString returns the string representation
10892func (s GetModelVersionOutput) GoString() string {
10893	return s.String()
10894}
10895
10896// SetArn sets the Arn field's value.
10897func (s *GetModelVersionOutput) SetArn(v string) *GetModelVersionOutput {
10898	s.Arn = &v
10899	return s
10900}
10901
10902// SetExternalEventsDetail sets the ExternalEventsDetail field's value.
10903func (s *GetModelVersionOutput) SetExternalEventsDetail(v *ExternalEventsDetail) *GetModelVersionOutput {
10904	s.ExternalEventsDetail = v
10905	return s
10906}
10907
10908// SetModelId sets the ModelId field's value.
10909func (s *GetModelVersionOutput) SetModelId(v string) *GetModelVersionOutput {
10910	s.ModelId = &v
10911	return s
10912}
10913
10914// SetModelType sets the ModelType field's value.
10915func (s *GetModelVersionOutput) SetModelType(v string) *GetModelVersionOutput {
10916	s.ModelType = &v
10917	return s
10918}
10919
10920// SetModelVersionNumber sets the ModelVersionNumber field's value.
10921func (s *GetModelVersionOutput) SetModelVersionNumber(v string) *GetModelVersionOutput {
10922	s.ModelVersionNumber = &v
10923	return s
10924}
10925
10926// SetStatus sets the Status field's value.
10927func (s *GetModelVersionOutput) SetStatus(v string) *GetModelVersionOutput {
10928	s.Status = &v
10929	return s
10930}
10931
10932// SetTrainingDataSchema sets the TrainingDataSchema field's value.
10933func (s *GetModelVersionOutput) SetTrainingDataSchema(v *TrainingDataSchema) *GetModelVersionOutput {
10934	s.TrainingDataSchema = v
10935	return s
10936}
10937
10938// SetTrainingDataSource sets the TrainingDataSource field's value.
10939func (s *GetModelVersionOutput) SetTrainingDataSource(v string) *GetModelVersionOutput {
10940	s.TrainingDataSource = &v
10941	return s
10942}
10943
10944type GetModelsInput struct {
10945	_ struct{} `type:"structure"`
10946
10947	// The maximum number of objects to return for the request.
10948	MaxResults *int64 `locationName:"maxResults" min:"1" type:"integer"`
10949
10950	// The model ID.
10951	ModelId *string `locationName:"modelId" min:"1" type:"string"`
10952
10953	// The model type.
10954	ModelType *string `locationName:"modelType" type:"string" enum:"ModelTypeEnum"`
10955
10956	// The next token for the subsequent request.
10957	NextToken *string `locationName:"nextToken" type:"string"`
10958}
10959
10960// String returns the string representation
10961func (s GetModelsInput) String() string {
10962	return awsutil.Prettify(s)
10963}
10964
10965// GoString returns the string representation
10966func (s GetModelsInput) GoString() string {
10967	return s.String()
10968}
10969
10970// Validate inspects the fields of the type to determine if they are valid.
10971func (s *GetModelsInput) Validate() error {
10972	invalidParams := request.ErrInvalidParams{Context: "GetModelsInput"}
10973	if s.MaxResults != nil && *s.MaxResults < 1 {
10974		invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1))
10975	}
10976	if s.ModelId != nil && len(*s.ModelId) < 1 {
10977		invalidParams.Add(request.NewErrParamMinLen("ModelId", 1))
10978	}
10979
10980	if invalidParams.Len() > 0 {
10981		return invalidParams
10982	}
10983	return nil
10984}
10985
10986// SetMaxResults sets the MaxResults field's value.
10987func (s *GetModelsInput) SetMaxResults(v int64) *GetModelsInput {
10988	s.MaxResults = &v
10989	return s
10990}
10991
10992// SetModelId sets the ModelId field's value.
10993func (s *GetModelsInput) SetModelId(v string) *GetModelsInput {
10994	s.ModelId = &v
10995	return s
10996}
10997
10998// SetModelType sets the ModelType field's value.
10999func (s *GetModelsInput) SetModelType(v string) *GetModelsInput {
11000	s.ModelType = &v
11001	return s
11002}
11003
11004// SetNextToken sets the NextToken field's value.
11005func (s *GetModelsInput) SetNextToken(v string) *GetModelsInput {
11006	s.NextToken = &v
11007	return s
11008}
11009
11010type GetModelsOutput struct {
11011	_ struct{} `type:"structure"`
11012
11013	// The array of models.
11014	Models []*Model `locationName:"models" type:"list"`
11015
11016	// The next page token to be used in subsequent requests.
11017	NextToken *string `locationName:"nextToken" type:"string"`
11018}
11019
11020// String returns the string representation
11021func (s GetModelsOutput) String() string {
11022	return awsutil.Prettify(s)
11023}
11024
11025// GoString returns the string representation
11026func (s GetModelsOutput) GoString() string {
11027	return s.String()
11028}
11029
11030// SetModels sets the Models field's value.
11031func (s *GetModelsOutput) SetModels(v []*Model) *GetModelsOutput {
11032	s.Models = v
11033	return s
11034}
11035
11036// SetNextToken sets the NextToken field's value.
11037func (s *GetModelsOutput) SetNextToken(v string) *GetModelsOutput {
11038	s.NextToken = &v
11039	return s
11040}
11041
11042type GetOutcomesInput struct {
11043	_ struct{} `type:"structure"`
11044
11045	// The maximum number of objects to return for the request.
11046	MaxResults *int64 `locationName:"maxResults" min:"50" type:"integer"`
11047
11048	// The name of the outcome or outcomes to get.
11049	Name *string `locationName:"name" min:"1" type:"string"`
11050
11051	// The next page token for the request.
11052	NextToken *string `locationName:"nextToken" type:"string"`
11053}
11054
11055// String returns the string representation
11056func (s GetOutcomesInput) String() string {
11057	return awsutil.Prettify(s)
11058}
11059
11060// GoString returns the string representation
11061func (s GetOutcomesInput) GoString() string {
11062	return s.String()
11063}
11064
11065// Validate inspects the fields of the type to determine if they are valid.
11066func (s *GetOutcomesInput) Validate() error {
11067	invalidParams := request.ErrInvalidParams{Context: "GetOutcomesInput"}
11068	if s.MaxResults != nil && *s.MaxResults < 50 {
11069		invalidParams.Add(request.NewErrParamMinValue("MaxResults", 50))
11070	}
11071	if s.Name != nil && len(*s.Name) < 1 {
11072		invalidParams.Add(request.NewErrParamMinLen("Name", 1))
11073	}
11074
11075	if invalidParams.Len() > 0 {
11076		return invalidParams
11077	}
11078	return nil
11079}
11080
11081// SetMaxResults sets the MaxResults field's value.
11082func (s *GetOutcomesInput) SetMaxResults(v int64) *GetOutcomesInput {
11083	s.MaxResults = &v
11084	return s
11085}
11086
11087// SetName sets the Name field's value.
11088func (s *GetOutcomesInput) SetName(v string) *GetOutcomesInput {
11089	s.Name = &v
11090	return s
11091}
11092
11093// SetNextToken sets the NextToken field's value.
11094func (s *GetOutcomesInput) SetNextToken(v string) *GetOutcomesInput {
11095	s.NextToken = &v
11096	return s
11097}
11098
11099type GetOutcomesOutput struct {
11100	_ struct{} `type:"structure"`
11101
11102	// The next page token for subsequent requests.
11103	NextToken *string `locationName:"nextToken" type:"string"`
11104
11105	// The outcomes.
11106	Outcomes []*Outcome `locationName:"outcomes" type:"list"`
11107}
11108
11109// String returns the string representation
11110func (s GetOutcomesOutput) String() string {
11111	return awsutil.Prettify(s)
11112}
11113
11114// GoString returns the string representation
11115func (s GetOutcomesOutput) GoString() string {
11116	return s.String()
11117}
11118
11119// SetNextToken sets the NextToken field's value.
11120func (s *GetOutcomesOutput) SetNextToken(v string) *GetOutcomesOutput {
11121	s.NextToken = &v
11122	return s
11123}
11124
11125// SetOutcomes sets the Outcomes field's value.
11126func (s *GetOutcomesOutput) SetOutcomes(v []*Outcome) *GetOutcomesOutput {
11127	s.Outcomes = v
11128	return s
11129}
11130
11131type GetRulesInput struct {
11132	_ struct{} `type:"structure"`
11133
11134	// The detector ID.
11135	//
11136	// DetectorId is a required field
11137	DetectorId *string `locationName:"detectorId" min:"1" type:"string" required:"true"`
11138
11139	// The maximum number of rules to return for the request.
11140	MaxResults *int64 `locationName:"maxResults" min:"50" type:"integer"`
11141
11142	// The next page token.
11143	NextToken *string `locationName:"nextToken" type:"string"`
11144
11145	// The rule ID.
11146	RuleId *string `locationName:"ruleId" min:"1" type:"string"`
11147
11148	// The rule version.
11149	RuleVersion *string `locationName:"ruleVersion" min:"1" type:"string"`
11150}
11151
11152// String returns the string representation
11153func (s GetRulesInput) String() string {
11154	return awsutil.Prettify(s)
11155}
11156
11157// GoString returns the string representation
11158func (s GetRulesInput) GoString() string {
11159	return s.String()
11160}
11161
11162// Validate inspects the fields of the type to determine if they are valid.
11163func (s *GetRulesInput) Validate() error {
11164	invalidParams := request.ErrInvalidParams{Context: "GetRulesInput"}
11165	if s.DetectorId == nil {
11166		invalidParams.Add(request.NewErrParamRequired("DetectorId"))
11167	}
11168	if s.DetectorId != nil && len(*s.DetectorId) < 1 {
11169		invalidParams.Add(request.NewErrParamMinLen("DetectorId", 1))
11170	}
11171	if s.MaxResults != nil && *s.MaxResults < 50 {
11172		invalidParams.Add(request.NewErrParamMinValue("MaxResults", 50))
11173	}
11174	if s.RuleId != nil && len(*s.RuleId) < 1 {
11175		invalidParams.Add(request.NewErrParamMinLen("RuleId", 1))
11176	}
11177	if s.RuleVersion != nil && len(*s.RuleVersion) < 1 {
11178		invalidParams.Add(request.NewErrParamMinLen("RuleVersion", 1))
11179	}
11180
11181	if invalidParams.Len() > 0 {
11182		return invalidParams
11183	}
11184	return nil
11185}
11186
11187// SetDetectorId sets the DetectorId field's value.
11188func (s *GetRulesInput) SetDetectorId(v string) *GetRulesInput {
11189	s.DetectorId = &v
11190	return s
11191}
11192
11193// SetMaxResults sets the MaxResults field's value.
11194func (s *GetRulesInput) SetMaxResults(v int64) *GetRulesInput {
11195	s.MaxResults = &v
11196	return s
11197}
11198
11199// SetNextToken sets the NextToken field's value.
11200func (s *GetRulesInput) SetNextToken(v string) *GetRulesInput {
11201	s.NextToken = &v
11202	return s
11203}
11204
11205// SetRuleId sets the RuleId field's value.
11206func (s *GetRulesInput) SetRuleId(v string) *GetRulesInput {
11207	s.RuleId = &v
11208	return s
11209}
11210
11211// SetRuleVersion sets the RuleVersion field's value.
11212func (s *GetRulesInput) SetRuleVersion(v string) *GetRulesInput {
11213	s.RuleVersion = &v
11214	return s
11215}
11216
11217type GetRulesOutput struct {
11218	_ struct{} `type:"structure"`
11219
11220	// The next page token to be used in subsequent requests.
11221	NextToken *string `locationName:"nextToken" type:"string"`
11222
11223	// The details of the requested rule.
11224	RuleDetails []*RuleDetail `locationName:"ruleDetails" type:"list"`
11225}
11226
11227// String returns the string representation
11228func (s GetRulesOutput) String() string {
11229	return awsutil.Prettify(s)
11230}
11231
11232// GoString returns the string representation
11233func (s GetRulesOutput) GoString() string {
11234	return s.String()
11235}
11236
11237// SetNextToken sets the NextToken field's value.
11238func (s *GetRulesOutput) SetNextToken(v string) *GetRulesOutput {
11239	s.NextToken = &v
11240	return s
11241}
11242
11243// SetRuleDetails sets the RuleDetails field's value.
11244func (s *GetRulesOutput) SetRuleDetails(v []*RuleDetail) *GetRulesOutput {
11245	s.RuleDetails = v
11246	return s
11247}
11248
11249type GetVariablesInput struct {
11250	_ struct{} `type:"structure"`
11251
11252	// The max size per page determined for the get variable request.
11253	MaxResults *int64 `locationName:"maxResults" min:"50" type:"integer"`
11254
11255	// The name of the variable.
11256	Name *string `locationName:"name" type:"string"`
11257
11258	// The next page token of the get variable request.
11259	NextToken *string `locationName:"nextToken" type:"string"`
11260}
11261
11262// String returns the string representation
11263func (s GetVariablesInput) String() string {
11264	return awsutil.Prettify(s)
11265}
11266
11267// GoString returns the string representation
11268func (s GetVariablesInput) GoString() string {
11269	return s.String()
11270}
11271
11272// Validate inspects the fields of the type to determine if they are valid.
11273func (s *GetVariablesInput) Validate() error {
11274	invalidParams := request.ErrInvalidParams{Context: "GetVariablesInput"}
11275	if s.MaxResults != nil && *s.MaxResults < 50 {
11276		invalidParams.Add(request.NewErrParamMinValue("MaxResults", 50))
11277	}
11278
11279	if invalidParams.Len() > 0 {
11280		return invalidParams
11281	}
11282	return nil
11283}
11284
11285// SetMaxResults sets the MaxResults field's value.
11286func (s *GetVariablesInput) SetMaxResults(v int64) *GetVariablesInput {
11287	s.MaxResults = &v
11288	return s
11289}
11290
11291// SetName sets the Name field's value.
11292func (s *GetVariablesInput) SetName(v string) *GetVariablesInput {
11293	s.Name = &v
11294	return s
11295}
11296
11297// SetNextToken sets the NextToken field's value.
11298func (s *GetVariablesInput) SetNextToken(v string) *GetVariablesInput {
11299	s.NextToken = &v
11300	return s
11301}
11302
11303type GetVariablesOutput struct {
11304	_ struct{} `type:"structure"`
11305
11306	// The next page token to be used in subsequent requests.
11307	NextToken *string `locationName:"nextToken" type:"string"`
11308
11309	// The names of the variables returned.
11310	Variables []*Variable `locationName:"variables" type:"list"`
11311}
11312
11313// String returns the string representation
11314func (s GetVariablesOutput) String() string {
11315	return awsutil.Prettify(s)
11316}
11317
11318// GoString returns the string representation
11319func (s GetVariablesOutput) GoString() string {
11320	return s.String()
11321}
11322
11323// SetNextToken sets the NextToken field's value.
11324func (s *GetVariablesOutput) SetNextToken(v string) *GetVariablesOutput {
11325	s.NextToken = &v
11326	return s
11327}
11328
11329// SetVariables sets the Variables field's value.
11330func (s *GetVariablesOutput) SetVariables(v []*Variable) *GetVariablesOutput {
11331	s.Variables = v
11332	return s
11333}
11334
11335// An exception indicating an internal server error.
11336type InternalServerException struct {
11337	_            struct{}                  `type:"structure"`
11338	RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"`
11339
11340	Message_ *string `locationName:"message" type:"string"`
11341}
11342
11343// String returns the string representation
11344func (s InternalServerException) String() string {
11345	return awsutil.Prettify(s)
11346}
11347
11348// GoString returns the string representation
11349func (s InternalServerException) GoString() string {
11350	return s.String()
11351}
11352
11353func newErrorInternalServerException(v protocol.ResponseMetadata) error {
11354	return &InternalServerException{
11355		RespMetadata: v,
11356	}
11357}
11358
11359// Code returns the exception type name.
11360func (s *InternalServerException) Code() string {
11361	return "InternalServerException"
11362}
11363
11364// Message returns the exception's message.
11365func (s *InternalServerException) Message() string {
11366	if s.Message_ != nil {
11367		return *s.Message_
11368	}
11369	return ""
11370}
11371
11372// OrigErr always returns nil, satisfies awserr.Error interface.
11373func (s *InternalServerException) OrigErr() error {
11374	return nil
11375}
11376
11377func (s *InternalServerException) Error() string {
11378	return fmt.Sprintf("%s: %s", s.Code(), s.Message())
11379}
11380
11381// Status code returns the HTTP status code for the request's response error.
11382func (s *InternalServerException) StatusCode() int {
11383	return s.RespMetadata.StatusCode
11384}
11385
11386// RequestID returns the service's response RequestID for request.
11387func (s *InternalServerException) RequestID() string {
11388	return s.RespMetadata.RequestID
11389}
11390
11391// The KMS key details.
11392type KMSKey struct {
11393	_ struct{} `type:"structure"`
11394
11395	// The encryption key ARN.
11396	KmsEncryptionKeyArn *string `locationName:"kmsEncryptionKeyArn" min:"7" type:"string"`
11397}
11398
11399// String returns the string representation
11400func (s KMSKey) String() string {
11401	return awsutil.Prettify(s)
11402}
11403
11404// GoString returns the string representation
11405func (s KMSKey) GoString() string {
11406	return s.String()
11407}
11408
11409// SetKmsEncryptionKeyArn sets the KmsEncryptionKeyArn field's value.
11410func (s *KMSKey) SetKmsEncryptionKeyArn(v string) *KMSKey {
11411	s.KmsEncryptionKeyArn = &v
11412	return s
11413}
11414
11415// The label details.
11416type Label struct {
11417	_ struct{} `type:"structure"`
11418
11419	// The label ARN.
11420	Arn *string `locationName:"arn" min:"1" type:"string"`
11421
11422	// Timestamp of when the event type was created.
11423	CreatedTime *string `locationName:"createdTime" min:"11" type:"string"`
11424
11425	// The label description.
11426	Description *string `locationName:"description" min:"1" type:"string"`
11427
11428	// Timestamp of when the label was last updated.
11429	LastUpdatedTime *string `locationName:"lastUpdatedTime" min:"11" type:"string"`
11430
11431	// The label name.
11432	Name *string `locationName:"name" type:"string"`
11433}
11434
11435// String returns the string representation
11436func (s Label) String() string {
11437	return awsutil.Prettify(s)
11438}
11439
11440// GoString returns the string representation
11441func (s Label) GoString() string {
11442	return s.String()
11443}
11444
11445// SetArn sets the Arn field's value.
11446func (s *Label) SetArn(v string) *Label {
11447	s.Arn = &v
11448	return s
11449}
11450
11451// SetCreatedTime sets the CreatedTime field's value.
11452func (s *Label) SetCreatedTime(v string) *Label {
11453	s.CreatedTime = &v
11454	return s
11455}
11456
11457// SetDescription sets the Description field's value.
11458func (s *Label) SetDescription(v string) *Label {
11459	s.Description = &v
11460	return s
11461}
11462
11463// SetLastUpdatedTime sets the LastUpdatedTime field's value.
11464func (s *Label) SetLastUpdatedTime(v string) *Label {
11465	s.LastUpdatedTime = &v
11466	return s
11467}
11468
11469// SetName sets the Name field's value.
11470func (s *Label) SetName(v string) *Label {
11471	s.Name = &v
11472	return s
11473}
11474
11475// The label schema.
11476type LabelSchema struct {
11477	_ struct{} `type:"structure"`
11478
11479	// The label mapper maps the Amazon Fraud Detector supported model classification
11480	// labels (FRAUD, LEGIT) to the appropriate event type labels. For example,
11481	// if "FRAUD" and "LEGIT" are Amazon Fraud Detector supported labels, this mapper
11482	// could be: {"FRAUD" => ["0"], "LEGIT" => ["1"]} or {"FRAUD" => ["false"],
11483	// "LEGIT" => ["true"]} or {"FRAUD" => ["fraud", "abuse"], "LEGIT" => ["legit",
11484	// "safe"]}. The value part of the mapper is a list, because you may have multiple
11485	// label variants from your event type for a single Amazon Fraud Detector label.
11486	//
11487	// LabelMapper is a required field
11488	LabelMapper map[string][]*string `locationName:"labelMapper" type:"map" required:"true"`
11489}
11490
11491// String returns the string representation
11492func (s LabelSchema) String() string {
11493	return awsutil.Prettify(s)
11494}
11495
11496// GoString returns the string representation
11497func (s LabelSchema) GoString() string {
11498	return s.String()
11499}
11500
11501// Validate inspects the fields of the type to determine if they are valid.
11502func (s *LabelSchema) Validate() error {
11503	invalidParams := request.ErrInvalidParams{Context: "LabelSchema"}
11504	if s.LabelMapper == nil {
11505		invalidParams.Add(request.NewErrParamRequired("LabelMapper"))
11506	}
11507
11508	if invalidParams.Len() > 0 {
11509		return invalidParams
11510	}
11511	return nil
11512}
11513
11514// SetLabelMapper sets the LabelMapper field's value.
11515func (s *LabelSchema) SetLabelMapper(v map[string][]*string) *LabelSchema {
11516	s.LabelMapper = v
11517	return s
11518}
11519
11520type ListTagsForResourceInput struct {
11521	_ struct{} `type:"structure"`
11522
11523	// The maximum number of objects to return for the request.
11524	MaxResults *int64 `locationName:"maxResults" min:"50" type:"integer"`
11525
11526	// The next token from the previous results.
11527	NextToken *string `locationName:"nextToken" type:"string"`
11528
11529	// The ARN that specifies the resource whose tags you want to list.
11530	//
11531	// ResourceARN is a required field
11532	ResourceARN *string `locationName:"resourceARN" min:"1" type:"string" required:"true"`
11533}
11534
11535// String returns the string representation
11536func (s ListTagsForResourceInput) String() string {
11537	return awsutil.Prettify(s)
11538}
11539
11540// GoString returns the string representation
11541func (s ListTagsForResourceInput) GoString() string {
11542	return s.String()
11543}
11544
11545// Validate inspects the fields of the type to determine if they are valid.
11546func (s *ListTagsForResourceInput) Validate() error {
11547	invalidParams := request.ErrInvalidParams{Context: "ListTagsForResourceInput"}
11548	if s.MaxResults != nil && *s.MaxResults < 50 {
11549		invalidParams.Add(request.NewErrParamMinValue("MaxResults", 50))
11550	}
11551	if s.ResourceARN == nil {
11552		invalidParams.Add(request.NewErrParamRequired("ResourceARN"))
11553	}
11554	if s.ResourceARN != nil && len(*s.ResourceARN) < 1 {
11555		invalidParams.Add(request.NewErrParamMinLen("ResourceARN", 1))
11556	}
11557
11558	if invalidParams.Len() > 0 {
11559		return invalidParams
11560	}
11561	return nil
11562}
11563
11564// SetMaxResults sets the MaxResults field's value.
11565func (s *ListTagsForResourceInput) SetMaxResults(v int64) *ListTagsForResourceInput {
11566	s.MaxResults = &v
11567	return s
11568}
11569
11570// SetNextToken sets the NextToken field's value.
11571func (s *ListTagsForResourceInput) SetNextToken(v string) *ListTagsForResourceInput {
11572	s.NextToken = &v
11573	return s
11574}
11575
11576// SetResourceARN sets the ResourceARN field's value.
11577func (s *ListTagsForResourceInput) SetResourceARN(v string) *ListTagsForResourceInput {
11578	s.ResourceARN = &v
11579	return s
11580}
11581
11582type ListTagsForResourceOutput struct {
11583	_ struct{} `type:"structure"`
11584
11585	// The next token for subsequent requests.
11586	NextToken *string `locationName:"nextToken" type:"string"`
11587
11588	// A collection of key and value pairs.
11589	Tags []*Tag `locationName:"tags" type:"list"`
11590}
11591
11592// String returns the string representation
11593func (s ListTagsForResourceOutput) String() string {
11594	return awsutil.Prettify(s)
11595}
11596
11597// GoString returns the string representation
11598func (s ListTagsForResourceOutput) GoString() string {
11599	return s.String()
11600}
11601
11602// SetNextToken sets the NextToken field's value.
11603func (s *ListTagsForResourceOutput) SetNextToken(v string) *ListTagsForResourceOutput {
11604	s.NextToken = &v
11605	return s
11606}
11607
11608// SetTags sets the Tags field's value.
11609func (s *ListTagsForResourceOutput) SetTags(v []*Tag) *ListTagsForResourceOutput {
11610	s.Tags = v
11611	return s
11612}
11613
11614// The log odds metric details.
11615type LogOddsMetric struct {
11616	_ struct{} `type:"structure"`
11617
11618	// The relative importance of the variable. For more information, see Model
11619	// variable importance (https://docs.aws.amazon.com/frauddetector/latest/ug/model-variable-importance.html).
11620	//
11621	// VariableImportance is a required field
11622	VariableImportance *float64 `locationName:"variableImportance" type:"float" required:"true"`
11623
11624	// The name of the variable.
11625	//
11626	// VariableName is a required field
11627	VariableName *string `locationName:"variableName" type:"string" required:"true"`
11628
11629	// The type of variable.
11630	//
11631	// VariableType is a required field
11632	VariableType *string `locationName:"variableType" type:"string" required:"true"`
11633}
11634
11635// String returns the string representation
11636func (s LogOddsMetric) String() string {
11637	return awsutil.Prettify(s)
11638}
11639
11640// GoString returns the string representation
11641func (s LogOddsMetric) GoString() string {
11642	return s.String()
11643}
11644
11645// SetVariableImportance sets the VariableImportance field's value.
11646func (s *LogOddsMetric) SetVariableImportance(v float64) *LogOddsMetric {
11647	s.VariableImportance = &v
11648	return s
11649}
11650
11651// SetVariableName sets the VariableName field's value.
11652func (s *LogOddsMetric) SetVariableName(v string) *LogOddsMetric {
11653	s.VariableName = &v
11654	return s
11655}
11656
11657// SetVariableType sets the VariableType field's value.
11658func (s *LogOddsMetric) SetVariableType(v string) *LogOddsMetric {
11659	s.VariableType = &v
11660	return s
11661}
11662
11663// Model performance metrics data points.
11664type MetricDataPoint struct {
11665	_ struct{} `type:"structure"`
11666
11667	// The false positive rate. This is the percentage of total legitimate events
11668	// that are incorrectly predicted as fraud.
11669	Fpr *float64 `locationName:"fpr" type:"float"`
11670
11671	// The percentage of fraud events correctly predicted as fraudulent as compared
11672	// to all events predicted as fraudulent.
11673	Precision *float64 `locationName:"precision" type:"float"`
11674
11675	// The model threshold that specifies an acceptable fraud capture rate. For
11676	// example, a threshold of 500 means any model score 500 or above is labeled
11677	// as fraud.
11678	Threshold *float64 `locationName:"threshold" type:"float"`
11679
11680	// The true positive rate. This is the percentage of total fraud the model detects.
11681	// Also known as capture rate.
11682	Tpr *float64 `locationName:"tpr" type:"float"`
11683}
11684
11685// String returns the string representation
11686func (s MetricDataPoint) String() string {
11687	return awsutil.Prettify(s)
11688}
11689
11690// GoString returns the string representation
11691func (s MetricDataPoint) GoString() string {
11692	return s.String()
11693}
11694
11695// SetFpr sets the Fpr field's value.
11696func (s *MetricDataPoint) SetFpr(v float64) *MetricDataPoint {
11697	s.Fpr = &v
11698	return s
11699}
11700
11701// SetPrecision sets the Precision field's value.
11702func (s *MetricDataPoint) SetPrecision(v float64) *MetricDataPoint {
11703	s.Precision = &v
11704	return s
11705}
11706
11707// SetThreshold sets the Threshold field's value.
11708func (s *MetricDataPoint) SetThreshold(v float64) *MetricDataPoint {
11709	s.Threshold = &v
11710	return s
11711}
11712
11713// SetTpr sets the Tpr field's value.
11714func (s *MetricDataPoint) SetTpr(v float64) *MetricDataPoint {
11715	s.Tpr = &v
11716	return s
11717}
11718
11719// The model.
11720type Model struct {
11721	_ struct{} `type:"structure"`
11722
11723	// The ARN of the model.
11724	Arn *string `locationName:"arn" min:"1" type:"string"`
11725
11726	// Timestamp of when the model was created.
11727	CreatedTime *string `locationName:"createdTime" min:"11" type:"string"`
11728
11729	// The model description.
11730	Description *string `locationName:"description" min:"1" type:"string"`
11731
11732	// The name of the event type.
11733	EventTypeName *string `locationName:"eventTypeName" type:"string"`
11734
11735	// Timestamp of last time the model was updated.
11736	LastUpdatedTime *string `locationName:"lastUpdatedTime" min:"11" type:"string"`
11737
11738	// The model ID.
11739	ModelId *string `locationName:"modelId" min:"1" type:"string"`
11740
11741	// The model type.
11742	ModelType *string `locationName:"modelType" type:"string" enum:"ModelTypeEnum"`
11743}
11744
11745// String returns the string representation
11746func (s Model) String() string {
11747	return awsutil.Prettify(s)
11748}
11749
11750// GoString returns the string representation
11751func (s Model) GoString() string {
11752	return s.String()
11753}
11754
11755// SetArn sets the Arn field's value.
11756func (s *Model) SetArn(v string) *Model {
11757	s.Arn = &v
11758	return s
11759}
11760
11761// SetCreatedTime sets the CreatedTime field's value.
11762func (s *Model) SetCreatedTime(v string) *Model {
11763	s.CreatedTime = &v
11764	return s
11765}
11766
11767// SetDescription sets the Description field's value.
11768func (s *Model) SetDescription(v string) *Model {
11769	s.Description = &v
11770	return s
11771}
11772
11773// SetEventTypeName sets the EventTypeName field's value.
11774func (s *Model) SetEventTypeName(v string) *Model {
11775	s.EventTypeName = &v
11776	return s
11777}
11778
11779// SetLastUpdatedTime sets the LastUpdatedTime field's value.
11780func (s *Model) SetLastUpdatedTime(v string) *Model {
11781	s.LastUpdatedTime = &v
11782	return s
11783}
11784
11785// SetModelId sets the ModelId field's value.
11786func (s *Model) SetModelId(v string) *Model {
11787	s.ModelId = &v
11788	return s
11789}
11790
11791// SetModelType sets the ModelType field's value.
11792func (s *Model) SetModelType(v string) *Model {
11793	s.ModelType = &v
11794	return s
11795}
11796
11797// A pre-formed Amazon SageMaker model input you can include if your detector
11798// version includes an imported Amazon SageMaker model endpoint with pass-through
11799// input configuration.
11800type ModelEndpointDataBlob struct {
11801	_ struct{} `type:"structure"`
11802
11803	// The byte buffer of the Amazon SageMaker model endpoint input data blob.
11804	//
11805	// ByteBuffer is automatically base64 encoded/decoded by the SDK.
11806	ByteBuffer []byte `locationName:"byteBuffer" type:"blob"`
11807
11808	// The content type of the Amazon SageMaker model endpoint input data blob.
11809	ContentType *string `locationName:"contentType" min:"1" type:"string"`
11810}
11811
11812// String returns the string representation
11813func (s ModelEndpointDataBlob) String() string {
11814	return awsutil.Prettify(s)
11815}
11816
11817// GoString returns the string representation
11818func (s ModelEndpointDataBlob) GoString() string {
11819	return s.String()
11820}
11821
11822// Validate inspects the fields of the type to determine if they are valid.
11823func (s *ModelEndpointDataBlob) Validate() error {
11824	invalidParams := request.ErrInvalidParams{Context: "ModelEndpointDataBlob"}
11825	if s.ContentType != nil && len(*s.ContentType) < 1 {
11826		invalidParams.Add(request.NewErrParamMinLen("ContentType", 1))
11827	}
11828
11829	if invalidParams.Len() > 0 {
11830		return invalidParams
11831	}
11832	return nil
11833}
11834
11835// SetByteBuffer sets the ByteBuffer field's value.
11836func (s *ModelEndpointDataBlob) SetByteBuffer(v []byte) *ModelEndpointDataBlob {
11837	s.ByteBuffer = v
11838	return s
11839}
11840
11841// SetContentType sets the ContentType field's value.
11842func (s *ModelEndpointDataBlob) SetContentType(v string) *ModelEndpointDataBlob {
11843	s.ContentType = &v
11844	return s
11845}
11846
11847// The Amazon SageMaker model input configuration.
11848type ModelInputConfiguration struct {
11849	_ struct{} `type:"structure"`
11850
11851	// Template for constructing the CSV input-data sent to SageMaker. At event-evaluation,
11852	// the placeholders for variable-names in the template will be replaced with
11853	// the variable values before being sent to SageMaker.
11854	CsvInputTemplate *string `locationName:"csvInputTemplate" type:"string"`
11855
11856	// The event type name.
11857	EventTypeName *string `locationName:"eventTypeName" min:"1" type:"string"`
11858
11859	// The format of the model input configuration. The format differs depending
11860	// on if it is passed through to SageMaker or constructed by Amazon Fraud Detector.
11861	Format *string `locationName:"format" type:"string" enum:"ModelInputDataFormat"`
11862
11863	// Template for constructing the JSON input-data sent to SageMaker. At event-evaluation,
11864	// the placeholders for variable names in the template will be replaced with
11865	// the variable values before being sent to SageMaker.
11866	JsonInputTemplate *string `locationName:"jsonInputTemplate" type:"string"`
11867
11868	// The event variables.
11869	//
11870	// UseEventVariables is a required field
11871	UseEventVariables *bool `locationName:"useEventVariables" type:"boolean" required:"true"`
11872}
11873
11874// String returns the string representation
11875func (s ModelInputConfiguration) String() string {
11876	return awsutil.Prettify(s)
11877}
11878
11879// GoString returns the string representation
11880func (s ModelInputConfiguration) GoString() string {
11881	return s.String()
11882}
11883
11884// Validate inspects the fields of the type to determine if they are valid.
11885func (s *ModelInputConfiguration) Validate() error {
11886	invalidParams := request.ErrInvalidParams{Context: "ModelInputConfiguration"}
11887	if s.EventTypeName != nil && len(*s.EventTypeName) < 1 {
11888		invalidParams.Add(request.NewErrParamMinLen("EventTypeName", 1))
11889	}
11890	if s.UseEventVariables == nil {
11891		invalidParams.Add(request.NewErrParamRequired("UseEventVariables"))
11892	}
11893
11894	if invalidParams.Len() > 0 {
11895		return invalidParams
11896	}
11897	return nil
11898}
11899
11900// SetCsvInputTemplate sets the CsvInputTemplate field's value.
11901func (s *ModelInputConfiguration) SetCsvInputTemplate(v string) *ModelInputConfiguration {
11902	s.CsvInputTemplate = &v
11903	return s
11904}
11905
11906// SetEventTypeName sets the EventTypeName field's value.
11907func (s *ModelInputConfiguration) SetEventTypeName(v string) *ModelInputConfiguration {
11908	s.EventTypeName = &v
11909	return s
11910}
11911
11912// SetFormat sets the Format field's value.
11913func (s *ModelInputConfiguration) SetFormat(v string) *ModelInputConfiguration {
11914	s.Format = &v
11915	return s
11916}
11917
11918// SetJsonInputTemplate sets the JsonInputTemplate field's value.
11919func (s *ModelInputConfiguration) SetJsonInputTemplate(v string) *ModelInputConfiguration {
11920	s.JsonInputTemplate = &v
11921	return s
11922}
11923
11924// SetUseEventVariables sets the UseEventVariables field's value.
11925func (s *ModelInputConfiguration) SetUseEventVariables(v bool) *ModelInputConfiguration {
11926	s.UseEventVariables = &v
11927	return s
11928}
11929
11930// Provides the Amazon Sagemaker model output configuration.
11931type ModelOutputConfiguration struct {
11932	_ struct{} `type:"structure"`
11933
11934	// A map of CSV index values in the SageMaker response to the Amazon Fraud Detector
11935	// variables.
11936	CsvIndexToVariableMap map[string]*string `locationName:"csvIndexToVariableMap" type:"map"`
11937
11938	// The format of the model output configuration.
11939	//
11940	// Format is a required field
11941	Format *string `locationName:"format" type:"string" required:"true" enum:"ModelOutputDataFormat"`
11942
11943	// A map of JSON keys in response from SageMaker to the Amazon Fraud Detector
11944	// variables.
11945	JsonKeyToVariableMap map[string]*string `locationName:"jsonKeyToVariableMap" type:"map"`
11946}
11947
11948// String returns the string representation
11949func (s ModelOutputConfiguration) String() string {
11950	return awsutil.Prettify(s)
11951}
11952
11953// GoString returns the string representation
11954func (s ModelOutputConfiguration) GoString() string {
11955	return s.String()
11956}
11957
11958// Validate inspects the fields of the type to determine if they are valid.
11959func (s *ModelOutputConfiguration) Validate() error {
11960	invalidParams := request.ErrInvalidParams{Context: "ModelOutputConfiguration"}
11961	if s.Format == nil {
11962		invalidParams.Add(request.NewErrParamRequired("Format"))
11963	}
11964
11965	if invalidParams.Len() > 0 {
11966		return invalidParams
11967	}
11968	return nil
11969}
11970
11971// SetCsvIndexToVariableMap sets the CsvIndexToVariableMap field's value.
11972func (s *ModelOutputConfiguration) SetCsvIndexToVariableMap(v map[string]*string) *ModelOutputConfiguration {
11973	s.CsvIndexToVariableMap = v
11974	return s
11975}
11976
11977// SetFormat sets the Format field's value.
11978func (s *ModelOutputConfiguration) SetFormat(v string) *ModelOutputConfiguration {
11979	s.Format = &v
11980	return s
11981}
11982
11983// SetJsonKeyToVariableMap sets the JsonKeyToVariableMap field's value.
11984func (s *ModelOutputConfiguration) SetJsonKeyToVariableMap(v map[string]*string) *ModelOutputConfiguration {
11985	s.JsonKeyToVariableMap = v
11986	return s
11987}
11988
11989// The fraud prediction scores.
11990type ModelScores struct {
11991	_ struct{} `type:"structure"`
11992
11993	// The model version.
11994	ModelVersion *ModelVersion `locationName:"modelVersion" type:"structure"`
11995
11996	// The model's fraud prediction scores.
11997	Scores map[string]*float64 `locationName:"scores" type:"map"`
11998}
11999
12000// String returns the string representation
12001func (s ModelScores) String() string {
12002	return awsutil.Prettify(s)
12003}
12004
12005// GoString returns the string representation
12006func (s ModelScores) GoString() string {
12007	return s.String()
12008}
12009
12010// SetModelVersion sets the ModelVersion field's value.
12011func (s *ModelScores) SetModelVersion(v *ModelVersion) *ModelScores {
12012	s.ModelVersion = v
12013	return s
12014}
12015
12016// SetScores sets the Scores field's value.
12017func (s *ModelScores) SetScores(v map[string]*float64) *ModelScores {
12018	s.Scores = v
12019	return s
12020}
12021
12022// The model version.
12023type ModelVersion struct {
12024	_ struct{} `type:"structure"`
12025
12026	// The model version ARN.
12027	Arn *string `locationName:"arn" min:"1" type:"string"`
12028
12029	// The model ID.
12030	//
12031	// ModelId is a required field
12032	ModelId *string `locationName:"modelId" min:"1" type:"string" required:"true"`
12033
12034	// The model type.
12035	//
12036	// ModelType is a required field
12037	ModelType *string `locationName:"modelType" type:"string" required:"true" enum:"ModelTypeEnum"`
12038
12039	// The model version number.
12040	//
12041	// ModelVersionNumber is a required field
12042	ModelVersionNumber *string `locationName:"modelVersionNumber" min:"1" type:"string" required:"true"`
12043}
12044
12045// String returns the string representation
12046func (s ModelVersion) String() string {
12047	return awsutil.Prettify(s)
12048}
12049
12050// GoString returns the string representation
12051func (s ModelVersion) GoString() string {
12052	return s.String()
12053}
12054
12055// Validate inspects the fields of the type to determine if they are valid.
12056func (s *ModelVersion) Validate() error {
12057	invalidParams := request.ErrInvalidParams{Context: "ModelVersion"}
12058	if s.Arn != nil && len(*s.Arn) < 1 {
12059		invalidParams.Add(request.NewErrParamMinLen("Arn", 1))
12060	}
12061	if s.ModelId == nil {
12062		invalidParams.Add(request.NewErrParamRequired("ModelId"))
12063	}
12064	if s.ModelId != nil && len(*s.ModelId) < 1 {
12065		invalidParams.Add(request.NewErrParamMinLen("ModelId", 1))
12066	}
12067	if s.ModelType == nil {
12068		invalidParams.Add(request.NewErrParamRequired("ModelType"))
12069	}
12070	if s.ModelVersionNumber == nil {
12071		invalidParams.Add(request.NewErrParamRequired("ModelVersionNumber"))
12072	}
12073	if s.ModelVersionNumber != nil && len(*s.ModelVersionNumber) < 1 {
12074		invalidParams.Add(request.NewErrParamMinLen("ModelVersionNumber", 1))
12075	}
12076
12077	if invalidParams.Len() > 0 {
12078		return invalidParams
12079	}
12080	return nil
12081}
12082
12083// SetArn sets the Arn field's value.
12084func (s *ModelVersion) SetArn(v string) *ModelVersion {
12085	s.Arn = &v
12086	return s
12087}
12088
12089// SetModelId sets the ModelId field's value.
12090func (s *ModelVersion) SetModelId(v string) *ModelVersion {
12091	s.ModelId = &v
12092	return s
12093}
12094
12095// SetModelType sets the ModelType field's value.
12096func (s *ModelVersion) SetModelType(v string) *ModelVersion {
12097	s.ModelType = &v
12098	return s
12099}
12100
12101// SetModelVersionNumber sets the ModelVersionNumber field's value.
12102func (s *ModelVersion) SetModelVersionNumber(v string) *ModelVersion {
12103	s.ModelVersionNumber = &v
12104	return s
12105}
12106
12107// The details of the model version.
12108type ModelVersionDetail struct {
12109	_ struct{} `type:"structure"`
12110
12111	// The model version ARN.
12112	Arn *string `locationName:"arn" min:"1" type:"string"`
12113
12114	// The timestamp when the model was created.
12115	CreatedTime *string `locationName:"createdTime" min:"11" type:"string"`
12116
12117	// The event details.
12118	ExternalEventsDetail *ExternalEventsDetail `locationName:"externalEventsDetail" type:"structure"`
12119
12120	// The timestamp when the model was last updated.
12121	LastUpdatedTime *string `locationName:"lastUpdatedTime" min:"11" type:"string"`
12122
12123	// The model ID.
12124	ModelId *string `locationName:"modelId" min:"1" type:"string"`
12125
12126	// The model type.
12127	ModelType *string `locationName:"modelType" type:"string" enum:"ModelTypeEnum"`
12128
12129	// The model version number.
12130	ModelVersionNumber *string `locationName:"modelVersionNumber" min:"3" type:"string"`
12131
12132	// The status of the model version.
12133	Status *string `locationName:"status" type:"string"`
12134
12135	// The training data schema.
12136	TrainingDataSchema *TrainingDataSchema `locationName:"trainingDataSchema" type:"structure"`
12137
12138	// The model version training data source.
12139	TrainingDataSource *string `locationName:"trainingDataSource" type:"string" enum:"TrainingDataSourceEnum"`
12140
12141	// The training results.
12142	TrainingResult *TrainingResult `locationName:"trainingResult" type:"structure"`
12143}
12144
12145// String returns the string representation
12146func (s ModelVersionDetail) String() string {
12147	return awsutil.Prettify(s)
12148}
12149
12150// GoString returns the string representation
12151func (s ModelVersionDetail) GoString() string {
12152	return s.String()
12153}
12154
12155// SetArn sets the Arn field's value.
12156func (s *ModelVersionDetail) SetArn(v string) *ModelVersionDetail {
12157	s.Arn = &v
12158	return s
12159}
12160
12161// SetCreatedTime sets the CreatedTime field's value.
12162func (s *ModelVersionDetail) SetCreatedTime(v string) *ModelVersionDetail {
12163	s.CreatedTime = &v
12164	return s
12165}
12166
12167// SetExternalEventsDetail sets the ExternalEventsDetail field's value.
12168func (s *ModelVersionDetail) SetExternalEventsDetail(v *ExternalEventsDetail) *ModelVersionDetail {
12169	s.ExternalEventsDetail = v
12170	return s
12171}
12172
12173// SetLastUpdatedTime sets the LastUpdatedTime field's value.
12174func (s *ModelVersionDetail) SetLastUpdatedTime(v string) *ModelVersionDetail {
12175	s.LastUpdatedTime = &v
12176	return s
12177}
12178
12179// SetModelId sets the ModelId field's value.
12180func (s *ModelVersionDetail) SetModelId(v string) *ModelVersionDetail {
12181	s.ModelId = &v
12182	return s
12183}
12184
12185// SetModelType sets the ModelType field's value.
12186func (s *ModelVersionDetail) SetModelType(v string) *ModelVersionDetail {
12187	s.ModelType = &v
12188	return s
12189}
12190
12191// SetModelVersionNumber sets the ModelVersionNumber field's value.
12192func (s *ModelVersionDetail) SetModelVersionNumber(v string) *ModelVersionDetail {
12193	s.ModelVersionNumber = &v
12194	return s
12195}
12196
12197// SetStatus sets the Status field's value.
12198func (s *ModelVersionDetail) SetStatus(v string) *ModelVersionDetail {
12199	s.Status = &v
12200	return s
12201}
12202
12203// SetTrainingDataSchema sets the TrainingDataSchema field's value.
12204func (s *ModelVersionDetail) SetTrainingDataSchema(v *TrainingDataSchema) *ModelVersionDetail {
12205	s.TrainingDataSchema = v
12206	return s
12207}
12208
12209// SetTrainingDataSource sets the TrainingDataSource field's value.
12210func (s *ModelVersionDetail) SetTrainingDataSource(v string) *ModelVersionDetail {
12211	s.TrainingDataSource = &v
12212	return s
12213}
12214
12215// SetTrainingResult sets the TrainingResult field's value.
12216func (s *ModelVersionDetail) SetTrainingResult(v *TrainingResult) *ModelVersionDetail {
12217	s.TrainingResult = v
12218	return s
12219}
12220
12221// The outcome.
12222type Outcome struct {
12223	_ struct{} `type:"structure"`
12224
12225	// The outcome ARN.
12226	Arn *string `locationName:"arn" min:"1" type:"string"`
12227
12228	// The timestamp when the outcome was created.
12229	CreatedTime *string `locationName:"createdTime" min:"11" type:"string"`
12230
12231	// The outcome description.
12232	Description *string `locationName:"description" min:"1" type:"string"`
12233
12234	// The timestamp when the outcome was last updated.
12235	LastUpdatedTime *string `locationName:"lastUpdatedTime" min:"11" type:"string"`
12236
12237	// The outcome name.
12238	Name *string `locationName:"name" min:"1" type:"string"`
12239}
12240
12241// String returns the string representation
12242func (s Outcome) String() string {
12243	return awsutil.Prettify(s)
12244}
12245
12246// GoString returns the string representation
12247func (s Outcome) GoString() string {
12248	return s.String()
12249}
12250
12251// SetArn sets the Arn field's value.
12252func (s *Outcome) SetArn(v string) *Outcome {
12253	s.Arn = &v
12254	return s
12255}
12256
12257// SetCreatedTime sets the CreatedTime field's value.
12258func (s *Outcome) SetCreatedTime(v string) *Outcome {
12259	s.CreatedTime = &v
12260	return s
12261}
12262
12263// SetDescription sets the Description field's value.
12264func (s *Outcome) SetDescription(v string) *Outcome {
12265	s.Description = &v
12266	return s
12267}
12268
12269// SetLastUpdatedTime sets the LastUpdatedTime field's value.
12270func (s *Outcome) SetLastUpdatedTime(v string) *Outcome {
12271	s.LastUpdatedTime = &v
12272	return s
12273}
12274
12275// SetName sets the Name field's value.
12276func (s *Outcome) SetName(v string) *Outcome {
12277	s.Name = &v
12278	return s
12279}
12280
12281type PutDetectorInput struct {
12282	_ struct{} `type:"structure"`
12283
12284	// The description of the detector.
12285	Description *string `locationName:"description" min:"1" type:"string"`
12286
12287	// The detector ID.
12288	//
12289	// DetectorId is a required field
12290	DetectorId *string `locationName:"detectorId" min:"1" type:"string" required:"true"`
12291
12292	// The name of the event type.
12293	//
12294	// EventTypeName is a required field
12295	EventTypeName *string `locationName:"eventTypeName" min:"1" type:"string" required:"true"`
12296
12297	// A collection of key and value pairs.
12298	Tags []*Tag `locationName:"tags" type:"list"`
12299}
12300
12301// String returns the string representation
12302func (s PutDetectorInput) String() string {
12303	return awsutil.Prettify(s)
12304}
12305
12306// GoString returns the string representation
12307func (s PutDetectorInput) GoString() string {
12308	return s.String()
12309}
12310
12311// Validate inspects the fields of the type to determine if they are valid.
12312func (s *PutDetectorInput) Validate() error {
12313	invalidParams := request.ErrInvalidParams{Context: "PutDetectorInput"}
12314	if s.Description != nil && len(*s.Description) < 1 {
12315		invalidParams.Add(request.NewErrParamMinLen("Description", 1))
12316	}
12317	if s.DetectorId == nil {
12318		invalidParams.Add(request.NewErrParamRequired("DetectorId"))
12319	}
12320	if s.DetectorId != nil && len(*s.DetectorId) < 1 {
12321		invalidParams.Add(request.NewErrParamMinLen("DetectorId", 1))
12322	}
12323	if s.EventTypeName == nil {
12324		invalidParams.Add(request.NewErrParamRequired("EventTypeName"))
12325	}
12326	if s.EventTypeName != nil && len(*s.EventTypeName) < 1 {
12327		invalidParams.Add(request.NewErrParamMinLen("EventTypeName", 1))
12328	}
12329	if s.Tags != nil {
12330		for i, v := range s.Tags {
12331			if v == nil {
12332				continue
12333			}
12334			if err := v.Validate(); err != nil {
12335				invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Tags", i), err.(request.ErrInvalidParams))
12336			}
12337		}
12338	}
12339
12340	if invalidParams.Len() > 0 {
12341		return invalidParams
12342	}
12343	return nil
12344}
12345
12346// SetDescription sets the Description field's value.
12347func (s *PutDetectorInput) SetDescription(v string) *PutDetectorInput {
12348	s.Description = &v
12349	return s
12350}
12351
12352// SetDetectorId sets the DetectorId field's value.
12353func (s *PutDetectorInput) SetDetectorId(v string) *PutDetectorInput {
12354	s.DetectorId = &v
12355	return s
12356}
12357
12358// SetEventTypeName sets the EventTypeName field's value.
12359func (s *PutDetectorInput) SetEventTypeName(v string) *PutDetectorInput {
12360	s.EventTypeName = &v
12361	return s
12362}
12363
12364// SetTags sets the Tags field's value.
12365func (s *PutDetectorInput) SetTags(v []*Tag) *PutDetectorInput {
12366	s.Tags = v
12367	return s
12368}
12369
12370type PutDetectorOutput struct {
12371	_ struct{} `type:"structure"`
12372}
12373
12374// String returns the string representation
12375func (s PutDetectorOutput) String() string {
12376	return awsutil.Prettify(s)
12377}
12378
12379// GoString returns the string representation
12380func (s PutDetectorOutput) GoString() string {
12381	return s.String()
12382}
12383
12384type PutEntityTypeInput struct {
12385	_ struct{} `type:"structure"`
12386
12387	// The description.
12388	Description *string `locationName:"description" min:"1" type:"string"`
12389
12390	// The name of the entity type.
12391	//
12392	// Name is a required field
12393	Name *string `locationName:"name" min:"1" type:"string" required:"true"`
12394
12395	// A collection of key and value pairs.
12396	Tags []*Tag `locationName:"tags" type:"list"`
12397}
12398
12399// String returns the string representation
12400func (s PutEntityTypeInput) String() string {
12401	return awsutil.Prettify(s)
12402}
12403
12404// GoString returns the string representation
12405func (s PutEntityTypeInput) GoString() string {
12406	return s.String()
12407}
12408
12409// Validate inspects the fields of the type to determine if they are valid.
12410func (s *PutEntityTypeInput) Validate() error {
12411	invalidParams := request.ErrInvalidParams{Context: "PutEntityTypeInput"}
12412	if s.Description != nil && len(*s.Description) < 1 {
12413		invalidParams.Add(request.NewErrParamMinLen("Description", 1))
12414	}
12415	if s.Name == nil {
12416		invalidParams.Add(request.NewErrParamRequired("Name"))
12417	}
12418	if s.Name != nil && len(*s.Name) < 1 {
12419		invalidParams.Add(request.NewErrParamMinLen("Name", 1))
12420	}
12421	if s.Tags != nil {
12422		for i, v := range s.Tags {
12423			if v == nil {
12424				continue
12425			}
12426			if err := v.Validate(); err != nil {
12427				invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Tags", i), err.(request.ErrInvalidParams))
12428			}
12429		}
12430	}
12431
12432	if invalidParams.Len() > 0 {
12433		return invalidParams
12434	}
12435	return nil
12436}
12437
12438// SetDescription sets the Description field's value.
12439func (s *PutEntityTypeInput) SetDescription(v string) *PutEntityTypeInput {
12440	s.Description = &v
12441	return s
12442}
12443
12444// SetName sets the Name field's value.
12445func (s *PutEntityTypeInput) SetName(v string) *PutEntityTypeInput {
12446	s.Name = &v
12447	return s
12448}
12449
12450// SetTags sets the Tags field's value.
12451func (s *PutEntityTypeInput) SetTags(v []*Tag) *PutEntityTypeInput {
12452	s.Tags = v
12453	return s
12454}
12455
12456type PutEntityTypeOutput struct {
12457	_ struct{} `type:"structure"`
12458}
12459
12460// String returns the string representation
12461func (s PutEntityTypeOutput) String() string {
12462	return awsutil.Prettify(s)
12463}
12464
12465// GoString returns the string representation
12466func (s PutEntityTypeOutput) GoString() string {
12467	return s.String()
12468}
12469
12470type PutEventTypeInput struct {
12471	_ struct{} `type:"structure"`
12472
12473	// The description of the event type.
12474	Description *string `locationName:"description" min:"1" type:"string"`
12475
12476	// The entity type for the event type. Example entity types: customer, merchant,
12477	// account.
12478	//
12479	// EntityTypes is a required field
12480	EntityTypes []*string `locationName:"entityTypes" min:"1" type:"list" required:"true"`
12481
12482	// The event type variables.
12483	//
12484	// EventVariables is a required field
12485	EventVariables []*string `locationName:"eventVariables" min:"1" type:"list" required:"true"`
12486
12487	// The event type labels.
12488	Labels []*string `locationName:"labels" type:"list"`
12489
12490	// The name.
12491	//
12492	// Name is a required field
12493	Name *string `locationName:"name" min:"1" type:"string" required:"true"`
12494
12495	// A collection of key and value pairs.
12496	Tags []*Tag `locationName:"tags" type:"list"`
12497}
12498
12499// String returns the string representation
12500func (s PutEventTypeInput) String() string {
12501	return awsutil.Prettify(s)
12502}
12503
12504// GoString returns the string representation
12505func (s PutEventTypeInput) GoString() string {
12506	return s.String()
12507}
12508
12509// Validate inspects the fields of the type to determine if they are valid.
12510func (s *PutEventTypeInput) Validate() error {
12511	invalidParams := request.ErrInvalidParams{Context: "PutEventTypeInput"}
12512	if s.Description != nil && len(*s.Description) < 1 {
12513		invalidParams.Add(request.NewErrParamMinLen("Description", 1))
12514	}
12515	if s.EntityTypes == nil {
12516		invalidParams.Add(request.NewErrParamRequired("EntityTypes"))
12517	}
12518	if s.EntityTypes != nil && len(s.EntityTypes) < 1 {
12519		invalidParams.Add(request.NewErrParamMinLen("EntityTypes", 1))
12520	}
12521	if s.EventVariables == nil {
12522		invalidParams.Add(request.NewErrParamRequired("EventVariables"))
12523	}
12524	if s.EventVariables != nil && len(s.EventVariables) < 1 {
12525		invalidParams.Add(request.NewErrParamMinLen("EventVariables", 1))
12526	}
12527	if s.Name == nil {
12528		invalidParams.Add(request.NewErrParamRequired("Name"))
12529	}
12530	if s.Name != nil && len(*s.Name) < 1 {
12531		invalidParams.Add(request.NewErrParamMinLen("Name", 1))
12532	}
12533	if s.Tags != nil {
12534		for i, v := range s.Tags {
12535			if v == nil {
12536				continue
12537			}
12538			if err := v.Validate(); err != nil {
12539				invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Tags", i), err.(request.ErrInvalidParams))
12540			}
12541		}
12542	}
12543
12544	if invalidParams.Len() > 0 {
12545		return invalidParams
12546	}
12547	return nil
12548}
12549
12550// SetDescription sets the Description field's value.
12551func (s *PutEventTypeInput) SetDescription(v string) *PutEventTypeInput {
12552	s.Description = &v
12553	return s
12554}
12555
12556// SetEntityTypes sets the EntityTypes field's value.
12557func (s *PutEventTypeInput) SetEntityTypes(v []*string) *PutEventTypeInput {
12558	s.EntityTypes = v
12559	return s
12560}
12561
12562// SetEventVariables sets the EventVariables field's value.
12563func (s *PutEventTypeInput) SetEventVariables(v []*string) *PutEventTypeInput {
12564	s.EventVariables = v
12565	return s
12566}
12567
12568// SetLabels sets the Labels field's value.
12569func (s *PutEventTypeInput) SetLabels(v []*string) *PutEventTypeInput {
12570	s.Labels = v
12571	return s
12572}
12573
12574// SetName sets the Name field's value.
12575func (s *PutEventTypeInput) SetName(v string) *PutEventTypeInput {
12576	s.Name = &v
12577	return s
12578}
12579
12580// SetTags sets the Tags field's value.
12581func (s *PutEventTypeInput) SetTags(v []*Tag) *PutEventTypeInput {
12582	s.Tags = v
12583	return s
12584}
12585
12586type PutEventTypeOutput struct {
12587	_ struct{} `type:"structure"`
12588}
12589
12590// String returns the string representation
12591func (s PutEventTypeOutput) String() string {
12592	return awsutil.Prettify(s)
12593}
12594
12595// GoString returns the string representation
12596func (s PutEventTypeOutput) GoString() string {
12597	return s.String()
12598}
12599
12600type PutExternalModelInput struct {
12601	_ struct{} `type:"structure"`
12602
12603	// The model endpoint input configuration.
12604	//
12605	// InputConfiguration is a required field
12606	InputConfiguration *ModelInputConfiguration `locationName:"inputConfiguration" type:"structure" required:"true"`
12607
12608	// The IAM role used to invoke the model endpoint.
12609	//
12610	// InvokeModelEndpointRoleArn is a required field
12611	InvokeModelEndpointRoleArn *string `locationName:"invokeModelEndpointRoleArn" type:"string" required:"true"`
12612
12613	// The model endpoints name.
12614	//
12615	// ModelEndpoint is a required field
12616	ModelEndpoint *string `locationName:"modelEndpoint" min:"1" type:"string" required:"true"`
12617
12618	// The model endpoint’s status in Amazon Fraud Detector.
12619	//
12620	// ModelEndpointStatus is a required field
12621	ModelEndpointStatus *string `locationName:"modelEndpointStatus" type:"string" required:"true" enum:"ModelEndpointStatus"`
12622
12623	// The source of the model.
12624	//
12625	// ModelSource is a required field
12626	ModelSource *string `locationName:"modelSource" type:"string" required:"true" enum:"ModelSource"`
12627
12628	// The model endpoint output configuration.
12629	//
12630	// OutputConfiguration is a required field
12631	OutputConfiguration *ModelOutputConfiguration `locationName:"outputConfiguration" type:"structure" required:"true"`
12632
12633	// A collection of key and value pairs.
12634	Tags []*Tag `locationName:"tags" type:"list"`
12635}
12636
12637// String returns the string representation
12638func (s PutExternalModelInput) String() string {
12639	return awsutil.Prettify(s)
12640}
12641
12642// GoString returns the string representation
12643func (s PutExternalModelInput) GoString() string {
12644	return s.String()
12645}
12646
12647// Validate inspects the fields of the type to determine if they are valid.
12648func (s *PutExternalModelInput) Validate() error {
12649	invalidParams := request.ErrInvalidParams{Context: "PutExternalModelInput"}
12650	if s.InputConfiguration == nil {
12651		invalidParams.Add(request.NewErrParamRequired("InputConfiguration"))
12652	}
12653	if s.InvokeModelEndpointRoleArn == nil {
12654		invalidParams.Add(request.NewErrParamRequired("InvokeModelEndpointRoleArn"))
12655	}
12656	if s.ModelEndpoint == nil {
12657		invalidParams.Add(request.NewErrParamRequired("ModelEndpoint"))
12658	}
12659	if s.ModelEndpoint != nil && len(*s.ModelEndpoint) < 1 {
12660		invalidParams.Add(request.NewErrParamMinLen("ModelEndpoint", 1))
12661	}
12662	if s.ModelEndpointStatus == nil {
12663		invalidParams.Add(request.NewErrParamRequired("ModelEndpointStatus"))
12664	}
12665	if s.ModelSource == nil {
12666		invalidParams.Add(request.NewErrParamRequired("ModelSource"))
12667	}
12668	if s.OutputConfiguration == nil {
12669		invalidParams.Add(request.NewErrParamRequired("OutputConfiguration"))
12670	}
12671	if s.InputConfiguration != nil {
12672		if err := s.InputConfiguration.Validate(); err != nil {
12673			invalidParams.AddNested("InputConfiguration", err.(request.ErrInvalidParams))
12674		}
12675	}
12676	if s.OutputConfiguration != nil {
12677		if err := s.OutputConfiguration.Validate(); err != nil {
12678			invalidParams.AddNested("OutputConfiguration", err.(request.ErrInvalidParams))
12679		}
12680	}
12681	if s.Tags != nil {
12682		for i, v := range s.Tags {
12683			if v == nil {
12684				continue
12685			}
12686			if err := v.Validate(); err != nil {
12687				invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Tags", i), err.(request.ErrInvalidParams))
12688			}
12689		}
12690	}
12691
12692	if invalidParams.Len() > 0 {
12693		return invalidParams
12694	}
12695	return nil
12696}
12697
12698// SetInputConfiguration sets the InputConfiguration field's value.
12699func (s *PutExternalModelInput) SetInputConfiguration(v *ModelInputConfiguration) *PutExternalModelInput {
12700	s.InputConfiguration = v
12701	return s
12702}
12703
12704// SetInvokeModelEndpointRoleArn sets the InvokeModelEndpointRoleArn field's value.
12705func (s *PutExternalModelInput) SetInvokeModelEndpointRoleArn(v string) *PutExternalModelInput {
12706	s.InvokeModelEndpointRoleArn = &v
12707	return s
12708}
12709
12710// SetModelEndpoint sets the ModelEndpoint field's value.
12711func (s *PutExternalModelInput) SetModelEndpoint(v string) *PutExternalModelInput {
12712	s.ModelEndpoint = &v
12713	return s
12714}
12715
12716// SetModelEndpointStatus sets the ModelEndpointStatus field's value.
12717func (s *PutExternalModelInput) SetModelEndpointStatus(v string) *PutExternalModelInput {
12718	s.ModelEndpointStatus = &v
12719	return s
12720}
12721
12722// SetModelSource sets the ModelSource field's value.
12723func (s *PutExternalModelInput) SetModelSource(v string) *PutExternalModelInput {
12724	s.ModelSource = &v
12725	return s
12726}
12727
12728// SetOutputConfiguration sets the OutputConfiguration field's value.
12729func (s *PutExternalModelInput) SetOutputConfiguration(v *ModelOutputConfiguration) *PutExternalModelInput {
12730	s.OutputConfiguration = v
12731	return s
12732}
12733
12734// SetTags sets the Tags field's value.
12735func (s *PutExternalModelInput) SetTags(v []*Tag) *PutExternalModelInput {
12736	s.Tags = v
12737	return s
12738}
12739
12740type PutExternalModelOutput struct {
12741	_ struct{} `type:"structure"`
12742}
12743
12744// String returns the string representation
12745func (s PutExternalModelOutput) String() string {
12746	return awsutil.Prettify(s)
12747}
12748
12749// GoString returns the string representation
12750func (s PutExternalModelOutput) GoString() string {
12751	return s.String()
12752}
12753
12754type PutKMSEncryptionKeyInput struct {
12755	_ struct{} `type:"structure"`
12756
12757	// The KMS encryption key ARN.
12758	//
12759	// KmsEncryptionKeyArn is a required field
12760	KmsEncryptionKeyArn *string `locationName:"kmsEncryptionKeyArn" min:"7" type:"string" required:"true"`
12761}
12762
12763// String returns the string representation
12764func (s PutKMSEncryptionKeyInput) String() string {
12765	return awsutil.Prettify(s)
12766}
12767
12768// GoString returns the string representation
12769func (s PutKMSEncryptionKeyInput) GoString() string {
12770	return s.String()
12771}
12772
12773// Validate inspects the fields of the type to determine if they are valid.
12774func (s *PutKMSEncryptionKeyInput) Validate() error {
12775	invalidParams := request.ErrInvalidParams{Context: "PutKMSEncryptionKeyInput"}
12776	if s.KmsEncryptionKeyArn == nil {
12777		invalidParams.Add(request.NewErrParamRequired("KmsEncryptionKeyArn"))
12778	}
12779	if s.KmsEncryptionKeyArn != nil && len(*s.KmsEncryptionKeyArn) < 7 {
12780		invalidParams.Add(request.NewErrParamMinLen("KmsEncryptionKeyArn", 7))
12781	}
12782
12783	if invalidParams.Len() > 0 {
12784		return invalidParams
12785	}
12786	return nil
12787}
12788
12789// SetKmsEncryptionKeyArn sets the KmsEncryptionKeyArn field's value.
12790func (s *PutKMSEncryptionKeyInput) SetKmsEncryptionKeyArn(v string) *PutKMSEncryptionKeyInput {
12791	s.KmsEncryptionKeyArn = &v
12792	return s
12793}
12794
12795type PutKMSEncryptionKeyOutput struct {
12796	_ struct{} `type:"structure"`
12797}
12798
12799// String returns the string representation
12800func (s PutKMSEncryptionKeyOutput) String() string {
12801	return awsutil.Prettify(s)
12802}
12803
12804// GoString returns the string representation
12805func (s PutKMSEncryptionKeyOutput) GoString() string {
12806	return s.String()
12807}
12808
12809type PutLabelInput struct {
12810	_ struct{} `type:"structure"`
12811
12812	// The label description.
12813	Description *string `locationName:"description" min:"1" type:"string"`
12814
12815	// The label name.
12816	//
12817	// Name is a required field
12818	Name *string `locationName:"name" min:"1" type:"string" required:"true"`
12819
12820	Tags []*Tag `locationName:"tags" type:"list"`
12821}
12822
12823// String returns the string representation
12824func (s PutLabelInput) String() string {
12825	return awsutil.Prettify(s)
12826}
12827
12828// GoString returns the string representation
12829func (s PutLabelInput) GoString() string {
12830	return s.String()
12831}
12832
12833// Validate inspects the fields of the type to determine if they are valid.
12834func (s *PutLabelInput) Validate() error {
12835	invalidParams := request.ErrInvalidParams{Context: "PutLabelInput"}
12836	if s.Description != nil && len(*s.Description) < 1 {
12837		invalidParams.Add(request.NewErrParamMinLen("Description", 1))
12838	}
12839	if s.Name == nil {
12840		invalidParams.Add(request.NewErrParamRequired("Name"))
12841	}
12842	if s.Name != nil && len(*s.Name) < 1 {
12843		invalidParams.Add(request.NewErrParamMinLen("Name", 1))
12844	}
12845	if s.Tags != nil {
12846		for i, v := range s.Tags {
12847			if v == nil {
12848				continue
12849			}
12850			if err := v.Validate(); err != nil {
12851				invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Tags", i), err.(request.ErrInvalidParams))
12852			}
12853		}
12854	}
12855
12856	if invalidParams.Len() > 0 {
12857		return invalidParams
12858	}
12859	return nil
12860}
12861
12862// SetDescription sets the Description field's value.
12863func (s *PutLabelInput) SetDescription(v string) *PutLabelInput {
12864	s.Description = &v
12865	return s
12866}
12867
12868// SetName sets the Name field's value.
12869func (s *PutLabelInput) SetName(v string) *PutLabelInput {
12870	s.Name = &v
12871	return s
12872}
12873
12874// SetTags sets the Tags field's value.
12875func (s *PutLabelInput) SetTags(v []*Tag) *PutLabelInput {
12876	s.Tags = v
12877	return s
12878}
12879
12880type PutLabelOutput struct {
12881	_ struct{} `type:"structure"`
12882}
12883
12884// String returns the string representation
12885func (s PutLabelOutput) String() string {
12886	return awsutil.Prettify(s)
12887}
12888
12889// GoString returns the string representation
12890func (s PutLabelOutput) GoString() string {
12891	return s.String()
12892}
12893
12894type PutOutcomeInput struct {
12895	_ struct{} `type:"structure"`
12896
12897	// The outcome description.
12898	Description *string `locationName:"description" min:"1" type:"string"`
12899
12900	// The name of the outcome.
12901	//
12902	// Name is a required field
12903	Name *string `locationName:"name" min:"1" type:"string" required:"true"`
12904
12905	// A collection of key and value pairs.
12906	Tags []*Tag `locationName:"tags" type:"list"`
12907}
12908
12909// String returns the string representation
12910func (s PutOutcomeInput) String() string {
12911	return awsutil.Prettify(s)
12912}
12913
12914// GoString returns the string representation
12915func (s PutOutcomeInput) GoString() string {
12916	return s.String()
12917}
12918
12919// Validate inspects the fields of the type to determine if they are valid.
12920func (s *PutOutcomeInput) Validate() error {
12921	invalidParams := request.ErrInvalidParams{Context: "PutOutcomeInput"}
12922	if s.Description != nil && len(*s.Description) < 1 {
12923		invalidParams.Add(request.NewErrParamMinLen("Description", 1))
12924	}
12925	if s.Name == nil {
12926		invalidParams.Add(request.NewErrParamRequired("Name"))
12927	}
12928	if s.Name != nil && len(*s.Name) < 1 {
12929		invalidParams.Add(request.NewErrParamMinLen("Name", 1))
12930	}
12931	if s.Tags != nil {
12932		for i, v := range s.Tags {
12933			if v == nil {
12934				continue
12935			}
12936			if err := v.Validate(); err != nil {
12937				invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Tags", i), err.(request.ErrInvalidParams))
12938			}
12939		}
12940	}
12941
12942	if invalidParams.Len() > 0 {
12943		return invalidParams
12944	}
12945	return nil
12946}
12947
12948// SetDescription sets the Description field's value.
12949func (s *PutOutcomeInput) SetDescription(v string) *PutOutcomeInput {
12950	s.Description = &v
12951	return s
12952}
12953
12954// SetName sets the Name field's value.
12955func (s *PutOutcomeInput) SetName(v string) *PutOutcomeInput {
12956	s.Name = &v
12957	return s
12958}
12959
12960// SetTags sets the Tags field's value.
12961func (s *PutOutcomeInput) SetTags(v []*Tag) *PutOutcomeInput {
12962	s.Tags = v
12963	return s
12964}
12965
12966type PutOutcomeOutput struct {
12967	_ struct{} `type:"structure"`
12968}
12969
12970// String returns the string representation
12971func (s PutOutcomeOutput) String() string {
12972	return awsutil.Prettify(s)
12973}
12974
12975// GoString returns the string representation
12976func (s PutOutcomeOutput) GoString() string {
12977	return s.String()
12978}
12979
12980// An exception indicating the specified resource was not found. This can occur
12981// if you submit a request, such as CreateBatchPredictionJob, but the detector
12982// name or version does not exist.
12983type ResourceNotFoundException struct {
12984	_            struct{}                  `type:"structure"`
12985	RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"`
12986
12987	Message_ *string `locationName:"message" type:"string"`
12988}
12989
12990// String returns the string representation
12991func (s ResourceNotFoundException) String() string {
12992	return awsutil.Prettify(s)
12993}
12994
12995// GoString returns the string representation
12996func (s ResourceNotFoundException) GoString() string {
12997	return s.String()
12998}
12999
13000func newErrorResourceNotFoundException(v protocol.ResponseMetadata) error {
13001	return &ResourceNotFoundException{
13002		RespMetadata: v,
13003	}
13004}
13005
13006// Code returns the exception type name.
13007func (s *ResourceNotFoundException) Code() string {
13008	return "ResourceNotFoundException"
13009}
13010
13011// Message returns the exception's message.
13012func (s *ResourceNotFoundException) Message() string {
13013	if s.Message_ != nil {
13014		return *s.Message_
13015	}
13016	return ""
13017}
13018
13019// OrigErr always returns nil, satisfies awserr.Error interface.
13020func (s *ResourceNotFoundException) OrigErr() error {
13021	return nil
13022}
13023
13024func (s *ResourceNotFoundException) Error() string {
13025	return fmt.Sprintf("%s: %s", s.Code(), s.Message())
13026}
13027
13028// Status code returns the HTTP status code for the request's response error.
13029func (s *ResourceNotFoundException) StatusCode() int {
13030	return s.RespMetadata.StatusCode
13031}
13032
13033// RequestID returns the service's response RequestID for request.
13034func (s *ResourceNotFoundException) RequestID() string {
13035	return s.RespMetadata.RequestID
13036}
13037
13038// An exception indicating that the attached customer-owned (external) model
13039// threw an exception when Amazon Fraud Detector invoked the model.
13040type ResourceUnavailableException struct {
13041	_            struct{}                  `type:"structure"`
13042	RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"`
13043
13044	Message_ *string `locationName:"message" type:"string"`
13045}
13046
13047// String returns the string representation
13048func (s ResourceUnavailableException) String() string {
13049	return awsutil.Prettify(s)
13050}
13051
13052// GoString returns the string representation
13053func (s ResourceUnavailableException) GoString() string {
13054	return s.String()
13055}
13056
13057func newErrorResourceUnavailableException(v protocol.ResponseMetadata) error {
13058	return &ResourceUnavailableException{
13059		RespMetadata: v,
13060	}
13061}
13062
13063// Code returns the exception type name.
13064func (s *ResourceUnavailableException) Code() string {
13065	return "ResourceUnavailableException"
13066}
13067
13068// Message returns the exception's message.
13069func (s *ResourceUnavailableException) Message() string {
13070	if s.Message_ != nil {
13071		return *s.Message_
13072	}
13073	return ""
13074}
13075
13076// OrigErr always returns nil, satisfies awserr.Error interface.
13077func (s *ResourceUnavailableException) OrigErr() error {
13078	return nil
13079}
13080
13081func (s *ResourceUnavailableException) Error() string {
13082	return fmt.Sprintf("%s: %s", s.Code(), s.Message())
13083}
13084
13085// Status code returns the HTTP status code for the request's response error.
13086func (s *ResourceUnavailableException) StatusCode() int {
13087	return s.RespMetadata.StatusCode
13088}
13089
13090// RequestID returns the service's response RequestID for request.
13091func (s *ResourceUnavailableException) RequestID() string {
13092	return s.RespMetadata.RequestID
13093}
13094
13095// A rule.
13096type Rule struct {
13097	_ struct{} `type:"structure"`
13098
13099	// The detector for which the rule is associated.
13100	//
13101	// DetectorId is a required field
13102	DetectorId *string `locationName:"detectorId" min:"1" type:"string" required:"true"`
13103
13104	// The rule ID.
13105	//
13106	// RuleId is a required field
13107	RuleId *string `locationName:"ruleId" min:"1" type:"string" required:"true"`
13108
13109	// The rule version.
13110	//
13111	// RuleVersion is a required field
13112	RuleVersion *string `locationName:"ruleVersion" min:"1" type:"string" required:"true"`
13113}
13114
13115// String returns the string representation
13116func (s Rule) String() string {
13117	return awsutil.Prettify(s)
13118}
13119
13120// GoString returns the string representation
13121func (s Rule) GoString() string {
13122	return s.String()
13123}
13124
13125// Validate inspects the fields of the type to determine if they are valid.
13126func (s *Rule) Validate() error {
13127	invalidParams := request.ErrInvalidParams{Context: "Rule"}
13128	if s.DetectorId == nil {
13129		invalidParams.Add(request.NewErrParamRequired("DetectorId"))
13130	}
13131	if s.DetectorId != nil && len(*s.DetectorId) < 1 {
13132		invalidParams.Add(request.NewErrParamMinLen("DetectorId", 1))
13133	}
13134	if s.RuleId == nil {
13135		invalidParams.Add(request.NewErrParamRequired("RuleId"))
13136	}
13137	if s.RuleId != nil && len(*s.RuleId) < 1 {
13138		invalidParams.Add(request.NewErrParamMinLen("RuleId", 1))
13139	}
13140	if s.RuleVersion == nil {
13141		invalidParams.Add(request.NewErrParamRequired("RuleVersion"))
13142	}
13143	if s.RuleVersion != nil && len(*s.RuleVersion) < 1 {
13144		invalidParams.Add(request.NewErrParamMinLen("RuleVersion", 1))
13145	}
13146
13147	if invalidParams.Len() > 0 {
13148		return invalidParams
13149	}
13150	return nil
13151}
13152
13153// SetDetectorId sets the DetectorId field's value.
13154func (s *Rule) SetDetectorId(v string) *Rule {
13155	s.DetectorId = &v
13156	return s
13157}
13158
13159// SetRuleId sets the RuleId field's value.
13160func (s *Rule) SetRuleId(v string) *Rule {
13161	s.RuleId = &v
13162	return s
13163}
13164
13165// SetRuleVersion sets the RuleVersion field's value.
13166func (s *Rule) SetRuleVersion(v string) *Rule {
13167	s.RuleVersion = &v
13168	return s
13169}
13170
13171// The details of the rule.
13172type RuleDetail struct {
13173	_ struct{} `type:"structure"`
13174
13175	// The rule ARN.
13176	Arn *string `locationName:"arn" min:"1" type:"string"`
13177
13178	// The timestamp of when the rule was created.
13179	CreatedTime *string `locationName:"createdTime" min:"11" type:"string"`
13180
13181	// The rule description.
13182	Description *string `locationName:"description" min:"1" type:"string"`
13183
13184	// The detector for which the rule is associated.
13185	DetectorId *string `locationName:"detectorId" min:"1" type:"string"`
13186
13187	// The rule expression.
13188	Expression *string `locationName:"expression" min:"1" type:"string" sensitive:"true"`
13189
13190	// The rule language.
13191	Language *string `locationName:"language" type:"string" enum:"Language"`
13192
13193	// Timestamp of the last time the rule was updated.
13194	LastUpdatedTime *string `locationName:"lastUpdatedTime" min:"11" type:"string"`
13195
13196	// The rule outcomes.
13197	Outcomes []*string `locationName:"outcomes" min:"1" type:"list"`
13198
13199	// The rule ID.
13200	RuleId *string `locationName:"ruleId" min:"1" type:"string"`
13201
13202	// The rule version.
13203	RuleVersion *string `locationName:"ruleVersion" min:"1" type:"string"`
13204}
13205
13206// String returns the string representation
13207func (s RuleDetail) String() string {
13208	return awsutil.Prettify(s)
13209}
13210
13211// GoString returns the string representation
13212func (s RuleDetail) GoString() string {
13213	return s.String()
13214}
13215
13216// SetArn sets the Arn field's value.
13217func (s *RuleDetail) SetArn(v string) *RuleDetail {
13218	s.Arn = &v
13219	return s
13220}
13221
13222// SetCreatedTime sets the CreatedTime field's value.
13223func (s *RuleDetail) SetCreatedTime(v string) *RuleDetail {
13224	s.CreatedTime = &v
13225	return s
13226}
13227
13228// SetDescription sets the Description field's value.
13229func (s *RuleDetail) SetDescription(v string) *RuleDetail {
13230	s.Description = &v
13231	return s
13232}
13233
13234// SetDetectorId sets the DetectorId field's value.
13235func (s *RuleDetail) SetDetectorId(v string) *RuleDetail {
13236	s.DetectorId = &v
13237	return s
13238}
13239
13240// SetExpression sets the Expression field's value.
13241func (s *RuleDetail) SetExpression(v string) *RuleDetail {
13242	s.Expression = &v
13243	return s
13244}
13245
13246// SetLanguage sets the Language field's value.
13247func (s *RuleDetail) SetLanguage(v string) *RuleDetail {
13248	s.Language = &v
13249	return s
13250}
13251
13252// SetLastUpdatedTime sets the LastUpdatedTime field's value.
13253func (s *RuleDetail) SetLastUpdatedTime(v string) *RuleDetail {
13254	s.LastUpdatedTime = &v
13255	return s
13256}
13257
13258// SetOutcomes sets the Outcomes field's value.
13259func (s *RuleDetail) SetOutcomes(v []*string) *RuleDetail {
13260	s.Outcomes = v
13261	return s
13262}
13263
13264// SetRuleId sets the RuleId field's value.
13265func (s *RuleDetail) SetRuleId(v string) *RuleDetail {
13266	s.RuleId = &v
13267	return s
13268}
13269
13270// SetRuleVersion sets the RuleVersion field's value.
13271func (s *RuleDetail) SetRuleVersion(v string) *RuleDetail {
13272	s.RuleVersion = &v
13273	return s
13274}
13275
13276// The rule results.
13277type RuleResult struct {
13278	_ struct{} `type:"structure"`
13279
13280	// The outcomes of the matched rule, based on the rule execution mode.
13281	Outcomes []*string `locationName:"outcomes" type:"list"`
13282
13283	// The rule ID that was matched, based on the rule execution mode.
13284	RuleId *string `locationName:"ruleId" type:"string"`
13285}
13286
13287// String returns the string representation
13288func (s RuleResult) String() string {
13289	return awsutil.Prettify(s)
13290}
13291
13292// GoString returns the string representation
13293func (s RuleResult) GoString() string {
13294	return s.String()
13295}
13296
13297// SetOutcomes sets the Outcomes field's value.
13298func (s *RuleResult) SetOutcomes(v []*string) *RuleResult {
13299	s.Outcomes = v
13300	return s
13301}
13302
13303// SetRuleId sets the RuleId field's value.
13304func (s *RuleResult) SetRuleId(v string) *RuleResult {
13305	s.RuleId = &v
13306	return s
13307}
13308
13309// A key and value pair.
13310type Tag struct {
13311	_ struct{} `type:"structure"`
13312
13313	// A tag key.
13314	//
13315	// Key is a required field
13316	Key *string `locationName:"key" min:"1" type:"string" required:"true"`
13317
13318	// A value assigned to a tag key.
13319	//
13320	// Value is a required field
13321	Value *string `locationName:"value" type:"string" required:"true"`
13322}
13323
13324// String returns the string representation
13325func (s Tag) String() string {
13326	return awsutil.Prettify(s)
13327}
13328
13329// GoString returns the string representation
13330func (s Tag) GoString() string {
13331	return s.String()
13332}
13333
13334// Validate inspects the fields of the type to determine if they are valid.
13335func (s *Tag) Validate() error {
13336	invalidParams := request.ErrInvalidParams{Context: "Tag"}
13337	if s.Key == nil {
13338		invalidParams.Add(request.NewErrParamRequired("Key"))
13339	}
13340	if s.Key != nil && len(*s.Key) < 1 {
13341		invalidParams.Add(request.NewErrParamMinLen("Key", 1))
13342	}
13343	if s.Value == nil {
13344		invalidParams.Add(request.NewErrParamRequired("Value"))
13345	}
13346
13347	if invalidParams.Len() > 0 {
13348		return invalidParams
13349	}
13350	return nil
13351}
13352
13353// SetKey sets the Key field's value.
13354func (s *Tag) SetKey(v string) *Tag {
13355	s.Key = &v
13356	return s
13357}
13358
13359// SetValue sets the Value field's value.
13360func (s *Tag) SetValue(v string) *Tag {
13361	s.Value = &v
13362	return s
13363}
13364
13365type TagResourceInput struct {
13366	_ struct{} `type:"structure"`
13367
13368	// The resource ARN.
13369	//
13370	// ResourceARN is a required field
13371	ResourceARN *string `locationName:"resourceARN" min:"1" type:"string" required:"true"`
13372
13373	// The tags to assign to the resource.
13374	//
13375	// Tags is a required field
13376	Tags []*Tag `locationName:"tags" type:"list" required:"true"`
13377}
13378
13379// String returns the string representation
13380func (s TagResourceInput) String() string {
13381	return awsutil.Prettify(s)
13382}
13383
13384// GoString returns the string representation
13385func (s TagResourceInput) GoString() string {
13386	return s.String()
13387}
13388
13389// Validate inspects the fields of the type to determine if they are valid.
13390func (s *TagResourceInput) Validate() error {
13391	invalidParams := request.ErrInvalidParams{Context: "TagResourceInput"}
13392	if s.ResourceARN == nil {
13393		invalidParams.Add(request.NewErrParamRequired("ResourceARN"))
13394	}
13395	if s.ResourceARN != nil && len(*s.ResourceARN) < 1 {
13396		invalidParams.Add(request.NewErrParamMinLen("ResourceARN", 1))
13397	}
13398	if s.Tags == nil {
13399		invalidParams.Add(request.NewErrParamRequired("Tags"))
13400	}
13401	if s.Tags != nil {
13402		for i, v := range s.Tags {
13403			if v == nil {
13404				continue
13405			}
13406			if err := v.Validate(); err != nil {
13407				invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Tags", i), err.(request.ErrInvalidParams))
13408			}
13409		}
13410	}
13411
13412	if invalidParams.Len() > 0 {
13413		return invalidParams
13414	}
13415	return nil
13416}
13417
13418// SetResourceARN sets the ResourceARN field's value.
13419func (s *TagResourceInput) SetResourceARN(v string) *TagResourceInput {
13420	s.ResourceARN = &v
13421	return s
13422}
13423
13424// SetTags sets the Tags field's value.
13425func (s *TagResourceInput) SetTags(v []*Tag) *TagResourceInput {
13426	s.Tags = v
13427	return s
13428}
13429
13430type TagResourceOutput struct {
13431	_ struct{} `type:"structure"`
13432}
13433
13434// String returns the string representation
13435func (s TagResourceOutput) String() string {
13436	return awsutil.Prettify(s)
13437}
13438
13439// GoString returns the string representation
13440func (s TagResourceOutput) GoString() string {
13441	return s.String()
13442}
13443
13444// An exception indicating a throttling error.
13445type ThrottlingException struct {
13446	_            struct{}                  `type:"structure"`
13447	RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"`
13448
13449	Message_ *string `locationName:"message" type:"string"`
13450}
13451
13452// String returns the string representation
13453func (s ThrottlingException) String() string {
13454	return awsutil.Prettify(s)
13455}
13456
13457// GoString returns the string representation
13458func (s ThrottlingException) GoString() string {
13459	return s.String()
13460}
13461
13462func newErrorThrottlingException(v protocol.ResponseMetadata) error {
13463	return &ThrottlingException{
13464		RespMetadata: v,
13465	}
13466}
13467
13468// Code returns the exception type name.
13469func (s *ThrottlingException) Code() string {
13470	return "ThrottlingException"
13471}
13472
13473// Message returns the exception's message.
13474func (s *ThrottlingException) Message() string {
13475	if s.Message_ != nil {
13476		return *s.Message_
13477	}
13478	return ""
13479}
13480
13481// OrigErr always returns nil, satisfies awserr.Error interface.
13482func (s *ThrottlingException) OrigErr() error {
13483	return nil
13484}
13485
13486func (s *ThrottlingException) Error() string {
13487	return fmt.Sprintf("%s: %s", s.Code(), s.Message())
13488}
13489
13490// Status code returns the HTTP status code for the request's response error.
13491func (s *ThrottlingException) StatusCode() int {
13492	return s.RespMetadata.StatusCode
13493}
13494
13495// RequestID returns the service's response RequestID for request.
13496func (s *ThrottlingException) RequestID() string {
13497	return s.RespMetadata.RequestID
13498}
13499
13500// The training data schema.
13501type TrainingDataSchema struct {
13502	_ struct{} `type:"structure"`
13503
13504	// The label schema.
13505	//
13506	// LabelSchema is a required field
13507	LabelSchema *LabelSchema `locationName:"labelSchema" type:"structure" required:"true"`
13508
13509	// The training data schema variables.
13510	//
13511	// ModelVariables is a required field
13512	ModelVariables []*string `locationName:"modelVariables" type:"list" required:"true"`
13513}
13514
13515// String returns the string representation
13516func (s TrainingDataSchema) String() string {
13517	return awsutil.Prettify(s)
13518}
13519
13520// GoString returns the string representation
13521func (s TrainingDataSchema) GoString() string {
13522	return s.String()
13523}
13524
13525// Validate inspects the fields of the type to determine if they are valid.
13526func (s *TrainingDataSchema) Validate() error {
13527	invalidParams := request.ErrInvalidParams{Context: "TrainingDataSchema"}
13528	if s.LabelSchema == nil {
13529		invalidParams.Add(request.NewErrParamRequired("LabelSchema"))
13530	}
13531	if s.ModelVariables == nil {
13532		invalidParams.Add(request.NewErrParamRequired("ModelVariables"))
13533	}
13534	if s.LabelSchema != nil {
13535		if err := s.LabelSchema.Validate(); err != nil {
13536			invalidParams.AddNested("LabelSchema", err.(request.ErrInvalidParams))
13537		}
13538	}
13539
13540	if invalidParams.Len() > 0 {
13541		return invalidParams
13542	}
13543	return nil
13544}
13545
13546// SetLabelSchema sets the LabelSchema field's value.
13547func (s *TrainingDataSchema) SetLabelSchema(v *LabelSchema) *TrainingDataSchema {
13548	s.LabelSchema = v
13549	return s
13550}
13551
13552// SetModelVariables sets the ModelVariables field's value.
13553func (s *TrainingDataSchema) SetModelVariables(v []*string) *TrainingDataSchema {
13554	s.ModelVariables = v
13555	return s
13556}
13557
13558// The training metric details.
13559type TrainingMetrics struct {
13560	_ struct{} `type:"structure"`
13561
13562	// The area under the curve. This summarizes true positive rate (TPR) and false
13563	// positive rate (FPR) across all possible model score thresholds. A model with
13564	// no predictive power has an AUC of 0.5, whereas a perfect model has a score
13565	// of 1.0.
13566	Auc *float64 `locationName:"auc" type:"float"`
13567
13568	// The data points details.
13569	MetricDataPoints []*MetricDataPoint `locationName:"metricDataPoints" type:"list"`
13570}
13571
13572// String returns the string representation
13573func (s TrainingMetrics) String() string {
13574	return awsutil.Prettify(s)
13575}
13576
13577// GoString returns the string representation
13578func (s TrainingMetrics) GoString() string {
13579	return s.String()
13580}
13581
13582// SetAuc sets the Auc field's value.
13583func (s *TrainingMetrics) SetAuc(v float64) *TrainingMetrics {
13584	s.Auc = &v
13585	return s
13586}
13587
13588// SetMetricDataPoints sets the MetricDataPoints field's value.
13589func (s *TrainingMetrics) SetMetricDataPoints(v []*MetricDataPoint) *TrainingMetrics {
13590	s.MetricDataPoints = v
13591	return s
13592}
13593
13594// The training result details.
13595type TrainingResult struct {
13596	_ struct{} `type:"structure"`
13597
13598	// The validation metrics.
13599	DataValidationMetrics *DataValidationMetrics `locationName:"dataValidationMetrics" type:"structure"`
13600
13601	// The training metric details.
13602	TrainingMetrics *TrainingMetrics `locationName:"trainingMetrics" type:"structure"`
13603
13604	// The variable importance metrics.
13605	VariableImportanceMetrics *VariableImportanceMetrics `locationName:"variableImportanceMetrics" type:"structure"`
13606}
13607
13608// String returns the string representation
13609func (s TrainingResult) String() string {
13610	return awsutil.Prettify(s)
13611}
13612
13613// GoString returns the string representation
13614func (s TrainingResult) GoString() string {
13615	return s.String()
13616}
13617
13618// SetDataValidationMetrics sets the DataValidationMetrics field's value.
13619func (s *TrainingResult) SetDataValidationMetrics(v *DataValidationMetrics) *TrainingResult {
13620	s.DataValidationMetrics = v
13621	return s
13622}
13623
13624// SetTrainingMetrics sets the TrainingMetrics field's value.
13625func (s *TrainingResult) SetTrainingMetrics(v *TrainingMetrics) *TrainingResult {
13626	s.TrainingMetrics = v
13627	return s
13628}
13629
13630// SetVariableImportanceMetrics sets the VariableImportanceMetrics field's value.
13631func (s *TrainingResult) SetVariableImportanceMetrics(v *VariableImportanceMetrics) *TrainingResult {
13632	s.VariableImportanceMetrics = v
13633	return s
13634}
13635
13636type UntagResourceInput struct {
13637	_ struct{} `type:"structure"`
13638
13639	// The ARN of the resource from which to remove the tag.
13640	//
13641	// ResourceARN is a required field
13642	ResourceARN *string `locationName:"resourceARN" min:"1" type:"string" required:"true"`
13643
13644	// The resource ARN.
13645	//
13646	// TagKeys is a required field
13647	TagKeys []*string `locationName:"tagKeys" type:"list" required:"true"`
13648}
13649
13650// String returns the string representation
13651func (s UntagResourceInput) String() string {
13652	return awsutil.Prettify(s)
13653}
13654
13655// GoString returns the string representation
13656func (s UntagResourceInput) GoString() string {
13657	return s.String()
13658}
13659
13660// Validate inspects the fields of the type to determine if they are valid.
13661func (s *UntagResourceInput) Validate() error {
13662	invalidParams := request.ErrInvalidParams{Context: "UntagResourceInput"}
13663	if s.ResourceARN == nil {
13664		invalidParams.Add(request.NewErrParamRequired("ResourceARN"))
13665	}
13666	if s.ResourceARN != nil && len(*s.ResourceARN) < 1 {
13667		invalidParams.Add(request.NewErrParamMinLen("ResourceARN", 1))
13668	}
13669	if s.TagKeys == nil {
13670		invalidParams.Add(request.NewErrParamRequired("TagKeys"))
13671	}
13672
13673	if invalidParams.Len() > 0 {
13674		return invalidParams
13675	}
13676	return nil
13677}
13678
13679// SetResourceARN sets the ResourceARN field's value.
13680func (s *UntagResourceInput) SetResourceARN(v string) *UntagResourceInput {
13681	s.ResourceARN = &v
13682	return s
13683}
13684
13685// SetTagKeys sets the TagKeys field's value.
13686func (s *UntagResourceInput) SetTagKeys(v []*string) *UntagResourceInput {
13687	s.TagKeys = v
13688	return s
13689}
13690
13691type UntagResourceOutput struct {
13692	_ struct{} `type:"structure"`
13693}
13694
13695// String returns the string representation
13696func (s UntagResourceOutput) String() string {
13697	return awsutil.Prettify(s)
13698}
13699
13700// GoString returns the string representation
13701func (s UntagResourceOutput) GoString() string {
13702	return s.String()
13703}
13704
13705type UpdateDetectorVersionInput struct {
13706	_ struct{} `type:"structure"`
13707
13708	// The detector version description.
13709	Description *string `locationName:"description" min:"1" type:"string"`
13710
13711	// The parent detector ID for the detector version you want to update.
13712	//
13713	// DetectorId is a required field
13714	DetectorId *string `locationName:"detectorId" min:"1" type:"string" required:"true"`
13715
13716	// The detector version ID.
13717	//
13718	// DetectorVersionId is a required field
13719	DetectorVersionId *string `locationName:"detectorVersionId" min:"1" type:"string" required:"true"`
13720
13721	// The Amazon SageMaker model endpoints to include in the detector version.
13722	//
13723	// ExternalModelEndpoints is a required field
13724	ExternalModelEndpoints []*string `locationName:"externalModelEndpoints" type:"list" required:"true"`
13725
13726	// The model versions to include in the detector version.
13727	ModelVersions []*ModelVersion `locationName:"modelVersions" type:"list"`
13728
13729	// The rule execution mode to add to the detector.
13730	//
13731	// If you specify FIRST_MATCHED, Amazon Fraud Detector evaluates rules sequentially,
13732	// first to last, stopping at the first matched rule. Amazon Fraud dectector
13733	// then provides the outcomes for that single rule.
13734	//
13735	// If you specifiy ALL_MATCHED, Amazon Fraud Detector evaluates all rules and
13736	// returns the outcomes for all matched rules. You can define and edit the rule
13737	// mode at the detector version level, when it is in draft status.
13738	//
13739	// The default behavior is FIRST_MATCHED.
13740	RuleExecutionMode *string `locationName:"ruleExecutionMode" type:"string" enum:"RuleExecutionMode"`
13741
13742	// The rules to include in the detector version.
13743	//
13744	// Rules is a required field
13745	Rules []*Rule `locationName:"rules" type:"list" required:"true"`
13746}
13747
13748// String returns the string representation
13749func (s UpdateDetectorVersionInput) String() string {
13750	return awsutil.Prettify(s)
13751}
13752
13753// GoString returns the string representation
13754func (s UpdateDetectorVersionInput) GoString() string {
13755	return s.String()
13756}
13757
13758// Validate inspects the fields of the type to determine if they are valid.
13759func (s *UpdateDetectorVersionInput) Validate() error {
13760	invalidParams := request.ErrInvalidParams{Context: "UpdateDetectorVersionInput"}
13761	if s.Description != nil && len(*s.Description) < 1 {
13762		invalidParams.Add(request.NewErrParamMinLen("Description", 1))
13763	}
13764	if s.DetectorId == nil {
13765		invalidParams.Add(request.NewErrParamRequired("DetectorId"))
13766	}
13767	if s.DetectorId != nil && len(*s.DetectorId) < 1 {
13768		invalidParams.Add(request.NewErrParamMinLen("DetectorId", 1))
13769	}
13770	if s.DetectorVersionId == nil {
13771		invalidParams.Add(request.NewErrParamRequired("DetectorVersionId"))
13772	}
13773	if s.DetectorVersionId != nil && len(*s.DetectorVersionId) < 1 {
13774		invalidParams.Add(request.NewErrParamMinLen("DetectorVersionId", 1))
13775	}
13776	if s.ExternalModelEndpoints == nil {
13777		invalidParams.Add(request.NewErrParamRequired("ExternalModelEndpoints"))
13778	}
13779	if s.Rules == nil {
13780		invalidParams.Add(request.NewErrParamRequired("Rules"))
13781	}
13782	if s.ModelVersions != nil {
13783		for i, v := range s.ModelVersions {
13784			if v == nil {
13785				continue
13786			}
13787			if err := v.Validate(); err != nil {
13788				invalidParams.AddNested(fmt.Sprintf("%s[%v]", "ModelVersions", i), err.(request.ErrInvalidParams))
13789			}
13790		}
13791	}
13792	if s.Rules != nil {
13793		for i, v := range s.Rules {
13794			if v == nil {
13795				continue
13796			}
13797			if err := v.Validate(); err != nil {
13798				invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Rules", i), err.(request.ErrInvalidParams))
13799			}
13800		}
13801	}
13802
13803	if invalidParams.Len() > 0 {
13804		return invalidParams
13805	}
13806	return nil
13807}
13808
13809// SetDescription sets the Description field's value.
13810func (s *UpdateDetectorVersionInput) SetDescription(v string) *UpdateDetectorVersionInput {
13811	s.Description = &v
13812	return s
13813}
13814
13815// SetDetectorId sets the DetectorId field's value.
13816func (s *UpdateDetectorVersionInput) SetDetectorId(v string) *UpdateDetectorVersionInput {
13817	s.DetectorId = &v
13818	return s
13819}
13820
13821// SetDetectorVersionId sets the DetectorVersionId field's value.
13822func (s *UpdateDetectorVersionInput) SetDetectorVersionId(v string) *UpdateDetectorVersionInput {
13823	s.DetectorVersionId = &v
13824	return s
13825}
13826
13827// SetExternalModelEndpoints sets the ExternalModelEndpoints field's value.
13828func (s *UpdateDetectorVersionInput) SetExternalModelEndpoints(v []*string) *UpdateDetectorVersionInput {
13829	s.ExternalModelEndpoints = v
13830	return s
13831}
13832
13833// SetModelVersions sets the ModelVersions field's value.
13834func (s *UpdateDetectorVersionInput) SetModelVersions(v []*ModelVersion) *UpdateDetectorVersionInput {
13835	s.ModelVersions = v
13836	return s
13837}
13838
13839// SetRuleExecutionMode sets the RuleExecutionMode field's value.
13840func (s *UpdateDetectorVersionInput) SetRuleExecutionMode(v string) *UpdateDetectorVersionInput {
13841	s.RuleExecutionMode = &v
13842	return s
13843}
13844
13845// SetRules sets the Rules field's value.
13846func (s *UpdateDetectorVersionInput) SetRules(v []*Rule) *UpdateDetectorVersionInput {
13847	s.Rules = v
13848	return s
13849}
13850
13851type UpdateDetectorVersionMetadataInput struct {
13852	_ struct{} `type:"structure"`
13853
13854	// The description.
13855	//
13856	// Description is a required field
13857	Description *string `locationName:"description" min:"1" type:"string" required:"true"`
13858
13859	// The detector ID.
13860	//
13861	// DetectorId is a required field
13862	DetectorId *string `locationName:"detectorId" min:"1" type:"string" required:"true"`
13863
13864	// The detector version ID.
13865	//
13866	// DetectorVersionId is a required field
13867	DetectorVersionId *string `locationName:"detectorVersionId" min:"1" type:"string" required:"true"`
13868}
13869
13870// String returns the string representation
13871func (s UpdateDetectorVersionMetadataInput) String() string {
13872	return awsutil.Prettify(s)
13873}
13874
13875// GoString returns the string representation
13876func (s UpdateDetectorVersionMetadataInput) GoString() string {
13877	return s.String()
13878}
13879
13880// Validate inspects the fields of the type to determine if they are valid.
13881func (s *UpdateDetectorVersionMetadataInput) Validate() error {
13882	invalidParams := request.ErrInvalidParams{Context: "UpdateDetectorVersionMetadataInput"}
13883	if s.Description == nil {
13884		invalidParams.Add(request.NewErrParamRequired("Description"))
13885	}
13886	if s.Description != nil && len(*s.Description) < 1 {
13887		invalidParams.Add(request.NewErrParamMinLen("Description", 1))
13888	}
13889	if s.DetectorId == nil {
13890		invalidParams.Add(request.NewErrParamRequired("DetectorId"))
13891	}
13892	if s.DetectorId != nil && len(*s.DetectorId) < 1 {
13893		invalidParams.Add(request.NewErrParamMinLen("DetectorId", 1))
13894	}
13895	if s.DetectorVersionId == nil {
13896		invalidParams.Add(request.NewErrParamRequired("DetectorVersionId"))
13897	}
13898	if s.DetectorVersionId != nil && len(*s.DetectorVersionId) < 1 {
13899		invalidParams.Add(request.NewErrParamMinLen("DetectorVersionId", 1))
13900	}
13901
13902	if invalidParams.Len() > 0 {
13903		return invalidParams
13904	}
13905	return nil
13906}
13907
13908// SetDescription sets the Description field's value.
13909func (s *UpdateDetectorVersionMetadataInput) SetDescription(v string) *UpdateDetectorVersionMetadataInput {
13910	s.Description = &v
13911	return s
13912}
13913
13914// SetDetectorId sets the DetectorId field's value.
13915func (s *UpdateDetectorVersionMetadataInput) SetDetectorId(v string) *UpdateDetectorVersionMetadataInput {
13916	s.DetectorId = &v
13917	return s
13918}
13919
13920// SetDetectorVersionId sets the DetectorVersionId field's value.
13921func (s *UpdateDetectorVersionMetadataInput) SetDetectorVersionId(v string) *UpdateDetectorVersionMetadataInput {
13922	s.DetectorVersionId = &v
13923	return s
13924}
13925
13926type UpdateDetectorVersionMetadataOutput struct {
13927	_ struct{} `type:"structure"`
13928}
13929
13930// String returns the string representation
13931func (s UpdateDetectorVersionMetadataOutput) String() string {
13932	return awsutil.Prettify(s)
13933}
13934
13935// GoString returns the string representation
13936func (s UpdateDetectorVersionMetadataOutput) GoString() string {
13937	return s.String()
13938}
13939
13940type UpdateDetectorVersionOutput struct {
13941	_ struct{} `type:"structure"`
13942}
13943
13944// String returns the string representation
13945func (s UpdateDetectorVersionOutput) String() string {
13946	return awsutil.Prettify(s)
13947}
13948
13949// GoString returns the string representation
13950func (s UpdateDetectorVersionOutput) GoString() string {
13951	return s.String()
13952}
13953
13954type UpdateDetectorVersionStatusInput struct {
13955	_ struct{} `type:"structure"`
13956
13957	// The detector ID.
13958	//
13959	// DetectorId is a required field
13960	DetectorId *string `locationName:"detectorId" min:"1" type:"string" required:"true"`
13961
13962	// The detector version ID.
13963	//
13964	// DetectorVersionId is a required field
13965	DetectorVersionId *string `locationName:"detectorVersionId" min:"1" type:"string" required:"true"`
13966
13967	// The new status.
13968	//
13969	// Status is a required field
13970	Status *string `locationName:"status" type:"string" required:"true" enum:"DetectorVersionStatus"`
13971}
13972
13973// String returns the string representation
13974func (s UpdateDetectorVersionStatusInput) String() string {
13975	return awsutil.Prettify(s)
13976}
13977
13978// GoString returns the string representation
13979func (s UpdateDetectorVersionStatusInput) GoString() string {
13980	return s.String()
13981}
13982
13983// Validate inspects the fields of the type to determine if they are valid.
13984func (s *UpdateDetectorVersionStatusInput) Validate() error {
13985	invalidParams := request.ErrInvalidParams{Context: "UpdateDetectorVersionStatusInput"}
13986	if s.DetectorId == nil {
13987		invalidParams.Add(request.NewErrParamRequired("DetectorId"))
13988	}
13989	if s.DetectorId != nil && len(*s.DetectorId) < 1 {
13990		invalidParams.Add(request.NewErrParamMinLen("DetectorId", 1))
13991	}
13992	if s.DetectorVersionId == nil {
13993		invalidParams.Add(request.NewErrParamRequired("DetectorVersionId"))
13994	}
13995	if s.DetectorVersionId != nil && len(*s.DetectorVersionId) < 1 {
13996		invalidParams.Add(request.NewErrParamMinLen("DetectorVersionId", 1))
13997	}
13998	if s.Status == nil {
13999		invalidParams.Add(request.NewErrParamRequired("Status"))
14000	}
14001
14002	if invalidParams.Len() > 0 {
14003		return invalidParams
14004	}
14005	return nil
14006}
14007
14008// SetDetectorId sets the DetectorId field's value.
14009func (s *UpdateDetectorVersionStatusInput) SetDetectorId(v string) *UpdateDetectorVersionStatusInput {
14010	s.DetectorId = &v
14011	return s
14012}
14013
14014// SetDetectorVersionId sets the DetectorVersionId field's value.
14015func (s *UpdateDetectorVersionStatusInput) SetDetectorVersionId(v string) *UpdateDetectorVersionStatusInput {
14016	s.DetectorVersionId = &v
14017	return s
14018}
14019
14020// SetStatus sets the Status field's value.
14021func (s *UpdateDetectorVersionStatusInput) SetStatus(v string) *UpdateDetectorVersionStatusInput {
14022	s.Status = &v
14023	return s
14024}
14025
14026type UpdateDetectorVersionStatusOutput struct {
14027	_ struct{} `type:"structure"`
14028}
14029
14030// String returns the string representation
14031func (s UpdateDetectorVersionStatusOutput) String() string {
14032	return awsutil.Prettify(s)
14033}
14034
14035// GoString returns the string representation
14036func (s UpdateDetectorVersionStatusOutput) GoString() string {
14037	return s.String()
14038}
14039
14040type UpdateModelInput struct {
14041	_ struct{} `type:"structure"`
14042
14043	// The new model description.
14044	Description *string `locationName:"description" min:"1" type:"string"`
14045
14046	// The model ID.
14047	//
14048	// ModelId is a required field
14049	ModelId *string `locationName:"modelId" min:"1" type:"string" required:"true"`
14050
14051	// The model type.
14052	//
14053	// ModelType is a required field
14054	ModelType *string `locationName:"modelType" type:"string" required:"true" enum:"ModelTypeEnum"`
14055}
14056
14057// String returns the string representation
14058func (s UpdateModelInput) String() string {
14059	return awsutil.Prettify(s)
14060}
14061
14062// GoString returns the string representation
14063func (s UpdateModelInput) GoString() string {
14064	return s.String()
14065}
14066
14067// Validate inspects the fields of the type to determine if they are valid.
14068func (s *UpdateModelInput) Validate() error {
14069	invalidParams := request.ErrInvalidParams{Context: "UpdateModelInput"}
14070	if s.Description != nil && len(*s.Description) < 1 {
14071		invalidParams.Add(request.NewErrParamMinLen("Description", 1))
14072	}
14073	if s.ModelId == nil {
14074		invalidParams.Add(request.NewErrParamRequired("ModelId"))
14075	}
14076	if s.ModelId != nil && len(*s.ModelId) < 1 {
14077		invalidParams.Add(request.NewErrParamMinLen("ModelId", 1))
14078	}
14079	if s.ModelType == nil {
14080		invalidParams.Add(request.NewErrParamRequired("ModelType"))
14081	}
14082
14083	if invalidParams.Len() > 0 {
14084		return invalidParams
14085	}
14086	return nil
14087}
14088
14089// SetDescription sets the Description field's value.
14090func (s *UpdateModelInput) SetDescription(v string) *UpdateModelInput {
14091	s.Description = &v
14092	return s
14093}
14094
14095// SetModelId sets the ModelId field's value.
14096func (s *UpdateModelInput) SetModelId(v string) *UpdateModelInput {
14097	s.ModelId = &v
14098	return s
14099}
14100
14101// SetModelType sets the ModelType field's value.
14102func (s *UpdateModelInput) SetModelType(v string) *UpdateModelInput {
14103	s.ModelType = &v
14104	return s
14105}
14106
14107type UpdateModelOutput struct {
14108	_ struct{} `type:"structure"`
14109}
14110
14111// String returns the string representation
14112func (s UpdateModelOutput) String() string {
14113	return awsutil.Prettify(s)
14114}
14115
14116// GoString returns the string representation
14117func (s UpdateModelOutput) GoString() string {
14118	return s.String()
14119}
14120
14121type UpdateModelVersionInput struct {
14122	_ struct{} `type:"structure"`
14123
14124	// The event details.
14125	ExternalEventsDetail *ExternalEventsDetail `locationName:"externalEventsDetail" type:"structure"`
14126
14127	// The major version number.
14128	//
14129	// MajorVersionNumber is a required field
14130	MajorVersionNumber *string `locationName:"majorVersionNumber" min:"1" type:"string" required:"true"`
14131
14132	// The model ID.
14133	//
14134	// ModelId is a required field
14135	ModelId *string `locationName:"modelId" min:"1" type:"string" required:"true"`
14136
14137	// The model type.
14138	//
14139	// ModelType is a required field
14140	ModelType *string `locationName:"modelType" type:"string" required:"true" enum:"ModelTypeEnum"`
14141
14142	// A collection of key and value pairs.
14143	Tags []*Tag `locationName:"tags" type:"list"`
14144}
14145
14146// String returns the string representation
14147func (s UpdateModelVersionInput) String() string {
14148	return awsutil.Prettify(s)
14149}
14150
14151// GoString returns the string representation
14152func (s UpdateModelVersionInput) GoString() string {
14153	return s.String()
14154}
14155
14156// Validate inspects the fields of the type to determine if they are valid.
14157func (s *UpdateModelVersionInput) Validate() error {
14158	invalidParams := request.ErrInvalidParams{Context: "UpdateModelVersionInput"}
14159	if s.MajorVersionNumber == nil {
14160		invalidParams.Add(request.NewErrParamRequired("MajorVersionNumber"))
14161	}
14162	if s.MajorVersionNumber != nil && len(*s.MajorVersionNumber) < 1 {
14163		invalidParams.Add(request.NewErrParamMinLen("MajorVersionNumber", 1))
14164	}
14165	if s.ModelId == nil {
14166		invalidParams.Add(request.NewErrParamRequired("ModelId"))
14167	}
14168	if s.ModelId != nil && len(*s.ModelId) < 1 {
14169		invalidParams.Add(request.NewErrParamMinLen("ModelId", 1))
14170	}
14171	if s.ModelType == nil {
14172		invalidParams.Add(request.NewErrParamRequired("ModelType"))
14173	}
14174	if s.ExternalEventsDetail != nil {
14175		if err := s.ExternalEventsDetail.Validate(); err != nil {
14176			invalidParams.AddNested("ExternalEventsDetail", err.(request.ErrInvalidParams))
14177		}
14178	}
14179	if s.Tags != nil {
14180		for i, v := range s.Tags {
14181			if v == nil {
14182				continue
14183			}
14184			if err := v.Validate(); err != nil {
14185				invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Tags", i), err.(request.ErrInvalidParams))
14186			}
14187		}
14188	}
14189
14190	if invalidParams.Len() > 0 {
14191		return invalidParams
14192	}
14193	return nil
14194}
14195
14196// SetExternalEventsDetail sets the ExternalEventsDetail field's value.
14197func (s *UpdateModelVersionInput) SetExternalEventsDetail(v *ExternalEventsDetail) *UpdateModelVersionInput {
14198	s.ExternalEventsDetail = v
14199	return s
14200}
14201
14202// SetMajorVersionNumber sets the MajorVersionNumber field's value.
14203func (s *UpdateModelVersionInput) SetMajorVersionNumber(v string) *UpdateModelVersionInput {
14204	s.MajorVersionNumber = &v
14205	return s
14206}
14207
14208// SetModelId sets the ModelId field's value.
14209func (s *UpdateModelVersionInput) SetModelId(v string) *UpdateModelVersionInput {
14210	s.ModelId = &v
14211	return s
14212}
14213
14214// SetModelType sets the ModelType field's value.
14215func (s *UpdateModelVersionInput) SetModelType(v string) *UpdateModelVersionInput {
14216	s.ModelType = &v
14217	return s
14218}
14219
14220// SetTags sets the Tags field's value.
14221func (s *UpdateModelVersionInput) SetTags(v []*Tag) *UpdateModelVersionInput {
14222	s.Tags = v
14223	return s
14224}
14225
14226type UpdateModelVersionOutput struct {
14227	_ struct{} `type:"structure"`
14228
14229	// The model ID.
14230	ModelId *string `locationName:"modelId" min:"1" type:"string"`
14231
14232	// The model type.
14233	ModelType *string `locationName:"modelType" type:"string" enum:"ModelTypeEnum"`
14234
14235	// The model version number of the model version updated.
14236	ModelVersionNumber *string `locationName:"modelVersionNumber" min:"3" type:"string"`
14237
14238	// The status of the updated model version.
14239	Status *string `locationName:"status" type:"string"`
14240}
14241
14242// String returns the string representation
14243func (s UpdateModelVersionOutput) String() string {
14244	return awsutil.Prettify(s)
14245}
14246
14247// GoString returns the string representation
14248func (s UpdateModelVersionOutput) GoString() string {
14249	return s.String()
14250}
14251
14252// SetModelId sets the ModelId field's value.
14253func (s *UpdateModelVersionOutput) SetModelId(v string) *UpdateModelVersionOutput {
14254	s.ModelId = &v
14255	return s
14256}
14257
14258// SetModelType sets the ModelType field's value.
14259func (s *UpdateModelVersionOutput) SetModelType(v string) *UpdateModelVersionOutput {
14260	s.ModelType = &v
14261	return s
14262}
14263
14264// SetModelVersionNumber sets the ModelVersionNumber field's value.
14265func (s *UpdateModelVersionOutput) SetModelVersionNumber(v string) *UpdateModelVersionOutput {
14266	s.ModelVersionNumber = &v
14267	return s
14268}
14269
14270// SetStatus sets the Status field's value.
14271func (s *UpdateModelVersionOutput) SetStatus(v string) *UpdateModelVersionOutput {
14272	s.Status = &v
14273	return s
14274}
14275
14276type UpdateModelVersionStatusInput struct {
14277	_ struct{} `type:"structure"`
14278
14279	// The model ID of the model version to update.
14280	//
14281	// ModelId is a required field
14282	ModelId *string `locationName:"modelId" min:"1" type:"string" required:"true"`
14283
14284	// The model type.
14285	//
14286	// ModelType is a required field
14287	ModelType *string `locationName:"modelType" type:"string" required:"true" enum:"ModelTypeEnum"`
14288
14289	// The model version number.
14290	//
14291	// ModelVersionNumber is a required field
14292	ModelVersionNumber *string `locationName:"modelVersionNumber" min:"3" type:"string" required:"true"`
14293
14294	// The model version status.
14295	//
14296	// Status is a required field
14297	Status *string `locationName:"status" type:"string" required:"true" enum:"ModelVersionStatus"`
14298}
14299
14300// String returns the string representation
14301func (s UpdateModelVersionStatusInput) String() string {
14302	return awsutil.Prettify(s)
14303}
14304
14305// GoString returns the string representation
14306func (s UpdateModelVersionStatusInput) GoString() string {
14307	return s.String()
14308}
14309
14310// Validate inspects the fields of the type to determine if they are valid.
14311func (s *UpdateModelVersionStatusInput) Validate() error {
14312	invalidParams := request.ErrInvalidParams{Context: "UpdateModelVersionStatusInput"}
14313	if s.ModelId == nil {
14314		invalidParams.Add(request.NewErrParamRequired("ModelId"))
14315	}
14316	if s.ModelId != nil && len(*s.ModelId) < 1 {
14317		invalidParams.Add(request.NewErrParamMinLen("ModelId", 1))
14318	}
14319	if s.ModelType == nil {
14320		invalidParams.Add(request.NewErrParamRequired("ModelType"))
14321	}
14322	if s.ModelVersionNumber == nil {
14323		invalidParams.Add(request.NewErrParamRequired("ModelVersionNumber"))
14324	}
14325	if s.ModelVersionNumber != nil && len(*s.ModelVersionNumber) < 3 {
14326		invalidParams.Add(request.NewErrParamMinLen("ModelVersionNumber", 3))
14327	}
14328	if s.Status == nil {
14329		invalidParams.Add(request.NewErrParamRequired("Status"))
14330	}
14331
14332	if invalidParams.Len() > 0 {
14333		return invalidParams
14334	}
14335	return nil
14336}
14337
14338// SetModelId sets the ModelId field's value.
14339func (s *UpdateModelVersionStatusInput) SetModelId(v string) *UpdateModelVersionStatusInput {
14340	s.ModelId = &v
14341	return s
14342}
14343
14344// SetModelType sets the ModelType field's value.
14345func (s *UpdateModelVersionStatusInput) SetModelType(v string) *UpdateModelVersionStatusInput {
14346	s.ModelType = &v
14347	return s
14348}
14349
14350// SetModelVersionNumber sets the ModelVersionNumber field's value.
14351func (s *UpdateModelVersionStatusInput) SetModelVersionNumber(v string) *UpdateModelVersionStatusInput {
14352	s.ModelVersionNumber = &v
14353	return s
14354}
14355
14356// SetStatus sets the Status field's value.
14357func (s *UpdateModelVersionStatusInput) SetStatus(v string) *UpdateModelVersionStatusInput {
14358	s.Status = &v
14359	return s
14360}
14361
14362type UpdateModelVersionStatusOutput struct {
14363	_ struct{} `type:"structure"`
14364}
14365
14366// String returns the string representation
14367func (s UpdateModelVersionStatusOutput) String() string {
14368	return awsutil.Prettify(s)
14369}
14370
14371// GoString returns the string representation
14372func (s UpdateModelVersionStatusOutput) GoString() string {
14373	return s.String()
14374}
14375
14376type UpdateRuleMetadataInput struct {
14377	_ struct{} `type:"structure"`
14378
14379	// The rule description.
14380	//
14381	// Description is a required field
14382	Description *string `locationName:"description" min:"1" type:"string" required:"true"`
14383
14384	// The rule to update.
14385	//
14386	// Rule is a required field
14387	Rule *Rule `locationName:"rule" type:"structure" required:"true"`
14388}
14389
14390// String returns the string representation
14391func (s UpdateRuleMetadataInput) String() string {
14392	return awsutil.Prettify(s)
14393}
14394
14395// GoString returns the string representation
14396func (s UpdateRuleMetadataInput) GoString() string {
14397	return s.String()
14398}
14399
14400// Validate inspects the fields of the type to determine if they are valid.
14401func (s *UpdateRuleMetadataInput) Validate() error {
14402	invalidParams := request.ErrInvalidParams{Context: "UpdateRuleMetadataInput"}
14403	if s.Description == nil {
14404		invalidParams.Add(request.NewErrParamRequired("Description"))
14405	}
14406	if s.Description != nil && len(*s.Description) < 1 {
14407		invalidParams.Add(request.NewErrParamMinLen("Description", 1))
14408	}
14409	if s.Rule == nil {
14410		invalidParams.Add(request.NewErrParamRequired("Rule"))
14411	}
14412	if s.Rule != nil {
14413		if err := s.Rule.Validate(); err != nil {
14414			invalidParams.AddNested("Rule", err.(request.ErrInvalidParams))
14415		}
14416	}
14417
14418	if invalidParams.Len() > 0 {
14419		return invalidParams
14420	}
14421	return nil
14422}
14423
14424// SetDescription sets the Description field's value.
14425func (s *UpdateRuleMetadataInput) SetDescription(v string) *UpdateRuleMetadataInput {
14426	s.Description = &v
14427	return s
14428}
14429
14430// SetRule sets the Rule field's value.
14431func (s *UpdateRuleMetadataInput) SetRule(v *Rule) *UpdateRuleMetadataInput {
14432	s.Rule = v
14433	return s
14434}
14435
14436type UpdateRuleMetadataOutput struct {
14437	_ struct{} `type:"structure"`
14438}
14439
14440// String returns the string representation
14441func (s UpdateRuleMetadataOutput) String() string {
14442	return awsutil.Prettify(s)
14443}
14444
14445// GoString returns the string representation
14446func (s UpdateRuleMetadataOutput) GoString() string {
14447	return s.String()
14448}
14449
14450type UpdateRuleVersionInput struct {
14451	_ struct{} `type:"structure"`
14452
14453	// The description.
14454	Description *string `locationName:"description" min:"1" type:"string"`
14455
14456	// The rule expression.
14457	//
14458	// Expression is a required field
14459	Expression *string `locationName:"expression" min:"1" type:"string" required:"true" sensitive:"true"`
14460
14461	// The language.
14462	//
14463	// Language is a required field
14464	Language *string `locationName:"language" type:"string" required:"true" enum:"Language"`
14465
14466	// The outcomes.
14467	//
14468	// Outcomes is a required field
14469	Outcomes []*string `locationName:"outcomes" min:"1" type:"list" required:"true"`
14470
14471	// The rule to update.
14472	//
14473	// Rule is a required field
14474	Rule *Rule `locationName:"rule" type:"structure" required:"true"`
14475
14476	// The tags to assign to the rule version.
14477	Tags []*Tag `locationName:"tags" type:"list"`
14478}
14479
14480// String returns the string representation
14481func (s UpdateRuleVersionInput) String() string {
14482	return awsutil.Prettify(s)
14483}
14484
14485// GoString returns the string representation
14486func (s UpdateRuleVersionInput) GoString() string {
14487	return s.String()
14488}
14489
14490// Validate inspects the fields of the type to determine if they are valid.
14491func (s *UpdateRuleVersionInput) Validate() error {
14492	invalidParams := request.ErrInvalidParams{Context: "UpdateRuleVersionInput"}
14493	if s.Description != nil && len(*s.Description) < 1 {
14494		invalidParams.Add(request.NewErrParamMinLen("Description", 1))
14495	}
14496	if s.Expression == nil {
14497		invalidParams.Add(request.NewErrParamRequired("Expression"))
14498	}
14499	if s.Expression != nil && len(*s.Expression) < 1 {
14500		invalidParams.Add(request.NewErrParamMinLen("Expression", 1))
14501	}
14502	if s.Language == nil {
14503		invalidParams.Add(request.NewErrParamRequired("Language"))
14504	}
14505	if s.Outcomes == nil {
14506		invalidParams.Add(request.NewErrParamRequired("Outcomes"))
14507	}
14508	if s.Outcomes != nil && len(s.Outcomes) < 1 {
14509		invalidParams.Add(request.NewErrParamMinLen("Outcomes", 1))
14510	}
14511	if s.Rule == nil {
14512		invalidParams.Add(request.NewErrParamRequired("Rule"))
14513	}
14514	if s.Rule != nil {
14515		if err := s.Rule.Validate(); err != nil {
14516			invalidParams.AddNested("Rule", err.(request.ErrInvalidParams))
14517		}
14518	}
14519	if s.Tags != nil {
14520		for i, v := range s.Tags {
14521			if v == nil {
14522				continue
14523			}
14524			if err := v.Validate(); err != nil {
14525				invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Tags", i), err.(request.ErrInvalidParams))
14526			}
14527		}
14528	}
14529
14530	if invalidParams.Len() > 0 {
14531		return invalidParams
14532	}
14533	return nil
14534}
14535
14536// SetDescription sets the Description field's value.
14537func (s *UpdateRuleVersionInput) SetDescription(v string) *UpdateRuleVersionInput {
14538	s.Description = &v
14539	return s
14540}
14541
14542// SetExpression sets the Expression field's value.
14543func (s *UpdateRuleVersionInput) SetExpression(v string) *UpdateRuleVersionInput {
14544	s.Expression = &v
14545	return s
14546}
14547
14548// SetLanguage sets the Language field's value.
14549func (s *UpdateRuleVersionInput) SetLanguage(v string) *UpdateRuleVersionInput {
14550	s.Language = &v
14551	return s
14552}
14553
14554// SetOutcomes sets the Outcomes field's value.
14555func (s *UpdateRuleVersionInput) SetOutcomes(v []*string) *UpdateRuleVersionInput {
14556	s.Outcomes = v
14557	return s
14558}
14559
14560// SetRule sets the Rule field's value.
14561func (s *UpdateRuleVersionInput) SetRule(v *Rule) *UpdateRuleVersionInput {
14562	s.Rule = v
14563	return s
14564}
14565
14566// SetTags sets the Tags field's value.
14567func (s *UpdateRuleVersionInput) SetTags(v []*Tag) *UpdateRuleVersionInput {
14568	s.Tags = v
14569	return s
14570}
14571
14572type UpdateRuleVersionOutput struct {
14573	_ struct{} `type:"structure"`
14574
14575	// The new rule version that was created.
14576	Rule *Rule `locationName:"rule" type:"structure"`
14577}
14578
14579// String returns the string representation
14580func (s UpdateRuleVersionOutput) String() string {
14581	return awsutil.Prettify(s)
14582}
14583
14584// GoString returns the string representation
14585func (s UpdateRuleVersionOutput) GoString() string {
14586	return s.String()
14587}
14588
14589// SetRule sets the Rule field's value.
14590func (s *UpdateRuleVersionOutput) SetRule(v *Rule) *UpdateRuleVersionOutput {
14591	s.Rule = v
14592	return s
14593}
14594
14595type UpdateVariableInput struct {
14596	_ struct{} `type:"structure"`
14597
14598	// The new default value of the variable.
14599	DefaultValue *string `locationName:"defaultValue" type:"string"`
14600
14601	// The new description.
14602	Description *string `locationName:"description" type:"string"`
14603
14604	// The name of the variable.
14605	//
14606	// Name is a required field
14607	Name *string `locationName:"name" type:"string" required:"true"`
14608
14609	// The variable type. For more information see Variable types (https://docs.aws.amazon.com/frauddetector/latest/ug/create-a-variable.html#variable-types).
14610	VariableType *string `locationName:"variableType" type:"string"`
14611}
14612
14613// String returns the string representation
14614func (s UpdateVariableInput) String() string {
14615	return awsutil.Prettify(s)
14616}
14617
14618// GoString returns the string representation
14619func (s UpdateVariableInput) GoString() string {
14620	return s.String()
14621}
14622
14623// Validate inspects the fields of the type to determine if they are valid.
14624func (s *UpdateVariableInput) Validate() error {
14625	invalidParams := request.ErrInvalidParams{Context: "UpdateVariableInput"}
14626	if s.Name == nil {
14627		invalidParams.Add(request.NewErrParamRequired("Name"))
14628	}
14629
14630	if invalidParams.Len() > 0 {
14631		return invalidParams
14632	}
14633	return nil
14634}
14635
14636// SetDefaultValue sets the DefaultValue field's value.
14637func (s *UpdateVariableInput) SetDefaultValue(v string) *UpdateVariableInput {
14638	s.DefaultValue = &v
14639	return s
14640}
14641
14642// SetDescription sets the Description field's value.
14643func (s *UpdateVariableInput) SetDescription(v string) *UpdateVariableInput {
14644	s.Description = &v
14645	return s
14646}
14647
14648// SetName sets the Name field's value.
14649func (s *UpdateVariableInput) SetName(v string) *UpdateVariableInput {
14650	s.Name = &v
14651	return s
14652}
14653
14654// SetVariableType sets the VariableType field's value.
14655func (s *UpdateVariableInput) SetVariableType(v string) *UpdateVariableInput {
14656	s.VariableType = &v
14657	return s
14658}
14659
14660type UpdateVariableOutput struct {
14661	_ struct{} `type:"structure"`
14662}
14663
14664// String returns the string representation
14665func (s UpdateVariableOutput) String() string {
14666	return awsutil.Prettify(s)
14667}
14668
14669// GoString returns the string representation
14670func (s UpdateVariableOutput) GoString() string {
14671	return s.String()
14672}
14673
14674// An exception indicating a specified value is not allowed.
14675type ValidationException struct {
14676	_            struct{}                  `type:"structure"`
14677	RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"`
14678
14679	Message_ *string `locationName:"message" type:"string"`
14680}
14681
14682// String returns the string representation
14683func (s ValidationException) String() string {
14684	return awsutil.Prettify(s)
14685}
14686
14687// GoString returns the string representation
14688func (s ValidationException) GoString() string {
14689	return s.String()
14690}
14691
14692func newErrorValidationException(v protocol.ResponseMetadata) error {
14693	return &ValidationException{
14694		RespMetadata: v,
14695	}
14696}
14697
14698// Code returns the exception type name.
14699func (s *ValidationException) Code() string {
14700	return "ValidationException"
14701}
14702
14703// Message returns the exception's message.
14704func (s *ValidationException) Message() string {
14705	if s.Message_ != nil {
14706		return *s.Message_
14707	}
14708	return ""
14709}
14710
14711// OrigErr always returns nil, satisfies awserr.Error interface.
14712func (s *ValidationException) OrigErr() error {
14713	return nil
14714}
14715
14716func (s *ValidationException) Error() string {
14717	return fmt.Sprintf("%s: %s", s.Code(), s.Message())
14718}
14719
14720// Status code returns the HTTP status code for the request's response error.
14721func (s *ValidationException) StatusCode() int {
14722	return s.RespMetadata.StatusCode
14723}
14724
14725// RequestID returns the service's response RequestID for request.
14726func (s *ValidationException) RequestID() string {
14727	return s.RespMetadata.RequestID
14728}
14729
14730// The variable.
14731type Variable struct {
14732	_ struct{} `type:"structure"`
14733
14734	// The ARN of the variable.
14735	Arn *string `locationName:"arn" min:"1" type:"string"`
14736
14737	// The time when the variable was created.
14738	CreatedTime *string `locationName:"createdTime" min:"11" type:"string"`
14739
14740	// The data source of the variable.
14741	DataSource *string `locationName:"dataSource" type:"string" enum:"DataSource"`
14742
14743	// The data type of the variable. For more information see Variable types (https://docs.aws.amazon.com/frauddetector/latest/ug/create-a-variable.html#variable-types).
14744	DataType *string `locationName:"dataType" type:"string" enum:"DataType"`
14745
14746	// The default value of the variable.
14747	DefaultValue *string `locationName:"defaultValue" type:"string"`
14748
14749	// The description of the variable.
14750	Description *string `locationName:"description" type:"string"`
14751
14752	// The time when variable was last updated.
14753	LastUpdatedTime *string `locationName:"lastUpdatedTime" min:"11" type:"string"`
14754
14755	// The name of the variable.
14756	Name *string `locationName:"name" type:"string"`
14757
14758	// The variable type of the variable.
14759	//
14760	// Valid Values: AUTH_CODE | AVS | BILLING_ADDRESS_L1 | BILLING_ADDRESS_L2 |
14761	// BILLING_CITY | BILLING_COUNTRY | BILLING_NAME | BILLING_PHONE | BILLING_STATE
14762	// | BILLING_ZIP | CARD_BIN | CATEGORICAL | CURRENCY_CODE | EMAIL_ADDRESS |
14763	// FINGERPRINT | FRAUD_LABEL | FREE_FORM_TEXT | IP_ADDRESS | NUMERIC | ORDER_ID
14764	// | PAYMENT_TYPE | PHONE_NUMBER | PRICE | PRODUCT_CATEGORY | SHIPPING_ADDRESS_L1
14765	// | SHIPPING_ADDRESS_L2 | SHIPPING_CITY | SHIPPING_COUNTRY | SHIPPING_NAME
14766	// | SHIPPING_PHONE | SHIPPING_STATE | SHIPPING_ZIP | USERAGENT
14767	VariableType *string `locationName:"variableType" type:"string"`
14768}
14769
14770// String returns the string representation
14771func (s Variable) String() string {
14772	return awsutil.Prettify(s)
14773}
14774
14775// GoString returns the string representation
14776func (s Variable) GoString() string {
14777	return s.String()
14778}
14779
14780// SetArn sets the Arn field's value.
14781func (s *Variable) SetArn(v string) *Variable {
14782	s.Arn = &v
14783	return s
14784}
14785
14786// SetCreatedTime sets the CreatedTime field's value.
14787func (s *Variable) SetCreatedTime(v string) *Variable {
14788	s.CreatedTime = &v
14789	return s
14790}
14791
14792// SetDataSource sets the DataSource field's value.
14793func (s *Variable) SetDataSource(v string) *Variable {
14794	s.DataSource = &v
14795	return s
14796}
14797
14798// SetDataType sets the DataType field's value.
14799func (s *Variable) SetDataType(v string) *Variable {
14800	s.DataType = &v
14801	return s
14802}
14803
14804// SetDefaultValue sets the DefaultValue field's value.
14805func (s *Variable) SetDefaultValue(v string) *Variable {
14806	s.DefaultValue = &v
14807	return s
14808}
14809
14810// SetDescription sets the Description field's value.
14811func (s *Variable) SetDescription(v string) *Variable {
14812	s.Description = &v
14813	return s
14814}
14815
14816// SetLastUpdatedTime sets the LastUpdatedTime field's value.
14817func (s *Variable) SetLastUpdatedTime(v string) *Variable {
14818	s.LastUpdatedTime = &v
14819	return s
14820}
14821
14822// SetName sets the Name field's value.
14823func (s *Variable) SetName(v string) *Variable {
14824	s.Name = &v
14825	return s
14826}
14827
14828// SetVariableType sets the VariableType field's value.
14829func (s *Variable) SetVariableType(v string) *Variable {
14830	s.VariableType = &v
14831	return s
14832}
14833
14834// A variable in the list of variables for the batch create variable request.
14835type VariableEntry struct {
14836	_ struct{} `type:"structure"`
14837
14838	// The data source of the variable.
14839	DataSource *string `locationName:"dataSource" type:"string"`
14840
14841	// The data type of the variable.
14842	DataType *string `locationName:"dataType" type:"string"`
14843
14844	// The default value of the variable.
14845	DefaultValue *string `locationName:"defaultValue" type:"string"`
14846
14847	// The description of the variable.
14848	Description *string `locationName:"description" type:"string"`
14849
14850	// The name of the variable.
14851	Name *string `locationName:"name" type:"string"`
14852
14853	// The type of the variable. For more information see Variable types (https://docs.aws.amazon.com/frauddetector/latest/ug/create-a-variable.html#variable-types).
14854	//
14855	// Valid Values: AUTH_CODE | AVS | BILLING_ADDRESS_L1 | BILLING_ADDRESS_L2 |
14856	// BILLING_CITY | BILLING_COUNTRY | BILLING_NAME | BILLING_PHONE | BILLING_STATE
14857	// | BILLING_ZIP | CARD_BIN | CATEGORICAL | CURRENCY_CODE | EMAIL_ADDRESS |
14858	// FINGERPRINT | FRAUD_LABEL | FREE_FORM_TEXT | IP_ADDRESS | NUMERIC | ORDER_ID
14859	// | PAYMENT_TYPE | PHONE_NUMBER | PRICE | PRODUCT_CATEGORY | SHIPPING_ADDRESS_L1
14860	// | SHIPPING_ADDRESS_L2 | SHIPPING_CITY | SHIPPING_COUNTRY | SHIPPING_NAME
14861	// | SHIPPING_PHONE | SHIPPING_STATE | SHIPPING_ZIP | USERAGENT
14862	VariableType *string `locationName:"variableType" type:"string"`
14863}
14864
14865// String returns the string representation
14866func (s VariableEntry) String() string {
14867	return awsutil.Prettify(s)
14868}
14869
14870// GoString returns the string representation
14871func (s VariableEntry) GoString() string {
14872	return s.String()
14873}
14874
14875// SetDataSource sets the DataSource field's value.
14876func (s *VariableEntry) SetDataSource(v string) *VariableEntry {
14877	s.DataSource = &v
14878	return s
14879}
14880
14881// SetDataType sets the DataType field's value.
14882func (s *VariableEntry) SetDataType(v string) *VariableEntry {
14883	s.DataType = &v
14884	return s
14885}
14886
14887// SetDefaultValue sets the DefaultValue field's value.
14888func (s *VariableEntry) SetDefaultValue(v string) *VariableEntry {
14889	s.DefaultValue = &v
14890	return s
14891}
14892
14893// SetDescription sets the Description field's value.
14894func (s *VariableEntry) SetDescription(v string) *VariableEntry {
14895	s.Description = &v
14896	return s
14897}
14898
14899// SetName sets the Name field's value.
14900func (s *VariableEntry) SetName(v string) *VariableEntry {
14901	s.Name = &v
14902	return s
14903}
14904
14905// SetVariableType sets the VariableType field's value.
14906func (s *VariableEntry) SetVariableType(v string) *VariableEntry {
14907	s.VariableType = &v
14908	return s
14909}
14910
14911// The variable importance metrics details.
14912type VariableImportanceMetrics struct {
14913	_ struct{} `type:"structure"`
14914
14915	// List of variable metrics.
14916	LogOddsMetrics []*LogOddsMetric `locationName:"logOddsMetrics" type:"list"`
14917}
14918
14919// String returns the string representation
14920func (s VariableImportanceMetrics) String() string {
14921	return awsutil.Prettify(s)
14922}
14923
14924// GoString returns the string representation
14925func (s VariableImportanceMetrics) GoString() string {
14926	return s.String()
14927}
14928
14929// SetLogOddsMetrics sets the LogOddsMetrics field's value.
14930func (s *VariableImportanceMetrics) SetLogOddsMetrics(v []*LogOddsMetric) *VariableImportanceMetrics {
14931	s.LogOddsMetrics = v
14932	return s
14933}
14934
14935const (
14936	// AsyncJobStatusInProgressInitializing is a AsyncJobStatus enum value
14937	AsyncJobStatusInProgressInitializing = "IN_PROGRESS_INITIALIZING"
14938
14939	// AsyncJobStatusInProgress is a AsyncJobStatus enum value
14940	AsyncJobStatusInProgress = "IN_PROGRESS"
14941
14942	// AsyncJobStatusCancelInProgress is a AsyncJobStatus enum value
14943	AsyncJobStatusCancelInProgress = "CANCEL_IN_PROGRESS"
14944
14945	// AsyncJobStatusCanceled is a AsyncJobStatus enum value
14946	AsyncJobStatusCanceled = "CANCELED"
14947
14948	// AsyncJobStatusComplete is a AsyncJobStatus enum value
14949	AsyncJobStatusComplete = "COMPLETE"
14950
14951	// AsyncJobStatusFailed is a AsyncJobStatus enum value
14952	AsyncJobStatusFailed = "FAILED"
14953)
14954
14955// AsyncJobStatus_Values returns all elements of the AsyncJobStatus enum
14956func AsyncJobStatus_Values() []string {
14957	return []string{
14958		AsyncJobStatusInProgressInitializing,
14959		AsyncJobStatusInProgress,
14960		AsyncJobStatusCancelInProgress,
14961		AsyncJobStatusCanceled,
14962		AsyncJobStatusComplete,
14963		AsyncJobStatusFailed,
14964	}
14965}
14966
14967const (
14968	// DataSourceEvent is a DataSource enum value
14969	DataSourceEvent = "EVENT"
14970
14971	// DataSourceModelScore is a DataSource enum value
14972	DataSourceModelScore = "MODEL_SCORE"
14973
14974	// DataSourceExternalModelScore is a DataSource enum value
14975	DataSourceExternalModelScore = "EXTERNAL_MODEL_SCORE"
14976)
14977
14978// DataSource_Values returns all elements of the DataSource enum
14979func DataSource_Values() []string {
14980	return []string{
14981		DataSourceEvent,
14982		DataSourceModelScore,
14983		DataSourceExternalModelScore,
14984	}
14985}
14986
14987const (
14988	// DataTypeString is a DataType enum value
14989	DataTypeString = "STRING"
14990
14991	// DataTypeInteger is a DataType enum value
14992	DataTypeInteger = "INTEGER"
14993
14994	// DataTypeFloat is a DataType enum value
14995	DataTypeFloat = "FLOAT"
14996
14997	// DataTypeBoolean is a DataType enum value
14998	DataTypeBoolean = "BOOLEAN"
14999)
15000
15001// DataType_Values returns all elements of the DataType enum
15002func DataType_Values() []string {
15003	return []string{
15004		DataTypeString,
15005		DataTypeInteger,
15006		DataTypeFloat,
15007		DataTypeBoolean,
15008	}
15009}
15010
15011const (
15012	// DetectorVersionStatusDraft is a DetectorVersionStatus enum value
15013	DetectorVersionStatusDraft = "DRAFT"
15014
15015	// DetectorVersionStatusActive is a DetectorVersionStatus enum value
15016	DetectorVersionStatusActive = "ACTIVE"
15017
15018	// DetectorVersionStatusInactive is a DetectorVersionStatus enum value
15019	DetectorVersionStatusInactive = "INACTIVE"
15020)
15021
15022// DetectorVersionStatus_Values returns all elements of the DetectorVersionStatus enum
15023func DetectorVersionStatus_Values() []string {
15024	return []string{
15025		DetectorVersionStatusDraft,
15026		DetectorVersionStatusActive,
15027		DetectorVersionStatusInactive,
15028	}
15029}
15030
15031const (
15032	// LanguageDetectorpl is a Language enum value
15033	LanguageDetectorpl = "DETECTORPL"
15034)
15035
15036// Language_Values returns all elements of the Language enum
15037func Language_Values() []string {
15038	return []string{
15039		LanguageDetectorpl,
15040	}
15041}
15042
15043const (
15044	// ModelEndpointStatusAssociated is a ModelEndpointStatus enum value
15045	ModelEndpointStatusAssociated = "ASSOCIATED"
15046
15047	// ModelEndpointStatusDissociated is a ModelEndpointStatus enum value
15048	ModelEndpointStatusDissociated = "DISSOCIATED"
15049)
15050
15051// ModelEndpointStatus_Values returns all elements of the ModelEndpointStatus enum
15052func ModelEndpointStatus_Values() []string {
15053	return []string{
15054		ModelEndpointStatusAssociated,
15055		ModelEndpointStatusDissociated,
15056	}
15057}
15058
15059const (
15060	// ModelInputDataFormatTextCsv is a ModelInputDataFormat enum value
15061	ModelInputDataFormatTextCsv = "TEXT_CSV"
15062
15063	// ModelInputDataFormatApplicationJson is a ModelInputDataFormat enum value
15064	ModelInputDataFormatApplicationJson = "APPLICATION_JSON"
15065)
15066
15067// ModelInputDataFormat_Values returns all elements of the ModelInputDataFormat enum
15068func ModelInputDataFormat_Values() []string {
15069	return []string{
15070		ModelInputDataFormatTextCsv,
15071		ModelInputDataFormatApplicationJson,
15072	}
15073}
15074
15075const (
15076	// ModelOutputDataFormatTextCsv is a ModelOutputDataFormat enum value
15077	ModelOutputDataFormatTextCsv = "TEXT_CSV"
15078
15079	// ModelOutputDataFormatApplicationJsonlines is a ModelOutputDataFormat enum value
15080	ModelOutputDataFormatApplicationJsonlines = "APPLICATION_JSONLINES"
15081)
15082
15083// ModelOutputDataFormat_Values returns all elements of the ModelOutputDataFormat enum
15084func ModelOutputDataFormat_Values() []string {
15085	return []string{
15086		ModelOutputDataFormatTextCsv,
15087		ModelOutputDataFormatApplicationJsonlines,
15088	}
15089}
15090
15091const (
15092	// ModelSourceSagemaker is a ModelSource enum value
15093	ModelSourceSagemaker = "SAGEMAKER"
15094)
15095
15096// ModelSource_Values returns all elements of the ModelSource enum
15097func ModelSource_Values() []string {
15098	return []string{
15099		ModelSourceSagemaker,
15100	}
15101}
15102
15103const (
15104	// ModelTypeEnumOnlineFraudInsights is a ModelTypeEnum enum value
15105	ModelTypeEnumOnlineFraudInsights = "ONLINE_FRAUD_INSIGHTS"
15106)
15107
15108// ModelTypeEnum_Values returns all elements of the ModelTypeEnum enum
15109func ModelTypeEnum_Values() []string {
15110	return []string{
15111		ModelTypeEnumOnlineFraudInsights,
15112	}
15113}
15114
15115const (
15116	// ModelVersionStatusActive is a ModelVersionStatus enum value
15117	ModelVersionStatusActive = "ACTIVE"
15118
15119	// ModelVersionStatusInactive is a ModelVersionStatus enum value
15120	ModelVersionStatusInactive = "INACTIVE"
15121
15122	// ModelVersionStatusTrainingCancelled is a ModelVersionStatus enum value
15123	ModelVersionStatusTrainingCancelled = "TRAINING_CANCELLED"
15124)
15125
15126// ModelVersionStatus_Values returns all elements of the ModelVersionStatus enum
15127func ModelVersionStatus_Values() []string {
15128	return []string{
15129		ModelVersionStatusActive,
15130		ModelVersionStatusInactive,
15131		ModelVersionStatusTrainingCancelled,
15132	}
15133}
15134
15135const (
15136	// RuleExecutionModeAllMatched is a RuleExecutionMode enum value
15137	RuleExecutionModeAllMatched = "ALL_MATCHED"
15138
15139	// RuleExecutionModeFirstMatched is a RuleExecutionMode enum value
15140	RuleExecutionModeFirstMatched = "FIRST_MATCHED"
15141)
15142
15143// RuleExecutionMode_Values returns all elements of the RuleExecutionMode enum
15144func RuleExecutionMode_Values() []string {
15145	return []string{
15146		RuleExecutionModeAllMatched,
15147		RuleExecutionModeFirstMatched,
15148	}
15149}
15150
15151const (
15152	// TrainingDataSourceEnumExternalEvents is a TrainingDataSourceEnum enum value
15153	TrainingDataSourceEnumExternalEvents = "EXTERNAL_EVENTS"
15154)
15155
15156// TrainingDataSourceEnum_Values returns all elements of the TrainingDataSourceEnum enum
15157func TrainingDataSourceEnum_Values() []string {
15158	return []string{
15159		TrainingDataSourceEnumExternalEvents,
15160	}
15161}
15162