1// Code generated by private/model/cli/gen-api/main.go. DO NOT EDIT.
2
3package appintegrationsservice
4
5import (
6	"fmt"
7
8	"github.com/aws/aws-sdk-go/aws"
9	"github.com/aws/aws-sdk-go/aws/awsutil"
10	"github.com/aws/aws-sdk-go/aws/request"
11	"github.com/aws/aws-sdk-go/private/protocol"
12	"github.com/aws/aws-sdk-go/private/protocol/restjson"
13)
14
15const opCreateDataIntegration = "CreateDataIntegration"
16
17// CreateDataIntegrationRequest generates a "aws/request.Request" representing the
18// client's request for the CreateDataIntegration operation. The "output" return
19// value will be populated with the request's response once the request completes
20// successfully.
21//
22// Use "Send" method on the returned Request to send the API call to the service.
23// the "output" return value is not valid until after Send returns without error.
24//
25// See CreateDataIntegration for more information on using the CreateDataIntegration
26// API call, and error handling.
27//
28// This method is useful when you want to inject custom logic or configuration
29// into the SDK's request lifecycle. Such as custom headers, or retry logic.
30//
31//
32//    // Example sending a request using the CreateDataIntegrationRequest method.
33//    req, resp := client.CreateDataIntegrationRequest(params)
34//
35//    err := req.Send()
36//    if err == nil { // resp is now filled
37//        fmt.Println(resp)
38//    }
39//
40// See also, https://docs.aws.amazon.com/goto/WebAPI/appintegrations-2020-07-29/CreateDataIntegration
41func (c *AppIntegrationsService) CreateDataIntegrationRequest(input *CreateDataIntegrationInput) (req *request.Request, output *CreateDataIntegrationOutput) {
42	op := &request.Operation{
43		Name:       opCreateDataIntegration,
44		HTTPMethod: "POST",
45		HTTPPath:   "/dataIntegrations",
46	}
47
48	if input == nil {
49		input = &CreateDataIntegrationInput{}
50	}
51
52	output = &CreateDataIntegrationOutput{}
53	req = c.newRequest(op, input, output)
54	return
55}
56
57// CreateDataIntegration API operation for Amazon AppIntegrations Service.
58//
59// Creates and persists a DataIntegration resource.
60//
61// You cannot create a DataIntegration association for a DataIntegration that
62// has been previously associated. Use a different DataIntegration, or recreate
63// the DataIntegration using the CreateDataIntegration API.
64//
65// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
66// with awserr.Error's Code and Message methods to get detailed information about
67// the error.
68//
69// See the AWS API reference guide for Amazon AppIntegrations Service's
70// API operation CreateDataIntegration for usage and error information.
71//
72// Returned Error Types:
73//   * InternalServiceError
74//   Request processing failed due to an error or failure with the service.
75//
76//   * ResourceQuotaExceededException
77//   The allowed quota for the resource has been exceeded.
78//
79//   * DuplicateResourceException
80//   A resource with the specified name already exists.
81//
82//   * ThrottlingException
83//   The throttling limit has been exceeded.
84//
85//   * InvalidRequestException
86//   The request is not valid.
87//
88//   * AccessDeniedException
89//   You do not have sufficient access to perform this action.
90//
91// See also, https://docs.aws.amazon.com/goto/WebAPI/appintegrations-2020-07-29/CreateDataIntegration
92func (c *AppIntegrationsService) CreateDataIntegration(input *CreateDataIntegrationInput) (*CreateDataIntegrationOutput, error) {
93	req, out := c.CreateDataIntegrationRequest(input)
94	return out, req.Send()
95}
96
97// CreateDataIntegrationWithContext is the same as CreateDataIntegration with the addition of
98// the ability to pass a context and additional request options.
99//
100// See CreateDataIntegration for details on how to use this API operation.
101//
102// The context must be non-nil and will be used for request cancellation. If
103// the context is nil a panic will occur. In the future the SDK may create
104// sub-contexts for http.Requests. See https://golang.org/pkg/context/
105// for more information on using Contexts.
106func (c *AppIntegrationsService) CreateDataIntegrationWithContext(ctx aws.Context, input *CreateDataIntegrationInput, opts ...request.Option) (*CreateDataIntegrationOutput, error) {
107	req, out := c.CreateDataIntegrationRequest(input)
108	req.SetContext(ctx)
109	req.ApplyOptions(opts...)
110	return out, req.Send()
111}
112
113const opCreateEventIntegration = "CreateEventIntegration"
114
115// CreateEventIntegrationRequest generates a "aws/request.Request" representing the
116// client's request for the CreateEventIntegration operation. The "output" return
117// value will be populated with the request's response once the request completes
118// successfully.
119//
120// Use "Send" method on the returned Request to send the API call to the service.
121// the "output" return value is not valid until after Send returns without error.
122//
123// See CreateEventIntegration for more information on using the CreateEventIntegration
124// API call, and error handling.
125//
126// This method is useful when you want to inject custom logic or configuration
127// into the SDK's request lifecycle. Such as custom headers, or retry logic.
128//
129//
130//    // Example sending a request using the CreateEventIntegrationRequest method.
131//    req, resp := client.CreateEventIntegrationRequest(params)
132//
133//    err := req.Send()
134//    if err == nil { // resp is now filled
135//        fmt.Println(resp)
136//    }
137//
138// See also, https://docs.aws.amazon.com/goto/WebAPI/appintegrations-2020-07-29/CreateEventIntegration
139func (c *AppIntegrationsService) CreateEventIntegrationRequest(input *CreateEventIntegrationInput) (req *request.Request, output *CreateEventIntegrationOutput) {
140	op := &request.Operation{
141		Name:       opCreateEventIntegration,
142		HTTPMethod: "POST",
143		HTTPPath:   "/eventIntegrations",
144	}
145
146	if input == nil {
147		input = &CreateEventIntegrationInput{}
148	}
149
150	output = &CreateEventIntegrationOutput{}
151	req = c.newRequest(op, input, output)
152	return
153}
154
155// CreateEventIntegration API operation for Amazon AppIntegrations Service.
156//
157// Creates an EventIntegration, given a specified name, description, and a reference
158// to an Amazon EventBridge bus in your account and a partner event source that
159// pushes events to that bus. No objects are created in the your account, only
160// metadata that is persisted on the EventIntegration control plane.
161//
162// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
163// with awserr.Error's Code and Message methods to get detailed information about
164// the error.
165//
166// See the AWS API reference guide for Amazon AppIntegrations Service's
167// API operation CreateEventIntegration for usage and error information.
168//
169// Returned Error Types:
170//   * InternalServiceError
171//   Request processing failed due to an error or failure with the service.
172//
173//   * ResourceQuotaExceededException
174//   The allowed quota for the resource has been exceeded.
175//
176//   * DuplicateResourceException
177//   A resource with the specified name already exists.
178//
179//   * ThrottlingException
180//   The throttling limit has been exceeded.
181//
182//   * InvalidRequestException
183//   The request is not valid.
184//
185//   * AccessDeniedException
186//   You do not have sufficient access to perform this action.
187//
188// See also, https://docs.aws.amazon.com/goto/WebAPI/appintegrations-2020-07-29/CreateEventIntegration
189func (c *AppIntegrationsService) CreateEventIntegration(input *CreateEventIntegrationInput) (*CreateEventIntegrationOutput, error) {
190	req, out := c.CreateEventIntegrationRequest(input)
191	return out, req.Send()
192}
193
194// CreateEventIntegrationWithContext is the same as CreateEventIntegration with the addition of
195// the ability to pass a context and additional request options.
196//
197// See CreateEventIntegration for details on how to use this API operation.
198//
199// The context must be non-nil and will be used for request cancellation. If
200// the context is nil a panic will occur. In the future the SDK may create
201// sub-contexts for http.Requests. See https://golang.org/pkg/context/
202// for more information on using Contexts.
203func (c *AppIntegrationsService) CreateEventIntegrationWithContext(ctx aws.Context, input *CreateEventIntegrationInput, opts ...request.Option) (*CreateEventIntegrationOutput, error) {
204	req, out := c.CreateEventIntegrationRequest(input)
205	req.SetContext(ctx)
206	req.ApplyOptions(opts...)
207	return out, req.Send()
208}
209
210const opDeleteDataIntegration = "DeleteDataIntegration"
211
212// DeleteDataIntegrationRequest generates a "aws/request.Request" representing the
213// client's request for the DeleteDataIntegration operation. The "output" return
214// value will be populated with the request's response once the request completes
215// successfully.
216//
217// Use "Send" method on the returned Request to send the API call to the service.
218// the "output" return value is not valid until after Send returns without error.
219//
220// See DeleteDataIntegration for more information on using the DeleteDataIntegration
221// API call, and error handling.
222//
223// This method is useful when you want to inject custom logic or configuration
224// into the SDK's request lifecycle. Such as custom headers, or retry logic.
225//
226//
227//    // Example sending a request using the DeleteDataIntegrationRequest method.
228//    req, resp := client.DeleteDataIntegrationRequest(params)
229//
230//    err := req.Send()
231//    if err == nil { // resp is now filled
232//        fmt.Println(resp)
233//    }
234//
235// See also, https://docs.aws.amazon.com/goto/WebAPI/appintegrations-2020-07-29/DeleteDataIntegration
236func (c *AppIntegrationsService) DeleteDataIntegrationRequest(input *DeleteDataIntegrationInput) (req *request.Request, output *DeleteDataIntegrationOutput) {
237	op := &request.Operation{
238		Name:       opDeleteDataIntegration,
239		HTTPMethod: "DELETE",
240		HTTPPath:   "/dataIntegrations/{Identifier}",
241	}
242
243	if input == nil {
244		input = &DeleteDataIntegrationInput{}
245	}
246
247	output = &DeleteDataIntegrationOutput{}
248	req = c.newRequest(op, input, output)
249	req.Handlers.Unmarshal.Swap(restjson.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler)
250	return
251}
252
253// DeleteDataIntegration API operation for Amazon AppIntegrations Service.
254//
255// Deletes the DataIntegration. Only DataIntegrations that don't have any DataIntegrationAssociations
256// can be deleted. Deleting a DataIntegration also deletes the underlying Amazon
257// AppFlow flow and service linked role.
258//
259// You cannot create a DataIntegration association for a DataIntegration that
260// has been previously associated. Use a different DataIntegration, or recreate
261// the DataIntegration using the CreateDataIntegration (https://docs.aws.amazon.com/appintegrations/latest/APIReference/API_CreateDataIntegration.html)
262// API.
263//
264// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
265// with awserr.Error's Code and Message methods to get detailed information about
266// the error.
267//
268// See the AWS API reference guide for Amazon AppIntegrations Service's
269// API operation DeleteDataIntegration for usage and error information.
270//
271// Returned Error Types:
272//   * InternalServiceError
273//   Request processing failed due to an error or failure with the service.
274//
275//   * ThrottlingException
276//   The throttling limit has been exceeded.
277//
278//   * ResourceNotFoundException
279//   The specified resource was not found.
280//
281//   * InvalidRequestException
282//   The request is not valid.
283//
284//   * AccessDeniedException
285//   You do not have sufficient access to perform this action.
286//
287// See also, https://docs.aws.amazon.com/goto/WebAPI/appintegrations-2020-07-29/DeleteDataIntegration
288func (c *AppIntegrationsService) DeleteDataIntegration(input *DeleteDataIntegrationInput) (*DeleteDataIntegrationOutput, error) {
289	req, out := c.DeleteDataIntegrationRequest(input)
290	return out, req.Send()
291}
292
293// DeleteDataIntegrationWithContext is the same as DeleteDataIntegration with the addition of
294// the ability to pass a context and additional request options.
295//
296// See DeleteDataIntegration for details on how to use this API operation.
297//
298// The context must be non-nil and will be used for request cancellation. If
299// the context is nil a panic will occur. In the future the SDK may create
300// sub-contexts for http.Requests. See https://golang.org/pkg/context/
301// for more information on using Contexts.
302func (c *AppIntegrationsService) DeleteDataIntegrationWithContext(ctx aws.Context, input *DeleteDataIntegrationInput, opts ...request.Option) (*DeleteDataIntegrationOutput, error) {
303	req, out := c.DeleteDataIntegrationRequest(input)
304	req.SetContext(ctx)
305	req.ApplyOptions(opts...)
306	return out, req.Send()
307}
308
309const opDeleteEventIntegration = "DeleteEventIntegration"
310
311// DeleteEventIntegrationRequest generates a "aws/request.Request" representing the
312// client's request for the DeleteEventIntegration operation. The "output" return
313// value will be populated with the request's response once the request completes
314// successfully.
315//
316// Use "Send" method on the returned Request to send the API call to the service.
317// the "output" return value is not valid until after Send returns without error.
318//
319// See DeleteEventIntegration for more information on using the DeleteEventIntegration
320// API call, and error handling.
321//
322// This method is useful when you want to inject custom logic or configuration
323// into the SDK's request lifecycle. Such as custom headers, or retry logic.
324//
325//
326//    // Example sending a request using the DeleteEventIntegrationRequest method.
327//    req, resp := client.DeleteEventIntegrationRequest(params)
328//
329//    err := req.Send()
330//    if err == nil { // resp is now filled
331//        fmt.Println(resp)
332//    }
333//
334// See also, https://docs.aws.amazon.com/goto/WebAPI/appintegrations-2020-07-29/DeleteEventIntegration
335func (c *AppIntegrationsService) DeleteEventIntegrationRequest(input *DeleteEventIntegrationInput) (req *request.Request, output *DeleteEventIntegrationOutput) {
336	op := &request.Operation{
337		Name:       opDeleteEventIntegration,
338		HTTPMethod: "DELETE",
339		HTTPPath:   "/eventIntegrations/{Name}",
340	}
341
342	if input == nil {
343		input = &DeleteEventIntegrationInput{}
344	}
345
346	output = &DeleteEventIntegrationOutput{}
347	req = c.newRequest(op, input, output)
348	req.Handlers.Unmarshal.Swap(restjson.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler)
349	return
350}
351
352// DeleteEventIntegration API operation for Amazon AppIntegrations Service.
353//
354// Deletes the specified existing event integration. If the event integration
355// is associated with clients, the request is rejected.
356//
357// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
358// with awserr.Error's Code and Message methods to get detailed information about
359// the error.
360//
361// See the AWS API reference guide for Amazon AppIntegrations Service's
362// API operation DeleteEventIntegration for usage and error information.
363//
364// Returned Error Types:
365//   * InternalServiceError
366//   Request processing failed due to an error or failure with the service.
367//
368//   * ThrottlingException
369//   The throttling limit has been exceeded.
370//
371//   * ResourceNotFoundException
372//   The specified resource was not found.
373//
374//   * InvalidRequestException
375//   The request is not valid.
376//
377//   * AccessDeniedException
378//   You do not have sufficient access to perform this action.
379//
380// See also, https://docs.aws.amazon.com/goto/WebAPI/appintegrations-2020-07-29/DeleteEventIntegration
381func (c *AppIntegrationsService) DeleteEventIntegration(input *DeleteEventIntegrationInput) (*DeleteEventIntegrationOutput, error) {
382	req, out := c.DeleteEventIntegrationRequest(input)
383	return out, req.Send()
384}
385
386// DeleteEventIntegrationWithContext is the same as DeleteEventIntegration with the addition of
387// the ability to pass a context and additional request options.
388//
389// See DeleteEventIntegration for details on how to use this API operation.
390//
391// The context must be non-nil and will be used for request cancellation. If
392// the context is nil a panic will occur. In the future the SDK may create
393// sub-contexts for http.Requests. See https://golang.org/pkg/context/
394// for more information on using Contexts.
395func (c *AppIntegrationsService) DeleteEventIntegrationWithContext(ctx aws.Context, input *DeleteEventIntegrationInput, opts ...request.Option) (*DeleteEventIntegrationOutput, error) {
396	req, out := c.DeleteEventIntegrationRequest(input)
397	req.SetContext(ctx)
398	req.ApplyOptions(opts...)
399	return out, req.Send()
400}
401
402const opGetDataIntegration = "GetDataIntegration"
403
404// GetDataIntegrationRequest generates a "aws/request.Request" representing the
405// client's request for the GetDataIntegration operation. The "output" return
406// value will be populated with the request's response once the request completes
407// successfully.
408//
409// Use "Send" method on the returned Request to send the API call to the service.
410// the "output" return value is not valid until after Send returns without error.
411//
412// See GetDataIntegration for more information on using the GetDataIntegration
413// API call, and error handling.
414//
415// This method is useful when you want to inject custom logic or configuration
416// into the SDK's request lifecycle. Such as custom headers, or retry logic.
417//
418//
419//    // Example sending a request using the GetDataIntegrationRequest method.
420//    req, resp := client.GetDataIntegrationRequest(params)
421//
422//    err := req.Send()
423//    if err == nil { // resp is now filled
424//        fmt.Println(resp)
425//    }
426//
427// See also, https://docs.aws.amazon.com/goto/WebAPI/appintegrations-2020-07-29/GetDataIntegration
428func (c *AppIntegrationsService) GetDataIntegrationRequest(input *GetDataIntegrationInput) (req *request.Request, output *GetDataIntegrationOutput) {
429	op := &request.Operation{
430		Name:       opGetDataIntegration,
431		HTTPMethod: "GET",
432		HTTPPath:   "/dataIntegrations/{Identifier}",
433	}
434
435	if input == nil {
436		input = &GetDataIntegrationInput{}
437	}
438
439	output = &GetDataIntegrationOutput{}
440	req = c.newRequest(op, input, output)
441	return
442}
443
444// GetDataIntegration API operation for Amazon AppIntegrations Service.
445//
446// Returns information about the DataIntegration.
447//
448// You cannot create a DataIntegration association for a DataIntegration that
449// has been previously associated. Use a different DataIntegration, or recreate
450// the DataIntegration using the CreateDataIntegration (https://docs.aws.amazon.com/appintegrations/latest/APIReference/API_CreateDataIntegration.html)
451// API.
452//
453// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
454// with awserr.Error's Code and Message methods to get detailed information about
455// the error.
456//
457// See the AWS API reference guide for Amazon AppIntegrations Service's
458// API operation GetDataIntegration for usage and error information.
459//
460// Returned Error Types:
461//   * InternalServiceError
462//   Request processing failed due to an error or failure with the service.
463//
464//   * ThrottlingException
465//   The throttling limit has been exceeded.
466//
467//   * ResourceNotFoundException
468//   The specified resource was not found.
469//
470//   * InvalidRequestException
471//   The request is not valid.
472//
473//   * AccessDeniedException
474//   You do not have sufficient access to perform this action.
475//
476// See also, https://docs.aws.amazon.com/goto/WebAPI/appintegrations-2020-07-29/GetDataIntegration
477func (c *AppIntegrationsService) GetDataIntegration(input *GetDataIntegrationInput) (*GetDataIntegrationOutput, error) {
478	req, out := c.GetDataIntegrationRequest(input)
479	return out, req.Send()
480}
481
482// GetDataIntegrationWithContext is the same as GetDataIntegration with the addition of
483// the ability to pass a context and additional request options.
484//
485// See GetDataIntegration for details on how to use this API operation.
486//
487// The context must be non-nil and will be used for request cancellation. If
488// the context is nil a panic will occur. In the future the SDK may create
489// sub-contexts for http.Requests. See https://golang.org/pkg/context/
490// for more information on using Contexts.
491func (c *AppIntegrationsService) GetDataIntegrationWithContext(ctx aws.Context, input *GetDataIntegrationInput, opts ...request.Option) (*GetDataIntegrationOutput, error) {
492	req, out := c.GetDataIntegrationRequest(input)
493	req.SetContext(ctx)
494	req.ApplyOptions(opts...)
495	return out, req.Send()
496}
497
498const opGetEventIntegration = "GetEventIntegration"
499
500// GetEventIntegrationRequest generates a "aws/request.Request" representing the
501// client's request for the GetEventIntegration operation. The "output" return
502// value will be populated with the request's response once the request completes
503// successfully.
504//
505// Use "Send" method on the returned Request to send the API call to the service.
506// the "output" return value is not valid until after Send returns without error.
507//
508// See GetEventIntegration for more information on using the GetEventIntegration
509// API call, and error handling.
510//
511// This method is useful when you want to inject custom logic or configuration
512// into the SDK's request lifecycle. Such as custom headers, or retry logic.
513//
514//
515//    // Example sending a request using the GetEventIntegrationRequest method.
516//    req, resp := client.GetEventIntegrationRequest(params)
517//
518//    err := req.Send()
519//    if err == nil { // resp is now filled
520//        fmt.Println(resp)
521//    }
522//
523// See also, https://docs.aws.amazon.com/goto/WebAPI/appintegrations-2020-07-29/GetEventIntegration
524func (c *AppIntegrationsService) GetEventIntegrationRequest(input *GetEventIntegrationInput) (req *request.Request, output *GetEventIntegrationOutput) {
525	op := &request.Operation{
526		Name:       opGetEventIntegration,
527		HTTPMethod: "GET",
528		HTTPPath:   "/eventIntegrations/{Name}",
529	}
530
531	if input == nil {
532		input = &GetEventIntegrationInput{}
533	}
534
535	output = &GetEventIntegrationOutput{}
536	req = c.newRequest(op, input, output)
537	return
538}
539
540// GetEventIntegration API operation for Amazon AppIntegrations Service.
541//
542// Returns information about the event integration.
543//
544// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
545// with awserr.Error's Code and Message methods to get detailed information about
546// the error.
547//
548// See the AWS API reference guide for Amazon AppIntegrations Service's
549// API operation GetEventIntegration for usage and error information.
550//
551// Returned Error Types:
552//   * InternalServiceError
553//   Request processing failed due to an error or failure with the service.
554//
555//   * ThrottlingException
556//   The throttling limit has been exceeded.
557//
558//   * ResourceNotFoundException
559//   The specified resource was not found.
560//
561//   * InvalidRequestException
562//   The request is not valid.
563//
564//   * AccessDeniedException
565//   You do not have sufficient access to perform this action.
566//
567// See also, https://docs.aws.amazon.com/goto/WebAPI/appintegrations-2020-07-29/GetEventIntegration
568func (c *AppIntegrationsService) GetEventIntegration(input *GetEventIntegrationInput) (*GetEventIntegrationOutput, error) {
569	req, out := c.GetEventIntegrationRequest(input)
570	return out, req.Send()
571}
572
573// GetEventIntegrationWithContext is the same as GetEventIntegration with the addition of
574// the ability to pass a context and additional request options.
575//
576// See GetEventIntegration for details on how to use this API operation.
577//
578// The context must be non-nil and will be used for request cancellation. If
579// the context is nil a panic will occur. In the future the SDK may create
580// sub-contexts for http.Requests. See https://golang.org/pkg/context/
581// for more information on using Contexts.
582func (c *AppIntegrationsService) GetEventIntegrationWithContext(ctx aws.Context, input *GetEventIntegrationInput, opts ...request.Option) (*GetEventIntegrationOutput, error) {
583	req, out := c.GetEventIntegrationRequest(input)
584	req.SetContext(ctx)
585	req.ApplyOptions(opts...)
586	return out, req.Send()
587}
588
589const opListDataIntegrationAssociations = "ListDataIntegrationAssociations"
590
591// ListDataIntegrationAssociationsRequest generates a "aws/request.Request" representing the
592// client's request for the ListDataIntegrationAssociations operation. The "output" return
593// value will be populated with the request's response once the request completes
594// successfully.
595//
596// Use "Send" method on the returned Request to send the API call to the service.
597// the "output" return value is not valid until after Send returns without error.
598//
599// See ListDataIntegrationAssociations for more information on using the ListDataIntegrationAssociations
600// API call, and error handling.
601//
602// This method is useful when you want to inject custom logic or configuration
603// into the SDK's request lifecycle. Such as custom headers, or retry logic.
604//
605//
606//    // Example sending a request using the ListDataIntegrationAssociationsRequest method.
607//    req, resp := client.ListDataIntegrationAssociationsRequest(params)
608//
609//    err := req.Send()
610//    if err == nil { // resp is now filled
611//        fmt.Println(resp)
612//    }
613//
614// See also, https://docs.aws.amazon.com/goto/WebAPI/appintegrations-2020-07-29/ListDataIntegrationAssociations
615func (c *AppIntegrationsService) ListDataIntegrationAssociationsRequest(input *ListDataIntegrationAssociationsInput) (req *request.Request, output *ListDataIntegrationAssociationsOutput) {
616	op := &request.Operation{
617		Name:       opListDataIntegrationAssociations,
618		HTTPMethod: "GET",
619		HTTPPath:   "/dataIntegrations/{Identifier}/associations",
620	}
621
622	if input == nil {
623		input = &ListDataIntegrationAssociationsInput{}
624	}
625
626	output = &ListDataIntegrationAssociationsOutput{}
627	req = c.newRequest(op, input, output)
628	return
629}
630
631// ListDataIntegrationAssociations API operation for Amazon AppIntegrations Service.
632//
633// Returns a paginated list of DataIntegration associations in the account.
634//
635// You cannot create a DataIntegration association for a DataIntegration that
636// has been previously associated. Use a different DataIntegration, or recreate
637// the DataIntegration using the CreateDataIntegration (https://docs.aws.amazon.com/appintegrations/latest/APIReference/API_CreateDataIntegration.html)
638// API.
639//
640// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
641// with awserr.Error's Code and Message methods to get detailed information about
642// the error.
643//
644// See the AWS API reference guide for Amazon AppIntegrations Service's
645// API operation ListDataIntegrationAssociations for usage and error information.
646//
647// Returned Error Types:
648//   * InternalServiceError
649//   Request processing failed due to an error or failure with the service.
650//
651//   * ThrottlingException
652//   The throttling limit has been exceeded.
653//
654//   * ResourceNotFoundException
655//   The specified resource was not found.
656//
657//   * InvalidRequestException
658//   The request is not valid.
659//
660//   * AccessDeniedException
661//   You do not have sufficient access to perform this action.
662//
663// See also, https://docs.aws.amazon.com/goto/WebAPI/appintegrations-2020-07-29/ListDataIntegrationAssociations
664func (c *AppIntegrationsService) ListDataIntegrationAssociations(input *ListDataIntegrationAssociationsInput) (*ListDataIntegrationAssociationsOutput, error) {
665	req, out := c.ListDataIntegrationAssociationsRequest(input)
666	return out, req.Send()
667}
668
669// ListDataIntegrationAssociationsWithContext is the same as ListDataIntegrationAssociations with the addition of
670// the ability to pass a context and additional request options.
671//
672// See ListDataIntegrationAssociations for details on how to use this API operation.
673//
674// The context must be non-nil and will be used for request cancellation. If
675// the context is nil a panic will occur. In the future the SDK may create
676// sub-contexts for http.Requests. See https://golang.org/pkg/context/
677// for more information on using Contexts.
678func (c *AppIntegrationsService) ListDataIntegrationAssociationsWithContext(ctx aws.Context, input *ListDataIntegrationAssociationsInput, opts ...request.Option) (*ListDataIntegrationAssociationsOutput, error) {
679	req, out := c.ListDataIntegrationAssociationsRequest(input)
680	req.SetContext(ctx)
681	req.ApplyOptions(opts...)
682	return out, req.Send()
683}
684
685const opListDataIntegrations = "ListDataIntegrations"
686
687// ListDataIntegrationsRequest generates a "aws/request.Request" representing the
688// client's request for the ListDataIntegrations operation. The "output" return
689// value will be populated with the request's response once the request completes
690// successfully.
691//
692// Use "Send" method on the returned Request to send the API call to the service.
693// the "output" return value is not valid until after Send returns without error.
694//
695// See ListDataIntegrations for more information on using the ListDataIntegrations
696// API call, and error handling.
697//
698// This method is useful when you want to inject custom logic or configuration
699// into the SDK's request lifecycle. Such as custom headers, or retry logic.
700//
701//
702//    // Example sending a request using the ListDataIntegrationsRequest method.
703//    req, resp := client.ListDataIntegrationsRequest(params)
704//
705//    err := req.Send()
706//    if err == nil { // resp is now filled
707//        fmt.Println(resp)
708//    }
709//
710// See also, https://docs.aws.amazon.com/goto/WebAPI/appintegrations-2020-07-29/ListDataIntegrations
711func (c *AppIntegrationsService) ListDataIntegrationsRequest(input *ListDataIntegrationsInput) (req *request.Request, output *ListDataIntegrationsOutput) {
712	op := &request.Operation{
713		Name:       opListDataIntegrations,
714		HTTPMethod: "GET",
715		HTTPPath:   "/dataIntegrations",
716	}
717
718	if input == nil {
719		input = &ListDataIntegrationsInput{}
720	}
721
722	output = &ListDataIntegrationsOutput{}
723	req = c.newRequest(op, input, output)
724	return
725}
726
727// ListDataIntegrations API operation for Amazon AppIntegrations Service.
728//
729// Returns a paginated list of DataIntegrations in the account.
730//
731// You cannot create a DataIntegration association for a DataIntegration that
732// has been previously associated. Use a different DataIntegration, or recreate
733// the DataIntegration using the CreateDataIntegration (https://docs.aws.amazon.com/appintegrations/latest/APIReference/API_CreateDataIntegration.html)
734// API.
735//
736// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
737// with awserr.Error's Code and Message methods to get detailed information about
738// the error.
739//
740// See the AWS API reference guide for Amazon AppIntegrations Service's
741// API operation ListDataIntegrations for usage and error information.
742//
743// Returned Error Types:
744//   * InternalServiceError
745//   Request processing failed due to an error or failure with the service.
746//
747//   * ThrottlingException
748//   The throttling limit has been exceeded.
749//
750//   * InvalidRequestException
751//   The request is not valid.
752//
753//   * AccessDeniedException
754//   You do not have sufficient access to perform this action.
755//
756// See also, https://docs.aws.amazon.com/goto/WebAPI/appintegrations-2020-07-29/ListDataIntegrations
757func (c *AppIntegrationsService) ListDataIntegrations(input *ListDataIntegrationsInput) (*ListDataIntegrationsOutput, error) {
758	req, out := c.ListDataIntegrationsRequest(input)
759	return out, req.Send()
760}
761
762// ListDataIntegrationsWithContext is the same as ListDataIntegrations with the addition of
763// the ability to pass a context and additional request options.
764//
765// See ListDataIntegrations for details on how to use this API operation.
766//
767// The context must be non-nil and will be used for request cancellation. If
768// the context is nil a panic will occur. In the future the SDK may create
769// sub-contexts for http.Requests. See https://golang.org/pkg/context/
770// for more information on using Contexts.
771func (c *AppIntegrationsService) ListDataIntegrationsWithContext(ctx aws.Context, input *ListDataIntegrationsInput, opts ...request.Option) (*ListDataIntegrationsOutput, error) {
772	req, out := c.ListDataIntegrationsRequest(input)
773	req.SetContext(ctx)
774	req.ApplyOptions(opts...)
775	return out, req.Send()
776}
777
778const opListEventIntegrationAssociations = "ListEventIntegrationAssociations"
779
780// ListEventIntegrationAssociationsRequest generates a "aws/request.Request" representing the
781// client's request for the ListEventIntegrationAssociations operation. The "output" return
782// value will be populated with the request's response once the request completes
783// successfully.
784//
785// Use "Send" method on the returned Request to send the API call to the service.
786// the "output" return value is not valid until after Send returns without error.
787//
788// See ListEventIntegrationAssociations for more information on using the ListEventIntegrationAssociations
789// API call, and error handling.
790//
791// This method is useful when you want to inject custom logic or configuration
792// into the SDK's request lifecycle. Such as custom headers, or retry logic.
793//
794//
795//    // Example sending a request using the ListEventIntegrationAssociationsRequest method.
796//    req, resp := client.ListEventIntegrationAssociationsRequest(params)
797//
798//    err := req.Send()
799//    if err == nil { // resp is now filled
800//        fmt.Println(resp)
801//    }
802//
803// See also, https://docs.aws.amazon.com/goto/WebAPI/appintegrations-2020-07-29/ListEventIntegrationAssociations
804func (c *AppIntegrationsService) ListEventIntegrationAssociationsRequest(input *ListEventIntegrationAssociationsInput) (req *request.Request, output *ListEventIntegrationAssociationsOutput) {
805	op := &request.Operation{
806		Name:       opListEventIntegrationAssociations,
807		HTTPMethod: "GET",
808		HTTPPath:   "/eventIntegrations/{Name}/associations",
809	}
810
811	if input == nil {
812		input = &ListEventIntegrationAssociationsInput{}
813	}
814
815	output = &ListEventIntegrationAssociationsOutput{}
816	req = c.newRequest(op, input, output)
817	return
818}
819
820// ListEventIntegrationAssociations API operation for Amazon AppIntegrations Service.
821//
822// Returns a paginated list of event integration associations in the account.
823//
824// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
825// with awserr.Error's Code and Message methods to get detailed information about
826// the error.
827//
828// See the AWS API reference guide for Amazon AppIntegrations Service's
829// API operation ListEventIntegrationAssociations for usage and error information.
830//
831// Returned Error Types:
832//   * InternalServiceError
833//   Request processing failed due to an error or failure with the service.
834//
835//   * ThrottlingException
836//   The throttling limit has been exceeded.
837//
838//   * ResourceNotFoundException
839//   The specified resource was not found.
840//
841//   * InvalidRequestException
842//   The request is not valid.
843//
844//   * AccessDeniedException
845//   You do not have sufficient access to perform this action.
846//
847// See also, https://docs.aws.amazon.com/goto/WebAPI/appintegrations-2020-07-29/ListEventIntegrationAssociations
848func (c *AppIntegrationsService) ListEventIntegrationAssociations(input *ListEventIntegrationAssociationsInput) (*ListEventIntegrationAssociationsOutput, error) {
849	req, out := c.ListEventIntegrationAssociationsRequest(input)
850	return out, req.Send()
851}
852
853// ListEventIntegrationAssociationsWithContext is the same as ListEventIntegrationAssociations with the addition of
854// the ability to pass a context and additional request options.
855//
856// See ListEventIntegrationAssociations for details on how to use this API operation.
857//
858// The context must be non-nil and will be used for request cancellation. If
859// the context is nil a panic will occur. In the future the SDK may create
860// sub-contexts for http.Requests. See https://golang.org/pkg/context/
861// for more information on using Contexts.
862func (c *AppIntegrationsService) ListEventIntegrationAssociationsWithContext(ctx aws.Context, input *ListEventIntegrationAssociationsInput, opts ...request.Option) (*ListEventIntegrationAssociationsOutput, error) {
863	req, out := c.ListEventIntegrationAssociationsRequest(input)
864	req.SetContext(ctx)
865	req.ApplyOptions(opts...)
866	return out, req.Send()
867}
868
869const opListEventIntegrations = "ListEventIntegrations"
870
871// ListEventIntegrationsRequest generates a "aws/request.Request" representing the
872// client's request for the ListEventIntegrations operation. The "output" return
873// value will be populated with the request's response once the request completes
874// successfully.
875//
876// Use "Send" method on the returned Request to send the API call to the service.
877// the "output" return value is not valid until after Send returns without error.
878//
879// See ListEventIntegrations for more information on using the ListEventIntegrations
880// API call, and error handling.
881//
882// This method is useful when you want to inject custom logic or configuration
883// into the SDK's request lifecycle. Such as custom headers, or retry logic.
884//
885//
886//    // Example sending a request using the ListEventIntegrationsRequest method.
887//    req, resp := client.ListEventIntegrationsRequest(params)
888//
889//    err := req.Send()
890//    if err == nil { // resp is now filled
891//        fmt.Println(resp)
892//    }
893//
894// See also, https://docs.aws.amazon.com/goto/WebAPI/appintegrations-2020-07-29/ListEventIntegrations
895func (c *AppIntegrationsService) ListEventIntegrationsRequest(input *ListEventIntegrationsInput) (req *request.Request, output *ListEventIntegrationsOutput) {
896	op := &request.Operation{
897		Name:       opListEventIntegrations,
898		HTTPMethod: "GET",
899		HTTPPath:   "/eventIntegrations",
900	}
901
902	if input == nil {
903		input = &ListEventIntegrationsInput{}
904	}
905
906	output = &ListEventIntegrationsOutput{}
907	req = c.newRequest(op, input, output)
908	return
909}
910
911// ListEventIntegrations API operation for Amazon AppIntegrations Service.
912//
913// Returns a paginated list of event integrations in the account.
914//
915// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
916// with awserr.Error's Code and Message methods to get detailed information about
917// the error.
918//
919// See the AWS API reference guide for Amazon AppIntegrations Service's
920// API operation ListEventIntegrations for usage and error information.
921//
922// Returned Error Types:
923//   * InternalServiceError
924//   Request processing failed due to an error or failure with the service.
925//
926//   * ThrottlingException
927//   The throttling limit has been exceeded.
928//
929//   * InvalidRequestException
930//   The request is not valid.
931//
932//   * AccessDeniedException
933//   You do not have sufficient access to perform this action.
934//
935// See also, https://docs.aws.amazon.com/goto/WebAPI/appintegrations-2020-07-29/ListEventIntegrations
936func (c *AppIntegrationsService) ListEventIntegrations(input *ListEventIntegrationsInput) (*ListEventIntegrationsOutput, error) {
937	req, out := c.ListEventIntegrationsRequest(input)
938	return out, req.Send()
939}
940
941// ListEventIntegrationsWithContext is the same as ListEventIntegrations with the addition of
942// the ability to pass a context and additional request options.
943//
944// See ListEventIntegrations for details on how to use this API operation.
945//
946// The context must be non-nil and will be used for request cancellation. If
947// the context is nil a panic will occur. In the future the SDK may create
948// sub-contexts for http.Requests. See https://golang.org/pkg/context/
949// for more information on using Contexts.
950func (c *AppIntegrationsService) ListEventIntegrationsWithContext(ctx aws.Context, input *ListEventIntegrationsInput, opts ...request.Option) (*ListEventIntegrationsOutput, error) {
951	req, out := c.ListEventIntegrationsRequest(input)
952	req.SetContext(ctx)
953	req.ApplyOptions(opts...)
954	return out, req.Send()
955}
956
957const opListTagsForResource = "ListTagsForResource"
958
959// ListTagsForResourceRequest generates a "aws/request.Request" representing the
960// client's request for the ListTagsForResource operation. The "output" return
961// value will be populated with the request's response once the request completes
962// successfully.
963//
964// Use "Send" method on the returned Request to send the API call to the service.
965// the "output" return value is not valid until after Send returns without error.
966//
967// See ListTagsForResource for more information on using the ListTagsForResource
968// API call, and error handling.
969//
970// This method is useful when you want to inject custom logic or configuration
971// into the SDK's request lifecycle. Such as custom headers, or retry logic.
972//
973//
974//    // Example sending a request using the ListTagsForResourceRequest method.
975//    req, resp := client.ListTagsForResourceRequest(params)
976//
977//    err := req.Send()
978//    if err == nil { // resp is now filled
979//        fmt.Println(resp)
980//    }
981//
982// See also, https://docs.aws.amazon.com/goto/WebAPI/appintegrations-2020-07-29/ListTagsForResource
983func (c *AppIntegrationsService) ListTagsForResourceRequest(input *ListTagsForResourceInput) (req *request.Request, output *ListTagsForResourceOutput) {
984	op := &request.Operation{
985		Name:       opListTagsForResource,
986		HTTPMethod: "GET",
987		HTTPPath:   "/tags/{resourceArn}",
988	}
989
990	if input == nil {
991		input = &ListTagsForResourceInput{}
992	}
993
994	output = &ListTagsForResourceOutput{}
995	req = c.newRequest(op, input, output)
996	return
997}
998
999// ListTagsForResource API operation for Amazon AppIntegrations Service.
1000//
1001// Lists the tags for the specified resource.
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 AppIntegrations Service's
1008// API operation ListTagsForResource for usage and error information.
1009//
1010// Returned Error Types:
1011//   * InvalidRequestException
1012//   The request is not valid.
1013//
1014//   * InternalServiceError
1015//   Request processing failed due to an error or failure with the service.
1016//
1017//   * ResourceNotFoundException
1018//   The specified resource was not found.
1019//
1020//   * ThrottlingException
1021//   The throttling limit has been exceeded.
1022//
1023// See also, https://docs.aws.amazon.com/goto/WebAPI/appintegrations-2020-07-29/ListTagsForResource
1024func (c *AppIntegrationsService) ListTagsForResource(input *ListTagsForResourceInput) (*ListTagsForResourceOutput, error) {
1025	req, out := c.ListTagsForResourceRequest(input)
1026	return out, req.Send()
1027}
1028
1029// ListTagsForResourceWithContext is the same as ListTagsForResource with the addition of
1030// the ability to pass a context and additional request options.
1031//
1032// See ListTagsForResource for details on how to use this API operation.
1033//
1034// The context must be non-nil and will be used for request cancellation. If
1035// the context is nil a panic will occur. In the future the SDK may create
1036// sub-contexts for http.Requests. See https://golang.org/pkg/context/
1037// for more information on using Contexts.
1038func (c *AppIntegrationsService) ListTagsForResourceWithContext(ctx aws.Context, input *ListTagsForResourceInput, opts ...request.Option) (*ListTagsForResourceOutput, error) {
1039	req, out := c.ListTagsForResourceRequest(input)
1040	req.SetContext(ctx)
1041	req.ApplyOptions(opts...)
1042	return out, req.Send()
1043}
1044
1045const opTagResource = "TagResource"
1046
1047// TagResourceRequest generates a "aws/request.Request" representing the
1048// client's request for the TagResource operation. The "output" return
1049// value will be populated with the request's response once the request completes
1050// successfully.
1051//
1052// Use "Send" method on the returned Request to send the API call to the service.
1053// the "output" return value is not valid until after Send returns without error.
1054//
1055// See TagResource for more information on using the TagResource
1056// API call, and error handling.
1057//
1058// This method is useful when you want to inject custom logic or configuration
1059// into the SDK's request lifecycle. Such as custom headers, or retry logic.
1060//
1061//
1062//    // Example sending a request using the TagResourceRequest method.
1063//    req, resp := client.TagResourceRequest(params)
1064//
1065//    err := req.Send()
1066//    if err == nil { // resp is now filled
1067//        fmt.Println(resp)
1068//    }
1069//
1070// See also, https://docs.aws.amazon.com/goto/WebAPI/appintegrations-2020-07-29/TagResource
1071func (c *AppIntegrationsService) TagResourceRequest(input *TagResourceInput) (req *request.Request, output *TagResourceOutput) {
1072	op := &request.Operation{
1073		Name:       opTagResource,
1074		HTTPMethod: "POST",
1075		HTTPPath:   "/tags/{resourceArn}",
1076	}
1077
1078	if input == nil {
1079		input = &TagResourceInput{}
1080	}
1081
1082	output = &TagResourceOutput{}
1083	req = c.newRequest(op, input, output)
1084	req.Handlers.Unmarshal.Swap(restjson.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler)
1085	return
1086}
1087
1088// TagResource API operation for Amazon AppIntegrations Service.
1089//
1090// Adds the specified tags to the specified resource.
1091//
1092// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
1093// with awserr.Error's Code and Message methods to get detailed information about
1094// the error.
1095//
1096// See the AWS API reference guide for Amazon AppIntegrations Service's
1097// API operation TagResource for usage and error information.
1098//
1099// Returned Error Types:
1100//   * InvalidRequestException
1101//   The request is not valid.
1102//
1103//   * InternalServiceError
1104//   Request processing failed due to an error or failure with the service.
1105//
1106//   * ResourceNotFoundException
1107//   The specified resource was not found.
1108//
1109//   * ThrottlingException
1110//   The throttling limit has been exceeded.
1111//
1112// See also, https://docs.aws.amazon.com/goto/WebAPI/appintegrations-2020-07-29/TagResource
1113func (c *AppIntegrationsService) TagResource(input *TagResourceInput) (*TagResourceOutput, error) {
1114	req, out := c.TagResourceRequest(input)
1115	return out, req.Send()
1116}
1117
1118// TagResourceWithContext is the same as TagResource with the addition of
1119// the ability to pass a context and additional request options.
1120//
1121// See TagResource for details on how to use this API operation.
1122//
1123// The context must be non-nil and will be used for request cancellation. If
1124// the context is nil a panic will occur. In the future the SDK may create
1125// sub-contexts for http.Requests. See https://golang.org/pkg/context/
1126// for more information on using Contexts.
1127func (c *AppIntegrationsService) TagResourceWithContext(ctx aws.Context, input *TagResourceInput, opts ...request.Option) (*TagResourceOutput, error) {
1128	req, out := c.TagResourceRequest(input)
1129	req.SetContext(ctx)
1130	req.ApplyOptions(opts...)
1131	return out, req.Send()
1132}
1133
1134const opUntagResource = "UntagResource"
1135
1136// UntagResourceRequest generates a "aws/request.Request" representing the
1137// client's request for the UntagResource operation. The "output" return
1138// value will be populated with the request's response once the request completes
1139// successfully.
1140//
1141// Use "Send" method on the returned Request to send the API call to the service.
1142// the "output" return value is not valid until after Send returns without error.
1143//
1144// See UntagResource for more information on using the UntagResource
1145// API call, and error handling.
1146//
1147// This method is useful when you want to inject custom logic or configuration
1148// into the SDK's request lifecycle. Such as custom headers, or retry logic.
1149//
1150//
1151//    // Example sending a request using the UntagResourceRequest method.
1152//    req, resp := client.UntagResourceRequest(params)
1153//
1154//    err := req.Send()
1155//    if err == nil { // resp is now filled
1156//        fmt.Println(resp)
1157//    }
1158//
1159// See also, https://docs.aws.amazon.com/goto/WebAPI/appintegrations-2020-07-29/UntagResource
1160func (c *AppIntegrationsService) UntagResourceRequest(input *UntagResourceInput) (req *request.Request, output *UntagResourceOutput) {
1161	op := &request.Operation{
1162		Name:       opUntagResource,
1163		HTTPMethod: "DELETE",
1164		HTTPPath:   "/tags/{resourceArn}",
1165	}
1166
1167	if input == nil {
1168		input = &UntagResourceInput{}
1169	}
1170
1171	output = &UntagResourceOutput{}
1172	req = c.newRequest(op, input, output)
1173	req.Handlers.Unmarshal.Swap(restjson.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler)
1174	return
1175}
1176
1177// UntagResource API operation for Amazon AppIntegrations Service.
1178//
1179// Removes the specified tags from the specified resource.
1180//
1181// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
1182// with awserr.Error's Code and Message methods to get detailed information about
1183// the error.
1184//
1185// See the AWS API reference guide for Amazon AppIntegrations Service's
1186// API operation UntagResource for usage and error information.
1187//
1188// Returned Error Types:
1189//   * InvalidRequestException
1190//   The request is not valid.
1191//
1192//   * InternalServiceError
1193//   Request processing failed due to an error or failure with the service.
1194//
1195//   * ResourceNotFoundException
1196//   The specified resource was not found.
1197//
1198//   * ThrottlingException
1199//   The throttling limit has been exceeded.
1200//
1201// See also, https://docs.aws.amazon.com/goto/WebAPI/appintegrations-2020-07-29/UntagResource
1202func (c *AppIntegrationsService) UntagResource(input *UntagResourceInput) (*UntagResourceOutput, error) {
1203	req, out := c.UntagResourceRequest(input)
1204	return out, req.Send()
1205}
1206
1207// UntagResourceWithContext is the same as UntagResource with the addition of
1208// the ability to pass a context and additional request options.
1209//
1210// See UntagResource for details on how to use this API operation.
1211//
1212// The context must be non-nil and will be used for request cancellation. If
1213// the context is nil a panic will occur. In the future the SDK may create
1214// sub-contexts for http.Requests. See https://golang.org/pkg/context/
1215// for more information on using Contexts.
1216func (c *AppIntegrationsService) UntagResourceWithContext(ctx aws.Context, input *UntagResourceInput, opts ...request.Option) (*UntagResourceOutput, error) {
1217	req, out := c.UntagResourceRequest(input)
1218	req.SetContext(ctx)
1219	req.ApplyOptions(opts...)
1220	return out, req.Send()
1221}
1222
1223const opUpdateDataIntegration = "UpdateDataIntegration"
1224
1225// UpdateDataIntegrationRequest generates a "aws/request.Request" representing the
1226// client's request for the UpdateDataIntegration operation. The "output" return
1227// value will be populated with the request's response once the request completes
1228// successfully.
1229//
1230// Use "Send" method on the returned Request to send the API call to the service.
1231// the "output" return value is not valid until after Send returns without error.
1232//
1233// See UpdateDataIntegration for more information on using the UpdateDataIntegration
1234// API call, and error handling.
1235//
1236// This method is useful when you want to inject custom logic or configuration
1237// into the SDK's request lifecycle. Such as custom headers, or retry logic.
1238//
1239//
1240//    // Example sending a request using the UpdateDataIntegrationRequest method.
1241//    req, resp := client.UpdateDataIntegrationRequest(params)
1242//
1243//    err := req.Send()
1244//    if err == nil { // resp is now filled
1245//        fmt.Println(resp)
1246//    }
1247//
1248// See also, https://docs.aws.amazon.com/goto/WebAPI/appintegrations-2020-07-29/UpdateDataIntegration
1249func (c *AppIntegrationsService) UpdateDataIntegrationRequest(input *UpdateDataIntegrationInput) (req *request.Request, output *UpdateDataIntegrationOutput) {
1250	op := &request.Operation{
1251		Name:       opUpdateDataIntegration,
1252		HTTPMethod: "PATCH",
1253		HTTPPath:   "/dataIntegrations/{Identifier}",
1254	}
1255
1256	if input == nil {
1257		input = &UpdateDataIntegrationInput{}
1258	}
1259
1260	output = &UpdateDataIntegrationOutput{}
1261	req = c.newRequest(op, input, output)
1262	req.Handlers.Unmarshal.Swap(restjson.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler)
1263	return
1264}
1265
1266// UpdateDataIntegration API operation for Amazon AppIntegrations Service.
1267//
1268// Updates the description of a DataIntegration.
1269//
1270// You cannot create a DataIntegration association for a DataIntegration that
1271// has been previously associated. Use a different DataIntegration, or recreate
1272// the DataIntegration using the CreateDataIntegration (https://docs.aws.amazon.com/appintegrations/latest/APIReference/API_CreateDataIntegration.html)
1273// API.
1274//
1275// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
1276// with awserr.Error's Code and Message methods to get detailed information about
1277// the error.
1278//
1279// See the AWS API reference guide for Amazon AppIntegrations Service's
1280// API operation UpdateDataIntegration for usage and error information.
1281//
1282// Returned Error Types:
1283//   * InternalServiceError
1284//   Request processing failed due to an error or failure with the service.
1285//
1286//   * ThrottlingException
1287//   The throttling limit has been exceeded.
1288//
1289//   * ResourceNotFoundException
1290//   The specified resource was not found.
1291//
1292//   * InvalidRequestException
1293//   The request is not valid.
1294//
1295//   * AccessDeniedException
1296//   You do not have sufficient access to perform this action.
1297//
1298// See also, https://docs.aws.amazon.com/goto/WebAPI/appintegrations-2020-07-29/UpdateDataIntegration
1299func (c *AppIntegrationsService) UpdateDataIntegration(input *UpdateDataIntegrationInput) (*UpdateDataIntegrationOutput, error) {
1300	req, out := c.UpdateDataIntegrationRequest(input)
1301	return out, req.Send()
1302}
1303
1304// UpdateDataIntegrationWithContext is the same as UpdateDataIntegration with the addition of
1305// the ability to pass a context and additional request options.
1306//
1307// See UpdateDataIntegration for details on how to use this API operation.
1308//
1309// The context must be non-nil and will be used for request cancellation. If
1310// the context is nil a panic will occur. In the future the SDK may create
1311// sub-contexts for http.Requests. See https://golang.org/pkg/context/
1312// for more information on using Contexts.
1313func (c *AppIntegrationsService) UpdateDataIntegrationWithContext(ctx aws.Context, input *UpdateDataIntegrationInput, opts ...request.Option) (*UpdateDataIntegrationOutput, error) {
1314	req, out := c.UpdateDataIntegrationRequest(input)
1315	req.SetContext(ctx)
1316	req.ApplyOptions(opts...)
1317	return out, req.Send()
1318}
1319
1320const opUpdateEventIntegration = "UpdateEventIntegration"
1321
1322// UpdateEventIntegrationRequest generates a "aws/request.Request" representing the
1323// client's request for the UpdateEventIntegration operation. The "output" return
1324// value will be populated with the request's response once the request completes
1325// successfully.
1326//
1327// Use "Send" method on the returned Request to send the API call to the service.
1328// the "output" return value is not valid until after Send returns without error.
1329//
1330// See UpdateEventIntegration for more information on using the UpdateEventIntegration
1331// API call, and error handling.
1332//
1333// This method is useful when you want to inject custom logic or configuration
1334// into the SDK's request lifecycle. Such as custom headers, or retry logic.
1335//
1336//
1337//    // Example sending a request using the UpdateEventIntegrationRequest method.
1338//    req, resp := client.UpdateEventIntegrationRequest(params)
1339//
1340//    err := req.Send()
1341//    if err == nil { // resp is now filled
1342//        fmt.Println(resp)
1343//    }
1344//
1345// See also, https://docs.aws.amazon.com/goto/WebAPI/appintegrations-2020-07-29/UpdateEventIntegration
1346func (c *AppIntegrationsService) UpdateEventIntegrationRequest(input *UpdateEventIntegrationInput) (req *request.Request, output *UpdateEventIntegrationOutput) {
1347	op := &request.Operation{
1348		Name:       opUpdateEventIntegration,
1349		HTTPMethod: "PATCH",
1350		HTTPPath:   "/eventIntegrations/{Name}",
1351	}
1352
1353	if input == nil {
1354		input = &UpdateEventIntegrationInput{}
1355	}
1356
1357	output = &UpdateEventIntegrationOutput{}
1358	req = c.newRequest(op, input, output)
1359	req.Handlers.Unmarshal.Swap(restjson.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler)
1360	return
1361}
1362
1363// UpdateEventIntegration API operation for Amazon AppIntegrations Service.
1364//
1365// Updates the description of an event integration.
1366//
1367// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
1368// with awserr.Error's Code and Message methods to get detailed information about
1369// the error.
1370//
1371// See the AWS API reference guide for Amazon AppIntegrations Service's
1372// API operation UpdateEventIntegration for usage and error information.
1373//
1374// Returned Error Types:
1375//   * InternalServiceError
1376//   Request processing failed due to an error or failure with the service.
1377//
1378//   * ThrottlingException
1379//   The throttling limit has been exceeded.
1380//
1381//   * ResourceNotFoundException
1382//   The specified resource was not found.
1383//
1384//   * InvalidRequestException
1385//   The request is not valid.
1386//
1387//   * AccessDeniedException
1388//   You do not have sufficient access to perform this action.
1389//
1390// See also, https://docs.aws.amazon.com/goto/WebAPI/appintegrations-2020-07-29/UpdateEventIntegration
1391func (c *AppIntegrationsService) UpdateEventIntegration(input *UpdateEventIntegrationInput) (*UpdateEventIntegrationOutput, error) {
1392	req, out := c.UpdateEventIntegrationRequest(input)
1393	return out, req.Send()
1394}
1395
1396// UpdateEventIntegrationWithContext is the same as UpdateEventIntegration with the addition of
1397// the ability to pass a context and additional request options.
1398//
1399// See UpdateEventIntegration for details on how to use this API operation.
1400//
1401// The context must be non-nil and will be used for request cancellation. If
1402// the context is nil a panic will occur. In the future the SDK may create
1403// sub-contexts for http.Requests. See https://golang.org/pkg/context/
1404// for more information on using Contexts.
1405func (c *AppIntegrationsService) UpdateEventIntegrationWithContext(ctx aws.Context, input *UpdateEventIntegrationInput, opts ...request.Option) (*UpdateEventIntegrationOutput, error) {
1406	req, out := c.UpdateEventIntegrationRequest(input)
1407	req.SetContext(ctx)
1408	req.ApplyOptions(opts...)
1409	return out, req.Send()
1410}
1411
1412// You do not have sufficient access to perform this action.
1413type AccessDeniedException struct {
1414	_            struct{}                  `type:"structure"`
1415	RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"`
1416
1417	Message_ *string `locationName:"Message" type:"string"`
1418}
1419
1420// String returns the string representation.
1421//
1422// API parameter values that are decorated as "sensitive" in the API will not
1423// be included in the string output. The member name will be present, but the
1424// value will be replaced with "sensitive".
1425func (s AccessDeniedException) String() string {
1426	return awsutil.Prettify(s)
1427}
1428
1429// GoString returns the string representation.
1430//
1431// API parameter values that are decorated as "sensitive" in the API will not
1432// be included in the string output. The member name will be present, but the
1433// value will be replaced with "sensitive".
1434func (s AccessDeniedException) GoString() string {
1435	return s.String()
1436}
1437
1438func newErrorAccessDeniedException(v protocol.ResponseMetadata) error {
1439	return &AccessDeniedException{
1440		RespMetadata: v,
1441	}
1442}
1443
1444// Code returns the exception type name.
1445func (s *AccessDeniedException) Code() string {
1446	return "AccessDeniedException"
1447}
1448
1449// Message returns the exception's message.
1450func (s *AccessDeniedException) Message() string {
1451	if s.Message_ != nil {
1452		return *s.Message_
1453	}
1454	return ""
1455}
1456
1457// OrigErr always returns nil, satisfies awserr.Error interface.
1458func (s *AccessDeniedException) OrigErr() error {
1459	return nil
1460}
1461
1462func (s *AccessDeniedException) Error() string {
1463	return fmt.Sprintf("%s: %s", s.Code(), s.Message())
1464}
1465
1466// Status code returns the HTTP status code for the request's response error.
1467func (s *AccessDeniedException) StatusCode() int {
1468	return s.RespMetadata.StatusCode
1469}
1470
1471// RequestID returns the service's response RequestID for request.
1472func (s *AccessDeniedException) RequestID() string {
1473	return s.RespMetadata.RequestID
1474}
1475
1476type CreateDataIntegrationInput struct {
1477	_ struct{} `type:"structure"`
1478
1479	// A unique, case-sensitive identifier that you provide to ensure the idempotency
1480	// of the request.
1481	ClientToken *string `min:"1" type:"string" idempotencyToken:"true"`
1482
1483	// A description of the DataIntegration.
1484	Description *string `min:"1" type:"string"`
1485
1486	// The KMS key for the DataIntegration.
1487	KmsKey *string `min:"1" type:"string"`
1488
1489	// The name of the DataIntegration.
1490	//
1491	// Name is a required field
1492	Name *string `min:"1" type:"string" required:"true"`
1493
1494	// The name of the data and how often it should be pulled from the source.
1495	ScheduleConfig *ScheduleConfiguration `type:"structure"`
1496
1497	// The URI of the data source.
1498	SourceURI *string `min:"1" type:"string"`
1499
1500	// One or more tags.
1501	Tags map[string]*string `min:"1" type:"map"`
1502}
1503
1504// String returns the string representation.
1505//
1506// API parameter values that are decorated as "sensitive" in the API will not
1507// be included in the string output. The member name will be present, but the
1508// value will be replaced with "sensitive".
1509func (s CreateDataIntegrationInput) String() string {
1510	return awsutil.Prettify(s)
1511}
1512
1513// GoString returns the string representation.
1514//
1515// API parameter values that are decorated as "sensitive" in the API will not
1516// be included in the string output. The member name will be present, but the
1517// value will be replaced with "sensitive".
1518func (s CreateDataIntegrationInput) GoString() string {
1519	return s.String()
1520}
1521
1522// Validate inspects the fields of the type to determine if they are valid.
1523func (s *CreateDataIntegrationInput) Validate() error {
1524	invalidParams := request.ErrInvalidParams{Context: "CreateDataIntegrationInput"}
1525	if s.ClientToken != nil && len(*s.ClientToken) < 1 {
1526		invalidParams.Add(request.NewErrParamMinLen("ClientToken", 1))
1527	}
1528	if s.Description != nil && len(*s.Description) < 1 {
1529		invalidParams.Add(request.NewErrParamMinLen("Description", 1))
1530	}
1531	if s.KmsKey != nil && len(*s.KmsKey) < 1 {
1532		invalidParams.Add(request.NewErrParamMinLen("KmsKey", 1))
1533	}
1534	if s.Name == nil {
1535		invalidParams.Add(request.NewErrParamRequired("Name"))
1536	}
1537	if s.Name != nil && len(*s.Name) < 1 {
1538		invalidParams.Add(request.NewErrParamMinLen("Name", 1))
1539	}
1540	if s.SourceURI != nil && len(*s.SourceURI) < 1 {
1541		invalidParams.Add(request.NewErrParamMinLen("SourceURI", 1))
1542	}
1543	if s.Tags != nil && len(s.Tags) < 1 {
1544		invalidParams.Add(request.NewErrParamMinLen("Tags", 1))
1545	}
1546	if s.ScheduleConfig != nil {
1547		if err := s.ScheduleConfig.Validate(); err != nil {
1548			invalidParams.AddNested("ScheduleConfig", err.(request.ErrInvalidParams))
1549		}
1550	}
1551
1552	if invalidParams.Len() > 0 {
1553		return invalidParams
1554	}
1555	return nil
1556}
1557
1558// SetClientToken sets the ClientToken field's value.
1559func (s *CreateDataIntegrationInput) SetClientToken(v string) *CreateDataIntegrationInput {
1560	s.ClientToken = &v
1561	return s
1562}
1563
1564// SetDescription sets the Description field's value.
1565func (s *CreateDataIntegrationInput) SetDescription(v string) *CreateDataIntegrationInput {
1566	s.Description = &v
1567	return s
1568}
1569
1570// SetKmsKey sets the KmsKey field's value.
1571func (s *CreateDataIntegrationInput) SetKmsKey(v string) *CreateDataIntegrationInput {
1572	s.KmsKey = &v
1573	return s
1574}
1575
1576// SetName sets the Name field's value.
1577func (s *CreateDataIntegrationInput) SetName(v string) *CreateDataIntegrationInput {
1578	s.Name = &v
1579	return s
1580}
1581
1582// SetScheduleConfig sets the ScheduleConfig field's value.
1583func (s *CreateDataIntegrationInput) SetScheduleConfig(v *ScheduleConfiguration) *CreateDataIntegrationInput {
1584	s.ScheduleConfig = v
1585	return s
1586}
1587
1588// SetSourceURI sets the SourceURI field's value.
1589func (s *CreateDataIntegrationInput) SetSourceURI(v string) *CreateDataIntegrationInput {
1590	s.SourceURI = &v
1591	return s
1592}
1593
1594// SetTags sets the Tags field's value.
1595func (s *CreateDataIntegrationInput) SetTags(v map[string]*string) *CreateDataIntegrationInput {
1596	s.Tags = v
1597	return s
1598}
1599
1600type CreateDataIntegrationOutput struct {
1601	_ struct{} `type:"structure"`
1602
1603	// The Amazon Resource Name (ARN)
1604	Arn *string `min:"1" type:"string"`
1605
1606	// A unique, case-sensitive identifier that you provide to ensure the idempotency
1607	// of the request.
1608	ClientToken *string `min:"1" type:"string"`
1609
1610	// A description of the DataIntegration.
1611	Description *string `min:"1" type:"string"`
1612
1613	// A unique identifier.
1614	Id *string `type:"string"`
1615
1616	// The KMS key for the DataIntegration.
1617	KmsKey *string `min:"1" type:"string"`
1618
1619	// The name of the DataIntegration.
1620	Name *string `min:"1" type:"string"`
1621
1622	// The name of the data and how often it should be pulled from the source.
1623	ScheduleConfiguration *ScheduleConfiguration `type:"structure"`
1624
1625	// The URI of the data source.
1626	SourceURI *string `min:"1" type:"string"`
1627
1628	// One or more tags.
1629	Tags map[string]*string `min:"1" type:"map"`
1630}
1631
1632// String returns the string representation.
1633//
1634// API parameter values that are decorated as "sensitive" in the API will not
1635// be included in the string output. The member name will be present, but the
1636// value will be replaced with "sensitive".
1637func (s CreateDataIntegrationOutput) String() string {
1638	return awsutil.Prettify(s)
1639}
1640
1641// GoString returns the string representation.
1642//
1643// API parameter values that are decorated as "sensitive" in the API will not
1644// be included in the string output. The member name will be present, but the
1645// value will be replaced with "sensitive".
1646func (s CreateDataIntegrationOutput) GoString() string {
1647	return s.String()
1648}
1649
1650// SetArn sets the Arn field's value.
1651func (s *CreateDataIntegrationOutput) SetArn(v string) *CreateDataIntegrationOutput {
1652	s.Arn = &v
1653	return s
1654}
1655
1656// SetClientToken sets the ClientToken field's value.
1657func (s *CreateDataIntegrationOutput) SetClientToken(v string) *CreateDataIntegrationOutput {
1658	s.ClientToken = &v
1659	return s
1660}
1661
1662// SetDescription sets the Description field's value.
1663func (s *CreateDataIntegrationOutput) SetDescription(v string) *CreateDataIntegrationOutput {
1664	s.Description = &v
1665	return s
1666}
1667
1668// SetId sets the Id field's value.
1669func (s *CreateDataIntegrationOutput) SetId(v string) *CreateDataIntegrationOutput {
1670	s.Id = &v
1671	return s
1672}
1673
1674// SetKmsKey sets the KmsKey field's value.
1675func (s *CreateDataIntegrationOutput) SetKmsKey(v string) *CreateDataIntegrationOutput {
1676	s.KmsKey = &v
1677	return s
1678}
1679
1680// SetName sets the Name field's value.
1681func (s *CreateDataIntegrationOutput) SetName(v string) *CreateDataIntegrationOutput {
1682	s.Name = &v
1683	return s
1684}
1685
1686// SetScheduleConfiguration sets the ScheduleConfiguration field's value.
1687func (s *CreateDataIntegrationOutput) SetScheduleConfiguration(v *ScheduleConfiguration) *CreateDataIntegrationOutput {
1688	s.ScheduleConfiguration = v
1689	return s
1690}
1691
1692// SetSourceURI sets the SourceURI field's value.
1693func (s *CreateDataIntegrationOutput) SetSourceURI(v string) *CreateDataIntegrationOutput {
1694	s.SourceURI = &v
1695	return s
1696}
1697
1698// SetTags sets the Tags field's value.
1699func (s *CreateDataIntegrationOutput) SetTags(v map[string]*string) *CreateDataIntegrationOutput {
1700	s.Tags = v
1701	return s
1702}
1703
1704type CreateEventIntegrationInput struct {
1705	_ struct{} `type:"structure"`
1706
1707	// A unique, case-sensitive identifier that you provide to ensure the idempotency
1708	// of the request.
1709	ClientToken *string `min:"1" type:"string" idempotencyToken:"true"`
1710
1711	// The description of the event integration.
1712	Description *string `min:"1" type:"string"`
1713
1714	// The EventBridge bus.
1715	//
1716	// EventBridgeBus is a required field
1717	EventBridgeBus *string `min:"1" type:"string" required:"true"`
1718
1719	// The event filter.
1720	//
1721	// EventFilter is a required field
1722	EventFilter *EventFilter `type:"structure" required:"true"`
1723
1724	// The name of the event integration.
1725	//
1726	// Name is a required field
1727	Name *string `min:"1" type:"string" required:"true"`
1728
1729	// One or more tags.
1730	Tags map[string]*string `min:"1" type:"map"`
1731}
1732
1733// String returns the string representation.
1734//
1735// API parameter values that are decorated as "sensitive" in the API will not
1736// be included in the string output. The member name will be present, but the
1737// value will be replaced with "sensitive".
1738func (s CreateEventIntegrationInput) String() string {
1739	return awsutil.Prettify(s)
1740}
1741
1742// GoString returns the string representation.
1743//
1744// API parameter values that are decorated as "sensitive" in the API will not
1745// be included in the string output. The member name will be present, but the
1746// value will be replaced with "sensitive".
1747func (s CreateEventIntegrationInput) GoString() string {
1748	return s.String()
1749}
1750
1751// Validate inspects the fields of the type to determine if they are valid.
1752func (s *CreateEventIntegrationInput) Validate() error {
1753	invalidParams := request.ErrInvalidParams{Context: "CreateEventIntegrationInput"}
1754	if s.ClientToken != nil && len(*s.ClientToken) < 1 {
1755		invalidParams.Add(request.NewErrParamMinLen("ClientToken", 1))
1756	}
1757	if s.Description != nil && len(*s.Description) < 1 {
1758		invalidParams.Add(request.NewErrParamMinLen("Description", 1))
1759	}
1760	if s.EventBridgeBus == nil {
1761		invalidParams.Add(request.NewErrParamRequired("EventBridgeBus"))
1762	}
1763	if s.EventBridgeBus != nil && len(*s.EventBridgeBus) < 1 {
1764		invalidParams.Add(request.NewErrParamMinLen("EventBridgeBus", 1))
1765	}
1766	if s.EventFilter == nil {
1767		invalidParams.Add(request.NewErrParamRequired("EventFilter"))
1768	}
1769	if s.Name == nil {
1770		invalidParams.Add(request.NewErrParamRequired("Name"))
1771	}
1772	if s.Name != nil && len(*s.Name) < 1 {
1773		invalidParams.Add(request.NewErrParamMinLen("Name", 1))
1774	}
1775	if s.Tags != nil && len(s.Tags) < 1 {
1776		invalidParams.Add(request.NewErrParamMinLen("Tags", 1))
1777	}
1778	if s.EventFilter != nil {
1779		if err := s.EventFilter.Validate(); err != nil {
1780			invalidParams.AddNested("EventFilter", err.(request.ErrInvalidParams))
1781		}
1782	}
1783
1784	if invalidParams.Len() > 0 {
1785		return invalidParams
1786	}
1787	return nil
1788}
1789
1790// SetClientToken sets the ClientToken field's value.
1791func (s *CreateEventIntegrationInput) SetClientToken(v string) *CreateEventIntegrationInput {
1792	s.ClientToken = &v
1793	return s
1794}
1795
1796// SetDescription sets the Description field's value.
1797func (s *CreateEventIntegrationInput) SetDescription(v string) *CreateEventIntegrationInput {
1798	s.Description = &v
1799	return s
1800}
1801
1802// SetEventBridgeBus sets the EventBridgeBus field's value.
1803func (s *CreateEventIntegrationInput) SetEventBridgeBus(v string) *CreateEventIntegrationInput {
1804	s.EventBridgeBus = &v
1805	return s
1806}
1807
1808// SetEventFilter sets the EventFilter field's value.
1809func (s *CreateEventIntegrationInput) SetEventFilter(v *EventFilter) *CreateEventIntegrationInput {
1810	s.EventFilter = v
1811	return s
1812}
1813
1814// SetName sets the Name field's value.
1815func (s *CreateEventIntegrationInput) SetName(v string) *CreateEventIntegrationInput {
1816	s.Name = &v
1817	return s
1818}
1819
1820// SetTags sets the Tags field's value.
1821func (s *CreateEventIntegrationInput) SetTags(v map[string]*string) *CreateEventIntegrationInput {
1822	s.Tags = v
1823	return s
1824}
1825
1826type CreateEventIntegrationOutput struct {
1827	_ struct{} `type:"structure"`
1828
1829	// The Amazon Resource Name (ARN) of the event integration.
1830	EventIntegrationArn *string `min:"1" type:"string"`
1831}
1832
1833// String returns the string representation.
1834//
1835// API parameter values that are decorated as "sensitive" in the API will not
1836// be included in the string output. The member name will be present, but the
1837// value will be replaced with "sensitive".
1838func (s CreateEventIntegrationOutput) String() string {
1839	return awsutil.Prettify(s)
1840}
1841
1842// GoString returns the string representation.
1843//
1844// API parameter values that are decorated as "sensitive" in the API will not
1845// be included in the string output. The member name will be present, but the
1846// value will be replaced with "sensitive".
1847func (s CreateEventIntegrationOutput) GoString() string {
1848	return s.String()
1849}
1850
1851// SetEventIntegrationArn sets the EventIntegrationArn field's value.
1852func (s *CreateEventIntegrationOutput) SetEventIntegrationArn(v string) *CreateEventIntegrationOutput {
1853	s.EventIntegrationArn = &v
1854	return s
1855}
1856
1857// Summary information about the DataIntegration association.
1858type DataIntegrationAssociationSummary struct {
1859	_ struct{} `type:"structure"`
1860
1861	// The identifier for teh client that is associated with the DataIntegration
1862	// association.
1863	ClientId *string `min:"1" type:"string"`
1864
1865	// The Amazon Resource Name (ARN)of the DataIntegration.
1866	DataIntegrationArn *string `min:"1" type:"string"`
1867
1868	// The Amazon Resource Name (ARN) of the DataIntegration association.
1869	DataIntegrationAssociationArn *string `min:"1" type:"string"`
1870}
1871
1872// String returns the string representation.
1873//
1874// API parameter values that are decorated as "sensitive" in the API will not
1875// be included in the string output. The member name will be present, but the
1876// value will be replaced with "sensitive".
1877func (s DataIntegrationAssociationSummary) String() string {
1878	return awsutil.Prettify(s)
1879}
1880
1881// GoString returns the string representation.
1882//
1883// API parameter values that are decorated as "sensitive" in the API will not
1884// be included in the string output. The member name will be present, but the
1885// value will be replaced with "sensitive".
1886func (s DataIntegrationAssociationSummary) GoString() string {
1887	return s.String()
1888}
1889
1890// SetClientId sets the ClientId field's value.
1891func (s *DataIntegrationAssociationSummary) SetClientId(v string) *DataIntegrationAssociationSummary {
1892	s.ClientId = &v
1893	return s
1894}
1895
1896// SetDataIntegrationArn sets the DataIntegrationArn field's value.
1897func (s *DataIntegrationAssociationSummary) SetDataIntegrationArn(v string) *DataIntegrationAssociationSummary {
1898	s.DataIntegrationArn = &v
1899	return s
1900}
1901
1902// SetDataIntegrationAssociationArn sets the DataIntegrationAssociationArn field's value.
1903func (s *DataIntegrationAssociationSummary) SetDataIntegrationAssociationArn(v string) *DataIntegrationAssociationSummary {
1904	s.DataIntegrationAssociationArn = &v
1905	return s
1906}
1907
1908// Summary information about the DataIntegration.
1909type DataIntegrationSummary struct {
1910	_ struct{} `type:"structure"`
1911
1912	// The Amazon Resource Name (ARN) of the DataIntegration.
1913	Arn *string `min:"1" type:"string"`
1914
1915	// The name of the DataIntegration.
1916	Name *string `min:"1" type:"string"`
1917
1918	// The URI of the data source.
1919	SourceURI *string `min:"1" type:"string"`
1920}
1921
1922// String returns the string representation.
1923//
1924// API parameter values that are decorated as "sensitive" in the API will not
1925// be included in the string output. The member name will be present, but the
1926// value will be replaced with "sensitive".
1927func (s DataIntegrationSummary) String() string {
1928	return awsutil.Prettify(s)
1929}
1930
1931// GoString returns the string representation.
1932//
1933// API parameter values that are decorated as "sensitive" in the API will not
1934// be included in the string output. The member name will be present, but the
1935// value will be replaced with "sensitive".
1936func (s DataIntegrationSummary) GoString() string {
1937	return s.String()
1938}
1939
1940// SetArn sets the Arn field's value.
1941func (s *DataIntegrationSummary) SetArn(v string) *DataIntegrationSummary {
1942	s.Arn = &v
1943	return s
1944}
1945
1946// SetName sets the Name field's value.
1947func (s *DataIntegrationSummary) SetName(v string) *DataIntegrationSummary {
1948	s.Name = &v
1949	return s
1950}
1951
1952// SetSourceURI sets the SourceURI field's value.
1953func (s *DataIntegrationSummary) SetSourceURI(v string) *DataIntegrationSummary {
1954	s.SourceURI = &v
1955	return s
1956}
1957
1958type DeleteDataIntegrationInput struct {
1959	_ struct{} `type:"structure" nopayload:"true"`
1960
1961	// A unique identifier for the DataIntegration.
1962	//
1963	// DataIntegrationIdentifier is a required field
1964	DataIntegrationIdentifier *string `location:"uri" locationName:"Identifier" min:"1" type:"string" required:"true"`
1965}
1966
1967// String returns the string representation.
1968//
1969// API parameter values that are decorated as "sensitive" in the API will not
1970// be included in the string output. The member name will be present, but the
1971// value will be replaced with "sensitive".
1972func (s DeleteDataIntegrationInput) String() string {
1973	return awsutil.Prettify(s)
1974}
1975
1976// GoString returns the string representation.
1977//
1978// API parameter values that are decorated as "sensitive" in the API will not
1979// be included in the string output. The member name will be present, but the
1980// value will be replaced with "sensitive".
1981func (s DeleteDataIntegrationInput) GoString() string {
1982	return s.String()
1983}
1984
1985// Validate inspects the fields of the type to determine if they are valid.
1986func (s *DeleteDataIntegrationInput) Validate() error {
1987	invalidParams := request.ErrInvalidParams{Context: "DeleteDataIntegrationInput"}
1988	if s.DataIntegrationIdentifier == nil {
1989		invalidParams.Add(request.NewErrParamRequired("DataIntegrationIdentifier"))
1990	}
1991	if s.DataIntegrationIdentifier != nil && len(*s.DataIntegrationIdentifier) < 1 {
1992		invalidParams.Add(request.NewErrParamMinLen("DataIntegrationIdentifier", 1))
1993	}
1994
1995	if invalidParams.Len() > 0 {
1996		return invalidParams
1997	}
1998	return nil
1999}
2000
2001// SetDataIntegrationIdentifier sets the DataIntegrationIdentifier field's value.
2002func (s *DeleteDataIntegrationInput) SetDataIntegrationIdentifier(v string) *DeleteDataIntegrationInput {
2003	s.DataIntegrationIdentifier = &v
2004	return s
2005}
2006
2007type DeleteDataIntegrationOutput struct {
2008	_ struct{} `type:"structure"`
2009}
2010
2011// String returns the string representation.
2012//
2013// API parameter values that are decorated as "sensitive" in the API will not
2014// be included in the string output. The member name will be present, but the
2015// value will be replaced with "sensitive".
2016func (s DeleteDataIntegrationOutput) String() string {
2017	return awsutil.Prettify(s)
2018}
2019
2020// GoString returns the string representation.
2021//
2022// API parameter values that are decorated as "sensitive" in the API will not
2023// be included in the string output. The member name will be present, but the
2024// value will be replaced with "sensitive".
2025func (s DeleteDataIntegrationOutput) GoString() string {
2026	return s.String()
2027}
2028
2029type DeleteEventIntegrationInput struct {
2030	_ struct{} `type:"structure" nopayload:"true"`
2031
2032	// The name of the event integration.
2033	//
2034	// Name is a required field
2035	Name *string `location:"uri" locationName:"Name" min:"1" type:"string" required:"true"`
2036}
2037
2038// String returns the string representation.
2039//
2040// API parameter values that are decorated as "sensitive" in the API will not
2041// be included in the string output. The member name will be present, but the
2042// value will be replaced with "sensitive".
2043func (s DeleteEventIntegrationInput) String() string {
2044	return awsutil.Prettify(s)
2045}
2046
2047// GoString returns the string representation.
2048//
2049// API parameter values that are decorated as "sensitive" in the API will not
2050// be included in the string output. The member name will be present, but the
2051// value will be replaced with "sensitive".
2052func (s DeleteEventIntegrationInput) GoString() string {
2053	return s.String()
2054}
2055
2056// Validate inspects the fields of the type to determine if they are valid.
2057func (s *DeleteEventIntegrationInput) Validate() error {
2058	invalidParams := request.ErrInvalidParams{Context: "DeleteEventIntegrationInput"}
2059	if s.Name == nil {
2060		invalidParams.Add(request.NewErrParamRequired("Name"))
2061	}
2062	if s.Name != nil && len(*s.Name) < 1 {
2063		invalidParams.Add(request.NewErrParamMinLen("Name", 1))
2064	}
2065
2066	if invalidParams.Len() > 0 {
2067		return invalidParams
2068	}
2069	return nil
2070}
2071
2072// SetName sets the Name field's value.
2073func (s *DeleteEventIntegrationInput) SetName(v string) *DeleteEventIntegrationInput {
2074	s.Name = &v
2075	return s
2076}
2077
2078type DeleteEventIntegrationOutput struct {
2079	_ struct{} `type:"structure"`
2080}
2081
2082// String returns the string representation.
2083//
2084// API parameter values that are decorated as "sensitive" in the API will not
2085// be included in the string output. The member name will be present, but the
2086// value will be replaced with "sensitive".
2087func (s DeleteEventIntegrationOutput) String() string {
2088	return awsutil.Prettify(s)
2089}
2090
2091// GoString returns the string representation.
2092//
2093// API parameter values that are decorated as "sensitive" in the API will not
2094// be included in the string output. The member name will be present, but the
2095// value will be replaced with "sensitive".
2096func (s DeleteEventIntegrationOutput) GoString() string {
2097	return s.String()
2098}
2099
2100// A resource with the specified name already exists.
2101type DuplicateResourceException struct {
2102	_            struct{}                  `type:"structure"`
2103	RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"`
2104
2105	Message_ *string `locationName:"Message" type:"string"`
2106}
2107
2108// String returns the string representation.
2109//
2110// API parameter values that are decorated as "sensitive" in the API will not
2111// be included in the string output. The member name will be present, but the
2112// value will be replaced with "sensitive".
2113func (s DuplicateResourceException) String() string {
2114	return awsutil.Prettify(s)
2115}
2116
2117// GoString returns the string representation.
2118//
2119// API parameter values that are decorated as "sensitive" in the API will not
2120// be included in the string output. The member name will be present, but the
2121// value will be replaced with "sensitive".
2122func (s DuplicateResourceException) GoString() string {
2123	return s.String()
2124}
2125
2126func newErrorDuplicateResourceException(v protocol.ResponseMetadata) error {
2127	return &DuplicateResourceException{
2128		RespMetadata: v,
2129	}
2130}
2131
2132// Code returns the exception type name.
2133func (s *DuplicateResourceException) Code() string {
2134	return "DuplicateResourceException"
2135}
2136
2137// Message returns the exception's message.
2138func (s *DuplicateResourceException) Message() string {
2139	if s.Message_ != nil {
2140		return *s.Message_
2141	}
2142	return ""
2143}
2144
2145// OrigErr always returns nil, satisfies awserr.Error interface.
2146func (s *DuplicateResourceException) OrigErr() error {
2147	return nil
2148}
2149
2150func (s *DuplicateResourceException) Error() string {
2151	return fmt.Sprintf("%s: %s", s.Code(), s.Message())
2152}
2153
2154// Status code returns the HTTP status code for the request's response error.
2155func (s *DuplicateResourceException) StatusCode() int {
2156	return s.RespMetadata.StatusCode
2157}
2158
2159// RequestID returns the service's response RequestID for request.
2160func (s *DuplicateResourceException) RequestID() string {
2161	return s.RespMetadata.RequestID
2162}
2163
2164// The event filter.
2165type EventFilter struct {
2166	_ struct{} `type:"structure"`
2167
2168	// The source of the events.
2169	//
2170	// Source is a required field
2171	Source *string `min:"1" type:"string" required:"true"`
2172}
2173
2174// String returns the string representation.
2175//
2176// API parameter values that are decorated as "sensitive" in the API will not
2177// be included in the string output. The member name will be present, but the
2178// value will be replaced with "sensitive".
2179func (s EventFilter) String() string {
2180	return awsutil.Prettify(s)
2181}
2182
2183// GoString returns the string representation.
2184//
2185// API parameter values that are decorated as "sensitive" in the API will not
2186// be included in the string output. The member name will be present, but the
2187// value will be replaced with "sensitive".
2188func (s EventFilter) GoString() string {
2189	return s.String()
2190}
2191
2192// Validate inspects the fields of the type to determine if they are valid.
2193func (s *EventFilter) Validate() error {
2194	invalidParams := request.ErrInvalidParams{Context: "EventFilter"}
2195	if s.Source == nil {
2196		invalidParams.Add(request.NewErrParamRequired("Source"))
2197	}
2198	if s.Source != nil && len(*s.Source) < 1 {
2199		invalidParams.Add(request.NewErrParamMinLen("Source", 1))
2200	}
2201
2202	if invalidParams.Len() > 0 {
2203		return invalidParams
2204	}
2205	return nil
2206}
2207
2208// SetSource sets the Source field's value.
2209func (s *EventFilter) SetSource(v string) *EventFilter {
2210	s.Source = &v
2211	return s
2212}
2213
2214// The event integration.
2215type EventIntegration struct {
2216	_ struct{} `type:"structure"`
2217
2218	// The event integration description.
2219	Description *string `min:"1" type:"string"`
2220
2221	// The Amazon EventBridge bus for the event integration.
2222	EventBridgeBus *string `min:"1" type:"string"`
2223
2224	// The event integration filter.
2225	EventFilter *EventFilter `type:"structure"`
2226
2227	// The Amazon Resource Name (ARN) of the event integration.
2228	EventIntegrationArn *string `min:"1" type:"string"`
2229
2230	// The name of the event integration.
2231	Name *string `min:"1" type:"string"`
2232
2233	// The tags.
2234	Tags map[string]*string `min:"1" type:"map"`
2235}
2236
2237// String returns the string representation.
2238//
2239// API parameter values that are decorated as "sensitive" in the API will not
2240// be included in the string output. The member name will be present, but the
2241// value will be replaced with "sensitive".
2242func (s EventIntegration) String() string {
2243	return awsutil.Prettify(s)
2244}
2245
2246// GoString returns the string representation.
2247//
2248// API parameter values that are decorated as "sensitive" in the API will not
2249// be included in the string output. The member name will be present, but the
2250// value will be replaced with "sensitive".
2251func (s EventIntegration) GoString() string {
2252	return s.String()
2253}
2254
2255// SetDescription sets the Description field's value.
2256func (s *EventIntegration) SetDescription(v string) *EventIntegration {
2257	s.Description = &v
2258	return s
2259}
2260
2261// SetEventBridgeBus sets the EventBridgeBus field's value.
2262func (s *EventIntegration) SetEventBridgeBus(v string) *EventIntegration {
2263	s.EventBridgeBus = &v
2264	return s
2265}
2266
2267// SetEventFilter sets the EventFilter field's value.
2268func (s *EventIntegration) SetEventFilter(v *EventFilter) *EventIntegration {
2269	s.EventFilter = v
2270	return s
2271}
2272
2273// SetEventIntegrationArn sets the EventIntegrationArn field's value.
2274func (s *EventIntegration) SetEventIntegrationArn(v string) *EventIntegration {
2275	s.EventIntegrationArn = &v
2276	return s
2277}
2278
2279// SetName sets the Name field's value.
2280func (s *EventIntegration) SetName(v string) *EventIntegration {
2281	s.Name = &v
2282	return s
2283}
2284
2285// SetTags sets the Tags field's value.
2286func (s *EventIntegration) SetTags(v map[string]*string) *EventIntegration {
2287	s.Tags = v
2288	return s
2289}
2290
2291// The event integration association.
2292type EventIntegrationAssociation struct {
2293	_ struct{} `type:"structure"`
2294
2295	// The metadata associated with the client.
2296	ClientAssociationMetadata map[string]*string `type:"map"`
2297
2298	// The identifier for the client that is associated with the event integration.
2299	ClientId *string `min:"1" type:"string"`
2300
2301	// The name of the EventBridge rule.
2302	EventBridgeRuleName *string `min:"1" type:"string"`
2303
2304	// The Amazon Resource Name (ARN) for the event integration association.
2305	EventIntegrationAssociationArn *string `min:"1" type:"string"`
2306
2307	// The identifier for the event integration association.
2308	EventIntegrationAssociationId *string `type:"string"`
2309
2310	// The name of the event integration.
2311	EventIntegrationName *string `min:"1" type:"string"`
2312}
2313
2314// String returns the string representation.
2315//
2316// API parameter values that are decorated as "sensitive" in the API will not
2317// be included in the string output. The member name will be present, but the
2318// value will be replaced with "sensitive".
2319func (s EventIntegrationAssociation) String() string {
2320	return awsutil.Prettify(s)
2321}
2322
2323// GoString returns the string representation.
2324//
2325// API parameter values that are decorated as "sensitive" in the API will not
2326// be included in the string output. The member name will be present, but the
2327// value will be replaced with "sensitive".
2328func (s EventIntegrationAssociation) GoString() string {
2329	return s.String()
2330}
2331
2332// SetClientAssociationMetadata sets the ClientAssociationMetadata field's value.
2333func (s *EventIntegrationAssociation) SetClientAssociationMetadata(v map[string]*string) *EventIntegrationAssociation {
2334	s.ClientAssociationMetadata = v
2335	return s
2336}
2337
2338// SetClientId sets the ClientId field's value.
2339func (s *EventIntegrationAssociation) SetClientId(v string) *EventIntegrationAssociation {
2340	s.ClientId = &v
2341	return s
2342}
2343
2344// SetEventBridgeRuleName sets the EventBridgeRuleName field's value.
2345func (s *EventIntegrationAssociation) SetEventBridgeRuleName(v string) *EventIntegrationAssociation {
2346	s.EventBridgeRuleName = &v
2347	return s
2348}
2349
2350// SetEventIntegrationAssociationArn sets the EventIntegrationAssociationArn field's value.
2351func (s *EventIntegrationAssociation) SetEventIntegrationAssociationArn(v string) *EventIntegrationAssociation {
2352	s.EventIntegrationAssociationArn = &v
2353	return s
2354}
2355
2356// SetEventIntegrationAssociationId sets the EventIntegrationAssociationId field's value.
2357func (s *EventIntegrationAssociation) SetEventIntegrationAssociationId(v string) *EventIntegrationAssociation {
2358	s.EventIntegrationAssociationId = &v
2359	return s
2360}
2361
2362// SetEventIntegrationName sets the EventIntegrationName field's value.
2363func (s *EventIntegrationAssociation) SetEventIntegrationName(v string) *EventIntegrationAssociation {
2364	s.EventIntegrationName = &v
2365	return s
2366}
2367
2368type GetDataIntegrationInput struct {
2369	_ struct{} `type:"structure" nopayload:"true"`
2370
2371	// A unique identifier.
2372	//
2373	// Identifier is a required field
2374	Identifier *string `location:"uri" locationName:"Identifier" min:"1" type:"string" required:"true"`
2375}
2376
2377// String returns the string representation.
2378//
2379// API parameter values that are decorated as "sensitive" in the API will not
2380// be included in the string output. The member name will be present, but the
2381// value will be replaced with "sensitive".
2382func (s GetDataIntegrationInput) String() string {
2383	return awsutil.Prettify(s)
2384}
2385
2386// GoString returns the string representation.
2387//
2388// API parameter values that are decorated as "sensitive" in the API will not
2389// be included in the string output. The member name will be present, but the
2390// value will be replaced with "sensitive".
2391func (s GetDataIntegrationInput) GoString() string {
2392	return s.String()
2393}
2394
2395// Validate inspects the fields of the type to determine if they are valid.
2396func (s *GetDataIntegrationInput) Validate() error {
2397	invalidParams := request.ErrInvalidParams{Context: "GetDataIntegrationInput"}
2398	if s.Identifier == nil {
2399		invalidParams.Add(request.NewErrParamRequired("Identifier"))
2400	}
2401	if s.Identifier != nil && len(*s.Identifier) < 1 {
2402		invalidParams.Add(request.NewErrParamMinLen("Identifier", 1))
2403	}
2404
2405	if invalidParams.Len() > 0 {
2406		return invalidParams
2407	}
2408	return nil
2409}
2410
2411// SetIdentifier sets the Identifier field's value.
2412func (s *GetDataIntegrationInput) SetIdentifier(v string) *GetDataIntegrationInput {
2413	s.Identifier = &v
2414	return s
2415}
2416
2417type GetDataIntegrationOutput struct {
2418	_ struct{} `type:"structure"`
2419
2420	// The Amazon Resource Name (ARN) for the DataIntegration.
2421	Arn *string `min:"1" type:"string"`
2422
2423	// The KMS key for the DataIntegration.
2424	Description *string `min:"1" type:"string"`
2425
2426	// A unique identifier.
2427	Id *string `type:"string"`
2428
2429	// The KMS key for the DataIntegration.
2430	KmsKey *string `min:"1" type:"string"`
2431
2432	// The name of the DataIntegration.
2433	Name *string `min:"1" type:"string"`
2434
2435	// The name of the data and how often it should be pulled from the source.
2436	ScheduleConfiguration *ScheduleConfiguration `type:"structure"`
2437
2438	// The URI of the data source.
2439	SourceURI *string `min:"1" type:"string"`
2440
2441	// One or more tags.
2442	Tags map[string]*string `min:"1" type:"map"`
2443}
2444
2445// String returns the string representation.
2446//
2447// API parameter values that are decorated as "sensitive" in the API will not
2448// be included in the string output. The member name will be present, but the
2449// value will be replaced with "sensitive".
2450func (s GetDataIntegrationOutput) String() string {
2451	return awsutil.Prettify(s)
2452}
2453
2454// GoString returns the string representation.
2455//
2456// API parameter values that are decorated as "sensitive" in the API will not
2457// be included in the string output. The member name will be present, but the
2458// value will be replaced with "sensitive".
2459func (s GetDataIntegrationOutput) GoString() string {
2460	return s.String()
2461}
2462
2463// SetArn sets the Arn field's value.
2464func (s *GetDataIntegrationOutput) SetArn(v string) *GetDataIntegrationOutput {
2465	s.Arn = &v
2466	return s
2467}
2468
2469// SetDescription sets the Description field's value.
2470func (s *GetDataIntegrationOutput) SetDescription(v string) *GetDataIntegrationOutput {
2471	s.Description = &v
2472	return s
2473}
2474
2475// SetId sets the Id field's value.
2476func (s *GetDataIntegrationOutput) SetId(v string) *GetDataIntegrationOutput {
2477	s.Id = &v
2478	return s
2479}
2480
2481// SetKmsKey sets the KmsKey field's value.
2482func (s *GetDataIntegrationOutput) SetKmsKey(v string) *GetDataIntegrationOutput {
2483	s.KmsKey = &v
2484	return s
2485}
2486
2487// SetName sets the Name field's value.
2488func (s *GetDataIntegrationOutput) SetName(v string) *GetDataIntegrationOutput {
2489	s.Name = &v
2490	return s
2491}
2492
2493// SetScheduleConfiguration sets the ScheduleConfiguration field's value.
2494func (s *GetDataIntegrationOutput) SetScheduleConfiguration(v *ScheduleConfiguration) *GetDataIntegrationOutput {
2495	s.ScheduleConfiguration = v
2496	return s
2497}
2498
2499// SetSourceURI sets the SourceURI field's value.
2500func (s *GetDataIntegrationOutput) SetSourceURI(v string) *GetDataIntegrationOutput {
2501	s.SourceURI = &v
2502	return s
2503}
2504
2505// SetTags sets the Tags field's value.
2506func (s *GetDataIntegrationOutput) SetTags(v map[string]*string) *GetDataIntegrationOutput {
2507	s.Tags = v
2508	return s
2509}
2510
2511type GetEventIntegrationInput struct {
2512	_ struct{} `type:"structure" nopayload:"true"`
2513
2514	// The name of the event integration.
2515	//
2516	// Name is a required field
2517	Name *string `location:"uri" locationName:"Name" min:"1" type:"string" required:"true"`
2518}
2519
2520// String returns the string representation.
2521//
2522// API parameter values that are decorated as "sensitive" in the API will not
2523// be included in the string output. The member name will be present, but the
2524// value will be replaced with "sensitive".
2525func (s GetEventIntegrationInput) String() string {
2526	return awsutil.Prettify(s)
2527}
2528
2529// GoString returns the string representation.
2530//
2531// API parameter values that are decorated as "sensitive" in the API will not
2532// be included in the string output. The member name will be present, but the
2533// value will be replaced with "sensitive".
2534func (s GetEventIntegrationInput) GoString() string {
2535	return s.String()
2536}
2537
2538// Validate inspects the fields of the type to determine if they are valid.
2539func (s *GetEventIntegrationInput) Validate() error {
2540	invalidParams := request.ErrInvalidParams{Context: "GetEventIntegrationInput"}
2541	if s.Name == nil {
2542		invalidParams.Add(request.NewErrParamRequired("Name"))
2543	}
2544	if s.Name != nil && len(*s.Name) < 1 {
2545		invalidParams.Add(request.NewErrParamMinLen("Name", 1))
2546	}
2547
2548	if invalidParams.Len() > 0 {
2549		return invalidParams
2550	}
2551	return nil
2552}
2553
2554// SetName sets the Name field's value.
2555func (s *GetEventIntegrationInput) SetName(v string) *GetEventIntegrationInput {
2556	s.Name = &v
2557	return s
2558}
2559
2560type GetEventIntegrationOutput struct {
2561	_ struct{} `type:"structure"`
2562
2563	// The description of the event integration.
2564	Description *string `min:"1" type:"string"`
2565
2566	// The EventBridge bus.
2567	EventBridgeBus *string `min:"1" type:"string"`
2568
2569	// The event filter.
2570	EventFilter *EventFilter `type:"structure"`
2571
2572	// The Amazon Resource Name (ARN) for the event integration.
2573	EventIntegrationArn *string `min:"1" type:"string"`
2574
2575	// The name of the event integration.
2576	Name *string `min:"1" type:"string"`
2577
2578	// One or more tags.
2579	Tags map[string]*string `min:"1" type:"map"`
2580}
2581
2582// String returns the string representation.
2583//
2584// API parameter values that are decorated as "sensitive" in the API will not
2585// be included in the string output. The member name will be present, but the
2586// value will be replaced with "sensitive".
2587func (s GetEventIntegrationOutput) String() string {
2588	return awsutil.Prettify(s)
2589}
2590
2591// GoString returns the string representation.
2592//
2593// API parameter values that are decorated as "sensitive" in the API will not
2594// be included in the string output. The member name will be present, but the
2595// value will be replaced with "sensitive".
2596func (s GetEventIntegrationOutput) GoString() string {
2597	return s.String()
2598}
2599
2600// SetDescription sets the Description field's value.
2601func (s *GetEventIntegrationOutput) SetDescription(v string) *GetEventIntegrationOutput {
2602	s.Description = &v
2603	return s
2604}
2605
2606// SetEventBridgeBus sets the EventBridgeBus field's value.
2607func (s *GetEventIntegrationOutput) SetEventBridgeBus(v string) *GetEventIntegrationOutput {
2608	s.EventBridgeBus = &v
2609	return s
2610}
2611
2612// SetEventFilter sets the EventFilter field's value.
2613func (s *GetEventIntegrationOutput) SetEventFilter(v *EventFilter) *GetEventIntegrationOutput {
2614	s.EventFilter = v
2615	return s
2616}
2617
2618// SetEventIntegrationArn sets the EventIntegrationArn field's value.
2619func (s *GetEventIntegrationOutput) SetEventIntegrationArn(v string) *GetEventIntegrationOutput {
2620	s.EventIntegrationArn = &v
2621	return s
2622}
2623
2624// SetName sets the Name field's value.
2625func (s *GetEventIntegrationOutput) SetName(v string) *GetEventIntegrationOutput {
2626	s.Name = &v
2627	return s
2628}
2629
2630// SetTags sets the Tags field's value.
2631func (s *GetEventIntegrationOutput) SetTags(v map[string]*string) *GetEventIntegrationOutput {
2632	s.Tags = v
2633	return s
2634}
2635
2636// Request processing failed due to an error or failure with the service.
2637type InternalServiceError struct {
2638	_            struct{}                  `type:"structure"`
2639	RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"`
2640
2641	Message_ *string `locationName:"Message" type:"string"`
2642}
2643
2644// String returns the string representation.
2645//
2646// API parameter values that are decorated as "sensitive" in the API will not
2647// be included in the string output. The member name will be present, but the
2648// value will be replaced with "sensitive".
2649func (s InternalServiceError) String() string {
2650	return awsutil.Prettify(s)
2651}
2652
2653// GoString returns the string representation.
2654//
2655// API parameter values that are decorated as "sensitive" in the API will not
2656// be included in the string output. The member name will be present, but the
2657// value will be replaced with "sensitive".
2658func (s InternalServiceError) GoString() string {
2659	return s.String()
2660}
2661
2662func newErrorInternalServiceError(v protocol.ResponseMetadata) error {
2663	return &InternalServiceError{
2664		RespMetadata: v,
2665	}
2666}
2667
2668// Code returns the exception type name.
2669func (s *InternalServiceError) Code() string {
2670	return "InternalServiceError"
2671}
2672
2673// Message returns the exception's message.
2674func (s *InternalServiceError) Message() string {
2675	if s.Message_ != nil {
2676		return *s.Message_
2677	}
2678	return ""
2679}
2680
2681// OrigErr always returns nil, satisfies awserr.Error interface.
2682func (s *InternalServiceError) OrigErr() error {
2683	return nil
2684}
2685
2686func (s *InternalServiceError) Error() string {
2687	return fmt.Sprintf("%s: %s", s.Code(), s.Message())
2688}
2689
2690// Status code returns the HTTP status code for the request's response error.
2691func (s *InternalServiceError) StatusCode() int {
2692	return s.RespMetadata.StatusCode
2693}
2694
2695// RequestID returns the service's response RequestID for request.
2696func (s *InternalServiceError) RequestID() string {
2697	return s.RespMetadata.RequestID
2698}
2699
2700// The request is not valid.
2701type InvalidRequestException struct {
2702	_            struct{}                  `type:"structure"`
2703	RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"`
2704
2705	Message_ *string `locationName:"Message" type:"string"`
2706}
2707
2708// String returns the string representation.
2709//
2710// API parameter values that are decorated as "sensitive" in the API will not
2711// be included in the string output. The member name will be present, but the
2712// value will be replaced with "sensitive".
2713func (s InvalidRequestException) String() string {
2714	return awsutil.Prettify(s)
2715}
2716
2717// GoString returns the string representation.
2718//
2719// API parameter values that are decorated as "sensitive" in the API will not
2720// be included in the string output. The member name will be present, but the
2721// value will be replaced with "sensitive".
2722func (s InvalidRequestException) GoString() string {
2723	return s.String()
2724}
2725
2726func newErrorInvalidRequestException(v protocol.ResponseMetadata) error {
2727	return &InvalidRequestException{
2728		RespMetadata: v,
2729	}
2730}
2731
2732// Code returns the exception type name.
2733func (s *InvalidRequestException) Code() string {
2734	return "InvalidRequestException"
2735}
2736
2737// Message returns the exception's message.
2738func (s *InvalidRequestException) Message() string {
2739	if s.Message_ != nil {
2740		return *s.Message_
2741	}
2742	return ""
2743}
2744
2745// OrigErr always returns nil, satisfies awserr.Error interface.
2746func (s *InvalidRequestException) OrigErr() error {
2747	return nil
2748}
2749
2750func (s *InvalidRequestException) Error() string {
2751	return fmt.Sprintf("%s: %s", s.Code(), s.Message())
2752}
2753
2754// Status code returns the HTTP status code for the request's response error.
2755func (s *InvalidRequestException) StatusCode() int {
2756	return s.RespMetadata.StatusCode
2757}
2758
2759// RequestID returns the service's response RequestID for request.
2760func (s *InvalidRequestException) RequestID() string {
2761	return s.RespMetadata.RequestID
2762}
2763
2764type ListDataIntegrationAssociationsInput struct {
2765	_ struct{} `type:"structure" nopayload:"true"`
2766
2767	// A unique identifier for the DataIntegration.
2768	//
2769	// DataIntegrationIdentifier is a required field
2770	DataIntegrationIdentifier *string `location:"uri" locationName:"Identifier" min:"1" type:"string" required:"true"`
2771
2772	// The maximum number of results to return per page.
2773	MaxResults *int64 `location:"querystring" locationName:"maxResults" min:"1" type:"integer"`
2774
2775	// The token for the next set of results. Use the value returned in the previous
2776	// response in the next request to retrieve the next set of results.
2777	NextToken *string `location:"querystring" locationName:"nextToken" min:"1" type:"string"`
2778}
2779
2780// String returns the string representation.
2781//
2782// API parameter values that are decorated as "sensitive" in the API will not
2783// be included in the string output. The member name will be present, but the
2784// value will be replaced with "sensitive".
2785func (s ListDataIntegrationAssociationsInput) String() string {
2786	return awsutil.Prettify(s)
2787}
2788
2789// GoString returns the string representation.
2790//
2791// API parameter values that are decorated as "sensitive" in the API will not
2792// be included in the string output. The member name will be present, but the
2793// value will be replaced with "sensitive".
2794func (s ListDataIntegrationAssociationsInput) GoString() string {
2795	return s.String()
2796}
2797
2798// Validate inspects the fields of the type to determine if they are valid.
2799func (s *ListDataIntegrationAssociationsInput) Validate() error {
2800	invalidParams := request.ErrInvalidParams{Context: "ListDataIntegrationAssociationsInput"}
2801	if s.DataIntegrationIdentifier == nil {
2802		invalidParams.Add(request.NewErrParamRequired("DataIntegrationIdentifier"))
2803	}
2804	if s.DataIntegrationIdentifier != nil && len(*s.DataIntegrationIdentifier) < 1 {
2805		invalidParams.Add(request.NewErrParamMinLen("DataIntegrationIdentifier", 1))
2806	}
2807	if s.MaxResults != nil && *s.MaxResults < 1 {
2808		invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1))
2809	}
2810	if s.NextToken != nil && len(*s.NextToken) < 1 {
2811		invalidParams.Add(request.NewErrParamMinLen("NextToken", 1))
2812	}
2813
2814	if invalidParams.Len() > 0 {
2815		return invalidParams
2816	}
2817	return nil
2818}
2819
2820// SetDataIntegrationIdentifier sets the DataIntegrationIdentifier field's value.
2821func (s *ListDataIntegrationAssociationsInput) SetDataIntegrationIdentifier(v string) *ListDataIntegrationAssociationsInput {
2822	s.DataIntegrationIdentifier = &v
2823	return s
2824}
2825
2826// SetMaxResults sets the MaxResults field's value.
2827func (s *ListDataIntegrationAssociationsInput) SetMaxResults(v int64) *ListDataIntegrationAssociationsInput {
2828	s.MaxResults = &v
2829	return s
2830}
2831
2832// SetNextToken sets the NextToken field's value.
2833func (s *ListDataIntegrationAssociationsInput) SetNextToken(v string) *ListDataIntegrationAssociationsInput {
2834	s.NextToken = &v
2835	return s
2836}
2837
2838type ListDataIntegrationAssociationsOutput struct {
2839	_ struct{} `type:"structure"`
2840
2841	// The Amazon Resource Name (ARN) and unique ID of the DataIntegration association.
2842	DataIntegrationAssociations []*DataIntegrationAssociationSummary `min:"1" type:"list"`
2843
2844	// If there are additional results, this is the token for the next set of results.
2845	NextToken *string `min:"1" type:"string"`
2846}
2847
2848// String returns the string representation.
2849//
2850// API parameter values that are decorated as "sensitive" in the API will not
2851// be included in the string output. The member name will be present, but the
2852// value will be replaced with "sensitive".
2853func (s ListDataIntegrationAssociationsOutput) String() string {
2854	return awsutil.Prettify(s)
2855}
2856
2857// GoString returns the string representation.
2858//
2859// API parameter values that are decorated as "sensitive" in the API will not
2860// be included in the string output. The member name will be present, but the
2861// value will be replaced with "sensitive".
2862func (s ListDataIntegrationAssociationsOutput) GoString() string {
2863	return s.String()
2864}
2865
2866// SetDataIntegrationAssociations sets the DataIntegrationAssociations field's value.
2867func (s *ListDataIntegrationAssociationsOutput) SetDataIntegrationAssociations(v []*DataIntegrationAssociationSummary) *ListDataIntegrationAssociationsOutput {
2868	s.DataIntegrationAssociations = v
2869	return s
2870}
2871
2872// SetNextToken sets the NextToken field's value.
2873func (s *ListDataIntegrationAssociationsOutput) SetNextToken(v string) *ListDataIntegrationAssociationsOutput {
2874	s.NextToken = &v
2875	return s
2876}
2877
2878type ListDataIntegrationsInput struct {
2879	_ struct{} `type:"structure" nopayload:"true"`
2880
2881	// The maximum number of results to return per page.
2882	MaxResults *int64 `location:"querystring" locationName:"maxResults" min:"1" type:"integer"`
2883
2884	// The token for the next set of results. Use the value returned in the previous
2885	// response in the next request to retrieve the next set of results.
2886	NextToken *string `location:"querystring" locationName:"nextToken" min:"1" type:"string"`
2887}
2888
2889// String returns the string representation.
2890//
2891// API parameter values that are decorated as "sensitive" in the API will not
2892// be included in the string output. The member name will be present, but the
2893// value will be replaced with "sensitive".
2894func (s ListDataIntegrationsInput) String() string {
2895	return awsutil.Prettify(s)
2896}
2897
2898// GoString returns the string representation.
2899//
2900// API parameter values that are decorated as "sensitive" in the API will not
2901// be included in the string output. The member name will be present, but the
2902// value will be replaced with "sensitive".
2903func (s ListDataIntegrationsInput) GoString() string {
2904	return s.String()
2905}
2906
2907// Validate inspects the fields of the type to determine if they are valid.
2908func (s *ListDataIntegrationsInput) Validate() error {
2909	invalidParams := request.ErrInvalidParams{Context: "ListDataIntegrationsInput"}
2910	if s.MaxResults != nil && *s.MaxResults < 1 {
2911		invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1))
2912	}
2913	if s.NextToken != nil && len(*s.NextToken) < 1 {
2914		invalidParams.Add(request.NewErrParamMinLen("NextToken", 1))
2915	}
2916
2917	if invalidParams.Len() > 0 {
2918		return invalidParams
2919	}
2920	return nil
2921}
2922
2923// SetMaxResults sets the MaxResults field's value.
2924func (s *ListDataIntegrationsInput) SetMaxResults(v int64) *ListDataIntegrationsInput {
2925	s.MaxResults = &v
2926	return s
2927}
2928
2929// SetNextToken sets the NextToken field's value.
2930func (s *ListDataIntegrationsInput) SetNextToken(v string) *ListDataIntegrationsInput {
2931	s.NextToken = &v
2932	return s
2933}
2934
2935type ListDataIntegrationsOutput struct {
2936	_ struct{} `type:"structure"`
2937
2938	// The DataIntegrations associated with this account.
2939	DataIntegrations []*DataIntegrationSummary `min:"1" type:"list"`
2940
2941	// If there are additional results, this is the token for the next set of results.
2942	NextToken *string `min:"1" type:"string"`
2943}
2944
2945// String returns the string representation.
2946//
2947// API parameter values that are decorated as "sensitive" in the API will not
2948// be included in the string output. The member name will be present, but the
2949// value will be replaced with "sensitive".
2950func (s ListDataIntegrationsOutput) String() string {
2951	return awsutil.Prettify(s)
2952}
2953
2954// GoString returns the string representation.
2955//
2956// API parameter values that are decorated as "sensitive" in the API will not
2957// be included in the string output. The member name will be present, but the
2958// value will be replaced with "sensitive".
2959func (s ListDataIntegrationsOutput) GoString() string {
2960	return s.String()
2961}
2962
2963// SetDataIntegrations sets the DataIntegrations field's value.
2964func (s *ListDataIntegrationsOutput) SetDataIntegrations(v []*DataIntegrationSummary) *ListDataIntegrationsOutput {
2965	s.DataIntegrations = v
2966	return s
2967}
2968
2969// SetNextToken sets the NextToken field's value.
2970func (s *ListDataIntegrationsOutput) SetNextToken(v string) *ListDataIntegrationsOutput {
2971	s.NextToken = &v
2972	return s
2973}
2974
2975type ListEventIntegrationAssociationsInput struct {
2976	_ struct{} `type:"structure" nopayload:"true"`
2977
2978	// The name of the event integration.
2979	//
2980	// EventIntegrationName is a required field
2981	EventIntegrationName *string `location:"uri" locationName:"Name" min:"1" type:"string" required:"true"`
2982
2983	// The maximum number of results to return per page.
2984	MaxResults *int64 `location:"querystring" locationName:"maxResults" min:"1" type:"integer"`
2985
2986	// The token for the next set of results. Use the value returned in the previous
2987	// response in the next request to retrieve the next set of results.
2988	NextToken *string `location:"querystring" locationName:"nextToken" min:"1" type:"string"`
2989}
2990
2991// String returns the string representation.
2992//
2993// API parameter values that are decorated as "sensitive" in the API will not
2994// be included in the string output. The member name will be present, but the
2995// value will be replaced with "sensitive".
2996func (s ListEventIntegrationAssociationsInput) String() string {
2997	return awsutil.Prettify(s)
2998}
2999
3000// GoString returns the string representation.
3001//
3002// API parameter values that are decorated as "sensitive" in the API will not
3003// be included in the string output. The member name will be present, but the
3004// value will be replaced with "sensitive".
3005func (s ListEventIntegrationAssociationsInput) GoString() string {
3006	return s.String()
3007}
3008
3009// Validate inspects the fields of the type to determine if they are valid.
3010func (s *ListEventIntegrationAssociationsInput) Validate() error {
3011	invalidParams := request.ErrInvalidParams{Context: "ListEventIntegrationAssociationsInput"}
3012	if s.EventIntegrationName == nil {
3013		invalidParams.Add(request.NewErrParamRequired("EventIntegrationName"))
3014	}
3015	if s.EventIntegrationName != nil && len(*s.EventIntegrationName) < 1 {
3016		invalidParams.Add(request.NewErrParamMinLen("EventIntegrationName", 1))
3017	}
3018	if s.MaxResults != nil && *s.MaxResults < 1 {
3019		invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1))
3020	}
3021	if s.NextToken != nil && len(*s.NextToken) < 1 {
3022		invalidParams.Add(request.NewErrParamMinLen("NextToken", 1))
3023	}
3024
3025	if invalidParams.Len() > 0 {
3026		return invalidParams
3027	}
3028	return nil
3029}
3030
3031// SetEventIntegrationName sets the EventIntegrationName field's value.
3032func (s *ListEventIntegrationAssociationsInput) SetEventIntegrationName(v string) *ListEventIntegrationAssociationsInput {
3033	s.EventIntegrationName = &v
3034	return s
3035}
3036
3037// SetMaxResults sets the MaxResults field's value.
3038func (s *ListEventIntegrationAssociationsInput) SetMaxResults(v int64) *ListEventIntegrationAssociationsInput {
3039	s.MaxResults = &v
3040	return s
3041}
3042
3043// SetNextToken sets the NextToken field's value.
3044func (s *ListEventIntegrationAssociationsInput) SetNextToken(v string) *ListEventIntegrationAssociationsInput {
3045	s.NextToken = &v
3046	return s
3047}
3048
3049type ListEventIntegrationAssociationsOutput struct {
3050	_ struct{} `type:"structure"`
3051
3052	// The event integration associations.
3053	EventIntegrationAssociations []*EventIntegrationAssociation `min:"1" type:"list"`
3054
3055	// If there are additional results, this is the token for the next set of results.
3056	NextToken *string `min:"1" type:"string"`
3057}
3058
3059// String returns the string representation.
3060//
3061// API parameter values that are decorated as "sensitive" in the API will not
3062// be included in the string output. The member name will be present, but the
3063// value will be replaced with "sensitive".
3064func (s ListEventIntegrationAssociationsOutput) String() string {
3065	return awsutil.Prettify(s)
3066}
3067
3068// GoString returns the string representation.
3069//
3070// API parameter values that are decorated as "sensitive" in the API will not
3071// be included in the string output. The member name will be present, but the
3072// value will be replaced with "sensitive".
3073func (s ListEventIntegrationAssociationsOutput) GoString() string {
3074	return s.String()
3075}
3076
3077// SetEventIntegrationAssociations sets the EventIntegrationAssociations field's value.
3078func (s *ListEventIntegrationAssociationsOutput) SetEventIntegrationAssociations(v []*EventIntegrationAssociation) *ListEventIntegrationAssociationsOutput {
3079	s.EventIntegrationAssociations = v
3080	return s
3081}
3082
3083// SetNextToken sets the NextToken field's value.
3084func (s *ListEventIntegrationAssociationsOutput) SetNextToken(v string) *ListEventIntegrationAssociationsOutput {
3085	s.NextToken = &v
3086	return s
3087}
3088
3089type ListEventIntegrationsInput struct {
3090	_ struct{} `type:"structure" nopayload:"true"`
3091
3092	// The maximum number of results to return per page.
3093	MaxResults *int64 `location:"querystring" locationName:"maxResults" min:"1" type:"integer"`
3094
3095	// The token for the next set of results. Use the value returned in the previous
3096	// response in the next request to retrieve the next set of results.
3097	NextToken *string `location:"querystring" locationName:"nextToken" min:"1" type:"string"`
3098}
3099
3100// String returns the string representation.
3101//
3102// API parameter values that are decorated as "sensitive" in the API will not
3103// be included in the string output. The member name will be present, but the
3104// value will be replaced with "sensitive".
3105func (s ListEventIntegrationsInput) String() string {
3106	return awsutil.Prettify(s)
3107}
3108
3109// GoString returns the string representation.
3110//
3111// API parameter values that are decorated as "sensitive" in the API will not
3112// be included in the string output. The member name will be present, but the
3113// value will be replaced with "sensitive".
3114func (s ListEventIntegrationsInput) GoString() string {
3115	return s.String()
3116}
3117
3118// Validate inspects the fields of the type to determine if they are valid.
3119func (s *ListEventIntegrationsInput) Validate() error {
3120	invalidParams := request.ErrInvalidParams{Context: "ListEventIntegrationsInput"}
3121	if s.MaxResults != nil && *s.MaxResults < 1 {
3122		invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1))
3123	}
3124	if s.NextToken != nil && len(*s.NextToken) < 1 {
3125		invalidParams.Add(request.NewErrParamMinLen("NextToken", 1))
3126	}
3127
3128	if invalidParams.Len() > 0 {
3129		return invalidParams
3130	}
3131	return nil
3132}
3133
3134// SetMaxResults sets the MaxResults field's value.
3135func (s *ListEventIntegrationsInput) SetMaxResults(v int64) *ListEventIntegrationsInput {
3136	s.MaxResults = &v
3137	return s
3138}
3139
3140// SetNextToken sets the NextToken field's value.
3141func (s *ListEventIntegrationsInput) SetNextToken(v string) *ListEventIntegrationsInput {
3142	s.NextToken = &v
3143	return s
3144}
3145
3146type ListEventIntegrationsOutput struct {
3147	_ struct{} `type:"structure"`
3148
3149	// The event integrations.
3150	EventIntegrations []*EventIntegration `min:"1" type:"list"`
3151
3152	// If there are additional results, this is the token for the next set of results.
3153	NextToken *string `min:"1" type:"string"`
3154}
3155
3156// String returns the string representation.
3157//
3158// API parameter values that are decorated as "sensitive" in the API will not
3159// be included in the string output. The member name will be present, but the
3160// value will be replaced with "sensitive".
3161func (s ListEventIntegrationsOutput) String() string {
3162	return awsutil.Prettify(s)
3163}
3164
3165// GoString returns the string representation.
3166//
3167// API parameter values that are decorated as "sensitive" in the API will not
3168// be included in the string output. The member name will be present, but the
3169// value will be replaced with "sensitive".
3170func (s ListEventIntegrationsOutput) GoString() string {
3171	return s.String()
3172}
3173
3174// SetEventIntegrations sets the EventIntegrations field's value.
3175func (s *ListEventIntegrationsOutput) SetEventIntegrations(v []*EventIntegration) *ListEventIntegrationsOutput {
3176	s.EventIntegrations = v
3177	return s
3178}
3179
3180// SetNextToken sets the NextToken field's value.
3181func (s *ListEventIntegrationsOutput) SetNextToken(v string) *ListEventIntegrationsOutput {
3182	s.NextToken = &v
3183	return s
3184}
3185
3186type ListTagsForResourceInput struct {
3187	_ struct{} `type:"structure" nopayload:"true"`
3188
3189	// The Amazon Resource Name (ARN) of the resource.
3190	//
3191	// ResourceArn is a required field
3192	ResourceArn *string `location:"uri" locationName:"resourceArn" min:"1" type:"string" required:"true"`
3193}
3194
3195// String returns the string representation.
3196//
3197// API parameter values that are decorated as "sensitive" in the API will not
3198// be included in the string output. The member name will be present, but the
3199// value will be replaced with "sensitive".
3200func (s ListTagsForResourceInput) String() string {
3201	return awsutil.Prettify(s)
3202}
3203
3204// GoString returns the string representation.
3205//
3206// API parameter values that are decorated as "sensitive" in the API will not
3207// be included in the string output. The member name will be present, but the
3208// value will be replaced with "sensitive".
3209func (s ListTagsForResourceInput) GoString() string {
3210	return s.String()
3211}
3212
3213// Validate inspects the fields of the type to determine if they are valid.
3214func (s *ListTagsForResourceInput) Validate() error {
3215	invalidParams := request.ErrInvalidParams{Context: "ListTagsForResourceInput"}
3216	if s.ResourceArn == nil {
3217		invalidParams.Add(request.NewErrParamRequired("ResourceArn"))
3218	}
3219	if s.ResourceArn != nil && len(*s.ResourceArn) < 1 {
3220		invalidParams.Add(request.NewErrParamMinLen("ResourceArn", 1))
3221	}
3222
3223	if invalidParams.Len() > 0 {
3224		return invalidParams
3225	}
3226	return nil
3227}
3228
3229// SetResourceArn sets the ResourceArn field's value.
3230func (s *ListTagsForResourceInput) SetResourceArn(v string) *ListTagsForResourceInput {
3231	s.ResourceArn = &v
3232	return s
3233}
3234
3235type ListTagsForResourceOutput struct {
3236	_ struct{} `type:"structure"`
3237
3238	// Information about the tags.
3239	Tags map[string]*string `locationName:"tags" min:"1" type:"map"`
3240}
3241
3242// String returns the string representation.
3243//
3244// API parameter values that are decorated as "sensitive" in the API will not
3245// be included in the string output. The member name will be present, but the
3246// value will be replaced with "sensitive".
3247func (s ListTagsForResourceOutput) String() string {
3248	return awsutil.Prettify(s)
3249}
3250
3251// GoString returns the string representation.
3252//
3253// API parameter values that are decorated as "sensitive" in the API will not
3254// be included in the string output. The member name will be present, but the
3255// value will be replaced with "sensitive".
3256func (s ListTagsForResourceOutput) GoString() string {
3257	return s.String()
3258}
3259
3260// SetTags sets the Tags field's value.
3261func (s *ListTagsForResourceOutput) SetTags(v map[string]*string) *ListTagsForResourceOutput {
3262	s.Tags = v
3263	return s
3264}
3265
3266// The specified resource was not found.
3267type ResourceNotFoundException struct {
3268	_            struct{}                  `type:"structure"`
3269	RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"`
3270
3271	Message_ *string `locationName:"Message" type:"string"`
3272}
3273
3274// String returns the string representation.
3275//
3276// API parameter values that are decorated as "sensitive" in the API will not
3277// be included in the string output. The member name will be present, but the
3278// value will be replaced with "sensitive".
3279func (s ResourceNotFoundException) String() string {
3280	return awsutil.Prettify(s)
3281}
3282
3283// GoString returns the string representation.
3284//
3285// API parameter values that are decorated as "sensitive" in the API will not
3286// be included in the string output. The member name will be present, but the
3287// value will be replaced with "sensitive".
3288func (s ResourceNotFoundException) GoString() string {
3289	return s.String()
3290}
3291
3292func newErrorResourceNotFoundException(v protocol.ResponseMetadata) error {
3293	return &ResourceNotFoundException{
3294		RespMetadata: v,
3295	}
3296}
3297
3298// Code returns the exception type name.
3299func (s *ResourceNotFoundException) Code() string {
3300	return "ResourceNotFoundException"
3301}
3302
3303// Message returns the exception's message.
3304func (s *ResourceNotFoundException) Message() string {
3305	if s.Message_ != nil {
3306		return *s.Message_
3307	}
3308	return ""
3309}
3310
3311// OrigErr always returns nil, satisfies awserr.Error interface.
3312func (s *ResourceNotFoundException) OrigErr() error {
3313	return nil
3314}
3315
3316func (s *ResourceNotFoundException) Error() string {
3317	return fmt.Sprintf("%s: %s", s.Code(), s.Message())
3318}
3319
3320// Status code returns the HTTP status code for the request's response error.
3321func (s *ResourceNotFoundException) StatusCode() int {
3322	return s.RespMetadata.StatusCode
3323}
3324
3325// RequestID returns the service's response RequestID for request.
3326func (s *ResourceNotFoundException) RequestID() string {
3327	return s.RespMetadata.RequestID
3328}
3329
3330// The allowed quota for the resource has been exceeded.
3331type ResourceQuotaExceededException struct {
3332	_            struct{}                  `type:"structure"`
3333	RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"`
3334
3335	Message_ *string `locationName:"Message" type:"string"`
3336}
3337
3338// String returns the string representation.
3339//
3340// API parameter values that are decorated as "sensitive" in the API will not
3341// be included in the string output. The member name will be present, but the
3342// value will be replaced with "sensitive".
3343func (s ResourceQuotaExceededException) String() string {
3344	return awsutil.Prettify(s)
3345}
3346
3347// GoString returns the string representation.
3348//
3349// API parameter values that are decorated as "sensitive" in the API will not
3350// be included in the string output. The member name will be present, but the
3351// value will be replaced with "sensitive".
3352func (s ResourceQuotaExceededException) GoString() string {
3353	return s.String()
3354}
3355
3356func newErrorResourceQuotaExceededException(v protocol.ResponseMetadata) error {
3357	return &ResourceQuotaExceededException{
3358		RespMetadata: v,
3359	}
3360}
3361
3362// Code returns the exception type name.
3363func (s *ResourceQuotaExceededException) Code() string {
3364	return "ResourceQuotaExceededException"
3365}
3366
3367// Message returns the exception's message.
3368func (s *ResourceQuotaExceededException) Message() string {
3369	if s.Message_ != nil {
3370		return *s.Message_
3371	}
3372	return ""
3373}
3374
3375// OrigErr always returns nil, satisfies awserr.Error interface.
3376func (s *ResourceQuotaExceededException) OrigErr() error {
3377	return nil
3378}
3379
3380func (s *ResourceQuotaExceededException) Error() string {
3381	return fmt.Sprintf("%s: %s", s.Code(), s.Message())
3382}
3383
3384// Status code returns the HTTP status code for the request's response error.
3385func (s *ResourceQuotaExceededException) StatusCode() int {
3386	return s.RespMetadata.StatusCode
3387}
3388
3389// RequestID returns the service's response RequestID for request.
3390func (s *ResourceQuotaExceededException) RequestID() string {
3391	return s.RespMetadata.RequestID
3392}
3393
3394// The name of the data and how often it should be pulled from the source.
3395type ScheduleConfiguration struct {
3396	_ struct{} `type:"structure"`
3397
3398	// The start date for objects to import in the first flow run.
3399	FirstExecutionFrom *string `min:"1" type:"string"`
3400
3401	// The name of the object to pull from the data source.
3402	Object *string `min:"1" type:"string"`
3403
3404	// How often the data should be pulled from data source.
3405	ScheduleExpression *string `min:"1" type:"string"`
3406}
3407
3408// String returns the string representation.
3409//
3410// API parameter values that are decorated as "sensitive" in the API will not
3411// be included in the string output. The member name will be present, but the
3412// value will be replaced with "sensitive".
3413func (s ScheduleConfiguration) String() string {
3414	return awsutil.Prettify(s)
3415}
3416
3417// GoString returns the string representation.
3418//
3419// API parameter values that are decorated as "sensitive" in the API will not
3420// be included in the string output. The member name will be present, but the
3421// value will be replaced with "sensitive".
3422func (s ScheduleConfiguration) GoString() string {
3423	return s.String()
3424}
3425
3426// Validate inspects the fields of the type to determine if they are valid.
3427func (s *ScheduleConfiguration) Validate() error {
3428	invalidParams := request.ErrInvalidParams{Context: "ScheduleConfiguration"}
3429	if s.FirstExecutionFrom != nil && len(*s.FirstExecutionFrom) < 1 {
3430		invalidParams.Add(request.NewErrParamMinLen("FirstExecutionFrom", 1))
3431	}
3432	if s.Object != nil && len(*s.Object) < 1 {
3433		invalidParams.Add(request.NewErrParamMinLen("Object", 1))
3434	}
3435	if s.ScheduleExpression != nil && len(*s.ScheduleExpression) < 1 {
3436		invalidParams.Add(request.NewErrParamMinLen("ScheduleExpression", 1))
3437	}
3438
3439	if invalidParams.Len() > 0 {
3440		return invalidParams
3441	}
3442	return nil
3443}
3444
3445// SetFirstExecutionFrom sets the FirstExecutionFrom field's value.
3446func (s *ScheduleConfiguration) SetFirstExecutionFrom(v string) *ScheduleConfiguration {
3447	s.FirstExecutionFrom = &v
3448	return s
3449}
3450
3451// SetObject sets the Object field's value.
3452func (s *ScheduleConfiguration) SetObject(v string) *ScheduleConfiguration {
3453	s.Object = &v
3454	return s
3455}
3456
3457// SetScheduleExpression sets the ScheduleExpression field's value.
3458func (s *ScheduleConfiguration) SetScheduleExpression(v string) *ScheduleConfiguration {
3459	s.ScheduleExpression = &v
3460	return s
3461}
3462
3463type TagResourceInput struct {
3464	_ struct{} `type:"structure"`
3465
3466	// The Amazon Resource Name (ARN) of the resource.
3467	//
3468	// ResourceArn is a required field
3469	ResourceArn *string `location:"uri" locationName:"resourceArn" min:"1" type:"string" required:"true"`
3470
3471	// One or more tags.
3472	//
3473	// Tags is a required field
3474	Tags map[string]*string `locationName:"tags" min:"1" type:"map" required:"true"`
3475}
3476
3477// String returns the string representation.
3478//
3479// API parameter values that are decorated as "sensitive" in the API will not
3480// be included in the string output. The member name will be present, but the
3481// value will be replaced with "sensitive".
3482func (s TagResourceInput) String() string {
3483	return awsutil.Prettify(s)
3484}
3485
3486// GoString returns the string representation.
3487//
3488// API parameter values that are decorated as "sensitive" in the API will not
3489// be included in the string output. The member name will be present, but the
3490// value will be replaced with "sensitive".
3491func (s TagResourceInput) GoString() string {
3492	return s.String()
3493}
3494
3495// Validate inspects the fields of the type to determine if they are valid.
3496func (s *TagResourceInput) Validate() error {
3497	invalidParams := request.ErrInvalidParams{Context: "TagResourceInput"}
3498	if s.ResourceArn == nil {
3499		invalidParams.Add(request.NewErrParamRequired("ResourceArn"))
3500	}
3501	if s.ResourceArn != nil && len(*s.ResourceArn) < 1 {
3502		invalidParams.Add(request.NewErrParamMinLen("ResourceArn", 1))
3503	}
3504	if s.Tags == nil {
3505		invalidParams.Add(request.NewErrParamRequired("Tags"))
3506	}
3507	if s.Tags != nil && len(s.Tags) < 1 {
3508		invalidParams.Add(request.NewErrParamMinLen("Tags", 1))
3509	}
3510
3511	if invalidParams.Len() > 0 {
3512		return invalidParams
3513	}
3514	return nil
3515}
3516
3517// SetResourceArn sets the ResourceArn field's value.
3518func (s *TagResourceInput) SetResourceArn(v string) *TagResourceInput {
3519	s.ResourceArn = &v
3520	return s
3521}
3522
3523// SetTags sets the Tags field's value.
3524func (s *TagResourceInput) SetTags(v map[string]*string) *TagResourceInput {
3525	s.Tags = v
3526	return s
3527}
3528
3529type TagResourceOutput struct {
3530	_ struct{} `type:"structure"`
3531}
3532
3533// String returns the string representation.
3534//
3535// API parameter values that are decorated as "sensitive" in the API will not
3536// be included in the string output. The member name will be present, but the
3537// value will be replaced with "sensitive".
3538func (s TagResourceOutput) String() string {
3539	return awsutil.Prettify(s)
3540}
3541
3542// GoString returns the string representation.
3543//
3544// API parameter values that are decorated as "sensitive" in the API will not
3545// be included in the string output. The member name will be present, but the
3546// value will be replaced with "sensitive".
3547func (s TagResourceOutput) GoString() string {
3548	return s.String()
3549}
3550
3551// The throttling limit has been exceeded.
3552type ThrottlingException struct {
3553	_            struct{}                  `type:"structure"`
3554	RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"`
3555
3556	Message_ *string `locationName:"Message" type:"string"`
3557}
3558
3559// String returns the string representation.
3560//
3561// API parameter values that are decorated as "sensitive" in the API will not
3562// be included in the string output. The member name will be present, but the
3563// value will be replaced with "sensitive".
3564func (s ThrottlingException) String() string {
3565	return awsutil.Prettify(s)
3566}
3567
3568// GoString returns the string representation.
3569//
3570// API parameter values that are decorated as "sensitive" in the API will not
3571// be included in the string output. The member name will be present, but the
3572// value will be replaced with "sensitive".
3573func (s ThrottlingException) GoString() string {
3574	return s.String()
3575}
3576
3577func newErrorThrottlingException(v protocol.ResponseMetadata) error {
3578	return &ThrottlingException{
3579		RespMetadata: v,
3580	}
3581}
3582
3583// Code returns the exception type name.
3584func (s *ThrottlingException) Code() string {
3585	return "ThrottlingException"
3586}
3587
3588// Message returns the exception's message.
3589func (s *ThrottlingException) Message() string {
3590	if s.Message_ != nil {
3591		return *s.Message_
3592	}
3593	return ""
3594}
3595
3596// OrigErr always returns nil, satisfies awserr.Error interface.
3597func (s *ThrottlingException) OrigErr() error {
3598	return nil
3599}
3600
3601func (s *ThrottlingException) Error() string {
3602	return fmt.Sprintf("%s: %s", s.Code(), s.Message())
3603}
3604
3605// Status code returns the HTTP status code for the request's response error.
3606func (s *ThrottlingException) StatusCode() int {
3607	return s.RespMetadata.StatusCode
3608}
3609
3610// RequestID returns the service's response RequestID for request.
3611func (s *ThrottlingException) RequestID() string {
3612	return s.RespMetadata.RequestID
3613}
3614
3615type UntagResourceInput struct {
3616	_ struct{} `type:"structure" nopayload:"true"`
3617
3618	// The Amazon Resource Name (ARN) of the resource.
3619	//
3620	// ResourceArn is a required field
3621	ResourceArn *string `location:"uri" locationName:"resourceArn" min:"1" type:"string" required:"true"`
3622
3623	// The tag keys.
3624	//
3625	// TagKeys is a required field
3626	TagKeys []*string `location:"querystring" locationName:"tagKeys" min:"1" type:"list" required:"true"`
3627}
3628
3629// String returns the string representation.
3630//
3631// API parameter values that are decorated as "sensitive" in the API will not
3632// be included in the string output. The member name will be present, but the
3633// value will be replaced with "sensitive".
3634func (s UntagResourceInput) String() string {
3635	return awsutil.Prettify(s)
3636}
3637
3638// GoString returns the string representation.
3639//
3640// API parameter values that are decorated as "sensitive" in the API will not
3641// be included in the string output. The member name will be present, but the
3642// value will be replaced with "sensitive".
3643func (s UntagResourceInput) GoString() string {
3644	return s.String()
3645}
3646
3647// Validate inspects the fields of the type to determine if they are valid.
3648func (s *UntagResourceInput) Validate() error {
3649	invalidParams := request.ErrInvalidParams{Context: "UntagResourceInput"}
3650	if s.ResourceArn == nil {
3651		invalidParams.Add(request.NewErrParamRequired("ResourceArn"))
3652	}
3653	if s.ResourceArn != nil && len(*s.ResourceArn) < 1 {
3654		invalidParams.Add(request.NewErrParamMinLen("ResourceArn", 1))
3655	}
3656	if s.TagKeys == nil {
3657		invalidParams.Add(request.NewErrParamRequired("TagKeys"))
3658	}
3659	if s.TagKeys != nil && len(s.TagKeys) < 1 {
3660		invalidParams.Add(request.NewErrParamMinLen("TagKeys", 1))
3661	}
3662
3663	if invalidParams.Len() > 0 {
3664		return invalidParams
3665	}
3666	return nil
3667}
3668
3669// SetResourceArn sets the ResourceArn field's value.
3670func (s *UntagResourceInput) SetResourceArn(v string) *UntagResourceInput {
3671	s.ResourceArn = &v
3672	return s
3673}
3674
3675// SetTagKeys sets the TagKeys field's value.
3676func (s *UntagResourceInput) SetTagKeys(v []*string) *UntagResourceInput {
3677	s.TagKeys = v
3678	return s
3679}
3680
3681type UntagResourceOutput struct {
3682	_ struct{} `type:"structure"`
3683}
3684
3685// String returns the string representation.
3686//
3687// API parameter values that are decorated as "sensitive" in the API will not
3688// be included in the string output. The member name will be present, but the
3689// value will be replaced with "sensitive".
3690func (s UntagResourceOutput) String() string {
3691	return awsutil.Prettify(s)
3692}
3693
3694// GoString returns the string representation.
3695//
3696// API parameter values that are decorated as "sensitive" in the API will not
3697// be included in the string output. The member name will be present, but the
3698// value will be replaced with "sensitive".
3699func (s UntagResourceOutput) GoString() string {
3700	return s.String()
3701}
3702
3703type UpdateDataIntegrationInput struct {
3704	_ struct{} `type:"structure"`
3705
3706	// A description of the DataIntegration.
3707	Description *string `min:"1" type:"string"`
3708
3709	// A unique identifier for the DataIntegration.
3710	//
3711	// Identifier is a required field
3712	Identifier *string `location:"uri" locationName:"Identifier" min:"1" type:"string" required:"true"`
3713
3714	// The name of the DataIntegration.
3715	Name *string `min:"1" type:"string"`
3716}
3717
3718// String returns the string representation.
3719//
3720// API parameter values that are decorated as "sensitive" in the API will not
3721// be included in the string output. The member name will be present, but the
3722// value will be replaced with "sensitive".
3723func (s UpdateDataIntegrationInput) String() string {
3724	return awsutil.Prettify(s)
3725}
3726
3727// GoString returns the string representation.
3728//
3729// API parameter values that are decorated as "sensitive" in the API will not
3730// be included in the string output. The member name will be present, but the
3731// value will be replaced with "sensitive".
3732func (s UpdateDataIntegrationInput) GoString() string {
3733	return s.String()
3734}
3735
3736// Validate inspects the fields of the type to determine if they are valid.
3737func (s *UpdateDataIntegrationInput) Validate() error {
3738	invalidParams := request.ErrInvalidParams{Context: "UpdateDataIntegrationInput"}
3739	if s.Description != nil && len(*s.Description) < 1 {
3740		invalidParams.Add(request.NewErrParamMinLen("Description", 1))
3741	}
3742	if s.Identifier == nil {
3743		invalidParams.Add(request.NewErrParamRequired("Identifier"))
3744	}
3745	if s.Identifier != nil && len(*s.Identifier) < 1 {
3746		invalidParams.Add(request.NewErrParamMinLen("Identifier", 1))
3747	}
3748	if s.Name != nil && len(*s.Name) < 1 {
3749		invalidParams.Add(request.NewErrParamMinLen("Name", 1))
3750	}
3751
3752	if invalidParams.Len() > 0 {
3753		return invalidParams
3754	}
3755	return nil
3756}
3757
3758// SetDescription sets the Description field's value.
3759func (s *UpdateDataIntegrationInput) SetDescription(v string) *UpdateDataIntegrationInput {
3760	s.Description = &v
3761	return s
3762}
3763
3764// SetIdentifier sets the Identifier field's value.
3765func (s *UpdateDataIntegrationInput) SetIdentifier(v string) *UpdateDataIntegrationInput {
3766	s.Identifier = &v
3767	return s
3768}
3769
3770// SetName sets the Name field's value.
3771func (s *UpdateDataIntegrationInput) SetName(v string) *UpdateDataIntegrationInput {
3772	s.Name = &v
3773	return s
3774}
3775
3776type UpdateDataIntegrationOutput struct {
3777	_ struct{} `type:"structure"`
3778}
3779
3780// String returns the string representation.
3781//
3782// API parameter values that are decorated as "sensitive" in the API will not
3783// be included in the string output. The member name will be present, but the
3784// value will be replaced with "sensitive".
3785func (s UpdateDataIntegrationOutput) String() string {
3786	return awsutil.Prettify(s)
3787}
3788
3789// GoString returns the string representation.
3790//
3791// API parameter values that are decorated as "sensitive" in the API will not
3792// be included in the string output. The member name will be present, but the
3793// value will be replaced with "sensitive".
3794func (s UpdateDataIntegrationOutput) GoString() string {
3795	return s.String()
3796}
3797
3798type UpdateEventIntegrationInput struct {
3799	_ struct{} `type:"structure"`
3800
3801	// The description of the event inegration.
3802	Description *string `min:"1" type:"string"`
3803
3804	// The name of the event integration.
3805	//
3806	// Name is a required field
3807	Name *string `location:"uri" locationName:"Name" min:"1" type:"string" required:"true"`
3808}
3809
3810// String returns the string representation.
3811//
3812// API parameter values that are decorated as "sensitive" in the API will not
3813// be included in the string output. The member name will be present, but the
3814// value will be replaced with "sensitive".
3815func (s UpdateEventIntegrationInput) String() string {
3816	return awsutil.Prettify(s)
3817}
3818
3819// GoString returns the string representation.
3820//
3821// API parameter values that are decorated as "sensitive" in the API will not
3822// be included in the string output. The member name will be present, but the
3823// value will be replaced with "sensitive".
3824func (s UpdateEventIntegrationInput) GoString() string {
3825	return s.String()
3826}
3827
3828// Validate inspects the fields of the type to determine if they are valid.
3829func (s *UpdateEventIntegrationInput) Validate() error {
3830	invalidParams := request.ErrInvalidParams{Context: "UpdateEventIntegrationInput"}
3831	if s.Description != nil && len(*s.Description) < 1 {
3832		invalidParams.Add(request.NewErrParamMinLen("Description", 1))
3833	}
3834	if s.Name == nil {
3835		invalidParams.Add(request.NewErrParamRequired("Name"))
3836	}
3837	if s.Name != nil && len(*s.Name) < 1 {
3838		invalidParams.Add(request.NewErrParamMinLen("Name", 1))
3839	}
3840
3841	if invalidParams.Len() > 0 {
3842		return invalidParams
3843	}
3844	return nil
3845}
3846
3847// SetDescription sets the Description field's value.
3848func (s *UpdateEventIntegrationInput) SetDescription(v string) *UpdateEventIntegrationInput {
3849	s.Description = &v
3850	return s
3851}
3852
3853// SetName sets the Name field's value.
3854func (s *UpdateEventIntegrationInput) SetName(v string) *UpdateEventIntegrationInput {
3855	s.Name = &v
3856	return s
3857}
3858
3859type UpdateEventIntegrationOutput struct {
3860	_ struct{} `type:"structure"`
3861}
3862
3863// String returns the string representation.
3864//
3865// API parameter values that are decorated as "sensitive" in the API will not
3866// be included in the string output. The member name will be present, but the
3867// value will be replaced with "sensitive".
3868func (s UpdateEventIntegrationOutput) String() string {
3869	return awsutil.Prettify(s)
3870}
3871
3872// GoString returns the string representation.
3873//
3874// API parameter values that are decorated as "sensitive" in the API will not
3875// be included in the string output. The member name will be present, but the
3876// value will be replaced with "sensitive".
3877func (s UpdateEventIntegrationOutput) GoString() string {
3878	return s.String()
3879}
3880