1// Code generated by private/model/cli/gen-api/main.go. DO NOT EDIT.
2
3package macie2
4
5import (
6	"fmt"
7	"time"
8
9	"github.com/aws/aws-sdk-go/aws"
10	"github.com/aws/aws-sdk-go/aws/awsutil"
11	"github.com/aws/aws-sdk-go/aws/request"
12	"github.com/aws/aws-sdk-go/private/protocol"
13	"github.com/aws/aws-sdk-go/private/protocol/restjson"
14)
15
16const opAcceptInvitation = "AcceptInvitation"
17
18// AcceptInvitationRequest generates a "aws/request.Request" representing the
19// client's request for the AcceptInvitation operation. The "output" return
20// value will be populated with the request's response once the request completes
21// successfully.
22//
23// Use "Send" method on the returned Request to send the API call to the service.
24// the "output" return value is not valid until after Send returns without error.
25//
26// See AcceptInvitation for more information on using the AcceptInvitation
27// API call, and error handling.
28//
29// This method is useful when you want to inject custom logic or configuration
30// into the SDK's request lifecycle. Such as custom headers, or retry logic.
31//
32//
33//    // Example sending a request using the AcceptInvitationRequest method.
34//    req, resp := client.AcceptInvitationRequest(params)
35//
36//    err := req.Send()
37//    if err == nil { // resp is now filled
38//        fmt.Println(resp)
39//    }
40//
41// See also, https://docs.aws.amazon.com/goto/WebAPI/macie2-2020-01-01/AcceptInvitation
42func (c *Macie2) AcceptInvitationRequest(input *AcceptInvitationInput) (req *request.Request, output *AcceptInvitationOutput) {
43	op := &request.Operation{
44		Name:       opAcceptInvitation,
45		HTTPMethod: "POST",
46		HTTPPath:   "/invitations/accept",
47	}
48
49	if input == nil {
50		input = &AcceptInvitationInput{}
51	}
52
53	output = &AcceptInvitationOutput{}
54	req = c.newRequest(op, input, output)
55	req.Handlers.Unmarshal.Swap(restjson.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler)
56	return
57}
58
59// AcceptInvitation API operation for Amazon Macie 2.
60//
61// Accepts an Amazon Macie membership invitation that was received from a specific
62// account.
63//
64// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
65// with awserr.Error's Code and Message methods to get detailed information about
66// the error.
67//
68// See the AWS API reference guide for Amazon Macie 2's
69// API operation AcceptInvitation for usage and error information.
70//
71// Returned Error Types:
72//   * ValidationException
73//   Provides information about an error that occurred due to a syntax error in
74//   a request.
75//
76//   * InternalServerException
77//   Provides information about an error that occurred due to an unknown internal
78//   server error, exception, or failure.
79//
80//   * ServiceQuotaExceededException
81//   Provides information about an error that occurred due to one or more service
82//   quotas for an account.
83//
84//   * AccessDeniedException
85//   Provides information about an error that occurred due to insufficient access
86//   to a specified resource.
87//
88//   * ResourceNotFoundException
89//   Provides information about an error that occurred because a specified resource
90//   wasn't found.
91//
92//   * ThrottlingException
93//   Provides information about an error that occurred because too many requests
94//   were sent during a certain amount of time.
95//
96//   * ConflictException
97//   Provides information about an error that occurred due to a versioning conflict
98//   for a specified resource.
99//
100// See also, https://docs.aws.amazon.com/goto/WebAPI/macie2-2020-01-01/AcceptInvitation
101func (c *Macie2) AcceptInvitation(input *AcceptInvitationInput) (*AcceptInvitationOutput, error) {
102	req, out := c.AcceptInvitationRequest(input)
103	return out, req.Send()
104}
105
106// AcceptInvitationWithContext is the same as AcceptInvitation with the addition of
107// the ability to pass a context and additional request options.
108//
109// See AcceptInvitation for details on how to use this API operation.
110//
111// The context must be non-nil and will be used for request cancellation. If
112// the context is nil a panic will occur. In the future the SDK may create
113// sub-contexts for http.Requests. See https://golang.org/pkg/context/
114// for more information on using Contexts.
115func (c *Macie2) AcceptInvitationWithContext(ctx aws.Context, input *AcceptInvitationInput, opts ...request.Option) (*AcceptInvitationOutput, error) {
116	req, out := c.AcceptInvitationRequest(input)
117	req.SetContext(ctx)
118	req.ApplyOptions(opts...)
119	return out, req.Send()
120}
121
122const opBatchGetCustomDataIdentifiers = "BatchGetCustomDataIdentifiers"
123
124// BatchGetCustomDataIdentifiersRequest generates a "aws/request.Request" representing the
125// client's request for the BatchGetCustomDataIdentifiers operation. The "output" return
126// value will be populated with the request's response once the request completes
127// successfully.
128//
129// Use "Send" method on the returned Request to send the API call to the service.
130// the "output" return value is not valid until after Send returns without error.
131//
132// See BatchGetCustomDataIdentifiers for more information on using the BatchGetCustomDataIdentifiers
133// API call, and error handling.
134//
135// This method is useful when you want to inject custom logic or configuration
136// into the SDK's request lifecycle. Such as custom headers, or retry logic.
137//
138//
139//    // Example sending a request using the BatchGetCustomDataIdentifiersRequest method.
140//    req, resp := client.BatchGetCustomDataIdentifiersRequest(params)
141//
142//    err := req.Send()
143//    if err == nil { // resp is now filled
144//        fmt.Println(resp)
145//    }
146//
147// See also, https://docs.aws.amazon.com/goto/WebAPI/macie2-2020-01-01/BatchGetCustomDataIdentifiers
148func (c *Macie2) BatchGetCustomDataIdentifiersRequest(input *BatchGetCustomDataIdentifiersInput) (req *request.Request, output *BatchGetCustomDataIdentifiersOutput) {
149	op := &request.Operation{
150		Name:       opBatchGetCustomDataIdentifiers,
151		HTTPMethod: "POST",
152		HTTPPath:   "/custom-data-identifiers/get",
153	}
154
155	if input == nil {
156		input = &BatchGetCustomDataIdentifiersInput{}
157	}
158
159	output = &BatchGetCustomDataIdentifiersOutput{}
160	req = c.newRequest(op, input, output)
161	return
162}
163
164// BatchGetCustomDataIdentifiers API operation for Amazon Macie 2.
165//
166// Retrieves information about one or more custom data identifiers.
167//
168// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
169// with awserr.Error's Code and Message methods to get detailed information about
170// the error.
171//
172// See the AWS API reference guide for Amazon Macie 2's
173// API operation BatchGetCustomDataIdentifiers for usage and error information.
174//
175// Returned Error Types:
176//   * ValidationException
177//   Provides information about an error that occurred due to a syntax error in
178//   a request.
179//
180//   * InternalServerException
181//   Provides information about an error that occurred due to an unknown internal
182//   server error, exception, or failure.
183//
184//   * ServiceQuotaExceededException
185//   Provides information about an error that occurred due to one or more service
186//   quotas for an account.
187//
188//   * AccessDeniedException
189//   Provides information about an error that occurred due to insufficient access
190//   to a specified resource.
191//
192//   * ResourceNotFoundException
193//   Provides information about an error that occurred because a specified resource
194//   wasn't found.
195//
196//   * ThrottlingException
197//   Provides information about an error that occurred because too many requests
198//   were sent during a certain amount of time.
199//
200//   * ConflictException
201//   Provides information about an error that occurred due to a versioning conflict
202//   for a specified resource.
203//
204// See also, https://docs.aws.amazon.com/goto/WebAPI/macie2-2020-01-01/BatchGetCustomDataIdentifiers
205func (c *Macie2) BatchGetCustomDataIdentifiers(input *BatchGetCustomDataIdentifiersInput) (*BatchGetCustomDataIdentifiersOutput, error) {
206	req, out := c.BatchGetCustomDataIdentifiersRequest(input)
207	return out, req.Send()
208}
209
210// BatchGetCustomDataIdentifiersWithContext is the same as BatchGetCustomDataIdentifiers with the addition of
211// the ability to pass a context and additional request options.
212//
213// See BatchGetCustomDataIdentifiers for details on how to use this API operation.
214//
215// The context must be non-nil and will be used for request cancellation. If
216// the context is nil a panic will occur. In the future the SDK may create
217// sub-contexts for http.Requests. See https://golang.org/pkg/context/
218// for more information on using Contexts.
219func (c *Macie2) BatchGetCustomDataIdentifiersWithContext(ctx aws.Context, input *BatchGetCustomDataIdentifiersInput, opts ...request.Option) (*BatchGetCustomDataIdentifiersOutput, error) {
220	req, out := c.BatchGetCustomDataIdentifiersRequest(input)
221	req.SetContext(ctx)
222	req.ApplyOptions(opts...)
223	return out, req.Send()
224}
225
226const opCreateClassificationJob = "CreateClassificationJob"
227
228// CreateClassificationJobRequest generates a "aws/request.Request" representing the
229// client's request for the CreateClassificationJob operation. The "output" return
230// value will be populated with the request's response once the request completes
231// successfully.
232//
233// Use "Send" method on the returned Request to send the API call to the service.
234// the "output" return value is not valid until after Send returns without error.
235//
236// See CreateClassificationJob for more information on using the CreateClassificationJob
237// API call, and error handling.
238//
239// This method is useful when you want to inject custom logic or configuration
240// into the SDK's request lifecycle. Such as custom headers, or retry logic.
241//
242//
243//    // Example sending a request using the CreateClassificationJobRequest method.
244//    req, resp := client.CreateClassificationJobRequest(params)
245//
246//    err := req.Send()
247//    if err == nil { // resp is now filled
248//        fmt.Println(resp)
249//    }
250//
251// See also, https://docs.aws.amazon.com/goto/WebAPI/macie2-2020-01-01/CreateClassificationJob
252func (c *Macie2) CreateClassificationJobRequest(input *CreateClassificationJobInput) (req *request.Request, output *CreateClassificationJobOutput) {
253	op := &request.Operation{
254		Name:       opCreateClassificationJob,
255		HTTPMethod: "POST",
256		HTTPPath:   "/jobs",
257	}
258
259	if input == nil {
260		input = &CreateClassificationJobInput{}
261	}
262
263	output = &CreateClassificationJobOutput{}
264	req = c.newRequest(op, input, output)
265	return
266}
267
268// CreateClassificationJob API operation for Amazon Macie 2.
269//
270// Creates and defines the settings for a classification job.
271//
272// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
273// with awserr.Error's Code and Message methods to get detailed information about
274// the error.
275//
276// See the AWS API reference guide for Amazon Macie 2's
277// API operation CreateClassificationJob for usage and error information.
278//
279// Returned Error Types:
280//   * ValidationException
281//   Provides information about an error that occurred due to a syntax error in
282//   a request.
283//
284//   * InternalServerException
285//   Provides information about an error that occurred due to an unknown internal
286//   server error, exception, or failure.
287//
288//   * ServiceQuotaExceededException
289//   Provides information about an error that occurred due to one or more service
290//   quotas for an account.
291//
292//   * AccessDeniedException
293//   Provides information about an error that occurred due to insufficient access
294//   to a specified resource.
295//
296//   * ResourceNotFoundException
297//   Provides information about an error that occurred because a specified resource
298//   wasn't found.
299//
300//   * ThrottlingException
301//   Provides information about an error that occurred because too many requests
302//   were sent during a certain amount of time.
303//
304//   * ConflictException
305//   Provides information about an error that occurred due to a versioning conflict
306//   for a specified resource.
307//
308// See also, https://docs.aws.amazon.com/goto/WebAPI/macie2-2020-01-01/CreateClassificationJob
309func (c *Macie2) CreateClassificationJob(input *CreateClassificationJobInput) (*CreateClassificationJobOutput, error) {
310	req, out := c.CreateClassificationJobRequest(input)
311	return out, req.Send()
312}
313
314// CreateClassificationJobWithContext is the same as CreateClassificationJob with the addition of
315// the ability to pass a context and additional request options.
316//
317// See CreateClassificationJob for details on how to use this API operation.
318//
319// The context must be non-nil and will be used for request cancellation. If
320// the context is nil a panic will occur. In the future the SDK may create
321// sub-contexts for http.Requests. See https://golang.org/pkg/context/
322// for more information on using Contexts.
323func (c *Macie2) CreateClassificationJobWithContext(ctx aws.Context, input *CreateClassificationJobInput, opts ...request.Option) (*CreateClassificationJobOutput, error) {
324	req, out := c.CreateClassificationJobRequest(input)
325	req.SetContext(ctx)
326	req.ApplyOptions(opts...)
327	return out, req.Send()
328}
329
330const opCreateCustomDataIdentifier = "CreateCustomDataIdentifier"
331
332// CreateCustomDataIdentifierRequest generates a "aws/request.Request" representing the
333// client's request for the CreateCustomDataIdentifier operation. The "output" return
334// value will be populated with the request's response once the request completes
335// successfully.
336//
337// Use "Send" method on the returned Request to send the API call to the service.
338// the "output" return value is not valid until after Send returns without error.
339//
340// See CreateCustomDataIdentifier for more information on using the CreateCustomDataIdentifier
341// API call, and error handling.
342//
343// This method is useful when you want to inject custom logic or configuration
344// into the SDK's request lifecycle. Such as custom headers, or retry logic.
345//
346//
347//    // Example sending a request using the CreateCustomDataIdentifierRequest method.
348//    req, resp := client.CreateCustomDataIdentifierRequest(params)
349//
350//    err := req.Send()
351//    if err == nil { // resp is now filled
352//        fmt.Println(resp)
353//    }
354//
355// See also, https://docs.aws.amazon.com/goto/WebAPI/macie2-2020-01-01/CreateCustomDataIdentifier
356func (c *Macie2) CreateCustomDataIdentifierRequest(input *CreateCustomDataIdentifierInput) (req *request.Request, output *CreateCustomDataIdentifierOutput) {
357	op := &request.Operation{
358		Name:       opCreateCustomDataIdentifier,
359		HTTPMethod: "POST",
360		HTTPPath:   "/custom-data-identifiers",
361	}
362
363	if input == nil {
364		input = &CreateCustomDataIdentifierInput{}
365	}
366
367	output = &CreateCustomDataIdentifierOutput{}
368	req = c.newRequest(op, input, output)
369	return
370}
371
372// CreateCustomDataIdentifier API operation for Amazon Macie 2.
373//
374// Creates and defines the criteria and other settings for a custom data identifier.
375//
376// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
377// with awserr.Error's Code and Message methods to get detailed information about
378// the error.
379//
380// See the AWS API reference guide for Amazon Macie 2's
381// API operation CreateCustomDataIdentifier for usage and error information.
382//
383// Returned Error Types:
384//   * ValidationException
385//   Provides information about an error that occurred due to a syntax error in
386//   a request.
387//
388//   * InternalServerException
389//   Provides information about an error that occurred due to an unknown internal
390//   server error, exception, or failure.
391//
392//   * ServiceQuotaExceededException
393//   Provides information about an error that occurred due to one or more service
394//   quotas for an account.
395//
396//   * AccessDeniedException
397//   Provides information about an error that occurred due to insufficient access
398//   to a specified resource.
399//
400//   * ResourceNotFoundException
401//   Provides information about an error that occurred because a specified resource
402//   wasn't found.
403//
404//   * ThrottlingException
405//   Provides information about an error that occurred because too many requests
406//   were sent during a certain amount of time.
407//
408//   * ConflictException
409//   Provides information about an error that occurred due to a versioning conflict
410//   for a specified resource.
411//
412// See also, https://docs.aws.amazon.com/goto/WebAPI/macie2-2020-01-01/CreateCustomDataIdentifier
413func (c *Macie2) CreateCustomDataIdentifier(input *CreateCustomDataIdentifierInput) (*CreateCustomDataIdentifierOutput, error) {
414	req, out := c.CreateCustomDataIdentifierRequest(input)
415	return out, req.Send()
416}
417
418// CreateCustomDataIdentifierWithContext is the same as CreateCustomDataIdentifier with the addition of
419// the ability to pass a context and additional request options.
420//
421// See CreateCustomDataIdentifier for details on how to use this API operation.
422//
423// The context must be non-nil and will be used for request cancellation. If
424// the context is nil a panic will occur. In the future the SDK may create
425// sub-contexts for http.Requests. See https://golang.org/pkg/context/
426// for more information on using Contexts.
427func (c *Macie2) CreateCustomDataIdentifierWithContext(ctx aws.Context, input *CreateCustomDataIdentifierInput, opts ...request.Option) (*CreateCustomDataIdentifierOutput, error) {
428	req, out := c.CreateCustomDataIdentifierRequest(input)
429	req.SetContext(ctx)
430	req.ApplyOptions(opts...)
431	return out, req.Send()
432}
433
434const opCreateFindingsFilter = "CreateFindingsFilter"
435
436// CreateFindingsFilterRequest generates a "aws/request.Request" representing the
437// client's request for the CreateFindingsFilter operation. The "output" return
438// value will be populated with the request's response once the request completes
439// successfully.
440//
441// Use "Send" method on the returned Request to send the API call to the service.
442// the "output" return value is not valid until after Send returns without error.
443//
444// See CreateFindingsFilter for more information on using the CreateFindingsFilter
445// API call, and error handling.
446//
447// This method is useful when you want to inject custom logic or configuration
448// into the SDK's request lifecycle. Such as custom headers, or retry logic.
449//
450//
451//    // Example sending a request using the CreateFindingsFilterRequest method.
452//    req, resp := client.CreateFindingsFilterRequest(params)
453//
454//    err := req.Send()
455//    if err == nil { // resp is now filled
456//        fmt.Println(resp)
457//    }
458//
459// See also, https://docs.aws.amazon.com/goto/WebAPI/macie2-2020-01-01/CreateFindingsFilter
460func (c *Macie2) CreateFindingsFilterRequest(input *CreateFindingsFilterInput) (req *request.Request, output *CreateFindingsFilterOutput) {
461	op := &request.Operation{
462		Name:       opCreateFindingsFilter,
463		HTTPMethod: "POST",
464		HTTPPath:   "/findingsfilters",
465	}
466
467	if input == nil {
468		input = &CreateFindingsFilterInput{}
469	}
470
471	output = &CreateFindingsFilterOutput{}
472	req = c.newRequest(op, input, output)
473	return
474}
475
476// CreateFindingsFilter API operation for Amazon Macie 2.
477//
478// Creates and defines the criteria and other settings for a findings filter.
479//
480// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
481// with awserr.Error's Code and Message methods to get detailed information about
482// the error.
483//
484// See the AWS API reference guide for Amazon Macie 2's
485// API operation CreateFindingsFilter for usage and error information.
486//
487// Returned Error Types:
488//   * ValidationException
489//   Provides information about an error that occurred due to a syntax error in
490//   a request.
491//
492//   * InternalServerException
493//   Provides information about an error that occurred due to an unknown internal
494//   server error, exception, or failure.
495//
496//   * ServiceQuotaExceededException
497//   Provides information about an error that occurred due to one or more service
498//   quotas for an account.
499//
500//   * AccessDeniedException
501//   Provides information about an error that occurred due to insufficient access
502//   to a specified resource.
503//
504//   * ResourceNotFoundException
505//   Provides information about an error that occurred because a specified resource
506//   wasn't found.
507//
508//   * ThrottlingException
509//   Provides information about an error that occurred because too many requests
510//   were sent during a certain amount of time.
511//
512//   * ConflictException
513//   Provides information about an error that occurred due to a versioning conflict
514//   for a specified resource.
515//
516// See also, https://docs.aws.amazon.com/goto/WebAPI/macie2-2020-01-01/CreateFindingsFilter
517func (c *Macie2) CreateFindingsFilter(input *CreateFindingsFilterInput) (*CreateFindingsFilterOutput, error) {
518	req, out := c.CreateFindingsFilterRequest(input)
519	return out, req.Send()
520}
521
522// CreateFindingsFilterWithContext is the same as CreateFindingsFilter with the addition of
523// the ability to pass a context and additional request options.
524//
525// See CreateFindingsFilter for details on how to use this API operation.
526//
527// The context must be non-nil and will be used for request cancellation. If
528// the context is nil a panic will occur. In the future the SDK may create
529// sub-contexts for http.Requests. See https://golang.org/pkg/context/
530// for more information on using Contexts.
531func (c *Macie2) CreateFindingsFilterWithContext(ctx aws.Context, input *CreateFindingsFilterInput, opts ...request.Option) (*CreateFindingsFilterOutput, error) {
532	req, out := c.CreateFindingsFilterRequest(input)
533	req.SetContext(ctx)
534	req.ApplyOptions(opts...)
535	return out, req.Send()
536}
537
538const opCreateInvitations = "CreateInvitations"
539
540// CreateInvitationsRequest generates a "aws/request.Request" representing the
541// client's request for the CreateInvitations operation. The "output" return
542// value will be populated with the request's response once the request completes
543// successfully.
544//
545// Use "Send" method on the returned Request to send the API call to the service.
546// the "output" return value is not valid until after Send returns without error.
547//
548// See CreateInvitations for more information on using the CreateInvitations
549// API call, and error handling.
550//
551// This method is useful when you want to inject custom logic or configuration
552// into the SDK's request lifecycle. Such as custom headers, or retry logic.
553//
554//
555//    // Example sending a request using the CreateInvitationsRequest method.
556//    req, resp := client.CreateInvitationsRequest(params)
557//
558//    err := req.Send()
559//    if err == nil { // resp is now filled
560//        fmt.Println(resp)
561//    }
562//
563// See also, https://docs.aws.amazon.com/goto/WebAPI/macie2-2020-01-01/CreateInvitations
564func (c *Macie2) CreateInvitationsRequest(input *CreateInvitationsInput) (req *request.Request, output *CreateInvitationsOutput) {
565	op := &request.Operation{
566		Name:       opCreateInvitations,
567		HTTPMethod: "POST",
568		HTTPPath:   "/invitations",
569	}
570
571	if input == nil {
572		input = &CreateInvitationsInput{}
573	}
574
575	output = &CreateInvitationsOutput{}
576	req = c.newRequest(op, input, output)
577	return
578}
579
580// CreateInvitations API operation for Amazon Macie 2.
581//
582// Sends an Amazon Macie membership invitation to one or more accounts.
583//
584// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
585// with awserr.Error's Code and Message methods to get detailed information about
586// the error.
587//
588// See the AWS API reference guide for Amazon Macie 2's
589// API operation CreateInvitations for usage and error information.
590//
591// Returned Error Types:
592//   * ValidationException
593//   Provides information about an error that occurred due to a syntax error in
594//   a request.
595//
596//   * InternalServerException
597//   Provides information about an error that occurred due to an unknown internal
598//   server error, exception, or failure.
599//
600//   * ServiceQuotaExceededException
601//   Provides information about an error that occurred due to one or more service
602//   quotas for an account.
603//
604//   * AccessDeniedException
605//   Provides information about an error that occurred due to insufficient access
606//   to a specified resource.
607//
608//   * ResourceNotFoundException
609//   Provides information about an error that occurred because a specified resource
610//   wasn't found.
611//
612//   * ThrottlingException
613//   Provides information about an error that occurred because too many requests
614//   were sent during a certain amount of time.
615//
616//   * ConflictException
617//   Provides information about an error that occurred due to a versioning conflict
618//   for a specified resource.
619//
620// See also, https://docs.aws.amazon.com/goto/WebAPI/macie2-2020-01-01/CreateInvitations
621func (c *Macie2) CreateInvitations(input *CreateInvitationsInput) (*CreateInvitationsOutput, error) {
622	req, out := c.CreateInvitationsRequest(input)
623	return out, req.Send()
624}
625
626// CreateInvitationsWithContext is the same as CreateInvitations with the addition of
627// the ability to pass a context and additional request options.
628//
629// See CreateInvitations for details on how to use this API operation.
630//
631// The context must be non-nil and will be used for request cancellation. If
632// the context is nil a panic will occur. In the future the SDK may create
633// sub-contexts for http.Requests. See https://golang.org/pkg/context/
634// for more information on using Contexts.
635func (c *Macie2) CreateInvitationsWithContext(ctx aws.Context, input *CreateInvitationsInput, opts ...request.Option) (*CreateInvitationsOutput, error) {
636	req, out := c.CreateInvitationsRequest(input)
637	req.SetContext(ctx)
638	req.ApplyOptions(opts...)
639	return out, req.Send()
640}
641
642const opCreateMember = "CreateMember"
643
644// CreateMemberRequest generates a "aws/request.Request" representing the
645// client's request for the CreateMember operation. The "output" return
646// value will be populated with the request's response once the request completes
647// successfully.
648//
649// Use "Send" method on the returned Request to send the API call to the service.
650// the "output" return value is not valid until after Send returns without error.
651//
652// See CreateMember for more information on using the CreateMember
653// API call, and error handling.
654//
655// This method is useful when you want to inject custom logic or configuration
656// into the SDK's request lifecycle. Such as custom headers, or retry logic.
657//
658//
659//    // Example sending a request using the CreateMemberRequest method.
660//    req, resp := client.CreateMemberRequest(params)
661//
662//    err := req.Send()
663//    if err == nil { // resp is now filled
664//        fmt.Println(resp)
665//    }
666//
667// See also, https://docs.aws.amazon.com/goto/WebAPI/macie2-2020-01-01/CreateMember
668func (c *Macie2) CreateMemberRequest(input *CreateMemberInput) (req *request.Request, output *CreateMemberOutput) {
669	op := &request.Operation{
670		Name:       opCreateMember,
671		HTTPMethod: "POST",
672		HTTPPath:   "/members",
673	}
674
675	if input == nil {
676		input = &CreateMemberInput{}
677	}
678
679	output = &CreateMemberOutput{}
680	req = c.newRequest(op, input, output)
681	return
682}
683
684// CreateMember API operation for Amazon Macie 2.
685//
686// Associates an account with an Amazon Macie administrator account.
687//
688// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
689// with awserr.Error's Code and Message methods to get detailed information about
690// the error.
691//
692// See the AWS API reference guide for Amazon Macie 2's
693// API operation CreateMember for usage and error information.
694//
695// Returned Error Types:
696//   * ValidationException
697//   Provides information about an error that occurred due to a syntax error in
698//   a request.
699//
700//   * InternalServerException
701//   Provides information about an error that occurred due to an unknown internal
702//   server error, exception, or failure.
703//
704//   * ServiceQuotaExceededException
705//   Provides information about an error that occurred due to one or more service
706//   quotas for an account.
707//
708//   * AccessDeniedException
709//   Provides information about an error that occurred due to insufficient access
710//   to a specified resource.
711//
712//   * ResourceNotFoundException
713//   Provides information about an error that occurred because a specified resource
714//   wasn't found.
715//
716//   * ThrottlingException
717//   Provides information about an error that occurred because too many requests
718//   were sent during a certain amount of time.
719//
720//   * ConflictException
721//   Provides information about an error that occurred due to a versioning conflict
722//   for a specified resource.
723//
724// See also, https://docs.aws.amazon.com/goto/WebAPI/macie2-2020-01-01/CreateMember
725func (c *Macie2) CreateMember(input *CreateMemberInput) (*CreateMemberOutput, error) {
726	req, out := c.CreateMemberRequest(input)
727	return out, req.Send()
728}
729
730// CreateMemberWithContext is the same as CreateMember with the addition of
731// the ability to pass a context and additional request options.
732//
733// See CreateMember for details on how to use this API operation.
734//
735// The context must be non-nil and will be used for request cancellation. If
736// the context is nil a panic will occur. In the future the SDK may create
737// sub-contexts for http.Requests. See https://golang.org/pkg/context/
738// for more information on using Contexts.
739func (c *Macie2) CreateMemberWithContext(ctx aws.Context, input *CreateMemberInput, opts ...request.Option) (*CreateMemberOutput, error) {
740	req, out := c.CreateMemberRequest(input)
741	req.SetContext(ctx)
742	req.ApplyOptions(opts...)
743	return out, req.Send()
744}
745
746const opCreateSampleFindings = "CreateSampleFindings"
747
748// CreateSampleFindingsRequest generates a "aws/request.Request" representing the
749// client's request for the CreateSampleFindings operation. The "output" return
750// value will be populated with the request's response once the request completes
751// successfully.
752//
753// Use "Send" method on the returned Request to send the API call to the service.
754// the "output" return value is not valid until after Send returns without error.
755//
756// See CreateSampleFindings for more information on using the CreateSampleFindings
757// API call, and error handling.
758//
759// This method is useful when you want to inject custom logic or configuration
760// into the SDK's request lifecycle. Such as custom headers, or retry logic.
761//
762//
763//    // Example sending a request using the CreateSampleFindingsRequest method.
764//    req, resp := client.CreateSampleFindingsRequest(params)
765//
766//    err := req.Send()
767//    if err == nil { // resp is now filled
768//        fmt.Println(resp)
769//    }
770//
771// See also, https://docs.aws.amazon.com/goto/WebAPI/macie2-2020-01-01/CreateSampleFindings
772func (c *Macie2) CreateSampleFindingsRequest(input *CreateSampleFindingsInput) (req *request.Request, output *CreateSampleFindingsOutput) {
773	op := &request.Operation{
774		Name:       opCreateSampleFindings,
775		HTTPMethod: "POST",
776		HTTPPath:   "/findings/sample",
777	}
778
779	if input == nil {
780		input = &CreateSampleFindingsInput{}
781	}
782
783	output = &CreateSampleFindingsOutput{}
784	req = c.newRequest(op, input, output)
785	req.Handlers.Unmarshal.Swap(restjson.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler)
786	return
787}
788
789// CreateSampleFindings API operation for Amazon Macie 2.
790//
791// Creates sample findings.
792//
793// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
794// with awserr.Error's Code and Message methods to get detailed information about
795// the error.
796//
797// See the AWS API reference guide for Amazon Macie 2's
798// API operation CreateSampleFindings for usage and error information.
799//
800// Returned Error Types:
801//   * ValidationException
802//   Provides information about an error that occurred due to a syntax error in
803//   a request.
804//
805//   * InternalServerException
806//   Provides information about an error that occurred due to an unknown internal
807//   server error, exception, or failure.
808//
809//   * ServiceQuotaExceededException
810//   Provides information about an error that occurred due to one or more service
811//   quotas for an account.
812//
813//   * AccessDeniedException
814//   Provides information about an error that occurred due to insufficient access
815//   to a specified resource.
816//
817//   * ResourceNotFoundException
818//   Provides information about an error that occurred because a specified resource
819//   wasn't found.
820//
821//   * ThrottlingException
822//   Provides information about an error that occurred because too many requests
823//   were sent during a certain amount of time.
824//
825//   * ConflictException
826//   Provides information about an error that occurred due to a versioning conflict
827//   for a specified resource.
828//
829// See also, https://docs.aws.amazon.com/goto/WebAPI/macie2-2020-01-01/CreateSampleFindings
830func (c *Macie2) CreateSampleFindings(input *CreateSampleFindingsInput) (*CreateSampleFindingsOutput, error) {
831	req, out := c.CreateSampleFindingsRequest(input)
832	return out, req.Send()
833}
834
835// CreateSampleFindingsWithContext is the same as CreateSampleFindings with the addition of
836// the ability to pass a context and additional request options.
837//
838// See CreateSampleFindings for details on how to use this API operation.
839//
840// The context must be non-nil and will be used for request cancellation. If
841// the context is nil a panic will occur. In the future the SDK may create
842// sub-contexts for http.Requests. See https://golang.org/pkg/context/
843// for more information on using Contexts.
844func (c *Macie2) CreateSampleFindingsWithContext(ctx aws.Context, input *CreateSampleFindingsInput, opts ...request.Option) (*CreateSampleFindingsOutput, error) {
845	req, out := c.CreateSampleFindingsRequest(input)
846	req.SetContext(ctx)
847	req.ApplyOptions(opts...)
848	return out, req.Send()
849}
850
851const opDeclineInvitations = "DeclineInvitations"
852
853// DeclineInvitationsRequest generates a "aws/request.Request" representing the
854// client's request for the DeclineInvitations operation. The "output" return
855// value will be populated with the request's response once the request completes
856// successfully.
857//
858// Use "Send" method on the returned Request to send the API call to the service.
859// the "output" return value is not valid until after Send returns without error.
860//
861// See DeclineInvitations for more information on using the DeclineInvitations
862// API call, and error handling.
863//
864// This method is useful when you want to inject custom logic or configuration
865// into the SDK's request lifecycle. Such as custom headers, or retry logic.
866//
867//
868//    // Example sending a request using the DeclineInvitationsRequest method.
869//    req, resp := client.DeclineInvitationsRequest(params)
870//
871//    err := req.Send()
872//    if err == nil { // resp is now filled
873//        fmt.Println(resp)
874//    }
875//
876// See also, https://docs.aws.amazon.com/goto/WebAPI/macie2-2020-01-01/DeclineInvitations
877func (c *Macie2) DeclineInvitationsRequest(input *DeclineInvitationsInput) (req *request.Request, output *DeclineInvitationsOutput) {
878	op := &request.Operation{
879		Name:       opDeclineInvitations,
880		HTTPMethod: "POST",
881		HTTPPath:   "/invitations/decline",
882	}
883
884	if input == nil {
885		input = &DeclineInvitationsInput{}
886	}
887
888	output = &DeclineInvitationsOutput{}
889	req = c.newRequest(op, input, output)
890	return
891}
892
893// DeclineInvitations API operation for Amazon Macie 2.
894//
895// Declines Amazon Macie membership invitations that were received from specific
896// accounts.
897//
898// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
899// with awserr.Error's Code and Message methods to get detailed information about
900// the error.
901//
902// See the AWS API reference guide for Amazon Macie 2's
903// API operation DeclineInvitations for usage and error information.
904//
905// Returned Error Types:
906//   * ValidationException
907//   Provides information about an error that occurred due to a syntax error in
908//   a request.
909//
910//   * InternalServerException
911//   Provides information about an error that occurred due to an unknown internal
912//   server error, exception, or failure.
913//
914//   * ServiceQuotaExceededException
915//   Provides information about an error that occurred due to one or more service
916//   quotas for an account.
917//
918//   * AccessDeniedException
919//   Provides information about an error that occurred due to insufficient access
920//   to a specified resource.
921//
922//   * ResourceNotFoundException
923//   Provides information about an error that occurred because a specified resource
924//   wasn't found.
925//
926//   * ThrottlingException
927//   Provides information about an error that occurred because too many requests
928//   were sent during a certain amount of time.
929//
930//   * ConflictException
931//   Provides information about an error that occurred due to a versioning conflict
932//   for a specified resource.
933//
934// See also, https://docs.aws.amazon.com/goto/WebAPI/macie2-2020-01-01/DeclineInvitations
935func (c *Macie2) DeclineInvitations(input *DeclineInvitationsInput) (*DeclineInvitationsOutput, error) {
936	req, out := c.DeclineInvitationsRequest(input)
937	return out, req.Send()
938}
939
940// DeclineInvitationsWithContext is the same as DeclineInvitations with the addition of
941// the ability to pass a context and additional request options.
942//
943// See DeclineInvitations for details on how to use this API operation.
944//
945// The context must be non-nil and will be used for request cancellation. If
946// the context is nil a panic will occur. In the future the SDK may create
947// sub-contexts for http.Requests. See https://golang.org/pkg/context/
948// for more information on using Contexts.
949func (c *Macie2) DeclineInvitationsWithContext(ctx aws.Context, input *DeclineInvitationsInput, opts ...request.Option) (*DeclineInvitationsOutput, error) {
950	req, out := c.DeclineInvitationsRequest(input)
951	req.SetContext(ctx)
952	req.ApplyOptions(opts...)
953	return out, req.Send()
954}
955
956const opDeleteCustomDataIdentifier = "DeleteCustomDataIdentifier"
957
958// DeleteCustomDataIdentifierRequest generates a "aws/request.Request" representing the
959// client's request for the DeleteCustomDataIdentifier operation. The "output" return
960// value will be populated with the request's response once the request completes
961// successfully.
962//
963// Use "Send" method on the returned Request to send the API call to the service.
964// the "output" return value is not valid until after Send returns without error.
965//
966// See DeleteCustomDataIdentifier for more information on using the DeleteCustomDataIdentifier
967// API call, and error handling.
968//
969// This method is useful when you want to inject custom logic or configuration
970// into the SDK's request lifecycle. Such as custom headers, or retry logic.
971//
972//
973//    // Example sending a request using the DeleteCustomDataIdentifierRequest method.
974//    req, resp := client.DeleteCustomDataIdentifierRequest(params)
975//
976//    err := req.Send()
977//    if err == nil { // resp is now filled
978//        fmt.Println(resp)
979//    }
980//
981// See also, https://docs.aws.amazon.com/goto/WebAPI/macie2-2020-01-01/DeleteCustomDataIdentifier
982func (c *Macie2) DeleteCustomDataIdentifierRequest(input *DeleteCustomDataIdentifierInput) (req *request.Request, output *DeleteCustomDataIdentifierOutput) {
983	op := &request.Operation{
984		Name:       opDeleteCustomDataIdentifier,
985		HTTPMethod: "DELETE",
986		HTTPPath:   "/custom-data-identifiers/{id}",
987	}
988
989	if input == nil {
990		input = &DeleteCustomDataIdentifierInput{}
991	}
992
993	output = &DeleteCustomDataIdentifierOutput{}
994	req = c.newRequest(op, input, output)
995	req.Handlers.Unmarshal.Swap(restjson.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler)
996	return
997}
998
999// DeleteCustomDataIdentifier API operation for Amazon Macie 2.
1000//
1001// Soft deletes a custom data identifier.
1002//
1003// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
1004// with awserr.Error's Code and Message methods to get detailed information about
1005// the error.
1006//
1007// See the AWS API reference guide for Amazon Macie 2's
1008// API operation DeleteCustomDataIdentifier for usage and error information.
1009//
1010// Returned Error Types:
1011//   * ValidationException
1012//   Provides information about an error that occurred due to a syntax error in
1013//   a request.
1014//
1015//   * InternalServerException
1016//   Provides information about an error that occurred due to an unknown internal
1017//   server error, exception, or failure.
1018//
1019//   * ServiceQuotaExceededException
1020//   Provides information about an error that occurred due to one or more service
1021//   quotas for an account.
1022//
1023//   * AccessDeniedException
1024//   Provides information about an error that occurred due to insufficient access
1025//   to a specified resource.
1026//
1027//   * ResourceNotFoundException
1028//   Provides information about an error that occurred because a specified resource
1029//   wasn't found.
1030//
1031//   * ThrottlingException
1032//   Provides information about an error that occurred because too many requests
1033//   were sent during a certain amount of time.
1034//
1035//   * ConflictException
1036//   Provides information about an error that occurred due to a versioning conflict
1037//   for a specified resource.
1038//
1039// See also, https://docs.aws.amazon.com/goto/WebAPI/macie2-2020-01-01/DeleteCustomDataIdentifier
1040func (c *Macie2) DeleteCustomDataIdentifier(input *DeleteCustomDataIdentifierInput) (*DeleteCustomDataIdentifierOutput, error) {
1041	req, out := c.DeleteCustomDataIdentifierRequest(input)
1042	return out, req.Send()
1043}
1044
1045// DeleteCustomDataIdentifierWithContext is the same as DeleteCustomDataIdentifier with the addition of
1046// the ability to pass a context and additional request options.
1047//
1048// See DeleteCustomDataIdentifier for details on how to use this API operation.
1049//
1050// The context must be non-nil and will be used for request cancellation. If
1051// the context is nil a panic will occur. In the future the SDK may create
1052// sub-contexts for http.Requests. See https://golang.org/pkg/context/
1053// for more information on using Contexts.
1054func (c *Macie2) DeleteCustomDataIdentifierWithContext(ctx aws.Context, input *DeleteCustomDataIdentifierInput, opts ...request.Option) (*DeleteCustomDataIdentifierOutput, error) {
1055	req, out := c.DeleteCustomDataIdentifierRequest(input)
1056	req.SetContext(ctx)
1057	req.ApplyOptions(opts...)
1058	return out, req.Send()
1059}
1060
1061const opDeleteFindingsFilter = "DeleteFindingsFilter"
1062
1063// DeleteFindingsFilterRequest generates a "aws/request.Request" representing the
1064// client's request for the DeleteFindingsFilter operation. The "output" return
1065// value will be populated with the request's response once the request completes
1066// successfully.
1067//
1068// Use "Send" method on the returned Request to send the API call to the service.
1069// the "output" return value is not valid until after Send returns without error.
1070//
1071// See DeleteFindingsFilter for more information on using the DeleteFindingsFilter
1072// API call, and error handling.
1073//
1074// This method is useful when you want to inject custom logic or configuration
1075// into the SDK's request lifecycle. Such as custom headers, or retry logic.
1076//
1077//
1078//    // Example sending a request using the DeleteFindingsFilterRequest method.
1079//    req, resp := client.DeleteFindingsFilterRequest(params)
1080//
1081//    err := req.Send()
1082//    if err == nil { // resp is now filled
1083//        fmt.Println(resp)
1084//    }
1085//
1086// See also, https://docs.aws.amazon.com/goto/WebAPI/macie2-2020-01-01/DeleteFindingsFilter
1087func (c *Macie2) DeleteFindingsFilterRequest(input *DeleteFindingsFilterInput) (req *request.Request, output *DeleteFindingsFilterOutput) {
1088	op := &request.Operation{
1089		Name:       opDeleteFindingsFilter,
1090		HTTPMethod: "DELETE",
1091		HTTPPath:   "/findingsfilters/{id}",
1092	}
1093
1094	if input == nil {
1095		input = &DeleteFindingsFilterInput{}
1096	}
1097
1098	output = &DeleteFindingsFilterOutput{}
1099	req = c.newRequest(op, input, output)
1100	req.Handlers.Unmarshal.Swap(restjson.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler)
1101	return
1102}
1103
1104// DeleteFindingsFilter API operation for Amazon Macie 2.
1105//
1106// Deletes a findings filter.
1107//
1108// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
1109// with awserr.Error's Code and Message methods to get detailed information about
1110// the error.
1111//
1112// See the AWS API reference guide for Amazon Macie 2's
1113// API operation DeleteFindingsFilter for usage and error information.
1114//
1115// Returned Error Types:
1116//   * ValidationException
1117//   Provides information about an error that occurred due to a syntax error in
1118//   a request.
1119//
1120//   * InternalServerException
1121//   Provides information about an error that occurred due to an unknown internal
1122//   server error, exception, or failure.
1123//
1124//   * ServiceQuotaExceededException
1125//   Provides information about an error that occurred due to one or more service
1126//   quotas for an account.
1127//
1128//   * AccessDeniedException
1129//   Provides information about an error that occurred due to insufficient access
1130//   to a specified resource.
1131//
1132//   * ResourceNotFoundException
1133//   Provides information about an error that occurred because a specified resource
1134//   wasn't found.
1135//
1136//   * ThrottlingException
1137//   Provides information about an error that occurred because too many requests
1138//   were sent during a certain amount of time.
1139//
1140//   * ConflictException
1141//   Provides information about an error that occurred due to a versioning conflict
1142//   for a specified resource.
1143//
1144// See also, https://docs.aws.amazon.com/goto/WebAPI/macie2-2020-01-01/DeleteFindingsFilter
1145func (c *Macie2) DeleteFindingsFilter(input *DeleteFindingsFilterInput) (*DeleteFindingsFilterOutput, error) {
1146	req, out := c.DeleteFindingsFilterRequest(input)
1147	return out, req.Send()
1148}
1149
1150// DeleteFindingsFilterWithContext is the same as DeleteFindingsFilter with the addition of
1151// the ability to pass a context and additional request options.
1152//
1153// See DeleteFindingsFilter for details on how to use this API operation.
1154//
1155// The context must be non-nil and will be used for request cancellation. If
1156// the context is nil a panic will occur. In the future the SDK may create
1157// sub-contexts for http.Requests. See https://golang.org/pkg/context/
1158// for more information on using Contexts.
1159func (c *Macie2) DeleteFindingsFilterWithContext(ctx aws.Context, input *DeleteFindingsFilterInput, opts ...request.Option) (*DeleteFindingsFilterOutput, error) {
1160	req, out := c.DeleteFindingsFilterRequest(input)
1161	req.SetContext(ctx)
1162	req.ApplyOptions(opts...)
1163	return out, req.Send()
1164}
1165
1166const opDeleteInvitations = "DeleteInvitations"
1167
1168// DeleteInvitationsRequest generates a "aws/request.Request" representing the
1169// client's request for the DeleteInvitations operation. The "output" return
1170// value will be populated with the request's response once the request completes
1171// successfully.
1172//
1173// Use "Send" method on the returned Request to send the API call to the service.
1174// the "output" return value is not valid until after Send returns without error.
1175//
1176// See DeleteInvitations for more information on using the DeleteInvitations
1177// API call, and error handling.
1178//
1179// This method is useful when you want to inject custom logic or configuration
1180// into the SDK's request lifecycle. Such as custom headers, or retry logic.
1181//
1182//
1183//    // Example sending a request using the DeleteInvitationsRequest method.
1184//    req, resp := client.DeleteInvitationsRequest(params)
1185//
1186//    err := req.Send()
1187//    if err == nil { // resp is now filled
1188//        fmt.Println(resp)
1189//    }
1190//
1191// See also, https://docs.aws.amazon.com/goto/WebAPI/macie2-2020-01-01/DeleteInvitations
1192func (c *Macie2) DeleteInvitationsRequest(input *DeleteInvitationsInput) (req *request.Request, output *DeleteInvitationsOutput) {
1193	op := &request.Operation{
1194		Name:       opDeleteInvitations,
1195		HTTPMethod: "POST",
1196		HTTPPath:   "/invitations/delete",
1197	}
1198
1199	if input == nil {
1200		input = &DeleteInvitationsInput{}
1201	}
1202
1203	output = &DeleteInvitationsOutput{}
1204	req = c.newRequest(op, input, output)
1205	return
1206}
1207
1208// DeleteInvitations API operation for Amazon Macie 2.
1209//
1210// Deletes Amazon Macie membership invitations that were received from specific
1211// accounts.
1212//
1213// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
1214// with awserr.Error's Code and Message methods to get detailed information about
1215// the error.
1216//
1217// See the AWS API reference guide for Amazon Macie 2's
1218// API operation DeleteInvitations for usage and error information.
1219//
1220// Returned Error Types:
1221//   * ValidationException
1222//   Provides information about an error that occurred due to a syntax error in
1223//   a request.
1224//
1225//   * InternalServerException
1226//   Provides information about an error that occurred due to an unknown internal
1227//   server error, exception, or failure.
1228//
1229//   * ServiceQuotaExceededException
1230//   Provides information about an error that occurred due to one or more service
1231//   quotas for an account.
1232//
1233//   * AccessDeniedException
1234//   Provides information about an error that occurred due to insufficient access
1235//   to a specified resource.
1236//
1237//   * ResourceNotFoundException
1238//   Provides information about an error that occurred because a specified resource
1239//   wasn't found.
1240//
1241//   * ThrottlingException
1242//   Provides information about an error that occurred because too many requests
1243//   were sent during a certain amount of time.
1244//
1245//   * ConflictException
1246//   Provides information about an error that occurred due to a versioning conflict
1247//   for a specified resource.
1248//
1249// See also, https://docs.aws.amazon.com/goto/WebAPI/macie2-2020-01-01/DeleteInvitations
1250func (c *Macie2) DeleteInvitations(input *DeleteInvitationsInput) (*DeleteInvitationsOutput, error) {
1251	req, out := c.DeleteInvitationsRequest(input)
1252	return out, req.Send()
1253}
1254
1255// DeleteInvitationsWithContext is the same as DeleteInvitations with the addition of
1256// the ability to pass a context and additional request options.
1257//
1258// See DeleteInvitations for details on how to use this API operation.
1259//
1260// The context must be non-nil and will be used for request cancellation. If
1261// the context is nil a panic will occur. In the future the SDK may create
1262// sub-contexts for http.Requests. See https://golang.org/pkg/context/
1263// for more information on using Contexts.
1264func (c *Macie2) DeleteInvitationsWithContext(ctx aws.Context, input *DeleteInvitationsInput, opts ...request.Option) (*DeleteInvitationsOutput, error) {
1265	req, out := c.DeleteInvitationsRequest(input)
1266	req.SetContext(ctx)
1267	req.ApplyOptions(opts...)
1268	return out, req.Send()
1269}
1270
1271const opDeleteMember = "DeleteMember"
1272
1273// DeleteMemberRequest generates a "aws/request.Request" representing the
1274// client's request for the DeleteMember operation. The "output" return
1275// value will be populated with the request's response once the request completes
1276// successfully.
1277//
1278// Use "Send" method on the returned Request to send the API call to the service.
1279// the "output" return value is not valid until after Send returns without error.
1280//
1281// See DeleteMember for more information on using the DeleteMember
1282// API call, and error handling.
1283//
1284// This method is useful when you want to inject custom logic or configuration
1285// into the SDK's request lifecycle. Such as custom headers, or retry logic.
1286//
1287//
1288//    // Example sending a request using the DeleteMemberRequest method.
1289//    req, resp := client.DeleteMemberRequest(params)
1290//
1291//    err := req.Send()
1292//    if err == nil { // resp is now filled
1293//        fmt.Println(resp)
1294//    }
1295//
1296// See also, https://docs.aws.amazon.com/goto/WebAPI/macie2-2020-01-01/DeleteMember
1297func (c *Macie2) DeleteMemberRequest(input *DeleteMemberInput) (req *request.Request, output *DeleteMemberOutput) {
1298	op := &request.Operation{
1299		Name:       opDeleteMember,
1300		HTTPMethod: "DELETE",
1301		HTTPPath:   "/members/{id}",
1302	}
1303
1304	if input == nil {
1305		input = &DeleteMemberInput{}
1306	}
1307
1308	output = &DeleteMemberOutput{}
1309	req = c.newRequest(op, input, output)
1310	req.Handlers.Unmarshal.Swap(restjson.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler)
1311	return
1312}
1313
1314// DeleteMember API operation for Amazon Macie 2.
1315//
1316// Deletes the association between an Amazon Macie administrator account and
1317// an account.
1318//
1319// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
1320// with awserr.Error's Code and Message methods to get detailed information about
1321// the error.
1322//
1323// See the AWS API reference guide for Amazon Macie 2's
1324// API operation DeleteMember for usage and error information.
1325//
1326// Returned Error Types:
1327//   * ValidationException
1328//   Provides information about an error that occurred due to a syntax error in
1329//   a request.
1330//
1331//   * InternalServerException
1332//   Provides information about an error that occurred due to an unknown internal
1333//   server error, exception, or failure.
1334//
1335//   * ServiceQuotaExceededException
1336//   Provides information about an error that occurred due to one or more service
1337//   quotas for an account.
1338//
1339//   * AccessDeniedException
1340//   Provides information about an error that occurred due to insufficient access
1341//   to a specified resource.
1342//
1343//   * ResourceNotFoundException
1344//   Provides information about an error that occurred because a specified resource
1345//   wasn't found.
1346//
1347//   * ThrottlingException
1348//   Provides information about an error that occurred because too many requests
1349//   were sent during a certain amount of time.
1350//
1351//   * ConflictException
1352//   Provides information about an error that occurred due to a versioning conflict
1353//   for a specified resource.
1354//
1355// See also, https://docs.aws.amazon.com/goto/WebAPI/macie2-2020-01-01/DeleteMember
1356func (c *Macie2) DeleteMember(input *DeleteMemberInput) (*DeleteMemberOutput, error) {
1357	req, out := c.DeleteMemberRequest(input)
1358	return out, req.Send()
1359}
1360
1361// DeleteMemberWithContext is the same as DeleteMember with the addition of
1362// the ability to pass a context and additional request options.
1363//
1364// See DeleteMember for details on how to use this API operation.
1365//
1366// The context must be non-nil and will be used for request cancellation. If
1367// the context is nil a panic will occur. In the future the SDK may create
1368// sub-contexts for http.Requests. See https://golang.org/pkg/context/
1369// for more information on using Contexts.
1370func (c *Macie2) DeleteMemberWithContext(ctx aws.Context, input *DeleteMemberInput, opts ...request.Option) (*DeleteMemberOutput, error) {
1371	req, out := c.DeleteMemberRequest(input)
1372	req.SetContext(ctx)
1373	req.ApplyOptions(opts...)
1374	return out, req.Send()
1375}
1376
1377const opDescribeBuckets = "DescribeBuckets"
1378
1379// DescribeBucketsRequest generates a "aws/request.Request" representing the
1380// client's request for the DescribeBuckets operation. The "output" return
1381// value will be populated with the request's response once the request completes
1382// successfully.
1383//
1384// Use "Send" method on the returned Request to send the API call to the service.
1385// the "output" return value is not valid until after Send returns without error.
1386//
1387// See DescribeBuckets for more information on using the DescribeBuckets
1388// API call, and error handling.
1389//
1390// This method is useful when you want to inject custom logic or configuration
1391// into the SDK's request lifecycle. Such as custom headers, or retry logic.
1392//
1393//
1394//    // Example sending a request using the DescribeBucketsRequest method.
1395//    req, resp := client.DescribeBucketsRequest(params)
1396//
1397//    err := req.Send()
1398//    if err == nil { // resp is now filled
1399//        fmt.Println(resp)
1400//    }
1401//
1402// See also, https://docs.aws.amazon.com/goto/WebAPI/macie2-2020-01-01/DescribeBuckets
1403func (c *Macie2) DescribeBucketsRequest(input *DescribeBucketsInput) (req *request.Request, output *DescribeBucketsOutput) {
1404	op := &request.Operation{
1405		Name:       opDescribeBuckets,
1406		HTTPMethod: "POST",
1407		HTTPPath:   "/datasources/s3",
1408		Paginator: &request.Paginator{
1409			InputTokens:     []string{"nextToken"},
1410			OutputTokens:    []string{"nextToken"},
1411			LimitToken:      "maxResults",
1412			TruncationToken: "",
1413		},
1414	}
1415
1416	if input == nil {
1417		input = &DescribeBucketsInput{}
1418	}
1419
1420	output = &DescribeBucketsOutput{}
1421	req = c.newRequest(op, input, output)
1422	return
1423}
1424
1425// DescribeBuckets API operation for Amazon Macie 2.
1426//
1427// Retrieves (queries) statistical data and other information about one or more
1428// S3 buckets that Amazon Macie monitors and analyzes.
1429//
1430// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
1431// with awserr.Error's Code and Message methods to get detailed information about
1432// the error.
1433//
1434// See the AWS API reference guide for Amazon Macie 2's
1435// API operation DescribeBuckets for usage and error information.
1436//
1437// Returned Error Types:
1438//   * ValidationException
1439//   Provides information about an error that occurred due to a syntax error in
1440//   a request.
1441//
1442//   * InternalServerException
1443//   Provides information about an error that occurred due to an unknown internal
1444//   server error, exception, or failure.
1445//
1446//   * ServiceQuotaExceededException
1447//   Provides information about an error that occurred due to one or more service
1448//   quotas for an account.
1449//
1450//   * AccessDeniedException
1451//   Provides information about an error that occurred due to insufficient access
1452//   to a specified resource.
1453//
1454//   * ResourceNotFoundException
1455//   Provides information about an error that occurred because a specified resource
1456//   wasn't found.
1457//
1458//   * ThrottlingException
1459//   Provides information about an error that occurred because too many requests
1460//   were sent during a certain amount of time.
1461//
1462//   * ConflictException
1463//   Provides information about an error that occurred due to a versioning conflict
1464//   for a specified resource.
1465//
1466// See also, https://docs.aws.amazon.com/goto/WebAPI/macie2-2020-01-01/DescribeBuckets
1467func (c *Macie2) DescribeBuckets(input *DescribeBucketsInput) (*DescribeBucketsOutput, error) {
1468	req, out := c.DescribeBucketsRequest(input)
1469	return out, req.Send()
1470}
1471
1472// DescribeBucketsWithContext is the same as DescribeBuckets with the addition of
1473// the ability to pass a context and additional request options.
1474//
1475// See DescribeBuckets for details on how to use this API operation.
1476//
1477// The context must be non-nil and will be used for request cancellation. If
1478// the context is nil a panic will occur. In the future the SDK may create
1479// sub-contexts for http.Requests. See https://golang.org/pkg/context/
1480// for more information on using Contexts.
1481func (c *Macie2) DescribeBucketsWithContext(ctx aws.Context, input *DescribeBucketsInput, opts ...request.Option) (*DescribeBucketsOutput, error) {
1482	req, out := c.DescribeBucketsRequest(input)
1483	req.SetContext(ctx)
1484	req.ApplyOptions(opts...)
1485	return out, req.Send()
1486}
1487
1488// DescribeBucketsPages iterates over the pages of a DescribeBuckets operation,
1489// calling the "fn" function with the response data for each page. To stop
1490// iterating, return false from the fn function.
1491//
1492// See DescribeBuckets method for more information on how to use this operation.
1493//
1494// Note: This operation can generate multiple requests to a service.
1495//
1496//    // Example iterating over at most 3 pages of a DescribeBuckets operation.
1497//    pageNum := 0
1498//    err := client.DescribeBucketsPages(params,
1499//        func(page *macie2.DescribeBucketsOutput, lastPage bool) bool {
1500//            pageNum++
1501//            fmt.Println(page)
1502//            return pageNum <= 3
1503//        })
1504//
1505func (c *Macie2) DescribeBucketsPages(input *DescribeBucketsInput, fn func(*DescribeBucketsOutput, bool) bool) error {
1506	return c.DescribeBucketsPagesWithContext(aws.BackgroundContext(), input, fn)
1507}
1508
1509// DescribeBucketsPagesWithContext same as DescribeBucketsPages except
1510// it takes a Context and allows setting request options on the pages.
1511//
1512// The context must be non-nil and will be used for request cancellation. If
1513// the context is nil a panic will occur. In the future the SDK may create
1514// sub-contexts for http.Requests. See https://golang.org/pkg/context/
1515// for more information on using Contexts.
1516func (c *Macie2) DescribeBucketsPagesWithContext(ctx aws.Context, input *DescribeBucketsInput, fn func(*DescribeBucketsOutput, bool) bool, opts ...request.Option) error {
1517	p := request.Pagination{
1518		NewRequest: func() (*request.Request, error) {
1519			var inCpy *DescribeBucketsInput
1520			if input != nil {
1521				tmp := *input
1522				inCpy = &tmp
1523			}
1524			req, _ := c.DescribeBucketsRequest(inCpy)
1525			req.SetContext(ctx)
1526			req.ApplyOptions(opts...)
1527			return req, nil
1528		},
1529	}
1530
1531	for p.Next() {
1532		if !fn(p.Page().(*DescribeBucketsOutput), !p.HasNextPage()) {
1533			break
1534		}
1535	}
1536
1537	return p.Err()
1538}
1539
1540const opDescribeClassificationJob = "DescribeClassificationJob"
1541
1542// DescribeClassificationJobRequest generates a "aws/request.Request" representing the
1543// client's request for the DescribeClassificationJob operation. The "output" return
1544// value will be populated with the request's response once the request completes
1545// successfully.
1546//
1547// Use "Send" method on the returned Request to send the API call to the service.
1548// the "output" return value is not valid until after Send returns without error.
1549//
1550// See DescribeClassificationJob for more information on using the DescribeClassificationJob
1551// API call, and error handling.
1552//
1553// This method is useful when you want to inject custom logic or configuration
1554// into the SDK's request lifecycle. Such as custom headers, or retry logic.
1555//
1556//
1557//    // Example sending a request using the DescribeClassificationJobRequest method.
1558//    req, resp := client.DescribeClassificationJobRequest(params)
1559//
1560//    err := req.Send()
1561//    if err == nil { // resp is now filled
1562//        fmt.Println(resp)
1563//    }
1564//
1565// See also, https://docs.aws.amazon.com/goto/WebAPI/macie2-2020-01-01/DescribeClassificationJob
1566func (c *Macie2) DescribeClassificationJobRequest(input *DescribeClassificationJobInput) (req *request.Request, output *DescribeClassificationJobOutput) {
1567	op := &request.Operation{
1568		Name:       opDescribeClassificationJob,
1569		HTTPMethod: "GET",
1570		HTTPPath:   "/jobs/{jobId}",
1571	}
1572
1573	if input == nil {
1574		input = &DescribeClassificationJobInput{}
1575	}
1576
1577	output = &DescribeClassificationJobOutput{}
1578	req = c.newRequest(op, input, output)
1579	return
1580}
1581
1582// DescribeClassificationJob API operation for Amazon Macie 2.
1583//
1584// Retrieves the status and settings for a classification job.
1585//
1586// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
1587// with awserr.Error's Code and Message methods to get detailed information about
1588// the error.
1589//
1590// See the AWS API reference guide for Amazon Macie 2's
1591// API operation DescribeClassificationJob for usage and error information.
1592//
1593// Returned Error Types:
1594//   * ValidationException
1595//   Provides information about an error that occurred due to a syntax error in
1596//   a request.
1597//
1598//   * InternalServerException
1599//   Provides information about an error that occurred due to an unknown internal
1600//   server error, exception, or failure.
1601//
1602//   * ServiceQuotaExceededException
1603//   Provides information about an error that occurred due to one or more service
1604//   quotas for an account.
1605//
1606//   * AccessDeniedException
1607//   Provides information about an error that occurred due to insufficient access
1608//   to a specified resource.
1609//
1610//   * ResourceNotFoundException
1611//   Provides information about an error that occurred because a specified resource
1612//   wasn't found.
1613//
1614//   * ThrottlingException
1615//   Provides information about an error that occurred because too many requests
1616//   were sent during a certain amount of time.
1617//
1618//   * ConflictException
1619//   Provides information about an error that occurred due to a versioning conflict
1620//   for a specified resource.
1621//
1622// See also, https://docs.aws.amazon.com/goto/WebAPI/macie2-2020-01-01/DescribeClassificationJob
1623func (c *Macie2) DescribeClassificationJob(input *DescribeClassificationJobInput) (*DescribeClassificationJobOutput, error) {
1624	req, out := c.DescribeClassificationJobRequest(input)
1625	return out, req.Send()
1626}
1627
1628// DescribeClassificationJobWithContext is the same as DescribeClassificationJob with the addition of
1629// the ability to pass a context and additional request options.
1630//
1631// See DescribeClassificationJob for details on how to use this API operation.
1632//
1633// The context must be non-nil and will be used for request cancellation. If
1634// the context is nil a panic will occur. In the future the SDK may create
1635// sub-contexts for http.Requests. See https://golang.org/pkg/context/
1636// for more information on using Contexts.
1637func (c *Macie2) DescribeClassificationJobWithContext(ctx aws.Context, input *DescribeClassificationJobInput, opts ...request.Option) (*DescribeClassificationJobOutput, error) {
1638	req, out := c.DescribeClassificationJobRequest(input)
1639	req.SetContext(ctx)
1640	req.ApplyOptions(opts...)
1641	return out, req.Send()
1642}
1643
1644const opDescribeOrganizationConfiguration = "DescribeOrganizationConfiguration"
1645
1646// DescribeOrganizationConfigurationRequest generates a "aws/request.Request" representing the
1647// client's request for the DescribeOrganizationConfiguration operation. The "output" return
1648// value will be populated with the request's response once the request completes
1649// successfully.
1650//
1651// Use "Send" method on the returned Request to send the API call to the service.
1652// the "output" return value is not valid until after Send returns without error.
1653//
1654// See DescribeOrganizationConfiguration for more information on using the DescribeOrganizationConfiguration
1655// API call, and error handling.
1656//
1657// This method is useful when you want to inject custom logic or configuration
1658// into the SDK's request lifecycle. Such as custom headers, or retry logic.
1659//
1660//
1661//    // Example sending a request using the DescribeOrganizationConfigurationRequest method.
1662//    req, resp := client.DescribeOrganizationConfigurationRequest(params)
1663//
1664//    err := req.Send()
1665//    if err == nil { // resp is now filled
1666//        fmt.Println(resp)
1667//    }
1668//
1669// See also, https://docs.aws.amazon.com/goto/WebAPI/macie2-2020-01-01/DescribeOrganizationConfiguration
1670func (c *Macie2) DescribeOrganizationConfigurationRequest(input *DescribeOrganizationConfigurationInput) (req *request.Request, output *DescribeOrganizationConfigurationOutput) {
1671	op := &request.Operation{
1672		Name:       opDescribeOrganizationConfiguration,
1673		HTTPMethod: "GET",
1674		HTTPPath:   "/admin/configuration",
1675	}
1676
1677	if input == nil {
1678		input = &DescribeOrganizationConfigurationInput{}
1679	}
1680
1681	output = &DescribeOrganizationConfigurationOutput{}
1682	req = c.newRequest(op, input, output)
1683	return
1684}
1685
1686// DescribeOrganizationConfiguration API operation for Amazon Macie 2.
1687//
1688// Retrieves the Amazon Macie configuration settings for an Amazon Web Services
1689// organization.
1690//
1691// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
1692// with awserr.Error's Code and Message methods to get detailed information about
1693// the error.
1694//
1695// See the AWS API reference guide for Amazon Macie 2's
1696// API operation DescribeOrganizationConfiguration for usage and error information.
1697//
1698// Returned Error Types:
1699//   * ValidationException
1700//   Provides information about an error that occurred due to a syntax error in
1701//   a request.
1702//
1703//   * InternalServerException
1704//   Provides information about an error that occurred due to an unknown internal
1705//   server error, exception, or failure.
1706//
1707//   * ServiceQuotaExceededException
1708//   Provides information about an error that occurred due to one or more service
1709//   quotas for an account.
1710//
1711//   * AccessDeniedException
1712//   Provides information about an error that occurred due to insufficient access
1713//   to a specified resource.
1714//
1715//   * ResourceNotFoundException
1716//   Provides information about an error that occurred because a specified resource
1717//   wasn't found.
1718//
1719//   * ThrottlingException
1720//   Provides information about an error that occurred because too many requests
1721//   were sent during a certain amount of time.
1722//
1723//   * ConflictException
1724//   Provides information about an error that occurred due to a versioning conflict
1725//   for a specified resource.
1726//
1727// See also, https://docs.aws.amazon.com/goto/WebAPI/macie2-2020-01-01/DescribeOrganizationConfiguration
1728func (c *Macie2) DescribeOrganizationConfiguration(input *DescribeOrganizationConfigurationInput) (*DescribeOrganizationConfigurationOutput, error) {
1729	req, out := c.DescribeOrganizationConfigurationRequest(input)
1730	return out, req.Send()
1731}
1732
1733// DescribeOrganizationConfigurationWithContext is the same as DescribeOrganizationConfiguration with the addition of
1734// the ability to pass a context and additional request options.
1735//
1736// See DescribeOrganizationConfiguration for details on how to use this API operation.
1737//
1738// The context must be non-nil and will be used for request cancellation. If
1739// the context is nil a panic will occur. In the future the SDK may create
1740// sub-contexts for http.Requests. See https://golang.org/pkg/context/
1741// for more information on using Contexts.
1742func (c *Macie2) DescribeOrganizationConfigurationWithContext(ctx aws.Context, input *DescribeOrganizationConfigurationInput, opts ...request.Option) (*DescribeOrganizationConfigurationOutput, error) {
1743	req, out := c.DescribeOrganizationConfigurationRequest(input)
1744	req.SetContext(ctx)
1745	req.ApplyOptions(opts...)
1746	return out, req.Send()
1747}
1748
1749const opDisableMacie = "DisableMacie"
1750
1751// DisableMacieRequest generates a "aws/request.Request" representing the
1752// client's request for the DisableMacie operation. The "output" return
1753// value will be populated with the request's response once the request completes
1754// successfully.
1755//
1756// Use "Send" method on the returned Request to send the API call to the service.
1757// the "output" return value is not valid until after Send returns without error.
1758//
1759// See DisableMacie for more information on using the DisableMacie
1760// API call, and error handling.
1761//
1762// This method is useful when you want to inject custom logic or configuration
1763// into the SDK's request lifecycle. Such as custom headers, or retry logic.
1764//
1765//
1766//    // Example sending a request using the DisableMacieRequest method.
1767//    req, resp := client.DisableMacieRequest(params)
1768//
1769//    err := req.Send()
1770//    if err == nil { // resp is now filled
1771//        fmt.Println(resp)
1772//    }
1773//
1774// See also, https://docs.aws.amazon.com/goto/WebAPI/macie2-2020-01-01/DisableMacie
1775func (c *Macie2) DisableMacieRequest(input *DisableMacieInput) (req *request.Request, output *DisableMacieOutput) {
1776	op := &request.Operation{
1777		Name:       opDisableMacie,
1778		HTTPMethod: "DELETE",
1779		HTTPPath:   "/macie",
1780	}
1781
1782	if input == nil {
1783		input = &DisableMacieInput{}
1784	}
1785
1786	output = &DisableMacieOutput{}
1787	req = c.newRequest(op, input, output)
1788	req.Handlers.Unmarshal.Swap(restjson.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler)
1789	return
1790}
1791
1792// DisableMacie API operation for Amazon Macie 2.
1793//
1794// Disables an Amazon Macie account and deletes Macie resources for the account.
1795//
1796// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
1797// with awserr.Error's Code and Message methods to get detailed information about
1798// the error.
1799//
1800// See the AWS API reference guide for Amazon Macie 2's
1801// API operation DisableMacie for usage and error information.
1802//
1803// Returned Error Types:
1804//   * ValidationException
1805//   Provides information about an error that occurred due to a syntax error in
1806//   a request.
1807//
1808//   * InternalServerException
1809//   Provides information about an error that occurred due to an unknown internal
1810//   server error, exception, or failure.
1811//
1812//   * ServiceQuotaExceededException
1813//   Provides information about an error that occurred due to one or more service
1814//   quotas for an account.
1815//
1816//   * AccessDeniedException
1817//   Provides information about an error that occurred due to insufficient access
1818//   to a specified resource.
1819//
1820//   * ResourceNotFoundException
1821//   Provides information about an error that occurred because a specified resource
1822//   wasn't found.
1823//
1824//   * ThrottlingException
1825//   Provides information about an error that occurred because too many requests
1826//   were sent during a certain amount of time.
1827//
1828//   * ConflictException
1829//   Provides information about an error that occurred due to a versioning conflict
1830//   for a specified resource.
1831//
1832// See also, https://docs.aws.amazon.com/goto/WebAPI/macie2-2020-01-01/DisableMacie
1833func (c *Macie2) DisableMacie(input *DisableMacieInput) (*DisableMacieOutput, error) {
1834	req, out := c.DisableMacieRequest(input)
1835	return out, req.Send()
1836}
1837
1838// DisableMacieWithContext is the same as DisableMacie with the addition of
1839// the ability to pass a context and additional request options.
1840//
1841// See DisableMacie for details on how to use this API operation.
1842//
1843// The context must be non-nil and will be used for request cancellation. If
1844// the context is nil a panic will occur. In the future the SDK may create
1845// sub-contexts for http.Requests. See https://golang.org/pkg/context/
1846// for more information on using Contexts.
1847func (c *Macie2) DisableMacieWithContext(ctx aws.Context, input *DisableMacieInput, opts ...request.Option) (*DisableMacieOutput, error) {
1848	req, out := c.DisableMacieRequest(input)
1849	req.SetContext(ctx)
1850	req.ApplyOptions(opts...)
1851	return out, req.Send()
1852}
1853
1854const opDisableOrganizationAdminAccount = "DisableOrganizationAdminAccount"
1855
1856// DisableOrganizationAdminAccountRequest generates a "aws/request.Request" representing the
1857// client's request for the DisableOrganizationAdminAccount operation. The "output" return
1858// value will be populated with the request's response once the request completes
1859// successfully.
1860//
1861// Use "Send" method on the returned Request to send the API call to the service.
1862// the "output" return value is not valid until after Send returns without error.
1863//
1864// See DisableOrganizationAdminAccount for more information on using the DisableOrganizationAdminAccount
1865// API call, and error handling.
1866//
1867// This method is useful when you want to inject custom logic or configuration
1868// into the SDK's request lifecycle. Such as custom headers, or retry logic.
1869//
1870//
1871//    // Example sending a request using the DisableOrganizationAdminAccountRequest method.
1872//    req, resp := client.DisableOrganizationAdminAccountRequest(params)
1873//
1874//    err := req.Send()
1875//    if err == nil { // resp is now filled
1876//        fmt.Println(resp)
1877//    }
1878//
1879// See also, https://docs.aws.amazon.com/goto/WebAPI/macie2-2020-01-01/DisableOrganizationAdminAccount
1880func (c *Macie2) DisableOrganizationAdminAccountRequest(input *DisableOrganizationAdminAccountInput) (req *request.Request, output *DisableOrganizationAdminAccountOutput) {
1881	op := &request.Operation{
1882		Name:       opDisableOrganizationAdminAccount,
1883		HTTPMethod: "DELETE",
1884		HTTPPath:   "/admin",
1885	}
1886
1887	if input == nil {
1888		input = &DisableOrganizationAdminAccountInput{}
1889	}
1890
1891	output = &DisableOrganizationAdminAccountOutput{}
1892	req = c.newRequest(op, input, output)
1893	req.Handlers.Unmarshal.Swap(restjson.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler)
1894	return
1895}
1896
1897// DisableOrganizationAdminAccount API operation for Amazon Macie 2.
1898//
1899// Disables an account as the delegated Amazon Macie administrator account for
1900// an Amazon Web Services organization.
1901//
1902// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
1903// with awserr.Error's Code and Message methods to get detailed information about
1904// the error.
1905//
1906// See the AWS API reference guide for Amazon Macie 2's
1907// API operation DisableOrganizationAdminAccount for usage and error information.
1908//
1909// Returned Error Types:
1910//   * ValidationException
1911//   Provides information about an error that occurred due to a syntax error in
1912//   a request.
1913//
1914//   * InternalServerException
1915//   Provides information about an error that occurred due to an unknown internal
1916//   server error, exception, or failure.
1917//
1918//   * ServiceQuotaExceededException
1919//   Provides information about an error that occurred due to one or more service
1920//   quotas for an account.
1921//
1922//   * AccessDeniedException
1923//   Provides information about an error that occurred due to insufficient access
1924//   to a specified resource.
1925//
1926//   * ResourceNotFoundException
1927//   Provides information about an error that occurred because a specified resource
1928//   wasn't found.
1929//
1930//   * ThrottlingException
1931//   Provides information about an error that occurred because too many requests
1932//   were sent during a certain amount of time.
1933//
1934//   * ConflictException
1935//   Provides information about an error that occurred due to a versioning conflict
1936//   for a specified resource.
1937//
1938// See also, https://docs.aws.amazon.com/goto/WebAPI/macie2-2020-01-01/DisableOrganizationAdminAccount
1939func (c *Macie2) DisableOrganizationAdminAccount(input *DisableOrganizationAdminAccountInput) (*DisableOrganizationAdminAccountOutput, error) {
1940	req, out := c.DisableOrganizationAdminAccountRequest(input)
1941	return out, req.Send()
1942}
1943
1944// DisableOrganizationAdminAccountWithContext is the same as DisableOrganizationAdminAccount with the addition of
1945// the ability to pass a context and additional request options.
1946//
1947// See DisableOrganizationAdminAccount for details on how to use this API operation.
1948//
1949// The context must be non-nil and will be used for request cancellation. If
1950// the context is nil a panic will occur. In the future the SDK may create
1951// sub-contexts for http.Requests. See https://golang.org/pkg/context/
1952// for more information on using Contexts.
1953func (c *Macie2) DisableOrganizationAdminAccountWithContext(ctx aws.Context, input *DisableOrganizationAdminAccountInput, opts ...request.Option) (*DisableOrganizationAdminAccountOutput, error) {
1954	req, out := c.DisableOrganizationAdminAccountRequest(input)
1955	req.SetContext(ctx)
1956	req.ApplyOptions(opts...)
1957	return out, req.Send()
1958}
1959
1960const opDisassociateFromAdministratorAccount = "DisassociateFromAdministratorAccount"
1961
1962// DisassociateFromAdministratorAccountRequest generates a "aws/request.Request" representing the
1963// client's request for the DisassociateFromAdministratorAccount operation. The "output" return
1964// value will be populated with the request's response once the request completes
1965// successfully.
1966//
1967// Use "Send" method on the returned Request to send the API call to the service.
1968// the "output" return value is not valid until after Send returns without error.
1969//
1970// See DisassociateFromAdministratorAccount for more information on using the DisassociateFromAdministratorAccount
1971// API call, and error handling.
1972//
1973// This method is useful when you want to inject custom logic or configuration
1974// into the SDK's request lifecycle. Such as custom headers, or retry logic.
1975//
1976//
1977//    // Example sending a request using the DisassociateFromAdministratorAccountRequest method.
1978//    req, resp := client.DisassociateFromAdministratorAccountRequest(params)
1979//
1980//    err := req.Send()
1981//    if err == nil { // resp is now filled
1982//        fmt.Println(resp)
1983//    }
1984//
1985// See also, https://docs.aws.amazon.com/goto/WebAPI/macie2-2020-01-01/DisassociateFromAdministratorAccount
1986func (c *Macie2) DisassociateFromAdministratorAccountRequest(input *DisassociateFromAdministratorAccountInput) (req *request.Request, output *DisassociateFromAdministratorAccountOutput) {
1987	op := &request.Operation{
1988		Name:       opDisassociateFromAdministratorAccount,
1989		HTTPMethod: "POST",
1990		HTTPPath:   "/administrator/disassociate",
1991	}
1992
1993	if input == nil {
1994		input = &DisassociateFromAdministratorAccountInput{}
1995	}
1996
1997	output = &DisassociateFromAdministratorAccountOutput{}
1998	req = c.newRequest(op, input, output)
1999	req.Handlers.Unmarshal.Swap(restjson.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler)
2000	return
2001}
2002
2003// DisassociateFromAdministratorAccount API operation for Amazon Macie 2.
2004//
2005// Disassociates a member account from its Amazon Macie administrator account.
2006//
2007// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
2008// with awserr.Error's Code and Message methods to get detailed information about
2009// the error.
2010//
2011// See the AWS API reference guide for Amazon Macie 2's
2012// API operation DisassociateFromAdministratorAccount for usage and error information.
2013//
2014// Returned Error Types:
2015//   * ValidationException
2016//   Provides information about an error that occurred due to a syntax error in
2017//   a request.
2018//
2019//   * InternalServerException
2020//   Provides information about an error that occurred due to an unknown internal
2021//   server error, exception, or failure.
2022//
2023//   * ServiceQuotaExceededException
2024//   Provides information about an error that occurred due to one or more service
2025//   quotas for an account.
2026//
2027//   * AccessDeniedException
2028//   Provides information about an error that occurred due to insufficient access
2029//   to a specified resource.
2030//
2031//   * ResourceNotFoundException
2032//   Provides information about an error that occurred because a specified resource
2033//   wasn't found.
2034//
2035//   * ThrottlingException
2036//   Provides information about an error that occurred because too many requests
2037//   were sent during a certain amount of time.
2038//
2039//   * ConflictException
2040//   Provides information about an error that occurred due to a versioning conflict
2041//   for a specified resource.
2042//
2043// See also, https://docs.aws.amazon.com/goto/WebAPI/macie2-2020-01-01/DisassociateFromAdministratorAccount
2044func (c *Macie2) DisassociateFromAdministratorAccount(input *DisassociateFromAdministratorAccountInput) (*DisassociateFromAdministratorAccountOutput, error) {
2045	req, out := c.DisassociateFromAdministratorAccountRequest(input)
2046	return out, req.Send()
2047}
2048
2049// DisassociateFromAdministratorAccountWithContext is the same as DisassociateFromAdministratorAccount with the addition of
2050// the ability to pass a context and additional request options.
2051//
2052// See DisassociateFromAdministratorAccount for details on how to use this API operation.
2053//
2054// The context must be non-nil and will be used for request cancellation. If
2055// the context is nil a panic will occur. In the future the SDK may create
2056// sub-contexts for http.Requests. See https://golang.org/pkg/context/
2057// for more information on using Contexts.
2058func (c *Macie2) DisassociateFromAdministratorAccountWithContext(ctx aws.Context, input *DisassociateFromAdministratorAccountInput, opts ...request.Option) (*DisassociateFromAdministratorAccountOutput, error) {
2059	req, out := c.DisassociateFromAdministratorAccountRequest(input)
2060	req.SetContext(ctx)
2061	req.ApplyOptions(opts...)
2062	return out, req.Send()
2063}
2064
2065const opDisassociateFromMasterAccount = "DisassociateFromMasterAccount"
2066
2067// DisassociateFromMasterAccountRequest generates a "aws/request.Request" representing the
2068// client's request for the DisassociateFromMasterAccount operation. The "output" return
2069// value will be populated with the request's response once the request completes
2070// successfully.
2071//
2072// Use "Send" method on the returned Request to send the API call to the service.
2073// the "output" return value is not valid until after Send returns without error.
2074//
2075// See DisassociateFromMasterAccount for more information on using the DisassociateFromMasterAccount
2076// API call, and error handling.
2077//
2078// This method is useful when you want to inject custom logic or configuration
2079// into the SDK's request lifecycle. Such as custom headers, or retry logic.
2080//
2081//
2082//    // Example sending a request using the DisassociateFromMasterAccountRequest method.
2083//    req, resp := client.DisassociateFromMasterAccountRequest(params)
2084//
2085//    err := req.Send()
2086//    if err == nil { // resp is now filled
2087//        fmt.Println(resp)
2088//    }
2089//
2090// See also, https://docs.aws.amazon.com/goto/WebAPI/macie2-2020-01-01/DisassociateFromMasterAccount
2091func (c *Macie2) DisassociateFromMasterAccountRequest(input *DisassociateFromMasterAccountInput) (req *request.Request, output *DisassociateFromMasterAccountOutput) {
2092	op := &request.Operation{
2093		Name:       opDisassociateFromMasterAccount,
2094		HTTPMethod: "POST",
2095		HTTPPath:   "/master/disassociate",
2096	}
2097
2098	if input == nil {
2099		input = &DisassociateFromMasterAccountInput{}
2100	}
2101
2102	output = &DisassociateFromMasterAccountOutput{}
2103	req = c.newRequest(op, input, output)
2104	req.Handlers.Unmarshal.Swap(restjson.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler)
2105	return
2106}
2107
2108// DisassociateFromMasterAccount API operation for Amazon Macie 2.
2109//
2110// (Deprecated) Disassociates a member account from its Amazon Macie administrator
2111// account. This operation has been replaced by the DisassociateFromAdministratorAccount
2112// operation.
2113//
2114// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
2115// with awserr.Error's Code and Message methods to get detailed information about
2116// the error.
2117//
2118// See the AWS API reference guide for Amazon Macie 2's
2119// API operation DisassociateFromMasterAccount for usage and error information.
2120//
2121// Returned Error Types:
2122//   * ValidationException
2123//   Provides information about an error that occurred due to a syntax error in
2124//   a request.
2125//
2126//   * InternalServerException
2127//   Provides information about an error that occurred due to an unknown internal
2128//   server error, exception, or failure.
2129//
2130//   * ServiceQuotaExceededException
2131//   Provides information about an error that occurred due to one or more service
2132//   quotas for an account.
2133//
2134//   * AccessDeniedException
2135//   Provides information about an error that occurred due to insufficient access
2136//   to a specified resource.
2137//
2138//   * ResourceNotFoundException
2139//   Provides information about an error that occurred because a specified resource
2140//   wasn't found.
2141//
2142//   * ThrottlingException
2143//   Provides information about an error that occurred because too many requests
2144//   were sent during a certain amount of time.
2145//
2146//   * ConflictException
2147//   Provides information about an error that occurred due to a versioning conflict
2148//   for a specified resource.
2149//
2150// See also, https://docs.aws.amazon.com/goto/WebAPI/macie2-2020-01-01/DisassociateFromMasterAccount
2151func (c *Macie2) DisassociateFromMasterAccount(input *DisassociateFromMasterAccountInput) (*DisassociateFromMasterAccountOutput, error) {
2152	req, out := c.DisassociateFromMasterAccountRequest(input)
2153	return out, req.Send()
2154}
2155
2156// DisassociateFromMasterAccountWithContext is the same as DisassociateFromMasterAccount with the addition of
2157// the ability to pass a context and additional request options.
2158//
2159// See DisassociateFromMasterAccount for details on how to use this API operation.
2160//
2161// The context must be non-nil and will be used for request cancellation. If
2162// the context is nil a panic will occur. In the future the SDK may create
2163// sub-contexts for http.Requests. See https://golang.org/pkg/context/
2164// for more information on using Contexts.
2165func (c *Macie2) DisassociateFromMasterAccountWithContext(ctx aws.Context, input *DisassociateFromMasterAccountInput, opts ...request.Option) (*DisassociateFromMasterAccountOutput, error) {
2166	req, out := c.DisassociateFromMasterAccountRequest(input)
2167	req.SetContext(ctx)
2168	req.ApplyOptions(opts...)
2169	return out, req.Send()
2170}
2171
2172const opDisassociateMember = "DisassociateMember"
2173
2174// DisassociateMemberRequest generates a "aws/request.Request" representing the
2175// client's request for the DisassociateMember operation. The "output" return
2176// value will be populated with the request's response once the request completes
2177// successfully.
2178//
2179// Use "Send" method on the returned Request to send the API call to the service.
2180// the "output" return value is not valid until after Send returns without error.
2181//
2182// See DisassociateMember for more information on using the DisassociateMember
2183// API call, and error handling.
2184//
2185// This method is useful when you want to inject custom logic or configuration
2186// into the SDK's request lifecycle. Such as custom headers, or retry logic.
2187//
2188//
2189//    // Example sending a request using the DisassociateMemberRequest method.
2190//    req, resp := client.DisassociateMemberRequest(params)
2191//
2192//    err := req.Send()
2193//    if err == nil { // resp is now filled
2194//        fmt.Println(resp)
2195//    }
2196//
2197// See also, https://docs.aws.amazon.com/goto/WebAPI/macie2-2020-01-01/DisassociateMember
2198func (c *Macie2) DisassociateMemberRequest(input *DisassociateMemberInput) (req *request.Request, output *DisassociateMemberOutput) {
2199	op := &request.Operation{
2200		Name:       opDisassociateMember,
2201		HTTPMethod: "POST",
2202		HTTPPath:   "/members/disassociate/{id}",
2203	}
2204
2205	if input == nil {
2206		input = &DisassociateMemberInput{}
2207	}
2208
2209	output = &DisassociateMemberOutput{}
2210	req = c.newRequest(op, input, output)
2211	req.Handlers.Unmarshal.Swap(restjson.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler)
2212	return
2213}
2214
2215// DisassociateMember API operation for Amazon Macie 2.
2216//
2217// Disassociates an Amazon Macie administrator account from a member account.
2218//
2219// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
2220// with awserr.Error's Code and Message methods to get detailed information about
2221// the error.
2222//
2223// See the AWS API reference guide for Amazon Macie 2's
2224// API operation DisassociateMember for usage and error information.
2225//
2226// Returned Error Types:
2227//   * ValidationException
2228//   Provides information about an error that occurred due to a syntax error in
2229//   a request.
2230//
2231//   * InternalServerException
2232//   Provides information about an error that occurred due to an unknown internal
2233//   server error, exception, or failure.
2234//
2235//   * ServiceQuotaExceededException
2236//   Provides information about an error that occurred due to one or more service
2237//   quotas for an account.
2238//
2239//   * AccessDeniedException
2240//   Provides information about an error that occurred due to insufficient access
2241//   to a specified resource.
2242//
2243//   * ResourceNotFoundException
2244//   Provides information about an error that occurred because a specified resource
2245//   wasn't found.
2246//
2247//   * ThrottlingException
2248//   Provides information about an error that occurred because too many requests
2249//   were sent during a certain amount of time.
2250//
2251//   * ConflictException
2252//   Provides information about an error that occurred due to a versioning conflict
2253//   for a specified resource.
2254//
2255// See also, https://docs.aws.amazon.com/goto/WebAPI/macie2-2020-01-01/DisassociateMember
2256func (c *Macie2) DisassociateMember(input *DisassociateMemberInput) (*DisassociateMemberOutput, error) {
2257	req, out := c.DisassociateMemberRequest(input)
2258	return out, req.Send()
2259}
2260
2261// DisassociateMemberWithContext is the same as DisassociateMember with the addition of
2262// the ability to pass a context and additional request options.
2263//
2264// See DisassociateMember for details on how to use this API operation.
2265//
2266// The context must be non-nil and will be used for request cancellation. If
2267// the context is nil a panic will occur. In the future the SDK may create
2268// sub-contexts for http.Requests. See https://golang.org/pkg/context/
2269// for more information on using Contexts.
2270func (c *Macie2) DisassociateMemberWithContext(ctx aws.Context, input *DisassociateMemberInput, opts ...request.Option) (*DisassociateMemberOutput, error) {
2271	req, out := c.DisassociateMemberRequest(input)
2272	req.SetContext(ctx)
2273	req.ApplyOptions(opts...)
2274	return out, req.Send()
2275}
2276
2277const opEnableMacie = "EnableMacie"
2278
2279// EnableMacieRequest generates a "aws/request.Request" representing the
2280// client's request for the EnableMacie operation. The "output" return
2281// value will be populated with the request's response once the request completes
2282// successfully.
2283//
2284// Use "Send" method on the returned Request to send the API call to the service.
2285// the "output" return value is not valid until after Send returns without error.
2286//
2287// See EnableMacie for more information on using the EnableMacie
2288// API call, and error handling.
2289//
2290// This method is useful when you want to inject custom logic or configuration
2291// into the SDK's request lifecycle. Such as custom headers, or retry logic.
2292//
2293//
2294//    // Example sending a request using the EnableMacieRequest method.
2295//    req, resp := client.EnableMacieRequest(params)
2296//
2297//    err := req.Send()
2298//    if err == nil { // resp is now filled
2299//        fmt.Println(resp)
2300//    }
2301//
2302// See also, https://docs.aws.amazon.com/goto/WebAPI/macie2-2020-01-01/EnableMacie
2303func (c *Macie2) EnableMacieRequest(input *EnableMacieInput) (req *request.Request, output *EnableMacieOutput) {
2304	op := &request.Operation{
2305		Name:       opEnableMacie,
2306		HTTPMethod: "POST",
2307		HTTPPath:   "/macie",
2308	}
2309
2310	if input == nil {
2311		input = &EnableMacieInput{}
2312	}
2313
2314	output = &EnableMacieOutput{}
2315	req = c.newRequest(op, input, output)
2316	req.Handlers.Unmarshal.Swap(restjson.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler)
2317	return
2318}
2319
2320// EnableMacie API operation for Amazon Macie 2.
2321//
2322// Enables Amazon Macie and specifies the configuration settings for a Macie
2323// account.
2324//
2325// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
2326// with awserr.Error's Code and Message methods to get detailed information about
2327// the error.
2328//
2329// See the AWS API reference guide for Amazon Macie 2's
2330// API operation EnableMacie for usage and error information.
2331//
2332// Returned Error Types:
2333//   * ValidationException
2334//   Provides information about an error that occurred due to a syntax error in
2335//   a request.
2336//
2337//   * InternalServerException
2338//   Provides information about an error that occurred due to an unknown internal
2339//   server error, exception, or failure.
2340//
2341//   * ServiceQuotaExceededException
2342//   Provides information about an error that occurred due to one or more service
2343//   quotas for an account.
2344//
2345//   * AccessDeniedException
2346//   Provides information about an error that occurred due to insufficient access
2347//   to a specified resource.
2348//
2349//   * ResourceNotFoundException
2350//   Provides information about an error that occurred because a specified resource
2351//   wasn't found.
2352//
2353//   * ThrottlingException
2354//   Provides information about an error that occurred because too many requests
2355//   were sent during a certain amount of time.
2356//
2357//   * ConflictException
2358//   Provides information about an error that occurred due to a versioning conflict
2359//   for a specified resource.
2360//
2361// See also, https://docs.aws.amazon.com/goto/WebAPI/macie2-2020-01-01/EnableMacie
2362func (c *Macie2) EnableMacie(input *EnableMacieInput) (*EnableMacieOutput, error) {
2363	req, out := c.EnableMacieRequest(input)
2364	return out, req.Send()
2365}
2366
2367// EnableMacieWithContext is the same as EnableMacie with the addition of
2368// the ability to pass a context and additional request options.
2369//
2370// See EnableMacie for details on how to use this API operation.
2371//
2372// The context must be non-nil and will be used for request cancellation. If
2373// the context is nil a panic will occur. In the future the SDK may create
2374// sub-contexts for http.Requests. See https://golang.org/pkg/context/
2375// for more information on using Contexts.
2376func (c *Macie2) EnableMacieWithContext(ctx aws.Context, input *EnableMacieInput, opts ...request.Option) (*EnableMacieOutput, error) {
2377	req, out := c.EnableMacieRequest(input)
2378	req.SetContext(ctx)
2379	req.ApplyOptions(opts...)
2380	return out, req.Send()
2381}
2382
2383const opEnableOrganizationAdminAccount = "EnableOrganizationAdminAccount"
2384
2385// EnableOrganizationAdminAccountRequest generates a "aws/request.Request" representing the
2386// client's request for the EnableOrganizationAdminAccount operation. The "output" return
2387// value will be populated with the request's response once the request completes
2388// successfully.
2389//
2390// Use "Send" method on the returned Request to send the API call to the service.
2391// the "output" return value is not valid until after Send returns without error.
2392//
2393// See EnableOrganizationAdminAccount for more information on using the EnableOrganizationAdminAccount
2394// API call, and error handling.
2395//
2396// This method is useful when you want to inject custom logic or configuration
2397// into the SDK's request lifecycle. Such as custom headers, or retry logic.
2398//
2399//
2400//    // Example sending a request using the EnableOrganizationAdminAccountRequest method.
2401//    req, resp := client.EnableOrganizationAdminAccountRequest(params)
2402//
2403//    err := req.Send()
2404//    if err == nil { // resp is now filled
2405//        fmt.Println(resp)
2406//    }
2407//
2408// See also, https://docs.aws.amazon.com/goto/WebAPI/macie2-2020-01-01/EnableOrganizationAdminAccount
2409func (c *Macie2) EnableOrganizationAdminAccountRequest(input *EnableOrganizationAdminAccountInput) (req *request.Request, output *EnableOrganizationAdminAccountOutput) {
2410	op := &request.Operation{
2411		Name:       opEnableOrganizationAdminAccount,
2412		HTTPMethod: "POST",
2413		HTTPPath:   "/admin",
2414	}
2415
2416	if input == nil {
2417		input = &EnableOrganizationAdminAccountInput{}
2418	}
2419
2420	output = &EnableOrganizationAdminAccountOutput{}
2421	req = c.newRequest(op, input, output)
2422	req.Handlers.Unmarshal.Swap(restjson.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler)
2423	return
2424}
2425
2426// EnableOrganizationAdminAccount API operation for Amazon Macie 2.
2427//
2428// Designates an account as the delegated Amazon Macie administrator account
2429// for an Amazon Web Services organization.
2430//
2431// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
2432// with awserr.Error's Code and Message methods to get detailed information about
2433// the error.
2434//
2435// See the AWS API reference guide for Amazon Macie 2's
2436// API operation EnableOrganizationAdminAccount for usage and error information.
2437//
2438// Returned Error Types:
2439//   * ValidationException
2440//   Provides information about an error that occurred due to a syntax error in
2441//   a request.
2442//
2443//   * InternalServerException
2444//   Provides information about an error that occurred due to an unknown internal
2445//   server error, exception, or failure.
2446//
2447//   * ServiceQuotaExceededException
2448//   Provides information about an error that occurred due to one or more service
2449//   quotas for an account.
2450//
2451//   * AccessDeniedException
2452//   Provides information about an error that occurred due to insufficient access
2453//   to a specified resource.
2454//
2455//   * ResourceNotFoundException
2456//   Provides information about an error that occurred because a specified resource
2457//   wasn't found.
2458//
2459//   * ThrottlingException
2460//   Provides information about an error that occurred because too many requests
2461//   were sent during a certain amount of time.
2462//
2463//   * ConflictException
2464//   Provides information about an error that occurred due to a versioning conflict
2465//   for a specified resource.
2466//
2467// See also, https://docs.aws.amazon.com/goto/WebAPI/macie2-2020-01-01/EnableOrganizationAdminAccount
2468func (c *Macie2) EnableOrganizationAdminAccount(input *EnableOrganizationAdminAccountInput) (*EnableOrganizationAdminAccountOutput, error) {
2469	req, out := c.EnableOrganizationAdminAccountRequest(input)
2470	return out, req.Send()
2471}
2472
2473// EnableOrganizationAdminAccountWithContext is the same as EnableOrganizationAdminAccount with the addition of
2474// the ability to pass a context and additional request options.
2475//
2476// See EnableOrganizationAdminAccount for details on how to use this API operation.
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 *Macie2) EnableOrganizationAdminAccountWithContext(ctx aws.Context, input *EnableOrganizationAdminAccountInput, opts ...request.Option) (*EnableOrganizationAdminAccountOutput, error) {
2483	req, out := c.EnableOrganizationAdminAccountRequest(input)
2484	req.SetContext(ctx)
2485	req.ApplyOptions(opts...)
2486	return out, req.Send()
2487}
2488
2489const opGetAdministratorAccount = "GetAdministratorAccount"
2490
2491// GetAdministratorAccountRequest generates a "aws/request.Request" representing the
2492// client's request for the GetAdministratorAccount operation. The "output" return
2493// value will be populated with the request's response once the request completes
2494// successfully.
2495//
2496// Use "Send" method on the returned Request to send the API call to the service.
2497// the "output" return value is not valid until after Send returns without error.
2498//
2499// See GetAdministratorAccount for more information on using the GetAdministratorAccount
2500// API call, and error handling.
2501//
2502// This method is useful when you want to inject custom logic or configuration
2503// into the SDK's request lifecycle. Such as custom headers, or retry logic.
2504//
2505//
2506//    // Example sending a request using the GetAdministratorAccountRequest method.
2507//    req, resp := client.GetAdministratorAccountRequest(params)
2508//
2509//    err := req.Send()
2510//    if err == nil { // resp is now filled
2511//        fmt.Println(resp)
2512//    }
2513//
2514// See also, https://docs.aws.amazon.com/goto/WebAPI/macie2-2020-01-01/GetAdministratorAccount
2515func (c *Macie2) GetAdministratorAccountRequest(input *GetAdministratorAccountInput) (req *request.Request, output *GetAdministratorAccountOutput) {
2516	op := &request.Operation{
2517		Name:       opGetAdministratorAccount,
2518		HTTPMethod: "GET",
2519		HTTPPath:   "/administrator",
2520	}
2521
2522	if input == nil {
2523		input = &GetAdministratorAccountInput{}
2524	}
2525
2526	output = &GetAdministratorAccountOutput{}
2527	req = c.newRequest(op, input, output)
2528	return
2529}
2530
2531// GetAdministratorAccount API operation for Amazon Macie 2.
2532//
2533// Retrieves information about the Amazon Macie administrator account for an
2534// account.
2535//
2536// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
2537// with awserr.Error's Code and Message methods to get detailed information about
2538// the error.
2539//
2540// See the AWS API reference guide for Amazon Macie 2's
2541// API operation GetAdministratorAccount for usage and error information.
2542//
2543// Returned Error Types:
2544//   * ValidationException
2545//   Provides information about an error that occurred due to a syntax error in
2546//   a request.
2547//
2548//   * InternalServerException
2549//   Provides information about an error that occurred due to an unknown internal
2550//   server error, exception, or failure.
2551//
2552//   * ServiceQuotaExceededException
2553//   Provides information about an error that occurred due to one or more service
2554//   quotas for an account.
2555//
2556//   * AccessDeniedException
2557//   Provides information about an error that occurred due to insufficient access
2558//   to a specified resource.
2559//
2560//   * ResourceNotFoundException
2561//   Provides information about an error that occurred because a specified resource
2562//   wasn't found.
2563//
2564//   * ThrottlingException
2565//   Provides information about an error that occurred because too many requests
2566//   were sent during a certain amount of time.
2567//
2568//   * ConflictException
2569//   Provides information about an error that occurred due to a versioning conflict
2570//   for a specified resource.
2571//
2572// See also, https://docs.aws.amazon.com/goto/WebAPI/macie2-2020-01-01/GetAdministratorAccount
2573func (c *Macie2) GetAdministratorAccount(input *GetAdministratorAccountInput) (*GetAdministratorAccountOutput, error) {
2574	req, out := c.GetAdministratorAccountRequest(input)
2575	return out, req.Send()
2576}
2577
2578// GetAdministratorAccountWithContext is the same as GetAdministratorAccount with the addition of
2579// the ability to pass a context and additional request options.
2580//
2581// See GetAdministratorAccount for details on how to use this API operation.
2582//
2583// The context must be non-nil and will be used for request cancellation. If
2584// the context is nil a panic will occur. In the future the SDK may create
2585// sub-contexts for http.Requests. See https://golang.org/pkg/context/
2586// for more information on using Contexts.
2587func (c *Macie2) GetAdministratorAccountWithContext(ctx aws.Context, input *GetAdministratorAccountInput, opts ...request.Option) (*GetAdministratorAccountOutput, error) {
2588	req, out := c.GetAdministratorAccountRequest(input)
2589	req.SetContext(ctx)
2590	req.ApplyOptions(opts...)
2591	return out, req.Send()
2592}
2593
2594const opGetBucketStatistics = "GetBucketStatistics"
2595
2596// GetBucketStatisticsRequest generates a "aws/request.Request" representing the
2597// client's request for the GetBucketStatistics operation. The "output" return
2598// value will be populated with the request's response once the request completes
2599// successfully.
2600//
2601// Use "Send" method on the returned Request to send the API call to the service.
2602// the "output" return value is not valid until after Send returns without error.
2603//
2604// See GetBucketStatistics for more information on using the GetBucketStatistics
2605// API call, and error handling.
2606//
2607// This method is useful when you want to inject custom logic or configuration
2608// into the SDK's request lifecycle. Such as custom headers, or retry logic.
2609//
2610//
2611//    // Example sending a request using the GetBucketStatisticsRequest method.
2612//    req, resp := client.GetBucketStatisticsRequest(params)
2613//
2614//    err := req.Send()
2615//    if err == nil { // resp is now filled
2616//        fmt.Println(resp)
2617//    }
2618//
2619// See also, https://docs.aws.amazon.com/goto/WebAPI/macie2-2020-01-01/GetBucketStatistics
2620func (c *Macie2) GetBucketStatisticsRequest(input *GetBucketStatisticsInput) (req *request.Request, output *GetBucketStatisticsOutput) {
2621	op := &request.Operation{
2622		Name:       opGetBucketStatistics,
2623		HTTPMethod: "POST",
2624		HTTPPath:   "/datasources/s3/statistics",
2625	}
2626
2627	if input == nil {
2628		input = &GetBucketStatisticsInput{}
2629	}
2630
2631	output = &GetBucketStatisticsOutput{}
2632	req = c.newRequest(op, input, output)
2633	return
2634}
2635
2636// GetBucketStatistics API operation for Amazon Macie 2.
2637//
2638// Retrieves (queries) aggregated statistical data for all the S3 buckets that
2639// Amazon Macie monitors and analyzes.
2640//
2641// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
2642// with awserr.Error's Code and Message methods to get detailed information about
2643// the error.
2644//
2645// See the AWS API reference guide for Amazon Macie 2's
2646// API operation GetBucketStatistics for usage and error information.
2647//
2648// Returned Error Types:
2649//   * ValidationException
2650//   Provides information about an error that occurred due to a syntax error in
2651//   a request.
2652//
2653//   * InternalServerException
2654//   Provides information about an error that occurred due to an unknown internal
2655//   server error, exception, or failure.
2656//
2657//   * ServiceQuotaExceededException
2658//   Provides information about an error that occurred due to one or more service
2659//   quotas for an account.
2660//
2661//   * AccessDeniedException
2662//   Provides information about an error that occurred due to insufficient access
2663//   to a specified resource.
2664//
2665//   * ResourceNotFoundException
2666//   Provides information about an error that occurred because a specified resource
2667//   wasn't found.
2668//
2669//   * ThrottlingException
2670//   Provides information about an error that occurred because too many requests
2671//   were sent during a certain amount of time.
2672//
2673//   * ConflictException
2674//   Provides information about an error that occurred due to a versioning conflict
2675//   for a specified resource.
2676//
2677// See also, https://docs.aws.amazon.com/goto/WebAPI/macie2-2020-01-01/GetBucketStatistics
2678func (c *Macie2) GetBucketStatistics(input *GetBucketStatisticsInput) (*GetBucketStatisticsOutput, error) {
2679	req, out := c.GetBucketStatisticsRequest(input)
2680	return out, req.Send()
2681}
2682
2683// GetBucketStatisticsWithContext is the same as GetBucketStatistics with the addition of
2684// the ability to pass a context and additional request options.
2685//
2686// See GetBucketStatistics for details on how to use this API operation.
2687//
2688// The context must be non-nil and will be used for request cancellation. If
2689// the context is nil a panic will occur. In the future the SDK may create
2690// sub-contexts for http.Requests. See https://golang.org/pkg/context/
2691// for more information on using Contexts.
2692func (c *Macie2) GetBucketStatisticsWithContext(ctx aws.Context, input *GetBucketStatisticsInput, opts ...request.Option) (*GetBucketStatisticsOutput, error) {
2693	req, out := c.GetBucketStatisticsRequest(input)
2694	req.SetContext(ctx)
2695	req.ApplyOptions(opts...)
2696	return out, req.Send()
2697}
2698
2699const opGetClassificationExportConfiguration = "GetClassificationExportConfiguration"
2700
2701// GetClassificationExportConfigurationRequest generates a "aws/request.Request" representing the
2702// client's request for the GetClassificationExportConfiguration operation. The "output" return
2703// value will be populated with the request's response once the request completes
2704// successfully.
2705//
2706// Use "Send" method on the returned Request to send the API call to the service.
2707// the "output" return value is not valid until after Send returns without error.
2708//
2709// See GetClassificationExportConfiguration for more information on using the GetClassificationExportConfiguration
2710// API call, and error handling.
2711//
2712// This method is useful when you want to inject custom logic or configuration
2713// into the SDK's request lifecycle. Such as custom headers, or retry logic.
2714//
2715//
2716//    // Example sending a request using the GetClassificationExportConfigurationRequest method.
2717//    req, resp := client.GetClassificationExportConfigurationRequest(params)
2718//
2719//    err := req.Send()
2720//    if err == nil { // resp is now filled
2721//        fmt.Println(resp)
2722//    }
2723//
2724// See also, https://docs.aws.amazon.com/goto/WebAPI/macie2-2020-01-01/GetClassificationExportConfiguration
2725func (c *Macie2) GetClassificationExportConfigurationRequest(input *GetClassificationExportConfigurationInput) (req *request.Request, output *GetClassificationExportConfigurationOutput) {
2726	op := &request.Operation{
2727		Name:       opGetClassificationExportConfiguration,
2728		HTTPMethod: "GET",
2729		HTTPPath:   "/classification-export-configuration",
2730	}
2731
2732	if input == nil {
2733		input = &GetClassificationExportConfigurationInput{}
2734	}
2735
2736	output = &GetClassificationExportConfigurationOutput{}
2737	req = c.newRequest(op, input, output)
2738	return
2739}
2740
2741// GetClassificationExportConfiguration API operation for Amazon Macie 2.
2742//
2743// Retrieves the configuration settings for storing data classification results.
2744//
2745// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
2746// with awserr.Error's Code and Message methods to get detailed information about
2747// the error.
2748//
2749// See the AWS API reference guide for Amazon Macie 2's
2750// API operation GetClassificationExportConfiguration for usage and error information.
2751//
2752// Returned Error Types:
2753//   * ValidationException
2754//   Provides information about an error that occurred due to a syntax error in
2755//   a request.
2756//
2757//   * InternalServerException
2758//   Provides information about an error that occurred due to an unknown internal
2759//   server error, exception, or failure.
2760//
2761//   * ServiceQuotaExceededException
2762//   Provides information about an error that occurred due to one or more service
2763//   quotas for an account.
2764//
2765//   * AccessDeniedException
2766//   Provides information about an error that occurred due to insufficient access
2767//   to a specified resource.
2768//
2769//   * ResourceNotFoundException
2770//   Provides information about an error that occurred because a specified resource
2771//   wasn't found.
2772//
2773//   * ThrottlingException
2774//   Provides information about an error that occurred because too many requests
2775//   were sent during a certain amount of time.
2776//
2777//   * ConflictException
2778//   Provides information about an error that occurred due to a versioning conflict
2779//   for a specified resource.
2780//
2781// See also, https://docs.aws.amazon.com/goto/WebAPI/macie2-2020-01-01/GetClassificationExportConfiguration
2782func (c *Macie2) GetClassificationExportConfiguration(input *GetClassificationExportConfigurationInput) (*GetClassificationExportConfigurationOutput, error) {
2783	req, out := c.GetClassificationExportConfigurationRequest(input)
2784	return out, req.Send()
2785}
2786
2787// GetClassificationExportConfigurationWithContext is the same as GetClassificationExportConfiguration with the addition of
2788// the ability to pass a context and additional request options.
2789//
2790// See GetClassificationExportConfiguration for details on how to use this API operation.
2791//
2792// The context must be non-nil and will be used for request cancellation. If
2793// the context is nil a panic will occur. In the future the SDK may create
2794// sub-contexts for http.Requests. See https://golang.org/pkg/context/
2795// for more information on using Contexts.
2796func (c *Macie2) GetClassificationExportConfigurationWithContext(ctx aws.Context, input *GetClassificationExportConfigurationInput, opts ...request.Option) (*GetClassificationExportConfigurationOutput, error) {
2797	req, out := c.GetClassificationExportConfigurationRequest(input)
2798	req.SetContext(ctx)
2799	req.ApplyOptions(opts...)
2800	return out, req.Send()
2801}
2802
2803const opGetCustomDataIdentifier = "GetCustomDataIdentifier"
2804
2805// GetCustomDataIdentifierRequest generates a "aws/request.Request" representing the
2806// client's request for the GetCustomDataIdentifier operation. The "output" return
2807// value will be populated with the request's response once the request completes
2808// successfully.
2809//
2810// Use "Send" method on the returned Request to send the API call to the service.
2811// the "output" return value is not valid until after Send returns without error.
2812//
2813// See GetCustomDataIdentifier for more information on using the GetCustomDataIdentifier
2814// API call, and error handling.
2815//
2816// This method is useful when you want to inject custom logic or configuration
2817// into the SDK's request lifecycle. Such as custom headers, or retry logic.
2818//
2819//
2820//    // Example sending a request using the GetCustomDataIdentifierRequest method.
2821//    req, resp := client.GetCustomDataIdentifierRequest(params)
2822//
2823//    err := req.Send()
2824//    if err == nil { // resp is now filled
2825//        fmt.Println(resp)
2826//    }
2827//
2828// See also, https://docs.aws.amazon.com/goto/WebAPI/macie2-2020-01-01/GetCustomDataIdentifier
2829func (c *Macie2) GetCustomDataIdentifierRequest(input *GetCustomDataIdentifierInput) (req *request.Request, output *GetCustomDataIdentifierOutput) {
2830	op := &request.Operation{
2831		Name:       opGetCustomDataIdentifier,
2832		HTTPMethod: "GET",
2833		HTTPPath:   "/custom-data-identifiers/{id}",
2834	}
2835
2836	if input == nil {
2837		input = &GetCustomDataIdentifierInput{}
2838	}
2839
2840	output = &GetCustomDataIdentifierOutput{}
2841	req = c.newRequest(op, input, output)
2842	return
2843}
2844
2845// GetCustomDataIdentifier API operation for Amazon Macie 2.
2846//
2847// Retrieves the criteria and other settings for a custom data identifier.
2848//
2849// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
2850// with awserr.Error's Code and Message methods to get detailed information about
2851// the error.
2852//
2853// See the AWS API reference guide for Amazon Macie 2's
2854// API operation GetCustomDataIdentifier for usage and error information.
2855//
2856// Returned Error Types:
2857//   * ValidationException
2858//   Provides information about an error that occurred due to a syntax error in
2859//   a request.
2860//
2861//   * InternalServerException
2862//   Provides information about an error that occurred due to an unknown internal
2863//   server error, exception, or failure.
2864//
2865//   * ServiceQuotaExceededException
2866//   Provides information about an error that occurred due to one or more service
2867//   quotas for an account.
2868//
2869//   * AccessDeniedException
2870//   Provides information about an error that occurred due to insufficient access
2871//   to a specified resource.
2872//
2873//   * ResourceNotFoundException
2874//   Provides information about an error that occurred because a specified resource
2875//   wasn't found.
2876//
2877//   * ThrottlingException
2878//   Provides information about an error that occurred because too many requests
2879//   were sent during a certain amount of time.
2880//
2881//   * ConflictException
2882//   Provides information about an error that occurred due to a versioning conflict
2883//   for a specified resource.
2884//
2885// See also, https://docs.aws.amazon.com/goto/WebAPI/macie2-2020-01-01/GetCustomDataIdentifier
2886func (c *Macie2) GetCustomDataIdentifier(input *GetCustomDataIdentifierInput) (*GetCustomDataIdentifierOutput, error) {
2887	req, out := c.GetCustomDataIdentifierRequest(input)
2888	return out, req.Send()
2889}
2890
2891// GetCustomDataIdentifierWithContext is the same as GetCustomDataIdentifier with the addition of
2892// the ability to pass a context and additional request options.
2893//
2894// See GetCustomDataIdentifier for details on how to use this API operation.
2895//
2896// The context must be non-nil and will be used for request cancellation. If
2897// the context is nil a panic will occur. In the future the SDK may create
2898// sub-contexts for http.Requests. See https://golang.org/pkg/context/
2899// for more information on using Contexts.
2900func (c *Macie2) GetCustomDataIdentifierWithContext(ctx aws.Context, input *GetCustomDataIdentifierInput, opts ...request.Option) (*GetCustomDataIdentifierOutput, error) {
2901	req, out := c.GetCustomDataIdentifierRequest(input)
2902	req.SetContext(ctx)
2903	req.ApplyOptions(opts...)
2904	return out, req.Send()
2905}
2906
2907const opGetFindingStatistics = "GetFindingStatistics"
2908
2909// GetFindingStatisticsRequest generates a "aws/request.Request" representing the
2910// client's request for the GetFindingStatistics operation. The "output" return
2911// value will be populated with the request's response once the request completes
2912// successfully.
2913//
2914// Use "Send" method on the returned Request to send the API call to the service.
2915// the "output" return value is not valid until after Send returns without error.
2916//
2917// See GetFindingStatistics for more information on using the GetFindingStatistics
2918// API call, and error handling.
2919//
2920// This method is useful when you want to inject custom logic or configuration
2921// into the SDK's request lifecycle. Such as custom headers, or retry logic.
2922//
2923//
2924//    // Example sending a request using the GetFindingStatisticsRequest method.
2925//    req, resp := client.GetFindingStatisticsRequest(params)
2926//
2927//    err := req.Send()
2928//    if err == nil { // resp is now filled
2929//        fmt.Println(resp)
2930//    }
2931//
2932// See also, https://docs.aws.amazon.com/goto/WebAPI/macie2-2020-01-01/GetFindingStatistics
2933func (c *Macie2) GetFindingStatisticsRequest(input *GetFindingStatisticsInput) (req *request.Request, output *GetFindingStatisticsOutput) {
2934	op := &request.Operation{
2935		Name:       opGetFindingStatistics,
2936		HTTPMethod: "POST",
2937		HTTPPath:   "/findings/statistics",
2938	}
2939
2940	if input == nil {
2941		input = &GetFindingStatisticsInput{}
2942	}
2943
2944	output = &GetFindingStatisticsOutput{}
2945	req = c.newRequest(op, input, output)
2946	return
2947}
2948
2949// GetFindingStatistics API operation for Amazon Macie 2.
2950//
2951// Retrieves (queries) aggregated statistical data about findings.
2952//
2953// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
2954// with awserr.Error's Code and Message methods to get detailed information about
2955// the error.
2956//
2957// See the AWS API reference guide for Amazon Macie 2's
2958// API operation GetFindingStatistics for usage and error information.
2959//
2960// Returned Error Types:
2961//   * ValidationException
2962//   Provides information about an error that occurred due to a syntax error in
2963//   a request.
2964//
2965//   * InternalServerException
2966//   Provides information about an error that occurred due to an unknown internal
2967//   server error, exception, or failure.
2968//
2969//   * ServiceQuotaExceededException
2970//   Provides information about an error that occurred due to one or more service
2971//   quotas for an account.
2972//
2973//   * AccessDeniedException
2974//   Provides information about an error that occurred due to insufficient access
2975//   to a specified resource.
2976//
2977//   * ResourceNotFoundException
2978//   Provides information about an error that occurred because a specified resource
2979//   wasn't found.
2980//
2981//   * ThrottlingException
2982//   Provides information about an error that occurred because too many requests
2983//   were sent during a certain amount of time.
2984//
2985//   * ConflictException
2986//   Provides information about an error that occurred due to a versioning conflict
2987//   for a specified resource.
2988//
2989// See also, https://docs.aws.amazon.com/goto/WebAPI/macie2-2020-01-01/GetFindingStatistics
2990func (c *Macie2) GetFindingStatistics(input *GetFindingStatisticsInput) (*GetFindingStatisticsOutput, error) {
2991	req, out := c.GetFindingStatisticsRequest(input)
2992	return out, req.Send()
2993}
2994
2995// GetFindingStatisticsWithContext is the same as GetFindingStatistics with the addition of
2996// the ability to pass a context and additional request options.
2997//
2998// See GetFindingStatistics for details on how to use this API operation.
2999//
3000// The context must be non-nil and will be used for request cancellation. If
3001// the context is nil a panic will occur. In the future the SDK may create
3002// sub-contexts for http.Requests. See https://golang.org/pkg/context/
3003// for more information on using Contexts.
3004func (c *Macie2) GetFindingStatisticsWithContext(ctx aws.Context, input *GetFindingStatisticsInput, opts ...request.Option) (*GetFindingStatisticsOutput, error) {
3005	req, out := c.GetFindingStatisticsRequest(input)
3006	req.SetContext(ctx)
3007	req.ApplyOptions(opts...)
3008	return out, req.Send()
3009}
3010
3011const opGetFindings = "GetFindings"
3012
3013// GetFindingsRequest generates a "aws/request.Request" representing the
3014// client's request for the GetFindings operation. The "output" return
3015// value will be populated with the request's response once the request completes
3016// successfully.
3017//
3018// Use "Send" method on the returned Request to send the API call to the service.
3019// the "output" return value is not valid until after Send returns without error.
3020//
3021// See GetFindings for more information on using the GetFindings
3022// API call, and error handling.
3023//
3024// This method is useful when you want to inject custom logic or configuration
3025// into the SDK's request lifecycle. Such as custom headers, or retry logic.
3026//
3027//
3028//    // Example sending a request using the GetFindingsRequest method.
3029//    req, resp := client.GetFindingsRequest(params)
3030//
3031//    err := req.Send()
3032//    if err == nil { // resp is now filled
3033//        fmt.Println(resp)
3034//    }
3035//
3036// See also, https://docs.aws.amazon.com/goto/WebAPI/macie2-2020-01-01/GetFindings
3037func (c *Macie2) GetFindingsRequest(input *GetFindingsInput) (req *request.Request, output *GetFindingsOutput) {
3038	op := &request.Operation{
3039		Name:       opGetFindings,
3040		HTTPMethod: "POST",
3041		HTTPPath:   "/findings/describe",
3042	}
3043
3044	if input == nil {
3045		input = &GetFindingsInput{}
3046	}
3047
3048	output = &GetFindingsOutput{}
3049	req = c.newRequest(op, input, output)
3050	return
3051}
3052
3053// GetFindings API operation for Amazon Macie 2.
3054//
3055// Retrieves the details of one or more findings.
3056//
3057// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
3058// with awserr.Error's Code and Message methods to get detailed information about
3059// the error.
3060//
3061// See the AWS API reference guide for Amazon Macie 2's
3062// API operation GetFindings for usage and error information.
3063//
3064// Returned Error Types:
3065//   * ValidationException
3066//   Provides information about an error that occurred due to a syntax error in
3067//   a request.
3068//
3069//   * InternalServerException
3070//   Provides information about an error that occurred due to an unknown internal
3071//   server error, exception, or failure.
3072//
3073//   * ServiceQuotaExceededException
3074//   Provides information about an error that occurred due to one or more service
3075//   quotas for an account.
3076//
3077//   * AccessDeniedException
3078//   Provides information about an error that occurred due to insufficient access
3079//   to a specified resource.
3080//
3081//   * ResourceNotFoundException
3082//   Provides information about an error that occurred because a specified resource
3083//   wasn't found.
3084//
3085//   * ThrottlingException
3086//   Provides information about an error that occurred because too many requests
3087//   were sent during a certain amount of time.
3088//
3089//   * ConflictException
3090//   Provides information about an error that occurred due to a versioning conflict
3091//   for a specified resource.
3092//
3093// See also, https://docs.aws.amazon.com/goto/WebAPI/macie2-2020-01-01/GetFindings
3094func (c *Macie2) GetFindings(input *GetFindingsInput) (*GetFindingsOutput, error) {
3095	req, out := c.GetFindingsRequest(input)
3096	return out, req.Send()
3097}
3098
3099// GetFindingsWithContext is the same as GetFindings with the addition of
3100// the ability to pass a context and additional request options.
3101//
3102// See GetFindings for details on how to use this API operation.
3103//
3104// The context must be non-nil and will be used for request cancellation. If
3105// the context is nil a panic will occur. In the future the SDK may create
3106// sub-contexts for http.Requests. See https://golang.org/pkg/context/
3107// for more information on using Contexts.
3108func (c *Macie2) GetFindingsWithContext(ctx aws.Context, input *GetFindingsInput, opts ...request.Option) (*GetFindingsOutput, error) {
3109	req, out := c.GetFindingsRequest(input)
3110	req.SetContext(ctx)
3111	req.ApplyOptions(opts...)
3112	return out, req.Send()
3113}
3114
3115const opGetFindingsFilter = "GetFindingsFilter"
3116
3117// GetFindingsFilterRequest generates a "aws/request.Request" representing the
3118// client's request for the GetFindingsFilter operation. The "output" return
3119// value will be populated with the request's response once the request completes
3120// successfully.
3121//
3122// Use "Send" method on the returned Request to send the API call to the service.
3123// the "output" return value is not valid until after Send returns without error.
3124//
3125// See GetFindingsFilter for more information on using the GetFindingsFilter
3126// API call, and error handling.
3127//
3128// This method is useful when you want to inject custom logic or configuration
3129// into the SDK's request lifecycle. Such as custom headers, or retry logic.
3130//
3131//
3132//    // Example sending a request using the GetFindingsFilterRequest method.
3133//    req, resp := client.GetFindingsFilterRequest(params)
3134//
3135//    err := req.Send()
3136//    if err == nil { // resp is now filled
3137//        fmt.Println(resp)
3138//    }
3139//
3140// See also, https://docs.aws.amazon.com/goto/WebAPI/macie2-2020-01-01/GetFindingsFilter
3141func (c *Macie2) GetFindingsFilterRequest(input *GetFindingsFilterInput) (req *request.Request, output *GetFindingsFilterOutput) {
3142	op := &request.Operation{
3143		Name:       opGetFindingsFilter,
3144		HTTPMethod: "GET",
3145		HTTPPath:   "/findingsfilters/{id}",
3146	}
3147
3148	if input == nil {
3149		input = &GetFindingsFilterInput{}
3150	}
3151
3152	output = &GetFindingsFilterOutput{}
3153	req = c.newRequest(op, input, output)
3154	return
3155}
3156
3157// GetFindingsFilter API operation for Amazon Macie 2.
3158//
3159// Retrieves the criteria and other settings for a findings filter.
3160//
3161// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
3162// with awserr.Error's Code and Message methods to get detailed information about
3163// the error.
3164//
3165// See the AWS API reference guide for Amazon Macie 2's
3166// API operation GetFindingsFilter for usage and error information.
3167//
3168// Returned Error Types:
3169//   * ValidationException
3170//   Provides information about an error that occurred due to a syntax error in
3171//   a request.
3172//
3173//   * InternalServerException
3174//   Provides information about an error that occurred due to an unknown internal
3175//   server error, exception, or failure.
3176//
3177//   * ServiceQuotaExceededException
3178//   Provides information about an error that occurred due to one or more service
3179//   quotas for an account.
3180//
3181//   * AccessDeniedException
3182//   Provides information about an error that occurred due to insufficient access
3183//   to a specified resource.
3184//
3185//   * ResourceNotFoundException
3186//   Provides information about an error that occurred because a specified resource
3187//   wasn't found.
3188//
3189//   * ThrottlingException
3190//   Provides information about an error that occurred because too many requests
3191//   were sent during a certain amount of time.
3192//
3193//   * ConflictException
3194//   Provides information about an error that occurred due to a versioning conflict
3195//   for a specified resource.
3196//
3197// See also, https://docs.aws.amazon.com/goto/WebAPI/macie2-2020-01-01/GetFindingsFilter
3198func (c *Macie2) GetFindingsFilter(input *GetFindingsFilterInput) (*GetFindingsFilterOutput, error) {
3199	req, out := c.GetFindingsFilterRequest(input)
3200	return out, req.Send()
3201}
3202
3203// GetFindingsFilterWithContext is the same as GetFindingsFilter with the addition of
3204// the ability to pass a context and additional request options.
3205//
3206// See GetFindingsFilter for details on how to use this API operation.
3207//
3208// The context must be non-nil and will be used for request cancellation. If
3209// the context is nil a panic will occur. In the future the SDK may create
3210// sub-contexts for http.Requests. See https://golang.org/pkg/context/
3211// for more information on using Contexts.
3212func (c *Macie2) GetFindingsFilterWithContext(ctx aws.Context, input *GetFindingsFilterInput, opts ...request.Option) (*GetFindingsFilterOutput, error) {
3213	req, out := c.GetFindingsFilterRequest(input)
3214	req.SetContext(ctx)
3215	req.ApplyOptions(opts...)
3216	return out, req.Send()
3217}
3218
3219const opGetFindingsPublicationConfiguration = "GetFindingsPublicationConfiguration"
3220
3221// GetFindingsPublicationConfigurationRequest generates a "aws/request.Request" representing the
3222// client's request for the GetFindingsPublicationConfiguration operation. The "output" return
3223// value will be populated with the request's response once the request completes
3224// successfully.
3225//
3226// Use "Send" method on the returned Request to send the API call to the service.
3227// the "output" return value is not valid until after Send returns without error.
3228//
3229// See GetFindingsPublicationConfiguration for more information on using the GetFindingsPublicationConfiguration
3230// API call, and error handling.
3231//
3232// This method is useful when you want to inject custom logic or configuration
3233// into the SDK's request lifecycle. Such as custom headers, or retry logic.
3234//
3235//
3236//    // Example sending a request using the GetFindingsPublicationConfigurationRequest method.
3237//    req, resp := client.GetFindingsPublicationConfigurationRequest(params)
3238//
3239//    err := req.Send()
3240//    if err == nil { // resp is now filled
3241//        fmt.Println(resp)
3242//    }
3243//
3244// See also, https://docs.aws.amazon.com/goto/WebAPI/macie2-2020-01-01/GetFindingsPublicationConfiguration
3245func (c *Macie2) GetFindingsPublicationConfigurationRequest(input *GetFindingsPublicationConfigurationInput) (req *request.Request, output *GetFindingsPublicationConfigurationOutput) {
3246	op := &request.Operation{
3247		Name:       opGetFindingsPublicationConfiguration,
3248		HTTPMethod: "GET",
3249		HTTPPath:   "/findings-publication-configuration",
3250	}
3251
3252	if input == nil {
3253		input = &GetFindingsPublicationConfigurationInput{}
3254	}
3255
3256	output = &GetFindingsPublicationConfigurationOutput{}
3257	req = c.newRequest(op, input, output)
3258	return
3259}
3260
3261// GetFindingsPublicationConfiguration API operation for Amazon Macie 2.
3262//
3263// Retrieves the configuration settings for publishing findings to Security
3264// Hub.
3265//
3266// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
3267// with awserr.Error's Code and Message methods to get detailed information about
3268// the error.
3269//
3270// See the AWS API reference guide for Amazon Macie 2's
3271// API operation GetFindingsPublicationConfiguration for usage and error information.
3272//
3273// Returned Error Types:
3274//   * ValidationException
3275//   Provides information about an error that occurred due to a syntax error in
3276//   a request.
3277//
3278//   * InternalServerException
3279//   Provides information about an error that occurred due to an unknown internal
3280//   server error, exception, or failure.
3281//
3282//   * ServiceQuotaExceededException
3283//   Provides information about an error that occurred due to one or more service
3284//   quotas for an account.
3285//
3286//   * AccessDeniedException
3287//   Provides information about an error that occurred due to insufficient access
3288//   to a specified resource.
3289//
3290//   * ResourceNotFoundException
3291//   Provides information about an error that occurred because a specified resource
3292//   wasn't found.
3293//
3294//   * ThrottlingException
3295//   Provides information about an error that occurred because too many requests
3296//   were sent during a certain amount of time.
3297//
3298//   * ConflictException
3299//   Provides information about an error that occurred due to a versioning conflict
3300//   for a specified resource.
3301//
3302// See also, https://docs.aws.amazon.com/goto/WebAPI/macie2-2020-01-01/GetFindingsPublicationConfiguration
3303func (c *Macie2) GetFindingsPublicationConfiguration(input *GetFindingsPublicationConfigurationInput) (*GetFindingsPublicationConfigurationOutput, error) {
3304	req, out := c.GetFindingsPublicationConfigurationRequest(input)
3305	return out, req.Send()
3306}
3307
3308// GetFindingsPublicationConfigurationWithContext is the same as GetFindingsPublicationConfiguration with the addition of
3309// the ability to pass a context and additional request options.
3310//
3311// See GetFindingsPublicationConfiguration for details on how to use this API operation.
3312//
3313// The context must be non-nil and will be used for request cancellation. If
3314// the context is nil a panic will occur. In the future the SDK may create
3315// sub-contexts for http.Requests. See https://golang.org/pkg/context/
3316// for more information on using Contexts.
3317func (c *Macie2) GetFindingsPublicationConfigurationWithContext(ctx aws.Context, input *GetFindingsPublicationConfigurationInput, opts ...request.Option) (*GetFindingsPublicationConfigurationOutput, error) {
3318	req, out := c.GetFindingsPublicationConfigurationRequest(input)
3319	req.SetContext(ctx)
3320	req.ApplyOptions(opts...)
3321	return out, req.Send()
3322}
3323
3324const opGetInvitationsCount = "GetInvitationsCount"
3325
3326// GetInvitationsCountRequest generates a "aws/request.Request" representing the
3327// client's request for the GetInvitationsCount operation. The "output" return
3328// value will be populated with the request's response once the request completes
3329// successfully.
3330//
3331// Use "Send" method on the returned Request to send the API call to the service.
3332// the "output" return value is not valid until after Send returns without error.
3333//
3334// See GetInvitationsCount for more information on using the GetInvitationsCount
3335// API call, and error handling.
3336//
3337// This method is useful when you want to inject custom logic or configuration
3338// into the SDK's request lifecycle. Such as custom headers, or retry logic.
3339//
3340//
3341//    // Example sending a request using the GetInvitationsCountRequest method.
3342//    req, resp := client.GetInvitationsCountRequest(params)
3343//
3344//    err := req.Send()
3345//    if err == nil { // resp is now filled
3346//        fmt.Println(resp)
3347//    }
3348//
3349// See also, https://docs.aws.amazon.com/goto/WebAPI/macie2-2020-01-01/GetInvitationsCount
3350func (c *Macie2) GetInvitationsCountRequest(input *GetInvitationsCountInput) (req *request.Request, output *GetInvitationsCountOutput) {
3351	op := &request.Operation{
3352		Name:       opGetInvitationsCount,
3353		HTTPMethod: "GET",
3354		HTTPPath:   "/invitations/count",
3355	}
3356
3357	if input == nil {
3358		input = &GetInvitationsCountInput{}
3359	}
3360
3361	output = &GetInvitationsCountOutput{}
3362	req = c.newRequest(op, input, output)
3363	return
3364}
3365
3366// GetInvitationsCount API operation for Amazon Macie 2.
3367//
3368// Retrieves the count of Amazon Macie membership invitations that were received
3369// by an account.
3370//
3371// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
3372// with awserr.Error's Code and Message methods to get detailed information about
3373// the error.
3374//
3375// See the AWS API reference guide for Amazon Macie 2's
3376// API operation GetInvitationsCount for usage and error information.
3377//
3378// Returned Error Types:
3379//   * ValidationException
3380//   Provides information about an error that occurred due to a syntax error in
3381//   a request.
3382//
3383//   * InternalServerException
3384//   Provides information about an error that occurred due to an unknown internal
3385//   server error, exception, or failure.
3386//
3387//   * ServiceQuotaExceededException
3388//   Provides information about an error that occurred due to one or more service
3389//   quotas for an account.
3390//
3391//   * AccessDeniedException
3392//   Provides information about an error that occurred due to insufficient access
3393//   to a specified resource.
3394//
3395//   * ResourceNotFoundException
3396//   Provides information about an error that occurred because a specified resource
3397//   wasn't found.
3398//
3399//   * ThrottlingException
3400//   Provides information about an error that occurred because too many requests
3401//   were sent during a certain amount of time.
3402//
3403//   * ConflictException
3404//   Provides information about an error that occurred due to a versioning conflict
3405//   for a specified resource.
3406//
3407// See also, https://docs.aws.amazon.com/goto/WebAPI/macie2-2020-01-01/GetInvitationsCount
3408func (c *Macie2) GetInvitationsCount(input *GetInvitationsCountInput) (*GetInvitationsCountOutput, error) {
3409	req, out := c.GetInvitationsCountRequest(input)
3410	return out, req.Send()
3411}
3412
3413// GetInvitationsCountWithContext is the same as GetInvitationsCount with the addition of
3414// the ability to pass a context and additional request options.
3415//
3416// See GetInvitationsCount for details on how to use this API operation.
3417//
3418// The context must be non-nil and will be used for request cancellation. If
3419// the context is nil a panic will occur. In the future the SDK may create
3420// sub-contexts for http.Requests. See https://golang.org/pkg/context/
3421// for more information on using Contexts.
3422func (c *Macie2) GetInvitationsCountWithContext(ctx aws.Context, input *GetInvitationsCountInput, opts ...request.Option) (*GetInvitationsCountOutput, error) {
3423	req, out := c.GetInvitationsCountRequest(input)
3424	req.SetContext(ctx)
3425	req.ApplyOptions(opts...)
3426	return out, req.Send()
3427}
3428
3429const opGetMacieSession = "GetMacieSession"
3430
3431// GetMacieSessionRequest generates a "aws/request.Request" representing the
3432// client's request for the GetMacieSession operation. The "output" return
3433// value will be populated with the request's response once the request completes
3434// successfully.
3435//
3436// Use "Send" method on the returned Request to send the API call to the service.
3437// the "output" return value is not valid until after Send returns without error.
3438//
3439// See GetMacieSession for more information on using the GetMacieSession
3440// API call, and error handling.
3441//
3442// This method is useful when you want to inject custom logic or configuration
3443// into the SDK's request lifecycle. Such as custom headers, or retry logic.
3444//
3445//
3446//    // Example sending a request using the GetMacieSessionRequest method.
3447//    req, resp := client.GetMacieSessionRequest(params)
3448//
3449//    err := req.Send()
3450//    if err == nil { // resp is now filled
3451//        fmt.Println(resp)
3452//    }
3453//
3454// See also, https://docs.aws.amazon.com/goto/WebAPI/macie2-2020-01-01/GetMacieSession
3455func (c *Macie2) GetMacieSessionRequest(input *GetMacieSessionInput) (req *request.Request, output *GetMacieSessionOutput) {
3456	op := &request.Operation{
3457		Name:       opGetMacieSession,
3458		HTTPMethod: "GET",
3459		HTTPPath:   "/macie",
3460	}
3461
3462	if input == nil {
3463		input = &GetMacieSessionInput{}
3464	}
3465
3466	output = &GetMacieSessionOutput{}
3467	req = c.newRequest(op, input, output)
3468	return
3469}
3470
3471// GetMacieSession API operation for Amazon Macie 2.
3472//
3473// Retrieves the current status and configuration settings for an Amazon Macie
3474// account.
3475//
3476// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
3477// with awserr.Error's Code and Message methods to get detailed information about
3478// the error.
3479//
3480// See the AWS API reference guide for Amazon Macie 2's
3481// API operation GetMacieSession for usage and error information.
3482//
3483// Returned Error Types:
3484//   * ValidationException
3485//   Provides information about an error that occurred due to a syntax error in
3486//   a request.
3487//
3488//   * InternalServerException
3489//   Provides information about an error that occurred due to an unknown internal
3490//   server error, exception, or failure.
3491//
3492//   * ServiceQuotaExceededException
3493//   Provides information about an error that occurred due to one or more service
3494//   quotas for an account.
3495//
3496//   * AccessDeniedException
3497//   Provides information about an error that occurred due to insufficient access
3498//   to a specified resource.
3499//
3500//   * ResourceNotFoundException
3501//   Provides information about an error that occurred because a specified resource
3502//   wasn't found.
3503//
3504//   * ThrottlingException
3505//   Provides information about an error that occurred because too many requests
3506//   were sent during a certain amount of time.
3507//
3508//   * ConflictException
3509//   Provides information about an error that occurred due to a versioning conflict
3510//   for a specified resource.
3511//
3512// See also, https://docs.aws.amazon.com/goto/WebAPI/macie2-2020-01-01/GetMacieSession
3513func (c *Macie2) GetMacieSession(input *GetMacieSessionInput) (*GetMacieSessionOutput, error) {
3514	req, out := c.GetMacieSessionRequest(input)
3515	return out, req.Send()
3516}
3517
3518// GetMacieSessionWithContext is the same as GetMacieSession with the addition of
3519// the ability to pass a context and additional request options.
3520//
3521// See GetMacieSession for details on how to use this API operation.
3522//
3523// The context must be non-nil and will be used for request cancellation. If
3524// the context is nil a panic will occur. In the future the SDK may create
3525// sub-contexts for http.Requests. See https://golang.org/pkg/context/
3526// for more information on using Contexts.
3527func (c *Macie2) GetMacieSessionWithContext(ctx aws.Context, input *GetMacieSessionInput, opts ...request.Option) (*GetMacieSessionOutput, error) {
3528	req, out := c.GetMacieSessionRequest(input)
3529	req.SetContext(ctx)
3530	req.ApplyOptions(opts...)
3531	return out, req.Send()
3532}
3533
3534const opGetMasterAccount = "GetMasterAccount"
3535
3536// GetMasterAccountRequest generates a "aws/request.Request" representing the
3537// client's request for the GetMasterAccount operation. The "output" return
3538// value will be populated with the request's response once the request completes
3539// successfully.
3540//
3541// Use "Send" method on the returned Request to send the API call to the service.
3542// the "output" return value is not valid until after Send returns without error.
3543//
3544// See GetMasterAccount for more information on using the GetMasterAccount
3545// API call, and error handling.
3546//
3547// This method is useful when you want to inject custom logic or configuration
3548// into the SDK's request lifecycle. Such as custom headers, or retry logic.
3549//
3550//
3551//    // Example sending a request using the GetMasterAccountRequest method.
3552//    req, resp := client.GetMasterAccountRequest(params)
3553//
3554//    err := req.Send()
3555//    if err == nil { // resp is now filled
3556//        fmt.Println(resp)
3557//    }
3558//
3559// See also, https://docs.aws.amazon.com/goto/WebAPI/macie2-2020-01-01/GetMasterAccount
3560func (c *Macie2) GetMasterAccountRequest(input *GetMasterAccountInput) (req *request.Request, output *GetMasterAccountOutput) {
3561	op := &request.Operation{
3562		Name:       opGetMasterAccount,
3563		HTTPMethod: "GET",
3564		HTTPPath:   "/master",
3565	}
3566
3567	if input == nil {
3568		input = &GetMasterAccountInput{}
3569	}
3570
3571	output = &GetMasterAccountOutput{}
3572	req = c.newRequest(op, input, output)
3573	return
3574}
3575
3576// GetMasterAccount API operation for Amazon Macie 2.
3577//
3578// (Deprecated) Retrieves information about the Amazon Macie administrator account
3579// for an account. This operation has been replaced by the GetAdministratorAccount
3580// operation.
3581//
3582// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
3583// with awserr.Error's Code and Message methods to get detailed information about
3584// the error.
3585//
3586// See the AWS API reference guide for Amazon Macie 2's
3587// API operation GetMasterAccount for usage and error information.
3588//
3589// Returned Error Types:
3590//   * ValidationException
3591//   Provides information about an error that occurred due to a syntax error in
3592//   a request.
3593//
3594//   * InternalServerException
3595//   Provides information about an error that occurred due to an unknown internal
3596//   server error, exception, or failure.
3597//
3598//   * ServiceQuotaExceededException
3599//   Provides information about an error that occurred due to one or more service
3600//   quotas for an account.
3601//
3602//   * AccessDeniedException
3603//   Provides information about an error that occurred due to insufficient access
3604//   to a specified resource.
3605//
3606//   * ResourceNotFoundException
3607//   Provides information about an error that occurred because a specified resource
3608//   wasn't found.
3609//
3610//   * ThrottlingException
3611//   Provides information about an error that occurred because too many requests
3612//   were sent during a certain amount of time.
3613//
3614//   * ConflictException
3615//   Provides information about an error that occurred due to a versioning conflict
3616//   for a specified resource.
3617//
3618// See also, https://docs.aws.amazon.com/goto/WebAPI/macie2-2020-01-01/GetMasterAccount
3619func (c *Macie2) GetMasterAccount(input *GetMasterAccountInput) (*GetMasterAccountOutput, error) {
3620	req, out := c.GetMasterAccountRequest(input)
3621	return out, req.Send()
3622}
3623
3624// GetMasterAccountWithContext is the same as GetMasterAccount with the addition of
3625// the ability to pass a context and additional request options.
3626//
3627// See GetMasterAccount for details on how to use this API operation.
3628//
3629// The context must be non-nil and will be used for request cancellation. If
3630// the context is nil a panic will occur. In the future the SDK may create
3631// sub-contexts for http.Requests. See https://golang.org/pkg/context/
3632// for more information on using Contexts.
3633func (c *Macie2) GetMasterAccountWithContext(ctx aws.Context, input *GetMasterAccountInput, opts ...request.Option) (*GetMasterAccountOutput, error) {
3634	req, out := c.GetMasterAccountRequest(input)
3635	req.SetContext(ctx)
3636	req.ApplyOptions(opts...)
3637	return out, req.Send()
3638}
3639
3640const opGetMember = "GetMember"
3641
3642// GetMemberRequest generates a "aws/request.Request" representing the
3643// client's request for the GetMember operation. The "output" return
3644// value will be populated with the request's response once the request completes
3645// successfully.
3646//
3647// Use "Send" method on the returned Request to send the API call to the service.
3648// the "output" return value is not valid until after Send returns without error.
3649//
3650// See GetMember for more information on using the GetMember
3651// API call, and error handling.
3652//
3653// This method is useful when you want to inject custom logic or configuration
3654// into the SDK's request lifecycle. Such as custom headers, or retry logic.
3655//
3656//
3657//    // Example sending a request using the GetMemberRequest method.
3658//    req, resp := client.GetMemberRequest(params)
3659//
3660//    err := req.Send()
3661//    if err == nil { // resp is now filled
3662//        fmt.Println(resp)
3663//    }
3664//
3665// See also, https://docs.aws.amazon.com/goto/WebAPI/macie2-2020-01-01/GetMember
3666func (c *Macie2) GetMemberRequest(input *GetMemberInput) (req *request.Request, output *GetMemberOutput) {
3667	op := &request.Operation{
3668		Name:       opGetMember,
3669		HTTPMethod: "GET",
3670		HTTPPath:   "/members/{id}",
3671	}
3672
3673	if input == nil {
3674		input = &GetMemberInput{}
3675	}
3676
3677	output = &GetMemberOutput{}
3678	req = c.newRequest(op, input, output)
3679	return
3680}
3681
3682// GetMember API operation for Amazon Macie 2.
3683//
3684// Retrieves information about an account that's associated with an Amazon Macie
3685// administrator account.
3686//
3687// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
3688// with awserr.Error's Code and Message methods to get detailed information about
3689// the error.
3690//
3691// See the AWS API reference guide for Amazon Macie 2's
3692// API operation GetMember for usage and error information.
3693//
3694// Returned Error Types:
3695//   * ValidationException
3696//   Provides information about an error that occurred due to a syntax error in
3697//   a request.
3698//
3699//   * InternalServerException
3700//   Provides information about an error that occurred due to an unknown internal
3701//   server error, exception, or failure.
3702//
3703//   * ServiceQuotaExceededException
3704//   Provides information about an error that occurred due to one or more service
3705//   quotas for an account.
3706//
3707//   * AccessDeniedException
3708//   Provides information about an error that occurred due to insufficient access
3709//   to a specified resource.
3710//
3711//   * ResourceNotFoundException
3712//   Provides information about an error that occurred because a specified resource
3713//   wasn't found.
3714//
3715//   * ThrottlingException
3716//   Provides information about an error that occurred because too many requests
3717//   were sent during a certain amount of time.
3718//
3719//   * ConflictException
3720//   Provides information about an error that occurred due to a versioning conflict
3721//   for a specified resource.
3722//
3723// See also, https://docs.aws.amazon.com/goto/WebAPI/macie2-2020-01-01/GetMember
3724func (c *Macie2) GetMember(input *GetMemberInput) (*GetMemberOutput, error) {
3725	req, out := c.GetMemberRequest(input)
3726	return out, req.Send()
3727}
3728
3729// GetMemberWithContext is the same as GetMember with the addition of
3730// the ability to pass a context and additional request options.
3731//
3732// See GetMember for details on how to use this API operation.
3733//
3734// The context must be non-nil and will be used for request cancellation. If
3735// the context is nil a panic will occur. In the future the SDK may create
3736// sub-contexts for http.Requests. See https://golang.org/pkg/context/
3737// for more information on using Contexts.
3738func (c *Macie2) GetMemberWithContext(ctx aws.Context, input *GetMemberInput, opts ...request.Option) (*GetMemberOutput, error) {
3739	req, out := c.GetMemberRequest(input)
3740	req.SetContext(ctx)
3741	req.ApplyOptions(opts...)
3742	return out, req.Send()
3743}
3744
3745const opGetUsageStatistics = "GetUsageStatistics"
3746
3747// GetUsageStatisticsRequest generates a "aws/request.Request" representing the
3748// client's request for the GetUsageStatistics operation. The "output" return
3749// value will be populated with the request's response once the request completes
3750// successfully.
3751//
3752// Use "Send" method on the returned Request to send the API call to the service.
3753// the "output" return value is not valid until after Send returns without error.
3754//
3755// See GetUsageStatistics for more information on using the GetUsageStatistics
3756// API call, and error handling.
3757//
3758// This method is useful when you want to inject custom logic or configuration
3759// into the SDK's request lifecycle. Such as custom headers, or retry logic.
3760//
3761//
3762//    // Example sending a request using the GetUsageStatisticsRequest method.
3763//    req, resp := client.GetUsageStatisticsRequest(params)
3764//
3765//    err := req.Send()
3766//    if err == nil { // resp is now filled
3767//        fmt.Println(resp)
3768//    }
3769//
3770// See also, https://docs.aws.amazon.com/goto/WebAPI/macie2-2020-01-01/GetUsageStatistics
3771func (c *Macie2) GetUsageStatisticsRequest(input *GetUsageStatisticsInput) (req *request.Request, output *GetUsageStatisticsOutput) {
3772	op := &request.Operation{
3773		Name:       opGetUsageStatistics,
3774		HTTPMethod: "POST",
3775		HTTPPath:   "/usage/statistics",
3776		Paginator: &request.Paginator{
3777			InputTokens:     []string{"nextToken"},
3778			OutputTokens:    []string{"nextToken"},
3779			LimitToken:      "maxResults",
3780			TruncationToken: "",
3781		},
3782	}
3783
3784	if input == nil {
3785		input = &GetUsageStatisticsInput{}
3786	}
3787
3788	output = &GetUsageStatisticsOutput{}
3789	req = c.newRequest(op, input, output)
3790	return
3791}
3792
3793// GetUsageStatistics API operation for Amazon Macie 2.
3794//
3795// Retrieves (queries) quotas and aggregated usage data for one or more accounts.
3796//
3797// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
3798// with awserr.Error's Code and Message methods to get detailed information about
3799// the error.
3800//
3801// See the AWS API reference guide for Amazon Macie 2's
3802// API operation GetUsageStatistics for usage and error information.
3803//
3804// Returned Error Types:
3805//   * ValidationException
3806//   Provides information about an error that occurred due to a syntax error in
3807//   a request.
3808//
3809//   * InternalServerException
3810//   Provides information about an error that occurred due to an unknown internal
3811//   server error, exception, or failure.
3812//
3813//   * ServiceQuotaExceededException
3814//   Provides information about an error that occurred due to one or more service
3815//   quotas for an account.
3816//
3817//   * AccessDeniedException
3818//   Provides information about an error that occurred due to insufficient access
3819//   to a specified resource.
3820//
3821//   * ResourceNotFoundException
3822//   Provides information about an error that occurred because a specified resource
3823//   wasn't found.
3824//
3825//   * ThrottlingException
3826//   Provides information about an error that occurred because too many requests
3827//   were sent during a certain amount of time.
3828//
3829//   * ConflictException
3830//   Provides information about an error that occurred due to a versioning conflict
3831//   for a specified resource.
3832//
3833// See also, https://docs.aws.amazon.com/goto/WebAPI/macie2-2020-01-01/GetUsageStatistics
3834func (c *Macie2) GetUsageStatistics(input *GetUsageStatisticsInput) (*GetUsageStatisticsOutput, error) {
3835	req, out := c.GetUsageStatisticsRequest(input)
3836	return out, req.Send()
3837}
3838
3839// GetUsageStatisticsWithContext is the same as GetUsageStatistics with the addition of
3840// the ability to pass a context and additional request options.
3841//
3842// See GetUsageStatistics for details on how to use this API operation.
3843//
3844// The context must be non-nil and will be used for request cancellation. If
3845// the context is nil a panic will occur. In the future the SDK may create
3846// sub-contexts for http.Requests. See https://golang.org/pkg/context/
3847// for more information on using Contexts.
3848func (c *Macie2) GetUsageStatisticsWithContext(ctx aws.Context, input *GetUsageStatisticsInput, opts ...request.Option) (*GetUsageStatisticsOutput, error) {
3849	req, out := c.GetUsageStatisticsRequest(input)
3850	req.SetContext(ctx)
3851	req.ApplyOptions(opts...)
3852	return out, req.Send()
3853}
3854
3855// GetUsageStatisticsPages iterates over the pages of a GetUsageStatistics operation,
3856// calling the "fn" function with the response data for each page. To stop
3857// iterating, return false from the fn function.
3858//
3859// See GetUsageStatistics method for more information on how to use this operation.
3860//
3861// Note: This operation can generate multiple requests to a service.
3862//
3863//    // Example iterating over at most 3 pages of a GetUsageStatistics operation.
3864//    pageNum := 0
3865//    err := client.GetUsageStatisticsPages(params,
3866//        func(page *macie2.GetUsageStatisticsOutput, lastPage bool) bool {
3867//            pageNum++
3868//            fmt.Println(page)
3869//            return pageNum <= 3
3870//        })
3871//
3872func (c *Macie2) GetUsageStatisticsPages(input *GetUsageStatisticsInput, fn func(*GetUsageStatisticsOutput, bool) bool) error {
3873	return c.GetUsageStatisticsPagesWithContext(aws.BackgroundContext(), input, fn)
3874}
3875
3876// GetUsageStatisticsPagesWithContext same as GetUsageStatisticsPages except
3877// it takes a Context and allows setting request options on the pages.
3878//
3879// The context must be non-nil and will be used for request cancellation. If
3880// the context is nil a panic will occur. In the future the SDK may create
3881// sub-contexts for http.Requests. See https://golang.org/pkg/context/
3882// for more information on using Contexts.
3883func (c *Macie2) GetUsageStatisticsPagesWithContext(ctx aws.Context, input *GetUsageStatisticsInput, fn func(*GetUsageStatisticsOutput, bool) bool, opts ...request.Option) error {
3884	p := request.Pagination{
3885		NewRequest: func() (*request.Request, error) {
3886			var inCpy *GetUsageStatisticsInput
3887			if input != nil {
3888				tmp := *input
3889				inCpy = &tmp
3890			}
3891			req, _ := c.GetUsageStatisticsRequest(inCpy)
3892			req.SetContext(ctx)
3893			req.ApplyOptions(opts...)
3894			return req, nil
3895		},
3896	}
3897
3898	for p.Next() {
3899		if !fn(p.Page().(*GetUsageStatisticsOutput), !p.HasNextPage()) {
3900			break
3901		}
3902	}
3903
3904	return p.Err()
3905}
3906
3907const opGetUsageTotals = "GetUsageTotals"
3908
3909// GetUsageTotalsRequest generates a "aws/request.Request" representing the
3910// client's request for the GetUsageTotals operation. The "output" return
3911// value will be populated with the request's response once the request completes
3912// successfully.
3913//
3914// Use "Send" method on the returned Request to send the API call to the service.
3915// the "output" return value is not valid until after Send returns without error.
3916//
3917// See GetUsageTotals for more information on using the GetUsageTotals
3918// API call, and error handling.
3919//
3920// This method is useful when you want to inject custom logic or configuration
3921// into the SDK's request lifecycle. Such as custom headers, or retry logic.
3922//
3923//
3924//    // Example sending a request using the GetUsageTotalsRequest method.
3925//    req, resp := client.GetUsageTotalsRequest(params)
3926//
3927//    err := req.Send()
3928//    if err == nil { // resp is now filled
3929//        fmt.Println(resp)
3930//    }
3931//
3932// See also, https://docs.aws.amazon.com/goto/WebAPI/macie2-2020-01-01/GetUsageTotals
3933func (c *Macie2) GetUsageTotalsRequest(input *GetUsageTotalsInput) (req *request.Request, output *GetUsageTotalsOutput) {
3934	op := &request.Operation{
3935		Name:       opGetUsageTotals,
3936		HTTPMethod: "GET",
3937		HTTPPath:   "/usage",
3938	}
3939
3940	if input == nil {
3941		input = &GetUsageTotalsInput{}
3942	}
3943
3944	output = &GetUsageTotalsOutput{}
3945	req = c.newRequest(op, input, output)
3946	return
3947}
3948
3949// GetUsageTotals API operation for Amazon Macie 2.
3950//
3951// Retrieves (queries) aggregated usage data for an account.
3952//
3953// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
3954// with awserr.Error's Code and Message methods to get detailed information about
3955// the error.
3956//
3957// See the AWS API reference guide for Amazon Macie 2's
3958// API operation GetUsageTotals for usage and error information.
3959//
3960// Returned Error Types:
3961//   * ValidationException
3962//   Provides information about an error that occurred due to a syntax error in
3963//   a request.
3964//
3965//   * InternalServerException
3966//   Provides information about an error that occurred due to an unknown internal
3967//   server error, exception, or failure.
3968//
3969//   * ServiceQuotaExceededException
3970//   Provides information about an error that occurred due to one or more service
3971//   quotas for an account.
3972//
3973//   * AccessDeniedException
3974//   Provides information about an error that occurred due to insufficient access
3975//   to a specified resource.
3976//
3977//   * ResourceNotFoundException
3978//   Provides information about an error that occurred because a specified resource
3979//   wasn't found.
3980//
3981//   * ThrottlingException
3982//   Provides information about an error that occurred because too many requests
3983//   were sent during a certain amount of time.
3984//
3985//   * ConflictException
3986//   Provides information about an error that occurred due to a versioning conflict
3987//   for a specified resource.
3988//
3989// See also, https://docs.aws.amazon.com/goto/WebAPI/macie2-2020-01-01/GetUsageTotals
3990func (c *Macie2) GetUsageTotals(input *GetUsageTotalsInput) (*GetUsageTotalsOutput, error) {
3991	req, out := c.GetUsageTotalsRequest(input)
3992	return out, req.Send()
3993}
3994
3995// GetUsageTotalsWithContext is the same as GetUsageTotals with the addition of
3996// the ability to pass a context and additional request options.
3997//
3998// See GetUsageTotals for details on how to use this API operation.
3999//
4000// The context must be non-nil and will be used for request cancellation. If
4001// the context is nil a panic will occur. In the future the SDK may create
4002// sub-contexts for http.Requests. See https://golang.org/pkg/context/
4003// for more information on using Contexts.
4004func (c *Macie2) GetUsageTotalsWithContext(ctx aws.Context, input *GetUsageTotalsInput, opts ...request.Option) (*GetUsageTotalsOutput, error) {
4005	req, out := c.GetUsageTotalsRequest(input)
4006	req.SetContext(ctx)
4007	req.ApplyOptions(opts...)
4008	return out, req.Send()
4009}
4010
4011const opListClassificationJobs = "ListClassificationJobs"
4012
4013// ListClassificationJobsRequest generates a "aws/request.Request" representing the
4014// client's request for the ListClassificationJobs operation. The "output" return
4015// value will be populated with the request's response once the request completes
4016// successfully.
4017//
4018// Use "Send" method on the returned Request to send the API call to the service.
4019// the "output" return value is not valid until after Send returns without error.
4020//
4021// See ListClassificationJobs for more information on using the ListClassificationJobs
4022// API call, and error handling.
4023//
4024// This method is useful when you want to inject custom logic or configuration
4025// into the SDK's request lifecycle. Such as custom headers, or retry logic.
4026//
4027//
4028//    // Example sending a request using the ListClassificationJobsRequest method.
4029//    req, resp := client.ListClassificationJobsRequest(params)
4030//
4031//    err := req.Send()
4032//    if err == nil { // resp is now filled
4033//        fmt.Println(resp)
4034//    }
4035//
4036// See also, https://docs.aws.amazon.com/goto/WebAPI/macie2-2020-01-01/ListClassificationJobs
4037func (c *Macie2) ListClassificationJobsRequest(input *ListClassificationJobsInput) (req *request.Request, output *ListClassificationJobsOutput) {
4038	op := &request.Operation{
4039		Name:       opListClassificationJobs,
4040		HTTPMethod: "POST",
4041		HTTPPath:   "/jobs/list",
4042		Paginator: &request.Paginator{
4043			InputTokens:     []string{"nextToken"},
4044			OutputTokens:    []string{"nextToken"},
4045			LimitToken:      "maxResults",
4046			TruncationToken: "",
4047		},
4048	}
4049
4050	if input == nil {
4051		input = &ListClassificationJobsInput{}
4052	}
4053
4054	output = &ListClassificationJobsOutput{}
4055	req = c.newRequest(op, input, output)
4056	return
4057}
4058
4059// ListClassificationJobs API operation for Amazon Macie 2.
4060//
4061// Retrieves a subset of information about one or more classification jobs.
4062//
4063// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
4064// with awserr.Error's Code and Message methods to get detailed information about
4065// the error.
4066//
4067// See the AWS API reference guide for Amazon Macie 2's
4068// API operation ListClassificationJobs for usage and error information.
4069//
4070// Returned Error Types:
4071//   * ValidationException
4072//   Provides information about an error that occurred due to a syntax error in
4073//   a request.
4074//
4075//   * InternalServerException
4076//   Provides information about an error that occurred due to an unknown internal
4077//   server error, exception, or failure.
4078//
4079//   * ServiceQuotaExceededException
4080//   Provides information about an error that occurred due to one or more service
4081//   quotas for an account.
4082//
4083//   * AccessDeniedException
4084//   Provides information about an error that occurred due to insufficient access
4085//   to a specified resource.
4086//
4087//   * ResourceNotFoundException
4088//   Provides information about an error that occurred because a specified resource
4089//   wasn't found.
4090//
4091//   * ThrottlingException
4092//   Provides information about an error that occurred because too many requests
4093//   were sent during a certain amount of time.
4094//
4095//   * ConflictException
4096//   Provides information about an error that occurred due to a versioning conflict
4097//   for a specified resource.
4098//
4099// See also, https://docs.aws.amazon.com/goto/WebAPI/macie2-2020-01-01/ListClassificationJobs
4100func (c *Macie2) ListClassificationJobs(input *ListClassificationJobsInput) (*ListClassificationJobsOutput, error) {
4101	req, out := c.ListClassificationJobsRequest(input)
4102	return out, req.Send()
4103}
4104
4105// ListClassificationJobsWithContext is the same as ListClassificationJobs with the addition of
4106// the ability to pass a context and additional request options.
4107//
4108// See ListClassificationJobs 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 *Macie2) ListClassificationJobsWithContext(ctx aws.Context, input *ListClassificationJobsInput, opts ...request.Option) (*ListClassificationJobsOutput, error) {
4115	req, out := c.ListClassificationJobsRequest(input)
4116	req.SetContext(ctx)
4117	req.ApplyOptions(opts...)
4118	return out, req.Send()
4119}
4120
4121// ListClassificationJobsPages iterates over the pages of a ListClassificationJobs 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 ListClassificationJobs 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 ListClassificationJobs operation.
4130//    pageNum := 0
4131//    err := client.ListClassificationJobsPages(params,
4132//        func(page *macie2.ListClassificationJobsOutput, lastPage bool) bool {
4133//            pageNum++
4134//            fmt.Println(page)
4135//            return pageNum <= 3
4136//        })
4137//
4138func (c *Macie2) ListClassificationJobsPages(input *ListClassificationJobsInput, fn func(*ListClassificationJobsOutput, bool) bool) error {
4139	return c.ListClassificationJobsPagesWithContext(aws.BackgroundContext(), input, fn)
4140}
4141
4142// ListClassificationJobsPagesWithContext same as ListClassificationJobsPages 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 *Macie2) ListClassificationJobsPagesWithContext(ctx aws.Context, input *ListClassificationJobsInput, fn func(*ListClassificationJobsOutput, bool) bool, opts ...request.Option) error {
4150	p := request.Pagination{
4151		NewRequest: func() (*request.Request, error) {
4152			var inCpy *ListClassificationJobsInput
4153			if input != nil {
4154				tmp := *input
4155				inCpy = &tmp
4156			}
4157			req, _ := c.ListClassificationJobsRequest(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().(*ListClassificationJobsOutput), !p.HasNextPage()) {
4166			break
4167		}
4168	}
4169
4170	return p.Err()
4171}
4172
4173const opListCustomDataIdentifiers = "ListCustomDataIdentifiers"
4174
4175// ListCustomDataIdentifiersRequest generates a "aws/request.Request" representing the
4176// client's request for the ListCustomDataIdentifiers 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 ListCustomDataIdentifiers for more information on using the ListCustomDataIdentifiers
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 ListCustomDataIdentifiersRequest method.
4191//    req, resp := client.ListCustomDataIdentifiersRequest(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/macie2-2020-01-01/ListCustomDataIdentifiers
4199func (c *Macie2) ListCustomDataIdentifiersRequest(input *ListCustomDataIdentifiersInput) (req *request.Request, output *ListCustomDataIdentifiersOutput) {
4200	op := &request.Operation{
4201		Name:       opListCustomDataIdentifiers,
4202		HTTPMethod: "POST",
4203		HTTPPath:   "/custom-data-identifiers/list",
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 = &ListCustomDataIdentifiersInput{}
4214	}
4215
4216	output = &ListCustomDataIdentifiersOutput{}
4217	req = c.newRequest(op, input, output)
4218	return
4219}
4220
4221// ListCustomDataIdentifiers API operation for Amazon Macie 2.
4222//
4223// Retrieves a subset of information about all the custom data identifiers for
4224// an account.
4225//
4226// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
4227// with awserr.Error's Code and Message methods to get detailed information about
4228// the error.
4229//
4230// See the AWS API reference guide for Amazon Macie 2's
4231// API operation ListCustomDataIdentifiers for usage and error information.
4232//
4233// Returned Error Types:
4234//   * ValidationException
4235//   Provides information about an error that occurred due to a syntax error in
4236//   a request.
4237//
4238//   * InternalServerException
4239//   Provides information about an error that occurred due to an unknown internal
4240//   server error, exception, or failure.
4241//
4242//   * ServiceQuotaExceededException
4243//   Provides information about an error that occurred due to one or more service
4244//   quotas for an account.
4245//
4246//   * AccessDeniedException
4247//   Provides information about an error that occurred due to insufficient access
4248//   to a specified resource.
4249//
4250//   * ResourceNotFoundException
4251//   Provides information about an error that occurred because a specified resource
4252//   wasn't found.
4253//
4254//   * ThrottlingException
4255//   Provides information about an error that occurred because too many requests
4256//   were sent during a certain amount of time.
4257//
4258//   * ConflictException
4259//   Provides information about an error that occurred due to a versioning conflict
4260//   for a specified resource.
4261//
4262// See also, https://docs.aws.amazon.com/goto/WebAPI/macie2-2020-01-01/ListCustomDataIdentifiers
4263func (c *Macie2) ListCustomDataIdentifiers(input *ListCustomDataIdentifiersInput) (*ListCustomDataIdentifiersOutput, error) {
4264	req, out := c.ListCustomDataIdentifiersRequest(input)
4265	return out, req.Send()
4266}
4267
4268// ListCustomDataIdentifiersWithContext is the same as ListCustomDataIdentifiers with the addition of
4269// the ability to pass a context and additional request options.
4270//
4271// See ListCustomDataIdentifiers for details on how to use this API operation.
4272//
4273// The context must be non-nil and will be used for request cancellation. If
4274// the context is nil a panic will occur. In the future the SDK may create
4275// sub-contexts for http.Requests. See https://golang.org/pkg/context/
4276// for more information on using Contexts.
4277func (c *Macie2) ListCustomDataIdentifiersWithContext(ctx aws.Context, input *ListCustomDataIdentifiersInput, opts ...request.Option) (*ListCustomDataIdentifiersOutput, error) {
4278	req, out := c.ListCustomDataIdentifiersRequest(input)
4279	req.SetContext(ctx)
4280	req.ApplyOptions(opts...)
4281	return out, req.Send()
4282}
4283
4284// ListCustomDataIdentifiersPages iterates over the pages of a ListCustomDataIdentifiers operation,
4285// calling the "fn" function with the response data for each page. To stop
4286// iterating, return false from the fn function.
4287//
4288// See ListCustomDataIdentifiers method for more information on how to use this operation.
4289//
4290// Note: This operation can generate multiple requests to a service.
4291//
4292//    // Example iterating over at most 3 pages of a ListCustomDataIdentifiers operation.
4293//    pageNum := 0
4294//    err := client.ListCustomDataIdentifiersPages(params,
4295//        func(page *macie2.ListCustomDataIdentifiersOutput, lastPage bool) bool {
4296//            pageNum++
4297//            fmt.Println(page)
4298//            return pageNum <= 3
4299//        })
4300//
4301func (c *Macie2) ListCustomDataIdentifiersPages(input *ListCustomDataIdentifiersInput, fn func(*ListCustomDataIdentifiersOutput, bool) bool) error {
4302	return c.ListCustomDataIdentifiersPagesWithContext(aws.BackgroundContext(), input, fn)
4303}
4304
4305// ListCustomDataIdentifiersPagesWithContext same as ListCustomDataIdentifiersPages except
4306// it takes a Context and allows setting request options on the pages.
4307//
4308// The context must be non-nil and will be used for request cancellation. If
4309// the context is nil a panic will occur. In the future the SDK may create
4310// sub-contexts for http.Requests. See https://golang.org/pkg/context/
4311// for more information on using Contexts.
4312func (c *Macie2) ListCustomDataIdentifiersPagesWithContext(ctx aws.Context, input *ListCustomDataIdentifiersInput, fn func(*ListCustomDataIdentifiersOutput, bool) bool, opts ...request.Option) error {
4313	p := request.Pagination{
4314		NewRequest: func() (*request.Request, error) {
4315			var inCpy *ListCustomDataIdentifiersInput
4316			if input != nil {
4317				tmp := *input
4318				inCpy = &tmp
4319			}
4320			req, _ := c.ListCustomDataIdentifiersRequest(inCpy)
4321			req.SetContext(ctx)
4322			req.ApplyOptions(opts...)
4323			return req, nil
4324		},
4325	}
4326
4327	for p.Next() {
4328		if !fn(p.Page().(*ListCustomDataIdentifiersOutput), !p.HasNextPage()) {
4329			break
4330		}
4331	}
4332
4333	return p.Err()
4334}
4335
4336const opListFindings = "ListFindings"
4337
4338// ListFindingsRequest generates a "aws/request.Request" representing the
4339// client's request for the ListFindings operation. The "output" return
4340// value will be populated with the request's response once the request completes
4341// successfully.
4342//
4343// Use "Send" method on the returned Request to send the API call to the service.
4344// the "output" return value is not valid until after Send returns without error.
4345//
4346// See ListFindings for more information on using the ListFindings
4347// API call, and error handling.
4348//
4349// This method is useful when you want to inject custom logic or configuration
4350// into the SDK's request lifecycle. Such as custom headers, or retry logic.
4351//
4352//
4353//    // Example sending a request using the ListFindingsRequest method.
4354//    req, resp := client.ListFindingsRequest(params)
4355//
4356//    err := req.Send()
4357//    if err == nil { // resp is now filled
4358//        fmt.Println(resp)
4359//    }
4360//
4361// See also, https://docs.aws.amazon.com/goto/WebAPI/macie2-2020-01-01/ListFindings
4362func (c *Macie2) ListFindingsRequest(input *ListFindingsInput) (req *request.Request, output *ListFindingsOutput) {
4363	op := &request.Operation{
4364		Name:       opListFindings,
4365		HTTPMethod: "POST",
4366		HTTPPath:   "/findings",
4367		Paginator: &request.Paginator{
4368			InputTokens:     []string{"nextToken"},
4369			OutputTokens:    []string{"nextToken"},
4370			LimitToken:      "maxResults",
4371			TruncationToken: "",
4372		},
4373	}
4374
4375	if input == nil {
4376		input = &ListFindingsInput{}
4377	}
4378
4379	output = &ListFindingsOutput{}
4380	req = c.newRequest(op, input, output)
4381	return
4382}
4383
4384// ListFindings API operation for Amazon Macie 2.
4385//
4386// Retrieves a subset of information about one or more findings.
4387//
4388// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
4389// with awserr.Error's Code and Message methods to get detailed information about
4390// the error.
4391//
4392// See the AWS API reference guide for Amazon Macie 2's
4393// API operation ListFindings for usage and error information.
4394//
4395// Returned Error Types:
4396//   * ValidationException
4397//   Provides information about an error that occurred due to a syntax error in
4398//   a request.
4399//
4400//   * InternalServerException
4401//   Provides information about an error that occurred due to an unknown internal
4402//   server error, exception, or failure.
4403//
4404//   * ServiceQuotaExceededException
4405//   Provides information about an error that occurred due to one or more service
4406//   quotas for an account.
4407//
4408//   * AccessDeniedException
4409//   Provides information about an error that occurred due to insufficient access
4410//   to a specified resource.
4411//
4412//   * ResourceNotFoundException
4413//   Provides information about an error that occurred because a specified resource
4414//   wasn't found.
4415//
4416//   * ThrottlingException
4417//   Provides information about an error that occurred because too many requests
4418//   were sent during a certain amount of time.
4419//
4420//   * ConflictException
4421//   Provides information about an error that occurred due to a versioning conflict
4422//   for a specified resource.
4423//
4424// See also, https://docs.aws.amazon.com/goto/WebAPI/macie2-2020-01-01/ListFindings
4425func (c *Macie2) ListFindings(input *ListFindingsInput) (*ListFindingsOutput, error) {
4426	req, out := c.ListFindingsRequest(input)
4427	return out, req.Send()
4428}
4429
4430// ListFindingsWithContext is the same as ListFindings with the addition of
4431// the ability to pass a context and additional request options.
4432//
4433// See ListFindings for details on how to use this API operation.
4434//
4435// The context must be non-nil and will be used for request cancellation. If
4436// the context is nil a panic will occur. In the future the SDK may create
4437// sub-contexts for http.Requests. See https://golang.org/pkg/context/
4438// for more information on using Contexts.
4439func (c *Macie2) ListFindingsWithContext(ctx aws.Context, input *ListFindingsInput, opts ...request.Option) (*ListFindingsOutput, error) {
4440	req, out := c.ListFindingsRequest(input)
4441	req.SetContext(ctx)
4442	req.ApplyOptions(opts...)
4443	return out, req.Send()
4444}
4445
4446// ListFindingsPages iterates over the pages of a ListFindings operation,
4447// calling the "fn" function with the response data for each page. To stop
4448// iterating, return false from the fn function.
4449//
4450// See ListFindings method for more information on how to use this operation.
4451//
4452// Note: This operation can generate multiple requests to a service.
4453//
4454//    // Example iterating over at most 3 pages of a ListFindings operation.
4455//    pageNum := 0
4456//    err := client.ListFindingsPages(params,
4457//        func(page *macie2.ListFindingsOutput, lastPage bool) bool {
4458//            pageNum++
4459//            fmt.Println(page)
4460//            return pageNum <= 3
4461//        })
4462//
4463func (c *Macie2) ListFindingsPages(input *ListFindingsInput, fn func(*ListFindingsOutput, bool) bool) error {
4464	return c.ListFindingsPagesWithContext(aws.BackgroundContext(), input, fn)
4465}
4466
4467// ListFindingsPagesWithContext same as ListFindingsPages except
4468// it takes a Context and allows setting request options on the pages.
4469//
4470// The context must be non-nil and will be used for request cancellation. If
4471// the context is nil a panic will occur. In the future the SDK may create
4472// sub-contexts for http.Requests. See https://golang.org/pkg/context/
4473// for more information on using Contexts.
4474func (c *Macie2) ListFindingsPagesWithContext(ctx aws.Context, input *ListFindingsInput, fn func(*ListFindingsOutput, bool) bool, opts ...request.Option) error {
4475	p := request.Pagination{
4476		NewRequest: func() (*request.Request, error) {
4477			var inCpy *ListFindingsInput
4478			if input != nil {
4479				tmp := *input
4480				inCpy = &tmp
4481			}
4482			req, _ := c.ListFindingsRequest(inCpy)
4483			req.SetContext(ctx)
4484			req.ApplyOptions(opts...)
4485			return req, nil
4486		},
4487	}
4488
4489	for p.Next() {
4490		if !fn(p.Page().(*ListFindingsOutput), !p.HasNextPage()) {
4491			break
4492		}
4493	}
4494
4495	return p.Err()
4496}
4497
4498const opListFindingsFilters = "ListFindingsFilters"
4499
4500// ListFindingsFiltersRequest generates a "aws/request.Request" representing the
4501// client's request for the ListFindingsFilters operation. The "output" return
4502// value will be populated with the request's response once the request completes
4503// successfully.
4504//
4505// Use "Send" method on the returned Request to send the API call to the service.
4506// the "output" return value is not valid until after Send returns without error.
4507//
4508// See ListFindingsFilters for more information on using the ListFindingsFilters
4509// API call, and error handling.
4510//
4511// This method is useful when you want to inject custom logic or configuration
4512// into the SDK's request lifecycle. Such as custom headers, or retry logic.
4513//
4514//
4515//    // Example sending a request using the ListFindingsFiltersRequest method.
4516//    req, resp := client.ListFindingsFiltersRequest(params)
4517//
4518//    err := req.Send()
4519//    if err == nil { // resp is now filled
4520//        fmt.Println(resp)
4521//    }
4522//
4523// See also, https://docs.aws.amazon.com/goto/WebAPI/macie2-2020-01-01/ListFindingsFilters
4524func (c *Macie2) ListFindingsFiltersRequest(input *ListFindingsFiltersInput) (req *request.Request, output *ListFindingsFiltersOutput) {
4525	op := &request.Operation{
4526		Name:       opListFindingsFilters,
4527		HTTPMethod: "GET",
4528		HTTPPath:   "/findingsfilters",
4529		Paginator: &request.Paginator{
4530			InputTokens:     []string{"nextToken"},
4531			OutputTokens:    []string{"nextToken"},
4532			LimitToken:      "maxResults",
4533			TruncationToken: "",
4534		},
4535	}
4536
4537	if input == nil {
4538		input = &ListFindingsFiltersInput{}
4539	}
4540
4541	output = &ListFindingsFiltersOutput{}
4542	req = c.newRequest(op, input, output)
4543	return
4544}
4545
4546// ListFindingsFilters API operation for Amazon Macie 2.
4547//
4548// Retrieves a subset of information about all the findings filters for an account.
4549//
4550// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
4551// with awserr.Error's Code and Message methods to get detailed information about
4552// the error.
4553//
4554// See the AWS API reference guide for Amazon Macie 2's
4555// API operation ListFindingsFilters for usage and error information.
4556//
4557// Returned Error Types:
4558//   * ValidationException
4559//   Provides information about an error that occurred due to a syntax error in
4560//   a request.
4561//
4562//   * InternalServerException
4563//   Provides information about an error that occurred due to an unknown internal
4564//   server error, exception, or failure.
4565//
4566//   * ServiceQuotaExceededException
4567//   Provides information about an error that occurred due to one or more service
4568//   quotas for an account.
4569//
4570//   * AccessDeniedException
4571//   Provides information about an error that occurred due to insufficient access
4572//   to a specified resource.
4573//
4574//   * ResourceNotFoundException
4575//   Provides information about an error that occurred because a specified resource
4576//   wasn't found.
4577//
4578//   * ThrottlingException
4579//   Provides information about an error that occurred because too many requests
4580//   were sent during a certain amount of time.
4581//
4582//   * ConflictException
4583//   Provides information about an error that occurred due to a versioning conflict
4584//   for a specified resource.
4585//
4586// See also, https://docs.aws.amazon.com/goto/WebAPI/macie2-2020-01-01/ListFindingsFilters
4587func (c *Macie2) ListFindingsFilters(input *ListFindingsFiltersInput) (*ListFindingsFiltersOutput, error) {
4588	req, out := c.ListFindingsFiltersRequest(input)
4589	return out, req.Send()
4590}
4591
4592// ListFindingsFiltersWithContext is the same as ListFindingsFilters with the addition of
4593// the ability to pass a context and additional request options.
4594//
4595// See ListFindingsFilters for details on how to use this API operation.
4596//
4597// The context must be non-nil and will be used for request cancellation. If
4598// the context is nil a panic will occur. In the future the SDK may create
4599// sub-contexts for http.Requests. See https://golang.org/pkg/context/
4600// for more information on using Contexts.
4601func (c *Macie2) ListFindingsFiltersWithContext(ctx aws.Context, input *ListFindingsFiltersInput, opts ...request.Option) (*ListFindingsFiltersOutput, error) {
4602	req, out := c.ListFindingsFiltersRequest(input)
4603	req.SetContext(ctx)
4604	req.ApplyOptions(opts...)
4605	return out, req.Send()
4606}
4607
4608// ListFindingsFiltersPages iterates over the pages of a ListFindingsFilters operation,
4609// calling the "fn" function with the response data for each page. To stop
4610// iterating, return false from the fn function.
4611//
4612// See ListFindingsFilters method for more information on how to use this operation.
4613//
4614// Note: This operation can generate multiple requests to a service.
4615//
4616//    // Example iterating over at most 3 pages of a ListFindingsFilters operation.
4617//    pageNum := 0
4618//    err := client.ListFindingsFiltersPages(params,
4619//        func(page *macie2.ListFindingsFiltersOutput, lastPage bool) bool {
4620//            pageNum++
4621//            fmt.Println(page)
4622//            return pageNum <= 3
4623//        })
4624//
4625func (c *Macie2) ListFindingsFiltersPages(input *ListFindingsFiltersInput, fn func(*ListFindingsFiltersOutput, bool) bool) error {
4626	return c.ListFindingsFiltersPagesWithContext(aws.BackgroundContext(), input, fn)
4627}
4628
4629// ListFindingsFiltersPagesWithContext same as ListFindingsFiltersPages except
4630// it takes a Context and allows setting request options on the pages.
4631//
4632// The context must be non-nil and will be used for request cancellation. If
4633// the context is nil a panic will occur. In the future the SDK may create
4634// sub-contexts for http.Requests. See https://golang.org/pkg/context/
4635// for more information on using Contexts.
4636func (c *Macie2) ListFindingsFiltersPagesWithContext(ctx aws.Context, input *ListFindingsFiltersInput, fn func(*ListFindingsFiltersOutput, bool) bool, opts ...request.Option) error {
4637	p := request.Pagination{
4638		NewRequest: func() (*request.Request, error) {
4639			var inCpy *ListFindingsFiltersInput
4640			if input != nil {
4641				tmp := *input
4642				inCpy = &tmp
4643			}
4644			req, _ := c.ListFindingsFiltersRequest(inCpy)
4645			req.SetContext(ctx)
4646			req.ApplyOptions(opts...)
4647			return req, nil
4648		},
4649	}
4650
4651	for p.Next() {
4652		if !fn(p.Page().(*ListFindingsFiltersOutput), !p.HasNextPage()) {
4653			break
4654		}
4655	}
4656
4657	return p.Err()
4658}
4659
4660const opListInvitations = "ListInvitations"
4661
4662// ListInvitationsRequest generates a "aws/request.Request" representing the
4663// client's request for the ListInvitations operation. The "output" return
4664// value will be populated with the request's response once the request completes
4665// successfully.
4666//
4667// Use "Send" method on the returned Request to send the API call to the service.
4668// the "output" return value is not valid until after Send returns without error.
4669//
4670// See ListInvitations for more information on using the ListInvitations
4671// API call, and error handling.
4672//
4673// This method is useful when you want to inject custom logic or configuration
4674// into the SDK's request lifecycle. Such as custom headers, or retry logic.
4675//
4676//
4677//    // Example sending a request using the ListInvitationsRequest method.
4678//    req, resp := client.ListInvitationsRequest(params)
4679//
4680//    err := req.Send()
4681//    if err == nil { // resp is now filled
4682//        fmt.Println(resp)
4683//    }
4684//
4685// See also, https://docs.aws.amazon.com/goto/WebAPI/macie2-2020-01-01/ListInvitations
4686func (c *Macie2) ListInvitationsRequest(input *ListInvitationsInput) (req *request.Request, output *ListInvitationsOutput) {
4687	op := &request.Operation{
4688		Name:       opListInvitations,
4689		HTTPMethod: "GET",
4690		HTTPPath:   "/invitations",
4691		Paginator: &request.Paginator{
4692			InputTokens:     []string{"nextToken"},
4693			OutputTokens:    []string{"nextToken"},
4694			LimitToken:      "maxResults",
4695			TruncationToken: "",
4696		},
4697	}
4698
4699	if input == nil {
4700		input = &ListInvitationsInput{}
4701	}
4702
4703	output = &ListInvitationsOutput{}
4704	req = c.newRequest(op, input, output)
4705	return
4706}
4707
4708// ListInvitations API operation for Amazon Macie 2.
4709//
4710// Retrieves information about the Amazon Macie membership invitations that
4711// were received by an account.
4712//
4713// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
4714// with awserr.Error's Code and Message methods to get detailed information about
4715// the error.
4716//
4717// See the AWS API reference guide for Amazon Macie 2's
4718// API operation ListInvitations for usage and error information.
4719//
4720// Returned Error Types:
4721//   * ValidationException
4722//   Provides information about an error that occurred due to a syntax error in
4723//   a request.
4724//
4725//   * InternalServerException
4726//   Provides information about an error that occurred due to an unknown internal
4727//   server error, exception, or failure.
4728//
4729//   * ServiceQuotaExceededException
4730//   Provides information about an error that occurred due to one or more service
4731//   quotas for an account.
4732//
4733//   * AccessDeniedException
4734//   Provides information about an error that occurred due to insufficient access
4735//   to a specified resource.
4736//
4737//   * ResourceNotFoundException
4738//   Provides information about an error that occurred because a specified resource
4739//   wasn't found.
4740//
4741//   * ThrottlingException
4742//   Provides information about an error that occurred because too many requests
4743//   were sent during a certain amount of time.
4744//
4745//   * ConflictException
4746//   Provides information about an error that occurred due to a versioning conflict
4747//   for a specified resource.
4748//
4749// See also, https://docs.aws.amazon.com/goto/WebAPI/macie2-2020-01-01/ListInvitations
4750func (c *Macie2) ListInvitations(input *ListInvitationsInput) (*ListInvitationsOutput, error) {
4751	req, out := c.ListInvitationsRequest(input)
4752	return out, req.Send()
4753}
4754
4755// ListInvitationsWithContext is the same as ListInvitations with the addition of
4756// the ability to pass a context and additional request options.
4757//
4758// See ListInvitations for details on how to use this API operation.
4759//
4760// The context must be non-nil and will be used for request cancellation. If
4761// the context is nil a panic will occur. In the future the SDK may create
4762// sub-contexts for http.Requests. See https://golang.org/pkg/context/
4763// for more information on using Contexts.
4764func (c *Macie2) ListInvitationsWithContext(ctx aws.Context, input *ListInvitationsInput, opts ...request.Option) (*ListInvitationsOutput, error) {
4765	req, out := c.ListInvitationsRequest(input)
4766	req.SetContext(ctx)
4767	req.ApplyOptions(opts...)
4768	return out, req.Send()
4769}
4770
4771// ListInvitationsPages iterates over the pages of a ListInvitations operation,
4772// calling the "fn" function with the response data for each page. To stop
4773// iterating, return false from the fn function.
4774//
4775// See ListInvitations method for more information on how to use this operation.
4776//
4777// Note: This operation can generate multiple requests to a service.
4778//
4779//    // Example iterating over at most 3 pages of a ListInvitations operation.
4780//    pageNum := 0
4781//    err := client.ListInvitationsPages(params,
4782//        func(page *macie2.ListInvitationsOutput, lastPage bool) bool {
4783//            pageNum++
4784//            fmt.Println(page)
4785//            return pageNum <= 3
4786//        })
4787//
4788func (c *Macie2) ListInvitationsPages(input *ListInvitationsInput, fn func(*ListInvitationsOutput, bool) bool) error {
4789	return c.ListInvitationsPagesWithContext(aws.BackgroundContext(), input, fn)
4790}
4791
4792// ListInvitationsPagesWithContext same as ListInvitationsPages except
4793// it takes a Context and allows setting request options on the pages.
4794//
4795// The context must be non-nil and will be used for request cancellation. If
4796// the context is nil a panic will occur. In the future the SDK may create
4797// sub-contexts for http.Requests. See https://golang.org/pkg/context/
4798// for more information on using Contexts.
4799func (c *Macie2) ListInvitationsPagesWithContext(ctx aws.Context, input *ListInvitationsInput, fn func(*ListInvitationsOutput, bool) bool, opts ...request.Option) error {
4800	p := request.Pagination{
4801		NewRequest: func() (*request.Request, error) {
4802			var inCpy *ListInvitationsInput
4803			if input != nil {
4804				tmp := *input
4805				inCpy = &tmp
4806			}
4807			req, _ := c.ListInvitationsRequest(inCpy)
4808			req.SetContext(ctx)
4809			req.ApplyOptions(opts...)
4810			return req, nil
4811		},
4812	}
4813
4814	for p.Next() {
4815		if !fn(p.Page().(*ListInvitationsOutput), !p.HasNextPage()) {
4816			break
4817		}
4818	}
4819
4820	return p.Err()
4821}
4822
4823const opListManagedDataIdentifiers = "ListManagedDataIdentifiers"
4824
4825// ListManagedDataIdentifiersRequest generates a "aws/request.Request" representing the
4826// client's request for the ListManagedDataIdentifiers operation. The "output" return
4827// value will be populated with the request's response once the request completes
4828// successfully.
4829//
4830// Use "Send" method on the returned Request to send the API call to the service.
4831// the "output" return value is not valid until after Send returns without error.
4832//
4833// See ListManagedDataIdentifiers for more information on using the ListManagedDataIdentifiers
4834// API call, and error handling.
4835//
4836// This method is useful when you want to inject custom logic or configuration
4837// into the SDK's request lifecycle. Such as custom headers, or retry logic.
4838//
4839//
4840//    // Example sending a request using the ListManagedDataIdentifiersRequest method.
4841//    req, resp := client.ListManagedDataIdentifiersRequest(params)
4842//
4843//    err := req.Send()
4844//    if err == nil { // resp is now filled
4845//        fmt.Println(resp)
4846//    }
4847//
4848// See also, https://docs.aws.amazon.com/goto/WebAPI/macie2-2020-01-01/ListManagedDataIdentifiers
4849func (c *Macie2) ListManagedDataIdentifiersRequest(input *ListManagedDataIdentifiersInput) (req *request.Request, output *ListManagedDataIdentifiersOutput) {
4850	op := &request.Operation{
4851		Name:       opListManagedDataIdentifiers,
4852		HTTPMethod: "POST",
4853		HTTPPath:   "/managed-data-identifiers/list",
4854	}
4855
4856	if input == nil {
4857		input = &ListManagedDataIdentifiersInput{}
4858	}
4859
4860	output = &ListManagedDataIdentifiersOutput{}
4861	req = c.newRequest(op, input, output)
4862	return
4863}
4864
4865// ListManagedDataIdentifiers API operation for Amazon Macie 2.
4866//
4867// Retrieves information about all the managed data identifiers that Amazon
4868// Macie currently provides.
4869//
4870// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
4871// with awserr.Error's Code and Message methods to get detailed information about
4872// the error.
4873//
4874// See the AWS API reference guide for Amazon Macie 2's
4875// API operation ListManagedDataIdentifiers for usage and error information.
4876// See also, https://docs.aws.amazon.com/goto/WebAPI/macie2-2020-01-01/ListManagedDataIdentifiers
4877func (c *Macie2) ListManagedDataIdentifiers(input *ListManagedDataIdentifiersInput) (*ListManagedDataIdentifiersOutput, error) {
4878	req, out := c.ListManagedDataIdentifiersRequest(input)
4879	return out, req.Send()
4880}
4881
4882// ListManagedDataIdentifiersWithContext is the same as ListManagedDataIdentifiers with the addition of
4883// the ability to pass a context and additional request options.
4884//
4885// See ListManagedDataIdentifiers for details on how to use this API operation.
4886//
4887// The context must be non-nil and will be used for request cancellation. If
4888// the context is nil a panic will occur. In the future the SDK may create
4889// sub-contexts for http.Requests. See https://golang.org/pkg/context/
4890// for more information on using Contexts.
4891func (c *Macie2) ListManagedDataIdentifiersWithContext(ctx aws.Context, input *ListManagedDataIdentifiersInput, opts ...request.Option) (*ListManagedDataIdentifiersOutput, error) {
4892	req, out := c.ListManagedDataIdentifiersRequest(input)
4893	req.SetContext(ctx)
4894	req.ApplyOptions(opts...)
4895	return out, req.Send()
4896}
4897
4898const opListMembers = "ListMembers"
4899
4900// ListMembersRequest generates a "aws/request.Request" representing the
4901// client's request for the ListMembers operation. The "output" return
4902// value will be populated with the request's response once the request completes
4903// successfully.
4904//
4905// Use "Send" method on the returned Request to send the API call to the service.
4906// the "output" return value is not valid until after Send returns without error.
4907//
4908// See ListMembers for more information on using the ListMembers
4909// API call, and error handling.
4910//
4911// This method is useful when you want to inject custom logic or configuration
4912// into the SDK's request lifecycle. Such as custom headers, or retry logic.
4913//
4914//
4915//    // Example sending a request using the ListMembersRequest method.
4916//    req, resp := client.ListMembersRequest(params)
4917//
4918//    err := req.Send()
4919//    if err == nil { // resp is now filled
4920//        fmt.Println(resp)
4921//    }
4922//
4923// See also, https://docs.aws.amazon.com/goto/WebAPI/macie2-2020-01-01/ListMembers
4924func (c *Macie2) ListMembersRequest(input *ListMembersInput) (req *request.Request, output *ListMembersOutput) {
4925	op := &request.Operation{
4926		Name:       opListMembers,
4927		HTTPMethod: "GET",
4928		HTTPPath:   "/members",
4929		Paginator: &request.Paginator{
4930			InputTokens:     []string{"nextToken"},
4931			OutputTokens:    []string{"nextToken"},
4932			LimitToken:      "maxResults",
4933			TruncationToken: "",
4934		},
4935	}
4936
4937	if input == nil {
4938		input = &ListMembersInput{}
4939	}
4940
4941	output = &ListMembersOutput{}
4942	req = c.newRequest(op, input, output)
4943	return
4944}
4945
4946// ListMembers API operation for Amazon Macie 2.
4947//
4948// Retrieves information about the accounts that are associated with an Amazon
4949// Macie administrator account.
4950//
4951// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
4952// with awserr.Error's Code and Message methods to get detailed information about
4953// the error.
4954//
4955// See the AWS API reference guide for Amazon Macie 2's
4956// API operation ListMembers for usage and error information.
4957//
4958// Returned Error Types:
4959//   * ValidationException
4960//   Provides information about an error that occurred due to a syntax error in
4961//   a request.
4962//
4963//   * InternalServerException
4964//   Provides information about an error that occurred due to an unknown internal
4965//   server error, exception, or failure.
4966//
4967//   * ServiceQuotaExceededException
4968//   Provides information about an error that occurred due to one or more service
4969//   quotas for an account.
4970//
4971//   * AccessDeniedException
4972//   Provides information about an error that occurred due to insufficient access
4973//   to a specified resource.
4974//
4975//   * ResourceNotFoundException
4976//   Provides information about an error that occurred because a specified resource
4977//   wasn't found.
4978//
4979//   * ThrottlingException
4980//   Provides information about an error that occurred because too many requests
4981//   were sent during a certain amount of time.
4982//
4983//   * ConflictException
4984//   Provides information about an error that occurred due to a versioning conflict
4985//   for a specified resource.
4986//
4987// See also, https://docs.aws.amazon.com/goto/WebAPI/macie2-2020-01-01/ListMembers
4988func (c *Macie2) ListMembers(input *ListMembersInput) (*ListMembersOutput, error) {
4989	req, out := c.ListMembersRequest(input)
4990	return out, req.Send()
4991}
4992
4993// ListMembersWithContext is the same as ListMembers with the addition of
4994// the ability to pass a context and additional request options.
4995//
4996// See ListMembers for details on how to use this API operation.
4997//
4998// The context must be non-nil and will be used for request cancellation. If
4999// the context is nil a panic will occur. In the future the SDK may create
5000// sub-contexts for http.Requests. See https://golang.org/pkg/context/
5001// for more information on using Contexts.
5002func (c *Macie2) ListMembersWithContext(ctx aws.Context, input *ListMembersInput, opts ...request.Option) (*ListMembersOutput, error) {
5003	req, out := c.ListMembersRequest(input)
5004	req.SetContext(ctx)
5005	req.ApplyOptions(opts...)
5006	return out, req.Send()
5007}
5008
5009// ListMembersPages iterates over the pages of a ListMembers operation,
5010// calling the "fn" function with the response data for each page. To stop
5011// iterating, return false from the fn function.
5012//
5013// See ListMembers method for more information on how to use this operation.
5014//
5015// Note: This operation can generate multiple requests to a service.
5016//
5017//    // Example iterating over at most 3 pages of a ListMembers operation.
5018//    pageNum := 0
5019//    err := client.ListMembersPages(params,
5020//        func(page *macie2.ListMembersOutput, lastPage bool) bool {
5021//            pageNum++
5022//            fmt.Println(page)
5023//            return pageNum <= 3
5024//        })
5025//
5026func (c *Macie2) ListMembersPages(input *ListMembersInput, fn func(*ListMembersOutput, bool) bool) error {
5027	return c.ListMembersPagesWithContext(aws.BackgroundContext(), input, fn)
5028}
5029
5030// ListMembersPagesWithContext same as ListMembersPages except
5031// it takes a Context and allows setting request options on the pages.
5032//
5033// The context must be non-nil and will be used for request cancellation. If
5034// the context is nil a panic will occur. In the future the SDK may create
5035// sub-contexts for http.Requests. See https://golang.org/pkg/context/
5036// for more information on using Contexts.
5037func (c *Macie2) ListMembersPagesWithContext(ctx aws.Context, input *ListMembersInput, fn func(*ListMembersOutput, bool) bool, opts ...request.Option) error {
5038	p := request.Pagination{
5039		NewRequest: func() (*request.Request, error) {
5040			var inCpy *ListMembersInput
5041			if input != nil {
5042				tmp := *input
5043				inCpy = &tmp
5044			}
5045			req, _ := c.ListMembersRequest(inCpy)
5046			req.SetContext(ctx)
5047			req.ApplyOptions(opts...)
5048			return req, nil
5049		},
5050	}
5051
5052	for p.Next() {
5053		if !fn(p.Page().(*ListMembersOutput), !p.HasNextPage()) {
5054			break
5055		}
5056	}
5057
5058	return p.Err()
5059}
5060
5061const opListOrganizationAdminAccounts = "ListOrganizationAdminAccounts"
5062
5063// ListOrganizationAdminAccountsRequest generates a "aws/request.Request" representing the
5064// client's request for the ListOrganizationAdminAccounts operation. The "output" return
5065// value will be populated with the request's response once the request completes
5066// successfully.
5067//
5068// Use "Send" method on the returned Request to send the API call to the service.
5069// the "output" return value is not valid until after Send returns without error.
5070//
5071// See ListOrganizationAdminAccounts for more information on using the ListOrganizationAdminAccounts
5072// API call, and error handling.
5073//
5074// This method is useful when you want to inject custom logic or configuration
5075// into the SDK's request lifecycle. Such as custom headers, or retry logic.
5076//
5077//
5078//    // Example sending a request using the ListOrganizationAdminAccountsRequest method.
5079//    req, resp := client.ListOrganizationAdminAccountsRequest(params)
5080//
5081//    err := req.Send()
5082//    if err == nil { // resp is now filled
5083//        fmt.Println(resp)
5084//    }
5085//
5086// See also, https://docs.aws.amazon.com/goto/WebAPI/macie2-2020-01-01/ListOrganizationAdminAccounts
5087func (c *Macie2) ListOrganizationAdminAccountsRequest(input *ListOrganizationAdminAccountsInput) (req *request.Request, output *ListOrganizationAdminAccountsOutput) {
5088	op := &request.Operation{
5089		Name:       opListOrganizationAdminAccounts,
5090		HTTPMethod: "GET",
5091		HTTPPath:   "/admin",
5092		Paginator: &request.Paginator{
5093			InputTokens:     []string{"nextToken"},
5094			OutputTokens:    []string{"nextToken"},
5095			LimitToken:      "maxResults",
5096			TruncationToken: "",
5097		},
5098	}
5099
5100	if input == nil {
5101		input = &ListOrganizationAdminAccountsInput{}
5102	}
5103
5104	output = &ListOrganizationAdminAccountsOutput{}
5105	req = c.newRequest(op, input, output)
5106	return
5107}
5108
5109// ListOrganizationAdminAccounts API operation for Amazon Macie 2.
5110//
5111// Retrieves information about the delegated Amazon Macie administrator account
5112// for an Amazon Web Services organization.
5113//
5114// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
5115// with awserr.Error's Code and Message methods to get detailed information about
5116// the error.
5117//
5118// See the AWS API reference guide for Amazon Macie 2's
5119// API operation ListOrganizationAdminAccounts for usage and error information.
5120//
5121// Returned Error Types:
5122//   * ValidationException
5123//   Provides information about an error that occurred due to a syntax error in
5124//   a request.
5125//
5126//   * InternalServerException
5127//   Provides information about an error that occurred due to an unknown internal
5128//   server error, exception, or failure.
5129//
5130//   * ServiceQuotaExceededException
5131//   Provides information about an error that occurred due to one or more service
5132//   quotas for an account.
5133//
5134//   * AccessDeniedException
5135//   Provides information about an error that occurred due to insufficient access
5136//   to a specified resource.
5137//
5138//   * ResourceNotFoundException
5139//   Provides information about an error that occurred because a specified resource
5140//   wasn't found.
5141//
5142//   * ThrottlingException
5143//   Provides information about an error that occurred because too many requests
5144//   were sent during a certain amount of time.
5145//
5146//   * ConflictException
5147//   Provides information about an error that occurred due to a versioning conflict
5148//   for a specified resource.
5149//
5150// See also, https://docs.aws.amazon.com/goto/WebAPI/macie2-2020-01-01/ListOrganizationAdminAccounts
5151func (c *Macie2) ListOrganizationAdminAccounts(input *ListOrganizationAdminAccountsInput) (*ListOrganizationAdminAccountsOutput, error) {
5152	req, out := c.ListOrganizationAdminAccountsRequest(input)
5153	return out, req.Send()
5154}
5155
5156// ListOrganizationAdminAccountsWithContext is the same as ListOrganizationAdminAccounts with the addition of
5157// the ability to pass a context and additional request options.
5158//
5159// See ListOrganizationAdminAccounts for details on how to use this API operation.
5160//
5161// The context must be non-nil and will be used for request cancellation. If
5162// the context is nil a panic will occur. In the future the SDK may create
5163// sub-contexts for http.Requests. See https://golang.org/pkg/context/
5164// for more information on using Contexts.
5165func (c *Macie2) ListOrganizationAdminAccountsWithContext(ctx aws.Context, input *ListOrganizationAdminAccountsInput, opts ...request.Option) (*ListOrganizationAdminAccountsOutput, error) {
5166	req, out := c.ListOrganizationAdminAccountsRequest(input)
5167	req.SetContext(ctx)
5168	req.ApplyOptions(opts...)
5169	return out, req.Send()
5170}
5171
5172// ListOrganizationAdminAccountsPages iterates over the pages of a ListOrganizationAdminAccounts operation,
5173// calling the "fn" function with the response data for each page. To stop
5174// iterating, return false from the fn function.
5175//
5176// See ListOrganizationAdminAccounts method for more information on how to use this operation.
5177//
5178// Note: This operation can generate multiple requests to a service.
5179//
5180//    // Example iterating over at most 3 pages of a ListOrganizationAdminAccounts operation.
5181//    pageNum := 0
5182//    err := client.ListOrganizationAdminAccountsPages(params,
5183//        func(page *macie2.ListOrganizationAdminAccountsOutput, lastPage bool) bool {
5184//            pageNum++
5185//            fmt.Println(page)
5186//            return pageNum <= 3
5187//        })
5188//
5189func (c *Macie2) ListOrganizationAdminAccountsPages(input *ListOrganizationAdminAccountsInput, fn func(*ListOrganizationAdminAccountsOutput, bool) bool) error {
5190	return c.ListOrganizationAdminAccountsPagesWithContext(aws.BackgroundContext(), input, fn)
5191}
5192
5193// ListOrganizationAdminAccountsPagesWithContext same as ListOrganizationAdminAccountsPages except
5194// it takes a Context and allows setting request options on the pages.
5195//
5196// The context must be non-nil and will be used for request cancellation. If
5197// the context is nil a panic will occur. In the future the SDK may create
5198// sub-contexts for http.Requests. See https://golang.org/pkg/context/
5199// for more information on using Contexts.
5200func (c *Macie2) ListOrganizationAdminAccountsPagesWithContext(ctx aws.Context, input *ListOrganizationAdminAccountsInput, fn func(*ListOrganizationAdminAccountsOutput, bool) bool, opts ...request.Option) error {
5201	p := request.Pagination{
5202		NewRequest: func() (*request.Request, error) {
5203			var inCpy *ListOrganizationAdminAccountsInput
5204			if input != nil {
5205				tmp := *input
5206				inCpy = &tmp
5207			}
5208			req, _ := c.ListOrganizationAdminAccountsRequest(inCpy)
5209			req.SetContext(ctx)
5210			req.ApplyOptions(opts...)
5211			return req, nil
5212		},
5213	}
5214
5215	for p.Next() {
5216		if !fn(p.Page().(*ListOrganizationAdminAccountsOutput), !p.HasNextPage()) {
5217			break
5218		}
5219	}
5220
5221	return p.Err()
5222}
5223
5224const opListTagsForResource = "ListTagsForResource"
5225
5226// ListTagsForResourceRequest generates a "aws/request.Request" representing the
5227// client's request for the ListTagsForResource operation. The "output" return
5228// value will be populated with the request's response once the request completes
5229// successfully.
5230//
5231// Use "Send" method on the returned Request to send the API call to the service.
5232// the "output" return value is not valid until after Send returns without error.
5233//
5234// See ListTagsForResource for more information on using the ListTagsForResource
5235// API call, and error handling.
5236//
5237// This method is useful when you want to inject custom logic or configuration
5238// into the SDK's request lifecycle. Such as custom headers, or retry logic.
5239//
5240//
5241//    // Example sending a request using the ListTagsForResourceRequest method.
5242//    req, resp := client.ListTagsForResourceRequest(params)
5243//
5244//    err := req.Send()
5245//    if err == nil { // resp is now filled
5246//        fmt.Println(resp)
5247//    }
5248//
5249// See also, https://docs.aws.amazon.com/goto/WebAPI/macie2-2020-01-01/ListTagsForResource
5250func (c *Macie2) ListTagsForResourceRequest(input *ListTagsForResourceInput) (req *request.Request, output *ListTagsForResourceOutput) {
5251	op := &request.Operation{
5252		Name:       opListTagsForResource,
5253		HTTPMethod: "GET",
5254		HTTPPath:   "/tags/{resourceArn}",
5255	}
5256
5257	if input == nil {
5258		input = &ListTagsForResourceInput{}
5259	}
5260
5261	output = &ListTagsForResourceOutput{}
5262	req = c.newRequest(op, input, output)
5263	return
5264}
5265
5266// ListTagsForResource API operation for Amazon Macie 2.
5267//
5268// Retrieves the tags (keys and values) that are associated with a classification
5269// job, custom data identifier, findings filter, or member account.
5270//
5271// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
5272// with awserr.Error's Code and Message methods to get detailed information about
5273// the error.
5274//
5275// See the AWS API reference guide for Amazon Macie 2's
5276// API operation ListTagsForResource for usage and error information.
5277// See also, https://docs.aws.amazon.com/goto/WebAPI/macie2-2020-01-01/ListTagsForResource
5278func (c *Macie2) ListTagsForResource(input *ListTagsForResourceInput) (*ListTagsForResourceOutput, error) {
5279	req, out := c.ListTagsForResourceRequest(input)
5280	return out, req.Send()
5281}
5282
5283// ListTagsForResourceWithContext is the same as ListTagsForResource with the addition of
5284// the ability to pass a context and additional request options.
5285//
5286// See ListTagsForResource for details on how to use this API operation.
5287//
5288// The context must be non-nil and will be used for request cancellation. If
5289// the context is nil a panic will occur. In the future the SDK may create
5290// sub-contexts for http.Requests. See https://golang.org/pkg/context/
5291// for more information on using Contexts.
5292func (c *Macie2) ListTagsForResourceWithContext(ctx aws.Context, input *ListTagsForResourceInput, opts ...request.Option) (*ListTagsForResourceOutput, error) {
5293	req, out := c.ListTagsForResourceRequest(input)
5294	req.SetContext(ctx)
5295	req.ApplyOptions(opts...)
5296	return out, req.Send()
5297}
5298
5299const opPutClassificationExportConfiguration = "PutClassificationExportConfiguration"
5300
5301// PutClassificationExportConfigurationRequest generates a "aws/request.Request" representing the
5302// client's request for the PutClassificationExportConfiguration operation. The "output" return
5303// value will be populated with the request's response once the request completes
5304// successfully.
5305//
5306// Use "Send" method on the returned Request to send the API call to the service.
5307// the "output" return value is not valid until after Send returns without error.
5308//
5309// See PutClassificationExportConfiguration for more information on using the PutClassificationExportConfiguration
5310// API call, and error handling.
5311//
5312// This method is useful when you want to inject custom logic or configuration
5313// into the SDK's request lifecycle. Such as custom headers, or retry logic.
5314//
5315//
5316//    // Example sending a request using the PutClassificationExportConfigurationRequest method.
5317//    req, resp := client.PutClassificationExportConfigurationRequest(params)
5318//
5319//    err := req.Send()
5320//    if err == nil { // resp is now filled
5321//        fmt.Println(resp)
5322//    }
5323//
5324// See also, https://docs.aws.amazon.com/goto/WebAPI/macie2-2020-01-01/PutClassificationExportConfiguration
5325func (c *Macie2) PutClassificationExportConfigurationRequest(input *PutClassificationExportConfigurationInput) (req *request.Request, output *PutClassificationExportConfigurationOutput) {
5326	op := &request.Operation{
5327		Name:       opPutClassificationExportConfiguration,
5328		HTTPMethod: "PUT",
5329		HTTPPath:   "/classification-export-configuration",
5330	}
5331
5332	if input == nil {
5333		input = &PutClassificationExportConfigurationInput{}
5334	}
5335
5336	output = &PutClassificationExportConfigurationOutput{}
5337	req = c.newRequest(op, input, output)
5338	return
5339}
5340
5341// PutClassificationExportConfiguration API operation for Amazon Macie 2.
5342//
5343// Creates or updates the configuration settings for storing data classification
5344// results.
5345//
5346// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
5347// with awserr.Error's Code and Message methods to get detailed information about
5348// the error.
5349//
5350// See the AWS API reference guide for Amazon Macie 2's
5351// API operation PutClassificationExportConfiguration for usage and error information.
5352//
5353// Returned Error Types:
5354//   * ValidationException
5355//   Provides information about an error that occurred due to a syntax error in
5356//   a request.
5357//
5358//   * InternalServerException
5359//   Provides information about an error that occurred due to an unknown internal
5360//   server error, exception, or failure.
5361//
5362//   * ServiceQuotaExceededException
5363//   Provides information about an error that occurred due to one or more service
5364//   quotas for an account.
5365//
5366//   * AccessDeniedException
5367//   Provides information about an error that occurred due to insufficient access
5368//   to a specified resource.
5369//
5370//   * ResourceNotFoundException
5371//   Provides information about an error that occurred because a specified resource
5372//   wasn't found.
5373//
5374//   * ThrottlingException
5375//   Provides information about an error that occurred because too many requests
5376//   were sent during a certain amount of time.
5377//
5378//   * ConflictException
5379//   Provides information about an error that occurred due to a versioning conflict
5380//   for a specified resource.
5381//
5382// See also, https://docs.aws.amazon.com/goto/WebAPI/macie2-2020-01-01/PutClassificationExportConfiguration
5383func (c *Macie2) PutClassificationExportConfiguration(input *PutClassificationExportConfigurationInput) (*PutClassificationExportConfigurationOutput, error) {
5384	req, out := c.PutClassificationExportConfigurationRequest(input)
5385	return out, req.Send()
5386}
5387
5388// PutClassificationExportConfigurationWithContext is the same as PutClassificationExportConfiguration with the addition of
5389// the ability to pass a context and additional request options.
5390//
5391// See PutClassificationExportConfiguration for details on how to use this API operation.
5392//
5393// The context must be non-nil and will be used for request cancellation. If
5394// the context is nil a panic will occur. In the future the SDK may create
5395// sub-contexts for http.Requests. See https://golang.org/pkg/context/
5396// for more information on using Contexts.
5397func (c *Macie2) PutClassificationExportConfigurationWithContext(ctx aws.Context, input *PutClassificationExportConfigurationInput, opts ...request.Option) (*PutClassificationExportConfigurationOutput, error) {
5398	req, out := c.PutClassificationExportConfigurationRequest(input)
5399	req.SetContext(ctx)
5400	req.ApplyOptions(opts...)
5401	return out, req.Send()
5402}
5403
5404const opPutFindingsPublicationConfiguration = "PutFindingsPublicationConfiguration"
5405
5406// PutFindingsPublicationConfigurationRequest generates a "aws/request.Request" representing the
5407// client's request for the PutFindingsPublicationConfiguration operation. The "output" return
5408// value will be populated with the request's response once the request completes
5409// successfully.
5410//
5411// Use "Send" method on the returned Request to send the API call to the service.
5412// the "output" return value is not valid until after Send returns without error.
5413//
5414// See PutFindingsPublicationConfiguration for more information on using the PutFindingsPublicationConfiguration
5415// API call, and error handling.
5416//
5417// This method is useful when you want to inject custom logic or configuration
5418// into the SDK's request lifecycle. Such as custom headers, or retry logic.
5419//
5420//
5421//    // Example sending a request using the PutFindingsPublicationConfigurationRequest method.
5422//    req, resp := client.PutFindingsPublicationConfigurationRequest(params)
5423//
5424//    err := req.Send()
5425//    if err == nil { // resp is now filled
5426//        fmt.Println(resp)
5427//    }
5428//
5429// See also, https://docs.aws.amazon.com/goto/WebAPI/macie2-2020-01-01/PutFindingsPublicationConfiguration
5430func (c *Macie2) PutFindingsPublicationConfigurationRequest(input *PutFindingsPublicationConfigurationInput) (req *request.Request, output *PutFindingsPublicationConfigurationOutput) {
5431	op := &request.Operation{
5432		Name:       opPutFindingsPublicationConfiguration,
5433		HTTPMethod: "PUT",
5434		HTTPPath:   "/findings-publication-configuration",
5435	}
5436
5437	if input == nil {
5438		input = &PutFindingsPublicationConfigurationInput{}
5439	}
5440
5441	output = &PutFindingsPublicationConfigurationOutput{}
5442	req = c.newRequest(op, input, output)
5443	req.Handlers.Unmarshal.Swap(restjson.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler)
5444	return
5445}
5446
5447// PutFindingsPublicationConfiguration API operation for Amazon Macie 2.
5448//
5449// Updates the configuration settings for publishing findings to Security Hub.
5450//
5451// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
5452// with awserr.Error's Code and Message methods to get detailed information about
5453// the error.
5454//
5455// See the AWS API reference guide for Amazon Macie 2's
5456// API operation PutFindingsPublicationConfiguration for usage and error information.
5457//
5458// Returned Error Types:
5459//   * ValidationException
5460//   Provides information about an error that occurred due to a syntax error in
5461//   a request.
5462//
5463//   * InternalServerException
5464//   Provides information about an error that occurred due to an unknown internal
5465//   server error, exception, or failure.
5466//
5467//   * ServiceQuotaExceededException
5468//   Provides information about an error that occurred due to one or more service
5469//   quotas for an account.
5470//
5471//   * AccessDeniedException
5472//   Provides information about an error that occurred due to insufficient access
5473//   to a specified resource.
5474//
5475//   * ResourceNotFoundException
5476//   Provides information about an error that occurred because a specified resource
5477//   wasn't found.
5478//
5479//   * ThrottlingException
5480//   Provides information about an error that occurred because too many requests
5481//   were sent during a certain amount of time.
5482//
5483//   * ConflictException
5484//   Provides information about an error that occurred due to a versioning conflict
5485//   for a specified resource.
5486//
5487// See also, https://docs.aws.amazon.com/goto/WebAPI/macie2-2020-01-01/PutFindingsPublicationConfiguration
5488func (c *Macie2) PutFindingsPublicationConfiguration(input *PutFindingsPublicationConfigurationInput) (*PutFindingsPublicationConfigurationOutput, error) {
5489	req, out := c.PutFindingsPublicationConfigurationRequest(input)
5490	return out, req.Send()
5491}
5492
5493// PutFindingsPublicationConfigurationWithContext is the same as PutFindingsPublicationConfiguration with the addition of
5494// the ability to pass a context and additional request options.
5495//
5496// See PutFindingsPublicationConfiguration for details on how to use this API operation.
5497//
5498// The context must be non-nil and will be used for request cancellation. If
5499// the context is nil a panic will occur. In the future the SDK may create
5500// sub-contexts for http.Requests. See https://golang.org/pkg/context/
5501// for more information on using Contexts.
5502func (c *Macie2) PutFindingsPublicationConfigurationWithContext(ctx aws.Context, input *PutFindingsPublicationConfigurationInput, opts ...request.Option) (*PutFindingsPublicationConfigurationOutput, error) {
5503	req, out := c.PutFindingsPublicationConfigurationRequest(input)
5504	req.SetContext(ctx)
5505	req.ApplyOptions(opts...)
5506	return out, req.Send()
5507}
5508
5509const opSearchResources = "SearchResources"
5510
5511// SearchResourcesRequest generates a "aws/request.Request" representing the
5512// client's request for the SearchResources operation. The "output" return
5513// value will be populated with the request's response once the request completes
5514// successfully.
5515//
5516// Use "Send" method on the returned Request to send the API call to the service.
5517// the "output" return value is not valid until after Send returns without error.
5518//
5519// See SearchResources for more information on using the SearchResources
5520// API call, and error handling.
5521//
5522// This method is useful when you want to inject custom logic or configuration
5523// into the SDK's request lifecycle. Such as custom headers, or retry logic.
5524//
5525//
5526//    // Example sending a request using the SearchResourcesRequest method.
5527//    req, resp := client.SearchResourcesRequest(params)
5528//
5529//    err := req.Send()
5530//    if err == nil { // resp is now filled
5531//        fmt.Println(resp)
5532//    }
5533//
5534// See also, https://docs.aws.amazon.com/goto/WebAPI/macie2-2020-01-01/SearchResources
5535func (c *Macie2) SearchResourcesRequest(input *SearchResourcesInput) (req *request.Request, output *SearchResourcesOutput) {
5536	op := &request.Operation{
5537		Name:       opSearchResources,
5538		HTTPMethod: "POST",
5539		HTTPPath:   "/datasources/search-resources",
5540		Paginator: &request.Paginator{
5541			InputTokens:     []string{"nextToken"},
5542			OutputTokens:    []string{"nextToken"},
5543			LimitToken:      "maxResults",
5544			TruncationToken: "",
5545		},
5546	}
5547
5548	if input == nil {
5549		input = &SearchResourcesInput{}
5550	}
5551
5552	output = &SearchResourcesOutput{}
5553	req = c.newRequest(op, input, output)
5554	return
5555}
5556
5557// SearchResources API operation for Amazon Macie 2.
5558//
5559// Retrieves (queries) statistical data and other information about Amazon Web
5560// Services resources that Amazon Macie monitors and analyzes.
5561//
5562// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
5563// with awserr.Error's Code and Message methods to get detailed information about
5564// the error.
5565//
5566// See the AWS API reference guide for Amazon Macie 2's
5567// API operation SearchResources for usage and error information.
5568//
5569// Returned Error Types:
5570//   * ValidationException
5571//   Provides information about an error that occurred due to a syntax error in
5572//   a request.
5573//
5574//   * InternalServerException
5575//   Provides information about an error that occurred due to an unknown internal
5576//   server error, exception, or failure.
5577//
5578//   * ServiceQuotaExceededException
5579//   Provides information about an error that occurred due to one or more service
5580//   quotas for an account.
5581//
5582//   * AccessDeniedException
5583//   Provides information about an error that occurred due to insufficient access
5584//   to a specified resource.
5585//
5586//   * ResourceNotFoundException
5587//   Provides information about an error that occurred because a specified resource
5588//   wasn't found.
5589//
5590//   * ThrottlingException
5591//   Provides information about an error that occurred because too many requests
5592//   were sent during a certain amount of time.
5593//
5594//   * ConflictException
5595//   Provides information about an error that occurred due to a versioning conflict
5596//   for a specified resource.
5597//
5598// See also, https://docs.aws.amazon.com/goto/WebAPI/macie2-2020-01-01/SearchResources
5599func (c *Macie2) SearchResources(input *SearchResourcesInput) (*SearchResourcesOutput, error) {
5600	req, out := c.SearchResourcesRequest(input)
5601	return out, req.Send()
5602}
5603
5604// SearchResourcesWithContext is the same as SearchResources with the addition of
5605// the ability to pass a context and additional request options.
5606//
5607// See SearchResources for details on how to use this API operation.
5608//
5609// The context must be non-nil and will be used for request cancellation. If
5610// the context is nil a panic will occur. In the future the SDK may create
5611// sub-contexts for http.Requests. See https://golang.org/pkg/context/
5612// for more information on using Contexts.
5613func (c *Macie2) SearchResourcesWithContext(ctx aws.Context, input *SearchResourcesInput, opts ...request.Option) (*SearchResourcesOutput, error) {
5614	req, out := c.SearchResourcesRequest(input)
5615	req.SetContext(ctx)
5616	req.ApplyOptions(opts...)
5617	return out, req.Send()
5618}
5619
5620// SearchResourcesPages iterates over the pages of a SearchResources operation,
5621// calling the "fn" function with the response data for each page. To stop
5622// iterating, return false from the fn function.
5623//
5624// See SearchResources method for more information on how to use this operation.
5625//
5626// Note: This operation can generate multiple requests to a service.
5627//
5628//    // Example iterating over at most 3 pages of a SearchResources operation.
5629//    pageNum := 0
5630//    err := client.SearchResourcesPages(params,
5631//        func(page *macie2.SearchResourcesOutput, lastPage bool) bool {
5632//            pageNum++
5633//            fmt.Println(page)
5634//            return pageNum <= 3
5635//        })
5636//
5637func (c *Macie2) SearchResourcesPages(input *SearchResourcesInput, fn func(*SearchResourcesOutput, bool) bool) error {
5638	return c.SearchResourcesPagesWithContext(aws.BackgroundContext(), input, fn)
5639}
5640
5641// SearchResourcesPagesWithContext same as SearchResourcesPages except
5642// it takes a Context and allows setting request options on the pages.
5643//
5644// The context must be non-nil and will be used for request cancellation. If
5645// the context is nil a panic will occur. In the future the SDK may create
5646// sub-contexts for http.Requests. See https://golang.org/pkg/context/
5647// for more information on using Contexts.
5648func (c *Macie2) SearchResourcesPagesWithContext(ctx aws.Context, input *SearchResourcesInput, fn func(*SearchResourcesOutput, bool) bool, opts ...request.Option) error {
5649	p := request.Pagination{
5650		NewRequest: func() (*request.Request, error) {
5651			var inCpy *SearchResourcesInput
5652			if input != nil {
5653				tmp := *input
5654				inCpy = &tmp
5655			}
5656			req, _ := c.SearchResourcesRequest(inCpy)
5657			req.SetContext(ctx)
5658			req.ApplyOptions(opts...)
5659			return req, nil
5660		},
5661	}
5662
5663	for p.Next() {
5664		if !fn(p.Page().(*SearchResourcesOutput), !p.HasNextPage()) {
5665			break
5666		}
5667	}
5668
5669	return p.Err()
5670}
5671
5672const opTagResource = "TagResource"
5673
5674// TagResourceRequest generates a "aws/request.Request" representing the
5675// client's request for the TagResource operation. The "output" return
5676// value will be populated with the request's response once the request completes
5677// successfully.
5678//
5679// Use "Send" method on the returned Request to send the API call to the service.
5680// the "output" return value is not valid until after Send returns without error.
5681//
5682// See TagResource for more information on using the TagResource
5683// API call, and error handling.
5684//
5685// This method is useful when you want to inject custom logic or configuration
5686// into the SDK's request lifecycle. Such as custom headers, or retry logic.
5687//
5688//
5689//    // Example sending a request using the TagResourceRequest method.
5690//    req, resp := client.TagResourceRequest(params)
5691//
5692//    err := req.Send()
5693//    if err == nil { // resp is now filled
5694//        fmt.Println(resp)
5695//    }
5696//
5697// See also, https://docs.aws.amazon.com/goto/WebAPI/macie2-2020-01-01/TagResource
5698func (c *Macie2) TagResourceRequest(input *TagResourceInput) (req *request.Request, output *TagResourceOutput) {
5699	op := &request.Operation{
5700		Name:       opTagResource,
5701		HTTPMethod: "POST",
5702		HTTPPath:   "/tags/{resourceArn}",
5703	}
5704
5705	if input == nil {
5706		input = &TagResourceInput{}
5707	}
5708
5709	output = &TagResourceOutput{}
5710	req = c.newRequest(op, input, output)
5711	req.Handlers.Unmarshal.Swap(restjson.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler)
5712	return
5713}
5714
5715// TagResource API operation for Amazon Macie 2.
5716//
5717// Adds or updates one or more tags (keys and values) that are associated with
5718// a classification job, custom data identifier, findings filter, or member
5719// account.
5720//
5721// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
5722// with awserr.Error's Code and Message methods to get detailed information about
5723// the error.
5724//
5725// See the AWS API reference guide for Amazon Macie 2's
5726// API operation TagResource for usage and error information.
5727// See also, https://docs.aws.amazon.com/goto/WebAPI/macie2-2020-01-01/TagResource
5728func (c *Macie2) TagResource(input *TagResourceInput) (*TagResourceOutput, error) {
5729	req, out := c.TagResourceRequest(input)
5730	return out, req.Send()
5731}
5732
5733// TagResourceWithContext is the same as TagResource with the addition of
5734// the ability to pass a context and additional request options.
5735//
5736// See TagResource for details on how to use this API operation.
5737//
5738// The context must be non-nil and will be used for request cancellation. If
5739// the context is nil a panic will occur. In the future the SDK may create
5740// sub-contexts for http.Requests. See https://golang.org/pkg/context/
5741// for more information on using Contexts.
5742func (c *Macie2) TagResourceWithContext(ctx aws.Context, input *TagResourceInput, opts ...request.Option) (*TagResourceOutput, error) {
5743	req, out := c.TagResourceRequest(input)
5744	req.SetContext(ctx)
5745	req.ApplyOptions(opts...)
5746	return out, req.Send()
5747}
5748
5749const opTestCustomDataIdentifier = "TestCustomDataIdentifier"
5750
5751// TestCustomDataIdentifierRequest generates a "aws/request.Request" representing the
5752// client's request for the TestCustomDataIdentifier operation. The "output" return
5753// value will be populated with the request's response once the request completes
5754// successfully.
5755//
5756// Use "Send" method on the returned Request to send the API call to the service.
5757// the "output" return value is not valid until after Send returns without error.
5758//
5759// See TestCustomDataIdentifier for more information on using the TestCustomDataIdentifier
5760// API call, and error handling.
5761//
5762// This method is useful when you want to inject custom logic or configuration
5763// into the SDK's request lifecycle. Such as custom headers, or retry logic.
5764//
5765//
5766//    // Example sending a request using the TestCustomDataIdentifierRequest method.
5767//    req, resp := client.TestCustomDataIdentifierRequest(params)
5768//
5769//    err := req.Send()
5770//    if err == nil { // resp is now filled
5771//        fmt.Println(resp)
5772//    }
5773//
5774// See also, https://docs.aws.amazon.com/goto/WebAPI/macie2-2020-01-01/TestCustomDataIdentifier
5775func (c *Macie2) TestCustomDataIdentifierRequest(input *TestCustomDataIdentifierInput) (req *request.Request, output *TestCustomDataIdentifierOutput) {
5776	op := &request.Operation{
5777		Name:       opTestCustomDataIdentifier,
5778		HTTPMethod: "POST",
5779		HTTPPath:   "/custom-data-identifiers/test",
5780	}
5781
5782	if input == nil {
5783		input = &TestCustomDataIdentifierInput{}
5784	}
5785
5786	output = &TestCustomDataIdentifierOutput{}
5787	req = c.newRequest(op, input, output)
5788	return
5789}
5790
5791// TestCustomDataIdentifier API operation for Amazon Macie 2.
5792//
5793// Tests a custom data identifier.
5794//
5795// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
5796// with awserr.Error's Code and Message methods to get detailed information about
5797// the error.
5798//
5799// See the AWS API reference guide for Amazon Macie 2's
5800// API operation TestCustomDataIdentifier for usage and error information.
5801//
5802// Returned Error Types:
5803//   * ValidationException
5804//   Provides information about an error that occurred due to a syntax error in
5805//   a request.
5806//
5807//   * InternalServerException
5808//   Provides information about an error that occurred due to an unknown internal
5809//   server error, exception, or failure.
5810//
5811//   * ServiceQuotaExceededException
5812//   Provides information about an error that occurred due to one or more service
5813//   quotas for an account.
5814//
5815//   * AccessDeniedException
5816//   Provides information about an error that occurred due to insufficient access
5817//   to a specified resource.
5818//
5819//   * ResourceNotFoundException
5820//   Provides information about an error that occurred because a specified resource
5821//   wasn't found.
5822//
5823//   * ThrottlingException
5824//   Provides information about an error that occurred because too many requests
5825//   were sent during a certain amount of time.
5826//
5827//   * ConflictException
5828//   Provides information about an error that occurred due to a versioning conflict
5829//   for a specified resource.
5830//
5831// See also, https://docs.aws.amazon.com/goto/WebAPI/macie2-2020-01-01/TestCustomDataIdentifier
5832func (c *Macie2) TestCustomDataIdentifier(input *TestCustomDataIdentifierInput) (*TestCustomDataIdentifierOutput, error) {
5833	req, out := c.TestCustomDataIdentifierRequest(input)
5834	return out, req.Send()
5835}
5836
5837// TestCustomDataIdentifierWithContext is the same as TestCustomDataIdentifier with the addition of
5838// the ability to pass a context and additional request options.
5839//
5840// See TestCustomDataIdentifier for details on how to use this API operation.
5841//
5842// The context must be non-nil and will be used for request cancellation. If
5843// the context is nil a panic will occur. In the future the SDK may create
5844// sub-contexts for http.Requests. See https://golang.org/pkg/context/
5845// for more information on using Contexts.
5846func (c *Macie2) TestCustomDataIdentifierWithContext(ctx aws.Context, input *TestCustomDataIdentifierInput, opts ...request.Option) (*TestCustomDataIdentifierOutput, error) {
5847	req, out := c.TestCustomDataIdentifierRequest(input)
5848	req.SetContext(ctx)
5849	req.ApplyOptions(opts...)
5850	return out, req.Send()
5851}
5852
5853const opUntagResource = "UntagResource"
5854
5855// UntagResourceRequest generates a "aws/request.Request" representing the
5856// client's request for the UntagResource operation. The "output" return
5857// value will be populated with the request's response once the request completes
5858// successfully.
5859//
5860// Use "Send" method on the returned Request to send the API call to the service.
5861// the "output" return value is not valid until after Send returns without error.
5862//
5863// See UntagResource for more information on using the UntagResource
5864// API call, and error handling.
5865//
5866// This method is useful when you want to inject custom logic or configuration
5867// into the SDK's request lifecycle. Such as custom headers, or retry logic.
5868//
5869//
5870//    // Example sending a request using the UntagResourceRequest method.
5871//    req, resp := client.UntagResourceRequest(params)
5872//
5873//    err := req.Send()
5874//    if err == nil { // resp is now filled
5875//        fmt.Println(resp)
5876//    }
5877//
5878// See also, https://docs.aws.amazon.com/goto/WebAPI/macie2-2020-01-01/UntagResource
5879func (c *Macie2) UntagResourceRequest(input *UntagResourceInput) (req *request.Request, output *UntagResourceOutput) {
5880	op := &request.Operation{
5881		Name:       opUntagResource,
5882		HTTPMethod: "DELETE",
5883		HTTPPath:   "/tags/{resourceArn}",
5884	}
5885
5886	if input == nil {
5887		input = &UntagResourceInput{}
5888	}
5889
5890	output = &UntagResourceOutput{}
5891	req = c.newRequest(op, input, output)
5892	req.Handlers.Unmarshal.Swap(restjson.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler)
5893	return
5894}
5895
5896// UntagResource API operation for Amazon Macie 2.
5897//
5898// Removes one or more tags (keys and values) from a classification job, custom
5899// data identifier, findings filter, or member account.
5900//
5901// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
5902// with awserr.Error's Code and Message methods to get detailed information about
5903// the error.
5904//
5905// See the AWS API reference guide for Amazon Macie 2's
5906// API operation UntagResource for usage and error information.
5907// See also, https://docs.aws.amazon.com/goto/WebAPI/macie2-2020-01-01/UntagResource
5908func (c *Macie2) UntagResource(input *UntagResourceInput) (*UntagResourceOutput, error) {
5909	req, out := c.UntagResourceRequest(input)
5910	return out, req.Send()
5911}
5912
5913// UntagResourceWithContext is the same as UntagResource with the addition of
5914// the ability to pass a context and additional request options.
5915//
5916// See UntagResource for details on how to use this API operation.
5917//
5918// The context must be non-nil and will be used for request cancellation. If
5919// the context is nil a panic will occur. In the future the SDK may create
5920// sub-contexts for http.Requests. See https://golang.org/pkg/context/
5921// for more information on using Contexts.
5922func (c *Macie2) UntagResourceWithContext(ctx aws.Context, input *UntagResourceInput, opts ...request.Option) (*UntagResourceOutput, error) {
5923	req, out := c.UntagResourceRequest(input)
5924	req.SetContext(ctx)
5925	req.ApplyOptions(opts...)
5926	return out, req.Send()
5927}
5928
5929const opUpdateClassificationJob = "UpdateClassificationJob"
5930
5931// UpdateClassificationJobRequest generates a "aws/request.Request" representing the
5932// client's request for the UpdateClassificationJob operation. The "output" return
5933// value will be populated with the request's response once the request completes
5934// successfully.
5935//
5936// Use "Send" method on the returned Request to send the API call to the service.
5937// the "output" return value is not valid until after Send returns without error.
5938//
5939// See UpdateClassificationJob for more information on using the UpdateClassificationJob
5940// API call, and error handling.
5941//
5942// This method is useful when you want to inject custom logic or configuration
5943// into the SDK's request lifecycle. Such as custom headers, or retry logic.
5944//
5945//
5946//    // Example sending a request using the UpdateClassificationJobRequest method.
5947//    req, resp := client.UpdateClassificationJobRequest(params)
5948//
5949//    err := req.Send()
5950//    if err == nil { // resp is now filled
5951//        fmt.Println(resp)
5952//    }
5953//
5954// See also, https://docs.aws.amazon.com/goto/WebAPI/macie2-2020-01-01/UpdateClassificationJob
5955func (c *Macie2) UpdateClassificationJobRequest(input *UpdateClassificationJobInput) (req *request.Request, output *UpdateClassificationJobOutput) {
5956	op := &request.Operation{
5957		Name:       opUpdateClassificationJob,
5958		HTTPMethod: "PATCH",
5959		HTTPPath:   "/jobs/{jobId}",
5960	}
5961
5962	if input == nil {
5963		input = &UpdateClassificationJobInput{}
5964	}
5965
5966	output = &UpdateClassificationJobOutput{}
5967	req = c.newRequest(op, input, output)
5968	req.Handlers.Unmarshal.Swap(restjson.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler)
5969	return
5970}
5971
5972// UpdateClassificationJob API operation for Amazon Macie 2.
5973//
5974// Changes the status of a classification job.
5975//
5976// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
5977// with awserr.Error's Code and Message methods to get detailed information about
5978// the error.
5979//
5980// See the AWS API reference guide for Amazon Macie 2's
5981// API operation UpdateClassificationJob for usage and error information.
5982//
5983// Returned Error Types:
5984//   * ValidationException
5985//   Provides information about an error that occurred due to a syntax error in
5986//   a request.
5987//
5988//   * InternalServerException
5989//   Provides information about an error that occurred due to an unknown internal
5990//   server error, exception, or failure.
5991//
5992//   * ServiceQuotaExceededException
5993//   Provides information about an error that occurred due to one or more service
5994//   quotas for an account.
5995//
5996//   * AccessDeniedException
5997//   Provides information about an error that occurred due to insufficient access
5998//   to a specified resource.
5999//
6000//   * ResourceNotFoundException
6001//   Provides information about an error that occurred because a specified resource
6002//   wasn't found.
6003//
6004//   * ThrottlingException
6005//   Provides information about an error that occurred because too many requests
6006//   were sent during a certain amount of time.
6007//
6008//   * ConflictException
6009//   Provides information about an error that occurred due to a versioning conflict
6010//   for a specified resource.
6011//
6012// See also, https://docs.aws.amazon.com/goto/WebAPI/macie2-2020-01-01/UpdateClassificationJob
6013func (c *Macie2) UpdateClassificationJob(input *UpdateClassificationJobInput) (*UpdateClassificationJobOutput, error) {
6014	req, out := c.UpdateClassificationJobRequest(input)
6015	return out, req.Send()
6016}
6017
6018// UpdateClassificationJobWithContext is the same as UpdateClassificationJob with the addition of
6019// the ability to pass a context and additional request options.
6020//
6021// See UpdateClassificationJob for details on how to use this API operation.
6022//
6023// The context must be non-nil and will be used for request cancellation. If
6024// the context is nil a panic will occur. In the future the SDK may create
6025// sub-contexts for http.Requests. See https://golang.org/pkg/context/
6026// for more information on using Contexts.
6027func (c *Macie2) UpdateClassificationJobWithContext(ctx aws.Context, input *UpdateClassificationJobInput, opts ...request.Option) (*UpdateClassificationJobOutput, error) {
6028	req, out := c.UpdateClassificationJobRequest(input)
6029	req.SetContext(ctx)
6030	req.ApplyOptions(opts...)
6031	return out, req.Send()
6032}
6033
6034const opUpdateFindingsFilter = "UpdateFindingsFilter"
6035
6036// UpdateFindingsFilterRequest generates a "aws/request.Request" representing the
6037// client's request for the UpdateFindingsFilter operation. The "output" return
6038// value will be populated with the request's response once the request completes
6039// successfully.
6040//
6041// Use "Send" method on the returned Request to send the API call to the service.
6042// the "output" return value is not valid until after Send returns without error.
6043//
6044// See UpdateFindingsFilter for more information on using the UpdateFindingsFilter
6045// API call, and error handling.
6046//
6047// This method is useful when you want to inject custom logic or configuration
6048// into the SDK's request lifecycle. Such as custom headers, or retry logic.
6049//
6050//
6051//    // Example sending a request using the UpdateFindingsFilterRequest method.
6052//    req, resp := client.UpdateFindingsFilterRequest(params)
6053//
6054//    err := req.Send()
6055//    if err == nil { // resp is now filled
6056//        fmt.Println(resp)
6057//    }
6058//
6059// See also, https://docs.aws.amazon.com/goto/WebAPI/macie2-2020-01-01/UpdateFindingsFilter
6060func (c *Macie2) UpdateFindingsFilterRequest(input *UpdateFindingsFilterInput) (req *request.Request, output *UpdateFindingsFilterOutput) {
6061	op := &request.Operation{
6062		Name:       opUpdateFindingsFilter,
6063		HTTPMethod: "PATCH",
6064		HTTPPath:   "/findingsfilters/{id}",
6065	}
6066
6067	if input == nil {
6068		input = &UpdateFindingsFilterInput{}
6069	}
6070
6071	output = &UpdateFindingsFilterOutput{}
6072	req = c.newRequest(op, input, output)
6073	return
6074}
6075
6076// UpdateFindingsFilter API operation for Amazon Macie 2.
6077//
6078// Updates the criteria and other settings for a findings filter.
6079//
6080// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
6081// with awserr.Error's Code and Message methods to get detailed information about
6082// the error.
6083//
6084// See the AWS API reference guide for Amazon Macie 2's
6085// API operation UpdateFindingsFilter for usage and error information.
6086//
6087// Returned Error Types:
6088//   * ValidationException
6089//   Provides information about an error that occurred due to a syntax error in
6090//   a request.
6091//
6092//   * InternalServerException
6093//   Provides information about an error that occurred due to an unknown internal
6094//   server error, exception, or failure.
6095//
6096//   * ServiceQuotaExceededException
6097//   Provides information about an error that occurred due to one or more service
6098//   quotas for an account.
6099//
6100//   * AccessDeniedException
6101//   Provides information about an error that occurred due to insufficient access
6102//   to a specified resource.
6103//
6104//   * ResourceNotFoundException
6105//   Provides information about an error that occurred because a specified resource
6106//   wasn't found.
6107//
6108//   * ThrottlingException
6109//   Provides information about an error that occurred because too many requests
6110//   were sent during a certain amount of time.
6111//
6112//   * ConflictException
6113//   Provides information about an error that occurred due to a versioning conflict
6114//   for a specified resource.
6115//
6116// See also, https://docs.aws.amazon.com/goto/WebAPI/macie2-2020-01-01/UpdateFindingsFilter
6117func (c *Macie2) UpdateFindingsFilter(input *UpdateFindingsFilterInput) (*UpdateFindingsFilterOutput, error) {
6118	req, out := c.UpdateFindingsFilterRequest(input)
6119	return out, req.Send()
6120}
6121
6122// UpdateFindingsFilterWithContext is the same as UpdateFindingsFilter with the addition of
6123// the ability to pass a context and additional request options.
6124//
6125// See UpdateFindingsFilter 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 *Macie2) UpdateFindingsFilterWithContext(ctx aws.Context, input *UpdateFindingsFilterInput, opts ...request.Option) (*UpdateFindingsFilterOutput, error) {
6132	req, out := c.UpdateFindingsFilterRequest(input)
6133	req.SetContext(ctx)
6134	req.ApplyOptions(opts...)
6135	return out, req.Send()
6136}
6137
6138const opUpdateMacieSession = "UpdateMacieSession"
6139
6140// UpdateMacieSessionRequest generates a "aws/request.Request" representing the
6141// client's request for the UpdateMacieSession 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 UpdateMacieSession for more information on using the UpdateMacieSession
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 UpdateMacieSessionRequest method.
6156//    req, resp := client.UpdateMacieSessionRequest(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/macie2-2020-01-01/UpdateMacieSession
6164func (c *Macie2) UpdateMacieSessionRequest(input *UpdateMacieSessionInput) (req *request.Request, output *UpdateMacieSessionOutput) {
6165	op := &request.Operation{
6166		Name:       opUpdateMacieSession,
6167		HTTPMethod: "PATCH",
6168		HTTPPath:   "/macie",
6169	}
6170
6171	if input == nil {
6172		input = &UpdateMacieSessionInput{}
6173	}
6174
6175	output = &UpdateMacieSessionOutput{}
6176	req = c.newRequest(op, input, output)
6177	req.Handlers.Unmarshal.Swap(restjson.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler)
6178	return
6179}
6180
6181// UpdateMacieSession API operation for Amazon Macie 2.
6182//
6183// Suspends or re-enables an Amazon Macie account, or updates the configuration
6184// settings for a Macie account.
6185//
6186// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
6187// with awserr.Error's Code and Message methods to get detailed information about
6188// the error.
6189//
6190// See the AWS API reference guide for Amazon Macie 2's
6191// API operation UpdateMacieSession for usage and error information.
6192//
6193// Returned Error Types:
6194//   * ValidationException
6195//   Provides information about an error that occurred due to a syntax error in
6196//   a request.
6197//
6198//   * InternalServerException
6199//   Provides information about an error that occurred due to an unknown internal
6200//   server error, exception, or failure.
6201//
6202//   * ServiceQuotaExceededException
6203//   Provides information about an error that occurred due to one or more service
6204//   quotas for an account.
6205//
6206//   * AccessDeniedException
6207//   Provides information about an error that occurred due to insufficient access
6208//   to a specified resource.
6209//
6210//   * ResourceNotFoundException
6211//   Provides information about an error that occurred because a specified resource
6212//   wasn't found.
6213//
6214//   * ThrottlingException
6215//   Provides information about an error that occurred because too many requests
6216//   were sent during a certain amount of time.
6217//
6218//   * ConflictException
6219//   Provides information about an error that occurred due to a versioning conflict
6220//   for a specified resource.
6221//
6222// See also, https://docs.aws.amazon.com/goto/WebAPI/macie2-2020-01-01/UpdateMacieSession
6223func (c *Macie2) UpdateMacieSession(input *UpdateMacieSessionInput) (*UpdateMacieSessionOutput, error) {
6224	req, out := c.UpdateMacieSessionRequest(input)
6225	return out, req.Send()
6226}
6227
6228// UpdateMacieSessionWithContext is the same as UpdateMacieSession with the addition of
6229// the ability to pass a context and additional request options.
6230//
6231// See UpdateMacieSession for details on how to use this API operation.
6232//
6233// The context must be non-nil and will be used for request cancellation. If
6234// the context is nil a panic will occur. In the future the SDK may create
6235// sub-contexts for http.Requests. See https://golang.org/pkg/context/
6236// for more information on using Contexts.
6237func (c *Macie2) UpdateMacieSessionWithContext(ctx aws.Context, input *UpdateMacieSessionInput, opts ...request.Option) (*UpdateMacieSessionOutput, error) {
6238	req, out := c.UpdateMacieSessionRequest(input)
6239	req.SetContext(ctx)
6240	req.ApplyOptions(opts...)
6241	return out, req.Send()
6242}
6243
6244const opUpdateMemberSession = "UpdateMemberSession"
6245
6246// UpdateMemberSessionRequest generates a "aws/request.Request" representing the
6247// client's request for the UpdateMemberSession operation. The "output" return
6248// value will be populated with the request's response once the request completes
6249// successfully.
6250//
6251// Use "Send" method on the returned Request to send the API call to the service.
6252// the "output" return value is not valid until after Send returns without error.
6253//
6254// See UpdateMemberSession for more information on using the UpdateMemberSession
6255// API call, and error handling.
6256//
6257// This method is useful when you want to inject custom logic or configuration
6258// into the SDK's request lifecycle. Such as custom headers, or retry logic.
6259//
6260//
6261//    // Example sending a request using the UpdateMemberSessionRequest method.
6262//    req, resp := client.UpdateMemberSessionRequest(params)
6263//
6264//    err := req.Send()
6265//    if err == nil { // resp is now filled
6266//        fmt.Println(resp)
6267//    }
6268//
6269// See also, https://docs.aws.amazon.com/goto/WebAPI/macie2-2020-01-01/UpdateMemberSession
6270func (c *Macie2) UpdateMemberSessionRequest(input *UpdateMemberSessionInput) (req *request.Request, output *UpdateMemberSessionOutput) {
6271	op := &request.Operation{
6272		Name:       opUpdateMemberSession,
6273		HTTPMethod: "PATCH",
6274		HTTPPath:   "/macie/members/{id}",
6275	}
6276
6277	if input == nil {
6278		input = &UpdateMemberSessionInput{}
6279	}
6280
6281	output = &UpdateMemberSessionOutput{}
6282	req = c.newRequest(op, input, output)
6283	req.Handlers.Unmarshal.Swap(restjson.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler)
6284	return
6285}
6286
6287// UpdateMemberSession API operation for Amazon Macie 2.
6288//
6289// Enables an Amazon Macie administrator to suspend or re-enable Macie for a
6290// member account.
6291//
6292// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
6293// with awserr.Error's Code and Message methods to get detailed information about
6294// the error.
6295//
6296// See the AWS API reference guide for Amazon Macie 2's
6297// API operation UpdateMemberSession for usage and error information.
6298//
6299// Returned Error Types:
6300//   * ValidationException
6301//   Provides information about an error that occurred due to a syntax error in
6302//   a request.
6303//
6304//   * InternalServerException
6305//   Provides information about an error that occurred due to an unknown internal
6306//   server error, exception, or failure.
6307//
6308//   * ServiceQuotaExceededException
6309//   Provides information about an error that occurred due to one or more service
6310//   quotas for an account.
6311//
6312//   * AccessDeniedException
6313//   Provides information about an error that occurred due to insufficient access
6314//   to a specified resource.
6315//
6316//   * ResourceNotFoundException
6317//   Provides information about an error that occurred because a specified resource
6318//   wasn't found.
6319//
6320//   * ThrottlingException
6321//   Provides information about an error that occurred because too many requests
6322//   were sent during a certain amount of time.
6323//
6324//   * ConflictException
6325//   Provides information about an error that occurred due to a versioning conflict
6326//   for a specified resource.
6327//
6328// See also, https://docs.aws.amazon.com/goto/WebAPI/macie2-2020-01-01/UpdateMemberSession
6329func (c *Macie2) UpdateMemberSession(input *UpdateMemberSessionInput) (*UpdateMemberSessionOutput, error) {
6330	req, out := c.UpdateMemberSessionRequest(input)
6331	return out, req.Send()
6332}
6333
6334// UpdateMemberSessionWithContext is the same as UpdateMemberSession with the addition of
6335// the ability to pass a context and additional request options.
6336//
6337// See UpdateMemberSession for details on how to use this API operation.
6338//
6339// The context must be non-nil and will be used for request cancellation. If
6340// the context is nil a panic will occur. In the future the SDK may create
6341// sub-contexts for http.Requests. See https://golang.org/pkg/context/
6342// for more information on using Contexts.
6343func (c *Macie2) UpdateMemberSessionWithContext(ctx aws.Context, input *UpdateMemberSessionInput, opts ...request.Option) (*UpdateMemberSessionOutput, error) {
6344	req, out := c.UpdateMemberSessionRequest(input)
6345	req.SetContext(ctx)
6346	req.ApplyOptions(opts...)
6347	return out, req.Send()
6348}
6349
6350const opUpdateOrganizationConfiguration = "UpdateOrganizationConfiguration"
6351
6352// UpdateOrganizationConfigurationRequest generates a "aws/request.Request" representing the
6353// client's request for the UpdateOrganizationConfiguration operation. The "output" return
6354// value will be populated with the request's response once the request completes
6355// successfully.
6356//
6357// Use "Send" method on the returned Request to send the API call to the service.
6358// the "output" return value is not valid until after Send returns without error.
6359//
6360// See UpdateOrganizationConfiguration for more information on using the UpdateOrganizationConfiguration
6361// API call, and error handling.
6362//
6363// This method is useful when you want to inject custom logic or configuration
6364// into the SDK's request lifecycle. Such as custom headers, or retry logic.
6365//
6366//
6367//    // Example sending a request using the UpdateOrganizationConfigurationRequest method.
6368//    req, resp := client.UpdateOrganizationConfigurationRequest(params)
6369//
6370//    err := req.Send()
6371//    if err == nil { // resp is now filled
6372//        fmt.Println(resp)
6373//    }
6374//
6375// See also, https://docs.aws.amazon.com/goto/WebAPI/macie2-2020-01-01/UpdateOrganizationConfiguration
6376func (c *Macie2) UpdateOrganizationConfigurationRequest(input *UpdateOrganizationConfigurationInput) (req *request.Request, output *UpdateOrganizationConfigurationOutput) {
6377	op := &request.Operation{
6378		Name:       opUpdateOrganizationConfiguration,
6379		HTTPMethod: "PATCH",
6380		HTTPPath:   "/admin/configuration",
6381	}
6382
6383	if input == nil {
6384		input = &UpdateOrganizationConfigurationInput{}
6385	}
6386
6387	output = &UpdateOrganizationConfigurationOutput{}
6388	req = c.newRequest(op, input, output)
6389	req.Handlers.Unmarshal.Swap(restjson.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler)
6390	return
6391}
6392
6393// UpdateOrganizationConfiguration API operation for Amazon Macie 2.
6394//
6395// Updates the Amazon Macie configuration settings for an Amazon Web Services
6396// organization.
6397//
6398// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
6399// with awserr.Error's Code and Message methods to get detailed information about
6400// the error.
6401//
6402// See the AWS API reference guide for Amazon Macie 2's
6403// API operation UpdateOrganizationConfiguration for usage and error information.
6404//
6405// Returned Error Types:
6406//   * ValidationException
6407//   Provides information about an error that occurred due to a syntax error in
6408//   a request.
6409//
6410//   * InternalServerException
6411//   Provides information about an error that occurred due to an unknown internal
6412//   server error, exception, or failure.
6413//
6414//   * ServiceQuotaExceededException
6415//   Provides information about an error that occurred due to one or more service
6416//   quotas for an account.
6417//
6418//   * AccessDeniedException
6419//   Provides information about an error that occurred due to insufficient access
6420//   to a specified resource.
6421//
6422//   * ResourceNotFoundException
6423//   Provides information about an error that occurred because a specified resource
6424//   wasn't found.
6425//
6426//   * ThrottlingException
6427//   Provides information about an error that occurred because too many requests
6428//   were sent during a certain amount of time.
6429//
6430//   * ConflictException
6431//   Provides information about an error that occurred due to a versioning conflict
6432//   for a specified resource.
6433//
6434// See also, https://docs.aws.amazon.com/goto/WebAPI/macie2-2020-01-01/UpdateOrganizationConfiguration
6435func (c *Macie2) UpdateOrganizationConfiguration(input *UpdateOrganizationConfigurationInput) (*UpdateOrganizationConfigurationOutput, error) {
6436	req, out := c.UpdateOrganizationConfigurationRequest(input)
6437	return out, req.Send()
6438}
6439
6440// UpdateOrganizationConfigurationWithContext is the same as UpdateOrganizationConfiguration with the addition of
6441// the ability to pass a context and additional request options.
6442//
6443// See UpdateOrganizationConfiguration for details on how to use this API operation.
6444//
6445// The context must be non-nil and will be used for request cancellation. If
6446// the context is nil a panic will occur. In the future the SDK may create
6447// sub-contexts for http.Requests. See https://golang.org/pkg/context/
6448// for more information on using Contexts.
6449func (c *Macie2) UpdateOrganizationConfigurationWithContext(ctx aws.Context, input *UpdateOrganizationConfigurationInput, opts ...request.Option) (*UpdateOrganizationConfigurationOutput, error) {
6450	req, out := c.UpdateOrganizationConfigurationRequest(input)
6451	req.SetContext(ctx)
6452	req.ApplyOptions(opts...)
6453	return out, req.Send()
6454}
6455
6456// Specifies an Amazon Macie membership invitation to accept. In the request,
6457// you have to specify the ID for the Amazon Web Services account that sent
6458// the invitation. Otherwise, a validation error occurs. To specify this ID,
6459// we recommend that you use the administratorAccountId property instead of
6460// the masterAccount property. The masterAccount property has been deprecated
6461// and is retained only for backward compatibility.
6462type AcceptInvitationInput struct {
6463	_ struct{} `type:"structure"`
6464
6465	AdministratorAccountId *string `locationName:"administratorAccountId" type:"string"`
6466
6467	// InvitationId is a required field
6468	InvitationId *string `locationName:"invitationId" type:"string" required:"true"`
6469
6470	MasterAccount *string `locationName:"masterAccount" type:"string"`
6471}
6472
6473// String returns the string representation.
6474//
6475// API parameter values that are decorated as "sensitive" in the API will not
6476// be included in the string output. The member name will be present, but the
6477// value will be replaced with "sensitive".
6478func (s AcceptInvitationInput) String() string {
6479	return awsutil.Prettify(s)
6480}
6481
6482// GoString returns the string representation.
6483//
6484// API parameter values that are decorated as "sensitive" in the API will not
6485// be included in the string output. The member name will be present, but the
6486// value will be replaced with "sensitive".
6487func (s AcceptInvitationInput) GoString() string {
6488	return s.String()
6489}
6490
6491// Validate inspects the fields of the type to determine if they are valid.
6492func (s *AcceptInvitationInput) Validate() error {
6493	invalidParams := request.ErrInvalidParams{Context: "AcceptInvitationInput"}
6494	if s.InvitationId == nil {
6495		invalidParams.Add(request.NewErrParamRequired("InvitationId"))
6496	}
6497
6498	if invalidParams.Len() > 0 {
6499		return invalidParams
6500	}
6501	return nil
6502}
6503
6504// SetAdministratorAccountId sets the AdministratorAccountId field's value.
6505func (s *AcceptInvitationInput) SetAdministratorAccountId(v string) *AcceptInvitationInput {
6506	s.AdministratorAccountId = &v
6507	return s
6508}
6509
6510// SetInvitationId sets the InvitationId field's value.
6511func (s *AcceptInvitationInput) SetInvitationId(v string) *AcceptInvitationInput {
6512	s.InvitationId = &v
6513	return s
6514}
6515
6516// SetMasterAccount sets the MasterAccount field's value.
6517func (s *AcceptInvitationInput) SetMasterAccount(v string) *AcceptInvitationInput {
6518	s.MasterAccount = &v
6519	return s
6520}
6521
6522type AcceptInvitationOutput struct {
6523	_ struct{} `type:"structure"`
6524}
6525
6526// String returns the string representation.
6527//
6528// API parameter values that are decorated as "sensitive" in the API will not
6529// be included in the string output. The member name will be present, but the
6530// value will be replaced with "sensitive".
6531func (s AcceptInvitationOutput) String() string {
6532	return awsutil.Prettify(s)
6533}
6534
6535// GoString returns the string representation.
6536//
6537// API parameter values that are decorated as "sensitive" in the API will not
6538// be included in the string output. The member name will be present, but the
6539// value will be replaced with "sensitive".
6540func (s AcceptInvitationOutput) GoString() string {
6541	return s.String()
6542}
6543
6544// Provides information about the permissions settings of the bucket-level access
6545// control list (ACL) for an S3 bucket.
6546type AccessControlList struct {
6547	_ struct{} `type:"structure"`
6548
6549	AllowsPublicReadAccess *bool `locationName:"allowsPublicReadAccess" type:"boolean"`
6550
6551	AllowsPublicWriteAccess *bool `locationName:"allowsPublicWriteAccess" type:"boolean"`
6552}
6553
6554// String returns the string representation.
6555//
6556// API parameter values that are decorated as "sensitive" in the API will not
6557// be included in the string output. The member name will be present, but the
6558// value will be replaced with "sensitive".
6559func (s AccessControlList) String() string {
6560	return awsutil.Prettify(s)
6561}
6562
6563// GoString returns the string representation.
6564//
6565// API parameter values that are decorated as "sensitive" in the API will not
6566// be included in the string output. The member name will be present, but the
6567// value will be replaced with "sensitive".
6568func (s AccessControlList) GoString() string {
6569	return s.String()
6570}
6571
6572// SetAllowsPublicReadAccess sets the AllowsPublicReadAccess field's value.
6573func (s *AccessControlList) SetAllowsPublicReadAccess(v bool) *AccessControlList {
6574	s.AllowsPublicReadAccess = &v
6575	return s
6576}
6577
6578// SetAllowsPublicWriteAccess sets the AllowsPublicWriteAccess field's value.
6579func (s *AccessControlList) SetAllowsPublicWriteAccess(v bool) *AccessControlList {
6580	s.AllowsPublicWriteAccess = &v
6581	return s
6582}
6583
6584// Provides information about an error that occurred due to insufficient access
6585// to a specified resource.
6586type AccessDeniedException struct {
6587	_            struct{}                  `type:"structure"`
6588	RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"`
6589
6590	Message_ *string `locationName:"message" type:"string"`
6591}
6592
6593// String returns the string representation.
6594//
6595// API parameter values that are decorated as "sensitive" in the API will not
6596// be included in the string output. The member name will be present, but the
6597// value will be replaced with "sensitive".
6598func (s AccessDeniedException) String() string {
6599	return awsutil.Prettify(s)
6600}
6601
6602// GoString returns the string representation.
6603//
6604// API parameter values that are decorated as "sensitive" in the API will not
6605// be included in the string output. The member name will be present, but the
6606// value will be replaced with "sensitive".
6607func (s AccessDeniedException) GoString() string {
6608	return s.String()
6609}
6610
6611func newErrorAccessDeniedException(v protocol.ResponseMetadata) error {
6612	return &AccessDeniedException{
6613		RespMetadata: v,
6614	}
6615}
6616
6617// Code returns the exception type name.
6618func (s *AccessDeniedException) Code() string {
6619	return "AccessDeniedException"
6620}
6621
6622// Message returns the exception's message.
6623func (s *AccessDeniedException) Message() string {
6624	if s.Message_ != nil {
6625		return *s.Message_
6626	}
6627	return ""
6628}
6629
6630// OrigErr always returns nil, satisfies awserr.Error interface.
6631func (s *AccessDeniedException) OrigErr() error {
6632	return nil
6633}
6634
6635func (s *AccessDeniedException) Error() string {
6636	return fmt.Sprintf("%s: %s", s.Code(), s.Message())
6637}
6638
6639// Status code returns the HTTP status code for the request's response error.
6640func (s *AccessDeniedException) StatusCode() int {
6641	return s.RespMetadata.StatusCode
6642}
6643
6644// RequestID returns the service's response RequestID for request.
6645func (s *AccessDeniedException) RequestID() string {
6646	return s.RespMetadata.RequestID
6647}
6648
6649// Specifies the details of an account to associate with an Amazon Macie administrator
6650// account.
6651type AccountDetail struct {
6652	_ struct{} `type:"structure"`
6653
6654	// AccountId is a required field
6655	AccountId *string `locationName:"accountId" type:"string" required:"true"`
6656
6657	// Email is a required field
6658	Email *string `locationName:"email" type:"string" required:"true"`
6659}
6660
6661// String returns the string representation.
6662//
6663// API parameter values that are decorated as "sensitive" in the API will not
6664// be included in the string output. The member name will be present, but the
6665// value will be replaced with "sensitive".
6666func (s AccountDetail) String() string {
6667	return awsutil.Prettify(s)
6668}
6669
6670// GoString returns the string representation.
6671//
6672// API parameter values that are decorated as "sensitive" in the API will not
6673// be included in the string output. The member name will be present, but the
6674// value will be replaced with "sensitive".
6675func (s AccountDetail) GoString() string {
6676	return s.String()
6677}
6678
6679// Validate inspects the fields of the type to determine if they are valid.
6680func (s *AccountDetail) Validate() error {
6681	invalidParams := request.ErrInvalidParams{Context: "AccountDetail"}
6682	if s.AccountId == nil {
6683		invalidParams.Add(request.NewErrParamRequired("AccountId"))
6684	}
6685	if s.Email == nil {
6686		invalidParams.Add(request.NewErrParamRequired("Email"))
6687	}
6688
6689	if invalidParams.Len() > 0 {
6690		return invalidParams
6691	}
6692	return nil
6693}
6694
6695// SetAccountId sets the AccountId field's value.
6696func (s *AccountDetail) SetAccountId(v string) *AccountDetail {
6697	s.AccountId = &v
6698	return s
6699}
6700
6701// SetEmail sets the Email field's value.
6702func (s *AccountDetail) SetEmail(v string) *AccountDetail {
6703	s.Email = &v
6704	return s
6705}
6706
6707// Provides information about the account-level permissions settings that apply
6708// to an S3 bucket.
6709type AccountLevelPermissions struct {
6710	_ struct{} `type:"structure"`
6711
6712	// Provides information about the block public access settings for an S3 bucket.
6713	// These settings can apply to a bucket at the account level or bucket level.
6714	// For detailed information about each setting, see Blocking public access to
6715	// your Amazon S3 storage (https://docs.aws.amazon.com/AmazonS3/latest/userguide/access-control-block-public-access.html)
6716	// in the Amazon Simple Storage Service User Guide.
6717	BlockPublicAccess *BlockPublicAccess `locationName:"blockPublicAccess" type:"structure"`
6718}
6719
6720// String returns the string representation.
6721//
6722// API parameter values that are decorated as "sensitive" in the API will not
6723// be included in the string output. The member name will be present, but the
6724// value will be replaced with "sensitive".
6725func (s AccountLevelPermissions) String() string {
6726	return awsutil.Prettify(s)
6727}
6728
6729// GoString returns the string representation.
6730//
6731// API parameter values that are decorated as "sensitive" in the API will not
6732// be included in the string output. The member name will be present, but the
6733// value will be replaced with "sensitive".
6734func (s AccountLevelPermissions) GoString() string {
6735	return s.String()
6736}
6737
6738// SetBlockPublicAccess sets the BlockPublicAccess field's value.
6739func (s *AccountLevelPermissions) SetBlockPublicAccess(v *BlockPublicAccess) *AccountLevelPermissions {
6740	s.BlockPublicAccess = v
6741	return s
6742}
6743
6744// Provides information about the delegated Amazon Macie administrator account
6745// for an Amazon Web Services organization.
6746type AdminAccount struct {
6747	_ struct{} `type:"structure"`
6748
6749	AccountId *string `locationName:"accountId" type:"string"`
6750
6751	// The current status of an account as the delegated Amazon Macie administrator
6752	// account for an Amazon Web Services organization. Possible values are:
6753	Status *string `locationName:"status" type:"string" enum:"AdminStatus"`
6754}
6755
6756// String returns the string representation.
6757//
6758// API parameter values that are decorated as "sensitive" in the API will not
6759// be included in the string output. The member name will be present, but the
6760// value will be replaced with "sensitive".
6761func (s AdminAccount) String() string {
6762	return awsutil.Prettify(s)
6763}
6764
6765// GoString returns the string representation.
6766//
6767// API parameter values that are decorated as "sensitive" in the API will not
6768// be included in the string output. The member name will be present, but the
6769// value will be replaced with "sensitive".
6770func (s AdminAccount) GoString() string {
6771	return s.String()
6772}
6773
6774// SetAccountId sets the AccountId field's value.
6775func (s *AdminAccount) SetAccountId(v string) *AdminAccount {
6776	s.AccountId = &v
6777	return s
6778}
6779
6780// SetStatus sets the Status field's value.
6781func (s *AdminAccount) SetStatus(v string) *AdminAccount {
6782	s.Status = &v
6783	return s
6784}
6785
6786// Provides information about an API operation that an entity invoked for an
6787// affected resource.
6788type ApiCallDetails struct {
6789	_ struct{} `type:"structure"`
6790
6791	Api *string `locationName:"api" type:"string"`
6792
6793	ApiServiceName *string `locationName:"apiServiceName" type:"string"`
6794
6795	FirstSeen *time.Time `locationName:"firstSeen" type:"timestamp" timestampFormat:"iso8601"`
6796
6797	LastSeen *time.Time `locationName:"lastSeen" type:"timestamp" timestampFormat:"iso8601"`
6798}
6799
6800// String returns the string representation.
6801//
6802// API parameter values that are decorated as "sensitive" in the API will not
6803// be included in the string output. The member name will be present, but the
6804// value will be replaced with "sensitive".
6805func (s ApiCallDetails) String() string {
6806	return awsutil.Prettify(s)
6807}
6808
6809// GoString returns the string representation.
6810//
6811// API parameter values that are decorated as "sensitive" in the API will not
6812// be included in the string output. The member name will be present, but the
6813// value will be replaced with "sensitive".
6814func (s ApiCallDetails) GoString() string {
6815	return s.String()
6816}
6817
6818// SetApi sets the Api field's value.
6819func (s *ApiCallDetails) SetApi(v string) *ApiCallDetails {
6820	s.Api = &v
6821	return s
6822}
6823
6824// SetApiServiceName sets the ApiServiceName field's value.
6825func (s *ApiCallDetails) SetApiServiceName(v string) *ApiCallDetails {
6826	s.ApiServiceName = &v
6827	return s
6828}
6829
6830// SetFirstSeen sets the FirstSeen field's value.
6831func (s *ApiCallDetails) SetFirstSeen(v time.Time) *ApiCallDetails {
6832	s.FirstSeen = &v
6833	return s
6834}
6835
6836// SetLastSeen sets the LastSeen field's value.
6837func (s *ApiCallDetails) SetLastSeen(v time.Time) *ApiCallDetails {
6838	s.LastSeen = &v
6839	return s
6840}
6841
6842// Provides information about an identity that performed an action on an affected
6843// resource by using temporary security credentials. The credentials were obtained
6844// using the AssumeRole operation of the Security Token Service (STS) API.
6845type AssumedRole struct {
6846	_ struct{} `type:"structure"`
6847
6848	AccessKeyId *string `locationName:"accessKeyId" type:"string"`
6849
6850	AccountId *string `locationName:"accountId" type:"string"`
6851
6852	Arn *string `locationName:"arn" type:"string"`
6853
6854	PrincipalId *string `locationName:"principalId" type:"string"`
6855
6856	// Provides information about a session that was created for an entity that
6857	// performed an action by using temporary security credentials.
6858	SessionContext *SessionContext `locationName:"sessionContext" type:"structure"`
6859}
6860
6861// String returns the string representation.
6862//
6863// API parameter values that are decorated as "sensitive" in the API will not
6864// be included in the string output. The member name will be present, but the
6865// value will be replaced with "sensitive".
6866func (s AssumedRole) String() string {
6867	return awsutil.Prettify(s)
6868}
6869
6870// GoString returns the string representation.
6871//
6872// API parameter values that are decorated as "sensitive" in the API will not
6873// be included in the string output. The member name will be present, but the
6874// value will be replaced with "sensitive".
6875func (s AssumedRole) GoString() string {
6876	return s.String()
6877}
6878
6879// SetAccessKeyId sets the AccessKeyId field's value.
6880func (s *AssumedRole) SetAccessKeyId(v string) *AssumedRole {
6881	s.AccessKeyId = &v
6882	return s
6883}
6884
6885// SetAccountId sets the AccountId field's value.
6886func (s *AssumedRole) SetAccountId(v string) *AssumedRole {
6887	s.AccountId = &v
6888	return s
6889}
6890
6891// SetArn sets the Arn field's value.
6892func (s *AssumedRole) SetArn(v string) *AssumedRole {
6893	s.Arn = &v
6894	return s
6895}
6896
6897// SetPrincipalId sets the PrincipalId field's value.
6898func (s *AssumedRole) SetPrincipalId(v string) *AssumedRole {
6899	s.PrincipalId = &v
6900	return s
6901}
6902
6903// SetSessionContext sets the SessionContext field's value.
6904func (s *AssumedRole) SetSessionContext(v *SessionContext) *AssumedRole {
6905	s.SessionContext = v
6906	return s
6907}
6908
6909// Provides information about an Amazon Web Services account and entity that
6910// performed an action on an affected resource. The action was performed using
6911// the credentials for an Amazon Web Services account other than your own account.
6912type AwsAccount struct {
6913	_ struct{} `type:"structure"`
6914
6915	AccountId *string `locationName:"accountId" type:"string"`
6916
6917	PrincipalId *string `locationName:"principalId" type:"string"`
6918}
6919
6920// String returns the string representation.
6921//
6922// API parameter values that are decorated as "sensitive" in the API will not
6923// be included in the string output. The member name will be present, but the
6924// value will be replaced with "sensitive".
6925func (s AwsAccount) String() string {
6926	return awsutil.Prettify(s)
6927}
6928
6929// GoString returns the string representation.
6930//
6931// API parameter values that are decorated as "sensitive" in the API will not
6932// be included in the string output. The member name will be present, but the
6933// value will be replaced with "sensitive".
6934func (s AwsAccount) GoString() string {
6935	return s.String()
6936}
6937
6938// SetAccountId sets the AccountId field's value.
6939func (s *AwsAccount) SetAccountId(v string) *AwsAccount {
6940	s.AccountId = &v
6941	return s
6942}
6943
6944// SetPrincipalId sets the PrincipalId field's value.
6945func (s *AwsAccount) SetPrincipalId(v string) *AwsAccount {
6946	s.PrincipalId = &v
6947	return s
6948}
6949
6950// Provides information about an Amazon Web Service that performed an action
6951// on an affected resource.
6952type AwsService struct {
6953	_ struct{} `type:"structure"`
6954
6955	InvokedBy *string `locationName:"invokedBy" type:"string"`
6956}
6957
6958// String returns the string representation.
6959//
6960// API parameter values that are decorated as "sensitive" in the API will not
6961// be included in the string output. The member name will be present, but the
6962// value will be replaced with "sensitive".
6963func (s AwsService) String() string {
6964	return awsutil.Prettify(s)
6965}
6966
6967// GoString returns the string representation.
6968//
6969// API parameter values that are decorated as "sensitive" in the API will not
6970// be included in the string output. The member name will be present, but the
6971// value will be replaced with "sensitive".
6972func (s AwsService) GoString() string {
6973	return s.String()
6974}
6975
6976// SetInvokedBy sets the InvokedBy field's value.
6977func (s *AwsService) SetInvokedBy(v string) *AwsService {
6978	s.InvokedBy = &v
6979	return s
6980}
6981
6982// Provides information about a custom data identifier.
6983type BatchGetCustomDataIdentifierSummary struct {
6984	_ struct{} `type:"structure"`
6985
6986	Arn *string `locationName:"arn" type:"string"`
6987
6988	CreatedAt *time.Time `locationName:"createdAt" type:"timestamp" timestampFormat:"iso8601"`
6989
6990	Deleted *bool `locationName:"deleted" type:"boolean"`
6991
6992	Description *string `locationName:"description" type:"string"`
6993
6994	Id *string `locationName:"id" type:"string"`
6995
6996	Name *string `locationName:"name" type:"string"`
6997}
6998
6999// String returns the string representation.
7000//
7001// API parameter values that are decorated as "sensitive" in the API will not
7002// be included in the string output. The member name will be present, but the
7003// value will be replaced with "sensitive".
7004func (s BatchGetCustomDataIdentifierSummary) String() string {
7005	return awsutil.Prettify(s)
7006}
7007
7008// GoString returns the string representation.
7009//
7010// API parameter values that are decorated as "sensitive" in the API will not
7011// be included in the string output. The member name will be present, but the
7012// value will be replaced with "sensitive".
7013func (s BatchGetCustomDataIdentifierSummary) GoString() string {
7014	return s.String()
7015}
7016
7017// SetArn sets the Arn field's value.
7018func (s *BatchGetCustomDataIdentifierSummary) SetArn(v string) *BatchGetCustomDataIdentifierSummary {
7019	s.Arn = &v
7020	return s
7021}
7022
7023// SetCreatedAt sets the CreatedAt field's value.
7024func (s *BatchGetCustomDataIdentifierSummary) SetCreatedAt(v time.Time) *BatchGetCustomDataIdentifierSummary {
7025	s.CreatedAt = &v
7026	return s
7027}
7028
7029// SetDeleted sets the Deleted field's value.
7030func (s *BatchGetCustomDataIdentifierSummary) SetDeleted(v bool) *BatchGetCustomDataIdentifierSummary {
7031	s.Deleted = &v
7032	return s
7033}
7034
7035// SetDescription sets the Description field's value.
7036func (s *BatchGetCustomDataIdentifierSummary) SetDescription(v string) *BatchGetCustomDataIdentifierSummary {
7037	s.Description = &v
7038	return s
7039}
7040
7041// SetId sets the Id field's value.
7042func (s *BatchGetCustomDataIdentifierSummary) SetId(v string) *BatchGetCustomDataIdentifierSummary {
7043	s.Id = &v
7044	return s
7045}
7046
7047// SetName sets the Name field's value.
7048func (s *BatchGetCustomDataIdentifierSummary) SetName(v string) *BatchGetCustomDataIdentifierSummary {
7049	s.Name = &v
7050	return s
7051}
7052
7053// Specifies one or more custom data identifiers to retrieve information about.
7054type BatchGetCustomDataIdentifiersInput struct {
7055	_ struct{} `type:"structure"`
7056
7057	Ids []*string `locationName:"ids" type:"list"`
7058}
7059
7060// String returns the string representation.
7061//
7062// API parameter values that are decorated as "sensitive" in the API will not
7063// be included in the string output. The member name will be present, but the
7064// value will be replaced with "sensitive".
7065func (s BatchGetCustomDataIdentifiersInput) String() string {
7066	return awsutil.Prettify(s)
7067}
7068
7069// GoString returns the string representation.
7070//
7071// API parameter values that are decorated as "sensitive" in the API will not
7072// be included in the string output. The member name will be present, but the
7073// value will be replaced with "sensitive".
7074func (s BatchGetCustomDataIdentifiersInput) GoString() string {
7075	return s.String()
7076}
7077
7078// SetIds sets the Ids field's value.
7079func (s *BatchGetCustomDataIdentifiersInput) SetIds(v []*string) *BatchGetCustomDataIdentifiersInput {
7080	s.Ids = v
7081	return s
7082}
7083
7084// Provides information about one or more custom data identifiers.
7085type BatchGetCustomDataIdentifiersOutput struct {
7086	_ struct{} `type:"structure"`
7087
7088	CustomDataIdentifiers []*BatchGetCustomDataIdentifierSummary `locationName:"customDataIdentifiers" type:"list"`
7089
7090	NotFoundIdentifierIds []*string `locationName:"notFoundIdentifierIds" type:"list"`
7091}
7092
7093// String returns the string representation.
7094//
7095// API parameter values that are decorated as "sensitive" in the API will not
7096// be included in the string output. The member name will be present, but the
7097// value will be replaced with "sensitive".
7098func (s BatchGetCustomDataIdentifiersOutput) String() string {
7099	return awsutil.Prettify(s)
7100}
7101
7102// GoString returns the string representation.
7103//
7104// API parameter values that are decorated as "sensitive" in the API will not
7105// be included in the string output. The member name will be present, but the
7106// value will be replaced with "sensitive".
7107func (s BatchGetCustomDataIdentifiersOutput) GoString() string {
7108	return s.String()
7109}
7110
7111// SetCustomDataIdentifiers sets the CustomDataIdentifiers field's value.
7112func (s *BatchGetCustomDataIdentifiersOutput) SetCustomDataIdentifiers(v []*BatchGetCustomDataIdentifierSummary) *BatchGetCustomDataIdentifiersOutput {
7113	s.CustomDataIdentifiers = v
7114	return s
7115}
7116
7117// SetNotFoundIdentifierIds sets the NotFoundIdentifierIds field's value.
7118func (s *BatchGetCustomDataIdentifiersOutput) SetNotFoundIdentifierIds(v []*string) *BatchGetCustomDataIdentifiersOutput {
7119	s.NotFoundIdentifierIds = v
7120	return s
7121}
7122
7123// Provides information about the block public access settings for an S3 bucket.
7124// These settings can apply to a bucket at the account level or bucket level.
7125// For detailed information about each setting, see Blocking public access to
7126// your Amazon S3 storage (https://docs.aws.amazon.com/AmazonS3/latest/userguide/access-control-block-public-access.html)
7127// in the Amazon Simple Storage Service User Guide.
7128type BlockPublicAccess struct {
7129	_ struct{} `type:"structure"`
7130
7131	BlockPublicAcls *bool `locationName:"blockPublicAcls" type:"boolean"`
7132
7133	BlockPublicPolicy *bool `locationName:"blockPublicPolicy" type:"boolean"`
7134
7135	IgnorePublicAcls *bool `locationName:"ignorePublicAcls" type:"boolean"`
7136
7137	RestrictPublicBuckets *bool `locationName:"restrictPublicBuckets" type:"boolean"`
7138}
7139
7140// String returns the string representation.
7141//
7142// API parameter values that are decorated as "sensitive" in the API will not
7143// be included in the string output. The member name will be present, but the
7144// value will be replaced with "sensitive".
7145func (s BlockPublicAccess) String() string {
7146	return awsutil.Prettify(s)
7147}
7148
7149// GoString returns the string representation.
7150//
7151// API parameter values that are decorated as "sensitive" in the API will not
7152// be included in the string output. The member name will be present, but the
7153// value will be replaced with "sensitive".
7154func (s BlockPublicAccess) GoString() string {
7155	return s.String()
7156}
7157
7158// SetBlockPublicAcls sets the BlockPublicAcls field's value.
7159func (s *BlockPublicAccess) SetBlockPublicAcls(v bool) *BlockPublicAccess {
7160	s.BlockPublicAcls = &v
7161	return s
7162}
7163
7164// SetBlockPublicPolicy sets the BlockPublicPolicy field's value.
7165func (s *BlockPublicAccess) SetBlockPublicPolicy(v bool) *BlockPublicAccess {
7166	s.BlockPublicPolicy = &v
7167	return s
7168}
7169
7170// SetIgnorePublicAcls sets the IgnorePublicAcls field's value.
7171func (s *BlockPublicAccess) SetIgnorePublicAcls(v bool) *BlockPublicAccess {
7172	s.IgnorePublicAcls = &v
7173	return s
7174}
7175
7176// SetRestrictPublicBuckets sets the RestrictPublicBuckets field's value.
7177func (s *BlockPublicAccess) SetRestrictPublicBuckets(v bool) *BlockPublicAccess {
7178	s.RestrictPublicBuckets = &v
7179	return s
7180}
7181
7182// Provides information about the number of S3 buckets that are publicly accessible
7183// based on a combination of permissions settings for each bucket.
7184type BucketCountByEffectivePermission struct {
7185	_ struct{} `type:"structure"`
7186
7187	PubliclyAccessible *int64 `locationName:"publiclyAccessible" type:"long"`
7188
7189	PubliclyReadable *int64 `locationName:"publiclyReadable" type:"long"`
7190
7191	PubliclyWritable *int64 `locationName:"publiclyWritable" type:"long"`
7192
7193	Unknown *int64 `locationName:"unknown" type:"long"`
7194}
7195
7196// String returns the string representation.
7197//
7198// API parameter values that are decorated as "sensitive" in the API will not
7199// be included in the string output. The member name will be present, but the
7200// value will be replaced with "sensitive".
7201func (s BucketCountByEffectivePermission) String() string {
7202	return awsutil.Prettify(s)
7203}
7204
7205// GoString returns the string representation.
7206//
7207// API parameter values that are decorated as "sensitive" in the API will not
7208// be included in the string output. The member name will be present, but the
7209// value will be replaced with "sensitive".
7210func (s BucketCountByEffectivePermission) GoString() string {
7211	return s.String()
7212}
7213
7214// SetPubliclyAccessible sets the PubliclyAccessible field's value.
7215func (s *BucketCountByEffectivePermission) SetPubliclyAccessible(v int64) *BucketCountByEffectivePermission {
7216	s.PubliclyAccessible = &v
7217	return s
7218}
7219
7220// SetPubliclyReadable sets the PubliclyReadable field's value.
7221func (s *BucketCountByEffectivePermission) SetPubliclyReadable(v int64) *BucketCountByEffectivePermission {
7222	s.PubliclyReadable = &v
7223	return s
7224}
7225
7226// SetPubliclyWritable sets the PubliclyWritable field's value.
7227func (s *BucketCountByEffectivePermission) SetPubliclyWritable(v int64) *BucketCountByEffectivePermission {
7228	s.PubliclyWritable = &v
7229	return s
7230}
7231
7232// SetUnknown sets the Unknown field's value.
7233func (s *BucketCountByEffectivePermission) SetUnknown(v int64) *BucketCountByEffectivePermission {
7234	s.Unknown = &v
7235	return s
7236}
7237
7238// Provides information about the number of S3 buckets that use certain types
7239// of server-side encryption by default or don't encrypt new objects by default.
7240// For detailed information about these settings, see Setting default server-side
7241// encryption behavior for Amazon S3 buckets (https://docs.aws.amazon.com/AmazonS3/latest/userguide/bucket-encryption.html)
7242// in the Amazon Simple Storage Service User Guide.
7243type BucketCountByEncryptionType struct {
7244	_ struct{} `type:"structure"`
7245
7246	KmsManaged *int64 `locationName:"kmsManaged" type:"long"`
7247
7248	S3Managed *int64 `locationName:"s3Managed" type:"long"`
7249
7250	Unencrypted *int64 `locationName:"unencrypted" type:"long"`
7251
7252	Unknown *int64 `locationName:"unknown" type:"long"`
7253}
7254
7255// String returns the string representation.
7256//
7257// API parameter values that are decorated as "sensitive" in the API will not
7258// be included in the string output. The member name will be present, but the
7259// value will be replaced with "sensitive".
7260func (s BucketCountByEncryptionType) String() string {
7261	return awsutil.Prettify(s)
7262}
7263
7264// GoString returns the string representation.
7265//
7266// API parameter values that are decorated as "sensitive" in the API will not
7267// be included in the string output. The member name will be present, but the
7268// value will be replaced with "sensitive".
7269func (s BucketCountByEncryptionType) GoString() string {
7270	return s.String()
7271}
7272
7273// SetKmsManaged sets the KmsManaged field's value.
7274func (s *BucketCountByEncryptionType) SetKmsManaged(v int64) *BucketCountByEncryptionType {
7275	s.KmsManaged = &v
7276	return s
7277}
7278
7279// SetS3Managed sets the S3Managed field's value.
7280func (s *BucketCountByEncryptionType) SetS3Managed(v int64) *BucketCountByEncryptionType {
7281	s.S3Managed = &v
7282	return s
7283}
7284
7285// SetUnencrypted sets the Unencrypted field's value.
7286func (s *BucketCountByEncryptionType) SetUnencrypted(v int64) *BucketCountByEncryptionType {
7287	s.Unencrypted = &v
7288	return s
7289}
7290
7291// SetUnknown sets the Unknown field's value.
7292func (s *BucketCountByEncryptionType) SetUnknown(v int64) *BucketCountByEncryptionType {
7293	s.Unknown = &v
7294	return s
7295}
7296
7297// Provides information about the number of S3 buckets that are or aren't shared
7298// with other Amazon Web Services accounts.
7299type BucketCountBySharedAccessType struct {
7300	_ struct{} `type:"structure"`
7301
7302	External *int64 `locationName:"external" type:"long"`
7303
7304	Internal *int64 `locationName:"internal" type:"long"`
7305
7306	NotShared *int64 `locationName:"notShared" type:"long"`
7307
7308	Unknown *int64 `locationName:"unknown" type:"long"`
7309}
7310
7311// String returns the string representation.
7312//
7313// API parameter values that are decorated as "sensitive" in the API will not
7314// be included in the string output. The member name will be present, but the
7315// value will be replaced with "sensitive".
7316func (s BucketCountBySharedAccessType) String() string {
7317	return awsutil.Prettify(s)
7318}
7319
7320// GoString returns the string representation.
7321//
7322// API parameter values that are decorated as "sensitive" in the API will not
7323// be included in the string output. The member name will be present, but the
7324// value will be replaced with "sensitive".
7325func (s BucketCountBySharedAccessType) GoString() string {
7326	return s.String()
7327}
7328
7329// SetExternal sets the External field's value.
7330func (s *BucketCountBySharedAccessType) SetExternal(v int64) *BucketCountBySharedAccessType {
7331	s.External = &v
7332	return s
7333}
7334
7335// SetInternal sets the Internal field's value.
7336func (s *BucketCountBySharedAccessType) SetInternal(v int64) *BucketCountBySharedAccessType {
7337	s.Internal = &v
7338	return s
7339}
7340
7341// SetNotShared sets the NotShared field's value.
7342func (s *BucketCountBySharedAccessType) SetNotShared(v int64) *BucketCountBySharedAccessType {
7343	s.NotShared = &v
7344	return s
7345}
7346
7347// SetUnknown sets the Unknown field's value.
7348func (s *BucketCountBySharedAccessType) SetUnknown(v int64) *BucketCountBySharedAccessType {
7349	s.Unknown = &v
7350	return s
7351}
7352
7353// Provides information about the number of S3 buckets whose bucket policies
7354// do or don't require server-side encryption of objects when objects are uploaded
7355// to the buckets.
7356type BucketCountPolicyAllowsUnencryptedObjectUploads struct {
7357	_ struct{} `type:"structure"`
7358
7359	AllowsUnencryptedObjectUploads *int64 `locationName:"allowsUnencryptedObjectUploads" type:"long"`
7360
7361	DeniesUnencryptedObjectUploads *int64 `locationName:"deniesUnencryptedObjectUploads" type:"long"`
7362
7363	Unknown *int64 `locationName:"unknown" type:"long"`
7364}
7365
7366// String returns the string representation.
7367//
7368// API parameter values that are decorated as "sensitive" in the API will not
7369// be included in the string output. The member name will be present, but the
7370// value will be replaced with "sensitive".
7371func (s BucketCountPolicyAllowsUnencryptedObjectUploads) String() string {
7372	return awsutil.Prettify(s)
7373}
7374
7375// GoString returns the string representation.
7376//
7377// API parameter values that are decorated as "sensitive" in the API will not
7378// be included in the string output. The member name will be present, but the
7379// value will be replaced with "sensitive".
7380func (s BucketCountPolicyAllowsUnencryptedObjectUploads) GoString() string {
7381	return s.String()
7382}
7383
7384// SetAllowsUnencryptedObjectUploads sets the AllowsUnencryptedObjectUploads field's value.
7385func (s *BucketCountPolicyAllowsUnencryptedObjectUploads) SetAllowsUnencryptedObjectUploads(v int64) *BucketCountPolicyAllowsUnencryptedObjectUploads {
7386	s.AllowsUnencryptedObjectUploads = &v
7387	return s
7388}
7389
7390// SetDeniesUnencryptedObjectUploads sets the DeniesUnencryptedObjectUploads field's value.
7391func (s *BucketCountPolicyAllowsUnencryptedObjectUploads) SetDeniesUnencryptedObjectUploads(v int64) *BucketCountPolicyAllowsUnencryptedObjectUploads {
7392	s.DeniesUnencryptedObjectUploads = &v
7393	return s
7394}
7395
7396// SetUnknown sets the Unknown field's value.
7397func (s *BucketCountPolicyAllowsUnencryptedObjectUploads) SetUnknown(v int64) *BucketCountPolicyAllowsUnencryptedObjectUploads {
7398	s.Unknown = &v
7399	return s
7400}
7401
7402// Specifies the operator to use in a property-based condition that filters
7403// the results of a query for information about S3 buckets.
7404type BucketCriteriaAdditionalProperties struct {
7405	_ struct{} `type:"structure"`
7406
7407	Eq []*string `locationName:"eq" type:"list"`
7408
7409	Gt *int64 `locationName:"gt" type:"long"`
7410
7411	Gte *int64 `locationName:"gte" type:"long"`
7412
7413	Lt *int64 `locationName:"lt" type:"long"`
7414
7415	Lte *int64 `locationName:"lte" type:"long"`
7416
7417	Neq []*string `locationName:"neq" type:"list"`
7418
7419	Prefix *string `locationName:"prefix" type:"string"`
7420}
7421
7422// String returns the string representation.
7423//
7424// API parameter values that are decorated as "sensitive" in the API will not
7425// be included in the string output. The member name will be present, but the
7426// value will be replaced with "sensitive".
7427func (s BucketCriteriaAdditionalProperties) String() string {
7428	return awsutil.Prettify(s)
7429}
7430
7431// GoString returns the string representation.
7432//
7433// API parameter values that are decorated as "sensitive" in the API will not
7434// be included in the string output. The member name will be present, but the
7435// value will be replaced with "sensitive".
7436func (s BucketCriteriaAdditionalProperties) GoString() string {
7437	return s.String()
7438}
7439
7440// SetEq sets the Eq field's value.
7441func (s *BucketCriteriaAdditionalProperties) SetEq(v []*string) *BucketCriteriaAdditionalProperties {
7442	s.Eq = v
7443	return s
7444}
7445
7446// SetGt sets the Gt field's value.
7447func (s *BucketCriteriaAdditionalProperties) SetGt(v int64) *BucketCriteriaAdditionalProperties {
7448	s.Gt = &v
7449	return s
7450}
7451
7452// SetGte sets the Gte field's value.
7453func (s *BucketCriteriaAdditionalProperties) SetGte(v int64) *BucketCriteriaAdditionalProperties {
7454	s.Gte = &v
7455	return s
7456}
7457
7458// SetLt sets the Lt field's value.
7459func (s *BucketCriteriaAdditionalProperties) SetLt(v int64) *BucketCriteriaAdditionalProperties {
7460	s.Lt = &v
7461	return s
7462}
7463
7464// SetLte sets the Lte field's value.
7465func (s *BucketCriteriaAdditionalProperties) SetLte(v int64) *BucketCriteriaAdditionalProperties {
7466	s.Lte = &v
7467	return s
7468}
7469
7470// SetNeq sets the Neq field's value.
7471func (s *BucketCriteriaAdditionalProperties) SetNeq(v []*string) *BucketCriteriaAdditionalProperties {
7472	s.Neq = v
7473	return s
7474}
7475
7476// SetPrefix sets the Prefix field's value.
7477func (s *BucketCriteriaAdditionalProperties) SetPrefix(v string) *BucketCriteriaAdditionalProperties {
7478	s.Prefix = &v
7479	return s
7480}
7481
7482// Provides information about the bucket-level permissions settings for an S3
7483// bucket.
7484type BucketLevelPermissions struct {
7485	_ struct{} `type:"structure"`
7486
7487	// Provides information about the permissions settings of the bucket-level access
7488	// control list (ACL) for an S3 bucket.
7489	AccessControlList *AccessControlList `locationName:"accessControlList" type:"structure"`
7490
7491	// Provides information about the block public access settings for an S3 bucket.
7492	// These settings can apply to a bucket at the account level or bucket level.
7493	// For detailed information about each setting, see Blocking public access to
7494	// your Amazon S3 storage (https://docs.aws.amazon.com/AmazonS3/latest/userguide/access-control-block-public-access.html)
7495	// in the Amazon Simple Storage Service User Guide.
7496	BlockPublicAccess *BlockPublicAccess `locationName:"blockPublicAccess" type:"structure"`
7497
7498	// Provides information about the permissions settings of the bucket policy
7499	// for an S3 bucket.
7500	BucketPolicy *BucketPolicy `locationName:"bucketPolicy" type:"structure"`
7501}
7502
7503// String returns the string representation.
7504//
7505// API parameter values that are decorated as "sensitive" in the API will not
7506// be included in the string output. The member name will be present, but the
7507// value will be replaced with "sensitive".
7508func (s BucketLevelPermissions) String() string {
7509	return awsutil.Prettify(s)
7510}
7511
7512// GoString returns the string representation.
7513//
7514// API parameter values that are decorated as "sensitive" in the API will not
7515// be included in the string output. The member name will be present, but the
7516// value will be replaced with "sensitive".
7517func (s BucketLevelPermissions) GoString() string {
7518	return s.String()
7519}
7520
7521// SetAccessControlList sets the AccessControlList field's value.
7522func (s *BucketLevelPermissions) SetAccessControlList(v *AccessControlList) *BucketLevelPermissions {
7523	s.AccessControlList = v
7524	return s
7525}
7526
7527// SetBlockPublicAccess sets the BlockPublicAccess field's value.
7528func (s *BucketLevelPermissions) SetBlockPublicAccess(v *BlockPublicAccess) *BucketLevelPermissions {
7529	s.BlockPublicAccess = v
7530	return s
7531}
7532
7533// SetBucketPolicy sets the BucketPolicy field's value.
7534func (s *BucketLevelPermissions) SetBucketPolicy(v *BucketPolicy) *BucketLevelPermissions {
7535	s.BucketPolicy = v
7536	return s
7537}
7538
7539// Provides statistical data and other information about an S3 bucket that Amazon
7540// Macie monitors and analyzes for your account. If an error occurs when Macie
7541// attempts to retrieve and process information about the bucket or the bucket's
7542// objects, the value for the versioning property is false and the value for
7543// most other properties is null. Exceptions are accountId, bucketArn, bucketCreatedAt,
7544// bucketName, lastUpdated, and region. To identify the cause of the error,
7545// refer to the errorCode and errorMessage values.
7546type BucketMetadata struct {
7547	_ struct{} `type:"structure"`
7548
7549	AccountId *string `locationName:"accountId" type:"string"`
7550
7551	AllowsUnencryptedObjectUploads *string `locationName:"allowsUnencryptedObjectUploads" type:"string" enum:"AllowsUnencryptedObjectUploads"`
7552
7553	BucketArn *string `locationName:"bucketArn" type:"string"`
7554
7555	BucketCreatedAt *time.Time `locationName:"bucketCreatedAt" type:"timestamp" timestampFormat:"iso8601"`
7556
7557	BucketName *string `locationName:"bucketName" type:"string"`
7558
7559	ClassifiableObjectCount *int64 `locationName:"classifiableObjectCount" type:"long"`
7560
7561	ClassifiableSizeInBytes *int64 `locationName:"classifiableSizeInBytes" type:"long"`
7562
7563	// The error code for an error that prevented Amazon Macie from retrieving and
7564	// processing information about an S3 bucket and the bucket's objects.
7565	ErrorCode *string `locationName:"errorCode" type:"string" enum:"BucketMetadataErrorCode"`
7566
7567	ErrorMessage *string `locationName:"errorMessage" type:"string"`
7568
7569	// Specifies whether any one-time or recurring classification jobs are configured
7570	// to analyze data in an S3 bucket, and, if so, the details of the job that
7571	// ran most recently.
7572	JobDetails *JobDetails `locationName:"jobDetails" type:"structure"`
7573
7574	LastUpdated *time.Time `locationName:"lastUpdated" type:"timestamp" timestampFormat:"iso8601"`
7575
7576	ObjectCount *int64 `locationName:"objectCount" type:"long"`
7577
7578	// Provides information about the number of objects that are in an S3 bucket
7579	// and use certain types of server-side encryption, use client-side encryption,
7580	// or aren't encrypted.
7581	ObjectCountByEncryptionType *ObjectCountByEncryptionType `locationName:"objectCountByEncryptionType" type:"structure"`
7582
7583	// Provides information about the permissions settings that determine whether
7584	// an S3 bucket is publicly accessible.
7585	PublicAccess *BucketPublicAccess `locationName:"publicAccess" type:"structure"`
7586
7587	Region *string `locationName:"region" type:"string"`
7588
7589	// Provides information about settings that define whether one or more objects
7590	// in an S3 bucket are replicated to S3 buckets for other Amazon Web Services
7591	// accounts and, if so, which accounts.
7592	ReplicationDetails *ReplicationDetails `locationName:"replicationDetails" type:"structure"`
7593
7594	// Provides information about the default server-side encryption settings for
7595	// an S3 bucket. For detailed information about these settings, see Setting
7596	// default server-side encryption behavior for Amazon S3 buckets (https://docs.aws.amazon.com/AmazonS3/latest/userguide/bucket-encryption.html)
7597	// in the Amazon Simple Storage Service User Guide.
7598	ServerSideEncryption *BucketServerSideEncryption `locationName:"serverSideEncryption" type:"structure"`
7599
7600	SharedAccess *string `locationName:"sharedAccess" type:"string" enum:"SharedAccess"`
7601
7602	SizeInBytes *int64 `locationName:"sizeInBytes" type:"long"`
7603
7604	SizeInBytesCompressed *int64 `locationName:"sizeInBytesCompressed" type:"long"`
7605
7606	Tags []*KeyValuePair `locationName:"tags" type:"list"`
7607
7608	// Provides information about the total storage size (in bytes) or number of
7609	// objects that Amazon Macie can't analyze in one or more S3 buckets. In a BucketMetadata
7610	// or MatchingBucket object, this data is for a specific bucket. In a GetBucketStatisticsResponse
7611	// object, this data is aggregated for the buckets in the query results. If
7612	// versioning is enabled for a bucket, total storage size values are based on
7613	// the size of the latest version of each applicable object in the bucket.
7614	UnclassifiableObjectCount *ObjectLevelStatistics `locationName:"unclassifiableObjectCount" type:"structure"`
7615
7616	// Provides information about the total storage size (in bytes) or number of
7617	// objects that Amazon Macie can't analyze in one or more S3 buckets. In a BucketMetadata
7618	// or MatchingBucket object, this data is for a specific bucket. In a GetBucketStatisticsResponse
7619	// object, this data is aggregated for the buckets in the query results. If
7620	// versioning is enabled for a bucket, total storage size values are based on
7621	// the size of the latest version of each applicable object in the bucket.
7622	UnclassifiableObjectSizeInBytes *ObjectLevelStatistics `locationName:"unclassifiableObjectSizeInBytes" type:"structure"`
7623
7624	Versioning *bool `locationName:"versioning" type:"boolean"`
7625}
7626
7627// String returns the string representation.
7628//
7629// API parameter values that are decorated as "sensitive" in the API will not
7630// be included in the string output. The member name will be present, but the
7631// value will be replaced with "sensitive".
7632func (s BucketMetadata) String() string {
7633	return awsutil.Prettify(s)
7634}
7635
7636// GoString returns the string representation.
7637//
7638// API parameter values that are decorated as "sensitive" in the API will not
7639// be included in the string output. The member name will be present, but the
7640// value will be replaced with "sensitive".
7641func (s BucketMetadata) GoString() string {
7642	return s.String()
7643}
7644
7645// SetAccountId sets the AccountId field's value.
7646func (s *BucketMetadata) SetAccountId(v string) *BucketMetadata {
7647	s.AccountId = &v
7648	return s
7649}
7650
7651// SetAllowsUnencryptedObjectUploads sets the AllowsUnencryptedObjectUploads field's value.
7652func (s *BucketMetadata) SetAllowsUnencryptedObjectUploads(v string) *BucketMetadata {
7653	s.AllowsUnencryptedObjectUploads = &v
7654	return s
7655}
7656
7657// SetBucketArn sets the BucketArn field's value.
7658func (s *BucketMetadata) SetBucketArn(v string) *BucketMetadata {
7659	s.BucketArn = &v
7660	return s
7661}
7662
7663// SetBucketCreatedAt sets the BucketCreatedAt field's value.
7664func (s *BucketMetadata) SetBucketCreatedAt(v time.Time) *BucketMetadata {
7665	s.BucketCreatedAt = &v
7666	return s
7667}
7668
7669// SetBucketName sets the BucketName field's value.
7670func (s *BucketMetadata) SetBucketName(v string) *BucketMetadata {
7671	s.BucketName = &v
7672	return s
7673}
7674
7675// SetClassifiableObjectCount sets the ClassifiableObjectCount field's value.
7676func (s *BucketMetadata) SetClassifiableObjectCount(v int64) *BucketMetadata {
7677	s.ClassifiableObjectCount = &v
7678	return s
7679}
7680
7681// SetClassifiableSizeInBytes sets the ClassifiableSizeInBytes field's value.
7682func (s *BucketMetadata) SetClassifiableSizeInBytes(v int64) *BucketMetadata {
7683	s.ClassifiableSizeInBytes = &v
7684	return s
7685}
7686
7687// SetErrorCode sets the ErrorCode field's value.
7688func (s *BucketMetadata) SetErrorCode(v string) *BucketMetadata {
7689	s.ErrorCode = &v
7690	return s
7691}
7692
7693// SetErrorMessage sets the ErrorMessage field's value.
7694func (s *BucketMetadata) SetErrorMessage(v string) *BucketMetadata {
7695	s.ErrorMessage = &v
7696	return s
7697}
7698
7699// SetJobDetails sets the JobDetails field's value.
7700func (s *BucketMetadata) SetJobDetails(v *JobDetails) *BucketMetadata {
7701	s.JobDetails = v
7702	return s
7703}
7704
7705// SetLastUpdated sets the LastUpdated field's value.
7706func (s *BucketMetadata) SetLastUpdated(v time.Time) *BucketMetadata {
7707	s.LastUpdated = &v
7708	return s
7709}
7710
7711// SetObjectCount sets the ObjectCount field's value.
7712func (s *BucketMetadata) SetObjectCount(v int64) *BucketMetadata {
7713	s.ObjectCount = &v
7714	return s
7715}
7716
7717// SetObjectCountByEncryptionType sets the ObjectCountByEncryptionType field's value.
7718func (s *BucketMetadata) SetObjectCountByEncryptionType(v *ObjectCountByEncryptionType) *BucketMetadata {
7719	s.ObjectCountByEncryptionType = v
7720	return s
7721}
7722
7723// SetPublicAccess sets the PublicAccess field's value.
7724func (s *BucketMetadata) SetPublicAccess(v *BucketPublicAccess) *BucketMetadata {
7725	s.PublicAccess = v
7726	return s
7727}
7728
7729// SetRegion sets the Region field's value.
7730func (s *BucketMetadata) SetRegion(v string) *BucketMetadata {
7731	s.Region = &v
7732	return s
7733}
7734
7735// SetReplicationDetails sets the ReplicationDetails field's value.
7736func (s *BucketMetadata) SetReplicationDetails(v *ReplicationDetails) *BucketMetadata {
7737	s.ReplicationDetails = v
7738	return s
7739}
7740
7741// SetServerSideEncryption sets the ServerSideEncryption field's value.
7742func (s *BucketMetadata) SetServerSideEncryption(v *BucketServerSideEncryption) *BucketMetadata {
7743	s.ServerSideEncryption = v
7744	return s
7745}
7746
7747// SetSharedAccess sets the SharedAccess field's value.
7748func (s *BucketMetadata) SetSharedAccess(v string) *BucketMetadata {
7749	s.SharedAccess = &v
7750	return s
7751}
7752
7753// SetSizeInBytes sets the SizeInBytes field's value.
7754func (s *BucketMetadata) SetSizeInBytes(v int64) *BucketMetadata {
7755	s.SizeInBytes = &v
7756	return s
7757}
7758
7759// SetSizeInBytesCompressed sets the SizeInBytesCompressed field's value.
7760func (s *BucketMetadata) SetSizeInBytesCompressed(v int64) *BucketMetadata {
7761	s.SizeInBytesCompressed = &v
7762	return s
7763}
7764
7765// SetTags sets the Tags field's value.
7766func (s *BucketMetadata) SetTags(v []*KeyValuePair) *BucketMetadata {
7767	s.Tags = v
7768	return s
7769}
7770
7771// SetUnclassifiableObjectCount sets the UnclassifiableObjectCount field's value.
7772func (s *BucketMetadata) SetUnclassifiableObjectCount(v *ObjectLevelStatistics) *BucketMetadata {
7773	s.UnclassifiableObjectCount = v
7774	return s
7775}
7776
7777// SetUnclassifiableObjectSizeInBytes sets the UnclassifiableObjectSizeInBytes field's value.
7778func (s *BucketMetadata) SetUnclassifiableObjectSizeInBytes(v *ObjectLevelStatistics) *BucketMetadata {
7779	s.UnclassifiableObjectSizeInBytes = v
7780	return s
7781}
7782
7783// SetVersioning sets the Versioning field's value.
7784func (s *BucketMetadata) SetVersioning(v bool) *BucketMetadata {
7785	s.Versioning = &v
7786	return s
7787}
7788
7789// Provides information about the account-level and bucket-level permissions
7790// settings for an S3 bucket.
7791type BucketPermissionConfiguration struct {
7792	_ struct{} `type:"structure"`
7793
7794	// Provides information about the account-level permissions settings that apply
7795	// to an S3 bucket.
7796	AccountLevelPermissions *AccountLevelPermissions `locationName:"accountLevelPermissions" type:"structure"`
7797
7798	// Provides information about the bucket-level permissions settings for an S3
7799	// bucket.
7800	BucketLevelPermissions *BucketLevelPermissions `locationName:"bucketLevelPermissions" type:"structure"`
7801}
7802
7803// String returns the string representation.
7804//
7805// API parameter values that are decorated as "sensitive" in the API will not
7806// be included in the string output. The member name will be present, but the
7807// value will be replaced with "sensitive".
7808func (s BucketPermissionConfiguration) String() string {
7809	return awsutil.Prettify(s)
7810}
7811
7812// GoString returns the string representation.
7813//
7814// API parameter values that are decorated as "sensitive" in the API will not
7815// be included in the string output. The member name will be present, but the
7816// value will be replaced with "sensitive".
7817func (s BucketPermissionConfiguration) GoString() string {
7818	return s.String()
7819}
7820
7821// SetAccountLevelPermissions sets the AccountLevelPermissions field's value.
7822func (s *BucketPermissionConfiguration) SetAccountLevelPermissions(v *AccountLevelPermissions) *BucketPermissionConfiguration {
7823	s.AccountLevelPermissions = v
7824	return s
7825}
7826
7827// SetBucketLevelPermissions sets the BucketLevelPermissions field's value.
7828func (s *BucketPermissionConfiguration) SetBucketLevelPermissions(v *BucketLevelPermissions) *BucketPermissionConfiguration {
7829	s.BucketLevelPermissions = v
7830	return s
7831}
7832
7833// Provides information about the permissions settings of the bucket policy
7834// for an S3 bucket.
7835type BucketPolicy struct {
7836	_ struct{} `type:"structure"`
7837
7838	AllowsPublicReadAccess *bool `locationName:"allowsPublicReadAccess" type:"boolean"`
7839
7840	AllowsPublicWriteAccess *bool `locationName:"allowsPublicWriteAccess" type:"boolean"`
7841}
7842
7843// String returns the string representation.
7844//
7845// API parameter values that are decorated as "sensitive" in the API will not
7846// be included in the string output. The member name will be present, but the
7847// value will be replaced with "sensitive".
7848func (s BucketPolicy) String() string {
7849	return awsutil.Prettify(s)
7850}
7851
7852// GoString returns the string representation.
7853//
7854// API parameter values that are decorated as "sensitive" in the API will not
7855// be included in the string output. The member name will be present, but the
7856// value will be replaced with "sensitive".
7857func (s BucketPolicy) GoString() string {
7858	return s.String()
7859}
7860
7861// SetAllowsPublicReadAccess sets the AllowsPublicReadAccess field's value.
7862func (s *BucketPolicy) SetAllowsPublicReadAccess(v bool) *BucketPolicy {
7863	s.AllowsPublicReadAccess = &v
7864	return s
7865}
7866
7867// SetAllowsPublicWriteAccess sets the AllowsPublicWriteAccess field's value.
7868func (s *BucketPolicy) SetAllowsPublicWriteAccess(v bool) *BucketPolicy {
7869	s.AllowsPublicWriteAccess = &v
7870	return s
7871}
7872
7873// Provides information about the permissions settings that determine whether
7874// an S3 bucket is publicly accessible.
7875type BucketPublicAccess struct {
7876	_ struct{} `type:"structure"`
7877
7878	EffectivePermission *string `locationName:"effectivePermission" type:"string" enum:"EffectivePermission"`
7879
7880	// Provides information about the account-level and bucket-level permissions
7881	// settings for an S3 bucket.
7882	PermissionConfiguration *BucketPermissionConfiguration `locationName:"permissionConfiguration" type:"structure"`
7883}
7884
7885// String returns the string representation.
7886//
7887// API parameter values that are decorated as "sensitive" in the API will not
7888// be included in the string output. The member name will be present, but the
7889// value will be replaced with "sensitive".
7890func (s BucketPublicAccess) String() string {
7891	return awsutil.Prettify(s)
7892}
7893
7894// GoString returns the string representation.
7895//
7896// API parameter values that are decorated as "sensitive" in the API will not
7897// be included in the string output. The member name will be present, but the
7898// value will be replaced with "sensitive".
7899func (s BucketPublicAccess) GoString() string {
7900	return s.String()
7901}
7902
7903// SetEffectivePermission sets the EffectivePermission field's value.
7904func (s *BucketPublicAccess) SetEffectivePermission(v string) *BucketPublicAccess {
7905	s.EffectivePermission = &v
7906	return s
7907}
7908
7909// SetPermissionConfiguration sets the PermissionConfiguration field's value.
7910func (s *BucketPublicAccess) SetPermissionConfiguration(v *BucketPermissionConfiguration) *BucketPublicAccess {
7911	s.PermissionConfiguration = v
7912	return s
7913}
7914
7915// Provides information about the default server-side encryption settings for
7916// an S3 bucket. For detailed information about these settings, see Setting
7917// default server-side encryption behavior for Amazon S3 buckets (https://docs.aws.amazon.com/AmazonS3/latest/userguide/bucket-encryption.html)
7918// in the Amazon Simple Storage Service User Guide.
7919type BucketServerSideEncryption struct {
7920	_ struct{} `type:"structure"`
7921
7922	KmsMasterKeyId *string `locationName:"kmsMasterKeyId" type:"string"`
7923
7924	Type *string `locationName:"type" type:"string" enum:"Type"`
7925}
7926
7927// String returns the string representation.
7928//
7929// API parameter values that are decorated as "sensitive" in the API will not
7930// be included in the string output. The member name will be present, but the
7931// value will be replaced with "sensitive".
7932func (s BucketServerSideEncryption) String() string {
7933	return awsutil.Prettify(s)
7934}
7935
7936// GoString returns the string representation.
7937//
7938// API parameter values that are decorated as "sensitive" in the API will not
7939// be included in the string output. The member name will be present, but the
7940// value will be replaced with "sensitive".
7941func (s BucketServerSideEncryption) GoString() string {
7942	return s.String()
7943}
7944
7945// SetKmsMasterKeyId sets the KmsMasterKeyId field's value.
7946func (s *BucketServerSideEncryption) SetKmsMasterKeyId(v string) *BucketServerSideEncryption {
7947	s.KmsMasterKeyId = &v
7948	return s
7949}
7950
7951// SetType sets the Type field's value.
7952func (s *BucketServerSideEncryption) SetType(v string) *BucketServerSideEncryption {
7953	s.Type = &v
7954	return s
7955}
7956
7957// Specifies criteria for sorting the results of a query for information about
7958// S3 buckets.
7959type BucketSortCriteria struct {
7960	_ struct{} `type:"structure"`
7961
7962	AttributeName *string `locationName:"attributeName" type:"string"`
7963
7964	OrderBy *string `locationName:"orderBy" type:"string" enum:"OrderBy"`
7965}
7966
7967// String returns the string representation.
7968//
7969// API parameter values that are decorated as "sensitive" in the API will not
7970// be included in the string output. The member name will be present, but the
7971// value will be replaced with "sensitive".
7972func (s BucketSortCriteria) String() string {
7973	return awsutil.Prettify(s)
7974}
7975
7976// GoString returns the string representation.
7977//
7978// API parameter values that are decorated as "sensitive" in the API will not
7979// be included in the string output. The member name will be present, but the
7980// value will be replaced with "sensitive".
7981func (s BucketSortCriteria) GoString() string {
7982	return s.String()
7983}
7984
7985// SetAttributeName sets the AttributeName field's value.
7986func (s *BucketSortCriteria) SetAttributeName(v string) *BucketSortCriteria {
7987	s.AttributeName = &v
7988	return s
7989}
7990
7991// SetOrderBy sets the OrderBy field's value.
7992func (s *BucketSortCriteria) SetOrderBy(v string) *BucketSortCriteria {
7993	s.OrderBy = &v
7994	return s
7995}
7996
7997// Specifies the location of an occurrence of sensitive data in a Microsoft
7998// Excel workbook, CSV file, or TSV file.
7999type Cell struct {
8000	_ struct{} `type:"structure"`
8001
8002	CellReference *string `locationName:"cellReference" type:"string"`
8003
8004	Column *int64 `locationName:"column" type:"long"`
8005
8006	ColumnName *string `locationName:"columnName" type:"string"`
8007
8008	Row *int64 `locationName:"row" type:"long"`
8009}
8010
8011// String returns the string representation.
8012//
8013// API parameter values that are decorated as "sensitive" in the API will not
8014// be included in the string output. The member name will be present, but the
8015// value will be replaced with "sensitive".
8016func (s Cell) String() string {
8017	return awsutil.Prettify(s)
8018}
8019
8020// GoString returns the string representation.
8021//
8022// API parameter values that are decorated as "sensitive" in the API will not
8023// be included in the string output. The member name will be present, but the
8024// value will be replaced with "sensitive".
8025func (s Cell) GoString() string {
8026	return s.String()
8027}
8028
8029// SetCellReference sets the CellReference field's value.
8030func (s *Cell) SetCellReference(v string) *Cell {
8031	s.CellReference = &v
8032	return s
8033}
8034
8035// SetColumn sets the Column field's value.
8036func (s *Cell) SetColumn(v int64) *Cell {
8037	s.Column = &v
8038	return s
8039}
8040
8041// SetColumnName sets the ColumnName field's value.
8042func (s *Cell) SetColumnName(v string) *Cell {
8043	s.ColumnName = &v
8044	return s
8045}
8046
8047// SetRow sets the Row field's value.
8048func (s *Cell) SetRow(v int64) *Cell {
8049	s.Row = &v
8050	return s
8051}
8052
8053// Provides information about a sensitive data finding, including the classification
8054// job that produced the finding.
8055type ClassificationDetails struct {
8056	_ struct{} `type:"structure"`
8057
8058	DetailedResultsLocation *string `locationName:"detailedResultsLocation" type:"string"`
8059
8060	JobArn *string `locationName:"jobArn" type:"string"`
8061
8062	JobId *string `locationName:"jobId" type:"string"`
8063
8064	// Provides the details of a sensitive data finding, including the types, number
8065	// of occurrences, and locations of the sensitive data that was detected.
8066	Result *ClassificationResult `locationName:"result" type:"structure"`
8067}
8068
8069// String returns the string representation.
8070//
8071// API parameter values that are decorated as "sensitive" in the API will not
8072// be included in the string output. The member name will be present, but the
8073// value will be replaced with "sensitive".
8074func (s ClassificationDetails) String() string {
8075	return awsutil.Prettify(s)
8076}
8077
8078// GoString returns the string representation.
8079//
8080// API parameter values that are decorated as "sensitive" in the API will not
8081// be included in the string output. The member name will be present, but the
8082// value will be replaced with "sensitive".
8083func (s ClassificationDetails) GoString() string {
8084	return s.String()
8085}
8086
8087// SetDetailedResultsLocation sets the DetailedResultsLocation field's value.
8088func (s *ClassificationDetails) SetDetailedResultsLocation(v string) *ClassificationDetails {
8089	s.DetailedResultsLocation = &v
8090	return s
8091}
8092
8093// SetJobArn sets the JobArn field's value.
8094func (s *ClassificationDetails) SetJobArn(v string) *ClassificationDetails {
8095	s.JobArn = &v
8096	return s
8097}
8098
8099// SetJobId sets the JobId field's value.
8100func (s *ClassificationDetails) SetJobId(v string) *ClassificationDetails {
8101	s.JobId = &v
8102	return s
8103}
8104
8105// SetResult sets the Result field's value.
8106func (s *ClassificationDetails) SetResult(v *ClassificationResult) *ClassificationDetails {
8107	s.Result = v
8108	return s
8109}
8110
8111// Specifies where to store data classification results, and the encryption
8112// settings to use when storing results in that location. Currently, you can
8113// store classification results only in an S3 bucket.
8114type ClassificationExportConfiguration struct {
8115	_ struct{} `type:"structure"`
8116
8117	// Specifies an S3 bucket to store data classification results in, and the encryption
8118	// settings to use when storing results in that bucket.
8119	S3Destination *S3Destination `locationName:"s3Destination" type:"structure"`
8120}
8121
8122// String returns the string representation.
8123//
8124// API parameter values that are decorated as "sensitive" in the API will not
8125// be included in the string output. The member name will be present, but the
8126// value will be replaced with "sensitive".
8127func (s ClassificationExportConfiguration) String() string {
8128	return awsutil.Prettify(s)
8129}
8130
8131// GoString returns the string representation.
8132//
8133// API parameter values that are decorated as "sensitive" in the API will not
8134// be included in the string output. The member name will be present, but the
8135// value will be replaced with "sensitive".
8136func (s ClassificationExportConfiguration) GoString() string {
8137	return s.String()
8138}
8139
8140// Validate inspects the fields of the type to determine if they are valid.
8141func (s *ClassificationExportConfiguration) Validate() error {
8142	invalidParams := request.ErrInvalidParams{Context: "ClassificationExportConfiguration"}
8143	if s.S3Destination != nil {
8144		if err := s.S3Destination.Validate(); err != nil {
8145			invalidParams.AddNested("S3Destination", err.(request.ErrInvalidParams))
8146		}
8147	}
8148
8149	if invalidParams.Len() > 0 {
8150		return invalidParams
8151	}
8152	return nil
8153}
8154
8155// SetS3Destination sets the S3Destination field's value.
8156func (s *ClassificationExportConfiguration) SetS3Destination(v *S3Destination) *ClassificationExportConfiguration {
8157	s.S3Destination = v
8158	return s
8159}
8160
8161// Provides the details of a sensitive data finding, including the types, number
8162// of occurrences, and locations of the sensitive data that was detected.
8163type ClassificationResult struct {
8164	_ struct{} `type:"structure"`
8165
8166	AdditionalOccurrences *bool `locationName:"additionalOccurrences" type:"boolean"`
8167
8168	// Provides information about custom data identifiers that produced a sensitive
8169	// data finding, and the number of occurrences of the data that they detected
8170	// for the finding.
8171	CustomDataIdentifiers *CustomDataIdentifiers `locationName:"customDataIdentifiers" type:"structure"`
8172
8173	MimeType *string `locationName:"mimeType" type:"string"`
8174
8175	// Provides information about the category and number of occurrences of sensitive
8176	// data that produced a finding.
8177	SensitiveData []*SensitiveDataItem `locationName:"sensitiveData" type:"list"`
8178
8179	SizeClassified *int64 `locationName:"sizeClassified" type:"long"`
8180
8181	// Provides information about the status of a sensitive data finding.
8182	Status *ClassificationResultStatus `locationName:"status" type:"structure"`
8183}
8184
8185// String returns the string representation.
8186//
8187// API parameter values that are decorated as "sensitive" in the API will not
8188// be included in the string output. The member name will be present, but the
8189// value will be replaced with "sensitive".
8190func (s ClassificationResult) String() string {
8191	return awsutil.Prettify(s)
8192}
8193
8194// GoString returns the string representation.
8195//
8196// API parameter values that are decorated as "sensitive" in the API will not
8197// be included in the string output. The member name will be present, but the
8198// value will be replaced with "sensitive".
8199func (s ClassificationResult) GoString() string {
8200	return s.String()
8201}
8202
8203// SetAdditionalOccurrences sets the AdditionalOccurrences field's value.
8204func (s *ClassificationResult) SetAdditionalOccurrences(v bool) *ClassificationResult {
8205	s.AdditionalOccurrences = &v
8206	return s
8207}
8208
8209// SetCustomDataIdentifiers sets the CustomDataIdentifiers field's value.
8210func (s *ClassificationResult) SetCustomDataIdentifiers(v *CustomDataIdentifiers) *ClassificationResult {
8211	s.CustomDataIdentifiers = v
8212	return s
8213}
8214
8215// SetMimeType sets the MimeType field's value.
8216func (s *ClassificationResult) SetMimeType(v string) *ClassificationResult {
8217	s.MimeType = &v
8218	return s
8219}
8220
8221// SetSensitiveData sets the SensitiveData field's value.
8222func (s *ClassificationResult) SetSensitiveData(v []*SensitiveDataItem) *ClassificationResult {
8223	s.SensitiveData = v
8224	return s
8225}
8226
8227// SetSizeClassified sets the SizeClassified field's value.
8228func (s *ClassificationResult) SetSizeClassified(v int64) *ClassificationResult {
8229	s.SizeClassified = &v
8230	return s
8231}
8232
8233// SetStatus sets the Status field's value.
8234func (s *ClassificationResult) SetStatus(v *ClassificationResultStatus) *ClassificationResult {
8235	s.Status = v
8236	return s
8237}
8238
8239// Provides information about the status of a sensitive data finding.
8240type ClassificationResultStatus struct {
8241	_ struct{} `type:"structure"`
8242
8243	Code *string `locationName:"code" type:"string"`
8244
8245	Reason *string `locationName:"reason" type:"string"`
8246}
8247
8248// String returns the string representation.
8249//
8250// API parameter values that are decorated as "sensitive" in the API will not
8251// be included in the string output. The member name will be present, but the
8252// value will be replaced with "sensitive".
8253func (s ClassificationResultStatus) String() string {
8254	return awsutil.Prettify(s)
8255}
8256
8257// GoString returns the string representation.
8258//
8259// API parameter values that are decorated as "sensitive" in the API will not
8260// be included in the string output. The member name will be present, but the
8261// value will be replaced with "sensitive".
8262func (s ClassificationResultStatus) GoString() string {
8263	return s.String()
8264}
8265
8266// SetCode sets the Code field's value.
8267func (s *ClassificationResultStatus) SetCode(v string) *ClassificationResultStatus {
8268	s.Code = &v
8269	return s
8270}
8271
8272// SetReason sets the Reason field's value.
8273func (s *ClassificationResultStatus) SetReason(v string) *ClassificationResultStatus {
8274	s.Reason = &v
8275	return s
8276}
8277
8278// Provides information about an error that occurred due to a versioning conflict
8279// for a specified resource.
8280type ConflictException struct {
8281	_            struct{}                  `type:"structure"`
8282	RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"`
8283
8284	Message_ *string `locationName:"message" type:"string"`
8285}
8286
8287// String returns the string representation.
8288//
8289// API parameter values that are decorated as "sensitive" in the API will not
8290// be included in the string output. The member name will be present, but the
8291// value will be replaced with "sensitive".
8292func (s ConflictException) String() string {
8293	return awsutil.Prettify(s)
8294}
8295
8296// GoString returns the string representation.
8297//
8298// API parameter values that are decorated as "sensitive" in the API will not
8299// be included in the string output. The member name will be present, but the
8300// value will be replaced with "sensitive".
8301func (s ConflictException) GoString() string {
8302	return s.String()
8303}
8304
8305func newErrorConflictException(v protocol.ResponseMetadata) error {
8306	return &ConflictException{
8307		RespMetadata: v,
8308	}
8309}
8310
8311// Code returns the exception type name.
8312func (s *ConflictException) Code() string {
8313	return "ConflictException"
8314}
8315
8316// Message returns the exception's message.
8317func (s *ConflictException) Message() string {
8318	if s.Message_ != nil {
8319		return *s.Message_
8320	}
8321	return ""
8322}
8323
8324// OrigErr always returns nil, satisfies awserr.Error interface.
8325func (s *ConflictException) OrigErr() error {
8326	return nil
8327}
8328
8329func (s *ConflictException) Error() string {
8330	return fmt.Sprintf("%s: %s", s.Code(), s.Message())
8331}
8332
8333// Status code returns the HTTP status code for the request's response error.
8334func (s *ConflictException) StatusCode() int {
8335	return s.RespMetadata.StatusCode
8336}
8337
8338// RequestID returns the service's response RequestID for request.
8339func (s *ConflictException) RequestID() string {
8340	return s.RespMetadata.RequestID
8341}
8342
8343// Specifies the scope, schedule, and other settings for a classification job.
8344// You can't change any settings for a classification job after you create it.
8345// This helps ensure that you have an immutable history of sensitive data findings
8346// and discovery results for data privacy and protection audits or investigations.
8347type CreateClassificationJobInput struct {
8348	_ struct{} `type:"structure"`
8349
8350	ClientToken *string `locationName:"clientToken" type:"string" idempotencyToken:"true"`
8351
8352	CustomDataIdentifierIds []*string `locationName:"customDataIdentifierIds" type:"list"`
8353
8354	Description *string `locationName:"description" type:"string"`
8355
8356	InitialRun *bool `locationName:"initialRun" type:"boolean"`
8357
8358	// The schedule for running a classification job. Valid values are:
8359	//
8360	// JobType is a required field
8361	JobType *string `locationName:"jobType" type:"string" required:"true" enum:"JobType"`
8362
8363	ManagedDataIdentifierIds []*string `locationName:"managedDataIdentifierIds" type:"list"`
8364
8365	// The selection type that determines which managed data identifiers a classification
8366	// job uses to analyze data. Valid values are:
8367	ManagedDataIdentifierSelector *string `locationName:"managedDataIdentifierSelector" type:"string" enum:"ManagedDataIdentifierSelector"`
8368
8369	// Name is a required field
8370	Name *string `locationName:"name" type:"string" required:"true"`
8371
8372	// Specifies which S3 buckets contain the objects that a classification job
8373	// analyzes, and the scope of that analysis. The bucket specification can be
8374	// static (bucketDefinitions) or dynamic (bucketCriteria). If it's static, the
8375	// job analyzes objects in the same predefined set of buckets each time the
8376	// job runs. If it's dynamic, the job analyzes objects in any buckets that match
8377	// the specified criteria each time the job starts to run.
8378	//
8379	// S3JobDefinition is a required field
8380	S3JobDefinition *S3JobDefinition `locationName:"s3JobDefinition" type:"structure" required:"true"`
8381
8382	SamplingPercentage *int64 `locationName:"samplingPercentage" type:"integer"`
8383
8384	// Specifies the recurrence pattern for running a classification job.
8385	ScheduleFrequency *JobScheduleFrequency `locationName:"scheduleFrequency" type:"structure"`
8386
8387	// A string-to-string map of key-value pairs that specifies the tags (keys and
8388	// values) for a classification job, custom data identifier, findings filter,
8389	// or member account.
8390	Tags map[string]*string `locationName:"tags" type:"map"`
8391}
8392
8393// String returns the string representation.
8394//
8395// API parameter values that are decorated as "sensitive" in the API will not
8396// be included in the string output. The member name will be present, but the
8397// value will be replaced with "sensitive".
8398func (s CreateClassificationJobInput) String() string {
8399	return awsutil.Prettify(s)
8400}
8401
8402// GoString returns the string representation.
8403//
8404// API parameter values that are decorated as "sensitive" in the API will not
8405// be included in the string output. The member name will be present, but the
8406// value will be replaced with "sensitive".
8407func (s CreateClassificationJobInput) GoString() string {
8408	return s.String()
8409}
8410
8411// Validate inspects the fields of the type to determine if they are valid.
8412func (s *CreateClassificationJobInput) Validate() error {
8413	invalidParams := request.ErrInvalidParams{Context: "CreateClassificationJobInput"}
8414	if s.JobType == nil {
8415		invalidParams.Add(request.NewErrParamRequired("JobType"))
8416	}
8417	if s.Name == nil {
8418		invalidParams.Add(request.NewErrParamRequired("Name"))
8419	}
8420	if s.S3JobDefinition == nil {
8421		invalidParams.Add(request.NewErrParamRequired("S3JobDefinition"))
8422	}
8423	if s.S3JobDefinition != nil {
8424		if err := s.S3JobDefinition.Validate(); err != nil {
8425			invalidParams.AddNested("S3JobDefinition", err.(request.ErrInvalidParams))
8426		}
8427	}
8428
8429	if invalidParams.Len() > 0 {
8430		return invalidParams
8431	}
8432	return nil
8433}
8434
8435// SetClientToken sets the ClientToken field's value.
8436func (s *CreateClassificationJobInput) SetClientToken(v string) *CreateClassificationJobInput {
8437	s.ClientToken = &v
8438	return s
8439}
8440
8441// SetCustomDataIdentifierIds sets the CustomDataIdentifierIds field's value.
8442func (s *CreateClassificationJobInput) SetCustomDataIdentifierIds(v []*string) *CreateClassificationJobInput {
8443	s.CustomDataIdentifierIds = v
8444	return s
8445}
8446
8447// SetDescription sets the Description field's value.
8448func (s *CreateClassificationJobInput) SetDescription(v string) *CreateClassificationJobInput {
8449	s.Description = &v
8450	return s
8451}
8452
8453// SetInitialRun sets the InitialRun field's value.
8454func (s *CreateClassificationJobInput) SetInitialRun(v bool) *CreateClassificationJobInput {
8455	s.InitialRun = &v
8456	return s
8457}
8458
8459// SetJobType sets the JobType field's value.
8460func (s *CreateClassificationJobInput) SetJobType(v string) *CreateClassificationJobInput {
8461	s.JobType = &v
8462	return s
8463}
8464
8465// SetManagedDataIdentifierIds sets the ManagedDataIdentifierIds field's value.
8466func (s *CreateClassificationJobInput) SetManagedDataIdentifierIds(v []*string) *CreateClassificationJobInput {
8467	s.ManagedDataIdentifierIds = v
8468	return s
8469}
8470
8471// SetManagedDataIdentifierSelector sets the ManagedDataIdentifierSelector field's value.
8472func (s *CreateClassificationJobInput) SetManagedDataIdentifierSelector(v string) *CreateClassificationJobInput {
8473	s.ManagedDataIdentifierSelector = &v
8474	return s
8475}
8476
8477// SetName sets the Name field's value.
8478func (s *CreateClassificationJobInput) SetName(v string) *CreateClassificationJobInput {
8479	s.Name = &v
8480	return s
8481}
8482
8483// SetS3JobDefinition sets the S3JobDefinition field's value.
8484func (s *CreateClassificationJobInput) SetS3JobDefinition(v *S3JobDefinition) *CreateClassificationJobInput {
8485	s.S3JobDefinition = v
8486	return s
8487}
8488
8489// SetSamplingPercentage sets the SamplingPercentage field's value.
8490func (s *CreateClassificationJobInput) SetSamplingPercentage(v int64) *CreateClassificationJobInput {
8491	s.SamplingPercentage = &v
8492	return s
8493}
8494
8495// SetScheduleFrequency sets the ScheduleFrequency field's value.
8496func (s *CreateClassificationJobInput) SetScheduleFrequency(v *JobScheduleFrequency) *CreateClassificationJobInput {
8497	s.ScheduleFrequency = v
8498	return s
8499}
8500
8501// SetTags sets the Tags field's value.
8502func (s *CreateClassificationJobInput) SetTags(v map[string]*string) *CreateClassificationJobInput {
8503	s.Tags = v
8504	return s
8505}
8506
8507// Provides information about a classification job that was created in response
8508// to a request.
8509type CreateClassificationJobOutput struct {
8510	_ struct{} `type:"structure"`
8511
8512	JobArn *string `locationName:"jobArn" type:"string"`
8513
8514	JobId *string `locationName:"jobId" type:"string"`
8515}
8516
8517// String returns the string representation.
8518//
8519// API parameter values that are decorated as "sensitive" in the API will not
8520// be included in the string output. The member name will be present, but the
8521// value will be replaced with "sensitive".
8522func (s CreateClassificationJobOutput) String() string {
8523	return awsutil.Prettify(s)
8524}
8525
8526// GoString returns the string representation.
8527//
8528// API parameter values that are decorated as "sensitive" in the API will not
8529// be included in the string output. The member name will be present, but the
8530// value will be replaced with "sensitive".
8531func (s CreateClassificationJobOutput) GoString() string {
8532	return s.String()
8533}
8534
8535// SetJobArn sets the JobArn field's value.
8536func (s *CreateClassificationJobOutput) SetJobArn(v string) *CreateClassificationJobOutput {
8537	s.JobArn = &v
8538	return s
8539}
8540
8541// SetJobId sets the JobId field's value.
8542func (s *CreateClassificationJobOutput) SetJobId(v string) *CreateClassificationJobOutput {
8543	s.JobId = &v
8544	return s
8545}
8546
8547// Specifies the detection criteria and other settings for a custom data identifier.
8548// You can't change a custom data identifier after you create it. This helps
8549// ensure that you have an immutable history of sensitive data findings and
8550// discovery results for data privacy and protection audits or investigations.
8551type CreateCustomDataIdentifierInput struct {
8552	_ struct{} `type:"structure"`
8553
8554	ClientToken *string `locationName:"clientToken" type:"string" idempotencyToken:"true"`
8555
8556	Description *string `locationName:"description" type:"string"`
8557
8558	IgnoreWords []*string `locationName:"ignoreWords" type:"list"`
8559
8560	Keywords []*string `locationName:"keywords" type:"list"`
8561
8562	MaximumMatchDistance *int64 `locationName:"maximumMatchDistance" type:"integer"`
8563
8564	Name *string `locationName:"name" type:"string"`
8565
8566	Regex *string `locationName:"regex" type:"string"`
8567
8568	// The severity to assign to findings that the custom data identifier produces,
8569	// based on the number of occurrences of text that matches the custom data identifier's
8570	// detection criteria. You can specify as many as three SeverityLevel objects
8571	// in this array, one for each severity: LOW, MEDIUM, or HIGH. If you specify
8572	// more than one, the occurrences thresholds must be in ascending order by severity,
8573	// moving from LOW to HIGH. For example, 1 for LOW, 50 for MEDIUM, and 100 for
8574	// HIGH. If an S3 object contains fewer occurrences than the lowest specified
8575	// threshold, Amazon Macie doesn't create a finding.
8576	//
8577	// If you don't specify any values for this array, Macie creates findings for
8578	// S3 objects that contain at least one occurrence of text that matches the
8579	// detection criteria, and Macie automatically assigns the MEDIUM severity to
8580	// those findings.
8581	SeverityLevels []*SeverityLevel `locationName:"severityLevels" type:"list"`
8582
8583	// A string-to-string map of key-value pairs that specifies the tags (keys and
8584	// values) for a classification job, custom data identifier, findings filter,
8585	// or member account.
8586	Tags map[string]*string `locationName:"tags" type:"map"`
8587}
8588
8589// String returns the string representation.
8590//
8591// API parameter values that are decorated as "sensitive" in the API will not
8592// be included in the string output. The member name will be present, but the
8593// value will be replaced with "sensitive".
8594func (s CreateCustomDataIdentifierInput) String() string {
8595	return awsutil.Prettify(s)
8596}
8597
8598// GoString returns the string representation.
8599//
8600// API parameter values that are decorated as "sensitive" in the API will not
8601// be included in the string output. The member name will be present, but the
8602// value will be replaced with "sensitive".
8603func (s CreateCustomDataIdentifierInput) GoString() string {
8604	return s.String()
8605}
8606
8607// Validate inspects the fields of the type to determine if they are valid.
8608func (s *CreateCustomDataIdentifierInput) Validate() error {
8609	invalidParams := request.ErrInvalidParams{Context: "CreateCustomDataIdentifierInput"}
8610	if s.SeverityLevels != nil {
8611		for i, v := range s.SeverityLevels {
8612			if v == nil {
8613				continue
8614			}
8615			if err := v.Validate(); err != nil {
8616				invalidParams.AddNested(fmt.Sprintf("%s[%v]", "SeverityLevels", i), err.(request.ErrInvalidParams))
8617			}
8618		}
8619	}
8620
8621	if invalidParams.Len() > 0 {
8622		return invalidParams
8623	}
8624	return nil
8625}
8626
8627// SetClientToken sets the ClientToken field's value.
8628func (s *CreateCustomDataIdentifierInput) SetClientToken(v string) *CreateCustomDataIdentifierInput {
8629	s.ClientToken = &v
8630	return s
8631}
8632
8633// SetDescription sets the Description field's value.
8634func (s *CreateCustomDataIdentifierInput) SetDescription(v string) *CreateCustomDataIdentifierInput {
8635	s.Description = &v
8636	return s
8637}
8638
8639// SetIgnoreWords sets the IgnoreWords field's value.
8640func (s *CreateCustomDataIdentifierInput) SetIgnoreWords(v []*string) *CreateCustomDataIdentifierInput {
8641	s.IgnoreWords = v
8642	return s
8643}
8644
8645// SetKeywords sets the Keywords field's value.
8646func (s *CreateCustomDataIdentifierInput) SetKeywords(v []*string) *CreateCustomDataIdentifierInput {
8647	s.Keywords = v
8648	return s
8649}
8650
8651// SetMaximumMatchDistance sets the MaximumMatchDistance field's value.
8652func (s *CreateCustomDataIdentifierInput) SetMaximumMatchDistance(v int64) *CreateCustomDataIdentifierInput {
8653	s.MaximumMatchDistance = &v
8654	return s
8655}
8656
8657// SetName sets the Name field's value.
8658func (s *CreateCustomDataIdentifierInput) SetName(v string) *CreateCustomDataIdentifierInput {
8659	s.Name = &v
8660	return s
8661}
8662
8663// SetRegex sets the Regex field's value.
8664func (s *CreateCustomDataIdentifierInput) SetRegex(v string) *CreateCustomDataIdentifierInput {
8665	s.Regex = &v
8666	return s
8667}
8668
8669// SetSeverityLevels sets the SeverityLevels field's value.
8670func (s *CreateCustomDataIdentifierInput) SetSeverityLevels(v []*SeverityLevel) *CreateCustomDataIdentifierInput {
8671	s.SeverityLevels = v
8672	return s
8673}
8674
8675// SetTags sets the Tags field's value.
8676func (s *CreateCustomDataIdentifierInput) SetTags(v map[string]*string) *CreateCustomDataIdentifierInput {
8677	s.Tags = v
8678	return s
8679}
8680
8681// Provides information about a custom data identifier that was created in response
8682// to a request.
8683type CreateCustomDataIdentifierOutput struct {
8684	_ struct{} `type:"structure"`
8685
8686	CustomDataIdentifierId *string `locationName:"customDataIdentifierId" type:"string"`
8687}
8688
8689// String returns the string representation.
8690//
8691// API parameter values that are decorated as "sensitive" in the API will not
8692// be included in the string output. The member name will be present, but the
8693// value will be replaced with "sensitive".
8694func (s CreateCustomDataIdentifierOutput) String() string {
8695	return awsutil.Prettify(s)
8696}
8697
8698// GoString returns the string representation.
8699//
8700// API parameter values that are decorated as "sensitive" in the API will not
8701// be included in the string output. The member name will be present, but the
8702// value will be replaced with "sensitive".
8703func (s CreateCustomDataIdentifierOutput) GoString() string {
8704	return s.String()
8705}
8706
8707// SetCustomDataIdentifierId sets the CustomDataIdentifierId field's value.
8708func (s *CreateCustomDataIdentifierOutput) SetCustomDataIdentifierId(v string) *CreateCustomDataIdentifierOutput {
8709	s.CustomDataIdentifierId = &v
8710	return s
8711}
8712
8713// Specifies the criteria and other settings for a new findings filter.
8714type CreateFindingsFilterInput struct {
8715	_ struct{} `type:"structure"`
8716
8717	// The action to perform on findings that meet the filter criteria. To suppress
8718	// (automatically archive) findings that meet the criteria, set this value to
8719	// ARCHIVE. Valid values are:
8720	//
8721	// Action is a required field
8722	Action *string `locationName:"action" type:"string" required:"true" enum:"FindingsFilterAction"`
8723
8724	ClientToken *string `locationName:"clientToken" type:"string" idempotencyToken:"true"`
8725
8726	Description *string `locationName:"description" type:"string"`
8727
8728	// Specifies, as a map, one or more property-based conditions that filter the
8729	// results of a query for findings.
8730	//
8731	// FindingCriteria is a required field
8732	FindingCriteria *FindingCriteria `locationName:"findingCriteria" type:"structure" required:"true"`
8733
8734	// Name is a required field
8735	Name *string `locationName:"name" type:"string" required:"true"`
8736
8737	Position *int64 `locationName:"position" type:"integer"`
8738
8739	// A string-to-string map of key-value pairs that specifies the tags (keys and
8740	// values) for a classification job, custom data identifier, findings filter,
8741	// or member account.
8742	Tags map[string]*string `locationName:"tags" type:"map"`
8743}
8744
8745// String returns the string representation.
8746//
8747// API parameter values that are decorated as "sensitive" in the API will not
8748// be included in the string output. The member name will be present, but the
8749// value will be replaced with "sensitive".
8750func (s CreateFindingsFilterInput) String() string {
8751	return awsutil.Prettify(s)
8752}
8753
8754// GoString returns the string representation.
8755//
8756// API parameter values that are decorated as "sensitive" in the API will not
8757// be included in the string output. The member name will be present, but the
8758// value will be replaced with "sensitive".
8759func (s CreateFindingsFilterInput) GoString() string {
8760	return s.String()
8761}
8762
8763// Validate inspects the fields of the type to determine if they are valid.
8764func (s *CreateFindingsFilterInput) Validate() error {
8765	invalidParams := request.ErrInvalidParams{Context: "CreateFindingsFilterInput"}
8766	if s.Action == nil {
8767		invalidParams.Add(request.NewErrParamRequired("Action"))
8768	}
8769	if s.FindingCriteria == nil {
8770		invalidParams.Add(request.NewErrParamRequired("FindingCriteria"))
8771	}
8772	if s.Name == nil {
8773		invalidParams.Add(request.NewErrParamRequired("Name"))
8774	}
8775
8776	if invalidParams.Len() > 0 {
8777		return invalidParams
8778	}
8779	return nil
8780}
8781
8782// SetAction sets the Action field's value.
8783func (s *CreateFindingsFilterInput) SetAction(v string) *CreateFindingsFilterInput {
8784	s.Action = &v
8785	return s
8786}
8787
8788// SetClientToken sets the ClientToken field's value.
8789func (s *CreateFindingsFilterInput) SetClientToken(v string) *CreateFindingsFilterInput {
8790	s.ClientToken = &v
8791	return s
8792}
8793
8794// SetDescription sets the Description field's value.
8795func (s *CreateFindingsFilterInput) SetDescription(v string) *CreateFindingsFilterInput {
8796	s.Description = &v
8797	return s
8798}
8799
8800// SetFindingCriteria sets the FindingCriteria field's value.
8801func (s *CreateFindingsFilterInput) SetFindingCriteria(v *FindingCriteria) *CreateFindingsFilterInput {
8802	s.FindingCriteria = v
8803	return s
8804}
8805
8806// SetName sets the Name field's value.
8807func (s *CreateFindingsFilterInput) SetName(v string) *CreateFindingsFilterInput {
8808	s.Name = &v
8809	return s
8810}
8811
8812// SetPosition sets the Position field's value.
8813func (s *CreateFindingsFilterInput) SetPosition(v int64) *CreateFindingsFilterInput {
8814	s.Position = &v
8815	return s
8816}
8817
8818// SetTags sets the Tags field's value.
8819func (s *CreateFindingsFilterInput) SetTags(v map[string]*string) *CreateFindingsFilterInput {
8820	s.Tags = v
8821	return s
8822}
8823
8824// Provides information about a findings filter that was created in response
8825// to a request.
8826type CreateFindingsFilterOutput struct {
8827	_ struct{} `type:"structure"`
8828
8829	Arn *string `locationName:"arn" type:"string"`
8830
8831	Id *string `locationName:"id" type:"string"`
8832}
8833
8834// String returns the string representation.
8835//
8836// API parameter values that are decorated as "sensitive" in the API will not
8837// be included in the string output. The member name will be present, but the
8838// value will be replaced with "sensitive".
8839func (s CreateFindingsFilterOutput) String() string {
8840	return awsutil.Prettify(s)
8841}
8842
8843// GoString returns the string representation.
8844//
8845// API parameter values that are decorated as "sensitive" in the API will not
8846// be included in the string output. The member name will be present, but the
8847// value will be replaced with "sensitive".
8848func (s CreateFindingsFilterOutput) GoString() string {
8849	return s.String()
8850}
8851
8852// SetArn sets the Arn field's value.
8853func (s *CreateFindingsFilterOutput) SetArn(v string) *CreateFindingsFilterOutput {
8854	s.Arn = &v
8855	return s
8856}
8857
8858// SetId sets the Id field's value.
8859func (s *CreateFindingsFilterOutput) SetId(v string) *CreateFindingsFilterOutput {
8860	s.Id = &v
8861	return s
8862}
8863
8864// Specifies the settings for an Amazon Macie membership invitation.
8865type CreateInvitationsInput struct {
8866	_ struct{} `type:"structure"`
8867
8868	// AccountIds is a required field
8869	AccountIds []*string `locationName:"accountIds" type:"list" required:"true"`
8870
8871	DisableEmailNotification *bool `locationName:"disableEmailNotification" type:"boolean"`
8872
8873	Message *string `locationName:"message" type:"string"`
8874}
8875
8876// String returns the string representation.
8877//
8878// API parameter values that are decorated as "sensitive" in the API will not
8879// be included in the string output. The member name will be present, but the
8880// value will be replaced with "sensitive".
8881func (s CreateInvitationsInput) String() string {
8882	return awsutil.Prettify(s)
8883}
8884
8885// GoString returns the string representation.
8886//
8887// API parameter values that are decorated as "sensitive" in the API will not
8888// be included in the string output. The member name will be present, but the
8889// value will be replaced with "sensitive".
8890func (s CreateInvitationsInput) GoString() string {
8891	return s.String()
8892}
8893
8894// Validate inspects the fields of the type to determine if they are valid.
8895func (s *CreateInvitationsInput) Validate() error {
8896	invalidParams := request.ErrInvalidParams{Context: "CreateInvitationsInput"}
8897	if s.AccountIds == nil {
8898		invalidParams.Add(request.NewErrParamRequired("AccountIds"))
8899	}
8900
8901	if invalidParams.Len() > 0 {
8902		return invalidParams
8903	}
8904	return nil
8905}
8906
8907// SetAccountIds sets the AccountIds field's value.
8908func (s *CreateInvitationsInput) SetAccountIds(v []*string) *CreateInvitationsInput {
8909	s.AccountIds = v
8910	return s
8911}
8912
8913// SetDisableEmailNotification sets the DisableEmailNotification field's value.
8914func (s *CreateInvitationsInput) SetDisableEmailNotification(v bool) *CreateInvitationsInput {
8915	s.DisableEmailNotification = &v
8916	return s
8917}
8918
8919// SetMessage sets the Message field's value.
8920func (s *CreateInvitationsInput) SetMessage(v string) *CreateInvitationsInput {
8921	s.Message = &v
8922	return s
8923}
8924
8925// Provides information about an unprocessed request to send an Amazon Macie
8926// membership invitation to a specific account.
8927type CreateInvitationsOutput struct {
8928	_ struct{} `type:"structure"`
8929
8930	UnprocessedAccounts []*UnprocessedAccount `locationName:"unprocessedAccounts" type:"list"`
8931}
8932
8933// String returns the string representation.
8934//
8935// API parameter values that are decorated as "sensitive" in the API will not
8936// be included in the string output. The member name will be present, but the
8937// value will be replaced with "sensitive".
8938func (s CreateInvitationsOutput) String() string {
8939	return awsutil.Prettify(s)
8940}
8941
8942// GoString returns the string representation.
8943//
8944// API parameter values that are decorated as "sensitive" in the API will not
8945// be included in the string output. The member name will be present, but the
8946// value will be replaced with "sensitive".
8947func (s CreateInvitationsOutput) GoString() string {
8948	return s.String()
8949}
8950
8951// SetUnprocessedAccounts sets the UnprocessedAccounts field's value.
8952func (s *CreateInvitationsOutput) SetUnprocessedAccounts(v []*UnprocessedAccount) *CreateInvitationsOutput {
8953	s.UnprocessedAccounts = v
8954	return s
8955}
8956
8957// Specifies an Amazon Web Services account to associate with an Amazon Macie
8958// administrator account.
8959type CreateMemberInput struct {
8960	_ struct{} `type:"structure"`
8961
8962	// Specifies the details of an account to associate with an Amazon Macie administrator
8963	// account.
8964	//
8965	// Account is a required field
8966	Account *AccountDetail `locationName:"account" type:"structure" required:"true"`
8967
8968	// A string-to-string map of key-value pairs that specifies the tags (keys and
8969	// values) for a classification job, custom data identifier, findings filter,
8970	// or member account.
8971	Tags map[string]*string `locationName:"tags" type:"map"`
8972}
8973
8974// String returns the string representation.
8975//
8976// API parameter values that are decorated as "sensitive" in the API will not
8977// be included in the string output. The member name will be present, but the
8978// value will be replaced with "sensitive".
8979func (s CreateMemberInput) String() string {
8980	return awsutil.Prettify(s)
8981}
8982
8983// GoString returns the string representation.
8984//
8985// API parameter values that are decorated as "sensitive" in the API will not
8986// be included in the string output. The member name will be present, but the
8987// value will be replaced with "sensitive".
8988func (s CreateMemberInput) GoString() string {
8989	return s.String()
8990}
8991
8992// Validate inspects the fields of the type to determine if they are valid.
8993func (s *CreateMemberInput) Validate() error {
8994	invalidParams := request.ErrInvalidParams{Context: "CreateMemberInput"}
8995	if s.Account == nil {
8996		invalidParams.Add(request.NewErrParamRequired("Account"))
8997	}
8998	if s.Account != nil {
8999		if err := s.Account.Validate(); err != nil {
9000			invalidParams.AddNested("Account", err.(request.ErrInvalidParams))
9001		}
9002	}
9003
9004	if invalidParams.Len() > 0 {
9005		return invalidParams
9006	}
9007	return nil
9008}
9009
9010// SetAccount sets the Account field's value.
9011func (s *CreateMemberInput) SetAccount(v *AccountDetail) *CreateMemberInput {
9012	s.Account = v
9013	return s
9014}
9015
9016// SetTags sets the Tags field's value.
9017func (s *CreateMemberInput) SetTags(v map[string]*string) *CreateMemberInput {
9018	s.Tags = v
9019	return s
9020}
9021
9022// Provides information about a request to associate an account with an Amazon
9023// Macie administrator account.
9024type CreateMemberOutput struct {
9025	_ struct{} `type:"structure"`
9026
9027	Arn *string `locationName:"arn" type:"string"`
9028}
9029
9030// String returns the string representation.
9031//
9032// API parameter values that are decorated as "sensitive" in the API will not
9033// be included in the string output. The member name will be present, but the
9034// value will be replaced with "sensitive".
9035func (s CreateMemberOutput) String() string {
9036	return awsutil.Prettify(s)
9037}
9038
9039// GoString returns the string representation.
9040//
9041// API parameter values that are decorated as "sensitive" in the API will not
9042// be included in the string output. The member name will be present, but the
9043// value will be replaced with "sensitive".
9044func (s CreateMemberOutput) GoString() string {
9045	return s.String()
9046}
9047
9048// SetArn sets the Arn field's value.
9049func (s *CreateMemberOutput) SetArn(v string) *CreateMemberOutput {
9050	s.Arn = &v
9051	return s
9052}
9053
9054// Specifies the types of sample findings to create.
9055type CreateSampleFindingsInput struct {
9056	_ struct{} `type:"structure"`
9057
9058	FindingTypes []*string `locationName:"findingTypes" type:"list"`
9059}
9060
9061// String returns the string representation.
9062//
9063// API parameter values that are decorated as "sensitive" in the API will not
9064// be included in the string output. The member name will be present, but the
9065// value will be replaced with "sensitive".
9066func (s CreateSampleFindingsInput) String() string {
9067	return awsutil.Prettify(s)
9068}
9069
9070// GoString returns the string representation.
9071//
9072// API parameter values that are decorated as "sensitive" in the API will not
9073// be included in the string output. The member name will be present, but the
9074// value will be replaced with "sensitive".
9075func (s CreateSampleFindingsInput) GoString() string {
9076	return s.String()
9077}
9078
9079// SetFindingTypes sets the FindingTypes field's value.
9080func (s *CreateSampleFindingsInput) SetFindingTypes(v []*string) *CreateSampleFindingsInput {
9081	s.FindingTypes = v
9082	return s
9083}
9084
9085type CreateSampleFindingsOutput struct {
9086	_ struct{} `type:"structure"`
9087}
9088
9089// String returns the string representation.
9090//
9091// API parameter values that are decorated as "sensitive" in the API will not
9092// be included in the string output. The member name will be present, but the
9093// value will be replaced with "sensitive".
9094func (s CreateSampleFindingsOutput) String() string {
9095	return awsutil.Prettify(s)
9096}
9097
9098// GoString returns the string representation.
9099//
9100// API parameter values that are decorated as "sensitive" in the API will not
9101// be included in the string output. The member name will be present, but the
9102// value will be replaced with "sensitive".
9103func (s CreateSampleFindingsOutput) GoString() string {
9104	return s.String()
9105}
9106
9107// Specifies one or more property- and tag-based conditions that define criteria
9108// for including or excluding S3 buckets from a classification job.
9109type CriteriaBlockForJob struct {
9110	_ struct{} `type:"structure"`
9111
9112	And []*CriteriaForJob `locationName:"and" type:"list"`
9113}
9114
9115// String returns the string representation.
9116//
9117// API parameter values that are decorated as "sensitive" in the API will not
9118// be included in the string output. The member name will be present, but the
9119// value will be replaced with "sensitive".
9120func (s CriteriaBlockForJob) String() string {
9121	return awsutil.Prettify(s)
9122}
9123
9124// GoString returns the string representation.
9125//
9126// API parameter values that are decorated as "sensitive" in the API will not
9127// be included in the string output. The member name will be present, but the
9128// value will be replaced with "sensitive".
9129func (s CriteriaBlockForJob) GoString() string {
9130	return s.String()
9131}
9132
9133// SetAnd sets the And field's value.
9134func (s *CriteriaBlockForJob) SetAnd(v []*CriteriaForJob) *CriteriaBlockForJob {
9135	s.And = v
9136	return s
9137}
9138
9139// Specifies a property- or tag-based condition that defines criteria for including
9140// or excluding S3 buckets from a classification job.
9141type CriteriaForJob struct {
9142	_ struct{} `type:"structure"`
9143
9144	// Specifies a property-based condition that determines whether an S3 bucket
9145	// is included or excluded from a classification job.
9146	SimpleCriterion *SimpleCriterionForJob `locationName:"simpleCriterion" type:"structure"`
9147
9148	// Specifies a tag-based condition that determines whether an S3 bucket is included
9149	// or excluded from a classification job.
9150	TagCriterion *TagCriterionForJob `locationName:"tagCriterion" type:"structure"`
9151}
9152
9153// String returns the string representation.
9154//
9155// API parameter values that are decorated as "sensitive" in the API will not
9156// be included in the string output. The member name will be present, but the
9157// value will be replaced with "sensitive".
9158func (s CriteriaForJob) String() string {
9159	return awsutil.Prettify(s)
9160}
9161
9162// GoString returns the string representation.
9163//
9164// API parameter values that are decorated as "sensitive" in the API will not
9165// be included in the string output. The member name will be present, but the
9166// value will be replaced with "sensitive".
9167func (s CriteriaForJob) GoString() string {
9168	return s.String()
9169}
9170
9171// SetSimpleCriterion sets the SimpleCriterion field's value.
9172func (s *CriteriaForJob) SetSimpleCriterion(v *SimpleCriterionForJob) *CriteriaForJob {
9173	s.SimpleCriterion = v
9174	return s
9175}
9176
9177// SetTagCriterion sets the TagCriterion field's value.
9178func (s *CriteriaForJob) SetTagCriterion(v *TagCriterionForJob) *CriteriaForJob {
9179	s.TagCriterion = v
9180	return s
9181}
9182
9183// Specifies the operator to use in a property-based condition that filters
9184// the results of a query for findings. For detailed information and examples
9185// of each operator, see Fundamentals of filtering findings (https://docs.aws.amazon.com/macie/latest/user/findings-filter-basics.html)
9186// in the Amazon Macie User Guide.
9187type CriterionAdditionalProperties struct {
9188	_ struct{} `type:"structure"`
9189
9190	Eq []*string `locationName:"eq" type:"list"`
9191
9192	EqExactMatch []*string `locationName:"eqExactMatch" type:"list"`
9193
9194	Gt *int64 `locationName:"gt" type:"long"`
9195
9196	Gte *int64 `locationName:"gte" type:"long"`
9197
9198	Lt *int64 `locationName:"lt" type:"long"`
9199
9200	Lte *int64 `locationName:"lte" type:"long"`
9201
9202	Neq []*string `locationName:"neq" type:"list"`
9203}
9204
9205// String returns the string representation.
9206//
9207// API parameter values that are decorated as "sensitive" in the API will not
9208// be included in the string output. The member name will be present, but the
9209// value will be replaced with "sensitive".
9210func (s CriterionAdditionalProperties) String() string {
9211	return awsutil.Prettify(s)
9212}
9213
9214// GoString returns the string representation.
9215//
9216// API parameter values that are decorated as "sensitive" in the API will not
9217// be included in the string output. The member name will be present, but the
9218// value will be replaced with "sensitive".
9219func (s CriterionAdditionalProperties) GoString() string {
9220	return s.String()
9221}
9222
9223// SetEq sets the Eq field's value.
9224func (s *CriterionAdditionalProperties) SetEq(v []*string) *CriterionAdditionalProperties {
9225	s.Eq = v
9226	return s
9227}
9228
9229// SetEqExactMatch sets the EqExactMatch field's value.
9230func (s *CriterionAdditionalProperties) SetEqExactMatch(v []*string) *CriterionAdditionalProperties {
9231	s.EqExactMatch = v
9232	return s
9233}
9234
9235// SetGt sets the Gt field's value.
9236func (s *CriterionAdditionalProperties) SetGt(v int64) *CriterionAdditionalProperties {
9237	s.Gt = &v
9238	return s
9239}
9240
9241// SetGte sets the Gte field's value.
9242func (s *CriterionAdditionalProperties) SetGte(v int64) *CriterionAdditionalProperties {
9243	s.Gte = &v
9244	return s
9245}
9246
9247// SetLt sets the Lt field's value.
9248func (s *CriterionAdditionalProperties) SetLt(v int64) *CriterionAdditionalProperties {
9249	s.Lt = &v
9250	return s
9251}
9252
9253// SetLte sets the Lte field's value.
9254func (s *CriterionAdditionalProperties) SetLte(v int64) *CriterionAdditionalProperties {
9255	s.Lte = &v
9256	return s
9257}
9258
9259// SetNeq sets the Neq field's value.
9260func (s *CriterionAdditionalProperties) SetNeq(v []*string) *CriterionAdditionalProperties {
9261	s.Neq = v
9262	return s
9263}
9264
9265// Provides information about a custom data identifier.
9266type CustomDataIdentifierSummary struct {
9267	_ struct{} `type:"structure"`
9268
9269	Arn *string `locationName:"arn" type:"string"`
9270
9271	CreatedAt *time.Time `locationName:"createdAt" type:"timestamp" timestampFormat:"iso8601"`
9272
9273	Description *string `locationName:"description" type:"string"`
9274
9275	Id *string `locationName:"id" type:"string"`
9276
9277	Name *string `locationName:"name" type:"string"`
9278}
9279
9280// String returns the string representation.
9281//
9282// API parameter values that are decorated as "sensitive" in the API will not
9283// be included in the string output. The member name will be present, but the
9284// value will be replaced with "sensitive".
9285func (s CustomDataIdentifierSummary) String() string {
9286	return awsutil.Prettify(s)
9287}
9288
9289// GoString returns the string representation.
9290//
9291// API parameter values that are decorated as "sensitive" in the API will not
9292// be included in the string output. The member name will be present, but the
9293// value will be replaced with "sensitive".
9294func (s CustomDataIdentifierSummary) GoString() string {
9295	return s.String()
9296}
9297
9298// SetArn sets the Arn field's value.
9299func (s *CustomDataIdentifierSummary) SetArn(v string) *CustomDataIdentifierSummary {
9300	s.Arn = &v
9301	return s
9302}
9303
9304// SetCreatedAt sets the CreatedAt field's value.
9305func (s *CustomDataIdentifierSummary) SetCreatedAt(v time.Time) *CustomDataIdentifierSummary {
9306	s.CreatedAt = &v
9307	return s
9308}
9309
9310// SetDescription sets the Description field's value.
9311func (s *CustomDataIdentifierSummary) SetDescription(v string) *CustomDataIdentifierSummary {
9312	s.Description = &v
9313	return s
9314}
9315
9316// SetId sets the Id field's value.
9317func (s *CustomDataIdentifierSummary) SetId(v string) *CustomDataIdentifierSummary {
9318	s.Id = &v
9319	return s
9320}
9321
9322// SetName sets the Name field's value.
9323func (s *CustomDataIdentifierSummary) SetName(v string) *CustomDataIdentifierSummary {
9324	s.Name = &v
9325	return s
9326}
9327
9328// Provides information about custom data identifiers that produced a sensitive
9329// data finding, and the number of occurrences of the data that they detected
9330// for the finding.
9331type CustomDataIdentifiers struct {
9332	_ struct{} `type:"structure"`
9333
9334	// Provides information about custom data identifiers that produced a sensitive
9335	// data finding, and the number of occurrences of the data that each identifier
9336	// detected.
9337	Detections []*CustomDetection `locationName:"detections" type:"list"`
9338
9339	TotalCount *int64 `locationName:"totalCount" type:"long"`
9340}
9341
9342// String returns the string representation.
9343//
9344// API parameter values that are decorated as "sensitive" in the API will not
9345// be included in the string output. The member name will be present, but the
9346// value will be replaced with "sensitive".
9347func (s CustomDataIdentifiers) String() string {
9348	return awsutil.Prettify(s)
9349}
9350
9351// GoString returns the string representation.
9352//
9353// API parameter values that are decorated as "sensitive" in the API will not
9354// be included in the string output. The member name will be present, but the
9355// value will be replaced with "sensitive".
9356func (s CustomDataIdentifiers) GoString() string {
9357	return s.String()
9358}
9359
9360// SetDetections sets the Detections field's value.
9361func (s *CustomDataIdentifiers) SetDetections(v []*CustomDetection) *CustomDataIdentifiers {
9362	s.Detections = v
9363	return s
9364}
9365
9366// SetTotalCount sets the TotalCount field's value.
9367func (s *CustomDataIdentifiers) SetTotalCount(v int64) *CustomDataIdentifiers {
9368	s.TotalCount = &v
9369	return s
9370}
9371
9372// Provides information about a custom data identifier that produced a sensitive
9373// data finding, and the sensitive data that it detected for the finding.
9374type CustomDetection struct {
9375	_ struct{} `type:"structure"`
9376
9377	Arn *string `locationName:"arn" type:"string"`
9378
9379	Count *int64 `locationName:"count" type:"long"`
9380
9381	Name *string `locationName:"name" type:"string"`
9382
9383	// Specifies the location of 1-15 occurrences of sensitive data that was detected
9384	// by a managed data identifier or a custom data identifier and produced a sensitive
9385	// data finding.
9386	Occurrences *Occurrences `locationName:"occurrences" type:"structure"`
9387}
9388
9389// String returns the string representation.
9390//
9391// API parameter values that are decorated as "sensitive" in the API will not
9392// be included in the string output. The member name will be present, but the
9393// value will be replaced with "sensitive".
9394func (s CustomDetection) String() string {
9395	return awsutil.Prettify(s)
9396}
9397
9398// GoString returns the string representation.
9399//
9400// API parameter values that are decorated as "sensitive" in the API will not
9401// be included in the string output. The member name will be present, but the
9402// value will be replaced with "sensitive".
9403func (s CustomDetection) GoString() string {
9404	return s.String()
9405}
9406
9407// SetArn sets the Arn field's value.
9408func (s *CustomDetection) SetArn(v string) *CustomDetection {
9409	s.Arn = &v
9410	return s
9411}
9412
9413// SetCount sets the Count field's value.
9414func (s *CustomDetection) SetCount(v int64) *CustomDetection {
9415	s.Count = &v
9416	return s
9417}
9418
9419// SetName sets the Name field's value.
9420func (s *CustomDetection) SetName(v string) *CustomDetection {
9421	s.Name = &v
9422	return s
9423}
9424
9425// SetOccurrences sets the Occurrences field's value.
9426func (s *CustomDetection) SetOccurrences(v *Occurrences) *CustomDetection {
9427	s.Occurrences = v
9428	return s
9429}
9430
9431// Specifies that a classification job runs once a day, every day. This is an
9432// empty object.
9433type DailySchedule struct {
9434	_ struct{} `type:"structure"`
9435}
9436
9437// String returns the string representation.
9438//
9439// API parameter values that are decorated as "sensitive" in the API will not
9440// be included in the string output. The member name will be present, but the
9441// value will be replaced with "sensitive".
9442func (s DailySchedule) String() string {
9443	return awsutil.Prettify(s)
9444}
9445
9446// GoString returns the string representation.
9447//
9448// API parameter values that are decorated as "sensitive" in the API will not
9449// be included in the string output. The member name will be present, but the
9450// value will be replaced with "sensitive".
9451func (s DailySchedule) GoString() string {
9452	return s.String()
9453}
9454
9455// Specifies one or more accounts that sent Amazon Macie membership invitations
9456// to decline.
9457type DeclineInvitationsInput struct {
9458	_ struct{} `type:"structure"`
9459
9460	// AccountIds is a required field
9461	AccountIds []*string `locationName:"accountIds" type:"list" required:"true"`
9462}
9463
9464// String returns the string representation.
9465//
9466// API parameter values that are decorated as "sensitive" in the API will not
9467// be included in the string output. The member name will be present, but the
9468// value will be replaced with "sensitive".
9469func (s DeclineInvitationsInput) String() string {
9470	return awsutil.Prettify(s)
9471}
9472
9473// GoString returns the string representation.
9474//
9475// API parameter values that are decorated as "sensitive" in the API will not
9476// be included in the string output. The member name will be present, but the
9477// value will be replaced with "sensitive".
9478func (s DeclineInvitationsInput) GoString() string {
9479	return s.String()
9480}
9481
9482// Validate inspects the fields of the type to determine if they are valid.
9483func (s *DeclineInvitationsInput) Validate() error {
9484	invalidParams := request.ErrInvalidParams{Context: "DeclineInvitationsInput"}
9485	if s.AccountIds == nil {
9486		invalidParams.Add(request.NewErrParamRequired("AccountIds"))
9487	}
9488
9489	if invalidParams.Len() > 0 {
9490		return invalidParams
9491	}
9492	return nil
9493}
9494
9495// SetAccountIds sets the AccountIds field's value.
9496func (s *DeclineInvitationsInput) SetAccountIds(v []*string) *DeclineInvitationsInput {
9497	s.AccountIds = v
9498	return s
9499}
9500
9501// Provides information about unprocessed requests to decline Amazon Macie membership
9502// invitations that were received from specific accounts.
9503type DeclineInvitationsOutput struct {
9504	_ struct{} `type:"structure"`
9505
9506	UnprocessedAccounts []*UnprocessedAccount `locationName:"unprocessedAccounts" type:"list"`
9507}
9508
9509// String returns the string representation.
9510//
9511// API parameter values that are decorated as "sensitive" in the API will not
9512// be included in the string output. The member name will be present, but the
9513// value will be replaced with "sensitive".
9514func (s DeclineInvitationsOutput) String() string {
9515	return awsutil.Prettify(s)
9516}
9517
9518// GoString returns the string representation.
9519//
9520// API parameter values that are decorated as "sensitive" in the API will not
9521// be included in the string output. The member name will be present, but the
9522// value will be replaced with "sensitive".
9523func (s DeclineInvitationsOutput) GoString() string {
9524	return s.String()
9525}
9526
9527// SetUnprocessedAccounts sets the UnprocessedAccounts field's value.
9528func (s *DeclineInvitationsOutput) SetUnprocessedAccounts(v []*UnprocessedAccount) *DeclineInvitationsOutput {
9529	s.UnprocessedAccounts = v
9530	return s
9531}
9532
9533// Provides information about a type of sensitive data that was detected by
9534// a managed data identifier and produced a sensitive data finding.
9535type DefaultDetection struct {
9536	_ struct{} `type:"structure"`
9537
9538	Count *int64 `locationName:"count" type:"long"`
9539
9540	// Specifies the location of 1-15 occurrences of sensitive data that was detected
9541	// by a managed data identifier or a custom data identifier and produced a sensitive
9542	// data finding.
9543	Occurrences *Occurrences `locationName:"occurrences" type:"structure"`
9544
9545	Type *string `locationName:"type" type:"string"`
9546}
9547
9548// String returns the string representation.
9549//
9550// API parameter values that are decorated as "sensitive" in the API will not
9551// be included in the string output. The member name will be present, but the
9552// value will be replaced with "sensitive".
9553func (s DefaultDetection) String() string {
9554	return awsutil.Prettify(s)
9555}
9556
9557// GoString returns the string representation.
9558//
9559// API parameter values that are decorated as "sensitive" in the API will not
9560// be included in the string output. The member name will be present, but the
9561// value will be replaced with "sensitive".
9562func (s DefaultDetection) GoString() string {
9563	return s.String()
9564}
9565
9566// SetCount sets the Count field's value.
9567func (s *DefaultDetection) SetCount(v int64) *DefaultDetection {
9568	s.Count = &v
9569	return s
9570}
9571
9572// SetOccurrences sets the Occurrences field's value.
9573func (s *DefaultDetection) SetOccurrences(v *Occurrences) *DefaultDetection {
9574	s.Occurrences = v
9575	return s
9576}
9577
9578// SetType sets the Type field's value.
9579func (s *DefaultDetection) SetType(v string) *DefaultDetection {
9580	s.Type = &v
9581	return s
9582}
9583
9584type DeleteCustomDataIdentifierInput struct {
9585	_ struct{} `type:"structure" nopayload:"true"`
9586
9587	// Id is a required field
9588	Id *string `location:"uri" locationName:"id" type:"string" required:"true"`
9589}
9590
9591// String returns the string representation.
9592//
9593// API parameter values that are decorated as "sensitive" in the API will not
9594// be included in the string output. The member name will be present, but the
9595// value will be replaced with "sensitive".
9596func (s DeleteCustomDataIdentifierInput) String() string {
9597	return awsutil.Prettify(s)
9598}
9599
9600// GoString returns the string representation.
9601//
9602// API parameter values that are decorated as "sensitive" in the API will not
9603// be included in the string output. The member name will be present, but the
9604// value will be replaced with "sensitive".
9605func (s DeleteCustomDataIdentifierInput) GoString() string {
9606	return s.String()
9607}
9608
9609// Validate inspects the fields of the type to determine if they are valid.
9610func (s *DeleteCustomDataIdentifierInput) Validate() error {
9611	invalidParams := request.ErrInvalidParams{Context: "DeleteCustomDataIdentifierInput"}
9612	if s.Id == nil {
9613		invalidParams.Add(request.NewErrParamRequired("Id"))
9614	}
9615	if s.Id != nil && len(*s.Id) < 1 {
9616		invalidParams.Add(request.NewErrParamMinLen("Id", 1))
9617	}
9618
9619	if invalidParams.Len() > 0 {
9620		return invalidParams
9621	}
9622	return nil
9623}
9624
9625// SetId sets the Id field's value.
9626func (s *DeleteCustomDataIdentifierInput) SetId(v string) *DeleteCustomDataIdentifierInput {
9627	s.Id = &v
9628	return s
9629}
9630
9631type DeleteCustomDataIdentifierOutput struct {
9632	_ struct{} `type:"structure"`
9633}
9634
9635// String returns the string representation.
9636//
9637// API parameter values that are decorated as "sensitive" in the API will not
9638// be included in the string output. The member name will be present, but the
9639// value will be replaced with "sensitive".
9640func (s DeleteCustomDataIdentifierOutput) String() string {
9641	return awsutil.Prettify(s)
9642}
9643
9644// GoString returns the string representation.
9645//
9646// API parameter values that are decorated as "sensitive" in the API will not
9647// be included in the string output. The member name will be present, but the
9648// value will be replaced with "sensitive".
9649func (s DeleteCustomDataIdentifierOutput) GoString() string {
9650	return s.String()
9651}
9652
9653type DeleteFindingsFilterInput struct {
9654	_ struct{} `type:"structure" nopayload:"true"`
9655
9656	// Id is a required field
9657	Id *string `location:"uri" locationName:"id" type:"string" required:"true"`
9658}
9659
9660// String returns the string representation.
9661//
9662// API parameter values that are decorated as "sensitive" in the API will not
9663// be included in the string output. The member name will be present, but the
9664// value will be replaced with "sensitive".
9665func (s DeleteFindingsFilterInput) String() string {
9666	return awsutil.Prettify(s)
9667}
9668
9669// GoString returns the string representation.
9670//
9671// API parameter values that are decorated as "sensitive" in the API will not
9672// be included in the string output. The member name will be present, but the
9673// value will be replaced with "sensitive".
9674func (s DeleteFindingsFilterInput) GoString() string {
9675	return s.String()
9676}
9677
9678// Validate inspects the fields of the type to determine if they are valid.
9679func (s *DeleteFindingsFilterInput) Validate() error {
9680	invalidParams := request.ErrInvalidParams{Context: "DeleteFindingsFilterInput"}
9681	if s.Id == nil {
9682		invalidParams.Add(request.NewErrParamRequired("Id"))
9683	}
9684	if s.Id != nil && len(*s.Id) < 1 {
9685		invalidParams.Add(request.NewErrParamMinLen("Id", 1))
9686	}
9687
9688	if invalidParams.Len() > 0 {
9689		return invalidParams
9690	}
9691	return nil
9692}
9693
9694// SetId sets the Id field's value.
9695func (s *DeleteFindingsFilterInput) SetId(v string) *DeleteFindingsFilterInput {
9696	s.Id = &v
9697	return s
9698}
9699
9700type DeleteFindingsFilterOutput struct {
9701	_ struct{} `type:"structure"`
9702}
9703
9704// String returns the string representation.
9705//
9706// API parameter values that are decorated as "sensitive" in the API will not
9707// be included in the string output. The member name will be present, but the
9708// value will be replaced with "sensitive".
9709func (s DeleteFindingsFilterOutput) String() string {
9710	return awsutil.Prettify(s)
9711}
9712
9713// GoString returns the string representation.
9714//
9715// API parameter values that are decorated as "sensitive" in the API will not
9716// be included in the string output. The member name will be present, but the
9717// value will be replaced with "sensitive".
9718func (s DeleteFindingsFilterOutput) GoString() string {
9719	return s.String()
9720}
9721
9722// Specifies one or more accounts that sent Amazon Macie membership invitations
9723// to delete.
9724type DeleteInvitationsInput struct {
9725	_ struct{} `type:"structure"`
9726
9727	// AccountIds is a required field
9728	AccountIds []*string `locationName:"accountIds" type:"list" required:"true"`
9729}
9730
9731// String returns the string representation.
9732//
9733// API parameter values that are decorated as "sensitive" in the API will not
9734// be included in the string output. The member name will be present, but the
9735// value will be replaced with "sensitive".
9736func (s DeleteInvitationsInput) String() string {
9737	return awsutil.Prettify(s)
9738}
9739
9740// GoString returns the string representation.
9741//
9742// API parameter values that are decorated as "sensitive" in the API will not
9743// be included in the string output. The member name will be present, but the
9744// value will be replaced with "sensitive".
9745func (s DeleteInvitationsInput) GoString() string {
9746	return s.String()
9747}
9748
9749// Validate inspects the fields of the type to determine if they are valid.
9750func (s *DeleteInvitationsInput) Validate() error {
9751	invalidParams := request.ErrInvalidParams{Context: "DeleteInvitationsInput"}
9752	if s.AccountIds == nil {
9753		invalidParams.Add(request.NewErrParamRequired("AccountIds"))
9754	}
9755
9756	if invalidParams.Len() > 0 {
9757		return invalidParams
9758	}
9759	return nil
9760}
9761
9762// SetAccountIds sets the AccountIds field's value.
9763func (s *DeleteInvitationsInput) SetAccountIds(v []*string) *DeleteInvitationsInput {
9764	s.AccountIds = v
9765	return s
9766}
9767
9768// Provides information about unprocessed requests to delete Amazon Macie membership
9769// invitations that were received from specific accounts.
9770type DeleteInvitationsOutput struct {
9771	_ struct{} `type:"structure"`
9772
9773	UnprocessedAccounts []*UnprocessedAccount `locationName:"unprocessedAccounts" type:"list"`
9774}
9775
9776// String returns the string representation.
9777//
9778// API parameter values that are decorated as "sensitive" in the API will not
9779// be included in the string output. The member name will be present, but the
9780// value will be replaced with "sensitive".
9781func (s DeleteInvitationsOutput) String() string {
9782	return awsutil.Prettify(s)
9783}
9784
9785// GoString returns the string representation.
9786//
9787// API parameter values that are decorated as "sensitive" in the API will not
9788// be included in the string output. The member name will be present, but the
9789// value will be replaced with "sensitive".
9790func (s DeleteInvitationsOutput) GoString() string {
9791	return s.String()
9792}
9793
9794// SetUnprocessedAccounts sets the UnprocessedAccounts field's value.
9795func (s *DeleteInvitationsOutput) SetUnprocessedAccounts(v []*UnprocessedAccount) *DeleteInvitationsOutput {
9796	s.UnprocessedAccounts = v
9797	return s
9798}
9799
9800type DeleteMemberInput struct {
9801	_ struct{} `type:"structure" nopayload:"true"`
9802
9803	// Id is a required field
9804	Id *string `location:"uri" locationName:"id" type:"string" required:"true"`
9805}
9806
9807// String returns the string representation.
9808//
9809// API parameter values that are decorated as "sensitive" in the API will not
9810// be included in the string output. The member name will be present, but the
9811// value will be replaced with "sensitive".
9812func (s DeleteMemberInput) String() string {
9813	return awsutil.Prettify(s)
9814}
9815
9816// GoString returns the string representation.
9817//
9818// API parameter values that are decorated as "sensitive" in the API will not
9819// be included in the string output. The member name will be present, but the
9820// value will be replaced with "sensitive".
9821func (s DeleteMemberInput) GoString() string {
9822	return s.String()
9823}
9824
9825// Validate inspects the fields of the type to determine if they are valid.
9826func (s *DeleteMemberInput) Validate() error {
9827	invalidParams := request.ErrInvalidParams{Context: "DeleteMemberInput"}
9828	if s.Id == nil {
9829		invalidParams.Add(request.NewErrParamRequired("Id"))
9830	}
9831	if s.Id != nil && len(*s.Id) < 1 {
9832		invalidParams.Add(request.NewErrParamMinLen("Id", 1))
9833	}
9834
9835	if invalidParams.Len() > 0 {
9836		return invalidParams
9837	}
9838	return nil
9839}
9840
9841// SetId sets the Id field's value.
9842func (s *DeleteMemberInput) SetId(v string) *DeleteMemberInput {
9843	s.Id = &v
9844	return s
9845}
9846
9847type DeleteMemberOutput struct {
9848	_ struct{} `type:"structure"`
9849}
9850
9851// String returns the string representation.
9852//
9853// API parameter values that are decorated as "sensitive" in the API will not
9854// be included in the string output. The member name will be present, but the
9855// value will be replaced with "sensitive".
9856func (s DeleteMemberOutput) String() string {
9857	return awsutil.Prettify(s)
9858}
9859
9860// GoString returns the string representation.
9861//
9862// API parameter values that are decorated as "sensitive" in the API will not
9863// be included in the string output. The member name will be present, but the
9864// value will be replaced with "sensitive".
9865func (s DeleteMemberOutput) GoString() string {
9866	return s.String()
9867}
9868
9869// Specifies criteria for filtering, sorting, and paginating the results of
9870// a query for statistical data and other information about S3 buckets.
9871type DescribeBucketsInput struct {
9872	_ struct{} `type:"structure"`
9873
9874	// Specifies, as a map, one or more property-based conditions that filter the
9875	// results of a query for information about S3 buckets.
9876	Criteria map[string]*BucketCriteriaAdditionalProperties `locationName:"criteria" type:"map"`
9877
9878	MaxResults *int64 `locationName:"maxResults" type:"integer"`
9879
9880	NextToken *string `locationName:"nextToken" type:"string"`
9881
9882	// Specifies criteria for sorting the results of a query for information about
9883	// S3 buckets.
9884	SortCriteria *BucketSortCriteria `locationName:"sortCriteria" type:"structure"`
9885}
9886
9887// String returns the string representation.
9888//
9889// API parameter values that are decorated as "sensitive" in the API will not
9890// be included in the string output. The member name will be present, but the
9891// value will be replaced with "sensitive".
9892func (s DescribeBucketsInput) String() string {
9893	return awsutil.Prettify(s)
9894}
9895
9896// GoString returns the string representation.
9897//
9898// API parameter values that are decorated as "sensitive" in the API will not
9899// be included in the string output. The member name will be present, but the
9900// value will be replaced with "sensitive".
9901func (s DescribeBucketsInput) GoString() string {
9902	return s.String()
9903}
9904
9905// SetCriteria sets the Criteria field's value.
9906func (s *DescribeBucketsInput) SetCriteria(v map[string]*BucketCriteriaAdditionalProperties) *DescribeBucketsInput {
9907	s.Criteria = v
9908	return s
9909}
9910
9911// SetMaxResults sets the MaxResults field's value.
9912func (s *DescribeBucketsInput) SetMaxResults(v int64) *DescribeBucketsInput {
9913	s.MaxResults = &v
9914	return s
9915}
9916
9917// SetNextToken sets the NextToken field's value.
9918func (s *DescribeBucketsInput) SetNextToken(v string) *DescribeBucketsInput {
9919	s.NextToken = &v
9920	return s
9921}
9922
9923// SetSortCriteria sets the SortCriteria field's value.
9924func (s *DescribeBucketsInput) SetSortCriteria(v *BucketSortCriteria) *DescribeBucketsInput {
9925	s.SortCriteria = v
9926	return s
9927}
9928
9929// Provides the results of a query that retrieved statistical data and other
9930// information about one or more S3 buckets that Amazon Macie monitors and analyzes
9931// for your account.
9932type DescribeBucketsOutput struct {
9933	_ struct{} `type:"structure"`
9934
9935	Buckets []*BucketMetadata `locationName:"buckets" type:"list"`
9936
9937	NextToken *string `locationName:"nextToken" type:"string"`
9938}
9939
9940// String returns the string representation.
9941//
9942// API parameter values that are decorated as "sensitive" in the API will not
9943// be included in the string output. The member name will be present, but the
9944// value will be replaced with "sensitive".
9945func (s DescribeBucketsOutput) String() string {
9946	return awsutil.Prettify(s)
9947}
9948
9949// GoString returns the string representation.
9950//
9951// API parameter values that are decorated as "sensitive" in the API will not
9952// be included in the string output. The member name will be present, but the
9953// value will be replaced with "sensitive".
9954func (s DescribeBucketsOutput) GoString() string {
9955	return s.String()
9956}
9957
9958// SetBuckets sets the Buckets field's value.
9959func (s *DescribeBucketsOutput) SetBuckets(v []*BucketMetadata) *DescribeBucketsOutput {
9960	s.Buckets = v
9961	return s
9962}
9963
9964// SetNextToken sets the NextToken field's value.
9965func (s *DescribeBucketsOutput) SetNextToken(v string) *DescribeBucketsOutput {
9966	s.NextToken = &v
9967	return s
9968}
9969
9970type DescribeClassificationJobInput struct {
9971	_ struct{} `type:"structure" nopayload:"true"`
9972
9973	// JobId is a required field
9974	JobId *string `location:"uri" locationName:"jobId" type:"string" required:"true"`
9975}
9976
9977// String returns the string representation.
9978//
9979// API parameter values that are decorated as "sensitive" in the API will not
9980// be included in the string output. The member name will be present, but the
9981// value will be replaced with "sensitive".
9982func (s DescribeClassificationJobInput) String() string {
9983	return awsutil.Prettify(s)
9984}
9985
9986// GoString returns the string representation.
9987//
9988// API parameter values that are decorated as "sensitive" in the API will not
9989// be included in the string output. The member name will be present, but the
9990// value will be replaced with "sensitive".
9991func (s DescribeClassificationJobInput) GoString() string {
9992	return s.String()
9993}
9994
9995// Validate inspects the fields of the type to determine if they are valid.
9996func (s *DescribeClassificationJobInput) Validate() error {
9997	invalidParams := request.ErrInvalidParams{Context: "DescribeClassificationJobInput"}
9998	if s.JobId == nil {
9999		invalidParams.Add(request.NewErrParamRequired("JobId"))
10000	}
10001	if s.JobId != nil && len(*s.JobId) < 1 {
10002		invalidParams.Add(request.NewErrParamMinLen("JobId", 1))
10003	}
10004
10005	if invalidParams.Len() > 0 {
10006		return invalidParams
10007	}
10008	return nil
10009}
10010
10011// SetJobId sets the JobId field's value.
10012func (s *DescribeClassificationJobInput) SetJobId(v string) *DescribeClassificationJobInput {
10013	s.JobId = &v
10014	return s
10015}
10016
10017// Provides information about a classification job, including the current configuration
10018// settings and status of the job.
10019type DescribeClassificationJobOutput struct {
10020	_ struct{} `type:"structure"`
10021
10022	ClientToken *string `locationName:"clientToken" type:"string" idempotencyToken:"true"`
10023
10024	CreatedAt *time.Time `locationName:"createdAt" type:"timestamp" timestampFormat:"iso8601"`
10025
10026	CustomDataIdentifierIds []*string `locationName:"customDataIdentifierIds" type:"list"`
10027
10028	Description *string `locationName:"description" type:"string"`
10029
10030	InitialRun *bool `locationName:"initialRun" type:"boolean"`
10031
10032	JobArn *string `locationName:"jobArn" type:"string"`
10033
10034	JobId *string `locationName:"jobId" type:"string"`
10035
10036	// The status of a classification job. Possible values are:
10037	JobStatus *string `locationName:"jobStatus" type:"string" enum:"JobStatus"`
10038
10039	// The schedule for running a classification job. Valid values are:
10040	JobType *string `locationName:"jobType" type:"string" enum:"JobType"`
10041
10042	// Specifies whether any account- or bucket-level access errors occurred when
10043	// a classification job ran. For information about using logging data to investigate
10044	// these errors, see Monitoring sensitive data discovery jobs (https://docs.aws.amazon.com/macie/latest/user/discovery-jobs-monitor-cw-logs.html)
10045	// in the Amazon Macie User Guide.
10046	LastRunErrorStatus *LastRunErrorStatus `locationName:"lastRunErrorStatus" type:"structure"`
10047
10048	LastRunTime *time.Time `locationName:"lastRunTime" type:"timestamp" timestampFormat:"iso8601"`
10049
10050	ManagedDataIdentifierIds []*string `locationName:"managedDataIdentifierIds" type:"list"`
10051
10052	// The selection type that determines which managed data identifiers a classification
10053	// job uses to analyze data. Valid values are:
10054	ManagedDataIdentifierSelector *string `locationName:"managedDataIdentifierSelector" type:"string" enum:"ManagedDataIdentifierSelector"`
10055
10056	Name *string `locationName:"name" type:"string"`
10057
10058	// Specifies which S3 buckets contain the objects that a classification job
10059	// analyzes, and the scope of that analysis. The bucket specification can be
10060	// static (bucketDefinitions) or dynamic (bucketCriteria). If it's static, the
10061	// job analyzes objects in the same predefined set of buckets each time the
10062	// job runs. If it's dynamic, the job analyzes objects in any buckets that match
10063	// the specified criteria each time the job starts to run.
10064	S3JobDefinition *S3JobDefinition `locationName:"s3JobDefinition" type:"structure"`
10065
10066	SamplingPercentage *int64 `locationName:"samplingPercentage" type:"integer"`
10067
10068	// Specifies the recurrence pattern for running a classification job.
10069	ScheduleFrequency *JobScheduleFrequency `locationName:"scheduleFrequency" type:"structure"`
10070
10071	// Provides processing statistics for a classification job.
10072	Statistics *Statistics `locationName:"statistics" type:"structure"`
10073
10074	// A string-to-string map of key-value pairs that specifies the tags (keys and
10075	// values) for a classification job, custom data identifier, findings filter,
10076	// or member account.
10077	Tags map[string]*string `locationName:"tags" type:"map"`
10078
10079	// Provides information about when a classification job was paused. For a one-time
10080	// job, this object also specifies when the job will expire and be cancelled
10081	// if it isn't resumed. For a recurring job, this object also specifies when
10082	// the paused job run will expire and be cancelled if it isn't resumed. This
10083	// object is present only if a job's current status (jobStatus) is USER_PAUSED.
10084	// The information in this object applies only to a job that was paused while
10085	// it had a status of RUNNING.
10086	UserPausedDetails *UserPausedDetails `locationName:"userPausedDetails" type:"structure"`
10087}
10088
10089// String returns the string representation.
10090//
10091// API parameter values that are decorated as "sensitive" in the API will not
10092// be included in the string output. The member name will be present, but the
10093// value will be replaced with "sensitive".
10094func (s DescribeClassificationJobOutput) String() string {
10095	return awsutil.Prettify(s)
10096}
10097
10098// GoString returns the string representation.
10099//
10100// API parameter values that are decorated as "sensitive" in the API will not
10101// be included in the string output. The member name will be present, but the
10102// value will be replaced with "sensitive".
10103func (s DescribeClassificationJobOutput) GoString() string {
10104	return s.String()
10105}
10106
10107// SetClientToken sets the ClientToken field's value.
10108func (s *DescribeClassificationJobOutput) SetClientToken(v string) *DescribeClassificationJobOutput {
10109	s.ClientToken = &v
10110	return s
10111}
10112
10113// SetCreatedAt sets the CreatedAt field's value.
10114func (s *DescribeClassificationJobOutput) SetCreatedAt(v time.Time) *DescribeClassificationJobOutput {
10115	s.CreatedAt = &v
10116	return s
10117}
10118
10119// SetCustomDataIdentifierIds sets the CustomDataIdentifierIds field's value.
10120func (s *DescribeClassificationJobOutput) SetCustomDataIdentifierIds(v []*string) *DescribeClassificationJobOutput {
10121	s.CustomDataIdentifierIds = v
10122	return s
10123}
10124
10125// SetDescription sets the Description field's value.
10126func (s *DescribeClassificationJobOutput) SetDescription(v string) *DescribeClassificationJobOutput {
10127	s.Description = &v
10128	return s
10129}
10130
10131// SetInitialRun sets the InitialRun field's value.
10132func (s *DescribeClassificationJobOutput) SetInitialRun(v bool) *DescribeClassificationJobOutput {
10133	s.InitialRun = &v
10134	return s
10135}
10136
10137// SetJobArn sets the JobArn field's value.
10138func (s *DescribeClassificationJobOutput) SetJobArn(v string) *DescribeClassificationJobOutput {
10139	s.JobArn = &v
10140	return s
10141}
10142
10143// SetJobId sets the JobId field's value.
10144func (s *DescribeClassificationJobOutput) SetJobId(v string) *DescribeClassificationJobOutput {
10145	s.JobId = &v
10146	return s
10147}
10148
10149// SetJobStatus sets the JobStatus field's value.
10150func (s *DescribeClassificationJobOutput) SetJobStatus(v string) *DescribeClassificationJobOutput {
10151	s.JobStatus = &v
10152	return s
10153}
10154
10155// SetJobType sets the JobType field's value.
10156func (s *DescribeClassificationJobOutput) SetJobType(v string) *DescribeClassificationJobOutput {
10157	s.JobType = &v
10158	return s
10159}
10160
10161// SetLastRunErrorStatus sets the LastRunErrorStatus field's value.
10162func (s *DescribeClassificationJobOutput) SetLastRunErrorStatus(v *LastRunErrorStatus) *DescribeClassificationJobOutput {
10163	s.LastRunErrorStatus = v
10164	return s
10165}
10166
10167// SetLastRunTime sets the LastRunTime field's value.
10168func (s *DescribeClassificationJobOutput) SetLastRunTime(v time.Time) *DescribeClassificationJobOutput {
10169	s.LastRunTime = &v
10170	return s
10171}
10172
10173// SetManagedDataIdentifierIds sets the ManagedDataIdentifierIds field's value.
10174func (s *DescribeClassificationJobOutput) SetManagedDataIdentifierIds(v []*string) *DescribeClassificationJobOutput {
10175	s.ManagedDataIdentifierIds = v
10176	return s
10177}
10178
10179// SetManagedDataIdentifierSelector sets the ManagedDataIdentifierSelector field's value.
10180func (s *DescribeClassificationJobOutput) SetManagedDataIdentifierSelector(v string) *DescribeClassificationJobOutput {
10181	s.ManagedDataIdentifierSelector = &v
10182	return s
10183}
10184
10185// SetName sets the Name field's value.
10186func (s *DescribeClassificationJobOutput) SetName(v string) *DescribeClassificationJobOutput {
10187	s.Name = &v
10188	return s
10189}
10190
10191// SetS3JobDefinition sets the S3JobDefinition field's value.
10192func (s *DescribeClassificationJobOutput) SetS3JobDefinition(v *S3JobDefinition) *DescribeClassificationJobOutput {
10193	s.S3JobDefinition = v
10194	return s
10195}
10196
10197// SetSamplingPercentage sets the SamplingPercentage field's value.
10198func (s *DescribeClassificationJobOutput) SetSamplingPercentage(v int64) *DescribeClassificationJobOutput {
10199	s.SamplingPercentage = &v
10200	return s
10201}
10202
10203// SetScheduleFrequency sets the ScheduleFrequency field's value.
10204func (s *DescribeClassificationJobOutput) SetScheduleFrequency(v *JobScheduleFrequency) *DescribeClassificationJobOutput {
10205	s.ScheduleFrequency = v
10206	return s
10207}
10208
10209// SetStatistics sets the Statistics field's value.
10210func (s *DescribeClassificationJobOutput) SetStatistics(v *Statistics) *DescribeClassificationJobOutput {
10211	s.Statistics = v
10212	return s
10213}
10214
10215// SetTags sets the Tags field's value.
10216func (s *DescribeClassificationJobOutput) SetTags(v map[string]*string) *DescribeClassificationJobOutput {
10217	s.Tags = v
10218	return s
10219}
10220
10221// SetUserPausedDetails sets the UserPausedDetails field's value.
10222func (s *DescribeClassificationJobOutput) SetUserPausedDetails(v *UserPausedDetails) *DescribeClassificationJobOutput {
10223	s.UserPausedDetails = v
10224	return s
10225}
10226
10227type DescribeOrganizationConfigurationInput struct {
10228	_ struct{} `type:"structure" nopayload:"true"`
10229}
10230
10231// String returns the string representation.
10232//
10233// API parameter values that are decorated as "sensitive" in the API will not
10234// be included in the string output. The member name will be present, but the
10235// value will be replaced with "sensitive".
10236func (s DescribeOrganizationConfigurationInput) String() string {
10237	return awsutil.Prettify(s)
10238}
10239
10240// GoString returns the string representation.
10241//
10242// API parameter values that are decorated as "sensitive" in the API will not
10243// be included in the string output. The member name will be present, but the
10244// value will be replaced with "sensitive".
10245func (s DescribeOrganizationConfigurationInput) GoString() string {
10246	return s.String()
10247}
10248
10249// Provides information about the Amazon Macie configuration settings for an
10250// Amazon Web Services organization.
10251type DescribeOrganizationConfigurationOutput struct {
10252	_ struct{} `type:"structure"`
10253
10254	AutoEnable *bool `locationName:"autoEnable" type:"boolean"`
10255
10256	MaxAccountLimitReached *bool `locationName:"maxAccountLimitReached" type:"boolean"`
10257}
10258
10259// String returns the string representation.
10260//
10261// API parameter values that are decorated as "sensitive" in the API will not
10262// be included in the string output. The member name will be present, but the
10263// value will be replaced with "sensitive".
10264func (s DescribeOrganizationConfigurationOutput) String() string {
10265	return awsutil.Prettify(s)
10266}
10267
10268// GoString returns the string representation.
10269//
10270// API parameter values that are decorated as "sensitive" in the API will not
10271// be included in the string output. The member name will be present, but the
10272// value will be replaced with "sensitive".
10273func (s DescribeOrganizationConfigurationOutput) GoString() string {
10274	return s.String()
10275}
10276
10277// SetAutoEnable sets the AutoEnable field's value.
10278func (s *DescribeOrganizationConfigurationOutput) SetAutoEnable(v bool) *DescribeOrganizationConfigurationOutput {
10279	s.AutoEnable = &v
10280	return s
10281}
10282
10283// SetMaxAccountLimitReached sets the MaxAccountLimitReached field's value.
10284func (s *DescribeOrganizationConfigurationOutput) SetMaxAccountLimitReached(v bool) *DescribeOrganizationConfigurationOutput {
10285	s.MaxAccountLimitReached = &v
10286	return s
10287}
10288
10289type DisableMacieInput struct {
10290	_ struct{} `type:"structure" nopayload:"true"`
10291}
10292
10293// String returns the string representation.
10294//
10295// API parameter values that are decorated as "sensitive" in the API will not
10296// be included in the string output. The member name will be present, but the
10297// value will be replaced with "sensitive".
10298func (s DisableMacieInput) String() string {
10299	return awsutil.Prettify(s)
10300}
10301
10302// GoString returns the string representation.
10303//
10304// API parameter values that are decorated as "sensitive" in the API will not
10305// be included in the string output. The member name will be present, but the
10306// value will be replaced with "sensitive".
10307func (s DisableMacieInput) GoString() string {
10308	return s.String()
10309}
10310
10311type DisableMacieOutput struct {
10312	_ struct{} `type:"structure"`
10313}
10314
10315// String returns the string representation.
10316//
10317// API parameter values that are decorated as "sensitive" in the API will not
10318// be included in the string output. The member name will be present, but the
10319// value will be replaced with "sensitive".
10320func (s DisableMacieOutput) String() string {
10321	return awsutil.Prettify(s)
10322}
10323
10324// GoString returns the string representation.
10325//
10326// API parameter values that are decorated as "sensitive" in the API will not
10327// be included in the string output. The member name will be present, but the
10328// value will be replaced with "sensitive".
10329func (s DisableMacieOutput) GoString() string {
10330	return s.String()
10331}
10332
10333type DisableOrganizationAdminAccountInput struct {
10334	_ struct{} `type:"structure" nopayload:"true"`
10335
10336	// AdminAccountId is a required field
10337	AdminAccountId *string `location:"querystring" locationName:"adminAccountId" type:"string" required:"true"`
10338}
10339
10340// String returns the string representation.
10341//
10342// API parameter values that are decorated as "sensitive" in the API will not
10343// be included in the string output. The member name will be present, but the
10344// value will be replaced with "sensitive".
10345func (s DisableOrganizationAdminAccountInput) String() string {
10346	return awsutil.Prettify(s)
10347}
10348
10349// GoString returns the string representation.
10350//
10351// API parameter values that are decorated as "sensitive" in the API will not
10352// be included in the string output. The member name will be present, but the
10353// value will be replaced with "sensitive".
10354func (s DisableOrganizationAdminAccountInput) GoString() string {
10355	return s.String()
10356}
10357
10358// Validate inspects the fields of the type to determine if they are valid.
10359func (s *DisableOrganizationAdminAccountInput) Validate() error {
10360	invalidParams := request.ErrInvalidParams{Context: "DisableOrganizationAdminAccountInput"}
10361	if s.AdminAccountId == nil {
10362		invalidParams.Add(request.NewErrParamRequired("AdminAccountId"))
10363	}
10364
10365	if invalidParams.Len() > 0 {
10366		return invalidParams
10367	}
10368	return nil
10369}
10370
10371// SetAdminAccountId sets the AdminAccountId field's value.
10372func (s *DisableOrganizationAdminAccountInput) SetAdminAccountId(v string) *DisableOrganizationAdminAccountInput {
10373	s.AdminAccountId = &v
10374	return s
10375}
10376
10377type DisableOrganizationAdminAccountOutput struct {
10378	_ struct{} `type:"structure"`
10379}
10380
10381// String returns the string representation.
10382//
10383// API parameter values that are decorated as "sensitive" in the API will not
10384// be included in the string output. The member name will be present, but the
10385// value will be replaced with "sensitive".
10386func (s DisableOrganizationAdminAccountOutput) String() string {
10387	return awsutil.Prettify(s)
10388}
10389
10390// GoString returns the string representation.
10391//
10392// API parameter values that are decorated as "sensitive" in the API will not
10393// be included in the string output. The member name will be present, but the
10394// value will be replaced with "sensitive".
10395func (s DisableOrganizationAdminAccountOutput) GoString() string {
10396	return s.String()
10397}
10398
10399type DisassociateFromAdministratorAccountInput struct {
10400	_ struct{} `type:"structure" nopayload:"true"`
10401}
10402
10403// String returns the string representation.
10404//
10405// API parameter values that are decorated as "sensitive" in the API will not
10406// be included in the string output. The member name will be present, but the
10407// value will be replaced with "sensitive".
10408func (s DisassociateFromAdministratorAccountInput) String() string {
10409	return awsutil.Prettify(s)
10410}
10411
10412// GoString returns the string representation.
10413//
10414// API parameter values that are decorated as "sensitive" in the API will not
10415// be included in the string output. The member name will be present, but the
10416// value will be replaced with "sensitive".
10417func (s DisassociateFromAdministratorAccountInput) GoString() string {
10418	return s.String()
10419}
10420
10421type DisassociateFromAdministratorAccountOutput struct {
10422	_ struct{} `type:"structure"`
10423}
10424
10425// String returns the string representation.
10426//
10427// API parameter values that are decorated as "sensitive" in the API will not
10428// be included in the string output. The member name will be present, but the
10429// value will be replaced with "sensitive".
10430func (s DisassociateFromAdministratorAccountOutput) String() string {
10431	return awsutil.Prettify(s)
10432}
10433
10434// GoString returns the string representation.
10435//
10436// API parameter values that are decorated as "sensitive" in the API will not
10437// be included in the string output. The member name will be present, but the
10438// value will be replaced with "sensitive".
10439func (s DisassociateFromAdministratorAccountOutput) GoString() string {
10440	return s.String()
10441}
10442
10443type DisassociateFromMasterAccountInput struct {
10444	_ struct{} `type:"structure" nopayload:"true"`
10445}
10446
10447// String returns the string representation.
10448//
10449// API parameter values that are decorated as "sensitive" in the API will not
10450// be included in the string output. The member name will be present, but the
10451// value will be replaced with "sensitive".
10452func (s DisassociateFromMasterAccountInput) String() string {
10453	return awsutil.Prettify(s)
10454}
10455
10456// GoString returns the string representation.
10457//
10458// API parameter values that are decorated as "sensitive" in the API will not
10459// be included in the string output. The member name will be present, but the
10460// value will be replaced with "sensitive".
10461func (s DisassociateFromMasterAccountInput) GoString() string {
10462	return s.String()
10463}
10464
10465type DisassociateFromMasterAccountOutput struct {
10466	_ struct{} `type:"structure"`
10467}
10468
10469// String returns the string representation.
10470//
10471// API parameter values that are decorated as "sensitive" in the API will not
10472// be included in the string output. The member name will be present, but the
10473// value will be replaced with "sensitive".
10474func (s DisassociateFromMasterAccountOutput) String() string {
10475	return awsutil.Prettify(s)
10476}
10477
10478// GoString returns the string representation.
10479//
10480// API parameter values that are decorated as "sensitive" in the API will not
10481// be included in the string output. The member name will be present, but the
10482// value will be replaced with "sensitive".
10483func (s DisassociateFromMasterAccountOutput) GoString() string {
10484	return s.String()
10485}
10486
10487type DisassociateMemberInput struct {
10488	_ struct{} `type:"structure" nopayload:"true"`
10489
10490	// Id is a required field
10491	Id *string `location:"uri" locationName:"id" type:"string" required:"true"`
10492}
10493
10494// String returns the string representation.
10495//
10496// API parameter values that are decorated as "sensitive" in the API will not
10497// be included in the string output. The member name will be present, but the
10498// value will be replaced with "sensitive".
10499func (s DisassociateMemberInput) String() string {
10500	return awsutil.Prettify(s)
10501}
10502
10503// GoString returns the string representation.
10504//
10505// API parameter values that are decorated as "sensitive" in the API will not
10506// be included in the string output. The member name will be present, but the
10507// value will be replaced with "sensitive".
10508func (s DisassociateMemberInput) GoString() string {
10509	return s.String()
10510}
10511
10512// Validate inspects the fields of the type to determine if they are valid.
10513func (s *DisassociateMemberInput) Validate() error {
10514	invalidParams := request.ErrInvalidParams{Context: "DisassociateMemberInput"}
10515	if s.Id == nil {
10516		invalidParams.Add(request.NewErrParamRequired("Id"))
10517	}
10518	if s.Id != nil && len(*s.Id) < 1 {
10519		invalidParams.Add(request.NewErrParamMinLen("Id", 1))
10520	}
10521
10522	if invalidParams.Len() > 0 {
10523		return invalidParams
10524	}
10525	return nil
10526}
10527
10528// SetId sets the Id field's value.
10529func (s *DisassociateMemberInput) SetId(v string) *DisassociateMemberInput {
10530	s.Id = &v
10531	return s
10532}
10533
10534type DisassociateMemberOutput struct {
10535	_ struct{} `type:"structure"`
10536}
10537
10538// String returns the string representation.
10539//
10540// API parameter values that are decorated as "sensitive" in the API will not
10541// be included in the string output. The member name will be present, but the
10542// value will be replaced with "sensitive".
10543func (s DisassociateMemberOutput) String() string {
10544	return awsutil.Prettify(s)
10545}
10546
10547// GoString returns the string representation.
10548//
10549// API parameter values that are decorated as "sensitive" in the API will not
10550// be included in the string output. The member name will be present, but the
10551// value will be replaced with "sensitive".
10552func (s DisassociateMemberOutput) GoString() string {
10553	return s.String()
10554}
10555
10556// Provides information about the domain name of the device that an entity used
10557// to perform an action on an affected resource.
10558type DomainDetails struct {
10559	_ struct{} `type:"structure"`
10560
10561	DomainName *string `locationName:"domainName" type:"string"`
10562}
10563
10564// String returns the string representation.
10565//
10566// API parameter values that are decorated as "sensitive" in the API will not
10567// be included in the string output. The member name will be present, but the
10568// value will be replaced with "sensitive".
10569func (s DomainDetails) String() string {
10570	return awsutil.Prettify(s)
10571}
10572
10573// GoString returns the string representation.
10574//
10575// API parameter values that are decorated as "sensitive" in the API will not
10576// be included in the string output. The member name will be present, but the
10577// value will be replaced with "sensitive".
10578func (s DomainDetails) GoString() string {
10579	return s.String()
10580}
10581
10582// SetDomainName sets the DomainName field's value.
10583func (s *DomainDetails) SetDomainName(v string) *DomainDetails {
10584	s.DomainName = &v
10585	return s
10586}
10587
10588// Enables Amazon Macie and specifies the configuration settings for a Macie
10589// account.
10590type EnableMacieInput struct {
10591	_ struct{} `type:"structure"`
10592
10593	ClientToken *string `locationName:"clientToken" type:"string" idempotencyToken:"true"`
10594
10595	// The frequency with which Amazon Macie publishes updates to policy findings
10596	// for an account. This includes publishing updates to Security Hub and Amazon
10597	// EventBridge (formerly called Amazon CloudWatch Events). For more information,
10598	// see Monitoring and processing findings (https://docs.aws.amazon.com/macie/latest/user/findings-monitor.html)
10599	// in the Amazon Macie User Guide. Valid values are:
10600	FindingPublishingFrequency *string `locationName:"findingPublishingFrequency" type:"string" enum:"FindingPublishingFrequency"`
10601
10602	// The status of an Amazon Macie account. Valid values are:
10603	Status *string `locationName:"status" type:"string" enum:"MacieStatus"`
10604}
10605
10606// String returns the string representation.
10607//
10608// API parameter values that are decorated as "sensitive" in the API will not
10609// be included in the string output. The member name will be present, but the
10610// value will be replaced with "sensitive".
10611func (s EnableMacieInput) String() string {
10612	return awsutil.Prettify(s)
10613}
10614
10615// GoString returns the string representation.
10616//
10617// API parameter values that are decorated as "sensitive" in the API will not
10618// be included in the string output. The member name will be present, but the
10619// value will be replaced with "sensitive".
10620func (s EnableMacieInput) GoString() string {
10621	return s.String()
10622}
10623
10624// SetClientToken sets the ClientToken field's value.
10625func (s *EnableMacieInput) SetClientToken(v string) *EnableMacieInput {
10626	s.ClientToken = &v
10627	return s
10628}
10629
10630// SetFindingPublishingFrequency sets the FindingPublishingFrequency field's value.
10631func (s *EnableMacieInput) SetFindingPublishingFrequency(v string) *EnableMacieInput {
10632	s.FindingPublishingFrequency = &v
10633	return s
10634}
10635
10636// SetStatus sets the Status field's value.
10637func (s *EnableMacieInput) SetStatus(v string) *EnableMacieInput {
10638	s.Status = &v
10639	return s
10640}
10641
10642type EnableMacieOutput struct {
10643	_ struct{} `type:"structure"`
10644}
10645
10646// String returns the string representation.
10647//
10648// API parameter values that are decorated as "sensitive" in the API will not
10649// be included in the string output. The member name will be present, but the
10650// value will be replaced with "sensitive".
10651func (s EnableMacieOutput) String() string {
10652	return awsutil.Prettify(s)
10653}
10654
10655// GoString returns the string representation.
10656//
10657// API parameter values that are decorated as "sensitive" in the API will not
10658// be included in the string output. The member name will be present, but the
10659// value will be replaced with "sensitive".
10660func (s EnableMacieOutput) GoString() string {
10661	return s.String()
10662}
10663
10664// Specifies an account to designate as a delegated Amazon Macie administrator
10665// account for an Amazon Web Services organization. To submit this request,
10666// you must be a user of the management account for the Amazon Web Services
10667// organization.
10668type EnableOrganizationAdminAccountInput struct {
10669	_ struct{} `type:"structure"`
10670
10671	// AdminAccountId is a required field
10672	AdminAccountId *string `locationName:"adminAccountId" type:"string" required:"true"`
10673
10674	ClientToken *string `locationName:"clientToken" type:"string" idempotencyToken:"true"`
10675}
10676
10677// String returns the string representation.
10678//
10679// API parameter values that are decorated as "sensitive" in the API will not
10680// be included in the string output. The member name will be present, but the
10681// value will be replaced with "sensitive".
10682func (s EnableOrganizationAdminAccountInput) String() string {
10683	return awsutil.Prettify(s)
10684}
10685
10686// GoString returns the string representation.
10687//
10688// API parameter values that are decorated as "sensitive" in the API will not
10689// be included in the string output. The member name will be present, but the
10690// value will be replaced with "sensitive".
10691func (s EnableOrganizationAdminAccountInput) GoString() string {
10692	return s.String()
10693}
10694
10695// Validate inspects the fields of the type to determine if they are valid.
10696func (s *EnableOrganizationAdminAccountInput) Validate() error {
10697	invalidParams := request.ErrInvalidParams{Context: "EnableOrganizationAdminAccountInput"}
10698	if s.AdminAccountId == nil {
10699		invalidParams.Add(request.NewErrParamRequired("AdminAccountId"))
10700	}
10701
10702	if invalidParams.Len() > 0 {
10703		return invalidParams
10704	}
10705	return nil
10706}
10707
10708// SetAdminAccountId sets the AdminAccountId field's value.
10709func (s *EnableOrganizationAdminAccountInput) SetAdminAccountId(v string) *EnableOrganizationAdminAccountInput {
10710	s.AdminAccountId = &v
10711	return s
10712}
10713
10714// SetClientToken sets the ClientToken field's value.
10715func (s *EnableOrganizationAdminAccountInput) SetClientToken(v string) *EnableOrganizationAdminAccountInput {
10716	s.ClientToken = &v
10717	return s
10718}
10719
10720type EnableOrganizationAdminAccountOutput struct {
10721	_ struct{} `type:"structure"`
10722}
10723
10724// String returns the string representation.
10725//
10726// API parameter values that are decorated as "sensitive" in the API will not
10727// be included in the string output. The member name will be present, but the
10728// value will be replaced with "sensitive".
10729func (s EnableOrganizationAdminAccountOutput) String() string {
10730	return awsutil.Prettify(s)
10731}
10732
10733// GoString returns the string representation.
10734//
10735// API parameter values that are decorated as "sensitive" in the API will not
10736// be included in the string output. The member name will be present, but the
10737// value will be replaced with "sensitive".
10738func (s EnableOrganizationAdminAccountOutput) GoString() string {
10739	return s.String()
10740}
10741
10742// Provides information about an identity that performed an action on an affected
10743// resource by using temporary security credentials. The credentials were obtained
10744// using the GetFederationToken operation of the Security Token Service (STS)
10745// API.
10746type FederatedUser struct {
10747	_ struct{} `type:"structure"`
10748
10749	AccessKeyId *string `locationName:"accessKeyId" type:"string"`
10750
10751	AccountId *string `locationName:"accountId" type:"string"`
10752
10753	Arn *string `locationName:"arn" type:"string"`
10754
10755	PrincipalId *string `locationName:"principalId" type:"string"`
10756
10757	// Provides information about a session that was created for an entity that
10758	// performed an action by using temporary security credentials.
10759	SessionContext *SessionContext `locationName:"sessionContext" type:"structure"`
10760}
10761
10762// String returns the string representation.
10763//
10764// API parameter values that are decorated as "sensitive" in the API will not
10765// be included in the string output. The member name will be present, but the
10766// value will be replaced with "sensitive".
10767func (s FederatedUser) String() string {
10768	return awsutil.Prettify(s)
10769}
10770
10771// GoString returns the string representation.
10772//
10773// API parameter values that are decorated as "sensitive" in the API will not
10774// be included in the string output. The member name will be present, but the
10775// value will be replaced with "sensitive".
10776func (s FederatedUser) GoString() string {
10777	return s.String()
10778}
10779
10780// SetAccessKeyId sets the AccessKeyId field's value.
10781func (s *FederatedUser) SetAccessKeyId(v string) *FederatedUser {
10782	s.AccessKeyId = &v
10783	return s
10784}
10785
10786// SetAccountId sets the AccountId field's value.
10787func (s *FederatedUser) SetAccountId(v string) *FederatedUser {
10788	s.AccountId = &v
10789	return s
10790}
10791
10792// SetArn sets the Arn field's value.
10793func (s *FederatedUser) SetArn(v string) *FederatedUser {
10794	s.Arn = &v
10795	return s
10796}
10797
10798// SetPrincipalId sets the PrincipalId field's value.
10799func (s *FederatedUser) SetPrincipalId(v string) *FederatedUser {
10800	s.PrincipalId = &v
10801	return s
10802}
10803
10804// SetSessionContext sets the SessionContext field's value.
10805func (s *FederatedUser) SetSessionContext(v *SessionContext) *FederatedUser {
10806	s.SessionContext = v
10807	return s
10808}
10809
10810// Provides the details of a finding.
10811type Finding struct {
10812	_ struct{} `type:"structure"`
10813
10814	AccountId *string `locationName:"accountId" type:"string"`
10815
10816	Archived *bool `locationName:"archived" type:"boolean"`
10817
10818	// The category of the finding. Valid values are:
10819	Category *string `locationName:"category" type:"string" enum:"FindingCategory"`
10820
10821	// Provides information about a sensitive data finding, including the classification
10822	// job that produced the finding.
10823	ClassificationDetails *ClassificationDetails `locationName:"classificationDetails" type:"structure"`
10824
10825	Count *int64 `locationName:"count" type:"long"`
10826
10827	CreatedAt *time.Time `locationName:"createdAt" type:"timestamp" timestampFormat:"iso8601"`
10828
10829	Description *string `locationName:"description" type:"string"`
10830
10831	Id *string `locationName:"id" type:"string"`
10832
10833	Partition *string `locationName:"partition" type:"string"`
10834
10835	// Provides the details of a policy finding.
10836	PolicyDetails *PolicyDetails `locationName:"policyDetails" type:"structure"`
10837
10838	Region *string `locationName:"region" type:"string"`
10839
10840	// Provides information about the resources that a finding applies to.
10841	ResourcesAffected *ResourcesAffected `locationName:"resourcesAffected" type:"structure"`
10842
10843	Sample *bool `locationName:"sample" type:"boolean"`
10844
10845	SchemaVersion *string `locationName:"schemaVersion" type:"string"`
10846
10847	// Provides the numerical and qualitative representations of a finding's severity.
10848	Severity *Severity `locationName:"severity" type:"structure"`
10849
10850	Title *string `locationName:"title" type:"string"`
10851
10852	// The type of finding. For details about each type, see Types of Amazon Macie
10853	// findings (https://docs.aws.amazon.com/macie/latest/user/findings-types.html)
10854	// in the Amazon Macie User Guide. Valid values are:
10855	Type *string `locationName:"type" type:"string" enum:"FindingType"`
10856
10857	UpdatedAt *time.Time `locationName:"updatedAt" type:"timestamp" timestampFormat:"iso8601"`
10858}
10859
10860// String returns the string representation.
10861//
10862// API parameter values that are decorated as "sensitive" in the API will not
10863// be included in the string output. The member name will be present, but the
10864// value will be replaced with "sensitive".
10865func (s Finding) String() string {
10866	return awsutil.Prettify(s)
10867}
10868
10869// GoString returns the string representation.
10870//
10871// API parameter values that are decorated as "sensitive" in the API will not
10872// be included in the string output. The member name will be present, but the
10873// value will be replaced with "sensitive".
10874func (s Finding) GoString() string {
10875	return s.String()
10876}
10877
10878// SetAccountId sets the AccountId field's value.
10879func (s *Finding) SetAccountId(v string) *Finding {
10880	s.AccountId = &v
10881	return s
10882}
10883
10884// SetArchived sets the Archived field's value.
10885func (s *Finding) SetArchived(v bool) *Finding {
10886	s.Archived = &v
10887	return s
10888}
10889
10890// SetCategory sets the Category field's value.
10891func (s *Finding) SetCategory(v string) *Finding {
10892	s.Category = &v
10893	return s
10894}
10895
10896// SetClassificationDetails sets the ClassificationDetails field's value.
10897func (s *Finding) SetClassificationDetails(v *ClassificationDetails) *Finding {
10898	s.ClassificationDetails = v
10899	return s
10900}
10901
10902// SetCount sets the Count field's value.
10903func (s *Finding) SetCount(v int64) *Finding {
10904	s.Count = &v
10905	return s
10906}
10907
10908// SetCreatedAt sets the CreatedAt field's value.
10909func (s *Finding) SetCreatedAt(v time.Time) *Finding {
10910	s.CreatedAt = &v
10911	return s
10912}
10913
10914// SetDescription sets the Description field's value.
10915func (s *Finding) SetDescription(v string) *Finding {
10916	s.Description = &v
10917	return s
10918}
10919
10920// SetId sets the Id field's value.
10921func (s *Finding) SetId(v string) *Finding {
10922	s.Id = &v
10923	return s
10924}
10925
10926// SetPartition sets the Partition field's value.
10927func (s *Finding) SetPartition(v string) *Finding {
10928	s.Partition = &v
10929	return s
10930}
10931
10932// SetPolicyDetails sets the PolicyDetails field's value.
10933func (s *Finding) SetPolicyDetails(v *PolicyDetails) *Finding {
10934	s.PolicyDetails = v
10935	return s
10936}
10937
10938// SetRegion sets the Region field's value.
10939func (s *Finding) SetRegion(v string) *Finding {
10940	s.Region = &v
10941	return s
10942}
10943
10944// SetResourcesAffected sets the ResourcesAffected field's value.
10945func (s *Finding) SetResourcesAffected(v *ResourcesAffected) *Finding {
10946	s.ResourcesAffected = v
10947	return s
10948}
10949
10950// SetSample sets the Sample field's value.
10951func (s *Finding) SetSample(v bool) *Finding {
10952	s.Sample = &v
10953	return s
10954}
10955
10956// SetSchemaVersion sets the SchemaVersion field's value.
10957func (s *Finding) SetSchemaVersion(v string) *Finding {
10958	s.SchemaVersion = &v
10959	return s
10960}
10961
10962// SetSeverity sets the Severity field's value.
10963func (s *Finding) SetSeverity(v *Severity) *Finding {
10964	s.Severity = v
10965	return s
10966}
10967
10968// SetTitle sets the Title field's value.
10969func (s *Finding) SetTitle(v string) *Finding {
10970	s.Title = &v
10971	return s
10972}
10973
10974// SetType sets the Type field's value.
10975func (s *Finding) SetType(v string) *Finding {
10976	s.Type = &v
10977	return s
10978}
10979
10980// SetUpdatedAt sets the UpdatedAt field's value.
10981func (s *Finding) SetUpdatedAt(v time.Time) *Finding {
10982	s.UpdatedAt = &v
10983	return s
10984}
10985
10986// Provides information about an action that occurred for a resource and produced
10987// a policy finding.
10988type FindingAction struct {
10989	_ struct{} `type:"structure"`
10990
10991	// The type of action that occurred for the resource and produced the policy
10992	// finding:
10993	ActionType *string `locationName:"actionType" type:"string" enum:"FindingActionType"`
10994
10995	// Provides information about an API operation that an entity invoked for an
10996	// affected resource.
10997	ApiCallDetails *ApiCallDetails `locationName:"apiCallDetails" type:"structure"`
10998}
10999
11000// String returns the string representation.
11001//
11002// API parameter values that are decorated as "sensitive" in the API will not
11003// be included in the string output. The member name will be present, but the
11004// value will be replaced with "sensitive".
11005func (s FindingAction) String() string {
11006	return awsutil.Prettify(s)
11007}
11008
11009// GoString returns the string representation.
11010//
11011// API parameter values that are decorated as "sensitive" in the API will not
11012// be included in the string output. The member name will be present, but the
11013// value will be replaced with "sensitive".
11014func (s FindingAction) GoString() string {
11015	return s.String()
11016}
11017
11018// SetActionType sets the ActionType field's value.
11019func (s *FindingAction) SetActionType(v string) *FindingAction {
11020	s.ActionType = &v
11021	return s
11022}
11023
11024// SetApiCallDetails sets the ApiCallDetails field's value.
11025func (s *FindingAction) SetApiCallDetails(v *ApiCallDetails) *FindingAction {
11026	s.ApiCallDetails = v
11027	return s
11028}
11029
11030// Provides information about an entity that performed an action that produced
11031// a policy finding for a resource.
11032type FindingActor struct {
11033	_ struct{} `type:"structure"`
11034
11035	// Provides information about the domain name of the device that an entity used
11036	// to perform an action on an affected resource.
11037	DomainDetails *DomainDetails `locationName:"domainDetails" type:"structure"`
11038
11039	// Provides information about the IP address of the device that an entity used
11040	// to perform an action on an affected resource.
11041	IpAddressDetails *IpAddressDetails `locationName:"ipAddressDetails" type:"structure"`
11042
11043	// Provides information about the type and other characteristics of an entity
11044	// that performed an action on an affected resource.
11045	UserIdentity *UserIdentity `locationName:"userIdentity" type:"structure"`
11046}
11047
11048// String returns the string representation.
11049//
11050// API parameter values that are decorated as "sensitive" in the API will not
11051// be included in the string output. The member name will be present, but the
11052// value will be replaced with "sensitive".
11053func (s FindingActor) String() string {
11054	return awsutil.Prettify(s)
11055}
11056
11057// GoString returns the string representation.
11058//
11059// API parameter values that are decorated as "sensitive" in the API will not
11060// be included in the string output. The member name will be present, but the
11061// value will be replaced with "sensitive".
11062func (s FindingActor) GoString() string {
11063	return s.String()
11064}
11065
11066// SetDomainDetails sets the DomainDetails field's value.
11067func (s *FindingActor) SetDomainDetails(v *DomainDetails) *FindingActor {
11068	s.DomainDetails = v
11069	return s
11070}
11071
11072// SetIpAddressDetails sets the IpAddressDetails field's value.
11073func (s *FindingActor) SetIpAddressDetails(v *IpAddressDetails) *FindingActor {
11074	s.IpAddressDetails = v
11075	return s
11076}
11077
11078// SetUserIdentity sets the UserIdentity field's value.
11079func (s *FindingActor) SetUserIdentity(v *UserIdentity) *FindingActor {
11080	s.UserIdentity = v
11081	return s
11082}
11083
11084// Specifies, as a map, one or more property-based conditions that filter the
11085// results of a query for findings.
11086type FindingCriteria struct {
11087	_ struct{} `type:"structure"`
11088
11089	// Specifies a condition that defines a property, operator, and one or more
11090	// values to filter the results of a query for findings. The number of values
11091	// depends on the property and operator specified by the condition. For information
11092	// about defining filter conditions, see Fundamentals of filtering findings
11093	// (https://docs.aws.amazon.com/macie/latest/user/findings-filter-basics.html)
11094	// in the Amazon Macie User Guide.
11095	Criterion map[string]*CriterionAdditionalProperties `locationName:"criterion" type:"map"`
11096}
11097
11098// String returns the string representation.
11099//
11100// API parameter values that are decorated as "sensitive" in the API will not
11101// be included in the string output. The member name will be present, but the
11102// value will be replaced with "sensitive".
11103func (s FindingCriteria) String() string {
11104	return awsutil.Prettify(s)
11105}
11106
11107// GoString returns the string representation.
11108//
11109// API parameter values that are decorated as "sensitive" in the API will not
11110// be included in the string output. The member name will be present, but the
11111// value will be replaced with "sensitive".
11112func (s FindingCriteria) GoString() string {
11113	return s.String()
11114}
11115
11116// SetCriterion sets the Criterion field's value.
11117func (s *FindingCriteria) SetCriterion(v map[string]*CriterionAdditionalProperties) *FindingCriteria {
11118	s.Criterion = v
11119	return s
11120}
11121
11122// Specifies criteria for sorting the results of a query that retrieves aggregated
11123// statistical data about findings.
11124type FindingStatisticsSortCriteria struct {
11125	_ struct{} `type:"structure"`
11126
11127	// The grouping to sort the results by. Valid values are:
11128	AttributeName *string `locationName:"attributeName" type:"string" enum:"FindingStatisticsSortAttributeName"`
11129
11130	OrderBy *string `locationName:"orderBy" type:"string" enum:"OrderBy"`
11131}
11132
11133// String returns the string representation.
11134//
11135// API parameter values that are decorated as "sensitive" in the API will not
11136// be included in the string output. The member name will be present, but the
11137// value will be replaced with "sensitive".
11138func (s FindingStatisticsSortCriteria) String() string {
11139	return awsutil.Prettify(s)
11140}
11141
11142// GoString returns the string representation.
11143//
11144// API parameter values that are decorated as "sensitive" in the API will not
11145// be included in the string output. The member name will be present, but the
11146// value will be replaced with "sensitive".
11147func (s FindingStatisticsSortCriteria) GoString() string {
11148	return s.String()
11149}
11150
11151// SetAttributeName sets the AttributeName field's value.
11152func (s *FindingStatisticsSortCriteria) SetAttributeName(v string) *FindingStatisticsSortCriteria {
11153	s.AttributeName = &v
11154	return s
11155}
11156
11157// SetOrderBy sets the OrderBy field's value.
11158func (s *FindingStatisticsSortCriteria) SetOrderBy(v string) *FindingStatisticsSortCriteria {
11159	s.OrderBy = &v
11160	return s
11161}
11162
11163// Provides information about a findings filter.
11164type FindingsFilterListItem struct {
11165	_ struct{} `type:"structure"`
11166
11167	// The action to perform on findings that meet the filter criteria. To suppress
11168	// (automatically archive) findings that meet the criteria, set this value to
11169	// ARCHIVE. Valid values are:
11170	Action *string `locationName:"action" type:"string" enum:"FindingsFilterAction"`
11171
11172	Arn *string `locationName:"arn" type:"string"`
11173
11174	Id *string `locationName:"id" type:"string"`
11175
11176	Name *string `locationName:"name" type:"string"`
11177
11178	// A string-to-string map of key-value pairs that specifies the tags (keys and
11179	// values) for a classification job, custom data identifier, findings filter,
11180	// or member account.
11181	Tags map[string]*string `locationName:"tags" type:"map"`
11182}
11183
11184// String returns the string representation.
11185//
11186// API parameter values that are decorated as "sensitive" in the API will not
11187// be included in the string output. The member name will be present, but the
11188// value will be replaced with "sensitive".
11189func (s FindingsFilterListItem) String() string {
11190	return awsutil.Prettify(s)
11191}
11192
11193// GoString returns the string representation.
11194//
11195// API parameter values that are decorated as "sensitive" in the API will not
11196// be included in the string output. The member name will be present, but the
11197// value will be replaced with "sensitive".
11198func (s FindingsFilterListItem) GoString() string {
11199	return s.String()
11200}
11201
11202// SetAction sets the Action field's value.
11203func (s *FindingsFilterListItem) SetAction(v string) *FindingsFilterListItem {
11204	s.Action = &v
11205	return s
11206}
11207
11208// SetArn sets the Arn field's value.
11209func (s *FindingsFilterListItem) SetArn(v string) *FindingsFilterListItem {
11210	s.Arn = &v
11211	return s
11212}
11213
11214// SetId sets the Id field's value.
11215func (s *FindingsFilterListItem) SetId(v string) *FindingsFilterListItem {
11216	s.Id = &v
11217	return s
11218}
11219
11220// SetName sets the Name field's value.
11221func (s *FindingsFilterListItem) SetName(v string) *FindingsFilterListItem {
11222	s.Name = &v
11223	return s
11224}
11225
11226// SetTags sets the Tags field's value.
11227func (s *FindingsFilterListItem) SetTags(v map[string]*string) *FindingsFilterListItem {
11228	s.Tags = v
11229	return s
11230}
11231
11232type GetAdministratorAccountInput struct {
11233	_ struct{} `type:"structure" nopayload:"true"`
11234}
11235
11236// String returns the string representation.
11237//
11238// API parameter values that are decorated as "sensitive" in the API will not
11239// be included in the string output. The member name will be present, but the
11240// value will be replaced with "sensitive".
11241func (s GetAdministratorAccountInput) String() string {
11242	return awsutil.Prettify(s)
11243}
11244
11245// GoString returns the string representation.
11246//
11247// API parameter values that are decorated as "sensitive" in the API will not
11248// be included in the string output. The member name will be present, but the
11249// value will be replaced with "sensitive".
11250func (s GetAdministratorAccountInput) GoString() string {
11251	return s.String()
11252}
11253
11254// Provides information about the Amazon Macie administrator account for an
11255// account. If the accounts are associated by a Macie membership invitation,
11256// the response also provides information about that invitation.
11257type GetAdministratorAccountOutput struct {
11258	_ struct{} `type:"structure"`
11259
11260	// Provides information about an Amazon Macie membership invitation that was
11261	// received by an account.
11262	Administrator *Invitation `locationName:"administrator" type:"structure"`
11263}
11264
11265// String returns the string representation.
11266//
11267// API parameter values that are decorated as "sensitive" in the API will not
11268// be included in the string output. The member name will be present, but the
11269// value will be replaced with "sensitive".
11270func (s GetAdministratorAccountOutput) String() string {
11271	return awsutil.Prettify(s)
11272}
11273
11274// GoString returns the string representation.
11275//
11276// API parameter values that are decorated as "sensitive" in the API will not
11277// be included in the string output. The member name will be present, but the
11278// value will be replaced with "sensitive".
11279func (s GetAdministratorAccountOutput) GoString() string {
11280	return s.String()
11281}
11282
11283// SetAdministrator sets the Administrator field's value.
11284func (s *GetAdministratorAccountOutput) SetAdministrator(v *Invitation) *GetAdministratorAccountOutput {
11285	s.Administrator = v
11286	return s
11287}
11288
11289// Specifies the account that owns the S3 buckets to retrieve aggregated statistical
11290// data for.
11291type GetBucketStatisticsInput struct {
11292	_ struct{} `type:"structure"`
11293
11294	AccountId *string `locationName:"accountId" type:"string"`
11295}
11296
11297// String returns the string representation.
11298//
11299// API parameter values that are decorated as "sensitive" in the API will not
11300// be included in the string output. The member name will be present, but the
11301// value will be replaced with "sensitive".
11302func (s GetBucketStatisticsInput) String() string {
11303	return awsutil.Prettify(s)
11304}
11305
11306// GoString returns the string representation.
11307//
11308// API parameter values that are decorated as "sensitive" in the API will not
11309// be included in the string output. The member name will be present, but the
11310// value will be replaced with "sensitive".
11311func (s GetBucketStatisticsInput) GoString() string {
11312	return s.String()
11313}
11314
11315// SetAccountId sets the AccountId field's value.
11316func (s *GetBucketStatisticsInput) SetAccountId(v string) *GetBucketStatisticsInput {
11317	s.AccountId = &v
11318	return s
11319}
11320
11321// Provides the results of a query that retrieved aggregated statistical data
11322// for all the S3 buckets that Amazon Macie monitors and analyzes for your account.
11323type GetBucketStatisticsOutput struct {
11324	_ struct{} `type:"structure"`
11325
11326	BucketCount *int64 `locationName:"bucketCount" type:"long"`
11327
11328	// Provides information about the number of S3 buckets that are publicly accessible
11329	// based on a combination of permissions settings for each bucket.
11330	BucketCountByEffectivePermission *BucketCountByEffectivePermission `locationName:"bucketCountByEffectivePermission" type:"structure"`
11331
11332	// Provides information about the number of S3 buckets that use certain types
11333	// of server-side encryption by default or don't encrypt new objects by default.
11334	// For detailed information about these settings, see Setting default server-side
11335	// encryption behavior for Amazon S3 buckets (https://docs.aws.amazon.com/AmazonS3/latest/userguide/bucket-encryption.html)
11336	// in the Amazon Simple Storage Service User Guide.
11337	BucketCountByEncryptionType *BucketCountByEncryptionType `locationName:"bucketCountByEncryptionType" type:"structure"`
11338
11339	// Provides information about the number of S3 buckets whose bucket policies
11340	// do or don't require server-side encryption of objects when objects are uploaded
11341	// to the buckets.
11342	BucketCountByObjectEncryptionRequirement *BucketCountPolicyAllowsUnencryptedObjectUploads `locationName:"bucketCountByObjectEncryptionRequirement" type:"structure"`
11343
11344	// Provides information about the number of S3 buckets that are or aren't shared
11345	// with other Amazon Web Services accounts.
11346	BucketCountBySharedAccessType *BucketCountBySharedAccessType `locationName:"bucketCountBySharedAccessType" type:"structure"`
11347
11348	ClassifiableObjectCount *int64 `locationName:"classifiableObjectCount" type:"long"`
11349
11350	ClassifiableSizeInBytes *int64 `locationName:"classifiableSizeInBytes" type:"long"`
11351
11352	LastUpdated *time.Time `locationName:"lastUpdated" type:"timestamp" timestampFormat:"iso8601"`
11353
11354	ObjectCount *int64 `locationName:"objectCount" type:"long"`
11355
11356	SizeInBytes *int64 `locationName:"sizeInBytes" type:"long"`
11357
11358	SizeInBytesCompressed *int64 `locationName:"sizeInBytesCompressed" type:"long"`
11359
11360	// Provides information about the total storage size (in bytes) or number of
11361	// objects that Amazon Macie can't analyze in one or more S3 buckets. In a BucketMetadata
11362	// or MatchingBucket object, this data is for a specific bucket. In a GetBucketStatisticsResponse
11363	// object, this data is aggregated for the buckets in the query results. If
11364	// versioning is enabled for a bucket, total storage size values are based on
11365	// the size of the latest version of each applicable object in the bucket.
11366	UnclassifiableObjectCount *ObjectLevelStatistics `locationName:"unclassifiableObjectCount" type:"structure"`
11367
11368	// Provides information about the total storage size (in bytes) or number of
11369	// objects that Amazon Macie can't analyze in one or more S3 buckets. In a BucketMetadata
11370	// or MatchingBucket object, this data is for a specific bucket. In a GetBucketStatisticsResponse
11371	// object, this data is aggregated for the buckets in the query results. If
11372	// versioning is enabled for a bucket, total storage size values are based on
11373	// the size of the latest version of each applicable object in the bucket.
11374	UnclassifiableObjectSizeInBytes *ObjectLevelStatistics `locationName:"unclassifiableObjectSizeInBytes" type:"structure"`
11375}
11376
11377// String returns the string representation.
11378//
11379// API parameter values that are decorated as "sensitive" in the API will not
11380// be included in the string output. The member name will be present, but the
11381// value will be replaced with "sensitive".
11382func (s GetBucketStatisticsOutput) String() string {
11383	return awsutil.Prettify(s)
11384}
11385
11386// GoString returns the string representation.
11387//
11388// API parameter values that are decorated as "sensitive" in the API will not
11389// be included in the string output. The member name will be present, but the
11390// value will be replaced with "sensitive".
11391func (s GetBucketStatisticsOutput) GoString() string {
11392	return s.String()
11393}
11394
11395// SetBucketCount sets the BucketCount field's value.
11396func (s *GetBucketStatisticsOutput) SetBucketCount(v int64) *GetBucketStatisticsOutput {
11397	s.BucketCount = &v
11398	return s
11399}
11400
11401// SetBucketCountByEffectivePermission sets the BucketCountByEffectivePermission field's value.
11402func (s *GetBucketStatisticsOutput) SetBucketCountByEffectivePermission(v *BucketCountByEffectivePermission) *GetBucketStatisticsOutput {
11403	s.BucketCountByEffectivePermission = v
11404	return s
11405}
11406
11407// SetBucketCountByEncryptionType sets the BucketCountByEncryptionType field's value.
11408func (s *GetBucketStatisticsOutput) SetBucketCountByEncryptionType(v *BucketCountByEncryptionType) *GetBucketStatisticsOutput {
11409	s.BucketCountByEncryptionType = v
11410	return s
11411}
11412
11413// SetBucketCountByObjectEncryptionRequirement sets the BucketCountByObjectEncryptionRequirement field's value.
11414func (s *GetBucketStatisticsOutput) SetBucketCountByObjectEncryptionRequirement(v *BucketCountPolicyAllowsUnencryptedObjectUploads) *GetBucketStatisticsOutput {
11415	s.BucketCountByObjectEncryptionRequirement = v
11416	return s
11417}
11418
11419// SetBucketCountBySharedAccessType sets the BucketCountBySharedAccessType field's value.
11420func (s *GetBucketStatisticsOutput) SetBucketCountBySharedAccessType(v *BucketCountBySharedAccessType) *GetBucketStatisticsOutput {
11421	s.BucketCountBySharedAccessType = v
11422	return s
11423}
11424
11425// SetClassifiableObjectCount sets the ClassifiableObjectCount field's value.
11426func (s *GetBucketStatisticsOutput) SetClassifiableObjectCount(v int64) *GetBucketStatisticsOutput {
11427	s.ClassifiableObjectCount = &v
11428	return s
11429}
11430
11431// SetClassifiableSizeInBytes sets the ClassifiableSizeInBytes field's value.
11432func (s *GetBucketStatisticsOutput) SetClassifiableSizeInBytes(v int64) *GetBucketStatisticsOutput {
11433	s.ClassifiableSizeInBytes = &v
11434	return s
11435}
11436
11437// SetLastUpdated sets the LastUpdated field's value.
11438func (s *GetBucketStatisticsOutput) SetLastUpdated(v time.Time) *GetBucketStatisticsOutput {
11439	s.LastUpdated = &v
11440	return s
11441}
11442
11443// SetObjectCount sets the ObjectCount field's value.
11444func (s *GetBucketStatisticsOutput) SetObjectCount(v int64) *GetBucketStatisticsOutput {
11445	s.ObjectCount = &v
11446	return s
11447}
11448
11449// SetSizeInBytes sets the SizeInBytes field's value.
11450func (s *GetBucketStatisticsOutput) SetSizeInBytes(v int64) *GetBucketStatisticsOutput {
11451	s.SizeInBytes = &v
11452	return s
11453}
11454
11455// SetSizeInBytesCompressed sets the SizeInBytesCompressed field's value.
11456func (s *GetBucketStatisticsOutput) SetSizeInBytesCompressed(v int64) *GetBucketStatisticsOutput {
11457	s.SizeInBytesCompressed = &v
11458	return s
11459}
11460
11461// SetUnclassifiableObjectCount sets the UnclassifiableObjectCount field's value.
11462func (s *GetBucketStatisticsOutput) SetUnclassifiableObjectCount(v *ObjectLevelStatistics) *GetBucketStatisticsOutput {
11463	s.UnclassifiableObjectCount = v
11464	return s
11465}
11466
11467// SetUnclassifiableObjectSizeInBytes sets the UnclassifiableObjectSizeInBytes field's value.
11468func (s *GetBucketStatisticsOutput) SetUnclassifiableObjectSizeInBytes(v *ObjectLevelStatistics) *GetBucketStatisticsOutput {
11469	s.UnclassifiableObjectSizeInBytes = v
11470	return s
11471}
11472
11473type GetClassificationExportConfigurationInput struct {
11474	_ struct{} `type:"structure" nopayload:"true"`
11475}
11476
11477// String returns the string representation.
11478//
11479// API parameter values that are decorated as "sensitive" in the API will not
11480// be included in the string output. The member name will be present, but the
11481// value will be replaced with "sensitive".
11482func (s GetClassificationExportConfigurationInput) String() string {
11483	return awsutil.Prettify(s)
11484}
11485
11486// GoString returns the string representation.
11487//
11488// API parameter values that are decorated as "sensitive" in the API will not
11489// be included in the string output. The member name will be present, but the
11490// value will be replaced with "sensitive".
11491func (s GetClassificationExportConfigurationInput) GoString() string {
11492	return s.String()
11493}
11494
11495// Provides information about the current configuration settings for storing
11496// data classification results.
11497type GetClassificationExportConfigurationOutput struct {
11498	_ struct{} `type:"structure"`
11499
11500	// Specifies where to store data classification results, and the encryption
11501	// settings to use when storing results in that location. Currently, you can
11502	// store classification results only in an S3 bucket.
11503	Configuration *ClassificationExportConfiguration `locationName:"configuration" type:"structure"`
11504}
11505
11506// String returns the string representation.
11507//
11508// API parameter values that are decorated as "sensitive" in the API will not
11509// be included in the string output. The member name will be present, but the
11510// value will be replaced with "sensitive".
11511func (s GetClassificationExportConfigurationOutput) String() string {
11512	return awsutil.Prettify(s)
11513}
11514
11515// GoString returns the string representation.
11516//
11517// API parameter values that are decorated as "sensitive" in the API will not
11518// be included in the string output. The member name will be present, but the
11519// value will be replaced with "sensitive".
11520func (s GetClassificationExportConfigurationOutput) GoString() string {
11521	return s.String()
11522}
11523
11524// SetConfiguration sets the Configuration field's value.
11525func (s *GetClassificationExportConfigurationOutput) SetConfiguration(v *ClassificationExportConfiguration) *GetClassificationExportConfigurationOutput {
11526	s.Configuration = v
11527	return s
11528}
11529
11530type GetCustomDataIdentifierInput struct {
11531	_ struct{} `type:"structure" nopayload:"true"`
11532
11533	// Id is a required field
11534	Id *string `location:"uri" locationName:"id" type:"string" required:"true"`
11535}
11536
11537// String returns the string representation.
11538//
11539// API parameter values that are decorated as "sensitive" in the API will not
11540// be included in the string output. The member name will be present, but the
11541// value will be replaced with "sensitive".
11542func (s GetCustomDataIdentifierInput) String() string {
11543	return awsutil.Prettify(s)
11544}
11545
11546// GoString returns the string representation.
11547//
11548// API parameter values that are decorated as "sensitive" in the API will not
11549// be included in the string output. The member name will be present, but the
11550// value will be replaced with "sensitive".
11551func (s GetCustomDataIdentifierInput) GoString() string {
11552	return s.String()
11553}
11554
11555// Validate inspects the fields of the type to determine if they are valid.
11556func (s *GetCustomDataIdentifierInput) Validate() error {
11557	invalidParams := request.ErrInvalidParams{Context: "GetCustomDataIdentifierInput"}
11558	if s.Id == nil {
11559		invalidParams.Add(request.NewErrParamRequired("Id"))
11560	}
11561	if s.Id != nil && len(*s.Id) < 1 {
11562		invalidParams.Add(request.NewErrParamMinLen("Id", 1))
11563	}
11564
11565	if invalidParams.Len() > 0 {
11566		return invalidParams
11567	}
11568	return nil
11569}
11570
11571// SetId sets the Id field's value.
11572func (s *GetCustomDataIdentifierInput) SetId(v string) *GetCustomDataIdentifierInput {
11573	s.Id = &v
11574	return s
11575}
11576
11577// Provides information about the detection criteria and other settings for
11578// a custom data identifier.
11579type GetCustomDataIdentifierOutput struct {
11580	_ struct{} `type:"structure"`
11581
11582	Arn *string `locationName:"arn" type:"string"`
11583
11584	CreatedAt *time.Time `locationName:"createdAt" type:"timestamp" timestampFormat:"iso8601"`
11585
11586	Deleted *bool `locationName:"deleted" type:"boolean"`
11587
11588	Description *string `locationName:"description" type:"string"`
11589
11590	Id *string `locationName:"id" type:"string"`
11591
11592	IgnoreWords []*string `locationName:"ignoreWords" type:"list"`
11593
11594	Keywords []*string `locationName:"keywords" type:"list"`
11595
11596	MaximumMatchDistance *int64 `locationName:"maximumMatchDistance" type:"integer"`
11597
11598	Name *string `locationName:"name" type:"string"`
11599
11600	Regex *string `locationName:"regex" type:"string"`
11601
11602	// The severity to assign to findings that the custom data identifier produces,
11603	// based on the number of occurrences of text that matches the custom data identifier's
11604	// detection criteria. You can specify as many as three SeverityLevel objects
11605	// in this array, one for each severity: LOW, MEDIUM, or HIGH. If you specify
11606	// more than one, the occurrences thresholds must be in ascending order by severity,
11607	// moving from LOW to HIGH. For example, 1 for LOW, 50 for MEDIUM, and 100 for
11608	// HIGH. If an S3 object contains fewer occurrences than the lowest specified
11609	// threshold, Amazon Macie doesn't create a finding.
11610	//
11611	// If you don't specify any values for this array, Macie creates findings for
11612	// S3 objects that contain at least one occurrence of text that matches the
11613	// detection criteria, and Macie automatically assigns the MEDIUM severity to
11614	// those findings.
11615	SeverityLevels []*SeverityLevel `locationName:"severityLevels" type:"list"`
11616
11617	// A string-to-string map of key-value pairs that specifies the tags (keys and
11618	// values) for a classification job, custom data identifier, findings filter,
11619	// or member account.
11620	Tags map[string]*string `locationName:"tags" type:"map"`
11621}
11622
11623// String returns the string representation.
11624//
11625// API parameter values that are decorated as "sensitive" in the API will not
11626// be included in the string output. The member name will be present, but the
11627// value will be replaced with "sensitive".
11628func (s GetCustomDataIdentifierOutput) String() string {
11629	return awsutil.Prettify(s)
11630}
11631
11632// GoString returns the string representation.
11633//
11634// API parameter values that are decorated as "sensitive" in the API will not
11635// be included in the string output. The member name will be present, but the
11636// value will be replaced with "sensitive".
11637func (s GetCustomDataIdentifierOutput) GoString() string {
11638	return s.String()
11639}
11640
11641// SetArn sets the Arn field's value.
11642func (s *GetCustomDataIdentifierOutput) SetArn(v string) *GetCustomDataIdentifierOutput {
11643	s.Arn = &v
11644	return s
11645}
11646
11647// SetCreatedAt sets the CreatedAt field's value.
11648func (s *GetCustomDataIdentifierOutput) SetCreatedAt(v time.Time) *GetCustomDataIdentifierOutput {
11649	s.CreatedAt = &v
11650	return s
11651}
11652
11653// SetDeleted sets the Deleted field's value.
11654func (s *GetCustomDataIdentifierOutput) SetDeleted(v bool) *GetCustomDataIdentifierOutput {
11655	s.Deleted = &v
11656	return s
11657}
11658
11659// SetDescription sets the Description field's value.
11660func (s *GetCustomDataIdentifierOutput) SetDescription(v string) *GetCustomDataIdentifierOutput {
11661	s.Description = &v
11662	return s
11663}
11664
11665// SetId sets the Id field's value.
11666func (s *GetCustomDataIdentifierOutput) SetId(v string) *GetCustomDataIdentifierOutput {
11667	s.Id = &v
11668	return s
11669}
11670
11671// SetIgnoreWords sets the IgnoreWords field's value.
11672func (s *GetCustomDataIdentifierOutput) SetIgnoreWords(v []*string) *GetCustomDataIdentifierOutput {
11673	s.IgnoreWords = v
11674	return s
11675}
11676
11677// SetKeywords sets the Keywords field's value.
11678func (s *GetCustomDataIdentifierOutput) SetKeywords(v []*string) *GetCustomDataIdentifierOutput {
11679	s.Keywords = v
11680	return s
11681}
11682
11683// SetMaximumMatchDistance sets the MaximumMatchDistance field's value.
11684func (s *GetCustomDataIdentifierOutput) SetMaximumMatchDistance(v int64) *GetCustomDataIdentifierOutput {
11685	s.MaximumMatchDistance = &v
11686	return s
11687}
11688
11689// SetName sets the Name field's value.
11690func (s *GetCustomDataIdentifierOutput) SetName(v string) *GetCustomDataIdentifierOutput {
11691	s.Name = &v
11692	return s
11693}
11694
11695// SetRegex sets the Regex field's value.
11696func (s *GetCustomDataIdentifierOutput) SetRegex(v string) *GetCustomDataIdentifierOutput {
11697	s.Regex = &v
11698	return s
11699}
11700
11701// SetSeverityLevels sets the SeverityLevels field's value.
11702func (s *GetCustomDataIdentifierOutput) SetSeverityLevels(v []*SeverityLevel) *GetCustomDataIdentifierOutput {
11703	s.SeverityLevels = v
11704	return s
11705}
11706
11707// SetTags sets the Tags field's value.
11708func (s *GetCustomDataIdentifierOutput) SetTags(v map[string]*string) *GetCustomDataIdentifierOutput {
11709	s.Tags = v
11710	return s
11711}
11712
11713// Specifies criteria for filtering, grouping, sorting, and paginating the results
11714// of a query that retrieves aggregated statistical data about findings.
11715type GetFindingStatisticsInput struct {
11716	_ struct{} `type:"structure"`
11717
11718	// Specifies, as a map, one or more property-based conditions that filter the
11719	// results of a query for findings.
11720	FindingCriteria *FindingCriteria `locationName:"findingCriteria" type:"structure"`
11721
11722	// GroupBy is a required field
11723	GroupBy *string `locationName:"groupBy" type:"string" required:"true" enum:"GroupBy"`
11724
11725	Size *int64 `locationName:"size" type:"integer"`
11726
11727	// Specifies criteria for sorting the results of a query that retrieves aggregated
11728	// statistical data about findings.
11729	SortCriteria *FindingStatisticsSortCriteria `locationName:"sortCriteria" type:"structure"`
11730}
11731
11732// String returns the string representation.
11733//
11734// API parameter values that are decorated as "sensitive" in the API will not
11735// be included in the string output. The member name will be present, but the
11736// value will be replaced with "sensitive".
11737func (s GetFindingStatisticsInput) String() string {
11738	return awsutil.Prettify(s)
11739}
11740
11741// GoString returns the string representation.
11742//
11743// API parameter values that are decorated as "sensitive" in the API will not
11744// be included in the string output. The member name will be present, but the
11745// value will be replaced with "sensitive".
11746func (s GetFindingStatisticsInput) GoString() string {
11747	return s.String()
11748}
11749
11750// Validate inspects the fields of the type to determine if they are valid.
11751func (s *GetFindingStatisticsInput) Validate() error {
11752	invalidParams := request.ErrInvalidParams{Context: "GetFindingStatisticsInput"}
11753	if s.GroupBy == nil {
11754		invalidParams.Add(request.NewErrParamRequired("GroupBy"))
11755	}
11756
11757	if invalidParams.Len() > 0 {
11758		return invalidParams
11759	}
11760	return nil
11761}
11762
11763// SetFindingCriteria sets the FindingCriteria field's value.
11764func (s *GetFindingStatisticsInput) SetFindingCriteria(v *FindingCriteria) *GetFindingStatisticsInput {
11765	s.FindingCriteria = v
11766	return s
11767}
11768
11769// SetGroupBy sets the GroupBy field's value.
11770func (s *GetFindingStatisticsInput) SetGroupBy(v string) *GetFindingStatisticsInput {
11771	s.GroupBy = &v
11772	return s
11773}
11774
11775// SetSize sets the Size field's value.
11776func (s *GetFindingStatisticsInput) SetSize(v int64) *GetFindingStatisticsInput {
11777	s.Size = &v
11778	return s
11779}
11780
11781// SetSortCriteria sets the SortCriteria field's value.
11782func (s *GetFindingStatisticsInput) SetSortCriteria(v *FindingStatisticsSortCriteria) *GetFindingStatisticsInput {
11783	s.SortCriteria = v
11784	return s
11785}
11786
11787// Provides the results of a query that retrieved aggregated statistical data
11788// about findings.
11789type GetFindingStatisticsOutput struct {
11790	_ struct{} `type:"structure"`
11791
11792	CountsByGroup []*GroupCount `locationName:"countsByGroup" type:"list"`
11793}
11794
11795// String returns the string representation.
11796//
11797// API parameter values that are decorated as "sensitive" in the API will not
11798// be included in the string output. The member name will be present, but the
11799// value will be replaced with "sensitive".
11800func (s GetFindingStatisticsOutput) String() string {
11801	return awsutil.Prettify(s)
11802}
11803
11804// GoString returns the string representation.
11805//
11806// API parameter values that are decorated as "sensitive" in the API will not
11807// be included in the string output. The member name will be present, but the
11808// value will be replaced with "sensitive".
11809func (s GetFindingStatisticsOutput) GoString() string {
11810	return s.String()
11811}
11812
11813// SetCountsByGroup sets the CountsByGroup field's value.
11814func (s *GetFindingStatisticsOutput) SetCountsByGroup(v []*GroupCount) *GetFindingStatisticsOutput {
11815	s.CountsByGroup = v
11816	return s
11817}
11818
11819type GetFindingsFilterInput struct {
11820	_ struct{} `type:"structure" nopayload:"true"`
11821
11822	// Id is a required field
11823	Id *string `location:"uri" locationName:"id" type:"string" required:"true"`
11824}
11825
11826// String returns the string representation.
11827//
11828// API parameter values that are decorated as "sensitive" in the API will not
11829// be included in the string output. The member name will be present, but the
11830// value will be replaced with "sensitive".
11831func (s GetFindingsFilterInput) String() string {
11832	return awsutil.Prettify(s)
11833}
11834
11835// GoString returns the string representation.
11836//
11837// API parameter values that are decorated as "sensitive" in the API will not
11838// be included in the string output. The member name will be present, but the
11839// value will be replaced with "sensitive".
11840func (s GetFindingsFilterInput) GoString() string {
11841	return s.String()
11842}
11843
11844// Validate inspects the fields of the type to determine if they are valid.
11845func (s *GetFindingsFilterInput) Validate() error {
11846	invalidParams := request.ErrInvalidParams{Context: "GetFindingsFilterInput"}
11847	if s.Id == nil {
11848		invalidParams.Add(request.NewErrParamRequired("Id"))
11849	}
11850	if s.Id != nil && len(*s.Id) < 1 {
11851		invalidParams.Add(request.NewErrParamMinLen("Id", 1))
11852	}
11853
11854	if invalidParams.Len() > 0 {
11855		return invalidParams
11856	}
11857	return nil
11858}
11859
11860// SetId sets the Id field's value.
11861func (s *GetFindingsFilterInput) SetId(v string) *GetFindingsFilterInput {
11862	s.Id = &v
11863	return s
11864}
11865
11866// Provides information about the criteria and other settings for a findings
11867// filter.
11868type GetFindingsFilterOutput struct {
11869	_ struct{} `type:"structure"`
11870
11871	// The action to perform on findings that meet the filter criteria. To suppress
11872	// (automatically archive) findings that meet the criteria, set this value to
11873	// ARCHIVE. Valid values are:
11874	Action *string `locationName:"action" type:"string" enum:"FindingsFilterAction"`
11875
11876	Arn *string `locationName:"arn" type:"string"`
11877
11878	Description *string `locationName:"description" type:"string"`
11879
11880	// Specifies, as a map, one or more property-based conditions that filter the
11881	// results of a query for findings.
11882	FindingCriteria *FindingCriteria `locationName:"findingCriteria" type:"structure"`
11883
11884	Id *string `locationName:"id" type:"string"`
11885
11886	Name *string `locationName:"name" type:"string"`
11887
11888	Position *int64 `locationName:"position" type:"integer"`
11889
11890	// A string-to-string map of key-value pairs that specifies the tags (keys and
11891	// values) for a classification job, custom data identifier, findings filter,
11892	// or member account.
11893	Tags map[string]*string `locationName:"tags" type:"map"`
11894}
11895
11896// String returns the string representation.
11897//
11898// API parameter values that are decorated as "sensitive" in the API will not
11899// be included in the string output. The member name will be present, but the
11900// value will be replaced with "sensitive".
11901func (s GetFindingsFilterOutput) String() string {
11902	return awsutil.Prettify(s)
11903}
11904
11905// GoString returns the string representation.
11906//
11907// API parameter values that are decorated as "sensitive" in the API will not
11908// be included in the string output. The member name will be present, but the
11909// value will be replaced with "sensitive".
11910func (s GetFindingsFilterOutput) GoString() string {
11911	return s.String()
11912}
11913
11914// SetAction sets the Action field's value.
11915func (s *GetFindingsFilterOutput) SetAction(v string) *GetFindingsFilterOutput {
11916	s.Action = &v
11917	return s
11918}
11919
11920// SetArn sets the Arn field's value.
11921func (s *GetFindingsFilterOutput) SetArn(v string) *GetFindingsFilterOutput {
11922	s.Arn = &v
11923	return s
11924}
11925
11926// SetDescription sets the Description field's value.
11927func (s *GetFindingsFilterOutput) SetDescription(v string) *GetFindingsFilterOutput {
11928	s.Description = &v
11929	return s
11930}
11931
11932// SetFindingCriteria sets the FindingCriteria field's value.
11933func (s *GetFindingsFilterOutput) SetFindingCriteria(v *FindingCriteria) *GetFindingsFilterOutput {
11934	s.FindingCriteria = v
11935	return s
11936}
11937
11938// SetId sets the Id field's value.
11939func (s *GetFindingsFilterOutput) SetId(v string) *GetFindingsFilterOutput {
11940	s.Id = &v
11941	return s
11942}
11943
11944// SetName sets the Name field's value.
11945func (s *GetFindingsFilterOutput) SetName(v string) *GetFindingsFilterOutput {
11946	s.Name = &v
11947	return s
11948}
11949
11950// SetPosition sets the Position field's value.
11951func (s *GetFindingsFilterOutput) SetPosition(v int64) *GetFindingsFilterOutput {
11952	s.Position = &v
11953	return s
11954}
11955
11956// SetTags sets the Tags field's value.
11957func (s *GetFindingsFilterOutput) SetTags(v map[string]*string) *GetFindingsFilterOutput {
11958	s.Tags = v
11959	return s
11960}
11961
11962// Specifies one or more findings to retrieve.
11963type GetFindingsInput struct {
11964	_ struct{} `type:"structure"`
11965
11966	// FindingIds is a required field
11967	FindingIds []*string `locationName:"findingIds" type:"list" required:"true"`
11968
11969	// Specifies criteria for sorting the results of a request for findings.
11970	SortCriteria *SortCriteria `locationName:"sortCriteria" type:"structure"`
11971}
11972
11973// String returns the string representation.
11974//
11975// API parameter values that are decorated as "sensitive" in the API will not
11976// be included in the string output. The member name will be present, but the
11977// value will be replaced with "sensitive".
11978func (s GetFindingsInput) String() string {
11979	return awsutil.Prettify(s)
11980}
11981
11982// GoString returns the string representation.
11983//
11984// API parameter values that are decorated as "sensitive" in the API will not
11985// be included in the string output. The member name will be present, but the
11986// value will be replaced with "sensitive".
11987func (s GetFindingsInput) GoString() string {
11988	return s.String()
11989}
11990
11991// Validate inspects the fields of the type to determine if they are valid.
11992func (s *GetFindingsInput) Validate() error {
11993	invalidParams := request.ErrInvalidParams{Context: "GetFindingsInput"}
11994	if s.FindingIds == nil {
11995		invalidParams.Add(request.NewErrParamRequired("FindingIds"))
11996	}
11997
11998	if invalidParams.Len() > 0 {
11999		return invalidParams
12000	}
12001	return nil
12002}
12003
12004// SetFindingIds sets the FindingIds field's value.
12005func (s *GetFindingsInput) SetFindingIds(v []*string) *GetFindingsInput {
12006	s.FindingIds = v
12007	return s
12008}
12009
12010// SetSortCriteria sets the SortCriteria field's value.
12011func (s *GetFindingsInput) SetSortCriteria(v *SortCriteria) *GetFindingsInput {
12012	s.SortCriteria = v
12013	return s
12014}
12015
12016// Provides the results of a request for one or more findings.
12017type GetFindingsOutput struct {
12018	_ struct{} `type:"structure"`
12019
12020	Findings []*Finding `locationName:"findings" type:"list"`
12021}
12022
12023// String returns the string representation.
12024//
12025// API parameter values that are decorated as "sensitive" in the API will not
12026// be included in the string output. The member name will be present, but the
12027// value will be replaced with "sensitive".
12028func (s GetFindingsOutput) String() string {
12029	return awsutil.Prettify(s)
12030}
12031
12032// GoString returns the string representation.
12033//
12034// API parameter values that are decorated as "sensitive" in the API will not
12035// be included in the string output. The member name will be present, but the
12036// value will be replaced with "sensitive".
12037func (s GetFindingsOutput) GoString() string {
12038	return s.String()
12039}
12040
12041// SetFindings sets the Findings field's value.
12042func (s *GetFindingsOutput) SetFindings(v []*Finding) *GetFindingsOutput {
12043	s.Findings = v
12044	return s
12045}
12046
12047type GetFindingsPublicationConfigurationInput struct {
12048	_ struct{} `type:"structure" nopayload:"true"`
12049}
12050
12051// String returns the string representation.
12052//
12053// API parameter values that are decorated as "sensitive" in the API will not
12054// be included in the string output. The member name will be present, but the
12055// value will be replaced with "sensitive".
12056func (s GetFindingsPublicationConfigurationInput) String() string {
12057	return awsutil.Prettify(s)
12058}
12059
12060// GoString returns the string representation.
12061//
12062// API parameter values that are decorated as "sensitive" in the API will not
12063// be included in the string output. The member name will be present, but the
12064// value will be replaced with "sensitive".
12065func (s GetFindingsPublicationConfigurationInput) GoString() string {
12066	return s.String()
12067}
12068
12069// Provides information about the current configuration settings for publishing
12070// findings to Security Hub automatically.
12071type GetFindingsPublicationConfigurationOutput struct {
12072	_ struct{} `type:"structure"`
12073
12074	// Specifies configuration settings that determine which findings are published
12075	// to Security Hub automatically. For information about how Macie publishes
12076	// findings to Security Hub, see Amazon Macie integration with Security Hub
12077	// (https://docs.aws.amazon.com/macie/latest/user/securityhub-integration.html)
12078	// in the Amazon Macie User Guide.
12079	SecurityHubConfiguration *SecurityHubConfiguration `locationName:"securityHubConfiguration" type:"structure"`
12080}
12081
12082// String returns the string representation.
12083//
12084// API parameter values that are decorated as "sensitive" in the API will not
12085// be included in the string output. The member name will be present, but the
12086// value will be replaced with "sensitive".
12087func (s GetFindingsPublicationConfigurationOutput) String() string {
12088	return awsutil.Prettify(s)
12089}
12090
12091// GoString returns the string representation.
12092//
12093// API parameter values that are decorated as "sensitive" in the API will not
12094// be included in the string output. The member name will be present, but the
12095// value will be replaced with "sensitive".
12096func (s GetFindingsPublicationConfigurationOutput) GoString() string {
12097	return s.String()
12098}
12099
12100// SetSecurityHubConfiguration sets the SecurityHubConfiguration field's value.
12101func (s *GetFindingsPublicationConfigurationOutput) SetSecurityHubConfiguration(v *SecurityHubConfiguration) *GetFindingsPublicationConfigurationOutput {
12102	s.SecurityHubConfiguration = v
12103	return s
12104}
12105
12106type GetInvitationsCountInput struct {
12107	_ struct{} `type:"structure" nopayload:"true"`
12108}
12109
12110// String returns the string representation.
12111//
12112// API parameter values that are decorated as "sensitive" in the API will not
12113// be included in the string output. The member name will be present, but the
12114// value will be replaced with "sensitive".
12115func (s GetInvitationsCountInput) String() string {
12116	return awsutil.Prettify(s)
12117}
12118
12119// GoString returns the string representation.
12120//
12121// API parameter values that are decorated as "sensitive" in the API will not
12122// be included in the string output. The member name will be present, but the
12123// value will be replaced with "sensitive".
12124func (s GetInvitationsCountInput) GoString() string {
12125	return s.String()
12126}
12127
12128// Provides the count of all the Amazon Macie membership invitations that were
12129// received by an account, not including the currently accepted invitation.
12130type GetInvitationsCountOutput struct {
12131	_ struct{} `type:"structure"`
12132
12133	InvitationsCount *int64 `locationName:"invitationsCount" type:"long"`
12134}
12135
12136// String returns the string representation.
12137//
12138// API parameter values that are decorated as "sensitive" in the API will not
12139// be included in the string output. The member name will be present, but the
12140// value will be replaced with "sensitive".
12141func (s GetInvitationsCountOutput) String() string {
12142	return awsutil.Prettify(s)
12143}
12144
12145// GoString returns the string representation.
12146//
12147// API parameter values that are decorated as "sensitive" in the API will not
12148// be included in the string output. The member name will be present, but the
12149// value will be replaced with "sensitive".
12150func (s GetInvitationsCountOutput) GoString() string {
12151	return s.String()
12152}
12153
12154// SetInvitationsCount sets the InvitationsCount field's value.
12155func (s *GetInvitationsCountOutput) SetInvitationsCount(v int64) *GetInvitationsCountOutput {
12156	s.InvitationsCount = &v
12157	return s
12158}
12159
12160type GetMacieSessionInput struct {
12161	_ struct{} `type:"structure" nopayload:"true"`
12162}
12163
12164// String returns the string representation.
12165//
12166// API parameter values that are decorated as "sensitive" in the API will not
12167// be included in the string output. The member name will be present, but the
12168// value will be replaced with "sensitive".
12169func (s GetMacieSessionInput) String() string {
12170	return awsutil.Prettify(s)
12171}
12172
12173// GoString returns the string representation.
12174//
12175// API parameter values that are decorated as "sensitive" in the API will not
12176// be included in the string output. The member name will be present, but the
12177// value will be replaced with "sensitive".
12178func (s GetMacieSessionInput) GoString() string {
12179	return s.String()
12180}
12181
12182// Provides information about the current status and configuration settings
12183// for an Amazon Macie account.
12184type GetMacieSessionOutput struct {
12185	_ struct{} `type:"structure"`
12186
12187	CreatedAt *time.Time `locationName:"createdAt" type:"timestamp" timestampFormat:"iso8601"`
12188
12189	// The frequency with which Amazon Macie publishes updates to policy findings
12190	// for an account. This includes publishing updates to Security Hub and Amazon
12191	// EventBridge (formerly called Amazon CloudWatch Events). For more information,
12192	// see Monitoring and processing findings (https://docs.aws.amazon.com/macie/latest/user/findings-monitor.html)
12193	// in the Amazon Macie User Guide. Valid values are:
12194	FindingPublishingFrequency *string `locationName:"findingPublishingFrequency" type:"string" enum:"FindingPublishingFrequency"`
12195
12196	ServiceRole *string `locationName:"serviceRole" type:"string"`
12197
12198	// The status of an Amazon Macie account. Valid values are:
12199	Status *string `locationName:"status" type:"string" enum:"MacieStatus"`
12200
12201	UpdatedAt *time.Time `locationName:"updatedAt" type:"timestamp" timestampFormat:"iso8601"`
12202}
12203
12204// String returns the string representation.
12205//
12206// API parameter values that are decorated as "sensitive" in the API will not
12207// be included in the string output. The member name will be present, but the
12208// value will be replaced with "sensitive".
12209func (s GetMacieSessionOutput) String() string {
12210	return awsutil.Prettify(s)
12211}
12212
12213// GoString returns the string representation.
12214//
12215// API parameter values that are decorated as "sensitive" in the API will not
12216// be included in the string output. The member name will be present, but the
12217// value will be replaced with "sensitive".
12218func (s GetMacieSessionOutput) GoString() string {
12219	return s.String()
12220}
12221
12222// SetCreatedAt sets the CreatedAt field's value.
12223func (s *GetMacieSessionOutput) SetCreatedAt(v time.Time) *GetMacieSessionOutput {
12224	s.CreatedAt = &v
12225	return s
12226}
12227
12228// SetFindingPublishingFrequency sets the FindingPublishingFrequency field's value.
12229func (s *GetMacieSessionOutput) SetFindingPublishingFrequency(v string) *GetMacieSessionOutput {
12230	s.FindingPublishingFrequency = &v
12231	return s
12232}
12233
12234// SetServiceRole sets the ServiceRole field's value.
12235func (s *GetMacieSessionOutput) SetServiceRole(v string) *GetMacieSessionOutput {
12236	s.ServiceRole = &v
12237	return s
12238}
12239
12240// SetStatus sets the Status field's value.
12241func (s *GetMacieSessionOutput) SetStatus(v string) *GetMacieSessionOutput {
12242	s.Status = &v
12243	return s
12244}
12245
12246// SetUpdatedAt sets the UpdatedAt field's value.
12247func (s *GetMacieSessionOutput) SetUpdatedAt(v time.Time) *GetMacieSessionOutput {
12248	s.UpdatedAt = &v
12249	return s
12250}
12251
12252type GetMasterAccountInput struct {
12253	_ struct{} `type:"structure" nopayload:"true"`
12254}
12255
12256// String returns the string representation.
12257//
12258// API parameter values that are decorated as "sensitive" in the API will not
12259// be included in the string output. The member name will be present, but the
12260// value will be replaced with "sensitive".
12261func (s GetMasterAccountInput) String() string {
12262	return awsutil.Prettify(s)
12263}
12264
12265// GoString returns the string representation.
12266//
12267// API parameter values that are decorated as "sensitive" in the API will not
12268// be included in the string output. The member name will be present, but the
12269// value will be replaced with "sensitive".
12270func (s GetMasterAccountInput) GoString() string {
12271	return s.String()
12272}
12273
12274// (Deprecated) Provides information about the Amazon Macie administrator account
12275// for an account. If the accounts are associated by a Macie membership invitation,
12276// the response also provides information about that invitation.
12277type GetMasterAccountOutput struct {
12278	_ struct{} `type:"structure"`
12279
12280	// Provides information about an Amazon Macie membership invitation that was
12281	// received by an account.
12282	Master *Invitation `locationName:"master" type:"structure"`
12283}
12284
12285// String returns the string representation.
12286//
12287// API parameter values that are decorated as "sensitive" in the API will not
12288// be included in the string output. The member name will be present, but the
12289// value will be replaced with "sensitive".
12290func (s GetMasterAccountOutput) String() string {
12291	return awsutil.Prettify(s)
12292}
12293
12294// GoString returns the string representation.
12295//
12296// API parameter values that are decorated as "sensitive" in the API will not
12297// be included in the string output. The member name will be present, but the
12298// value will be replaced with "sensitive".
12299func (s GetMasterAccountOutput) GoString() string {
12300	return s.String()
12301}
12302
12303// SetMaster sets the Master field's value.
12304func (s *GetMasterAccountOutput) SetMaster(v *Invitation) *GetMasterAccountOutput {
12305	s.Master = v
12306	return s
12307}
12308
12309type GetMemberInput struct {
12310	_ struct{} `type:"structure" nopayload:"true"`
12311
12312	// Id is a required field
12313	Id *string `location:"uri" locationName:"id" type:"string" required:"true"`
12314}
12315
12316// String returns the string representation.
12317//
12318// API parameter values that are decorated as "sensitive" in the API will not
12319// be included in the string output. The member name will be present, but the
12320// value will be replaced with "sensitive".
12321func (s GetMemberInput) String() string {
12322	return awsutil.Prettify(s)
12323}
12324
12325// GoString returns the string representation.
12326//
12327// API parameter values that are decorated as "sensitive" in the API will not
12328// be included in the string output. The member name will be present, but the
12329// value will be replaced with "sensitive".
12330func (s GetMemberInput) GoString() string {
12331	return s.String()
12332}
12333
12334// Validate inspects the fields of the type to determine if they are valid.
12335func (s *GetMemberInput) Validate() error {
12336	invalidParams := request.ErrInvalidParams{Context: "GetMemberInput"}
12337	if s.Id == nil {
12338		invalidParams.Add(request.NewErrParamRequired("Id"))
12339	}
12340	if s.Id != nil && len(*s.Id) < 1 {
12341		invalidParams.Add(request.NewErrParamMinLen("Id", 1))
12342	}
12343
12344	if invalidParams.Len() > 0 {
12345		return invalidParams
12346	}
12347	return nil
12348}
12349
12350// SetId sets the Id field's value.
12351func (s *GetMemberInput) SetId(v string) *GetMemberInput {
12352	s.Id = &v
12353	return s
12354}
12355
12356// Provides information about an account that's associated with an Amazon Macie
12357// administrator account.
12358type GetMemberOutput struct {
12359	_ struct{} `type:"structure"`
12360
12361	AccountId *string `locationName:"accountId" type:"string"`
12362
12363	AdministratorAccountId *string `locationName:"administratorAccountId" type:"string"`
12364
12365	Arn *string `locationName:"arn" type:"string"`
12366
12367	Email *string `locationName:"email" type:"string"`
12368
12369	InvitedAt *time.Time `locationName:"invitedAt" type:"timestamp" timestampFormat:"iso8601"`
12370
12371	MasterAccountId *string `locationName:"masterAccountId" type:"string"`
12372
12373	// The current status of the relationship between an account and an associated
12374	// Amazon Macie administrator account (inviter account). Possible values are:
12375	RelationshipStatus *string `locationName:"relationshipStatus" type:"string" enum:"RelationshipStatus"`
12376
12377	// A string-to-string map of key-value pairs that specifies the tags (keys and
12378	// values) for a classification job, custom data identifier, findings filter,
12379	// or member account.
12380	Tags map[string]*string `locationName:"tags" type:"map"`
12381
12382	UpdatedAt *time.Time `locationName:"updatedAt" type:"timestamp" timestampFormat:"iso8601"`
12383}
12384
12385// String returns the string representation.
12386//
12387// API parameter values that are decorated as "sensitive" in the API will not
12388// be included in the string output. The member name will be present, but the
12389// value will be replaced with "sensitive".
12390func (s GetMemberOutput) String() string {
12391	return awsutil.Prettify(s)
12392}
12393
12394// GoString returns the string representation.
12395//
12396// API parameter values that are decorated as "sensitive" in the API will not
12397// be included in the string output. The member name will be present, but the
12398// value will be replaced with "sensitive".
12399func (s GetMemberOutput) GoString() string {
12400	return s.String()
12401}
12402
12403// SetAccountId sets the AccountId field's value.
12404func (s *GetMemberOutput) SetAccountId(v string) *GetMemberOutput {
12405	s.AccountId = &v
12406	return s
12407}
12408
12409// SetAdministratorAccountId sets the AdministratorAccountId field's value.
12410func (s *GetMemberOutput) SetAdministratorAccountId(v string) *GetMemberOutput {
12411	s.AdministratorAccountId = &v
12412	return s
12413}
12414
12415// SetArn sets the Arn field's value.
12416func (s *GetMemberOutput) SetArn(v string) *GetMemberOutput {
12417	s.Arn = &v
12418	return s
12419}
12420
12421// SetEmail sets the Email field's value.
12422func (s *GetMemberOutput) SetEmail(v string) *GetMemberOutput {
12423	s.Email = &v
12424	return s
12425}
12426
12427// SetInvitedAt sets the InvitedAt field's value.
12428func (s *GetMemberOutput) SetInvitedAt(v time.Time) *GetMemberOutput {
12429	s.InvitedAt = &v
12430	return s
12431}
12432
12433// SetMasterAccountId sets the MasterAccountId field's value.
12434func (s *GetMemberOutput) SetMasterAccountId(v string) *GetMemberOutput {
12435	s.MasterAccountId = &v
12436	return s
12437}
12438
12439// SetRelationshipStatus sets the RelationshipStatus field's value.
12440func (s *GetMemberOutput) SetRelationshipStatus(v string) *GetMemberOutput {
12441	s.RelationshipStatus = &v
12442	return s
12443}
12444
12445// SetTags sets the Tags field's value.
12446func (s *GetMemberOutput) SetTags(v map[string]*string) *GetMemberOutput {
12447	s.Tags = v
12448	return s
12449}
12450
12451// SetUpdatedAt sets the UpdatedAt field's value.
12452func (s *GetMemberOutput) SetUpdatedAt(v time.Time) *GetMemberOutput {
12453	s.UpdatedAt = &v
12454	return s
12455}
12456
12457// Specifies criteria for filtering, sorting, and paginating the results of
12458// a query for quotas and aggregated usage data for one or more Amazon Macie
12459// accounts.
12460type GetUsageStatisticsInput struct {
12461	_ struct{} `type:"structure"`
12462
12463	FilterBy []*UsageStatisticsFilter `locationName:"filterBy" type:"list"`
12464
12465	MaxResults *int64 `locationName:"maxResults" type:"integer"`
12466
12467	NextToken *string `locationName:"nextToken" type:"string"`
12468
12469	// Specifies criteria for sorting the results of a query for Amazon Macie account
12470	// quotas and usage data.
12471	SortBy *UsageStatisticsSortBy `locationName:"sortBy" type:"structure"`
12472
12473	// An inclusive time period that Amazon Macie usage data applies to. Possible
12474	// values are:
12475	TimeRange *string `locationName:"timeRange" type:"string" enum:"TimeRange"`
12476}
12477
12478// String returns the string representation.
12479//
12480// API parameter values that are decorated as "sensitive" in the API will not
12481// be included in the string output. The member name will be present, but the
12482// value will be replaced with "sensitive".
12483func (s GetUsageStatisticsInput) String() string {
12484	return awsutil.Prettify(s)
12485}
12486
12487// GoString returns the string representation.
12488//
12489// API parameter values that are decorated as "sensitive" in the API will not
12490// be included in the string output. The member name will be present, but the
12491// value will be replaced with "sensitive".
12492func (s GetUsageStatisticsInput) GoString() string {
12493	return s.String()
12494}
12495
12496// SetFilterBy sets the FilterBy field's value.
12497func (s *GetUsageStatisticsInput) SetFilterBy(v []*UsageStatisticsFilter) *GetUsageStatisticsInput {
12498	s.FilterBy = v
12499	return s
12500}
12501
12502// SetMaxResults sets the MaxResults field's value.
12503func (s *GetUsageStatisticsInput) SetMaxResults(v int64) *GetUsageStatisticsInput {
12504	s.MaxResults = &v
12505	return s
12506}
12507
12508// SetNextToken sets the NextToken field's value.
12509func (s *GetUsageStatisticsInput) SetNextToken(v string) *GetUsageStatisticsInput {
12510	s.NextToken = &v
12511	return s
12512}
12513
12514// SetSortBy sets the SortBy field's value.
12515func (s *GetUsageStatisticsInput) SetSortBy(v *UsageStatisticsSortBy) *GetUsageStatisticsInput {
12516	s.SortBy = v
12517	return s
12518}
12519
12520// SetTimeRange sets the TimeRange field's value.
12521func (s *GetUsageStatisticsInput) SetTimeRange(v string) *GetUsageStatisticsInput {
12522	s.TimeRange = &v
12523	return s
12524}
12525
12526// Provides the results of a query that retrieved quotas and aggregated usage
12527// data for one or more Amazon Macie accounts.
12528type GetUsageStatisticsOutput struct {
12529	_ struct{} `type:"structure"`
12530
12531	NextToken *string `locationName:"nextToken" type:"string"`
12532
12533	Records []*UsageRecord `locationName:"records" type:"list"`
12534
12535	// An inclusive time period that Amazon Macie usage data applies to. Possible
12536	// values are:
12537	TimeRange *string `locationName:"timeRange" type:"string" enum:"TimeRange"`
12538}
12539
12540// String returns the string representation.
12541//
12542// API parameter values that are decorated as "sensitive" in the API will not
12543// be included in the string output. The member name will be present, but the
12544// value will be replaced with "sensitive".
12545func (s GetUsageStatisticsOutput) String() string {
12546	return awsutil.Prettify(s)
12547}
12548
12549// GoString returns the string representation.
12550//
12551// API parameter values that are decorated as "sensitive" in the API will not
12552// be included in the string output. The member name will be present, but the
12553// value will be replaced with "sensitive".
12554func (s GetUsageStatisticsOutput) GoString() string {
12555	return s.String()
12556}
12557
12558// SetNextToken sets the NextToken field's value.
12559func (s *GetUsageStatisticsOutput) SetNextToken(v string) *GetUsageStatisticsOutput {
12560	s.NextToken = &v
12561	return s
12562}
12563
12564// SetRecords sets the Records field's value.
12565func (s *GetUsageStatisticsOutput) SetRecords(v []*UsageRecord) *GetUsageStatisticsOutput {
12566	s.Records = v
12567	return s
12568}
12569
12570// SetTimeRange sets the TimeRange field's value.
12571func (s *GetUsageStatisticsOutput) SetTimeRange(v string) *GetUsageStatisticsOutput {
12572	s.TimeRange = &v
12573	return s
12574}
12575
12576type GetUsageTotalsInput struct {
12577	_ struct{} `type:"structure" nopayload:"true"`
12578
12579	TimeRange *string `location:"querystring" locationName:"timeRange" type:"string"`
12580}
12581
12582// String returns the string representation.
12583//
12584// API parameter values that are decorated as "sensitive" in the API will not
12585// be included in the string output. The member name will be present, but the
12586// value will be replaced with "sensitive".
12587func (s GetUsageTotalsInput) String() string {
12588	return awsutil.Prettify(s)
12589}
12590
12591// GoString returns the string representation.
12592//
12593// API parameter values that are decorated as "sensitive" in the API will not
12594// be included in the string output. The member name will be present, but the
12595// value will be replaced with "sensitive".
12596func (s GetUsageTotalsInput) GoString() string {
12597	return s.String()
12598}
12599
12600// SetTimeRange sets the TimeRange field's value.
12601func (s *GetUsageTotalsInput) SetTimeRange(v string) *GetUsageTotalsInput {
12602	s.TimeRange = &v
12603	return s
12604}
12605
12606// Provides the results of a query that retrieved aggregated usage data for
12607// an Amazon Macie account.
12608type GetUsageTotalsOutput struct {
12609	_ struct{} `type:"structure"`
12610
12611	// An inclusive time period that Amazon Macie usage data applies to. Possible
12612	// values are:
12613	TimeRange *string `locationName:"timeRange" type:"string" enum:"TimeRange"`
12614
12615	UsageTotals []*UsageTotal `locationName:"usageTotals" type:"list"`
12616}
12617
12618// String returns the string representation.
12619//
12620// API parameter values that are decorated as "sensitive" in the API will not
12621// be included in the string output. The member name will be present, but the
12622// value will be replaced with "sensitive".
12623func (s GetUsageTotalsOutput) String() string {
12624	return awsutil.Prettify(s)
12625}
12626
12627// GoString returns the string representation.
12628//
12629// API parameter values that are decorated as "sensitive" in the API will not
12630// be included in the string output. The member name will be present, but the
12631// value will be replaced with "sensitive".
12632func (s GetUsageTotalsOutput) GoString() string {
12633	return s.String()
12634}
12635
12636// SetTimeRange sets the TimeRange field's value.
12637func (s *GetUsageTotalsOutput) SetTimeRange(v string) *GetUsageTotalsOutput {
12638	s.TimeRange = &v
12639	return s
12640}
12641
12642// SetUsageTotals sets the UsageTotals field's value.
12643func (s *GetUsageTotalsOutput) SetUsageTotals(v []*UsageTotal) *GetUsageTotalsOutput {
12644	s.UsageTotals = v
12645	return s
12646}
12647
12648// Provides a group of results for a query that retrieved aggregated statistical
12649// data about findings.
12650type GroupCount struct {
12651	_ struct{} `type:"structure"`
12652
12653	Count *int64 `locationName:"count" type:"long"`
12654
12655	GroupKey *string `locationName:"groupKey" type:"string"`
12656}
12657
12658// String returns the string representation.
12659//
12660// API parameter values that are decorated as "sensitive" in the API will not
12661// be included in the string output. The member name will be present, but the
12662// value will be replaced with "sensitive".
12663func (s GroupCount) String() string {
12664	return awsutil.Prettify(s)
12665}
12666
12667// GoString returns the string representation.
12668//
12669// API parameter values that are decorated as "sensitive" in the API will not
12670// be included in the string output. The member name will be present, but the
12671// value will be replaced with "sensitive".
12672func (s GroupCount) GoString() string {
12673	return s.String()
12674}
12675
12676// SetCount sets the Count field's value.
12677func (s *GroupCount) SetCount(v int64) *GroupCount {
12678	s.Count = &v
12679	return s
12680}
12681
12682// SetGroupKey sets the GroupKey field's value.
12683func (s *GroupCount) SetGroupKey(v string) *GroupCount {
12684	s.GroupKey = &v
12685	return s
12686}
12687
12688// Provides information about an Identity and Access Management (IAM) user who
12689// performed an action on an affected resource.
12690type IamUser struct {
12691	_ struct{} `type:"structure"`
12692
12693	AccountId *string `locationName:"accountId" type:"string"`
12694
12695	Arn *string `locationName:"arn" type:"string"`
12696
12697	PrincipalId *string `locationName:"principalId" type:"string"`
12698
12699	UserName *string `locationName:"userName" type:"string"`
12700}
12701
12702// String returns the string representation.
12703//
12704// API parameter values that are decorated as "sensitive" in the API will not
12705// be included in the string output. The member name will be present, but the
12706// value will be replaced with "sensitive".
12707func (s IamUser) String() string {
12708	return awsutil.Prettify(s)
12709}
12710
12711// GoString returns the string representation.
12712//
12713// API parameter values that are decorated as "sensitive" in the API will not
12714// be included in the string output. The member name will be present, but the
12715// value will be replaced with "sensitive".
12716func (s IamUser) GoString() string {
12717	return s.String()
12718}
12719
12720// SetAccountId sets the AccountId field's value.
12721func (s *IamUser) SetAccountId(v string) *IamUser {
12722	s.AccountId = &v
12723	return s
12724}
12725
12726// SetArn sets the Arn field's value.
12727func (s *IamUser) SetArn(v string) *IamUser {
12728	s.Arn = &v
12729	return s
12730}
12731
12732// SetPrincipalId sets the PrincipalId field's value.
12733func (s *IamUser) SetPrincipalId(v string) *IamUser {
12734	s.PrincipalId = &v
12735	return s
12736}
12737
12738// SetUserName sets the UserName field's value.
12739func (s *IamUser) SetUserName(v string) *IamUser {
12740	s.UserName = &v
12741	return s
12742}
12743
12744// Provides information about an error that occurred due to an unknown internal
12745// server error, exception, or failure.
12746type InternalServerException struct {
12747	_            struct{}                  `type:"structure"`
12748	RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"`
12749
12750	Message_ *string `locationName:"message" type:"string"`
12751}
12752
12753// String returns the string representation.
12754//
12755// API parameter values that are decorated as "sensitive" in the API will not
12756// be included in the string output. The member name will be present, but the
12757// value will be replaced with "sensitive".
12758func (s InternalServerException) String() string {
12759	return awsutil.Prettify(s)
12760}
12761
12762// GoString returns the string representation.
12763//
12764// API parameter values that are decorated as "sensitive" in the API will not
12765// be included in the string output. The member name will be present, but the
12766// value will be replaced with "sensitive".
12767func (s InternalServerException) GoString() string {
12768	return s.String()
12769}
12770
12771func newErrorInternalServerException(v protocol.ResponseMetadata) error {
12772	return &InternalServerException{
12773		RespMetadata: v,
12774	}
12775}
12776
12777// Code returns the exception type name.
12778func (s *InternalServerException) Code() string {
12779	return "InternalServerException"
12780}
12781
12782// Message returns the exception's message.
12783func (s *InternalServerException) Message() string {
12784	if s.Message_ != nil {
12785		return *s.Message_
12786	}
12787	return ""
12788}
12789
12790// OrigErr always returns nil, satisfies awserr.Error interface.
12791func (s *InternalServerException) OrigErr() error {
12792	return nil
12793}
12794
12795func (s *InternalServerException) Error() string {
12796	return fmt.Sprintf("%s: %s", s.Code(), s.Message())
12797}
12798
12799// Status code returns the HTTP status code for the request's response error.
12800func (s *InternalServerException) StatusCode() int {
12801	return s.RespMetadata.StatusCode
12802}
12803
12804// RequestID returns the service's response RequestID for request.
12805func (s *InternalServerException) RequestID() string {
12806	return s.RespMetadata.RequestID
12807}
12808
12809// Provides information about an Amazon Macie membership invitation that was
12810// received by an account.
12811type Invitation struct {
12812	_ struct{} `type:"structure"`
12813
12814	AccountId *string `locationName:"accountId" type:"string"`
12815
12816	InvitationId *string `locationName:"invitationId" type:"string"`
12817
12818	InvitedAt *time.Time `locationName:"invitedAt" type:"timestamp" timestampFormat:"iso8601"`
12819
12820	// The current status of the relationship between an account and an associated
12821	// Amazon Macie administrator account (inviter account). Possible values are:
12822	RelationshipStatus *string `locationName:"relationshipStatus" type:"string" enum:"RelationshipStatus"`
12823}
12824
12825// String returns the string representation.
12826//
12827// API parameter values that are decorated as "sensitive" in the API will not
12828// be included in the string output. The member name will be present, but the
12829// value will be replaced with "sensitive".
12830func (s Invitation) String() string {
12831	return awsutil.Prettify(s)
12832}
12833
12834// GoString returns the string representation.
12835//
12836// API parameter values that are decorated as "sensitive" in the API will not
12837// be included in the string output. The member name will be present, but the
12838// value will be replaced with "sensitive".
12839func (s Invitation) GoString() string {
12840	return s.String()
12841}
12842
12843// SetAccountId sets the AccountId field's value.
12844func (s *Invitation) SetAccountId(v string) *Invitation {
12845	s.AccountId = &v
12846	return s
12847}
12848
12849// SetInvitationId sets the InvitationId field's value.
12850func (s *Invitation) SetInvitationId(v string) *Invitation {
12851	s.InvitationId = &v
12852	return s
12853}
12854
12855// SetInvitedAt sets the InvitedAt field's value.
12856func (s *Invitation) SetInvitedAt(v time.Time) *Invitation {
12857	s.InvitedAt = &v
12858	return s
12859}
12860
12861// SetRelationshipStatus sets the RelationshipStatus field's value.
12862func (s *Invitation) SetRelationshipStatus(v string) *Invitation {
12863	s.RelationshipStatus = &v
12864	return s
12865}
12866
12867// Provides information about the IP address of the device that an entity used
12868// to perform an action on an affected resource.
12869type IpAddressDetails struct {
12870	_ struct{} `type:"structure"`
12871
12872	IpAddressV4 *string `locationName:"ipAddressV4" type:"string"`
12873
12874	// Provides information about the city that an IP address originated from.
12875	IpCity *IpCity `locationName:"ipCity" type:"structure"`
12876
12877	// Provides information about the country that an IP address originated from.
12878	IpCountry *IpCountry `locationName:"ipCountry" type:"structure"`
12879
12880	// Provides geographic coordinates that indicate where a specified IP address
12881	// originated from.
12882	IpGeoLocation *IpGeoLocation `locationName:"ipGeoLocation" type:"structure"`
12883
12884	// Provides information about the registered owner of an IP address.
12885	IpOwner *IpOwner `locationName:"ipOwner" type:"structure"`
12886}
12887
12888// String returns the string representation.
12889//
12890// API parameter values that are decorated as "sensitive" in the API will not
12891// be included in the string output. The member name will be present, but the
12892// value will be replaced with "sensitive".
12893func (s IpAddressDetails) String() string {
12894	return awsutil.Prettify(s)
12895}
12896
12897// GoString returns the string representation.
12898//
12899// API parameter values that are decorated as "sensitive" in the API will not
12900// be included in the string output. The member name will be present, but the
12901// value will be replaced with "sensitive".
12902func (s IpAddressDetails) GoString() string {
12903	return s.String()
12904}
12905
12906// SetIpAddressV4 sets the IpAddressV4 field's value.
12907func (s *IpAddressDetails) SetIpAddressV4(v string) *IpAddressDetails {
12908	s.IpAddressV4 = &v
12909	return s
12910}
12911
12912// SetIpCity sets the IpCity field's value.
12913func (s *IpAddressDetails) SetIpCity(v *IpCity) *IpAddressDetails {
12914	s.IpCity = v
12915	return s
12916}
12917
12918// SetIpCountry sets the IpCountry field's value.
12919func (s *IpAddressDetails) SetIpCountry(v *IpCountry) *IpAddressDetails {
12920	s.IpCountry = v
12921	return s
12922}
12923
12924// SetIpGeoLocation sets the IpGeoLocation field's value.
12925func (s *IpAddressDetails) SetIpGeoLocation(v *IpGeoLocation) *IpAddressDetails {
12926	s.IpGeoLocation = v
12927	return s
12928}
12929
12930// SetIpOwner sets the IpOwner field's value.
12931func (s *IpAddressDetails) SetIpOwner(v *IpOwner) *IpAddressDetails {
12932	s.IpOwner = v
12933	return s
12934}
12935
12936// Provides information about the city that an IP address originated from.
12937type IpCity struct {
12938	_ struct{} `type:"structure"`
12939
12940	Name *string `locationName:"name" type:"string"`
12941}
12942
12943// String returns the string representation.
12944//
12945// API parameter values that are decorated as "sensitive" in the API will not
12946// be included in the string output. The member name will be present, but the
12947// value will be replaced with "sensitive".
12948func (s IpCity) String() string {
12949	return awsutil.Prettify(s)
12950}
12951
12952// GoString returns the string representation.
12953//
12954// API parameter values that are decorated as "sensitive" in the API will not
12955// be included in the string output. The member name will be present, but the
12956// value will be replaced with "sensitive".
12957func (s IpCity) GoString() string {
12958	return s.String()
12959}
12960
12961// SetName sets the Name field's value.
12962func (s *IpCity) SetName(v string) *IpCity {
12963	s.Name = &v
12964	return s
12965}
12966
12967// Provides information about the country that an IP address originated from.
12968type IpCountry struct {
12969	_ struct{} `type:"structure"`
12970
12971	Code *string `locationName:"code" type:"string"`
12972
12973	Name *string `locationName:"name" type:"string"`
12974}
12975
12976// String returns the string representation.
12977//
12978// API parameter values that are decorated as "sensitive" in the API will not
12979// be included in the string output. The member name will be present, but the
12980// value will be replaced with "sensitive".
12981func (s IpCountry) String() string {
12982	return awsutil.Prettify(s)
12983}
12984
12985// GoString returns the string representation.
12986//
12987// API parameter values that are decorated as "sensitive" in the API will not
12988// be included in the string output. The member name will be present, but the
12989// value will be replaced with "sensitive".
12990func (s IpCountry) GoString() string {
12991	return s.String()
12992}
12993
12994// SetCode sets the Code field's value.
12995func (s *IpCountry) SetCode(v string) *IpCountry {
12996	s.Code = &v
12997	return s
12998}
12999
13000// SetName sets the Name field's value.
13001func (s *IpCountry) SetName(v string) *IpCountry {
13002	s.Name = &v
13003	return s
13004}
13005
13006// Provides geographic coordinates that indicate where a specified IP address
13007// originated from.
13008type IpGeoLocation struct {
13009	_ struct{} `type:"structure"`
13010
13011	Lat *float64 `locationName:"lat" type:"double"`
13012
13013	Lon *float64 `locationName:"lon" type:"double"`
13014}
13015
13016// String returns the string representation.
13017//
13018// API parameter values that are decorated as "sensitive" in the API will not
13019// be included in the string output. The member name will be present, but the
13020// value will be replaced with "sensitive".
13021func (s IpGeoLocation) String() string {
13022	return awsutil.Prettify(s)
13023}
13024
13025// GoString returns the string representation.
13026//
13027// API parameter values that are decorated as "sensitive" in the API will not
13028// be included in the string output. The member name will be present, but the
13029// value will be replaced with "sensitive".
13030func (s IpGeoLocation) GoString() string {
13031	return s.String()
13032}
13033
13034// SetLat sets the Lat field's value.
13035func (s *IpGeoLocation) SetLat(v float64) *IpGeoLocation {
13036	s.Lat = &v
13037	return s
13038}
13039
13040// SetLon sets the Lon field's value.
13041func (s *IpGeoLocation) SetLon(v float64) *IpGeoLocation {
13042	s.Lon = &v
13043	return s
13044}
13045
13046// Provides information about the registered owner of an IP address.
13047type IpOwner struct {
13048	_ struct{} `type:"structure"`
13049
13050	Asn *string `locationName:"asn" type:"string"`
13051
13052	AsnOrg *string `locationName:"asnOrg" type:"string"`
13053
13054	Isp *string `locationName:"isp" type:"string"`
13055
13056	Org *string `locationName:"org" type:"string"`
13057}
13058
13059// String returns the string representation.
13060//
13061// API parameter values that are decorated as "sensitive" in the API will not
13062// be included in the string output. The member name will be present, but the
13063// value will be replaced with "sensitive".
13064func (s IpOwner) String() string {
13065	return awsutil.Prettify(s)
13066}
13067
13068// GoString returns the string representation.
13069//
13070// API parameter values that are decorated as "sensitive" in the API will not
13071// be included in the string output. The member name will be present, but the
13072// value will be replaced with "sensitive".
13073func (s IpOwner) GoString() string {
13074	return s.String()
13075}
13076
13077// SetAsn sets the Asn field's value.
13078func (s *IpOwner) SetAsn(v string) *IpOwner {
13079	s.Asn = &v
13080	return s
13081}
13082
13083// SetAsnOrg sets the AsnOrg field's value.
13084func (s *IpOwner) SetAsnOrg(v string) *IpOwner {
13085	s.AsnOrg = &v
13086	return s
13087}
13088
13089// SetIsp sets the Isp field's value.
13090func (s *IpOwner) SetIsp(v string) *IpOwner {
13091	s.Isp = &v
13092	return s
13093}
13094
13095// SetOrg sets the Org field's value.
13096func (s *IpOwner) SetOrg(v string) *IpOwner {
13097	s.Org = &v
13098	return s
13099}
13100
13101// Specifies whether any one-time or recurring classification jobs are configured
13102// to analyze data in an S3 bucket, and, if so, the details of the job that
13103// ran most recently.
13104type JobDetails struct {
13105	_ struct{} `type:"structure"`
13106
13107	IsDefinedInJob *string `locationName:"isDefinedInJob" type:"string" enum:"IsDefinedInJob"`
13108
13109	IsMonitoredByJob *string `locationName:"isMonitoredByJob" type:"string" enum:"IsMonitoredByJob"`
13110
13111	LastJobId *string `locationName:"lastJobId" type:"string"`
13112
13113	LastJobRunTime *time.Time `locationName:"lastJobRunTime" type:"timestamp" timestampFormat:"iso8601"`
13114}
13115
13116// String returns the string representation.
13117//
13118// API parameter values that are decorated as "sensitive" in the API will not
13119// be included in the string output. The member name will be present, but the
13120// value will be replaced with "sensitive".
13121func (s JobDetails) String() string {
13122	return awsutil.Prettify(s)
13123}
13124
13125// GoString returns the string representation.
13126//
13127// API parameter values that are decorated as "sensitive" in the API will not
13128// be included in the string output. The member name will be present, but the
13129// value will be replaced with "sensitive".
13130func (s JobDetails) GoString() string {
13131	return s.String()
13132}
13133
13134// SetIsDefinedInJob sets the IsDefinedInJob field's value.
13135func (s *JobDetails) SetIsDefinedInJob(v string) *JobDetails {
13136	s.IsDefinedInJob = &v
13137	return s
13138}
13139
13140// SetIsMonitoredByJob sets the IsMonitoredByJob field's value.
13141func (s *JobDetails) SetIsMonitoredByJob(v string) *JobDetails {
13142	s.IsMonitoredByJob = &v
13143	return s
13144}
13145
13146// SetLastJobId sets the LastJobId field's value.
13147func (s *JobDetails) SetLastJobId(v string) *JobDetails {
13148	s.LastJobId = &v
13149	return s
13150}
13151
13152// SetLastJobRunTime sets the LastJobRunTime field's value.
13153func (s *JobDetails) SetLastJobRunTime(v time.Time) *JobDetails {
13154	s.LastJobRunTime = &v
13155	return s
13156}
13157
13158// Specifies the recurrence pattern for running a classification job.
13159type JobScheduleFrequency struct {
13160	_ struct{} `type:"structure"`
13161
13162	// Specifies that a classification job runs once a day, every day. This is an
13163	// empty object.
13164	DailySchedule *DailySchedule `locationName:"dailySchedule" type:"structure"`
13165
13166	// Specifies a monthly recurrence pattern for running a classification job.
13167	MonthlySchedule *MonthlySchedule `locationName:"monthlySchedule" type:"structure"`
13168
13169	// Specifies a weekly recurrence pattern for running a classification job.
13170	WeeklySchedule *WeeklySchedule `locationName:"weeklySchedule" type:"structure"`
13171}
13172
13173// String returns the string representation.
13174//
13175// API parameter values that are decorated as "sensitive" in the API will not
13176// be included in the string output. The member name will be present, but the
13177// value will be replaced with "sensitive".
13178func (s JobScheduleFrequency) String() string {
13179	return awsutil.Prettify(s)
13180}
13181
13182// GoString returns the string representation.
13183//
13184// API parameter values that are decorated as "sensitive" in the API will not
13185// be included in the string output. The member name will be present, but the
13186// value will be replaced with "sensitive".
13187func (s JobScheduleFrequency) GoString() string {
13188	return s.String()
13189}
13190
13191// SetDailySchedule sets the DailySchedule field's value.
13192func (s *JobScheduleFrequency) SetDailySchedule(v *DailySchedule) *JobScheduleFrequency {
13193	s.DailySchedule = v
13194	return s
13195}
13196
13197// SetMonthlySchedule sets the MonthlySchedule field's value.
13198func (s *JobScheduleFrequency) SetMonthlySchedule(v *MonthlySchedule) *JobScheduleFrequency {
13199	s.MonthlySchedule = v
13200	return s
13201}
13202
13203// SetWeeklySchedule sets the WeeklySchedule field's value.
13204func (s *JobScheduleFrequency) SetWeeklySchedule(v *WeeklySchedule) *JobScheduleFrequency {
13205	s.WeeklySchedule = v
13206	return s
13207}
13208
13209// Specifies a property- or tag-based condition that defines criteria for including
13210// or excluding S3 objects from a classification job. A JobScopeTerm object
13211// can contain only one simpleScopeTerm object or one tagScopeTerm object.
13212type JobScopeTerm struct {
13213	_ struct{} `type:"structure"`
13214
13215	// Specifies a property-based condition that determines whether an S3 object
13216	// is included or excluded from a classification job.
13217	SimpleScopeTerm *SimpleScopeTerm `locationName:"simpleScopeTerm" type:"structure"`
13218
13219	// Specifies a tag-based condition that determines whether an S3 object is included
13220	// or excluded from a classification job.
13221	TagScopeTerm *TagScopeTerm `locationName:"tagScopeTerm" type:"structure"`
13222}
13223
13224// String returns the string representation.
13225//
13226// API parameter values that are decorated as "sensitive" in the API will not
13227// be included in the string output. The member name will be present, but the
13228// value will be replaced with "sensitive".
13229func (s JobScopeTerm) String() string {
13230	return awsutil.Prettify(s)
13231}
13232
13233// GoString returns the string representation.
13234//
13235// API parameter values that are decorated as "sensitive" in the API will not
13236// be included in the string output. The member name will be present, but the
13237// value will be replaced with "sensitive".
13238func (s JobScopeTerm) GoString() string {
13239	return s.String()
13240}
13241
13242// SetSimpleScopeTerm sets the SimpleScopeTerm field's value.
13243func (s *JobScopeTerm) SetSimpleScopeTerm(v *SimpleScopeTerm) *JobScopeTerm {
13244	s.SimpleScopeTerm = v
13245	return s
13246}
13247
13248// SetTagScopeTerm sets the TagScopeTerm field's value.
13249func (s *JobScopeTerm) SetTagScopeTerm(v *TagScopeTerm) *JobScopeTerm {
13250	s.TagScopeTerm = v
13251	return s
13252}
13253
13254// Specifies one or more property- and tag-based conditions that define criteria
13255// for including or excluding S3 objects from a classification job.
13256type JobScopingBlock struct {
13257	_ struct{} `type:"structure"`
13258
13259	And []*JobScopeTerm `locationName:"and" type:"list"`
13260}
13261
13262// String returns the string representation.
13263//
13264// API parameter values that are decorated as "sensitive" in the API will not
13265// be included in the string output. The member name will be present, but the
13266// value will be replaced with "sensitive".
13267func (s JobScopingBlock) String() string {
13268	return awsutil.Prettify(s)
13269}
13270
13271// GoString returns the string representation.
13272//
13273// API parameter values that are decorated as "sensitive" in the API will not
13274// be included in the string output. The member name will be present, but the
13275// value will be replaced with "sensitive".
13276func (s JobScopingBlock) GoString() string {
13277	return s.String()
13278}
13279
13280// SetAnd sets the And field's value.
13281func (s *JobScopingBlock) SetAnd(v []*JobScopeTerm) *JobScopingBlock {
13282	s.And = v
13283	return s
13284}
13285
13286// Provides information about a classification job, including the current status
13287// of the job.
13288type JobSummary struct {
13289	_ struct{} `type:"structure"`
13290
13291	// Specifies property- and tag-based conditions that define criteria for including
13292	// or excluding S3 buckets from a classification job. Exclude conditions take
13293	// precedence over include conditions.
13294	BucketCriteria *S3BucketCriteriaForJob `locationName:"bucketCriteria" type:"structure"`
13295
13296	BucketDefinitions []*S3BucketDefinitionForJob `locationName:"bucketDefinitions" type:"list"`
13297
13298	CreatedAt *time.Time `locationName:"createdAt" type:"timestamp" timestampFormat:"iso8601"`
13299
13300	JobId *string `locationName:"jobId" type:"string"`
13301
13302	// The status of a classification job. Possible values are:
13303	JobStatus *string `locationName:"jobStatus" type:"string" enum:"JobStatus"`
13304
13305	// The schedule for running a classification job. Valid values are:
13306	JobType *string `locationName:"jobType" type:"string" enum:"JobType"`
13307
13308	// Specifies whether any account- or bucket-level access errors occurred when
13309	// a classification job ran. For information about using logging data to investigate
13310	// these errors, see Monitoring sensitive data discovery jobs (https://docs.aws.amazon.com/macie/latest/user/discovery-jobs-monitor-cw-logs.html)
13311	// in the Amazon Macie User Guide.
13312	LastRunErrorStatus *LastRunErrorStatus `locationName:"lastRunErrorStatus" type:"structure"`
13313
13314	Name *string `locationName:"name" type:"string"`
13315
13316	// Provides information about when a classification job was paused. For a one-time
13317	// job, this object also specifies when the job will expire and be cancelled
13318	// if it isn't resumed. For a recurring job, this object also specifies when
13319	// the paused job run will expire and be cancelled if it isn't resumed. This
13320	// object is present only if a job's current status (jobStatus) is USER_PAUSED.
13321	// The information in this object applies only to a job that was paused while
13322	// it had a status of RUNNING.
13323	UserPausedDetails *UserPausedDetails `locationName:"userPausedDetails" type:"structure"`
13324}
13325
13326// String returns the string representation.
13327//
13328// API parameter values that are decorated as "sensitive" in the API will not
13329// be included in the string output. The member name will be present, but the
13330// value will be replaced with "sensitive".
13331func (s JobSummary) String() string {
13332	return awsutil.Prettify(s)
13333}
13334
13335// GoString returns the string representation.
13336//
13337// API parameter values that are decorated as "sensitive" in the API will not
13338// be included in the string output. The member name will be present, but the
13339// value will be replaced with "sensitive".
13340func (s JobSummary) GoString() string {
13341	return s.String()
13342}
13343
13344// SetBucketCriteria sets the BucketCriteria field's value.
13345func (s *JobSummary) SetBucketCriteria(v *S3BucketCriteriaForJob) *JobSummary {
13346	s.BucketCriteria = v
13347	return s
13348}
13349
13350// SetBucketDefinitions sets the BucketDefinitions field's value.
13351func (s *JobSummary) SetBucketDefinitions(v []*S3BucketDefinitionForJob) *JobSummary {
13352	s.BucketDefinitions = v
13353	return s
13354}
13355
13356// SetCreatedAt sets the CreatedAt field's value.
13357func (s *JobSummary) SetCreatedAt(v time.Time) *JobSummary {
13358	s.CreatedAt = &v
13359	return s
13360}
13361
13362// SetJobId sets the JobId field's value.
13363func (s *JobSummary) SetJobId(v string) *JobSummary {
13364	s.JobId = &v
13365	return s
13366}
13367
13368// SetJobStatus sets the JobStatus field's value.
13369func (s *JobSummary) SetJobStatus(v string) *JobSummary {
13370	s.JobStatus = &v
13371	return s
13372}
13373
13374// SetJobType sets the JobType field's value.
13375func (s *JobSummary) SetJobType(v string) *JobSummary {
13376	s.JobType = &v
13377	return s
13378}
13379
13380// SetLastRunErrorStatus sets the LastRunErrorStatus field's value.
13381func (s *JobSummary) SetLastRunErrorStatus(v *LastRunErrorStatus) *JobSummary {
13382	s.LastRunErrorStatus = v
13383	return s
13384}
13385
13386// SetName sets the Name field's value.
13387func (s *JobSummary) SetName(v string) *JobSummary {
13388	s.Name = &v
13389	return s
13390}
13391
13392// SetUserPausedDetails sets the UserPausedDetails field's value.
13393func (s *JobSummary) SetUserPausedDetails(v *UserPausedDetails) *JobSummary {
13394	s.UserPausedDetails = v
13395	return s
13396}
13397
13398// Provides information about the tags that are associated with an S3 bucket
13399// or object. Each tag consists of a required tag key and an associated tag
13400// value.
13401type KeyValuePair struct {
13402	_ struct{} `type:"structure"`
13403
13404	Key *string `locationName:"key" type:"string"`
13405
13406	Value *string `locationName:"value" type:"string"`
13407}
13408
13409// String returns the string representation.
13410//
13411// API parameter values that are decorated as "sensitive" in the API will not
13412// be included in the string output. The member name will be present, but the
13413// value will be replaced with "sensitive".
13414func (s KeyValuePair) String() string {
13415	return awsutil.Prettify(s)
13416}
13417
13418// GoString returns the string representation.
13419//
13420// API parameter values that are decorated as "sensitive" in the API will not
13421// be included in the string output. The member name will be present, but the
13422// value will be replaced with "sensitive".
13423func (s KeyValuePair) GoString() string {
13424	return s.String()
13425}
13426
13427// SetKey sets the Key field's value.
13428func (s *KeyValuePair) SetKey(v string) *KeyValuePair {
13429	s.Key = &v
13430	return s
13431}
13432
13433// SetValue sets the Value field's value.
13434func (s *KeyValuePair) SetValue(v string) *KeyValuePair {
13435	s.Value = &v
13436	return s
13437}
13438
13439// Specifies whether any account- or bucket-level access errors occurred when
13440// a classification job ran. For information about using logging data to investigate
13441// these errors, see Monitoring sensitive data discovery jobs (https://docs.aws.amazon.com/macie/latest/user/discovery-jobs-monitor-cw-logs.html)
13442// in the Amazon Macie User Guide.
13443type LastRunErrorStatus struct {
13444	_ struct{} `type:"structure"`
13445
13446	// Specifies whether any account- or bucket-level access errors occurred during
13447	// the run of a one-time classification job or the most recent run of a recurring
13448	// classification job. Possible values are:
13449	Code *string `locationName:"code" type:"string" enum:"LastRunErrorStatusCode"`
13450}
13451
13452// String returns the string representation.
13453//
13454// API parameter values that are decorated as "sensitive" in the API will not
13455// be included in the string output. The member name will be present, but the
13456// value will be replaced with "sensitive".
13457func (s LastRunErrorStatus) String() string {
13458	return awsutil.Prettify(s)
13459}
13460
13461// GoString returns the string representation.
13462//
13463// API parameter values that are decorated as "sensitive" in the API will not
13464// be included in the string output. The member name will be present, but the
13465// value will be replaced with "sensitive".
13466func (s LastRunErrorStatus) GoString() string {
13467	return s.String()
13468}
13469
13470// SetCode sets the Code field's value.
13471func (s *LastRunErrorStatus) SetCode(v string) *LastRunErrorStatus {
13472	s.Code = &v
13473	return s
13474}
13475
13476// Specifies criteria for filtering, sorting, and paginating the results of
13477// a request for information about classification jobs.
13478type ListClassificationJobsInput struct {
13479	_ struct{} `type:"structure"`
13480
13481	// Specifies criteria for filtering the results of a request for information
13482	// about classification jobs.
13483	FilterCriteria *ListJobsFilterCriteria `locationName:"filterCriteria" type:"structure"`
13484
13485	MaxResults *int64 `locationName:"maxResults" type:"integer"`
13486
13487	NextToken *string `locationName:"nextToken" type:"string"`
13488
13489	// Specifies criteria for sorting the results of a request for information about
13490	// classification jobs.
13491	SortCriteria *ListJobsSortCriteria `locationName:"sortCriteria" type:"structure"`
13492}
13493
13494// String returns the string representation.
13495//
13496// API parameter values that are decorated as "sensitive" in the API will not
13497// be included in the string output. The member name will be present, but the
13498// value will be replaced with "sensitive".
13499func (s ListClassificationJobsInput) String() string {
13500	return awsutil.Prettify(s)
13501}
13502
13503// GoString returns the string representation.
13504//
13505// API parameter values that are decorated as "sensitive" in the API will not
13506// be included in the string output. The member name will be present, but the
13507// value will be replaced with "sensitive".
13508func (s ListClassificationJobsInput) GoString() string {
13509	return s.String()
13510}
13511
13512// SetFilterCriteria sets the FilterCriteria field's value.
13513func (s *ListClassificationJobsInput) SetFilterCriteria(v *ListJobsFilterCriteria) *ListClassificationJobsInput {
13514	s.FilterCriteria = v
13515	return s
13516}
13517
13518// SetMaxResults sets the MaxResults field's value.
13519func (s *ListClassificationJobsInput) SetMaxResults(v int64) *ListClassificationJobsInput {
13520	s.MaxResults = &v
13521	return s
13522}
13523
13524// SetNextToken sets the NextToken field's value.
13525func (s *ListClassificationJobsInput) SetNextToken(v string) *ListClassificationJobsInput {
13526	s.NextToken = &v
13527	return s
13528}
13529
13530// SetSortCriteria sets the SortCriteria field's value.
13531func (s *ListClassificationJobsInput) SetSortCriteria(v *ListJobsSortCriteria) *ListClassificationJobsInput {
13532	s.SortCriteria = v
13533	return s
13534}
13535
13536// Provides the results of a request for information about one or more classification
13537// jobs.
13538type ListClassificationJobsOutput struct {
13539	_ struct{} `type:"structure"`
13540
13541	Items []*JobSummary `locationName:"items" type:"list"`
13542
13543	NextToken *string `locationName:"nextToken" type:"string"`
13544}
13545
13546// String returns the string representation.
13547//
13548// API parameter values that are decorated as "sensitive" in the API will not
13549// be included in the string output. The member name will be present, but the
13550// value will be replaced with "sensitive".
13551func (s ListClassificationJobsOutput) String() string {
13552	return awsutil.Prettify(s)
13553}
13554
13555// GoString returns the string representation.
13556//
13557// API parameter values that are decorated as "sensitive" in the API will not
13558// be included in the string output. The member name will be present, but the
13559// value will be replaced with "sensitive".
13560func (s ListClassificationJobsOutput) GoString() string {
13561	return s.String()
13562}
13563
13564// SetItems sets the Items field's value.
13565func (s *ListClassificationJobsOutput) SetItems(v []*JobSummary) *ListClassificationJobsOutput {
13566	s.Items = v
13567	return s
13568}
13569
13570// SetNextToken sets the NextToken field's value.
13571func (s *ListClassificationJobsOutput) SetNextToken(v string) *ListClassificationJobsOutput {
13572	s.NextToken = &v
13573	return s
13574}
13575
13576// Specifies criteria for paginating the results of a request for information
13577// about custom data identifiers.
13578type ListCustomDataIdentifiersInput struct {
13579	_ struct{} `type:"structure"`
13580
13581	MaxResults *int64 `locationName:"maxResults" type:"integer"`
13582
13583	NextToken *string `locationName:"nextToken" type:"string"`
13584}
13585
13586// String returns the string representation.
13587//
13588// API parameter values that are decorated as "sensitive" in the API will not
13589// be included in the string output. The member name will be present, but the
13590// value will be replaced with "sensitive".
13591func (s ListCustomDataIdentifiersInput) String() string {
13592	return awsutil.Prettify(s)
13593}
13594
13595// GoString returns the string representation.
13596//
13597// API parameter values that are decorated as "sensitive" in the API will not
13598// be included in the string output. The member name will be present, but the
13599// value will be replaced with "sensitive".
13600func (s ListCustomDataIdentifiersInput) GoString() string {
13601	return s.String()
13602}
13603
13604// SetMaxResults sets the MaxResults field's value.
13605func (s *ListCustomDataIdentifiersInput) SetMaxResults(v int64) *ListCustomDataIdentifiersInput {
13606	s.MaxResults = &v
13607	return s
13608}
13609
13610// SetNextToken sets the NextToken field's value.
13611func (s *ListCustomDataIdentifiersInput) SetNextToken(v string) *ListCustomDataIdentifiersInput {
13612	s.NextToken = &v
13613	return s
13614}
13615
13616// Provides the results of a request for information about custom data identifiers.
13617type ListCustomDataIdentifiersOutput struct {
13618	_ struct{} `type:"structure"`
13619
13620	Items []*CustomDataIdentifierSummary `locationName:"items" type:"list"`
13621
13622	NextToken *string `locationName:"nextToken" type:"string"`
13623}
13624
13625// String returns the string representation.
13626//
13627// API parameter values that are decorated as "sensitive" in the API will not
13628// be included in the string output. The member name will be present, but the
13629// value will be replaced with "sensitive".
13630func (s ListCustomDataIdentifiersOutput) String() string {
13631	return awsutil.Prettify(s)
13632}
13633
13634// GoString returns the string representation.
13635//
13636// API parameter values that are decorated as "sensitive" in the API will not
13637// be included in the string output. The member name will be present, but the
13638// value will be replaced with "sensitive".
13639func (s ListCustomDataIdentifiersOutput) GoString() string {
13640	return s.String()
13641}
13642
13643// SetItems sets the Items field's value.
13644func (s *ListCustomDataIdentifiersOutput) SetItems(v []*CustomDataIdentifierSummary) *ListCustomDataIdentifiersOutput {
13645	s.Items = v
13646	return s
13647}
13648
13649// SetNextToken sets the NextToken field's value.
13650func (s *ListCustomDataIdentifiersOutput) SetNextToken(v string) *ListCustomDataIdentifiersOutput {
13651	s.NextToken = &v
13652	return s
13653}
13654
13655type ListFindingsFiltersInput struct {
13656	_ struct{} `type:"structure" nopayload:"true"`
13657
13658	MaxResults *int64 `location:"querystring" locationName:"maxResults" min:"1" type:"integer"`
13659
13660	NextToken *string `location:"querystring" locationName:"nextToken" type:"string"`
13661}
13662
13663// String returns the string representation.
13664//
13665// API parameter values that are decorated as "sensitive" in the API will not
13666// be included in the string output. The member name will be present, but the
13667// value will be replaced with "sensitive".
13668func (s ListFindingsFiltersInput) String() string {
13669	return awsutil.Prettify(s)
13670}
13671
13672// GoString returns the string representation.
13673//
13674// API parameter values that are decorated as "sensitive" in the API will not
13675// be included in the string output. The member name will be present, but the
13676// value will be replaced with "sensitive".
13677func (s ListFindingsFiltersInput) GoString() string {
13678	return s.String()
13679}
13680
13681// Validate inspects the fields of the type to determine if they are valid.
13682func (s *ListFindingsFiltersInput) Validate() error {
13683	invalidParams := request.ErrInvalidParams{Context: "ListFindingsFiltersInput"}
13684	if s.MaxResults != nil && *s.MaxResults < 1 {
13685		invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1))
13686	}
13687
13688	if invalidParams.Len() > 0 {
13689		return invalidParams
13690	}
13691	return nil
13692}
13693
13694// SetMaxResults sets the MaxResults field's value.
13695func (s *ListFindingsFiltersInput) SetMaxResults(v int64) *ListFindingsFiltersInput {
13696	s.MaxResults = &v
13697	return s
13698}
13699
13700// SetNextToken sets the NextToken field's value.
13701func (s *ListFindingsFiltersInput) SetNextToken(v string) *ListFindingsFiltersInput {
13702	s.NextToken = &v
13703	return s
13704}
13705
13706// Provides information about all the findings filters for an account.
13707type ListFindingsFiltersOutput struct {
13708	_ struct{} `type:"structure"`
13709
13710	FindingsFilterListItems []*FindingsFilterListItem `locationName:"findingsFilterListItems" type:"list"`
13711
13712	NextToken *string `locationName:"nextToken" type:"string"`
13713}
13714
13715// String returns the string representation.
13716//
13717// API parameter values that are decorated as "sensitive" in the API will not
13718// be included in the string output. The member name will be present, but the
13719// value will be replaced with "sensitive".
13720func (s ListFindingsFiltersOutput) String() string {
13721	return awsutil.Prettify(s)
13722}
13723
13724// GoString returns the string representation.
13725//
13726// API parameter values that are decorated as "sensitive" in the API will not
13727// be included in the string output. The member name will be present, but the
13728// value will be replaced with "sensitive".
13729func (s ListFindingsFiltersOutput) GoString() string {
13730	return s.String()
13731}
13732
13733// SetFindingsFilterListItems sets the FindingsFilterListItems field's value.
13734func (s *ListFindingsFiltersOutput) SetFindingsFilterListItems(v []*FindingsFilterListItem) *ListFindingsFiltersOutput {
13735	s.FindingsFilterListItems = v
13736	return s
13737}
13738
13739// SetNextToken sets the NextToken field's value.
13740func (s *ListFindingsFiltersOutput) SetNextToken(v string) *ListFindingsFiltersOutput {
13741	s.NextToken = &v
13742	return s
13743}
13744
13745// Specifies criteria for filtering, sorting, and paginating the results of
13746// a request for information about findings.
13747type ListFindingsInput struct {
13748	_ struct{} `type:"structure"`
13749
13750	// Specifies, as a map, one or more property-based conditions that filter the
13751	// results of a query for findings.
13752	FindingCriteria *FindingCriteria `locationName:"findingCriteria" type:"structure"`
13753
13754	MaxResults *int64 `locationName:"maxResults" type:"integer"`
13755
13756	NextToken *string `locationName:"nextToken" type:"string"`
13757
13758	// Specifies criteria for sorting the results of a request for findings.
13759	SortCriteria *SortCriteria `locationName:"sortCriteria" type:"structure"`
13760}
13761
13762// String returns the string representation.
13763//
13764// API parameter values that are decorated as "sensitive" in the API will not
13765// be included in the string output. The member name will be present, but the
13766// value will be replaced with "sensitive".
13767func (s ListFindingsInput) String() string {
13768	return awsutil.Prettify(s)
13769}
13770
13771// GoString returns the string representation.
13772//
13773// API parameter values that are decorated as "sensitive" in the API will not
13774// be included in the string output. The member name will be present, but the
13775// value will be replaced with "sensitive".
13776func (s ListFindingsInput) GoString() string {
13777	return s.String()
13778}
13779
13780// SetFindingCriteria sets the FindingCriteria field's value.
13781func (s *ListFindingsInput) SetFindingCriteria(v *FindingCriteria) *ListFindingsInput {
13782	s.FindingCriteria = v
13783	return s
13784}
13785
13786// SetMaxResults sets the MaxResults field's value.
13787func (s *ListFindingsInput) SetMaxResults(v int64) *ListFindingsInput {
13788	s.MaxResults = &v
13789	return s
13790}
13791
13792// SetNextToken sets the NextToken field's value.
13793func (s *ListFindingsInput) SetNextToken(v string) *ListFindingsInput {
13794	s.NextToken = &v
13795	return s
13796}
13797
13798// SetSortCriteria sets the SortCriteria field's value.
13799func (s *ListFindingsInput) SetSortCriteria(v *SortCriteria) *ListFindingsInput {
13800	s.SortCriteria = v
13801	return s
13802}
13803
13804// Provides the results of a request for information about one or more findings.
13805type ListFindingsOutput struct {
13806	_ struct{} `type:"structure"`
13807
13808	FindingIds []*string `locationName:"findingIds" type:"list"`
13809
13810	NextToken *string `locationName:"nextToken" type:"string"`
13811}
13812
13813// String returns the string representation.
13814//
13815// API parameter values that are decorated as "sensitive" in the API will not
13816// be included in the string output. The member name will be present, but the
13817// value will be replaced with "sensitive".
13818func (s ListFindingsOutput) String() string {
13819	return awsutil.Prettify(s)
13820}
13821
13822// GoString returns the string representation.
13823//
13824// API parameter values that are decorated as "sensitive" in the API will not
13825// be included in the string output. The member name will be present, but the
13826// value will be replaced with "sensitive".
13827func (s ListFindingsOutput) GoString() string {
13828	return s.String()
13829}
13830
13831// SetFindingIds sets the FindingIds field's value.
13832func (s *ListFindingsOutput) SetFindingIds(v []*string) *ListFindingsOutput {
13833	s.FindingIds = v
13834	return s
13835}
13836
13837// SetNextToken sets the NextToken field's value.
13838func (s *ListFindingsOutput) SetNextToken(v string) *ListFindingsOutput {
13839	s.NextToken = &v
13840	return s
13841}
13842
13843type ListInvitationsInput struct {
13844	_ struct{} `type:"structure" nopayload:"true"`
13845
13846	MaxResults *int64 `location:"querystring" locationName:"maxResults" min:"1" type:"integer"`
13847
13848	NextToken *string `location:"querystring" locationName:"nextToken" type:"string"`
13849}
13850
13851// String returns the string representation.
13852//
13853// API parameter values that are decorated as "sensitive" in the API will not
13854// be included in the string output. The member name will be present, but the
13855// value will be replaced with "sensitive".
13856func (s ListInvitationsInput) String() string {
13857	return awsutil.Prettify(s)
13858}
13859
13860// GoString returns the string representation.
13861//
13862// API parameter values that are decorated as "sensitive" in the API will not
13863// be included in the string output. The member name will be present, but the
13864// value will be replaced with "sensitive".
13865func (s ListInvitationsInput) GoString() string {
13866	return s.String()
13867}
13868
13869// Validate inspects the fields of the type to determine if they are valid.
13870func (s *ListInvitationsInput) Validate() error {
13871	invalidParams := request.ErrInvalidParams{Context: "ListInvitationsInput"}
13872	if s.MaxResults != nil && *s.MaxResults < 1 {
13873		invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1))
13874	}
13875
13876	if invalidParams.Len() > 0 {
13877		return invalidParams
13878	}
13879	return nil
13880}
13881
13882// SetMaxResults sets the MaxResults field's value.
13883func (s *ListInvitationsInput) SetMaxResults(v int64) *ListInvitationsInput {
13884	s.MaxResults = &v
13885	return s
13886}
13887
13888// SetNextToken sets the NextToken field's value.
13889func (s *ListInvitationsInput) SetNextToken(v string) *ListInvitationsInput {
13890	s.NextToken = &v
13891	return s
13892}
13893
13894// Provides information about the Amazon Macie membership invitations that were
13895// received by an account.
13896type ListInvitationsOutput struct {
13897	_ struct{} `type:"structure"`
13898
13899	Invitations []*Invitation `locationName:"invitations" type:"list"`
13900
13901	NextToken *string `locationName:"nextToken" type:"string"`
13902}
13903
13904// String returns the string representation.
13905//
13906// API parameter values that are decorated as "sensitive" in the API will not
13907// be included in the string output. The member name will be present, but the
13908// value will be replaced with "sensitive".
13909func (s ListInvitationsOutput) String() string {
13910	return awsutil.Prettify(s)
13911}
13912
13913// GoString returns the string representation.
13914//
13915// API parameter values that are decorated as "sensitive" in the API will not
13916// be included in the string output. The member name will be present, but the
13917// value will be replaced with "sensitive".
13918func (s ListInvitationsOutput) GoString() string {
13919	return s.String()
13920}
13921
13922// SetInvitations sets the Invitations field's value.
13923func (s *ListInvitationsOutput) SetInvitations(v []*Invitation) *ListInvitationsOutput {
13924	s.Invitations = v
13925	return s
13926}
13927
13928// SetNextToken sets the NextToken field's value.
13929func (s *ListInvitationsOutput) SetNextToken(v string) *ListInvitationsOutput {
13930	s.NextToken = &v
13931	return s
13932}
13933
13934// Specifies criteria for filtering the results of a request for information
13935// about classification jobs.
13936type ListJobsFilterCriteria struct {
13937	_ struct{} `type:"structure"`
13938
13939	Excludes []*ListJobsFilterTerm `locationName:"excludes" type:"list"`
13940
13941	Includes []*ListJobsFilterTerm `locationName:"includes" type:"list"`
13942}
13943
13944// String returns the string representation.
13945//
13946// API parameter values that are decorated as "sensitive" in the API will not
13947// be included in the string output. The member name will be present, but the
13948// value will be replaced with "sensitive".
13949func (s ListJobsFilterCriteria) String() string {
13950	return awsutil.Prettify(s)
13951}
13952
13953// GoString returns the string representation.
13954//
13955// API parameter values that are decorated as "sensitive" in the API will not
13956// be included in the string output. The member name will be present, but the
13957// value will be replaced with "sensitive".
13958func (s ListJobsFilterCriteria) GoString() string {
13959	return s.String()
13960}
13961
13962// SetExcludes sets the Excludes field's value.
13963func (s *ListJobsFilterCriteria) SetExcludes(v []*ListJobsFilterTerm) *ListJobsFilterCriteria {
13964	s.Excludes = v
13965	return s
13966}
13967
13968// SetIncludes sets the Includes field's value.
13969func (s *ListJobsFilterCriteria) SetIncludes(v []*ListJobsFilterTerm) *ListJobsFilterCriteria {
13970	s.Includes = v
13971	return s
13972}
13973
13974// Specifies a condition that filters the results of a request for information
13975// about classification jobs. Each condition consists of a property, an operator,
13976// and one or more values.
13977type ListJobsFilterTerm struct {
13978	_ struct{} `type:"structure"`
13979
13980	// The operator to use in a condition. Valid values are:
13981	Comparator *string `locationName:"comparator" type:"string" enum:"JobComparator"`
13982
13983	// The property to use to filter the results. Valid values are:
13984	Key *string `locationName:"key" type:"string" enum:"ListJobsFilterKey"`
13985
13986	Values []*string `locationName:"values" type:"list"`
13987}
13988
13989// String returns the string representation.
13990//
13991// API parameter values that are decorated as "sensitive" in the API will not
13992// be included in the string output. The member name will be present, but the
13993// value will be replaced with "sensitive".
13994func (s ListJobsFilterTerm) String() string {
13995	return awsutil.Prettify(s)
13996}
13997
13998// GoString returns the string representation.
13999//
14000// API parameter values that are decorated as "sensitive" in the API will not
14001// be included in the string output. The member name will be present, but the
14002// value will be replaced with "sensitive".
14003func (s ListJobsFilterTerm) GoString() string {
14004	return s.String()
14005}
14006
14007// SetComparator sets the Comparator field's value.
14008func (s *ListJobsFilterTerm) SetComparator(v string) *ListJobsFilterTerm {
14009	s.Comparator = &v
14010	return s
14011}
14012
14013// SetKey sets the Key field's value.
14014func (s *ListJobsFilterTerm) SetKey(v string) *ListJobsFilterTerm {
14015	s.Key = &v
14016	return s
14017}
14018
14019// SetValues sets the Values field's value.
14020func (s *ListJobsFilterTerm) SetValues(v []*string) *ListJobsFilterTerm {
14021	s.Values = v
14022	return s
14023}
14024
14025// Specifies criteria for sorting the results of a request for information about
14026// classification jobs.
14027type ListJobsSortCriteria struct {
14028	_ struct{} `type:"structure"`
14029
14030	// The property to sort the results by. Valid values are:
14031	AttributeName *string `locationName:"attributeName" type:"string" enum:"ListJobsSortAttributeName"`
14032
14033	OrderBy *string `locationName:"orderBy" type:"string" enum:"OrderBy"`
14034}
14035
14036// String returns the string representation.
14037//
14038// API parameter values that are decorated as "sensitive" in the API will not
14039// be included in the string output. The member name will be present, but the
14040// value will be replaced with "sensitive".
14041func (s ListJobsSortCriteria) String() string {
14042	return awsutil.Prettify(s)
14043}
14044
14045// GoString returns the string representation.
14046//
14047// API parameter values that are decorated as "sensitive" in the API will not
14048// be included in the string output. The member name will be present, but the
14049// value will be replaced with "sensitive".
14050func (s ListJobsSortCriteria) GoString() string {
14051	return s.String()
14052}
14053
14054// SetAttributeName sets the AttributeName field's value.
14055func (s *ListJobsSortCriteria) SetAttributeName(v string) *ListJobsSortCriteria {
14056	s.AttributeName = &v
14057	return s
14058}
14059
14060// SetOrderBy sets the OrderBy field's value.
14061func (s *ListJobsSortCriteria) SetOrderBy(v string) *ListJobsSortCriteria {
14062	s.OrderBy = &v
14063	return s
14064}
14065
14066// Specifies criteria for paginating the results of a request for information
14067// about managed data identifiers.
14068type ListManagedDataIdentifiersInput struct {
14069	_ struct{} `type:"structure"`
14070
14071	NextToken *string `locationName:"nextToken" type:"string"`
14072}
14073
14074// String returns the string representation.
14075//
14076// API parameter values that are decorated as "sensitive" in the API will not
14077// be included in the string output. The member name will be present, but the
14078// value will be replaced with "sensitive".
14079func (s ListManagedDataIdentifiersInput) String() string {
14080	return awsutil.Prettify(s)
14081}
14082
14083// GoString returns the string representation.
14084//
14085// API parameter values that are decorated as "sensitive" in the API will not
14086// be included in the string output. The member name will be present, but the
14087// value will be replaced with "sensitive".
14088func (s ListManagedDataIdentifiersInput) GoString() string {
14089	return s.String()
14090}
14091
14092// SetNextToken sets the NextToken field's value.
14093func (s *ListManagedDataIdentifiersInput) SetNextToken(v string) *ListManagedDataIdentifiersInput {
14094	s.NextToken = &v
14095	return s
14096}
14097
14098// Provides information about the managed data identifiers that Amazon Macie
14099// currently provides.
14100type ListManagedDataIdentifiersOutput struct {
14101	_ struct{} `type:"structure"`
14102
14103	Items []*ManagedDataIdentifierSummary `locationName:"items" type:"list"`
14104
14105	NextToken *string `locationName:"nextToken" type:"string"`
14106}
14107
14108// String returns the string representation.
14109//
14110// API parameter values that are decorated as "sensitive" in the API will not
14111// be included in the string output. The member name will be present, but the
14112// value will be replaced with "sensitive".
14113func (s ListManagedDataIdentifiersOutput) String() string {
14114	return awsutil.Prettify(s)
14115}
14116
14117// GoString returns the string representation.
14118//
14119// API parameter values that are decorated as "sensitive" in the API will not
14120// be included in the string output. The member name will be present, but the
14121// value will be replaced with "sensitive".
14122func (s ListManagedDataIdentifiersOutput) GoString() string {
14123	return s.String()
14124}
14125
14126// SetItems sets the Items field's value.
14127func (s *ListManagedDataIdentifiersOutput) SetItems(v []*ManagedDataIdentifierSummary) *ListManagedDataIdentifiersOutput {
14128	s.Items = v
14129	return s
14130}
14131
14132// SetNextToken sets the NextToken field's value.
14133func (s *ListManagedDataIdentifiersOutput) SetNextToken(v string) *ListManagedDataIdentifiersOutput {
14134	s.NextToken = &v
14135	return s
14136}
14137
14138type ListMembersInput struct {
14139	_ struct{} `type:"structure" nopayload:"true"`
14140
14141	MaxResults *int64 `location:"querystring" locationName:"maxResults" min:"1" type:"integer"`
14142
14143	NextToken *string `location:"querystring" locationName:"nextToken" type:"string"`
14144
14145	OnlyAssociated *string `location:"querystring" locationName:"onlyAssociated" type:"string"`
14146}
14147
14148// String returns the string representation.
14149//
14150// API parameter values that are decorated as "sensitive" in the API will not
14151// be included in the string output. The member name will be present, but the
14152// value will be replaced with "sensitive".
14153func (s ListMembersInput) String() string {
14154	return awsutil.Prettify(s)
14155}
14156
14157// GoString returns the string representation.
14158//
14159// API parameter values that are decorated as "sensitive" in the API will not
14160// be included in the string output. The member name will be present, but the
14161// value will be replaced with "sensitive".
14162func (s ListMembersInput) GoString() string {
14163	return s.String()
14164}
14165
14166// Validate inspects the fields of the type to determine if they are valid.
14167func (s *ListMembersInput) Validate() error {
14168	invalidParams := request.ErrInvalidParams{Context: "ListMembersInput"}
14169	if s.MaxResults != nil && *s.MaxResults < 1 {
14170		invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1))
14171	}
14172
14173	if invalidParams.Len() > 0 {
14174		return invalidParams
14175	}
14176	return nil
14177}
14178
14179// SetMaxResults sets the MaxResults field's value.
14180func (s *ListMembersInput) SetMaxResults(v int64) *ListMembersInput {
14181	s.MaxResults = &v
14182	return s
14183}
14184
14185// SetNextToken sets the NextToken field's value.
14186func (s *ListMembersInput) SetNextToken(v string) *ListMembersInput {
14187	s.NextToken = &v
14188	return s
14189}
14190
14191// SetOnlyAssociated sets the OnlyAssociated field's value.
14192func (s *ListMembersInput) SetOnlyAssociated(v string) *ListMembersInput {
14193	s.OnlyAssociated = &v
14194	return s
14195}
14196
14197// Provides information about the accounts that are associated with an Amazon
14198// Macie administrator account.
14199type ListMembersOutput struct {
14200	_ struct{} `type:"structure"`
14201
14202	Members []*Member `locationName:"members" type:"list"`
14203
14204	NextToken *string `locationName:"nextToken" type:"string"`
14205}
14206
14207// String returns the string representation.
14208//
14209// API parameter values that are decorated as "sensitive" in the API will not
14210// be included in the string output. The member name will be present, but the
14211// value will be replaced with "sensitive".
14212func (s ListMembersOutput) String() string {
14213	return awsutil.Prettify(s)
14214}
14215
14216// GoString returns the string representation.
14217//
14218// API parameter values that are decorated as "sensitive" in the API will not
14219// be included in the string output. The member name will be present, but the
14220// value will be replaced with "sensitive".
14221func (s ListMembersOutput) GoString() string {
14222	return s.String()
14223}
14224
14225// SetMembers sets the Members field's value.
14226func (s *ListMembersOutput) SetMembers(v []*Member) *ListMembersOutput {
14227	s.Members = v
14228	return s
14229}
14230
14231// SetNextToken sets the NextToken field's value.
14232func (s *ListMembersOutput) SetNextToken(v string) *ListMembersOutput {
14233	s.NextToken = &v
14234	return s
14235}
14236
14237type ListOrganizationAdminAccountsInput struct {
14238	_ struct{} `type:"structure" nopayload:"true"`
14239
14240	MaxResults *int64 `location:"querystring" locationName:"maxResults" min:"1" type:"integer"`
14241
14242	NextToken *string `location:"querystring" locationName:"nextToken" type:"string"`
14243}
14244
14245// String returns the string representation.
14246//
14247// API parameter values that are decorated as "sensitive" in the API will not
14248// be included in the string output. The member name will be present, but the
14249// value will be replaced with "sensitive".
14250func (s ListOrganizationAdminAccountsInput) String() string {
14251	return awsutil.Prettify(s)
14252}
14253
14254// GoString returns the string representation.
14255//
14256// API parameter values that are decorated as "sensitive" in the API will not
14257// be included in the string output. The member name will be present, but the
14258// value will be replaced with "sensitive".
14259func (s ListOrganizationAdminAccountsInput) GoString() string {
14260	return s.String()
14261}
14262
14263// Validate inspects the fields of the type to determine if they are valid.
14264func (s *ListOrganizationAdminAccountsInput) Validate() error {
14265	invalidParams := request.ErrInvalidParams{Context: "ListOrganizationAdminAccountsInput"}
14266	if s.MaxResults != nil && *s.MaxResults < 1 {
14267		invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1))
14268	}
14269
14270	if invalidParams.Len() > 0 {
14271		return invalidParams
14272	}
14273	return nil
14274}
14275
14276// SetMaxResults sets the MaxResults field's value.
14277func (s *ListOrganizationAdminAccountsInput) SetMaxResults(v int64) *ListOrganizationAdminAccountsInput {
14278	s.MaxResults = &v
14279	return s
14280}
14281
14282// SetNextToken sets the NextToken field's value.
14283func (s *ListOrganizationAdminAccountsInput) SetNextToken(v string) *ListOrganizationAdminAccountsInput {
14284	s.NextToken = &v
14285	return s
14286}
14287
14288// Provides information about the delegated Amazon Macie administrator accounts
14289// for an Amazon Web Services organization.
14290type ListOrganizationAdminAccountsOutput struct {
14291	_ struct{} `type:"structure"`
14292
14293	AdminAccounts []*AdminAccount `locationName:"adminAccounts" type:"list"`
14294
14295	NextToken *string `locationName:"nextToken" type:"string"`
14296}
14297
14298// String returns the string representation.
14299//
14300// API parameter values that are decorated as "sensitive" in the API will not
14301// be included in the string output. The member name will be present, but the
14302// value will be replaced with "sensitive".
14303func (s ListOrganizationAdminAccountsOutput) String() string {
14304	return awsutil.Prettify(s)
14305}
14306
14307// GoString returns the string representation.
14308//
14309// API parameter values that are decorated as "sensitive" in the API will not
14310// be included in the string output. The member name will be present, but the
14311// value will be replaced with "sensitive".
14312func (s ListOrganizationAdminAccountsOutput) GoString() string {
14313	return s.String()
14314}
14315
14316// SetAdminAccounts sets the AdminAccounts field's value.
14317func (s *ListOrganizationAdminAccountsOutput) SetAdminAccounts(v []*AdminAccount) *ListOrganizationAdminAccountsOutput {
14318	s.AdminAccounts = v
14319	return s
14320}
14321
14322// SetNextToken sets the NextToken field's value.
14323func (s *ListOrganizationAdminAccountsOutput) SetNextToken(v string) *ListOrganizationAdminAccountsOutput {
14324	s.NextToken = &v
14325	return s
14326}
14327
14328type ListTagsForResourceInput struct {
14329	_ struct{} `type:"structure" nopayload:"true"`
14330
14331	// ResourceArn is a required field
14332	ResourceArn *string `location:"uri" locationName:"resourceArn" type:"string" required:"true"`
14333}
14334
14335// String returns the string representation.
14336//
14337// API parameter values that are decorated as "sensitive" in the API will not
14338// be included in the string output. The member name will be present, but the
14339// value will be replaced with "sensitive".
14340func (s ListTagsForResourceInput) String() string {
14341	return awsutil.Prettify(s)
14342}
14343
14344// GoString returns the string representation.
14345//
14346// API parameter values that are decorated as "sensitive" in the API will not
14347// be included in the string output. The member name will be present, but the
14348// value will be replaced with "sensitive".
14349func (s ListTagsForResourceInput) GoString() string {
14350	return s.String()
14351}
14352
14353// Validate inspects the fields of the type to determine if they are valid.
14354func (s *ListTagsForResourceInput) Validate() error {
14355	invalidParams := request.ErrInvalidParams{Context: "ListTagsForResourceInput"}
14356	if s.ResourceArn == nil {
14357		invalidParams.Add(request.NewErrParamRequired("ResourceArn"))
14358	}
14359	if s.ResourceArn != nil && len(*s.ResourceArn) < 1 {
14360		invalidParams.Add(request.NewErrParamMinLen("ResourceArn", 1))
14361	}
14362
14363	if invalidParams.Len() > 0 {
14364		return invalidParams
14365	}
14366	return nil
14367}
14368
14369// SetResourceArn sets the ResourceArn field's value.
14370func (s *ListTagsForResourceInput) SetResourceArn(v string) *ListTagsForResourceInput {
14371	s.ResourceArn = &v
14372	return s
14373}
14374
14375// Provides information about the tags (keys and values) that are associated
14376// with a classification job, custom data identifier, findings filter, or member
14377// account.
14378type ListTagsForResourceOutput struct {
14379	_ struct{} `type:"structure"`
14380
14381	// A string-to-string map of key-value pairs that specifies the tags (keys and
14382	// values) for a classification job, custom data identifier, findings filter,
14383	// or member account.
14384	Tags map[string]*string `locationName:"tags" type:"map"`
14385}
14386
14387// String returns the string representation.
14388//
14389// API parameter values that are decorated as "sensitive" in the API will not
14390// be included in the string output. The member name will be present, but the
14391// value will be replaced with "sensitive".
14392func (s ListTagsForResourceOutput) String() string {
14393	return awsutil.Prettify(s)
14394}
14395
14396// GoString returns the string representation.
14397//
14398// API parameter values that are decorated as "sensitive" in the API will not
14399// be included in the string output. The member name will be present, but the
14400// value will be replaced with "sensitive".
14401func (s ListTagsForResourceOutput) GoString() string {
14402	return s.String()
14403}
14404
14405// SetTags sets the Tags field's value.
14406func (s *ListTagsForResourceOutput) SetTags(v map[string]*string) *ListTagsForResourceOutput {
14407	s.Tags = v
14408	return s
14409}
14410
14411// Provides information about a managed data identifier. For additional information,
14412// see Using managed data identifiers (https://docs.aws.amazon.com/macie/latest/user/managed-data-identifiers.html)
14413// in the Amazon Macie User Guide.
14414type ManagedDataIdentifierSummary struct {
14415	_ struct{} `type:"structure"`
14416
14417	// For a finding, the category of sensitive data that was detected and produced
14418	// the finding. For a managed data identifier, the category of sensitive data
14419	// that the managed data identifier detects. Possible values are:
14420	Category *string `locationName:"category" type:"string" enum:"SensitiveDataItemCategory"`
14421
14422	Id *string `locationName:"id" type:"string"`
14423}
14424
14425// String returns the string representation.
14426//
14427// API parameter values that are decorated as "sensitive" in the API will not
14428// be included in the string output. The member name will be present, but the
14429// value will be replaced with "sensitive".
14430func (s ManagedDataIdentifierSummary) String() string {
14431	return awsutil.Prettify(s)
14432}
14433
14434// GoString returns the string representation.
14435//
14436// API parameter values that are decorated as "sensitive" in the API will not
14437// be included in the string output. The member name will be present, but the
14438// value will be replaced with "sensitive".
14439func (s ManagedDataIdentifierSummary) GoString() string {
14440	return s.String()
14441}
14442
14443// SetCategory sets the Category field's value.
14444func (s *ManagedDataIdentifierSummary) SetCategory(v string) *ManagedDataIdentifierSummary {
14445	s.Category = &v
14446	return s
14447}
14448
14449// SetId sets the Id field's value.
14450func (s *ManagedDataIdentifierSummary) SetId(v string) *ManagedDataIdentifierSummary {
14451	s.Id = &v
14452	return s
14453}
14454
14455// Provides statistical data and other information about an S3 bucket that Amazon
14456// Macie monitors and analyzes for your account. If an error occurs when Macie
14457// attempts to retrieve and process information about the bucket or the bucket's
14458// objects, the value for most of these properties is null. Exceptions are accountId
14459// and bucketName. To identify the cause of the error, refer to the errorCode
14460// and errorMessage values.
14461type MatchingBucket struct {
14462	_ struct{} `type:"structure"`
14463
14464	AccountId *string `locationName:"accountId" type:"string"`
14465
14466	BucketName *string `locationName:"bucketName" type:"string"`
14467
14468	ClassifiableObjectCount *int64 `locationName:"classifiableObjectCount" type:"long"`
14469
14470	ClassifiableSizeInBytes *int64 `locationName:"classifiableSizeInBytes" type:"long"`
14471
14472	// The error code for an error that prevented Amazon Macie from retrieving and
14473	// processing information about an S3 bucket and the bucket's objects.
14474	ErrorCode *string `locationName:"errorCode" type:"string" enum:"BucketMetadataErrorCode"`
14475
14476	ErrorMessage *string `locationName:"errorMessage" type:"string"`
14477
14478	// Specifies whether any one-time or recurring classification jobs are configured
14479	// to analyze data in an S3 bucket, and, if so, the details of the job that
14480	// ran most recently.
14481	JobDetails *JobDetails `locationName:"jobDetails" type:"structure"`
14482
14483	ObjectCount *int64 `locationName:"objectCount" type:"long"`
14484
14485	// Provides information about the number of objects that are in an S3 bucket
14486	// and use certain types of server-side encryption, use client-side encryption,
14487	// or aren't encrypted.
14488	ObjectCountByEncryptionType *ObjectCountByEncryptionType `locationName:"objectCountByEncryptionType" type:"structure"`
14489
14490	SizeInBytes *int64 `locationName:"sizeInBytes" type:"long"`
14491
14492	SizeInBytesCompressed *int64 `locationName:"sizeInBytesCompressed" type:"long"`
14493
14494	// Provides information about the total storage size (in bytes) or number of
14495	// objects that Amazon Macie can't analyze in one or more S3 buckets. In a BucketMetadata
14496	// or MatchingBucket object, this data is for a specific bucket. In a GetBucketStatisticsResponse
14497	// object, this data is aggregated for the buckets in the query results. If
14498	// versioning is enabled for a bucket, total storage size values are based on
14499	// the size of the latest version of each applicable object in the bucket.
14500	UnclassifiableObjectCount *ObjectLevelStatistics `locationName:"unclassifiableObjectCount" type:"structure"`
14501
14502	// Provides information about the total storage size (in bytes) or number of
14503	// objects that Amazon Macie can't analyze in one or more S3 buckets. In a BucketMetadata
14504	// or MatchingBucket object, this data is for a specific bucket. In a GetBucketStatisticsResponse
14505	// object, this data is aggregated for the buckets in the query results. If
14506	// versioning is enabled for a bucket, total storage size values are based on
14507	// the size of the latest version of each applicable object in the bucket.
14508	UnclassifiableObjectSizeInBytes *ObjectLevelStatistics `locationName:"unclassifiableObjectSizeInBytes" type:"structure"`
14509}
14510
14511// String returns the string representation.
14512//
14513// API parameter values that are decorated as "sensitive" in the API will not
14514// be included in the string output. The member name will be present, but the
14515// value will be replaced with "sensitive".
14516func (s MatchingBucket) String() string {
14517	return awsutil.Prettify(s)
14518}
14519
14520// GoString returns the string representation.
14521//
14522// API parameter values that are decorated as "sensitive" in the API will not
14523// be included in the string output. The member name will be present, but the
14524// value will be replaced with "sensitive".
14525func (s MatchingBucket) GoString() string {
14526	return s.String()
14527}
14528
14529// SetAccountId sets the AccountId field's value.
14530func (s *MatchingBucket) SetAccountId(v string) *MatchingBucket {
14531	s.AccountId = &v
14532	return s
14533}
14534
14535// SetBucketName sets the BucketName field's value.
14536func (s *MatchingBucket) SetBucketName(v string) *MatchingBucket {
14537	s.BucketName = &v
14538	return s
14539}
14540
14541// SetClassifiableObjectCount sets the ClassifiableObjectCount field's value.
14542func (s *MatchingBucket) SetClassifiableObjectCount(v int64) *MatchingBucket {
14543	s.ClassifiableObjectCount = &v
14544	return s
14545}
14546
14547// SetClassifiableSizeInBytes sets the ClassifiableSizeInBytes field's value.
14548func (s *MatchingBucket) SetClassifiableSizeInBytes(v int64) *MatchingBucket {
14549	s.ClassifiableSizeInBytes = &v
14550	return s
14551}
14552
14553// SetErrorCode sets the ErrorCode field's value.
14554func (s *MatchingBucket) SetErrorCode(v string) *MatchingBucket {
14555	s.ErrorCode = &v
14556	return s
14557}
14558
14559// SetErrorMessage sets the ErrorMessage field's value.
14560func (s *MatchingBucket) SetErrorMessage(v string) *MatchingBucket {
14561	s.ErrorMessage = &v
14562	return s
14563}
14564
14565// SetJobDetails sets the JobDetails field's value.
14566func (s *MatchingBucket) SetJobDetails(v *JobDetails) *MatchingBucket {
14567	s.JobDetails = v
14568	return s
14569}
14570
14571// SetObjectCount sets the ObjectCount field's value.
14572func (s *MatchingBucket) SetObjectCount(v int64) *MatchingBucket {
14573	s.ObjectCount = &v
14574	return s
14575}
14576
14577// SetObjectCountByEncryptionType sets the ObjectCountByEncryptionType field's value.
14578func (s *MatchingBucket) SetObjectCountByEncryptionType(v *ObjectCountByEncryptionType) *MatchingBucket {
14579	s.ObjectCountByEncryptionType = v
14580	return s
14581}
14582
14583// SetSizeInBytes sets the SizeInBytes field's value.
14584func (s *MatchingBucket) SetSizeInBytes(v int64) *MatchingBucket {
14585	s.SizeInBytes = &v
14586	return s
14587}
14588
14589// SetSizeInBytesCompressed sets the SizeInBytesCompressed field's value.
14590func (s *MatchingBucket) SetSizeInBytesCompressed(v int64) *MatchingBucket {
14591	s.SizeInBytesCompressed = &v
14592	return s
14593}
14594
14595// SetUnclassifiableObjectCount sets the UnclassifiableObjectCount field's value.
14596func (s *MatchingBucket) SetUnclassifiableObjectCount(v *ObjectLevelStatistics) *MatchingBucket {
14597	s.UnclassifiableObjectCount = v
14598	return s
14599}
14600
14601// SetUnclassifiableObjectSizeInBytes sets the UnclassifiableObjectSizeInBytes field's value.
14602func (s *MatchingBucket) SetUnclassifiableObjectSizeInBytes(v *ObjectLevelStatistics) *MatchingBucket {
14603	s.UnclassifiableObjectSizeInBytes = v
14604	return s
14605}
14606
14607// Provides statistical data and other information about an Amazon Web Services
14608// resource that Amazon Macie monitors and analyzes for your account.
14609type MatchingResource struct {
14610	_ struct{} `type:"structure"`
14611
14612	// Provides statistical data and other information about an S3 bucket that Amazon
14613	// Macie monitors and analyzes for your account. If an error occurs when Macie
14614	// attempts to retrieve and process information about the bucket or the bucket's
14615	// objects, the value for most of these properties is null. Exceptions are accountId
14616	// and bucketName. To identify the cause of the error, refer to the errorCode
14617	// and errorMessage values.
14618	MatchingBucket *MatchingBucket `locationName:"matchingBucket" type:"structure"`
14619}
14620
14621// String returns the string representation.
14622//
14623// API parameter values that are decorated as "sensitive" in the API will not
14624// be included in the string output. The member name will be present, but the
14625// value will be replaced with "sensitive".
14626func (s MatchingResource) String() string {
14627	return awsutil.Prettify(s)
14628}
14629
14630// GoString returns the string representation.
14631//
14632// API parameter values that are decorated as "sensitive" in the API will not
14633// be included in the string output. The member name will be present, but the
14634// value will be replaced with "sensitive".
14635func (s MatchingResource) GoString() string {
14636	return s.String()
14637}
14638
14639// SetMatchingBucket sets the MatchingBucket field's value.
14640func (s *MatchingResource) SetMatchingBucket(v *MatchingBucket) *MatchingResource {
14641	s.MatchingBucket = v
14642	return s
14643}
14644
14645// Provides information about an account that's associated with an Amazon Macie
14646// administrator account.
14647type Member struct {
14648	_ struct{} `type:"structure"`
14649
14650	AccountId *string `locationName:"accountId" type:"string"`
14651
14652	AdministratorAccountId *string `locationName:"administratorAccountId" type:"string"`
14653
14654	Arn *string `locationName:"arn" type:"string"`
14655
14656	Email *string `locationName:"email" type:"string"`
14657
14658	InvitedAt *time.Time `locationName:"invitedAt" type:"timestamp" timestampFormat:"iso8601"`
14659
14660	MasterAccountId *string `locationName:"masterAccountId" type:"string"`
14661
14662	// The current status of the relationship between an account and an associated
14663	// Amazon Macie administrator account (inviter account). Possible values are:
14664	RelationshipStatus *string `locationName:"relationshipStatus" type:"string" enum:"RelationshipStatus"`
14665
14666	// A string-to-string map of key-value pairs that specifies the tags (keys and
14667	// values) for a classification job, custom data identifier, findings filter,
14668	// or member account.
14669	Tags map[string]*string `locationName:"tags" type:"map"`
14670
14671	UpdatedAt *time.Time `locationName:"updatedAt" type:"timestamp" timestampFormat:"iso8601"`
14672}
14673
14674// String returns the string representation.
14675//
14676// API parameter values that are decorated as "sensitive" in the API will not
14677// be included in the string output. The member name will be present, but the
14678// value will be replaced with "sensitive".
14679func (s Member) String() string {
14680	return awsutil.Prettify(s)
14681}
14682
14683// GoString returns the string representation.
14684//
14685// API parameter values that are decorated as "sensitive" in the API will not
14686// be included in the string output. The member name will be present, but the
14687// value will be replaced with "sensitive".
14688func (s Member) GoString() string {
14689	return s.String()
14690}
14691
14692// SetAccountId sets the AccountId field's value.
14693func (s *Member) SetAccountId(v string) *Member {
14694	s.AccountId = &v
14695	return s
14696}
14697
14698// SetAdministratorAccountId sets the AdministratorAccountId field's value.
14699func (s *Member) SetAdministratorAccountId(v string) *Member {
14700	s.AdministratorAccountId = &v
14701	return s
14702}
14703
14704// SetArn sets the Arn field's value.
14705func (s *Member) SetArn(v string) *Member {
14706	s.Arn = &v
14707	return s
14708}
14709
14710// SetEmail sets the Email field's value.
14711func (s *Member) SetEmail(v string) *Member {
14712	s.Email = &v
14713	return s
14714}
14715
14716// SetInvitedAt sets the InvitedAt field's value.
14717func (s *Member) SetInvitedAt(v time.Time) *Member {
14718	s.InvitedAt = &v
14719	return s
14720}
14721
14722// SetMasterAccountId sets the MasterAccountId field's value.
14723func (s *Member) SetMasterAccountId(v string) *Member {
14724	s.MasterAccountId = &v
14725	return s
14726}
14727
14728// SetRelationshipStatus sets the RelationshipStatus field's value.
14729func (s *Member) SetRelationshipStatus(v string) *Member {
14730	s.RelationshipStatus = &v
14731	return s
14732}
14733
14734// SetTags sets the Tags field's value.
14735func (s *Member) SetTags(v map[string]*string) *Member {
14736	s.Tags = v
14737	return s
14738}
14739
14740// SetUpdatedAt sets the UpdatedAt field's value.
14741func (s *Member) SetUpdatedAt(v time.Time) *Member {
14742	s.UpdatedAt = &v
14743	return s
14744}
14745
14746// Specifies a monthly recurrence pattern for running a classification job.
14747type MonthlySchedule struct {
14748	_ struct{} `type:"structure"`
14749
14750	DayOfMonth *int64 `locationName:"dayOfMonth" type:"integer"`
14751}
14752
14753// String returns the string representation.
14754//
14755// API parameter values that are decorated as "sensitive" in the API will not
14756// be included in the string output. The member name will be present, but the
14757// value will be replaced with "sensitive".
14758func (s MonthlySchedule) String() string {
14759	return awsutil.Prettify(s)
14760}
14761
14762// GoString returns the string representation.
14763//
14764// API parameter values that are decorated as "sensitive" in the API will not
14765// be included in the string output. The member name will be present, but the
14766// value will be replaced with "sensitive".
14767func (s MonthlySchedule) GoString() string {
14768	return s.String()
14769}
14770
14771// SetDayOfMonth sets the DayOfMonth field's value.
14772func (s *MonthlySchedule) SetDayOfMonth(v int64) *MonthlySchedule {
14773	s.DayOfMonth = &v
14774	return s
14775}
14776
14777// Provides information about the number of objects that are in an S3 bucket
14778// and use certain types of server-side encryption, use client-side encryption,
14779// or aren't encrypted.
14780type ObjectCountByEncryptionType struct {
14781	_ struct{} `type:"structure"`
14782
14783	CustomerManaged *int64 `locationName:"customerManaged" type:"long"`
14784
14785	KmsManaged *int64 `locationName:"kmsManaged" type:"long"`
14786
14787	S3Managed *int64 `locationName:"s3Managed" type:"long"`
14788
14789	Unencrypted *int64 `locationName:"unencrypted" type:"long"`
14790
14791	Unknown *int64 `locationName:"unknown" type:"long"`
14792}
14793
14794// String returns the string representation.
14795//
14796// API parameter values that are decorated as "sensitive" in the API will not
14797// be included in the string output. The member name will be present, but the
14798// value will be replaced with "sensitive".
14799func (s ObjectCountByEncryptionType) String() string {
14800	return awsutil.Prettify(s)
14801}
14802
14803// GoString returns the string representation.
14804//
14805// API parameter values that are decorated as "sensitive" in the API will not
14806// be included in the string output. The member name will be present, but the
14807// value will be replaced with "sensitive".
14808func (s ObjectCountByEncryptionType) GoString() string {
14809	return s.String()
14810}
14811
14812// SetCustomerManaged sets the CustomerManaged field's value.
14813func (s *ObjectCountByEncryptionType) SetCustomerManaged(v int64) *ObjectCountByEncryptionType {
14814	s.CustomerManaged = &v
14815	return s
14816}
14817
14818// SetKmsManaged sets the KmsManaged field's value.
14819func (s *ObjectCountByEncryptionType) SetKmsManaged(v int64) *ObjectCountByEncryptionType {
14820	s.KmsManaged = &v
14821	return s
14822}
14823
14824// SetS3Managed sets the S3Managed field's value.
14825func (s *ObjectCountByEncryptionType) SetS3Managed(v int64) *ObjectCountByEncryptionType {
14826	s.S3Managed = &v
14827	return s
14828}
14829
14830// SetUnencrypted sets the Unencrypted field's value.
14831func (s *ObjectCountByEncryptionType) SetUnencrypted(v int64) *ObjectCountByEncryptionType {
14832	s.Unencrypted = &v
14833	return s
14834}
14835
14836// SetUnknown sets the Unknown field's value.
14837func (s *ObjectCountByEncryptionType) SetUnknown(v int64) *ObjectCountByEncryptionType {
14838	s.Unknown = &v
14839	return s
14840}
14841
14842// Provides information about the total storage size (in bytes) or number of
14843// objects that Amazon Macie can't analyze in one or more S3 buckets. In a BucketMetadata
14844// or MatchingBucket object, this data is for a specific bucket. In a GetBucketStatisticsResponse
14845// object, this data is aggregated for the buckets in the query results. If
14846// versioning is enabled for a bucket, total storage size values are based on
14847// the size of the latest version of each applicable object in the bucket.
14848type ObjectLevelStatistics struct {
14849	_ struct{} `type:"structure"`
14850
14851	FileType *int64 `locationName:"fileType" type:"long"`
14852
14853	StorageClass *int64 `locationName:"storageClass" type:"long"`
14854
14855	Total *int64 `locationName:"total" type:"long"`
14856}
14857
14858// String returns the string representation.
14859//
14860// API parameter values that are decorated as "sensitive" in the API will not
14861// be included in the string output. The member name will be present, but the
14862// value will be replaced with "sensitive".
14863func (s ObjectLevelStatistics) String() string {
14864	return awsutil.Prettify(s)
14865}
14866
14867// GoString returns the string representation.
14868//
14869// API parameter values that are decorated as "sensitive" in the API will not
14870// be included in the string output. The member name will be present, but the
14871// value will be replaced with "sensitive".
14872func (s ObjectLevelStatistics) GoString() string {
14873	return s.String()
14874}
14875
14876// SetFileType sets the FileType field's value.
14877func (s *ObjectLevelStatistics) SetFileType(v int64) *ObjectLevelStatistics {
14878	s.FileType = &v
14879	return s
14880}
14881
14882// SetStorageClass sets the StorageClass field's value.
14883func (s *ObjectLevelStatistics) SetStorageClass(v int64) *ObjectLevelStatistics {
14884	s.StorageClass = &v
14885	return s
14886}
14887
14888// SetTotal sets the Total field's value.
14889func (s *ObjectLevelStatistics) SetTotal(v int64) *ObjectLevelStatistics {
14890	s.Total = &v
14891	return s
14892}
14893
14894// Specifies the location of 1-15 occurrences of sensitive data that was detected
14895// by a managed data identifier or a custom data identifier and produced a sensitive
14896// data finding.
14897type Occurrences struct {
14898	_ struct{} `type:"structure"`
14899
14900	// Specifies the location of occurrences of sensitive data in a Microsoft Excel
14901	// workbook, CSV file, or TSV file.
14902	Cells []*Cell `locationName:"cells" type:"list"`
14903
14904	LineRanges []*Range `locationName:"lineRanges" type:"list"`
14905
14906	OffsetRanges []*Range `locationName:"offsetRanges" type:"list"`
14907
14908	// Specifies the location of occurrences of sensitive data in an Adobe Portable
14909	// Document Format file.
14910	Pages []*Page `locationName:"pages" type:"list"`
14911
14912	Records []*Record `locationName:"records" type:"list"`
14913}
14914
14915// String returns the string representation.
14916//
14917// API parameter values that are decorated as "sensitive" in the API will not
14918// be included in the string output. The member name will be present, but the
14919// value will be replaced with "sensitive".
14920func (s Occurrences) String() string {
14921	return awsutil.Prettify(s)
14922}
14923
14924// GoString returns the string representation.
14925//
14926// API parameter values that are decorated as "sensitive" in the API will not
14927// be included in the string output. The member name will be present, but the
14928// value will be replaced with "sensitive".
14929func (s Occurrences) GoString() string {
14930	return s.String()
14931}
14932
14933// SetCells sets the Cells field's value.
14934func (s *Occurrences) SetCells(v []*Cell) *Occurrences {
14935	s.Cells = v
14936	return s
14937}
14938
14939// SetLineRanges sets the LineRanges field's value.
14940func (s *Occurrences) SetLineRanges(v []*Range) *Occurrences {
14941	s.LineRanges = v
14942	return s
14943}
14944
14945// SetOffsetRanges sets the OffsetRanges field's value.
14946func (s *Occurrences) SetOffsetRanges(v []*Range) *Occurrences {
14947	s.OffsetRanges = v
14948	return s
14949}
14950
14951// SetPages sets the Pages field's value.
14952func (s *Occurrences) SetPages(v []*Page) *Occurrences {
14953	s.Pages = v
14954	return s
14955}
14956
14957// SetRecords sets the Records field's value.
14958func (s *Occurrences) SetRecords(v []*Record) *Occurrences {
14959	s.Records = v
14960	return s
14961}
14962
14963// Specifies the location of an occurrence of sensitive data in an Adobe Portable
14964// Document Format file.
14965type Page struct {
14966	_ struct{} `type:"structure"`
14967
14968	// Specifies the location of an occurrence of sensitive data in a non-binary
14969	// text file, such as an HTML, TXT, or XML file.
14970	LineRange *Range `locationName:"lineRange" type:"structure"`
14971
14972	// Specifies the location of an occurrence of sensitive data in a non-binary
14973	// text file, such as an HTML, TXT, or XML file.
14974	OffsetRange *Range `locationName:"offsetRange" type:"structure"`
14975
14976	PageNumber *int64 `locationName:"pageNumber" type:"long"`
14977}
14978
14979// String returns the string representation.
14980//
14981// API parameter values that are decorated as "sensitive" in the API will not
14982// be included in the string output. The member name will be present, but the
14983// value will be replaced with "sensitive".
14984func (s Page) String() string {
14985	return awsutil.Prettify(s)
14986}
14987
14988// GoString returns the string representation.
14989//
14990// API parameter values that are decorated as "sensitive" in the API will not
14991// be included in the string output. The member name will be present, but the
14992// value will be replaced with "sensitive".
14993func (s Page) GoString() string {
14994	return s.String()
14995}
14996
14997// SetLineRange sets the LineRange field's value.
14998func (s *Page) SetLineRange(v *Range) *Page {
14999	s.LineRange = v
15000	return s
15001}
15002
15003// SetOffsetRange sets the OffsetRange field's value.
15004func (s *Page) SetOffsetRange(v *Range) *Page {
15005	s.OffsetRange = v
15006	return s
15007}
15008
15009// SetPageNumber sets the PageNumber field's value.
15010func (s *Page) SetPageNumber(v int64) *Page {
15011	s.PageNumber = &v
15012	return s
15013}
15014
15015// Provides the details of a policy finding.
15016type PolicyDetails struct {
15017	_ struct{} `type:"structure"`
15018
15019	// Provides information about an action that occurred for a resource and produced
15020	// a policy finding.
15021	Action *FindingAction `locationName:"action" type:"structure"`
15022
15023	// Provides information about an entity that performed an action that produced
15024	// a policy finding for a resource.
15025	Actor *FindingActor `locationName:"actor" type:"structure"`
15026}
15027
15028// String returns the string representation.
15029//
15030// API parameter values that are decorated as "sensitive" in the API will not
15031// be included in the string output. The member name will be present, but the
15032// value will be replaced with "sensitive".
15033func (s PolicyDetails) String() string {
15034	return awsutil.Prettify(s)
15035}
15036
15037// GoString returns the string representation.
15038//
15039// API parameter values that are decorated as "sensitive" in the API will not
15040// be included in the string output. The member name will be present, but the
15041// value will be replaced with "sensitive".
15042func (s PolicyDetails) GoString() string {
15043	return s.String()
15044}
15045
15046// SetAction sets the Action field's value.
15047func (s *PolicyDetails) SetAction(v *FindingAction) *PolicyDetails {
15048	s.Action = v
15049	return s
15050}
15051
15052// SetActor sets the Actor field's value.
15053func (s *PolicyDetails) SetActor(v *FindingActor) *PolicyDetails {
15054	s.Actor = v
15055	return s
15056}
15057
15058// Specifies where to store data classification results, and the encryption
15059// settings to use when storing results in that location. Currently, you can
15060// store classification results only in an S3 bucket.
15061type PutClassificationExportConfigurationInput struct {
15062	_ struct{} `type:"structure"`
15063
15064	// Specifies where to store data classification results, and the encryption
15065	// settings to use when storing results in that location. Currently, you can
15066	// store classification results only in an S3 bucket.
15067	//
15068	// Configuration is a required field
15069	Configuration *ClassificationExportConfiguration `locationName:"configuration" type:"structure" required:"true"`
15070}
15071
15072// String returns the string representation.
15073//
15074// API parameter values that are decorated as "sensitive" in the API will not
15075// be included in the string output. The member name will be present, but the
15076// value will be replaced with "sensitive".
15077func (s PutClassificationExportConfigurationInput) String() string {
15078	return awsutil.Prettify(s)
15079}
15080
15081// GoString returns the string representation.
15082//
15083// API parameter values that are decorated as "sensitive" in the API will not
15084// be included in the string output. The member name will be present, but the
15085// value will be replaced with "sensitive".
15086func (s PutClassificationExportConfigurationInput) GoString() string {
15087	return s.String()
15088}
15089
15090// Validate inspects the fields of the type to determine if they are valid.
15091func (s *PutClassificationExportConfigurationInput) Validate() error {
15092	invalidParams := request.ErrInvalidParams{Context: "PutClassificationExportConfigurationInput"}
15093	if s.Configuration == nil {
15094		invalidParams.Add(request.NewErrParamRequired("Configuration"))
15095	}
15096	if s.Configuration != nil {
15097		if err := s.Configuration.Validate(); err != nil {
15098			invalidParams.AddNested("Configuration", err.(request.ErrInvalidParams))
15099		}
15100	}
15101
15102	if invalidParams.Len() > 0 {
15103		return invalidParams
15104	}
15105	return nil
15106}
15107
15108// SetConfiguration sets the Configuration field's value.
15109func (s *PutClassificationExportConfigurationInput) SetConfiguration(v *ClassificationExportConfiguration) *PutClassificationExportConfigurationInput {
15110	s.Configuration = v
15111	return s
15112}
15113
15114// Provides information about updated settings for storing data classification
15115// results.
15116type PutClassificationExportConfigurationOutput struct {
15117	_ struct{} `type:"structure"`
15118
15119	// Specifies where to store data classification results, and the encryption
15120	// settings to use when storing results in that location. Currently, you can
15121	// store classification results only in an S3 bucket.
15122	Configuration *ClassificationExportConfiguration `locationName:"configuration" type:"structure"`
15123}
15124
15125// String returns the string representation.
15126//
15127// API parameter values that are decorated as "sensitive" in the API will not
15128// be included in the string output. The member name will be present, but the
15129// value will be replaced with "sensitive".
15130func (s PutClassificationExportConfigurationOutput) String() string {
15131	return awsutil.Prettify(s)
15132}
15133
15134// GoString returns the string representation.
15135//
15136// API parameter values that are decorated as "sensitive" in the API will not
15137// be included in the string output. The member name will be present, but the
15138// value will be replaced with "sensitive".
15139func (s PutClassificationExportConfigurationOutput) GoString() string {
15140	return s.String()
15141}
15142
15143// SetConfiguration sets the Configuration field's value.
15144func (s *PutClassificationExportConfigurationOutput) SetConfiguration(v *ClassificationExportConfiguration) *PutClassificationExportConfigurationOutput {
15145	s.Configuration = v
15146	return s
15147}
15148
15149// Specifies configuration settings for publishing findings to Security Hub
15150// automatically.
15151type PutFindingsPublicationConfigurationInput struct {
15152	_ struct{} `type:"structure"`
15153
15154	ClientToken *string `locationName:"clientToken" type:"string" idempotencyToken:"true"`
15155
15156	// Specifies configuration settings that determine which findings are published
15157	// to Security Hub automatically. For information about how Macie publishes
15158	// findings to Security Hub, see Amazon Macie integration with Security Hub
15159	// (https://docs.aws.amazon.com/macie/latest/user/securityhub-integration.html)
15160	// in the Amazon Macie User Guide.
15161	SecurityHubConfiguration *SecurityHubConfiguration `locationName:"securityHubConfiguration" type:"structure"`
15162}
15163
15164// String returns the string representation.
15165//
15166// API parameter values that are decorated as "sensitive" in the API will not
15167// be included in the string output. The member name will be present, but the
15168// value will be replaced with "sensitive".
15169func (s PutFindingsPublicationConfigurationInput) String() string {
15170	return awsutil.Prettify(s)
15171}
15172
15173// GoString returns the string representation.
15174//
15175// API parameter values that are decorated as "sensitive" in the API will not
15176// be included in the string output. The member name will be present, but the
15177// value will be replaced with "sensitive".
15178func (s PutFindingsPublicationConfigurationInput) GoString() string {
15179	return s.String()
15180}
15181
15182// Validate inspects the fields of the type to determine if they are valid.
15183func (s *PutFindingsPublicationConfigurationInput) Validate() error {
15184	invalidParams := request.ErrInvalidParams{Context: "PutFindingsPublicationConfigurationInput"}
15185	if s.SecurityHubConfiguration != nil {
15186		if err := s.SecurityHubConfiguration.Validate(); err != nil {
15187			invalidParams.AddNested("SecurityHubConfiguration", err.(request.ErrInvalidParams))
15188		}
15189	}
15190
15191	if invalidParams.Len() > 0 {
15192		return invalidParams
15193	}
15194	return nil
15195}
15196
15197// SetClientToken sets the ClientToken field's value.
15198func (s *PutFindingsPublicationConfigurationInput) SetClientToken(v string) *PutFindingsPublicationConfigurationInput {
15199	s.ClientToken = &v
15200	return s
15201}
15202
15203// SetSecurityHubConfiguration sets the SecurityHubConfiguration field's value.
15204func (s *PutFindingsPublicationConfigurationInput) SetSecurityHubConfiguration(v *SecurityHubConfiguration) *PutFindingsPublicationConfigurationInput {
15205	s.SecurityHubConfiguration = v
15206	return s
15207}
15208
15209type PutFindingsPublicationConfigurationOutput struct {
15210	_ struct{} `type:"structure"`
15211}
15212
15213// String returns the string representation.
15214//
15215// API parameter values that are decorated as "sensitive" in the API will not
15216// be included in the string output. The member name will be present, but the
15217// value will be replaced with "sensitive".
15218func (s PutFindingsPublicationConfigurationOutput) String() string {
15219	return awsutil.Prettify(s)
15220}
15221
15222// GoString returns the string representation.
15223//
15224// API parameter values that are decorated as "sensitive" in the API will not
15225// be included in the string output. The member name will be present, but the
15226// value will be replaced with "sensitive".
15227func (s PutFindingsPublicationConfigurationOutput) GoString() string {
15228	return s.String()
15229}
15230
15231// Specifies the location of an occurrence of sensitive data in a non-binary
15232// text file, such as an HTML, TXT, or XML file.
15233type Range struct {
15234	_ struct{} `type:"structure"`
15235
15236	End *int64 `locationName:"end" type:"long"`
15237
15238	Start *int64 `locationName:"start" type:"long"`
15239
15240	StartColumn *int64 `locationName:"startColumn" type:"long"`
15241}
15242
15243// String returns the string representation.
15244//
15245// API parameter values that are decorated as "sensitive" in the API will not
15246// be included in the string output. The member name will be present, but the
15247// value will be replaced with "sensitive".
15248func (s Range) String() string {
15249	return awsutil.Prettify(s)
15250}
15251
15252// GoString returns the string representation.
15253//
15254// API parameter values that are decorated as "sensitive" in the API will not
15255// be included in the string output. The member name will be present, but the
15256// value will be replaced with "sensitive".
15257func (s Range) GoString() string {
15258	return s.String()
15259}
15260
15261// SetEnd sets the End field's value.
15262func (s *Range) SetEnd(v int64) *Range {
15263	s.End = &v
15264	return s
15265}
15266
15267// SetStart sets the Start field's value.
15268func (s *Range) SetStart(v int64) *Range {
15269	s.Start = &v
15270	return s
15271}
15272
15273// SetStartColumn sets the StartColumn field's value.
15274func (s *Range) SetStartColumn(v int64) *Range {
15275	s.StartColumn = &v
15276	return s
15277}
15278
15279// Specifies the location of an occurrence of sensitive data in an Apache Avro
15280// object container, Apache Parquet file, JSON file, or JSON Lines file.
15281type Record struct {
15282	_ struct{} `type:"structure"`
15283
15284	JsonPath *string `locationName:"jsonPath" type:"string"`
15285
15286	RecordIndex *int64 `locationName:"recordIndex" type:"long"`
15287}
15288
15289// String returns the string representation.
15290//
15291// API parameter values that are decorated as "sensitive" in the API will not
15292// be included in the string output. The member name will be present, but the
15293// value will be replaced with "sensitive".
15294func (s Record) String() string {
15295	return awsutil.Prettify(s)
15296}
15297
15298// GoString returns the string representation.
15299//
15300// API parameter values that are decorated as "sensitive" in the API will not
15301// be included in the string output. The member name will be present, but the
15302// value will be replaced with "sensitive".
15303func (s Record) GoString() string {
15304	return s.String()
15305}
15306
15307// SetJsonPath sets the JsonPath field's value.
15308func (s *Record) SetJsonPath(v string) *Record {
15309	s.JsonPath = &v
15310	return s
15311}
15312
15313// SetRecordIndex sets the RecordIndex field's value.
15314func (s *Record) SetRecordIndex(v int64) *Record {
15315	s.RecordIndex = &v
15316	return s
15317}
15318
15319// Provides information about settings that define whether one or more objects
15320// in an S3 bucket are replicated to S3 buckets for other Amazon Web Services
15321// accounts and, if so, which accounts.
15322type ReplicationDetails struct {
15323	_ struct{} `type:"structure"`
15324
15325	Replicated *bool `locationName:"replicated" type:"boolean"`
15326
15327	ReplicatedExternally *bool `locationName:"replicatedExternally" type:"boolean"`
15328
15329	ReplicationAccounts []*string `locationName:"replicationAccounts" type:"list"`
15330}
15331
15332// String returns the string representation.
15333//
15334// API parameter values that are decorated as "sensitive" in the API will not
15335// be included in the string output. The member name will be present, but the
15336// value will be replaced with "sensitive".
15337func (s ReplicationDetails) String() string {
15338	return awsutil.Prettify(s)
15339}
15340
15341// GoString returns the string representation.
15342//
15343// API parameter values that are decorated as "sensitive" in the API will not
15344// be included in the string output. The member name will be present, but the
15345// value will be replaced with "sensitive".
15346func (s ReplicationDetails) GoString() string {
15347	return s.String()
15348}
15349
15350// SetReplicated sets the Replicated field's value.
15351func (s *ReplicationDetails) SetReplicated(v bool) *ReplicationDetails {
15352	s.Replicated = &v
15353	return s
15354}
15355
15356// SetReplicatedExternally sets the ReplicatedExternally field's value.
15357func (s *ReplicationDetails) SetReplicatedExternally(v bool) *ReplicationDetails {
15358	s.ReplicatedExternally = &v
15359	return s
15360}
15361
15362// SetReplicationAccounts sets the ReplicationAccounts field's value.
15363func (s *ReplicationDetails) SetReplicationAccounts(v []*string) *ReplicationDetails {
15364	s.ReplicationAccounts = v
15365	return s
15366}
15367
15368// Provides information about an error that occurred because a specified resource
15369// wasn't found.
15370type ResourceNotFoundException struct {
15371	_            struct{}                  `type:"structure"`
15372	RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"`
15373
15374	Message_ *string `locationName:"message" type:"string"`
15375}
15376
15377// String returns the string representation.
15378//
15379// API parameter values that are decorated as "sensitive" in the API will not
15380// be included in the string output. The member name will be present, but the
15381// value will be replaced with "sensitive".
15382func (s ResourceNotFoundException) String() string {
15383	return awsutil.Prettify(s)
15384}
15385
15386// GoString returns the string representation.
15387//
15388// API parameter values that are decorated as "sensitive" in the API will not
15389// be included in the string output. The member name will be present, but the
15390// value will be replaced with "sensitive".
15391func (s ResourceNotFoundException) GoString() string {
15392	return s.String()
15393}
15394
15395func newErrorResourceNotFoundException(v protocol.ResponseMetadata) error {
15396	return &ResourceNotFoundException{
15397		RespMetadata: v,
15398	}
15399}
15400
15401// Code returns the exception type name.
15402func (s *ResourceNotFoundException) Code() string {
15403	return "ResourceNotFoundException"
15404}
15405
15406// Message returns the exception's message.
15407func (s *ResourceNotFoundException) Message() string {
15408	if s.Message_ != nil {
15409		return *s.Message_
15410	}
15411	return ""
15412}
15413
15414// OrigErr always returns nil, satisfies awserr.Error interface.
15415func (s *ResourceNotFoundException) OrigErr() error {
15416	return nil
15417}
15418
15419func (s *ResourceNotFoundException) Error() string {
15420	return fmt.Sprintf("%s: %s", s.Code(), s.Message())
15421}
15422
15423// Status code returns the HTTP status code for the request's response error.
15424func (s *ResourceNotFoundException) StatusCode() int {
15425	return s.RespMetadata.StatusCode
15426}
15427
15428// RequestID returns the service's response RequestID for request.
15429func (s *ResourceNotFoundException) RequestID() string {
15430	return s.RespMetadata.RequestID
15431}
15432
15433// Provides information about the resources that a finding applies to.
15434type ResourcesAffected struct {
15435	_ struct{} `type:"structure"`
15436
15437	// Provides information about the S3 bucket that a finding applies to.
15438	S3Bucket *S3Bucket `locationName:"s3Bucket" type:"structure"`
15439
15440	// Provides information about the S3 object that a finding applies to.
15441	S3Object *S3Object `locationName:"s3Object" type:"structure"`
15442}
15443
15444// String returns the string representation.
15445//
15446// API parameter values that are decorated as "sensitive" in the API will not
15447// be included in the string output. The member name will be present, but the
15448// value will be replaced with "sensitive".
15449func (s ResourcesAffected) String() string {
15450	return awsutil.Prettify(s)
15451}
15452
15453// GoString returns the string representation.
15454//
15455// API parameter values that are decorated as "sensitive" in the API will not
15456// be included in the string output. The member name will be present, but the
15457// value will be replaced with "sensitive".
15458func (s ResourcesAffected) GoString() string {
15459	return s.String()
15460}
15461
15462// SetS3Bucket sets the S3Bucket field's value.
15463func (s *ResourcesAffected) SetS3Bucket(v *S3Bucket) *ResourcesAffected {
15464	s.S3Bucket = v
15465	return s
15466}
15467
15468// SetS3Object sets the S3Object field's value.
15469func (s *ResourcesAffected) SetS3Object(v *S3Object) *ResourcesAffected {
15470	s.S3Object = v
15471	return s
15472}
15473
15474// Provides information about the S3 bucket that a finding applies to.
15475type S3Bucket struct {
15476	_ struct{} `type:"structure"`
15477
15478	AllowsUnencryptedObjectUploads *string `locationName:"allowsUnencryptedObjectUploads" type:"string" enum:"AllowsUnencryptedObjectUploads"`
15479
15480	Arn *string `locationName:"arn" type:"string"`
15481
15482	CreatedAt *time.Time `locationName:"createdAt" type:"timestamp" timestampFormat:"iso8601"`
15483
15484	// Provides information about the server-side encryption settings for an S3
15485	// bucket or S3 object.
15486	DefaultServerSideEncryption *ServerSideEncryption `locationName:"defaultServerSideEncryption" type:"structure"`
15487
15488	Name *string `locationName:"name" type:"string"`
15489
15490	// Provides information about the Amazon Web Services account that owns an S3
15491	// bucket.
15492	Owner *S3BucketOwner `locationName:"owner" type:"structure"`
15493
15494	// Provides information about the permissions settings that determine whether
15495	// an S3 bucket is publicly accessible.
15496	PublicAccess *BucketPublicAccess `locationName:"publicAccess" type:"structure"`
15497
15498	// Provides information about the tags that are associated with an S3 bucket
15499	// or object. Each tag consists of a required tag key and an associated tag
15500	// value.
15501	Tags []*KeyValuePair `locationName:"tags" type:"list"`
15502}
15503
15504// String returns the string representation.
15505//
15506// API parameter values that are decorated as "sensitive" in the API will not
15507// be included in the string output. The member name will be present, but the
15508// value will be replaced with "sensitive".
15509func (s S3Bucket) String() string {
15510	return awsutil.Prettify(s)
15511}
15512
15513// GoString returns the string representation.
15514//
15515// API parameter values that are decorated as "sensitive" in the API will not
15516// be included in the string output. The member name will be present, but the
15517// value will be replaced with "sensitive".
15518func (s S3Bucket) GoString() string {
15519	return s.String()
15520}
15521
15522// SetAllowsUnencryptedObjectUploads sets the AllowsUnencryptedObjectUploads field's value.
15523func (s *S3Bucket) SetAllowsUnencryptedObjectUploads(v string) *S3Bucket {
15524	s.AllowsUnencryptedObjectUploads = &v
15525	return s
15526}
15527
15528// SetArn sets the Arn field's value.
15529func (s *S3Bucket) SetArn(v string) *S3Bucket {
15530	s.Arn = &v
15531	return s
15532}
15533
15534// SetCreatedAt sets the CreatedAt field's value.
15535func (s *S3Bucket) SetCreatedAt(v time.Time) *S3Bucket {
15536	s.CreatedAt = &v
15537	return s
15538}
15539
15540// SetDefaultServerSideEncryption sets the DefaultServerSideEncryption field's value.
15541func (s *S3Bucket) SetDefaultServerSideEncryption(v *ServerSideEncryption) *S3Bucket {
15542	s.DefaultServerSideEncryption = v
15543	return s
15544}
15545
15546// SetName sets the Name field's value.
15547func (s *S3Bucket) SetName(v string) *S3Bucket {
15548	s.Name = &v
15549	return s
15550}
15551
15552// SetOwner sets the Owner field's value.
15553func (s *S3Bucket) SetOwner(v *S3BucketOwner) *S3Bucket {
15554	s.Owner = v
15555	return s
15556}
15557
15558// SetPublicAccess sets the PublicAccess field's value.
15559func (s *S3Bucket) SetPublicAccess(v *BucketPublicAccess) *S3Bucket {
15560	s.PublicAccess = v
15561	return s
15562}
15563
15564// SetTags sets the Tags field's value.
15565func (s *S3Bucket) SetTags(v []*KeyValuePair) *S3Bucket {
15566	s.Tags = v
15567	return s
15568}
15569
15570// Specifies property- and tag-based conditions that define criteria for including
15571// or excluding S3 buckets from a classification job. Exclude conditions take
15572// precedence over include conditions.
15573type S3BucketCriteriaForJob struct {
15574	_ struct{} `type:"structure"`
15575
15576	// Specifies one or more property- and tag-based conditions that define criteria
15577	// for including or excluding S3 buckets from a classification job.
15578	Excludes *CriteriaBlockForJob `locationName:"excludes" type:"structure"`
15579
15580	// Specifies one or more property- and tag-based conditions that define criteria
15581	// for including or excluding S3 buckets from a classification job.
15582	Includes *CriteriaBlockForJob `locationName:"includes" type:"structure"`
15583}
15584
15585// String returns the string representation.
15586//
15587// API parameter values that are decorated as "sensitive" in the API will not
15588// be included in the string output. The member name will be present, but the
15589// value will be replaced with "sensitive".
15590func (s S3BucketCriteriaForJob) String() string {
15591	return awsutil.Prettify(s)
15592}
15593
15594// GoString returns the string representation.
15595//
15596// API parameter values that are decorated as "sensitive" in the API will not
15597// be included in the string output. The member name will be present, but the
15598// value will be replaced with "sensitive".
15599func (s S3BucketCriteriaForJob) GoString() string {
15600	return s.String()
15601}
15602
15603// SetExcludes sets the Excludes field's value.
15604func (s *S3BucketCriteriaForJob) SetExcludes(v *CriteriaBlockForJob) *S3BucketCriteriaForJob {
15605	s.Excludes = v
15606	return s
15607}
15608
15609// SetIncludes sets the Includes field's value.
15610func (s *S3BucketCriteriaForJob) SetIncludes(v *CriteriaBlockForJob) *S3BucketCriteriaForJob {
15611	s.Includes = v
15612	return s
15613}
15614
15615// Specifies an Amazon Web Services account that owns S3 buckets for a classification
15616// job to analyze, and one or more specific buckets to analyze for that account.
15617type S3BucketDefinitionForJob struct {
15618	_ struct{} `type:"structure"`
15619
15620	// AccountId is a required field
15621	AccountId *string `locationName:"accountId" type:"string" required:"true"`
15622
15623	// Buckets is a required field
15624	Buckets []*string `locationName:"buckets" type:"list" required:"true"`
15625}
15626
15627// String returns the string representation.
15628//
15629// API parameter values that are decorated as "sensitive" in the API will not
15630// be included in the string output. The member name will be present, but the
15631// value will be replaced with "sensitive".
15632func (s S3BucketDefinitionForJob) String() string {
15633	return awsutil.Prettify(s)
15634}
15635
15636// GoString returns the string representation.
15637//
15638// API parameter values that are decorated as "sensitive" in the API will not
15639// be included in the string output. The member name will be present, but the
15640// value will be replaced with "sensitive".
15641func (s S3BucketDefinitionForJob) GoString() string {
15642	return s.String()
15643}
15644
15645// Validate inspects the fields of the type to determine if they are valid.
15646func (s *S3BucketDefinitionForJob) Validate() error {
15647	invalidParams := request.ErrInvalidParams{Context: "S3BucketDefinitionForJob"}
15648	if s.AccountId == nil {
15649		invalidParams.Add(request.NewErrParamRequired("AccountId"))
15650	}
15651	if s.Buckets == nil {
15652		invalidParams.Add(request.NewErrParamRequired("Buckets"))
15653	}
15654
15655	if invalidParams.Len() > 0 {
15656		return invalidParams
15657	}
15658	return nil
15659}
15660
15661// SetAccountId sets the AccountId field's value.
15662func (s *S3BucketDefinitionForJob) SetAccountId(v string) *S3BucketDefinitionForJob {
15663	s.AccountId = &v
15664	return s
15665}
15666
15667// SetBuckets sets the Buckets field's value.
15668func (s *S3BucketDefinitionForJob) SetBuckets(v []*string) *S3BucketDefinitionForJob {
15669	s.Buckets = v
15670	return s
15671}
15672
15673// Provides information about the Amazon Web Services account that owns an S3
15674// bucket.
15675type S3BucketOwner struct {
15676	_ struct{} `type:"structure"`
15677
15678	DisplayName *string `locationName:"displayName" type:"string"`
15679
15680	Id *string `locationName:"id" type:"string"`
15681}
15682
15683// String returns the string representation.
15684//
15685// API parameter values that are decorated as "sensitive" in the API will not
15686// be included in the string output. The member name will be present, but the
15687// value will be replaced with "sensitive".
15688func (s S3BucketOwner) String() string {
15689	return awsutil.Prettify(s)
15690}
15691
15692// GoString returns the string representation.
15693//
15694// API parameter values that are decorated as "sensitive" in the API will not
15695// be included in the string output. The member name will be present, but the
15696// value will be replaced with "sensitive".
15697func (s S3BucketOwner) GoString() string {
15698	return s.String()
15699}
15700
15701// SetDisplayName sets the DisplayName field's value.
15702func (s *S3BucketOwner) SetDisplayName(v string) *S3BucketOwner {
15703	s.DisplayName = &v
15704	return s
15705}
15706
15707// SetId sets the Id field's value.
15708func (s *S3BucketOwner) SetId(v string) *S3BucketOwner {
15709	s.Id = &v
15710	return s
15711}
15712
15713// Specifies an S3 bucket to store data classification results in, and the encryption
15714// settings to use when storing results in that bucket.
15715type S3Destination struct {
15716	_ struct{} `type:"structure"`
15717
15718	// BucketName is a required field
15719	BucketName *string `locationName:"bucketName" type:"string" required:"true"`
15720
15721	KeyPrefix *string `locationName:"keyPrefix" type:"string"`
15722
15723	// KmsKeyArn is a required field
15724	KmsKeyArn *string `locationName:"kmsKeyArn" type:"string" required:"true"`
15725}
15726
15727// String returns the string representation.
15728//
15729// API parameter values that are decorated as "sensitive" in the API will not
15730// be included in the string output. The member name will be present, but the
15731// value will be replaced with "sensitive".
15732func (s S3Destination) String() string {
15733	return awsutil.Prettify(s)
15734}
15735
15736// GoString returns the string representation.
15737//
15738// API parameter values that are decorated as "sensitive" in the API will not
15739// be included in the string output. The member name will be present, but the
15740// value will be replaced with "sensitive".
15741func (s S3Destination) GoString() string {
15742	return s.String()
15743}
15744
15745// Validate inspects the fields of the type to determine if they are valid.
15746func (s *S3Destination) Validate() error {
15747	invalidParams := request.ErrInvalidParams{Context: "S3Destination"}
15748	if s.BucketName == nil {
15749		invalidParams.Add(request.NewErrParamRequired("BucketName"))
15750	}
15751	if s.KmsKeyArn == nil {
15752		invalidParams.Add(request.NewErrParamRequired("KmsKeyArn"))
15753	}
15754
15755	if invalidParams.Len() > 0 {
15756		return invalidParams
15757	}
15758	return nil
15759}
15760
15761// SetBucketName sets the BucketName field's value.
15762func (s *S3Destination) SetBucketName(v string) *S3Destination {
15763	s.BucketName = &v
15764	return s
15765}
15766
15767// SetKeyPrefix sets the KeyPrefix field's value.
15768func (s *S3Destination) SetKeyPrefix(v string) *S3Destination {
15769	s.KeyPrefix = &v
15770	return s
15771}
15772
15773// SetKmsKeyArn sets the KmsKeyArn field's value.
15774func (s *S3Destination) SetKmsKeyArn(v string) *S3Destination {
15775	s.KmsKeyArn = &v
15776	return s
15777}
15778
15779// Specifies which S3 buckets contain the objects that a classification job
15780// analyzes, and the scope of that analysis. The bucket specification can be
15781// static (bucketDefinitions) or dynamic (bucketCriteria). If it's static, the
15782// job analyzes objects in the same predefined set of buckets each time the
15783// job runs. If it's dynamic, the job analyzes objects in any buckets that match
15784// the specified criteria each time the job starts to run.
15785type S3JobDefinition struct {
15786	_ struct{} `type:"structure"`
15787
15788	// Specifies property- and tag-based conditions that define criteria for including
15789	// or excluding S3 buckets from a classification job. Exclude conditions take
15790	// precedence over include conditions.
15791	BucketCriteria *S3BucketCriteriaForJob `locationName:"bucketCriteria" type:"structure"`
15792
15793	BucketDefinitions []*S3BucketDefinitionForJob `locationName:"bucketDefinitions" type:"list"`
15794
15795	// Specifies one or more property- and tag-based conditions that define criteria
15796	// for including or excluding S3 objects from a classification job. Exclude
15797	// conditions take precedence over include conditions.
15798	Scoping *Scoping `locationName:"scoping" type:"structure"`
15799}
15800
15801// String returns the string representation.
15802//
15803// API parameter values that are decorated as "sensitive" in the API will not
15804// be included in the string output. The member name will be present, but the
15805// value will be replaced with "sensitive".
15806func (s S3JobDefinition) String() string {
15807	return awsutil.Prettify(s)
15808}
15809
15810// GoString returns the string representation.
15811//
15812// API parameter values that are decorated as "sensitive" in the API will not
15813// be included in the string output. The member name will be present, but the
15814// value will be replaced with "sensitive".
15815func (s S3JobDefinition) GoString() string {
15816	return s.String()
15817}
15818
15819// Validate inspects the fields of the type to determine if they are valid.
15820func (s *S3JobDefinition) Validate() error {
15821	invalidParams := request.ErrInvalidParams{Context: "S3JobDefinition"}
15822	if s.BucketDefinitions != nil {
15823		for i, v := range s.BucketDefinitions {
15824			if v == nil {
15825				continue
15826			}
15827			if err := v.Validate(); err != nil {
15828				invalidParams.AddNested(fmt.Sprintf("%s[%v]", "BucketDefinitions", i), err.(request.ErrInvalidParams))
15829			}
15830		}
15831	}
15832
15833	if invalidParams.Len() > 0 {
15834		return invalidParams
15835	}
15836	return nil
15837}
15838
15839// SetBucketCriteria sets the BucketCriteria field's value.
15840func (s *S3JobDefinition) SetBucketCriteria(v *S3BucketCriteriaForJob) *S3JobDefinition {
15841	s.BucketCriteria = v
15842	return s
15843}
15844
15845// SetBucketDefinitions sets the BucketDefinitions field's value.
15846func (s *S3JobDefinition) SetBucketDefinitions(v []*S3BucketDefinitionForJob) *S3JobDefinition {
15847	s.BucketDefinitions = v
15848	return s
15849}
15850
15851// SetScoping sets the Scoping field's value.
15852func (s *S3JobDefinition) SetScoping(v *Scoping) *S3JobDefinition {
15853	s.Scoping = v
15854	return s
15855}
15856
15857// Provides information about the S3 object that a finding applies to.
15858type S3Object struct {
15859	_ struct{} `type:"structure"`
15860
15861	BucketArn *string `locationName:"bucketArn" type:"string"`
15862
15863	ETag *string `locationName:"eTag" type:"string"`
15864
15865	Extension *string `locationName:"extension" type:"string"`
15866
15867	Key *string `locationName:"key" type:"string"`
15868
15869	LastModified *time.Time `locationName:"lastModified" type:"timestamp" timestampFormat:"iso8601"`
15870
15871	Path *string `locationName:"path" type:"string"`
15872
15873	PublicAccess *bool `locationName:"publicAccess" type:"boolean"`
15874
15875	// Provides information about the server-side encryption settings for an S3
15876	// bucket or S3 object.
15877	ServerSideEncryption *ServerSideEncryption `locationName:"serverSideEncryption" type:"structure"`
15878
15879	Size *int64 `locationName:"size" type:"long"`
15880
15881	// The storage class of the S3 object. Possible values are:
15882	StorageClass *string `locationName:"storageClass" type:"string" enum:"StorageClass"`
15883
15884	// Provides information about the tags that are associated with an S3 bucket
15885	// or object. Each tag consists of a required tag key and an associated tag
15886	// value.
15887	Tags []*KeyValuePair `locationName:"tags" type:"list"`
15888
15889	VersionId *string `locationName:"versionId" type:"string"`
15890}
15891
15892// String returns the string representation.
15893//
15894// API parameter values that are decorated as "sensitive" in the API will not
15895// be included in the string output. The member name will be present, but the
15896// value will be replaced with "sensitive".
15897func (s S3Object) String() string {
15898	return awsutil.Prettify(s)
15899}
15900
15901// GoString returns the string representation.
15902//
15903// API parameter values that are decorated as "sensitive" in the API will not
15904// be included in the string output. The member name will be present, but the
15905// value will be replaced with "sensitive".
15906func (s S3Object) GoString() string {
15907	return s.String()
15908}
15909
15910// SetBucketArn sets the BucketArn field's value.
15911func (s *S3Object) SetBucketArn(v string) *S3Object {
15912	s.BucketArn = &v
15913	return s
15914}
15915
15916// SetETag sets the ETag field's value.
15917func (s *S3Object) SetETag(v string) *S3Object {
15918	s.ETag = &v
15919	return s
15920}
15921
15922// SetExtension sets the Extension field's value.
15923func (s *S3Object) SetExtension(v string) *S3Object {
15924	s.Extension = &v
15925	return s
15926}
15927
15928// SetKey sets the Key field's value.
15929func (s *S3Object) SetKey(v string) *S3Object {
15930	s.Key = &v
15931	return s
15932}
15933
15934// SetLastModified sets the LastModified field's value.
15935func (s *S3Object) SetLastModified(v time.Time) *S3Object {
15936	s.LastModified = &v
15937	return s
15938}
15939
15940// SetPath sets the Path field's value.
15941func (s *S3Object) SetPath(v string) *S3Object {
15942	s.Path = &v
15943	return s
15944}
15945
15946// SetPublicAccess sets the PublicAccess field's value.
15947func (s *S3Object) SetPublicAccess(v bool) *S3Object {
15948	s.PublicAccess = &v
15949	return s
15950}
15951
15952// SetServerSideEncryption sets the ServerSideEncryption field's value.
15953func (s *S3Object) SetServerSideEncryption(v *ServerSideEncryption) *S3Object {
15954	s.ServerSideEncryption = v
15955	return s
15956}
15957
15958// SetSize sets the Size field's value.
15959func (s *S3Object) SetSize(v int64) *S3Object {
15960	s.Size = &v
15961	return s
15962}
15963
15964// SetStorageClass sets the StorageClass field's value.
15965func (s *S3Object) SetStorageClass(v string) *S3Object {
15966	s.StorageClass = &v
15967	return s
15968}
15969
15970// SetTags sets the Tags field's value.
15971func (s *S3Object) SetTags(v []*KeyValuePair) *S3Object {
15972	s.Tags = v
15973	return s
15974}
15975
15976// SetVersionId sets the VersionId field's value.
15977func (s *S3Object) SetVersionId(v string) *S3Object {
15978	s.VersionId = &v
15979	return s
15980}
15981
15982// Specifies one or more property- and tag-based conditions that define criteria
15983// for including or excluding S3 objects from a classification job. Exclude
15984// conditions take precedence over include conditions.
15985type Scoping struct {
15986	_ struct{} `type:"structure"`
15987
15988	// Specifies one or more property- and tag-based conditions that define criteria
15989	// for including or excluding S3 objects from a classification job.
15990	Excludes *JobScopingBlock `locationName:"excludes" type:"structure"`
15991
15992	// Specifies one or more property- and tag-based conditions that define criteria
15993	// for including or excluding S3 objects from a classification job.
15994	Includes *JobScopingBlock `locationName:"includes" type:"structure"`
15995}
15996
15997// String returns the string representation.
15998//
15999// API parameter values that are decorated as "sensitive" in the API will not
16000// be included in the string output. The member name will be present, but the
16001// value will be replaced with "sensitive".
16002func (s Scoping) String() string {
16003	return awsutil.Prettify(s)
16004}
16005
16006// GoString returns the string representation.
16007//
16008// API parameter values that are decorated as "sensitive" in the API will not
16009// be included in the string output. The member name will be present, but the
16010// value will be replaced with "sensitive".
16011func (s Scoping) GoString() string {
16012	return s.String()
16013}
16014
16015// SetExcludes sets the Excludes field's value.
16016func (s *Scoping) SetExcludes(v *JobScopingBlock) *Scoping {
16017	s.Excludes = v
16018	return s
16019}
16020
16021// SetIncludes sets the Includes field's value.
16022func (s *Scoping) SetIncludes(v *JobScopingBlock) *Scoping {
16023	s.Includes = v
16024	return s
16025}
16026
16027// Specifies property- and tag-based conditions that define filter criteria
16028// for including or excluding S3 buckets from the query results. Exclude conditions
16029// take precedence over include conditions.
16030type SearchResourcesBucketCriteria struct {
16031	_ struct{} `type:"structure"`
16032
16033	// Specifies property- and tag-based conditions that define filter criteria
16034	// for including or excluding Amazon Web Services resources from the query results.
16035	Excludes *SearchResourcesCriteriaBlock `locationName:"excludes" type:"structure"`
16036
16037	// Specifies property- and tag-based conditions that define filter criteria
16038	// for including or excluding Amazon Web Services resources from the query results.
16039	Includes *SearchResourcesCriteriaBlock `locationName:"includes" type:"structure"`
16040}
16041
16042// String returns the string representation.
16043//
16044// API parameter values that are decorated as "sensitive" in the API will not
16045// be included in the string output. The member name will be present, but the
16046// value will be replaced with "sensitive".
16047func (s SearchResourcesBucketCriteria) String() string {
16048	return awsutil.Prettify(s)
16049}
16050
16051// GoString returns the string representation.
16052//
16053// API parameter values that are decorated as "sensitive" in the API will not
16054// be included in the string output. The member name will be present, but the
16055// value will be replaced with "sensitive".
16056func (s SearchResourcesBucketCriteria) GoString() string {
16057	return s.String()
16058}
16059
16060// SetExcludes sets the Excludes field's value.
16061func (s *SearchResourcesBucketCriteria) SetExcludes(v *SearchResourcesCriteriaBlock) *SearchResourcesBucketCriteria {
16062	s.Excludes = v
16063	return s
16064}
16065
16066// SetIncludes sets the Includes field's value.
16067func (s *SearchResourcesBucketCriteria) SetIncludes(v *SearchResourcesCriteriaBlock) *SearchResourcesBucketCriteria {
16068	s.Includes = v
16069	return s
16070}
16071
16072// Specifies a property- or tag-based filter condition for including or excluding
16073// Amazon Web Services resources from the query results.
16074type SearchResourcesCriteria struct {
16075	_ struct{} `type:"structure"`
16076
16077	// Specifies a property-based filter condition that determines which Amazon
16078	// Web Services resources are included or excluded from the query results.
16079	SimpleCriterion *SearchResourcesSimpleCriterion `locationName:"simpleCriterion" type:"structure"`
16080
16081	// Specifies a tag-based filter condition that determines which Amazon Web Services
16082	// resources are included or excluded from the query results.
16083	TagCriterion *SearchResourcesTagCriterion `locationName:"tagCriterion" type:"structure"`
16084}
16085
16086// String returns the string representation.
16087//
16088// API parameter values that are decorated as "sensitive" in the API will not
16089// be included in the string output. The member name will be present, but the
16090// value will be replaced with "sensitive".
16091func (s SearchResourcesCriteria) String() string {
16092	return awsutil.Prettify(s)
16093}
16094
16095// GoString returns the string representation.
16096//
16097// API parameter values that are decorated as "sensitive" in the API will not
16098// be included in the string output. The member name will be present, but the
16099// value will be replaced with "sensitive".
16100func (s SearchResourcesCriteria) GoString() string {
16101	return s.String()
16102}
16103
16104// SetSimpleCriterion sets the SimpleCriterion field's value.
16105func (s *SearchResourcesCriteria) SetSimpleCriterion(v *SearchResourcesSimpleCriterion) *SearchResourcesCriteria {
16106	s.SimpleCriterion = v
16107	return s
16108}
16109
16110// SetTagCriterion sets the TagCriterion field's value.
16111func (s *SearchResourcesCriteria) SetTagCriterion(v *SearchResourcesTagCriterion) *SearchResourcesCriteria {
16112	s.TagCriterion = v
16113	return s
16114}
16115
16116// Specifies property- and tag-based conditions that define filter criteria
16117// for including or excluding Amazon Web Services resources from the query results.
16118type SearchResourcesCriteriaBlock struct {
16119	_ struct{} `type:"structure"`
16120
16121	And []*SearchResourcesCriteria `locationName:"and" type:"list"`
16122}
16123
16124// String returns the string representation.
16125//
16126// API parameter values that are decorated as "sensitive" in the API will not
16127// be included in the string output. The member name will be present, but the
16128// value will be replaced with "sensitive".
16129func (s SearchResourcesCriteriaBlock) String() string {
16130	return awsutil.Prettify(s)
16131}
16132
16133// GoString returns the string representation.
16134//
16135// API parameter values that are decorated as "sensitive" in the API will not
16136// be included in the string output. The member name will be present, but the
16137// value will be replaced with "sensitive".
16138func (s SearchResourcesCriteriaBlock) GoString() string {
16139	return s.String()
16140}
16141
16142// SetAnd sets the And field's value.
16143func (s *SearchResourcesCriteriaBlock) SetAnd(v []*SearchResourcesCriteria) *SearchResourcesCriteriaBlock {
16144	s.And = v
16145	return s
16146}
16147
16148// Specifies criteria for filtering, sorting, and paginating the results of
16149// a query for statistical data and other information about Amazon Web Services
16150// resources that Amazon Macie monitors and analyzes.
16151type SearchResourcesInput struct {
16152	_ struct{} `type:"structure"`
16153
16154	// Specifies property- and tag-based conditions that define filter criteria
16155	// for including or excluding S3 buckets from the query results. Exclude conditions
16156	// take precedence over include conditions.
16157	BucketCriteria *SearchResourcesBucketCriteria `locationName:"bucketCriteria" type:"structure"`
16158
16159	MaxResults *int64 `locationName:"maxResults" type:"integer"`
16160
16161	NextToken *string `locationName:"nextToken" type:"string"`
16162
16163	// Specifies criteria for sorting the results of a query for information about
16164	// Amazon Web Services resources that Amazon Macie monitors and analyzes.
16165	SortCriteria *SearchResourcesSortCriteria `locationName:"sortCriteria" type:"structure"`
16166}
16167
16168// String returns the string representation.
16169//
16170// API parameter values that are decorated as "sensitive" in the API will not
16171// be included in the string output. The member name will be present, but the
16172// value will be replaced with "sensitive".
16173func (s SearchResourcesInput) String() string {
16174	return awsutil.Prettify(s)
16175}
16176
16177// GoString returns the string representation.
16178//
16179// API parameter values that are decorated as "sensitive" in the API will not
16180// be included in the string output. The member name will be present, but the
16181// value will be replaced with "sensitive".
16182func (s SearchResourcesInput) GoString() string {
16183	return s.String()
16184}
16185
16186// SetBucketCriteria sets the BucketCriteria field's value.
16187func (s *SearchResourcesInput) SetBucketCriteria(v *SearchResourcesBucketCriteria) *SearchResourcesInput {
16188	s.BucketCriteria = v
16189	return s
16190}
16191
16192// SetMaxResults sets the MaxResults field's value.
16193func (s *SearchResourcesInput) SetMaxResults(v int64) *SearchResourcesInput {
16194	s.MaxResults = &v
16195	return s
16196}
16197
16198// SetNextToken sets the NextToken field's value.
16199func (s *SearchResourcesInput) SetNextToken(v string) *SearchResourcesInput {
16200	s.NextToken = &v
16201	return s
16202}
16203
16204// SetSortCriteria sets the SortCriteria field's value.
16205func (s *SearchResourcesInput) SetSortCriteria(v *SearchResourcesSortCriteria) *SearchResourcesInput {
16206	s.SortCriteria = v
16207	return s
16208}
16209
16210// Provides the results of a query that retrieved statistical data and other
16211// information about Amazon Web Services resources that Amazon Macie monitors
16212// and analyzes for your account.
16213type SearchResourcesOutput struct {
16214	_ struct{} `type:"structure"`
16215
16216	MatchingResources []*MatchingResource `locationName:"matchingResources" type:"list"`
16217
16218	NextToken *string `locationName:"nextToken" type:"string"`
16219}
16220
16221// String returns the string representation.
16222//
16223// API parameter values that are decorated as "sensitive" in the API will not
16224// be included in the string output. The member name will be present, but the
16225// value will be replaced with "sensitive".
16226func (s SearchResourcesOutput) String() string {
16227	return awsutil.Prettify(s)
16228}
16229
16230// GoString returns the string representation.
16231//
16232// API parameter values that are decorated as "sensitive" in the API will not
16233// be included in the string output. The member name will be present, but the
16234// value will be replaced with "sensitive".
16235func (s SearchResourcesOutput) GoString() string {
16236	return s.String()
16237}
16238
16239// SetMatchingResources sets the MatchingResources field's value.
16240func (s *SearchResourcesOutput) SetMatchingResources(v []*MatchingResource) *SearchResourcesOutput {
16241	s.MatchingResources = v
16242	return s
16243}
16244
16245// SetNextToken sets the NextToken field's value.
16246func (s *SearchResourcesOutput) SetNextToken(v string) *SearchResourcesOutput {
16247	s.NextToken = &v
16248	return s
16249}
16250
16251// Specifies a property-based filter condition that determines which Amazon
16252// Web Services resources are included or excluded from the query results.
16253type SearchResourcesSimpleCriterion struct {
16254	_ struct{} `type:"structure"`
16255
16256	// The operator to use in a condition that filters the results of a query. Valid
16257	// values are:
16258	Comparator *string `locationName:"comparator" type:"string" enum:"SearchResourcesComparator"`
16259
16260	// The property to use in a condition that filters the query results. Valid
16261	// values are:
16262	Key *string `locationName:"key" type:"string" enum:"SearchResourcesSimpleCriterionKey"`
16263
16264	Values []*string `locationName:"values" type:"list"`
16265}
16266
16267// String returns the string representation.
16268//
16269// API parameter values that are decorated as "sensitive" in the API will not
16270// be included in the string output. The member name will be present, but the
16271// value will be replaced with "sensitive".
16272func (s SearchResourcesSimpleCriterion) String() string {
16273	return awsutil.Prettify(s)
16274}
16275
16276// GoString returns the string representation.
16277//
16278// API parameter values that are decorated as "sensitive" in the API will not
16279// be included in the string output. The member name will be present, but the
16280// value will be replaced with "sensitive".
16281func (s SearchResourcesSimpleCriterion) GoString() string {
16282	return s.String()
16283}
16284
16285// SetComparator sets the Comparator field's value.
16286func (s *SearchResourcesSimpleCriterion) SetComparator(v string) *SearchResourcesSimpleCriterion {
16287	s.Comparator = &v
16288	return s
16289}
16290
16291// SetKey sets the Key field's value.
16292func (s *SearchResourcesSimpleCriterion) SetKey(v string) *SearchResourcesSimpleCriterion {
16293	s.Key = &v
16294	return s
16295}
16296
16297// SetValues sets the Values field's value.
16298func (s *SearchResourcesSimpleCriterion) SetValues(v []*string) *SearchResourcesSimpleCriterion {
16299	s.Values = v
16300	return s
16301}
16302
16303// Specifies criteria for sorting the results of a query for information about
16304// Amazon Web Services resources that Amazon Macie monitors and analyzes.
16305type SearchResourcesSortCriteria struct {
16306	_ struct{} `type:"structure"`
16307
16308	// The property to sort the query results by. Valid values are:
16309	AttributeName *string `locationName:"attributeName" type:"string" enum:"SearchResourcesSortAttributeName"`
16310
16311	OrderBy *string `locationName:"orderBy" type:"string" enum:"OrderBy"`
16312}
16313
16314// String returns the string representation.
16315//
16316// API parameter values that are decorated as "sensitive" in the API will not
16317// be included in the string output. The member name will be present, but the
16318// value will be replaced with "sensitive".
16319func (s SearchResourcesSortCriteria) String() string {
16320	return awsutil.Prettify(s)
16321}
16322
16323// GoString returns the string representation.
16324//
16325// API parameter values that are decorated as "sensitive" in the API will not
16326// be included in the string output. The member name will be present, but the
16327// value will be replaced with "sensitive".
16328func (s SearchResourcesSortCriteria) GoString() string {
16329	return s.String()
16330}
16331
16332// SetAttributeName sets the AttributeName field's value.
16333func (s *SearchResourcesSortCriteria) SetAttributeName(v string) *SearchResourcesSortCriteria {
16334	s.AttributeName = &v
16335	return s
16336}
16337
16338// SetOrderBy sets the OrderBy field's value.
16339func (s *SearchResourcesSortCriteria) SetOrderBy(v string) *SearchResourcesSortCriteria {
16340	s.OrderBy = &v
16341	return s
16342}
16343
16344// Specifies a tag-based filter condition that determines which Amazon Web Services
16345// resources are included or excluded from the query results.
16346type SearchResourcesTagCriterion struct {
16347	_ struct{} `type:"structure"`
16348
16349	// The operator to use in a condition that filters the results of a query. Valid
16350	// values are:
16351	Comparator *string `locationName:"comparator" type:"string" enum:"SearchResourcesComparator"`
16352
16353	TagValues []*SearchResourcesTagCriterionPair `locationName:"tagValues" type:"list"`
16354}
16355
16356// String returns the string representation.
16357//
16358// API parameter values that are decorated as "sensitive" in the API will not
16359// be included in the string output. The member name will be present, but the
16360// value will be replaced with "sensitive".
16361func (s SearchResourcesTagCriterion) String() string {
16362	return awsutil.Prettify(s)
16363}
16364
16365// GoString returns the string representation.
16366//
16367// API parameter values that are decorated as "sensitive" in the API will not
16368// be included in the string output. The member name will be present, but the
16369// value will be replaced with "sensitive".
16370func (s SearchResourcesTagCriterion) GoString() string {
16371	return s.String()
16372}
16373
16374// SetComparator sets the Comparator field's value.
16375func (s *SearchResourcesTagCriterion) SetComparator(v string) *SearchResourcesTagCriterion {
16376	s.Comparator = &v
16377	return s
16378}
16379
16380// SetTagValues sets the TagValues field's value.
16381func (s *SearchResourcesTagCriterion) SetTagValues(v []*SearchResourcesTagCriterionPair) *SearchResourcesTagCriterion {
16382	s.TagValues = v
16383	return s
16384}
16385
16386// Specifies a tag key, a tag value, or a tag key and value (as a pair) to use
16387// in a tag-based filter condition for a query. Tag keys and values are case
16388// sensitive. Also, Amazon Macie doesn't support use of partial values or wildcard
16389// characters in tag-based filter conditions.
16390type SearchResourcesTagCriterionPair struct {
16391	_ struct{} `type:"structure"`
16392
16393	Key *string `locationName:"key" type:"string"`
16394
16395	Value *string `locationName:"value" type:"string"`
16396}
16397
16398// String returns the string representation.
16399//
16400// API parameter values that are decorated as "sensitive" in the API will not
16401// be included in the string output. The member name will be present, but the
16402// value will be replaced with "sensitive".
16403func (s SearchResourcesTagCriterionPair) String() string {
16404	return awsutil.Prettify(s)
16405}
16406
16407// GoString returns the string representation.
16408//
16409// API parameter values that are decorated as "sensitive" in the API will not
16410// be included in the string output. The member name will be present, but the
16411// value will be replaced with "sensitive".
16412func (s SearchResourcesTagCriterionPair) GoString() string {
16413	return s.String()
16414}
16415
16416// SetKey sets the Key field's value.
16417func (s *SearchResourcesTagCriterionPair) SetKey(v string) *SearchResourcesTagCriterionPair {
16418	s.Key = &v
16419	return s
16420}
16421
16422// SetValue sets the Value field's value.
16423func (s *SearchResourcesTagCriterionPair) SetValue(v string) *SearchResourcesTagCriterionPair {
16424	s.Value = &v
16425	return s
16426}
16427
16428// Specifies configuration settings that determine which findings are published
16429// to Security Hub automatically. For information about how Macie publishes
16430// findings to Security Hub, see Amazon Macie integration with Security Hub
16431// (https://docs.aws.amazon.com/macie/latest/user/securityhub-integration.html)
16432// in the Amazon Macie User Guide.
16433type SecurityHubConfiguration struct {
16434	_ struct{} `type:"structure"`
16435
16436	// PublishClassificationFindings is a required field
16437	PublishClassificationFindings *bool `locationName:"publishClassificationFindings" type:"boolean" required:"true"`
16438
16439	// PublishPolicyFindings is a required field
16440	PublishPolicyFindings *bool `locationName:"publishPolicyFindings" type:"boolean" required:"true"`
16441}
16442
16443// String returns the string representation.
16444//
16445// API parameter values that are decorated as "sensitive" in the API will not
16446// be included in the string output. The member name will be present, but the
16447// value will be replaced with "sensitive".
16448func (s SecurityHubConfiguration) String() string {
16449	return awsutil.Prettify(s)
16450}
16451
16452// GoString returns the string representation.
16453//
16454// API parameter values that are decorated as "sensitive" in the API will not
16455// be included in the string output. The member name will be present, but the
16456// value will be replaced with "sensitive".
16457func (s SecurityHubConfiguration) GoString() string {
16458	return s.String()
16459}
16460
16461// Validate inspects the fields of the type to determine if they are valid.
16462func (s *SecurityHubConfiguration) Validate() error {
16463	invalidParams := request.ErrInvalidParams{Context: "SecurityHubConfiguration"}
16464	if s.PublishClassificationFindings == nil {
16465		invalidParams.Add(request.NewErrParamRequired("PublishClassificationFindings"))
16466	}
16467	if s.PublishPolicyFindings == nil {
16468		invalidParams.Add(request.NewErrParamRequired("PublishPolicyFindings"))
16469	}
16470
16471	if invalidParams.Len() > 0 {
16472		return invalidParams
16473	}
16474	return nil
16475}
16476
16477// SetPublishClassificationFindings sets the PublishClassificationFindings field's value.
16478func (s *SecurityHubConfiguration) SetPublishClassificationFindings(v bool) *SecurityHubConfiguration {
16479	s.PublishClassificationFindings = &v
16480	return s
16481}
16482
16483// SetPublishPolicyFindings sets the PublishPolicyFindings field's value.
16484func (s *SecurityHubConfiguration) SetPublishPolicyFindings(v bool) *SecurityHubConfiguration {
16485	s.PublishPolicyFindings = &v
16486	return s
16487}
16488
16489// Provides information about the category, types, and occurrences of sensitive
16490// data that produced a sensitive data finding.
16491type SensitiveDataItem struct {
16492	_ struct{} `type:"structure"`
16493
16494	// For a finding, the category of sensitive data that was detected and produced
16495	// the finding. For a managed data identifier, the category of sensitive data
16496	// that the managed data identifier detects. Possible values are:
16497	Category *string `locationName:"category" type:"string" enum:"SensitiveDataItemCategory"`
16498
16499	// Provides information about sensitive data that was detected by managed data
16500	// identifiers and produced a sensitive data finding, and the number of occurrences
16501	// of each type of sensitive data that was detected.
16502	Detections []*DefaultDetection `locationName:"detections" type:"list"`
16503
16504	TotalCount *int64 `locationName:"totalCount" type:"long"`
16505}
16506
16507// String returns the string representation.
16508//
16509// API parameter values that are decorated as "sensitive" in the API will not
16510// be included in the string output. The member name will be present, but the
16511// value will be replaced with "sensitive".
16512func (s SensitiveDataItem) String() string {
16513	return awsutil.Prettify(s)
16514}
16515
16516// GoString returns the string representation.
16517//
16518// API parameter values that are decorated as "sensitive" in the API will not
16519// be included in the string output. The member name will be present, but the
16520// value will be replaced with "sensitive".
16521func (s SensitiveDataItem) GoString() string {
16522	return s.String()
16523}
16524
16525// SetCategory sets the Category field's value.
16526func (s *SensitiveDataItem) SetCategory(v string) *SensitiveDataItem {
16527	s.Category = &v
16528	return s
16529}
16530
16531// SetDetections sets the Detections field's value.
16532func (s *SensitiveDataItem) SetDetections(v []*DefaultDetection) *SensitiveDataItem {
16533	s.Detections = v
16534	return s
16535}
16536
16537// SetTotalCount sets the TotalCount field's value.
16538func (s *SensitiveDataItem) SetTotalCount(v int64) *SensitiveDataItem {
16539	s.TotalCount = &v
16540	return s
16541}
16542
16543// Provides information about the server-side encryption settings for an S3
16544// bucket or S3 object.
16545type ServerSideEncryption struct {
16546	_ struct{} `type:"structure"`
16547
16548	// The type of server-side encryption that's used to encrypt an S3 object or
16549	// objects in an S3 bucket. Valid values are:
16550	EncryptionType *string `locationName:"encryptionType" type:"string" enum:"EncryptionType"`
16551
16552	KmsMasterKeyId *string `locationName:"kmsMasterKeyId" type:"string"`
16553}
16554
16555// String returns the string representation.
16556//
16557// API parameter values that are decorated as "sensitive" in the API will not
16558// be included in the string output. The member name will be present, but the
16559// value will be replaced with "sensitive".
16560func (s ServerSideEncryption) String() string {
16561	return awsutil.Prettify(s)
16562}
16563
16564// GoString returns the string representation.
16565//
16566// API parameter values that are decorated as "sensitive" in the API will not
16567// be included in the string output. The member name will be present, but the
16568// value will be replaced with "sensitive".
16569func (s ServerSideEncryption) GoString() string {
16570	return s.String()
16571}
16572
16573// SetEncryptionType sets the EncryptionType field's value.
16574func (s *ServerSideEncryption) SetEncryptionType(v string) *ServerSideEncryption {
16575	s.EncryptionType = &v
16576	return s
16577}
16578
16579// SetKmsMasterKeyId sets the KmsMasterKeyId field's value.
16580func (s *ServerSideEncryption) SetKmsMasterKeyId(v string) *ServerSideEncryption {
16581	s.KmsMasterKeyId = &v
16582	return s
16583}
16584
16585// Specifies a current quota for an Amazon Macie account.
16586type ServiceLimit struct {
16587	_ struct{} `type:"structure"`
16588
16589	IsServiceLimited *bool `locationName:"isServiceLimited" type:"boolean"`
16590
16591	Unit *string `locationName:"unit" type:"string" enum:"Unit"`
16592
16593	Value *int64 `locationName:"value" type:"long"`
16594}
16595
16596// String returns the string representation.
16597//
16598// API parameter values that are decorated as "sensitive" in the API will not
16599// be included in the string output. The member name will be present, but the
16600// value will be replaced with "sensitive".
16601func (s ServiceLimit) String() string {
16602	return awsutil.Prettify(s)
16603}
16604
16605// GoString returns the string representation.
16606//
16607// API parameter values that are decorated as "sensitive" in the API will not
16608// be included in the string output. The member name will be present, but the
16609// value will be replaced with "sensitive".
16610func (s ServiceLimit) GoString() string {
16611	return s.String()
16612}
16613
16614// SetIsServiceLimited sets the IsServiceLimited field's value.
16615func (s *ServiceLimit) SetIsServiceLimited(v bool) *ServiceLimit {
16616	s.IsServiceLimited = &v
16617	return s
16618}
16619
16620// SetUnit sets the Unit field's value.
16621func (s *ServiceLimit) SetUnit(v string) *ServiceLimit {
16622	s.Unit = &v
16623	return s
16624}
16625
16626// SetValue sets the Value field's value.
16627func (s *ServiceLimit) SetValue(v int64) *ServiceLimit {
16628	s.Value = &v
16629	return s
16630}
16631
16632// Provides information about an error that occurred due to one or more service
16633// quotas for an account.
16634type ServiceQuotaExceededException struct {
16635	_            struct{}                  `type:"structure"`
16636	RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"`
16637
16638	Message_ *string `locationName:"message" type:"string"`
16639}
16640
16641// String returns the string representation.
16642//
16643// API parameter values that are decorated as "sensitive" in the API will not
16644// be included in the string output. The member name will be present, but the
16645// value will be replaced with "sensitive".
16646func (s ServiceQuotaExceededException) String() string {
16647	return awsutil.Prettify(s)
16648}
16649
16650// GoString returns the string representation.
16651//
16652// API parameter values that are decorated as "sensitive" in the API will not
16653// be included in the string output. The member name will be present, but the
16654// value will be replaced with "sensitive".
16655func (s ServiceQuotaExceededException) GoString() string {
16656	return s.String()
16657}
16658
16659func newErrorServiceQuotaExceededException(v protocol.ResponseMetadata) error {
16660	return &ServiceQuotaExceededException{
16661		RespMetadata: v,
16662	}
16663}
16664
16665// Code returns the exception type name.
16666func (s *ServiceQuotaExceededException) Code() string {
16667	return "ServiceQuotaExceededException"
16668}
16669
16670// Message returns the exception's message.
16671func (s *ServiceQuotaExceededException) Message() string {
16672	if s.Message_ != nil {
16673		return *s.Message_
16674	}
16675	return ""
16676}
16677
16678// OrigErr always returns nil, satisfies awserr.Error interface.
16679func (s *ServiceQuotaExceededException) OrigErr() error {
16680	return nil
16681}
16682
16683func (s *ServiceQuotaExceededException) Error() string {
16684	return fmt.Sprintf("%s: %s", s.Code(), s.Message())
16685}
16686
16687// Status code returns the HTTP status code for the request's response error.
16688func (s *ServiceQuotaExceededException) StatusCode() int {
16689	return s.RespMetadata.StatusCode
16690}
16691
16692// RequestID returns the service's response RequestID for request.
16693func (s *ServiceQuotaExceededException) RequestID() string {
16694	return s.RespMetadata.RequestID
16695}
16696
16697// Provides information about a session that was created for an entity that
16698// performed an action by using temporary security credentials.
16699type SessionContext struct {
16700	_ struct{} `type:"structure"`
16701
16702	// Provides information about the context in which temporary security credentials
16703	// were issued to an entity.
16704	Attributes *SessionContextAttributes `locationName:"attributes" type:"structure"`
16705
16706	// Provides information about the source and type of temporary security credentials
16707	// that were issued to an entity.
16708	SessionIssuer *SessionIssuer `locationName:"sessionIssuer" type:"structure"`
16709}
16710
16711// String returns the string representation.
16712//
16713// API parameter values that are decorated as "sensitive" in the API will not
16714// be included in the string output. The member name will be present, but the
16715// value will be replaced with "sensitive".
16716func (s SessionContext) String() string {
16717	return awsutil.Prettify(s)
16718}
16719
16720// GoString returns the string representation.
16721//
16722// API parameter values that are decorated as "sensitive" in the API will not
16723// be included in the string output. The member name will be present, but the
16724// value will be replaced with "sensitive".
16725func (s SessionContext) GoString() string {
16726	return s.String()
16727}
16728
16729// SetAttributes sets the Attributes field's value.
16730func (s *SessionContext) SetAttributes(v *SessionContextAttributes) *SessionContext {
16731	s.Attributes = v
16732	return s
16733}
16734
16735// SetSessionIssuer sets the SessionIssuer field's value.
16736func (s *SessionContext) SetSessionIssuer(v *SessionIssuer) *SessionContext {
16737	s.SessionIssuer = v
16738	return s
16739}
16740
16741// Provides information about the context in which temporary security credentials
16742// were issued to an entity.
16743type SessionContextAttributes struct {
16744	_ struct{} `type:"structure"`
16745
16746	CreationDate *time.Time `locationName:"creationDate" type:"timestamp" timestampFormat:"iso8601"`
16747
16748	MfaAuthenticated *bool `locationName:"mfaAuthenticated" type:"boolean"`
16749}
16750
16751// String returns the string representation.
16752//
16753// API parameter values that are decorated as "sensitive" in the API will not
16754// be included in the string output. The member name will be present, but the
16755// value will be replaced with "sensitive".
16756func (s SessionContextAttributes) String() string {
16757	return awsutil.Prettify(s)
16758}
16759
16760// GoString returns the string representation.
16761//
16762// API parameter values that are decorated as "sensitive" in the API will not
16763// be included in the string output. The member name will be present, but the
16764// value will be replaced with "sensitive".
16765func (s SessionContextAttributes) GoString() string {
16766	return s.String()
16767}
16768
16769// SetCreationDate sets the CreationDate field's value.
16770func (s *SessionContextAttributes) SetCreationDate(v time.Time) *SessionContextAttributes {
16771	s.CreationDate = &v
16772	return s
16773}
16774
16775// SetMfaAuthenticated sets the MfaAuthenticated field's value.
16776func (s *SessionContextAttributes) SetMfaAuthenticated(v bool) *SessionContextAttributes {
16777	s.MfaAuthenticated = &v
16778	return s
16779}
16780
16781// Provides information about the source and type of temporary security credentials
16782// that were issued to an entity.
16783type SessionIssuer struct {
16784	_ struct{} `type:"structure"`
16785
16786	AccountId *string `locationName:"accountId" type:"string"`
16787
16788	Arn *string `locationName:"arn" type:"string"`
16789
16790	PrincipalId *string `locationName:"principalId" type:"string"`
16791
16792	Type *string `locationName:"type" type:"string"`
16793
16794	UserName *string `locationName:"userName" type:"string"`
16795}
16796
16797// String returns the string representation.
16798//
16799// API parameter values that are decorated as "sensitive" in the API will not
16800// be included in the string output. The member name will be present, but the
16801// value will be replaced with "sensitive".
16802func (s SessionIssuer) String() string {
16803	return awsutil.Prettify(s)
16804}
16805
16806// GoString returns the string representation.
16807//
16808// API parameter values that are decorated as "sensitive" in the API will not
16809// be included in the string output. The member name will be present, but the
16810// value will be replaced with "sensitive".
16811func (s SessionIssuer) GoString() string {
16812	return s.String()
16813}
16814
16815// SetAccountId sets the AccountId field's value.
16816func (s *SessionIssuer) SetAccountId(v string) *SessionIssuer {
16817	s.AccountId = &v
16818	return s
16819}
16820
16821// SetArn sets the Arn field's value.
16822func (s *SessionIssuer) SetArn(v string) *SessionIssuer {
16823	s.Arn = &v
16824	return s
16825}
16826
16827// SetPrincipalId sets the PrincipalId field's value.
16828func (s *SessionIssuer) SetPrincipalId(v string) *SessionIssuer {
16829	s.PrincipalId = &v
16830	return s
16831}
16832
16833// SetType sets the Type field's value.
16834func (s *SessionIssuer) SetType(v string) *SessionIssuer {
16835	s.Type = &v
16836	return s
16837}
16838
16839// SetUserName sets the UserName field's value.
16840func (s *SessionIssuer) SetUserName(v string) *SessionIssuer {
16841	s.UserName = &v
16842	return s
16843}
16844
16845// Provides the numerical and qualitative representations of a finding's severity.
16846type Severity struct {
16847	_ struct{} `type:"structure"`
16848
16849	// The qualitative representation of the finding's severity. Possible values
16850	// are:
16851	Description *string `locationName:"description" type:"string" enum:"SeverityDescription"`
16852
16853	Score *int64 `locationName:"score" type:"long"`
16854}
16855
16856// String returns the string representation.
16857//
16858// API parameter values that are decorated as "sensitive" in the API will not
16859// be included in the string output. The member name will be present, but the
16860// value will be replaced with "sensitive".
16861func (s Severity) String() string {
16862	return awsutil.Prettify(s)
16863}
16864
16865// GoString returns the string representation.
16866//
16867// API parameter values that are decorated as "sensitive" in the API will not
16868// be included in the string output. The member name will be present, but the
16869// value will be replaced with "sensitive".
16870func (s Severity) GoString() string {
16871	return s.String()
16872}
16873
16874// SetDescription sets the Description field's value.
16875func (s *Severity) SetDescription(v string) *Severity {
16876	s.Description = &v
16877	return s
16878}
16879
16880// SetScore sets the Score field's value.
16881func (s *Severity) SetScore(v int64) *Severity {
16882	s.Score = &v
16883	return s
16884}
16885
16886// Specifies a severity level for findings that a custom data identifier produces.
16887// A severity level determines which severity is assigned to the findings, based
16888// on the number of occurrences of text that matches the custom data identifier's
16889// detection criteria.
16890type SeverityLevel struct {
16891	_ struct{} `type:"structure"`
16892
16893	// OccurrencesThreshold is a required field
16894	OccurrencesThreshold *int64 `locationName:"occurrencesThreshold" type:"long" required:"true"`
16895
16896	// The severity of a finding, ranging from LOW, for least severe, to HIGH, for
16897	// most severe. Valid values are:
16898	//
16899	// Severity is a required field
16900	Severity *string `locationName:"severity" type:"string" required:"true" enum:"DataIdentifierSeverity"`
16901}
16902
16903// String returns the string representation.
16904//
16905// API parameter values that are decorated as "sensitive" in the API will not
16906// be included in the string output. The member name will be present, but the
16907// value will be replaced with "sensitive".
16908func (s SeverityLevel) String() string {
16909	return awsutil.Prettify(s)
16910}
16911
16912// GoString returns the string representation.
16913//
16914// API parameter values that are decorated as "sensitive" in the API will not
16915// be included in the string output. The member name will be present, but the
16916// value will be replaced with "sensitive".
16917func (s SeverityLevel) GoString() string {
16918	return s.String()
16919}
16920
16921// Validate inspects the fields of the type to determine if they are valid.
16922func (s *SeverityLevel) Validate() error {
16923	invalidParams := request.ErrInvalidParams{Context: "SeverityLevel"}
16924	if s.OccurrencesThreshold == nil {
16925		invalidParams.Add(request.NewErrParamRequired("OccurrencesThreshold"))
16926	}
16927	if s.Severity == nil {
16928		invalidParams.Add(request.NewErrParamRequired("Severity"))
16929	}
16930
16931	if invalidParams.Len() > 0 {
16932		return invalidParams
16933	}
16934	return nil
16935}
16936
16937// SetOccurrencesThreshold sets the OccurrencesThreshold field's value.
16938func (s *SeverityLevel) SetOccurrencesThreshold(v int64) *SeverityLevel {
16939	s.OccurrencesThreshold = &v
16940	return s
16941}
16942
16943// SetSeverity sets the Severity field's value.
16944func (s *SeverityLevel) SetSeverity(v string) *SeverityLevel {
16945	s.Severity = &v
16946	return s
16947}
16948
16949// Specifies a property-based condition that determines whether an S3 bucket
16950// is included or excluded from a classification job.
16951type SimpleCriterionForJob struct {
16952	_ struct{} `type:"structure"`
16953
16954	// The operator to use in a condition. Valid values are:
16955	Comparator *string `locationName:"comparator" type:"string" enum:"JobComparator"`
16956
16957	// The property to use in a condition that determines whether an S3 bucket is
16958	// included or excluded from a classification job. Valid values are:
16959	Key *string `locationName:"key" type:"string" enum:"SimpleCriterionKeyForJob"`
16960
16961	Values []*string `locationName:"values" type:"list"`
16962}
16963
16964// String returns the string representation.
16965//
16966// API parameter values that are decorated as "sensitive" in the API will not
16967// be included in the string output. The member name will be present, but the
16968// value will be replaced with "sensitive".
16969func (s SimpleCriterionForJob) String() string {
16970	return awsutil.Prettify(s)
16971}
16972
16973// GoString returns the string representation.
16974//
16975// API parameter values that are decorated as "sensitive" in the API will not
16976// be included in the string output. The member name will be present, but the
16977// value will be replaced with "sensitive".
16978func (s SimpleCriterionForJob) GoString() string {
16979	return s.String()
16980}
16981
16982// SetComparator sets the Comparator field's value.
16983func (s *SimpleCriterionForJob) SetComparator(v string) *SimpleCriterionForJob {
16984	s.Comparator = &v
16985	return s
16986}
16987
16988// SetKey sets the Key field's value.
16989func (s *SimpleCriterionForJob) SetKey(v string) *SimpleCriterionForJob {
16990	s.Key = &v
16991	return s
16992}
16993
16994// SetValues sets the Values field's value.
16995func (s *SimpleCriterionForJob) SetValues(v []*string) *SimpleCriterionForJob {
16996	s.Values = v
16997	return s
16998}
16999
17000// Specifies a property-based condition that determines whether an S3 object
17001// is included or excluded from a classification job.
17002type SimpleScopeTerm struct {
17003	_ struct{} `type:"structure"`
17004
17005	// The operator to use in a condition. Valid values are:
17006	Comparator *string `locationName:"comparator" type:"string" enum:"JobComparator"`
17007
17008	// The property to use in a condition that determines whether an S3 object is
17009	// included or excluded from a classification job. Valid values are:
17010	Key *string `locationName:"key" type:"string" enum:"ScopeFilterKey"`
17011
17012	Values []*string `locationName:"values" type:"list"`
17013}
17014
17015// String returns the string representation.
17016//
17017// API parameter values that are decorated as "sensitive" in the API will not
17018// be included in the string output. The member name will be present, but the
17019// value will be replaced with "sensitive".
17020func (s SimpleScopeTerm) String() string {
17021	return awsutil.Prettify(s)
17022}
17023
17024// GoString returns the string representation.
17025//
17026// API parameter values that are decorated as "sensitive" in the API will not
17027// be included in the string output. The member name will be present, but the
17028// value will be replaced with "sensitive".
17029func (s SimpleScopeTerm) GoString() string {
17030	return s.String()
17031}
17032
17033// SetComparator sets the Comparator field's value.
17034func (s *SimpleScopeTerm) SetComparator(v string) *SimpleScopeTerm {
17035	s.Comparator = &v
17036	return s
17037}
17038
17039// SetKey sets the Key field's value.
17040func (s *SimpleScopeTerm) SetKey(v string) *SimpleScopeTerm {
17041	s.Key = &v
17042	return s
17043}
17044
17045// SetValues sets the Values field's value.
17046func (s *SimpleScopeTerm) SetValues(v []*string) *SimpleScopeTerm {
17047	s.Values = v
17048	return s
17049}
17050
17051// Specifies criteria for sorting the results of a request for findings.
17052type SortCriteria struct {
17053	_ struct{} `type:"structure"`
17054
17055	AttributeName *string `locationName:"attributeName" type:"string"`
17056
17057	OrderBy *string `locationName:"orderBy" type:"string" enum:"OrderBy"`
17058}
17059
17060// String returns the string representation.
17061//
17062// API parameter values that are decorated as "sensitive" in the API will not
17063// be included in the string output. The member name will be present, but the
17064// value will be replaced with "sensitive".
17065func (s SortCriteria) String() string {
17066	return awsutil.Prettify(s)
17067}
17068
17069// GoString returns the string representation.
17070//
17071// API parameter values that are decorated as "sensitive" in the API will not
17072// be included in the string output. The member name will be present, but the
17073// value will be replaced with "sensitive".
17074func (s SortCriteria) GoString() string {
17075	return s.String()
17076}
17077
17078// SetAttributeName sets the AttributeName field's value.
17079func (s *SortCriteria) SetAttributeName(v string) *SortCriteria {
17080	s.AttributeName = &v
17081	return s
17082}
17083
17084// SetOrderBy sets the OrderBy field's value.
17085func (s *SortCriteria) SetOrderBy(v string) *SortCriteria {
17086	s.OrderBy = &v
17087	return s
17088}
17089
17090// Provides processing statistics for a classification job.
17091type Statistics struct {
17092	_ struct{} `type:"structure"`
17093
17094	ApproximateNumberOfObjectsToProcess *float64 `locationName:"approximateNumberOfObjectsToProcess" type:"double"`
17095
17096	NumberOfRuns *float64 `locationName:"numberOfRuns" type:"double"`
17097}
17098
17099// String returns the string representation.
17100//
17101// API parameter values that are decorated as "sensitive" in the API will not
17102// be included in the string output. The member name will be present, but the
17103// value will be replaced with "sensitive".
17104func (s Statistics) String() string {
17105	return awsutil.Prettify(s)
17106}
17107
17108// GoString returns the string representation.
17109//
17110// API parameter values that are decorated as "sensitive" in the API will not
17111// be included in the string output. The member name will be present, but the
17112// value will be replaced with "sensitive".
17113func (s Statistics) GoString() string {
17114	return s.String()
17115}
17116
17117// SetApproximateNumberOfObjectsToProcess sets the ApproximateNumberOfObjectsToProcess field's value.
17118func (s *Statistics) SetApproximateNumberOfObjectsToProcess(v float64) *Statistics {
17119	s.ApproximateNumberOfObjectsToProcess = &v
17120	return s
17121}
17122
17123// SetNumberOfRuns sets the NumberOfRuns field's value.
17124func (s *Statistics) SetNumberOfRuns(v float64) *Statistics {
17125	s.NumberOfRuns = &v
17126	return s
17127}
17128
17129// Specifies a tag-based condition that determines whether an S3 bucket is included
17130// or excluded from a classification job.
17131type TagCriterionForJob struct {
17132	_ struct{} `type:"structure"`
17133
17134	// The operator to use in a condition. Valid values are:
17135	Comparator *string `locationName:"comparator" type:"string" enum:"JobComparator"`
17136
17137	TagValues []*TagCriterionPairForJob `locationName:"tagValues" type:"list"`
17138}
17139
17140// String returns the string representation.
17141//
17142// API parameter values that are decorated as "sensitive" in the API will not
17143// be included in the string output. The member name will be present, but the
17144// value will be replaced with "sensitive".
17145func (s TagCriterionForJob) String() string {
17146	return awsutil.Prettify(s)
17147}
17148
17149// GoString returns the string representation.
17150//
17151// API parameter values that are decorated as "sensitive" in the API will not
17152// be included in the string output. The member name will be present, but the
17153// value will be replaced with "sensitive".
17154func (s TagCriterionForJob) GoString() string {
17155	return s.String()
17156}
17157
17158// SetComparator sets the Comparator field's value.
17159func (s *TagCriterionForJob) SetComparator(v string) *TagCriterionForJob {
17160	s.Comparator = &v
17161	return s
17162}
17163
17164// SetTagValues sets the TagValues field's value.
17165func (s *TagCriterionForJob) SetTagValues(v []*TagCriterionPairForJob) *TagCriterionForJob {
17166	s.TagValues = v
17167	return s
17168}
17169
17170// Specifies a tag key, a tag value, or a tag key and value (as a pair) to use
17171// in a tag-based condition that determines whether an S3 bucket is included
17172// or excluded from a classification job. Tag keys and values are case sensitive.
17173// Also, Amazon Macie doesn't support use of partial values or wildcard characters
17174// in tag-based conditions.
17175type TagCriterionPairForJob struct {
17176	_ struct{} `type:"structure"`
17177
17178	Key *string `locationName:"key" type:"string"`
17179
17180	Value *string `locationName:"value" type:"string"`
17181}
17182
17183// String returns the string representation.
17184//
17185// API parameter values that are decorated as "sensitive" in the API will not
17186// be included in the string output. The member name will be present, but the
17187// value will be replaced with "sensitive".
17188func (s TagCriterionPairForJob) String() string {
17189	return awsutil.Prettify(s)
17190}
17191
17192// GoString returns the string representation.
17193//
17194// API parameter values that are decorated as "sensitive" in the API will not
17195// be included in the string output. The member name will be present, but the
17196// value will be replaced with "sensitive".
17197func (s TagCriterionPairForJob) GoString() string {
17198	return s.String()
17199}
17200
17201// SetKey sets the Key field's value.
17202func (s *TagCriterionPairForJob) SetKey(v string) *TagCriterionPairForJob {
17203	s.Key = &v
17204	return s
17205}
17206
17207// SetValue sets the Value field's value.
17208func (s *TagCriterionPairForJob) SetValue(v string) *TagCriterionPairForJob {
17209	s.Value = &v
17210	return s
17211}
17212
17213// Specifies the tags (keys and values) to associate with a classification job,
17214// custom data identifier, findings filter, or member account.
17215type TagResourceInput struct {
17216	_ struct{} `type:"structure"`
17217
17218	// ResourceArn is a required field
17219	ResourceArn *string `location:"uri" locationName:"resourceArn" type:"string" required:"true"`
17220
17221	// A string-to-string map of key-value pairs that specifies the tags (keys and
17222	// values) for a classification job, custom data identifier, findings filter,
17223	// or member account.
17224	//
17225	// Tags is a required field
17226	Tags map[string]*string `locationName:"tags" type:"map" required:"true"`
17227}
17228
17229// String returns the string representation.
17230//
17231// API parameter values that are decorated as "sensitive" in the API will not
17232// be included in the string output. The member name will be present, but the
17233// value will be replaced with "sensitive".
17234func (s TagResourceInput) String() string {
17235	return awsutil.Prettify(s)
17236}
17237
17238// GoString returns the string representation.
17239//
17240// API parameter values that are decorated as "sensitive" in the API will not
17241// be included in the string output. The member name will be present, but the
17242// value will be replaced with "sensitive".
17243func (s TagResourceInput) GoString() string {
17244	return s.String()
17245}
17246
17247// Validate inspects the fields of the type to determine if they are valid.
17248func (s *TagResourceInput) Validate() error {
17249	invalidParams := request.ErrInvalidParams{Context: "TagResourceInput"}
17250	if s.ResourceArn == nil {
17251		invalidParams.Add(request.NewErrParamRequired("ResourceArn"))
17252	}
17253	if s.ResourceArn != nil && len(*s.ResourceArn) < 1 {
17254		invalidParams.Add(request.NewErrParamMinLen("ResourceArn", 1))
17255	}
17256	if s.Tags == nil {
17257		invalidParams.Add(request.NewErrParamRequired("Tags"))
17258	}
17259
17260	if invalidParams.Len() > 0 {
17261		return invalidParams
17262	}
17263	return nil
17264}
17265
17266// SetResourceArn sets the ResourceArn field's value.
17267func (s *TagResourceInput) SetResourceArn(v string) *TagResourceInput {
17268	s.ResourceArn = &v
17269	return s
17270}
17271
17272// SetTags sets the Tags field's value.
17273func (s *TagResourceInput) SetTags(v map[string]*string) *TagResourceInput {
17274	s.Tags = v
17275	return s
17276}
17277
17278// The request succeeded. The specified tags were added to the resource.
17279type TagResourceOutput struct {
17280	_ struct{} `type:"structure"`
17281}
17282
17283// String returns the string representation.
17284//
17285// API parameter values that are decorated as "sensitive" in the API will not
17286// be included in the string output. The member name will be present, but the
17287// value will be replaced with "sensitive".
17288func (s TagResourceOutput) String() string {
17289	return awsutil.Prettify(s)
17290}
17291
17292// GoString returns the string representation.
17293//
17294// API parameter values that are decorated as "sensitive" in the API will not
17295// be included in the string output. The member name will be present, but the
17296// value will be replaced with "sensitive".
17297func (s TagResourceOutput) GoString() string {
17298	return s.String()
17299}
17300
17301// Specifies a tag-based condition that determines whether an S3 object is included
17302// or excluded from a classification job.
17303type TagScopeTerm struct {
17304	_ struct{} `type:"structure"`
17305
17306	// The operator to use in a condition. Valid values are:
17307	Comparator *string `locationName:"comparator" type:"string" enum:"JobComparator"`
17308
17309	Key *string `locationName:"key" type:"string"`
17310
17311	TagValues []*TagValuePair `locationName:"tagValues" type:"list"`
17312
17313	// The type of object to apply a tag-based condition to. Valid values are:
17314	Target *string `locationName:"target" type:"string" enum:"TagTarget"`
17315}
17316
17317// String returns the string representation.
17318//
17319// API parameter values that are decorated as "sensitive" in the API will not
17320// be included in the string output. The member name will be present, but the
17321// value will be replaced with "sensitive".
17322func (s TagScopeTerm) String() string {
17323	return awsutil.Prettify(s)
17324}
17325
17326// GoString returns the string representation.
17327//
17328// API parameter values that are decorated as "sensitive" in the API will not
17329// be included in the string output. The member name will be present, but the
17330// value will be replaced with "sensitive".
17331func (s TagScopeTerm) GoString() string {
17332	return s.String()
17333}
17334
17335// SetComparator sets the Comparator field's value.
17336func (s *TagScopeTerm) SetComparator(v string) *TagScopeTerm {
17337	s.Comparator = &v
17338	return s
17339}
17340
17341// SetKey sets the Key field's value.
17342func (s *TagScopeTerm) SetKey(v string) *TagScopeTerm {
17343	s.Key = &v
17344	return s
17345}
17346
17347// SetTagValues sets the TagValues field's value.
17348func (s *TagScopeTerm) SetTagValues(v []*TagValuePair) *TagScopeTerm {
17349	s.TagValues = v
17350	return s
17351}
17352
17353// SetTarget sets the Target field's value.
17354func (s *TagScopeTerm) SetTarget(v string) *TagScopeTerm {
17355	s.Target = &v
17356	return s
17357}
17358
17359// Specifies a tag key or tag key and value pair to use in a tag-based condition
17360// that determines whether an S3 object is included or excluded from a classification
17361// job. Tag keys and values are case sensitive. Also, Amazon Macie doesn't support
17362// use of partial values or wildcard characters in tag-based conditions.
17363type TagValuePair struct {
17364	_ struct{} `type:"structure"`
17365
17366	Key *string `locationName:"key" type:"string"`
17367
17368	Value *string `locationName:"value" type:"string"`
17369}
17370
17371// String returns the string representation.
17372//
17373// API parameter values that are decorated as "sensitive" in the API will not
17374// be included in the string output. The member name will be present, but the
17375// value will be replaced with "sensitive".
17376func (s TagValuePair) String() string {
17377	return awsutil.Prettify(s)
17378}
17379
17380// GoString returns the string representation.
17381//
17382// API parameter values that are decorated as "sensitive" in the API will not
17383// be included in the string output. The member name will be present, but the
17384// value will be replaced with "sensitive".
17385func (s TagValuePair) GoString() string {
17386	return s.String()
17387}
17388
17389// SetKey sets the Key field's value.
17390func (s *TagValuePair) SetKey(v string) *TagValuePair {
17391	s.Key = &v
17392	return s
17393}
17394
17395// SetValue sets the Value field's value.
17396func (s *TagValuePair) SetValue(v string) *TagValuePair {
17397	s.Value = &v
17398	return s
17399}
17400
17401// Specifies the detection criteria of a custom data identifier to test.
17402type TestCustomDataIdentifierInput struct {
17403	_ struct{} `type:"structure"`
17404
17405	IgnoreWords []*string `locationName:"ignoreWords" type:"list"`
17406
17407	Keywords []*string `locationName:"keywords" type:"list"`
17408
17409	MaximumMatchDistance *int64 `locationName:"maximumMatchDistance" type:"integer"`
17410
17411	// Regex is a required field
17412	Regex *string `locationName:"regex" type:"string" required:"true"`
17413
17414	// SampleText is a required field
17415	SampleText *string `locationName:"sampleText" type:"string" required:"true"`
17416}
17417
17418// String returns the string representation.
17419//
17420// API parameter values that are decorated as "sensitive" in the API will not
17421// be included in the string output. The member name will be present, but the
17422// value will be replaced with "sensitive".
17423func (s TestCustomDataIdentifierInput) String() string {
17424	return awsutil.Prettify(s)
17425}
17426
17427// GoString returns the string representation.
17428//
17429// API parameter values that are decorated as "sensitive" in the API will not
17430// be included in the string output. The member name will be present, but the
17431// value will be replaced with "sensitive".
17432func (s TestCustomDataIdentifierInput) GoString() string {
17433	return s.String()
17434}
17435
17436// Validate inspects the fields of the type to determine if they are valid.
17437func (s *TestCustomDataIdentifierInput) Validate() error {
17438	invalidParams := request.ErrInvalidParams{Context: "TestCustomDataIdentifierInput"}
17439	if s.Regex == nil {
17440		invalidParams.Add(request.NewErrParamRequired("Regex"))
17441	}
17442	if s.SampleText == nil {
17443		invalidParams.Add(request.NewErrParamRequired("SampleText"))
17444	}
17445
17446	if invalidParams.Len() > 0 {
17447		return invalidParams
17448	}
17449	return nil
17450}
17451
17452// SetIgnoreWords sets the IgnoreWords field's value.
17453func (s *TestCustomDataIdentifierInput) SetIgnoreWords(v []*string) *TestCustomDataIdentifierInput {
17454	s.IgnoreWords = v
17455	return s
17456}
17457
17458// SetKeywords sets the Keywords field's value.
17459func (s *TestCustomDataIdentifierInput) SetKeywords(v []*string) *TestCustomDataIdentifierInput {
17460	s.Keywords = v
17461	return s
17462}
17463
17464// SetMaximumMatchDistance sets the MaximumMatchDistance field's value.
17465func (s *TestCustomDataIdentifierInput) SetMaximumMatchDistance(v int64) *TestCustomDataIdentifierInput {
17466	s.MaximumMatchDistance = &v
17467	return s
17468}
17469
17470// SetRegex sets the Regex field's value.
17471func (s *TestCustomDataIdentifierInput) SetRegex(v string) *TestCustomDataIdentifierInput {
17472	s.Regex = &v
17473	return s
17474}
17475
17476// SetSampleText sets the SampleText field's value.
17477func (s *TestCustomDataIdentifierInput) SetSampleText(v string) *TestCustomDataIdentifierInput {
17478	s.SampleText = &v
17479	return s
17480}
17481
17482// Provides test results for a custom data identifier.
17483type TestCustomDataIdentifierOutput struct {
17484	_ struct{} `type:"structure"`
17485
17486	MatchCount *int64 `locationName:"matchCount" type:"integer"`
17487}
17488
17489// String returns the string representation.
17490//
17491// API parameter values that are decorated as "sensitive" in the API will not
17492// be included in the string output. The member name will be present, but the
17493// value will be replaced with "sensitive".
17494func (s TestCustomDataIdentifierOutput) String() string {
17495	return awsutil.Prettify(s)
17496}
17497
17498// GoString returns the string representation.
17499//
17500// API parameter values that are decorated as "sensitive" in the API will not
17501// be included in the string output. The member name will be present, but the
17502// value will be replaced with "sensitive".
17503func (s TestCustomDataIdentifierOutput) GoString() string {
17504	return s.String()
17505}
17506
17507// SetMatchCount sets the MatchCount field's value.
17508func (s *TestCustomDataIdentifierOutput) SetMatchCount(v int64) *TestCustomDataIdentifierOutput {
17509	s.MatchCount = &v
17510	return s
17511}
17512
17513// Provides information about an error that occurred because too many requests
17514// were sent during a certain amount of time.
17515type ThrottlingException struct {
17516	_            struct{}                  `type:"structure"`
17517	RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"`
17518
17519	Message_ *string `locationName:"message" type:"string"`
17520}
17521
17522// String returns the string representation.
17523//
17524// API parameter values that are decorated as "sensitive" in the API will not
17525// be included in the string output. The member name will be present, but the
17526// value will be replaced with "sensitive".
17527func (s ThrottlingException) String() string {
17528	return awsutil.Prettify(s)
17529}
17530
17531// GoString returns the string representation.
17532//
17533// API parameter values that are decorated as "sensitive" in the API will not
17534// be included in the string output. The member name will be present, but the
17535// value will be replaced with "sensitive".
17536func (s ThrottlingException) GoString() string {
17537	return s.String()
17538}
17539
17540func newErrorThrottlingException(v protocol.ResponseMetadata) error {
17541	return &ThrottlingException{
17542		RespMetadata: v,
17543	}
17544}
17545
17546// Code returns the exception type name.
17547func (s *ThrottlingException) Code() string {
17548	return "ThrottlingException"
17549}
17550
17551// Message returns the exception's message.
17552func (s *ThrottlingException) Message() string {
17553	if s.Message_ != nil {
17554		return *s.Message_
17555	}
17556	return ""
17557}
17558
17559// OrigErr always returns nil, satisfies awserr.Error interface.
17560func (s *ThrottlingException) OrigErr() error {
17561	return nil
17562}
17563
17564func (s *ThrottlingException) Error() string {
17565	return fmt.Sprintf("%s: %s", s.Code(), s.Message())
17566}
17567
17568// Status code returns the HTTP status code for the request's response error.
17569func (s *ThrottlingException) StatusCode() int {
17570	return s.RespMetadata.StatusCode
17571}
17572
17573// RequestID returns the service's response RequestID for request.
17574func (s *ThrottlingException) RequestID() string {
17575	return s.RespMetadata.RequestID
17576}
17577
17578// Provides information about an account-related request that hasn't been processed.
17579type UnprocessedAccount struct {
17580	_ struct{} `type:"structure"`
17581
17582	AccountId *string `locationName:"accountId" type:"string"`
17583
17584	// The source of an issue or delay. Possible values are:
17585	ErrorCode *string `locationName:"errorCode" type:"string" enum:"ErrorCode"`
17586
17587	ErrorMessage *string `locationName:"errorMessage" type:"string"`
17588}
17589
17590// String returns the string representation.
17591//
17592// API parameter values that are decorated as "sensitive" in the API will not
17593// be included in the string output. The member name will be present, but the
17594// value will be replaced with "sensitive".
17595func (s UnprocessedAccount) String() string {
17596	return awsutil.Prettify(s)
17597}
17598
17599// GoString returns the string representation.
17600//
17601// API parameter values that are decorated as "sensitive" in the API will not
17602// be included in the string output. The member name will be present, but the
17603// value will be replaced with "sensitive".
17604func (s UnprocessedAccount) GoString() string {
17605	return s.String()
17606}
17607
17608// SetAccountId sets the AccountId field's value.
17609func (s *UnprocessedAccount) SetAccountId(v string) *UnprocessedAccount {
17610	s.AccountId = &v
17611	return s
17612}
17613
17614// SetErrorCode sets the ErrorCode field's value.
17615func (s *UnprocessedAccount) SetErrorCode(v string) *UnprocessedAccount {
17616	s.ErrorCode = &v
17617	return s
17618}
17619
17620// SetErrorMessage sets the ErrorMessage field's value.
17621func (s *UnprocessedAccount) SetErrorMessage(v string) *UnprocessedAccount {
17622	s.ErrorMessage = &v
17623	return s
17624}
17625
17626type UntagResourceInput struct {
17627	_ struct{} `type:"structure" nopayload:"true"`
17628
17629	// ResourceArn is a required field
17630	ResourceArn *string `location:"uri" locationName:"resourceArn" type:"string" required:"true"`
17631
17632	// TagKeys is a required field
17633	TagKeys []*string `location:"querystring" locationName:"tagKeys" type:"list" required:"true"`
17634}
17635
17636// String returns the string representation.
17637//
17638// API parameter values that are decorated as "sensitive" in the API will not
17639// be included in the string output. The member name will be present, but the
17640// value will be replaced with "sensitive".
17641func (s UntagResourceInput) String() string {
17642	return awsutil.Prettify(s)
17643}
17644
17645// GoString returns the string representation.
17646//
17647// API parameter values that are decorated as "sensitive" in the API will not
17648// be included in the string output. The member name will be present, but the
17649// value will be replaced with "sensitive".
17650func (s UntagResourceInput) GoString() string {
17651	return s.String()
17652}
17653
17654// Validate inspects the fields of the type to determine if they are valid.
17655func (s *UntagResourceInput) Validate() error {
17656	invalidParams := request.ErrInvalidParams{Context: "UntagResourceInput"}
17657	if s.ResourceArn == nil {
17658		invalidParams.Add(request.NewErrParamRequired("ResourceArn"))
17659	}
17660	if s.ResourceArn != nil && len(*s.ResourceArn) < 1 {
17661		invalidParams.Add(request.NewErrParamMinLen("ResourceArn", 1))
17662	}
17663	if s.TagKeys == nil {
17664		invalidParams.Add(request.NewErrParamRequired("TagKeys"))
17665	}
17666
17667	if invalidParams.Len() > 0 {
17668		return invalidParams
17669	}
17670	return nil
17671}
17672
17673// SetResourceArn sets the ResourceArn field's value.
17674func (s *UntagResourceInput) SetResourceArn(v string) *UntagResourceInput {
17675	s.ResourceArn = &v
17676	return s
17677}
17678
17679// SetTagKeys sets the TagKeys field's value.
17680func (s *UntagResourceInput) SetTagKeys(v []*string) *UntagResourceInput {
17681	s.TagKeys = v
17682	return s
17683}
17684
17685// The request succeeded. The specified tags were removed from the resource.
17686type UntagResourceOutput struct {
17687	_ struct{} `type:"structure"`
17688}
17689
17690// String returns the string representation.
17691//
17692// API parameter values that are decorated as "sensitive" in the API will not
17693// be included in the string output. The member name will be present, but the
17694// value will be replaced with "sensitive".
17695func (s UntagResourceOutput) String() string {
17696	return awsutil.Prettify(s)
17697}
17698
17699// GoString returns the string representation.
17700//
17701// API parameter values that are decorated as "sensitive" in the API will not
17702// be included in the string output. The member name will be present, but the
17703// value will be replaced with "sensitive".
17704func (s UntagResourceOutput) GoString() string {
17705	return s.String()
17706}
17707
17708// Changes the status of a classification job. For more information about pausing,
17709// resuming, or cancelling jobs, see Managing sensitive data discovery jobs
17710// (https://docs.aws.amazon.com/macie/latest/user/discovery-jobs-manage.html)
17711// in the Amazon Macie User Guide.
17712type UpdateClassificationJobInput struct {
17713	_ struct{} `type:"structure"`
17714
17715	// JobId is a required field
17716	JobId *string `location:"uri" locationName:"jobId" type:"string" required:"true"`
17717
17718	// The status of a classification job. Possible values are:
17719	//
17720	// JobStatus is a required field
17721	JobStatus *string `locationName:"jobStatus" type:"string" required:"true" enum:"JobStatus"`
17722}
17723
17724// String returns the string representation.
17725//
17726// API parameter values that are decorated as "sensitive" in the API will not
17727// be included in the string output. The member name will be present, but the
17728// value will be replaced with "sensitive".
17729func (s UpdateClassificationJobInput) String() string {
17730	return awsutil.Prettify(s)
17731}
17732
17733// GoString returns the string representation.
17734//
17735// API parameter values that are decorated as "sensitive" in the API will not
17736// be included in the string output. The member name will be present, but the
17737// value will be replaced with "sensitive".
17738func (s UpdateClassificationJobInput) GoString() string {
17739	return s.String()
17740}
17741
17742// Validate inspects the fields of the type to determine if they are valid.
17743func (s *UpdateClassificationJobInput) Validate() error {
17744	invalidParams := request.ErrInvalidParams{Context: "UpdateClassificationJobInput"}
17745	if s.JobId == nil {
17746		invalidParams.Add(request.NewErrParamRequired("JobId"))
17747	}
17748	if s.JobId != nil && len(*s.JobId) < 1 {
17749		invalidParams.Add(request.NewErrParamMinLen("JobId", 1))
17750	}
17751	if s.JobStatus == nil {
17752		invalidParams.Add(request.NewErrParamRequired("JobStatus"))
17753	}
17754
17755	if invalidParams.Len() > 0 {
17756		return invalidParams
17757	}
17758	return nil
17759}
17760
17761// SetJobId sets the JobId field's value.
17762func (s *UpdateClassificationJobInput) SetJobId(v string) *UpdateClassificationJobInput {
17763	s.JobId = &v
17764	return s
17765}
17766
17767// SetJobStatus sets the JobStatus field's value.
17768func (s *UpdateClassificationJobInput) SetJobStatus(v string) *UpdateClassificationJobInput {
17769	s.JobStatus = &v
17770	return s
17771}
17772
17773type UpdateClassificationJobOutput struct {
17774	_ struct{} `type:"structure"`
17775}
17776
17777// String returns the string representation.
17778//
17779// API parameter values that are decorated as "sensitive" in the API will not
17780// be included in the string output. The member name will be present, but the
17781// value will be replaced with "sensitive".
17782func (s UpdateClassificationJobOutput) String() string {
17783	return awsutil.Prettify(s)
17784}
17785
17786// GoString returns the string representation.
17787//
17788// API parameter values that are decorated as "sensitive" in the API will not
17789// be included in the string output. The member name will be present, but the
17790// value will be replaced with "sensitive".
17791func (s UpdateClassificationJobOutput) GoString() string {
17792	return s.String()
17793}
17794
17795// Specifies the criteria and other settings for a findings filter.
17796type UpdateFindingsFilterInput struct {
17797	_ struct{} `type:"structure"`
17798
17799	// The action to perform on findings that meet the filter criteria. To suppress
17800	// (automatically archive) findings that meet the criteria, set this value to
17801	// ARCHIVE. Valid values are:
17802	Action *string `locationName:"action" type:"string" enum:"FindingsFilterAction"`
17803
17804	ClientToken *string `locationName:"clientToken" type:"string" idempotencyToken:"true"`
17805
17806	Description *string `locationName:"description" type:"string"`
17807
17808	// Specifies, as a map, one or more property-based conditions that filter the
17809	// results of a query for findings.
17810	FindingCriteria *FindingCriteria `locationName:"findingCriteria" type:"structure"`
17811
17812	// Id is a required field
17813	Id *string `location:"uri" locationName:"id" type:"string" required:"true"`
17814
17815	Name *string `locationName:"name" type:"string"`
17816
17817	Position *int64 `locationName:"position" type:"integer"`
17818}
17819
17820// String returns the string representation.
17821//
17822// API parameter values that are decorated as "sensitive" in the API will not
17823// be included in the string output. The member name will be present, but the
17824// value will be replaced with "sensitive".
17825func (s UpdateFindingsFilterInput) String() string {
17826	return awsutil.Prettify(s)
17827}
17828
17829// GoString returns the string representation.
17830//
17831// API parameter values that are decorated as "sensitive" in the API will not
17832// be included in the string output. The member name will be present, but the
17833// value will be replaced with "sensitive".
17834func (s UpdateFindingsFilterInput) GoString() string {
17835	return s.String()
17836}
17837
17838// Validate inspects the fields of the type to determine if they are valid.
17839func (s *UpdateFindingsFilterInput) Validate() error {
17840	invalidParams := request.ErrInvalidParams{Context: "UpdateFindingsFilterInput"}
17841	if s.Id == nil {
17842		invalidParams.Add(request.NewErrParamRequired("Id"))
17843	}
17844	if s.Id != nil && len(*s.Id) < 1 {
17845		invalidParams.Add(request.NewErrParamMinLen("Id", 1))
17846	}
17847
17848	if invalidParams.Len() > 0 {
17849		return invalidParams
17850	}
17851	return nil
17852}
17853
17854// SetAction sets the Action field's value.
17855func (s *UpdateFindingsFilterInput) SetAction(v string) *UpdateFindingsFilterInput {
17856	s.Action = &v
17857	return s
17858}
17859
17860// SetClientToken sets the ClientToken field's value.
17861func (s *UpdateFindingsFilterInput) SetClientToken(v string) *UpdateFindingsFilterInput {
17862	s.ClientToken = &v
17863	return s
17864}
17865
17866// SetDescription sets the Description field's value.
17867func (s *UpdateFindingsFilterInput) SetDescription(v string) *UpdateFindingsFilterInput {
17868	s.Description = &v
17869	return s
17870}
17871
17872// SetFindingCriteria sets the FindingCriteria field's value.
17873func (s *UpdateFindingsFilterInput) SetFindingCriteria(v *FindingCriteria) *UpdateFindingsFilterInput {
17874	s.FindingCriteria = v
17875	return s
17876}
17877
17878// SetId sets the Id field's value.
17879func (s *UpdateFindingsFilterInput) SetId(v string) *UpdateFindingsFilterInput {
17880	s.Id = &v
17881	return s
17882}
17883
17884// SetName sets the Name field's value.
17885func (s *UpdateFindingsFilterInput) SetName(v string) *UpdateFindingsFilterInput {
17886	s.Name = &v
17887	return s
17888}
17889
17890// SetPosition sets the Position field's value.
17891func (s *UpdateFindingsFilterInput) SetPosition(v int64) *UpdateFindingsFilterInput {
17892	s.Position = &v
17893	return s
17894}
17895
17896// Provides information about a findings filter that was updated in response
17897// to a request.
17898type UpdateFindingsFilterOutput struct {
17899	_ struct{} `type:"structure"`
17900
17901	Arn *string `locationName:"arn" type:"string"`
17902
17903	Id *string `locationName:"id" type:"string"`
17904}
17905
17906// String returns the string representation.
17907//
17908// API parameter values that are decorated as "sensitive" in the API will not
17909// be included in the string output. The member name will be present, but the
17910// value will be replaced with "sensitive".
17911func (s UpdateFindingsFilterOutput) String() string {
17912	return awsutil.Prettify(s)
17913}
17914
17915// GoString returns the string representation.
17916//
17917// API parameter values that are decorated as "sensitive" in the API will not
17918// be included in the string output. The member name will be present, but the
17919// value will be replaced with "sensitive".
17920func (s UpdateFindingsFilterOutput) GoString() string {
17921	return s.String()
17922}
17923
17924// SetArn sets the Arn field's value.
17925func (s *UpdateFindingsFilterOutput) SetArn(v string) *UpdateFindingsFilterOutput {
17926	s.Arn = &v
17927	return s
17928}
17929
17930// SetId sets the Id field's value.
17931func (s *UpdateFindingsFilterOutput) SetId(v string) *UpdateFindingsFilterOutput {
17932	s.Id = &v
17933	return s
17934}
17935
17936// Changes the status or configuration settings for an Amazon Macie account.
17937type UpdateMacieSessionInput struct {
17938	_ struct{} `type:"structure"`
17939
17940	// The frequency with which Amazon Macie publishes updates to policy findings
17941	// for an account. This includes publishing updates to Security Hub and Amazon
17942	// EventBridge (formerly called Amazon CloudWatch Events). For more information,
17943	// see Monitoring and processing findings (https://docs.aws.amazon.com/macie/latest/user/findings-monitor.html)
17944	// in the Amazon Macie User Guide. Valid values are:
17945	FindingPublishingFrequency *string `locationName:"findingPublishingFrequency" type:"string" enum:"FindingPublishingFrequency"`
17946
17947	// The status of an Amazon Macie account. Valid values are:
17948	Status *string `locationName:"status" type:"string" enum:"MacieStatus"`
17949}
17950
17951// String returns the string representation.
17952//
17953// API parameter values that are decorated as "sensitive" in the API will not
17954// be included in the string output. The member name will be present, but the
17955// value will be replaced with "sensitive".
17956func (s UpdateMacieSessionInput) String() string {
17957	return awsutil.Prettify(s)
17958}
17959
17960// GoString returns the string representation.
17961//
17962// API parameter values that are decorated as "sensitive" in the API will not
17963// be included in the string output. The member name will be present, but the
17964// value will be replaced with "sensitive".
17965func (s UpdateMacieSessionInput) GoString() string {
17966	return s.String()
17967}
17968
17969// SetFindingPublishingFrequency sets the FindingPublishingFrequency field's value.
17970func (s *UpdateMacieSessionInput) SetFindingPublishingFrequency(v string) *UpdateMacieSessionInput {
17971	s.FindingPublishingFrequency = &v
17972	return s
17973}
17974
17975// SetStatus sets the Status field's value.
17976func (s *UpdateMacieSessionInput) SetStatus(v string) *UpdateMacieSessionInput {
17977	s.Status = &v
17978	return s
17979}
17980
17981type UpdateMacieSessionOutput struct {
17982	_ struct{} `type:"structure"`
17983}
17984
17985// String returns the string representation.
17986//
17987// API parameter values that are decorated as "sensitive" in the API will not
17988// be included in the string output. The member name will be present, but the
17989// value will be replaced with "sensitive".
17990func (s UpdateMacieSessionOutput) String() string {
17991	return awsutil.Prettify(s)
17992}
17993
17994// GoString returns the string representation.
17995//
17996// API parameter values that are decorated as "sensitive" in the API will not
17997// be included in the string output. The member name will be present, but the
17998// value will be replaced with "sensitive".
17999func (s UpdateMacieSessionOutput) GoString() string {
18000	return s.String()
18001}
18002
18003// Suspends (pauses) or re-enables Amazon Macie for a member account.
18004type UpdateMemberSessionInput struct {
18005	_ struct{} `type:"structure"`
18006
18007	// Id is a required field
18008	Id *string `location:"uri" locationName:"id" type:"string" required:"true"`
18009
18010	// The status of an Amazon Macie account. Valid values are:
18011	//
18012	// Status is a required field
18013	Status *string `locationName:"status" type:"string" required:"true" enum:"MacieStatus"`
18014}
18015
18016// String returns the string representation.
18017//
18018// API parameter values that are decorated as "sensitive" in the API will not
18019// be included in the string output. The member name will be present, but the
18020// value will be replaced with "sensitive".
18021func (s UpdateMemberSessionInput) String() string {
18022	return awsutil.Prettify(s)
18023}
18024
18025// GoString returns the string representation.
18026//
18027// API parameter values that are decorated as "sensitive" in the API will not
18028// be included in the string output. The member name will be present, but the
18029// value will be replaced with "sensitive".
18030func (s UpdateMemberSessionInput) GoString() string {
18031	return s.String()
18032}
18033
18034// Validate inspects the fields of the type to determine if they are valid.
18035func (s *UpdateMemberSessionInput) Validate() error {
18036	invalidParams := request.ErrInvalidParams{Context: "UpdateMemberSessionInput"}
18037	if s.Id == nil {
18038		invalidParams.Add(request.NewErrParamRequired("Id"))
18039	}
18040	if s.Id != nil && len(*s.Id) < 1 {
18041		invalidParams.Add(request.NewErrParamMinLen("Id", 1))
18042	}
18043	if s.Status == nil {
18044		invalidParams.Add(request.NewErrParamRequired("Status"))
18045	}
18046
18047	if invalidParams.Len() > 0 {
18048		return invalidParams
18049	}
18050	return nil
18051}
18052
18053// SetId sets the Id field's value.
18054func (s *UpdateMemberSessionInput) SetId(v string) *UpdateMemberSessionInput {
18055	s.Id = &v
18056	return s
18057}
18058
18059// SetStatus sets the Status field's value.
18060func (s *UpdateMemberSessionInput) SetStatus(v string) *UpdateMemberSessionInput {
18061	s.Status = &v
18062	return s
18063}
18064
18065type UpdateMemberSessionOutput struct {
18066	_ struct{} `type:"structure"`
18067}
18068
18069// String returns the string representation.
18070//
18071// API parameter values that are decorated as "sensitive" in the API will not
18072// be included in the string output. The member name will be present, but the
18073// value will be replaced with "sensitive".
18074func (s UpdateMemberSessionOutput) String() string {
18075	return awsutil.Prettify(s)
18076}
18077
18078// GoString returns the string representation.
18079//
18080// API parameter values that are decorated as "sensitive" in the API will not
18081// be included in the string output. The member name will be present, but the
18082// value will be replaced with "sensitive".
18083func (s UpdateMemberSessionOutput) GoString() string {
18084	return s.String()
18085}
18086
18087// Specifies whether to enable Amazon Macie automatically for accounts that
18088// are added to an Amazon Web Services organization.
18089type UpdateOrganizationConfigurationInput struct {
18090	_ struct{} `type:"structure"`
18091
18092	// AutoEnable is a required field
18093	AutoEnable *bool `locationName:"autoEnable" type:"boolean" required:"true"`
18094}
18095
18096// String returns the string representation.
18097//
18098// API parameter values that are decorated as "sensitive" in the API will not
18099// be included in the string output. The member name will be present, but the
18100// value will be replaced with "sensitive".
18101func (s UpdateOrganizationConfigurationInput) String() string {
18102	return awsutil.Prettify(s)
18103}
18104
18105// GoString returns the string representation.
18106//
18107// API parameter values that are decorated as "sensitive" in the API will not
18108// be included in the string output. The member name will be present, but the
18109// value will be replaced with "sensitive".
18110func (s UpdateOrganizationConfigurationInput) GoString() string {
18111	return s.String()
18112}
18113
18114// Validate inspects the fields of the type to determine if they are valid.
18115func (s *UpdateOrganizationConfigurationInput) Validate() error {
18116	invalidParams := request.ErrInvalidParams{Context: "UpdateOrganizationConfigurationInput"}
18117	if s.AutoEnable == nil {
18118		invalidParams.Add(request.NewErrParamRequired("AutoEnable"))
18119	}
18120
18121	if invalidParams.Len() > 0 {
18122		return invalidParams
18123	}
18124	return nil
18125}
18126
18127// SetAutoEnable sets the AutoEnable field's value.
18128func (s *UpdateOrganizationConfigurationInput) SetAutoEnable(v bool) *UpdateOrganizationConfigurationInput {
18129	s.AutoEnable = &v
18130	return s
18131}
18132
18133type UpdateOrganizationConfigurationOutput struct {
18134	_ struct{} `type:"structure"`
18135}
18136
18137// String returns the string representation.
18138//
18139// API parameter values that are decorated as "sensitive" in the API will not
18140// be included in the string output. The member name will be present, but the
18141// value will be replaced with "sensitive".
18142func (s UpdateOrganizationConfigurationOutput) String() string {
18143	return awsutil.Prettify(s)
18144}
18145
18146// GoString returns the string representation.
18147//
18148// API parameter values that are decorated as "sensitive" in the API will not
18149// be included in the string output. The member name will be present, but the
18150// value will be replaced with "sensitive".
18151func (s UpdateOrganizationConfigurationOutput) GoString() string {
18152	return s.String()
18153}
18154
18155// Provides data for a specific usage metric and the corresponding quota for
18156// an Amazon Macie account.
18157type UsageByAccount struct {
18158	_ struct{} `type:"structure"`
18159
18160	// The type of currency that the data for an Amazon Macie usage metric is reported
18161	// in. Possible values are:
18162	Currency *string `locationName:"currency" type:"string" enum:"Currency"`
18163
18164	EstimatedCost *string `locationName:"estimatedCost" type:"string"`
18165
18166	// Specifies a current quota for an Amazon Macie account.
18167	ServiceLimit *ServiceLimit `locationName:"serviceLimit" type:"structure"`
18168
18169	// The name of an Amazon Macie usage metric for an account. Possible values
18170	// are:
18171	Type *string `locationName:"type" type:"string" enum:"UsageType"`
18172}
18173
18174// String returns the string representation.
18175//
18176// API parameter values that are decorated as "sensitive" in the API will not
18177// be included in the string output. The member name will be present, but the
18178// value will be replaced with "sensitive".
18179func (s UsageByAccount) String() string {
18180	return awsutil.Prettify(s)
18181}
18182
18183// GoString returns the string representation.
18184//
18185// API parameter values that are decorated as "sensitive" in the API will not
18186// be included in the string output. The member name will be present, but the
18187// value will be replaced with "sensitive".
18188func (s UsageByAccount) GoString() string {
18189	return s.String()
18190}
18191
18192// SetCurrency sets the Currency field's value.
18193func (s *UsageByAccount) SetCurrency(v string) *UsageByAccount {
18194	s.Currency = &v
18195	return s
18196}
18197
18198// SetEstimatedCost sets the EstimatedCost field's value.
18199func (s *UsageByAccount) SetEstimatedCost(v string) *UsageByAccount {
18200	s.EstimatedCost = &v
18201	return s
18202}
18203
18204// SetServiceLimit sets the ServiceLimit field's value.
18205func (s *UsageByAccount) SetServiceLimit(v *ServiceLimit) *UsageByAccount {
18206	s.ServiceLimit = v
18207	return s
18208}
18209
18210// SetType sets the Type field's value.
18211func (s *UsageByAccount) SetType(v string) *UsageByAccount {
18212	s.Type = &v
18213	return s
18214}
18215
18216// Provides quota and aggregated usage data for an Amazon Macie account.
18217type UsageRecord struct {
18218	_ struct{} `type:"structure"`
18219
18220	AccountId *string `locationName:"accountId" type:"string"`
18221
18222	FreeTrialStartDate *time.Time `locationName:"freeTrialStartDate" type:"timestamp" timestampFormat:"iso8601"`
18223
18224	Usage []*UsageByAccount `locationName:"usage" type:"list"`
18225}
18226
18227// String returns the string representation.
18228//
18229// API parameter values that are decorated as "sensitive" in the API will not
18230// be included in the string output. The member name will be present, but the
18231// value will be replaced with "sensitive".
18232func (s UsageRecord) String() string {
18233	return awsutil.Prettify(s)
18234}
18235
18236// GoString returns the string representation.
18237//
18238// API parameter values that are decorated as "sensitive" in the API will not
18239// be included in the string output. The member name will be present, but the
18240// value will be replaced with "sensitive".
18241func (s UsageRecord) GoString() string {
18242	return s.String()
18243}
18244
18245// SetAccountId sets the AccountId field's value.
18246func (s *UsageRecord) SetAccountId(v string) *UsageRecord {
18247	s.AccountId = &v
18248	return s
18249}
18250
18251// SetFreeTrialStartDate sets the FreeTrialStartDate field's value.
18252func (s *UsageRecord) SetFreeTrialStartDate(v time.Time) *UsageRecord {
18253	s.FreeTrialStartDate = &v
18254	return s
18255}
18256
18257// SetUsage sets the Usage field's value.
18258func (s *UsageRecord) SetUsage(v []*UsageByAccount) *UsageRecord {
18259	s.Usage = v
18260	return s
18261}
18262
18263// Specifies a condition for filtering the results of a query for quota and
18264// usage data for one or more Amazon Macie accounts.
18265type UsageStatisticsFilter struct {
18266	_ struct{} `type:"structure"`
18267
18268	// The operator to use in a condition that filters the results of a query for
18269	// Amazon Macie account quotas and usage data. Valid values are:
18270	Comparator *string `locationName:"comparator" type:"string" enum:"UsageStatisticsFilterComparator"`
18271
18272	// The field to use in a condition that filters the results of a query for Amazon
18273	// Macie account quotas and usage data. Valid values are:
18274	Key *string `locationName:"key" type:"string" enum:"UsageStatisticsFilterKey"`
18275
18276	Values []*string `locationName:"values" type:"list"`
18277}
18278
18279// String returns the string representation.
18280//
18281// API parameter values that are decorated as "sensitive" in the API will not
18282// be included in the string output. The member name will be present, but the
18283// value will be replaced with "sensitive".
18284func (s UsageStatisticsFilter) String() string {
18285	return awsutil.Prettify(s)
18286}
18287
18288// GoString returns the string representation.
18289//
18290// API parameter values that are decorated as "sensitive" in the API will not
18291// be included in the string output. The member name will be present, but the
18292// value will be replaced with "sensitive".
18293func (s UsageStatisticsFilter) GoString() string {
18294	return s.String()
18295}
18296
18297// SetComparator sets the Comparator field's value.
18298func (s *UsageStatisticsFilter) SetComparator(v string) *UsageStatisticsFilter {
18299	s.Comparator = &v
18300	return s
18301}
18302
18303// SetKey sets the Key field's value.
18304func (s *UsageStatisticsFilter) SetKey(v string) *UsageStatisticsFilter {
18305	s.Key = &v
18306	return s
18307}
18308
18309// SetValues sets the Values field's value.
18310func (s *UsageStatisticsFilter) SetValues(v []*string) *UsageStatisticsFilter {
18311	s.Values = v
18312	return s
18313}
18314
18315// Specifies criteria for sorting the results of a query for Amazon Macie account
18316// quotas and usage data.
18317type UsageStatisticsSortBy struct {
18318	_ struct{} `type:"structure"`
18319
18320	// The field to use to sort the results of a query for Amazon Macie account
18321	// quotas and usage data. Valid values are:
18322	Key *string `locationName:"key" type:"string" enum:"UsageStatisticsSortKey"`
18323
18324	OrderBy *string `locationName:"orderBy" type:"string" enum:"OrderBy"`
18325}
18326
18327// String returns the string representation.
18328//
18329// API parameter values that are decorated as "sensitive" in the API will not
18330// be included in the string output. The member name will be present, but the
18331// value will be replaced with "sensitive".
18332func (s UsageStatisticsSortBy) String() string {
18333	return awsutil.Prettify(s)
18334}
18335
18336// GoString returns the string representation.
18337//
18338// API parameter values that are decorated as "sensitive" in the API will not
18339// be included in the string output. The member name will be present, but the
18340// value will be replaced with "sensitive".
18341func (s UsageStatisticsSortBy) GoString() string {
18342	return s.String()
18343}
18344
18345// SetKey sets the Key field's value.
18346func (s *UsageStatisticsSortBy) SetKey(v string) *UsageStatisticsSortBy {
18347	s.Key = &v
18348	return s
18349}
18350
18351// SetOrderBy sets the OrderBy field's value.
18352func (s *UsageStatisticsSortBy) SetOrderBy(v string) *UsageStatisticsSortBy {
18353	s.OrderBy = &v
18354	return s
18355}
18356
18357// Provides aggregated data for an Amazon Macie usage metric. The value for
18358// the metric reports estimated usage data for an account for the preceding
18359// 30 days or the current calendar month to date, depending on the time period
18360// (timeRange) specified in the request.
18361type UsageTotal struct {
18362	_ struct{} `type:"structure"`
18363
18364	// The type of currency that the data for an Amazon Macie usage metric is reported
18365	// in. Possible values are:
18366	Currency *string `locationName:"currency" type:"string" enum:"Currency"`
18367
18368	EstimatedCost *string `locationName:"estimatedCost" type:"string"`
18369
18370	// The name of an Amazon Macie usage metric for an account. Possible values
18371	// are:
18372	Type *string `locationName:"type" type:"string" enum:"UsageType"`
18373}
18374
18375// String returns the string representation.
18376//
18377// API parameter values that are decorated as "sensitive" in the API will not
18378// be included in the string output. The member name will be present, but the
18379// value will be replaced with "sensitive".
18380func (s UsageTotal) String() string {
18381	return awsutil.Prettify(s)
18382}
18383
18384// GoString returns the string representation.
18385//
18386// API parameter values that are decorated as "sensitive" in the API will not
18387// be included in the string output. The member name will be present, but the
18388// value will be replaced with "sensitive".
18389func (s UsageTotal) GoString() string {
18390	return s.String()
18391}
18392
18393// SetCurrency sets the Currency field's value.
18394func (s *UsageTotal) SetCurrency(v string) *UsageTotal {
18395	s.Currency = &v
18396	return s
18397}
18398
18399// SetEstimatedCost sets the EstimatedCost field's value.
18400func (s *UsageTotal) SetEstimatedCost(v string) *UsageTotal {
18401	s.EstimatedCost = &v
18402	return s
18403}
18404
18405// SetType sets the Type field's value.
18406func (s *UsageTotal) SetType(v string) *UsageTotal {
18407	s.Type = &v
18408	return s
18409}
18410
18411// Provides information about the type and other characteristics of an entity
18412// that performed an action on an affected resource.
18413type UserIdentity struct {
18414	_ struct{} `type:"structure"`
18415
18416	// Provides information about an identity that performed an action on an affected
18417	// resource by using temporary security credentials. The credentials were obtained
18418	// using the AssumeRole operation of the Security Token Service (STS) API.
18419	AssumedRole *AssumedRole `locationName:"assumedRole" type:"structure"`
18420
18421	// Provides information about an Amazon Web Services account and entity that
18422	// performed an action on an affected resource. The action was performed using
18423	// the credentials for an Amazon Web Services account other than your own account.
18424	AwsAccount *AwsAccount `locationName:"awsAccount" type:"structure"`
18425
18426	// Provides information about an Amazon Web Service that performed an action
18427	// on an affected resource.
18428	AwsService *AwsService `locationName:"awsService" type:"structure"`
18429
18430	// Provides information about an identity that performed an action on an affected
18431	// resource by using temporary security credentials. The credentials were obtained
18432	// using the GetFederationToken operation of the Security Token Service (STS)
18433	// API.
18434	FederatedUser *FederatedUser `locationName:"federatedUser" type:"structure"`
18435
18436	// Provides information about an Identity and Access Management (IAM) user who
18437	// performed an action on an affected resource.
18438	IamUser *IamUser `locationName:"iamUser" type:"structure"`
18439
18440	// Provides information about an Amazon Web Services account and entity that
18441	// performed an action on an affected resource. The action was performed using
18442	// the credentials for your Amazon Web Services account.
18443	Root *UserIdentityRoot `locationName:"root" type:"structure"`
18444
18445	// The type of entity that performed the action on the affected resource. Possible
18446	// values are:
18447	Type *string `locationName:"type" type:"string" enum:"UserIdentityType"`
18448}
18449
18450// String returns the string representation.
18451//
18452// API parameter values that are decorated as "sensitive" in the API will not
18453// be included in the string output. The member name will be present, but the
18454// value will be replaced with "sensitive".
18455func (s UserIdentity) String() string {
18456	return awsutil.Prettify(s)
18457}
18458
18459// GoString returns the string representation.
18460//
18461// API parameter values that are decorated as "sensitive" in the API will not
18462// be included in the string output. The member name will be present, but the
18463// value will be replaced with "sensitive".
18464func (s UserIdentity) GoString() string {
18465	return s.String()
18466}
18467
18468// SetAssumedRole sets the AssumedRole field's value.
18469func (s *UserIdentity) SetAssumedRole(v *AssumedRole) *UserIdentity {
18470	s.AssumedRole = v
18471	return s
18472}
18473
18474// SetAwsAccount sets the AwsAccount field's value.
18475func (s *UserIdentity) SetAwsAccount(v *AwsAccount) *UserIdentity {
18476	s.AwsAccount = v
18477	return s
18478}
18479
18480// SetAwsService sets the AwsService field's value.
18481func (s *UserIdentity) SetAwsService(v *AwsService) *UserIdentity {
18482	s.AwsService = v
18483	return s
18484}
18485
18486// SetFederatedUser sets the FederatedUser field's value.
18487func (s *UserIdentity) SetFederatedUser(v *FederatedUser) *UserIdentity {
18488	s.FederatedUser = v
18489	return s
18490}
18491
18492// SetIamUser sets the IamUser field's value.
18493func (s *UserIdentity) SetIamUser(v *IamUser) *UserIdentity {
18494	s.IamUser = v
18495	return s
18496}
18497
18498// SetRoot sets the Root field's value.
18499func (s *UserIdentity) SetRoot(v *UserIdentityRoot) *UserIdentity {
18500	s.Root = v
18501	return s
18502}
18503
18504// SetType sets the Type field's value.
18505func (s *UserIdentity) SetType(v string) *UserIdentity {
18506	s.Type = &v
18507	return s
18508}
18509
18510// Provides information about an Amazon Web Services account and entity that
18511// performed an action on an affected resource. The action was performed using
18512// the credentials for your Amazon Web Services account.
18513type UserIdentityRoot struct {
18514	_ struct{} `type:"structure"`
18515
18516	AccountId *string `locationName:"accountId" type:"string"`
18517
18518	Arn *string `locationName:"arn" type:"string"`
18519
18520	PrincipalId *string `locationName:"principalId" type:"string"`
18521}
18522
18523// String returns the string representation.
18524//
18525// API parameter values that are decorated as "sensitive" in the API will not
18526// be included in the string output. The member name will be present, but the
18527// value will be replaced with "sensitive".
18528func (s UserIdentityRoot) String() string {
18529	return awsutil.Prettify(s)
18530}
18531
18532// GoString returns the string representation.
18533//
18534// API parameter values that are decorated as "sensitive" in the API will not
18535// be included in the string output. The member name will be present, but the
18536// value will be replaced with "sensitive".
18537func (s UserIdentityRoot) GoString() string {
18538	return s.String()
18539}
18540
18541// SetAccountId sets the AccountId field's value.
18542func (s *UserIdentityRoot) SetAccountId(v string) *UserIdentityRoot {
18543	s.AccountId = &v
18544	return s
18545}
18546
18547// SetArn sets the Arn field's value.
18548func (s *UserIdentityRoot) SetArn(v string) *UserIdentityRoot {
18549	s.Arn = &v
18550	return s
18551}
18552
18553// SetPrincipalId sets the PrincipalId field's value.
18554func (s *UserIdentityRoot) SetPrincipalId(v string) *UserIdentityRoot {
18555	s.PrincipalId = &v
18556	return s
18557}
18558
18559// Provides information about when a classification job was paused. For a one-time
18560// job, this object also specifies when the job will expire and be cancelled
18561// if it isn't resumed. For a recurring job, this object also specifies when
18562// the paused job run will expire and be cancelled if it isn't resumed. This
18563// object is present only if a job's current status (jobStatus) is USER_PAUSED.
18564// The information in this object applies only to a job that was paused while
18565// it had a status of RUNNING.
18566type UserPausedDetails struct {
18567	_ struct{} `type:"structure"`
18568
18569	JobExpiresAt *time.Time `locationName:"jobExpiresAt" type:"timestamp" timestampFormat:"iso8601"`
18570
18571	JobImminentExpirationHealthEventArn *string `locationName:"jobImminentExpirationHealthEventArn" type:"string"`
18572
18573	JobPausedAt *time.Time `locationName:"jobPausedAt" type:"timestamp" timestampFormat:"iso8601"`
18574}
18575
18576// String returns the string representation.
18577//
18578// API parameter values that are decorated as "sensitive" in the API will not
18579// be included in the string output. The member name will be present, but the
18580// value will be replaced with "sensitive".
18581func (s UserPausedDetails) String() string {
18582	return awsutil.Prettify(s)
18583}
18584
18585// GoString returns the string representation.
18586//
18587// API parameter values that are decorated as "sensitive" in the API will not
18588// be included in the string output. The member name will be present, but the
18589// value will be replaced with "sensitive".
18590func (s UserPausedDetails) GoString() string {
18591	return s.String()
18592}
18593
18594// SetJobExpiresAt sets the JobExpiresAt field's value.
18595func (s *UserPausedDetails) SetJobExpiresAt(v time.Time) *UserPausedDetails {
18596	s.JobExpiresAt = &v
18597	return s
18598}
18599
18600// SetJobImminentExpirationHealthEventArn sets the JobImminentExpirationHealthEventArn field's value.
18601func (s *UserPausedDetails) SetJobImminentExpirationHealthEventArn(v string) *UserPausedDetails {
18602	s.JobImminentExpirationHealthEventArn = &v
18603	return s
18604}
18605
18606// SetJobPausedAt sets the JobPausedAt field's value.
18607func (s *UserPausedDetails) SetJobPausedAt(v time.Time) *UserPausedDetails {
18608	s.JobPausedAt = &v
18609	return s
18610}
18611
18612// Provides information about an error that occurred due to a syntax error in
18613// a request.
18614type ValidationException struct {
18615	_            struct{}                  `type:"structure"`
18616	RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"`
18617
18618	Message_ *string `locationName:"message" type:"string"`
18619}
18620
18621// String returns the string representation.
18622//
18623// API parameter values that are decorated as "sensitive" in the API will not
18624// be included in the string output. The member name will be present, but the
18625// value will be replaced with "sensitive".
18626func (s ValidationException) String() string {
18627	return awsutil.Prettify(s)
18628}
18629
18630// GoString returns the string representation.
18631//
18632// API parameter values that are decorated as "sensitive" in the API will not
18633// be included in the string output. The member name will be present, but the
18634// value will be replaced with "sensitive".
18635func (s ValidationException) GoString() string {
18636	return s.String()
18637}
18638
18639func newErrorValidationException(v protocol.ResponseMetadata) error {
18640	return &ValidationException{
18641		RespMetadata: v,
18642	}
18643}
18644
18645// Code returns the exception type name.
18646func (s *ValidationException) Code() string {
18647	return "ValidationException"
18648}
18649
18650// Message returns the exception's message.
18651func (s *ValidationException) Message() string {
18652	if s.Message_ != nil {
18653		return *s.Message_
18654	}
18655	return ""
18656}
18657
18658// OrigErr always returns nil, satisfies awserr.Error interface.
18659func (s *ValidationException) OrigErr() error {
18660	return nil
18661}
18662
18663func (s *ValidationException) Error() string {
18664	return fmt.Sprintf("%s: %s", s.Code(), s.Message())
18665}
18666
18667// Status code returns the HTTP status code for the request's response error.
18668func (s *ValidationException) StatusCode() int {
18669	return s.RespMetadata.StatusCode
18670}
18671
18672// RequestID returns the service's response RequestID for request.
18673func (s *ValidationException) RequestID() string {
18674	return s.RespMetadata.RequestID
18675}
18676
18677// Specifies a weekly recurrence pattern for running a classification job.
18678type WeeklySchedule struct {
18679	_ struct{} `type:"structure"`
18680
18681	DayOfWeek *string `locationName:"dayOfWeek" type:"string" enum:"DayOfWeek"`
18682}
18683
18684// String returns the string representation.
18685//
18686// API parameter values that are decorated as "sensitive" in the API will not
18687// be included in the string output. The member name will be present, but the
18688// value will be replaced with "sensitive".
18689func (s WeeklySchedule) String() string {
18690	return awsutil.Prettify(s)
18691}
18692
18693// GoString returns the string representation.
18694//
18695// API parameter values that are decorated as "sensitive" in the API will not
18696// be included in the string output. The member name will be present, but the
18697// value will be replaced with "sensitive".
18698func (s WeeklySchedule) GoString() string {
18699	return s.String()
18700}
18701
18702// SetDayOfWeek sets the DayOfWeek field's value.
18703func (s *WeeklySchedule) SetDayOfWeek(v string) *WeeklySchedule {
18704	s.DayOfWeek = &v
18705	return s
18706}
18707
18708// The current status of an account as the delegated Amazon Macie administrator
18709// account for an Amazon Web Services organization. Possible values are:
18710const (
18711	// AdminStatusEnabled is a AdminStatus enum value
18712	AdminStatusEnabled = "ENABLED"
18713
18714	// AdminStatusDisablingInProgress is a AdminStatus enum value
18715	AdminStatusDisablingInProgress = "DISABLING_IN_PROGRESS"
18716)
18717
18718// AdminStatus_Values returns all elements of the AdminStatus enum
18719func AdminStatus_Values() []string {
18720	return []string{
18721		AdminStatusEnabled,
18722		AdminStatusDisablingInProgress,
18723	}
18724}
18725
18726const (
18727	// AllowsUnencryptedObjectUploadsTrue is a AllowsUnencryptedObjectUploads enum value
18728	AllowsUnencryptedObjectUploadsTrue = "TRUE"
18729
18730	// AllowsUnencryptedObjectUploadsFalse is a AllowsUnencryptedObjectUploads enum value
18731	AllowsUnencryptedObjectUploadsFalse = "FALSE"
18732
18733	// AllowsUnencryptedObjectUploadsUnknown is a AllowsUnencryptedObjectUploads enum value
18734	AllowsUnencryptedObjectUploadsUnknown = "UNKNOWN"
18735)
18736
18737// AllowsUnencryptedObjectUploads_Values returns all elements of the AllowsUnencryptedObjectUploads enum
18738func AllowsUnencryptedObjectUploads_Values() []string {
18739	return []string{
18740		AllowsUnencryptedObjectUploadsTrue,
18741		AllowsUnencryptedObjectUploadsFalse,
18742		AllowsUnencryptedObjectUploadsUnknown,
18743	}
18744}
18745
18746// The error code for an error that prevented Amazon Macie from retrieving and
18747// processing information about an S3 bucket and the bucket's objects.
18748const (
18749	// BucketMetadataErrorCodeAccessDenied is a BucketMetadataErrorCode enum value
18750	BucketMetadataErrorCodeAccessDenied = "ACCESS_DENIED"
18751)
18752
18753// BucketMetadataErrorCode_Values returns all elements of the BucketMetadataErrorCode enum
18754func BucketMetadataErrorCode_Values() []string {
18755	return []string{
18756		BucketMetadataErrorCodeAccessDenied,
18757	}
18758}
18759
18760// The type of currency that the data for an Amazon Macie usage metric is reported
18761// in. Possible values are:
18762const (
18763	// CurrencyUsd is a Currency enum value
18764	CurrencyUsd = "USD"
18765)
18766
18767// Currency_Values returns all elements of the Currency enum
18768func Currency_Values() []string {
18769	return []string{
18770		CurrencyUsd,
18771	}
18772}
18773
18774// The severity of a finding, ranging from LOW, for least severe, to HIGH, for
18775// most severe. Valid values are:
18776const (
18777	// DataIdentifierSeverityLow is a DataIdentifierSeverity enum value
18778	DataIdentifierSeverityLow = "LOW"
18779
18780	// DataIdentifierSeverityMedium is a DataIdentifierSeverity enum value
18781	DataIdentifierSeverityMedium = "MEDIUM"
18782
18783	// DataIdentifierSeverityHigh is a DataIdentifierSeverity enum value
18784	DataIdentifierSeverityHigh = "HIGH"
18785)
18786
18787// DataIdentifierSeverity_Values returns all elements of the DataIdentifierSeverity enum
18788func DataIdentifierSeverity_Values() []string {
18789	return []string{
18790		DataIdentifierSeverityLow,
18791		DataIdentifierSeverityMedium,
18792		DataIdentifierSeverityHigh,
18793	}
18794}
18795
18796const (
18797	// DayOfWeekSunday is a DayOfWeek enum value
18798	DayOfWeekSunday = "SUNDAY"
18799
18800	// DayOfWeekMonday is a DayOfWeek enum value
18801	DayOfWeekMonday = "MONDAY"
18802
18803	// DayOfWeekTuesday is a DayOfWeek enum value
18804	DayOfWeekTuesday = "TUESDAY"
18805
18806	// DayOfWeekWednesday is a DayOfWeek enum value
18807	DayOfWeekWednesday = "WEDNESDAY"
18808
18809	// DayOfWeekThursday is a DayOfWeek enum value
18810	DayOfWeekThursday = "THURSDAY"
18811
18812	// DayOfWeekFriday is a DayOfWeek enum value
18813	DayOfWeekFriday = "FRIDAY"
18814
18815	// DayOfWeekSaturday is a DayOfWeek enum value
18816	DayOfWeekSaturday = "SATURDAY"
18817)
18818
18819// DayOfWeek_Values returns all elements of the DayOfWeek enum
18820func DayOfWeek_Values() []string {
18821	return []string{
18822		DayOfWeekSunday,
18823		DayOfWeekMonday,
18824		DayOfWeekTuesday,
18825		DayOfWeekWednesday,
18826		DayOfWeekThursday,
18827		DayOfWeekFriday,
18828		DayOfWeekSaturday,
18829	}
18830}
18831
18832const (
18833	// EffectivePermissionPublic is a EffectivePermission enum value
18834	EffectivePermissionPublic = "PUBLIC"
18835
18836	// EffectivePermissionNotPublic is a EffectivePermission enum value
18837	EffectivePermissionNotPublic = "NOT_PUBLIC"
18838
18839	// EffectivePermissionUnknown is a EffectivePermission enum value
18840	EffectivePermissionUnknown = "UNKNOWN"
18841)
18842
18843// EffectivePermission_Values returns all elements of the EffectivePermission enum
18844func EffectivePermission_Values() []string {
18845	return []string{
18846		EffectivePermissionPublic,
18847		EffectivePermissionNotPublic,
18848		EffectivePermissionUnknown,
18849	}
18850}
18851
18852// The type of server-side encryption that's used to encrypt an S3 object or
18853// objects in an S3 bucket. Valid values are:
18854const (
18855	// EncryptionTypeNone is a EncryptionType enum value
18856	EncryptionTypeNone = "NONE"
18857
18858	// EncryptionTypeAes256 is a EncryptionType enum value
18859	EncryptionTypeAes256 = "AES256"
18860
18861	// EncryptionTypeAwsKms is a EncryptionType enum value
18862	EncryptionTypeAwsKms = "aws:kms"
18863
18864	// EncryptionTypeUnknown is a EncryptionType enum value
18865	EncryptionTypeUnknown = "UNKNOWN"
18866)
18867
18868// EncryptionType_Values returns all elements of the EncryptionType enum
18869func EncryptionType_Values() []string {
18870	return []string{
18871		EncryptionTypeNone,
18872		EncryptionTypeAes256,
18873		EncryptionTypeAwsKms,
18874		EncryptionTypeUnknown,
18875	}
18876}
18877
18878// The source of an issue or delay. Possible values are:
18879const (
18880	// ErrorCodeClientError is a ErrorCode enum value
18881	ErrorCodeClientError = "ClientError"
18882
18883	// ErrorCodeInternalError is a ErrorCode enum value
18884	ErrorCodeInternalError = "InternalError"
18885)
18886
18887// ErrorCode_Values returns all elements of the ErrorCode enum
18888func ErrorCode_Values() []string {
18889	return []string{
18890		ErrorCodeClientError,
18891		ErrorCodeInternalError,
18892	}
18893}
18894
18895// The type of action that occurred for the resource and produced the policy
18896// finding:
18897const (
18898	// FindingActionTypeAwsApiCall is a FindingActionType enum value
18899	FindingActionTypeAwsApiCall = "AWS_API_CALL"
18900)
18901
18902// FindingActionType_Values returns all elements of the FindingActionType enum
18903func FindingActionType_Values() []string {
18904	return []string{
18905		FindingActionTypeAwsApiCall,
18906	}
18907}
18908
18909// The category of the finding. Valid values are:
18910const (
18911	// FindingCategoryClassification is a FindingCategory enum value
18912	FindingCategoryClassification = "CLASSIFICATION"
18913
18914	// FindingCategoryPolicy is a FindingCategory enum value
18915	FindingCategoryPolicy = "POLICY"
18916)
18917
18918// FindingCategory_Values returns all elements of the FindingCategory enum
18919func FindingCategory_Values() []string {
18920	return []string{
18921		FindingCategoryClassification,
18922		FindingCategoryPolicy,
18923	}
18924}
18925
18926// The frequency with which Amazon Macie publishes updates to policy findings
18927// for an account. This includes publishing updates to Security Hub and Amazon
18928// EventBridge (formerly called Amazon CloudWatch Events). For more information,
18929// see Monitoring and processing findings (https://docs.aws.amazon.com/macie/latest/user/findings-monitor.html)
18930// in the Amazon Macie User Guide. Valid values are:
18931const (
18932	// FindingPublishingFrequencyFifteenMinutes is a FindingPublishingFrequency enum value
18933	FindingPublishingFrequencyFifteenMinutes = "FIFTEEN_MINUTES"
18934
18935	// FindingPublishingFrequencyOneHour is a FindingPublishingFrequency enum value
18936	FindingPublishingFrequencyOneHour = "ONE_HOUR"
18937
18938	// FindingPublishingFrequencySixHours is a FindingPublishingFrequency enum value
18939	FindingPublishingFrequencySixHours = "SIX_HOURS"
18940)
18941
18942// FindingPublishingFrequency_Values returns all elements of the FindingPublishingFrequency enum
18943func FindingPublishingFrequency_Values() []string {
18944	return []string{
18945		FindingPublishingFrequencyFifteenMinutes,
18946		FindingPublishingFrequencyOneHour,
18947		FindingPublishingFrequencySixHours,
18948	}
18949}
18950
18951// The grouping to sort the results by. Valid values are:
18952const (
18953	// FindingStatisticsSortAttributeNameGroupKey is a FindingStatisticsSortAttributeName enum value
18954	FindingStatisticsSortAttributeNameGroupKey = "groupKey"
18955
18956	// FindingStatisticsSortAttributeNameCount is a FindingStatisticsSortAttributeName enum value
18957	FindingStatisticsSortAttributeNameCount = "count"
18958)
18959
18960// FindingStatisticsSortAttributeName_Values returns all elements of the FindingStatisticsSortAttributeName enum
18961func FindingStatisticsSortAttributeName_Values() []string {
18962	return []string{
18963		FindingStatisticsSortAttributeNameGroupKey,
18964		FindingStatisticsSortAttributeNameCount,
18965	}
18966}
18967
18968// The type of finding. For details about each type, see Types of Amazon Macie
18969// findings (https://docs.aws.amazon.com/macie/latest/user/findings-types.html)
18970// in the Amazon Macie User Guide. Valid values are:
18971const (
18972	// FindingTypeSensitiveDataS3objectMultiple is a FindingType enum value
18973	FindingTypeSensitiveDataS3objectMultiple = "SensitiveData:S3Object/Multiple"
18974
18975	// FindingTypeSensitiveDataS3objectFinancial is a FindingType enum value
18976	FindingTypeSensitiveDataS3objectFinancial = "SensitiveData:S3Object/Financial"
18977
18978	// FindingTypeSensitiveDataS3objectPersonal is a FindingType enum value
18979	FindingTypeSensitiveDataS3objectPersonal = "SensitiveData:S3Object/Personal"
18980
18981	// FindingTypeSensitiveDataS3objectCredentials is a FindingType enum value
18982	FindingTypeSensitiveDataS3objectCredentials = "SensitiveData:S3Object/Credentials"
18983
18984	// FindingTypeSensitiveDataS3objectCustomIdentifier is a FindingType enum value
18985	FindingTypeSensitiveDataS3objectCustomIdentifier = "SensitiveData:S3Object/CustomIdentifier"
18986
18987	// FindingTypePolicyIamuserS3bucketPublic is a FindingType enum value
18988	FindingTypePolicyIamuserS3bucketPublic = "Policy:IAMUser/S3BucketPublic"
18989
18990	// FindingTypePolicyIamuserS3bucketSharedExternally is a FindingType enum value
18991	FindingTypePolicyIamuserS3bucketSharedExternally = "Policy:IAMUser/S3BucketSharedExternally"
18992
18993	// FindingTypePolicyIamuserS3bucketReplicatedExternally is a FindingType enum value
18994	FindingTypePolicyIamuserS3bucketReplicatedExternally = "Policy:IAMUser/S3BucketReplicatedExternally"
18995
18996	// FindingTypePolicyIamuserS3bucketEncryptionDisabled is a FindingType enum value
18997	FindingTypePolicyIamuserS3bucketEncryptionDisabled = "Policy:IAMUser/S3BucketEncryptionDisabled"
18998
18999	// FindingTypePolicyIamuserS3blockPublicAccessDisabled is a FindingType enum value
19000	FindingTypePolicyIamuserS3blockPublicAccessDisabled = "Policy:IAMUser/S3BlockPublicAccessDisabled"
19001)
19002
19003// FindingType_Values returns all elements of the FindingType enum
19004func FindingType_Values() []string {
19005	return []string{
19006		FindingTypeSensitiveDataS3objectMultiple,
19007		FindingTypeSensitiveDataS3objectFinancial,
19008		FindingTypeSensitiveDataS3objectPersonal,
19009		FindingTypeSensitiveDataS3objectCredentials,
19010		FindingTypeSensitiveDataS3objectCustomIdentifier,
19011		FindingTypePolicyIamuserS3bucketPublic,
19012		FindingTypePolicyIamuserS3bucketSharedExternally,
19013		FindingTypePolicyIamuserS3bucketReplicatedExternally,
19014		FindingTypePolicyIamuserS3bucketEncryptionDisabled,
19015		FindingTypePolicyIamuserS3blockPublicAccessDisabled,
19016	}
19017}
19018
19019// The action to perform on findings that meet the filter criteria. To suppress
19020// (automatically archive) findings that meet the criteria, set this value to
19021// ARCHIVE. Valid values are:
19022const (
19023	// FindingsFilterActionArchive is a FindingsFilterAction enum value
19024	FindingsFilterActionArchive = "ARCHIVE"
19025
19026	// FindingsFilterActionNoop is a FindingsFilterAction enum value
19027	FindingsFilterActionNoop = "NOOP"
19028)
19029
19030// FindingsFilterAction_Values returns all elements of the FindingsFilterAction enum
19031func FindingsFilterAction_Values() []string {
19032	return []string{
19033		FindingsFilterActionArchive,
19034		FindingsFilterActionNoop,
19035	}
19036}
19037
19038const (
19039	// GroupByResourcesAffectedS3bucketName is a GroupBy enum value
19040	GroupByResourcesAffectedS3bucketName = "resourcesAffected.s3Bucket.name"
19041
19042	// GroupByType is a GroupBy enum value
19043	GroupByType = "type"
19044
19045	// GroupByClassificationDetailsJobId is a GroupBy enum value
19046	GroupByClassificationDetailsJobId = "classificationDetails.jobId"
19047
19048	// GroupBySeverityDescription is a GroupBy enum value
19049	GroupBySeverityDescription = "severity.description"
19050)
19051
19052// GroupBy_Values returns all elements of the GroupBy enum
19053func GroupBy_Values() []string {
19054	return []string{
19055		GroupByResourcesAffectedS3bucketName,
19056		GroupByType,
19057		GroupByClassificationDetailsJobId,
19058		GroupBySeverityDescription,
19059	}
19060}
19061
19062const (
19063	// IsDefinedInJobTrue is a IsDefinedInJob enum value
19064	IsDefinedInJobTrue = "TRUE"
19065
19066	// IsDefinedInJobFalse is a IsDefinedInJob enum value
19067	IsDefinedInJobFalse = "FALSE"
19068
19069	// IsDefinedInJobUnknown is a IsDefinedInJob enum value
19070	IsDefinedInJobUnknown = "UNKNOWN"
19071)
19072
19073// IsDefinedInJob_Values returns all elements of the IsDefinedInJob enum
19074func IsDefinedInJob_Values() []string {
19075	return []string{
19076		IsDefinedInJobTrue,
19077		IsDefinedInJobFalse,
19078		IsDefinedInJobUnknown,
19079	}
19080}
19081
19082const (
19083	// IsMonitoredByJobTrue is a IsMonitoredByJob enum value
19084	IsMonitoredByJobTrue = "TRUE"
19085
19086	// IsMonitoredByJobFalse is a IsMonitoredByJob enum value
19087	IsMonitoredByJobFalse = "FALSE"
19088
19089	// IsMonitoredByJobUnknown is a IsMonitoredByJob enum value
19090	IsMonitoredByJobUnknown = "UNKNOWN"
19091)
19092
19093// IsMonitoredByJob_Values returns all elements of the IsMonitoredByJob enum
19094func IsMonitoredByJob_Values() []string {
19095	return []string{
19096		IsMonitoredByJobTrue,
19097		IsMonitoredByJobFalse,
19098		IsMonitoredByJobUnknown,
19099	}
19100}
19101
19102// The operator to use in a condition. Valid values are:
19103const (
19104	// JobComparatorEq is a JobComparator enum value
19105	JobComparatorEq = "EQ"
19106
19107	// JobComparatorGt is a JobComparator enum value
19108	JobComparatorGt = "GT"
19109
19110	// JobComparatorGte is a JobComparator enum value
19111	JobComparatorGte = "GTE"
19112
19113	// JobComparatorLt is a JobComparator enum value
19114	JobComparatorLt = "LT"
19115
19116	// JobComparatorLte is a JobComparator enum value
19117	JobComparatorLte = "LTE"
19118
19119	// JobComparatorNe is a JobComparator enum value
19120	JobComparatorNe = "NE"
19121
19122	// JobComparatorContains is a JobComparator enum value
19123	JobComparatorContains = "CONTAINS"
19124
19125	// JobComparatorStartsWith is a JobComparator enum value
19126	JobComparatorStartsWith = "STARTS_WITH"
19127)
19128
19129// JobComparator_Values returns all elements of the JobComparator enum
19130func JobComparator_Values() []string {
19131	return []string{
19132		JobComparatorEq,
19133		JobComparatorGt,
19134		JobComparatorGte,
19135		JobComparatorLt,
19136		JobComparatorLte,
19137		JobComparatorNe,
19138		JobComparatorContains,
19139		JobComparatorStartsWith,
19140	}
19141}
19142
19143// The status of a classification job. Possible values are:
19144const (
19145	// JobStatusRunning is a JobStatus enum value
19146	JobStatusRunning = "RUNNING"
19147
19148	// JobStatusPaused is a JobStatus enum value
19149	JobStatusPaused = "PAUSED"
19150
19151	// JobStatusCancelled is a JobStatus enum value
19152	JobStatusCancelled = "CANCELLED"
19153
19154	// JobStatusComplete is a JobStatus enum value
19155	JobStatusComplete = "COMPLETE"
19156
19157	// JobStatusIdle is a JobStatus enum value
19158	JobStatusIdle = "IDLE"
19159
19160	// JobStatusUserPaused is a JobStatus enum value
19161	JobStatusUserPaused = "USER_PAUSED"
19162)
19163
19164// JobStatus_Values returns all elements of the JobStatus enum
19165func JobStatus_Values() []string {
19166	return []string{
19167		JobStatusRunning,
19168		JobStatusPaused,
19169		JobStatusCancelled,
19170		JobStatusComplete,
19171		JobStatusIdle,
19172		JobStatusUserPaused,
19173	}
19174}
19175
19176// The schedule for running a classification job. Valid values are:
19177const (
19178	// JobTypeOneTime is a JobType enum value
19179	JobTypeOneTime = "ONE_TIME"
19180
19181	// JobTypeScheduled is a JobType enum value
19182	JobTypeScheduled = "SCHEDULED"
19183)
19184
19185// JobType_Values returns all elements of the JobType enum
19186func JobType_Values() []string {
19187	return []string{
19188		JobTypeOneTime,
19189		JobTypeScheduled,
19190	}
19191}
19192
19193// Specifies whether any account- or bucket-level access errors occurred during
19194// the run of a one-time classification job or the most recent run of a recurring
19195// classification job. Possible values are:
19196const (
19197	// LastRunErrorStatusCodeNone is a LastRunErrorStatusCode enum value
19198	LastRunErrorStatusCodeNone = "NONE"
19199
19200	// LastRunErrorStatusCodeError is a LastRunErrorStatusCode enum value
19201	LastRunErrorStatusCodeError = "ERROR"
19202)
19203
19204// LastRunErrorStatusCode_Values returns all elements of the LastRunErrorStatusCode enum
19205func LastRunErrorStatusCode_Values() []string {
19206	return []string{
19207		LastRunErrorStatusCodeNone,
19208		LastRunErrorStatusCodeError,
19209	}
19210}
19211
19212// The property to use to filter the results. Valid values are:
19213const (
19214	// ListJobsFilterKeyJobType is a ListJobsFilterKey enum value
19215	ListJobsFilterKeyJobType = "jobType"
19216
19217	// ListJobsFilterKeyJobStatus is a ListJobsFilterKey enum value
19218	ListJobsFilterKeyJobStatus = "jobStatus"
19219
19220	// ListJobsFilterKeyCreatedAt is a ListJobsFilterKey enum value
19221	ListJobsFilterKeyCreatedAt = "createdAt"
19222
19223	// ListJobsFilterKeyName is a ListJobsFilterKey enum value
19224	ListJobsFilterKeyName = "name"
19225)
19226
19227// ListJobsFilterKey_Values returns all elements of the ListJobsFilterKey enum
19228func ListJobsFilterKey_Values() []string {
19229	return []string{
19230		ListJobsFilterKeyJobType,
19231		ListJobsFilterKeyJobStatus,
19232		ListJobsFilterKeyCreatedAt,
19233		ListJobsFilterKeyName,
19234	}
19235}
19236
19237// The property to sort the results by. Valid values are:
19238const (
19239	// ListJobsSortAttributeNameCreatedAt is a ListJobsSortAttributeName enum value
19240	ListJobsSortAttributeNameCreatedAt = "createdAt"
19241
19242	// ListJobsSortAttributeNameJobStatus is a ListJobsSortAttributeName enum value
19243	ListJobsSortAttributeNameJobStatus = "jobStatus"
19244
19245	// ListJobsSortAttributeNameName is a ListJobsSortAttributeName enum value
19246	ListJobsSortAttributeNameName = "name"
19247
19248	// ListJobsSortAttributeNameJobType is a ListJobsSortAttributeName enum value
19249	ListJobsSortAttributeNameJobType = "jobType"
19250)
19251
19252// ListJobsSortAttributeName_Values returns all elements of the ListJobsSortAttributeName enum
19253func ListJobsSortAttributeName_Values() []string {
19254	return []string{
19255		ListJobsSortAttributeNameCreatedAt,
19256		ListJobsSortAttributeNameJobStatus,
19257		ListJobsSortAttributeNameName,
19258		ListJobsSortAttributeNameJobType,
19259	}
19260}
19261
19262// The status of an Amazon Macie account. Valid values are:
19263const (
19264	// MacieStatusPaused is a MacieStatus enum value
19265	MacieStatusPaused = "PAUSED"
19266
19267	// MacieStatusEnabled is a MacieStatus enum value
19268	MacieStatusEnabled = "ENABLED"
19269)
19270
19271// MacieStatus_Values returns all elements of the MacieStatus enum
19272func MacieStatus_Values() []string {
19273	return []string{
19274		MacieStatusPaused,
19275		MacieStatusEnabled,
19276	}
19277}
19278
19279// The selection type that determines which managed data identifiers a classification
19280// job uses to analyze data. Valid values are:
19281const (
19282	// ManagedDataIdentifierSelectorAll is a ManagedDataIdentifierSelector enum value
19283	ManagedDataIdentifierSelectorAll = "ALL"
19284
19285	// ManagedDataIdentifierSelectorExclude is a ManagedDataIdentifierSelector enum value
19286	ManagedDataIdentifierSelectorExclude = "EXCLUDE"
19287
19288	// ManagedDataIdentifierSelectorInclude is a ManagedDataIdentifierSelector enum value
19289	ManagedDataIdentifierSelectorInclude = "INCLUDE"
19290
19291	// ManagedDataIdentifierSelectorNone is a ManagedDataIdentifierSelector enum value
19292	ManagedDataIdentifierSelectorNone = "NONE"
19293)
19294
19295// ManagedDataIdentifierSelector_Values returns all elements of the ManagedDataIdentifierSelector enum
19296func ManagedDataIdentifierSelector_Values() []string {
19297	return []string{
19298		ManagedDataIdentifierSelectorAll,
19299		ManagedDataIdentifierSelectorExclude,
19300		ManagedDataIdentifierSelectorInclude,
19301		ManagedDataIdentifierSelectorNone,
19302	}
19303}
19304
19305const (
19306	// OrderByAsc is a OrderBy enum value
19307	OrderByAsc = "ASC"
19308
19309	// OrderByDesc is a OrderBy enum value
19310	OrderByDesc = "DESC"
19311)
19312
19313// OrderBy_Values returns all elements of the OrderBy enum
19314func OrderBy_Values() []string {
19315	return []string{
19316		OrderByAsc,
19317		OrderByDesc,
19318	}
19319}
19320
19321// The current status of the relationship between an account and an associated
19322// Amazon Macie administrator account (inviter account). Possible values are:
19323const (
19324	// RelationshipStatusEnabled is a RelationshipStatus enum value
19325	RelationshipStatusEnabled = "Enabled"
19326
19327	// RelationshipStatusPaused is a RelationshipStatus enum value
19328	RelationshipStatusPaused = "Paused"
19329
19330	// RelationshipStatusInvited is a RelationshipStatus enum value
19331	RelationshipStatusInvited = "Invited"
19332
19333	// RelationshipStatusCreated is a RelationshipStatus enum value
19334	RelationshipStatusCreated = "Created"
19335
19336	// RelationshipStatusRemoved is a RelationshipStatus enum value
19337	RelationshipStatusRemoved = "Removed"
19338
19339	// RelationshipStatusResigned is a RelationshipStatus enum value
19340	RelationshipStatusResigned = "Resigned"
19341
19342	// RelationshipStatusEmailVerificationInProgress is a RelationshipStatus enum value
19343	RelationshipStatusEmailVerificationInProgress = "EmailVerificationInProgress"
19344
19345	// RelationshipStatusEmailVerificationFailed is a RelationshipStatus enum value
19346	RelationshipStatusEmailVerificationFailed = "EmailVerificationFailed"
19347
19348	// RelationshipStatusRegionDisabled is a RelationshipStatus enum value
19349	RelationshipStatusRegionDisabled = "RegionDisabled"
19350
19351	// RelationshipStatusAccountSuspended is a RelationshipStatus enum value
19352	RelationshipStatusAccountSuspended = "AccountSuspended"
19353)
19354
19355// RelationshipStatus_Values returns all elements of the RelationshipStatus enum
19356func RelationshipStatus_Values() []string {
19357	return []string{
19358		RelationshipStatusEnabled,
19359		RelationshipStatusPaused,
19360		RelationshipStatusInvited,
19361		RelationshipStatusCreated,
19362		RelationshipStatusRemoved,
19363		RelationshipStatusResigned,
19364		RelationshipStatusEmailVerificationInProgress,
19365		RelationshipStatusEmailVerificationFailed,
19366		RelationshipStatusRegionDisabled,
19367		RelationshipStatusAccountSuspended,
19368	}
19369}
19370
19371// The property to use in a condition that determines whether an S3 object is
19372// included or excluded from a classification job. Valid values are:
19373const (
19374	// ScopeFilterKeyObjectExtension is a ScopeFilterKey enum value
19375	ScopeFilterKeyObjectExtension = "OBJECT_EXTENSION"
19376
19377	// ScopeFilterKeyObjectLastModifiedDate is a ScopeFilterKey enum value
19378	ScopeFilterKeyObjectLastModifiedDate = "OBJECT_LAST_MODIFIED_DATE"
19379
19380	// ScopeFilterKeyObjectSize is a ScopeFilterKey enum value
19381	ScopeFilterKeyObjectSize = "OBJECT_SIZE"
19382
19383	// ScopeFilterKeyObjectKey is a ScopeFilterKey enum value
19384	ScopeFilterKeyObjectKey = "OBJECT_KEY"
19385)
19386
19387// ScopeFilterKey_Values returns all elements of the ScopeFilterKey enum
19388func ScopeFilterKey_Values() []string {
19389	return []string{
19390		ScopeFilterKeyObjectExtension,
19391		ScopeFilterKeyObjectLastModifiedDate,
19392		ScopeFilterKeyObjectSize,
19393		ScopeFilterKeyObjectKey,
19394	}
19395}
19396
19397// The operator to use in a condition that filters the results of a query. Valid
19398// values are:
19399const (
19400	// SearchResourcesComparatorEq is a SearchResourcesComparator enum value
19401	SearchResourcesComparatorEq = "EQ"
19402
19403	// SearchResourcesComparatorNe is a SearchResourcesComparator enum value
19404	SearchResourcesComparatorNe = "NE"
19405)
19406
19407// SearchResourcesComparator_Values returns all elements of the SearchResourcesComparator enum
19408func SearchResourcesComparator_Values() []string {
19409	return []string{
19410		SearchResourcesComparatorEq,
19411		SearchResourcesComparatorNe,
19412	}
19413}
19414
19415// The property to use in a condition that filters the query results. Valid
19416// values are:
19417const (
19418	// SearchResourcesSimpleCriterionKeyAccountId is a SearchResourcesSimpleCriterionKey enum value
19419	SearchResourcesSimpleCriterionKeyAccountId = "ACCOUNT_ID"
19420
19421	// SearchResourcesSimpleCriterionKeyS3BucketName is a SearchResourcesSimpleCriterionKey enum value
19422	SearchResourcesSimpleCriterionKeyS3BucketName = "S3_BUCKET_NAME"
19423
19424	// SearchResourcesSimpleCriterionKeyS3BucketEffectivePermission is a SearchResourcesSimpleCriterionKey enum value
19425	SearchResourcesSimpleCriterionKeyS3BucketEffectivePermission = "S3_BUCKET_EFFECTIVE_PERMISSION"
19426
19427	// SearchResourcesSimpleCriterionKeyS3BucketSharedAccess is a SearchResourcesSimpleCriterionKey enum value
19428	SearchResourcesSimpleCriterionKeyS3BucketSharedAccess = "S3_BUCKET_SHARED_ACCESS"
19429)
19430
19431// SearchResourcesSimpleCriterionKey_Values returns all elements of the SearchResourcesSimpleCriterionKey enum
19432func SearchResourcesSimpleCriterionKey_Values() []string {
19433	return []string{
19434		SearchResourcesSimpleCriterionKeyAccountId,
19435		SearchResourcesSimpleCriterionKeyS3BucketName,
19436		SearchResourcesSimpleCriterionKeyS3BucketEffectivePermission,
19437		SearchResourcesSimpleCriterionKeyS3BucketSharedAccess,
19438	}
19439}
19440
19441// The property to sort the query results by. Valid values are:
19442const (
19443	// SearchResourcesSortAttributeNameAccountId is a SearchResourcesSortAttributeName enum value
19444	SearchResourcesSortAttributeNameAccountId = "ACCOUNT_ID"
19445
19446	// SearchResourcesSortAttributeNameResourceName is a SearchResourcesSortAttributeName enum value
19447	SearchResourcesSortAttributeNameResourceName = "RESOURCE_NAME"
19448
19449	// SearchResourcesSortAttributeNameS3ClassifiableObjectCount is a SearchResourcesSortAttributeName enum value
19450	SearchResourcesSortAttributeNameS3ClassifiableObjectCount = "S3_CLASSIFIABLE_OBJECT_COUNT"
19451
19452	// SearchResourcesSortAttributeNameS3ClassifiableSizeInBytes is a SearchResourcesSortAttributeName enum value
19453	SearchResourcesSortAttributeNameS3ClassifiableSizeInBytes = "S3_CLASSIFIABLE_SIZE_IN_BYTES"
19454)
19455
19456// SearchResourcesSortAttributeName_Values returns all elements of the SearchResourcesSortAttributeName enum
19457func SearchResourcesSortAttributeName_Values() []string {
19458	return []string{
19459		SearchResourcesSortAttributeNameAccountId,
19460		SearchResourcesSortAttributeNameResourceName,
19461		SearchResourcesSortAttributeNameS3ClassifiableObjectCount,
19462		SearchResourcesSortAttributeNameS3ClassifiableSizeInBytes,
19463	}
19464}
19465
19466// For a finding, the category of sensitive data that was detected and produced
19467// the finding. For a managed data identifier, the category of sensitive data
19468// that the managed data identifier detects. Possible values are:
19469const (
19470	// SensitiveDataItemCategoryFinancialInformation is a SensitiveDataItemCategory enum value
19471	SensitiveDataItemCategoryFinancialInformation = "FINANCIAL_INFORMATION"
19472
19473	// SensitiveDataItemCategoryPersonalInformation is a SensitiveDataItemCategory enum value
19474	SensitiveDataItemCategoryPersonalInformation = "PERSONAL_INFORMATION"
19475
19476	// SensitiveDataItemCategoryCredentials is a SensitiveDataItemCategory enum value
19477	SensitiveDataItemCategoryCredentials = "CREDENTIALS"
19478
19479	// SensitiveDataItemCategoryCustomIdentifier is a SensitiveDataItemCategory enum value
19480	SensitiveDataItemCategoryCustomIdentifier = "CUSTOM_IDENTIFIER"
19481)
19482
19483// SensitiveDataItemCategory_Values returns all elements of the SensitiveDataItemCategory enum
19484func SensitiveDataItemCategory_Values() []string {
19485	return []string{
19486		SensitiveDataItemCategoryFinancialInformation,
19487		SensitiveDataItemCategoryPersonalInformation,
19488		SensitiveDataItemCategoryCredentials,
19489		SensitiveDataItemCategoryCustomIdentifier,
19490	}
19491}
19492
19493// The qualitative representation of the finding's severity. Possible values
19494// are:
19495const (
19496	// SeverityDescriptionLow is a SeverityDescription enum value
19497	SeverityDescriptionLow = "Low"
19498
19499	// SeverityDescriptionMedium is a SeverityDescription enum value
19500	SeverityDescriptionMedium = "Medium"
19501
19502	// SeverityDescriptionHigh is a SeverityDescription enum value
19503	SeverityDescriptionHigh = "High"
19504)
19505
19506// SeverityDescription_Values returns all elements of the SeverityDescription enum
19507func SeverityDescription_Values() []string {
19508	return []string{
19509		SeverityDescriptionLow,
19510		SeverityDescriptionMedium,
19511		SeverityDescriptionHigh,
19512	}
19513}
19514
19515const (
19516	// SharedAccessExternal is a SharedAccess enum value
19517	SharedAccessExternal = "EXTERNAL"
19518
19519	// SharedAccessInternal is a SharedAccess enum value
19520	SharedAccessInternal = "INTERNAL"
19521
19522	// SharedAccessNotShared is a SharedAccess enum value
19523	SharedAccessNotShared = "NOT_SHARED"
19524
19525	// SharedAccessUnknown is a SharedAccess enum value
19526	SharedAccessUnknown = "UNKNOWN"
19527)
19528
19529// SharedAccess_Values returns all elements of the SharedAccess enum
19530func SharedAccess_Values() []string {
19531	return []string{
19532		SharedAccessExternal,
19533		SharedAccessInternal,
19534		SharedAccessNotShared,
19535		SharedAccessUnknown,
19536	}
19537}
19538
19539// The property to use in a condition that determines whether an S3 bucket is
19540// included or excluded from a classification job. Valid values are:
19541const (
19542	// SimpleCriterionKeyForJobAccountId is a SimpleCriterionKeyForJob enum value
19543	SimpleCriterionKeyForJobAccountId = "ACCOUNT_ID"
19544
19545	// SimpleCriterionKeyForJobS3BucketName is a SimpleCriterionKeyForJob enum value
19546	SimpleCriterionKeyForJobS3BucketName = "S3_BUCKET_NAME"
19547
19548	// SimpleCriterionKeyForJobS3BucketEffectivePermission is a SimpleCriterionKeyForJob enum value
19549	SimpleCriterionKeyForJobS3BucketEffectivePermission = "S3_BUCKET_EFFECTIVE_PERMISSION"
19550
19551	// SimpleCriterionKeyForJobS3BucketSharedAccess is a SimpleCriterionKeyForJob enum value
19552	SimpleCriterionKeyForJobS3BucketSharedAccess = "S3_BUCKET_SHARED_ACCESS"
19553)
19554
19555// SimpleCriterionKeyForJob_Values returns all elements of the SimpleCriterionKeyForJob enum
19556func SimpleCriterionKeyForJob_Values() []string {
19557	return []string{
19558		SimpleCriterionKeyForJobAccountId,
19559		SimpleCriterionKeyForJobS3BucketName,
19560		SimpleCriterionKeyForJobS3BucketEffectivePermission,
19561		SimpleCriterionKeyForJobS3BucketSharedAccess,
19562	}
19563}
19564
19565// The storage class of the S3 object. Possible values are:
19566const (
19567	// StorageClassStandard is a StorageClass enum value
19568	StorageClassStandard = "STANDARD"
19569
19570	// StorageClassReducedRedundancy is a StorageClass enum value
19571	StorageClassReducedRedundancy = "REDUCED_REDUNDANCY"
19572
19573	// StorageClassStandardIa is a StorageClass enum value
19574	StorageClassStandardIa = "STANDARD_IA"
19575
19576	// StorageClassIntelligentTiering is a StorageClass enum value
19577	StorageClassIntelligentTiering = "INTELLIGENT_TIERING"
19578
19579	// StorageClassDeepArchive is a StorageClass enum value
19580	StorageClassDeepArchive = "DEEP_ARCHIVE"
19581
19582	// StorageClassOnezoneIa is a StorageClass enum value
19583	StorageClassOnezoneIa = "ONEZONE_IA"
19584
19585	// StorageClassGlacier is a StorageClass enum value
19586	StorageClassGlacier = "GLACIER"
19587)
19588
19589// StorageClass_Values returns all elements of the StorageClass enum
19590func StorageClass_Values() []string {
19591	return []string{
19592		StorageClassStandard,
19593		StorageClassReducedRedundancy,
19594		StorageClassStandardIa,
19595		StorageClassIntelligentTiering,
19596		StorageClassDeepArchive,
19597		StorageClassOnezoneIa,
19598		StorageClassGlacier,
19599	}
19600}
19601
19602// The type of object to apply a tag-based condition to. Valid values are:
19603const (
19604	// TagTargetS3Object is a TagTarget enum value
19605	TagTargetS3Object = "S3_OBJECT"
19606)
19607
19608// TagTarget_Values returns all elements of the TagTarget enum
19609func TagTarget_Values() []string {
19610	return []string{
19611		TagTargetS3Object,
19612	}
19613}
19614
19615// An inclusive time period that Amazon Macie usage data applies to. Possible
19616// values are:
19617const (
19618	// TimeRangeMonthToDate is a TimeRange enum value
19619	TimeRangeMonthToDate = "MONTH_TO_DATE"
19620
19621	// TimeRangePast30Days is a TimeRange enum value
19622	TimeRangePast30Days = "PAST_30_DAYS"
19623)
19624
19625// TimeRange_Values returns all elements of the TimeRange enum
19626func TimeRange_Values() []string {
19627	return []string{
19628		TimeRangeMonthToDate,
19629		TimeRangePast30Days,
19630	}
19631}
19632
19633const (
19634	// TypeNone is a Type enum value
19635	TypeNone = "NONE"
19636
19637	// TypeAes256 is a Type enum value
19638	TypeAes256 = "AES256"
19639
19640	// TypeAwsKms is a Type enum value
19641	TypeAwsKms = "aws:kms"
19642)
19643
19644// Type_Values returns all elements of the Type enum
19645func Type_Values() []string {
19646	return []string{
19647		TypeNone,
19648		TypeAes256,
19649		TypeAwsKms,
19650	}
19651}
19652
19653const (
19654	// UnitTerabytes is a Unit enum value
19655	UnitTerabytes = "TERABYTES"
19656)
19657
19658// Unit_Values returns all elements of the Unit enum
19659func Unit_Values() []string {
19660	return []string{
19661		UnitTerabytes,
19662	}
19663}
19664
19665// The operator to use in a condition that filters the results of a query for
19666// Amazon Macie account quotas and usage data. Valid values are:
19667const (
19668	// UsageStatisticsFilterComparatorGt is a UsageStatisticsFilterComparator enum value
19669	UsageStatisticsFilterComparatorGt = "GT"
19670
19671	// UsageStatisticsFilterComparatorGte is a UsageStatisticsFilterComparator enum value
19672	UsageStatisticsFilterComparatorGte = "GTE"
19673
19674	// UsageStatisticsFilterComparatorLt is a UsageStatisticsFilterComparator enum value
19675	UsageStatisticsFilterComparatorLt = "LT"
19676
19677	// UsageStatisticsFilterComparatorLte is a UsageStatisticsFilterComparator enum value
19678	UsageStatisticsFilterComparatorLte = "LTE"
19679
19680	// UsageStatisticsFilterComparatorEq is a UsageStatisticsFilterComparator enum value
19681	UsageStatisticsFilterComparatorEq = "EQ"
19682
19683	// UsageStatisticsFilterComparatorNe is a UsageStatisticsFilterComparator enum value
19684	UsageStatisticsFilterComparatorNe = "NE"
19685
19686	// UsageStatisticsFilterComparatorContains is a UsageStatisticsFilterComparator enum value
19687	UsageStatisticsFilterComparatorContains = "CONTAINS"
19688)
19689
19690// UsageStatisticsFilterComparator_Values returns all elements of the UsageStatisticsFilterComparator enum
19691func UsageStatisticsFilterComparator_Values() []string {
19692	return []string{
19693		UsageStatisticsFilterComparatorGt,
19694		UsageStatisticsFilterComparatorGte,
19695		UsageStatisticsFilterComparatorLt,
19696		UsageStatisticsFilterComparatorLte,
19697		UsageStatisticsFilterComparatorEq,
19698		UsageStatisticsFilterComparatorNe,
19699		UsageStatisticsFilterComparatorContains,
19700	}
19701}
19702
19703// The field to use in a condition that filters the results of a query for Amazon
19704// Macie account quotas and usage data. Valid values are:
19705const (
19706	// UsageStatisticsFilterKeyAccountId is a UsageStatisticsFilterKey enum value
19707	UsageStatisticsFilterKeyAccountId = "accountId"
19708
19709	// UsageStatisticsFilterKeyServiceLimit is a UsageStatisticsFilterKey enum value
19710	UsageStatisticsFilterKeyServiceLimit = "serviceLimit"
19711
19712	// UsageStatisticsFilterKeyFreeTrialStartDate is a UsageStatisticsFilterKey enum value
19713	UsageStatisticsFilterKeyFreeTrialStartDate = "freeTrialStartDate"
19714
19715	// UsageStatisticsFilterKeyTotal is a UsageStatisticsFilterKey enum value
19716	UsageStatisticsFilterKeyTotal = "total"
19717)
19718
19719// UsageStatisticsFilterKey_Values returns all elements of the UsageStatisticsFilterKey enum
19720func UsageStatisticsFilterKey_Values() []string {
19721	return []string{
19722		UsageStatisticsFilterKeyAccountId,
19723		UsageStatisticsFilterKeyServiceLimit,
19724		UsageStatisticsFilterKeyFreeTrialStartDate,
19725		UsageStatisticsFilterKeyTotal,
19726	}
19727}
19728
19729// The field to use to sort the results of a query for Amazon Macie account
19730// quotas and usage data. Valid values are:
19731const (
19732	// UsageStatisticsSortKeyAccountId is a UsageStatisticsSortKey enum value
19733	UsageStatisticsSortKeyAccountId = "accountId"
19734
19735	// UsageStatisticsSortKeyTotal is a UsageStatisticsSortKey enum value
19736	UsageStatisticsSortKeyTotal = "total"
19737
19738	// UsageStatisticsSortKeyServiceLimitValue is a UsageStatisticsSortKey enum value
19739	UsageStatisticsSortKeyServiceLimitValue = "serviceLimitValue"
19740
19741	// UsageStatisticsSortKeyFreeTrialStartDate is a UsageStatisticsSortKey enum value
19742	UsageStatisticsSortKeyFreeTrialStartDate = "freeTrialStartDate"
19743)
19744
19745// UsageStatisticsSortKey_Values returns all elements of the UsageStatisticsSortKey enum
19746func UsageStatisticsSortKey_Values() []string {
19747	return []string{
19748		UsageStatisticsSortKeyAccountId,
19749		UsageStatisticsSortKeyTotal,
19750		UsageStatisticsSortKeyServiceLimitValue,
19751		UsageStatisticsSortKeyFreeTrialStartDate,
19752	}
19753}
19754
19755// The name of an Amazon Macie usage metric for an account. Possible values
19756// are:
19757const (
19758	// UsageTypeDataInventoryEvaluation is a UsageType enum value
19759	UsageTypeDataInventoryEvaluation = "DATA_INVENTORY_EVALUATION"
19760
19761	// UsageTypeSensitiveDataDiscovery is a UsageType enum value
19762	UsageTypeSensitiveDataDiscovery = "SENSITIVE_DATA_DISCOVERY"
19763)
19764
19765// UsageType_Values returns all elements of the UsageType enum
19766func UsageType_Values() []string {
19767	return []string{
19768		UsageTypeDataInventoryEvaluation,
19769		UsageTypeSensitiveDataDiscovery,
19770	}
19771}
19772
19773// The type of entity that performed the action on the affected resource. Possible
19774// values are:
19775const (
19776	// UserIdentityTypeAssumedRole is a UserIdentityType enum value
19777	UserIdentityTypeAssumedRole = "AssumedRole"
19778
19779	// UserIdentityTypeIamuser is a UserIdentityType enum value
19780	UserIdentityTypeIamuser = "IAMUser"
19781
19782	// UserIdentityTypeFederatedUser is a UserIdentityType enum value
19783	UserIdentityTypeFederatedUser = "FederatedUser"
19784
19785	// UserIdentityTypeRoot is a UserIdentityType enum value
19786	UserIdentityTypeRoot = "Root"
19787
19788	// UserIdentityTypeAwsaccount is a UserIdentityType enum value
19789	UserIdentityTypeAwsaccount = "AWSAccount"
19790
19791	// UserIdentityTypeAwsservice is a UserIdentityType enum value
19792	UserIdentityTypeAwsservice = "AWSService"
19793)
19794
19795// UserIdentityType_Values returns all elements of the UserIdentityType enum
19796func UserIdentityType_Values() []string {
19797	return []string{
19798		UserIdentityTypeAssumedRole,
19799		UserIdentityTypeIamuser,
19800		UserIdentityTypeFederatedUser,
19801		UserIdentityTypeRoot,
19802		UserIdentityTypeAwsaccount,
19803		UserIdentityTypeAwsservice,
19804	}
19805}
19806