1// Code generated by private/model/cli/gen-api/main.go. DO NOT EDIT.
2
3package pinpoint
4
5import (
6	"github.com/aws/aws-sdk-go/aws"
7	"github.com/aws/aws-sdk-go/aws/awsutil"
8	"github.com/aws/aws-sdk-go/aws/request"
9)
10
11const opCreateApp = "CreateApp"
12
13// CreateAppRequest generates a "aws/request.Request" representing the
14// client's request for the CreateApp operation. The "output" return
15// value will be populated with the request's response once the request completes
16// successfuly.
17//
18// Use "Send" method on the returned Request to send the API call to the service.
19// the "output" return value is not valid until after Send returns without error.
20//
21// See CreateApp for more information on using the CreateApp
22// API call, and error handling.
23//
24// This method is useful when you want to inject custom logic or configuration
25// into the SDK's request lifecycle. Such as custom headers, or retry logic.
26//
27//
28//    // Example sending a request using the CreateAppRequest method.
29//    req, resp := client.CreateAppRequest(params)
30//
31//    err := req.Send()
32//    if err == nil { // resp is now filled
33//        fmt.Println(resp)
34//    }
35//
36// See also, https://docs.aws.amazon.com/goto/WebAPI/pinpoint-2016-12-01/CreateApp
37func (c *Pinpoint) CreateAppRequest(input *CreateAppInput) (req *request.Request, output *CreateAppOutput) {
38	op := &request.Operation{
39		Name:       opCreateApp,
40		HTTPMethod: "POST",
41		HTTPPath:   "/v1/apps",
42	}
43
44	if input == nil {
45		input = &CreateAppInput{}
46	}
47
48	output = &CreateAppOutput{}
49	req = c.newRequest(op, input, output)
50	return
51}
52
53// CreateApp API operation for Amazon Pinpoint.
54//
55// Creates or updates an app.
56//
57// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
58// with awserr.Error's Code and Message methods to get detailed information about
59// the error.
60//
61// See the AWS API reference guide for Amazon Pinpoint's
62// API operation CreateApp for usage and error information.
63//
64// Returned Error Codes:
65//   * ErrCodeBadRequestException "BadRequestException"
66//
67//   * ErrCodeInternalServerErrorException "InternalServerErrorException"
68//
69//   * ErrCodeForbiddenException "ForbiddenException"
70//
71//   * ErrCodeNotFoundException "NotFoundException"
72//
73//   * ErrCodeMethodNotAllowedException "MethodNotAllowedException"
74//
75//   * ErrCodeTooManyRequestsException "TooManyRequestsException"
76//
77// See also, https://docs.aws.amazon.com/goto/WebAPI/pinpoint-2016-12-01/CreateApp
78func (c *Pinpoint) CreateApp(input *CreateAppInput) (*CreateAppOutput, error) {
79	req, out := c.CreateAppRequest(input)
80	return out, req.Send()
81}
82
83// CreateAppWithContext is the same as CreateApp with the addition of
84// the ability to pass a context and additional request options.
85//
86// See CreateApp for details on how to use this API operation.
87//
88// The context must be non-nil and will be used for request cancellation. If
89// the context is nil a panic will occur. In the future the SDK may create
90// sub-contexts for http.Requests. See https://golang.org/pkg/context/
91// for more information on using Contexts.
92func (c *Pinpoint) CreateAppWithContext(ctx aws.Context, input *CreateAppInput, opts ...request.Option) (*CreateAppOutput, error) {
93	req, out := c.CreateAppRequest(input)
94	req.SetContext(ctx)
95	req.ApplyOptions(opts...)
96	return out, req.Send()
97}
98
99const opCreateCampaign = "CreateCampaign"
100
101// CreateCampaignRequest generates a "aws/request.Request" representing the
102// client's request for the CreateCampaign operation. The "output" return
103// value will be populated with the request's response once the request completes
104// successfuly.
105//
106// Use "Send" method on the returned Request to send the API call to the service.
107// the "output" return value is not valid until after Send returns without error.
108//
109// See CreateCampaign for more information on using the CreateCampaign
110// API call, and error handling.
111//
112// This method is useful when you want to inject custom logic or configuration
113// into the SDK's request lifecycle. Such as custom headers, or retry logic.
114//
115//
116//    // Example sending a request using the CreateCampaignRequest method.
117//    req, resp := client.CreateCampaignRequest(params)
118//
119//    err := req.Send()
120//    if err == nil { // resp is now filled
121//        fmt.Println(resp)
122//    }
123//
124// See also, https://docs.aws.amazon.com/goto/WebAPI/pinpoint-2016-12-01/CreateCampaign
125func (c *Pinpoint) CreateCampaignRequest(input *CreateCampaignInput) (req *request.Request, output *CreateCampaignOutput) {
126	op := &request.Operation{
127		Name:       opCreateCampaign,
128		HTTPMethod: "POST",
129		HTTPPath:   "/v1/apps/{application-id}/campaigns",
130	}
131
132	if input == nil {
133		input = &CreateCampaignInput{}
134	}
135
136	output = &CreateCampaignOutput{}
137	req = c.newRequest(op, input, output)
138	return
139}
140
141// CreateCampaign API operation for Amazon Pinpoint.
142//
143// Creates or updates a campaign.
144//
145// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
146// with awserr.Error's Code and Message methods to get detailed information about
147// the error.
148//
149// See the AWS API reference guide for Amazon Pinpoint's
150// API operation CreateCampaign for usage and error information.
151//
152// Returned Error Codes:
153//   * ErrCodeBadRequestException "BadRequestException"
154//
155//   * ErrCodeInternalServerErrorException "InternalServerErrorException"
156//
157//   * ErrCodeForbiddenException "ForbiddenException"
158//
159//   * ErrCodeNotFoundException "NotFoundException"
160//
161//   * ErrCodeMethodNotAllowedException "MethodNotAllowedException"
162//
163//   * ErrCodeTooManyRequestsException "TooManyRequestsException"
164//
165// See also, https://docs.aws.amazon.com/goto/WebAPI/pinpoint-2016-12-01/CreateCampaign
166func (c *Pinpoint) CreateCampaign(input *CreateCampaignInput) (*CreateCampaignOutput, error) {
167	req, out := c.CreateCampaignRequest(input)
168	return out, req.Send()
169}
170
171// CreateCampaignWithContext is the same as CreateCampaign with the addition of
172// the ability to pass a context and additional request options.
173//
174// See CreateCampaign for details on how to use this API operation.
175//
176// The context must be non-nil and will be used for request cancellation. If
177// the context is nil a panic will occur. In the future the SDK may create
178// sub-contexts for http.Requests. See https://golang.org/pkg/context/
179// for more information on using Contexts.
180func (c *Pinpoint) CreateCampaignWithContext(ctx aws.Context, input *CreateCampaignInput, opts ...request.Option) (*CreateCampaignOutput, error) {
181	req, out := c.CreateCampaignRequest(input)
182	req.SetContext(ctx)
183	req.ApplyOptions(opts...)
184	return out, req.Send()
185}
186
187const opCreateExportJob = "CreateExportJob"
188
189// CreateExportJobRequest generates a "aws/request.Request" representing the
190// client's request for the CreateExportJob operation. The "output" return
191// value will be populated with the request's response once the request completes
192// successfuly.
193//
194// Use "Send" method on the returned Request to send the API call to the service.
195// the "output" return value is not valid until after Send returns without error.
196//
197// See CreateExportJob for more information on using the CreateExportJob
198// API call, and error handling.
199//
200// This method is useful when you want to inject custom logic or configuration
201// into the SDK's request lifecycle. Such as custom headers, or retry logic.
202//
203//
204//    // Example sending a request using the CreateExportJobRequest method.
205//    req, resp := client.CreateExportJobRequest(params)
206//
207//    err := req.Send()
208//    if err == nil { // resp is now filled
209//        fmt.Println(resp)
210//    }
211//
212// See also, https://docs.aws.amazon.com/goto/WebAPI/pinpoint-2016-12-01/CreateExportJob
213func (c *Pinpoint) CreateExportJobRequest(input *CreateExportJobInput) (req *request.Request, output *CreateExportJobOutput) {
214	op := &request.Operation{
215		Name:       opCreateExportJob,
216		HTTPMethod: "POST",
217		HTTPPath:   "/v1/apps/{application-id}/jobs/export",
218	}
219
220	if input == nil {
221		input = &CreateExportJobInput{}
222	}
223
224	output = &CreateExportJobOutput{}
225	req = c.newRequest(op, input, output)
226	return
227}
228
229// CreateExportJob API operation for Amazon Pinpoint.
230//
231// Creates an export job.
232//
233// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
234// with awserr.Error's Code and Message methods to get detailed information about
235// the error.
236//
237// See the AWS API reference guide for Amazon Pinpoint's
238// API operation CreateExportJob for usage and error information.
239//
240// Returned Error Codes:
241//   * ErrCodeBadRequestException "BadRequestException"
242//
243//   * ErrCodeInternalServerErrorException "InternalServerErrorException"
244//
245//   * ErrCodeForbiddenException "ForbiddenException"
246//
247//   * ErrCodeNotFoundException "NotFoundException"
248//
249//   * ErrCodeMethodNotAllowedException "MethodNotAllowedException"
250//
251//   * ErrCodeTooManyRequestsException "TooManyRequestsException"
252//
253// See also, https://docs.aws.amazon.com/goto/WebAPI/pinpoint-2016-12-01/CreateExportJob
254func (c *Pinpoint) CreateExportJob(input *CreateExportJobInput) (*CreateExportJobOutput, error) {
255	req, out := c.CreateExportJobRequest(input)
256	return out, req.Send()
257}
258
259// CreateExportJobWithContext is the same as CreateExportJob with the addition of
260// the ability to pass a context and additional request options.
261//
262// See CreateExportJob for details on how to use this API operation.
263//
264// The context must be non-nil and will be used for request cancellation. If
265// the context is nil a panic will occur. In the future the SDK may create
266// sub-contexts for http.Requests. See https://golang.org/pkg/context/
267// for more information on using Contexts.
268func (c *Pinpoint) CreateExportJobWithContext(ctx aws.Context, input *CreateExportJobInput, opts ...request.Option) (*CreateExportJobOutput, error) {
269	req, out := c.CreateExportJobRequest(input)
270	req.SetContext(ctx)
271	req.ApplyOptions(opts...)
272	return out, req.Send()
273}
274
275const opCreateImportJob = "CreateImportJob"
276
277// CreateImportJobRequest generates a "aws/request.Request" representing the
278// client's request for the CreateImportJob operation. The "output" return
279// value will be populated with the request's response once the request completes
280// successfuly.
281//
282// Use "Send" method on the returned Request to send the API call to the service.
283// the "output" return value is not valid until after Send returns without error.
284//
285// See CreateImportJob for more information on using the CreateImportJob
286// API call, and error handling.
287//
288// This method is useful when you want to inject custom logic or configuration
289// into the SDK's request lifecycle. Such as custom headers, or retry logic.
290//
291//
292//    // Example sending a request using the CreateImportJobRequest method.
293//    req, resp := client.CreateImportJobRequest(params)
294//
295//    err := req.Send()
296//    if err == nil { // resp is now filled
297//        fmt.Println(resp)
298//    }
299//
300// See also, https://docs.aws.amazon.com/goto/WebAPI/pinpoint-2016-12-01/CreateImportJob
301func (c *Pinpoint) CreateImportJobRequest(input *CreateImportJobInput) (req *request.Request, output *CreateImportJobOutput) {
302	op := &request.Operation{
303		Name:       opCreateImportJob,
304		HTTPMethod: "POST",
305		HTTPPath:   "/v1/apps/{application-id}/jobs/import",
306	}
307
308	if input == nil {
309		input = &CreateImportJobInput{}
310	}
311
312	output = &CreateImportJobOutput{}
313	req = c.newRequest(op, input, output)
314	return
315}
316
317// CreateImportJob API operation for Amazon Pinpoint.
318//
319// Creates or updates an import job.
320//
321// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
322// with awserr.Error's Code and Message methods to get detailed information about
323// the error.
324//
325// See the AWS API reference guide for Amazon Pinpoint's
326// API operation CreateImportJob for usage and error information.
327//
328// Returned Error Codes:
329//   * ErrCodeBadRequestException "BadRequestException"
330//
331//   * ErrCodeInternalServerErrorException "InternalServerErrorException"
332//
333//   * ErrCodeForbiddenException "ForbiddenException"
334//
335//   * ErrCodeNotFoundException "NotFoundException"
336//
337//   * ErrCodeMethodNotAllowedException "MethodNotAllowedException"
338//
339//   * ErrCodeTooManyRequestsException "TooManyRequestsException"
340//
341// See also, https://docs.aws.amazon.com/goto/WebAPI/pinpoint-2016-12-01/CreateImportJob
342func (c *Pinpoint) CreateImportJob(input *CreateImportJobInput) (*CreateImportJobOutput, error) {
343	req, out := c.CreateImportJobRequest(input)
344	return out, req.Send()
345}
346
347// CreateImportJobWithContext is the same as CreateImportJob with the addition of
348// the ability to pass a context and additional request options.
349//
350// See CreateImportJob for details on how to use this API operation.
351//
352// The context must be non-nil and will be used for request cancellation. If
353// the context is nil a panic will occur. In the future the SDK may create
354// sub-contexts for http.Requests. See https://golang.org/pkg/context/
355// for more information on using Contexts.
356func (c *Pinpoint) CreateImportJobWithContext(ctx aws.Context, input *CreateImportJobInput, opts ...request.Option) (*CreateImportJobOutput, error) {
357	req, out := c.CreateImportJobRequest(input)
358	req.SetContext(ctx)
359	req.ApplyOptions(opts...)
360	return out, req.Send()
361}
362
363const opCreateSegment = "CreateSegment"
364
365// CreateSegmentRequest generates a "aws/request.Request" representing the
366// client's request for the CreateSegment operation. The "output" return
367// value will be populated with the request's response once the request completes
368// successfuly.
369//
370// Use "Send" method on the returned Request to send the API call to the service.
371// the "output" return value is not valid until after Send returns without error.
372//
373// See CreateSegment for more information on using the CreateSegment
374// API call, and error handling.
375//
376// This method is useful when you want to inject custom logic or configuration
377// into the SDK's request lifecycle. Such as custom headers, or retry logic.
378//
379//
380//    // Example sending a request using the CreateSegmentRequest method.
381//    req, resp := client.CreateSegmentRequest(params)
382//
383//    err := req.Send()
384//    if err == nil { // resp is now filled
385//        fmt.Println(resp)
386//    }
387//
388// See also, https://docs.aws.amazon.com/goto/WebAPI/pinpoint-2016-12-01/CreateSegment
389func (c *Pinpoint) CreateSegmentRequest(input *CreateSegmentInput) (req *request.Request, output *CreateSegmentOutput) {
390	op := &request.Operation{
391		Name:       opCreateSegment,
392		HTTPMethod: "POST",
393		HTTPPath:   "/v1/apps/{application-id}/segments",
394	}
395
396	if input == nil {
397		input = &CreateSegmentInput{}
398	}
399
400	output = &CreateSegmentOutput{}
401	req = c.newRequest(op, input, output)
402	return
403}
404
405// CreateSegment API operation for Amazon Pinpoint.
406//
407// Used to create or update a segment.
408//
409// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
410// with awserr.Error's Code and Message methods to get detailed information about
411// the error.
412//
413// See the AWS API reference guide for Amazon Pinpoint's
414// API operation CreateSegment for usage and error information.
415//
416// Returned Error Codes:
417//   * ErrCodeBadRequestException "BadRequestException"
418//
419//   * ErrCodeInternalServerErrorException "InternalServerErrorException"
420//
421//   * ErrCodeForbiddenException "ForbiddenException"
422//
423//   * ErrCodeNotFoundException "NotFoundException"
424//
425//   * ErrCodeMethodNotAllowedException "MethodNotAllowedException"
426//
427//   * ErrCodeTooManyRequestsException "TooManyRequestsException"
428//
429// See also, https://docs.aws.amazon.com/goto/WebAPI/pinpoint-2016-12-01/CreateSegment
430func (c *Pinpoint) CreateSegment(input *CreateSegmentInput) (*CreateSegmentOutput, error) {
431	req, out := c.CreateSegmentRequest(input)
432	return out, req.Send()
433}
434
435// CreateSegmentWithContext is the same as CreateSegment with the addition of
436// the ability to pass a context and additional request options.
437//
438// See CreateSegment for details on how to use this API operation.
439//
440// The context must be non-nil and will be used for request cancellation. If
441// the context is nil a panic will occur. In the future the SDK may create
442// sub-contexts for http.Requests. See https://golang.org/pkg/context/
443// for more information on using Contexts.
444func (c *Pinpoint) CreateSegmentWithContext(ctx aws.Context, input *CreateSegmentInput, opts ...request.Option) (*CreateSegmentOutput, error) {
445	req, out := c.CreateSegmentRequest(input)
446	req.SetContext(ctx)
447	req.ApplyOptions(opts...)
448	return out, req.Send()
449}
450
451const opDeleteAdmChannel = "DeleteAdmChannel"
452
453// DeleteAdmChannelRequest generates a "aws/request.Request" representing the
454// client's request for the DeleteAdmChannel operation. The "output" return
455// value will be populated with the request's response once the request completes
456// successfuly.
457//
458// Use "Send" method on the returned Request to send the API call to the service.
459// the "output" return value is not valid until after Send returns without error.
460//
461// See DeleteAdmChannel for more information on using the DeleteAdmChannel
462// API call, and error handling.
463//
464// This method is useful when you want to inject custom logic or configuration
465// into the SDK's request lifecycle. Such as custom headers, or retry logic.
466//
467//
468//    // Example sending a request using the DeleteAdmChannelRequest method.
469//    req, resp := client.DeleteAdmChannelRequest(params)
470//
471//    err := req.Send()
472//    if err == nil { // resp is now filled
473//        fmt.Println(resp)
474//    }
475//
476// See also, https://docs.aws.amazon.com/goto/WebAPI/pinpoint-2016-12-01/DeleteAdmChannel
477func (c *Pinpoint) DeleteAdmChannelRequest(input *DeleteAdmChannelInput) (req *request.Request, output *DeleteAdmChannelOutput) {
478	op := &request.Operation{
479		Name:       opDeleteAdmChannel,
480		HTTPMethod: "DELETE",
481		HTTPPath:   "/v1/apps/{application-id}/channels/adm",
482	}
483
484	if input == nil {
485		input = &DeleteAdmChannelInput{}
486	}
487
488	output = &DeleteAdmChannelOutput{}
489	req = c.newRequest(op, input, output)
490	return
491}
492
493// DeleteAdmChannel API operation for Amazon Pinpoint.
494//
495// Delete an ADM channel
496//
497// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
498// with awserr.Error's Code and Message methods to get detailed information about
499// the error.
500//
501// See the AWS API reference guide for Amazon Pinpoint's
502// API operation DeleteAdmChannel for usage and error information.
503//
504// Returned Error Codes:
505//   * ErrCodeBadRequestException "BadRequestException"
506//
507//   * ErrCodeInternalServerErrorException "InternalServerErrorException"
508//
509//   * ErrCodeForbiddenException "ForbiddenException"
510//
511//   * ErrCodeNotFoundException "NotFoundException"
512//
513//   * ErrCodeMethodNotAllowedException "MethodNotAllowedException"
514//
515//   * ErrCodeTooManyRequestsException "TooManyRequestsException"
516//
517// See also, https://docs.aws.amazon.com/goto/WebAPI/pinpoint-2016-12-01/DeleteAdmChannel
518func (c *Pinpoint) DeleteAdmChannel(input *DeleteAdmChannelInput) (*DeleteAdmChannelOutput, error) {
519	req, out := c.DeleteAdmChannelRequest(input)
520	return out, req.Send()
521}
522
523// DeleteAdmChannelWithContext is the same as DeleteAdmChannel with the addition of
524// the ability to pass a context and additional request options.
525//
526// See DeleteAdmChannel for details on how to use this API operation.
527//
528// The context must be non-nil and will be used for request cancellation. If
529// the context is nil a panic will occur. In the future the SDK may create
530// sub-contexts for http.Requests. See https://golang.org/pkg/context/
531// for more information on using Contexts.
532func (c *Pinpoint) DeleteAdmChannelWithContext(ctx aws.Context, input *DeleteAdmChannelInput, opts ...request.Option) (*DeleteAdmChannelOutput, error) {
533	req, out := c.DeleteAdmChannelRequest(input)
534	req.SetContext(ctx)
535	req.ApplyOptions(opts...)
536	return out, req.Send()
537}
538
539const opDeleteApnsChannel = "DeleteApnsChannel"
540
541// DeleteApnsChannelRequest generates a "aws/request.Request" representing the
542// client's request for the DeleteApnsChannel operation. The "output" return
543// value will be populated with the request's response once the request completes
544// successfuly.
545//
546// Use "Send" method on the returned Request to send the API call to the service.
547// the "output" return value is not valid until after Send returns without error.
548//
549// See DeleteApnsChannel for more information on using the DeleteApnsChannel
550// API call, and error handling.
551//
552// This method is useful when you want to inject custom logic or configuration
553// into the SDK's request lifecycle. Such as custom headers, or retry logic.
554//
555//
556//    // Example sending a request using the DeleteApnsChannelRequest method.
557//    req, resp := client.DeleteApnsChannelRequest(params)
558//
559//    err := req.Send()
560//    if err == nil { // resp is now filled
561//        fmt.Println(resp)
562//    }
563//
564// See also, https://docs.aws.amazon.com/goto/WebAPI/pinpoint-2016-12-01/DeleteApnsChannel
565func (c *Pinpoint) DeleteApnsChannelRequest(input *DeleteApnsChannelInput) (req *request.Request, output *DeleteApnsChannelOutput) {
566	op := &request.Operation{
567		Name:       opDeleteApnsChannel,
568		HTTPMethod: "DELETE",
569		HTTPPath:   "/v1/apps/{application-id}/channels/apns",
570	}
571
572	if input == nil {
573		input = &DeleteApnsChannelInput{}
574	}
575
576	output = &DeleteApnsChannelOutput{}
577	req = c.newRequest(op, input, output)
578	return
579}
580
581// DeleteApnsChannel API operation for Amazon Pinpoint.
582//
583// Deletes the APNs channel for an app.
584//
585// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
586// with awserr.Error's Code and Message methods to get detailed information about
587// the error.
588//
589// See the AWS API reference guide for Amazon Pinpoint's
590// API operation DeleteApnsChannel for usage and error information.
591//
592// Returned Error Codes:
593//   * ErrCodeBadRequestException "BadRequestException"
594//
595//   * ErrCodeInternalServerErrorException "InternalServerErrorException"
596//
597//   * ErrCodeForbiddenException "ForbiddenException"
598//
599//   * ErrCodeNotFoundException "NotFoundException"
600//
601//   * ErrCodeMethodNotAllowedException "MethodNotAllowedException"
602//
603//   * ErrCodeTooManyRequestsException "TooManyRequestsException"
604//
605// See also, https://docs.aws.amazon.com/goto/WebAPI/pinpoint-2016-12-01/DeleteApnsChannel
606func (c *Pinpoint) DeleteApnsChannel(input *DeleteApnsChannelInput) (*DeleteApnsChannelOutput, error) {
607	req, out := c.DeleteApnsChannelRequest(input)
608	return out, req.Send()
609}
610
611// DeleteApnsChannelWithContext is the same as DeleteApnsChannel with the addition of
612// the ability to pass a context and additional request options.
613//
614// See DeleteApnsChannel for details on how to use this API operation.
615//
616// The context must be non-nil and will be used for request cancellation. If
617// the context is nil a panic will occur. In the future the SDK may create
618// sub-contexts for http.Requests. See https://golang.org/pkg/context/
619// for more information on using Contexts.
620func (c *Pinpoint) DeleteApnsChannelWithContext(ctx aws.Context, input *DeleteApnsChannelInput, opts ...request.Option) (*DeleteApnsChannelOutput, error) {
621	req, out := c.DeleteApnsChannelRequest(input)
622	req.SetContext(ctx)
623	req.ApplyOptions(opts...)
624	return out, req.Send()
625}
626
627const opDeleteApnsSandboxChannel = "DeleteApnsSandboxChannel"
628
629// DeleteApnsSandboxChannelRequest generates a "aws/request.Request" representing the
630// client's request for the DeleteApnsSandboxChannel operation. The "output" return
631// value will be populated with the request's response once the request completes
632// successfuly.
633//
634// Use "Send" method on the returned Request to send the API call to the service.
635// the "output" return value is not valid until after Send returns without error.
636//
637// See DeleteApnsSandboxChannel for more information on using the DeleteApnsSandboxChannel
638// API call, and error handling.
639//
640// This method is useful when you want to inject custom logic or configuration
641// into the SDK's request lifecycle. Such as custom headers, or retry logic.
642//
643//
644//    // Example sending a request using the DeleteApnsSandboxChannelRequest method.
645//    req, resp := client.DeleteApnsSandboxChannelRequest(params)
646//
647//    err := req.Send()
648//    if err == nil { // resp is now filled
649//        fmt.Println(resp)
650//    }
651//
652// See also, https://docs.aws.amazon.com/goto/WebAPI/pinpoint-2016-12-01/DeleteApnsSandboxChannel
653func (c *Pinpoint) DeleteApnsSandboxChannelRequest(input *DeleteApnsSandboxChannelInput) (req *request.Request, output *DeleteApnsSandboxChannelOutput) {
654	op := &request.Operation{
655		Name:       opDeleteApnsSandboxChannel,
656		HTTPMethod: "DELETE",
657		HTTPPath:   "/v1/apps/{application-id}/channels/apns_sandbox",
658	}
659
660	if input == nil {
661		input = &DeleteApnsSandboxChannelInput{}
662	}
663
664	output = &DeleteApnsSandboxChannelOutput{}
665	req = c.newRequest(op, input, output)
666	return
667}
668
669// DeleteApnsSandboxChannel API operation for Amazon Pinpoint.
670//
671// Delete an APNS sandbox channel
672//
673// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
674// with awserr.Error's Code and Message methods to get detailed information about
675// the error.
676//
677// See the AWS API reference guide for Amazon Pinpoint's
678// API operation DeleteApnsSandboxChannel for usage and error information.
679//
680// Returned Error Codes:
681//   * ErrCodeBadRequestException "BadRequestException"
682//
683//   * ErrCodeInternalServerErrorException "InternalServerErrorException"
684//
685//   * ErrCodeForbiddenException "ForbiddenException"
686//
687//   * ErrCodeNotFoundException "NotFoundException"
688//
689//   * ErrCodeMethodNotAllowedException "MethodNotAllowedException"
690//
691//   * ErrCodeTooManyRequestsException "TooManyRequestsException"
692//
693// See also, https://docs.aws.amazon.com/goto/WebAPI/pinpoint-2016-12-01/DeleteApnsSandboxChannel
694func (c *Pinpoint) DeleteApnsSandboxChannel(input *DeleteApnsSandboxChannelInput) (*DeleteApnsSandboxChannelOutput, error) {
695	req, out := c.DeleteApnsSandboxChannelRequest(input)
696	return out, req.Send()
697}
698
699// DeleteApnsSandboxChannelWithContext is the same as DeleteApnsSandboxChannel with the addition of
700// the ability to pass a context and additional request options.
701//
702// See DeleteApnsSandboxChannel for details on how to use this API operation.
703//
704// The context must be non-nil and will be used for request cancellation. If
705// the context is nil a panic will occur. In the future the SDK may create
706// sub-contexts for http.Requests. See https://golang.org/pkg/context/
707// for more information on using Contexts.
708func (c *Pinpoint) DeleteApnsSandboxChannelWithContext(ctx aws.Context, input *DeleteApnsSandboxChannelInput, opts ...request.Option) (*DeleteApnsSandboxChannelOutput, error) {
709	req, out := c.DeleteApnsSandboxChannelRequest(input)
710	req.SetContext(ctx)
711	req.ApplyOptions(opts...)
712	return out, req.Send()
713}
714
715const opDeleteApnsVoipChannel = "DeleteApnsVoipChannel"
716
717// DeleteApnsVoipChannelRequest generates a "aws/request.Request" representing the
718// client's request for the DeleteApnsVoipChannel operation. The "output" return
719// value will be populated with the request's response once the request completes
720// successfuly.
721//
722// Use "Send" method on the returned Request to send the API call to the service.
723// the "output" return value is not valid until after Send returns without error.
724//
725// See DeleteApnsVoipChannel for more information on using the DeleteApnsVoipChannel
726// API call, and error handling.
727//
728// This method is useful when you want to inject custom logic or configuration
729// into the SDK's request lifecycle. Such as custom headers, or retry logic.
730//
731//
732//    // Example sending a request using the DeleteApnsVoipChannelRequest method.
733//    req, resp := client.DeleteApnsVoipChannelRequest(params)
734//
735//    err := req.Send()
736//    if err == nil { // resp is now filled
737//        fmt.Println(resp)
738//    }
739//
740// See also, https://docs.aws.amazon.com/goto/WebAPI/pinpoint-2016-12-01/DeleteApnsVoipChannel
741func (c *Pinpoint) DeleteApnsVoipChannelRequest(input *DeleteApnsVoipChannelInput) (req *request.Request, output *DeleteApnsVoipChannelOutput) {
742	op := &request.Operation{
743		Name:       opDeleteApnsVoipChannel,
744		HTTPMethod: "DELETE",
745		HTTPPath:   "/v1/apps/{application-id}/channels/apns_voip",
746	}
747
748	if input == nil {
749		input = &DeleteApnsVoipChannelInput{}
750	}
751
752	output = &DeleteApnsVoipChannelOutput{}
753	req = c.newRequest(op, input, output)
754	return
755}
756
757// DeleteApnsVoipChannel API operation for Amazon Pinpoint.
758//
759// Delete an APNS VoIP channel
760//
761// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
762// with awserr.Error's Code and Message methods to get detailed information about
763// the error.
764//
765// See the AWS API reference guide for Amazon Pinpoint's
766// API operation DeleteApnsVoipChannel for usage and error information.
767//
768// Returned Error Codes:
769//   * ErrCodeBadRequestException "BadRequestException"
770//
771//   * ErrCodeInternalServerErrorException "InternalServerErrorException"
772//
773//   * ErrCodeForbiddenException "ForbiddenException"
774//
775//   * ErrCodeNotFoundException "NotFoundException"
776//
777//   * ErrCodeMethodNotAllowedException "MethodNotAllowedException"
778//
779//   * ErrCodeTooManyRequestsException "TooManyRequestsException"
780//
781// See also, https://docs.aws.amazon.com/goto/WebAPI/pinpoint-2016-12-01/DeleteApnsVoipChannel
782func (c *Pinpoint) DeleteApnsVoipChannel(input *DeleteApnsVoipChannelInput) (*DeleteApnsVoipChannelOutput, error) {
783	req, out := c.DeleteApnsVoipChannelRequest(input)
784	return out, req.Send()
785}
786
787// DeleteApnsVoipChannelWithContext is the same as DeleteApnsVoipChannel with the addition of
788// the ability to pass a context and additional request options.
789//
790// See DeleteApnsVoipChannel for details on how to use this API operation.
791//
792// The context must be non-nil and will be used for request cancellation. If
793// the context is nil a panic will occur. In the future the SDK may create
794// sub-contexts for http.Requests. See https://golang.org/pkg/context/
795// for more information on using Contexts.
796func (c *Pinpoint) DeleteApnsVoipChannelWithContext(ctx aws.Context, input *DeleteApnsVoipChannelInput, opts ...request.Option) (*DeleteApnsVoipChannelOutput, error) {
797	req, out := c.DeleteApnsVoipChannelRequest(input)
798	req.SetContext(ctx)
799	req.ApplyOptions(opts...)
800	return out, req.Send()
801}
802
803const opDeleteApnsVoipSandboxChannel = "DeleteApnsVoipSandboxChannel"
804
805// DeleteApnsVoipSandboxChannelRequest generates a "aws/request.Request" representing the
806// client's request for the DeleteApnsVoipSandboxChannel operation. The "output" return
807// value will be populated with the request's response once the request completes
808// successfuly.
809//
810// Use "Send" method on the returned Request to send the API call to the service.
811// the "output" return value is not valid until after Send returns without error.
812//
813// See DeleteApnsVoipSandboxChannel for more information on using the DeleteApnsVoipSandboxChannel
814// API call, and error handling.
815//
816// This method is useful when you want to inject custom logic or configuration
817// into the SDK's request lifecycle. Such as custom headers, or retry logic.
818//
819//
820//    // Example sending a request using the DeleteApnsVoipSandboxChannelRequest method.
821//    req, resp := client.DeleteApnsVoipSandboxChannelRequest(params)
822//
823//    err := req.Send()
824//    if err == nil { // resp is now filled
825//        fmt.Println(resp)
826//    }
827//
828// See also, https://docs.aws.amazon.com/goto/WebAPI/pinpoint-2016-12-01/DeleteApnsVoipSandboxChannel
829func (c *Pinpoint) DeleteApnsVoipSandboxChannelRequest(input *DeleteApnsVoipSandboxChannelInput) (req *request.Request, output *DeleteApnsVoipSandboxChannelOutput) {
830	op := &request.Operation{
831		Name:       opDeleteApnsVoipSandboxChannel,
832		HTTPMethod: "DELETE",
833		HTTPPath:   "/v1/apps/{application-id}/channels/apns_voip_sandbox",
834	}
835
836	if input == nil {
837		input = &DeleteApnsVoipSandboxChannelInput{}
838	}
839
840	output = &DeleteApnsVoipSandboxChannelOutput{}
841	req = c.newRequest(op, input, output)
842	return
843}
844
845// DeleteApnsVoipSandboxChannel API operation for Amazon Pinpoint.
846//
847// Delete an APNS VoIP sandbox channel
848//
849// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
850// with awserr.Error's Code and Message methods to get detailed information about
851// the error.
852//
853// See the AWS API reference guide for Amazon Pinpoint's
854// API operation DeleteApnsVoipSandboxChannel for usage and error information.
855//
856// Returned Error Codes:
857//   * ErrCodeBadRequestException "BadRequestException"
858//
859//   * ErrCodeInternalServerErrorException "InternalServerErrorException"
860//
861//   * ErrCodeForbiddenException "ForbiddenException"
862//
863//   * ErrCodeNotFoundException "NotFoundException"
864//
865//   * ErrCodeMethodNotAllowedException "MethodNotAllowedException"
866//
867//   * ErrCodeTooManyRequestsException "TooManyRequestsException"
868//
869// See also, https://docs.aws.amazon.com/goto/WebAPI/pinpoint-2016-12-01/DeleteApnsVoipSandboxChannel
870func (c *Pinpoint) DeleteApnsVoipSandboxChannel(input *DeleteApnsVoipSandboxChannelInput) (*DeleteApnsVoipSandboxChannelOutput, error) {
871	req, out := c.DeleteApnsVoipSandboxChannelRequest(input)
872	return out, req.Send()
873}
874
875// DeleteApnsVoipSandboxChannelWithContext is the same as DeleteApnsVoipSandboxChannel with the addition of
876// the ability to pass a context and additional request options.
877//
878// See DeleteApnsVoipSandboxChannel for details on how to use this API operation.
879//
880// The context must be non-nil and will be used for request cancellation. If
881// the context is nil a panic will occur. In the future the SDK may create
882// sub-contexts for http.Requests. See https://golang.org/pkg/context/
883// for more information on using Contexts.
884func (c *Pinpoint) DeleteApnsVoipSandboxChannelWithContext(ctx aws.Context, input *DeleteApnsVoipSandboxChannelInput, opts ...request.Option) (*DeleteApnsVoipSandboxChannelOutput, error) {
885	req, out := c.DeleteApnsVoipSandboxChannelRequest(input)
886	req.SetContext(ctx)
887	req.ApplyOptions(opts...)
888	return out, req.Send()
889}
890
891const opDeleteApp = "DeleteApp"
892
893// DeleteAppRequest generates a "aws/request.Request" representing the
894// client's request for the DeleteApp operation. The "output" return
895// value will be populated with the request's response once the request completes
896// successfuly.
897//
898// Use "Send" method on the returned Request to send the API call to the service.
899// the "output" return value is not valid until after Send returns without error.
900//
901// See DeleteApp for more information on using the DeleteApp
902// API call, and error handling.
903//
904// This method is useful when you want to inject custom logic or configuration
905// into the SDK's request lifecycle. Such as custom headers, or retry logic.
906//
907//
908//    // Example sending a request using the DeleteAppRequest method.
909//    req, resp := client.DeleteAppRequest(params)
910//
911//    err := req.Send()
912//    if err == nil { // resp is now filled
913//        fmt.Println(resp)
914//    }
915//
916// See also, https://docs.aws.amazon.com/goto/WebAPI/pinpoint-2016-12-01/DeleteApp
917func (c *Pinpoint) DeleteAppRequest(input *DeleteAppInput) (req *request.Request, output *DeleteAppOutput) {
918	op := &request.Operation{
919		Name:       opDeleteApp,
920		HTTPMethod: "DELETE",
921		HTTPPath:   "/v1/apps/{application-id}",
922	}
923
924	if input == nil {
925		input = &DeleteAppInput{}
926	}
927
928	output = &DeleteAppOutput{}
929	req = c.newRequest(op, input, output)
930	return
931}
932
933// DeleteApp API operation for Amazon Pinpoint.
934//
935// Deletes an app.
936//
937// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
938// with awserr.Error's Code and Message methods to get detailed information about
939// the error.
940//
941// See the AWS API reference guide for Amazon Pinpoint's
942// API operation DeleteApp for usage and error information.
943//
944// Returned Error Codes:
945//   * ErrCodeBadRequestException "BadRequestException"
946//
947//   * ErrCodeInternalServerErrorException "InternalServerErrorException"
948//
949//   * ErrCodeForbiddenException "ForbiddenException"
950//
951//   * ErrCodeNotFoundException "NotFoundException"
952//
953//   * ErrCodeMethodNotAllowedException "MethodNotAllowedException"
954//
955//   * ErrCodeTooManyRequestsException "TooManyRequestsException"
956//
957// See also, https://docs.aws.amazon.com/goto/WebAPI/pinpoint-2016-12-01/DeleteApp
958func (c *Pinpoint) DeleteApp(input *DeleteAppInput) (*DeleteAppOutput, error) {
959	req, out := c.DeleteAppRequest(input)
960	return out, req.Send()
961}
962
963// DeleteAppWithContext is the same as DeleteApp with the addition of
964// the ability to pass a context and additional request options.
965//
966// See DeleteApp for details on how to use this API operation.
967//
968// The context must be non-nil and will be used for request cancellation. If
969// the context is nil a panic will occur. In the future the SDK may create
970// sub-contexts for http.Requests. See https://golang.org/pkg/context/
971// for more information on using Contexts.
972func (c *Pinpoint) DeleteAppWithContext(ctx aws.Context, input *DeleteAppInput, opts ...request.Option) (*DeleteAppOutput, error) {
973	req, out := c.DeleteAppRequest(input)
974	req.SetContext(ctx)
975	req.ApplyOptions(opts...)
976	return out, req.Send()
977}
978
979const opDeleteBaiduChannel = "DeleteBaiduChannel"
980
981// DeleteBaiduChannelRequest generates a "aws/request.Request" representing the
982// client's request for the DeleteBaiduChannel operation. The "output" return
983// value will be populated with the request's response once the request completes
984// successfuly.
985//
986// Use "Send" method on the returned Request to send the API call to the service.
987// the "output" return value is not valid until after Send returns without error.
988//
989// See DeleteBaiduChannel for more information on using the DeleteBaiduChannel
990// API call, and error handling.
991//
992// This method is useful when you want to inject custom logic or configuration
993// into the SDK's request lifecycle. Such as custom headers, or retry logic.
994//
995//
996//    // Example sending a request using the DeleteBaiduChannelRequest method.
997//    req, resp := client.DeleteBaiduChannelRequest(params)
998//
999//    err := req.Send()
1000//    if err == nil { // resp is now filled
1001//        fmt.Println(resp)
1002//    }
1003//
1004// See also, https://docs.aws.amazon.com/goto/WebAPI/pinpoint-2016-12-01/DeleteBaiduChannel
1005func (c *Pinpoint) DeleteBaiduChannelRequest(input *DeleteBaiduChannelInput) (req *request.Request, output *DeleteBaiduChannelOutput) {
1006	op := &request.Operation{
1007		Name:       opDeleteBaiduChannel,
1008		HTTPMethod: "DELETE",
1009		HTTPPath:   "/v1/apps/{application-id}/channels/baidu",
1010	}
1011
1012	if input == nil {
1013		input = &DeleteBaiduChannelInput{}
1014	}
1015
1016	output = &DeleteBaiduChannelOutput{}
1017	req = c.newRequest(op, input, output)
1018	return
1019}
1020
1021// DeleteBaiduChannel API operation for Amazon Pinpoint.
1022//
1023// Delete a BAIDU GCM channel
1024//
1025// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
1026// with awserr.Error's Code and Message methods to get detailed information about
1027// the error.
1028//
1029// See the AWS API reference guide for Amazon Pinpoint's
1030// API operation DeleteBaiduChannel for usage and error information.
1031//
1032// Returned Error Codes:
1033//   * ErrCodeBadRequestException "BadRequestException"
1034//
1035//   * ErrCodeInternalServerErrorException "InternalServerErrorException"
1036//
1037//   * ErrCodeForbiddenException "ForbiddenException"
1038//
1039//   * ErrCodeNotFoundException "NotFoundException"
1040//
1041//   * ErrCodeMethodNotAllowedException "MethodNotAllowedException"
1042//
1043//   * ErrCodeTooManyRequestsException "TooManyRequestsException"
1044//
1045// See also, https://docs.aws.amazon.com/goto/WebAPI/pinpoint-2016-12-01/DeleteBaiduChannel
1046func (c *Pinpoint) DeleteBaiduChannel(input *DeleteBaiduChannelInput) (*DeleteBaiduChannelOutput, error) {
1047	req, out := c.DeleteBaiduChannelRequest(input)
1048	return out, req.Send()
1049}
1050
1051// DeleteBaiduChannelWithContext is the same as DeleteBaiduChannel with the addition of
1052// the ability to pass a context and additional request options.
1053//
1054// See DeleteBaiduChannel for details on how to use this API operation.
1055//
1056// The context must be non-nil and will be used for request cancellation. If
1057// the context is nil a panic will occur. In the future the SDK may create
1058// sub-contexts for http.Requests. See https://golang.org/pkg/context/
1059// for more information on using Contexts.
1060func (c *Pinpoint) DeleteBaiduChannelWithContext(ctx aws.Context, input *DeleteBaiduChannelInput, opts ...request.Option) (*DeleteBaiduChannelOutput, error) {
1061	req, out := c.DeleteBaiduChannelRequest(input)
1062	req.SetContext(ctx)
1063	req.ApplyOptions(opts...)
1064	return out, req.Send()
1065}
1066
1067const opDeleteCampaign = "DeleteCampaign"
1068
1069// DeleteCampaignRequest generates a "aws/request.Request" representing the
1070// client's request for the DeleteCampaign operation. The "output" return
1071// value will be populated with the request's response once the request completes
1072// successfuly.
1073//
1074// Use "Send" method on the returned Request to send the API call to the service.
1075// the "output" return value is not valid until after Send returns without error.
1076//
1077// See DeleteCampaign for more information on using the DeleteCampaign
1078// API call, and error handling.
1079//
1080// This method is useful when you want to inject custom logic or configuration
1081// into the SDK's request lifecycle. Such as custom headers, or retry logic.
1082//
1083//
1084//    // Example sending a request using the DeleteCampaignRequest method.
1085//    req, resp := client.DeleteCampaignRequest(params)
1086//
1087//    err := req.Send()
1088//    if err == nil { // resp is now filled
1089//        fmt.Println(resp)
1090//    }
1091//
1092// See also, https://docs.aws.amazon.com/goto/WebAPI/pinpoint-2016-12-01/DeleteCampaign
1093func (c *Pinpoint) DeleteCampaignRequest(input *DeleteCampaignInput) (req *request.Request, output *DeleteCampaignOutput) {
1094	op := &request.Operation{
1095		Name:       opDeleteCampaign,
1096		HTTPMethod: "DELETE",
1097		HTTPPath:   "/v1/apps/{application-id}/campaigns/{campaign-id}",
1098	}
1099
1100	if input == nil {
1101		input = &DeleteCampaignInput{}
1102	}
1103
1104	output = &DeleteCampaignOutput{}
1105	req = c.newRequest(op, input, output)
1106	return
1107}
1108
1109// DeleteCampaign API operation for Amazon Pinpoint.
1110//
1111// Deletes a campaign.
1112//
1113// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
1114// with awserr.Error's Code and Message methods to get detailed information about
1115// the error.
1116//
1117// See the AWS API reference guide for Amazon Pinpoint's
1118// API operation DeleteCampaign for usage and error information.
1119//
1120// Returned Error Codes:
1121//   * ErrCodeBadRequestException "BadRequestException"
1122//
1123//   * ErrCodeInternalServerErrorException "InternalServerErrorException"
1124//
1125//   * ErrCodeForbiddenException "ForbiddenException"
1126//
1127//   * ErrCodeNotFoundException "NotFoundException"
1128//
1129//   * ErrCodeMethodNotAllowedException "MethodNotAllowedException"
1130//
1131//   * ErrCodeTooManyRequestsException "TooManyRequestsException"
1132//
1133// See also, https://docs.aws.amazon.com/goto/WebAPI/pinpoint-2016-12-01/DeleteCampaign
1134func (c *Pinpoint) DeleteCampaign(input *DeleteCampaignInput) (*DeleteCampaignOutput, error) {
1135	req, out := c.DeleteCampaignRequest(input)
1136	return out, req.Send()
1137}
1138
1139// DeleteCampaignWithContext is the same as DeleteCampaign with the addition of
1140// the ability to pass a context and additional request options.
1141//
1142// See DeleteCampaign for details on how to use this API operation.
1143//
1144// The context must be non-nil and will be used for request cancellation. If
1145// the context is nil a panic will occur. In the future the SDK may create
1146// sub-contexts for http.Requests. See https://golang.org/pkg/context/
1147// for more information on using Contexts.
1148func (c *Pinpoint) DeleteCampaignWithContext(ctx aws.Context, input *DeleteCampaignInput, opts ...request.Option) (*DeleteCampaignOutput, error) {
1149	req, out := c.DeleteCampaignRequest(input)
1150	req.SetContext(ctx)
1151	req.ApplyOptions(opts...)
1152	return out, req.Send()
1153}
1154
1155const opDeleteEmailChannel = "DeleteEmailChannel"
1156
1157// DeleteEmailChannelRequest generates a "aws/request.Request" representing the
1158// client's request for the DeleteEmailChannel operation. The "output" return
1159// value will be populated with the request's response once the request completes
1160// successfuly.
1161//
1162// Use "Send" method on the returned Request to send the API call to the service.
1163// the "output" return value is not valid until after Send returns without error.
1164//
1165// See DeleteEmailChannel for more information on using the DeleteEmailChannel
1166// API call, and error handling.
1167//
1168// This method is useful when you want to inject custom logic or configuration
1169// into the SDK's request lifecycle. Such as custom headers, or retry logic.
1170//
1171//
1172//    // Example sending a request using the DeleteEmailChannelRequest method.
1173//    req, resp := client.DeleteEmailChannelRequest(params)
1174//
1175//    err := req.Send()
1176//    if err == nil { // resp is now filled
1177//        fmt.Println(resp)
1178//    }
1179//
1180// See also, https://docs.aws.amazon.com/goto/WebAPI/pinpoint-2016-12-01/DeleteEmailChannel
1181func (c *Pinpoint) DeleteEmailChannelRequest(input *DeleteEmailChannelInput) (req *request.Request, output *DeleteEmailChannelOutput) {
1182	op := &request.Operation{
1183		Name:       opDeleteEmailChannel,
1184		HTTPMethod: "DELETE",
1185		HTTPPath:   "/v1/apps/{application-id}/channels/email",
1186	}
1187
1188	if input == nil {
1189		input = &DeleteEmailChannelInput{}
1190	}
1191
1192	output = &DeleteEmailChannelOutput{}
1193	req = c.newRequest(op, input, output)
1194	return
1195}
1196
1197// DeleteEmailChannel API operation for Amazon Pinpoint.
1198//
1199// Delete an email channel
1200//
1201// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
1202// with awserr.Error's Code and Message methods to get detailed information about
1203// the error.
1204//
1205// See the AWS API reference guide for Amazon Pinpoint's
1206// API operation DeleteEmailChannel for usage and error information.
1207//
1208// Returned Error Codes:
1209//   * ErrCodeBadRequestException "BadRequestException"
1210//
1211//   * ErrCodeInternalServerErrorException "InternalServerErrorException"
1212//
1213//   * ErrCodeForbiddenException "ForbiddenException"
1214//
1215//   * ErrCodeNotFoundException "NotFoundException"
1216//
1217//   * ErrCodeMethodNotAllowedException "MethodNotAllowedException"
1218//
1219//   * ErrCodeTooManyRequestsException "TooManyRequestsException"
1220//
1221// See also, https://docs.aws.amazon.com/goto/WebAPI/pinpoint-2016-12-01/DeleteEmailChannel
1222func (c *Pinpoint) DeleteEmailChannel(input *DeleteEmailChannelInput) (*DeleteEmailChannelOutput, error) {
1223	req, out := c.DeleteEmailChannelRequest(input)
1224	return out, req.Send()
1225}
1226
1227// DeleteEmailChannelWithContext is the same as DeleteEmailChannel with the addition of
1228// the ability to pass a context and additional request options.
1229//
1230// See DeleteEmailChannel for details on how to use this API operation.
1231//
1232// The context must be non-nil and will be used for request cancellation. If
1233// the context is nil a panic will occur. In the future the SDK may create
1234// sub-contexts for http.Requests. See https://golang.org/pkg/context/
1235// for more information on using Contexts.
1236func (c *Pinpoint) DeleteEmailChannelWithContext(ctx aws.Context, input *DeleteEmailChannelInput, opts ...request.Option) (*DeleteEmailChannelOutput, error) {
1237	req, out := c.DeleteEmailChannelRequest(input)
1238	req.SetContext(ctx)
1239	req.ApplyOptions(opts...)
1240	return out, req.Send()
1241}
1242
1243const opDeleteEndpoint = "DeleteEndpoint"
1244
1245// DeleteEndpointRequest generates a "aws/request.Request" representing the
1246// client's request for the DeleteEndpoint operation. The "output" return
1247// value will be populated with the request's response once the request completes
1248// successfuly.
1249//
1250// Use "Send" method on the returned Request to send the API call to the service.
1251// the "output" return value is not valid until after Send returns without error.
1252//
1253// See DeleteEndpoint for more information on using the DeleteEndpoint
1254// API call, and error handling.
1255//
1256// This method is useful when you want to inject custom logic or configuration
1257// into the SDK's request lifecycle. Such as custom headers, or retry logic.
1258//
1259//
1260//    // Example sending a request using the DeleteEndpointRequest method.
1261//    req, resp := client.DeleteEndpointRequest(params)
1262//
1263//    err := req.Send()
1264//    if err == nil { // resp is now filled
1265//        fmt.Println(resp)
1266//    }
1267//
1268// See also, https://docs.aws.amazon.com/goto/WebAPI/pinpoint-2016-12-01/DeleteEndpoint
1269func (c *Pinpoint) DeleteEndpointRequest(input *DeleteEndpointInput) (req *request.Request, output *DeleteEndpointOutput) {
1270	op := &request.Operation{
1271		Name:       opDeleteEndpoint,
1272		HTTPMethod: "DELETE",
1273		HTTPPath:   "/v1/apps/{application-id}/endpoints/{endpoint-id}",
1274	}
1275
1276	if input == nil {
1277		input = &DeleteEndpointInput{}
1278	}
1279
1280	output = &DeleteEndpointOutput{}
1281	req = c.newRequest(op, input, output)
1282	return
1283}
1284
1285// DeleteEndpoint API operation for Amazon Pinpoint.
1286//
1287// Deletes an endpoint.
1288//
1289// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
1290// with awserr.Error's Code and Message methods to get detailed information about
1291// the error.
1292//
1293// See the AWS API reference guide for Amazon Pinpoint's
1294// API operation DeleteEndpoint for usage and error information.
1295//
1296// Returned Error Codes:
1297//   * ErrCodeBadRequestException "BadRequestException"
1298//
1299//   * ErrCodeInternalServerErrorException "InternalServerErrorException"
1300//
1301//   * ErrCodeForbiddenException "ForbiddenException"
1302//
1303//   * ErrCodeNotFoundException "NotFoundException"
1304//
1305//   * ErrCodeMethodNotAllowedException "MethodNotAllowedException"
1306//
1307//   * ErrCodeTooManyRequestsException "TooManyRequestsException"
1308//
1309// See also, https://docs.aws.amazon.com/goto/WebAPI/pinpoint-2016-12-01/DeleteEndpoint
1310func (c *Pinpoint) DeleteEndpoint(input *DeleteEndpointInput) (*DeleteEndpointOutput, error) {
1311	req, out := c.DeleteEndpointRequest(input)
1312	return out, req.Send()
1313}
1314
1315// DeleteEndpointWithContext is the same as DeleteEndpoint with the addition of
1316// the ability to pass a context and additional request options.
1317//
1318// See DeleteEndpoint for details on how to use this API operation.
1319//
1320// The context must be non-nil and will be used for request cancellation. If
1321// the context is nil a panic will occur. In the future the SDK may create
1322// sub-contexts for http.Requests. See https://golang.org/pkg/context/
1323// for more information on using Contexts.
1324func (c *Pinpoint) DeleteEndpointWithContext(ctx aws.Context, input *DeleteEndpointInput, opts ...request.Option) (*DeleteEndpointOutput, error) {
1325	req, out := c.DeleteEndpointRequest(input)
1326	req.SetContext(ctx)
1327	req.ApplyOptions(opts...)
1328	return out, req.Send()
1329}
1330
1331const opDeleteEventStream = "DeleteEventStream"
1332
1333// DeleteEventStreamRequest generates a "aws/request.Request" representing the
1334// client's request for the DeleteEventStream operation. The "output" return
1335// value will be populated with the request's response once the request completes
1336// successfuly.
1337//
1338// Use "Send" method on the returned Request to send the API call to the service.
1339// the "output" return value is not valid until after Send returns without error.
1340//
1341// See DeleteEventStream for more information on using the DeleteEventStream
1342// API call, and error handling.
1343//
1344// This method is useful when you want to inject custom logic or configuration
1345// into the SDK's request lifecycle. Such as custom headers, or retry logic.
1346//
1347//
1348//    // Example sending a request using the DeleteEventStreamRequest method.
1349//    req, resp := client.DeleteEventStreamRequest(params)
1350//
1351//    err := req.Send()
1352//    if err == nil { // resp is now filled
1353//        fmt.Println(resp)
1354//    }
1355//
1356// See also, https://docs.aws.amazon.com/goto/WebAPI/pinpoint-2016-12-01/DeleteEventStream
1357func (c *Pinpoint) DeleteEventStreamRequest(input *DeleteEventStreamInput) (req *request.Request, output *DeleteEventStreamOutput) {
1358	op := &request.Operation{
1359		Name:       opDeleteEventStream,
1360		HTTPMethod: "DELETE",
1361		HTTPPath:   "/v1/apps/{application-id}/eventstream",
1362	}
1363
1364	if input == nil {
1365		input = &DeleteEventStreamInput{}
1366	}
1367
1368	output = &DeleteEventStreamOutput{}
1369	req = c.newRequest(op, input, output)
1370	return
1371}
1372
1373// DeleteEventStream API operation for Amazon Pinpoint.
1374//
1375// Deletes the event stream for an app.
1376//
1377// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
1378// with awserr.Error's Code and Message methods to get detailed information about
1379// the error.
1380//
1381// See the AWS API reference guide for Amazon Pinpoint's
1382// API operation DeleteEventStream for usage and error information.
1383//
1384// Returned Error Codes:
1385//   * ErrCodeBadRequestException "BadRequestException"
1386//
1387//   * ErrCodeInternalServerErrorException "InternalServerErrorException"
1388//
1389//   * ErrCodeForbiddenException "ForbiddenException"
1390//
1391//   * ErrCodeNotFoundException "NotFoundException"
1392//
1393//   * ErrCodeMethodNotAllowedException "MethodNotAllowedException"
1394//
1395//   * ErrCodeTooManyRequestsException "TooManyRequestsException"
1396//
1397// See also, https://docs.aws.amazon.com/goto/WebAPI/pinpoint-2016-12-01/DeleteEventStream
1398func (c *Pinpoint) DeleteEventStream(input *DeleteEventStreamInput) (*DeleteEventStreamOutput, error) {
1399	req, out := c.DeleteEventStreamRequest(input)
1400	return out, req.Send()
1401}
1402
1403// DeleteEventStreamWithContext is the same as DeleteEventStream with the addition of
1404// the ability to pass a context and additional request options.
1405//
1406// See DeleteEventStream for details on how to use this API operation.
1407//
1408// The context must be non-nil and will be used for request cancellation. If
1409// the context is nil a panic will occur. In the future the SDK may create
1410// sub-contexts for http.Requests. See https://golang.org/pkg/context/
1411// for more information on using Contexts.
1412func (c *Pinpoint) DeleteEventStreamWithContext(ctx aws.Context, input *DeleteEventStreamInput, opts ...request.Option) (*DeleteEventStreamOutput, error) {
1413	req, out := c.DeleteEventStreamRequest(input)
1414	req.SetContext(ctx)
1415	req.ApplyOptions(opts...)
1416	return out, req.Send()
1417}
1418
1419const opDeleteGcmChannel = "DeleteGcmChannel"
1420
1421// DeleteGcmChannelRequest generates a "aws/request.Request" representing the
1422// client's request for the DeleteGcmChannel operation. The "output" return
1423// value will be populated with the request's response once the request completes
1424// successfuly.
1425//
1426// Use "Send" method on the returned Request to send the API call to the service.
1427// the "output" return value is not valid until after Send returns without error.
1428//
1429// See DeleteGcmChannel for more information on using the DeleteGcmChannel
1430// API call, and error handling.
1431//
1432// This method is useful when you want to inject custom logic or configuration
1433// into the SDK's request lifecycle. Such as custom headers, or retry logic.
1434//
1435//
1436//    // Example sending a request using the DeleteGcmChannelRequest method.
1437//    req, resp := client.DeleteGcmChannelRequest(params)
1438//
1439//    err := req.Send()
1440//    if err == nil { // resp is now filled
1441//        fmt.Println(resp)
1442//    }
1443//
1444// See also, https://docs.aws.amazon.com/goto/WebAPI/pinpoint-2016-12-01/DeleteGcmChannel
1445func (c *Pinpoint) DeleteGcmChannelRequest(input *DeleteGcmChannelInput) (req *request.Request, output *DeleteGcmChannelOutput) {
1446	op := &request.Operation{
1447		Name:       opDeleteGcmChannel,
1448		HTTPMethod: "DELETE",
1449		HTTPPath:   "/v1/apps/{application-id}/channels/gcm",
1450	}
1451
1452	if input == nil {
1453		input = &DeleteGcmChannelInput{}
1454	}
1455
1456	output = &DeleteGcmChannelOutput{}
1457	req = c.newRequest(op, input, output)
1458	return
1459}
1460
1461// DeleteGcmChannel API operation for Amazon Pinpoint.
1462//
1463// Deletes the GCM channel for an app.
1464//
1465// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
1466// with awserr.Error's Code and Message methods to get detailed information about
1467// the error.
1468//
1469// See the AWS API reference guide for Amazon Pinpoint's
1470// API operation DeleteGcmChannel for usage and error information.
1471//
1472// Returned Error Codes:
1473//   * ErrCodeBadRequestException "BadRequestException"
1474//
1475//   * ErrCodeInternalServerErrorException "InternalServerErrorException"
1476//
1477//   * ErrCodeForbiddenException "ForbiddenException"
1478//
1479//   * ErrCodeNotFoundException "NotFoundException"
1480//
1481//   * ErrCodeMethodNotAllowedException "MethodNotAllowedException"
1482//
1483//   * ErrCodeTooManyRequestsException "TooManyRequestsException"
1484//
1485// See also, https://docs.aws.amazon.com/goto/WebAPI/pinpoint-2016-12-01/DeleteGcmChannel
1486func (c *Pinpoint) DeleteGcmChannel(input *DeleteGcmChannelInput) (*DeleteGcmChannelOutput, error) {
1487	req, out := c.DeleteGcmChannelRequest(input)
1488	return out, req.Send()
1489}
1490
1491// DeleteGcmChannelWithContext is the same as DeleteGcmChannel with the addition of
1492// the ability to pass a context and additional request options.
1493//
1494// See DeleteGcmChannel for details on how to use this API operation.
1495//
1496// The context must be non-nil and will be used for request cancellation. If
1497// the context is nil a panic will occur. In the future the SDK may create
1498// sub-contexts for http.Requests. See https://golang.org/pkg/context/
1499// for more information on using Contexts.
1500func (c *Pinpoint) DeleteGcmChannelWithContext(ctx aws.Context, input *DeleteGcmChannelInput, opts ...request.Option) (*DeleteGcmChannelOutput, error) {
1501	req, out := c.DeleteGcmChannelRequest(input)
1502	req.SetContext(ctx)
1503	req.ApplyOptions(opts...)
1504	return out, req.Send()
1505}
1506
1507const opDeleteSegment = "DeleteSegment"
1508
1509// DeleteSegmentRequest generates a "aws/request.Request" representing the
1510// client's request for the DeleteSegment operation. The "output" return
1511// value will be populated with the request's response once the request completes
1512// successfuly.
1513//
1514// Use "Send" method on the returned Request to send the API call to the service.
1515// the "output" return value is not valid until after Send returns without error.
1516//
1517// See DeleteSegment for more information on using the DeleteSegment
1518// API call, and error handling.
1519//
1520// This method is useful when you want to inject custom logic or configuration
1521// into the SDK's request lifecycle. Such as custom headers, or retry logic.
1522//
1523//
1524//    // Example sending a request using the DeleteSegmentRequest method.
1525//    req, resp := client.DeleteSegmentRequest(params)
1526//
1527//    err := req.Send()
1528//    if err == nil { // resp is now filled
1529//        fmt.Println(resp)
1530//    }
1531//
1532// See also, https://docs.aws.amazon.com/goto/WebAPI/pinpoint-2016-12-01/DeleteSegment
1533func (c *Pinpoint) DeleteSegmentRequest(input *DeleteSegmentInput) (req *request.Request, output *DeleteSegmentOutput) {
1534	op := &request.Operation{
1535		Name:       opDeleteSegment,
1536		HTTPMethod: "DELETE",
1537		HTTPPath:   "/v1/apps/{application-id}/segments/{segment-id}",
1538	}
1539
1540	if input == nil {
1541		input = &DeleteSegmentInput{}
1542	}
1543
1544	output = &DeleteSegmentOutput{}
1545	req = c.newRequest(op, input, output)
1546	return
1547}
1548
1549// DeleteSegment API operation for Amazon Pinpoint.
1550//
1551// Deletes a segment.
1552//
1553// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
1554// with awserr.Error's Code and Message methods to get detailed information about
1555// the error.
1556//
1557// See the AWS API reference guide for Amazon Pinpoint's
1558// API operation DeleteSegment for usage and error information.
1559//
1560// Returned Error Codes:
1561//   * ErrCodeBadRequestException "BadRequestException"
1562//
1563//   * ErrCodeInternalServerErrorException "InternalServerErrorException"
1564//
1565//   * ErrCodeForbiddenException "ForbiddenException"
1566//
1567//   * ErrCodeNotFoundException "NotFoundException"
1568//
1569//   * ErrCodeMethodNotAllowedException "MethodNotAllowedException"
1570//
1571//   * ErrCodeTooManyRequestsException "TooManyRequestsException"
1572//
1573// See also, https://docs.aws.amazon.com/goto/WebAPI/pinpoint-2016-12-01/DeleteSegment
1574func (c *Pinpoint) DeleteSegment(input *DeleteSegmentInput) (*DeleteSegmentOutput, error) {
1575	req, out := c.DeleteSegmentRequest(input)
1576	return out, req.Send()
1577}
1578
1579// DeleteSegmentWithContext is the same as DeleteSegment with the addition of
1580// the ability to pass a context and additional request options.
1581//
1582// See DeleteSegment for details on how to use this API operation.
1583//
1584// The context must be non-nil and will be used for request cancellation. If
1585// the context is nil a panic will occur. In the future the SDK may create
1586// sub-contexts for http.Requests. See https://golang.org/pkg/context/
1587// for more information on using Contexts.
1588func (c *Pinpoint) DeleteSegmentWithContext(ctx aws.Context, input *DeleteSegmentInput, opts ...request.Option) (*DeleteSegmentOutput, error) {
1589	req, out := c.DeleteSegmentRequest(input)
1590	req.SetContext(ctx)
1591	req.ApplyOptions(opts...)
1592	return out, req.Send()
1593}
1594
1595const opDeleteSmsChannel = "DeleteSmsChannel"
1596
1597// DeleteSmsChannelRequest generates a "aws/request.Request" representing the
1598// client's request for the DeleteSmsChannel operation. The "output" return
1599// value will be populated with the request's response once the request completes
1600// successfuly.
1601//
1602// Use "Send" method on the returned Request to send the API call to the service.
1603// the "output" return value is not valid until after Send returns without error.
1604//
1605// See DeleteSmsChannel for more information on using the DeleteSmsChannel
1606// API call, and error handling.
1607//
1608// This method is useful when you want to inject custom logic or configuration
1609// into the SDK's request lifecycle. Such as custom headers, or retry logic.
1610//
1611//
1612//    // Example sending a request using the DeleteSmsChannelRequest method.
1613//    req, resp := client.DeleteSmsChannelRequest(params)
1614//
1615//    err := req.Send()
1616//    if err == nil { // resp is now filled
1617//        fmt.Println(resp)
1618//    }
1619//
1620// See also, https://docs.aws.amazon.com/goto/WebAPI/pinpoint-2016-12-01/DeleteSmsChannel
1621func (c *Pinpoint) DeleteSmsChannelRequest(input *DeleteSmsChannelInput) (req *request.Request, output *DeleteSmsChannelOutput) {
1622	op := &request.Operation{
1623		Name:       opDeleteSmsChannel,
1624		HTTPMethod: "DELETE",
1625		HTTPPath:   "/v1/apps/{application-id}/channels/sms",
1626	}
1627
1628	if input == nil {
1629		input = &DeleteSmsChannelInput{}
1630	}
1631
1632	output = &DeleteSmsChannelOutput{}
1633	req = c.newRequest(op, input, output)
1634	return
1635}
1636
1637// DeleteSmsChannel API operation for Amazon Pinpoint.
1638//
1639// Delete an SMS channel
1640//
1641// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
1642// with awserr.Error's Code and Message methods to get detailed information about
1643// the error.
1644//
1645// See the AWS API reference guide for Amazon Pinpoint's
1646// API operation DeleteSmsChannel for usage and error information.
1647//
1648// Returned Error Codes:
1649//   * ErrCodeBadRequestException "BadRequestException"
1650//
1651//   * ErrCodeInternalServerErrorException "InternalServerErrorException"
1652//
1653//   * ErrCodeForbiddenException "ForbiddenException"
1654//
1655//   * ErrCodeNotFoundException "NotFoundException"
1656//
1657//   * ErrCodeMethodNotAllowedException "MethodNotAllowedException"
1658//
1659//   * ErrCodeTooManyRequestsException "TooManyRequestsException"
1660//
1661// See also, https://docs.aws.amazon.com/goto/WebAPI/pinpoint-2016-12-01/DeleteSmsChannel
1662func (c *Pinpoint) DeleteSmsChannel(input *DeleteSmsChannelInput) (*DeleteSmsChannelOutput, error) {
1663	req, out := c.DeleteSmsChannelRequest(input)
1664	return out, req.Send()
1665}
1666
1667// DeleteSmsChannelWithContext is the same as DeleteSmsChannel with the addition of
1668// the ability to pass a context and additional request options.
1669//
1670// See DeleteSmsChannel for details on how to use this API operation.
1671//
1672// The context must be non-nil and will be used for request cancellation. If
1673// the context is nil a panic will occur. In the future the SDK may create
1674// sub-contexts for http.Requests. See https://golang.org/pkg/context/
1675// for more information on using Contexts.
1676func (c *Pinpoint) DeleteSmsChannelWithContext(ctx aws.Context, input *DeleteSmsChannelInput, opts ...request.Option) (*DeleteSmsChannelOutput, error) {
1677	req, out := c.DeleteSmsChannelRequest(input)
1678	req.SetContext(ctx)
1679	req.ApplyOptions(opts...)
1680	return out, req.Send()
1681}
1682
1683const opGetAdmChannel = "GetAdmChannel"
1684
1685// GetAdmChannelRequest generates a "aws/request.Request" representing the
1686// client's request for the GetAdmChannel operation. The "output" return
1687// value will be populated with the request's response once the request completes
1688// successfuly.
1689//
1690// Use "Send" method on the returned Request to send the API call to the service.
1691// the "output" return value is not valid until after Send returns without error.
1692//
1693// See GetAdmChannel for more information on using the GetAdmChannel
1694// API call, and error handling.
1695//
1696// This method is useful when you want to inject custom logic or configuration
1697// into the SDK's request lifecycle. Such as custom headers, or retry logic.
1698//
1699//
1700//    // Example sending a request using the GetAdmChannelRequest method.
1701//    req, resp := client.GetAdmChannelRequest(params)
1702//
1703//    err := req.Send()
1704//    if err == nil { // resp is now filled
1705//        fmt.Println(resp)
1706//    }
1707//
1708// See also, https://docs.aws.amazon.com/goto/WebAPI/pinpoint-2016-12-01/GetAdmChannel
1709func (c *Pinpoint) GetAdmChannelRequest(input *GetAdmChannelInput) (req *request.Request, output *GetAdmChannelOutput) {
1710	op := &request.Operation{
1711		Name:       opGetAdmChannel,
1712		HTTPMethod: "GET",
1713		HTTPPath:   "/v1/apps/{application-id}/channels/adm",
1714	}
1715
1716	if input == nil {
1717		input = &GetAdmChannelInput{}
1718	}
1719
1720	output = &GetAdmChannelOutput{}
1721	req = c.newRequest(op, input, output)
1722	return
1723}
1724
1725// GetAdmChannel API operation for Amazon Pinpoint.
1726//
1727// Get an ADM channel
1728//
1729// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
1730// with awserr.Error's Code and Message methods to get detailed information about
1731// the error.
1732//
1733// See the AWS API reference guide for Amazon Pinpoint's
1734// API operation GetAdmChannel for usage and error information.
1735//
1736// Returned Error Codes:
1737//   * ErrCodeBadRequestException "BadRequestException"
1738//
1739//   * ErrCodeInternalServerErrorException "InternalServerErrorException"
1740//
1741//   * ErrCodeForbiddenException "ForbiddenException"
1742//
1743//   * ErrCodeNotFoundException "NotFoundException"
1744//
1745//   * ErrCodeMethodNotAllowedException "MethodNotAllowedException"
1746//
1747//   * ErrCodeTooManyRequestsException "TooManyRequestsException"
1748//
1749// See also, https://docs.aws.amazon.com/goto/WebAPI/pinpoint-2016-12-01/GetAdmChannel
1750func (c *Pinpoint) GetAdmChannel(input *GetAdmChannelInput) (*GetAdmChannelOutput, error) {
1751	req, out := c.GetAdmChannelRequest(input)
1752	return out, req.Send()
1753}
1754
1755// GetAdmChannelWithContext is the same as GetAdmChannel with the addition of
1756// the ability to pass a context and additional request options.
1757//
1758// See GetAdmChannel for details on how to use this API operation.
1759//
1760// The context must be non-nil and will be used for request cancellation. If
1761// the context is nil a panic will occur. In the future the SDK may create
1762// sub-contexts for http.Requests. See https://golang.org/pkg/context/
1763// for more information on using Contexts.
1764func (c *Pinpoint) GetAdmChannelWithContext(ctx aws.Context, input *GetAdmChannelInput, opts ...request.Option) (*GetAdmChannelOutput, error) {
1765	req, out := c.GetAdmChannelRequest(input)
1766	req.SetContext(ctx)
1767	req.ApplyOptions(opts...)
1768	return out, req.Send()
1769}
1770
1771const opGetApnsChannel = "GetApnsChannel"
1772
1773// GetApnsChannelRequest generates a "aws/request.Request" representing the
1774// client's request for the GetApnsChannel operation. The "output" return
1775// value will be populated with the request's response once the request completes
1776// successfuly.
1777//
1778// Use "Send" method on the returned Request to send the API call to the service.
1779// the "output" return value is not valid until after Send returns without error.
1780//
1781// See GetApnsChannel for more information on using the GetApnsChannel
1782// API call, and error handling.
1783//
1784// This method is useful when you want to inject custom logic or configuration
1785// into the SDK's request lifecycle. Such as custom headers, or retry logic.
1786//
1787//
1788//    // Example sending a request using the GetApnsChannelRequest method.
1789//    req, resp := client.GetApnsChannelRequest(params)
1790//
1791//    err := req.Send()
1792//    if err == nil { // resp is now filled
1793//        fmt.Println(resp)
1794//    }
1795//
1796// See also, https://docs.aws.amazon.com/goto/WebAPI/pinpoint-2016-12-01/GetApnsChannel
1797func (c *Pinpoint) GetApnsChannelRequest(input *GetApnsChannelInput) (req *request.Request, output *GetApnsChannelOutput) {
1798	op := &request.Operation{
1799		Name:       opGetApnsChannel,
1800		HTTPMethod: "GET",
1801		HTTPPath:   "/v1/apps/{application-id}/channels/apns",
1802	}
1803
1804	if input == nil {
1805		input = &GetApnsChannelInput{}
1806	}
1807
1808	output = &GetApnsChannelOutput{}
1809	req = c.newRequest(op, input, output)
1810	return
1811}
1812
1813// GetApnsChannel API operation for Amazon Pinpoint.
1814//
1815// Returns information about the APNs channel for an app.
1816//
1817// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
1818// with awserr.Error's Code and Message methods to get detailed information about
1819// the error.
1820//
1821// See the AWS API reference guide for Amazon Pinpoint's
1822// API operation GetApnsChannel for usage and error information.
1823//
1824// Returned Error Codes:
1825//   * ErrCodeBadRequestException "BadRequestException"
1826//
1827//   * ErrCodeInternalServerErrorException "InternalServerErrorException"
1828//
1829//   * ErrCodeForbiddenException "ForbiddenException"
1830//
1831//   * ErrCodeNotFoundException "NotFoundException"
1832//
1833//   * ErrCodeMethodNotAllowedException "MethodNotAllowedException"
1834//
1835//   * ErrCodeTooManyRequestsException "TooManyRequestsException"
1836//
1837// See also, https://docs.aws.amazon.com/goto/WebAPI/pinpoint-2016-12-01/GetApnsChannel
1838func (c *Pinpoint) GetApnsChannel(input *GetApnsChannelInput) (*GetApnsChannelOutput, error) {
1839	req, out := c.GetApnsChannelRequest(input)
1840	return out, req.Send()
1841}
1842
1843// GetApnsChannelWithContext is the same as GetApnsChannel with the addition of
1844// the ability to pass a context and additional request options.
1845//
1846// See GetApnsChannel for details on how to use this API operation.
1847//
1848// The context must be non-nil and will be used for request cancellation. If
1849// the context is nil a panic will occur. In the future the SDK may create
1850// sub-contexts for http.Requests. See https://golang.org/pkg/context/
1851// for more information on using Contexts.
1852func (c *Pinpoint) GetApnsChannelWithContext(ctx aws.Context, input *GetApnsChannelInput, opts ...request.Option) (*GetApnsChannelOutput, error) {
1853	req, out := c.GetApnsChannelRequest(input)
1854	req.SetContext(ctx)
1855	req.ApplyOptions(opts...)
1856	return out, req.Send()
1857}
1858
1859const opGetApnsSandboxChannel = "GetApnsSandboxChannel"
1860
1861// GetApnsSandboxChannelRequest generates a "aws/request.Request" representing the
1862// client's request for the GetApnsSandboxChannel operation. The "output" return
1863// value will be populated with the request's response once the request completes
1864// successfuly.
1865//
1866// Use "Send" method on the returned Request to send the API call to the service.
1867// the "output" return value is not valid until after Send returns without error.
1868//
1869// See GetApnsSandboxChannel for more information on using the GetApnsSandboxChannel
1870// API call, and error handling.
1871//
1872// This method is useful when you want to inject custom logic or configuration
1873// into the SDK's request lifecycle. Such as custom headers, or retry logic.
1874//
1875//
1876//    // Example sending a request using the GetApnsSandboxChannelRequest method.
1877//    req, resp := client.GetApnsSandboxChannelRequest(params)
1878//
1879//    err := req.Send()
1880//    if err == nil { // resp is now filled
1881//        fmt.Println(resp)
1882//    }
1883//
1884// See also, https://docs.aws.amazon.com/goto/WebAPI/pinpoint-2016-12-01/GetApnsSandboxChannel
1885func (c *Pinpoint) GetApnsSandboxChannelRequest(input *GetApnsSandboxChannelInput) (req *request.Request, output *GetApnsSandboxChannelOutput) {
1886	op := &request.Operation{
1887		Name:       opGetApnsSandboxChannel,
1888		HTTPMethod: "GET",
1889		HTTPPath:   "/v1/apps/{application-id}/channels/apns_sandbox",
1890	}
1891
1892	if input == nil {
1893		input = &GetApnsSandboxChannelInput{}
1894	}
1895
1896	output = &GetApnsSandboxChannelOutput{}
1897	req = c.newRequest(op, input, output)
1898	return
1899}
1900
1901// GetApnsSandboxChannel API operation for Amazon Pinpoint.
1902//
1903// Get an APNS sandbox channel
1904//
1905// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
1906// with awserr.Error's Code and Message methods to get detailed information about
1907// the error.
1908//
1909// See the AWS API reference guide for Amazon Pinpoint's
1910// API operation GetApnsSandboxChannel for usage and error information.
1911//
1912// Returned Error Codes:
1913//   * ErrCodeBadRequestException "BadRequestException"
1914//
1915//   * ErrCodeInternalServerErrorException "InternalServerErrorException"
1916//
1917//   * ErrCodeForbiddenException "ForbiddenException"
1918//
1919//   * ErrCodeNotFoundException "NotFoundException"
1920//
1921//   * ErrCodeMethodNotAllowedException "MethodNotAllowedException"
1922//
1923//   * ErrCodeTooManyRequestsException "TooManyRequestsException"
1924//
1925// See also, https://docs.aws.amazon.com/goto/WebAPI/pinpoint-2016-12-01/GetApnsSandboxChannel
1926func (c *Pinpoint) GetApnsSandboxChannel(input *GetApnsSandboxChannelInput) (*GetApnsSandboxChannelOutput, error) {
1927	req, out := c.GetApnsSandboxChannelRequest(input)
1928	return out, req.Send()
1929}
1930
1931// GetApnsSandboxChannelWithContext is the same as GetApnsSandboxChannel with the addition of
1932// the ability to pass a context and additional request options.
1933//
1934// See GetApnsSandboxChannel for details on how to use this API operation.
1935//
1936// The context must be non-nil and will be used for request cancellation. If
1937// the context is nil a panic will occur. In the future the SDK may create
1938// sub-contexts for http.Requests. See https://golang.org/pkg/context/
1939// for more information on using Contexts.
1940func (c *Pinpoint) GetApnsSandboxChannelWithContext(ctx aws.Context, input *GetApnsSandboxChannelInput, opts ...request.Option) (*GetApnsSandboxChannelOutput, error) {
1941	req, out := c.GetApnsSandboxChannelRequest(input)
1942	req.SetContext(ctx)
1943	req.ApplyOptions(opts...)
1944	return out, req.Send()
1945}
1946
1947const opGetApnsVoipChannel = "GetApnsVoipChannel"
1948
1949// GetApnsVoipChannelRequest generates a "aws/request.Request" representing the
1950// client's request for the GetApnsVoipChannel operation. The "output" return
1951// value will be populated with the request's response once the request completes
1952// successfuly.
1953//
1954// Use "Send" method on the returned Request to send the API call to the service.
1955// the "output" return value is not valid until after Send returns without error.
1956//
1957// See GetApnsVoipChannel for more information on using the GetApnsVoipChannel
1958// API call, and error handling.
1959//
1960// This method is useful when you want to inject custom logic or configuration
1961// into the SDK's request lifecycle. Such as custom headers, or retry logic.
1962//
1963//
1964//    // Example sending a request using the GetApnsVoipChannelRequest method.
1965//    req, resp := client.GetApnsVoipChannelRequest(params)
1966//
1967//    err := req.Send()
1968//    if err == nil { // resp is now filled
1969//        fmt.Println(resp)
1970//    }
1971//
1972// See also, https://docs.aws.amazon.com/goto/WebAPI/pinpoint-2016-12-01/GetApnsVoipChannel
1973func (c *Pinpoint) GetApnsVoipChannelRequest(input *GetApnsVoipChannelInput) (req *request.Request, output *GetApnsVoipChannelOutput) {
1974	op := &request.Operation{
1975		Name:       opGetApnsVoipChannel,
1976		HTTPMethod: "GET",
1977		HTTPPath:   "/v1/apps/{application-id}/channels/apns_voip",
1978	}
1979
1980	if input == nil {
1981		input = &GetApnsVoipChannelInput{}
1982	}
1983
1984	output = &GetApnsVoipChannelOutput{}
1985	req = c.newRequest(op, input, output)
1986	return
1987}
1988
1989// GetApnsVoipChannel API operation for Amazon Pinpoint.
1990//
1991// Get an APNS VoIP channel
1992//
1993// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
1994// with awserr.Error's Code and Message methods to get detailed information about
1995// the error.
1996//
1997// See the AWS API reference guide for Amazon Pinpoint's
1998// API operation GetApnsVoipChannel for usage and error information.
1999//
2000// Returned Error Codes:
2001//   * ErrCodeBadRequestException "BadRequestException"
2002//
2003//   * ErrCodeInternalServerErrorException "InternalServerErrorException"
2004//
2005//   * ErrCodeForbiddenException "ForbiddenException"
2006//
2007//   * ErrCodeNotFoundException "NotFoundException"
2008//
2009//   * ErrCodeMethodNotAllowedException "MethodNotAllowedException"
2010//
2011//   * ErrCodeTooManyRequestsException "TooManyRequestsException"
2012//
2013// See also, https://docs.aws.amazon.com/goto/WebAPI/pinpoint-2016-12-01/GetApnsVoipChannel
2014func (c *Pinpoint) GetApnsVoipChannel(input *GetApnsVoipChannelInput) (*GetApnsVoipChannelOutput, error) {
2015	req, out := c.GetApnsVoipChannelRequest(input)
2016	return out, req.Send()
2017}
2018
2019// GetApnsVoipChannelWithContext is the same as GetApnsVoipChannel with the addition of
2020// the ability to pass a context and additional request options.
2021//
2022// See GetApnsVoipChannel for details on how to use this API operation.
2023//
2024// The context must be non-nil and will be used for request cancellation. If
2025// the context is nil a panic will occur. In the future the SDK may create
2026// sub-contexts for http.Requests. See https://golang.org/pkg/context/
2027// for more information on using Contexts.
2028func (c *Pinpoint) GetApnsVoipChannelWithContext(ctx aws.Context, input *GetApnsVoipChannelInput, opts ...request.Option) (*GetApnsVoipChannelOutput, error) {
2029	req, out := c.GetApnsVoipChannelRequest(input)
2030	req.SetContext(ctx)
2031	req.ApplyOptions(opts...)
2032	return out, req.Send()
2033}
2034
2035const opGetApnsVoipSandboxChannel = "GetApnsVoipSandboxChannel"
2036
2037// GetApnsVoipSandboxChannelRequest generates a "aws/request.Request" representing the
2038// client's request for the GetApnsVoipSandboxChannel operation. The "output" return
2039// value will be populated with the request's response once the request completes
2040// successfuly.
2041//
2042// Use "Send" method on the returned Request to send the API call to the service.
2043// the "output" return value is not valid until after Send returns without error.
2044//
2045// See GetApnsVoipSandboxChannel for more information on using the GetApnsVoipSandboxChannel
2046// API call, and error handling.
2047//
2048// This method is useful when you want to inject custom logic or configuration
2049// into the SDK's request lifecycle. Such as custom headers, or retry logic.
2050//
2051//
2052//    // Example sending a request using the GetApnsVoipSandboxChannelRequest method.
2053//    req, resp := client.GetApnsVoipSandboxChannelRequest(params)
2054//
2055//    err := req.Send()
2056//    if err == nil { // resp is now filled
2057//        fmt.Println(resp)
2058//    }
2059//
2060// See also, https://docs.aws.amazon.com/goto/WebAPI/pinpoint-2016-12-01/GetApnsVoipSandboxChannel
2061func (c *Pinpoint) GetApnsVoipSandboxChannelRequest(input *GetApnsVoipSandboxChannelInput) (req *request.Request, output *GetApnsVoipSandboxChannelOutput) {
2062	op := &request.Operation{
2063		Name:       opGetApnsVoipSandboxChannel,
2064		HTTPMethod: "GET",
2065		HTTPPath:   "/v1/apps/{application-id}/channels/apns_voip_sandbox",
2066	}
2067
2068	if input == nil {
2069		input = &GetApnsVoipSandboxChannelInput{}
2070	}
2071
2072	output = &GetApnsVoipSandboxChannelOutput{}
2073	req = c.newRequest(op, input, output)
2074	return
2075}
2076
2077// GetApnsVoipSandboxChannel API operation for Amazon Pinpoint.
2078//
2079// Get an APNS VoIPSandbox channel
2080//
2081// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
2082// with awserr.Error's Code and Message methods to get detailed information about
2083// the error.
2084//
2085// See the AWS API reference guide for Amazon Pinpoint's
2086// API operation GetApnsVoipSandboxChannel for usage and error information.
2087//
2088// Returned Error Codes:
2089//   * ErrCodeBadRequestException "BadRequestException"
2090//
2091//   * ErrCodeInternalServerErrorException "InternalServerErrorException"
2092//
2093//   * ErrCodeForbiddenException "ForbiddenException"
2094//
2095//   * ErrCodeNotFoundException "NotFoundException"
2096//
2097//   * ErrCodeMethodNotAllowedException "MethodNotAllowedException"
2098//
2099//   * ErrCodeTooManyRequestsException "TooManyRequestsException"
2100//
2101// See also, https://docs.aws.amazon.com/goto/WebAPI/pinpoint-2016-12-01/GetApnsVoipSandboxChannel
2102func (c *Pinpoint) GetApnsVoipSandboxChannel(input *GetApnsVoipSandboxChannelInput) (*GetApnsVoipSandboxChannelOutput, error) {
2103	req, out := c.GetApnsVoipSandboxChannelRequest(input)
2104	return out, req.Send()
2105}
2106
2107// GetApnsVoipSandboxChannelWithContext is the same as GetApnsVoipSandboxChannel with the addition of
2108// the ability to pass a context and additional request options.
2109//
2110// See GetApnsVoipSandboxChannel for details on how to use this API operation.
2111//
2112// The context must be non-nil and will be used for request cancellation. If
2113// the context is nil a panic will occur. In the future the SDK may create
2114// sub-contexts for http.Requests. See https://golang.org/pkg/context/
2115// for more information on using Contexts.
2116func (c *Pinpoint) GetApnsVoipSandboxChannelWithContext(ctx aws.Context, input *GetApnsVoipSandboxChannelInput, opts ...request.Option) (*GetApnsVoipSandboxChannelOutput, error) {
2117	req, out := c.GetApnsVoipSandboxChannelRequest(input)
2118	req.SetContext(ctx)
2119	req.ApplyOptions(opts...)
2120	return out, req.Send()
2121}
2122
2123const opGetApp = "GetApp"
2124
2125// GetAppRequest generates a "aws/request.Request" representing the
2126// client's request for the GetApp operation. The "output" return
2127// value will be populated with the request's response once the request completes
2128// successfuly.
2129//
2130// Use "Send" method on the returned Request to send the API call to the service.
2131// the "output" return value is not valid until after Send returns without error.
2132//
2133// See GetApp for more information on using the GetApp
2134// API call, and error handling.
2135//
2136// This method is useful when you want to inject custom logic or configuration
2137// into the SDK's request lifecycle. Such as custom headers, or retry logic.
2138//
2139//
2140//    // Example sending a request using the GetAppRequest method.
2141//    req, resp := client.GetAppRequest(params)
2142//
2143//    err := req.Send()
2144//    if err == nil { // resp is now filled
2145//        fmt.Println(resp)
2146//    }
2147//
2148// See also, https://docs.aws.amazon.com/goto/WebAPI/pinpoint-2016-12-01/GetApp
2149func (c *Pinpoint) GetAppRequest(input *GetAppInput) (req *request.Request, output *GetAppOutput) {
2150	op := &request.Operation{
2151		Name:       opGetApp,
2152		HTTPMethod: "GET",
2153		HTTPPath:   "/v1/apps/{application-id}",
2154	}
2155
2156	if input == nil {
2157		input = &GetAppInput{}
2158	}
2159
2160	output = &GetAppOutput{}
2161	req = c.newRequest(op, input, output)
2162	return
2163}
2164
2165// GetApp API operation for Amazon Pinpoint.
2166//
2167// Returns information about an app.
2168//
2169// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
2170// with awserr.Error's Code and Message methods to get detailed information about
2171// the error.
2172//
2173// See the AWS API reference guide for Amazon Pinpoint's
2174// API operation GetApp for usage and error information.
2175//
2176// Returned Error Codes:
2177//   * ErrCodeBadRequestException "BadRequestException"
2178//
2179//   * ErrCodeInternalServerErrorException "InternalServerErrorException"
2180//
2181//   * ErrCodeForbiddenException "ForbiddenException"
2182//
2183//   * ErrCodeNotFoundException "NotFoundException"
2184//
2185//   * ErrCodeMethodNotAllowedException "MethodNotAllowedException"
2186//
2187//   * ErrCodeTooManyRequestsException "TooManyRequestsException"
2188//
2189// See also, https://docs.aws.amazon.com/goto/WebAPI/pinpoint-2016-12-01/GetApp
2190func (c *Pinpoint) GetApp(input *GetAppInput) (*GetAppOutput, error) {
2191	req, out := c.GetAppRequest(input)
2192	return out, req.Send()
2193}
2194
2195// GetAppWithContext is the same as GetApp with the addition of
2196// the ability to pass a context and additional request options.
2197//
2198// See GetApp for details on how to use this API operation.
2199//
2200// The context must be non-nil and will be used for request cancellation. If
2201// the context is nil a panic will occur. In the future the SDK may create
2202// sub-contexts for http.Requests. See https://golang.org/pkg/context/
2203// for more information on using Contexts.
2204func (c *Pinpoint) GetAppWithContext(ctx aws.Context, input *GetAppInput, opts ...request.Option) (*GetAppOutput, error) {
2205	req, out := c.GetAppRequest(input)
2206	req.SetContext(ctx)
2207	req.ApplyOptions(opts...)
2208	return out, req.Send()
2209}
2210
2211const opGetApplicationSettings = "GetApplicationSettings"
2212
2213// GetApplicationSettingsRequest generates a "aws/request.Request" representing the
2214// client's request for the GetApplicationSettings operation. The "output" return
2215// value will be populated with the request's response once the request completes
2216// successfuly.
2217//
2218// Use "Send" method on the returned Request to send the API call to the service.
2219// the "output" return value is not valid until after Send returns without error.
2220//
2221// See GetApplicationSettings for more information on using the GetApplicationSettings
2222// API call, and error handling.
2223//
2224// This method is useful when you want to inject custom logic or configuration
2225// into the SDK's request lifecycle. Such as custom headers, or retry logic.
2226//
2227//
2228//    // Example sending a request using the GetApplicationSettingsRequest method.
2229//    req, resp := client.GetApplicationSettingsRequest(params)
2230//
2231//    err := req.Send()
2232//    if err == nil { // resp is now filled
2233//        fmt.Println(resp)
2234//    }
2235//
2236// See also, https://docs.aws.amazon.com/goto/WebAPI/pinpoint-2016-12-01/GetApplicationSettings
2237func (c *Pinpoint) GetApplicationSettingsRequest(input *GetApplicationSettingsInput) (req *request.Request, output *GetApplicationSettingsOutput) {
2238	op := &request.Operation{
2239		Name:       opGetApplicationSettings,
2240		HTTPMethod: "GET",
2241		HTTPPath:   "/v1/apps/{application-id}/settings",
2242	}
2243
2244	if input == nil {
2245		input = &GetApplicationSettingsInput{}
2246	}
2247
2248	output = &GetApplicationSettingsOutput{}
2249	req = c.newRequest(op, input, output)
2250	return
2251}
2252
2253// GetApplicationSettings API operation for Amazon Pinpoint.
2254//
2255// Used to request the settings for an app.
2256//
2257// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
2258// with awserr.Error's Code and Message methods to get detailed information about
2259// the error.
2260//
2261// See the AWS API reference guide for Amazon Pinpoint's
2262// API operation GetApplicationSettings for usage and error information.
2263//
2264// Returned Error Codes:
2265//   * ErrCodeBadRequestException "BadRequestException"
2266//
2267//   * ErrCodeInternalServerErrorException "InternalServerErrorException"
2268//
2269//   * ErrCodeForbiddenException "ForbiddenException"
2270//
2271//   * ErrCodeNotFoundException "NotFoundException"
2272//
2273//   * ErrCodeMethodNotAllowedException "MethodNotAllowedException"
2274//
2275//   * ErrCodeTooManyRequestsException "TooManyRequestsException"
2276//
2277// See also, https://docs.aws.amazon.com/goto/WebAPI/pinpoint-2016-12-01/GetApplicationSettings
2278func (c *Pinpoint) GetApplicationSettings(input *GetApplicationSettingsInput) (*GetApplicationSettingsOutput, error) {
2279	req, out := c.GetApplicationSettingsRequest(input)
2280	return out, req.Send()
2281}
2282
2283// GetApplicationSettingsWithContext is the same as GetApplicationSettings with the addition of
2284// the ability to pass a context and additional request options.
2285//
2286// See GetApplicationSettings for details on how to use this API operation.
2287//
2288// The context must be non-nil and will be used for request cancellation. If
2289// the context is nil a panic will occur. In the future the SDK may create
2290// sub-contexts for http.Requests. See https://golang.org/pkg/context/
2291// for more information on using Contexts.
2292func (c *Pinpoint) GetApplicationSettingsWithContext(ctx aws.Context, input *GetApplicationSettingsInput, opts ...request.Option) (*GetApplicationSettingsOutput, error) {
2293	req, out := c.GetApplicationSettingsRequest(input)
2294	req.SetContext(ctx)
2295	req.ApplyOptions(opts...)
2296	return out, req.Send()
2297}
2298
2299const opGetApps = "GetApps"
2300
2301// GetAppsRequest generates a "aws/request.Request" representing the
2302// client's request for the GetApps operation. The "output" return
2303// value will be populated with the request's response once the request completes
2304// successfuly.
2305//
2306// Use "Send" method on the returned Request to send the API call to the service.
2307// the "output" return value is not valid until after Send returns without error.
2308//
2309// See GetApps for more information on using the GetApps
2310// API call, and error handling.
2311//
2312// This method is useful when you want to inject custom logic or configuration
2313// into the SDK's request lifecycle. Such as custom headers, or retry logic.
2314//
2315//
2316//    // Example sending a request using the GetAppsRequest method.
2317//    req, resp := client.GetAppsRequest(params)
2318//
2319//    err := req.Send()
2320//    if err == nil { // resp is now filled
2321//        fmt.Println(resp)
2322//    }
2323//
2324// See also, https://docs.aws.amazon.com/goto/WebAPI/pinpoint-2016-12-01/GetApps
2325func (c *Pinpoint) GetAppsRequest(input *GetAppsInput) (req *request.Request, output *GetAppsOutput) {
2326	op := &request.Operation{
2327		Name:       opGetApps,
2328		HTTPMethod: "GET",
2329		HTTPPath:   "/v1/apps",
2330	}
2331
2332	if input == nil {
2333		input = &GetAppsInput{}
2334	}
2335
2336	output = &GetAppsOutput{}
2337	req = c.newRequest(op, input, output)
2338	return
2339}
2340
2341// GetApps API operation for Amazon Pinpoint.
2342//
2343// Returns information about your apps.
2344//
2345// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
2346// with awserr.Error's Code and Message methods to get detailed information about
2347// the error.
2348//
2349// See the AWS API reference guide for Amazon Pinpoint's
2350// API operation GetApps for usage and error information.
2351//
2352// Returned Error Codes:
2353//   * ErrCodeBadRequestException "BadRequestException"
2354//
2355//   * ErrCodeInternalServerErrorException "InternalServerErrorException"
2356//
2357//   * ErrCodeForbiddenException "ForbiddenException"
2358//
2359//   * ErrCodeNotFoundException "NotFoundException"
2360//
2361//   * ErrCodeMethodNotAllowedException "MethodNotAllowedException"
2362//
2363//   * ErrCodeTooManyRequestsException "TooManyRequestsException"
2364//
2365// See also, https://docs.aws.amazon.com/goto/WebAPI/pinpoint-2016-12-01/GetApps
2366func (c *Pinpoint) GetApps(input *GetAppsInput) (*GetAppsOutput, error) {
2367	req, out := c.GetAppsRequest(input)
2368	return out, req.Send()
2369}
2370
2371// GetAppsWithContext is the same as GetApps with the addition of
2372// the ability to pass a context and additional request options.
2373//
2374// See GetApps for details on how to use this API operation.
2375//
2376// The context must be non-nil and will be used for request cancellation. If
2377// the context is nil a panic will occur. In the future the SDK may create
2378// sub-contexts for http.Requests. See https://golang.org/pkg/context/
2379// for more information on using Contexts.
2380func (c *Pinpoint) GetAppsWithContext(ctx aws.Context, input *GetAppsInput, opts ...request.Option) (*GetAppsOutput, error) {
2381	req, out := c.GetAppsRequest(input)
2382	req.SetContext(ctx)
2383	req.ApplyOptions(opts...)
2384	return out, req.Send()
2385}
2386
2387const opGetBaiduChannel = "GetBaiduChannel"
2388
2389// GetBaiduChannelRequest generates a "aws/request.Request" representing the
2390// client's request for the GetBaiduChannel operation. The "output" return
2391// value will be populated with the request's response once the request completes
2392// successfuly.
2393//
2394// Use "Send" method on the returned Request to send the API call to the service.
2395// the "output" return value is not valid until after Send returns without error.
2396//
2397// See GetBaiduChannel for more information on using the GetBaiduChannel
2398// API call, and error handling.
2399//
2400// This method is useful when you want to inject custom logic or configuration
2401// into the SDK's request lifecycle. Such as custom headers, or retry logic.
2402//
2403//
2404//    // Example sending a request using the GetBaiduChannelRequest method.
2405//    req, resp := client.GetBaiduChannelRequest(params)
2406//
2407//    err := req.Send()
2408//    if err == nil { // resp is now filled
2409//        fmt.Println(resp)
2410//    }
2411//
2412// See also, https://docs.aws.amazon.com/goto/WebAPI/pinpoint-2016-12-01/GetBaiduChannel
2413func (c *Pinpoint) GetBaiduChannelRequest(input *GetBaiduChannelInput) (req *request.Request, output *GetBaiduChannelOutput) {
2414	op := &request.Operation{
2415		Name:       opGetBaiduChannel,
2416		HTTPMethod: "GET",
2417		HTTPPath:   "/v1/apps/{application-id}/channels/baidu",
2418	}
2419
2420	if input == nil {
2421		input = &GetBaiduChannelInput{}
2422	}
2423
2424	output = &GetBaiduChannelOutput{}
2425	req = c.newRequest(op, input, output)
2426	return
2427}
2428
2429// GetBaiduChannel API operation for Amazon Pinpoint.
2430//
2431// Get a BAIDU GCM channel
2432//
2433// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
2434// with awserr.Error's Code and Message methods to get detailed information about
2435// the error.
2436//
2437// See the AWS API reference guide for Amazon Pinpoint's
2438// API operation GetBaiduChannel for usage and error information.
2439//
2440// Returned Error Codes:
2441//   * ErrCodeBadRequestException "BadRequestException"
2442//
2443//   * ErrCodeInternalServerErrorException "InternalServerErrorException"
2444//
2445//   * ErrCodeForbiddenException "ForbiddenException"
2446//
2447//   * ErrCodeNotFoundException "NotFoundException"
2448//
2449//   * ErrCodeMethodNotAllowedException "MethodNotAllowedException"
2450//
2451//   * ErrCodeTooManyRequestsException "TooManyRequestsException"
2452//
2453// See also, https://docs.aws.amazon.com/goto/WebAPI/pinpoint-2016-12-01/GetBaiduChannel
2454func (c *Pinpoint) GetBaiduChannel(input *GetBaiduChannelInput) (*GetBaiduChannelOutput, error) {
2455	req, out := c.GetBaiduChannelRequest(input)
2456	return out, req.Send()
2457}
2458
2459// GetBaiduChannelWithContext is the same as GetBaiduChannel with the addition of
2460// the ability to pass a context and additional request options.
2461//
2462// See GetBaiduChannel for details on how to use this API operation.
2463//
2464// The context must be non-nil and will be used for request cancellation. If
2465// the context is nil a panic will occur. In the future the SDK may create
2466// sub-contexts for http.Requests. See https://golang.org/pkg/context/
2467// for more information on using Contexts.
2468func (c *Pinpoint) GetBaiduChannelWithContext(ctx aws.Context, input *GetBaiduChannelInput, opts ...request.Option) (*GetBaiduChannelOutput, error) {
2469	req, out := c.GetBaiduChannelRequest(input)
2470	req.SetContext(ctx)
2471	req.ApplyOptions(opts...)
2472	return out, req.Send()
2473}
2474
2475const opGetCampaign = "GetCampaign"
2476
2477// GetCampaignRequest generates a "aws/request.Request" representing the
2478// client's request for the GetCampaign operation. The "output" return
2479// value will be populated with the request's response once the request completes
2480// successfuly.
2481//
2482// Use "Send" method on the returned Request to send the API call to the service.
2483// the "output" return value is not valid until after Send returns without error.
2484//
2485// See GetCampaign for more information on using the GetCampaign
2486// API call, and error handling.
2487//
2488// This method is useful when you want to inject custom logic or configuration
2489// into the SDK's request lifecycle. Such as custom headers, or retry logic.
2490//
2491//
2492//    // Example sending a request using the GetCampaignRequest method.
2493//    req, resp := client.GetCampaignRequest(params)
2494//
2495//    err := req.Send()
2496//    if err == nil { // resp is now filled
2497//        fmt.Println(resp)
2498//    }
2499//
2500// See also, https://docs.aws.amazon.com/goto/WebAPI/pinpoint-2016-12-01/GetCampaign
2501func (c *Pinpoint) GetCampaignRequest(input *GetCampaignInput) (req *request.Request, output *GetCampaignOutput) {
2502	op := &request.Operation{
2503		Name:       opGetCampaign,
2504		HTTPMethod: "GET",
2505		HTTPPath:   "/v1/apps/{application-id}/campaigns/{campaign-id}",
2506	}
2507
2508	if input == nil {
2509		input = &GetCampaignInput{}
2510	}
2511
2512	output = &GetCampaignOutput{}
2513	req = c.newRequest(op, input, output)
2514	return
2515}
2516
2517// GetCampaign API operation for Amazon Pinpoint.
2518//
2519// Returns information about a campaign.
2520//
2521// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
2522// with awserr.Error's Code and Message methods to get detailed information about
2523// the error.
2524//
2525// See the AWS API reference guide for Amazon Pinpoint's
2526// API operation GetCampaign for usage and error information.
2527//
2528// Returned Error Codes:
2529//   * ErrCodeBadRequestException "BadRequestException"
2530//
2531//   * ErrCodeInternalServerErrorException "InternalServerErrorException"
2532//
2533//   * ErrCodeForbiddenException "ForbiddenException"
2534//
2535//   * ErrCodeNotFoundException "NotFoundException"
2536//
2537//   * ErrCodeMethodNotAllowedException "MethodNotAllowedException"
2538//
2539//   * ErrCodeTooManyRequestsException "TooManyRequestsException"
2540//
2541// See also, https://docs.aws.amazon.com/goto/WebAPI/pinpoint-2016-12-01/GetCampaign
2542func (c *Pinpoint) GetCampaign(input *GetCampaignInput) (*GetCampaignOutput, error) {
2543	req, out := c.GetCampaignRequest(input)
2544	return out, req.Send()
2545}
2546
2547// GetCampaignWithContext is the same as GetCampaign with the addition of
2548// the ability to pass a context and additional request options.
2549//
2550// See GetCampaign for details on how to use this API operation.
2551//
2552// The context must be non-nil and will be used for request cancellation. If
2553// the context is nil a panic will occur. In the future the SDK may create
2554// sub-contexts for http.Requests. See https://golang.org/pkg/context/
2555// for more information on using Contexts.
2556func (c *Pinpoint) GetCampaignWithContext(ctx aws.Context, input *GetCampaignInput, opts ...request.Option) (*GetCampaignOutput, error) {
2557	req, out := c.GetCampaignRequest(input)
2558	req.SetContext(ctx)
2559	req.ApplyOptions(opts...)
2560	return out, req.Send()
2561}
2562
2563const opGetCampaignActivities = "GetCampaignActivities"
2564
2565// GetCampaignActivitiesRequest generates a "aws/request.Request" representing the
2566// client's request for the GetCampaignActivities operation. The "output" return
2567// value will be populated with the request's response once the request completes
2568// successfuly.
2569//
2570// Use "Send" method on the returned Request to send the API call to the service.
2571// the "output" return value is not valid until after Send returns without error.
2572//
2573// See GetCampaignActivities for more information on using the GetCampaignActivities
2574// API call, and error handling.
2575//
2576// This method is useful when you want to inject custom logic or configuration
2577// into the SDK's request lifecycle. Such as custom headers, or retry logic.
2578//
2579//
2580//    // Example sending a request using the GetCampaignActivitiesRequest method.
2581//    req, resp := client.GetCampaignActivitiesRequest(params)
2582//
2583//    err := req.Send()
2584//    if err == nil { // resp is now filled
2585//        fmt.Println(resp)
2586//    }
2587//
2588// See also, https://docs.aws.amazon.com/goto/WebAPI/pinpoint-2016-12-01/GetCampaignActivities
2589func (c *Pinpoint) GetCampaignActivitiesRequest(input *GetCampaignActivitiesInput) (req *request.Request, output *GetCampaignActivitiesOutput) {
2590	op := &request.Operation{
2591		Name:       opGetCampaignActivities,
2592		HTTPMethod: "GET",
2593		HTTPPath:   "/v1/apps/{application-id}/campaigns/{campaign-id}/activities",
2594	}
2595
2596	if input == nil {
2597		input = &GetCampaignActivitiesInput{}
2598	}
2599
2600	output = &GetCampaignActivitiesOutput{}
2601	req = c.newRequest(op, input, output)
2602	return
2603}
2604
2605// GetCampaignActivities API operation for Amazon Pinpoint.
2606//
2607// Returns information about the activity performed by a campaign.
2608//
2609// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
2610// with awserr.Error's Code and Message methods to get detailed information about
2611// the error.
2612//
2613// See the AWS API reference guide for Amazon Pinpoint's
2614// API operation GetCampaignActivities for usage and error information.
2615//
2616// Returned Error Codes:
2617//   * ErrCodeBadRequestException "BadRequestException"
2618//
2619//   * ErrCodeInternalServerErrorException "InternalServerErrorException"
2620//
2621//   * ErrCodeForbiddenException "ForbiddenException"
2622//
2623//   * ErrCodeNotFoundException "NotFoundException"
2624//
2625//   * ErrCodeMethodNotAllowedException "MethodNotAllowedException"
2626//
2627//   * ErrCodeTooManyRequestsException "TooManyRequestsException"
2628//
2629// See also, https://docs.aws.amazon.com/goto/WebAPI/pinpoint-2016-12-01/GetCampaignActivities
2630func (c *Pinpoint) GetCampaignActivities(input *GetCampaignActivitiesInput) (*GetCampaignActivitiesOutput, error) {
2631	req, out := c.GetCampaignActivitiesRequest(input)
2632	return out, req.Send()
2633}
2634
2635// GetCampaignActivitiesWithContext is the same as GetCampaignActivities with the addition of
2636// the ability to pass a context and additional request options.
2637//
2638// See GetCampaignActivities for details on how to use this API operation.
2639//
2640// The context must be non-nil and will be used for request cancellation. If
2641// the context is nil a panic will occur. In the future the SDK may create
2642// sub-contexts for http.Requests. See https://golang.org/pkg/context/
2643// for more information on using Contexts.
2644func (c *Pinpoint) GetCampaignActivitiesWithContext(ctx aws.Context, input *GetCampaignActivitiesInput, opts ...request.Option) (*GetCampaignActivitiesOutput, error) {
2645	req, out := c.GetCampaignActivitiesRequest(input)
2646	req.SetContext(ctx)
2647	req.ApplyOptions(opts...)
2648	return out, req.Send()
2649}
2650
2651const opGetCampaignVersion = "GetCampaignVersion"
2652
2653// GetCampaignVersionRequest generates a "aws/request.Request" representing the
2654// client's request for the GetCampaignVersion operation. The "output" return
2655// value will be populated with the request's response once the request completes
2656// successfuly.
2657//
2658// Use "Send" method on the returned Request to send the API call to the service.
2659// the "output" return value is not valid until after Send returns without error.
2660//
2661// See GetCampaignVersion for more information on using the GetCampaignVersion
2662// API call, and error handling.
2663//
2664// This method is useful when you want to inject custom logic or configuration
2665// into the SDK's request lifecycle. Such as custom headers, or retry logic.
2666//
2667//
2668//    // Example sending a request using the GetCampaignVersionRequest method.
2669//    req, resp := client.GetCampaignVersionRequest(params)
2670//
2671//    err := req.Send()
2672//    if err == nil { // resp is now filled
2673//        fmt.Println(resp)
2674//    }
2675//
2676// See also, https://docs.aws.amazon.com/goto/WebAPI/pinpoint-2016-12-01/GetCampaignVersion
2677func (c *Pinpoint) GetCampaignVersionRequest(input *GetCampaignVersionInput) (req *request.Request, output *GetCampaignVersionOutput) {
2678	op := &request.Operation{
2679		Name:       opGetCampaignVersion,
2680		HTTPMethod: "GET",
2681		HTTPPath:   "/v1/apps/{application-id}/campaigns/{campaign-id}/versions/{version}",
2682	}
2683
2684	if input == nil {
2685		input = &GetCampaignVersionInput{}
2686	}
2687
2688	output = &GetCampaignVersionOutput{}
2689	req = c.newRequest(op, input, output)
2690	return
2691}
2692
2693// GetCampaignVersion API operation for Amazon Pinpoint.
2694//
2695// Returns information about a specific version of a campaign.
2696//
2697// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
2698// with awserr.Error's Code and Message methods to get detailed information about
2699// the error.
2700//
2701// See the AWS API reference guide for Amazon Pinpoint's
2702// API operation GetCampaignVersion for usage and error information.
2703//
2704// Returned Error Codes:
2705//   * ErrCodeBadRequestException "BadRequestException"
2706//
2707//   * ErrCodeInternalServerErrorException "InternalServerErrorException"
2708//
2709//   * ErrCodeForbiddenException "ForbiddenException"
2710//
2711//   * ErrCodeNotFoundException "NotFoundException"
2712//
2713//   * ErrCodeMethodNotAllowedException "MethodNotAllowedException"
2714//
2715//   * ErrCodeTooManyRequestsException "TooManyRequestsException"
2716//
2717// See also, https://docs.aws.amazon.com/goto/WebAPI/pinpoint-2016-12-01/GetCampaignVersion
2718func (c *Pinpoint) GetCampaignVersion(input *GetCampaignVersionInput) (*GetCampaignVersionOutput, error) {
2719	req, out := c.GetCampaignVersionRequest(input)
2720	return out, req.Send()
2721}
2722
2723// GetCampaignVersionWithContext is the same as GetCampaignVersion with the addition of
2724// the ability to pass a context and additional request options.
2725//
2726// See GetCampaignVersion for details on how to use this API operation.
2727//
2728// The context must be non-nil and will be used for request cancellation. If
2729// the context is nil a panic will occur. In the future the SDK may create
2730// sub-contexts for http.Requests. See https://golang.org/pkg/context/
2731// for more information on using Contexts.
2732func (c *Pinpoint) GetCampaignVersionWithContext(ctx aws.Context, input *GetCampaignVersionInput, opts ...request.Option) (*GetCampaignVersionOutput, error) {
2733	req, out := c.GetCampaignVersionRequest(input)
2734	req.SetContext(ctx)
2735	req.ApplyOptions(opts...)
2736	return out, req.Send()
2737}
2738
2739const opGetCampaignVersions = "GetCampaignVersions"
2740
2741// GetCampaignVersionsRequest generates a "aws/request.Request" representing the
2742// client's request for the GetCampaignVersions operation. The "output" return
2743// value will be populated with the request's response once the request completes
2744// successfuly.
2745//
2746// Use "Send" method on the returned Request to send the API call to the service.
2747// the "output" return value is not valid until after Send returns without error.
2748//
2749// See GetCampaignVersions for more information on using the GetCampaignVersions
2750// API call, and error handling.
2751//
2752// This method is useful when you want to inject custom logic or configuration
2753// into the SDK's request lifecycle. Such as custom headers, or retry logic.
2754//
2755//
2756//    // Example sending a request using the GetCampaignVersionsRequest method.
2757//    req, resp := client.GetCampaignVersionsRequest(params)
2758//
2759//    err := req.Send()
2760//    if err == nil { // resp is now filled
2761//        fmt.Println(resp)
2762//    }
2763//
2764// See also, https://docs.aws.amazon.com/goto/WebAPI/pinpoint-2016-12-01/GetCampaignVersions
2765func (c *Pinpoint) GetCampaignVersionsRequest(input *GetCampaignVersionsInput) (req *request.Request, output *GetCampaignVersionsOutput) {
2766	op := &request.Operation{
2767		Name:       opGetCampaignVersions,
2768		HTTPMethod: "GET",
2769		HTTPPath:   "/v1/apps/{application-id}/campaigns/{campaign-id}/versions",
2770	}
2771
2772	if input == nil {
2773		input = &GetCampaignVersionsInput{}
2774	}
2775
2776	output = &GetCampaignVersionsOutput{}
2777	req = c.newRequest(op, input, output)
2778	return
2779}
2780
2781// GetCampaignVersions API operation for Amazon Pinpoint.
2782//
2783// Returns information about your campaign versions.
2784//
2785// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
2786// with awserr.Error's Code and Message methods to get detailed information about
2787// the error.
2788//
2789// See the AWS API reference guide for Amazon Pinpoint's
2790// API operation GetCampaignVersions for usage and error information.
2791//
2792// Returned Error Codes:
2793//   * ErrCodeBadRequestException "BadRequestException"
2794//
2795//   * ErrCodeInternalServerErrorException "InternalServerErrorException"
2796//
2797//   * ErrCodeForbiddenException "ForbiddenException"
2798//
2799//   * ErrCodeNotFoundException "NotFoundException"
2800//
2801//   * ErrCodeMethodNotAllowedException "MethodNotAllowedException"
2802//
2803//   * ErrCodeTooManyRequestsException "TooManyRequestsException"
2804//
2805// See also, https://docs.aws.amazon.com/goto/WebAPI/pinpoint-2016-12-01/GetCampaignVersions
2806func (c *Pinpoint) GetCampaignVersions(input *GetCampaignVersionsInput) (*GetCampaignVersionsOutput, error) {
2807	req, out := c.GetCampaignVersionsRequest(input)
2808	return out, req.Send()
2809}
2810
2811// GetCampaignVersionsWithContext is the same as GetCampaignVersions with the addition of
2812// the ability to pass a context and additional request options.
2813//
2814// See GetCampaignVersions for details on how to use this API operation.
2815//
2816// The context must be non-nil and will be used for request cancellation. If
2817// the context is nil a panic will occur. In the future the SDK may create
2818// sub-contexts for http.Requests. See https://golang.org/pkg/context/
2819// for more information on using Contexts.
2820func (c *Pinpoint) GetCampaignVersionsWithContext(ctx aws.Context, input *GetCampaignVersionsInput, opts ...request.Option) (*GetCampaignVersionsOutput, error) {
2821	req, out := c.GetCampaignVersionsRequest(input)
2822	req.SetContext(ctx)
2823	req.ApplyOptions(opts...)
2824	return out, req.Send()
2825}
2826
2827const opGetCampaigns = "GetCampaigns"
2828
2829// GetCampaignsRequest generates a "aws/request.Request" representing the
2830// client's request for the GetCampaigns operation. The "output" return
2831// value will be populated with the request's response once the request completes
2832// successfuly.
2833//
2834// Use "Send" method on the returned Request to send the API call to the service.
2835// the "output" return value is not valid until after Send returns without error.
2836//
2837// See GetCampaigns for more information on using the GetCampaigns
2838// API call, and error handling.
2839//
2840// This method is useful when you want to inject custom logic or configuration
2841// into the SDK's request lifecycle. Such as custom headers, or retry logic.
2842//
2843//
2844//    // Example sending a request using the GetCampaignsRequest method.
2845//    req, resp := client.GetCampaignsRequest(params)
2846//
2847//    err := req.Send()
2848//    if err == nil { // resp is now filled
2849//        fmt.Println(resp)
2850//    }
2851//
2852// See also, https://docs.aws.amazon.com/goto/WebAPI/pinpoint-2016-12-01/GetCampaigns
2853func (c *Pinpoint) GetCampaignsRequest(input *GetCampaignsInput) (req *request.Request, output *GetCampaignsOutput) {
2854	op := &request.Operation{
2855		Name:       opGetCampaigns,
2856		HTTPMethod: "GET",
2857		HTTPPath:   "/v1/apps/{application-id}/campaigns",
2858	}
2859
2860	if input == nil {
2861		input = &GetCampaignsInput{}
2862	}
2863
2864	output = &GetCampaignsOutput{}
2865	req = c.newRequest(op, input, output)
2866	return
2867}
2868
2869// GetCampaigns API operation for Amazon Pinpoint.
2870//
2871// Returns information about your campaigns.
2872//
2873// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
2874// with awserr.Error's Code and Message methods to get detailed information about
2875// the error.
2876//
2877// See the AWS API reference guide for Amazon Pinpoint's
2878// API operation GetCampaigns for usage and error information.
2879//
2880// Returned Error Codes:
2881//   * ErrCodeBadRequestException "BadRequestException"
2882//
2883//   * ErrCodeInternalServerErrorException "InternalServerErrorException"
2884//
2885//   * ErrCodeForbiddenException "ForbiddenException"
2886//
2887//   * ErrCodeNotFoundException "NotFoundException"
2888//
2889//   * ErrCodeMethodNotAllowedException "MethodNotAllowedException"
2890//
2891//   * ErrCodeTooManyRequestsException "TooManyRequestsException"
2892//
2893// See also, https://docs.aws.amazon.com/goto/WebAPI/pinpoint-2016-12-01/GetCampaigns
2894func (c *Pinpoint) GetCampaigns(input *GetCampaignsInput) (*GetCampaignsOutput, error) {
2895	req, out := c.GetCampaignsRequest(input)
2896	return out, req.Send()
2897}
2898
2899// GetCampaignsWithContext is the same as GetCampaigns with the addition of
2900// the ability to pass a context and additional request options.
2901//
2902// See GetCampaigns for details on how to use this API operation.
2903//
2904// The context must be non-nil and will be used for request cancellation. If
2905// the context is nil a panic will occur. In the future the SDK may create
2906// sub-contexts for http.Requests. See https://golang.org/pkg/context/
2907// for more information on using Contexts.
2908func (c *Pinpoint) GetCampaignsWithContext(ctx aws.Context, input *GetCampaignsInput, opts ...request.Option) (*GetCampaignsOutput, error) {
2909	req, out := c.GetCampaignsRequest(input)
2910	req.SetContext(ctx)
2911	req.ApplyOptions(opts...)
2912	return out, req.Send()
2913}
2914
2915const opGetEmailChannel = "GetEmailChannel"
2916
2917// GetEmailChannelRequest generates a "aws/request.Request" representing the
2918// client's request for the GetEmailChannel operation. The "output" return
2919// value will be populated with the request's response once the request completes
2920// successfuly.
2921//
2922// Use "Send" method on the returned Request to send the API call to the service.
2923// the "output" return value is not valid until after Send returns without error.
2924//
2925// See GetEmailChannel for more information on using the GetEmailChannel
2926// API call, and error handling.
2927//
2928// This method is useful when you want to inject custom logic or configuration
2929// into the SDK's request lifecycle. Such as custom headers, or retry logic.
2930//
2931//
2932//    // Example sending a request using the GetEmailChannelRequest method.
2933//    req, resp := client.GetEmailChannelRequest(params)
2934//
2935//    err := req.Send()
2936//    if err == nil { // resp is now filled
2937//        fmt.Println(resp)
2938//    }
2939//
2940// See also, https://docs.aws.amazon.com/goto/WebAPI/pinpoint-2016-12-01/GetEmailChannel
2941func (c *Pinpoint) GetEmailChannelRequest(input *GetEmailChannelInput) (req *request.Request, output *GetEmailChannelOutput) {
2942	op := &request.Operation{
2943		Name:       opGetEmailChannel,
2944		HTTPMethod: "GET",
2945		HTTPPath:   "/v1/apps/{application-id}/channels/email",
2946	}
2947
2948	if input == nil {
2949		input = &GetEmailChannelInput{}
2950	}
2951
2952	output = &GetEmailChannelOutput{}
2953	req = c.newRequest(op, input, output)
2954	return
2955}
2956
2957// GetEmailChannel API operation for Amazon Pinpoint.
2958//
2959// Get an email channel
2960//
2961// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
2962// with awserr.Error's Code and Message methods to get detailed information about
2963// the error.
2964//
2965// See the AWS API reference guide for Amazon Pinpoint's
2966// API operation GetEmailChannel for usage and error information.
2967//
2968// Returned Error Codes:
2969//   * ErrCodeBadRequestException "BadRequestException"
2970//
2971//   * ErrCodeInternalServerErrorException "InternalServerErrorException"
2972//
2973//   * ErrCodeForbiddenException "ForbiddenException"
2974//
2975//   * ErrCodeNotFoundException "NotFoundException"
2976//
2977//   * ErrCodeMethodNotAllowedException "MethodNotAllowedException"
2978//
2979//   * ErrCodeTooManyRequestsException "TooManyRequestsException"
2980//
2981// See also, https://docs.aws.amazon.com/goto/WebAPI/pinpoint-2016-12-01/GetEmailChannel
2982func (c *Pinpoint) GetEmailChannel(input *GetEmailChannelInput) (*GetEmailChannelOutput, error) {
2983	req, out := c.GetEmailChannelRequest(input)
2984	return out, req.Send()
2985}
2986
2987// GetEmailChannelWithContext is the same as GetEmailChannel with the addition of
2988// the ability to pass a context and additional request options.
2989//
2990// See GetEmailChannel for details on how to use this API operation.
2991//
2992// The context must be non-nil and will be used for request cancellation. If
2993// the context is nil a panic will occur. In the future the SDK may create
2994// sub-contexts for http.Requests. See https://golang.org/pkg/context/
2995// for more information on using Contexts.
2996func (c *Pinpoint) GetEmailChannelWithContext(ctx aws.Context, input *GetEmailChannelInput, opts ...request.Option) (*GetEmailChannelOutput, error) {
2997	req, out := c.GetEmailChannelRequest(input)
2998	req.SetContext(ctx)
2999	req.ApplyOptions(opts...)
3000	return out, req.Send()
3001}
3002
3003const opGetEndpoint = "GetEndpoint"
3004
3005// GetEndpointRequest generates a "aws/request.Request" representing the
3006// client's request for the GetEndpoint operation. The "output" return
3007// value will be populated with the request's response once the request completes
3008// successfuly.
3009//
3010// Use "Send" method on the returned Request to send the API call to the service.
3011// the "output" return value is not valid until after Send returns without error.
3012//
3013// See GetEndpoint for more information on using the GetEndpoint
3014// API call, and error handling.
3015//
3016// This method is useful when you want to inject custom logic or configuration
3017// into the SDK's request lifecycle. Such as custom headers, or retry logic.
3018//
3019//
3020//    // Example sending a request using the GetEndpointRequest method.
3021//    req, resp := client.GetEndpointRequest(params)
3022//
3023//    err := req.Send()
3024//    if err == nil { // resp is now filled
3025//        fmt.Println(resp)
3026//    }
3027//
3028// See also, https://docs.aws.amazon.com/goto/WebAPI/pinpoint-2016-12-01/GetEndpoint
3029func (c *Pinpoint) GetEndpointRequest(input *GetEndpointInput) (req *request.Request, output *GetEndpointOutput) {
3030	op := &request.Operation{
3031		Name:       opGetEndpoint,
3032		HTTPMethod: "GET",
3033		HTTPPath:   "/v1/apps/{application-id}/endpoints/{endpoint-id}",
3034	}
3035
3036	if input == nil {
3037		input = &GetEndpointInput{}
3038	}
3039
3040	output = &GetEndpointOutput{}
3041	req = c.newRequest(op, input, output)
3042	return
3043}
3044
3045// GetEndpoint API operation for Amazon Pinpoint.
3046//
3047// Returns information about an endpoint.
3048//
3049// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
3050// with awserr.Error's Code and Message methods to get detailed information about
3051// the error.
3052//
3053// See the AWS API reference guide for Amazon Pinpoint's
3054// API operation GetEndpoint for usage and error information.
3055//
3056// Returned Error Codes:
3057//   * ErrCodeBadRequestException "BadRequestException"
3058//
3059//   * ErrCodeInternalServerErrorException "InternalServerErrorException"
3060//
3061//   * ErrCodeForbiddenException "ForbiddenException"
3062//
3063//   * ErrCodeNotFoundException "NotFoundException"
3064//
3065//   * ErrCodeMethodNotAllowedException "MethodNotAllowedException"
3066//
3067//   * ErrCodeTooManyRequestsException "TooManyRequestsException"
3068//
3069// See also, https://docs.aws.amazon.com/goto/WebAPI/pinpoint-2016-12-01/GetEndpoint
3070func (c *Pinpoint) GetEndpoint(input *GetEndpointInput) (*GetEndpointOutput, error) {
3071	req, out := c.GetEndpointRequest(input)
3072	return out, req.Send()
3073}
3074
3075// GetEndpointWithContext is the same as GetEndpoint with the addition of
3076// the ability to pass a context and additional request options.
3077//
3078// See GetEndpoint for details on how to use this API operation.
3079//
3080// The context must be non-nil and will be used for request cancellation. If
3081// the context is nil a panic will occur. In the future the SDK may create
3082// sub-contexts for http.Requests. See https://golang.org/pkg/context/
3083// for more information on using Contexts.
3084func (c *Pinpoint) GetEndpointWithContext(ctx aws.Context, input *GetEndpointInput, opts ...request.Option) (*GetEndpointOutput, error) {
3085	req, out := c.GetEndpointRequest(input)
3086	req.SetContext(ctx)
3087	req.ApplyOptions(opts...)
3088	return out, req.Send()
3089}
3090
3091const opGetEventStream = "GetEventStream"
3092
3093// GetEventStreamRequest generates a "aws/request.Request" representing the
3094// client's request for the GetEventStream operation. The "output" return
3095// value will be populated with the request's response once the request completes
3096// successfuly.
3097//
3098// Use "Send" method on the returned Request to send the API call to the service.
3099// the "output" return value is not valid until after Send returns without error.
3100//
3101// See GetEventStream for more information on using the GetEventStream
3102// API call, and error handling.
3103//
3104// This method is useful when you want to inject custom logic or configuration
3105// into the SDK's request lifecycle. Such as custom headers, or retry logic.
3106//
3107//
3108//    // Example sending a request using the GetEventStreamRequest method.
3109//    req, resp := client.GetEventStreamRequest(params)
3110//
3111//    err := req.Send()
3112//    if err == nil { // resp is now filled
3113//        fmt.Println(resp)
3114//    }
3115//
3116// See also, https://docs.aws.amazon.com/goto/WebAPI/pinpoint-2016-12-01/GetEventStream
3117func (c *Pinpoint) GetEventStreamRequest(input *GetEventStreamInput) (req *request.Request, output *GetEventStreamOutput) {
3118	op := &request.Operation{
3119		Name:       opGetEventStream,
3120		HTTPMethod: "GET",
3121		HTTPPath:   "/v1/apps/{application-id}/eventstream",
3122	}
3123
3124	if input == nil {
3125		input = &GetEventStreamInput{}
3126	}
3127
3128	output = &GetEventStreamOutput{}
3129	req = c.newRequest(op, input, output)
3130	return
3131}
3132
3133// GetEventStream API operation for Amazon Pinpoint.
3134//
3135// Returns the event stream for an app.
3136//
3137// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
3138// with awserr.Error's Code and Message methods to get detailed information about
3139// the error.
3140//
3141// See the AWS API reference guide for Amazon Pinpoint's
3142// API operation GetEventStream for usage and error information.
3143//
3144// Returned Error Codes:
3145//   * ErrCodeBadRequestException "BadRequestException"
3146//
3147//   * ErrCodeInternalServerErrorException "InternalServerErrorException"
3148//
3149//   * ErrCodeForbiddenException "ForbiddenException"
3150//
3151//   * ErrCodeNotFoundException "NotFoundException"
3152//
3153//   * ErrCodeMethodNotAllowedException "MethodNotAllowedException"
3154//
3155//   * ErrCodeTooManyRequestsException "TooManyRequestsException"
3156//
3157// See also, https://docs.aws.amazon.com/goto/WebAPI/pinpoint-2016-12-01/GetEventStream
3158func (c *Pinpoint) GetEventStream(input *GetEventStreamInput) (*GetEventStreamOutput, error) {
3159	req, out := c.GetEventStreamRequest(input)
3160	return out, req.Send()
3161}
3162
3163// GetEventStreamWithContext is the same as GetEventStream with the addition of
3164// the ability to pass a context and additional request options.
3165//
3166// See GetEventStream for details on how to use this API operation.
3167//
3168// The context must be non-nil and will be used for request cancellation. If
3169// the context is nil a panic will occur. In the future the SDK may create
3170// sub-contexts for http.Requests. See https://golang.org/pkg/context/
3171// for more information on using Contexts.
3172func (c *Pinpoint) GetEventStreamWithContext(ctx aws.Context, input *GetEventStreamInput, opts ...request.Option) (*GetEventStreamOutput, error) {
3173	req, out := c.GetEventStreamRequest(input)
3174	req.SetContext(ctx)
3175	req.ApplyOptions(opts...)
3176	return out, req.Send()
3177}
3178
3179const opGetExportJob = "GetExportJob"
3180
3181// GetExportJobRequest generates a "aws/request.Request" representing the
3182// client's request for the GetExportJob operation. The "output" return
3183// value will be populated with the request's response once the request completes
3184// successfuly.
3185//
3186// Use "Send" method on the returned Request to send the API call to the service.
3187// the "output" return value is not valid until after Send returns without error.
3188//
3189// See GetExportJob for more information on using the GetExportJob
3190// API call, and error handling.
3191//
3192// This method is useful when you want to inject custom logic or configuration
3193// into the SDK's request lifecycle. Such as custom headers, or retry logic.
3194//
3195//
3196//    // Example sending a request using the GetExportJobRequest method.
3197//    req, resp := client.GetExportJobRequest(params)
3198//
3199//    err := req.Send()
3200//    if err == nil { // resp is now filled
3201//        fmt.Println(resp)
3202//    }
3203//
3204// See also, https://docs.aws.amazon.com/goto/WebAPI/pinpoint-2016-12-01/GetExportJob
3205func (c *Pinpoint) GetExportJobRequest(input *GetExportJobInput) (req *request.Request, output *GetExportJobOutput) {
3206	op := &request.Operation{
3207		Name:       opGetExportJob,
3208		HTTPMethod: "GET",
3209		HTTPPath:   "/v1/apps/{application-id}/jobs/export/{job-id}",
3210	}
3211
3212	if input == nil {
3213		input = &GetExportJobInput{}
3214	}
3215
3216	output = &GetExportJobOutput{}
3217	req = c.newRequest(op, input, output)
3218	return
3219}
3220
3221// GetExportJob API operation for Amazon Pinpoint.
3222//
3223// Returns information about an export job.
3224//
3225// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
3226// with awserr.Error's Code and Message methods to get detailed information about
3227// the error.
3228//
3229// See the AWS API reference guide for Amazon Pinpoint's
3230// API operation GetExportJob for usage and error information.
3231//
3232// Returned Error Codes:
3233//   * ErrCodeBadRequestException "BadRequestException"
3234//
3235//   * ErrCodeInternalServerErrorException "InternalServerErrorException"
3236//
3237//   * ErrCodeForbiddenException "ForbiddenException"
3238//
3239//   * ErrCodeNotFoundException "NotFoundException"
3240//
3241//   * ErrCodeMethodNotAllowedException "MethodNotAllowedException"
3242//
3243//   * ErrCodeTooManyRequestsException "TooManyRequestsException"
3244//
3245// See also, https://docs.aws.amazon.com/goto/WebAPI/pinpoint-2016-12-01/GetExportJob
3246func (c *Pinpoint) GetExportJob(input *GetExportJobInput) (*GetExportJobOutput, error) {
3247	req, out := c.GetExportJobRequest(input)
3248	return out, req.Send()
3249}
3250
3251// GetExportJobWithContext is the same as GetExportJob with the addition of
3252// the ability to pass a context and additional request options.
3253//
3254// See GetExportJob for details on how to use this API operation.
3255//
3256// The context must be non-nil and will be used for request cancellation. If
3257// the context is nil a panic will occur. In the future the SDK may create
3258// sub-contexts for http.Requests. See https://golang.org/pkg/context/
3259// for more information on using Contexts.
3260func (c *Pinpoint) GetExportJobWithContext(ctx aws.Context, input *GetExportJobInput, opts ...request.Option) (*GetExportJobOutput, error) {
3261	req, out := c.GetExportJobRequest(input)
3262	req.SetContext(ctx)
3263	req.ApplyOptions(opts...)
3264	return out, req.Send()
3265}
3266
3267const opGetExportJobs = "GetExportJobs"
3268
3269// GetExportJobsRequest generates a "aws/request.Request" representing the
3270// client's request for the GetExportJobs operation. The "output" return
3271// value will be populated with the request's response once the request completes
3272// successfuly.
3273//
3274// Use "Send" method on the returned Request to send the API call to the service.
3275// the "output" return value is not valid until after Send returns without error.
3276//
3277// See GetExportJobs for more information on using the GetExportJobs
3278// API call, and error handling.
3279//
3280// This method is useful when you want to inject custom logic or configuration
3281// into the SDK's request lifecycle. Such as custom headers, or retry logic.
3282//
3283//
3284//    // Example sending a request using the GetExportJobsRequest method.
3285//    req, resp := client.GetExportJobsRequest(params)
3286//
3287//    err := req.Send()
3288//    if err == nil { // resp is now filled
3289//        fmt.Println(resp)
3290//    }
3291//
3292// See also, https://docs.aws.amazon.com/goto/WebAPI/pinpoint-2016-12-01/GetExportJobs
3293func (c *Pinpoint) GetExportJobsRequest(input *GetExportJobsInput) (req *request.Request, output *GetExportJobsOutput) {
3294	op := &request.Operation{
3295		Name:       opGetExportJobs,
3296		HTTPMethod: "GET",
3297		HTTPPath:   "/v1/apps/{application-id}/jobs/export",
3298	}
3299
3300	if input == nil {
3301		input = &GetExportJobsInput{}
3302	}
3303
3304	output = &GetExportJobsOutput{}
3305	req = c.newRequest(op, input, output)
3306	return
3307}
3308
3309// GetExportJobs API operation for Amazon Pinpoint.
3310//
3311// Returns information about your export jobs.
3312//
3313// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
3314// with awserr.Error's Code and Message methods to get detailed information about
3315// the error.
3316//
3317// See the AWS API reference guide for Amazon Pinpoint's
3318// API operation GetExportJobs for usage and error information.
3319//
3320// Returned Error Codes:
3321//   * ErrCodeBadRequestException "BadRequestException"
3322//
3323//   * ErrCodeInternalServerErrorException "InternalServerErrorException"
3324//
3325//   * ErrCodeForbiddenException "ForbiddenException"
3326//
3327//   * ErrCodeNotFoundException "NotFoundException"
3328//
3329//   * ErrCodeMethodNotAllowedException "MethodNotAllowedException"
3330//
3331//   * ErrCodeTooManyRequestsException "TooManyRequestsException"
3332//
3333// See also, https://docs.aws.amazon.com/goto/WebAPI/pinpoint-2016-12-01/GetExportJobs
3334func (c *Pinpoint) GetExportJobs(input *GetExportJobsInput) (*GetExportJobsOutput, error) {
3335	req, out := c.GetExportJobsRequest(input)
3336	return out, req.Send()
3337}
3338
3339// GetExportJobsWithContext is the same as GetExportJobs with the addition of
3340// the ability to pass a context and additional request options.
3341//
3342// See GetExportJobs for details on how to use this API operation.
3343//
3344// The context must be non-nil and will be used for request cancellation. If
3345// the context is nil a panic will occur. In the future the SDK may create
3346// sub-contexts for http.Requests. See https://golang.org/pkg/context/
3347// for more information on using Contexts.
3348func (c *Pinpoint) GetExportJobsWithContext(ctx aws.Context, input *GetExportJobsInput, opts ...request.Option) (*GetExportJobsOutput, error) {
3349	req, out := c.GetExportJobsRequest(input)
3350	req.SetContext(ctx)
3351	req.ApplyOptions(opts...)
3352	return out, req.Send()
3353}
3354
3355const opGetGcmChannel = "GetGcmChannel"
3356
3357// GetGcmChannelRequest generates a "aws/request.Request" representing the
3358// client's request for the GetGcmChannel operation. The "output" return
3359// value will be populated with the request's response once the request completes
3360// successfuly.
3361//
3362// Use "Send" method on the returned Request to send the API call to the service.
3363// the "output" return value is not valid until after Send returns without error.
3364//
3365// See GetGcmChannel for more information on using the GetGcmChannel
3366// API call, and error handling.
3367//
3368// This method is useful when you want to inject custom logic or configuration
3369// into the SDK's request lifecycle. Such as custom headers, or retry logic.
3370//
3371//
3372//    // Example sending a request using the GetGcmChannelRequest method.
3373//    req, resp := client.GetGcmChannelRequest(params)
3374//
3375//    err := req.Send()
3376//    if err == nil { // resp is now filled
3377//        fmt.Println(resp)
3378//    }
3379//
3380// See also, https://docs.aws.amazon.com/goto/WebAPI/pinpoint-2016-12-01/GetGcmChannel
3381func (c *Pinpoint) GetGcmChannelRequest(input *GetGcmChannelInput) (req *request.Request, output *GetGcmChannelOutput) {
3382	op := &request.Operation{
3383		Name:       opGetGcmChannel,
3384		HTTPMethod: "GET",
3385		HTTPPath:   "/v1/apps/{application-id}/channels/gcm",
3386	}
3387
3388	if input == nil {
3389		input = &GetGcmChannelInput{}
3390	}
3391
3392	output = &GetGcmChannelOutput{}
3393	req = c.newRequest(op, input, output)
3394	return
3395}
3396
3397// GetGcmChannel API operation for Amazon Pinpoint.
3398//
3399// Returns information about the GCM channel for an app.
3400//
3401// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
3402// with awserr.Error's Code and Message methods to get detailed information about
3403// the error.
3404//
3405// See the AWS API reference guide for Amazon Pinpoint's
3406// API operation GetGcmChannel for usage and error information.
3407//
3408// Returned Error Codes:
3409//   * ErrCodeBadRequestException "BadRequestException"
3410//
3411//   * ErrCodeInternalServerErrorException "InternalServerErrorException"
3412//
3413//   * ErrCodeForbiddenException "ForbiddenException"
3414//
3415//   * ErrCodeNotFoundException "NotFoundException"
3416//
3417//   * ErrCodeMethodNotAllowedException "MethodNotAllowedException"
3418//
3419//   * ErrCodeTooManyRequestsException "TooManyRequestsException"
3420//
3421// See also, https://docs.aws.amazon.com/goto/WebAPI/pinpoint-2016-12-01/GetGcmChannel
3422func (c *Pinpoint) GetGcmChannel(input *GetGcmChannelInput) (*GetGcmChannelOutput, error) {
3423	req, out := c.GetGcmChannelRequest(input)
3424	return out, req.Send()
3425}
3426
3427// GetGcmChannelWithContext is the same as GetGcmChannel with the addition of
3428// the ability to pass a context and additional request options.
3429//
3430// See GetGcmChannel for details on how to use this API operation.
3431//
3432// The context must be non-nil and will be used for request cancellation. If
3433// the context is nil a panic will occur. In the future the SDK may create
3434// sub-contexts for http.Requests. See https://golang.org/pkg/context/
3435// for more information on using Contexts.
3436func (c *Pinpoint) GetGcmChannelWithContext(ctx aws.Context, input *GetGcmChannelInput, opts ...request.Option) (*GetGcmChannelOutput, error) {
3437	req, out := c.GetGcmChannelRequest(input)
3438	req.SetContext(ctx)
3439	req.ApplyOptions(opts...)
3440	return out, req.Send()
3441}
3442
3443const opGetImportJob = "GetImportJob"
3444
3445// GetImportJobRequest generates a "aws/request.Request" representing the
3446// client's request for the GetImportJob operation. The "output" return
3447// value will be populated with the request's response once the request completes
3448// successfuly.
3449//
3450// Use "Send" method on the returned Request to send the API call to the service.
3451// the "output" return value is not valid until after Send returns without error.
3452//
3453// See GetImportJob for more information on using the GetImportJob
3454// API call, and error handling.
3455//
3456// This method is useful when you want to inject custom logic or configuration
3457// into the SDK's request lifecycle. Such as custom headers, or retry logic.
3458//
3459//
3460//    // Example sending a request using the GetImportJobRequest method.
3461//    req, resp := client.GetImportJobRequest(params)
3462//
3463//    err := req.Send()
3464//    if err == nil { // resp is now filled
3465//        fmt.Println(resp)
3466//    }
3467//
3468// See also, https://docs.aws.amazon.com/goto/WebAPI/pinpoint-2016-12-01/GetImportJob
3469func (c *Pinpoint) GetImportJobRequest(input *GetImportJobInput) (req *request.Request, output *GetImportJobOutput) {
3470	op := &request.Operation{
3471		Name:       opGetImportJob,
3472		HTTPMethod: "GET",
3473		HTTPPath:   "/v1/apps/{application-id}/jobs/import/{job-id}",
3474	}
3475
3476	if input == nil {
3477		input = &GetImportJobInput{}
3478	}
3479
3480	output = &GetImportJobOutput{}
3481	req = c.newRequest(op, input, output)
3482	return
3483}
3484
3485// GetImportJob API operation for Amazon Pinpoint.
3486//
3487// Returns information about an import job.
3488//
3489// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
3490// with awserr.Error's Code and Message methods to get detailed information about
3491// the error.
3492//
3493// See the AWS API reference guide for Amazon Pinpoint's
3494// API operation GetImportJob for usage and error information.
3495//
3496// Returned Error Codes:
3497//   * ErrCodeBadRequestException "BadRequestException"
3498//
3499//   * ErrCodeInternalServerErrorException "InternalServerErrorException"
3500//
3501//   * ErrCodeForbiddenException "ForbiddenException"
3502//
3503//   * ErrCodeNotFoundException "NotFoundException"
3504//
3505//   * ErrCodeMethodNotAllowedException "MethodNotAllowedException"
3506//
3507//   * ErrCodeTooManyRequestsException "TooManyRequestsException"
3508//
3509// See also, https://docs.aws.amazon.com/goto/WebAPI/pinpoint-2016-12-01/GetImportJob
3510func (c *Pinpoint) GetImportJob(input *GetImportJobInput) (*GetImportJobOutput, error) {
3511	req, out := c.GetImportJobRequest(input)
3512	return out, req.Send()
3513}
3514
3515// GetImportJobWithContext is the same as GetImportJob with the addition of
3516// the ability to pass a context and additional request options.
3517//
3518// See GetImportJob for details on how to use this API operation.
3519//
3520// The context must be non-nil and will be used for request cancellation. If
3521// the context is nil a panic will occur. In the future the SDK may create
3522// sub-contexts for http.Requests. See https://golang.org/pkg/context/
3523// for more information on using Contexts.
3524func (c *Pinpoint) GetImportJobWithContext(ctx aws.Context, input *GetImportJobInput, opts ...request.Option) (*GetImportJobOutput, error) {
3525	req, out := c.GetImportJobRequest(input)
3526	req.SetContext(ctx)
3527	req.ApplyOptions(opts...)
3528	return out, req.Send()
3529}
3530
3531const opGetImportJobs = "GetImportJobs"
3532
3533// GetImportJobsRequest generates a "aws/request.Request" representing the
3534// client's request for the GetImportJobs operation. The "output" return
3535// value will be populated with the request's response once the request completes
3536// successfuly.
3537//
3538// Use "Send" method on the returned Request to send the API call to the service.
3539// the "output" return value is not valid until after Send returns without error.
3540//
3541// See GetImportJobs for more information on using the GetImportJobs
3542// API call, and error handling.
3543//
3544// This method is useful when you want to inject custom logic or configuration
3545// into the SDK's request lifecycle. Such as custom headers, or retry logic.
3546//
3547//
3548//    // Example sending a request using the GetImportJobsRequest method.
3549//    req, resp := client.GetImportJobsRequest(params)
3550//
3551//    err := req.Send()
3552//    if err == nil { // resp is now filled
3553//        fmt.Println(resp)
3554//    }
3555//
3556// See also, https://docs.aws.amazon.com/goto/WebAPI/pinpoint-2016-12-01/GetImportJobs
3557func (c *Pinpoint) GetImportJobsRequest(input *GetImportJobsInput) (req *request.Request, output *GetImportJobsOutput) {
3558	op := &request.Operation{
3559		Name:       opGetImportJobs,
3560		HTTPMethod: "GET",
3561		HTTPPath:   "/v1/apps/{application-id}/jobs/import",
3562	}
3563
3564	if input == nil {
3565		input = &GetImportJobsInput{}
3566	}
3567
3568	output = &GetImportJobsOutput{}
3569	req = c.newRequest(op, input, output)
3570	return
3571}
3572
3573// GetImportJobs API operation for Amazon Pinpoint.
3574//
3575// Returns information about your import jobs.
3576//
3577// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
3578// with awserr.Error's Code and Message methods to get detailed information about
3579// the error.
3580//
3581// See the AWS API reference guide for Amazon Pinpoint's
3582// API operation GetImportJobs for usage and error information.
3583//
3584// Returned Error Codes:
3585//   * ErrCodeBadRequestException "BadRequestException"
3586//
3587//   * ErrCodeInternalServerErrorException "InternalServerErrorException"
3588//
3589//   * ErrCodeForbiddenException "ForbiddenException"
3590//
3591//   * ErrCodeNotFoundException "NotFoundException"
3592//
3593//   * ErrCodeMethodNotAllowedException "MethodNotAllowedException"
3594//
3595//   * ErrCodeTooManyRequestsException "TooManyRequestsException"
3596//
3597// See also, https://docs.aws.amazon.com/goto/WebAPI/pinpoint-2016-12-01/GetImportJobs
3598func (c *Pinpoint) GetImportJobs(input *GetImportJobsInput) (*GetImportJobsOutput, error) {
3599	req, out := c.GetImportJobsRequest(input)
3600	return out, req.Send()
3601}
3602
3603// GetImportJobsWithContext is the same as GetImportJobs with the addition of
3604// the ability to pass a context and additional request options.
3605//
3606// See GetImportJobs for details on how to use this API operation.
3607//
3608// The context must be non-nil and will be used for request cancellation. If
3609// the context is nil a panic will occur. In the future the SDK may create
3610// sub-contexts for http.Requests. See https://golang.org/pkg/context/
3611// for more information on using Contexts.
3612func (c *Pinpoint) GetImportJobsWithContext(ctx aws.Context, input *GetImportJobsInput, opts ...request.Option) (*GetImportJobsOutput, error) {
3613	req, out := c.GetImportJobsRequest(input)
3614	req.SetContext(ctx)
3615	req.ApplyOptions(opts...)
3616	return out, req.Send()
3617}
3618
3619const opGetSegment = "GetSegment"
3620
3621// GetSegmentRequest generates a "aws/request.Request" representing the
3622// client's request for the GetSegment operation. The "output" return
3623// value will be populated with the request's response once the request completes
3624// successfuly.
3625//
3626// Use "Send" method on the returned Request to send the API call to the service.
3627// the "output" return value is not valid until after Send returns without error.
3628//
3629// See GetSegment for more information on using the GetSegment
3630// API call, and error handling.
3631//
3632// This method is useful when you want to inject custom logic or configuration
3633// into the SDK's request lifecycle. Such as custom headers, or retry logic.
3634//
3635//
3636//    // Example sending a request using the GetSegmentRequest method.
3637//    req, resp := client.GetSegmentRequest(params)
3638//
3639//    err := req.Send()
3640//    if err == nil { // resp is now filled
3641//        fmt.Println(resp)
3642//    }
3643//
3644// See also, https://docs.aws.amazon.com/goto/WebAPI/pinpoint-2016-12-01/GetSegment
3645func (c *Pinpoint) GetSegmentRequest(input *GetSegmentInput) (req *request.Request, output *GetSegmentOutput) {
3646	op := &request.Operation{
3647		Name:       opGetSegment,
3648		HTTPMethod: "GET",
3649		HTTPPath:   "/v1/apps/{application-id}/segments/{segment-id}",
3650	}
3651
3652	if input == nil {
3653		input = &GetSegmentInput{}
3654	}
3655
3656	output = &GetSegmentOutput{}
3657	req = c.newRequest(op, input, output)
3658	return
3659}
3660
3661// GetSegment API operation for Amazon Pinpoint.
3662//
3663// Returns information about a segment.
3664//
3665// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
3666// with awserr.Error's Code and Message methods to get detailed information about
3667// the error.
3668//
3669// See the AWS API reference guide for Amazon Pinpoint's
3670// API operation GetSegment for usage and error information.
3671//
3672// Returned Error Codes:
3673//   * ErrCodeBadRequestException "BadRequestException"
3674//
3675//   * ErrCodeInternalServerErrorException "InternalServerErrorException"
3676//
3677//   * ErrCodeForbiddenException "ForbiddenException"
3678//
3679//   * ErrCodeNotFoundException "NotFoundException"
3680//
3681//   * ErrCodeMethodNotAllowedException "MethodNotAllowedException"
3682//
3683//   * ErrCodeTooManyRequestsException "TooManyRequestsException"
3684//
3685// See also, https://docs.aws.amazon.com/goto/WebAPI/pinpoint-2016-12-01/GetSegment
3686func (c *Pinpoint) GetSegment(input *GetSegmentInput) (*GetSegmentOutput, error) {
3687	req, out := c.GetSegmentRequest(input)
3688	return out, req.Send()
3689}
3690
3691// GetSegmentWithContext is the same as GetSegment with the addition of
3692// the ability to pass a context and additional request options.
3693//
3694// See GetSegment for details on how to use this API operation.
3695//
3696// The context must be non-nil and will be used for request cancellation. If
3697// the context is nil a panic will occur. In the future the SDK may create
3698// sub-contexts for http.Requests. See https://golang.org/pkg/context/
3699// for more information on using Contexts.
3700func (c *Pinpoint) GetSegmentWithContext(ctx aws.Context, input *GetSegmentInput, opts ...request.Option) (*GetSegmentOutput, error) {
3701	req, out := c.GetSegmentRequest(input)
3702	req.SetContext(ctx)
3703	req.ApplyOptions(opts...)
3704	return out, req.Send()
3705}
3706
3707const opGetSegmentExportJobs = "GetSegmentExportJobs"
3708
3709// GetSegmentExportJobsRequest generates a "aws/request.Request" representing the
3710// client's request for the GetSegmentExportJobs operation. The "output" return
3711// value will be populated with the request's response once the request completes
3712// successfuly.
3713//
3714// Use "Send" method on the returned Request to send the API call to the service.
3715// the "output" return value is not valid until after Send returns without error.
3716//
3717// See GetSegmentExportJobs for more information on using the GetSegmentExportJobs
3718// API call, and error handling.
3719//
3720// This method is useful when you want to inject custom logic or configuration
3721// into the SDK's request lifecycle. Such as custom headers, or retry logic.
3722//
3723//
3724//    // Example sending a request using the GetSegmentExportJobsRequest method.
3725//    req, resp := client.GetSegmentExportJobsRequest(params)
3726//
3727//    err := req.Send()
3728//    if err == nil { // resp is now filled
3729//        fmt.Println(resp)
3730//    }
3731//
3732// See also, https://docs.aws.amazon.com/goto/WebAPI/pinpoint-2016-12-01/GetSegmentExportJobs
3733func (c *Pinpoint) GetSegmentExportJobsRequest(input *GetSegmentExportJobsInput) (req *request.Request, output *GetSegmentExportJobsOutput) {
3734	op := &request.Operation{
3735		Name:       opGetSegmentExportJobs,
3736		HTTPMethod: "GET",
3737		HTTPPath:   "/v1/apps/{application-id}/segments/{segment-id}/jobs/export",
3738	}
3739
3740	if input == nil {
3741		input = &GetSegmentExportJobsInput{}
3742	}
3743
3744	output = &GetSegmentExportJobsOutput{}
3745	req = c.newRequest(op, input, output)
3746	return
3747}
3748
3749// GetSegmentExportJobs API operation for Amazon Pinpoint.
3750//
3751// Returns a list of export jobs for a specific segment.
3752//
3753// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
3754// with awserr.Error's Code and Message methods to get detailed information about
3755// the error.
3756//
3757// See the AWS API reference guide for Amazon Pinpoint's
3758// API operation GetSegmentExportJobs for usage and error information.
3759//
3760// Returned Error Codes:
3761//   * ErrCodeBadRequestException "BadRequestException"
3762//
3763//   * ErrCodeInternalServerErrorException "InternalServerErrorException"
3764//
3765//   * ErrCodeForbiddenException "ForbiddenException"
3766//
3767//   * ErrCodeNotFoundException "NotFoundException"
3768//
3769//   * ErrCodeMethodNotAllowedException "MethodNotAllowedException"
3770//
3771//   * ErrCodeTooManyRequestsException "TooManyRequestsException"
3772//
3773// See also, https://docs.aws.amazon.com/goto/WebAPI/pinpoint-2016-12-01/GetSegmentExportJobs
3774func (c *Pinpoint) GetSegmentExportJobs(input *GetSegmentExportJobsInput) (*GetSegmentExportJobsOutput, error) {
3775	req, out := c.GetSegmentExportJobsRequest(input)
3776	return out, req.Send()
3777}
3778
3779// GetSegmentExportJobsWithContext is the same as GetSegmentExportJobs with the addition of
3780// the ability to pass a context and additional request options.
3781//
3782// See GetSegmentExportJobs for details on how to use this API operation.
3783//
3784// The context must be non-nil and will be used for request cancellation. If
3785// the context is nil a panic will occur. In the future the SDK may create
3786// sub-contexts for http.Requests. See https://golang.org/pkg/context/
3787// for more information on using Contexts.
3788func (c *Pinpoint) GetSegmentExportJobsWithContext(ctx aws.Context, input *GetSegmentExportJobsInput, opts ...request.Option) (*GetSegmentExportJobsOutput, error) {
3789	req, out := c.GetSegmentExportJobsRequest(input)
3790	req.SetContext(ctx)
3791	req.ApplyOptions(opts...)
3792	return out, req.Send()
3793}
3794
3795const opGetSegmentImportJobs = "GetSegmentImportJobs"
3796
3797// GetSegmentImportJobsRequest generates a "aws/request.Request" representing the
3798// client's request for the GetSegmentImportJobs operation. The "output" return
3799// value will be populated with the request's response once the request completes
3800// successfuly.
3801//
3802// Use "Send" method on the returned Request to send the API call to the service.
3803// the "output" return value is not valid until after Send returns without error.
3804//
3805// See GetSegmentImportJobs for more information on using the GetSegmentImportJobs
3806// API call, and error handling.
3807//
3808// This method is useful when you want to inject custom logic or configuration
3809// into the SDK's request lifecycle. Such as custom headers, or retry logic.
3810//
3811//
3812//    // Example sending a request using the GetSegmentImportJobsRequest method.
3813//    req, resp := client.GetSegmentImportJobsRequest(params)
3814//
3815//    err := req.Send()
3816//    if err == nil { // resp is now filled
3817//        fmt.Println(resp)
3818//    }
3819//
3820// See also, https://docs.aws.amazon.com/goto/WebAPI/pinpoint-2016-12-01/GetSegmentImportJobs
3821func (c *Pinpoint) GetSegmentImportJobsRequest(input *GetSegmentImportJobsInput) (req *request.Request, output *GetSegmentImportJobsOutput) {
3822	op := &request.Operation{
3823		Name:       opGetSegmentImportJobs,
3824		HTTPMethod: "GET",
3825		HTTPPath:   "/v1/apps/{application-id}/segments/{segment-id}/jobs/import",
3826	}
3827
3828	if input == nil {
3829		input = &GetSegmentImportJobsInput{}
3830	}
3831
3832	output = &GetSegmentImportJobsOutput{}
3833	req = c.newRequest(op, input, output)
3834	return
3835}
3836
3837// GetSegmentImportJobs API operation for Amazon Pinpoint.
3838//
3839// Returns a list of import jobs for a specific segment.
3840//
3841// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
3842// with awserr.Error's Code and Message methods to get detailed information about
3843// the error.
3844//
3845// See the AWS API reference guide for Amazon Pinpoint's
3846// API operation GetSegmentImportJobs for usage and error information.
3847//
3848// Returned Error Codes:
3849//   * ErrCodeBadRequestException "BadRequestException"
3850//
3851//   * ErrCodeInternalServerErrorException "InternalServerErrorException"
3852//
3853//   * ErrCodeForbiddenException "ForbiddenException"
3854//
3855//   * ErrCodeNotFoundException "NotFoundException"
3856//
3857//   * ErrCodeMethodNotAllowedException "MethodNotAllowedException"
3858//
3859//   * ErrCodeTooManyRequestsException "TooManyRequestsException"
3860//
3861// See also, https://docs.aws.amazon.com/goto/WebAPI/pinpoint-2016-12-01/GetSegmentImportJobs
3862func (c *Pinpoint) GetSegmentImportJobs(input *GetSegmentImportJobsInput) (*GetSegmentImportJobsOutput, error) {
3863	req, out := c.GetSegmentImportJobsRequest(input)
3864	return out, req.Send()
3865}
3866
3867// GetSegmentImportJobsWithContext is the same as GetSegmentImportJobs with the addition of
3868// the ability to pass a context and additional request options.
3869//
3870// See GetSegmentImportJobs for details on how to use this API operation.
3871//
3872// The context must be non-nil and will be used for request cancellation. If
3873// the context is nil a panic will occur. In the future the SDK may create
3874// sub-contexts for http.Requests. See https://golang.org/pkg/context/
3875// for more information on using Contexts.
3876func (c *Pinpoint) GetSegmentImportJobsWithContext(ctx aws.Context, input *GetSegmentImportJobsInput, opts ...request.Option) (*GetSegmentImportJobsOutput, error) {
3877	req, out := c.GetSegmentImportJobsRequest(input)
3878	req.SetContext(ctx)
3879	req.ApplyOptions(opts...)
3880	return out, req.Send()
3881}
3882
3883const opGetSegmentVersion = "GetSegmentVersion"
3884
3885// GetSegmentVersionRequest generates a "aws/request.Request" representing the
3886// client's request for the GetSegmentVersion operation. The "output" return
3887// value will be populated with the request's response once the request completes
3888// successfuly.
3889//
3890// Use "Send" method on the returned Request to send the API call to the service.
3891// the "output" return value is not valid until after Send returns without error.
3892//
3893// See GetSegmentVersion for more information on using the GetSegmentVersion
3894// API call, and error handling.
3895//
3896// This method is useful when you want to inject custom logic or configuration
3897// into the SDK's request lifecycle. Such as custom headers, or retry logic.
3898//
3899//
3900//    // Example sending a request using the GetSegmentVersionRequest method.
3901//    req, resp := client.GetSegmentVersionRequest(params)
3902//
3903//    err := req.Send()
3904//    if err == nil { // resp is now filled
3905//        fmt.Println(resp)
3906//    }
3907//
3908// See also, https://docs.aws.amazon.com/goto/WebAPI/pinpoint-2016-12-01/GetSegmentVersion
3909func (c *Pinpoint) GetSegmentVersionRequest(input *GetSegmentVersionInput) (req *request.Request, output *GetSegmentVersionOutput) {
3910	op := &request.Operation{
3911		Name:       opGetSegmentVersion,
3912		HTTPMethod: "GET",
3913		HTTPPath:   "/v1/apps/{application-id}/segments/{segment-id}/versions/{version}",
3914	}
3915
3916	if input == nil {
3917		input = &GetSegmentVersionInput{}
3918	}
3919
3920	output = &GetSegmentVersionOutput{}
3921	req = c.newRequest(op, input, output)
3922	return
3923}
3924
3925// GetSegmentVersion API operation for Amazon Pinpoint.
3926//
3927// Returns information about a segment version.
3928//
3929// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
3930// with awserr.Error's Code and Message methods to get detailed information about
3931// the error.
3932//
3933// See the AWS API reference guide for Amazon Pinpoint's
3934// API operation GetSegmentVersion for usage and error information.
3935//
3936// Returned Error Codes:
3937//   * ErrCodeBadRequestException "BadRequestException"
3938//
3939//   * ErrCodeInternalServerErrorException "InternalServerErrorException"
3940//
3941//   * ErrCodeForbiddenException "ForbiddenException"
3942//
3943//   * ErrCodeNotFoundException "NotFoundException"
3944//
3945//   * ErrCodeMethodNotAllowedException "MethodNotAllowedException"
3946//
3947//   * ErrCodeTooManyRequestsException "TooManyRequestsException"
3948//
3949// See also, https://docs.aws.amazon.com/goto/WebAPI/pinpoint-2016-12-01/GetSegmentVersion
3950func (c *Pinpoint) GetSegmentVersion(input *GetSegmentVersionInput) (*GetSegmentVersionOutput, error) {
3951	req, out := c.GetSegmentVersionRequest(input)
3952	return out, req.Send()
3953}
3954
3955// GetSegmentVersionWithContext is the same as GetSegmentVersion with the addition of
3956// the ability to pass a context and additional request options.
3957//
3958// See GetSegmentVersion for details on how to use this API operation.
3959//
3960// The context must be non-nil and will be used for request cancellation. If
3961// the context is nil a panic will occur. In the future the SDK may create
3962// sub-contexts for http.Requests. See https://golang.org/pkg/context/
3963// for more information on using Contexts.
3964func (c *Pinpoint) GetSegmentVersionWithContext(ctx aws.Context, input *GetSegmentVersionInput, opts ...request.Option) (*GetSegmentVersionOutput, error) {
3965	req, out := c.GetSegmentVersionRequest(input)
3966	req.SetContext(ctx)
3967	req.ApplyOptions(opts...)
3968	return out, req.Send()
3969}
3970
3971const opGetSegmentVersions = "GetSegmentVersions"
3972
3973// GetSegmentVersionsRequest generates a "aws/request.Request" representing the
3974// client's request for the GetSegmentVersions operation. The "output" return
3975// value will be populated with the request's response once the request completes
3976// successfuly.
3977//
3978// Use "Send" method on the returned Request to send the API call to the service.
3979// the "output" return value is not valid until after Send returns without error.
3980//
3981// See GetSegmentVersions for more information on using the GetSegmentVersions
3982// API call, and error handling.
3983//
3984// This method is useful when you want to inject custom logic or configuration
3985// into the SDK's request lifecycle. Such as custom headers, or retry logic.
3986//
3987//
3988//    // Example sending a request using the GetSegmentVersionsRequest method.
3989//    req, resp := client.GetSegmentVersionsRequest(params)
3990//
3991//    err := req.Send()
3992//    if err == nil { // resp is now filled
3993//        fmt.Println(resp)
3994//    }
3995//
3996// See also, https://docs.aws.amazon.com/goto/WebAPI/pinpoint-2016-12-01/GetSegmentVersions
3997func (c *Pinpoint) GetSegmentVersionsRequest(input *GetSegmentVersionsInput) (req *request.Request, output *GetSegmentVersionsOutput) {
3998	op := &request.Operation{
3999		Name:       opGetSegmentVersions,
4000		HTTPMethod: "GET",
4001		HTTPPath:   "/v1/apps/{application-id}/segments/{segment-id}/versions",
4002	}
4003
4004	if input == nil {
4005		input = &GetSegmentVersionsInput{}
4006	}
4007
4008	output = &GetSegmentVersionsOutput{}
4009	req = c.newRequest(op, input, output)
4010	return
4011}
4012
4013// GetSegmentVersions API operation for Amazon Pinpoint.
4014//
4015// Returns information about your segment versions.
4016//
4017// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
4018// with awserr.Error's Code and Message methods to get detailed information about
4019// the error.
4020//
4021// See the AWS API reference guide for Amazon Pinpoint's
4022// API operation GetSegmentVersions for usage and error information.
4023//
4024// Returned Error Codes:
4025//   * ErrCodeBadRequestException "BadRequestException"
4026//
4027//   * ErrCodeInternalServerErrorException "InternalServerErrorException"
4028//
4029//   * ErrCodeForbiddenException "ForbiddenException"
4030//
4031//   * ErrCodeNotFoundException "NotFoundException"
4032//
4033//   * ErrCodeMethodNotAllowedException "MethodNotAllowedException"
4034//
4035//   * ErrCodeTooManyRequestsException "TooManyRequestsException"
4036//
4037// See also, https://docs.aws.amazon.com/goto/WebAPI/pinpoint-2016-12-01/GetSegmentVersions
4038func (c *Pinpoint) GetSegmentVersions(input *GetSegmentVersionsInput) (*GetSegmentVersionsOutput, error) {
4039	req, out := c.GetSegmentVersionsRequest(input)
4040	return out, req.Send()
4041}
4042
4043// GetSegmentVersionsWithContext is the same as GetSegmentVersions with the addition of
4044// the ability to pass a context and additional request options.
4045//
4046// See GetSegmentVersions for details on how to use this API operation.
4047//
4048// The context must be non-nil and will be used for request cancellation. If
4049// the context is nil a panic will occur. In the future the SDK may create
4050// sub-contexts for http.Requests. See https://golang.org/pkg/context/
4051// for more information on using Contexts.
4052func (c *Pinpoint) GetSegmentVersionsWithContext(ctx aws.Context, input *GetSegmentVersionsInput, opts ...request.Option) (*GetSegmentVersionsOutput, error) {
4053	req, out := c.GetSegmentVersionsRequest(input)
4054	req.SetContext(ctx)
4055	req.ApplyOptions(opts...)
4056	return out, req.Send()
4057}
4058
4059const opGetSegments = "GetSegments"
4060
4061// GetSegmentsRequest generates a "aws/request.Request" representing the
4062// client's request for the GetSegments operation. The "output" return
4063// value will be populated with the request's response once the request completes
4064// successfuly.
4065//
4066// Use "Send" method on the returned Request to send the API call to the service.
4067// the "output" return value is not valid until after Send returns without error.
4068//
4069// See GetSegments for more information on using the GetSegments
4070// API call, and error handling.
4071//
4072// This method is useful when you want to inject custom logic or configuration
4073// into the SDK's request lifecycle. Such as custom headers, or retry logic.
4074//
4075//
4076//    // Example sending a request using the GetSegmentsRequest method.
4077//    req, resp := client.GetSegmentsRequest(params)
4078//
4079//    err := req.Send()
4080//    if err == nil { // resp is now filled
4081//        fmt.Println(resp)
4082//    }
4083//
4084// See also, https://docs.aws.amazon.com/goto/WebAPI/pinpoint-2016-12-01/GetSegments
4085func (c *Pinpoint) GetSegmentsRequest(input *GetSegmentsInput) (req *request.Request, output *GetSegmentsOutput) {
4086	op := &request.Operation{
4087		Name:       opGetSegments,
4088		HTTPMethod: "GET",
4089		HTTPPath:   "/v1/apps/{application-id}/segments",
4090	}
4091
4092	if input == nil {
4093		input = &GetSegmentsInput{}
4094	}
4095
4096	output = &GetSegmentsOutput{}
4097	req = c.newRequest(op, input, output)
4098	return
4099}
4100
4101// GetSegments API operation for Amazon Pinpoint.
4102//
4103// Used to get information about your segments.
4104//
4105// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
4106// with awserr.Error's Code and Message methods to get detailed information about
4107// the error.
4108//
4109// See the AWS API reference guide for Amazon Pinpoint's
4110// API operation GetSegments for usage and error information.
4111//
4112// Returned Error Codes:
4113//   * ErrCodeBadRequestException "BadRequestException"
4114//
4115//   * ErrCodeInternalServerErrorException "InternalServerErrorException"
4116//
4117//   * ErrCodeForbiddenException "ForbiddenException"
4118//
4119//   * ErrCodeNotFoundException "NotFoundException"
4120//
4121//   * ErrCodeMethodNotAllowedException "MethodNotAllowedException"
4122//
4123//   * ErrCodeTooManyRequestsException "TooManyRequestsException"
4124//
4125// See also, https://docs.aws.amazon.com/goto/WebAPI/pinpoint-2016-12-01/GetSegments
4126func (c *Pinpoint) GetSegments(input *GetSegmentsInput) (*GetSegmentsOutput, error) {
4127	req, out := c.GetSegmentsRequest(input)
4128	return out, req.Send()
4129}
4130
4131// GetSegmentsWithContext is the same as GetSegments with the addition of
4132// the ability to pass a context and additional request options.
4133//
4134// See GetSegments for details on how to use this API operation.
4135//
4136// The context must be non-nil and will be used for request cancellation. If
4137// the context is nil a panic will occur. In the future the SDK may create
4138// sub-contexts for http.Requests. See https://golang.org/pkg/context/
4139// for more information on using Contexts.
4140func (c *Pinpoint) GetSegmentsWithContext(ctx aws.Context, input *GetSegmentsInput, opts ...request.Option) (*GetSegmentsOutput, error) {
4141	req, out := c.GetSegmentsRequest(input)
4142	req.SetContext(ctx)
4143	req.ApplyOptions(opts...)
4144	return out, req.Send()
4145}
4146
4147const opGetSmsChannel = "GetSmsChannel"
4148
4149// GetSmsChannelRequest generates a "aws/request.Request" representing the
4150// client's request for the GetSmsChannel operation. The "output" return
4151// value will be populated with the request's response once the request completes
4152// successfuly.
4153//
4154// Use "Send" method on the returned Request to send the API call to the service.
4155// the "output" return value is not valid until after Send returns without error.
4156//
4157// See GetSmsChannel for more information on using the GetSmsChannel
4158// API call, and error handling.
4159//
4160// This method is useful when you want to inject custom logic or configuration
4161// into the SDK's request lifecycle. Such as custom headers, or retry logic.
4162//
4163//
4164//    // Example sending a request using the GetSmsChannelRequest method.
4165//    req, resp := client.GetSmsChannelRequest(params)
4166//
4167//    err := req.Send()
4168//    if err == nil { // resp is now filled
4169//        fmt.Println(resp)
4170//    }
4171//
4172// See also, https://docs.aws.amazon.com/goto/WebAPI/pinpoint-2016-12-01/GetSmsChannel
4173func (c *Pinpoint) GetSmsChannelRequest(input *GetSmsChannelInput) (req *request.Request, output *GetSmsChannelOutput) {
4174	op := &request.Operation{
4175		Name:       opGetSmsChannel,
4176		HTTPMethod: "GET",
4177		HTTPPath:   "/v1/apps/{application-id}/channels/sms",
4178	}
4179
4180	if input == nil {
4181		input = &GetSmsChannelInput{}
4182	}
4183
4184	output = &GetSmsChannelOutput{}
4185	req = c.newRequest(op, input, output)
4186	return
4187}
4188
4189// GetSmsChannel API operation for Amazon Pinpoint.
4190//
4191// Get an SMS channel
4192//
4193// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
4194// with awserr.Error's Code and Message methods to get detailed information about
4195// the error.
4196//
4197// See the AWS API reference guide for Amazon Pinpoint's
4198// API operation GetSmsChannel for usage and error information.
4199//
4200// Returned Error Codes:
4201//   * ErrCodeBadRequestException "BadRequestException"
4202//
4203//   * ErrCodeInternalServerErrorException "InternalServerErrorException"
4204//
4205//   * ErrCodeForbiddenException "ForbiddenException"
4206//
4207//   * ErrCodeNotFoundException "NotFoundException"
4208//
4209//   * ErrCodeMethodNotAllowedException "MethodNotAllowedException"
4210//
4211//   * ErrCodeTooManyRequestsException "TooManyRequestsException"
4212//
4213// See also, https://docs.aws.amazon.com/goto/WebAPI/pinpoint-2016-12-01/GetSmsChannel
4214func (c *Pinpoint) GetSmsChannel(input *GetSmsChannelInput) (*GetSmsChannelOutput, error) {
4215	req, out := c.GetSmsChannelRequest(input)
4216	return out, req.Send()
4217}
4218
4219// GetSmsChannelWithContext is the same as GetSmsChannel with the addition of
4220// the ability to pass a context and additional request options.
4221//
4222// See GetSmsChannel for details on how to use this API operation.
4223//
4224// The context must be non-nil and will be used for request cancellation. If
4225// the context is nil a panic will occur. In the future the SDK may create
4226// sub-contexts for http.Requests. See https://golang.org/pkg/context/
4227// for more information on using Contexts.
4228func (c *Pinpoint) GetSmsChannelWithContext(ctx aws.Context, input *GetSmsChannelInput, opts ...request.Option) (*GetSmsChannelOutput, error) {
4229	req, out := c.GetSmsChannelRequest(input)
4230	req.SetContext(ctx)
4231	req.ApplyOptions(opts...)
4232	return out, req.Send()
4233}
4234
4235const opPutEventStream = "PutEventStream"
4236
4237// PutEventStreamRequest generates a "aws/request.Request" representing the
4238// client's request for the PutEventStream operation. The "output" return
4239// value will be populated with the request's response once the request completes
4240// successfuly.
4241//
4242// Use "Send" method on the returned Request to send the API call to the service.
4243// the "output" return value is not valid until after Send returns without error.
4244//
4245// See PutEventStream for more information on using the PutEventStream
4246// API call, and error handling.
4247//
4248// This method is useful when you want to inject custom logic or configuration
4249// into the SDK's request lifecycle. Such as custom headers, or retry logic.
4250//
4251//
4252//    // Example sending a request using the PutEventStreamRequest method.
4253//    req, resp := client.PutEventStreamRequest(params)
4254//
4255//    err := req.Send()
4256//    if err == nil { // resp is now filled
4257//        fmt.Println(resp)
4258//    }
4259//
4260// See also, https://docs.aws.amazon.com/goto/WebAPI/pinpoint-2016-12-01/PutEventStream
4261func (c *Pinpoint) PutEventStreamRequest(input *PutEventStreamInput) (req *request.Request, output *PutEventStreamOutput) {
4262	op := &request.Operation{
4263		Name:       opPutEventStream,
4264		HTTPMethod: "POST",
4265		HTTPPath:   "/v1/apps/{application-id}/eventstream",
4266	}
4267
4268	if input == nil {
4269		input = &PutEventStreamInput{}
4270	}
4271
4272	output = &PutEventStreamOutput{}
4273	req = c.newRequest(op, input, output)
4274	return
4275}
4276
4277// PutEventStream API operation for Amazon Pinpoint.
4278//
4279// Use to create or update the event stream for an app.
4280//
4281// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
4282// with awserr.Error's Code and Message methods to get detailed information about
4283// the error.
4284//
4285// See the AWS API reference guide for Amazon Pinpoint's
4286// API operation PutEventStream for usage and error information.
4287//
4288// Returned Error Codes:
4289//   * ErrCodeBadRequestException "BadRequestException"
4290//
4291//   * ErrCodeInternalServerErrorException "InternalServerErrorException"
4292//
4293//   * ErrCodeForbiddenException "ForbiddenException"
4294//
4295//   * ErrCodeNotFoundException "NotFoundException"
4296//
4297//   * ErrCodeMethodNotAllowedException "MethodNotAllowedException"
4298//
4299//   * ErrCodeTooManyRequestsException "TooManyRequestsException"
4300//
4301// See also, https://docs.aws.amazon.com/goto/WebAPI/pinpoint-2016-12-01/PutEventStream
4302func (c *Pinpoint) PutEventStream(input *PutEventStreamInput) (*PutEventStreamOutput, error) {
4303	req, out := c.PutEventStreamRequest(input)
4304	return out, req.Send()
4305}
4306
4307// PutEventStreamWithContext is the same as PutEventStream with the addition of
4308// the ability to pass a context and additional request options.
4309//
4310// See PutEventStream for details on how to use this API operation.
4311//
4312// The context must be non-nil and will be used for request cancellation. If
4313// the context is nil a panic will occur. In the future the SDK may create
4314// sub-contexts for http.Requests. See https://golang.org/pkg/context/
4315// for more information on using Contexts.
4316func (c *Pinpoint) PutEventStreamWithContext(ctx aws.Context, input *PutEventStreamInput, opts ...request.Option) (*PutEventStreamOutput, error) {
4317	req, out := c.PutEventStreamRequest(input)
4318	req.SetContext(ctx)
4319	req.ApplyOptions(opts...)
4320	return out, req.Send()
4321}
4322
4323const opSendMessages = "SendMessages"
4324
4325// SendMessagesRequest generates a "aws/request.Request" representing the
4326// client's request for the SendMessages operation. The "output" return
4327// value will be populated with the request's response once the request completes
4328// successfuly.
4329//
4330// Use "Send" method on the returned Request to send the API call to the service.
4331// the "output" return value is not valid until after Send returns without error.
4332//
4333// See SendMessages for more information on using the SendMessages
4334// API call, and error handling.
4335//
4336// This method is useful when you want to inject custom logic or configuration
4337// into the SDK's request lifecycle. Such as custom headers, or retry logic.
4338//
4339//
4340//    // Example sending a request using the SendMessagesRequest method.
4341//    req, resp := client.SendMessagesRequest(params)
4342//
4343//    err := req.Send()
4344//    if err == nil { // resp is now filled
4345//        fmt.Println(resp)
4346//    }
4347//
4348// See also, https://docs.aws.amazon.com/goto/WebAPI/pinpoint-2016-12-01/SendMessages
4349func (c *Pinpoint) SendMessagesRequest(input *SendMessagesInput) (req *request.Request, output *SendMessagesOutput) {
4350	op := &request.Operation{
4351		Name:       opSendMessages,
4352		HTTPMethod: "POST",
4353		HTTPPath:   "/v1/apps/{application-id}/messages",
4354	}
4355
4356	if input == nil {
4357		input = &SendMessagesInput{}
4358	}
4359
4360	output = &SendMessagesOutput{}
4361	req = c.newRequest(op, input, output)
4362	return
4363}
4364
4365// SendMessages API operation for Amazon Pinpoint.
4366//
4367// Send a batch of messages
4368//
4369// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
4370// with awserr.Error's Code and Message methods to get detailed information about
4371// the error.
4372//
4373// See the AWS API reference guide for Amazon Pinpoint's
4374// API operation SendMessages for usage and error information.
4375//
4376// Returned Error Codes:
4377//   * ErrCodeBadRequestException "BadRequestException"
4378//
4379//   * ErrCodeInternalServerErrorException "InternalServerErrorException"
4380//
4381//   * ErrCodeForbiddenException "ForbiddenException"
4382//
4383//   * ErrCodeNotFoundException "NotFoundException"
4384//
4385//   * ErrCodeMethodNotAllowedException "MethodNotAllowedException"
4386//
4387//   * ErrCodeTooManyRequestsException "TooManyRequestsException"
4388//
4389// See also, https://docs.aws.amazon.com/goto/WebAPI/pinpoint-2016-12-01/SendMessages
4390func (c *Pinpoint) SendMessages(input *SendMessagesInput) (*SendMessagesOutput, error) {
4391	req, out := c.SendMessagesRequest(input)
4392	return out, req.Send()
4393}
4394
4395// SendMessagesWithContext is the same as SendMessages with the addition of
4396// the ability to pass a context and additional request options.
4397//
4398// See SendMessages for details on how to use this API operation.
4399//
4400// The context must be non-nil and will be used for request cancellation. If
4401// the context is nil a panic will occur. In the future the SDK may create
4402// sub-contexts for http.Requests. See https://golang.org/pkg/context/
4403// for more information on using Contexts.
4404func (c *Pinpoint) SendMessagesWithContext(ctx aws.Context, input *SendMessagesInput, opts ...request.Option) (*SendMessagesOutput, error) {
4405	req, out := c.SendMessagesRequest(input)
4406	req.SetContext(ctx)
4407	req.ApplyOptions(opts...)
4408	return out, req.Send()
4409}
4410
4411const opSendUsersMessages = "SendUsersMessages"
4412
4413// SendUsersMessagesRequest generates a "aws/request.Request" representing the
4414// client's request for the SendUsersMessages operation. The "output" return
4415// value will be populated with the request's response once the request completes
4416// successfuly.
4417//
4418// Use "Send" method on the returned Request to send the API call to the service.
4419// the "output" return value is not valid until after Send returns without error.
4420//
4421// See SendUsersMessages for more information on using the SendUsersMessages
4422// API call, and error handling.
4423//
4424// This method is useful when you want to inject custom logic or configuration
4425// into the SDK's request lifecycle. Such as custom headers, or retry logic.
4426//
4427//
4428//    // Example sending a request using the SendUsersMessagesRequest method.
4429//    req, resp := client.SendUsersMessagesRequest(params)
4430//
4431//    err := req.Send()
4432//    if err == nil { // resp is now filled
4433//        fmt.Println(resp)
4434//    }
4435//
4436// See also, https://docs.aws.amazon.com/goto/WebAPI/pinpoint-2016-12-01/SendUsersMessages
4437func (c *Pinpoint) SendUsersMessagesRequest(input *SendUsersMessagesInput) (req *request.Request, output *SendUsersMessagesOutput) {
4438	op := &request.Operation{
4439		Name:       opSendUsersMessages,
4440		HTTPMethod: "POST",
4441		HTTPPath:   "/v1/apps/{application-id}/users-messages",
4442	}
4443
4444	if input == nil {
4445		input = &SendUsersMessagesInput{}
4446	}
4447
4448	output = &SendUsersMessagesOutput{}
4449	req = c.newRequest(op, input, output)
4450	return
4451}
4452
4453// SendUsersMessages API operation for Amazon Pinpoint.
4454//
4455// Send a batch of messages to users
4456//
4457// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
4458// with awserr.Error's Code and Message methods to get detailed information about
4459// the error.
4460//
4461// See the AWS API reference guide for Amazon Pinpoint's
4462// API operation SendUsersMessages for usage and error information.
4463//
4464// Returned Error Codes:
4465//   * ErrCodeBadRequestException "BadRequestException"
4466//
4467//   * ErrCodeInternalServerErrorException "InternalServerErrorException"
4468//
4469//   * ErrCodeForbiddenException "ForbiddenException"
4470//
4471//   * ErrCodeNotFoundException "NotFoundException"
4472//
4473//   * ErrCodeMethodNotAllowedException "MethodNotAllowedException"
4474//
4475//   * ErrCodeTooManyRequestsException "TooManyRequestsException"
4476//
4477// See also, https://docs.aws.amazon.com/goto/WebAPI/pinpoint-2016-12-01/SendUsersMessages
4478func (c *Pinpoint) SendUsersMessages(input *SendUsersMessagesInput) (*SendUsersMessagesOutput, error) {
4479	req, out := c.SendUsersMessagesRequest(input)
4480	return out, req.Send()
4481}
4482
4483// SendUsersMessagesWithContext is the same as SendUsersMessages with the addition of
4484// the ability to pass a context and additional request options.
4485//
4486// See SendUsersMessages for details on how to use this API operation.
4487//
4488// The context must be non-nil and will be used for request cancellation. If
4489// the context is nil a panic will occur. In the future the SDK may create
4490// sub-contexts for http.Requests. See https://golang.org/pkg/context/
4491// for more information on using Contexts.
4492func (c *Pinpoint) SendUsersMessagesWithContext(ctx aws.Context, input *SendUsersMessagesInput, opts ...request.Option) (*SendUsersMessagesOutput, error) {
4493	req, out := c.SendUsersMessagesRequest(input)
4494	req.SetContext(ctx)
4495	req.ApplyOptions(opts...)
4496	return out, req.Send()
4497}
4498
4499const opUpdateAdmChannel = "UpdateAdmChannel"
4500
4501// UpdateAdmChannelRequest generates a "aws/request.Request" representing the
4502// client's request for the UpdateAdmChannel operation. The "output" return
4503// value will be populated with the request's response once the request completes
4504// successfuly.
4505//
4506// Use "Send" method on the returned Request to send the API call to the service.
4507// the "output" return value is not valid until after Send returns without error.
4508//
4509// See UpdateAdmChannel for more information on using the UpdateAdmChannel
4510// API call, and error handling.
4511//
4512// This method is useful when you want to inject custom logic or configuration
4513// into the SDK's request lifecycle. Such as custom headers, or retry logic.
4514//
4515//
4516//    // Example sending a request using the UpdateAdmChannelRequest method.
4517//    req, resp := client.UpdateAdmChannelRequest(params)
4518//
4519//    err := req.Send()
4520//    if err == nil { // resp is now filled
4521//        fmt.Println(resp)
4522//    }
4523//
4524// See also, https://docs.aws.amazon.com/goto/WebAPI/pinpoint-2016-12-01/UpdateAdmChannel
4525func (c *Pinpoint) UpdateAdmChannelRequest(input *UpdateAdmChannelInput) (req *request.Request, output *UpdateAdmChannelOutput) {
4526	op := &request.Operation{
4527		Name:       opUpdateAdmChannel,
4528		HTTPMethod: "PUT",
4529		HTTPPath:   "/v1/apps/{application-id}/channels/adm",
4530	}
4531
4532	if input == nil {
4533		input = &UpdateAdmChannelInput{}
4534	}
4535
4536	output = &UpdateAdmChannelOutput{}
4537	req = c.newRequest(op, input, output)
4538	return
4539}
4540
4541// UpdateAdmChannel API operation for Amazon Pinpoint.
4542//
4543// Update an ADM channel
4544//
4545// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
4546// with awserr.Error's Code and Message methods to get detailed information about
4547// the error.
4548//
4549// See the AWS API reference guide for Amazon Pinpoint's
4550// API operation UpdateAdmChannel for usage and error information.
4551//
4552// Returned Error Codes:
4553//   * ErrCodeBadRequestException "BadRequestException"
4554//
4555//   * ErrCodeInternalServerErrorException "InternalServerErrorException"
4556//
4557//   * ErrCodeForbiddenException "ForbiddenException"
4558//
4559//   * ErrCodeNotFoundException "NotFoundException"
4560//
4561//   * ErrCodeMethodNotAllowedException "MethodNotAllowedException"
4562//
4563//   * ErrCodeTooManyRequestsException "TooManyRequestsException"
4564//
4565// See also, https://docs.aws.amazon.com/goto/WebAPI/pinpoint-2016-12-01/UpdateAdmChannel
4566func (c *Pinpoint) UpdateAdmChannel(input *UpdateAdmChannelInput) (*UpdateAdmChannelOutput, error) {
4567	req, out := c.UpdateAdmChannelRequest(input)
4568	return out, req.Send()
4569}
4570
4571// UpdateAdmChannelWithContext is the same as UpdateAdmChannel with the addition of
4572// the ability to pass a context and additional request options.
4573//
4574// See UpdateAdmChannel for details on how to use this API operation.
4575//
4576// The context must be non-nil and will be used for request cancellation. If
4577// the context is nil a panic will occur. In the future the SDK may create
4578// sub-contexts for http.Requests. See https://golang.org/pkg/context/
4579// for more information on using Contexts.
4580func (c *Pinpoint) UpdateAdmChannelWithContext(ctx aws.Context, input *UpdateAdmChannelInput, opts ...request.Option) (*UpdateAdmChannelOutput, error) {
4581	req, out := c.UpdateAdmChannelRequest(input)
4582	req.SetContext(ctx)
4583	req.ApplyOptions(opts...)
4584	return out, req.Send()
4585}
4586
4587const opUpdateApnsChannel = "UpdateApnsChannel"
4588
4589// UpdateApnsChannelRequest generates a "aws/request.Request" representing the
4590// client's request for the UpdateApnsChannel operation. The "output" return
4591// value will be populated with the request's response once the request completes
4592// successfuly.
4593//
4594// Use "Send" method on the returned Request to send the API call to the service.
4595// the "output" return value is not valid until after Send returns without error.
4596//
4597// See UpdateApnsChannel for more information on using the UpdateApnsChannel
4598// API call, and error handling.
4599//
4600// This method is useful when you want to inject custom logic or configuration
4601// into the SDK's request lifecycle. Such as custom headers, or retry logic.
4602//
4603//
4604//    // Example sending a request using the UpdateApnsChannelRequest method.
4605//    req, resp := client.UpdateApnsChannelRequest(params)
4606//
4607//    err := req.Send()
4608//    if err == nil { // resp is now filled
4609//        fmt.Println(resp)
4610//    }
4611//
4612// See also, https://docs.aws.amazon.com/goto/WebAPI/pinpoint-2016-12-01/UpdateApnsChannel
4613func (c *Pinpoint) UpdateApnsChannelRequest(input *UpdateApnsChannelInput) (req *request.Request, output *UpdateApnsChannelOutput) {
4614	op := &request.Operation{
4615		Name:       opUpdateApnsChannel,
4616		HTTPMethod: "PUT",
4617		HTTPPath:   "/v1/apps/{application-id}/channels/apns",
4618	}
4619
4620	if input == nil {
4621		input = &UpdateApnsChannelInput{}
4622	}
4623
4624	output = &UpdateApnsChannelOutput{}
4625	req = c.newRequest(op, input, output)
4626	return
4627}
4628
4629// UpdateApnsChannel API operation for Amazon Pinpoint.
4630//
4631// Use to update the APNs channel for an app.
4632//
4633// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
4634// with awserr.Error's Code and Message methods to get detailed information about
4635// the error.
4636//
4637// See the AWS API reference guide for Amazon Pinpoint's
4638// API operation UpdateApnsChannel for usage and error information.
4639//
4640// Returned Error Codes:
4641//   * ErrCodeBadRequestException "BadRequestException"
4642//
4643//   * ErrCodeInternalServerErrorException "InternalServerErrorException"
4644//
4645//   * ErrCodeForbiddenException "ForbiddenException"
4646//
4647//   * ErrCodeNotFoundException "NotFoundException"
4648//
4649//   * ErrCodeMethodNotAllowedException "MethodNotAllowedException"
4650//
4651//   * ErrCodeTooManyRequestsException "TooManyRequestsException"
4652//
4653// See also, https://docs.aws.amazon.com/goto/WebAPI/pinpoint-2016-12-01/UpdateApnsChannel
4654func (c *Pinpoint) UpdateApnsChannel(input *UpdateApnsChannelInput) (*UpdateApnsChannelOutput, error) {
4655	req, out := c.UpdateApnsChannelRequest(input)
4656	return out, req.Send()
4657}
4658
4659// UpdateApnsChannelWithContext is the same as UpdateApnsChannel with the addition of
4660// the ability to pass a context and additional request options.
4661//
4662// See UpdateApnsChannel for details on how to use this API operation.
4663//
4664// The context must be non-nil and will be used for request cancellation. If
4665// the context is nil a panic will occur. In the future the SDK may create
4666// sub-contexts for http.Requests. See https://golang.org/pkg/context/
4667// for more information on using Contexts.
4668func (c *Pinpoint) UpdateApnsChannelWithContext(ctx aws.Context, input *UpdateApnsChannelInput, opts ...request.Option) (*UpdateApnsChannelOutput, error) {
4669	req, out := c.UpdateApnsChannelRequest(input)
4670	req.SetContext(ctx)
4671	req.ApplyOptions(opts...)
4672	return out, req.Send()
4673}
4674
4675const opUpdateApnsSandboxChannel = "UpdateApnsSandboxChannel"
4676
4677// UpdateApnsSandboxChannelRequest generates a "aws/request.Request" representing the
4678// client's request for the UpdateApnsSandboxChannel operation. The "output" return
4679// value will be populated with the request's response once the request completes
4680// successfuly.
4681//
4682// Use "Send" method on the returned Request to send the API call to the service.
4683// the "output" return value is not valid until after Send returns without error.
4684//
4685// See UpdateApnsSandboxChannel for more information on using the UpdateApnsSandboxChannel
4686// API call, and error handling.
4687//
4688// This method is useful when you want to inject custom logic or configuration
4689// into the SDK's request lifecycle. Such as custom headers, or retry logic.
4690//
4691//
4692//    // Example sending a request using the UpdateApnsSandboxChannelRequest method.
4693//    req, resp := client.UpdateApnsSandboxChannelRequest(params)
4694//
4695//    err := req.Send()
4696//    if err == nil { // resp is now filled
4697//        fmt.Println(resp)
4698//    }
4699//
4700// See also, https://docs.aws.amazon.com/goto/WebAPI/pinpoint-2016-12-01/UpdateApnsSandboxChannel
4701func (c *Pinpoint) UpdateApnsSandboxChannelRequest(input *UpdateApnsSandboxChannelInput) (req *request.Request, output *UpdateApnsSandboxChannelOutput) {
4702	op := &request.Operation{
4703		Name:       opUpdateApnsSandboxChannel,
4704		HTTPMethod: "PUT",
4705		HTTPPath:   "/v1/apps/{application-id}/channels/apns_sandbox",
4706	}
4707
4708	if input == nil {
4709		input = &UpdateApnsSandboxChannelInput{}
4710	}
4711
4712	output = &UpdateApnsSandboxChannelOutput{}
4713	req = c.newRequest(op, input, output)
4714	return
4715}
4716
4717// UpdateApnsSandboxChannel API operation for Amazon Pinpoint.
4718//
4719// Update an APNS sandbox channel
4720//
4721// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
4722// with awserr.Error's Code and Message methods to get detailed information about
4723// the error.
4724//
4725// See the AWS API reference guide for Amazon Pinpoint's
4726// API operation UpdateApnsSandboxChannel for usage and error information.
4727//
4728// Returned Error Codes:
4729//   * ErrCodeBadRequestException "BadRequestException"
4730//
4731//   * ErrCodeInternalServerErrorException "InternalServerErrorException"
4732//
4733//   * ErrCodeForbiddenException "ForbiddenException"
4734//
4735//   * ErrCodeNotFoundException "NotFoundException"
4736//
4737//   * ErrCodeMethodNotAllowedException "MethodNotAllowedException"
4738//
4739//   * ErrCodeTooManyRequestsException "TooManyRequestsException"
4740//
4741// See also, https://docs.aws.amazon.com/goto/WebAPI/pinpoint-2016-12-01/UpdateApnsSandboxChannel
4742func (c *Pinpoint) UpdateApnsSandboxChannel(input *UpdateApnsSandboxChannelInput) (*UpdateApnsSandboxChannelOutput, error) {
4743	req, out := c.UpdateApnsSandboxChannelRequest(input)
4744	return out, req.Send()
4745}
4746
4747// UpdateApnsSandboxChannelWithContext is the same as UpdateApnsSandboxChannel with the addition of
4748// the ability to pass a context and additional request options.
4749//
4750// See UpdateApnsSandboxChannel for details on how to use this API operation.
4751//
4752// The context must be non-nil and will be used for request cancellation. If
4753// the context is nil a panic will occur. In the future the SDK may create
4754// sub-contexts for http.Requests. See https://golang.org/pkg/context/
4755// for more information on using Contexts.
4756func (c *Pinpoint) UpdateApnsSandboxChannelWithContext(ctx aws.Context, input *UpdateApnsSandboxChannelInput, opts ...request.Option) (*UpdateApnsSandboxChannelOutput, error) {
4757	req, out := c.UpdateApnsSandboxChannelRequest(input)
4758	req.SetContext(ctx)
4759	req.ApplyOptions(opts...)
4760	return out, req.Send()
4761}
4762
4763const opUpdateApnsVoipChannel = "UpdateApnsVoipChannel"
4764
4765// UpdateApnsVoipChannelRequest generates a "aws/request.Request" representing the
4766// client's request for the UpdateApnsVoipChannel operation. The "output" return
4767// value will be populated with the request's response once the request completes
4768// successfuly.
4769//
4770// Use "Send" method on the returned Request to send the API call to the service.
4771// the "output" return value is not valid until after Send returns without error.
4772//
4773// See UpdateApnsVoipChannel for more information on using the UpdateApnsVoipChannel
4774// API call, and error handling.
4775//
4776// This method is useful when you want to inject custom logic or configuration
4777// into the SDK's request lifecycle. Such as custom headers, or retry logic.
4778//
4779//
4780//    // Example sending a request using the UpdateApnsVoipChannelRequest method.
4781//    req, resp := client.UpdateApnsVoipChannelRequest(params)
4782//
4783//    err := req.Send()
4784//    if err == nil { // resp is now filled
4785//        fmt.Println(resp)
4786//    }
4787//
4788// See also, https://docs.aws.amazon.com/goto/WebAPI/pinpoint-2016-12-01/UpdateApnsVoipChannel
4789func (c *Pinpoint) UpdateApnsVoipChannelRequest(input *UpdateApnsVoipChannelInput) (req *request.Request, output *UpdateApnsVoipChannelOutput) {
4790	op := &request.Operation{
4791		Name:       opUpdateApnsVoipChannel,
4792		HTTPMethod: "PUT",
4793		HTTPPath:   "/v1/apps/{application-id}/channels/apns_voip",
4794	}
4795
4796	if input == nil {
4797		input = &UpdateApnsVoipChannelInput{}
4798	}
4799
4800	output = &UpdateApnsVoipChannelOutput{}
4801	req = c.newRequest(op, input, output)
4802	return
4803}
4804
4805// UpdateApnsVoipChannel API operation for Amazon Pinpoint.
4806//
4807// Update an APNS VoIP channel
4808//
4809// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
4810// with awserr.Error's Code and Message methods to get detailed information about
4811// the error.
4812//
4813// See the AWS API reference guide for Amazon Pinpoint's
4814// API operation UpdateApnsVoipChannel for usage and error information.
4815//
4816// Returned Error Codes:
4817//   * ErrCodeBadRequestException "BadRequestException"
4818//
4819//   * ErrCodeInternalServerErrorException "InternalServerErrorException"
4820//
4821//   * ErrCodeForbiddenException "ForbiddenException"
4822//
4823//   * ErrCodeNotFoundException "NotFoundException"
4824//
4825//   * ErrCodeMethodNotAllowedException "MethodNotAllowedException"
4826//
4827//   * ErrCodeTooManyRequestsException "TooManyRequestsException"
4828//
4829// See also, https://docs.aws.amazon.com/goto/WebAPI/pinpoint-2016-12-01/UpdateApnsVoipChannel
4830func (c *Pinpoint) UpdateApnsVoipChannel(input *UpdateApnsVoipChannelInput) (*UpdateApnsVoipChannelOutput, error) {
4831	req, out := c.UpdateApnsVoipChannelRequest(input)
4832	return out, req.Send()
4833}
4834
4835// UpdateApnsVoipChannelWithContext is the same as UpdateApnsVoipChannel with the addition of
4836// the ability to pass a context and additional request options.
4837//
4838// See UpdateApnsVoipChannel for details on how to use this API operation.
4839//
4840// The context must be non-nil and will be used for request cancellation. If
4841// the context is nil a panic will occur. In the future the SDK may create
4842// sub-contexts for http.Requests. See https://golang.org/pkg/context/
4843// for more information on using Contexts.
4844func (c *Pinpoint) UpdateApnsVoipChannelWithContext(ctx aws.Context, input *UpdateApnsVoipChannelInput, opts ...request.Option) (*UpdateApnsVoipChannelOutput, error) {
4845	req, out := c.UpdateApnsVoipChannelRequest(input)
4846	req.SetContext(ctx)
4847	req.ApplyOptions(opts...)
4848	return out, req.Send()
4849}
4850
4851const opUpdateApnsVoipSandboxChannel = "UpdateApnsVoipSandboxChannel"
4852
4853// UpdateApnsVoipSandboxChannelRequest generates a "aws/request.Request" representing the
4854// client's request for the UpdateApnsVoipSandboxChannel operation. The "output" return
4855// value will be populated with the request's response once the request completes
4856// successfuly.
4857//
4858// Use "Send" method on the returned Request to send the API call to the service.
4859// the "output" return value is not valid until after Send returns without error.
4860//
4861// See UpdateApnsVoipSandboxChannel for more information on using the UpdateApnsVoipSandboxChannel
4862// API call, and error handling.
4863//
4864// This method is useful when you want to inject custom logic or configuration
4865// into the SDK's request lifecycle. Such as custom headers, or retry logic.
4866//
4867//
4868//    // Example sending a request using the UpdateApnsVoipSandboxChannelRequest method.
4869//    req, resp := client.UpdateApnsVoipSandboxChannelRequest(params)
4870//
4871//    err := req.Send()
4872//    if err == nil { // resp is now filled
4873//        fmt.Println(resp)
4874//    }
4875//
4876// See also, https://docs.aws.amazon.com/goto/WebAPI/pinpoint-2016-12-01/UpdateApnsVoipSandboxChannel
4877func (c *Pinpoint) UpdateApnsVoipSandboxChannelRequest(input *UpdateApnsVoipSandboxChannelInput) (req *request.Request, output *UpdateApnsVoipSandboxChannelOutput) {
4878	op := &request.Operation{
4879		Name:       opUpdateApnsVoipSandboxChannel,
4880		HTTPMethod: "PUT",
4881		HTTPPath:   "/v1/apps/{application-id}/channels/apns_voip_sandbox",
4882	}
4883
4884	if input == nil {
4885		input = &UpdateApnsVoipSandboxChannelInput{}
4886	}
4887
4888	output = &UpdateApnsVoipSandboxChannelOutput{}
4889	req = c.newRequest(op, input, output)
4890	return
4891}
4892
4893// UpdateApnsVoipSandboxChannel API operation for Amazon Pinpoint.
4894//
4895// Update an APNS VoIP sandbox channel
4896//
4897// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
4898// with awserr.Error's Code and Message methods to get detailed information about
4899// the error.
4900//
4901// See the AWS API reference guide for Amazon Pinpoint's
4902// API operation UpdateApnsVoipSandboxChannel for usage and error information.
4903//
4904// Returned Error Codes:
4905//   * ErrCodeBadRequestException "BadRequestException"
4906//
4907//   * ErrCodeInternalServerErrorException "InternalServerErrorException"
4908//
4909//   * ErrCodeForbiddenException "ForbiddenException"
4910//
4911//   * ErrCodeNotFoundException "NotFoundException"
4912//
4913//   * ErrCodeMethodNotAllowedException "MethodNotAllowedException"
4914//
4915//   * ErrCodeTooManyRequestsException "TooManyRequestsException"
4916//
4917// See also, https://docs.aws.amazon.com/goto/WebAPI/pinpoint-2016-12-01/UpdateApnsVoipSandboxChannel
4918func (c *Pinpoint) UpdateApnsVoipSandboxChannel(input *UpdateApnsVoipSandboxChannelInput) (*UpdateApnsVoipSandboxChannelOutput, error) {
4919	req, out := c.UpdateApnsVoipSandboxChannelRequest(input)
4920	return out, req.Send()
4921}
4922
4923// UpdateApnsVoipSandboxChannelWithContext is the same as UpdateApnsVoipSandboxChannel with the addition of
4924// the ability to pass a context and additional request options.
4925//
4926// See UpdateApnsVoipSandboxChannel for details on how to use this API operation.
4927//
4928// The context must be non-nil and will be used for request cancellation. If
4929// the context is nil a panic will occur. In the future the SDK may create
4930// sub-contexts for http.Requests. See https://golang.org/pkg/context/
4931// for more information on using Contexts.
4932func (c *Pinpoint) UpdateApnsVoipSandboxChannelWithContext(ctx aws.Context, input *UpdateApnsVoipSandboxChannelInput, opts ...request.Option) (*UpdateApnsVoipSandboxChannelOutput, error) {
4933	req, out := c.UpdateApnsVoipSandboxChannelRequest(input)
4934	req.SetContext(ctx)
4935	req.ApplyOptions(opts...)
4936	return out, req.Send()
4937}
4938
4939const opUpdateApplicationSettings = "UpdateApplicationSettings"
4940
4941// UpdateApplicationSettingsRequest generates a "aws/request.Request" representing the
4942// client's request for the UpdateApplicationSettings operation. The "output" return
4943// value will be populated with the request's response once the request completes
4944// successfuly.
4945//
4946// Use "Send" method on the returned Request to send the API call to the service.
4947// the "output" return value is not valid until after Send returns without error.
4948//
4949// See UpdateApplicationSettings for more information on using the UpdateApplicationSettings
4950// API call, and error handling.
4951//
4952// This method is useful when you want to inject custom logic or configuration
4953// into the SDK's request lifecycle. Such as custom headers, or retry logic.
4954//
4955//
4956//    // Example sending a request using the UpdateApplicationSettingsRequest method.
4957//    req, resp := client.UpdateApplicationSettingsRequest(params)
4958//
4959//    err := req.Send()
4960//    if err == nil { // resp is now filled
4961//        fmt.Println(resp)
4962//    }
4963//
4964// See also, https://docs.aws.amazon.com/goto/WebAPI/pinpoint-2016-12-01/UpdateApplicationSettings
4965func (c *Pinpoint) UpdateApplicationSettingsRequest(input *UpdateApplicationSettingsInput) (req *request.Request, output *UpdateApplicationSettingsOutput) {
4966	op := &request.Operation{
4967		Name:       opUpdateApplicationSettings,
4968		HTTPMethod: "PUT",
4969		HTTPPath:   "/v1/apps/{application-id}/settings",
4970	}
4971
4972	if input == nil {
4973		input = &UpdateApplicationSettingsInput{}
4974	}
4975
4976	output = &UpdateApplicationSettingsOutput{}
4977	req = c.newRequest(op, input, output)
4978	return
4979}
4980
4981// UpdateApplicationSettings API operation for Amazon Pinpoint.
4982//
4983// Used to update the settings for an app.
4984//
4985// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
4986// with awserr.Error's Code and Message methods to get detailed information about
4987// the error.
4988//
4989// See the AWS API reference guide for Amazon Pinpoint's
4990// API operation UpdateApplicationSettings for usage and error information.
4991//
4992// Returned Error Codes:
4993//   * ErrCodeBadRequestException "BadRequestException"
4994//
4995//   * ErrCodeInternalServerErrorException "InternalServerErrorException"
4996//
4997//   * ErrCodeForbiddenException "ForbiddenException"
4998//
4999//   * ErrCodeNotFoundException "NotFoundException"
5000//
5001//   * ErrCodeMethodNotAllowedException "MethodNotAllowedException"
5002//
5003//   * ErrCodeTooManyRequestsException "TooManyRequestsException"
5004//
5005// See also, https://docs.aws.amazon.com/goto/WebAPI/pinpoint-2016-12-01/UpdateApplicationSettings
5006func (c *Pinpoint) UpdateApplicationSettings(input *UpdateApplicationSettingsInput) (*UpdateApplicationSettingsOutput, error) {
5007	req, out := c.UpdateApplicationSettingsRequest(input)
5008	return out, req.Send()
5009}
5010
5011// UpdateApplicationSettingsWithContext is the same as UpdateApplicationSettings with the addition of
5012// the ability to pass a context and additional request options.
5013//
5014// See UpdateApplicationSettings for details on how to use this API operation.
5015//
5016// The context must be non-nil and will be used for request cancellation. If
5017// the context is nil a panic will occur. In the future the SDK may create
5018// sub-contexts for http.Requests. See https://golang.org/pkg/context/
5019// for more information on using Contexts.
5020func (c *Pinpoint) UpdateApplicationSettingsWithContext(ctx aws.Context, input *UpdateApplicationSettingsInput, opts ...request.Option) (*UpdateApplicationSettingsOutput, error) {
5021	req, out := c.UpdateApplicationSettingsRequest(input)
5022	req.SetContext(ctx)
5023	req.ApplyOptions(opts...)
5024	return out, req.Send()
5025}
5026
5027const opUpdateBaiduChannel = "UpdateBaiduChannel"
5028
5029// UpdateBaiduChannelRequest generates a "aws/request.Request" representing the
5030// client's request for the UpdateBaiduChannel operation. The "output" return
5031// value will be populated with the request's response once the request completes
5032// successfuly.
5033//
5034// Use "Send" method on the returned Request to send the API call to the service.
5035// the "output" return value is not valid until after Send returns without error.
5036//
5037// See UpdateBaiduChannel for more information on using the UpdateBaiduChannel
5038// API call, and error handling.
5039//
5040// This method is useful when you want to inject custom logic or configuration
5041// into the SDK's request lifecycle. Such as custom headers, or retry logic.
5042//
5043//
5044//    // Example sending a request using the UpdateBaiduChannelRequest method.
5045//    req, resp := client.UpdateBaiduChannelRequest(params)
5046//
5047//    err := req.Send()
5048//    if err == nil { // resp is now filled
5049//        fmt.Println(resp)
5050//    }
5051//
5052// See also, https://docs.aws.amazon.com/goto/WebAPI/pinpoint-2016-12-01/UpdateBaiduChannel
5053func (c *Pinpoint) UpdateBaiduChannelRequest(input *UpdateBaiduChannelInput) (req *request.Request, output *UpdateBaiduChannelOutput) {
5054	op := &request.Operation{
5055		Name:       opUpdateBaiduChannel,
5056		HTTPMethod: "PUT",
5057		HTTPPath:   "/v1/apps/{application-id}/channels/baidu",
5058	}
5059
5060	if input == nil {
5061		input = &UpdateBaiduChannelInput{}
5062	}
5063
5064	output = &UpdateBaiduChannelOutput{}
5065	req = c.newRequest(op, input, output)
5066	return
5067}
5068
5069// UpdateBaiduChannel API operation for Amazon Pinpoint.
5070//
5071// Update a BAIDU GCM channel
5072//
5073// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
5074// with awserr.Error's Code and Message methods to get detailed information about
5075// the error.
5076//
5077// See the AWS API reference guide for Amazon Pinpoint's
5078// API operation UpdateBaiduChannel for usage and error information.
5079//
5080// Returned Error Codes:
5081//   * ErrCodeBadRequestException "BadRequestException"
5082//
5083//   * ErrCodeInternalServerErrorException "InternalServerErrorException"
5084//
5085//   * ErrCodeForbiddenException "ForbiddenException"
5086//
5087//   * ErrCodeNotFoundException "NotFoundException"
5088//
5089//   * ErrCodeMethodNotAllowedException "MethodNotAllowedException"
5090//
5091//   * ErrCodeTooManyRequestsException "TooManyRequestsException"
5092//
5093// See also, https://docs.aws.amazon.com/goto/WebAPI/pinpoint-2016-12-01/UpdateBaiduChannel
5094func (c *Pinpoint) UpdateBaiduChannel(input *UpdateBaiduChannelInput) (*UpdateBaiduChannelOutput, error) {
5095	req, out := c.UpdateBaiduChannelRequest(input)
5096	return out, req.Send()
5097}
5098
5099// UpdateBaiduChannelWithContext is the same as UpdateBaiduChannel with the addition of
5100// the ability to pass a context and additional request options.
5101//
5102// See UpdateBaiduChannel for details on how to use this API operation.
5103//
5104// The context must be non-nil and will be used for request cancellation. If
5105// the context is nil a panic will occur. In the future the SDK may create
5106// sub-contexts for http.Requests. See https://golang.org/pkg/context/
5107// for more information on using Contexts.
5108func (c *Pinpoint) UpdateBaiduChannelWithContext(ctx aws.Context, input *UpdateBaiduChannelInput, opts ...request.Option) (*UpdateBaiduChannelOutput, error) {
5109	req, out := c.UpdateBaiduChannelRequest(input)
5110	req.SetContext(ctx)
5111	req.ApplyOptions(opts...)
5112	return out, req.Send()
5113}
5114
5115const opUpdateCampaign = "UpdateCampaign"
5116
5117// UpdateCampaignRequest generates a "aws/request.Request" representing the
5118// client's request for the UpdateCampaign operation. The "output" return
5119// value will be populated with the request's response once the request completes
5120// successfuly.
5121//
5122// Use "Send" method on the returned Request to send the API call to the service.
5123// the "output" return value is not valid until after Send returns without error.
5124//
5125// See UpdateCampaign for more information on using the UpdateCampaign
5126// API call, and error handling.
5127//
5128// This method is useful when you want to inject custom logic or configuration
5129// into the SDK's request lifecycle. Such as custom headers, or retry logic.
5130//
5131//
5132//    // Example sending a request using the UpdateCampaignRequest method.
5133//    req, resp := client.UpdateCampaignRequest(params)
5134//
5135//    err := req.Send()
5136//    if err == nil { // resp is now filled
5137//        fmt.Println(resp)
5138//    }
5139//
5140// See also, https://docs.aws.amazon.com/goto/WebAPI/pinpoint-2016-12-01/UpdateCampaign
5141func (c *Pinpoint) UpdateCampaignRequest(input *UpdateCampaignInput) (req *request.Request, output *UpdateCampaignOutput) {
5142	op := &request.Operation{
5143		Name:       opUpdateCampaign,
5144		HTTPMethod: "PUT",
5145		HTTPPath:   "/v1/apps/{application-id}/campaigns/{campaign-id}",
5146	}
5147
5148	if input == nil {
5149		input = &UpdateCampaignInput{}
5150	}
5151
5152	output = &UpdateCampaignOutput{}
5153	req = c.newRequest(op, input, output)
5154	return
5155}
5156
5157// UpdateCampaign API operation for Amazon Pinpoint.
5158//
5159// Use to update a campaign.
5160//
5161// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
5162// with awserr.Error's Code and Message methods to get detailed information about
5163// the error.
5164//
5165// See the AWS API reference guide for Amazon Pinpoint's
5166// API operation UpdateCampaign for usage and error information.
5167//
5168// Returned Error Codes:
5169//   * ErrCodeBadRequestException "BadRequestException"
5170//
5171//   * ErrCodeInternalServerErrorException "InternalServerErrorException"
5172//
5173//   * ErrCodeForbiddenException "ForbiddenException"
5174//
5175//   * ErrCodeNotFoundException "NotFoundException"
5176//
5177//   * ErrCodeMethodNotAllowedException "MethodNotAllowedException"
5178//
5179//   * ErrCodeTooManyRequestsException "TooManyRequestsException"
5180//
5181// See also, https://docs.aws.amazon.com/goto/WebAPI/pinpoint-2016-12-01/UpdateCampaign
5182func (c *Pinpoint) UpdateCampaign(input *UpdateCampaignInput) (*UpdateCampaignOutput, error) {
5183	req, out := c.UpdateCampaignRequest(input)
5184	return out, req.Send()
5185}
5186
5187// UpdateCampaignWithContext is the same as UpdateCampaign with the addition of
5188// the ability to pass a context and additional request options.
5189//
5190// See UpdateCampaign for details on how to use this API operation.
5191//
5192// The context must be non-nil and will be used for request cancellation. If
5193// the context is nil a panic will occur. In the future the SDK may create
5194// sub-contexts for http.Requests. See https://golang.org/pkg/context/
5195// for more information on using Contexts.
5196func (c *Pinpoint) UpdateCampaignWithContext(ctx aws.Context, input *UpdateCampaignInput, opts ...request.Option) (*UpdateCampaignOutput, error) {
5197	req, out := c.UpdateCampaignRequest(input)
5198	req.SetContext(ctx)
5199	req.ApplyOptions(opts...)
5200	return out, req.Send()
5201}
5202
5203const opUpdateEmailChannel = "UpdateEmailChannel"
5204
5205// UpdateEmailChannelRequest generates a "aws/request.Request" representing the
5206// client's request for the UpdateEmailChannel operation. The "output" return
5207// value will be populated with the request's response once the request completes
5208// successfuly.
5209//
5210// Use "Send" method on the returned Request to send the API call to the service.
5211// the "output" return value is not valid until after Send returns without error.
5212//
5213// See UpdateEmailChannel for more information on using the UpdateEmailChannel
5214// API call, and error handling.
5215//
5216// This method is useful when you want to inject custom logic or configuration
5217// into the SDK's request lifecycle. Such as custom headers, or retry logic.
5218//
5219//
5220//    // Example sending a request using the UpdateEmailChannelRequest method.
5221//    req, resp := client.UpdateEmailChannelRequest(params)
5222//
5223//    err := req.Send()
5224//    if err == nil { // resp is now filled
5225//        fmt.Println(resp)
5226//    }
5227//
5228// See also, https://docs.aws.amazon.com/goto/WebAPI/pinpoint-2016-12-01/UpdateEmailChannel
5229func (c *Pinpoint) UpdateEmailChannelRequest(input *UpdateEmailChannelInput) (req *request.Request, output *UpdateEmailChannelOutput) {
5230	op := &request.Operation{
5231		Name:       opUpdateEmailChannel,
5232		HTTPMethod: "PUT",
5233		HTTPPath:   "/v1/apps/{application-id}/channels/email",
5234	}
5235
5236	if input == nil {
5237		input = &UpdateEmailChannelInput{}
5238	}
5239
5240	output = &UpdateEmailChannelOutput{}
5241	req = c.newRequest(op, input, output)
5242	return
5243}
5244
5245// UpdateEmailChannel API operation for Amazon Pinpoint.
5246//
5247// Update an email channel
5248//
5249// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
5250// with awserr.Error's Code and Message methods to get detailed information about
5251// the error.
5252//
5253// See the AWS API reference guide for Amazon Pinpoint's
5254// API operation UpdateEmailChannel for usage and error information.
5255//
5256// Returned Error Codes:
5257//   * ErrCodeBadRequestException "BadRequestException"
5258//
5259//   * ErrCodeInternalServerErrorException "InternalServerErrorException"
5260//
5261//   * ErrCodeForbiddenException "ForbiddenException"
5262//
5263//   * ErrCodeNotFoundException "NotFoundException"
5264//
5265//   * ErrCodeMethodNotAllowedException "MethodNotAllowedException"
5266//
5267//   * ErrCodeTooManyRequestsException "TooManyRequestsException"
5268//
5269// See also, https://docs.aws.amazon.com/goto/WebAPI/pinpoint-2016-12-01/UpdateEmailChannel
5270func (c *Pinpoint) UpdateEmailChannel(input *UpdateEmailChannelInput) (*UpdateEmailChannelOutput, error) {
5271	req, out := c.UpdateEmailChannelRequest(input)
5272	return out, req.Send()
5273}
5274
5275// UpdateEmailChannelWithContext is the same as UpdateEmailChannel with the addition of
5276// the ability to pass a context and additional request options.
5277//
5278// See UpdateEmailChannel for details on how to use this API operation.
5279//
5280// The context must be non-nil and will be used for request cancellation. If
5281// the context is nil a panic will occur. In the future the SDK may create
5282// sub-contexts for http.Requests. See https://golang.org/pkg/context/
5283// for more information on using Contexts.
5284func (c *Pinpoint) UpdateEmailChannelWithContext(ctx aws.Context, input *UpdateEmailChannelInput, opts ...request.Option) (*UpdateEmailChannelOutput, error) {
5285	req, out := c.UpdateEmailChannelRequest(input)
5286	req.SetContext(ctx)
5287	req.ApplyOptions(opts...)
5288	return out, req.Send()
5289}
5290
5291const opUpdateEndpoint = "UpdateEndpoint"
5292
5293// UpdateEndpointRequest generates a "aws/request.Request" representing the
5294// client's request for the UpdateEndpoint operation. The "output" return
5295// value will be populated with the request's response once the request completes
5296// successfuly.
5297//
5298// Use "Send" method on the returned Request to send the API call to the service.
5299// the "output" return value is not valid until after Send returns without error.
5300//
5301// See UpdateEndpoint for more information on using the UpdateEndpoint
5302// API call, and error handling.
5303//
5304// This method is useful when you want to inject custom logic or configuration
5305// into the SDK's request lifecycle. Such as custom headers, or retry logic.
5306//
5307//
5308//    // Example sending a request using the UpdateEndpointRequest method.
5309//    req, resp := client.UpdateEndpointRequest(params)
5310//
5311//    err := req.Send()
5312//    if err == nil { // resp is now filled
5313//        fmt.Println(resp)
5314//    }
5315//
5316// See also, https://docs.aws.amazon.com/goto/WebAPI/pinpoint-2016-12-01/UpdateEndpoint
5317func (c *Pinpoint) UpdateEndpointRequest(input *UpdateEndpointInput) (req *request.Request, output *UpdateEndpointOutput) {
5318	op := &request.Operation{
5319		Name:       opUpdateEndpoint,
5320		HTTPMethod: "PUT",
5321		HTTPPath:   "/v1/apps/{application-id}/endpoints/{endpoint-id}",
5322	}
5323
5324	if input == nil {
5325		input = &UpdateEndpointInput{}
5326	}
5327
5328	output = &UpdateEndpointOutput{}
5329	req = c.newRequest(op, input, output)
5330	return
5331}
5332
5333// UpdateEndpoint API operation for Amazon Pinpoint.
5334//
5335// Use to update an endpoint.
5336//
5337// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
5338// with awserr.Error's Code and Message methods to get detailed information about
5339// the error.
5340//
5341// See the AWS API reference guide for Amazon Pinpoint's
5342// API operation UpdateEndpoint for usage and error information.
5343//
5344// Returned Error Codes:
5345//   * ErrCodeBadRequestException "BadRequestException"
5346//
5347//   * ErrCodeInternalServerErrorException "InternalServerErrorException"
5348//
5349//   * ErrCodeForbiddenException "ForbiddenException"
5350//
5351//   * ErrCodeNotFoundException "NotFoundException"
5352//
5353//   * ErrCodeMethodNotAllowedException "MethodNotAllowedException"
5354//
5355//   * ErrCodeTooManyRequestsException "TooManyRequestsException"
5356//
5357// See also, https://docs.aws.amazon.com/goto/WebAPI/pinpoint-2016-12-01/UpdateEndpoint
5358func (c *Pinpoint) UpdateEndpoint(input *UpdateEndpointInput) (*UpdateEndpointOutput, error) {
5359	req, out := c.UpdateEndpointRequest(input)
5360	return out, req.Send()
5361}
5362
5363// UpdateEndpointWithContext is the same as UpdateEndpoint with the addition of
5364// the ability to pass a context and additional request options.
5365//
5366// See UpdateEndpoint for details on how to use this API operation.
5367//
5368// The context must be non-nil and will be used for request cancellation. If
5369// the context is nil a panic will occur. In the future the SDK may create
5370// sub-contexts for http.Requests. See https://golang.org/pkg/context/
5371// for more information on using Contexts.
5372func (c *Pinpoint) UpdateEndpointWithContext(ctx aws.Context, input *UpdateEndpointInput, opts ...request.Option) (*UpdateEndpointOutput, error) {
5373	req, out := c.UpdateEndpointRequest(input)
5374	req.SetContext(ctx)
5375	req.ApplyOptions(opts...)
5376	return out, req.Send()
5377}
5378
5379const opUpdateEndpointsBatch = "UpdateEndpointsBatch"
5380
5381// UpdateEndpointsBatchRequest generates a "aws/request.Request" representing the
5382// client's request for the UpdateEndpointsBatch operation. The "output" return
5383// value will be populated with the request's response once the request completes
5384// successfuly.
5385//
5386// Use "Send" method on the returned Request to send the API call to the service.
5387// the "output" return value is not valid until after Send returns without error.
5388//
5389// See UpdateEndpointsBatch for more information on using the UpdateEndpointsBatch
5390// API call, and error handling.
5391//
5392// This method is useful when you want to inject custom logic or configuration
5393// into the SDK's request lifecycle. Such as custom headers, or retry logic.
5394//
5395//
5396//    // Example sending a request using the UpdateEndpointsBatchRequest method.
5397//    req, resp := client.UpdateEndpointsBatchRequest(params)
5398//
5399//    err := req.Send()
5400//    if err == nil { // resp is now filled
5401//        fmt.Println(resp)
5402//    }
5403//
5404// See also, https://docs.aws.amazon.com/goto/WebAPI/pinpoint-2016-12-01/UpdateEndpointsBatch
5405func (c *Pinpoint) UpdateEndpointsBatchRequest(input *UpdateEndpointsBatchInput) (req *request.Request, output *UpdateEndpointsBatchOutput) {
5406	op := &request.Operation{
5407		Name:       opUpdateEndpointsBatch,
5408		HTTPMethod: "PUT",
5409		HTTPPath:   "/v1/apps/{application-id}/endpoints",
5410	}
5411
5412	if input == nil {
5413		input = &UpdateEndpointsBatchInput{}
5414	}
5415
5416	output = &UpdateEndpointsBatchOutput{}
5417	req = c.newRequest(op, input, output)
5418	return
5419}
5420
5421// UpdateEndpointsBatch API operation for Amazon Pinpoint.
5422//
5423// Use to update a batch of endpoints.
5424//
5425// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
5426// with awserr.Error's Code and Message methods to get detailed information about
5427// the error.
5428//
5429// See the AWS API reference guide for Amazon Pinpoint's
5430// API operation UpdateEndpointsBatch for usage and error information.
5431//
5432// Returned Error Codes:
5433//   * ErrCodeBadRequestException "BadRequestException"
5434//
5435//   * ErrCodeInternalServerErrorException "InternalServerErrorException"
5436//
5437//   * ErrCodeForbiddenException "ForbiddenException"
5438//
5439//   * ErrCodeNotFoundException "NotFoundException"
5440//
5441//   * ErrCodeMethodNotAllowedException "MethodNotAllowedException"
5442//
5443//   * ErrCodeTooManyRequestsException "TooManyRequestsException"
5444//
5445// See also, https://docs.aws.amazon.com/goto/WebAPI/pinpoint-2016-12-01/UpdateEndpointsBatch
5446func (c *Pinpoint) UpdateEndpointsBatch(input *UpdateEndpointsBatchInput) (*UpdateEndpointsBatchOutput, error) {
5447	req, out := c.UpdateEndpointsBatchRequest(input)
5448	return out, req.Send()
5449}
5450
5451// UpdateEndpointsBatchWithContext is the same as UpdateEndpointsBatch with the addition of
5452// the ability to pass a context and additional request options.
5453//
5454// See UpdateEndpointsBatch for details on how to use this API operation.
5455//
5456// The context must be non-nil and will be used for request cancellation. If
5457// the context is nil a panic will occur. In the future the SDK may create
5458// sub-contexts for http.Requests. See https://golang.org/pkg/context/
5459// for more information on using Contexts.
5460func (c *Pinpoint) UpdateEndpointsBatchWithContext(ctx aws.Context, input *UpdateEndpointsBatchInput, opts ...request.Option) (*UpdateEndpointsBatchOutput, error) {
5461	req, out := c.UpdateEndpointsBatchRequest(input)
5462	req.SetContext(ctx)
5463	req.ApplyOptions(opts...)
5464	return out, req.Send()
5465}
5466
5467const opUpdateGcmChannel = "UpdateGcmChannel"
5468
5469// UpdateGcmChannelRequest generates a "aws/request.Request" representing the
5470// client's request for the UpdateGcmChannel operation. The "output" return
5471// value will be populated with the request's response once the request completes
5472// successfuly.
5473//
5474// Use "Send" method on the returned Request to send the API call to the service.
5475// the "output" return value is not valid until after Send returns without error.
5476//
5477// See UpdateGcmChannel for more information on using the UpdateGcmChannel
5478// API call, and error handling.
5479//
5480// This method is useful when you want to inject custom logic or configuration
5481// into the SDK's request lifecycle. Such as custom headers, or retry logic.
5482//
5483//
5484//    // Example sending a request using the UpdateGcmChannelRequest method.
5485//    req, resp := client.UpdateGcmChannelRequest(params)
5486//
5487//    err := req.Send()
5488//    if err == nil { // resp is now filled
5489//        fmt.Println(resp)
5490//    }
5491//
5492// See also, https://docs.aws.amazon.com/goto/WebAPI/pinpoint-2016-12-01/UpdateGcmChannel
5493func (c *Pinpoint) UpdateGcmChannelRequest(input *UpdateGcmChannelInput) (req *request.Request, output *UpdateGcmChannelOutput) {
5494	op := &request.Operation{
5495		Name:       opUpdateGcmChannel,
5496		HTTPMethod: "PUT",
5497		HTTPPath:   "/v1/apps/{application-id}/channels/gcm",
5498	}
5499
5500	if input == nil {
5501		input = &UpdateGcmChannelInput{}
5502	}
5503
5504	output = &UpdateGcmChannelOutput{}
5505	req = c.newRequest(op, input, output)
5506	return
5507}
5508
5509// UpdateGcmChannel API operation for Amazon Pinpoint.
5510//
5511// Use to update the GCM channel for an app.
5512//
5513// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
5514// with awserr.Error's Code and Message methods to get detailed information about
5515// the error.
5516//
5517// See the AWS API reference guide for Amazon Pinpoint's
5518// API operation UpdateGcmChannel for usage and error information.
5519//
5520// Returned Error Codes:
5521//   * ErrCodeBadRequestException "BadRequestException"
5522//
5523//   * ErrCodeInternalServerErrorException "InternalServerErrorException"
5524//
5525//   * ErrCodeForbiddenException "ForbiddenException"
5526//
5527//   * ErrCodeNotFoundException "NotFoundException"
5528//
5529//   * ErrCodeMethodNotAllowedException "MethodNotAllowedException"
5530//
5531//   * ErrCodeTooManyRequestsException "TooManyRequestsException"
5532//
5533// See also, https://docs.aws.amazon.com/goto/WebAPI/pinpoint-2016-12-01/UpdateGcmChannel
5534func (c *Pinpoint) UpdateGcmChannel(input *UpdateGcmChannelInput) (*UpdateGcmChannelOutput, error) {
5535	req, out := c.UpdateGcmChannelRequest(input)
5536	return out, req.Send()
5537}
5538
5539// UpdateGcmChannelWithContext is the same as UpdateGcmChannel with the addition of
5540// the ability to pass a context and additional request options.
5541//
5542// See UpdateGcmChannel for details on how to use this API operation.
5543//
5544// The context must be non-nil and will be used for request cancellation. If
5545// the context is nil a panic will occur. In the future the SDK may create
5546// sub-contexts for http.Requests. See https://golang.org/pkg/context/
5547// for more information on using Contexts.
5548func (c *Pinpoint) UpdateGcmChannelWithContext(ctx aws.Context, input *UpdateGcmChannelInput, opts ...request.Option) (*UpdateGcmChannelOutput, error) {
5549	req, out := c.UpdateGcmChannelRequest(input)
5550	req.SetContext(ctx)
5551	req.ApplyOptions(opts...)
5552	return out, req.Send()
5553}
5554
5555const opUpdateSegment = "UpdateSegment"
5556
5557// UpdateSegmentRequest generates a "aws/request.Request" representing the
5558// client's request for the UpdateSegment operation. The "output" return
5559// value will be populated with the request's response once the request completes
5560// successfuly.
5561//
5562// Use "Send" method on the returned Request to send the API call to the service.
5563// the "output" return value is not valid until after Send returns without error.
5564//
5565// See UpdateSegment for more information on using the UpdateSegment
5566// API call, and error handling.
5567//
5568// This method is useful when you want to inject custom logic or configuration
5569// into the SDK's request lifecycle. Such as custom headers, or retry logic.
5570//
5571//
5572//    // Example sending a request using the UpdateSegmentRequest method.
5573//    req, resp := client.UpdateSegmentRequest(params)
5574//
5575//    err := req.Send()
5576//    if err == nil { // resp is now filled
5577//        fmt.Println(resp)
5578//    }
5579//
5580// See also, https://docs.aws.amazon.com/goto/WebAPI/pinpoint-2016-12-01/UpdateSegment
5581func (c *Pinpoint) UpdateSegmentRequest(input *UpdateSegmentInput) (req *request.Request, output *UpdateSegmentOutput) {
5582	op := &request.Operation{
5583		Name:       opUpdateSegment,
5584		HTTPMethod: "PUT",
5585		HTTPPath:   "/v1/apps/{application-id}/segments/{segment-id}",
5586	}
5587
5588	if input == nil {
5589		input = &UpdateSegmentInput{}
5590	}
5591
5592	output = &UpdateSegmentOutput{}
5593	req = c.newRequest(op, input, output)
5594	return
5595}
5596
5597// UpdateSegment API operation for Amazon Pinpoint.
5598//
5599// Use to update a segment.
5600//
5601// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
5602// with awserr.Error's Code and Message methods to get detailed information about
5603// the error.
5604//
5605// See the AWS API reference guide for Amazon Pinpoint's
5606// API operation UpdateSegment for usage and error information.
5607//
5608// Returned Error Codes:
5609//   * ErrCodeBadRequestException "BadRequestException"
5610//
5611//   * ErrCodeInternalServerErrorException "InternalServerErrorException"
5612//
5613//   * ErrCodeForbiddenException "ForbiddenException"
5614//
5615//   * ErrCodeNotFoundException "NotFoundException"
5616//
5617//   * ErrCodeMethodNotAllowedException "MethodNotAllowedException"
5618//
5619//   * ErrCodeTooManyRequestsException "TooManyRequestsException"
5620//
5621// See also, https://docs.aws.amazon.com/goto/WebAPI/pinpoint-2016-12-01/UpdateSegment
5622func (c *Pinpoint) UpdateSegment(input *UpdateSegmentInput) (*UpdateSegmentOutput, error) {
5623	req, out := c.UpdateSegmentRequest(input)
5624	return out, req.Send()
5625}
5626
5627// UpdateSegmentWithContext is the same as UpdateSegment with the addition of
5628// the ability to pass a context and additional request options.
5629//
5630// See UpdateSegment for details on how to use this API operation.
5631//
5632// The context must be non-nil and will be used for request cancellation. If
5633// the context is nil a panic will occur. In the future the SDK may create
5634// sub-contexts for http.Requests. See https://golang.org/pkg/context/
5635// for more information on using Contexts.
5636func (c *Pinpoint) UpdateSegmentWithContext(ctx aws.Context, input *UpdateSegmentInput, opts ...request.Option) (*UpdateSegmentOutput, error) {
5637	req, out := c.UpdateSegmentRequest(input)
5638	req.SetContext(ctx)
5639	req.ApplyOptions(opts...)
5640	return out, req.Send()
5641}
5642
5643const opUpdateSmsChannel = "UpdateSmsChannel"
5644
5645// UpdateSmsChannelRequest generates a "aws/request.Request" representing the
5646// client's request for the UpdateSmsChannel operation. The "output" return
5647// value will be populated with the request's response once the request completes
5648// successfuly.
5649//
5650// Use "Send" method on the returned Request to send the API call to the service.
5651// the "output" return value is not valid until after Send returns without error.
5652//
5653// See UpdateSmsChannel for more information on using the UpdateSmsChannel
5654// API call, and error handling.
5655//
5656// This method is useful when you want to inject custom logic or configuration
5657// into the SDK's request lifecycle. Such as custom headers, or retry logic.
5658//
5659//
5660//    // Example sending a request using the UpdateSmsChannelRequest method.
5661//    req, resp := client.UpdateSmsChannelRequest(params)
5662//
5663//    err := req.Send()
5664//    if err == nil { // resp is now filled
5665//        fmt.Println(resp)
5666//    }
5667//
5668// See also, https://docs.aws.amazon.com/goto/WebAPI/pinpoint-2016-12-01/UpdateSmsChannel
5669func (c *Pinpoint) UpdateSmsChannelRequest(input *UpdateSmsChannelInput) (req *request.Request, output *UpdateSmsChannelOutput) {
5670	op := &request.Operation{
5671		Name:       opUpdateSmsChannel,
5672		HTTPMethod: "PUT",
5673		HTTPPath:   "/v1/apps/{application-id}/channels/sms",
5674	}
5675
5676	if input == nil {
5677		input = &UpdateSmsChannelInput{}
5678	}
5679
5680	output = &UpdateSmsChannelOutput{}
5681	req = c.newRequest(op, input, output)
5682	return
5683}
5684
5685// UpdateSmsChannel API operation for Amazon Pinpoint.
5686//
5687// Update an SMS channel
5688//
5689// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
5690// with awserr.Error's Code and Message methods to get detailed information about
5691// the error.
5692//
5693// See the AWS API reference guide for Amazon Pinpoint's
5694// API operation UpdateSmsChannel for usage and error information.
5695//
5696// Returned Error Codes:
5697//   * ErrCodeBadRequestException "BadRequestException"
5698//
5699//   * ErrCodeInternalServerErrorException "InternalServerErrorException"
5700//
5701//   * ErrCodeForbiddenException "ForbiddenException"
5702//
5703//   * ErrCodeNotFoundException "NotFoundException"
5704//
5705//   * ErrCodeMethodNotAllowedException "MethodNotAllowedException"
5706//
5707//   * ErrCodeTooManyRequestsException "TooManyRequestsException"
5708//
5709// See also, https://docs.aws.amazon.com/goto/WebAPI/pinpoint-2016-12-01/UpdateSmsChannel
5710func (c *Pinpoint) UpdateSmsChannel(input *UpdateSmsChannelInput) (*UpdateSmsChannelOutput, error) {
5711	req, out := c.UpdateSmsChannelRequest(input)
5712	return out, req.Send()
5713}
5714
5715// UpdateSmsChannelWithContext is the same as UpdateSmsChannel with the addition of
5716// the ability to pass a context and additional request options.
5717//
5718// See UpdateSmsChannel for details on how to use this API operation.
5719//
5720// The context must be non-nil and will be used for request cancellation. If
5721// the context is nil a panic will occur. In the future the SDK may create
5722// sub-contexts for http.Requests. See https://golang.org/pkg/context/
5723// for more information on using Contexts.
5724func (c *Pinpoint) UpdateSmsChannelWithContext(ctx aws.Context, input *UpdateSmsChannelInput, opts ...request.Option) (*UpdateSmsChannelOutput, error) {
5725	req, out := c.UpdateSmsChannelRequest(input)
5726	req.SetContext(ctx)
5727	req.ApplyOptions(opts...)
5728	return out, req.Send()
5729}
5730
5731// Amazon Device Messaging channel definition.
5732type ADMChannelRequest struct {
5733	_ struct{} `type:"structure"`
5734
5735	// Client ID as gotten from Amazon
5736	ClientId *string `type:"string"`
5737
5738	// Client secret as gotten from Amazon
5739	ClientSecret *string `type:"string"`
5740
5741	// If the channel is enabled for sending messages.
5742	Enabled *bool `type:"boolean"`
5743}
5744
5745// String returns the string representation
5746func (s ADMChannelRequest) String() string {
5747	return awsutil.Prettify(s)
5748}
5749
5750// GoString returns the string representation
5751func (s ADMChannelRequest) GoString() string {
5752	return s.String()
5753}
5754
5755// SetClientId sets the ClientId field's value.
5756func (s *ADMChannelRequest) SetClientId(v string) *ADMChannelRequest {
5757	s.ClientId = &v
5758	return s
5759}
5760
5761// SetClientSecret sets the ClientSecret field's value.
5762func (s *ADMChannelRequest) SetClientSecret(v string) *ADMChannelRequest {
5763	s.ClientSecret = &v
5764	return s
5765}
5766
5767// SetEnabled sets the Enabled field's value.
5768func (s *ADMChannelRequest) SetEnabled(v bool) *ADMChannelRequest {
5769	s.Enabled = &v
5770	return s
5771}
5772
5773// Amazon Device Messaging channel definition.
5774type ADMChannelResponse struct {
5775	_ struct{} `type:"structure"`
5776
5777	// The ID of the application to which the channel applies.
5778	ApplicationId *string `type:"string"`
5779
5780	// When was this segment created
5781	CreationDate *string `type:"string"`
5782
5783	// If the channel is enabled for sending messages.
5784	Enabled *bool `type:"boolean"`
5785
5786	// Indicates whether the channel is configured with ADM credentials. Amazon
5787	// Pinpoint uses your credentials to authenticate push notifications with ADM.
5788	// Provide your credentials by setting the ClientId and ClientSecret attributes.
5789	HasCredential *bool `type:"boolean"`
5790
5791	// Channel ID. Not used, only for backwards compatibility.
5792	Id *string `type:"string"`
5793
5794	// Is this channel archived
5795	IsArchived *bool `type:"boolean"`
5796
5797	// Who last updated this entry
5798	LastModifiedBy *string `type:"string"`
5799
5800	// Last date this was updated
5801	LastModifiedDate *string `type:"string"`
5802
5803	// Platform type. Will be "ADM"
5804	Platform *string `type:"string"`
5805
5806	// Version of channel
5807	Version *int64 `type:"integer"`
5808}
5809
5810// String returns the string representation
5811func (s ADMChannelResponse) String() string {
5812	return awsutil.Prettify(s)
5813}
5814
5815// GoString returns the string representation
5816func (s ADMChannelResponse) GoString() string {
5817	return s.String()
5818}
5819
5820// SetApplicationId sets the ApplicationId field's value.
5821func (s *ADMChannelResponse) SetApplicationId(v string) *ADMChannelResponse {
5822	s.ApplicationId = &v
5823	return s
5824}
5825
5826// SetCreationDate sets the CreationDate field's value.
5827func (s *ADMChannelResponse) SetCreationDate(v string) *ADMChannelResponse {
5828	s.CreationDate = &v
5829	return s
5830}
5831
5832// SetEnabled sets the Enabled field's value.
5833func (s *ADMChannelResponse) SetEnabled(v bool) *ADMChannelResponse {
5834	s.Enabled = &v
5835	return s
5836}
5837
5838// SetHasCredential sets the HasCredential field's value.
5839func (s *ADMChannelResponse) SetHasCredential(v bool) *ADMChannelResponse {
5840	s.HasCredential = &v
5841	return s
5842}
5843
5844// SetId sets the Id field's value.
5845func (s *ADMChannelResponse) SetId(v string) *ADMChannelResponse {
5846	s.Id = &v
5847	return s
5848}
5849
5850// SetIsArchived sets the IsArchived field's value.
5851func (s *ADMChannelResponse) SetIsArchived(v bool) *ADMChannelResponse {
5852	s.IsArchived = &v
5853	return s
5854}
5855
5856// SetLastModifiedBy sets the LastModifiedBy field's value.
5857func (s *ADMChannelResponse) SetLastModifiedBy(v string) *ADMChannelResponse {
5858	s.LastModifiedBy = &v
5859	return s
5860}
5861
5862// SetLastModifiedDate sets the LastModifiedDate field's value.
5863func (s *ADMChannelResponse) SetLastModifiedDate(v string) *ADMChannelResponse {
5864	s.LastModifiedDate = &v
5865	return s
5866}
5867
5868// SetPlatform sets the Platform field's value.
5869func (s *ADMChannelResponse) SetPlatform(v string) *ADMChannelResponse {
5870	s.Platform = &v
5871	return s
5872}
5873
5874// SetVersion sets the Version field's value.
5875func (s *ADMChannelResponse) SetVersion(v int64) *ADMChannelResponse {
5876	s.Version = &v
5877	return s
5878}
5879
5880// ADM Message.
5881type ADMMessage struct {
5882	_ struct{} `type:"structure"`
5883
5884	// The action that occurs if the user taps a push notification delivered by
5885	// the campaign: OPEN_APP - Your app launches, or it becomes the foreground
5886	// app if it has been sent to the background. This is the default action. DEEP_LINK
5887	// - Uses deep linking features in iOS and Android to open your app and display
5888	// a designated user interface within the app. URL - The default mobile browser
5889	// on the user's device launches and opens a web page at the URL you specify.
5890	// Possible values include: OPEN_APP | DEEP_LINK | URL
5891	Action *string `type:"string" enum:"Action"`
5892
5893	// The message body of the notification, the email body or the text message.
5894	Body *string `type:"string"`
5895
5896	// Optional. Arbitrary string used to indicate multiple messages are logically
5897	// the same and that ADM is allowed to drop previously enqueued messages in
5898	// favor of this one.
5899	ConsolidationKey *string `type:"string"`
5900
5901	// The data payload used for a silent push. This payload is added to the notifications'
5902	// data.pinpoint.jsonBody' object
5903	Data map[string]*string `type:"map"`
5904
5905	// Optional. Number of seconds ADM should retain the message if the device is
5906	// offline
5907	ExpiresAfter *string `type:"string"`
5908
5909	// The icon image name of the asset saved in your application.
5910	IconReference *string `type:"string"`
5911
5912	// The URL that points to an image used as the large icon to the notification
5913	// content view.
5914	ImageIconUrl *string `type:"string"`
5915
5916	// The URL that points to an image used in the push notification.
5917	ImageUrl *string `type:"string"`
5918
5919	// Optional. Base-64-encoded MD5 checksum of the data parameter. Used to verify
5920	// data integrity
5921	MD5 *string `type:"string"`
5922
5923	// The Raw JSON formatted string to be used as the payload. This value overrides
5924	// the message.
5925	RawContent *string `type:"string"`
5926
5927	// Indicates if the message should display on the users device. Silent pushes
5928	// can be used for Remote Configuration and Phone Home use cases.
5929	SilentPush *bool `type:"boolean"`
5930
5931	// The URL that points to an image used as the small icon for the notification
5932	// which will be used to represent the notification in the status bar and content
5933	// view
5934	SmallImageIconUrl *string `type:"string"`
5935
5936	// Indicates a sound to play when the device receives the notification. Supports
5937	// default, or the filename of a sound resource bundled in the app. Android
5938	// sound files must reside in /res/raw/
5939	Sound *string `type:"string"`
5940
5941	Substitutions map[string][]*string `type:"map"`
5942
5943	// The message title that displays above the message on the user's device.
5944	Title *string `type:"string"`
5945
5946	// The URL to open in the user's mobile browser. Used if the value for Action
5947	// is URL.
5948	Url *string `type:"string"`
5949}
5950
5951// String returns the string representation
5952func (s ADMMessage) String() string {
5953	return awsutil.Prettify(s)
5954}
5955
5956// GoString returns the string representation
5957func (s ADMMessage) GoString() string {
5958	return s.String()
5959}
5960
5961// SetAction sets the Action field's value.
5962func (s *ADMMessage) SetAction(v string) *ADMMessage {
5963	s.Action = &v
5964	return s
5965}
5966
5967// SetBody sets the Body field's value.
5968func (s *ADMMessage) SetBody(v string) *ADMMessage {
5969	s.Body = &v
5970	return s
5971}
5972
5973// SetConsolidationKey sets the ConsolidationKey field's value.
5974func (s *ADMMessage) SetConsolidationKey(v string) *ADMMessage {
5975	s.ConsolidationKey = &v
5976	return s
5977}
5978
5979// SetData sets the Data field's value.
5980func (s *ADMMessage) SetData(v map[string]*string) *ADMMessage {
5981	s.Data = v
5982	return s
5983}
5984
5985// SetExpiresAfter sets the ExpiresAfter field's value.
5986func (s *ADMMessage) SetExpiresAfter(v string) *ADMMessage {
5987	s.ExpiresAfter = &v
5988	return s
5989}
5990
5991// SetIconReference sets the IconReference field's value.
5992func (s *ADMMessage) SetIconReference(v string) *ADMMessage {
5993	s.IconReference = &v
5994	return s
5995}
5996
5997// SetImageIconUrl sets the ImageIconUrl field's value.
5998func (s *ADMMessage) SetImageIconUrl(v string) *ADMMessage {
5999	s.ImageIconUrl = &v
6000	return s
6001}
6002
6003// SetImageUrl sets the ImageUrl field's value.
6004func (s *ADMMessage) SetImageUrl(v string) *ADMMessage {
6005	s.ImageUrl = &v
6006	return s
6007}
6008
6009// SetMD5 sets the MD5 field's value.
6010func (s *ADMMessage) SetMD5(v string) *ADMMessage {
6011	s.MD5 = &v
6012	return s
6013}
6014
6015// SetRawContent sets the RawContent field's value.
6016func (s *ADMMessage) SetRawContent(v string) *ADMMessage {
6017	s.RawContent = &v
6018	return s
6019}
6020
6021// SetSilentPush sets the SilentPush field's value.
6022func (s *ADMMessage) SetSilentPush(v bool) *ADMMessage {
6023	s.SilentPush = &v
6024	return s
6025}
6026
6027// SetSmallImageIconUrl sets the SmallImageIconUrl field's value.
6028func (s *ADMMessage) SetSmallImageIconUrl(v string) *ADMMessage {
6029	s.SmallImageIconUrl = &v
6030	return s
6031}
6032
6033// SetSound sets the Sound field's value.
6034func (s *ADMMessage) SetSound(v string) *ADMMessage {
6035	s.Sound = &v
6036	return s
6037}
6038
6039// SetSubstitutions sets the Substitutions field's value.
6040func (s *ADMMessage) SetSubstitutions(v map[string][]*string) *ADMMessage {
6041	s.Substitutions = v
6042	return s
6043}
6044
6045// SetTitle sets the Title field's value.
6046func (s *ADMMessage) SetTitle(v string) *ADMMessage {
6047	s.Title = &v
6048	return s
6049}
6050
6051// SetUrl sets the Url field's value.
6052func (s *ADMMessage) SetUrl(v string) *ADMMessage {
6053	s.Url = &v
6054	return s
6055}
6056
6057// Apple Push Notification Service channel definition.
6058type APNSChannelRequest struct {
6059	_ struct{} `type:"structure"`
6060
6061	// The bundle id used for APNs Tokens.
6062	BundleId *string `type:"string"`
6063
6064	// The distribution certificate from Apple.
6065	Certificate *string `type:"string"`
6066
6067	// The default authentication method used for APNs.
6068	DefaultAuthenticationMethod *string `type:"string"`
6069
6070	// If the channel is enabled for sending messages.
6071	Enabled *bool `type:"boolean"`
6072
6073	// The certificate private key.
6074	PrivateKey *string `type:"string"`
6075
6076	// The team id used for APNs Tokens.
6077	TeamId *string `type:"string"`
6078
6079	// The token key used for APNs Tokens.
6080	TokenKey *string `type:"string"`
6081
6082	// The token key used for APNs Tokens.
6083	TokenKeyId *string `type:"string"`
6084}
6085
6086// String returns the string representation
6087func (s APNSChannelRequest) String() string {
6088	return awsutil.Prettify(s)
6089}
6090
6091// GoString returns the string representation
6092func (s APNSChannelRequest) GoString() string {
6093	return s.String()
6094}
6095
6096// SetBundleId sets the BundleId field's value.
6097func (s *APNSChannelRequest) SetBundleId(v string) *APNSChannelRequest {
6098	s.BundleId = &v
6099	return s
6100}
6101
6102// SetCertificate sets the Certificate field's value.
6103func (s *APNSChannelRequest) SetCertificate(v string) *APNSChannelRequest {
6104	s.Certificate = &v
6105	return s
6106}
6107
6108// SetDefaultAuthenticationMethod sets the DefaultAuthenticationMethod field's value.
6109func (s *APNSChannelRequest) SetDefaultAuthenticationMethod(v string) *APNSChannelRequest {
6110	s.DefaultAuthenticationMethod = &v
6111	return s
6112}
6113
6114// SetEnabled sets the Enabled field's value.
6115func (s *APNSChannelRequest) SetEnabled(v bool) *APNSChannelRequest {
6116	s.Enabled = &v
6117	return s
6118}
6119
6120// SetPrivateKey sets the PrivateKey field's value.
6121func (s *APNSChannelRequest) SetPrivateKey(v string) *APNSChannelRequest {
6122	s.PrivateKey = &v
6123	return s
6124}
6125
6126// SetTeamId sets the TeamId field's value.
6127func (s *APNSChannelRequest) SetTeamId(v string) *APNSChannelRequest {
6128	s.TeamId = &v
6129	return s
6130}
6131
6132// SetTokenKey sets the TokenKey field's value.
6133func (s *APNSChannelRequest) SetTokenKey(v string) *APNSChannelRequest {
6134	s.TokenKey = &v
6135	return s
6136}
6137
6138// SetTokenKeyId sets the TokenKeyId field's value.
6139func (s *APNSChannelRequest) SetTokenKeyId(v string) *APNSChannelRequest {
6140	s.TokenKeyId = &v
6141	return s
6142}
6143
6144// Apple Distribution Push Notification Service channel definition.
6145type APNSChannelResponse struct {
6146	_ struct{} `type:"structure"`
6147
6148	// The ID of the application to which the channel applies.
6149	ApplicationId *string `type:"string"`
6150
6151	// When was this segment created
6152	CreationDate *string `type:"string"`
6153
6154	// The default authentication method used for APNs.
6155	DefaultAuthenticationMethod *string `type:"string"`
6156
6157	// If the channel is enabled for sending messages.
6158	Enabled *bool `type:"boolean"`
6159
6160	// Indicates whether the channel is configured with APNs credentials. Amazon
6161	// Pinpoint uses your credentials to authenticate push notifications with APNs.
6162	// To use APNs token authentication, set the BundleId, TeamId, TokenKey, and
6163	// TokenKeyId attributes. To use certificate authentication, set the Certificate
6164	// and PrivateKey attributes.
6165	HasCredential *bool `type:"boolean"`
6166
6167	// Indicates whether the channel is configured with a key for APNs token authentication.
6168	// Provide a token key by setting the TokenKey attribute.
6169	HasTokenKey *bool `type:"boolean"`
6170
6171	// Channel ID. Not used. Present only for backwards compatibility.
6172	Id *string `type:"string"`
6173
6174	// Is this channel archived
6175	IsArchived *bool `type:"boolean"`
6176
6177	// Who last updated this entry
6178	LastModifiedBy *string `type:"string"`
6179
6180	// Last date this was updated
6181	LastModifiedDate *string `type:"string"`
6182
6183	// The platform type. Will be APNS.
6184	Platform *string `type:"string"`
6185
6186	// Version of channel
6187	Version *int64 `type:"integer"`
6188}
6189
6190// String returns the string representation
6191func (s APNSChannelResponse) String() string {
6192	return awsutil.Prettify(s)
6193}
6194
6195// GoString returns the string representation
6196func (s APNSChannelResponse) GoString() string {
6197	return s.String()
6198}
6199
6200// SetApplicationId sets the ApplicationId field's value.
6201func (s *APNSChannelResponse) SetApplicationId(v string) *APNSChannelResponse {
6202	s.ApplicationId = &v
6203	return s
6204}
6205
6206// SetCreationDate sets the CreationDate field's value.
6207func (s *APNSChannelResponse) SetCreationDate(v string) *APNSChannelResponse {
6208	s.CreationDate = &v
6209	return s
6210}
6211
6212// SetDefaultAuthenticationMethod sets the DefaultAuthenticationMethod field's value.
6213func (s *APNSChannelResponse) SetDefaultAuthenticationMethod(v string) *APNSChannelResponse {
6214	s.DefaultAuthenticationMethod = &v
6215	return s
6216}
6217
6218// SetEnabled sets the Enabled field's value.
6219func (s *APNSChannelResponse) SetEnabled(v bool) *APNSChannelResponse {
6220	s.Enabled = &v
6221	return s
6222}
6223
6224// SetHasCredential sets the HasCredential field's value.
6225func (s *APNSChannelResponse) SetHasCredential(v bool) *APNSChannelResponse {
6226	s.HasCredential = &v
6227	return s
6228}
6229
6230// SetHasTokenKey sets the HasTokenKey field's value.
6231func (s *APNSChannelResponse) SetHasTokenKey(v bool) *APNSChannelResponse {
6232	s.HasTokenKey = &v
6233	return s
6234}
6235
6236// SetId sets the Id field's value.
6237func (s *APNSChannelResponse) SetId(v string) *APNSChannelResponse {
6238	s.Id = &v
6239	return s
6240}
6241
6242// SetIsArchived sets the IsArchived field's value.
6243func (s *APNSChannelResponse) SetIsArchived(v bool) *APNSChannelResponse {
6244	s.IsArchived = &v
6245	return s
6246}
6247
6248// SetLastModifiedBy sets the LastModifiedBy field's value.
6249func (s *APNSChannelResponse) SetLastModifiedBy(v string) *APNSChannelResponse {
6250	s.LastModifiedBy = &v
6251	return s
6252}
6253
6254// SetLastModifiedDate sets the LastModifiedDate field's value.
6255func (s *APNSChannelResponse) SetLastModifiedDate(v string) *APNSChannelResponse {
6256	s.LastModifiedDate = &v
6257	return s
6258}
6259
6260// SetPlatform sets the Platform field's value.
6261func (s *APNSChannelResponse) SetPlatform(v string) *APNSChannelResponse {
6262	s.Platform = &v
6263	return s
6264}
6265
6266// SetVersion sets the Version field's value.
6267func (s *APNSChannelResponse) SetVersion(v int64) *APNSChannelResponse {
6268	s.Version = &v
6269	return s
6270}
6271
6272// APNS Message.
6273type APNSMessage struct {
6274	_ struct{} `type:"structure"`
6275
6276	// The action that occurs if the user taps a push notification delivered by
6277	// the campaign: OPEN_APP - Your app launches, or it becomes the foreground
6278	// app if it has been sent to the background. This is the default action. DEEP_LINK
6279	// - Uses deep linking features in iOS and Android to open your app and display
6280	// a designated user interface within the app. URL - The default mobile browser
6281	// on the user's device launches and opens a web page at the URL you specify.
6282	// Possible values include: OPEN_APP | DEEP_LINK | URL
6283	Action *string `type:"string" enum:"Action"`
6284
6285	// Include this key when you want the system to modify the badge of your app
6286	// icon. If this key is not included in the dictionary, the badge is not changed.
6287	// To remove the badge, set the value of this key to 0.
6288	Badge *int64 `type:"integer"`
6289
6290	// The message body of the notification, the email body or the text message.
6291	Body *string `type:"string"`
6292
6293	// Provide this key with a string value that represents the notification's type.
6294	// This value corresponds to the value in the identifier property of one of
6295	// your app's registered categories.
6296	Category *string `type:"string"`
6297
6298	// An ID that, if assigned to multiple messages, causes APNs to coalesce the
6299	// messages into a single push notification instead of delivering each message
6300	// individually. The value must not exceed 64 bytes. Amazon Pinpoint uses this
6301	// value to set the apns-collapse-id request header when it sends the message
6302	// to APNs.
6303	CollapseId *string `type:"string"`
6304
6305	// The data payload used for a silent push. This payload is added to the notifications'
6306	// data.pinpoint.jsonBody' object
6307	Data map[string]*string `type:"map"`
6308
6309	// The URL that points to a video used in the push notification.
6310	MediaUrl *string `type:"string"`
6311
6312	// The preferred authentication method, either "CERTIFICATE" or "TOKEN"
6313	PreferredAuthenticationMethod *string `type:"string"`
6314
6315	// The message priority. Amazon Pinpoint uses this value to set the apns-priority
6316	// request header when it sends the message to APNs. Accepts the following values:"5"
6317	// - Low priority. Messages might be delayed, delivered in groups, and throttled."10"
6318	// - High priority. Messages are sent immediately. High priority messages must
6319	// cause an alert, sound, or badge on the receiving device.The default value
6320	// is "10".The equivalent values for FCM or GCM messages are "normal" and "high".
6321	// Amazon Pinpoint accepts these values for APNs messages and converts them.For
6322	// more information about the apns-priority parameter, see Communicating with
6323	// APNs in the APNs Local and Remote Notification Programming Guide.
6324	Priority *string `type:"string"`
6325
6326	// The Raw JSON formatted string to be used as the payload. This value overrides
6327	// the message.
6328	RawContent *string `type:"string"`
6329
6330	// Indicates if the message should display on the users device. Silent pushes
6331	// can be used for Remote Configuration and Phone Home use cases.
6332	SilentPush *bool `type:"boolean"`
6333
6334	// Include this key when you want the system to play a sound. The value of this
6335	// key is the name of a sound file in your app's main bundle or in the Library/Sounds
6336	// folder of your app's data container. If the sound file cannot be found, or
6337	// if you specify defaultfor the value, the system plays the default alert sound.
6338	Sound *string `type:"string"`
6339
6340	Substitutions map[string][]*string `type:"map"`
6341
6342	// Provide this key with a string value that represents the app-specific identifier
6343	// for grouping notifications. If you provide a Notification Content app extension,
6344	// you can use this value to group your notifications together.
6345	ThreadId *string `type:"string"`
6346
6347	// The length of time (in seconds) that APNs stores and attempts to deliver
6348	// the message. If the value is 0, APNs does not store the message or attempt
6349	// to deliver it more than once. Amazon Pinpoint uses this value to set the
6350	// apns-expiration request header when it sends the message to APNs.
6351	TimeToLive *int64 `type:"integer"`
6352
6353	// The message title that displays above the message on the user's device.
6354	Title *string `type:"string"`
6355
6356	// The URL to open in the user's mobile browser. Used if the value for Action
6357	// is URL.
6358	Url *string `type:"string"`
6359}
6360
6361// String returns the string representation
6362func (s APNSMessage) String() string {
6363	return awsutil.Prettify(s)
6364}
6365
6366// GoString returns the string representation
6367func (s APNSMessage) GoString() string {
6368	return s.String()
6369}
6370
6371// SetAction sets the Action field's value.
6372func (s *APNSMessage) SetAction(v string) *APNSMessage {
6373	s.Action = &v
6374	return s
6375}
6376
6377// SetBadge sets the Badge field's value.
6378func (s *APNSMessage) SetBadge(v int64) *APNSMessage {
6379	s.Badge = &v
6380	return s
6381}
6382
6383// SetBody sets the Body field's value.
6384func (s *APNSMessage) SetBody(v string) *APNSMessage {
6385	s.Body = &v
6386	return s
6387}
6388
6389// SetCategory sets the Category field's value.
6390func (s *APNSMessage) SetCategory(v string) *APNSMessage {
6391	s.Category = &v
6392	return s
6393}
6394
6395// SetCollapseId sets the CollapseId field's value.
6396func (s *APNSMessage) SetCollapseId(v string) *APNSMessage {
6397	s.CollapseId = &v
6398	return s
6399}
6400
6401// SetData sets the Data field's value.
6402func (s *APNSMessage) SetData(v map[string]*string) *APNSMessage {
6403	s.Data = v
6404	return s
6405}
6406
6407// SetMediaUrl sets the MediaUrl field's value.
6408func (s *APNSMessage) SetMediaUrl(v string) *APNSMessage {
6409	s.MediaUrl = &v
6410	return s
6411}
6412
6413// SetPreferredAuthenticationMethod sets the PreferredAuthenticationMethod field's value.
6414func (s *APNSMessage) SetPreferredAuthenticationMethod(v string) *APNSMessage {
6415	s.PreferredAuthenticationMethod = &v
6416	return s
6417}
6418
6419// SetPriority sets the Priority field's value.
6420func (s *APNSMessage) SetPriority(v string) *APNSMessage {
6421	s.Priority = &v
6422	return s
6423}
6424
6425// SetRawContent sets the RawContent field's value.
6426func (s *APNSMessage) SetRawContent(v string) *APNSMessage {
6427	s.RawContent = &v
6428	return s
6429}
6430
6431// SetSilentPush sets the SilentPush field's value.
6432func (s *APNSMessage) SetSilentPush(v bool) *APNSMessage {
6433	s.SilentPush = &v
6434	return s
6435}
6436
6437// SetSound sets the Sound field's value.
6438func (s *APNSMessage) SetSound(v string) *APNSMessage {
6439	s.Sound = &v
6440	return s
6441}
6442
6443// SetSubstitutions sets the Substitutions field's value.
6444func (s *APNSMessage) SetSubstitutions(v map[string][]*string) *APNSMessage {
6445	s.Substitutions = v
6446	return s
6447}
6448
6449// SetThreadId sets the ThreadId field's value.
6450func (s *APNSMessage) SetThreadId(v string) *APNSMessage {
6451	s.ThreadId = &v
6452	return s
6453}
6454
6455// SetTimeToLive sets the TimeToLive field's value.
6456func (s *APNSMessage) SetTimeToLive(v int64) *APNSMessage {
6457	s.TimeToLive = &v
6458	return s
6459}
6460
6461// SetTitle sets the Title field's value.
6462func (s *APNSMessage) SetTitle(v string) *APNSMessage {
6463	s.Title = &v
6464	return s
6465}
6466
6467// SetUrl sets the Url field's value.
6468func (s *APNSMessage) SetUrl(v string) *APNSMessage {
6469	s.Url = &v
6470	return s
6471}
6472
6473// Apple Development Push Notification Service channel definition.
6474type APNSSandboxChannelRequest struct {
6475	_ struct{} `type:"structure"`
6476
6477	// The bundle id used for APNs Tokens.
6478	BundleId *string `type:"string"`
6479
6480	// The distribution certificate from Apple.
6481	Certificate *string `type:"string"`
6482
6483	// The default authentication method used for APNs.
6484	DefaultAuthenticationMethod *string `type:"string"`
6485
6486	// If the channel is enabled for sending messages.
6487	Enabled *bool `type:"boolean"`
6488
6489	// The certificate private key.
6490	PrivateKey *string `type:"string"`
6491
6492	// The team id used for APNs Tokens.
6493	TeamId *string `type:"string"`
6494
6495	// The token key used for APNs Tokens.
6496	TokenKey *string `type:"string"`
6497
6498	// The token key used for APNs Tokens.
6499	TokenKeyId *string `type:"string"`
6500}
6501
6502// String returns the string representation
6503func (s APNSSandboxChannelRequest) String() string {
6504	return awsutil.Prettify(s)
6505}
6506
6507// GoString returns the string representation
6508func (s APNSSandboxChannelRequest) GoString() string {
6509	return s.String()
6510}
6511
6512// SetBundleId sets the BundleId field's value.
6513func (s *APNSSandboxChannelRequest) SetBundleId(v string) *APNSSandboxChannelRequest {
6514	s.BundleId = &v
6515	return s
6516}
6517
6518// SetCertificate sets the Certificate field's value.
6519func (s *APNSSandboxChannelRequest) SetCertificate(v string) *APNSSandboxChannelRequest {
6520	s.Certificate = &v
6521	return s
6522}
6523
6524// SetDefaultAuthenticationMethod sets the DefaultAuthenticationMethod field's value.
6525func (s *APNSSandboxChannelRequest) SetDefaultAuthenticationMethod(v string) *APNSSandboxChannelRequest {
6526	s.DefaultAuthenticationMethod = &v
6527	return s
6528}
6529
6530// SetEnabled sets the Enabled field's value.
6531func (s *APNSSandboxChannelRequest) SetEnabled(v bool) *APNSSandboxChannelRequest {
6532	s.Enabled = &v
6533	return s
6534}
6535
6536// SetPrivateKey sets the PrivateKey field's value.
6537func (s *APNSSandboxChannelRequest) SetPrivateKey(v string) *APNSSandboxChannelRequest {
6538	s.PrivateKey = &v
6539	return s
6540}
6541
6542// SetTeamId sets the TeamId field's value.
6543func (s *APNSSandboxChannelRequest) SetTeamId(v string) *APNSSandboxChannelRequest {
6544	s.TeamId = &v
6545	return s
6546}
6547
6548// SetTokenKey sets the TokenKey field's value.
6549func (s *APNSSandboxChannelRequest) SetTokenKey(v string) *APNSSandboxChannelRequest {
6550	s.TokenKey = &v
6551	return s
6552}
6553
6554// SetTokenKeyId sets the TokenKeyId field's value.
6555func (s *APNSSandboxChannelRequest) SetTokenKeyId(v string) *APNSSandboxChannelRequest {
6556	s.TokenKeyId = &v
6557	return s
6558}
6559
6560// Apple Development Push Notification Service channel definition.
6561type APNSSandboxChannelResponse struct {
6562	_ struct{} `type:"structure"`
6563
6564	// The ID of the application to which the channel applies.
6565	ApplicationId *string `type:"string"`
6566
6567	// When was this segment created
6568	CreationDate *string `type:"string"`
6569
6570	// The default authentication method used for APNs.
6571	DefaultAuthenticationMethod *string `type:"string"`
6572
6573	// If the channel is enabled for sending messages.
6574	Enabled *bool `type:"boolean"`
6575
6576	// Indicates whether the channel is configured with APNs credentials. Amazon
6577	// Pinpoint uses your credentials to authenticate push notifications with APNs.
6578	// To use APNs token authentication, set the BundleId, TeamId, TokenKey, and
6579	// TokenKeyId attributes. To use certificate authentication, set the Certificate
6580	// and PrivateKey attributes.
6581	HasCredential *bool `type:"boolean"`
6582
6583	// Indicates whether the channel is configured with a key for APNs token authentication.
6584	// Provide a token key by setting the TokenKey attribute.
6585	HasTokenKey *bool `type:"boolean"`
6586
6587	// Channel ID. Not used, only for backwards compatibility.
6588	Id *string `type:"string"`
6589
6590	// Is this channel archived
6591	IsArchived *bool `type:"boolean"`
6592
6593	// Who last updated this entry
6594	LastModifiedBy *string `type:"string"`
6595
6596	// Last date this was updated
6597	LastModifiedDate *string `type:"string"`
6598
6599	// The platform type. Will be APNS_SANDBOX.
6600	Platform *string `type:"string"`
6601
6602	// Version of channel
6603	Version *int64 `type:"integer"`
6604}
6605
6606// String returns the string representation
6607func (s APNSSandboxChannelResponse) String() string {
6608	return awsutil.Prettify(s)
6609}
6610
6611// GoString returns the string representation
6612func (s APNSSandboxChannelResponse) GoString() string {
6613	return s.String()
6614}
6615
6616// SetApplicationId sets the ApplicationId field's value.
6617func (s *APNSSandboxChannelResponse) SetApplicationId(v string) *APNSSandboxChannelResponse {
6618	s.ApplicationId = &v
6619	return s
6620}
6621
6622// SetCreationDate sets the CreationDate field's value.
6623func (s *APNSSandboxChannelResponse) SetCreationDate(v string) *APNSSandboxChannelResponse {
6624	s.CreationDate = &v
6625	return s
6626}
6627
6628// SetDefaultAuthenticationMethod sets the DefaultAuthenticationMethod field's value.
6629func (s *APNSSandboxChannelResponse) SetDefaultAuthenticationMethod(v string) *APNSSandboxChannelResponse {
6630	s.DefaultAuthenticationMethod = &v
6631	return s
6632}
6633
6634// SetEnabled sets the Enabled field's value.
6635func (s *APNSSandboxChannelResponse) SetEnabled(v bool) *APNSSandboxChannelResponse {
6636	s.Enabled = &v
6637	return s
6638}
6639
6640// SetHasCredential sets the HasCredential field's value.
6641func (s *APNSSandboxChannelResponse) SetHasCredential(v bool) *APNSSandboxChannelResponse {
6642	s.HasCredential = &v
6643	return s
6644}
6645
6646// SetHasTokenKey sets the HasTokenKey field's value.
6647func (s *APNSSandboxChannelResponse) SetHasTokenKey(v bool) *APNSSandboxChannelResponse {
6648	s.HasTokenKey = &v
6649	return s
6650}
6651
6652// SetId sets the Id field's value.
6653func (s *APNSSandboxChannelResponse) SetId(v string) *APNSSandboxChannelResponse {
6654	s.Id = &v
6655	return s
6656}
6657
6658// SetIsArchived sets the IsArchived field's value.
6659func (s *APNSSandboxChannelResponse) SetIsArchived(v bool) *APNSSandboxChannelResponse {
6660	s.IsArchived = &v
6661	return s
6662}
6663
6664// SetLastModifiedBy sets the LastModifiedBy field's value.
6665func (s *APNSSandboxChannelResponse) SetLastModifiedBy(v string) *APNSSandboxChannelResponse {
6666	s.LastModifiedBy = &v
6667	return s
6668}
6669
6670// SetLastModifiedDate sets the LastModifiedDate field's value.
6671func (s *APNSSandboxChannelResponse) SetLastModifiedDate(v string) *APNSSandboxChannelResponse {
6672	s.LastModifiedDate = &v
6673	return s
6674}
6675
6676// SetPlatform sets the Platform field's value.
6677func (s *APNSSandboxChannelResponse) SetPlatform(v string) *APNSSandboxChannelResponse {
6678	s.Platform = &v
6679	return s
6680}
6681
6682// SetVersion sets the Version field's value.
6683func (s *APNSSandboxChannelResponse) SetVersion(v int64) *APNSSandboxChannelResponse {
6684	s.Version = &v
6685	return s
6686}
6687
6688// Apple VoIP Push Notification Service channel definition.
6689type APNSVoipChannelRequest struct {
6690	_ struct{} `type:"structure"`
6691
6692	// The bundle id used for APNs Tokens.
6693	BundleId *string `type:"string"`
6694
6695	// The distribution certificate from Apple.
6696	Certificate *string `type:"string"`
6697
6698	// The default authentication method used for APNs.
6699	DefaultAuthenticationMethod *string `type:"string"`
6700
6701	// If the channel is enabled for sending messages.
6702	Enabled *bool `type:"boolean"`
6703
6704	// The certificate private key.
6705	PrivateKey *string `type:"string"`
6706
6707	// The team id used for APNs Tokens.
6708	TeamId *string `type:"string"`
6709
6710	// The token key used for APNs Tokens.
6711	TokenKey *string `type:"string"`
6712
6713	// The token key used for APNs Tokens.
6714	TokenKeyId *string `type:"string"`
6715}
6716
6717// String returns the string representation
6718func (s APNSVoipChannelRequest) String() string {
6719	return awsutil.Prettify(s)
6720}
6721
6722// GoString returns the string representation
6723func (s APNSVoipChannelRequest) GoString() string {
6724	return s.String()
6725}
6726
6727// SetBundleId sets the BundleId field's value.
6728func (s *APNSVoipChannelRequest) SetBundleId(v string) *APNSVoipChannelRequest {
6729	s.BundleId = &v
6730	return s
6731}
6732
6733// SetCertificate sets the Certificate field's value.
6734func (s *APNSVoipChannelRequest) SetCertificate(v string) *APNSVoipChannelRequest {
6735	s.Certificate = &v
6736	return s
6737}
6738
6739// SetDefaultAuthenticationMethod sets the DefaultAuthenticationMethod field's value.
6740func (s *APNSVoipChannelRequest) SetDefaultAuthenticationMethod(v string) *APNSVoipChannelRequest {
6741	s.DefaultAuthenticationMethod = &v
6742	return s
6743}
6744
6745// SetEnabled sets the Enabled field's value.
6746func (s *APNSVoipChannelRequest) SetEnabled(v bool) *APNSVoipChannelRequest {
6747	s.Enabled = &v
6748	return s
6749}
6750
6751// SetPrivateKey sets the PrivateKey field's value.
6752func (s *APNSVoipChannelRequest) SetPrivateKey(v string) *APNSVoipChannelRequest {
6753	s.PrivateKey = &v
6754	return s
6755}
6756
6757// SetTeamId sets the TeamId field's value.
6758func (s *APNSVoipChannelRequest) SetTeamId(v string) *APNSVoipChannelRequest {
6759	s.TeamId = &v
6760	return s
6761}
6762
6763// SetTokenKey sets the TokenKey field's value.
6764func (s *APNSVoipChannelRequest) SetTokenKey(v string) *APNSVoipChannelRequest {
6765	s.TokenKey = &v
6766	return s
6767}
6768
6769// SetTokenKeyId sets the TokenKeyId field's value.
6770func (s *APNSVoipChannelRequest) SetTokenKeyId(v string) *APNSVoipChannelRequest {
6771	s.TokenKeyId = &v
6772	return s
6773}
6774
6775// Apple VoIP Push Notification Service channel definition.
6776type APNSVoipChannelResponse struct {
6777	_ struct{} `type:"structure"`
6778
6779	// Application id
6780	ApplicationId *string `type:"string"`
6781
6782	// When was this segment created
6783	CreationDate *string `type:"string"`
6784
6785	// The default authentication method used for APNs.
6786	DefaultAuthenticationMethod *string `type:"string"`
6787
6788	// If the channel is enabled for sending messages.
6789	Enabled *bool `type:"boolean"`
6790
6791	// If the channel is registered with a credential for authentication.
6792	HasCredential *bool `type:"boolean"`
6793
6794	// If the channel is registered with a token key for authentication.
6795	HasTokenKey *bool `type:"boolean"`
6796
6797	// Channel ID. Not used, only for backwards compatibility.
6798	Id *string `type:"string"`
6799
6800	// Is this channel archived
6801	IsArchived *bool `type:"boolean"`
6802
6803	// Who made the last change
6804	LastModifiedBy *string `type:"string"`
6805
6806	// Last date this was updated
6807	LastModifiedDate *string `type:"string"`
6808
6809	// The platform type. Will be APNS.
6810	Platform *string `type:"string"`
6811
6812	// Version of channel
6813	Version *int64 `type:"integer"`
6814}
6815
6816// String returns the string representation
6817func (s APNSVoipChannelResponse) String() string {
6818	return awsutil.Prettify(s)
6819}
6820
6821// GoString returns the string representation
6822func (s APNSVoipChannelResponse) GoString() string {
6823	return s.String()
6824}
6825
6826// SetApplicationId sets the ApplicationId field's value.
6827func (s *APNSVoipChannelResponse) SetApplicationId(v string) *APNSVoipChannelResponse {
6828	s.ApplicationId = &v
6829	return s
6830}
6831
6832// SetCreationDate sets the CreationDate field's value.
6833func (s *APNSVoipChannelResponse) SetCreationDate(v string) *APNSVoipChannelResponse {
6834	s.CreationDate = &v
6835	return s
6836}
6837
6838// SetDefaultAuthenticationMethod sets the DefaultAuthenticationMethod field's value.
6839func (s *APNSVoipChannelResponse) SetDefaultAuthenticationMethod(v string) *APNSVoipChannelResponse {
6840	s.DefaultAuthenticationMethod = &v
6841	return s
6842}
6843
6844// SetEnabled sets the Enabled field's value.
6845func (s *APNSVoipChannelResponse) SetEnabled(v bool) *APNSVoipChannelResponse {
6846	s.Enabled = &v
6847	return s
6848}
6849
6850// SetHasCredential sets the HasCredential field's value.
6851func (s *APNSVoipChannelResponse) SetHasCredential(v bool) *APNSVoipChannelResponse {
6852	s.HasCredential = &v
6853	return s
6854}
6855
6856// SetHasTokenKey sets the HasTokenKey field's value.
6857func (s *APNSVoipChannelResponse) SetHasTokenKey(v bool) *APNSVoipChannelResponse {
6858	s.HasTokenKey = &v
6859	return s
6860}
6861
6862// SetId sets the Id field's value.
6863func (s *APNSVoipChannelResponse) SetId(v string) *APNSVoipChannelResponse {
6864	s.Id = &v
6865	return s
6866}
6867
6868// SetIsArchived sets the IsArchived field's value.
6869func (s *APNSVoipChannelResponse) SetIsArchived(v bool) *APNSVoipChannelResponse {
6870	s.IsArchived = &v
6871	return s
6872}
6873
6874// SetLastModifiedBy sets the LastModifiedBy field's value.
6875func (s *APNSVoipChannelResponse) SetLastModifiedBy(v string) *APNSVoipChannelResponse {
6876	s.LastModifiedBy = &v
6877	return s
6878}
6879
6880// SetLastModifiedDate sets the LastModifiedDate field's value.
6881func (s *APNSVoipChannelResponse) SetLastModifiedDate(v string) *APNSVoipChannelResponse {
6882	s.LastModifiedDate = &v
6883	return s
6884}
6885
6886// SetPlatform sets the Platform field's value.
6887func (s *APNSVoipChannelResponse) SetPlatform(v string) *APNSVoipChannelResponse {
6888	s.Platform = &v
6889	return s
6890}
6891
6892// SetVersion sets the Version field's value.
6893func (s *APNSVoipChannelResponse) SetVersion(v int64) *APNSVoipChannelResponse {
6894	s.Version = &v
6895	return s
6896}
6897
6898// Apple VoIP Developer Push Notification Service channel definition.
6899type APNSVoipSandboxChannelRequest struct {
6900	_ struct{} `type:"structure"`
6901
6902	// The bundle id used for APNs Tokens.
6903	BundleId *string `type:"string"`
6904
6905	// The distribution certificate from Apple.
6906	Certificate *string `type:"string"`
6907
6908	// The default authentication method used for APNs.
6909	DefaultAuthenticationMethod *string `type:"string"`
6910
6911	// If the channel is enabled for sending messages.
6912	Enabled *bool `type:"boolean"`
6913
6914	// The certificate private key.
6915	PrivateKey *string `type:"string"`
6916
6917	// The team id used for APNs Tokens.
6918	TeamId *string `type:"string"`
6919
6920	// The token key used for APNs Tokens.
6921	TokenKey *string `type:"string"`
6922
6923	// The token key used for APNs Tokens.
6924	TokenKeyId *string `type:"string"`
6925}
6926
6927// String returns the string representation
6928func (s APNSVoipSandboxChannelRequest) String() string {
6929	return awsutil.Prettify(s)
6930}
6931
6932// GoString returns the string representation
6933func (s APNSVoipSandboxChannelRequest) GoString() string {
6934	return s.String()
6935}
6936
6937// SetBundleId sets the BundleId field's value.
6938func (s *APNSVoipSandboxChannelRequest) SetBundleId(v string) *APNSVoipSandboxChannelRequest {
6939	s.BundleId = &v
6940	return s
6941}
6942
6943// SetCertificate sets the Certificate field's value.
6944func (s *APNSVoipSandboxChannelRequest) SetCertificate(v string) *APNSVoipSandboxChannelRequest {
6945	s.Certificate = &v
6946	return s
6947}
6948
6949// SetDefaultAuthenticationMethod sets the DefaultAuthenticationMethod field's value.
6950func (s *APNSVoipSandboxChannelRequest) SetDefaultAuthenticationMethod(v string) *APNSVoipSandboxChannelRequest {
6951	s.DefaultAuthenticationMethod = &v
6952	return s
6953}
6954
6955// SetEnabled sets the Enabled field's value.
6956func (s *APNSVoipSandboxChannelRequest) SetEnabled(v bool) *APNSVoipSandboxChannelRequest {
6957	s.Enabled = &v
6958	return s
6959}
6960
6961// SetPrivateKey sets the PrivateKey field's value.
6962func (s *APNSVoipSandboxChannelRequest) SetPrivateKey(v string) *APNSVoipSandboxChannelRequest {
6963	s.PrivateKey = &v
6964	return s
6965}
6966
6967// SetTeamId sets the TeamId field's value.
6968func (s *APNSVoipSandboxChannelRequest) SetTeamId(v string) *APNSVoipSandboxChannelRequest {
6969	s.TeamId = &v
6970	return s
6971}
6972
6973// SetTokenKey sets the TokenKey field's value.
6974func (s *APNSVoipSandboxChannelRequest) SetTokenKey(v string) *APNSVoipSandboxChannelRequest {
6975	s.TokenKey = &v
6976	return s
6977}
6978
6979// SetTokenKeyId sets the TokenKeyId field's value.
6980func (s *APNSVoipSandboxChannelRequest) SetTokenKeyId(v string) *APNSVoipSandboxChannelRequest {
6981	s.TokenKeyId = &v
6982	return s
6983}
6984
6985// Apple VoIP Developer Push Notification Service channel definition.
6986type APNSVoipSandboxChannelResponse struct {
6987	_ struct{} `type:"structure"`
6988
6989	// Application id
6990	ApplicationId *string `type:"string"`
6991
6992	// When was this segment created
6993	CreationDate *string `type:"string"`
6994
6995	// The default authentication method used for APNs.
6996	DefaultAuthenticationMethod *string `type:"string"`
6997
6998	// If the channel is enabled for sending messages.
6999	Enabled *bool `type:"boolean"`
7000
7001	// If the channel is registered with a credential for authentication.
7002	HasCredential *bool `type:"boolean"`
7003
7004	// If the channel is registered with a token key for authentication.
7005	HasTokenKey *bool `type:"boolean"`
7006
7007	// Channel ID. Not used, only for backwards compatibility.
7008	Id *string `type:"string"`
7009
7010	// Is this channel archived
7011	IsArchived *bool `type:"boolean"`
7012
7013	// Who made the last change
7014	LastModifiedBy *string `type:"string"`
7015
7016	// Last date this was updated
7017	LastModifiedDate *string `type:"string"`
7018
7019	// The platform type. Will be APNS.
7020	Platform *string `type:"string"`
7021
7022	// Version of channel
7023	Version *int64 `type:"integer"`
7024}
7025
7026// String returns the string representation
7027func (s APNSVoipSandboxChannelResponse) String() string {
7028	return awsutil.Prettify(s)
7029}
7030
7031// GoString returns the string representation
7032func (s APNSVoipSandboxChannelResponse) GoString() string {
7033	return s.String()
7034}
7035
7036// SetApplicationId sets the ApplicationId field's value.
7037func (s *APNSVoipSandboxChannelResponse) SetApplicationId(v string) *APNSVoipSandboxChannelResponse {
7038	s.ApplicationId = &v
7039	return s
7040}
7041
7042// SetCreationDate sets the CreationDate field's value.
7043func (s *APNSVoipSandboxChannelResponse) SetCreationDate(v string) *APNSVoipSandboxChannelResponse {
7044	s.CreationDate = &v
7045	return s
7046}
7047
7048// SetDefaultAuthenticationMethod sets the DefaultAuthenticationMethod field's value.
7049func (s *APNSVoipSandboxChannelResponse) SetDefaultAuthenticationMethod(v string) *APNSVoipSandboxChannelResponse {
7050	s.DefaultAuthenticationMethod = &v
7051	return s
7052}
7053
7054// SetEnabled sets the Enabled field's value.
7055func (s *APNSVoipSandboxChannelResponse) SetEnabled(v bool) *APNSVoipSandboxChannelResponse {
7056	s.Enabled = &v
7057	return s
7058}
7059
7060// SetHasCredential sets the HasCredential field's value.
7061func (s *APNSVoipSandboxChannelResponse) SetHasCredential(v bool) *APNSVoipSandboxChannelResponse {
7062	s.HasCredential = &v
7063	return s
7064}
7065
7066// SetHasTokenKey sets the HasTokenKey field's value.
7067func (s *APNSVoipSandboxChannelResponse) SetHasTokenKey(v bool) *APNSVoipSandboxChannelResponse {
7068	s.HasTokenKey = &v
7069	return s
7070}
7071
7072// SetId sets the Id field's value.
7073func (s *APNSVoipSandboxChannelResponse) SetId(v string) *APNSVoipSandboxChannelResponse {
7074	s.Id = &v
7075	return s
7076}
7077
7078// SetIsArchived sets the IsArchived field's value.
7079func (s *APNSVoipSandboxChannelResponse) SetIsArchived(v bool) *APNSVoipSandboxChannelResponse {
7080	s.IsArchived = &v
7081	return s
7082}
7083
7084// SetLastModifiedBy sets the LastModifiedBy field's value.
7085func (s *APNSVoipSandboxChannelResponse) SetLastModifiedBy(v string) *APNSVoipSandboxChannelResponse {
7086	s.LastModifiedBy = &v
7087	return s
7088}
7089
7090// SetLastModifiedDate sets the LastModifiedDate field's value.
7091func (s *APNSVoipSandboxChannelResponse) SetLastModifiedDate(v string) *APNSVoipSandboxChannelResponse {
7092	s.LastModifiedDate = &v
7093	return s
7094}
7095
7096// SetPlatform sets the Platform field's value.
7097func (s *APNSVoipSandboxChannelResponse) SetPlatform(v string) *APNSVoipSandboxChannelResponse {
7098	s.Platform = &v
7099	return s
7100}
7101
7102// SetVersion sets the Version field's value.
7103func (s *APNSVoipSandboxChannelResponse) SetVersion(v int64) *APNSVoipSandboxChannelResponse {
7104	s.Version = &v
7105	return s
7106}
7107
7108// Activities for campaign.
7109type ActivitiesResponse struct {
7110	_ struct{} `type:"structure"`
7111
7112	// List of campaign activities
7113	Item []*ActivityResponse `type:"list"`
7114}
7115
7116// String returns the string representation
7117func (s ActivitiesResponse) String() string {
7118	return awsutil.Prettify(s)
7119}
7120
7121// GoString returns the string representation
7122func (s ActivitiesResponse) GoString() string {
7123	return s.String()
7124}
7125
7126// SetItem sets the Item field's value.
7127func (s *ActivitiesResponse) SetItem(v []*ActivityResponse) *ActivitiesResponse {
7128	s.Item = v
7129	return s
7130}
7131
7132// Activity definition
7133type ActivityResponse struct {
7134	_ struct{} `type:"structure"`
7135
7136	// The ID of the application to which the campaign applies.
7137	ApplicationId *string `type:"string"`
7138
7139	// The ID of the campaign to which the activity applies.
7140	CampaignId *string `type:"string"`
7141
7142	// The actual time the activity was marked CANCELLED or COMPLETED. Provided
7143	// in ISO 8601 format.
7144	End *string `type:"string"`
7145
7146	// The unique activity ID.
7147	Id *string `type:"string"`
7148
7149	// Indicates whether the activity succeeded.Valid values: SUCCESS, FAIL
7150	Result *string `type:"string"`
7151
7152	// The scheduled start time for the activity in ISO 8601 format.
7153	ScheduledStart *string `type:"string"`
7154
7155	// The actual start time of the activity in ISO 8601 format.
7156	Start *string `type:"string"`
7157
7158	// The state of the activity.Valid values: PENDING, INITIALIZING, RUNNING, PAUSED,
7159	// CANCELLED, COMPLETED
7160	State *string `type:"string"`
7161
7162	// The total number of endpoints to which the campaign successfully delivered
7163	// messages.
7164	SuccessfulEndpointCount *int64 `type:"integer"`
7165
7166	// The total number of timezones completed.
7167	TimezonesCompletedCount *int64 `type:"integer"`
7168
7169	// The total number of unique timezones present in the segment.
7170	TimezonesTotalCount *int64 `type:"integer"`
7171
7172	// The total number of endpoints to which the campaign attempts to deliver messages.
7173	TotalEndpointCount *int64 `type:"integer"`
7174
7175	// The ID of a variation of the campaign used for A/B testing.
7176	TreatmentId *string `type:"string"`
7177}
7178
7179// String returns the string representation
7180func (s ActivityResponse) String() string {
7181	return awsutil.Prettify(s)
7182}
7183
7184// GoString returns the string representation
7185func (s ActivityResponse) GoString() string {
7186	return s.String()
7187}
7188
7189// SetApplicationId sets the ApplicationId field's value.
7190func (s *ActivityResponse) SetApplicationId(v string) *ActivityResponse {
7191	s.ApplicationId = &v
7192	return s
7193}
7194
7195// SetCampaignId sets the CampaignId field's value.
7196func (s *ActivityResponse) SetCampaignId(v string) *ActivityResponse {
7197	s.CampaignId = &v
7198	return s
7199}
7200
7201// SetEnd sets the End field's value.
7202func (s *ActivityResponse) SetEnd(v string) *ActivityResponse {
7203	s.End = &v
7204	return s
7205}
7206
7207// SetId sets the Id field's value.
7208func (s *ActivityResponse) SetId(v string) *ActivityResponse {
7209	s.Id = &v
7210	return s
7211}
7212
7213// SetResult sets the Result field's value.
7214func (s *ActivityResponse) SetResult(v string) *ActivityResponse {
7215	s.Result = &v
7216	return s
7217}
7218
7219// SetScheduledStart sets the ScheduledStart field's value.
7220func (s *ActivityResponse) SetScheduledStart(v string) *ActivityResponse {
7221	s.ScheduledStart = &v
7222	return s
7223}
7224
7225// SetStart sets the Start field's value.
7226func (s *ActivityResponse) SetStart(v string) *ActivityResponse {
7227	s.Start = &v
7228	return s
7229}
7230
7231// SetState sets the State field's value.
7232func (s *ActivityResponse) SetState(v string) *ActivityResponse {
7233	s.State = &v
7234	return s
7235}
7236
7237// SetSuccessfulEndpointCount sets the SuccessfulEndpointCount field's value.
7238func (s *ActivityResponse) SetSuccessfulEndpointCount(v int64) *ActivityResponse {
7239	s.SuccessfulEndpointCount = &v
7240	return s
7241}
7242
7243// SetTimezonesCompletedCount sets the TimezonesCompletedCount field's value.
7244func (s *ActivityResponse) SetTimezonesCompletedCount(v int64) *ActivityResponse {
7245	s.TimezonesCompletedCount = &v
7246	return s
7247}
7248
7249// SetTimezonesTotalCount sets the TimezonesTotalCount field's value.
7250func (s *ActivityResponse) SetTimezonesTotalCount(v int64) *ActivityResponse {
7251	s.TimezonesTotalCount = &v
7252	return s
7253}
7254
7255// SetTotalEndpointCount sets the TotalEndpointCount field's value.
7256func (s *ActivityResponse) SetTotalEndpointCount(v int64) *ActivityResponse {
7257	s.TotalEndpointCount = &v
7258	return s
7259}
7260
7261// SetTreatmentId sets the TreatmentId field's value.
7262func (s *ActivityResponse) SetTreatmentId(v string) *ActivityResponse {
7263	s.TreatmentId = &v
7264	return s
7265}
7266
7267// Address configuration.
7268type AddressConfiguration struct {
7269	_ struct{} `type:"structure"`
7270
7271	// Body override. If specified will override default body.
7272	BodyOverride *string `type:"string"`
7273
7274	// The channel type.Valid values: GCM | APNS | APNS_SANDBOX | APNS_VOIP | APNS_VOIP_SANDBOX
7275	// | ADM | SMS | EMAIL | BAIDU
7276	ChannelType *string `type:"string" enum:"ChannelType"`
7277
7278	// A map of custom attributes to attributes to be attached to the message for
7279	// this address. This payload is added to the push notification's 'data.pinpoint'
7280	// object or added to the email/sms delivery receipt event attributes.
7281	Context map[string]*string `type:"map"`
7282
7283	// The Raw JSON formatted string to be used as the payload. This value overrides
7284	// the message.
7285	RawContent *string `type:"string"`
7286
7287	Substitutions map[string][]*string `type:"map"`
7288
7289	// Title override. If specified will override default title if applicable.
7290	TitleOverride *string `type:"string"`
7291}
7292
7293// String returns the string representation
7294func (s AddressConfiguration) String() string {
7295	return awsutil.Prettify(s)
7296}
7297
7298// GoString returns the string representation
7299func (s AddressConfiguration) GoString() string {
7300	return s.String()
7301}
7302
7303// SetBodyOverride sets the BodyOverride field's value.
7304func (s *AddressConfiguration) SetBodyOverride(v string) *AddressConfiguration {
7305	s.BodyOverride = &v
7306	return s
7307}
7308
7309// SetChannelType sets the ChannelType field's value.
7310func (s *AddressConfiguration) SetChannelType(v string) *AddressConfiguration {
7311	s.ChannelType = &v
7312	return s
7313}
7314
7315// SetContext sets the Context field's value.
7316func (s *AddressConfiguration) SetContext(v map[string]*string) *AddressConfiguration {
7317	s.Context = v
7318	return s
7319}
7320
7321// SetRawContent sets the RawContent field's value.
7322func (s *AddressConfiguration) SetRawContent(v string) *AddressConfiguration {
7323	s.RawContent = &v
7324	return s
7325}
7326
7327// SetSubstitutions sets the Substitutions field's value.
7328func (s *AddressConfiguration) SetSubstitutions(v map[string][]*string) *AddressConfiguration {
7329	s.Substitutions = v
7330	return s
7331}
7332
7333// SetTitleOverride sets the TitleOverride field's value.
7334func (s *AddressConfiguration) SetTitleOverride(v string) *AddressConfiguration {
7335	s.TitleOverride = &v
7336	return s
7337}
7338
7339// Application Response.
7340type ApplicationResponse struct {
7341	_ struct{} `type:"structure"`
7342
7343	// The unique application ID.
7344	Id *string `type:"string"`
7345
7346	// The display name of the application.
7347	Name *string `type:"string"`
7348}
7349
7350// String returns the string representation
7351func (s ApplicationResponse) String() string {
7352	return awsutil.Prettify(s)
7353}
7354
7355// GoString returns the string representation
7356func (s ApplicationResponse) GoString() string {
7357	return s.String()
7358}
7359
7360// SetId sets the Id field's value.
7361func (s *ApplicationResponse) SetId(v string) *ApplicationResponse {
7362	s.Id = &v
7363	return s
7364}
7365
7366// SetName sets the Name field's value.
7367func (s *ApplicationResponse) SetName(v string) *ApplicationResponse {
7368	s.Name = &v
7369	return s
7370}
7371
7372// Application settings.
7373type ApplicationSettingsResource struct {
7374	_ struct{} `type:"structure"`
7375
7376	// The unique ID for the application.
7377	ApplicationId *string `type:"string"`
7378
7379	// Default campaign hook.
7380	CampaignHook *CampaignHook `type:"structure"`
7381
7382	// The date that the settings were last updated in ISO 8601 format.
7383	LastModifiedDate *string `type:"string"`
7384
7385	// The default campaign limits for the app. These limits apply to each campaign
7386	// for the app, unless the campaign overrides the default with limits of its
7387	// own.
7388	Limits *CampaignLimits `type:"structure"`
7389
7390	// The default quiet time for the app. Each campaign for this app sends no messages
7391	// during this time unless the campaign overrides the default with a quiet time
7392	// of its own.
7393	QuietTime *QuietTime `type:"structure"`
7394}
7395
7396// String returns the string representation
7397func (s ApplicationSettingsResource) String() string {
7398	return awsutil.Prettify(s)
7399}
7400
7401// GoString returns the string representation
7402func (s ApplicationSettingsResource) GoString() string {
7403	return s.String()
7404}
7405
7406// SetApplicationId sets the ApplicationId field's value.
7407func (s *ApplicationSettingsResource) SetApplicationId(v string) *ApplicationSettingsResource {
7408	s.ApplicationId = &v
7409	return s
7410}
7411
7412// SetCampaignHook sets the CampaignHook field's value.
7413func (s *ApplicationSettingsResource) SetCampaignHook(v *CampaignHook) *ApplicationSettingsResource {
7414	s.CampaignHook = v
7415	return s
7416}
7417
7418// SetLastModifiedDate sets the LastModifiedDate field's value.
7419func (s *ApplicationSettingsResource) SetLastModifiedDate(v string) *ApplicationSettingsResource {
7420	s.LastModifiedDate = &v
7421	return s
7422}
7423
7424// SetLimits sets the Limits field's value.
7425func (s *ApplicationSettingsResource) SetLimits(v *CampaignLimits) *ApplicationSettingsResource {
7426	s.Limits = v
7427	return s
7428}
7429
7430// SetQuietTime sets the QuietTime field's value.
7431func (s *ApplicationSettingsResource) SetQuietTime(v *QuietTime) *ApplicationSettingsResource {
7432	s.QuietTime = v
7433	return s
7434}
7435
7436// Get Applications Result.
7437type ApplicationsResponse struct {
7438	_ struct{} `type:"structure"`
7439
7440	// List of applications returned in this page.
7441	Item []*ApplicationResponse `type:"list"`
7442
7443	// The string that you use in a subsequent request to get the next page of results
7444	// in a paginated response.
7445	NextToken *string `type:"string"`
7446}
7447
7448// String returns the string representation
7449func (s ApplicationsResponse) String() string {
7450	return awsutil.Prettify(s)
7451}
7452
7453// GoString returns the string representation
7454func (s ApplicationsResponse) GoString() string {
7455	return s.String()
7456}
7457
7458// SetItem sets the Item field's value.
7459func (s *ApplicationsResponse) SetItem(v []*ApplicationResponse) *ApplicationsResponse {
7460	s.Item = v
7461	return s
7462}
7463
7464// SetNextToken sets the NextToken field's value.
7465func (s *ApplicationsResponse) SetNextToken(v string) *ApplicationsResponse {
7466	s.NextToken = &v
7467	return s
7468}
7469
7470// Custom attibute dimension
7471type AttributeDimension struct {
7472	_ struct{} `type:"structure"`
7473
7474	// The type of dimension:INCLUSIVE - Endpoints that match the criteria are included
7475	// in the segment.EXCLUSIVE - Endpoints that match the criteria are excluded
7476	// from the segment.
7477	AttributeType *string `type:"string" enum:"AttributeType"`
7478
7479	Values []*string `type:"list"`
7480}
7481
7482// String returns the string representation
7483func (s AttributeDimension) String() string {
7484	return awsutil.Prettify(s)
7485}
7486
7487// GoString returns the string representation
7488func (s AttributeDimension) GoString() string {
7489	return s.String()
7490}
7491
7492// SetAttributeType sets the AttributeType field's value.
7493func (s *AttributeDimension) SetAttributeType(v string) *AttributeDimension {
7494	s.AttributeType = &v
7495	return s
7496}
7497
7498// SetValues sets the Values field's value.
7499func (s *AttributeDimension) SetValues(v []*string) *AttributeDimension {
7500	s.Values = v
7501	return s
7502}
7503
7504// Baidu Cloud Push credentials
7505type BaiduChannelRequest struct {
7506	_ struct{} `type:"structure"`
7507
7508	// Platform credential API key from Baidu.
7509	ApiKey *string `type:"string"`
7510
7511	// If the channel is enabled for sending messages.
7512	Enabled *bool `type:"boolean"`
7513
7514	// Platform credential Secret key from Baidu.
7515	SecretKey *string `type:"string"`
7516}
7517
7518// String returns the string representation
7519func (s BaiduChannelRequest) String() string {
7520	return awsutil.Prettify(s)
7521}
7522
7523// GoString returns the string representation
7524func (s BaiduChannelRequest) GoString() string {
7525	return s.String()
7526}
7527
7528// SetApiKey sets the ApiKey field's value.
7529func (s *BaiduChannelRequest) SetApiKey(v string) *BaiduChannelRequest {
7530	s.ApiKey = &v
7531	return s
7532}
7533
7534// SetEnabled sets the Enabled field's value.
7535func (s *BaiduChannelRequest) SetEnabled(v bool) *BaiduChannelRequest {
7536	s.Enabled = &v
7537	return s
7538}
7539
7540// SetSecretKey sets the SecretKey field's value.
7541func (s *BaiduChannelRequest) SetSecretKey(v string) *BaiduChannelRequest {
7542	s.SecretKey = &v
7543	return s
7544}
7545
7546// Baidu Cloud Messaging channel definition
7547type BaiduChannelResponse struct {
7548	_ struct{} `type:"structure"`
7549
7550	// Application id
7551	ApplicationId *string `type:"string"`
7552
7553	// When was this segment created
7554	CreationDate *string `type:"string"`
7555
7556	// The Baidu API key from Baidu.
7557	Credential *string `type:"string"`
7558
7559	// If the channel is enabled for sending messages.
7560	Enabled *bool `type:"boolean"`
7561
7562	// Indicates whether the channel is configured with Baidu Cloud Push credentials.
7563	// Amazon Pinpoint uses your credentials to authenticate push notifications
7564	// with Baidu Cloud Push. Provide your credentials by setting the ApiKey and
7565	// SecretKey attributes.
7566	HasCredential *bool `type:"boolean"`
7567
7568	// Channel ID. Not used, only for backwards compatibility.
7569	Id *string `type:"string"`
7570
7571	// Is this channel archived
7572	IsArchived *bool `type:"boolean"`
7573
7574	// Who made the last change
7575	LastModifiedBy *string `type:"string"`
7576
7577	// Last date this was updated
7578	LastModifiedDate *string `type:"string"`
7579
7580	// The platform type. Will be BAIDU
7581	Platform *string `type:"string"`
7582
7583	// Version of channel
7584	Version *int64 `type:"integer"`
7585}
7586
7587// String returns the string representation
7588func (s BaiduChannelResponse) String() string {
7589	return awsutil.Prettify(s)
7590}
7591
7592// GoString returns the string representation
7593func (s BaiduChannelResponse) GoString() string {
7594	return s.String()
7595}
7596
7597// SetApplicationId sets the ApplicationId field's value.
7598func (s *BaiduChannelResponse) SetApplicationId(v string) *BaiduChannelResponse {
7599	s.ApplicationId = &v
7600	return s
7601}
7602
7603// SetCreationDate sets the CreationDate field's value.
7604func (s *BaiduChannelResponse) SetCreationDate(v string) *BaiduChannelResponse {
7605	s.CreationDate = &v
7606	return s
7607}
7608
7609// SetCredential sets the Credential field's value.
7610func (s *BaiduChannelResponse) SetCredential(v string) *BaiduChannelResponse {
7611	s.Credential = &v
7612	return s
7613}
7614
7615// SetEnabled sets the Enabled field's value.
7616func (s *BaiduChannelResponse) SetEnabled(v bool) *BaiduChannelResponse {
7617	s.Enabled = &v
7618	return s
7619}
7620
7621// SetHasCredential sets the HasCredential field's value.
7622func (s *BaiduChannelResponse) SetHasCredential(v bool) *BaiduChannelResponse {
7623	s.HasCredential = &v
7624	return s
7625}
7626
7627// SetId sets the Id field's value.
7628func (s *BaiduChannelResponse) SetId(v string) *BaiduChannelResponse {
7629	s.Id = &v
7630	return s
7631}
7632
7633// SetIsArchived sets the IsArchived field's value.
7634func (s *BaiduChannelResponse) SetIsArchived(v bool) *BaiduChannelResponse {
7635	s.IsArchived = &v
7636	return s
7637}
7638
7639// SetLastModifiedBy sets the LastModifiedBy field's value.
7640func (s *BaiduChannelResponse) SetLastModifiedBy(v string) *BaiduChannelResponse {
7641	s.LastModifiedBy = &v
7642	return s
7643}
7644
7645// SetLastModifiedDate sets the LastModifiedDate field's value.
7646func (s *BaiduChannelResponse) SetLastModifiedDate(v string) *BaiduChannelResponse {
7647	s.LastModifiedDate = &v
7648	return s
7649}
7650
7651// SetPlatform sets the Platform field's value.
7652func (s *BaiduChannelResponse) SetPlatform(v string) *BaiduChannelResponse {
7653	s.Platform = &v
7654	return s
7655}
7656
7657// SetVersion sets the Version field's value.
7658func (s *BaiduChannelResponse) SetVersion(v int64) *BaiduChannelResponse {
7659	s.Version = &v
7660	return s
7661}
7662
7663// Baidu Message.
7664type BaiduMessage struct {
7665	_ struct{} `type:"structure"`
7666
7667	// The action that occurs if the user taps a push notification delivered by
7668	// the campaign: OPEN_APP - Your app launches, or it becomes the foreground
7669	// app if it has been sent to the background. This is the default action. DEEP_LINK
7670	// - Uses deep linking features in iOS and Android to open your app and display
7671	// a designated user interface within the app. URL - The default mobile browser
7672	// on the user's device launches and opens a web page at the URL you specify.
7673	// Possible values include: OPEN_APP | DEEP_LINK | URL
7674	Action *string `type:"string" enum:"Action"`
7675
7676	// The message body of the notification, the email body or the text message.
7677	Body *string `type:"string"`
7678
7679	// The data payload used for a silent push. This payload is added to the notifications'
7680	// data.pinpoint.jsonBody' object
7681	Data map[string]*string `type:"map"`
7682
7683	// The icon image name of the asset saved in your application.
7684	IconReference *string `type:"string"`
7685
7686	// The URL that points to an image used as the large icon to the notification
7687	// content view.
7688	ImageIconUrl *string `type:"string"`
7689
7690	// The URL that points to an image used in the push notification.
7691	ImageUrl *string `type:"string"`
7692
7693	// The Raw JSON formatted string to be used as the payload. This value overrides
7694	// the message.
7695	RawContent *string `type:"string"`
7696
7697	// Indicates if the message should display on the users device. Silent pushes
7698	// can be used for Remote Configuration and Phone Home use cases.
7699	SilentPush *bool `type:"boolean"`
7700
7701	// The URL that points to an image used as the small icon for the notification
7702	// which will be used to represent the notification in the status bar and content
7703	// view
7704	SmallImageIconUrl *string `type:"string"`
7705
7706	// Indicates a sound to play when the device receives the notification. Supports
7707	// default, or the filename of a sound resource bundled in the app. Android
7708	// sound files must reside in /res/raw/
7709	Sound *string `type:"string"`
7710
7711	Substitutions map[string][]*string `type:"map"`
7712
7713	// The message title that displays above the message on the user's device.
7714	Title *string `type:"string"`
7715
7716	// The URL to open in the user's mobile browser. Used if the value for Action
7717	// is URL.
7718	Url *string `type:"string"`
7719}
7720
7721// String returns the string representation
7722func (s BaiduMessage) String() string {
7723	return awsutil.Prettify(s)
7724}
7725
7726// GoString returns the string representation
7727func (s BaiduMessage) GoString() string {
7728	return s.String()
7729}
7730
7731// SetAction sets the Action field's value.
7732func (s *BaiduMessage) SetAction(v string) *BaiduMessage {
7733	s.Action = &v
7734	return s
7735}
7736
7737// SetBody sets the Body field's value.
7738func (s *BaiduMessage) SetBody(v string) *BaiduMessage {
7739	s.Body = &v
7740	return s
7741}
7742
7743// SetData sets the Data field's value.
7744func (s *BaiduMessage) SetData(v map[string]*string) *BaiduMessage {
7745	s.Data = v
7746	return s
7747}
7748
7749// SetIconReference sets the IconReference field's value.
7750func (s *BaiduMessage) SetIconReference(v string) *BaiduMessage {
7751	s.IconReference = &v
7752	return s
7753}
7754
7755// SetImageIconUrl sets the ImageIconUrl field's value.
7756func (s *BaiduMessage) SetImageIconUrl(v string) *BaiduMessage {
7757	s.ImageIconUrl = &v
7758	return s
7759}
7760
7761// SetImageUrl sets the ImageUrl field's value.
7762func (s *BaiduMessage) SetImageUrl(v string) *BaiduMessage {
7763	s.ImageUrl = &v
7764	return s
7765}
7766
7767// SetRawContent sets the RawContent field's value.
7768func (s *BaiduMessage) SetRawContent(v string) *BaiduMessage {
7769	s.RawContent = &v
7770	return s
7771}
7772
7773// SetSilentPush sets the SilentPush field's value.
7774func (s *BaiduMessage) SetSilentPush(v bool) *BaiduMessage {
7775	s.SilentPush = &v
7776	return s
7777}
7778
7779// SetSmallImageIconUrl sets the SmallImageIconUrl field's value.
7780func (s *BaiduMessage) SetSmallImageIconUrl(v string) *BaiduMessage {
7781	s.SmallImageIconUrl = &v
7782	return s
7783}
7784
7785// SetSound sets the Sound field's value.
7786func (s *BaiduMessage) SetSound(v string) *BaiduMessage {
7787	s.Sound = &v
7788	return s
7789}
7790
7791// SetSubstitutions sets the Substitutions field's value.
7792func (s *BaiduMessage) SetSubstitutions(v map[string][]*string) *BaiduMessage {
7793	s.Substitutions = v
7794	return s
7795}
7796
7797// SetTitle sets the Title field's value.
7798func (s *BaiduMessage) SetTitle(v string) *BaiduMessage {
7799	s.Title = &v
7800	return s
7801}
7802
7803// SetUrl sets the Url field's value.
7804func (s *BaiduMessage) SetUrl(v string) *BaiduMessage {
7805	s.Url = &v
7806	return s
7807}
7808
7809// The email message configuration.
7810type CampaignEmailMessage struct {
7811	_ struct{} `type:"structure"`
7812
7813	// The email text body.
7814	Body *string `type:"string"`
7815
7816	// The email address used to send the email from. Defaults to use FromAddress
7817	// specified in the Email Channel.
7818	FromAddress *string `type:"string"`
7819
7820	// The email html body.
7821	HtmlBody *string `type:"string"`
7822
7823	// The email title (Or subject).
7824	Title *string `type:"string"`
7825}
7826
7827// String returns the string representation
7828func (s CampaignEmailMessage) String() string {
7829	return awsutil.Prettify(s)
7830}
7831
7832// GoString returns the string representation
7833func (s CampaignEmailMessage) GoString() string {
7834	return s.String()
7835}
7836
7837// SetBody sets the Body field's value.
7838func (s *CampaignEmailMessage) SetBody(v string) *CampaignEmailMessage {
7839	s.Body = &v
7840	return s
7841}
7842
7843// SetFromAddress sets the FromAddress field's value.
7844func (s *CampaignEmailMessage) SetFromAddress(v string) *CampaignEmailMessage {
7845	s.FromAddress = &v
7846	return s
7847}
7848
7849// SetHtmlBody sets the HtmlBody field's value.
7850func (s *CampaignEmailMessage) SetHtmlBody(v string) *CampaignEmailMessage {
7851	s.HtmlBody = &v
7852	return s
7853}
7854
7855// SetTitle sets the Title field's value.
7856func (s *CampaignEmailMessage) SetTitle(v string) *CampaignEmailMessage {
7857	s.Title = &v
7858	return s
7859}
7860
7861type CampaignHook struct {
7862	_ struct{} `type:"structure"`
7863
7864	// Lambda function name or arn to be called for delivery
7865	LambdaFunctionName *string `type:"string"`
7866
7867	// What mode Lambda should be invoked in.
7868	Mode *string `type:"string" enum:"Mode"`
7869
7870	// Web URL to call for hook. If the URL has authentication specified it will
7871	// be added as authentication to the request
7872	WebUrl *string `type:"string"`
7873}
7874
7875// String returns the string representation
7876func (s CampaignHook) String() string {
7877	return awsutil.Prettify(s)
7878}
7879
7880// GoString returns the string representation
7881func (s CampaignHook) GoString() string {
7882	return s.String()
7883}
7884
7885// SetLambdaFunctionName sets the LambdaFunctionName field's value.
7886func (s *CampaignHook) SetLambdaFunctionName(v string) *CampaignHook {
7887	s.LambdaFunctionName = &v
7888	return s
7889}
7890
7891// SetMode sets the Mode field's value.
7892func (s *CampaignHook) SetMode(v string) *CampaignHook {
7893	s.Mode = &v
7894	return s
7895}
7896
7897// SetWebUrl sets the WebUrl field's value.
7898func (s *CampaignHook) SetWebUrl(v string) *CampaignHook {
7899	s.WebUrl = &v
7900	return s
7901}
7902
7903// Campaign Limits are used to limit the number of messages that can be sent
7904// to a user.
7905type CampaignLimits struct {
7906	_ struct{} `type:"structure"`
7907
7908	// The maximum number of messages that the campaign can send daily.
7909	Daily *int64 `type:"integer"`
7910
7911	// The length of time (in seconds) that the campaign can run before it ends
7912	// and message deliveries stop. This duration begins at the scheduled start
7913	// time for the campaign. The minimum value is 60.
7914	MaximumDuration *int64 `type:"integer"`
7915
7916	// The number of messages that the campaign can send per second. The minimum
7917	// value is 50, and the maximum is 20000.
7918	MessagesPerSecond *int64 `type:"integer"`
7919
7920	// The maximum total number of messages that the campaign can send.
7921	Total *int64 `type:"integer"`
7922}
7923
7924// String returns the string representation
7925func (s CampaignLimits) String() string {
7926	return awsutil.Prettify(s)
7927}
7928
7929// GoString returns the string representation
7930func (s CampaignLimits) GoString() string {
7931	return s.String()
7932}
7933
7934// SetDaily sets the Daily field's value.
7935func (s *CampaignLimits) SetDaily(v int64) *CampaignLimits {
7936	s.Daily = &v
7937	return s
7938}
7939
7940// SetMaximumDuration sets the MaximumDuration field's value.
7941func (s *CampaignLimits) SetMaximumDuration(v int64) *CampaignLimits {
7942	s.MaximumDuration = &v
7943	return s
7944}
7945
7946// SetMessagesPerSecond sets the MessagesPerSecond field's value.
7947func (s *CampaignLimits) SetMessagesPerSecond(v int64) *CampaignLimits {
7948	s.MessagesPerSecond = &v
7949	return s
7950}
7951
7952// SetTotal sets the Total field's value.
7953func (s *CampaignLimits) SetTotal(v int64) *CampaignLimits {
7954	s.Total = &v
7955	return s
7956}
7957
7958// Campaign definition
7959type CampaignResponse struct {
7960	_ struct{} `type:"structure"`
7961
7962	// Treatments that are defined in addition to the default treatment.
7963	AdditionalTreatments []*TreatmentResource `type:"list"`
7964
7965	// The ID of the application to which the campaign applies.
7966	ApplicationId *string `type:"string"`
7967
7968	// The date the campaign was created in ISO 8601 format.
7969	CreationDate *string `type:"string"`
7970
7971	// The status of the campaign's default treatment. Only present for A/B test
7972	// campaigns.
7973	DefaultState *CampaignState `type:"structure"`
7974
7975	// A description of the campaign.
7976	Description *string `type:"string"`
7977
7978	// The allocated percentage of end users who will not receive messages from
7979	// this campaign.
7980	HoldoutPercent *int64 `type:"integer"`
7981
7982	// Campaign hook information.
7983	Hook *CampaignHook `type:"structure"`
7984
7985	// The unique campaign ID.
7986	Id *string `type:"string"`
7987
7988	// Indicates whether the campaign is paused. A paused campaign does not send
7989	// messages unless you resume it by setting IsPaused to false.
7990	IsPaused *bool `type:"boolean"`
7991
7992	// The date the campaign was last updated in ISO 8601 format.
7993	LastModifiedDate *string `type:"string"`
7994
7995	// The campaign limits settings.
7996	Limits *CampaignLimits `type:"structure"`
7997
7998	// The message configuration settings.
7999	MessageConfiguration *MessageConfiguration `type:"structure"`
8000
8001	// The custom name of the campaign.
8002	Name *string `type:"string"`
8003
8004	// The campaign schedule.
8005	Schedule *Schedule `type:"structure"`
8006
8007	// The ID of the segment to which the campaign sends messages.
8008	SegmentId *string `type:"string"`
8009
8010	// The version of the segment to which the campaign sends messages.
8011	SegmentVersion *int64 `type:"integer"`
8012
8013	// The campaign status.An A/B test campaign will have a status of COMPLETED
8014	// only when all treatments have a status of COMPLETED.
8015	State *CampaignState `type:"structure"`
8016
8017	// A custom description for the treatment.
8018	TreatmentDescription *string `type:"string"`
8019
8020	// The custom name of a variation of the campaign used for A/B testing.
8021	TreatmentName *string `type:"string"`
8022
8023	// The campaign version number.
8024	Version *int64 `type:"integer"`
8025}
8026
8027// String returns the string representation
8028func (s CampaignResponse) String() string {
8029	return awsutil.Prettify(s)
8030}
8031
8032// GoString returns the string representation
8033func (s CampaignResponse) GoString() string {
8034	return s.String()
8035}
8036
8037// SetAdditionalTreatments sets the AdditionalTreatments field's value.
8038func (s *CampaignResponse) SetAdditionalTreatments(v []*TreatmentResource) *CampaignResponse {
8039	s.AdditionalTreatments = v
8040	return s
8041}
8042
8043// SetApplicationId sets the ApplicationId field's value.
8044func (s *CampaignResponse) SetApplicationId(v string) *CampaignResponse {
8045	s.ApplicationId = &v
8046	return s
8047}
8048
8049// SetCreationDate sets the CreationDate field's value.
8050func (s *CampaignResponse) SetCreationDate(v string) *CampaignResponse {
8051	s.CreationDate = &v
8052	return s
8053}
8054
8055// SetDefaultState sets the DefaultState field's value.
8056func (s *CampaignResponse) SetDefaultState(v *CampaignState) *CampaignResponse {
8057	s.DefaultState = v
8058	return s
8059}
8060
8061// SetDescription sets the Description field's value.
8062func (s *CampaignResponse) SetDescription(v string) *CampaignResponse {
8063	s.Description = &v
8064	return s
8065}
8066
8067// SetHoldoutPercent sets the HoldoutPercent field's value.
8068func (s *CampaignResponse) SetHoldoutPercent(v int64) *CampaignResponse {
8069	s.HoldoutPercent = &v
8070	return s
8071}
8072
8073// SetHook sets the Hook field's value.
8074func (s *CampaignResponse) SetHook(v *CampaignHook) *CampaignResponse {
8075	s.Hook = v
8076	return s
8077}
8078
8079// SetId sets the Id field's value.
8080func (s *CampaignResponse) SetId(v string) *CampaignResponse {
8081	s.Id = &v
8082	return s
8083}
8084
8085// SetIsPaused sets the IsPaused field's value.
8086func (s *CampaignResponse) SetIsPaused(v bool) *CampaignResponse {
8087	s.IsPaused = &v
8088	return s
8089}
8090
8091// SetLastModifiedDate sets the LastModifiedDate field's value.
8092func (s *CampaignResponse) SetLastModifiedDate(v string) *CampaignResponse {
8093	s.LastModifiedDate = &v
8094	return s
8095}
8096
8097// SetLimits sets the Limits field's value.
8098func (s *CampaignResponse) SetLimits(v *CampaignLimits) *CampaignResponse {
8099	s.Limits = v
8100	return s
8101}
8102
8103// SetMessageConfiguration sets the MessageConfiguration field's value.
8104func (s *CampaignResponse) SetMessageConfiguration(v *MessageConfiguration) *CampaignResponse {
8105	s.MessageConfiguration = v
8106	return s
8107}
8108
8109// SetName sets the Name field's value.
8110func (s *CampaignResponse) SetName(v string) *CampaignResponse {
8111	s.Name = &v
8112	return s
8113}
8114
8115// SetSchedule sets the Schedule field's value.
8116func (s *CampaignResponse) SetSchedule(v *Schedule) *CampaignResponse {
8117	s.Schedule = v
8118	return s
8119}
8120
8121// SetSegmentId sets the SegmentId field's value.
8122func (s *CampaignResponse) SetSegmentId(v string) *CampaignResponse {
8123	s.SegmentId = &v
8124	return s
8125}
8126
8127// SetSegmentVersion sets the SegmentVersion field's value.
8128func (s *CampaignResponse) SetSegmentVersion(v int64) *CampaignResponse {
8129	s.SegmentVersion = &v
8130	return s
8131}
8132
8133// SetState sets the State field's value.
8134func (s *CampaignResponse) SetState(v *CampaignState) *CampaignResponse {
8135	s.State = v
8136	return s
8137}
8138
8139// SetTreatmentDescription sets the TreatmentDescription field's value.
8140func (s *CampaignResponse) SetTreatmentDescription(v string) *CampaignResponse {
8141	s.TreatmentDescription = &v
8142	return s
8143}
8144
8145// SetTreatmentName sets the TreatmentName field's value.
8146func (s *CampaignResponse) SetTreatmentName(v string) *CampaignResponse {
8147	s.TreatmentName = &v
8148	return s
8149}
8150
8151// SetVersion sets the Version field's value.
8152func (s *CampaignResponse) SetVersion(v int64) *CampaignResponse {
8153	s.Version = &v
8154	return s
8155}
8156
8157// SMS message configuration.
8158type CampaignSmsMessage struct {
8159	_ struct{} `type:"structure"`
8160
8161	// The SMS text body.
8162	Body *string `type:"string"`
8163
8164	// Is this is a transactional SMS message, otherwise a promotional message.
8165	MessageType *string `type:"string" enum:"MessageType"`
8166
8167	// Sender ID of sent message.
8168	SenderId *string `type:"string"`
8169}
8170
8171// String returns the string representation
8172func (s CampaignSmsMessage) String() string {
8173	return awsutil.Prettify(s)
8174}
8175
8176// GoString returns the string representation
8177func (s CampaignSmsMessage) GoString() string {
8178	return s.String()
8179}
8180
8181// SetBody sets the Body field's value.
8182func (s *CampaignSmsMessage) SetBody(v string) *CampaignSmsMessage {
8183	s.Body = &v
8184	return s
8185}
8186
8187// SetMessageType sets the MessageType field's value.
8188func (s *CampaignSmsMessage) SetMessageType(v string) *CampaignSmsMessage {
8189	s.MessageType = &v
8190	return s
8191}
8192
8193// SetSenderId sets the SenderId field's value.
8194func (s *CampaignSmsMessage) SetSenderId(v string) *CampaignSmsMessage {
8195	s.SenderId = &v
8196	return s
8197}
8198
8199// State of the Campaign
8200type CampaignState struct {
8201	_ struct{} `type:"structure"`
8202
8203	// The status of the campaign, or the status of a treatment that belongs to
8204	// an A/B test campaign.Valid values: SCHEDULED, EXECUTING, PENDING_NEXT_RUN,
8205	// COMPLETED, PAUSED
8206	CampaignStatus *string `type:"string" enum:"CampaignStatus"`
8207}
8208
8209// String returns the string representation
8210func (s CampaignState) String() string {
8211	return awsutil.Prettify(s)
8212}
8213
8214// GoString returns the string representation
8215func (s CampaignState) GoString() string {
8216	return s.String()
8217}
8218
8219// SetCampaignStatus sets the CampaignStatus field's value.
8220func (s *CampaignState) SetCampaignStatus(v string) *CampaignState {
8221	s.CampaignStatus = &v
8222	return s
8223}
8224
8225// List of available campaigns.
8226type CampaignsResponse struct {
8227	_ struct{} `type:"structure"`
8228
8229	// A list of campaigns.
8230	Item []*CampaignResponse `type:"list"`
8231
8232	// The string that you use in a subsequent request to get the next page of results
8233	// in a paginated response.
8234	NextToken *string `type:"string"`
8235}
8236
8237// String returns the string representation
8238func (s CampaignsResponse) String() string {
8239	return awsutil.Prettify(s)
8240}
8241
8242// GoString returns the string representation
8243func (s CampaignsResponse) GoString() string {
8244	return s.String()
8245}
8246
8247// SetItem sets the Item field's value.
8248func (s *CampaignsResponse) SetItem(v []*CampaignResponse) *CampaignsResponse {
8249	s.Item = v
8250	return s
8251}
8252
8253// SetNextToken sets the NextToken field's value.
8254func (s *CampaignsResponse) SetNextToken(v string) *CampaignsResponse {
8255	s.NextToken = &v
8256	return s
8257}
8258
8259type CreateAppInput struct {
8260	_ struct{} `type:"structure" payload:"CreateApplicationRequest"`
8261
8262	// Application Request.
8263	//
8264	// CreateApplicationRequest is a required field
8265	CreateApplicationRequest *CreateApplicationRequest `type:"structure" required:"true"`
8266}
8267
8268// String returns the string representation
8269func (s CreateAppInput) String() string {
8270	return awsutil.Prettify(s)
8271}
8272
8273// GoString returns the string representation
8274func (s CreateAppInput) GoString() string {
8275	return s.String()
8276}
8277
8278// Validate inspects the fields of the type to determine if they are valid.
8279func (s *CreateAppInput) Validate() error {
8280	invalidParams := request.ErrInvalidParams{Context: "CreateAppInput"}
8281	if s.CreateApplicationRequest == nil {
8282		invalidParams.Add(request.NewErrParamRequired("CreateApplicationRequest"))
8283	}
8284
8285	if invalidParams.Len() > 0 {
8286		return invalidParams
8287	}
8288	return nil
8289}
8290
8291// SetCreateApplicationRequest sets the CreateApplicationRequest field's value.
8292func (s *CreateAppInput) SetCreateApplicationRequest(v *CreateApplicationRequest) *CreateAppInput {
8293	s.CreateApplicationRequest = v
8294	return s
8295}
8296
8297type CreateAppOutput struct {
8298	_ struct{} `type:"structure" payload:"ApplicationResponse"`
8299
8300	// Application Response.
8301	//
8302	// ApplicationResponse is a required field
8303	ApplicationResponse *ApplicationResponse `type:"structure" required:"true"`
8304}
8305
8306// String returns the string representation
8307func (s CreateAppOutput) String() string {
8308	return awsutil.Prettify(s)
8309}
8310
8311// GoString returns the string representation
8312func (s CreateAppOutput) GoString() string {
8313	return s.String()
8314}
8315
8316// SetApplicationResponse sets the ApplicationResponse field's value.
8317func (s *CreateAppOutput) SetApplicationResponse(v *ApplicationResponse) *CreateAppOutput {
8318	s.ApplicationResponse = v
8319	return s
8320}
8321
8322// Application Request.
8323type CreateApplicationRequest struct {
8324	_ struct{} `type:"structure"`
8325
8326	// The display name of the application. Used in the Amazon Pinpoint console.
8327	Name *string `type:"string"`
8328}
8329
8330// String returns the string representation
8331func (s CreateApplicationRequest) String() string {
8332	return awsutil.Prettify(s)
8333}
8334
8335// GoString returns the string representation
8336func (s CreateApplicationRequest) GoString() string {
8337	return s.String()
8338}
8339
8340// SetName sets the Name field's value.
8341func (s *CreateApplicationRequest) SetName(v string) *CreateApplicationRequest {
8342	s.Name = &v
8343	return s
8344}
8345
8346type CreateCampaignInput struct {
8347	_ struct{} `type:"structure" payload:"WriteCampaignRequest"`
8348
8349	// ApplicationId is a required field
8350	ApplicationId *string `location:"uri" locationName:"application-id" type:"string" required:"true"`
8351
8352	// Used to create a campaign.
8353	//
8354	// WriteCampaignRequest is a required field
8355	WriteCampaignRequest *WriteCampaignRequest `type:"structure" required:"true"`
8356}
8357
8358// String returns the string representation
8359func (s CreateCampaignInput) String() string {
8360	return awsutil.Prettify(s)
8361}
8362
8363// GoString returns the string representation
8364func (s CreateCampaignInput) GoString() string {
8365	return s.String()
8366}
8367
8368// Validate inspects the fields of the type to determine if they are valid.
8369func (s *CreateCampaignInput) Validate() error {
8370	invalidParams := request.ErrInvalidParams{Context: "CreateCampaignInput"}
8371	if s.ApplicationId == nil {
8372		invalidParams.Add(request.NewErrParamRequired("ApplicationId"))
8373	}
8374	if s.WriteCampaignRequest == nil {
8375		invalidParams.Add(request.NewErrParamRequired("WriteCampaignRequest"))
8376	}
8377
8378	if invalidParams.Len() > 0 {
8379		return invalidParams
8380	}
8381	return nil
8382}
8383
8384// SetApplicationId sets the ApplicationId field's value.
8385func (s *CreateCampaignInput) SetApplicationId(v string) *CreateCampaignInput {
8386	s.ApplicationId = &v
8387	return s
8388}
8389
8390// SetWriteCampaignRequest sets the WriteCampaignRequest field's value.
8391func (s *CreateCampaignInput) SetWriteCampaignRequest(v *WriteCampaignRequest) *CreateCampaignInput {
8392	s.WriteCampaignRequest = v
8393	return s
8394}
8395
8396type CreateCampaignOutput struct {
8397	_ struct{} `type:"structure" payload:"CampaignResponse"`
8398
8399	// Campaign definition
8400	//
8401	// CampaignResponse is a required field
8402	CampaignResponse *CampaignResponse `type:"structure" required:"true"`
8403}
8404
8405// String returns the string representation
8406func (s CreateCampaignOutput) String() string {
8407	return awsutil.Prettify(s)
8408}
8409
8410// GoString returns the string representation
8411func (s CreateCampaignOutput) GoString() string {
8412	return s.String()
8413}
8414
8415// SetCampaignResponse sets the CampaignResponse field's value.
8416func (s *CreateCampaignOutput) SetCampaignResponse(v *CampaignResponse) *CreateCampaignOutput {
8417	s.CampaignResponse = v
8418	return s
8419}
8420
8421type CreateExportJobInput struct {
8422	_ struct{} `type:"structure" payload:"ExportJobRequest"`
8423
8424	// ApplicationId is a required field
8425	ApplicationId *string `location:"uri" locationName:"application-id" type:"string" required:"true"`
8426
8427	// ExportJobRequest is a required field
8428	ExportJobRequest *ExportJobRequest `type:"structure" required:"true"`
8429}
8430
8431// String returns the string representation
8432func (s CreateExportJobInput) String() string {
8433	return awsutil.Prettify(s)
8434}
8435
8436// GoString returns the string representation
8437func (s CreateExportJobInput) GoString() string {
8438	return s.String()
8439}
8440
8441// Validate inspects the fields of the type to determine if they are valid.
8442func (s *CreateExportJobInput) Validate() error {
8443	invalidParams := request.ErrInvalidParams{Context: "CreateExportJobInput"}
8444	if s.ApplicationId == nil {
8445		invalidParams.Add(request.NewErrParamRequired("ApplicationId"))
8446	}
8447	if s.ExportJobRequest == nil {
8448		invalidParams.Add(request.NewErrParamRequired("ExportJobRequest"))
8449	}
8450
8451	if invalidParams.Len() > 0 {
8452		return invalidParams
8453	}
8454	return nil
8455}
8456
8457// SetApplicationId sets the ApplicationId field's value.
8458func (s *CreateExportJobInput) SetApplicationId(v string) *CreateExportJobInput {
8459	s.ApplicationId = &v
8460	return s
8461}
8462
8463// SetExportJobRequest sets the ExportJobRequest field's value.
8464func (s *CreateExportJobInput) SetExportJobRequest(v *ExportJobRequest) *CreateExportJobInput {
8465	s.ExportJobRequest = v
8466	return s
8467}
8468
8469type CreateExportJobOutput struct {
8470	_ struct{} `type:"structure" payload:"ExportJobResponse"`
8471
8472	// ExportJobResponse is a required field
8473	ExportJobResponse *ExportJobResponse `type:"structure" required:"true"`
8474}
8475
8476// String returns the string representation
8477func (s CreateExportJobOutput) String() string {
8478	return awsutil.Prettify(s)
8479}
8480
8481// GoString returns the string representation
8482func (s CreateExportJobOutput) GoString() string {
8483	return s.String()
8484}
8485
8486// SetExportJobResponse sets the ExportJobResponse field's value.
8487func (s *CreateExportJobOutput) SetExportJobResponse(v *ExportJobResponse) *CreateExportJobOutput {
8488	s.ExportJobResponse = v
8489	return s
8490}
8491
8492type CreateImportJobInput struct {
8493	_ struct{} `type:"structure" payload:"ImportJobRequest"`
8494
8495	// ApplicationId is a required field
8496	ApplicationId *string `location:"uri" locationName:"application-id" type:"string" required:"true"`
8497
8498	// ImportJobRequest is a required field
8499	ImportJobRequest *ImportJobRequest `type:"structure" required:"true"`
8500}
8501
8502// String returns the string representation
8503func (s CreateImportJobInput) String() string {
8504	return awsutil.Prettify(s)
8505}
8506
8507// GoString returns the string representation
8508func (s CreateImportJobInput) GoString() string {
8509	return s.String()
8510}
8511
8512// Validate inspects the fields of the type to determine if they are valid.
8513func (s *CreateImportJobInput) Validate() error {
8514	invalidParams := request.ErrInvalidParams{Context: "CreateImportJobInput"}
8515	if s.ApplicationId == nil {
8516		invalidParams.Add(request.NewErrParamRequired("ApplicationId"))
8517	}
8518	if s.ImportJobRequest == nil {
8519		invalidParams.Add(request.NewErrParamRequired("ImportJobRequest"))
8520	}
8521
8522	if invalidParams.Len() > 0 {
8523		return invalidParams
8524	}
8525	return nil
8526}
8527
8528// SetApplicationId sets the ApplicationId field's value.
8529func (s *CreateImportJobInput) SetApplicationId(v string) *CreateImportJobInput {
8530	s.ApplicationId = &v
8531	return s
8532}
8533
8534// SetImportJobRequest sets the ImportJobRequest field's value.
8535func (s *CreateImportJobInput) SetImportJobRequest(v *ImportJobRequest) *CreateImportJobInput {
8536	s.ImportJobRequest = v
8537	return s
8538}
8539
8540type CreateImportJobOutput struct {
8541	_ struct{} `type:"structure" payload:"ImportJobResponse"`
8542
8543	// ImportJobResponse is a required field
8544	ImportJobResponse *ImportJobResponse `type:"structure" required:"true"`
8545}
8546
8547// String returns the string representation
8548func (s CreateImportJobOutput) String() string {
8549	return awsutil.Prettify(s)
8550}
8551
8552// GoString returns the string representation
8553func (s CreateImportJobOutput) GoString() string {
8554	return s.String()
8555}
8556
8557// SetImportJobResponse sets the ImportJobResponse field's value.
8558func (s *CreateImportJobOutput) SetImportJobResponse(v *ImportJobResponse) *CreateImportJobOutput {
8559	s.ImportJobResponse = v
8560	return s
8561}
8562
8563type CreateSegmentInput struct {
8564	_ struct{} `type:"structure" payload:"WriteSegmentRequest"`
8565
8566	// ApplicationId is a required field
8567	ApplicationId *string `location:"uri" locationName:"application-id" type:"string" required:"true"`
8568
8569	// Segment definition.
8570	//
8571	// WriteSegmentRequest is a required field
8572	WriteSegmentRequest *WriteSegmentRequest `type:"structure" required:"true"`
8573}
8574
8575// String returns the string representation
8576func (s CreateSegmentInput) String() string {
8577	return awsutil.Prettify(s)
8578}
8579
8580// GoString returns the string representation
8581func (s CreateSegmentInput) GoString() string {
8582	return s.String()
8583}
8584
8585// Validate inspects the fields of the type to determine if they are valid.
8586func (s *CreateSegmentInput) Validate() error {
8587	invalidParams := request.ErrInvalidParams{Context: "CreateSegmentInput"}
8588	if s.ApplicationId == nil {
8589		invalidParams.Add(request.NewErrParamRequired("ApplicationId"))
8590	}
8591	if s.WriteSegmentRequest == nil {
8592		invalidParams.Add(request.NewErrParamRequired("WriteSegmentRequest"))
8593	}
8594
8595	if invalidParams.Len() > 0 {
8596		return invalidParams
8597	}
8598	return nil
8599}
8600
8601// SetApplicationId sets the ApplicationId field's value.
8602func (s *CreateSegmentInput) SetApplicationId(v string) *CreateSegmentInput {
8603	s.ApplicationId = &v
8604	return s
8605}
8606
8607// SetWriteSegmentRequest sets the WriteSegmentRequest field's value.
8608func (s *CreateSegmentInput) SetWriteSegmentRequest(v *WriteSegmentRequest) *CreateSegmentInput {
8609	s.WriteSegmentRequest = v
8610	return s
8611}
8612
8613type CreateSegmentOutput struct {
8614	_ struct{} `type:"structure" payload:"SegmentResponse"`
8615
8616	// Segment definition.
8617	//
8618	// SegmentResponse is a required field
8619	SegmentResponse *SegmentResponse `type:"structure" required:"true"`
8620}
8621
8622// String returns the string representation
8623func (s CreateSegmentOutput) String() string {
8624	return awsutil.Prettify(s)
8625}
8626
8627// GoString returns the string representation
8628func (s CreateSegmentOutput) GoString() string {
8629	return s.String()
8630}
8631
8632// SetSegmentResponse sets the SegmentResponse field's value.
8633func (s *CreateSegmentOutput) SetSegmentResponse(v *SegmentResponse) *CreateSegmentOutput {
8634	s.SegmentResponse = v
8635	return s
8636}
8637
8638// Default Message across push notification, email, and sms.
8639type DefaultMessage struct {
8640	_ struct{} `type:"structure"`
8641
8642	// The message body of the notification, the email body or the text message.
8643	Body *string `type:"string"`
8644
8645	Substitutions map[string][]*string `type:"map"`
8646}
8647
8648// String returns the string representation
8649func (s DefaultMessage) String() string {
8650	return awsutil.Prettify(s)
8651}
8652
8653// GoString returns the string representation
8654func (s DefaultMessage) GoString() string {
8655	return s.String()
8656}
8657
8658// SetBody sets the Body field's value.
8659func (s *DefaultMessage) SetBody(v string) *DefaultMessage {
8660	s.Body = &v
8661	return s
8662}
8663
8664// SetSubstitutions sets the Substitutions field's value.
8665func (s *DefaultMessage) SetSubstitutions(v map[string][]*string) *DefaultMessage {
8666	s.Substitutions = v
8667	return s
8668}
8669
8670// Default Push Notification Message.
8671type DefaultPushNotificationMessage struct {
8672	_ struct{} `type:"structure"`
8673
8674	// The action that occurs if the user taps a push notification delivered by
8675	// the campaign: OPEN_APP - Your app launches, or it becomes the foreground
8676	// app if it has been sent to the background. This is the default action. DEEP_LINK
8677	// - Uses deep linking features in iOS and Android to open your app and display
8678	// a designated user interface within the app. URL - The default mobile browser
8679	// on the user's device launches and opens a web page at the URL you specify.
8680	// Possible values include: OPEN_APP | DEEP_LINK | URL
8681	Action *string `type:"string" enum:"Action"`
8682
8683	// The message body of the notification, the email body or the text message.
8684	Body *string `type:"string"`
8685
8686	// The data payload used for a silent push. This payload is added to the notifications'
8687	// data.pinpoint.jsonBody' object
8688	Data map[string]*string `type:"map"`
8689
8690	// Indicates if the message should display on the users device. Silent pushes
8691	// can be used for Remote Configuration and Phone Home use cases.
8692	SilentPush *bool `type:"boolean"`
8693
8694	Substitutions map[string][]*string `type:"map"`
8695
8696	// The message title that displays above the message on the user's device.
8697	Title *string `type:"string"`
8698
8699	// The URL to open in the user's mobile browser. Used if the value for Action
8700	// is URL.
8701	Url *string `type:"string"`
8702}
8703
8704// String returns the string representation
8705func (s DefaultPushNotificationMessage) String() string {
8706	return awsutil.Prettify(s)
8707}
8708
8709// GoString returns the string representation
8710func (s DefaultPushNotificationMessage) GoString() string {
8711	return s.String()
8712}
8713
8714// SetAction sets the Action field's value.
8715func (s *DefaultPushNotificationMessage) SetAction(v string) *DefaultPushNotificationMessage {
8716	s.Action = &v
8717	return s
8718}
8719
8720// SetBody sets the Body field's value.
8721func (s *DefaultPushNotificationMessage) SetBody(v string) *DefaultPushNotificationMessage {
8722	s.Body = &v
8723	return s
8724}
8725
8726// SetData sets the Data field's value.
8727func (s *DefaultPushNotificationMessage) SetData(v map[string]*string) *DefaultPushNotificationMessage {
8728	s.Data = v
8729	return s
8730}
8731
8732// SetSilentPush sets the SilentPush field's value.
8733func (s *DefaultPushNotificationMessage) SetSilentPush(v bool) *DefaultPushNotificationMessage {
8734	s.SilentPush = &v
8735	return s
8736}
8737
8738// SetSubstitutions sets the Substitutions field's value.
8739func (s *DefaultPushNotificationMessage) SetSubstitutions(v map[string][]*string) *DefaultPushNotificationMessage {
8740	s.Substitutions = v
8741	return s
8742}
8743
8744// SetTitle sets the Title field's value.
8745func (s *DefaultPushNotificationMessage) SetTitle(v string) *DefaultPushNotificationMessage {
8746	s.Title = &v
8747	return s
8748}
8749
8750// SetUrl sets the Url field's value.
8751func (s *DefaultPushNotificationMessage) SetUrl(v string) *DefaultPushNotificationMessage {
8752	s.Url = &v
8753	return s
8754}
8755
8756type DeleteAdmChannelInput struct {
8757	_ struct{} `type:"structure"`
8758
8759	// ApplicationId is a required field
8760	ApplicationId *string `location:"uri" locationName:"application-id" type:"string" required:"true"`
8761}
8762
8763// String returns the string representation
8764func (s DeleteAdmChannelInput) String() string {
8765	return awsutil.Prettify(s)
8766}
8767
8768// GoString returns the string representation
8769func (s DeleteAdmChannelInput) GoString() string {
8770	return s.String()
8771}
8772
8773// Validate inspects the fields of the type to determine if they are valid.
8774func (s *DeleteAdmChannelInput) Validate() error {
8775	invalidParams := request.ErrInvalidParams{Context: "DeleteAdmChannelInput"}
8776	if s.ApplicationId == nil {
8777		invalidParams.Add(request.NewErrParamRequired("ApplicationId"))
8778	}
8779
8780	if invalidParams.Len() > 0 {
8781		return invalidParams
8782	}
8783	return nil
8784}
8785
8786// SetApplicationId sets the ApplicationId field's value.
8787func (s *DeleteAdmChannelInput) SetApplicationId(v string) *DeleteAdmChannelInput {
8788	s.ApplicationId = &v
8789	return s
8790}
8791
8792type DeleteAdmChannelOutput struct {
8793	_ struct{} `type:"structure" payload:"ADMChannelResponse"`
8794
8795	// Amazon Device Messaging channel definition.
8796	//
8797	// ADMChannelResponse is a required field
8798	ADMChannelResponse *ADMChannelResponse `type:"structure" required:"true"`
8799}
8800
8801// String returns the string representation
8802func (s DeleteAdmChannelOutput) String() string {
8803	return awsutil.Prettify(s)
8804}
8805
8806// GoString returns the string representation
8807func (s DeleteAdmChannelOutput) GoString() string {
8808	return s.String()
8809}
8810
8811// SetADMChannelResponse sets the ADMChannelResponse field's value.
8812func (s *DeleteAdmChannelOutput) SetADMChannelResponse(v *ADMChannelResponse) *DeleteAdmChannelOutput {
8813	s.ADMChannelResponse = v
8814	return s
8815}
8816
8817type DeleteApnsChannelInput struct {
8818	_ struct{} `type:"structure"`
8819
8820	// ApplicationId is a required field
8821	ApplicationId *string `location:"uri" locationName:"application-id" type:"string" required:"true"`
8822}
8823
8824// String returns the string representation
8825func (s DeleteApnsChannelInput) String() string {
8826	return awsutil.Prettify(s)
8827}
8828
8829// GoString returns the string representation
8830func (s DeleteApnsChannelInput) GoString() string {
8831	return s.String()
8832}
8833
8834// Validate inspects the fields of the type to determine if they are valid.
8835func (s *DeleteApnsChannelInput) Validate() error {
8836	invalidParams := request.ErrInvalidParams{Context: "DeleteApnsChannelInput"}
8837	if s.ApplicationId == nil {
8838		invalidParams.Add(request.NewErrParamRequired("ApplicationId"))
8839	}
8840
8841	if invalidParams.Len() > 0 {
8842		return invalidParams
8843	}
8844	return nil
8845}
8846
8847// SetApplicationId sets the ApplicationId field's value.
8848func (s *DeleteApnsChannelInput) SetApplicationId(v string) *DeleteApnsChannelInput {
8849	s.ApplicationId = &v
8850	return s
8851}
8852
8853type DeleteApnsChannelOutput struct {
8854	_ struct{} `type:"structure" payload:"APNSChannelResponse"`
8855
8856	// Apple Distribution Push Notification Service channel definition.
8857	//
8858	// APNSChannelResponse is a required field
8859	APNSChannelResponse *APNSChannelResponse `type:"structure" required:"true"`
8860}
8861
8862// String returns the string representation
8863func (s DeleteApnsChannelOutput) String() string {
8864	return awsutil.Prettify(s)
8865}
8866
8867// GoString returns the string representation
8868func (s DeleteApnsChannelOutput) GoString() string {
8869	return s.String()
8870}
8871
8872// SetAPNSChannelResponse sets the APNSChannelResponse field's value.
8873func (s *DeleteApnsChannelOutput) SetAPNSChannelResponse(v *APNSChannelResponse) *DeleteApnsChannelOutput {
8874	s.APNSChannelResponse = v
8875	return s
8876}
8877
8878type DeleteApnsSandboxChannelInput struct {
8879	_ struct{} `type:"structure"`
8880
8881	// ApplicationId is a required field
8882	ApplicationId *string `location:"uri" locationName:"application-id" type:"string" required:"true"`
8883}
8884
8885// String returns the string representation
8886func (s DeleteApnsSandboxChannelInput) String() string {
8887	return awsutil.Prettify(s)
8888}
8889
8890// GoString returns the string representation
8891func (s DeleteApnsSandboxChannelInput) GoString() string {
8892	return s.String()
8893}
8894
8895// Validate inspects the fields of the type to determine if they are valid.
8896func (s *DeleteApnsSandboxChannelInput) Validate() error {
8897	invalidParams := request.ErrInvalidParams{Context: "DeleteApnsSandboxChannelInput"}
8898	if s.ApplicationId == nil {
8899		invalidParams.Add(request.NewErrParamRequired("ApplicationId"))
8900	}
8901
8902	if invalidParams.Len() > 0 {
8903		return invalidParams
8904	}
8905	return nil
8906}
8907
8908// SetApplicationId sets the ApplicationId field's value.
8909func (s *DeleteApnsSandboxChannelInput) SetApplicationId(v string) *DeleteApnsSandboxChannelInput {
8910	s.ApplicationId = &v
8911	return s
8912}
8913
8914type DeleteApnsSandboxChannelOutput struct {
8915	_ struct{} `type:"structure" payload:"APNSSandboxChannelResponse"`
8916
8917	// Apple Development Push Notification Service channel definition.
8918	//
8919	// APNSSandboxChannelResponse is a required field
8920	APNSSandboxChannelResponse *APNSSandboxChannelResponse `type:"structure" required:"true"`
8921}
8922
8923// String returns the string representation
8924func (s DeleteApnsSandboxChannelOutput) String() string {
8925	return awsutil.Prettify(s)
8926}
8927
8928// GoString returns the string representation
8929func (s DeleteApnsSandboxChannelOutput) GoString() string {
8930	return s.String()
8931}
8932
8933// SetAPNSSandboxChannelResponse sets the APNSSandboxChannelResponse field's value.
8934func (s *DeleteApnsSandboxChannelOutput) SetAPNSSandboxChannelResponse(v *APNSSandboxChannelResponse) *DeleteApnsSandboxChannelOutput {
8935	s.APNSSandboxChannelResponse = v
8936	return s
8937}
8938
8939type DeleteApnsVoipChannelInput struct {
8940	_ struct{} `type:"structure"`
8941
8942	// ApplicationId is a required field
8943	ApplicationId *string `location:"uri" locationName:"application-id" type:"string" required:"true"`
8944}
8945
8946// String returns the string representation
8947func (s DeleteApnsVoipChannelInput) String() string {
8948	return awsutil.Prettify(s)
8949}
8950
8951// GoString returns the string representation
8952func (s DeleteApnsVoipChannelInput) GoString() string {
8953	return s.String()
8954}
8955
8956// Validate inspects the fields of the type to determine if they are valid.
8957func (s *DeleteApnsVoipChannelInput) Validate() error {
8958	invalidParams := request.ErrInvalidParams{Context: "DeleteApnsVoipChannelInput"}
8959	if s.ApplicationId == nil {
8960		invalidParams.Add(request.NewErrParamRequired("ApplicationId"))
8961	}
8962
8963	if invalidParams.Len() > 0 {
8964		return invalidParams
8965	}
8966	return nil
8967}
8968
8969// SetApplicationId sets the ApplicationId field's value.
8970func (s *DeleteApnsVoipChannelInput) SetApplicationId(v string) *DeleteApnsVoipChannelInput {
8971	s.ApplicationId = &v
8972	return s
8973}
8974
8975type DeleteApnsVoipChannelOutput struct {
8976	_ struct{} `type:"structure" payload:"APNSVoipChannelResponse"`
8977
8978	// Apple VoIP Push Notification Service channel definition.
8979	//
8980	// APNSVoipChannelResponse is a required field
8981	APNSVoipChannelResponse *APNSVoipChannelResponse `type:"structure" required:"true"`
8982}
8983
8984// String returns the string representation
8985func (s DeleteApnsVoipChannelOutput) String() string {
8986	return awsutil.Prettify(s)
8987}
8988
8989// GoString returns the string representation
8990func (s DeleteApnsVoipChannelOutput) GoString() string {
8991	return s.String()
8992}
8993
8994// SetAPNSVoipChannelResponse sets the APNSVoipChannelResponse field's value.
8995func (s *DeleteApnsVoipChannelOutput) SetAPNSVoipChannelResponse(v *APNSVoipChannelResponse) *DeleteApnsVoipChannelOutput {
8996	s.APNSVoipChannelResponse = v
8997	return s
8998}
8999
9000type DeleteApnsVoipSandboxChannelInput struct {
9001	_ struct{} `type:"structure"`
9002
9003	// ApplicationId is a required field
9004	ApplicationId *string `location:"uri" locationName:"application-id" type:"string" required:"true"`
9005}
9006
9007// String returns the string representation
9008func (s DeleteApnsVoipSandboxChannelInput) String() string {
9009	return awsutil.Prettify(s)
9010}
9011
9012// GoString returns the string representation
9013func (s DeleteApnsVoipSandboxChannelInput) GoString() string {
9014	return s.String()
9015}
9016
9017// Validate inspects the fields of the type to determine if they are valid.
9018func (s *DeleteApnsVoipSandboxChannelInput) Validate() error {
9019	invalidParams := request.ErrInvalidParams{Context: "DeleteApnsVoipSandboxChannelInput"}
9020	if s.ApplicationId == nil {
9021		invalidParams.Add(request.NewErrParamRequired("ApplicationId"))
9022	}
9023
9024	if invalidParams.Len() > 0 {
9025		return invalidParams
9026	}
9027	return nil
9028}
9029
9030// SetApplicationId sets the ApplicationId field's value.
9031func (s *DeleteApnsVoipSandboxChannelInput) SetApplicationId(v string) *DeleteApnsVoipSandboxChannelInput {
9032	s.ApplicationId = &v
9033	return s
9034}
9035
9036type DeleteApnsVoipSandboxChannelOutput struct {
9037	_ struct{} `type:"structure" payload:"APNSVoipSandboxChannelResponse"`
9038
9039	// Apple VoIP Developer Push Notification Service channel definition.
9040	//
9041	// APNSVoipSandboxChannelResponse is a required field
9042	APNSVoipSandboxChannelResponse *APNSVoipSandboxChannelResponse `type:"structure" required:"true"`
9043}
9044
9045// String returns the string representation
9046func (s DeleteApnsVoipSandboxChannelOutput) String() string {
9047	return awsutil.Prettify(s)
9048}
9049
9050// GoString returns the string representation
9051func (s DeleteApnsVoipSandboxChannelOutput) GoString() string {
9052	return s.String()
9053}
9054
9055// SetAPNSVoipSandboxChannelResponse sets the APNSVoipSandboxChannelResponse field's value.
9056func (s *DeleteApnsVoipSandboxChannelOutput) SetAPNSVoipSandboxChannelResponse(v *APNSVoipSandboxChannelResponse) *DeleteApnsVoipSandboxChannelOutput {
9057	s.APNSVoipSandboxChannelResponse = v
9058	return s
9059}
9060
9061type DeleteAppInput struct {
9062	_ struct{} `type:"structure"`
9063
9064	// ApplicationId is a required field
9065	ApplicationId *string `location:"uri" locationName:"application-id" type:"string" required:"true"`
9066}
9067
9068// String returns the string representation
9069func (s DeleteAppInput) String() string {
9070	return awsutil.Prettify(s)
9071}
9072
9073// GoString returns the string representation
9074func (s DeleteAppInput) GoString() string {
9075	return s.String()
9076}
9077
9078// Validate inspects the fields of the type to determine if they are valid.
9079func (s *DeleteAppInput) Validate() error {
9080	invalidParams := request.ErrInvalidParams{Context: "DeleteAppInput"}
9081	if s.ApplicationId == nil {
9082		invalidParams.Add(request.NewErrParamRequired("ApplicationId"))
9083	}
9084
9085	if invalidParams.Len() > 0 {
9086		return invalidParams
9087	}
9088	return nil
9089}
9090
9091// SetApplicationId sets the ApplicationId field's value.
9092func (s *DeleteAppInput) SetApplicationId(v string) *DeleteAppInput {
9093	s.ApplicationId = &v
9094	return s
9095}
9096
9097type DeleteAppOutput struct {
9098	_ struct{} `type:"structure" payload:"ApplicationResponse"`
9099
9100	// Application Response.
9101	//
9102	// ApplicationResponse is a required field
9103	ApplicationResponse *ApplicationResponse `type:"structure" required:"true"`
9104}
9105
9106// String returns the string representation
9107func (s DeleteAppOutput) String() string {
9108	return awsutil.Prettify(s)
9109}
9110
9111// GoString returns the string representation
9112func (s DeleteAppOutput) GoString() string {
9113	return s.String()
9114}
9115
9116// SetApplicationResponse sets the ApplicationResponse field's value.
9117func (s *DeleteAppOutput) SetApplicationResponse(v *ApplicationResponse) *DeleteAppOutput {
9118	s.ApplicationResponse = v
9119	return s
9120}
9121
9122type DeleteBaiduChannelInput struct {
9123	_ struct{} `type:"structure"`
9124
9125	// ApplicationId is a required field
9126	ApplicationId *string `location:"uri" locationName:"application-id" type:"string" required:"true"`
9127}
9128
9129// String returns the string representation
9130func (s DeleteBaiduChannelInput) String() string {
9131	return awsutil.Prettify(s)
9132}
9133
9134// GoString returns the string representation
9135func (s DeleteBaiduChannelInput) GoString() string {
9136	return s.String()
9137}
9138
9139// Validate inspects the fields of the type to determine if they are valid.
9140func (s *DeleteBaiduChannelInput) Validate() error {
9141	invalidParams := request.ErrInvalidParams{Context: "DeleteBaiduChannelInput"}
9142	if s.ApplicationId == nil {
9143		invalidParams.Add(request.NewErrParamRequired("ApplicationId"))
9144	}
9145
9146	if invalidParams.Len() > 0 {
9147		return invalidParams
9148	}
9149	return nil
9150}
9151
9152// SetApplicationId sets the ApplicationId field's value.
9153func (s *DeleteBaiduChannelInput) SetApplicationId(v string) *DeleteBaiduChannelInput {
9154	s.ApplicationId = &v
9155	return s
9156}
9157
9158type DeleteBaiduChannelOutput struct {
9159	_ struct{} `type:"structure" payload:"BaiduChannelResponse"`
9160
9161	// Baidu Cloud Messaging channel definition
9162	//
9163	// BaiduChannelResponse is a required field
9164	BaiduChannelResponse *BaiduChannelResponse `type:"structure" required:"true"`
9165}
9166
9167// String returns the string representation
9168func (s DeleteBaiduChannelOutput) String() string {
9169	return awsutil.Prettify(s)
9170}
9171
9172// GoString returns the string representation
9173func (s DeleteBaiduChannelOutput) GoString() string {
9174	return s.String()
9175}
9176
9177// SetBaiduChannelResponse sets the BaiduChannelResponse field's value.
9178func (s *DeleteBaiduChannelOutput) SetBaiduChannelResponse(v *BaiduChannelResponse) *DeleteBaiduChannelOutput {
9179	s.BaiduChannelResponse = v
9180	return s
9181}
9182
9183type DeleteCampaignInput struct {
9184	_ struct{} `type:"structure"`
9185
9186	// ApplicationId is a required field
9187	ApplicationId *string `location:"uri" locationName:"application-id" type:"string" required:"true"`
9188
9189	// CampaignId is a required field
9190	CampaignId *string `location:"uri" locationName:"campaign-id" type:"string" required:"true"`
9191}
9192
9193// String returns the string representation
9194func (s DeleteCampaignInput) String() string {
9195	return awsutil.Prettify(s)
9196}
9197
9198// GoString returns the string representation
9199func (s DeleteCampaignInput) GoString() string {
9200	return s.String()
9201}
9202
9203// Validate inspects the fields of the type to determine if they are valid.
9204func (s *DeleteCampaignInput) Validate() error {
9205	invalidParams := request.ErrInvalidParams{Context: "DeleteCampaignInput"}
9206	if s.ApplicationId == nil {
9207		invalidParams.Add(request.NewErrParamRequired("ApplicationId"))
9208	}
9209	if s.CampaignId == nil {
9210		invalidParams.Add(request.NewErrParamRequired("CampaignId"))
9211	}
9212
9213	if invalidParams.Len() > 0 {
9214		return invalidParams
9215	}
9216	return nil
9217}
9218
9219// SetApplicationId sets the ApplicationId field's value.
9220func (s *DeleteCampaignInput) SetApplicationId(v string) *DeleteCampaignInput {
9221	s.ApplicationId = &v
9222	return s
9223}
9224
9225// SetCampaignId sets the CampaignId field's value.
9226func (s *DeleteCampaignInput) SetCampaignId(v string) *DeleteCampaignInput {
9227	s.CampaignId = &v
9228	return s
9229}
9230
9231type DeleteCampaignOutput struct {
9232	_ struct{} `type:"structure" payload:"CampaignResponse"`
9233
9234	// Campaign definition
9235	//
9236	// CampaignResponse is a required field
9237	CampaignResponse *CampaignResponse `type:"structure" required:"true"`
9238}
9239
9240// String returns the string representation
9241func (s DeleteCampaignOutput) String() string {
9242	return awsutil.Prettify(s)
9243}
9244
9245// GoString returns the string representation
9246func (s DeleteCampaignOutput) GoString() string {
9247	return s.String()
9248}
9249
9250// SetCampaignResponse sets the CampaignResponse field's value.
9251func (s *DeleteCampaignOutput) SetCampaignResponse(v *CampaignResponse) *DeleteCampaignOutput {
9252	s.CampaignResponse = v
9253	return s
9254}
9255
9256type DeleteEmailChannelInput struct {
9257	_ struct{} `type:"structure"`
9258
9259	// ApplicationId is a required field
9260	ApplicationId *string `location:"uri" locationName:"application-id" type:"string" required:"true"`
9261}
9262
9263// String returns the string representation
9264func (s DeleteEmailChannelInput) String() string {
9265	return awsutil.Prettify(s)
9266}
9267
9268// GoString returns the string representation
9269func (s DeleteEmailChannelInput) GoString() string {
9270	return s.String()
9271}
9272
9273// Validate inspects the fields of the type to determine if they are valid.
9274func (s *DeleteEmailChannelInput) Validate() error {
9275	invalidParams := request.ErrInvalidParams{Context: "DeleteEmailChannelInput"}
9276	if s.ApplicationId == nil {
9277		invalidParams.Add(request.NewErrParamRequired("ApplicationId"))
9278	}
9279
9280	if invalidParams.Len() > 0 {
9281		return invalidParams
9282	}
9283	return nil
9284}
9285
9286// SetApplicationId sets the ApplicationId field's value.
9287func (s *DeleteEmailChannelInput) SetApplicationId(v string) *DeleteEmailChannelInput {
9288	s.ApplicationId = &v
9289	return s
9290}
9291
9292type DeleteEmailChannelOutput struct {
9293	_ struct{} `type:"structure" payload:"EmailChannelResponse"`
9294
9295	// Email Channel Response.
9296	//
9297	// EmailChannelResponse is a required field
9298	EmailChannelResponse *EmailChannelResponse `type:"structure" required:"true"`
9299}
9300
9301// String returns the string representation
9302func (s DeleteEmailChannelOutput) String() string {
9303	return awsutil.Prettify(s)
9304}
9305
9306// GoString returns the string representation
9307func (s DeleteEmailChannelOutput) GoString() string {
9308	return s.String()
9309}
9310
9311// SetEmailChannelResponse sets the EmailChannelResponse field's value.
9312func (s *DeleteEmailChannelOutput) SetEmailChannelResponse(v *EmailChannelResponse) *DeleteEmailChannelOutput {
9313	s.EmailChannelResponse = v
9314	return s
9315}
9316
9317type DeleteEndpointInput struct {
9318	_ struct{} `type:"structure"`
9319
9320	// ApplicationId is a required field
9321	ApplicationId *string `location:"uri" locationName:"application-id" type:"string" required:"true"`
9322
9323	// EndpointId is a required field
9324	EndpointId *string `location:"uri" locationName:"endpoint-id" type:"string" required:"true"`
9325}
9326
9327// String returns the string representation
9328func (s DeleteEndpointInput) String() string {
9329	return awsutil.Prettify(s)
9330}
9331
9332// GoString returns the string representation
9333func (s DeleteEndpointInput) GoString() string {
9334	return s.String()
9335}
9336
9337// Validate inspects the fields of the type to determine if they are valid.
9338func (s *DeleteEndpointInput) Validate() error {
9339	invalidParams := request.ErrInvalidParams{Context: "DeleteEndpointInput"}
9340	if s.ApplicationId == nil {
9341		invalidParams.Add(request.NewErrParamRequired("ApplicationId"))
9342	}
9343	if s.EndpointId == nil {
9344		invalidParams.Add(request.NewErrParamRequired("EndpointId"))
9345	}
9346
9347	if invalidParams.Len() > 0 {
9348		return invalidParams
9349	}
9350	return nil
9351}
9352
9353// SetApplicationId sets the ApplicationId field's value.
9354func (s *DeleteEndpointInput) SetApplicationId(v string) *DeleteEndpointInput {
9355	s.ApplicationId = &v
9356	return s
9357}
9358
9359// SetEndpointId sets the EndpointId field's value.
9360func (s *DeleteEndpointInput) SetEndpointId(v string) *DeleteEndpointInput {
9361	s.EndpointId = &v
9362	return s
9363}
9364
9365type DeleteEndpointOutput struct {
9366	_ struct{} `type:"structure" payload:"EndpointResponse"`
9367
9368	// Endpoint response
9369	//
9370	// EndpointResponse is a required field
9371	EndpointResponse *EndpointResponse `type:"structure" required:"true"`
9372}
9373
9374// String returns the string representation
9375func (s DeleteEndpointOutput) String() string {
9376	return awsutil.Prettify(s)
9377}
9378
9379// GoString returns the string representation
9380func (s DeleteEndpointOutput) GoString() string {
9381	return s.String()
9382}
9383
9384// SetEndpointResponse sets the EndpointResponse field's value.
9385func (s *DeleteEndpointOutput) SetEndpointResponse(v *EndpointResponse) *DeleteEndpointOutput {
9386	s.EndpointResponse = v
9387	return s
9388}
9389
9390type DeleteEventStreamInput struct {
9391	_ struct{} `type:"structure"`
9392
9393	// Application Id.
9394	//
9395	// ApplicationId is a required field
9396	ApplicationId *string `location:"uri" locationName:"application-id" type:"string" required:"true"`
9397}
9398
9399// String returns the string representation
9400func (s DeleteEventStreamInput) String() string {
9401	return awsutil.Prettify(s)
9402}
9403
9404// GoString returns the string representation
9405func (s DeleteEventStreamInput) GoString() string {
9406	return s.String()
9407}
9408
9409// Validate inspects the fields of the type to determine if they are valid.
9410func (s *DeleteEventStreamInput) Validate() error {
9411	invalidParams := request.ErrInvalidParams{Context: "DeleteEventStreamInput"}
9412	if s.ApplicationId == nil {
9413		invalidParams.Add(request.NewErrParamRequired("ApplicationId"))
9414	}
9415
9416	if invalidParams.Len() > 0 {
9417		return invalidParams
9418	}
9419	return nil
9420}
9421
9422// SetApplicationId sets the ApplicationId field's value.
9423func (s *DeleteEventStreamInput) SetApplicationId(v string) *DeleteEventStreamInput {
9424	s.ApplicationId = &v
9425	return s
9426}
9427
9428type DeleteEventStreamOutput struct {
9429	_ struct{} `type:"structure" payload:"EventStream"`
9430
9431	// Model for an event publishing subscription export.
9432	//
9433	// EventStream is a required field
9434	EventStream *EventStream `type:"structure" required:"true"`
9435}
9436
9437// String returns the string representation
9438func (s DeleteEventStreamOutput) String() string {
9439	return awsutil.Prettify(s)
9440}
9441
9442// GoString returns the string representation
9443func (s DeleteEventStreamOutput) GoString() string {
9444	return s.String()
9445}
9446
9447// SetEventStream sets the EventStream field's value.
9448func (s *DeleteEventStreamOutput) SetEventStream(v *EventStream) *DeleteEventStreamOutput {
9449	s.EventStream = v
9450	return s
9451}
9452
9453type DeleteGcmChannelInput struct {
9454	_ struct{} `type:"structure"`
9455
9456	// ApplicationId is a required field
9457	ApplicationId *string `location:"uri" locationName:"application-id" type:"string" required:"true"`
9458}
9459
9460// String returns the string representation
9461func (s DeleteGcmChannelInput) String() string {
9462	return awsutil.Prettify(s)
9463}
9464
9465// GoString returns the string representation
9466func (s DeleteGcmChannelInput) GoString() string {
9467	return s.String()
9468}
9469
9470// Validate inspects the fields of the type to determine if they are valid.
9471func (s *DeleteGcmChannelInput) Validate() error {
9472	invalidParams := request.ErrInvalidParams{Context: "DeleteGcmChannelInput"}
9473	if s.ApplicationId == nil {
9474		invalidParams.Add(request.NewErrParamRequired("ApplicationId"))
9475	}
9476
9477	if invalidParams.Len() > 0 {
9478		return invalidParams
9479	}
9480	return nil
9481}
9482
9483// SetApplicationId sets the ApplicationId field's value.
9484func (s *DeleteGcmChannelInput) SetApplicationId(v string) *DeleteGcmChannelInput {
9485	s.ApplicationId = &v
9486	return s
9487}
9488
9489type DeleteGcmChannelOutput struct {
9490	_ struct{} `type:"structure" payload:"GCMChannelResponse"`
9491
9492	// Google Cloud Messaging channel definition
9493	//
9494	// GCMChannelResponse is a required field
9495	GCMChannelResponse *GCMChannelResponse `type:"structure" required:"true"`
9496}
9497
9498// String returns the string representation
9499func (s DeleteGcmChannelOutput) String() string {
9500	return awsutil.Prettify(s)
9501}
9502
9503// GoString returns the string representation
9504func (s DeleteGcmChannelOutput) GoString() string {
9505	return s.String()
9506}
9507
9508// SetGCMChannelResponse sets the GCMChannelResponse field's value.
9509func (s *DeleteGcmChannelOutput) SetGCMChannelResponse(v *GCMChannelResponse) *DeleteGcmChannelOutput {
9510	s.GCMChannelResponse = v
9511	return s
9512}
9513
9514type DeleteSegmentInput struct {
9515	_ struct{} `type:"structure"`
9516
9517	// ApplicationId is a required field
9518	ApplicationId *string `location:"uri" locationName:"application-id" type:"string" required:"true"`
9519
9520	// SegmentId is a required field
9521	SegmentId *string `location:"uri" locationName:"segment-id" type:"string" required:"true"`
9522}
9523
9524// String returns the string representation
9525func (s DeleteSegmentInput) String() string {
9526	return awsutil.Prettify(s)
9527}
9528
9529// GoString returns the string representation
9530func (s DeleteSegmentInput) GoString() string {
9531	return s.String()
9532}
9533
9534// Validate inspects the fields of the type to determine if they are valid.
9535func (s *DeleteSegmentInput) Validate() error {
9536	invalidParams := request.ErrInvalidParams{Context: "DeleteSegmentInput"}
9537	if s.ApplicationId == nil {
9538		invalidParams.Add(request.NewErrParamRequired("ApplicationId"))
9539	}
9540	if s.SegmentId == nil {
9541		invalidParams.Add(request.NewErrParamRequired("SegmentId"))
9542	}
9543
9544	if invalidParams.Len() > 0 {
9545		return invalidParams
9546	}
9547	return nil
9548}
9549
9550// SetApplicationId sets the ApplicationId field's value.
9551func (s *DeleteSegmentInput) SetApplicationId(v string) *DeleteSegmentInput {
9552	s.ApplicationId = &v
9553	return s
9554}
9555
9556// SetSegmentId sets the SegmentId field's value.
9557func (s *DeleteSegmentInput) SetSegmentId(v string) *DeleteSegmentInput {
9558	s.SegmentId = &v
9559	return s
9560}
9561
9562type DeleteSegmentOutput struct {
9563	_ struct{} `type:"structure" payload:"SegmentResponse"`
9564
9565	// Segment definition.
9566	//
9567	// SegmentResponse is a required field
9568	SegmentResponse *SegmentResponse `type:"structure" required:"true"`
9569}
9570
9571// String returns the string representation
9572func (s DeleteSegmentOutput) String() string {
9573	return awsutil.Prettify(s)
9574}
9575
9576// GoString returns the string representation
9577func (s DeleteSegmentOutput) GoString() string {
9578	return s.String()
9579}
9580
9581// SetSegmentResponse sets the SegmentResponse field's value.
9582func (s *DeleteSegmentOutput) SetSegmentResponse(v *SegmentResponse) *DeleteSegmentOutput {
9583	s.SegmentResponse = v
9584	return s
9585}
9586
9587type DeleteSmsChannelInput struct {
9588	_ struct{} `type:"structure"`
9589
9590	// ApplicationId is a required field
9591	ApplicationId *string `location:"uri" locationName:"application-id" type:"string" required:"true"`
9592}
9593
9594// String returns the string representation
9595func (s DeleteSmsChannelInput) String() string {
9596	return awsutil.Prettify(s)
9597}
9598
9599// GoString returns the string representation
9600func (s DeleteSmsChannelInput) GoString() string {
9601	return s.String()
9602}
9603
9604// Validate inspects the fields of the type to determine if they are valid.
9605func (s *DeleteSmsChannelInput) Validate() error {
9606	invalidParams := request.ErrInvalidParams{Context: "DeleteSmsChannelInput"}
9607	if s.ApplicationId == nil {
9608		invalidParams.Add(request.NewErrParamRequired("ApplicationId"))
9609	}
9610
9611	if invalidParams.Len() > 0 {
9612		return invalidParams
9613	}
9614	return nil
9615}
9616
9617// SetApplicationId sets the ApplicationId field's value.
9618func (s *DeleteSmsChannelInput) SetApplicationId(v string) *DeleteSmsChannelInput {
9619	s.ApplicationId = &v
9620	return s
9621}
9622
9623type DeleteSmsChannelOutput struct {
9624	_ struct{} `type:"structure" payload:"SMSChannelResponse"`
9625
9626	// SMS Channel Response.
9627	//
9628	// SMSChannelResponse is a required field
9629	SMSChannelResponse *SMSChannelResponse `type:"structure" required:"true"`
9630}
9631
9632// String returns the string representation
9633func (s DeleteSmsChannelOutput) String() string {
9634	return awsutil.Prettify(s)
9635}
9636
9637// GoString returns the string representation
9638func (s DeleteSmsChannelOutput) GoString() string {
9639	return s.String()
9640}
9641
9642// SetSMSChannelResponse sets the SMSChannelResponse field's value.
9643func (s *DeleteSmsChannelOutput) SetSMSChannelResponse(v *SMSChannelResponse) *DeleteSmsChannelOutput {
9644	s.SMSChannelResponse = v
9645	return s
9646}
9647
9648// The message configuration.
9649type DirectMessageConfiguration struct {
9650	_ struct{} `type:"structure"`
9651
9652	// The message to ADM channels. Overrides the default push notification message.
9653	ADMMessage *ADMMessage `type:"structure"`
9654
9655	// The message to APNS channels. Overrides the default push notification message.
9656	APNSMessage *APNSMessage `type:"structure"`
9657
9658	// The message to Baidu GCM channels. Overrides the default push notification
9659	// message.
9660	BaiduMessage *BaiduMessage `type:"structure"`
9661
9662	// The default message for all channels.
9663	DefaultMessage *DefaultMessage `type:"structure"`
9664
9665	// The default push notification message for all push channels.
9666	DefaultPushNotificationMessage *DefaultPushNotificationMessage `type:"structure"`
9667
9668	// The message to GCM channels. Overrides the default push notification message.
9669	GCMMessage *GCMMessage `type:"structure"`
9670
9671	// The message to SMS channels. Overrides the default message.
9672	SMSMessage *SMSMessage `type:"structure"`
9673}
9674
9675// String returns the string representation
9676func (s DirectMessageConfiguration) String() string {
9677	return awsutil.Prettify(s)
9678}
9679
9680// GoString returns the string representation
9681func (s DirectMessageConfiguration) GoString() string {
9682	return s.String()
9683}
9684
9685// SetADMMessage sets the ADMMessage field's value.
9686func (s *DirectMessageConfiguration) SetADMMessage(v *ADMMessage) *DirectMessageConfiguration {
9687	s.ADMMessage = v
9688	return s
9689}
9690
9691// SetAPNSMessage sets the APNSMessage field's value.
9692func (s *DirectMessageConfiguration) SetAPNSMessage(v *APNSMessage) *DirectMessageConfiguration {
9693	s.APNSMessage = v
9694	return s
9695}
9696
9697// SetBaiduMessage sets the BaiduMessage field's value.
9698func (s *DirectMessageConfiguration) SetBaiduMessage(v *BaiduMessage) *DirectMessageConfiguration {
9699	s.BaiduMessage = v
9700	return s
9701}
9702
9703// SetDefaultMessage sets the DefaultMessage field's value.
9704func (s *DirectMessageConfiguration) SetDefaultMessage(v *DefaultMessage) *DirectMessageConfiguration {
9705	s.DefaultMessage = v
9706	return s
9707}
9708
9709// SetDefaultPushNotificationMessage sets the DefaultPushNotificationMessage field's value.
9710func (s *DirectMessageConfiguration) SetDefaultPushNotificationMessage(v *DefaultPushNotificationMessage) *DirectMessageConfiguration {
9711	s.DefaultPushNotificationMessage = v
9712	return s
9713}
9714
9715// SetGCMMessage sets the GCMMessage field's value.
9716func (s *DirectMessageConfiguration) SetGCMMessage(v *GCMMessage) *DirectMessageConfiguration {
9717	s.GCMMessage = v
9718	return s
9719}
9720
9721// SetSMSMessage sets the SMSMessage field's value.
9722func (s *DirectMessageConfiguration) SetSMSMessage(v *SMSMessage) *DirectMessageConfiguration {
9723	s.SMSMessage = v
9724	return s
9725}
9726
9727// Email Channel Request
9728type EmailChannelRequest struct {
9729	_ struct{} `type:"structure"`
9730
9731	// If the channel is enabled for sending messages.
9732	Enabled *bool `type:"boolean"`
9733
9734	// The email address used to send emails from.
9735	FromAddress *string `type:"string"`
9736
9737	// The ARN of an identity verified with SES.
9738	Identity *string `type:"string"`
9739
9740	// The ARN of an IAM Role used to submit events to Mobile Analytics' event ingestion
9741	// service
9742	RoleArn *string `type:"string"`
9743}
9744
9745// String returns the string representation
9746func (s EmailChannelRequest) String() string {
9747	return awsutil.Prettify(s)
9748}
9749
9750// GoString returns the string representation
9751func (s EmailChannelRequest) GoString() string {
9752	return s.String()
9753}
9754
9755// SetEnabled sets the Enabled field's value.
9756func (s *EmailChannelRequest) SetEnabled(v bool) *EmailChannelRequest {
9757	s.Enabled = &v
9758	return s
9759}
9760
9761// SetFromAddress sets the FromAddress field's value.
9762func (s *EmailChannelRequest) SetFromAddress(v string) *EmailChannelRequest {
9763	s.FromAddress = &v
9764	return s
9765}
9766
9767// SetIdentity sets the Identity field's value.
9768func (s *EmailChannelRequest) SetIdentity(v string) *EmailChannelRequest {
9769	s.Identity = &v
9770	return s
9771}
9772
9773// SetRoleArn sets the RoleArn field's value.
9774func (s *EmailChannelRequest) SetRoleArn(v string) *EmailChannelRequest {
9775	s.RoleArn = &v
9776	return s
9777}
9778
9779// Email Channel Response.
9780type EmailChannelResponse struct {
9781	_ struct{} `type:"structure"`
9782
9783	// The unique ID of the application to which the email channel belongs.
9784	ApplicationId *string `type:"string"`
9785
9786	// The date that the settings were last updated in ISO 8601 format.
9787	CreationDate *string `type:"string"`
9788
9789	// If the channel is enabled for sending messages.
9790	Enabled *bool `type:"boolean"`
9791
9792	// The email address used to send emails from.
9793	FromAddress *string `type:"string"`
9794
9795	// If the channel is registered with a credential for authentication.
9796	HasCredential *bool `type:"boolean"`
9797
9798	// Channel ID. Not used, only for backwards compatibility.
9799	Id *string `type:"string"`
9800
9801	// The ARN of an identity verified with SES.
9802	Identity *string `type:"string"`
9803
9804	// Is this channel archived
9805	IsArchived *bool `type:"boolean"`
9806
9807	// Who last updated this entry
9808	LastModifiedBy *string `type:"string"`
9809
9810	// Last date this was updated
9811	LastModifiedDate *string `type:"string"`
9812
9813	// Platform type. Will be "EMAIL"
9814	Platform *string `type:"string"`
9815
9816	// The ARN of an IAM Role used to submit events to Mobile Analytics' event ingestion
9817	// service
9818	RoleArn *string `type:"string"`
9819
9820	// Version of channel
9821	Version *int64 `type:"integer"`
9822}
9823
9824// String returns the string representation
9825func (s EmailChannelResponse) String() string {
9826	return awsutil.Prettify(s)
9827}
9828
9829// GoString returns the string representation
9830func (s EmailChannelResponse) GoString() string {
9831	return s.String()
9832}
9833
9834// SetApplicationId sets the ApplicationId field's value.
9835func (s *EmailChannelResponse) SetApplicationId(v string) *EmailChannelResponse {
9836	s.ApplicationId = &v
9837	return s
9838}
9839
9840// SetCreationDate sets the CreationDate field's value.
9841func (s *EmailChannelResponse) SetCreationDate(v string) *EmailChannelResponse {
9842	s.CreationDate = &v
9843	return s
9844}
9845
9846// SetEnabled sets the Enabled field's value.
9847func (s *EmailChannelResponse) SetEnabled(v bool) *EmailChannelResponse {
9848	s.Enabled = &v
9849	return s
9850}
9851
9852// SetFromAddress sets the FromAddress field's value.
9853func (s *EmailChannelResponse) SetFromAddress(v string) *EmailChannelResponse {
9854	s.FromAddress = &v
9855	return s
9856}
9857
9858// SetHasCredential sets the HasCredential field's value.
9859func (s *EmailChannelResponse) SetHasCredential(v bool) *EmailChannelResponse {
9860	s.HasCredential = &v
9861	return s
9862}
9863
9864// SetId sets the Id field's value.
9865func (s *EmailChannelResponse) SetId(v string) *EmailChannelResponse {
9866	s.Id = &v
9867	return s
9868}
9869
9870// SetIdentity sets the Identity field's value.
9871func (s *EmailChannelResponse) SetIdentity(v string) *EmailChannelResponse {
9872	s.Identity = &v
9873	return s
9874}
9875
9876// SetIsArchived sets the IsArchived field's value.
9877func (s *EmailChannelResponse) SetIsArchived(v bool) *EmailChannelResponse {
9878	s.IsArchived = &v
9879	return s
9880}
9881
9882// SetLastModifiedBy sets the LastModifiedBy field's value.
9883func (s *EmailChannelResponse) SetLastModifiedBy(v string) *EmailChannelResponse {
9884	s.LastModifiedBy = &v
9885	return s
9886}
9887
9888// SetLastModifiedDate sets the LastModifiedDate field's value.
9889func (s *EmailChannelResponse) SetLastModifiedDate(v string) *EmailChannelResponse {
9890	s.LastModifiedDate = &v
9891	return s
9892}
9893
9894// SetPlatform sets the Platform field's value.
9895func (s *EmailChannelResponse) SetPlatform(v string) *EmailChannelResponse {
9896	s.Platform = &v
9897	return s
9898}
9899
9900// SetRoleArn sets the RoleArn field's value.
9901func (s *EmailChannelResponse) SetRoleArn(v string) *EmailChannelResponse {
9902	s.RoleArn = &v
9903	return s
9904}
9905
9906// SetVersion sets the Version field's value.
9907func (s *EmailChannelResponse) SetVersion(v int64) *EmailChannelResponse {
9908	s.Version = &v
9909	return s
9910}
9911
9912// Endpoint update request
9913type EndpointBatchItem struct {
9914	_ struct{} `type:"structure"`
9915
9916	// The address or token of the endpoint as provided by your push provider (e.g.
9917	// DeviceToken or RegistrationId).
9918	Address *string `type:"string"`
9919
9920	Attributes map[string][]*string `type:"map"`
9921
9922	// The channel type.Valid values: GCM | APNS | APNS_SANDBOX | APNS_VOIP | APNS_VOIP_SANDBOX
9923	// | ADM | SMS | EMAIL | BAIDU
9924	ChannelType *string `type:"string" enum:"ChannelType"`
9925
9926	// The endpoint demographic attributes.
9927	Demographic *EndpointDemographic `type:"structure"`
9928
9929	// The last time the endpoint was updated. Provided in ISO 8601 format.
9930	EffectiveDate *string `type:"string"`
9931
9932	// The endpoint status. Can be either ACTIVE or INACTIVE. Will be set to INACTIVE
9933	// if a delivery fails. Will be set to ACTIVE if the address is updated.
9934	EndpointStatus *string `type:"string"`
9935
9936	// The unique Id for the Endpoint in the batch.
9937	Id *string `type:"string"`
9938
9939	// The endpoint location attributes.
9940	Location *EndpointLocation `type:"structure"`
9941
9942	// Custom metrics that your app reports to Amazon Pinpoint.
9943	Metrics map[string]*float64 `type:"map"`
9944
9945	// Indicates whether a user has opted out of receiving messages with one of
9946	// the following values:ALL - User has opted out of all messages.NONE - Users
9947	// has not opted out and receives all messages.
9948	OptOut *string `type:"string"`
9949
9950	// The unique ID for the most recent request to update the endpoint.
9951	RequestId *string `type:"string"`
9952
9953	// Custom user-specific attributes that your app reports to Amazon Pinpoint.
9954	User *EndpointUser `type:"structure"`
9955}
9956
9957// String returns the string representation
9958func (s EndpointBatchItem) String() string {
9959	return awsutil.Prettify(s)
9960}
9961
9962// GoString returns the string representation
9963func (s EndpointBatchItem) GoString() string {
9964	return s.String()
9965}
9966
9967// SetAddress sets the Address field's value.
9968func (s *EndpointBatchItem) SetAddress(v string) *EndpointBatchItem {
9969	s.Address = &v
9970	return s
9971}
9972
9973// SetAttributes sets the Attributes field's value.
9974func (s *EndpointBatchItem) SetAttributes(v map[string][]*string) *EndpointBatchItem {
9975	s.Attributes = v
9976	return s
9977}
9978
9979// SetChannelType sets the ChannelType field's value.
9980func (s *EndpointBatchItem) SetChannelType(v string) *EndpointBatchItem {
9981	s.ChannelType = &v
9982	return s
9983}
9984
9985// SetDemographic sets the Demographic field's value.
9986func (s *EndpointBatchItem) SetDemographic(v *EndpointDemographic) *EndpointBatchItem {
9987	s.Demographic = v
9988	return s
9989}
9990
9991// SetEffectiveDate sets the EffectiveDate field's value.
9992func (s *EndpointBatchItem) SetEffectiveDate(v string) *EndpointBatchItem {
9993	s.EffectiveDate = &v
9994	return s
9995}
9996
9997// SetEndpointStatus sets the EndpointStatus field's value.
9998func (s *EndpointBatchItem) SetEndpointStatus(v string) *EndpointBatchItem {
9999	s.EndpointStatus = &v
10000	return s
10001}
10002
10003// SetId sets the Id field's value.
10004func (s *EndpointBatchItem) SetId(v string) *EndpointBatchItem {
10005	s.Id = &v
10006	return s
10007}
10008
10009// SetLocation sets the Location field's value.
10010func (s *EndpointBatchItem) SetLocation(v *EndpointLocation) *EndpointBatchItem {
10011	s.Location = v
10012	return s
10013}
10014
10015// SetMetrics sets the Metrics field's value.
10016func (s *EndpointBatchItem) SetMetrics(v map[string]*float64) *EndpointBatchItem {
10017	s.Metrics = v
10018	return s
10019}
10020
10021// SetOptOut sets the OptOut field's value.
10022func (s *EndpointBatchItem) SetOptOut(v string) *EndpointBatchItem {
10023	s.OptOut = &v
10024	return s
10025}
10026
10027// SetRequestId sets the RequestId field's value.
10028func (s *EndpointBatchItem) SetRequestId(v string) *EndpointBatchItem {
10029	s.RequestId = &v
10030	return s
10031}
10032
10033// SetUser sets the User field's value.
10034func (s *EndpointBatchItem) SetUser(v *EndpointUser) *EndpointBatchItem {
10035	s.User = v
10036	return s
10037}
10038
10039// Endpoint batch update request.
10040type EndpointBatchRequest struct {
10041	_ struct{} `type:"structure"`
10042
10043	// List of items to update. Maximum 100 items
10044	Item []*EndpointBatchItem `type:"list"`
10045}
10046
10047// String returns the string representation
10048func (s EndpointBatchRequest) String() string {
10049	return awsutil.Prettify(s)
10050}
10051
10052// GoString returns the string representation
10053func (s EndpointBatchRequest) GoString() string {
10054	return s.String()
10055}
10056
10057// SetItem sets the Item field's value.
10058func (s *EndpointBatchRequest) SetItem(v []*EndpointBatchItem) *EndpointBatchRequest {
10059	s.Item = v
10060	return s
10061}
10062
10063// Endpoint demographic data
10064type EndpointDemographic struct {
10065	_ struct{} `type:"structure"`
10066
10067	// The version of the application associated with the endpoint.
10068	AppVersion *string `type:"string"`
10069
10070	// The endpoint locale in the following format: The ISO 639-1 alpha-2 code,
10071	// followed by an underscore, followed by an ISO 3166-1 alpha-2 value.
10072	Locale *string `type:"string"`
10073
10074	// The endpoint make, such as such as Apple or Samsung.
10075	Make *string `type:"string"`
10076
10077	// The endpoint model, such as iPhone.
10078	Model *string `type:"string"`
10079
10080	// The endpoint model version.
10081	ModelVersion *string `type:"string"`
10082
10083	// The endpoint platform, such as ios or android.
10084	Platform *string `type:"string"`
10085
10086	// The endpoint platform version.
10087	PlatformVersion *string `type:"string"`
10088
10089	// The timezone of the endpoint. Specified as a tz database value, such as Americas/Los_Angeles.
10090	Timezone *string `type:"string"`
10091}
10092
10093// String returns the string representation
10094func (s EndpointDemographic) String() string {
10095	return awsutil.Prettify(s)
10096}
10097
10098// GoString returns the string representation
10099func (s EndpointDemographic) GoString() string {
10100	return s.String()
10101}
10102
10103// SetAppVersion sets the AppVersion field's value.
10104func (s *EndpointDemographic) SetAppVersion(v string) *EndpointDemographic {
10105	s.AppVersion = &v
10106	return s
10107}
10108
10109// SetLocale sets the Locale field's value.
10110func (s *EndpointDemographic) SetLocale(v string) *EndpointDemographic {
10111	s.Locale = &v
10112	return s
10113}
10114
10115// SetMake sets the Make field's value.
10116func (s *EndpointDemographic) SetMake(v string) *EndpointDemographic {
10117	s.Make = &v
10118	return s
10119}
10120
10121// SetModel sets the Model field's value.
10122func (s *EndpointDemographic) SetModel(v string) *EndpointDemographic {
10123	s.Model = &v
10124	return s
10125}
10126
10127// SetModelVersion sets the ModelVersion field's value.
10128func (s *EndpointDemographic) SetModelVersion(v string) *EndpointDemographic {
10129	s.ModelVersion = &v
10130	return s
10131}
10132
10133// SetPlatform sets the Platform field's value.
10134func (s *EndpointDemographic) SetPlatform(v string) *EndpointDemographic {
10135	s.Platform = &v
10136	return s
10137}
10138
10139// SetPlatformVersion sets the PlatformVersion field's value.
10140func (s *EndpointDemographic) SetPlatformVersion(v string) *EndpointDemographic {
10141	s.PlatformVersion = &v
10142	return s
10143}
10144
10145// SetTimezone sets the Timezone field's value.
10146func (s *EndpointDemographic) SetTimezone(v string) *EndpointDemographic {
10147	s.Timezone = &v
10148	return s
10149}
10150
10151// Endpoint location data
10152type EndpointLocation struct {
10153	_ struct{} `type:"structure"`
10154
10155	// The city where the endpoint is located.
10156	City *string `type:"string"`
10157
10158	// Country according to ISO 3166-1 Alpha-2 codes. For example, US.
10159	Country *string `type:"string"`
10160
10161	// The latitude of the endpoint location. Rounded to one decimal (Roughly corresponding
10162	// to a mile).
10163	Latitude *float64 `type:"double"`
10164
10165	// The longitude of the endpoint location. Rounded to one decimal (Roughly corresponding
10166	// to a mile).
10167	Longitude *float64 `type:"double"`
10168
10169	// The postal code or zip code of the endpoint.
10170	PostalCode *string `type:"string"`
10171
10172	// The region of the endpoint location. For example, corresponds to a state
10173	// in US.
10174	Region *string `type:"string"`
10175}
10176
10177// String returns the string representation
10178func (s EndpointLocation) String() string {
10179	return awsutil.Prettify(s)
10180}
10181
10182// GoString returns the string representation
10183func (s EndpointLocation) GoString() string {
10184	return s.String()
10185}
10186
10187// SetCity sets the City field's value.
10188func (s *EndpointLocation) SetCity(v string) *EndpointLocation {
10189	s.City = &v
10190	return s
10191}
10192
10193// SetCountry sets the Country field's value.
10194func (s *EndpointLocation) SetCountry(v string) *EndpointLocation {
10195	s.Country = &v
10196	return s
10197}
10198
10199// SetLatitude sets the Latitude field's value.
10200func (s *EndpointLocation) SetLatitude(v float64) *EndpointLocation {
10201	s.Latitude = &v
10202	return s
10203}
10204
10205// SetLongitude sets the Longitude field's value.
10206func (s *EndpointLocation) SetLongitude(v float64) *EndpointLocation {
10207	s.Longitude = &v
10208	return s
10209}
10210
10211// SetPostalCode sets the PostalCode field's value.
10212func (s *EndpointLocation) SetPostalCode(v string) *EndpointLocation {
10213	s.PostalCode = &v
10214	return s
10215}
10216
10217// SetRegion sets the Region field's value.
10218func (s *EndpointLocation) SetRegion(v string) *EndpointLocation {
10219	s.Region = &v
10220	return s
10221}
10222
10223// The result from sending a message to an endpoint.
10224type EndpointMessageResult struct {
10225	_ struct{} `type:"structure"`
10226
10227	// Address that endpoint message was delivered to.
10228	Address *string `type:"string"`
10229
10230	// Delivery status of message.
10231	DeliveryStatus *string `type:"string" enum:"DeliveryStatus"`
10232
10233	// Downstream service status code.
10234	StatusCode *int64 `type:"integer"`
10235
10236	// Status message for message delivery.
10237	StatusMessage *string `type:"string"`
10238
10239	// If token was updated as part of delivery. (This is GCM Specific)
10240	UpdatedToken *string `type:"string"`
10241}
10242
10243// String returns the string representation
10244func (s EndpointMessageResult) String() string {
10245	return awsutil.Prettify(s)
10246}
10247
10248// GoString returns the string representation
10249func (s EndpointMessageResult) GoString() string {
10250	return s.String()
10251}
10252
10253// SetAddress sets the Address field's value.
10254func (s *EndpointMessageResult) SetAddress(v string) *EndpointMessageResult {
10255	s.Address = &v
10256	return s
10257}
10258
10259// SetDeliveryStatus sets the DeliveryStatus field's value.
10260func (s *EndpointMessageResult) SetDeliveryStatus(v string) *EndpointMessageResult {
10261	s.DeliveryStatus = &v
10262	return s
10263}
10264
10265// SetStatusCode sets the StatusCode field's value.
10266func (s *EndpointMessageResult) SetStatusCode(v int64) *EndpointMessageResult {
10267	s.StatusCode = &v
10268	return s
10269}
10270
10271// SetStatusMessage sets the StatusMessage field's value.
10272func (s *EndpointMessageResult) SetStatusMessage(v string) *EndpointMessageResult {
10273	s.StatusMessage = &v
10274	return s
10275}
10276
10277// SetUpdatedToken sets the UpdatedToken field's value.
10278func (s *EndpointMessageResult) SetUpdatedToken(v string) *EndpointMessageResult {
10279	s.UpdatedToken = &v
10280	return s
10281}
10282
10283// Endpoint update request
10284type EndpointRequest struct {
10285	_ struct{} `type:"structure"`
10286
10287	// The address or token of the endpoint as provided by your push provider (e.g.
10288	// DeviceToken or RegistrationId).
10289	Address *string `type:"string"`
10290
10291	Attributes map[string][]*string `type:"map"`
10292
10293	// The channel type.Valid values: GCM | APNS | APNS_SANDBOX | APNS_VOIP | APNS_VOIP_SANDBOX
10294	// | ADM | SMS | EMAIL | BAIDU
10295	ChannelType *string `type:"string" enum:"ChannelType"`
10296
10297	// The endpoint demographic attributes.
10298	Demographic *EndpointDemographic `type:"structure"`
10299
10300	// The last time the endpoint was updated. Provided in ISO 8601 format.
10301	EffectiveDate *string `type:"string"`
10302
10303	// The endpoint status. Can be either ACTIVE or INACTIVE. Will be set to INACTIVE
10304	// if a delivery fails. Will be set to ACTIVE if the address is updated.
10305	EndpointStatus *string `type:"string"`
10306
10307	// The endpoint location attributes.
10308	Location *EndpointLocation `type:"structure"`
10309
10310	// Custom metrics that your app reports to Amazon Pinpoint.
10311	Metrics map[string]*float64 `type:"map"`
10312
10313	// Indicates whether a user has opted out of receiving messages with one of
10314	// the following values:ALL - User has opted out of all messages.NONE - Users
10315	// has not opted out and receives all messages.
10316	OptOut *string `type:"string"`
10317
10318	// The unique ID for the most recent request to update the endpoint.
10319	RequestId *string `type:"string"`
10320
10321	// Custom user-specific attributes that your app reports to Amazon Pinpoint.
10322	User *EndpointUser `type:"structure"`
10323}
10324
10325// String returns the string representation
10326func (s EndpointRequest) String() string {
10327	return awsutil.Prettify(s)
10328}
10329
10330// GoString returns the string representation
10331func (s EndpointRequest) GoString() string {
10332	return s.String()
10333}
10334
10335// SetAddress sets the Address field's value.
10336func (s *EndpointRequest) SetAddress(v string) *EndpointRequest {
10337	s.Address = &v
10338	return s
10339}
10340
10341// SetAttributes sets the Attributes field's value.
10342func (s *EndpointRequest) SetAttributes(v map[string][]*string) *EndpointRequest {
10343	s.Attributes = v
10344	return s
10345}
10346
10347// SetChannelType sets the ChannelType field's value.
10348func (s *EndpointRequest) SetChannelType(v string) *EndpointRequest {
10349	s.ChannelType = &v
10350	return s
10351}
10352
10353// SetDemographic sets the Demographic field's value.
10354func (s *EndpointRequest) SetDemographic(v *EndpointDemographic) *EndpointRequest {
10355	s.Demographic = v
10356	return s
10357}
10358
10359// SetEffectiveDate sets the EffectiveDate field's value.
10360func (s *EndpointRequest) SetEffectiveDate(v string) *EndpointRequest {
10361	s.EffectiveDate = &v
10362	return s
10363}
10364
10365// SetEndpointStatus sets the EndpointStatus field's value.
10366func (s *EndpointRequest) SetEndpointStatus(v string) *EndpointRequest {
10367	s.EndpointStatus = &v
10368	return s
10369}
10370
10371// SetLocation sets the Location field's value.
10372func (s *EndpointRequest) SetLocation(v *EndpointLocation) *EndpointRequest {
10373	s.Location = v
10374	return s
10375}
10376
10377// SetMetrics sets the Metrics field's value.
10378func (s *EndpointRequest) SetMetrics(v map[string]*float64) *EndpointRequest {
10379	s.Metrics = v
10380	return s
10381}
10382
10383// SetOptOut sets the OptOut field's value.
10384func (s *EndpointRequest) SetOptOut(v string) *EndpointRequest {
10385	s.OptOut = &v
10386	return s
10387}
10388
10389// SetRequestId sets the RequestId field's value.
10390func (s *EndpointRequest) SetRequestId(v string) *EndpointRequest {
10391	s.RequestId = &v
10392	return s
10393}
10394
10395// SetUser sets the User field's value.
10396func (s *EndpointRequest) SetUser(v *EndpointUser) *EndpointRequest {
10397	s.User = v
10398	return s
10399}
10400
10401// Endpoint response
10402type EndpointResponse struct {
10403	_ struct{} `type:"structure"`
10404
10405	// The address or token of the endpoint as provided by your push provider (e.g.
10406	// DeviceToken or RegistrationId).
10407	Address *string `type:"string"`
10408
10409	// The ID of the application associated with the endpoint.
10410	ApplicationId *string `type:"string"`
10411
10412	Attributes map[string][]*string `type:"map"`
10413
10414	// The channel type.Valid values: GCM | APNS | APNS_SANDBOX | APNS_VOIP | APNS_VOIP_SANDBOX
10415	// | ADM | SMS | EMAIL | BAIDU
10416	ChannelType *string `type:"string" enum:"ChannelType"`
10417
10418	// A number from 0 - 99 that represents the cohort the endpoint is assigned
10419	// to. Endpoints are grouped into cohorts randomly, and each cohort contains
10420	// approximately 1 percent of the endpoints for an app. Amazon Pinpoint assigns
10421	// cohorts to the holdout or treatment allocations for a campaign.
10422	CohortId *string `type:"string"`
10423
10424	// The last time the endpoint was created. Provided in ISO 8601 format.
10425	CreationDate *string `type:"string"`
10426
10427	// The endpoint demographic attributes.
10428	Demographic *EndpointDemographic `type:"structure"`
10429
10430	// The last time the endpoint was updated. Provided in ISO 8601 format.
10431	EffectiveDate *string `type:"string"`
10432
10433	// The endpoint status. Can be either ACTIVE or INACTIVE. Will be set to INACTIVE
10434	// if a delivery fails. Will be set to ACTIVE if the address is updated.
10435	EndpointStatus *string `type:"string"`
10436
10437	// The unique ID that you assigned to the endpoint. The ID should be a globally
10438	// unique identifier (GUID) to ensure that it is unique compared to all other
10439	// endpoints for the application.
10440	Id *string `type:"string"`
10441
10442	// The endpoint location attributes.
10443	Location *EndpointLocation `type:"structure"`
10444
10445	// Custom metrics that your app reports to Amazon Pinpoint.
10446	Metrics map[string]*float64 `type:"map"`
10447
10448	// Indicates whether a user has opted out of receiving messages with one of
10449	// the following values:ALL - User has opted out of all messages.NONE - Users
10450	// has not opted out and receives all messages.
10451	OptOut *string `type:"string"`
10452
10453	// The unique ID for the most recent request to update the endpoint.
10454	RequestId *string `type:"string"`
10455
10456	// Custom user-specific attributes that your app reports to Amazon Pinpoint.
10457	User *EndpointUser `type:"structure"`
10458}
10459
10460// String returns the string representation
10461func (s EndpointResponse) String() string {
10462	return awsutil.Prettify(s)
10463}
10464
10465// GoString returns the string representation
10466func (s EndpointResponse) GoString() string {
10467	return s.String()
10468}
10469
10470// SetAddress sets the Address field's value.
10471func (s *EndpointResponse) SetAddress(v string) *EndpointResponse {
10472	s.Address = &v
10473	return s
10474}
10475
10476// SetApplicationId sets the ApplicationId field's value.
10477func (s *EndpointResponse) SetApplicationId(v string) *EndpointResponse {
10478	s.ApplicationId = &v
10479	return s
10480}
10481
10482// SetAttributes sets the Attributes field's value.
10483func (s *EndpointResponse) SetAttributes(v map[string][]*string) *EndpointResponse {
10484	s.Attributes = v
10485	return s
10486}
10487
10488// SetChannelType sets the ChannelType field's value.
10489func (s *EndpointResponse) SetChannelType(v string) *EndpointResponse {
10490	s.ChannelType = &v
10491	return s
10492}
10493
10494// SetCohortId sets the CohortId field's value.
10495func (s *EndpointResponse) SetCohortId(v string) *EndpointResponse {
10496	s.CohortId = &v
10497	return s
10498}
10499
10500// SetCreationDate sets the CreationDate field's value.
10501func (s *EndpointResponse) SetCreationDate(v string) *EndpointResponse {
10502	s.CreationDate = &v
10503	return s
10504}
10505
10506// SetDemographic sets the Demographic field's value.
10507func (s *EndpointResponse) SetDemographic(v *EndpointDemographic) *EndpointResponse {
10508	s.Demographic = v
10509	return s
10510}
10511
10512// SetEffectiveDate sets the EffectiveDate field's value.
10513func (s *EndpointResponse) SetEffectiveDate(v string) *EndpointResponse {
10514	s.EffectiveDate = &v
10515	return s
10516}
10517
10518// SetEndpointStatus sets the EndpointStatus field's value.
10519func (s *EndpointResponse) SetEndpointStatus(v string) *EndpointResponse {
10520	s.EndpointStatus = &v
10521	return s
10522}
10523
10524// SetId sets the Id field's value.
10525func (s *EndpointResponse) SetId(v string) *EndpointResponse {
10526	s.Id = &v
10527	return s
10528}
10529
10530// SetLocation sets the Location field's value.
10531func (s *EndpointResponse) SetLocation(v *EndpointLocation) *EndpointResponse {
10532	s.Location = v
10533	return s
10534}
10535
10536// SetMetrics sets the Metrics field's value.
10537func (s *EndpointResponse) SetMetrics(v map[string]*float64) *EndpointResponse {
10538	s.Metrics = v
10539	return s
10540}
10541
10542// SetOptOut sets the OptOut field's value.
10543func (s *EndpointResponse) SetOptOut(v string) *EndpointResponse {
10544	s.OptOut = &v
10545	return s
10546}
10547
10548// SetRequestId sets the RequestId field's value.
10549func (s *EndpointResponse) SetRequestId(v string) *EndpointResponse {
10550	s.RequestId = &v
10551	return s
10552}
10553
10554// SetUser sets the User field's value.
10555func (s *EndpointResponse) SetUser(v *EndpointUser) *EndpointResponse {
10556	s.User = v
10557	return s
10558}
10559
10560// Endpoint send configuration.
10561type EndpointSendConfiguration struct {
10562	_ struct{} `type:"structure"`
10563
10564	// Body override. If specified will override default body.
10565	BodyOverride *string `type:"string"`
10566
10567	// A map of custom attributes to attributes to be attached to the message for
10568	// this address. This payload is added to the push notification's 'data.pinpoint'
10569	// object or added to the email/sms delivery receipt event attributes.
10570	Context map[string]*string `type:"map"`
10571
10572	// The Raw JSON formatted string to be used as the payload. This value overrides
10573	// the message.
10574	RawContent *string `type:"string"`
10575
10576	Substitutions map[string][]*string `type:"map"`
10577
10578	// Title override. If specified will override default title if applicable.
10579	TitleOverride *string `type:"string"`
10580}
10581
10582// String returns the string representation
10583func (s EndpointSendConfiguration) String() string {
10584	return awsutil.Prettify(s)
10585}
10586
10587// GoString returns the string representation
10588func (s EndpointSendConfiguration) GoString() string {
10589	return s.String()
10590}
10591
10592// SetBodyOverride sets the BodyOverride field's value.
10593func (s *EndpointSendConfiguration) SetBodyOverride(v string) *EndpointSendConfiguration {
10594	s.BodyOverride = &v
10595	return s
10596}
10597
10598// SetContext sets the Context field's value.
10599func (s *EndpointSendConfiguration) SetContext(v map[string]*string) *EndpointSendConfiguration {
10600	s.Context = v
10601	return s
10602}
10603
10604// SetRawContent sets the RawContent field's value.
10605func (s *EndpointSendConfiguration) SetRawContent(v string) *EndpointSendConfiguration {
10606	s.RawContent = &v
10607	return s
10608}
10609
10610// SetSubstitutions sets the Substitutions field's value.
10611func (s *EndpointSendConfiguration) SetSubstitutions(v map[string][]*string) *EndpointSendConfiguration {
10612	s.Substitutions = v
10613	return s
10614}
10615
10616// SetTitleOverride sets the TitleOverride field's value.
10617func (s *EndpointSendConfiguration) SetTitleOverride(v string) *EndpointSendConfiguration {
10618	s.TitleOverride = &v
10619	return s
10620}
10621
10622// Endpoint user specific custom userAttributes
10623type EndpointUser struct {
10624	_ struct{} `type:"structure"`
10625
10626	UserAttributes map[string][]*string `type:"map"`
10627
10628	// The unique ID of the user.
10629	UserId *string `type:"string"`
10630}
10631
10632// String returns the string representation
10633func (s EndpointUser) String() string {
10634	return awsutil.Prettify(s)
10635}
10636
10637// GoString returns the string representation
10638func (s EndpointUser) GoString() string {
10639	return s.String()
10640}
10641
10642// SetUserAttributes sets the UserAttributes field's value.
10643func (s *EndpointUser) SetUserAttributes(v map[string][]*string) *EndpointUser {
10644	s.UserAttributes = v
10645	return s
10646}
10647
10648// SetUserId sets the UserId field's value.
10649func (s *EndpointUser) SetUserId(v string) *EndpointUser {
10650	s.UserId = &v
10651	return s
10652}
10653
10654// Model for an event publishing subscription export.
10655type EventStream struct {
10656	_ struct{} `type:"structure"`
10657
10658	// The ID of the application from which events should be published.
10659	ApplicationId *string `type:"string"`
10660
10661	// The Amazon Resource Name (ARN) of the Amazon Kinesis stream or Firehose delivery
10662	// stream to which you want to publish events. Firehose ARN: arn:aws:firehose:REGION:ACCOUNT_ID:deliverystream/STREAM_NAME
10663	// Kinesis ARN: arn:aws:kinesis:REGION:ACCOUNT_ID:stream/STREAM_NAME
10664	DestinationStreamArn *string `type:"string"`
10665
10666	// DEPRECATED. Your AWS account ID, which you assigned to the ExternalID key
10667	// in an IAM trust policy. Used by Amazon Pinpoint to assume an IAM role. This
10668	// requirement is removed, and external IDs are not recommended for IAM roles
10669	// assumed by Amazon Pinpoint.
10670	ExternalId *string `type:"string"`
10671
10672	// The date the event stream was last updated in ISO 8601 format.
10673	LastModifiedDate *string `type:"string"`
10674
10675	// The IAM user who last modified the event stream.
10676	LastUpdatedBy *string `type:"string"`
10677
10678	// The IAM role that authorizes Amazon Pinpoint to publish events to the stream
10679	// in your account.
10680	RoleArn *string `type:"string"`
10681}
10682
10683// String returns the string representation
10684func (s EventStream) String() string {
10685	return awsutil.Prettify(s)
10686}
10687
10688// GoString returns the string representation
10689func (s EventStream) GoString() string {
10690	return s.String()
10691}
10692
10693// SetApplicationId sets the ApplicationId field's value.
10694func (s *EventStream) SetApplicationId(v string) *EventStream {
10695	s.ApplicationId = &v
10696	return s
10697}
10698
10699// SetDestinationStreamArn sets the DestinationStreamArn field's value.
10700func (s *EventStream) SetDestinationStreamArn(v string) *EventStream {
10701	s.DestinationStreamArn = &v
10702	return s
10703}
10704
10705// SetExternalId sets the ExternalId field's value.
10706func (s *EventStream) SetExternalId(v string) *EventStream {
10707	s.ExternalId = &v
10708	return s
10709}
10710
10711// SetLastModifiedDate sets the LastModifiedDate field's value.
10712func (s *EventStream) SetLastModifiedDate(v string) *EventStream {
10713	s.LastModifiedDate = &v
10714	return s
10715}
10716
10717// SetLastUpdatedBy sets the LastUpdatedBy field's value.
10718func (s *EventStream) SetLastUpdatedBy(v string) *EventStream {
10719	s.LastUpdatedBy = &v
10720	return s
10721}
10722
10723// SetRoleArn sets the RoleArn field's value.
10724func (s *EventStream) SetRoleArn(v string) *EventStream {
10725	s.RoleArn = &v
10726	return s
10727}
10728
10729type ExportJobRequest struct {
10730	_ struct{} `type:"structure"`
10731
10732	// The Amazon Resource Name (ARN) of an IAM role that grants Amazon Pinpoint
10733	// access to the Amazon S3 location that endpoints will be exported to.
10734	RoleArn *string `type:"string"`
10735
10736	// A URL that points to the location within an Amazon S3 bucket that will receive
10737	// the export. The location is typically a folder with multiple files.The URL
10738	// should follow this format: s3://bucket-name/folder-name/Amazon Pinpoint will
10739	// export endpoints to this location.
10740	S3UrlPrefix *string `type:"string"`
10741
10742	// The ID of the segment to export endpoints from. If not present, all endpoints
10743	// will be exported.
10744	SegmentId *string `type:"string"`
10745}
10746
10747// String returns the string representation
10748func (s ExportJobRequest) String() string {
10749	return awsutil.Prettify(s)
10750}
10751
10752// GoString returns the string representation
10753func (s ExportJobRequest) GoString() string {
10754	return s.String()
10755}
10756
10757// SetRoleArn sets the RoleArn field's value.
10758func (s *ExportJobRequest) SetRoleArn(v string) *ExportJobRequest {
10759	s.RoleArn = &v
10760	return s
10761}
10762
10763// SetS3UrlPrefix sets the S3UrlPrefix field's value.
10764func (s *ExportJobRequest) SetS3UrlPrefix(v string) *ExportJobRequest {
10765	s.S3UrlPrefix = &v
10766	return s
10767}
10768
10769// SetSegmentId sets the SegmentId field's value.
10770func (s *ExportJobRequest) SetSegmentId(v string) *ExportJobRequest {
10771	s.SegmentId = &v
10772	return s
10773}
10774
10775type ExportJobResource struct {
10776	_ struct{} `type:"structure"`
10777
10778	// The Amazon Resource Name (ARN) of an IAM role that grants Amazon Pinpoint
10779	// access to the Amazon S3 location that endpoints will be exported to.
10780	RoleArn *string `type:"string"`
10781
10782	// A URL that points to the location within an Amazon S3 bucket that will receive
10783	// the export. The location is typically a folder with multiple files.The URL
10784	// should follow this format: s3://bucket-name/folder-name/Amazon Pinpoint will
10785	// export endpoints to this location.
10786	S3UrlPrefix *string `type:"string"`
10787
10788	// The ID of the segment to export endpoints from. If not present all endpoints
10789	// will be exported.
10790	SegmentId *string `type:"string"`
10791}
10792
10793// String returns the string representation
10794func (s ExportJobResource) String() string {
10795	return awsutil.Prettify(s)
10796}
10797
10798// GoString returns the string representation
10799func (s ExportJobResource) GoString() string {
10800	return s.String()
10801}
10802
10803// SetRoleArn sets the RoleArn field's value.
10804func (s *ExportJobResource) SetRoleArn(v string) *ExportJobResource {
10805	s.RoleArn = &v
10806	return s
10807}
10808
10809// SetS3UrlPrefix sets the S3UrlPrefix field's value.
10810func (s *ExportJobResource) SetS3UrlPrefix(v string) *ExportJobResource {
10811	s.S3UrlPrefix = &v
10812	return s
10813}
10814
10815// SetSegmentId sets the SegmentId field's value.
10816func (s *ExportJobResource) SetSegmentId(v string) *ExportJobResource {
10817	s.SegmentId = &v
10818	return s
10819}
10820
10821type ExportJobResponse struct {
10822	_ struct{} `type:"structure"`
10823
10824	// The unique ID of the application to which the job applies.
10825	ApplicationId *string `type:"string"`
10826
10827	// The number of pieces that have successfully completed as of the time of the
10828	// request.
10829	CompletedPieces *int64 `type:"integer"`
10830
10831	// The date the job completed in ISO 8601 format.
10832	CompletionDate *string `type:"string"`
10833
10834	// The date the job was created in ISO 8601 format.
10835	CreationDate *string `type:"string"`
10836
10837	// The export job settings.
10838	Definition *ExportJobResource `type:"structure"`
10839
10840	// The number of pieces that failed to be processed as of the time of the request.
10841	FailedPieces *int64 `type:"integer"`
10842
10843	Failures []*string `type:"list"`
10844
10845	// The unique ID of the job.
10846	Id *string `type:"string"`
10847
10848	// The status of the export job.Valid values: CREATED, INITIALIZING, PROCESSING,
10849	// COMPLETING, COMPLETED, FAILING, FAILEDThe job status is FAILED if one or
10850	// more pieces failed.
10851	JobStatus *string `type:"string" enum:"JobStatus"`
10852
10853	// The number of endpoints that were not processed; for example, because of
10854	// syntax errors.
10855	TotalFailures *int64 `type:"integer"`
10856
10857	// The total number of pieces that must be processed to finish the job. Each
10858	// piece is an approximately equal portion of the endpoints.
10859	TotalPieces *int64 `type:"integer"`
10860
10861	// The number of endpoints that were processed by the job.
10862	TotalProcessed *int64 `type:"integer"`
10863
10864	// The job type. Will be 'EXPORT'.
10865	Type *string `type:"string"`
10866}
10867
10868// String returns the string representation
10869func (s ExportJobResponse) String() string {
10870	return awsutil.Prettify(s)
10871}
10872
10873// GoString returns the string representation
10874func (s ExportJobResponse) GoString() string {
10875	return s.String()
10876}
10877
10878// SetApplicationId sets the ApplicationId field's value.
10879func (s *ExportJobResponse) SetApplicationId(v string) *ExportJobResponse {
10880	s.ApplicationId = &v
10881	return s
10882}
10883
10884// SetCompletedPieces sets the CompletedPieces field's value.
10885func (s *ExportJobResponse) SetCompletedPieces(v int64) *ExportJobResponse {
10886	s.CompletedPieces = &v
10887	return s
10888}
10889
10890// SetCompletionDate sets the CompletionDate field's value.
10891func (s *ExportJobResponse) SetCompletionDate(v string) *ExportJobResponse {
10892	s.CompletionDate = &v
10893	return s
10894}
10895
10896// SetCreationDate sets the CreationDate field's value.
10897func (s *ExportJobResponse) SetCreationDate(v string) *ExportJobResponse {
10898	s.CreationDate = &v
10899	return s
10900}
10901
10902// SetDefinition sets the Definition field's value.
10903func (s *ExportJobResponse) SetDefinition(v *ExportJobResource) *ExportJobResponse {
10904	s.Definition = v
10905	return s
10906}
10907
10908// SetFailedPieces sets the FailedPieces field's value.
10909func (s *ExportJobResponse) SetFailedPieces(v int64) *ExportJobResponse {
10910	s.FailedPieces = &v
10911	return s
10912}
10913
10914// SetFailures sets the Failures field's value.
10915func (s *ExportJobResponse) SetFailures(v []*string) *ExportJobResponse {
10916	s.Failures = v
10917	return s
10918}
10919
10920// SetId sets the Id field's value.
10921func (s *ExportJobResponse) SetId(v string) *ExportJobResponse {
10922	s.Id = &v
10923	return s
10924}
10925
10926// SetJobStatus sets the JobStatus field's value.
10927func (s *ExportJobResponse) SetJobStatus(v string) *ExportJobResponse {
10928	s.JobStatus = &v
10929	return s
10930}
10931
10932// SetTotalFailures sets the TotalFailures field's value.
10933func (s *ExportJobResponse) SetTotalFailures(v int64) *ExportJobResponse {
10934	s.TotalFailures = &v
10935	return s
10936}
10937
10938// SetTotalPieces sets the TotalPieces field's value.
10939func (s *ExportJobResponse) SetTotalPieces(v int64) *ExportJobResponse {
10940	s.TotalPieces = &v
10941	return s
10942}
10943
10944// SetTotalProcessed sets the TotalProcessed field's value.
10945func (s *ExportJobResponse) SetTotalProcessed(v int64) *ExportJobResponse {
10946	s.TotalProcessed = &v
10947	return s
10948}
10949
10950// SetType sets the Type field's value.
10951func (s *ExportJobResponse) SetType(v string) *ExportJobResponse {
10952	s.Type = &v
10953	return s
10954}
10955
10956// Export job list.
10957type ExportJobsResponse struct {
10958	_ struct{} `type:"structure"`
10959
10960	// A list of export jobs for the application.
10961	Item []*ExportJobResponse `type:"list"`
10962
10963	// The string that you use in a subsequent request to get the next page of results
10964	// in a paginated response.
10965	NextToken *string `type:"string"`
10966}
10967
10968// String returns the string representation
10969func (s ExportJobsResponse) String() string {
10970	return awsutil.Prettify(s)
10971}
10972
10973// GoString returns the string representation
10974func (s ExportJobsResponse) GoString() string {
10975	return s.String()
10976}
10977
10978// SetItem sets the Item field's value.
10979func (s *ExportJobsResponse) SetItem(v []*ExportJobResponse) *ExportJobsResponse {
10980	s.Item = v
10981	return s
10982}
10983
10984// SetNextToken sets the NextToken field's value.
10985func (s *ExportJobsResponse) SetNextToken(v string) *ExportJobsResponse {
10986	s.NextToken = &v
10987	return s
10988}
10989
10990// Google Cloud Messaging credentials
10991type GCMChannelRequest struct {
10992	_ struct{} `type:"structure"`
10993
10994	// Platform credential API key from Google.
10995	ApiKey *string `type:"string"`
10996
10997	// If the channel is enabled for sending messages.
10998	Enabled *bool `type:"boolean"`
10999}
11000
11001// String returns the string representation
11002func (s GCMChannelRequest) String() string {
11003	return awsutil.Prettify(s)
11004}
11005
11006// GoString returns the string representation
11007func (s GCMChannelRequest) GoString() string {
11008	return s.String()
11009}
11010
11011// SetApiKey sets the ApiKey field's value.
11012func (s *GCMChannelRequest) SetApiKey(v string) *GCMChannelRequest {
11013	s.ApiKey = &v
11014	return s
11015}
11016
11017// SetEnabled sets the Enabled field's value.
11018func (s *GCMChannelRequest) SetEnabled(v bool) *GCMChannelRequest {
11019	s.Enabled = &v
11020	return s
11021}
11022
11023// Google Cloud Messaging channel definition
11024type GCMChannelResponse struct {
11025	_ struct{} `type:"structure"`
11026
11027	// The ID of the application to which the channel applies.
11028	ApplicationId *string `type:"string"`
11029
11030	// When was this segment created
11031	CreationDate *string `type:"string"`
11032
11033	// The GCM API key from Google.
11034	Credential *string `type:"string"`
11035
11036	// If the channel is enabled for sending messages.
11037	Enabled *bool `type:"boolean"`
11038
11039	// Indicates whether the channel is configured with FCM or GCM credentials.
11040	// Amazon Pinpoint uses your credentials to authenticate push notifications
11041	// with FCM or GCM. Provide your credentials by setting the ApiKey attribute.
11042	HasCredential *bool `type:"boolean"`
11043
11044	// Channel ID. Not used. Present only for backwards compatibility.
11045	Id *string `type:"string"`
11046
11047	// Is this channel archived
11048	IsArchived *bool `type:"boolean"`
11049
11050	// Who last updated this entry
11051	LastModifiedBy *string `type:"string"`
11052
11053	// Last date this was updated
11054	LastModifiedDate *string `type:"string"`
11055
11056	// The platform type. Will be GCM
11057	Platform *string `type:"string"`
11058
11059	// Version of channel
11060	Version *int64 `type:"integer"`
11061}
11062
11063// String returns the string representation
11064func (s GCMChannelResponse) String() string {
11065	return awsutil.Prettify(s)
11066}
11067
11068// GoString returns the string representation
11069func (s GCMChannelResponse) GoString() string {
11070	return s.String()
11071}
11072
11073// SetApplicationId sets the ApplicationId field's value.
11074func (s *GCMChannelResponse) SetApplicationId(v string) *GCMChannelResponse {
11075	s.ApplicationId = &v
11076	return s
11077}
11078
11079// SetCreationDate sets the CreationDate field's value.
11080func (s *GCMChannelResponse) SetCreationDate(v string) *GCMChannelResponse {
11081	s.CreationDate = &v
11082	return s
11083}
11084
11085// SetCredential sets the Credential field's value.
11086func (s *GCMChannelResponse) SetCredential(v string) *GCMChannelResponse {
11087	s.Credential = &v
11088	return s
11089}
11090
11091// SetEnabled sets the Enabled field's value.
11092func (s *GCMChannelResponse) SetEnabled(v bool) *GCMChannelResponse {
11093	s.Enabled = &v
11094	return s
11095}
11096
11097// SetHasCredential sets the HasCredential field's value.
11098func (s *GCMChannelResponse) SetHasCredential(v bool) *GCMChannelResponse {
11099	s.HasCredential = &v
11100	return s
11101}
11102
11103// SetId sets the Id field's value.
11104func (s *GCMChannelResponse) SetId(v string) *GCMChannelResponse {
11105	s.Id = &v
11106	return s
11107}
11108
11109// SetIsArchived sets the IsArchived field's value.
11110func (s *GCMChannelResponse) SetIsArchived(v bool) *GCMChannelResponse {
11111	s.IsArchived = &v
11112	return s
11113}
11114
11115// SetLastModifiedBy sets the LastModifiedBy field's value.
11116func (s *GCMChannelResponse) SetLastModifiedBy(v string) *GCMChannelResponse {
11117	s.LastModifiedBy = &v
11118	return s
11119}
11120
11121// SetLastModifiedDate sets the LastModifiedDate field's value.
11122func (s *GCMChannelResponse) SetLastModifiedDate(v string) *GCMChannelResponse {
11123	s.LastModifiedDate = &v
11124	return s
11125}
11126
11127// SetPlatform sets the Platform field's value.
11128func (s *GCMChannelResponse) SetPlatform(v string) *GCMChannelResponse {
11129	s.Platform = &v
11130	return s
11131}
11132
11133// SetVersion sets the Version field's value.
11134func (s *GCMChannelResponse) SetVersion(v int64) *GCMChannelResponse {
11135	s.Version = &v
11136	return s
11137}
11138
11139// GCM Message.
11140type GCMMessage struct {
11141	_ struct{} `type:"structure"`
11142
11143	// The action that occurs if the user taps a push notification delivered by
11144	// the campaign: OPEN_APP - Your app launches, or it becomes the foreground
11145	// app if it has been sent to the background. This is the default action. DEEP_LINK
11146	// - Uses deep linking features in iOS and Android to open your app and display
11147	// a designated user interface within the app. URL - The default mobile browser
11148	// on the user's device launches and opens a web page at the URL you specify.
11149	// Possible values include: OPEN_APP | DEEP_LINK | URL
11150	Action *string `type:"string" enum:"Action"`
11151
11152	// The message body of the notification, the email body or the text message.
11153	Body *string `type:"string"`
11154
11155	// This parameter identifies a group of messages (e.g., with collapse_key: "Updates
11156	// Available") that can be collapsed, so that only the last message gets sent
11157	// when delivery can be resumed. This is intended to avoid sending too many
11158	// of the same messages when the device comes back online or becomes active.
11159	CollapseKey *string `type:"string"`
11160
11161	// The data payload used for a silent push. This payload is added to the notifications'
11162	// data.pinpoint.jsonBody' object
11163	Data map[string]*string `type:"map"`
11164
11165	// The icon image name of the asset saved in your application.
11166	IconReference *string `type:"string"`
11167
11168	// The URL that points to an image used as the large icon to the notification
11169	// content view.
11170	ImageIconUrl *string `type:"string"`
11171
11172	// The URL that points to an image used in the push notification.
11173	ImageUrl *string `type:"string"`
11174
11175	// The message priority. Amazon Pinpoint uses this value to set the FCM or GCM
11176	// priority parameter when it sends the message. Accepts the following values:"Normal"
11177	// - Messages might be delayed. Delivery is optimized for battery usage on the
11178	// receiving device. Use normal priority unless immediate delivery is required."High"
11179	// - Messages are sent immediately and might wake a sleeping device.The equivalent
11180	// values for APNs messages are "5" and "10". Amazon Pinpoint accepts these
11181	// values here and converts them.For more information, see About FCM Messages
11182	// in the Firebase documentation.
11183	Priority *string `type:"string"`
11184
11185	// The Raw JSON formatted string to be used as the payload. This value overrides
11186	// the message.
11187	RawContent *string `type:"string"`
11188
11189	// This parameter specifies the package name of the application where the registration
11190	// tokens must match in order to receive the message.
11191	RestrictedPackageName *string `type:"string"`
11192
11193	// Indicates if the message should display on the users device. Silent pushes
11194	// can be used for Remote Configuration and Phone Home use cases.
11195	SilentPush *bool `type:"boolean"`
11196
11197	// The URL that points to an image used as the small icon for the notification
11198	// which will be used to represent the notification in the status bar and content
11199	// view
11200	SmallImageIconUrl *string `type:"string"`
11201
11202	// Indicates a sound to play when the device receives the notification. Supports
11203	// default, or the filename of a sound resource bundled in the app. Android
11204	// sound files must reside in /res/raw/
11205	Sound *string `type:"string"`
11206
11207	Substitutions map[string][]*string `type:"map"`
11208
11209	// The length of time (in seconds) that FCM or GCM stores and attempts to deliver
11210	// the message. If unspecified, the value defaults to the maximum, which is
11211	// 2,419,200 seconds (28 days). Amazon Pinpoint uses this value to set the FCM
11212	// or GCM time_to_live parameter.
11213	TimeToLive *int64 `type:"integer"`
11214
11215	// The message title that displays above the message on the user's device.
11216	Title *string `type:"string"`
11217
11218	// The URL to open in the user's mobile browser. Used if the value for Action
11219	// is URL.
11220	Url *string `type:"string"`
11221}
11222
11223// String returns the string representation
11224func (s GCMMessage) String() string {
11225	return awsutil.Prettify(s)
11226}
11227
11228// GoString returns the string representation
11229func (s GCMMessage) GoString() string {
11230	return s.String()
11231}
11232
11233// SetAction sets the Action field's value.
11234func (s *GCMMessage) SetAction(v string) *GCMMessage {
11235	s.Action = &v
11236	return s
11237}
11238
11239// SetBody sets the Body field's value.
11240func (s *GCMMessage) SetBody(v string) *GCMMessage {
11241	s.Body = &v
11242	return s
11243}
11244
11245// SetCollapseKey sets the CollapseKey field's value.
11246func (s *GCMMessage) SetCollapseKey(v string) *GCMMessage {
11247	s.CollapseKey = &v
11248	return s
11249}
11250
11251// SetData sets the Data field's value.
11252func (s *GCMMessage) SetData(v map[string]*string) *GCMMessage {
11253	s.Data = v
11254	return s
11255}
11256
11257// SetIconReference sets the IconReference field's value.
11258func (s *GCMMessage) SetIconReference(v string) *GCMMessage {
11259	s.IconReference = &v
11260	return s
11261}
11262
11263// SetImageIconUrl sets the ImageIconUrl field's value.
11264func (s *GCMMessage) SetImageIconUrl(v string) *GCMMessage {
11265	s.ImageIconUrl = &v
11266	return s
11267}
11268
11269// SetImageUrl sets the ImageUrl field's value.
11270func (s *GCMMessage) SetImageUrl(v string) *GCMMessage {
11271	s.ImageUrl = &v
11272	return s
11273}
11274
11275// SetPriority sets the Priority field's value.
11276func (s *GCMMessage) SetPriority(v string) *GCMMessage {
11277	s.Priority = &v
11278	return s
11279}
11280
11281// SetRawContent sets the RawContent field's value.
11282func (s *GCMMessage) SetRawContent(v string) *GCMMessage {
11283	s.RawContent = &v
11284	return s
11285}
11286
11287// SetRestrictedPackageName sets the RestrictedPackageName field's value.
11288func (s *GCMMessage) SetRestrictedPackageName(v string) *GCMMessage {
11289	s.RestrictedPackageName = &v
11290	return s
11291}
11292
11293// SetSilentPush sets the SilentPush field's value.
11294func (s *GCMMessage) SetSilentPush(v bool) *GCMMessage {
11295	s.SilentPush = &v
11296	return s
11297}
11298
11299// SetSmallImageIconUrl sets the SmallImageIconUrl field's value.
11300func (s *GCMMessage) SetSmallImageIconUrl(v string) *GCMMessage {
11301	s.SmallImageIconUrl = &v
11302	return s
11303}
11304
11305// SetSound sets the Sound field's value.
11306func (s *GCMMessage) SetSound(v string) *GCMMessage {
11307	s.Sound = &v
11308	return s
11309}
11310
11311// SetSubstitutions sets the Substitutions field's value.
11312func (s *GCMMessage) SetSubstitutions(v map[string][]*string) *GCMMessage {
11313	s.Substitutions = v
11314	return s
11315}
11316
11317// SetTimeToLive sets the TimeToLive field's value.
11318func (s *GCMMessage) SetTimeToLive(v int64) *GCMMessage {
11319	s.TimeToLive = &v
11320	return s
11321}
11322
11323// SetTitle sets the Title field's value.
11324func (s *GCMMessage) SetTitle(v string) *GCMMessage {
11325	s.Title = &v
11326	return s
11327}
11328
11329// SetUrl sets the Url field's value.
11330func (s *GCMMessage) SetUrl(v string) *GCMMessage {
11331	s.Url = &v
11332	return s
11333}
11334
11335type GetAdmChannelInput struct {
11336	_ struct{} `type:"structure"`
11337
11338	// ApplicationId is a required field
11339	ApplicationId *string `location:"uri" locationName:"application-id" type:"string" required:"true"`
11340}
11341
11342// String returns the string representation
11343func (s GetAdmChannelInput) String() string {
11344	return awsutil.Prettify(s)
11345}
11346
11347// GoString returns the string representation
11348func (s GetAdmChannelInput) GoString() string {
11349	return s.String()
11350}
11351
11352// Validate inspects the fields of the type to determine if they are valid.
11353func (s *GetAdmChannelInput) Validate() error {
11354	invalidParams := request.ErrInvalidParams{Context: "GetAdmChannelInput"}
11355	if s.ApplicationId == nil {
11356		invalidParams.Add(request.NewErrParamRequired("ApplicationId"))
11357	}
11358
11359	if invalidParams.Len() > 0 {
11360		return invalidParams
11361	}
11362	return nil
11363}
11364
11365// SetApplicationId sets the ApplicationId field's value.
11366func (s *GetAdmChannelInput) SetApplicationId(v string) *GetAdmChannelInput {
11367	s.ApplicationId = &v
11368	return s
11369}
11370
11371type GetAdmChannelOutput struct {
11372	_ struct{} `type:"structure" payload:"ADMChannelResponse"`
11373
11374	// Amazon Device Messaging channel definition.
11375	//
11376	// ADMChannelResponse is a required field
11377	ADMChannelResponse *ADMChannelResponse `type:"structure" required:"true"`
11378}
11379
11380// String returns the string representation
11381func (s GetAdmChannelOutput) String() string {
11382	return awsutil.Prettify(s)
11383}
11384
11385// GoString returns the string representation
11386func (s GetAdmChannelOutput) GoString() string {
11387	return s.String()
11388}
11389
11390// SetADMChannelResponse sets the ADMChannelResponse field's value.
11391func (s *GetAdmChannelOutput) SetADMChannelResponse(v *ADMChannelResponse) *GetAdmChannelOutput {
11392	s.ADMChannelResponse = v
11393	return s
11394}
11395
11396type GetApnsChannelInput struct {
11397	_ struct{} `type:"structure"`
11398
11399	// ApplicationId is a required field
11400	ApplicationId *string `location:"uri" locationName:"application-id" type:"string" required:"true"`
11401}
11402
11403// String returns the string representation
11404func (s GetApnsChannelInput) String() string {
11405	return awsutil.Prettify(s)
11406}
11407
11408// GoString returns the string representation
11409func (s GetApnsChannelInput) GoString() string {
11410	return s.String()
11411}
11412
11413// Validate inspects the fields of the type to determine if they are valid.
11414func (s *GetApnsChannelInput) Validate() error {
11415	invalidParams := request.ErrInvalidParams{Context: "GetApnsChannelInput"}
11416	if s.ApplicationId == nil {
11417		invalidParams.Add(request.NewErrParamRequired("ApplicationId"))
11418	}
11419
11420	if invalidParams.Len() > 0 {
11421		return invalidParams
11422	}
11423	return nil
11424}
11425
11426// SetApplicationId sets the ApplicationId field's value.
11427func (s *GetApnsChannelInput) SetApplicationId(v string) *GetApnsChannelInput {
11428	s.ApplicationId = &v
11429	return s
11430}
11431
11432type GetApnsChannelOutput struct {
11433	_ struct{} `type:"structure" payload:"APNSChannelResponse"`
11434
11435	// Apple Distribution Push Notification Service channel definition.
11436	//
11437	// APNSChannelResponse is a required field
11438	APNSChannelResponse *APNSChannelResponse `type:"structure" required:"true"`
11439}
11440
11441// String returns the string representation
11442func (s GetApnsChannelOutput) String() string {
11443	return awsutil.Prettify(s)
11444}
11445
11446// GoString returns the string representation
11447func (s GetApnsChannelOutput) GoString() string {
11448	return s.String()
11449}
11450
11451// SetAPNSChannelResponse sets the APNSChannelResponse field's value.
11452func (s *GetApnsChannelOutput) SetAPNSChannelResponse(v *APNSChannelResponse) *GetApnsChannelOutput {
11453	s.APNSChannelResponse = v
11454	return s
11455}
11456
11457type GetApnsSandboxChannelInput struct {
11458	_ struct{} `type:"structure"`
11459
11460	// ApplicationId is a required field
11461	ApplicationId *string `location:"uri" locationName:"application-id" type:"string" required:"true"`
11462}
11463
11464// String returns the string representation
11465func (s GetApnsSandboxChannelInput) String() string {
11466	return awsutil.Prettify(s)
11467}
11468
11469// GoString returns the string representation
11470func (s GetApnsSandboxChannelInput) GoString() string {
11471	return s.String()
11472}
11473
11474// Validate inspects the fields of the type to determine if they are valid.
11475func (s *GetApnsSandboxChannelInput) Validate() error {
11476	invalidParams := request.ErrInvalidParams{Context: "GetApnsSandboxChannelInput"}
11477	if s.ApplicationId == nil {
11478		invalidParams.Add(request.NewErrParamRequired("ApplicationId"))
11479	}
11480
11481	if invalidParams.Len() > 0 {
11482		return invalidParams
11483	}
11484	return nil
11485}
11486
11487// SetApplicationId sets the ApplicationId field's value.
11488func (s *GetApnsSandboxChannelInput) SetApplicationId(v string) *GetApnsSandboxChannelInput {
11489	s.ApplicationId = &v
11490	return s
11491}
11492
11493type GetApnsSandboxChannelOutput struct {
11494	_ struct{} `type:"structure" payload:"APNSSandboxChannelResponse"`
11495
11496	// Apple Development Push Notification Service channel definition.
11497	//
11498	// APNSSandboxChannelResponse is a required field
11499	APNSSandboxChannelResponse *APNSSandboxChannelResponse `type:"structure" required:"true"`
11500}
11501
11502// String returns the string representation
11503func (s GetApnsSandboxChannelOutput) String() string {
11504	return awsutil.Prettify(s)
11505}
11506
11507// GoString returns the string representation
11508func (s GetApnsSandboxChannelOutput) GoString() string {
11509	return s.String()
11510}
11511
11512// SetAPNSSandboxChannelResponse sets the APNSSandboxChannelResponse field's value.
11513func (s *GetApnsSandboxChannelOutput) SetAPNSSandboxChannelResponse(v *APNSSandboxChannelResponse) *GetApnsSandboxChannelOutput {
11514	s.APNSSandboxChannelResponse = v
11515	return s
11516}
11517
11518type GetApnsVoipChannelInput struct {
11519	_ struct{} `type:"structure"`
11520
11521	// ApplicationId is a required field
11522	ApplicationId *string `location:"uri" locationName:"application-id" type:"string" required:"true"`
11523}
11524
11525// String returns the string representation
11526func (s GetApnsVoipChannelInput) String() string {
11527	return awsutil.Prettify(s)
11528}
11529
11530// GoString returns the string representation
11531func (s GetApnsVoipChannelInput) GoString() string {
11532	return s.String()
11533}
11534
11535// Validate inspects the fields of the type to determine if they are valid.
11536func (s *GetApnsVoipChannelInput) Validate() error {
11537	invalidParams := request.ErrInvalidParams{Context: "GetApnsVoipChannelInput"}
11538	if s.ApplicationId == nil {
11539		invalidParams.Add(request.NewErrParamRequired("ApplicationId"))
11540	}
11541
11542	if invalidParams.Len() > 0 {
11543		return invalidParams
11544	}
11545	return nil
11546}
11547
11548// SetApplicationId sets the ApplicationId field's value.
11549func (s *GetApnsVoipChannelInput) SetApplicationId(v string) *GetApnsVoipChannelInput {
11550	s.ApplicationId = &v
11551	return s
11552}
11553
11554type GetApnsVoipChannelOutput struct {
11555	_ struct{} `type:"structure" payload:"APNSVoipChannelResponse"`
11556
11557	// Apple VoIP Push Notification Service channel definition.
11558	//
11559	// APNSVoipChannelResponse is a required field
11560	APNSVoipChannelResponse *APNSVoipChannelResponse `type:"structure" required:"true"`
11561}
11562
11563// String returns the string representation
11564func (s GetApnsVoipChannelOutput) String() string {
11565	return awsutil.Prettify(s)
11566}
11567
11568// GoString returns the string representation
11569func (s GetApnsVoipChannelOutput) GoString() string {
11570	return s.String()
11571}
11572
11573// SetAPNSVoipChannelResponse sets the APNSVoipChannelResponse field's value.
11574func (s *GetApnsVoipChannelOutput) SetAPNSVoipChannelResponse(v *APNSVoipChannelResponse) *GetApnsVoipChannelOutput {
11575	s.APNSVoipChannelResponse = v
11576	return s
11577}
11578
11579type GetApnsVoipSandboxChannelInput struct {
11580	_ struct{} `type:"structure"`
11581
11582	// ApplicationId is a required field
11583	ApplicationId *string `location:"uri" locationName:"application-id" type:"string" required:"true"`
11584}
11585
11586// String returns the string representation
11587func (s GetApnsVoipSandboxChannelInput) String() string {
11588	return awsutil.Prettify(s)
11589}
11590
11591// GoString returns the string representation
11592func (s GetApnsVoipSandboxChannelInput) GoString() string {
11593	return s.String()
11594}
11595
11596// Validate inspects the fields of the type to determine if they are valid.
11597func (s *GetApnsVoipSandboxChannelInput) Validate() error {
11598	invalidParams := request.ErrInvalidParams{Context: "GetApnsVoipSandboxChannelInput"}
11599	if s.ApplicationId == nil {
11600		invalidParams.Add(request.NewErrParamRequired("ApplicationId"))
11601	}
11602
11603	if invalidParams.Len() > 0 {
11604		return invalidParams
11605	}
11606	return nil
11607}
11608
11609// SetApplicationId sets the ApplicationId field's value.
11610func (s *GetApnsVoipSandboxChannelInput) SetApplicationId(v string) *GetApnsVoipSandboxChannelInput {
11611	s.ApplicationId = &v
11612	return s
11613}
11614
11615type GetApnsVoipSandboxChannelOutput struct {
11616	_ struct{} `type:"structure" payload:"APNSVoipSandboxChannelResponse"`
11617
11618	// Apple VoIP Developer Push Notification Service channel definition.
11619	//
11620	// APNSVoipSandboxChannelResponse is a required field
11621	APNSVoipSandboxChannelResponse *APNSVoipSandboxChannelResponse `type:"structure" required:"true"`
11622}
11623
11624// String returns the string representation
11625func (s GetApnsVoipSandboxChannelOutput) String() string {
11626	return awsutil.Prettify(s)
11627}
11628
11629// GoString returns the string representation
11630func (s GetApnsVoipSandboxChannelOutput) GoString() string {
11631	return s.String()
11632}
11633
11634// SetAPNSVoipSandboxChannelResponse sets the APNSVoipSandboxChannelResponse field's value.
11635func (s *GetApnsVoipSandboxChannelOutput) SetAPNSVoipSandboxChannelResponse(v *APNSVoipSandboxChannelResponse) *GetApnsVoipSandboxChannelOutput {
11636	s.APNSVoipSandboxChannelResponse = v
11637	return s
11638}
11639
11640type GetAppInput struct {
11641	_ struct{} `type:"structure"`
11642
11643	// ApplicationId is a required field
11644	ApplicationId *string `location:"uri" locationName:"application-id" type:"string" required:"true"`
11645}
11646
11647// String returns the string representation
11648func (s GetAppInput) String() string {
11649	return awsutil.Prettify(s)
11650}
11651
11652// GoString returns the string representation
11653func (s GetAppInput) GoString() string {
11654	return s.String()
11655}
11656
11657// Validate inspects the fields of the type to determine if they are valid.
11658func (s *GetAppInput) Validate() error {
11659	invalidParams := request.ErrInvalidParams{Context: "GetAppInput"}
11660	if s.ApplicationId == nil {
11661		invalidParams.Add(request.NewErrParamRequired("ApplicationId"))
11662	}
11663
11664	if invalidParams.Len() > 0 {
11665		return invalidParams
11666	}
11667	return nil
11668}
11669
11670// SetApplicationId sets the ApplicationId field's value.
11671func (s *GetAppInput) SetApplicationId(v string) *GetAppInput {
11672	s.ApplicationId = &v
11673	return s
11674}
11675
11676type GetAppOutput struct {
11677	_ struct{} `type:"structure" payload:"ApplicationResponse"`
11678
11679	// Application Response.
11680	//
11681	// ApplicationResponse is a required field
11682	ApplicationResponse *ApplicationResponse `type:"structure" required:"true"`
11683}
11684
11685// String returns the string representation
11686func (s GetAppOutput) String() string {
11687	return awsutil.Prettify(s)
11688}
11689
11690// GoString returns the string representation
11691func (s GetAppOutput) GoString() string {
11692	return s.String()
11693}
11694
11695// SetApplicationResponse sets the ApplicationResponse field's value.
11696func (s *GetAppOutput) SetApplicationResponse(v *ApplicationResponse) *GetAppOutput {
11697	s.ApplicationResponse = v
11698	return s
11699}
11700
11701type GetApplicationSettingsInput struct {
11702	_ struct{} `type:"structure"`
11703
11704	// ApplicationId is a required field
11705	ApplicationId *string `location:"uri" locationName:"application-id" type:"string" required:"true"`
11706}
11707
11708// String returns the string representation
11709func (s GetApplicationSettingsInput) String() string {
11710	return awsutil.Prettify(s)
11711}
11712
11713// GoString returns the string representation
11714func (s GetApplicationSettingsInput) GoString() string {
11715	return s.String()
11716}
11717
11718// Validate inspects the fields of the type to determine if they are valid.
11719func (s *GetApplicationSettingsInput) Validate() error {
11720	invalidParams := request.ErrInvalidParams{Context: "GetApplicationSettingsInput"}
11721	if s.ApplicationId == nil {
11722		invalidParams.Add(request.NewErrParamRequired("ApplicationId"))
11723	}
11724
11725	if invalidParams.Len() > 0 {
11726		return invalidParams
11727	}
11728	return nil
11729}
11730
11731// SetApplicationId sets the ApplicationId field's value.
11732func (s *GetApplicationSettingsInput) SetApplicationId(v string) *GetApplicationSettingsInput {
11733	s.ApplicationId = &v
11734	return s
11735}
11736
11737type GetApplicationSettingsOutput struct {
11738	_ struct{} `type:"structure" payload:"ApplicationSettingsResource"`
11739
11740	// Application settings.
11741	//
11742	// ApplicationSettingsResource is a required field
11743	ApplicationSettingsResource *ApplicationSettingsResource `type:"structure" required:"true"`
11744}
11745
11746// String returns the string representation
11747func (s GetApplicationSettingsOutput) String() string {
11748	return awsutil.Prettify(s)
11749}
11750
11751// GoString returns the string representation
11752func (s GetApplicationSettingsOutput) GoString() string {
11753	return s.String()
11754}
11755
11756// SetApplicationSettingsResource sets the ApplicationSettingsResource field's value.
11757func (s *GetApplicationSettingsOutput) SetApplicationSettingsResource(v *ApplicationSettingsResource) *GetApplicationSettingsOutput {
11758	s.ApplicationSettingsResource = v
11759	return s
11760}
11761
11762type GetAppsInput struct {
11763	_ struct{} `type:"structure"`
11764
11765	PageSize *string `location:"querystring" locationName:"page-size" type:"string"`
11766
11767	Token *string `location:"querystring" locationName:"token" type:"string"`
11768}
11769
11770// String returns the string representation
11771func (s GetAppsInput) String() string {
11772	return awsutil.Prettify(s)
11773}
11774
11775// GoString returns the string representation
11776func (s GetAppsInput) GoString() string {
11777	return s.String()
11778}
11779
11780// SetPageSize sets the PageSize field's value.
11781func (s *GetAppsInput) SetPageSize(v string) *GetAppsInput {
11782	s.PageSize = &v
11783	return s
11784}
11785
11786// SetToken sets the Token field's value.
11787func (s *GetAppsInput) SetToken(v string) *GetAppsInput {
11788	s.Token = &v
11789	return s
11790}
11791
11792type GetAppsOutput struct {
11793	_ struct{} `type:"structure" payload:"ApplicationsResponse"`
11794
11795	// Get Applications Result.
11796	//
11797	// ApplicationsResponse is a required field
11798	ApplicationsResponse *ApplicationsResponse `type:"structure" required:"true"`
11799}
11800
11801// String returns the string representation
11802func (s GetAppsOutput) String() string {
11803	return awsutil.Prettify(s)
11804}
11805
11806// GoString returns the string representation
11807func (s GetAppsOutput) GoString() string {
11808	return s.String()
11809}
11810
11811// SetApplicationsResponse sets the ApplicationsResponse field's value.
11812func (s *GetAppsOutput) SetApplicationsResponse(v *ApplicationsResponse) *GetAppsOutput {
11813	s.ApplicationsResponse = v
11814	return s
11815}
11816
11817type GetBaiduChannelInput struct {
11818	_ struct{} `type:"structure"`
11819
11820	// ApplicationId is a required field
11821	ApplicationId *string `location:"uri" locationName:"application-id" type:"string" required:"true"`
11822}
11823
11824// String returns the string representation
11825func (s GetBaiduChannelInput) String() string {
11826	return awsutil.Prettify(s)
11827}
11828
11829// GoString returns the string representation
11830func (s GetBaiduChannelInput) GoString() string {
11831	return s.String()
11832}
11833
11834// Validate inspects the fields of the type to determine if they are valid.
11835func (s *GetBaiduChannelInput) Validate() error {
11836	invalidParams := request.ErrInvalidParams{Context: "GetBaiduChannelInput"}
11837	if s.ApplicationId == nil {
11838		invalidParams.Add(request.NewErrParamRequired("ApplicationId"))
11839	}
11840
11841	if invalidParams.Len() > 0 {
11842		return invalidParams
11843	}
11844	return nil
11845}
11846
11847// SetApplicationId sets the ApplicationId field's value.
11848func (s *GetBaiduChannelInput) SetApplicationId(v string) *GetBaiduChannelInput {
11849	s.ApplicationId = &v
11850	return s
11851}
11852
11853type GetBaiduChannelOutput struct {
11854	_ struct{} `type:"structure" payload:"BaiduChannelResponse"`
11855
11856	// Baidu Cloud Messaging channel definition
11857	//
11858	// BaiduChannelResponse is a required field
11859	BaiduChannelResponse *BaiduChannelResponse `type:"structure" required:"true"`
11860}
11861
11862// String returns the string representation
11863func (s GetBaiduChannelOutput) String() string {
11864	return awsutil.Prettify(s)
11865}
11866
11867// GoString returns the string representation
11868func (s GetBaiduChannelOutput) GoString() string {
11869	return s.String()
11870}
11871
11872// SetBaiduChannelResponse sets the BaiduChannelResponse field's value.
11873func (s *GetBaiduChannelOutput) SetBaiduChannelResponse(v *BaiduChannelResponse) *GetBaiduChannelOutput {
11874	s.BaiduChannelResponse = v
11875	return s
11876}
11877
11878type GetCampaignActivitiesInput struct {
11879	_ struct{} `type:"structure"`
11880
11881	// ApplicationId is a required field
11882	ApplicationId *string `location:"uri" locationName:"application-id" type:"string" required:"true"`
11883
11884	// CampaignId is a required field
11885	CampaignId *string `location:"uri" locationName:"campaign-id" type:"string" required:"true"`
11886
11887	PageSize *string `location:"querystring" locationName:"page-size" type:"string"`
11888
11889	Token *string `location:"querystring" locationName:"token" type:"string"`
11890}
11891
11892// String returns the string representation
11893func (s GetCampaignActivitiesInput) String() string {
11894	return awsutil.Prettify(s)
11895}
11896
11897// GoString returns the string representation
11898func (s GetCampaignActivitiesInput) GoString() string {
11899	return s.String()
11900}
11901
11902// Validate inspects the fields of the type to determine if they are valid.
11903func (s *GetCampaignActivitiesInput) Validate() error {
11904	invalidParams := request.ErrInvalidParams{Context: "GetCampaignActivitiesInput"}
11905	if s.ApplicationId == nil {
11906		invalidParams.Add(request.NewErrParamRequired("ApplicationId"))
11907	}
11908	if s.CampaignId == nil {
11909		invalidParams.Add(request.NewErrParamRequired("CampaignId"))
11910	}
11911
11912	if invalidParams.Len() > 0 {
11913		return invalidParams
11914	}
11915	return nil
11916}
11917
11918// SetApplicationId sets the ApplicationId field's value.
11919func (s *GetCampaignActivitiesInput) SetApplicationId(v string) *GetCampaignActivitiesInput {
11920	s.ApplicationId = &v
11921	return s
11922}
11923
11924// SetCampaignId sets the CampaignId field's value.
11925func (s *GetCampaignActivitiesInput) SetCampaignId(v string) *GetCampaignActivitiesInput {
11926	s.CampaignId = &v
11927	return s
11928}
11929
11930// SetPageSize sets the PageSize field's value.
11931func (s *GetCampaignActivitiesInput) SetPageSize(v string) *GetCampaignActivitiesInput {
11932	s.PageSize = &v
11933	return s
11934}
11935
11936// SetToken sets the Token field's value.
11937func (s *GetCampaignActivitiesInput) SetToken(v string) *GetCampaignActivitiesInput {
11938	s.Token = &v
11939	return s
11940}
11941
11942type GetCampaignActivitiesOutput struct {
11943	_ struct{} `type:"structure" payload:"ActivitiesResponse"`
11944
11945	// Activities for campaign.
11946	//
11947	// ActivitiesResponse is a required field
11948	ActivitiesResponse *ActivitiesResponse `type:"structure" required:"true"`
11949}
11950
11951// String returns the string representation
11952func (s GetCampaignActivitiesOutput) String() string {
11953	return awsutil.Prettify(s)
11954}
11955
11956// GoString returns the string representation
11957func (s GetCampaignActivitiesOutput) GoString() string {
11958	return s.String()
11959}
11960
11961// SetActivitiesResponse sets the ActivitiesResponse field's value.
11962func (s *GetCampaignActivitiesOutput) SetActivitiesResponse(v *ActivitiesResponse) *GetCampaignActivitiesOutput {
11963	s.ActivitiesResponse = v
11964	return s
11965}
11966
11967type GetCampaignInput struct {
11968	_ struct{} `type:"structure"`
11969
11970	// ApplicationId is a required field
11971	ApplicationId *string `location:"uri" locationName:"application-id" type:"string" required:"true"`
11972
11973	// CampaignId is a required field
11974	CampaignId *string `location:"uri" locationName:"campaign-id" type:"string" required:"true"`
11975}
11976
11977// String returns the string representation
11978func (s GetCampaignInput) String() string {
11979	return awsutil.Prettify(s)
11980}
11981
11982// GoString returns the string representation
11983func (s GetCampaignInput) GoString() string {
11984	return s.String()
11985}
11986
11987// Validate inspects the fields of the type to determine if they are valid.
11988func (s *GetCampaignInput) Validate() error {
11989	invalidParams := request.ErrInvalidParams{Context: "GetCampaignInput"}
11990	if s.ApplicationId == nil {
11991		invalidParams.Add(request.NewErrParamRequired("ApplicationId"))
11992	}
11993	if s.CampaignId == nil {
11994		invalidParams.Add(request.NewErrParamRequired("CampaignId"))
11995	}
11996
11997	if invalidParams.Len() > 0 {
11998		return invalidParams
11999	}
12000	return nil
12001}
12002
12003// SetApplicationId sets the ApplicationId field's value.
12004func (s *GetCampaignInput) SetApplicationId(v string) *GetCampaignInput {
12005	s.ApplicationId = &v
12006	return s
12007}
12008
12009// SetCampaignId sets the CampaignId field's value.
12010func (s *GetCampaignInput) SetCampaignId(v string) *GetCampaignInput {
12011	s.CampaignId = &v
12012	return s
12013}
12014
12015type GetCampaignOutput struct {
12016	_ struct{} `type:"structure" payload:"CampaignResponse"`
12017
12018	// Campaign definition
12019	//
12020	// CampaignResponse is a required field
12021	CampaignResponse *CampaignResponse `type:"structure" required:"true"`
12022}
12023
12024// String returns the string representation
12025func (s GetCampaignOutput) String() string {
12026	return awsutil.Prettify(s)
12027}
12028
12029// GoString returns the string representation
12030func (s GetCampaignOutput) GoString() string {
12031	return s.String()
12032}
12033
12034// SetCampaignResponse sets the CampaignResponse field's value.
12035func (s *GetCampaignOutput) SetCampaignResponse(v *CampaignResponse) *GetCampaignOutput {
12036	s.CampaignResponse = v
12037	return s
12038}
12039
12040type GetCampaignVersionInput struct {
12041	_ struct{} `type:"structure"`
12042
12043	// ApplicationId is a required field
12044	ApplicationId *string `location:"uri" locationName:"application-id" type:"string" required:"true"`
12045
12046	// CampaignId is a required field
12047	CampaignId *string `location:"uri" locationName:"campaign-id" type:"string" required:"true"`
12048
12049	// Version is a required field
12050	Version *string `location:"uri" locationName:"version" type:"string" required:"true"`
12051}
12052
12053// String returns the string representation
12054func (s GetCampaignVersionInput) String() string {
12055	return awsutil.Prettify(s)
12056}
12057
12058// GoString returns the string representation
12059func (s GetCampaignVersionInput) GoString() string {
12060	return s.String()
12061}
12062
12063// Validate inspects the fields of the type to determine if they are valid.
12064func (s *GetCampaignVersionInput) Validate() error {
12065	invalidParams := request.ErrInvalidParams{Context: "GetCampaignVersionInput"}
12066	if s.ApplicationId == nil {
12067		invalidParams.Add(request.NewErrParamRequired("ApplicationId"))
12068	}
12069	if s.CampaignId == nil {
12070		invalidParams.Add(request.NewErrParamRequired("CampaignId"))
12071	}
12072	if s.Version == nil {
12073		invalidParams.Add(request.NewErrParamRequired("Version"))
12074	}
12075
12076	if invalidParams.Len() > 0 {
12077		return invalidParams
12078	}
12079	return nil
12080}
12081
12082// SetApplicationId sets the ApplicationId field's value.
12083func (s *GetCampaignVersionInput) SetApplicationId(v string) *GetCampaignVersionInput {
12084	s.ApplicationId = &v
12085	return s
12086}
12087
12088// SetCampaignId sets the CampaignId field's value.
12089func (s *GetCampaignVersionInput) SetCampaignId(v string) *GetCampaignVersionInput {
12090	s.CampaignId = &v
12091	return s
12092}
12093
12094// SetVersion sets the Version field's value.
12095func (s *GetCampaignVersionInput) SetVersion(v string) *GetCampaignVersionInput {
12096	s.Version = &v
12097	return s
12098}
12099
12100type GetCampaignVersionOutput struct {
12101	_ struct{} `type:"structure" payload:"CampaignResponse"`
12102
12103	// Campaign definition
12104	//
12105	// CampaignResponse is a required field
12106	CampaignResponse *CampaignResponse `type:"structure" required:"true"`
12107}
12108
12109// String returns the string representation
12110func (s GetCampaignVersionOutput) String() string {
12111	return awsutil.Prettify(s)
12112}
12113
12114// GoString returns the string representation
12115func (s GetCampaignVersionOutput) GoString() string {
12116	return s.String()
12117}
12118
12119// SetCampaignResponse sets the CampaignResponse field's value.
12120func (s *GetCampaignVersionOutput) SetCampaignResponse(v *CampaignResponse) *GetCampaignVersionOutput {
12121	s.CampaignResponse = v
12122	return s
12123}
12124
12125type GetCampaignVersionsInput struct {
12126	_ struct{} `type:"structure"`
12127
12128	// ApplicationId is a required field
12129	ApplicationId *string `location:"uri" locationName:"application-id" type:"string" required:"true"`
12130
12131	// CampaignId is a required field
12132	CampaignId *string `location:"uri" locationName:"campaign-id" type:"string" required:"true"`
12133
12134	PageSize *string `location:"querystring" locationName:"page-size" type:"string"`
12135
12136	Token *string `location:"querystring" locationName:"token" type:"string"`
12137}
12138
12139// String returns the string representation
12140func (s GetCampaignVersionsInput) String() string {
12141	return awsutil.Prettify(s)
12142}
12143
12144// GoString returns the string representation
12145func (s GetCampaignVersionsInput) GoString() string {
12146	return s.String()
12147}
12148
12149// Validate inspects the fields of the type to determine if they are valid.
12150func (s *GetCampaignVersionsInput) Validate() error {
12151	invalidParams := request.ErrInvalidParams{Context: "GetCampaignVersionsInput"}
12152	if s.ApplicationId == nil {
12153		invalidParams.Add(request.NewErrParamRequired("ApplicationId"))
12154	}
12155	if s.CampaignId == nil {
12156		invalidParams.Add(request.NewErrParamRequired("CampaignId"))
12157	}
12158
12159	if invalidParams.Len() > 0 {
12160		return invalidParams
12161	}
12162	return nil
12163}
12164
12165// SetApplicationId sets the ApplicationId field's value.
12166func (s *GetCampaignVersionsInput) SetApplicationId(v string) *GetCampaignVersionsInput {
12167	s.ApplicationId = &v
12168	return s
12169}
12170
12171// SetCampaignId sets the CampaignId field's value.
12172func (s *GetCampaignVersionsInput) SetCampaignId(v string) *GetCampaignVersionsInput {
12173	s.CampaignId = &v
12174	return s
12175}
12176
12177// SetPageSize sets the PageSize field's value.
12178func (s *GetCampaignVersionsInput) SetPageSize(v string) *GetCampaignVersionsInput {
12179	s.PageSize = &v
12180	return s
12181}
12182
12183// SetToken sets the Token field's value.
12184func (s *GetCampaignVersionsInput) SetToken(v string) *GetCampaignVersionsInput {
12185	s.Token = &v
12186	return s
12187}
12188
12189type GetCampaignVersionsOutput struct {
12190	_ struct{} `type:"structure" payload:"CampaignsResponse"`
12191
12192	// List of available campaigns.
12193	//
12194	// CampaignsResponse is a required field
12195	CampaignsResponse *CampaignsResponse `type:"structure" required:"true"`
12196}
12197
12198// String returns the string representation
12199func (s GetCampaignVersionsOutput) String() string {
12200	return awsutil.Prettify(s)
12201}
12202
12203// GoString returns the string representation
12204func (s GetCampaignVersionsOutput) GoString() string {
12205	return s.String()
12206}
12207
12208// SetCampaignsResponse sets the CampaignsResponse field's value.
12209func (s *GetCampaignVersionsOutput) SetCampaignsResponse(v *CampaignsResponse) *GetCampaignVersionsOutput {
12210	s.CampaignsResponse = v
12211	return s
12212}
12213
12214type GetCampaignsInput struct {
12215	_ struct{} `type:"structure"`
12216
12217	// ApplicationId is a required field
12218	ApplicationId *string `location:"uri" locationName:"application-id" type:"string" required:"true"`
12219
12220	PageSize *string `location:"querystring" locationName:"page-size" type:"string"`
12221
12222	Token *string `location:"querystring" locationName:"token" type:"string"`
12223}
12224
12225// String returns the string representation
12226func (s GetCampaignsInput) String() string {
12227	return awsutil.Prettify(s)
12228}
12229
12230// GoString returns the string representation
12231func (s GetCampaignsInput) GoString() string {
12232	return s.String()
12233}
12234
12235// Validate inspects the fields of the type to determine if they are valid.
12236func (s *GetCampaignsInput) Validate() error {
12237	invalidParams := request.ErrInvalidParams{Context: "GetCampaignsInput"}
12238	if s.ApplicationId == nil {
12239		invalidParams.Add(request.NewErrParamRequired("ApplicationId"))
12240	}
12241
12242	if invalidParams.Len() > 0 {
12243		return invalidParams
12244	}
12245	return nil
12246}
12247
12248// SetApplicationId sets the ApplicationId field's value.
12249func (s *GetCampaignsInput) SetApplicationId(v string) *GetCampaignsInput {
12250	s.ApplicationId = &v
12251	return s
12252}
12253
12254// SetPageSize sets the PageSize field's value.
12255func (s *GetCampaignsInput) SetPageSize(v string) *GetCampaignsInput {
12256	s.PageSize = &v
12257	return s
12258}
12259
12260// SetToken sets the Token field's value.
12261func (s *GetCampaignsInput) SetToken(v string) *GetCampaignsInput {
12262	s.Token = &v
12263	return s
12264}
12265
12266type GetCampaignsOutput struct {
12267	_ struct{} `type:"structure" payload:"CampaignsResponse"`
12268
12269	// List of available campaigns.
12270	//
12271	// CampaignsResponse is a required field
12272	CampaignsResponse *CampaignsResponse `type:"structure" required:"true"`
12273}
12274
12275// String returns the string representation
12276func (s GetCampaignsOutput) String() string {
12277	return awsutil.Prettify(s)
12278}
12279
12280// GoString returns the string representation
12281func (s GetCampaignsOutput) GoString() string {
12282	return s.String()
12283}
12284
12285// SetCampaignsResponse sets the CampaignsResponse field's value.
12286func (s *GetCampaignsOutput) SetCampaignsResponse(v *CampaignsResponse) *GetCampaignsOutput {
12287	s.CampaignsResponse = v
12288	return s
12289}
12290
12291type GetEmailChannelInput struct {
12292	_ struct{} `type:"structure"`
12293
12294	// ApplicationId is a required field
12295	ApplicationId *string `location:"uri" locationName:"application-id" type:"string" required:"true"`
12296}
12297
12298// String returns the string representation
12299func (s GetEmailChannelInput) String() string {
12300	return awsutil.Prettify(s)
12301}
12302
12303// GoString returns the string representation
12304func (s GetEmailChannelInput) GoString() string {
12305	return s.String()
12306}
12307
12308// Validate inspects the fields of the type to determine if they are valid.
12309func (s *GetEmailChannelInput) Validate() error {
12310	invalidParams := request.ErrInvalidParams{Context: "GetEmailChannelInput"}
12311	if s.ApplicationId == nil {
12312		invalidParams.Add(request.NewErrParamRequired("ApplicationId"))
12313	}
12314
12315	if invalidParams.Len() > 0 {
12316		return invalidParams
12317	}
12318	return nil
12319}
12320
12321// SetApplicationId sets the ApplicationId field's value.
12322func (s *GetEmailChannelInput) SetApplicationId(v string) *GetEmailChannelInput {
12323	s.ApplicationId = &v
12324	return s
12325}
12326
12327type GetEmailChannelOutput struct {
12328	_ struct{} `type:"structure" payload:"EmailChannelResponse"`
12329
12330	// Email Channel Response.
12331	//
12332	// EmailChannelResponse is a required field
12333	EmailChannelResponse *EmailChannelResponse `type:"structure" required:"true"`
12334}
12335
12336// String returns the string representation
12337func (s GetEmailChannelOutput) String() string {
12338	return awsutil.Prettify(s)
12339}
12340
12341// GoString returns the string representation
12342func (s GetEmailChannelOutput) GoString() string {
12343	return s.String()
12344}
12345
12346// SetEmailChannelResponse sets the EmailChannelResponse field's value.
12347func (s *GetEmailChannelOutput) SetEmailChannelResponse(v *EmailChannelResponse) *GetEmailChannelOutput {
12348	s.EmailChannelResponse = v
12349	return s
12350}
12351
12352type GetEndpointInput struct {
12353	_ struct{} `type:"structure"`
12354
12355	// ApplicationId is a required field
12356	ApplicationId *string `location:"uri" locationName:"application-id" type:"string" required:"true"`
12357
12358	// EndpointId is a required field
12359	EndpointId *string `location:"uri" locationName:"endpoint-id" type:"string" required:"true"`
12360}
12361
12362// String returns the string representation
12363func (s GetEndpointInput) String() string {
12364	return awsutil.Prettify(s)
12365}
12366
12367// GoString returns the string representation
12368func (s GetEndpointInput) GoString() string {
12369	return s.String()
12370}
12371
12372// Validate inspects the fields of the type to determine if they are valid.
12373func (s *GetEndpointInput) Validate() error {
12374	invalidParams := request.ErrInvalidParams{Context: "GetEndpointInput"}
12375	if s.ApplicationId == nil {
12376		invalidParams.Add(request.NewErrParamRequired("ApplicationId"))
12377	}
12378	if s.EndpointId == nil {
12379		invalidParams.Add(request.NewErrParamRequired("EndpointId"))
12380	}
12381
12382	if invalidParams.Len() > 0 {
12383		return invalidParams
12384	}
12385	return nil
12386}
12387
12388// SetApplicationId sets the ApplicationId field's value.
12389func (s *GetEndpointInput) SetApplicationId(v string) *GetEndpointInput {
12390	s.ApplicationId = &v
12391	return s
12392}
12393
12394// SetEndpointId sets the EndpointId field's value.
12395func (s *GetEndpointInput) SetEndpointId(v string) *GetEndpointInput {
12396	s.EndpointId = &v
12397	return s
12398}
12399
12400type GetEndpointOutput struct {
12401	_ struct{} `type:"structure" payload:"EndpointResponse"`
12402
12403	// Endpoint response
12404	//
12405	// EndpointResponse is a required field
12406	EndpointResponse *EndpointResponse `type:"structure" required:"true"`
12407}
12408
12409// String returns the string representation
12410func (s GetEndpointOutput) String() string {
12411	return awsutil.Prettify(s)
12412}
12413
12414// GoString returns the string representation
12415func (s GetEndpointOutput) GoString() string {
12416	return s.String()
12417}
12418
12419// SetEndpointResponse sets the EndpointResponse field's value.
12420func (s *GetEndpointOutput) SetEndpointResponse(v *EndpointResponse) *GetEndpointOutput {
12421	s.EndpointResponse = v
12422	return s
12423}
12424
12425type GetEventStreamInput struct {
12426	_ struct{} `type:"structure"`
12427
12428	// Application Id.
12429	//
12430	// ApplicationId is a required field
12431	ApplicationId *string `location:"uri" locationName:"application-id" type:"string" required:"true"`
12432}
12433
12434// String returns the string representation
12435func (s GetEventStreamInput) String() string {
12436	return awsutil.Prettify(s)
12437}
12438
12439// GoString returns the string representation
12440func (s GetEventStreamInput) GoString() string {
12441	return s.String()
12442}
12443
12444// Validate inspects the fields of the type to determine if they are valid.
12445func (s *GetEventStreamInput) Validate() error {
12446	invalidParams := request.ErrInvalidParams{Context: "GetEventStreamInput"}
12447	if s.ApplicationId == nil {
12448		invalidParams.Add(request.NewErrParamRequired("ApplicationId"))
12449	}
12450
12451	if invalidParams.Len() > 0 {
12452		return invalidParams
12453	}
12454	return nil
12455}
12456
12457// SetApplicationId sets the ApplicationId field's value.
12458func (s *GetEventStreamInput) SetApplicationId(v string) *GetEventStreamInput {
12459	s.ApplicationId = &v
12460	return s
12461}
12462
12463type GetEventStreamOutput struct {
12464	_ struct{} `type:"structure" payload:"EventStream"`
12465
12466	// Model for an event publishing subscription export.
12467	//
12468	// EventStream is a required field
12469	EventStream *EventStream `type:"structure" required:"true"`
12470}
12471
12472// String returns the string representation
12473func (s GetEventStreamOutput) String() string {
12474	return awsutil.Prettify(s)
12475}
12476
12477// GoString returns the string representation
12478func (s GetEventStreamOutput) GoString() string {
12479	return s.String()
12480}
12481
12482// SetEventStream sets the EventStream field's value.
12483func (s *GetEventStreamOutput) SetEventStream(v *EventStream) *GetEventStreamOutput {
12484	s.EventStream = v
12485	return s
12486}
12487
12488type GetExportJobInput struct {
12489	_ struct{} `type:"structure"`
12490
12491	// ApplicationId is a required field
12492	ApplicationId *string `location:"uri" locationName:"application-id" type:"string" required:"true"`
12493
12494	// JobId is a required field
12495	JobId *string `location:"uri" locationName:"job-id" type:"string" required:"true"`
12496}
12497
12498// String returns the string representation
12499func (s GetExportJobInput) String() string {
12500	return awsutil.Prettify(s)
12501}
12502
12503// GoString returns the string representation
12504func (s GetExportJobInput) GoString() string {
12505	return s.String()
12506}
12507
12508// Validate inspects the fields of the type to determine if they are valid.
12509func (s *GetExportJobInput) Validate() error {
12510	invalidParams := request.ErrInvalidParams{Context: "GetExportJobInput"}
12511	if s.ApplicationId == nil {
12512		invalidParams.Add(request.NewErrParamRequired("ApplicationId"))
12513	}
12514	if s.JobId == nil {
12515		invalidParams.Add(request.NewErrParamRequired("JobId"))
12516	}
12517
12518	if invalidParams.Len() > 0 {
12519		return invalidParams
12520	}
12521	return nil
12522}
12523
12524// SetApplicationId sets the ApplicationId field's value.
12525func (s *GetExportJobInput) SetApplicationId(v string) *GetExportJobInput {
12526	s.ApplicationId = &v
12527	return s
12528}
12529
12530// SetJobId sets the JobId field's value.
12531func (s *GetExportJobInput) SetJobId(v string) *GetExportJobInput {
12532	s.JobId = &v
12533	return s
12534}
12535
12536type GetExportJobOutput struct {
12537	_ struct{} `type:"structure" payload:"ExportJobResponse"`
12538
12539	// ExportJobResponse is a required field
12540	ExportJobResponse *ExportJobResponse `type:"structure" required:"true"`
12541}
12542
12543// String returns the string representation
12544func (s GetExportJobOutput) String() string {
12545	return awsutil.Prettify(s)
12546}
12547
12548// GoString returns the string representation
12549func (s GetExportJobOutput) GoString() string {
12550	return s.String()
12551}
12552
12553// SetExportJobResponse sets the ExportJobResponse field's value.
12554func (s *GetExportJobOutput) SetExportJobResponse(v *ExportJobResponse) *GetExportJobOutput {
12555	s.ExportJobResponse = v
12556	return s
12557}
12558
12559type GetExportJobsInput struct {
12560	_ struct{} `type:"structure"`
12561
12562	// ApplicationId is a required field
12563	ApplicationId *string `location:"uri" locationName:"application-id" type:"string" required:"true"`
12564
12565	PageSize *string `location:"querystring" locationName:"page-size" type:"string"`
12566
12567	Token *string `location:"querystring" locationName:"token" type:"string"`
12568}
12569
12570// String returns the string representation
12571func (s GetExportJobsInput) String() string {
12572	return awsutil.Prettify(s)
12573}
12574
12575// GoString returns the string representation
12576func (s GetExportJobsInput) GoString() string {
12577	return s.String()
12578}
12579
12580// Validate inspects the fields of the type to determine if they are valid.
12581func (s *GetExportJobsInput) Validate() error {
12582	invalidParams := request.ErrInvalidParams{Context: "GetExportJobsInput"}
12583	if s.ApplicationId == nil {
12584		invalidParams.Add(request.NewErrParamRequired("ApplicationId"))
12585	}
12586
12587	if invalidParams.Len() > 0 {
12588		return invalidParams
12589	}
12590	return nil
12591}
12592
12593// SetApplicationId sets the ApplicationId field's value.
12594func (s *GetExportJobsInput) SetApplicationId(v string) *GetExportJobsInput {
12595	s.ApplicationId = &v
12596	return s
12597}
12598
12599// SetPageSize sets the PageSize field's value.
12600func (s *GetExportJobsInput) SetPageSize(v string) *GetExportJobsInput {
12601	s.PageSize = &v
12602	return s
12603}
12604
12605// SetToken sets the Token field's value.
12606func (s *GetExportJobsInput) SetToken(v string) *GetExportJobsInput {
12607	s.Token = &v
12608	return s
12609}
12610
12611type GetExportJobsOutput struct {
12612	_ struct{} `type:"structure" payload:"ExportJobsResponse"`
12613
12614	// Export job list.
12615	//
12616	// ExportJobsResponse is a required field
12617	ExportJobsResponse *ExportJobsResponse `type:"structure" required:"true"`
12618}
12619
12620// String returns the string representation
12621func (s GetExportJobsOutput) String() string {
12622	return awsutil.Prettify(s)
12623}
12624
12625// GoString returns the string representation
12626func (s GetExportJobsOutput) GoString() string {
12627	return s.String()
12628}
12629
12630// SetExportJobsResponse sets the ExportJobsResponse field's value.
12631func (s *GetExportJobsOutput) SetExportJobsResponse(v *ExportJobsResponse) *GetExportJobsOutput {
12632	s.ExportJobsResponse = v
12633	return s
12634}
12635
12636type GetGcmChannelInput struct {
12637	_ struct{} `type:"structure"`
12638
12639	// ApplicationId is a required field
12640	ApplicationId *string `location:"uri" locationName:"application-id" type:"string" required:"true"`
12641}
12642
12643// String returns the string representation
12644func (s GetGcmChannelInput) String() string {
12645	return awsutil.Prettify(s)
12646}
12647
12648// GoString returns the string representation
12649func (s GetGcmChannelInput) GoString() string {
12650	return s.String()
12651}
12652
12653// Validate inspects the fields of the type to determine if they are valid.
12654func (s *GetGcmChannelInput) Validate() error {
12655	invalidParams := request.ErrInvalidParams{Context: "GetGcmChannelInput"}
12656	if s.ApplicationId == nil {
12657		invalidParams.Add(request.NewErrParamRequired("ApplicationId"))
12658	}
12659
12660	if invalidParams.Len() > 0 {
12661		return invalidParams
12662	}
12663	return nil
12664}
12665
12666// SetApplicationId sets the ApplicationId field's value.
12667func (s *GetGcmChannelInput) SetApplicationId(v string) *GetGcmChannelInput {
12668	s.ApplicationId = &v
12669	return s
12670}
12671
12672type GetGcmChannelOutput struct {
12673	_ struct{} `type:"structure" payload:"GCMChannelResponse"`
12674
12675	// Google Cloud Messaging channel definition
12676	//
12677	// GCMChannelResponse is a required field
12678	GCMChannelResponse *GCMChannelResponse `type:"structure" required:"true"`
12679}
12680
12681// String returns the string representation
12682func (s GetGcmChannelOutput) String() string {
12683	return awsutil.Prettify(s)
12684}
12685
12686// GoString returns the string representation
12687func (s GetGcmChannelOutput) GoString() string {
12688	return s.String()
12689}
12690
12691// SetGCMChannelResponse sets the GCMChannelResponse field's value.
12692func (s *GetGcmChannelOutput) SetGCMChannelResponse(v *GCMChannelResponse) *GetGcmChannelOutput {
12693	s.GCMChannelResponse = v
12694	return s
12695}
12696
12697type GetImportJobInput struct {
12698	_ struct{} `type:"structure"`
12699
12700	// ApplicationId is a required field
12701	ApplicationId *string `location:"uri" locationName:"application-id" type:"string" required:"true"`
12702
12703	// JobId is a required field
12704	JobId *string `location:"uri" locationName:"job-id" type:"string" required:"true"`
12705}
12706
12707// String returns the string representation
12708func (s GetImportJobInput) String() string {
12709	return awsutil.Prettify(s)
12710}
12711
12712// GoString returns the string representation
12713func (s GetImportJobInput) GoString() string {
12714	return s.String()
12715}
12716
12717// Validate inspects the fields of the type to determine if they are valid.
12718func (s *GetImportJobInput) Validate() error {
12719	invalidParams := request.ErrInvalidParams{Context: "GetImportJobInput"}
12720	if s.ApplicationId == nil {
12721		invalidParams.Add(request.NewErrParamRequired("ApplicationId"))
12722	}
12723	if s.JobId == nil {
12724		invalidParams.Add(request.NewErrParamRequired("JobId"))
12725	}
12726
12727	if invalidParams.Len() > 0 {
12728		return invalidParams
12729	}
12730	return nil
12731}
12732
12733// SetApplicationId sets the ApplicationId field's value.
12734func (s *GetImportJobInput) SetApplicationId(v string) *GetImportJobInput {
12735	s.ApplicationId = &v
12736	return s
12737}
12738
12739// SetJobId sets the JobId field's value.
12740func (s *GetImportJobInput) SetJobId(v string) *GetImportJobInput {
12741	s.JobId = &v
12742	return s
12743}
12744
12745type GetImportJobOutput struct {
12746	_ struct{} `type:"structure" payload:"ImportJobResponse"`
12747
12748	// ImportJobResponse is a required field
12749	ImportJobResponse *ImportJobResponse `type:"structure" required:"true"`
12750}
12751
12752// String returns the string representation
12753func (s GetImportJobOutput) String() string {
12754	return awsutil.Prettify(s)
12755}
12756
12757// GoString returns the string representation
12758func (s GetImportJobOutput) GoString() string {
12759	return s.String()
12760}
12761
12762// SetImportJobResponse sets the ImportJobResponse field's value.
12763func (s *GetImportJobOutput) SetImportJobResponse(v *ImportJobResponse) *GetImportJobOutput {
12764	s.ImportJobResponse = v
12765	return s
12766}
12767
12768type GetImportJobsInput struct {
12769	_ struct{} `type:"structure"`
12770
12771	// ApplicationId is a required field
12772	ApplicationId *string `location:"uri" locationName:"application-id" type:"string" required:"true"`
12773
12774	PageSize *string `location:"querystring" locationName:"page-size" type:"string"`
12775
12776	Token *string `location:"querystring" locationName:"token" type:"string"`
12777}
12778
12779// String returns the string representation
12780func (s GetImportJobsInput) String() string {
12781	return awsutil.Prettify(s)
12782}
12783
12784// GoString returns the string representation
12785func (s GetImportJobsInput) GoString() string {
12786	return s.String()
12787}
12788
12789// Validate inspects the fields of the type to determine if they are valid.
12790func (s *GetImportJobsInput) Validate() error {
12791	invalidParams := request.ErrInvalidParams{Context: "GetImportJobsInput"}
12792	if s.ApplicationId == nil {
12793		invalidParams.Add(request.NewErrParamRequired("ApplicationId"))
12794	}
12795
12796	if invalidParams.Len() > 0 {
12797		return invalidParams
12798	}
12799	return nil
12800}
12801
12802// SetApplicationId sets the ApplicationId field's value.
12803func (s *GetImportJobsInput) SetApplicationId(v string) *GetImportJobsInput {
12804	s.ApplicationId = &v
12805	return s
12806}
12807
12808// SetPageSize sets the PageSize field's value.
12809func (s *GetImportJobsInput) SetPageSize(v string) *GetImportJobsInput {
12810	s.PageSize = &v
12811	return s
12812}
12813
12814// SetToken sets the Token field's value.
12815func (s *GetImportJobsInput) SetToken(v string) *GetImportJobsInput {
12816	s.Token = &v
12817	return s
12818}
12819
12820type GetImportJobsOutput struct {
12821	_ struct{} `type:"structure" payload:"ImportJobsResponse"`
12822
12823	// Import job list.
12824	//
12825	// ImportJobsResponse is a required field
12826	ImportJobsResponse *ImportJobsResponse `type:"structure" required:"true"`
12827}
12828
12829// String returns the string representation
12830func (s GetImportJobsOutput) String() string {
12831	return awsutil.Prettify(s)
12832}
12833
12834// GoString returns the string representation
12835func (s GetImportJobsOutput) GoString() string {
12836	return s.String()
12837}
12838
12839// SetImportJobsResponse sets the ImportJobsResponse field's value.
12840func (s *GetImportJobsOutput) SetImportJobsResponse(v *ImportJobsResponse) *GetImportJobsOutput {
12841	s.ImportJobsResponse = v
12842	return s
12843}
12844
12845type GetSegmentExportJobsInput struct {
12846	_ struct{} `type:"structure"`
12847
12848	// ApplicationId is a required field
12849	ApplicationId *string `location:"uri" locationName:"application-id" type:"string" required:"true"`
12850
12851	PageSize *string `location:"querystring" locationName:"page-size" type:"string"`
12852
12853	// SegmentId is a required field
12854	SegmentId *string `location:"uri" locationName:"segment-id" type:"string" required:"true"`
12855
12856	Token *string `location:"querystring" locationName:"token" type:"string"`
12857}
12858
12859// String returns the string representation
12860func (s GetSegmentExportJobsInput) String() string {
12861	return awsutil.Prettify(s)
12862}
12863
12864// GoString returns the string representation
12865func (s GetSegmentExportJobsInput) GoString() string {
12866	return s.String()
12867}
12868
12869// Validate inspects the fields of the type to determine if they are valid.
12870func (s *GetSegmentExportJobsInput) Validate() error {
12871	invalidParams := request.ErrInvalidParams{Context: "GetSegmentExportJobsInput"}
12872	if s.ApplicationId == nil {
12873		invalidParams.Add(request.NewErrParamRequired("ApplicationId"))
12874	}
12875	if s.SegmentId == nil {
12876		invalidParams.Add(request.NewErrParamRequired("SegmentId"))
12877	}
12878
12879	if invalidParams.Len() > 0 {
12880		return invalidParams
12881	}
12882	return nil
12883}
12884
12885// SetApplicationId sets the ApplicationId field's value.
12886func (s *GetSegmentExportJobsInput) SetApplicationId(v string) *GetSegmentExportJobsInput {
12887	s.ApplicationId = &v
12888	return s
12889}
12890
12891// SetPageSize sets the PageSize field's value.
12892func (s *GetSegmentExportJobsInput) SetPageSize(v string) *GetSegmentExportJobsInput {
12893	s.PageSize = &v
12894	return s
12895}
12896
12897// SetSegmentId sets the SegmentId field's value.
12898func (s *GetSegmentExportJobsInput) SetSegmentId(v string) *GetSegmentExportJobsInput {
12899	s.SegmentId = &v
12900	return s
12901}
12902
12903// SetToken sets the Token field's value.
12904func (s *GetSegmentExportJobsInput) SetToken(v string) *GetSegmentExportJobsInput {
12905	s.Token = &v
12906	return s
12907}
12908
12909type GetSegmentExportJobsOutput struct {
12910	_ struct{} `type:"structure" payload:"ExportJobsResponse"`
12911
12912	// Export job list.
12913	//
12914	// ExportJobsResponse is a required field
12915	ExportJobsResponse *ExportJobsResponse `type:"structure" required:"true"`
12916}
12917
12918// String returns the string representation
12919func (s GetSegmentExportJobsOutput) String() string {
12920	return awsutil.Prettify(s)
12921}
12922
12923// GoString returns the string representation
12924func (s GetSegmentExportJobsOutput) GoString() string {
12925	return s.String()
12926}
12927
12928// SetExportJobsResponse sets the ExportJobsResponse field's value.
12929func (s *GetSegmentExportJobsOutput) SetExportJobsResponse(v *ExportJobsResponse) *GetSegmentExportJobsOutput {
12930	s.ExportJobsResponse = v
12931	return s
12932}
12933
12934type GetSegmentImportJobsInput struct {
12935	_ struct{} `type:"structure"`
12936
12937	// ApplicationId is a required field
12938	ApplicationId *string `location:"uri" locationName:"application-id" type:"string" required:"true"`
12939
12940	PageSize *string `location:"querystring" locationName:"page-size" type:"string"`
12941
12942	// SegmentId is a required field
12943	SegmentId *string `location:"uri" locationName:"segment-id" type:"string" required:"true"`
12944
12945	Token *string `location:"querystring" locationName:"token" type:"string"`
12946}
12947
12948// String returns the string representation
12949func (s GetSegmentImportJobsInput) String() string {
12950	return awsutil.Prettify(s)
12951}
12952
12953// GoString returns the string representation
12954func (s GetSegmentImportJobsInput) GoString() string {
12955	return s.String()
12956}
12957
12958// Validate inspects the fields of the type to determine if they are valid.
12959func (s *GetSegmentImportJobsInput) Validate() error {
12960	invalidParams := request.ErrInvalidParams{Context: "GetSegmentImportJobsInput"}
12961	if s.ApplicationId == nil {
12962		invalidParams.Add(request.NewErrParamRequired("ApplicationId"))
12963	}
12964	if s.SegmentId == nil {
12965		invalidParams.Add(request.NewErrParamRequired("SegmentId"))
12966	}
12967
12968	if invalidParams.Len() > 0 {
12969		return invalidParams
12970	}
12971	return nil
12972}
12973
12974// SetApplicationId sets the ApplicationId field's value.
12975func (s *GetSegmentImportJobsInput) SetApplicationId(v string) *GetSegmentImportJobsInput {
12976	s.ApplicationId = &v
12977	return s
12978}
12979
12980// SetPageSize sets the PageSize field's value.
12981func (s *GetSegmentImportJobsInput) SetPageSize(v string) *GetSegmentImportJobsInput {
12982	s.PageSize = &v
12983	return s
12984}
12985
12986// SetSegmentId sets the SegmentId field's value.
12987func (s *GetSegmentImportJobsInput) SetSegmentId(v string) *GetSegmentImportJobsInput {
12988	s.SegmentId = &v
12989	return s
12990}
12991
12992// SetToken sets the Token field's value.
12993func (s *GetSegmentImportJobsInput) SetToken(v string) *GetSegmentImportJobsInput {
12994	s.Token = &v
12995	return s
12996}
12997
12998type GetSegmentImportJobsOutput struct {
12999	_ struct{} `type:"structure" payload:"ImportJobsResponse"`
13000
13001	// Import job list.
13002	//
13003	// ImportJobsResponse is a required field
13004	ImportJobsResponse *ImportJobsResponse `type:"structure" required:"true"`
13005}
13006
13007// String returns the string representation
13008func (s GetSegmentImportJobsOutput) String() string {
13009	return awsutil.Prettify(s)
13010}
13011
13012// GoString returns the string representation
13013func (s GetSegmentImportJobsOutput) GoString() string {
13014	return s.String()
13015}
13016
13017// SetImportJobsResponse sets the ImportJobsResponse field's value.
13018func (s *GetSegmentImportJobsOutput) SetImportJobsResponse(v *ImportJobsResponse) *GetSegmentImportJobsOutput {
13019	s.ImportJobsResponse = v
13020	return s
13021}
13022
13023type GetSegmentInput struct {
13024	_ struct{} `type:"structure"`
13025
13026	// ApplicationId is a required field
13027	ApplicationId *string `location:"uri" locationName:"application-id" type:"string" required:"true"`
13028
13029	// SegmentId is a required field
13030	SegmentId *string `location:"uri" locationName:"segment-id" type:"string" required:"true"`
13031}
13032
13033// String returns the string representation
13034func (s GetSegmentInput) String() string {
13035	return awsutil.Prettify(s)
13036}
13037
13038// GoString returns the string representation
13039func (s GetSegmentInput) GoString() string {
13040	return s.String()
13041}
13042
13043// Validate inspects the fields of the type to determine if they are valid.
13044func (s *GetSegmentInput) Validate() error {
13045	invalidParams := request.ErrInvalidParams{Context: "GetSegmentInput"}
13046	if s.ApplicationId == nil {
13047		invalidParams.Add(request.NewErrParamRequired("ApplicationId"))
13048	}
13049	if s.SegmentId == nil {
13050		invalidParams.Add(request.NewErrParamRequired("SegmentId"))
13051	}
13052
13053	if invalidParams.Len() > 0 {
13054		return invalidParams
13055	}
13056	return nil
13057}
13058
13059// SetApplicationId sets the ApplicationId field's value.
13060func (s *GetSegmentInput) SetApplicationId(v string) *GetSegmentInput {
13061	s.ApplicationId = &v
13062	return s
13063}
13064
13065// SetSegmentId sets the SegmentId field's value.
13066func (s *GetSegmentInput) SetSegmentId(v string) *GetSegmentInput {
13067	s.SegmentId = &v
13068	return s
13069}
13070
13071type GetSegmentOutput struct {
13072	_ struct{} `type:"structure" payload:"SegmentResponse"`
13073
13074	// Segment definition.
13075	//
13076	// SegmentResponse is a required field
13077	SegmentResponse *SegmentResponse `type:"structure" required:"true"`
13078}
13079
13080// String returns the string representation
13081func (s GetSegmentOutput) String() string {
13082	return awsutil.Prettify(s)
13083}
13084
13085// GoString returns the string representation
13086func (s GetSegmentOutput) GoString() string {
13087	return s.String()
13088}
13089
13090// SetSegmentResponse sets the SegmentResponse field's value.
13091func (s *GetSegmentOutput) SetSegmentResponse(v *SegmentResponse) *GetSegmentOutput {
13092	s.SegmentResponse = v
13093	return s
13094}
13095
13096type GetSegmentVersionInput struct {
13097	_ struct{} `type:"structure"`
13098
13099	// ApplicationId is a required field
13100	ApplicationId *string `location:"uri" locationName:"application-id" type:"string" required:"true"`
13101
13102	// SegmentId is a required field
13103	SegmentId *string `location:"uri" locationName:"segment-id" type:"string" required:"true"`
13104
13105	// Version is a required field
13106	Version *string `location:"uri" locationName:"version" type:"string" required:"true"`
13107}
13108
13109// String returns the string representation
13110func (s GetSegmentVersionInput) String() string {
13111	return awsutil.Prettify(s)
13112}
13113
13114// GoString returns the string representation
13115func (s GetSegmentVersionInput) GoString() string {
13116	return s.String()
13117}
13118
13119// Validate inspects the fields of the type to determine if they are valid.
13120func (s *GetSegmentVersionInput) Validate() error {
13121	invalidParams := request.ErrInvalidParams{Context: "GetSegmentVersionInput"}
13122	if s.ApplicationId == nil {
13123		invalidParams.Add(request.NewErrParamRequired("ApplicationId"))
13124	}
13125	if s.SegmentId == nil {
13126		invalidParams.Add(request.NewErrParamRequired("SegmentId"))
13127	}
13128	if s.Version == nil {
13129		invalidParams.Add(request.NewErrParamRequired("Version"))
13130	}
13131
13132	if invalidParams.Len() > 0 {
13133		return invalidParams
13134	}
13135	return nil
13136}
13137
13138// SetApplicationId sets the ApplicationId field's value.
13139func (s *GetSegmentVersionInput) SetApplicationId(v string) *GetSegmentVersionInput {
13140	s.ApplicationId = &v
13141	return s
13142}
13143
13144// SetSegmentId sets the SegmentId field's value.
13145func (s *GetSegmentVersionInput) SetSegmentId(v string) *GetSegmentVersionInput {
13146	s.SegmentId = &v
13147	return s
13148}
13149
13150// SetVersion sets the Version field's value.
13151func (s *GetSegmentVersionInput) SetVersion(v string) *GetSegmentVersionInput {
13152	s.Version = &v
13153	return s
13154}
13155
13156type GetSegmentVersionOutput struct {
13157	_ struct{} `type:"structure" payload:"SegmentResponse"`
13158
13159	// Segment definition.
13160	//
13161	// SegmentResponse is a required field
13162	SegmentResponse *SegmentResponse `type:"structure" required:"true"`
13163}
13164
13165// String returns the string representation
13166func (s GetSegmentVersionOutput) String() string {
13167	return awsutil.Prettify(s)
13168}
13169
13170// GoString returns the string representation
13171func (s GetSegmentVersionOutput) GoString() string {
13172	return s.String()
13173}
13174
13175// SetSegmentResponse sets the SegmentResponse field's value.
13176func (s *GetSegmentVersionOutput) SetSegmentResponse(v *SegmentResponse) *GetSegmentVersionOutput {
13177	s.SegmentResponse = v
13178	return s
13179}
13180
13181type GetSegmentVersionsInput struct {
13182	_ struct{} `type:"structure"`
13183
13184	// ApplicationId is a required field
13185	ApplicationId *string `location:"uri" locationName:"application-id" type:"string" required:"true"`
13186
13187	PageSize *string `location:"querystring" locationName:"page-size" type:"string"`
13188
13189	// SegmentId is a required field
13190	SegmentId *string `location:"uri" locationName:"segment-id" type:"string" required:"true"`
13191
13192	Token *string `location:"querystring" locationName:"token" type:"string"`
13193}
13194
13195// String returns the string representation
13196func (s GetSegmentVersionsInput) String() string {
13197	return awsutil.Prettify(s)
13198}
13199
13200// GoString returns the string representation
13201func (s GetSegmentVersionsInput) GoString() string {
13202	return s.String()
13203}
13204
13205// Validate inspects the fields of the type to determine if they are valid.
13206func (s *GetSegmentVersionsInput) Validate() error {
13207	invalidParams := request.ErrInvalidParams{Context: "GetSegmentVersionsInput"}
13208	if s.ApplicationId == nil {
13209		invalidParams.Add(request.NewErrParamRequired("ApplicationId"))
13210	}
13211	if s.SegmentId == nil {
13212		invalidParams.Add(request.NewErrParamRequired("SegmentId"))
13213	}
13214
13215	if invalidParams.Len() > 0 {
13216		return invalidParams
13217	}
13218	return nil
13219}
13220
13221// SetApplicationId sets the ApplicationId field's value.
13222func (s *GetSegmentVersionsInput) SetApplicationId(v string) *GetSegmentVersionsInput {
13223	s.ApplicationId = &v
13224	return s
13225}
13226
13227// SetPageSize sets the PageSize field's value.
13228func (s *GetSegmentVersionsInput) SetPageSize(v string) *GetSegmentVersionsInput {
13229	s.PageSize = &v
13230	return s
13231}
13232
13233// SetSegmentId sets the SegmentId field's value.
13234func (s *GetSegmentVersionsInput) SetSegmentId(v string) *GetSegmentVersionsInput {
13235	s.SegmentId = &v
13236	return s
13237}
13238
13239// SetToken sets the Token field's value.
13240func (s *GetSegmentVersionsInput) SetToken(v string) *GetSegmentVersionsInput {
13241	s.Token = &v
13242	return s
13243}
13244
13245type GetSegmentVersionsOutput struct {
13246	_ struct{} `type:"structure" payload:"SegmentsResponse"`
13247
13248	// Segments in your account.
13249	//
13250	// SegmentsResponse is a required field
13251	SegmentsResponse *SegmentsResponse `type:"structure" required:"true"`
13252}
13253
13254// String returns the string representation
13255func (s GetSegmentVersionsOutput) String() string {
13256	return awsutil.Prettify(s)
13257}
13258
13259// GoString returns the string representation
13260func (s GetSegmentVersionsOutput) GoString() string {
13261	return s.String()
13262}
13263
13264// SetSegmentsResponse sets the SegmentsResponse field's value.
13265func (s *GetSegmentVersionsOutput) SetSegmentsResponse(v *SegmentsResponse) *GetSegmentVersionsOutput {
13266	s.SegmentsResponse = v
13267	return s
13268}
13269
13270type GetSegmentsInput struct {
13271	_ struct{} `type:"structure"`
13272
13273	// ApplicationId is a required field
13274	ApplicationId *string `location:"uri" locationName:"application-id" type:"string" required:"true"`
13275
13276	PageSize *string `location:"querystring" locationName:"page-size" type:"string"`
13277
13278	Token *string `location:"querystring" locationName:"token" type:"string"`
13279}
13280
13281// String returns the string representation
13282func (s GetSegmentsInput) String() string {
13283	return awsutil.Prettify(s)
13284}
13285
13286// GoString returns the string representation
13287func (s GetSegmentsInput) GoString() string {
13288	return s.String()
13289}
13290
13291// Validate inspects the fields of the type to determine if they are valid.
13292func (s *GetSegmentsInput) Validate() error {
13293	invalidParams := request.ErrInvalidParams{Context: "GetSegmentsInput"}
13294	if s.ApplicationId == nil {
13295		invalidParams.Add(request.NewErrParamRequired("ApplicationId"))
13296	}
13297
13298	if invalidParams.Len() > 0 {
13299		return invalidParams
13300	}
13301	return nil
13302}
13303
13304// SetApplicationId sets the ApplicationId field's value.
13305func (s *GetSegmentsInput) SetApplicationId(v string) *GetSegmentsInput {
13306	s.ApplicationId = &v
13307	return s
13308}
13309
13310// SetPageSize sets the PageSize field's value.
13311func (s *GetSegmentsInput) SetPageSize(v string) *GetSegmentsInput {
13312	s.PageSize = &v
13313	return s
13314}
13315
13316// SetToken sets the Token field's value.
13317func (s *GetSegmentsInput) SetToken(v string) *GetSegmentsInput {
13318	s.Token = &v
13319	return s
13320}
13321
13322type GetSegmentsOutput struct {
13323	_ struct{} `type:"structure" payload:"SegmentsResponse"`
13324
13325	// Segments in your account.
13326	//
13327	// SegmentsResponse is a required field
13328	SegmentsResponse *SegmentsResponse `type:"structure" required:"true"`
13329}
13330
13331// String returns the string representation
13332func (s GetSegmentsOutput) String() string {
13333	return awsutil.Prettify(s)
13334}
13335
13336// GoString returns the string representation
13337func (s GetSegmentsOutput) GoString() string {
13338	return s.String()
13339}
13340
13341// SetSegmentsResponse sets the SegmentsResponse field's value.
13342func (s *GetSegmentsOutput) SetSegmentsResponse(v *SegmentsResponse) *GetSegmentsOutput {
13343	s.SegmentsResponse = v
13344	return s
13345}
13346
13347type GetSmsChannelInput struct {
13348	_ struct{} `type:"structure"`
13349
13350	// ApplicationId is a required field
13351	ApplicationId *string `location:"uri" locationName:"application-id" type:"string" required:"true"`
13352}
13353
13354// String returns the string representation
13355func (s GetSmsChannelInput) String() string {
13356	return awsutil.Prettify(s)
13357}
13358
13359// GoString returns the string representation
13360func (s GetSmsChannelInput) GoString() string {
13361	return s.String()
13362}
13363
13364// Validate inspects the fields of the type to determine if they are valid.
13365func (s *GetSmsChannelInput) Validate() error {
13366	invalidParams := request.ErrInvalidParams{Context: "GetSmsChannelInput"}
13367	if s.ApplicationId == nil {
13368		invalidParams.Add(request.NewErrParamRequired("ApplicationId"))
13369	}
13370
13371	if invalidParams.Len() > 0 {
13372		return invalidParams
13373	}
13374	return nil
13375}
13376
13377// SetApplicationId sets the ApplicationId field's value.
13378func (s *GetSmsChannelInput) SetApplicationId(v string) *GetSmsChannelInput {
13379	s.ApplicationId = &v
13380	return s
13381}
13382
13383type GetSmsChannelOutput struct {
13384	_ struct{} `type:"structure" payload:"SMSChannelResponse"`
13385
13386	// SMS Channel Response.
13387	//
13388	// SMSChannelResponse is a required field
13389	SMSChannelResponse *SMSChannelResponse `type:"structure" required:"true"`
13390}
13391
13392// String returns the string representation
13393func (s GetSmsChannelOutput) String() string {
13394	return awsutil.Prettify(s)
13395}
13396
13397// GoString returns the string representation
13398func (s GetSmsChannelOutput) GoString() string {
13399	return s.String()
13400}
13401
13402// SetSMSChannelResponse sets the SMSChannelResponse field's value.
13403func (s *GetSmsChannelOutput) SetSMSChannelResponse(v *SMSChannelResponse) *GetSmsChannelOutput {
13404	s.SMSChannelResponse = v
13405	return s
13406}
13407
13408type ImportJobRequest struct {
13409	_ struct{} `type:"structure"`
13410
13411	// Sets whether the endpoints create a segment when they are imported.
13412	DefineSegment *bool `type:"boolean"`
13413
13414	// DEPRECATED. Your AWS account ID, which you assigned to the ExternalID key
13415	// in an IAM trust policy. Used by Amazon Pinpoint to assume an IAM role. This
13416	// requirement is removed, and external IDs are not recommended for IAM roles
13417	// assumed by Amazon Pinpoint.
13418	ExternalId *string `type:"string"`
13419
13420	// The format of the files that contain the endpoint definitions.Valid values:
13421	// CSV, JSON
13422	Format *string `type:"string" enum:"Format"`
13423
13424	// Sets whether the endpoints are registered with Amazon Pinpoint when they
13425	// are imported.
13426	RegisterEndpoints *bool `type:"boolean"`
13427
13428	// The Amazon Resource Name (ARN) of an IAM role that grants Amazon Pinpoint
13429	// access to the Amazon S3 location that contains the endpoints to import.
13430	RoleArn *string `type:"string"`
13431
13432	// A URL that points to the location within an Amazon S3 bucket that contains
13433	// the endpoints to import. The location can be a folder or a single file.The
13434	// URL should follow this format: s3://bucket-name/folder-name/file-nameAmazon
13435	// Pinpoint will import endpoints from this location and any subfolders it contains.
13436	S3Url *string `type:"string"`
13437
13438	// The ID of the segment to update if the import job is meant to update an existing
13439	// segment.
13440	SegmentId *string `type:"string"`
13441
13442	// A custom name for the segment created by the import job. Use if DefineSegment
13443	// is true.
13444	SegmentName *string `type:"string"`
13445}
13446
13447// String returns the string representation
13448func (s ImportJobRequest) String() string {
13449	return awsutil.Prettify(s)
13450}
13451
13452// GoString returns the string representation
13453func (s ImportJobRequest) GoString() string {
13454	return s.String()
13455}
13456
13457// SetDefineSegment sets the DefineSegment field's value.
13458func (s *ImportJobRequest) SetDefineSegment(v bool) *ImportJobRequest {
13459	s.DefineSegment = &v
13460	return s
13461}
13462
13463// SetExternalId sets the ExternalId field's value.
13464func (s *ImportJobRequest) SetExternalId(v string) *ImportJobRequest {
13465	s.ExternalId = &v
13466	return s
13467}
13468
13469// SetFormat sets the Format field's value.
13470func (s *ImportJobRequest) SetFormat(v string) *ImportJobRequest {
13471	s.Format = &v
13472	return s
13473}
13474
13475// SetRegisterEndpoints sets the RegisterEndpoints field's value.
13476func (s *ImportJobRequest) SetRegisterEndpoints(v bool) *ImportJobRequest {
13477	s.RegisterEndpoints = &v
13478	return s
13479}
13480
13481// SetRoleArn sets the RoleArn field's value.
13482func (s *ImportJobRequest) SetRoleArn(v string) *ImportJobRequest {
13483	s.RoleArn = &v
13484	return s
13485}
13486
13487// SetS3Url sets the S3Url field's value.
13488func (s *ImportJobRequest) SetS3Url(v string) *ImportJobRequest {
13489	s.S3Url = &v
13490	return s
13491}
13492
13493// SetSegmentId sets the SegmentId field's value.
13494func (s *ImportJobRequest) SetSegmentId(v string) *ImportJobRequest {
13495	s.SegmentId = &v
13496	return s
13497}
13498
13499// SetSegmentName sets the SegmentName field's value.
13500func (s *ImportJobRequest) SetSegmentName(v string) *ImportJobRequest {
13501	s.SegmentName = &v
13502	return s
13503}
13504
13505type ImportJobResource struct {
13506	_ struct{} `type:"structure"`
13507
13508	// Sets whether the endpoints create a segment when they are imported.
13509	DefineSegment *bool `type:"boolean"`
13510
13511	// DEPRECATED. Your AWS account ID, which you assigned to the ExternalID key
13512	// in an IAM trust policy. Used by Amazon Pinpoint to assume an IAM role. This
13513	// requirement is removed, and external IDs are not recommended for IAM roles
13514	// assumed by Amazon Pinpoint.
13515	ExternalId *string `type:"string"`
13516
13517	// The format of the files that contain the endpoint definitions.Valid values:
13518	// CSV, JSON
13519	Format *string `type:"string" enum:"Format"`
13520
13521	// Sets whether the endpoints are registered with Amazon Pinpoint when they
13522	// are imported.
13523	RegisterEndpoints *bool `type:"boolean"`
13524
13525	// The Amazon Resource Name (ARN) of an IAM role that grants Amazon Pinpoint
13526	// access to the Amazon S3 location that contains the endpoints to import.
13527	RoleArn *string `type:"string"`
13528
13529	// A URL that points to the location within an Amazon S3 bucket that contains
13530	// the endpoints to import. The location can be a folder or a single file.The
13531	// URL should follow this format: s3://bucket-name/folder-name/file-nameAmazon
13532	// Pinpoint will import endpoints from this location and any subfolders it contains.
13533	S3Url *string `type:"string"`
13534
13535	// The ID of the segment to update if the import job is meant to update an existing
13536	// segment.
13537	SegmentId *string `type:"string"`
13538
13539	// A custom name for the segment created by the import job. Use if DefineSegment
13540	// is true.
13541	SegmentName *string `type:"string"`
13542}
13543
13544// String returns the string representation
13545func (s ImportJobResource) String() string {
13546	return awsutil.Prettify(s)
13547}
13548
13549// GoString returns the string representation
13550func (s ImportJobResource) GoString() string {
13551	return s.String()
13552}
13553
13554// SetDefineSegment sets the DefineSegment field's value.
13555func (s *ImportJobResource) SetDefineSegment(v bool) *ImportJobResource {
13556	s.DefineSegment = &v
13557	return s
13558}
13559
13560// SetExternalId sets the ExternalId field's value.
13561func (s *ImportJobResource) SetExternalId(v string) *ImportJobResource {
13562	s.ExternalId = &v
13563	return s
13564}
13565
13566// SetFormat sets the Format field's value.
13567func (s *ImportJobResource) SetFormat(v string) *ImportJobResource {
13568	s.Format = &v
13569	return s
13570}
13571
13572// SetRegisterEndpoints sets the RegisterEndpoints field's value.
13573func (s *ImportJobResource) SetRegisterEndpoints(v bool) *ImportJobResource {
13574	s.RegisterEndpoints = &v
13575	return s
13576}
13577
13578// SetRoleArn sets the RoleArn field's value.
13579func (s *ImportJobResource) SetRoleArn(v string) *ImportJobResource {
13580	s.RoleArn = &v
13581	return s
13582}
13583
13584// SetS3Url sets the S3Url field's value.
13585func (s *ImportJobResource) SetS3Url(v string) *ImportJobResource {
13586	s.S3Url = &v
13587	return s
13588}
13589
13590// SetSegmentId sets the SegmentId field's value.
13591func (s *ImportJobResource) SetSegmentId(v string) *ImportJobResource {
13592	s.SegmentId = &v
13593	return s
13594}
13595
13596// SetSegmentName sets the SegmentName field's value.
13597func (s *ImportJobResource) SetSegmentName(v string) *ImportJobResource {
13598	s.SegmentName = &v
13599	return s
13600}
13601
13602type ImportJobResponse struct {
13603	_ struct{} `type:"structure"`
13604
13605	// The unique ID of the application to which the import job applies.
13606	ApplicationId *string `type:"string"`
13607
13608	// The number of pieces that have successfully imported as of the time of the
13609	// request.
13610	CompletedPieces *int64 `type:"integer"`
13611
13612	// The date the import job completed in ISO 8601 format.
13613	CompletionDate *string `type:"string"`
13614
13615	// The date the import job was created in ISO 8601 format.
13616	CreationDate *string `type:"string"`
13617
13618	// The import job settings.
13619	Definition *ImportJobResource `type:"structure"`
13620
13621	// The number of pieces that have failed to import as of the time of the request.
13622	FailedPieces *int64 `type:"integer"`
13623
13624	Failures []*string `type:"list"`
13625
13626	// The unique ID of the import job.
13627	Id *string `type:"string"`
13628
13629	// The status of the import job.Valid values: CREATED, INITIALIZING, PROCESSING,
13630	// COMPLETING, COMPLETED, FAILING, FAILEDThe job status is FAILED if one or
13631	// more pieces failed to import.
13632	JobStatus *string `type:"string" enum:"JobStatus"`
13633
13634	// The number of endpoints that failed to import; for example, because of syntax
13635	// errors.
13636	TotalFailures *int64 `type:"integer"`
13637
13638	// The total number of pieces that must be imported to finish the job. Each
13639	// piece is an approximately equal portion of the endpoints to import.
13640	TotalPieces *int64 `type:"integer"`
13641
13642	// The number of endpoints that were processed by the import job.
13643	TotalProcessed *int64 `type:"integer"`
13644
13645	// The job type. Will be Import.
13646	Type *string `type:"string"`
13647}
13648
13649// String returns the string representation
13650func (s ImportJobResponse) String() string {
13651	return awsutil.Prettify(s)
13652}
13653
13654// GoString returns the string representation
13655func (s ImportJobResponse) GoString() string {
13656	return s.String()
13657}
13658
13659// SetApplicationId sets the ApplicationId field's value.
13660func (s *ImportJobResponse) SetApplicationId(v string) *ImportJobResponse {
13661	s.ApplicationId = &v
13662	return s
13663}
13664
13665// SetCompletedPieces sets the CompletedPieces field's value.
13666func (s *ImportJobResponse) SetCompletedPieces(v int64) *ImportJobResponse {
13667	s.CompletedPieces = &v
13668	return s
13669}
13670
13671// SetCompletionDate sets the CompletionDate field's value.
13672func (s *ImportJobResponse) SetCompletionDate(v string) *ImportJobResponse {
13673	s.CompletionDate = &v
13674	return s
13675}
13676
13677// SetCreationDate sets the CreationDate field's value.
13678func (s *ImportJobResponse) SetCreationDate(v string) *ImportJobResponse {
13679	s.CreationDate = &v
13680	return s
13681}
13682
13683// SetDefinition sets the Definition field's value.
13684func (s *ImportJobResponse) SetDefinition(v *ImportJobResource) *ImportJobResponse {
13685	s.Definition = v
13686	return s
13687}
13688
13689// SetFailedPieces sets the FailedPieces field's value.
13690func (s *ImportJobResponse) SetFailedPieces(v int64) *ImportJobResponse {
13691	s.FailedPieces = &v
13692	return s
13693}
13694
13695// SetFailures sets the Failures field's value.
13696func (s *ImportJobResponse) SetFailures(v []*string) *ImportJobResponse {
13697	s.Failures = v
13698	return s
13699}
13700
13701// SetId sets the Id field's value.
13702func (s *ImportJobResponse) SetId(v string) *ImportJobResponse {
13703	s.Id = &v
13704	return s
13705}
13706
13707// SetJobStatus sets the JobStatus field's value.
13708func (s *ImportJobResponse) SetJobStatus(v string) *ImportJobResponse {
13709	s.JobStatus = &v
13710	return s
13711}
13712
13713// SetTotalFailures sets the TotalFailures field's value.
13714func (s *ImportJobResponse) SetTotalFailures(v int64) *ImportJobResponse {
13715	s.TotalFailures = &v
13716	return s
13717}
13718
13719// SetTotalPieces sets the TotalPieces field's value.
13720func (s *ImportJobResponse) SetTotalPieces(v int64) *ImportJobResponse {
13721	s.TotalPieces = &v
13722	return s
13723}
13724
13725// SetTotalProcessed sets the TotalProcessed field's value.
13726func (s *ImportJobResponse) SetTotalProcessed(v int64) *ImportJobResponse {
13727	s.TotalProcessed = &v
13728	return s
13729}
13730
13731// SetType sets the Type field's value.
13732func (s *ImportJobResponse) SetType(v string) *ImportJobResponse {
13733	s.Type = &v
13734	return s
13735}
13736
13737// Import job list.
13738type ImportJobsResponse struct {
13739	_ struct{} `type:"structure"`
13740
13741	// A list of import jobs for the application.
13742	Item []*ImportJobResponse `type:"list"`
13743
13744	// The string that you use in a subsequent request to get the next page of results
13745	// in a paginated response.
13746	NextToken *string `type:"string"`
13747}
13748
13749// String returns the string representation
13750func (s ImportJobsResponse) String() string {
13751	return awsutil.Prettify(s)
13752}
13753
13754// GoString returns the string representation
13755func (s ImportJobsResponse) GoString() string {
13756	return s.String()
13757}
13758
13759// SetItem sets the Item field's value.
13760func (s *ImportJobsResponse) SetItem(v []*ImportJobResponse) *ImportJobsResponse {
13761	s.Item = v
13762	return s
13763}
13764
13765// SetNextToken sets the NextToken field's value.
13766func (s *ImportJobsResponse) SetNextToken(v string) *ImportJobsResponse {
13767	s.NextToken = &v
13768	return s
13769}
13770
13771type Message struct {
13772	_ struct{} `type:"structure"`
13773
13774	// The action that occurs if the user taps a push notification delivered by
13775	// the campaign:OPEN_APP - Your app launches, or it becomes the foreground app
13776	// if it has been sent to the background. This is the default action.DEEP_LINK
13777	// - Uses deep linking features in iOS and Android to open your app and display
13778	// a designated user interface within the app.URL - The default mobile browser
13779	// on the user's device launches and opens a web page at the URL you specify.
13780	Action *string `type:"string" enum:"Action"`
13781
13782	// The message body. Can include up to 140 characters.
13783	Body *string `type:"string"`
13784
13785	// The URL that points to the icon image for the push notification icon, for
13786	// example, the app icon.
13787	ImageIconUrl *string `type:"string"`
13788
13789	// The URL that points to the small icon image for the push notification icon,
13790	// for example, the app icon.
13791	ImageSmallIconUrl *string `type:"string"`
13792
13793	// The URL that points to an image used in the push notification.
13794	ImageUrl *string `type:"string"`
13795
13796	// The JSON payload used for a silent push.
13797	JsonBody *string `type:"string"`
13798
13799	// The URL that points to the media resource, for example a .mp4 or .gif file.
13800	MediaUrl *string `type:"string"`
13801
13802	// The Raw JSON formatted string to be used as the payload. This value overrides
13803	// the message.
13804	RawContent *string `type:"string"`
13805
13806	// Indicates if the message should display on the users device.Silent pushes
13807	// can be used for Remote Configuration and Phone Home use cases.
13808	SilentPush *bool `type:"boolean"`
13809
13810	// The message title that displays above the message on the user's device.
13811	Title *string `type:"string"`
13812
13813	// The URL to open in the user's mobile browser. Used if the value for Action
13814	// is URL.
13815	Url *string `type:"string"`
13816}
13817
13818// String returns the string representation
13819func (s Message) String() string {
13820	return awsutil.Prettify(s)
13821}
13822
13823// GoString returns the string representation
13824func (s Message) GoString() string {
13825	return s.String()
13826}
13827
13828// SetAction sets the Action field's value.
13829func (s *Message) SetAction(v string) *Message {
13830	s.Action = &v
13831	return s
13832}
13833
13834// SetBody sets the Body field's value.
13835func (s *Message) SetBody(v string) *Message {
13836	s.Body = &v
13837	return s
13838}
13839
13840// SetImageIconUrl sets the ImageIconUrl field's value.
13841func (s *Message) SetImageIconUrl(v string) *Message {
13842	s.ImageIconUrl = &v
13843	return s
13844}
13845
13846// SetImageSmallIconUrl sets the ImageSmallIconUrl field's value.
13847func (s *Message) SetImageSmallIconUrl(v string) *Message {
13848	s.ImageSmallIconUrl = &v
13849	return s
13850}
13851
13852// SetImageUrl sets the ImageUrl field's value.
13853func (s *Message) SetImageUrl(v string) *Message {
13854	s.ImageUrl = &v
13855	return s
13856}
13857
13858// SetJsonBody sets the JsonBody field's value.
13859func (s *Message) SetJsonBody(v string) *Message {
13860	s.JsonBody = &v
13861	return s
13862}
13863
13864// SetMediaUrl sets the MediaUrl field's value.
13865func (s *Message) SetMediaUrl(v string) *Message {
13866	s.MediaUrl = &v
13867	return s
13868}
13869
13870// SetRawContent sets the RawContent field's value.
13871func (s *Message) SetRawContent(v string) *Message {
13872	s.RawContent = &v
13873	return s
13874}
13875
13876// SetSilentPush sets the SilentPush field's value.
13877func (s *Message) SetSilentPush(v bool) *Message {
13878	s.SilentPush = &v
13879	return s
13880}
13881
13882// SetTitle sets the Title field's value.
13883func (s *Message) SetTitle(v string) *Message {
13884	s.Title = &v
13885	return s
13886}
13887
13888// SetUrl sets the Url field's value.
13889func (s *Message) SetUrl(v string) *Message {
13890	s.Url = &v
13891	return s
13892}
13893
13894// Simple message object.
13895type MessageBody struct {
13896	_ struct{} `type:"structure"`
13897
13898	// The error message returned from the API.
13899	Message *string `type:"string"`
13900
13901	// The unique message body ID.
13902	RequestID *string `type:"string"`
13903}
13904
13905// String returns the string representation
13906func (s MessageBody) String() string {
13907	return awsutil.Prettify(s)
13908}
13909
13910// GoString returns the string representation
13911func (s MessageBody) GoString() string {
13912	return s.String()
13913}
13914
13915// SetMessage sets the Message field's value.
13916func (s *MessageBody) SetMessage(v string) *MessageBody {
13917	s.Message = &v
13918	return s
13919}
13920
13921// SetRequestID sets the RequestID field's value.
13922func (s *MessageBody) SetRequestID(v string) *MessageBody {
13923	s.RequestID = &v
13924	return s
13925}
13926
13927// Message configuration for a campaign.
13928type MessageConfiguration struct {
13929	_ struct{} `type:"structure"`
13930
13931	// The message that the campaign delivers to ADM channels. Overrides the default
13932	// message.
13933	ADMMessage *Message `type:"structure"`
13934
13935	// The message that the campaign delivers to APNS channels. Overrides the default
13936	// message.
13937	APNSMessage *Message `type:"structure"`
13938
13939	// The message that the campaign delivers to Baidu channels. Overrides the default
13940	// message.
13941	BaiduMessage *Message `type:"structure"`
13942
13943	// The default message for all channels.
13944	DefaultMessage *Message `type:"structure"`
13945
13946	// The email message configuration.
13947	EmailMessage *CampaignEmailMessage `type:"structure"`
13948
13949	// The message that the campaign delivers to GCM channels. Overrides the default
13950	// message.
13951	GCMMessage *Message `type:"structure"`
13952
13953	// The SMS message configuration.
13954	SMSMessage *CampaignSmsMessage `type:"structure"`
13955}
13956
13957// String returns the string representation
13958func (s MessageConfiguration) String() string {
13959	return awsutil.Prettify(s)
13960}
13961
13962// GoString returns the string representation
13963func (s MessageConfiguration) GoString() string {
13964	return s.String()
13965}
13966
13967// SetADMMessage sets the ADMMessage field's value.
13968func (s *MessageConfiguration) SetADMMessage(v *Message) *MessageConfiguration {
13969	s.ADMMessage = v
13970	return s
13971}
13972
13973// SetAPNSMessage sets the APNSMessage field's value.
13974func (s *MessageConfiguration) SetAPNSMessage(v *Message) *MessageConfiguration {
13975	s.APNSMessage = v
13976	return s
13977}
13978
13979// SetBaiduMessage sets the BaiduMessage field's value.
13980func (s *MessageConfiguration) SetBaiduMessage(v *Message) *MessageConfiguration {
13981	s.BaiduMessage = v
13982	return s
13983}
13984
13985// SetDefaultMessage sets the DefaultMessage field's value.
13986func (s *MessageConfiguration) SetDefaultMessage(v *Message) *MessageConfiguration {
13987	s.DefaultMessage = v
13988	return s
13989}
13990
13991// SetEmailMessage sets the EmailMessage field's value.
13992func (s *MessageConfiguration) SetEmailMessage(v *CampaignEmailMessage) *MessageConfiguration {
13993	s.EmailMessage = v
13994	return s
13995}
13996
13997// SetGCMMessage sets the GCMMessage field's value.
13998func (s *MessageConfiguration) SetGCMMessage(v *Message) *MessageConfiguration {
13999	s.GCMMessage = v
14000	return s
14001}
14002
14003// SetSMSMessage sets the SMSMessage field's value.
14004func (s *MessageConfiguration) SetSMSMessage(v *CampaignSmsMessage) *MessageConfiguration {
14005	s.SMSMessage = v
14006	return s
14007}
14008
14009// Send message request.
14010type MessageRequest struct {
14011	_ struct{} `type:"structure"`
14012
14013	// A map of destination addresses, with the address as the key(Email address,
14014	// phone number or push token) and the Address Configuration as the value.
14015	Addresses map[string]*AddressConfiguration `type:"map"`
14016
14017	// A map of custom attributes to attributes to be attached to the message. This
14018	// payload is added to the push notification's 'data.pinpoint' object or added
14019	// to the email/sms delivery receipt event attributes.
14020	Context map[string]*string `type:"map"`
14021
14022	// A map of destination addresses, with the address as the key(Email address,
14023	// phone number or push token) and the Address Configuration as the value.
14024	Endpoints map[string]*EndpointSendConfiguration `type:"map"`
14025
14026	// Message configuration.
14027	MessageConfiguration *DirectMessageConfiguration `type:"structure"`
14028}
14029
14030// String returns the string representation
14031func (s MessageRequest) String() string {
14032	return awsutil.Prettify(s)
14033}
14034
14035// GoString returns the string representation
14036func (s MessageRequest) GoString() string {
14037	return s.String()
14038}
14039
14040// SetAddresses sets the Addresses field's value.
14041func (s *MessageRequest) SetAddresses(v map[string]*AddressConfiguration) *MessageRequest {
14042	s.Addresses = v
14043	return s
14044}
14045
14046// SetContext sets the Context field's value.
14047func (s *MessageRequest) SetContext(v map[string]*string) *MessageRequest {
14048	s.Context = v
14049	return s
14050}
14051
14052// SetEndpoints sets the Endpoints field's value.
14053func (s *MessageRequest) SetEndpoints(v map[string]*EndpointSendConfiguration) *MessageRequest {
14054	s.Endpoints = v
14055	return s
14056}
14057
14058// SetMessageConfiguration sets the MessageConfiguration field's value.
14059func (s *MessageRequest) SetMessageConfiguration(v *DirectMessageConfiguration) *MessageRequest {
14060	s.MessageConfiguration = v
14061	return s
14062}
14063
14064// Send message response.
14065type MessageResponse struct {
14066	_ struct{} `type:"structure"`
14067
14068	// Application id of the message.
14069	ApplicationId *string `type:"string"`
14070
14071	// A map containing a multi part response for each address, with the endpointId
14072	// as the key and the result as the value.
14073	EndpointResult map[string]*EndpointMessageResult `type:"map"`
14074
14075	// Original request Id for which this message was delivered.
14076	RequestId *string `type:"string"`
14077
14078	// A map containing a multi part response for each address, with the address
14079	// as the key(Email address, phone number or push token) and the result as the
14080	// value.
14081	Result map[string]*MessageResult `type:"map"`
14082}
14083
14084// String returns the string representation
14085func (s MessageResponse) String() string {
14086	return awsutil.Prettify(s)
14087}
14088
14089// GoString returns the string representation
14090func (s MessageResponse) GoString() string {
14091	return s.String()
14092}
14093
14094// SetApplicationId sets the ApplicationId field's value.
14095func (s *MessageResponse) SetApplicationId(v string) *MessageResponse {
14096	s.ApplicationId = &v
14097	return s
14098}
14099
14100// SetEndpointResult sets the EndpointResult field's value.
14101func (s *MessageResponse) SetEndpointResult(v map[string]*EndpointMessageResult) *MessageResponse {
14102	s.EndpointResult = v
14103	return s
14104}
14105
14106// SetRequestId sets the RequestId field's value.
14107func (s *MessageResponse) SetRequestId(v string) *MessageResponse {
14108	s.RequestId = &v
14109	return s
14110}
14111
14112// SetResult sets the Result field's value.
14113func (s *MessageResponse) SetResult(v map[string]*MessageResult) *MessageResponse {
14114	s.Result = v
14115	return s
14116}
14117
14118// The result from sending a message to an address.
14119type MessageResult struct {
14120	_ struct{} `type:"structure"`
14121
14122	// Delivery status of message.
14123	DeliveryStatus *string `type:"string" enum:"DeliveryStatus"`
14124
14125	// Downstream service status code.
14126	StatusCode *int64 `type:"integer"`
14127
14128	// Status message for message delivery.
14129	StatusMessage *string `type:"string"`
14130
14131	// If token was updated as part of delivery. (This is GCM Specific)
14132	UpdatedToken *string `type:"string"`
14133}
14134
14135// String returns the string representation
14136func (s MessageResult) String() string {
14137	return awsutil.Prettify(s)
14138}
14139
14140// GoString returns the string representation
14141func (s MessageResult) GoString() string {
14142	return s.String()
14143}
14144
14145// SetDeliveryStatus sets the DeliveryStatus field's value.
14146func (s *MessageResult) SetDeliveryStatus(v string) *MessageResult {
14147	s.DeliveryStatus = &v
14148	return s
14149}
14150
14151// SetStatusCode sets the StatusCode field's value.
14152func (s *MessageResult) SetStatusCode(v int64) *MessageResult {
14153	s.StatusCode = &v
14154	return s
14155}
14156
14157// SetStatusMessage sets the StatusMessage field's value.
14158func (s *MessageResult) SetStatusMessage(v string) *MessageResult {
14159	s.StatusMessage = &v
14160	return s
14161}
14162
14163// SetUpdatedToken sets the UpdatedToken field's value.
14164func (s *MessageResult) SetUpdatedToken(v string) *MessageResult {
14165	s.UpdatedToken = &v
14166	return s
14167}
14168
14169type PutEventStreamInput struct {
14170	_ struct{} `type:"structure" payload:"WriteEventStream"`
14171
14172	// Application Id.
14173	//
14174	// ApplicationId is a required field
14175	ApplicationId *string `location:"uri" locationName:"application-id" type:"string" required:"true"`
14176
14177	// Write event stream wrapper.
14178	//
14179	// WriteEventStream is a required field
14180	WriteEventStream *WriteEventStream `type:"structure" required:"true"`
14181}
14182
14183// String returns the string representation
14184func (s PutEventStreamInput) String() string {
14185	return awsutil.Prettify(s)
14186}
14187
14188// GoString returns the string representation
14189func (s PutEventStreamInput) GoString() string {
14190	return s.String()
14191}
14192
14193// Validate inspects the fields of the type to determine if they are valid.
14194func (s *PutEventStreamInput) Validate() error {
14195	invalidParams := request.ErrInvalidParams{Context: "PutEventStreamInput"}
14196	if s.ApplicationId == nil {
14197		invalidParams.Add(request.NewErrParamRequired("ApplicationId"))
14198	}
14199	if s.WriteEventStream == nil {
14200		invalidParams.Add(request.NewErrParamRequired("WriteEventStream"))
14201	}
14202
14203	if invalidParams.Len() > 0 {
14204		return invalidParams
14205	}
14206	return nil
14207}
14208
14209// SetApplicationId sets the ApplicationId field's value.
14210func (s *PutEventStreamInput) SetApplicationId(v string) *PutEventStreamInput {
14211	s.ApplicationId = &v
14212	return s
14213}
14214
14215// SetWriteEventStream sets the WriteEventStream field's value.
14216func (s *PutEventStreamInput) SetWriteEventStream(v *WriteEventStream) *PutEventStreamInput {
14217	s.WriteEventStream = v
14218	return s
14219}
14220
14221type PutEventStreamOutput struct {
14222	_ struct{} `type:"structure" payload:"EventStream"`
14223
14224	// Model for an event publishing subscription export.
14225	//
14226	// EventStream is a required field
14227	EventStream *EventStream `type:"structure" required:"true"`
14228}
14229
14230// String returns the string representation
14231func (s PutEventStreamOutput) String() string {
14232	return awsutil.Prettify(s)
14233}
14234
14235// GoString returns the string representation
14236func (s PutEventStreamOutput) GoString() string {
14237	return s.String()
14238}
14239
14240// SetEventStream sets the EventStream field's value.
14241func (s *PutEventStreamOutput) SetEventStream(v *EventStream) *PutEventStreamOutput {
14242	s.EventStream = v
14243	return s
14244}
14245
14246// Quiet Time
14247type QuietTime struct {
14248	_ struct{} `type:"structure"`
14249
14250	// The default end time for quiet time in ISO 8601 format.
14251	End *string `type:"string"`
14252
14253	// The default start time for quiet time in ISO 8601 format.
14254	Start *string `type:"string"`
14255}
14256
14257// String returns the string representation
14258func (s QuietTime) String() string {
14259	return awsutil.Prettify(s)
14260}
14261
14262// GoString returns the string representation
14263func (s QuietTime) GoString() string {
14264	return s.String()
14265}
14266
14267// SetEnd sets the End field's value.
14268func (s *QuietTime) SetEnd(v string) *QuietTime {
14269	s.End = &v
14270	return s
14271}
14272
14273// SetStart sets the Start field's value.
14274func (s *QuietTime) SetStart(v string) *QuietTime {
14275	s.Start = &v
14276	return s
14277}
14278
14279// Define how a segment based on recency of use.
14280type RecencyDimension struct {
14281	_ struct{} `type:"structure"`
14282
14283	// The length of time during which users have been active or inactive with your
14284	// app.Valid values: HR_24, DAY_7, DAY_14, DAY_30
14285	Duration *string `type:"string" enum:"Duration"`
14286
14287	// The recency dimension type:ACTIVE - Users who have used your app within the
14288	// specified duration are included in the segment.INACTIVE - Users who have
14289	// not used your app within the specified duration are included in the segment.
14290	RecencyType *string `type:"string" enum:"RecencyType"`
14291}
14292
14293// String returns the string representation
14294func (s RecencyDimension) String() string {
14295	return awsutil.Prettify(s)
14296}
14297
14298// GoString returns the string representation
14299func (s RecencyDimension) GoString() string {
14300	return s.String()
14301}
14302
14303// SetDuration sets the Duration field's value.
14304func (s *RecencyDimension) SetDuration(v string) *RecencyDimension {
14305	s.Duration = &v
14306	return s
14307}
14308
14309// SetRecencyType sets the RecencyType field's value.
14310func (s *RecencyDimension) SetRecencyType(v string) *RecencyDimension {
14311	s.RecencyType = &v
14312	return s
14313}
14314
14315// SMS Channel Request
14316type SMSChannelRequest struct {
14317	_ struct{} `type:"structure"`
14318
14319	// If the channel is enabled for sending messages.
14320	Enabled *bool `type:"boolean"`
14321
14322	// Sender identifier of your messages.
14323	SenderId *string `type:"string"`
14324
14325	// ShortCode registered with phone provider.
14326	ShortCode *string `type:"string"`
14327}
14328
14329// String returns the string representation
14330func (s SMSChannelRequest) String() string {
14331	return awsutil.Prettify(s)
14332}
14333
14334// GoString returns the string representation
14335func (s SMSChannelRequest) GoString() string {
14336	return s.String()
14337}
14338
14339// SetEnabled sets the Enabled field's value.
14340func (s *SMSChannelRequest) SetEnabled(v bool) *SMSChannelRequest {
14341	s.Enabled = &v
14342	return s
14343}
14344
14345// SetSenderId sets the SenderId field's value.
14346func (s *SMSChannelRequest) SetSenderId(v string) *SMSChannelRequest {
14347	s.SenderId = &v
14348	return s
14349}
14350
14351// SetShortCode sets the ShortCode field's value.
14352func (s *SMSChannelRequest) SetShortCode(v string) *SMSChannelRequest {
14353	s.ShortCode = &v
14354	return s
14355}
14356
14357// SMS Channel Response.
14358type SMSChannelResponse struct {
14359	_ struct{} `type:"structure"`
14360
14361	// The unique ID of the application to which the SMS channel belongs.
14362	ApplicationId *string `type:"string"`
14363
14364	// The date that the settings were last updated in ISO 8601 format.
14365	CreationDate *string `type:"string"`
14366
14367	// If the channel is enabled for sending messages.
14368	Enabled *bool `type:"boolean"`
14369
14370	// If the channel is registered with a credential for authentication.
14371	HasCredential *bool `type:"boolean"`
14372
14373	// Channel ID. Not used, only for backwards compatibility.
14374	Id *string `type:"string"`
14375
14376	// Is this channel archived
14377	IsArchived *bool `type:"boolean"`
14378
14379	// Who last updated this entry
14380	LastModifiedBy *string `type:"string"`
14381
14382	// Last date this was updated
14383	LastModifiedDate *string `type:"string"`
14384
14385	// Platform type. Will be "SMS"
14386	Platform *string `type:"string"`
14387
14388	// Sender identifier of your messages.
14389	SenderId *string `type:"string"`
14390
14391	// The short code registered with the phone provider.
14392	ShortCode *string `type:"string"`
14393
14394	// Version of channel
14395	Version *int64 `type:"integer"`
14396}
14397
14398// String returns the string representation
14399func (s SMSChannelResponse) String() string {
14400	return awsutil.Prettify(s)
14401}
14402
14403// GoString returns the string representation
14404func (s SMSChannelResponse) GoString() string {
14405	return s.String()
14406}
14407
14408// SetApplicationId sets the ApplicationId field's value.
14409func (s *SMSChannelResponse) SetApplicationId(v string) *SMSChannelResponse {
14410	s.ApplicationId = &v
14411	return s
14412}
14413
14414// SetCreationDate sets the CreationDate field's value.
14415func (s *SMSChannelResponse) SetCreationDate(v string) *SMSChannelResponse {
14416	s.CreationDate = &v
14417	return s
14418}
14419
14420// SetEnabled sets the Enabled field's value.
14421func (s *SMSChannelResponse) SetEnabled(v bool) *SMSChannelResponse {
14422	s.Enabled = &v
14423	return s
14424}
14425
14426// SetHasCredential sets the HasCredential field's value.
14427func (s *SMSChannelResponse) SetHasCredential(v bool) *SMSChannelResponse {
14428	s.HasCredential = &v
14429	return s
14430}
14431
14432// SetId sets the Id field's value.
14433func (s *SMSChannelResponse) SetId(v string) *SMSChannelResponse {
14434	s.Id = &v
14435	return s
14436}
14437
14438// SetIsArchived sets the IsArchived field's value.
14439func (s *SMSChannelResponse) SetIsArchived(v bool) *SMSChannelResponse {
14440	s.IsArchived = &v
14441	return s
14442}
14443
14444// SetLastModifiedBy sets the LastModifiedBy field's value.
14445func (s *SMSChannelResponse) SetLastModifiedBy(v string) *SMSChannelResponse {
14446	s.LastModifiedBy = &v
14447	return s
14448}
14449
14450// SetLastModifiedDate sets the LastModifiedDate field's value.
14451func (s *SMSChannelResponse) SetLastModifiedDate(v string) *SMSChannelResponse {
14452	s.LastModifiedDate = &v
14453	return s
14454}
14455
14456// SetPlatform sets the Platform field's value.
14457func (s *SMSChannelResponse) SetPlatform(v string) *SMSChannelResponse {
14458	s.Platform = &v
14459	return s
14460}
14461
14462// SetSenderId sets the SenderId field's value.
14463func (s *SMSChannelResponse) SetSenderId(v string) *SMSChannelResponse {
14464	s.SenderId = &v
14465	return s
14466}
14467
14468// SetShortCode sets the ShortCode field's value.
14469func (s *SMSChannelResponse) SetShortCode(v string) *SMSChannelResponse {
14470	s.ShortCode = &v
14471	return s
14472}
14473
14474// SetVersion sets the Version field's value.
14475func (s *SMSChannelResponse) SetVersion(v int64) *SMSChannelResponse {
14476	s.Version = &v
14477	return s
14478}
14479
14480// SMS Message.
14481type SMSMessage struct {
14482	_ struct{} `type:"structure"`
14483
14484	// The message body of the notification, the email body or the text message.
14485	Body *string `type:"string"`
14486
14487	// Is this a transaction priority message or lower priority.
14488	MessageType *string `type:"string" enum:"MessageType"`
14489
14490	// The phone number that the SMS message originates from. Specify one of the
14491	// dedicated long codes or short codes that you requested from AWS Support and
14492	// that is assigned to your account. If this attribute is not specified, Amazon
14493	// Pinpoint randomly assigns a long code.
14494	OriginationNumber *string `type:"string"`
14495
14496	// The sender ID that is shown as the message sender on the recipient's device.
14497	// Support for sender IDs varies by country or region.
14498	SenderId *string `type:"string"`
14499
14500	Substitutions map[string][]*string `type:"map"`
14501}
14502
14503// String returns the string representation
14504func (s SMSMessage) String() string {
14505	return awsutil.Prettify(s)
14506}
14507
14508// GoString returns the string representation
14509func (s SMSMessage) GoString() string {
14510	return s.String()
14511}
14512
14513// SetBody sets the Body field's value.
14514func (s *SMSMessage) SetBody(v string) *SMSMessage {
14515	s.Body = &v
14516	return s
14517}
14518
14519// SetMessageType sets the MessageType field's value.
14520func (s *SMSMessage) SetMessageType(v string) *SMSMessage {
14521	s.MessageType = &v
14522	return s
14523}
14524
14525// SetOriginationNumber sets the OriginationNumber field's value.
14526func (s *SMSMessage) SetOriginationNumber(v string) *SMSMessage {
14527	s.OriginationNumber = &v
14528	return s
14529}
14530
14531// SetSenderId sets the SenderId field's value.
14532func (s *SMSMessage) SetSenderId(v string) *SMSMessage {
14533	s.SenderId = &v
14534	return s
14535}
14536
14537// SetSubstitutions sets the Substitutions field's value.
14538func (s *SMSMessage) SetSubstitutions(v map[string][]*string) *SMSMessage {
14539	s.Substitutions = v
14540	return s
14541}
14542
14543// Shcedule that defines when a campaign is run.
14544type Schedule struct {
14545	_ struct{} `type:"structure"`
14546
14547	// The scheduled time that the campaign ends in ISO 8601 format.
14548	EndTime *string `type:"string"`
14549
14550	// How often the campaign delivers messages.Valid values: ONCE, HOURLY, DAILY,
14551	// WEEKLY, MONTHLY
14552	Frequency *string `type:"string" enum:"Frequency"`
14553
14554	// Indicates whether the campaign schedule takes effect according to each user's
14555	// local time.
14556	IsLocalTime *bool `type:"boolean"`
14557
14558	// The time during which the campaign sends no messages.
14559	QuietTime *QuietTime `type:"structure"`
14560
14561	// The scheduled time that the campaign begins in ISO 8601 format.
14562	StartTime *string `type:"string"`
14563
14564	// The starting UTC offset for the schedule if the value for isLocalTime is
14565	// trueValid values: UTCUTC+01UTC+02UTC+03UTC+03:30UTC+04UTC+04:30UTC+05UTC+05:30UTC+05:45UTC+06UTC+06:30UTC+07UTC+08UTC+09UTC+09:30UTC+10UTC+10:30UTC+11UTC+12UTC+13UTC-02UTC-03UTC-04UTC-05UTC-06UTC-07UTC-08UTC-09UTC-10UTC-11
14566	Timezone *string `type:"string"`
14567}
14568
14569// String returns the string representation
14570func (s Schedule) String() string {
14571	return awsutil.Prettify(s)
14572}
14573
14574// GoString returns the string representation
14575func (s Schedule) GoString() string {
14576	return s.String()
14577}
14578
14579// SetEndTime sets the EndTime field's value.
14580func (s *Schedule) SetEndTime(v string) *Schedule {
14581	s.EndTime = &v
14582	return s
14583}
14584
14585// SetFrequency sets the Frequency field's value.
14586func (s *Schedule) SetFrequency(v string) *Schedule {
14587	s.Frequency = &v
14588	return s
14589}
14590
14591// SetIsLocalTime sets the IsLocalTime field's value.
14592func (s *Schedule) SetIsLocalTime(v bool) *Schedule {
14593	s.IsLocalTime = &v
14594	return s
14595}
14596
14597// SetQuietTime sets the QuietTime field's value.
14598func (s *Schedule) SetQuietTime(v *QuietTime) *Schedule {
14599	s.QuietTime = v
14600	return s
14601}
14602
14603// SetStartTime sets the StartTime field's value.
14604func (s *Schedule) SetStartTime(v string) *Schedule {
14605	s.StartTime = &v
14606	return s
14607}
14608
14609// SetTimezone sets the Timezone field's value.
14610func (s *Schedule) SetTimezone(v string) *Schedule {
14611	s.Timezone = &v
14612	return s
14613}
14614
14615// Segment behavior dimensions
14616type SegmentBehaviors struct {
14617	_ struct{} `type:"structure"`
14618
14619	// The recency of use.
14620	Recency *RecencyDimension `type:"structure"`
14621}
14622
14623// String returns the string representation
14624func (s SegmentBehaviors) String() string {
14625	return awsutil.Prettify(s)
14626}
14627
14628// GoString returns the string representation
14629func (s SegmentBehaviors) GoString() string {
14630	return s.String()
14631}
14632
14633// SetRecency sets the Recency field's value.
14634func (s *SegmentBehaviors) SetRecency(v *RecencyDimension) *SegmentBehaviors {
14635	s.Recency = v
14636	return s
14637}
14638
14639// Segment demographic dimensions
14640type SegmentDemographics struct {
14641	_ struct{} `type:"structure"`
14642
14643	// The app version criteria for the segment.
14644	AppVersion *SetDimension `type:"structure"`
14645
14646	// The channel criteria for the segment.
14647	Channel *SetDimension `type:"structure"`
14648
14649	// The device type criteria for the segment.
14650	DeviceType *SetDimension `type:"structure"`
14651
14652	// The device make criteria for the segment.
14653	Make *SetDimension `type:"structure"`
14654
14655	// The device model criteria for the segment.
14656	Model *SetDimension `type:"structure"`
14657
14658	// The device platform criteria for the segment.
14659	Platform *SetDimension `type:"structure"`
14660}
14661
14662// String returns the string representation
14663func (s SegmentDemographics) String() string {
14664	return awsutil.Prettify(s)
14665}
14666
14667// GoString returns the string representation
14668func (s SegmentDemographics) GoString() string {
14669	return s.String()
14670}
14671
14672// SetAppVersion sets the AppVersion field's value.
14673func (s *SegmentDemographics) SetAppVersion(v *SetDimension) *SegmentDemographics {
14674	s.AppVersion = v
14675	return s
14676}
14677
14678// SetChannel sets the Channel field's value.
14679func (s *SegmentDemographics) SetChannel(v *SetDimension) *SegmentDemographics {
14680	s.Channel = v
14681	return s
14682}
14683
14684// SetDeviceType sets the DeviceType field's value.
14685func (s *SegmentDemographics) SetDeviceType(v *SetDimension) *SegmentDemographics {
14686	s.DeviceType = v
14687	return s
14688}
14689
14690// SetMake sets the Make field's value.
14691func (s *SegmentDemographics) SetMake(v *SetDimension) *SegmentDemographics {
14692	s.Make = v
14693	return s
14694}
14695
14696// SetModel sets the Model field's value.
14697func (s *SegmentDemographics) SetModel(v *SetDimension) *SegmentDemographics {
14698	s.Model = v
14699	return s
14700}
14701
14702// SetPlatform sets the Platform field's value.
14703func (s *SegmentDemographics) SetPlatform(v *SetDimension) *SegmentDemographics {
14704	s.Platform = v
14705	return s
14706}
14707
14708// Segment dimensions
14709type SegmentDimensions struct {
14710	_ struct{} `type:"structure"`
14711
14712	// Custom segment attributes.
14713	Attributes map[string]*AttributeDimension `type:"map"`
14714
14715	// The segment behaviors attributes.
14716	Behavior *SegmentBehaviors `type:"structure"`
14717
14718	// The segment demographics attributes.
14719	Demographic *SegmentDemographics `type:"structure"`
14720
14721	// The segment location attributes.
14722	Location *SegmentLocation `type:"structure"`
14723
14724	// Custom segment user attributes.
14725	UserAttributes map[string]*AttributeDimension `type:"map"`
14726}
14727
14728// String returns the string representation
14729func (s SegmentDimensions) String() string {
14730	return awsutil.Prettify(s)
14731}
14732
14733// GoString returns the string representation
14734func (s SegmentDimensions) GoString() string {
14735	return s.String()
14736}
14737
14738// SetAttributes sets the Attributes field's value.
14739func (s *SegmentDimensions) SetAttributes(v map[string]*AttributeDimension) *SegmentDimensions {
14740	s.Attributes = v
14741	return s
14742}
14743
14744// SetBehavior sets the Behavior field's value.
14745func (s *SegmentDimensions) SetBehavior(v *SegmentBehaviors) *SegmentDimensions {
14746	s.Behavior = v
14747	return s
14748}
14749
14750// SetDemographic sets the Demographic field's value.
14751func (s *SegmentDimensions) SetDemographic(v *SegmentDemographics) *SegmentDimensions {
14752	s.Demographic = v
14753	return s
14754}
14755
14756// SetLocation sets the Location field's value.
14757func (s *SegmentDimensions) SetLocation(v *SegmentLocation) *SegmentDimensions {
14758	s.Location = v
14759	return s
14760}
14761
14762// SetUserAttributes sets the UserAttributes field's value.
14763func (s *SegmentDimensions) SetUserAttributes(v map[string]*AttributeDimension) *SegmentDimensions {
14764	s.UserAttributes = v
14765	return s
14766}
14767
14768// Segment import definition.
14769type SegmentImportResource struct {
14770	_ struct{} `type:"structure"`
14771
14772	// Channel type counts
14773	ChannelCounts map[string]*int64 `type:"map"`
14774
14775	// DEPRECATED. Your AWS account ID, which you assigned to the ExternalID key
14776	// in an IAM trust policy. Used by Amazon Pinpoint to assume an IAM role. This
14777	// requirement is removed, and external IDs are not recommended for IAM roles
14778	// assumed by Amazon Pinpoint.
14779	ExternalId *string `type:"string"`
14780
14781	// The format of the endpoint files that were imported to create this segment.Valid
14782	// values: CSV, JSON
14783	Format *string `type:"string" enum:"Format"`
14784
14785	// The Amazon Resource Name (ARN) of an IAM role that grants Amazon Pinpoint
14786	// access to the endpoints in Amazon S3.
14787	RoleArn *string `type:"string"`
14788
14789	// A URL that points to the Amazon S3 location from which the endpoints for
14790	// this segment were imported.
14791	S3Url *string `type:"string"`
14792
14793	// The number of endpoints that were successfully imported to create this segment.
14794	Size *int64 `type:"integer"`
14795}
14796
14797// String returns the string representation
14798func (s SegmentImportResource) String() string {
14799	return awsutil.Prettify(s)
14800}
14801
14802// GoString returns the string representation
14803func (s SegmentImportResource) GoString() string {
14804	return s.String()
14805}
14806
14807// SetChannelCounts sets the ChannelCounts field's value.
14808func (s *SegmentImportResource) SetChannelCounts(v map[string]*int64) *SegmentImportResource {
14809	s.ChannelCounts = v
14810	return s
14811}
14812
14813// SetExternalId sets the ExternalId field's value.
14814func (s *SegmentImportResource) SetExternalId(v string) *SegmentImportResource {
14815	s.ExternalId = &v
14816	return s
14817}
14818
14819// SetFormat sets the Format field's value.
14820func (s *SegmentImportResource) SetFormat(v string) *SegmentImportResource {
14821	s.Format = &v
14822	return s
14823}
14824
14825// SetRoleArn sets the RoleArn field's value.
14826func (s *SegmentImportResource) SetRoleArn(v string) *SegmentImportResource {
14827	s.RoleArn = &v
14828	return s
14829}
14830
14831// SetS3Url sets the S3Url field's value.
14832func (s *SegmentImportResource) SetS3Url(v string) *SegmentImportResource {
14833	s.S3Url = &v
14834	return s
14835}
14836
14837// SetSize sets the Size field's value.
14838func (s *SegmentImportResource) SetSize(v int64) *SegmentImportResource {
14839	s.Size = &v
14840	return s
14841}
14842
14843// Segment location dimensions
14844type SegmentLocation struct {
14845	_ struct{} `type:"structure"`
14846
14847	// The country filter according to ISO 3166-1 Alpha-2 codes.
14848	Country *SetDimension `type:"structure"`
14849}
14850
14851// String returns the string representation
14852func (s SegmentLocation) String() string {
14853	return awsutil.Prettify(s)
14854}
14855
14856// GoString returns the string representation
14857func (s SegmentLocation) GoString() string {
14858	return s.String()
14859}
14860
14861// SetCountry sets the Country field's value.
14862func (s *SegmentLocation) SetCountry(v *SetDimension) *SegmentLocation {
14863	s.Country = v
14864	return s
14865}
14866
14867// Segment definition.
14868type SegmentResponse struct {
14869	_ struct{} `type:"structure"`
14870
14871	// The ID of the application to which the segment applies.
14872	ApplicationId *string `type:"string"`
14873
14874	// The date the segment was created in ISO 8601 format.
14875	CreationDate *string `type:"string"`
14876
14877	// The segment dimensions attributes.
14878	Dimensions *SegmentDimensions `type:"structure"`
14879
14880	// The unique segment ID.
14881	Id *string `type:"string"`
14882
14883	// The import job settings.
14884	ImportDefinition *SegmentImportResource `type:"structure"`
14885
14886	// The date the segment was last updated in ISO 8601 format.
14887	LastModifiedDate *string `type:"string"`
14888
14889	// The name of segment
14890	Name *string `type:"string"`
14891
14892	// The segment type:DIMENSIONAL - A dynamic segment built from selection criteria
14893	// based on endpoint data reported by your app. You create this type of segment
14894	// by using the segment builder in the Amazon Pinpoint console or by making
14895	// a POST request to the segments resource.IMPORT - A static segment built from
14896	// an imported set of endpoint definitions. You create this type of segment
14897	// by importing a segment in the Amazon Pinpoint console or by making a POST
14898	// request to the jobs/import resource.
14899	SegmentType *string `type:"string" enum:"SegmentType"`
14900
14901	// The segment version number.
14902	Version *int64 `type:"integer"`
14903}
14904
14905// String returns the string representation
14906func (s SegmentResponse) String() string {
14907	return awsutil.Prettify(s)
14908}
14909
14910// GoString returns the string representation
14911func (s SegmentResponse) GoString() string {
14912	return s.String()
14913}
14914
14915// SetApplicationId sets the ApplicationId field's value.
14916func (s *SegmentResponse) SetApplicationId(v string) *SegmentResponse {
14917	s.ApplicationId = &v
14918	return s
14919}
14920
14921// SetCreationDate sets the CreationDate field's value.
14922func (s *SegmentResponse) SetCreationDate(v string) *SegmentResponse {
14923	s.CreationDate = &v
14924	return s
14925}
14926
14927// SetDimensions sets the Dimensions field's value.
14928func (s *SegmentResponse) SetDimensions(v *SegmentDimensions) *SegmentResponse {
14929	s.Dimensions = v
14930	return s
14931}
14932
14933// SetId sets the Id field's value.
14934func (s *SegmentResponse) SetId(v string) *SegmentResponse {
14935	s.Id = &v
14936	return s
14937}
14938
14939// SetImportDefinition sets the ImportDefinition field's value.
14940func (s *SegmentResponse) SetImportDefinition(v *SegmentImportResource) *SegmentResponse {
14941	s.ImportDefinition = v
14942	return s
14943}
14944
14945// SetLastModifiedDate sets the LastModifiedDate field's value.
14946func (s *SegmentResponse) SetLastModifiedDate(v string) *SegmentResponse {
14947	s.LastModifiedDate = &v
14948	return s
14949}
14950
14951// SetName sets the Name field's value.
14952func (s *SegmentResponse) SetName(v string) *SegmentResponse {
14953	s.Name = &v
14954	return s
14955}
14956
14957// SetSegmentType sets the SegmentType field's value.
14958func (s *SegmentResponse) SetSegmentType(v string) *SegmentResponse {
14959	s.SegmentType = &v
14960	return s
14961}
14962
14963// SetVersion sets the Version field's value.
14964func (s *SegmentResponse) SetVersion(v int64) *SegmentResponse {
14965	s.Version = &v
14966	return s
14967}
14968
14969// Segments in your account.
14970type SegmentsResponse struct {
14971	_ struct{} `type:"structure"`
14972
14973	// The list of segments.
14974	Item []*SegmentResponse `type:"list"`
14975
14976	// An identifier used to retrieve the next page of results. The token is null
14977	// if no additional pages exist.
14978	NextToken *string `type:"string"`
14979}
14980
14981// String returns the string representation
14982func (s SegmentsResponse) String() string {
14983	return awsutil.Prettify(s)
14984}
14985
14986// GoString returns the string representation
14987func (s SegmentsResponse) GoString() string {
14988	return s.String()
14989}
14990
14991// SetItem sets the Item field's value.
14992func (s *SegmentsResponse) SetItem(v []*SegmentResponse) *SegmentsResponse {
14993	s.Item = v
14994	return s
14995}
14996
14997// SetNextToken sets the NextToken field's value.
14998func (s *SegmentsResponse) SetNextToken(v string) *SegmentsResponse {
14999	s.NextToken = &v
15000	return s
15001}
15002
15003type SendMessagesInput struct {
15004	_ struct{} `type:"structure" payload:"MessageRequest"`
15005
15006	// ApplicationId is a required field
15007	ApplicationId *string `location:"uri" locationName:"application-id" type:"string" required:"true"`
15008
15009	// Send message request.
15010	//
15011	// MessageRequest is a required field
15012	MessageRequest *MessageRequest `type:"structure" required:"true"`
15013}
15014
15015// String returns the string representation
15016func (s SendMessagesInput) String() string {
15017	return awsutil.Prettify(s)
15018}
15019
15020// GoString returns the string representation
15021func (s SendMessagesInput) GoString() string {
15022	return s.String()
15023}
15024
15025// Validate inspects the fields of the type to determine if they are valid.
15026func (s *SendMessagesInput) Validate() error {
15027	invalidParams := request.ErrInvalidParams{Context: "SendMessagesInput"}
15028	if s.ApplicationId == nil {
15029		invalidParams.Add(request.NewErrParamRequired("ApplicationId"))
15030	}
15031	if s.MessageRequest == nil {
15032		invalidParams.Add(request.NewErrParamRequired("MessageRequest"))
15033	}
15034
15035	if invalidParams.Len() > 0 {
15036		return invalidParams
15037	}
15038	return nil
15039}
15040
15041// SetApplicationId sets the ApplicationId field's value.
15042func (s *SendMessagesInput) SetApplicationId(v string) *SendMessagesInput {
15043	s.ApplicationId = &v
15044	return s
15045}
15046
15047// SetMessageRequest sets the MessageRequest field's value.
15048func (s *SendMessagesInput) SetMessageRequest(v *MessageRequest) *SendMessagesInput {
15049	s.MessageRequest = v
15050	return s
15051}
15052
15053type SendMessagesOutput struct {
15054	_ struct{} `type:"structure" payload:"MessageResponse"`
15055
15056	// Send message response.
15057	//
15058	// MessageResponse is a required field
15059	MessageResponse *MessageResponse `type:"structure" required:"true"`
15060}
15061
15062// String returns the string representation
15063func (s SendMessagesOutput) String() string {
15064	return awsutil.Prettify(s)
15065}
15066
15067// GoString returns the string representation
15068func (s SendMessagesOutput) GoString() string {
15069	return s.String()
15070}
15071
15072// SetMessageResponse sets the MessageResponse field's value.
15073func (s *SendMessagesOutput) SetMessageResponse(v *MessageResponse) *SendMessagesOutput {
15074	s.MessageResponse = v
15075	return s
15076}
15077
15078// Send message request.
15079type SendUsersMessageRequest struct {
15080	_ struct{} `type:"structure"`
15081
15082	// A map of custom attributes to attributes to be attached to the message. This
15083	// payload is added to the push notification's 'data.pinpoint' object or added
15084	// to the email/sms delivery receipt event attributes.
15085	Context map[string]*string `type:"map"`
15086
15087	// Message configuration.
15088	MessageConfiguration *DirectMessageConfiguration `type:"structure"`
15089
15090	// A map of destination endpoints, with the EndpointId as the key Endpoint Message
15091	// Configuration as the value.
15092	Users map[string]*EndpointSendConfiguration `type:"map"`
15093}
15094
15095// String returns the string representation
15096func (s SendUsersMessageRequest) String() string {
15097	return awsutil.Prettify(s)
15098}
15099
15100// GoString returns the string representation
15101func (s SendUsersMessageRequest) GoString() string {
15102	return s.String()
15103}
15104
15105// SetContext sets the Context field's value.
15106func (s *SendUsersMessageRequest) SetContext(v map[string]*string) *SendUsersMessageRequest {
15107	s.Context = v
15108	return s
15109}
15110
15111// SetMessageConfiguration sets the MessageConfiguration field's value.
15112func (s *SendUsersMessageRequest) SetMessageConfiguration(v *DirectMessageConfiguration) *SendUsersMessageRequest {
15113	s.MessageConfiguration = v
15114	return s
15115}
15116
15117// SetUsers sets the Users field's value.
15118func (s *SendUsersMessageRequest) SetUsers(v map[string]*EndpointSendConfiguration) *SendUsersMessageRequest {
15119	s.Users = v
15120	return s
15121}
15122
15123// User send message response.
15124type SendUsersMessageResponse struct {
15125	_ struct{} `type:"structure"`
15126
15127	// Application id of the message.
15128	ApplicationId *string `type:"string"`
15129
15130	// Original request Id for which this message was delivered.
15131	RequestId *string `type:"string"`
15132
15133	// A map containing of UserId to Map of EndpointId to Endpoint Message Result.
15134	Result map[string]map[string]*EndpointMessageResult `type:"map"`
15135}
15136
15137// String returns the string representation
15138func (s SendUsersMessageResponse) String() string {
15139	return awsutil.Prettify(s)
15140}
15141
15142// GoString returns the string representation
15143func (s SendUsersMessageResponse) GoString() string {
15144	return s.String()
15145}
15146
15147// SetApplicationId sets the ApplicationId field's value.
15148func (s *SendUsersMessageResponse) SetApplicationId(v string) *SendUsersMessageResponse {
15149	s.ApplicationId = &v
15150	return s
15151}
15152
15153// SetRequestId sets the RequestId field's value.
15154func (s *SendUsersMessageResponse) SetRequestId(v string) *SendUsersMessageResponse {
15155	s.RequestId = &v
15156	return s
15157}
15158
15159// SetResult sets the Result field's value.
15160func (s *SendUsersMessageResponse) SetResult(v map[string]map[string]*EndpointMessageResult) *SendUsersMessageResponse {
15161	s.Result = v
15162	return s
15163}
15164
15165type SendUsersMessagesInput struct {
15166	_ struct{} `type:"structure" payload:"SendUsersMessageRequest"`
15167
15168	// ApplicationId is a required field
15169	ApplicationId *string `location:"uri" locationName:"application-id" type:"string" required:"true"`
15170
15171	// Send message request.
15172	//
15173	// SendUsersMessageRequest is a required field
15174	SendUsersMessageRequest *SendUsersMessageRequest `type:"structure" required:"true"`
15175}
15176
15177// String returns the string representation
15178func (s SendUsersMessagesInput) String() string {
15179	return awsutil.Prettify(s)
15180}
15181
15182// GoString returns the string representation
15183func (s SendUsersMessagesInput) GoString() string {
15184	return s.String()
15185}
15186
15187// Validate inspects the fields of the type to determine if they are valid.
15188func (s *SendUsersMessagesInput) Validate() error {
15189	invalidParams := request.ErrInvalidParams{Context: "SendUsersMessagesInput"}
15190	if s.ApplicationId == nil {
15191		invalidParams.Add(request.NewErrParamRequired("ApplicationId"))
15192	}
15193	if s.SendUsersMessageRequest == nil {
15194		invalidParams.Add(request.NewErrParamRequired("SendUsersMessageRequest"))
15195	}
15196
15197	if invalidParams.Len() > 0 {
15198		return invalidParams
15199	}
15200	return nil
15201}
15202
15203// SetApplicationId sets the ApplicationId field's value.
15204func (s *SendUsersMessagesInput) SetApplicationId(v string) *SendUsersMessagesInput {
15205	s.ApplicationId = &v
15206	return s
15207}
15208
15209// SetSendUsersMessageRequest sets the SendUsersMessageRequest field's value.
15210func (s *SendUsersMessagesInput) SetSendUsersMessageRequest(v *SendUsersMessageRequest) *SendUsersMessagesInput {
15211	s.SendUsersMessageRequest = v
15212	return s
15213}
15214
15215type SendUsersMessagesOutput struct {
15216	_ struct{} `type:"structure" payload:"SendUsersMessageResponse"`
15217
15218	// User send message response.
15219	//
15220	// SendUsersMessageResponse is a required field
15221	SendUsersMessageResponse *SendUsersMessageResponse `type:"structure" required:"true"`
15222}
15223
15224// String returns the string representation
15225func (s SendUsersMessagesOutput) String() string {
15226	return awsutil.Prettify(s)
15227}
15228
15229// GoString returns the string representation
15230func (s SendUsersMessagesOutput) GoString() string {
15231	return s.String()
15232}
15233
15234// SetSendUsersMessageResponse sets the SendUsersMessageResponse field's value.
15235func (s *SendUsersMessagesOutput) SetSendUsersMessageResponse(v *SendUsersMessageResponse) *SendUsersMessagesOutput {
15236	s.SendUsersMessageResponse = v
15237	return s
15238}
15239
15240// Dimension specification of a segment.
15241type SetDimension struct {
15242	_ struct{} `type:"structure"`
15243
15244	// The type of dimension:INCLUSIVE - Endpoints that match the criteria are included
15245	// in the segment.EXCLUSIVE - Endpoints that match the criteria are excluded
15246	// from the segment.
15247	DimensionType *string `type:"string" enum:"DimensionType"`
15248
15249	Values []*string `type:"list"`
15250}
15251
15252// String returns the string representation
15253func (s SetDimension) String() string {
15254	return awsutil.Prettify(s)
15255}
15256
15257// GoString returns the string representation
15258func (s SetDimension) GoString() string {
15259	return s.String()
15260}
15261
15262// SetDimensionType sets the DimensionType field's value.
15263func (s *SetDimension) SetDimensionType(v string) *SetDimension {
15264	s.DimensionType = &v
15265	return s
15266}
15267
15268// SetValues sets the Values field's value.
15269func (s *SetDimension) SetValues(v []*string) *SetDimension {
15270	s.Values = v
15271	return s
15272}
15273
15274// Treatment resource
15275type TreatmentResource struct {
15276	_ struct{} `type:"structure"`
15277
15278	// The unique treatment ID.
15279	Id *string `type:"string"`
15280
15281	// The message configuration settings.
15282	MessageConfiguration *MessageConfiguration `type:"structure"`
15283
15284	// The campaign schedule.
15285	Schedule *Schedule `type:"structure"`
15286
15287	// The allocated percentage of users for this treatment.
15288	SizePercent *int64 `type:"integer"`
15289
15290	// The treatment status.
15291	State *CampaignState `type:"structure"`
15292
15293	// A custom description for the treatment.
15294	TreatmentDescription *string `type:"string"`
15295
15296	// The custom name of a variation of the campaign used for A/B testing.
15297	TreatmentName *string `type:"string"`
15298}
15299
15300// String returns the string representation
15301func (s TreatmentResource) String() string {
15302	return awsutil.Prettify(s)
15303}
15304
15305// GoString returns the string representation
15306func (s TreatmentResource) GoString() string {
15307	return s.String()
15308}
15309
15310// SetId sets the Id field's value.
15311func (s *TreatmentResource) SetId(v string) *TreatmentResource {
15312	s.Id = &v
15313	return s
15314}
15315
15316// SetMessageConfiguration sets the MessageConfiguration field's value.
15317func (s *TreatmentResource) SetMessageConfiguration(v *MessageConfiguration) *TreatmentResource {
15318	s.MessageConfiguration = v
15319	return s
15320}
15321
15322// SetSchedule sets the Schedule field's value.
15323func (s *TreatmentResource) SetSchedule(v *Schedule) *TreatmentResource {
15324	s.Schedule = v
15325	return s
15326}
15327
15328// SetSizePercent sets the SizePercent field's value.
15329func (s *TreatmentResource) SetSizePercent(v int64) *TreatmentResource {
15330	s.SizePercent = &v
15331	return s
15332}
15333
15334// SetState sets the State field's value.
15335func (s *TreatmentResource) SetState(v *CampaignState) *TreatmentResource {
15336	s.State = v
15337	return s
15338}
15339
15340// SetTreatmentDescription sets the TreatmentDescription field's value.
15341func (s *TreatmentResource) SetTreatmentDescription(v string) *TreatmentResource {
15342	s.TreatmentDescription = &v
15343	return s
15344}
15345
15346// SetTreatmentName sets the TreatmentName field's value.
15347func (s *TreatmentResource) SetTreatmentName(v string) *TreatmentResource {
15348	s.TreatmentName = &v
15349	return s
15350}
15351
15352type UpdateAdmChannelInput struct {
15353	_ struct{} `type:"structure" payload:"ADMChannelRequest"`
15354
15355	// Amazon Device Messaging channel definition.
15356	//
15357	// ADMChannelRequest is a required field
15358	ADMChannelRequest *ADMChannelRequest `type:"structure" required:"true"`
15359
15360	// ApplicationId is a required field
15361	ApplicationId *string `location:"uri" locationName:"application-id" type:"string" required:"true"`
15362}
15363
15364// String returns the string representation
15365func (s UpdateAdmChannelInput) String() string {
15366	return awsutil.Prettify(s)
15367}
15368
15369// GoString returns the string representation
15370func (s UpdateAdmChannelInput) GoString() string {
15371	return s.String()
15372}
15373
15374// Validate inspects the fields of the type to determine if they are valid.
15375func (s *UpdateAdmChannelInput) Validate() error {
15376	invalidParams := request.ErrInvalidParams{Context: "UpdateAdmChannelInput"}
15377	if s.ADMChannelRequest == nil {
15378		invalidParams.Add(request.NewErrParamRequired("ADMChannelRequest"))
15379	}
15380	if s.ApplicationId == nil {
15381		invalidParams.Add(request.NewErrParamRequired("ApplicationId"))
15382	}
15383
15384	if invalidParams.Len() > 0 {
15385		return invalidParams
15386	}
15387	return nil
15388}
15389
15390// SetADMChannelRequest sets the ADMChannelRequest field's value.
15391func (s *UpdateAdmChannelInput) SetADMChannelRequest(v *ADMChannelRequest) *UpdateAdmChannelInput {
15392	s.ADMChannelRequest = v
15393	return s
15394}
15395
15396// SetApplicationId sets the ApplicationId field's value.
15397func (s *UpdateAdmChannelInput) SetApplicationId(v string) *UpdateAdmChannelInput {
15398	s.ApplicationId = &v
15399	return s
15400}
15401
15402type UpdateAdmChannelOutput struct {
15403	_ struct{} `type:"structure" payload:"ADMChannelResponse"`
15404
15405	// Amazon Device Messaging channel definition.
15406	//
15407	// ADMChannelResponse is a required field
15408	ADMChannelResponse *ADMChannelResponse `type:"structure" required:"true"`
15409}
15410
15411// String returns the string representation
15412func (s UpdateAdmChannelOutput) String() string {
15413	return awsutil.Prettify(s)
15414}
15415
15416// GoString returns the string representation
15417func (s UpdateAdmChannelOutput) GoString() string {
15418	return s.String()
15419}
15420
15421// SetADMChannelResponse sets the ADMChannelResponse field's value.
15422func (s *UpdateAdmChannelOutput) SetADMChannelResponse(v *ADMChannelResponse) *UpdateAdmChannelOutput {
15423	s.ADMChannelResponse = v
15424	return s
15425}
15426
15427type UpdateApnsChannelInput struct {
15428	_ struct{} `type:"structure" payload:"APNSChannelRequest"`
15429
15430	// Apple Push Notification Service channel definition.
15431	//
15432	// APNSChannelRequest is a required field
15433	APNSChannelRequest *APNSChannelRequest `type:"structure" required:"true"`
15434
15435	// ApplicationId is a required field
15436	ApplicationId *string `location:"uri" locationName:"application-id" type:"string" required:"true"`
15437}
15438
15439// String returns the string representation
15440func (s UpdateApnsChannelInput) String() string {
15441	return awsutil.Prettify(s)
15442}
15443
15444// GoString returns the string representation
15445func (s UpdateApnsChannelInput) GoString() string {
15446	return s.String()
15447}
15448
15449// Validate inspects the fields of the type to determine if they are valid.
15450func (s *UpdateApnsChannelInput) Validate() error {
15451	invalidParams := request.ErrInvalidParams{Context: "UpdateApnsChannelInput"}
15452	if s.APNSChannelRequest == nil {
15453		invalidParams.Add(request.NewErrParamRequired("APNSChannelRequest"))
15454	}
15455	if s.ApplicationId == nil {
15456		invalidParams.Add(request.NewErrParamRequired("ApplicationId"))
15457	}
15458
15459	if invalidParams.Len() > 0 {
15460		return invalidParams
15461	}
15462	return nil
15463}
15464
15465// SetAPNSChannelRequest sets the APNSChannelRequest field's value.
15466func (s *UpdateApnsChannelInput) SetAPNSChannelRequest(v *APNSChannelRequest) *UpdateApnsChannelInput {
15467	s.APNSChannelRequest = v
15468	return s
15469}
15470
15471// SetApplicationId sets the ApplicationId field's value.
15472func (s *UpdateApnsChannelInput) SetApplicationId(v string) *UpdateApnsChannelInput {
15473	s.ApplicationId = &v
15474	return s
15475}
15476
15477type UpdateApnsChannelOutput struct {
15478	_ struct{} `type:"structure" payload:"APNSChannelResponse"`
15479
15480	// Apple Distribution Push Notification Service channel definition.
15481	//
15482	// APNSChannelResponse is a required field
15483	APNSChannelResponse *APNSChannelResponse `type:"structure" required:"true"`
15484}
15485
15486// String returns the string representation
15487func (s UpdateApnsChannelOutput) String() string {
15488	return awsutil.Prettify(s)
15489}
15490
15491// GoString returns the string representation
15492func (s UpdateApnsChannelOutput) GoString() string {
15493	return s.String()
15494}
15495
15496// SetAPNSChannelResponse sets the APNSChannelResponse field's value.
15497func (s *UpdateApnsChannelOutput) SetAPNSChannelResponse(v *APNSChannelResponse) *UpdateApnsChannelOutput {
15498	s.APNSChannelResponse = v
15499	return s
15500}
15501
15502type UpdateApnsSandboxChannelInput struct {
15503	_ struct{} `type:"structure" payload:"APNSSandboxChannelRequest"`
15504
15505	// Apple Development Push Notification Service channel definition.
15506	//
15507	// APNSSandboxChannelRequest is a required field
15508	APNSSandboxChannelRequest *APNSSandboxChannelRequest `type:"structure" required:"true"`
15509
15510	// ApplicationId is a required field
15511	ApplicationId *string `location:"uri" locationName:"application-id" type:"string" required:"true"`
15512}
15513
15514// String returns the string representation
15515func (s UpdateApnsSandboxChannelInput) String() string {
15516	return awsutil.Prettify(s)
15517}
15518
15519// GoString returns the string representation
15520func (s UpdateApnsSandboxChannelInput) GoString() string {
15521	return s.String()
15522}
15523
15524// Validate inspects the fields of the type to determine if they are valid.
15525func (s *UpdateApnsSandboxChannelInput) Validate() error {
15526	invalidParams := request.ErrInvalidParams{Context: "UpdateApnsSandboxChannelInput"}
15527	if s.APNSSandboxChannelRequest == nil {
15528		invalidParams.Add(request.NewErrParamRequired("APNSSandboxChannelRequest"))
15529	}
15530	if s.ApplicationId == nil {
15531		invalidParams.Add(request.NewErrParamRequired("ApplicationId"))
15532	}
15533
15534	if invalidParams.Len() > 0 {
15535		return invalidParams
15536	}
15537	return nil
15538}
15539
15540// SetAPNSSandboxChannelRequest sets the APNSSandboxChannelRequest field's value.
15541func (s *UpdateApnsSandboxChannelInput) SetAPNSSandboxChannelRequest(v *APNSSandboxChannelRequest) *UpdateApnsSandboxChannelInput {
15542	s.APNSSandboxChannelRequest = v
15543	return s
15544}
15545
15546// SetApplicationId sets the ApplicationId field's value.
15547func (s *UpdateApnsSandboxChannelInput) SetApplicationId(v string) *UpdateApnsSandboxChannelInput {
15548	s.ApplicationId = &v
15549	return s
15550}
15551
15552type UpdateApnsSandboxChannelOutput struct {
15553	_ struct{} `type:"structure" payload:"APNSSandboxChannelResponse"`
15554
15555	// Apple Development Push Notification Service channel definition.
15556	//
15557	// APNSSandboxChannelResponse is a required field
15558	APNSSandboxChannelResponse *APNSSandboxChannelResponse `type:"structure" required:"true"`
15559}
15560
15561// String returns the string representation
15562func (s UpdateApnsSandboxChannelOutput) String() string {
15563	return awsutil.Prettify(s)
15564}
15565
15566// GoString returns the string representation
15567func (s UpdateApnsSandboxChannelOutput) GoString() string {
15568	return s.String()
15569}
15570
15571// SetAPNSSandboxChannelResponse sets the APNSSandboxChannelResponse field's value.
15572func (s *UpdateApnsSandboxChannelOutput) SetAPNSSandboxChannelResponse(v *APNSSandboxChannelResponse) *UpdateApnsSandboxChannelOutput {
15573	s.APNSSandboxChannelResponse = v
15574	return s
15575}
15576
15577type UpdateApnsVoipChannelInput struct {
15578	_ struct{} `type:"structure" payload:"APNSVoipChannelRequest"`
15579
15580	// Apple VoIP Push Notification Service channel definition.
15581	//
15582	// APNSVoipChannelRequest is a required field
15583	APNSVoipChannelRequest *APNSVoipChannelRequest `type:"structure" required:"true"`
15584
15585	// ApplicationId is a required field
15586	ApplicationId *string `location:"uri" locationName:"application-id" type:"string" required:"true"`
15587}
15588
15589// String returns the string representation
15590func (s UpdateApnsVoipChannelInput) String() string {
15591	return awsutil.Prettify(s)
15592}
15593
15594// GoString returns the string representation
15595func (s UpdateApnsVoipChannelInput) GoString() string {
15596	return s.String()
15597}
15598
15599// Validate inspects the fields of the type to determine if they are valid.
15600func (s *UpdateApnsVoipChannelInput) Validate() error {
15601	invalidParams := request.ErrInvalidParams{Context: "UpdateApnsVoipChannelInput"}
15602	if s.APNSVoipChannelRequest == nil {
15603		invalidParams.Add(request.NewErrParamRequired("APNSVoipChannelRequest"))
15604	}
15605	if s.ApplicationId == nil {
15606		invalidParams.Add(request.NewErrParamRequired("ApplicationId"))
15607	}
15608
15609	if invalidParams.Len() > 0 {
15610		return invalidParams
15611	}
15612	return nil
15613}
15614
15615// SetAPNSVoipChannelRequest sets the APNSVoipChannelRequest field's value.
15616func (s *UpdateApnsVoipChannelInput) SetAPNSVoipChannelRequest(v *APNSVoipChannelRequest) *UpdateApnsVoipChannelInput {
15617	s.APNSVoipChannelRequest = v
15618	return s
15619}
15620
15621// SetApplicationId sets the ApplicationId field's value.
15622func (s *UpdateApnsVoipChannelInput) SetApplicationId(v string) *UpdateApnsVoipChannelInput {
15623	s.ApplicationId = &v
15624	return s
15625}
15626
15627type UpdateApnsVoipChannelOutput struct {
15628	_ struct{} `type:"structure" payload:"APNSVoipChannelResponse"`
15629
15630	// Apple VoIP Push Notification Service channel definition.
15631	//
15632	// APNSVoipChannelResponse is a required field
15633	APNSVoipChannelResponse *APNSVoipChannelResponse `type:"structure" required:"true"`
15634}
15635
15636// String returns the string representation
15637func (s UpdateApnsVoipChannelOutput) String() string {
15638	return awsutil.Prettify(s)
15639}
15640
15641// GoString returns the string representation
15642func (s UpdateApnsVoipChannelOutput) GoString() string {
15643	return s.String()
15644}
15645
15646// SetAPNSVoipChannelResponse sets the APNSVoipChannelResponse field's value.
15647func (s *UpdateApnsVoipChannelOutput) SetAPNSVoipChannelResponse(v *APNSVoipChannelResponse) *UpdateApnsVoipChannelOutput {
15648	s.APNSVoipChannelResponse = v
15649	return s
15650}
15651
15652type UpdateApnsVoipSandboxChannelInput struct {
15653	_ struct{} `type:"structure" payload:"APNSVoipSandboxChannelRequest"`
15654
15655	// Apple VoIP Developer Push Notification Service channel definition.
15656	//
15657	// APNSVoipSandboxChannelRequest is a required field
15658	APNSVoipSandboxChannelRequest *APNSVoipSandboxChannelRequest `type:"structure" required:"true"`
15659
15660	// ApplicationId is a required field
15661	ApplicationId *string `location:"uri" locationName:"application-id" type:"string" required:"true"`
15662}
15663
15664// String returns the string representation
15665func (s UpdateApnsVoipSandboxChannelInput) String() string {
15666	return awsutil.Prettify(s)
15667}
15668
15669// GoString returns the string representation
15670func (s UpdateApnsVoipSandboxChannelInput) GoString() string {
15671	return s.String()
15672}
15673
15674// Validate inspects the fields of the type to determine if they are valid.
15675func (s *UpdateApnsVoipSandboxChannelInput) Validate() error {
15676	invalidParams := request.ErrInvalidParams{Context: "UpdateApnsVoipSandboxChannelInput"}
15677	if s.APNSVoipSandboxChannelRequest == nil {
15678		invalidParams.Add(request.NewErrParamRequired("APNSVoipSandboxChannelRequest"))
15679	}
15680	if s.ApplicationId == nil {
15681		invalidParams.Add(request.NewErrParamRequired("ApplicationId"))
15682	}
15683
15684	if invalidParams.Len() > 0 {
15685		return invalidParams
15686	}
15687	return nil
15688}
15689
15690// SetAPNSVoipSandboxChannelRequest sets the APNSVoipSandboxChannelRequest field's value.
15691func (s *UpdateApnsVoipSandboxChannelInput) SetAPNSVoipSandboxChannelRequest(v *APNSVoipSandboxChannelRequest) *UpdateApnsVoipSandboxChannelInput {
15692	s.APNSVoipSandboxChannelRequest = v
15693	return s
15694}
15695
15696// SetApplicationId sets the ApplicationId field's value.
15697func (s *UpdateApnsVoipSandboxChannelInput) SetApplicationId(v string) *UpdateApnsVoipSandboxChannelInput {
15698	s.ApplicationId = &v
15699	return s
15700}
15701
15702type UpdateApnsVoipSandboxChannelOutput struct {
15703	_ struct{} `type:"structure" payload:"APNSVoipSandboxChannelResponse"`
15704
15705	// Apple VoIP Developer Push Notification Service channel definition.
15706	//
15707	// APNSVoipSandboxChannelResponse is a required field
15708	APNSVoipSandboxChannelResponse *APNSVoipSandboxChannelResponse `type:"structure" required:"true"`
15709}
15710
15711// String returns the string representation
15712func (s UpdateApnsVoipSandboxChannelOutput) String() string {
15713	return awsutil.Prettify(s)
15714}
15715
15716// GoString returns the string representation
15717func (s UpdateApnsVoipSandboxChannelOutput) GoString() string {
15718	return s.String()
15719}
15720
15721// SetAPNSVoipSandboxChannelResponse sets the APNSVoipSandboxChannelResponse field's value.
15722func (s *UpdateApnsVoipSandboxChannelOutput) SetAPNSVoipSandboxChannelResponse(v *APNSVoipSandboxChannelResponse) *UpdateApnsVoipSandboxChannelOutput {
15723	s.APNSVoipSandboxChannelResponse = v
15724	return s
15725}
15726
15727type UpdateApplicationSettingsInput struct {
15728	_ struct{} `type:"structure" payload:"WriteApplicationSettingsRequest"`
15729
15730	// ApplicationId is a required field
15731	ApplicationId *string `location:"uri" locationName:"application-id" type:"string" required:"true"`
15732
15733	// Creating application setting request
15734	//
15735	// WriteApplicationSettingsRequest is a required field
15736	WriteApplicationSettingsRequest *WriteApplicationSettingsRequest `type:"structure" required:"true"`
15737}
15738
15739// String returns the string representation
15740func (s UpdateApplicationSettingsInput) String() string {
15741	return awsutil.Prettify(s)
15742}
15743
15744// GoString returns the string representation
15745func (s UpdateApplicationSettingsInput) GoString() string {
15746	return s.String()
15747}
15748
15749// Validate inspects the fields of the type to determine if they are valid.
15750func (s *UpdateApplicationSettingsInput) Validate() error {
15751	invalidParams := request.ErrInvalidParams{Context: "UpdateApplicationSettingsInput"}
15752	if s.ApplicationId == nil {
15753		invalidParams.Add(request.NewErrParamRequired("ApplicationId"))
15754	}
15755	if s.WriteApplicationSettingsRequest == nil {
15756		invalidParams.Add(request.NewErrParamRequired("WriteApplicationSettingsRequest"))
15757	}
15758
15759	if invalidParams.Len() > 0 {
15760		return invalidParams
15761	}
15762	return nil
15763}
15764
15765// SetApplicationId sets the ApplicationId field's value.
15766func (s *UpdateApplicationSettingsInput) SetApplicationId(v string) *UpdateApplicationSettingsInput {
15767	s.ApplicationId = &v
15768	return s
15769}
15770
15771// SetWriteApplicationSettingsRequest sets the WriteApplicationSettingsRequest field's value.
15772func (s *UpdateApplicationSettingsInput) SetWriteApplicationSettingsRequest(v *WriteApplicationSettingsRequest) *UpdateApplicationSettingsInput {
15773	s.WriteApplicationSettingsRequest = v
15774	return s
15775}
15776
15777type UpdateApplicationSettingsOutput struct {
15778	_ struct{} `type:"structure" payload:"ApplicationSettingsResource"`
15779
15780	// Application settings.
15781	//
15782	// ApplicationSettingsResource is a required field
15783	ApplicationSettingsResource *ApplicationSettingsResource `type:"structure" required:"true"`
15784}
15785
15786// String returns the string representation
15787func (s UpdateApplicationSettingsOutput) String() string {
15788	return awsutil.Prettify(s)
15789}
15790
15791// GoString returns the string representation
15792func (s UpdateApplicationSettingsOutput) GoString() string {
15793	return s.String()
15794}
15795
15796// SetApplicationSettingsResource sets the ApplicationSettingsResource field's value.
15797func (s *UpdateApplicationSettingsOutput) SetApplicationSettingsResource(v *ApplicationSettingsResource) *UpdateApplicationSettingsOutput {
15798	s.ApplicationSettingsResource = v
15799	return s
15800}
15801
15802type UpdateBaiduChannelInput struct {
15803	_ struct{} `type:"structure" payload:"BaiduChannelRequest"`
15804
15805	// ApplicationId is a required field
15806	ApplicationId *string `location:"uri" locationName:"application-id" type:"string" required:"true"`
15807
15808	// Baidu Cloud Push credentials
15809	//
15810	// BaiduChannelRequest is a required field
15811	BaiduChannelRequest *BaiduChannelRequest `type:"structure" required:"true"`
15812}
15813
15814// String returns the string representation
15815func (s UpdateBaiduChannelInput) String() string {
15816	return awsutil.Prettify(s)
15817}
15818
15819// GoString returns the string representation
15820func (s UpdateBaiduChannelInput) GoString() string {
15821	return s.String()
15822}
15823
15824// Validate inspects the fields of the type to determine if they are valid.
15825func (s *UpdateBaiduChannelInput) Validate() error {
15826	invalidParams := request.ErrInvalidParams{Context: "UpdateBaiduChannelInput"}
15827	if s.ApplicationId == nil {
15828		invalidParams.Add(request.NewErrParamRequired("ApplicationId"))
15829	}
15830	if s.BaiduChannelRequest == nil {
15831		invalidParams.Add(request.NewErrParamRequired("BaiduChannelRequest"))
15832	}
15833
15834	if invalidParams.Len() > 0 {
15835		return invalidParams
15836	}
15837	return nil
15838}
15839
15840// SetApplicationId sets the ApplicationId field's value.
15841func (s *UpdateBaiduChannelInput) SetApplicationId(v string) *UpdateBaiduChannelInput {
15842	s.ApplicationId = &v
15843	return s
15844}
15845
15846// SetBaiduChannelRequest sets the BaiduChannelRequest field's value.
15847func (s *UpdateBaiduChannelInput) SetBaiduChannelRequest(v *BaiduChannelRequest) *UpdateBaiduChannelInput {
15848	s.BaiduChannelRequest = v
15849	return s
15850}
15851
15852type UpdateBaiduChannelOutput struct {
15853	_ struct{} `type:"structure" payload:"BaiduChannelResponse"`
15854
15855	// Baidu Cloud Messaging channel definition
15856	//
15857	// BaiduChannelResponse is a required field
15858	BaiduChannelResponse *BaiduChannelResponse `type:"structure" required:"true"`
15859}
15860
15861// String returns the string representation
15862func (s UpdateBaiduChannelOutput) String() string {
15863	return awsutil.Prettify(s)
15864}
15865
15866// GoString returns the string representation
15867func (s UpdateBaiduChannelOutput) GoString() string {
15868	return s.String()
15869}
15870
15871// SetBaiduChannelResponse sets the BaiduChannelResponse field's value.
15872func (s *UpdateBaiduChannelOutput) SetBaiduChannelResponse(v *BaiduChannelResponse) *UpdateBaiduChannelOutput {
15873	s.BaiduChannelResponse = v
15874	return s
15875}
15876
15877type UpdateCampaignInput struct {
15878	_ struct{} `type:"structure" payload:"WriteCampaignRequest"`
15879
15880	// ApplicationId is a required field
15881	ApplicationId *string `location:"uri" locationName:"application-id" type:"string" required:"true"`
15882
15883	// CampaignId is a required field
15884	CampaignId *string `location:"uri" locationName:"campaign-id" type:"string" required:"true"`
15885
15886	// Used to create a campaign.
15887	//
15888	// WriteCampaignRequest is a required field
15889	WriteCampaignRequest *WriteCampaignRequest `type:"structure" required:"true"`
15890}
15891
15892// String returns the string representation
15893func (s UpdateCampaignInput) String() string {
15894	return awsutil.Prettify(s)
15895}
15896
15897// GoString returns the string representation
15898func (s UpdateCampaignInput) GoString() string {
15899	return s.String()
15900}
15901
15902// Validate inspects the fields of the type to determine if they are valid.
15903func (s *UpdateCampaignInput) Validate() error {
15904	invalidParams := request.ErrInvalidParams{Context: "UpdateCampaignInput"}
15905	if s.ApplicationId == nil {
15906		invalidParams.Add(request.NewErrParamRequired("ApplicationId"))
15907	}
15908	if s.CampaignId == nil {
15909		invalidParams.Add(request.NewErrParamRequired("CampaignId"))
15910	}
15911	if s.WriteCampaignRequest == nil {
15912		invalidParams.Add(request.NewErrParamRequired("WriteCampaignRequest"))
15913	}
15914
15915	if invalidParams.Len() > 0 {
15916		return invalidParams
15917	}
15918	return nil
15919}
15920
15921// SetApplicationId sets the ApplicationId field's value.
15922func (s *UpdateCampaignInput) SetApplicationId(v string) *UpdateCampaignInput {
15923	s.ApplicationId = &v
15924	return s
15925}
15926
15927// SetCampaignId sets the CampaignId field's value.
15928func (s *UpdateCampaignInput) SetCampaignId(v string) *UpdateCampaignInput {
15929	s.CampaignId = &v
15930	return s
15931}
15932
15933// SetWriteCampaignRequest sets the WriteCampaignRequest field's value.
15934func (s *UpdateCampaignInput) SetWriteCampaignRequest(v *WriteCampaignRequest) *UpdateCampaignInput {
15935	s.WriteCampaignRequest = v
15936	return s
15937}
15938
15939type UpdateCampaignOutput struct {
15940	_ struct{} `type:"structure" payload:"CampaignResponse"`
15941
15942	// Campaign definition
15943	//
15944	// CampaignResponse is a required field
15945	CampaignResponse *CampaignResponse `type:"structure" required:"true"`
15946}
15947
15948// String returns the string representation
15949func (s UpdateCampaignOutput) String() string {
15950	return awsutil.Prettify(s)
15951}
15952
15953// GoString returns the string representation
15954func (s UpdateCampaignOutput) GoString() string {
15955	return s.String()
15956}
15957
15958// SetCampaignResponse sets the CampaignResponse field's value.
15959func (s *UpdateCampaignOutput) SetCampaignResponse(v *CampaignResponse) *UpdateCampaignOutput {
15960	s.CampaignResponse = v
15961	return s
15962}
15963
15964type UpdateEmailChannelInput struct {
15965	_ struct{} `type:"structure" payload:"EmailChannelRequest"`
15966
15967	// ApplicationId is a required field
15968	ApplicationId *string `location:"uri" locationName:"application-id" type:"string" required:"true"`
15969
15970	// Email Channel Request
15971	//
15972	// EmailChannelRequest is a required field
15973	EmailChannelRequest *EmailChannelRequest `type:"structure" required:"true"`
15974}
15975
15976// String returns the string representation
15977func (s UpdateEmailChannelInput) String() string {
15978	return awsutil.Prettify(s)
15979}
15980
15981// GoString returns the string representation
15982func (s UpdateEmailChannelInput) GoString() string {
15983	return s.String()
15984}
15985
15986// Validate inspects the fields of the type to determine if they are valid.
15987func (s *UpdateEmailChannelInput) Validate() error {
15988	invalidParams := request.ErrInvalidParams{Context: "UpdateEmailChannelInput"}
15989	if s.ApplicationId == nil {
15990		invalidParams.Add(request.NewErrParamRequired("ApplicationId"))
15991	}
15992	if s.EmailChannelRequest == nil {
15993		invalidParams.Add(request.NewErrParamRequired("EmailChannelRequest"))
15994	}
15995
15996	if invalidParams.Len() > 0 {
15997		return invalidParams
15998	}
15999	return nil
16000}
16001
16002// SetApplicationId sets the ApplicationId field's value.
16003func (s *UpdateEmailChannelInput) SetApplicationId(v string) *UpdateEmailChannelInput {
16004	s.ApplicationId = &v
16005	return s
16006}
16007
16008// SetEmailChannelRequest sets the EmailChannelRequest field's value.
16009func (s *UpdateEmailChannelInput) SetEmailChannelRequest(v *EmailChannelRequest) *UpdateEmailChannelInput {
16010	s.EmailChannelRequest = v
16011	return s
16012}
16013
16014type UpdateEmailChannelOutput struct {
16015	_ struct{} `type:"structure" payload:"EmailChannelResponse"`
16016
16017	// Email Channel Response.
16018	//
16019	// EmailChannelResponse is a required field
16020	EmailChannelResponse *EmailChannelResponse `type:"structure" required:"true"`
16021}
16022
16023// String returns the string representation
16024func (s UpdateEmailChannelOutput) String() string {
16025	return awsutil.Prettify(s)
16026}
16027
16028// GoString returns the string representation
16029func (s UpdateEmailChannelOutput) GoString() string {
16030	return s.String()
16031}
16032
16033// SetEmailChannelResponse sets the EmailChannelResponse field's value.
16034func (s *UpdateEmailChannelOutput) SetEmailChannelResponse(v *EmailChannelResponse) *UpdateEmailChannelOutput {
16035	s.EmailChannelResponse = v
16036	return s
16037}
16038
16039type UpdateEndpointInput struct {
16040	_ struct{} `type:"structure" payload:"EndpointRequest"`
16041
16042	// ApplicationId is a required field
16043	ApplicationId *string `location:"uri" locationName:"application-id" type:"string" required:"true"`
16044
16045	// EndpointId is a required field
16046	EndpointId *string `location:"uri" locationName:"endpoint-id" type:"string" required:"true"`
16047
16048	// Endpoint update request
16049	//
16050	// EndpointRequest is a required field
16051	EndpointRequest *EndpointRequest `type:"structure" required:"true"`
16052}
16053
16054// String returns the string representation
16055func (s UpdateEndpointInput) String() string {
16056	return awsutil.Prettify(s)
16057}
16058
16059// GoString returns the string representation
16060func (s UpdateEndpointInput) GoString() string {
16061	return s.String()
16062}
16063
16064// Validate inspects the fields of the type to determine if they are valid.
16065func (s *UpdateEndpointInput) Validate() error {
16066	invalidParams := request.ErrInvalidParams{Context: "UpdateEndpointInput"}
16067	if s.ApplicationId == nil {
16068		invalidParams.Add(request.NewErrParamRequired("ApplicationId"))
16069	}
16070	if s.EndpointId == nil {
16071		invalidParams.Add(request.NewErrParamRequired("EndpointId"))
16072	}
16073	if s.EndpointRequest == nil {
16074		invalidParams.Add(request.NewErrParamRequired("EndpointRequest"))
16075	}
16076
16077	if invalidParams.Len() > 0 {
16078		return invalidParams
16079	}
16080	return nil
16081}
16082
16083// SetApplicationId sets the ApplicationId field's value.
16084func (s *UpdateEndpointInput) SetApplicationId(v string) *UpdateEndpointInput {
16085	s.ApplicationId = &v
16086	return s
16087}
16088
16089// SetEndpointId sets the EndpointId field's value.
16090func (s *UpdateEndpointInput) SetEndpointId(v string) *UpdateEndpointInput {
16091	s.EndpointId = &v
16092	return s
16093}
16094
16095// SetEndpointRequest sets the EndpointRequest field's value.
16096func (s *UpdateEndpointInput) SetEndpointRequest(v *EndpointRequest) *UpdateEndpointInput {
16097	s.EndpointRequest = v
16098	return s
16099}
16100
16101type UpdateEndpointOutput struct {
16102	_ struct{} `type:"structure" payload:"MessageBody"`
16103
16104	// Simple message object.
16105	//
16106	// MessageBody is a required field
16107	MessageBody *MessageBody `type:"structure" required:"true"`
16108}
16109
16110// String returns the string representation
16111func (s UpdateEndpointOutput) String() string {
16112	return awsutil.Prettify(s)
16113}
16114
16115// GoString returns the string representation
16116func (s UpdateEndpointOutput) GoString() string {
16117	return s.String()
16118}
16119
16120// SetMessageBody sets the MessageBody field's value.
16121func (s *UpdateEndpointOutput) SetMessageBody(v *MessageBody) *UpdateEndpointOutput {
16122	s.MessageBody = v
16123	return s
16124}
16125
16126type UpdateEndpointsBatchInput struct {
16127	_ struct{} `type:"structure" payload:"EndpointBatchRequest"`
16128
16129	// ApplicationId is a required field
16130	ApplicationId *string `location:"uri" locationName:"application-id" type:"string" required:"true"`
16131
16132	// Endpoint batch update request.
16133	//
16134	// EndpointBatchRequest is a required field
16135	EndpointBatchRequest *EndpointBatchRequest `type:"structure" required:"true"`
16136}
16137
16138// String returns the string representation
16139func (s UpdateEndpointsBatchInput) String() string {
16140	return awsutil.Prettify(s)
16141}
16142
16143// GoString returns the string representation
16144func (s UpdateEndpointsBatchInput) GoString() string {
16145	return s.String()
16146}
16147
16148// Validate inspects the fields of the type to determine if they are valid.
16149func (s *UpdateEndpointsBatchInput) Validate() error {
16150	invalidParams := request.ErrInvalidParams{Context: "UpdateEndpointsBatchInput"}
16151	if s.ApplicationId == nil {
16152		invalidParams.Add(request.NewErrParamRequired("ApplicationId"))
16153	}
16154	if s.EndpointBatchRequest == nil {
16155		invalidParams.Add(request.NewErrParamRequired("EndpointBatchRequest"))
16156	}
16157
16158	if invalidParams.Len() > 0 {
16159		return invalidParams
16160	}
16161	return nil
16162}
16163
16164// SetApplicationId sets the ApplicationId field's value.
16165func (s *UpdateEndpointsBatchInput) SetApplicationId(v string) *UpdateEndpointsBatchInput {
16166	s.ApplicationId = &v
16167	return s
16168}
16169
16170// SetEndpointBatchRequest sets the EndpointBatchRequest field's value.
16171func (s *UpdateEndpointsBatchInput) SetEndpointBatchRequest(v *EndpointBatchRequest) *UpdateEndpointsBatchInput {
16172	s.EndpointBatchRequest = v
16173	return s
16174}
16175
16176type UpdateEndpointsBatchOutput struct {
16177	_ struct{} `type:"structure" payload:"MessageBody"`
16178
16179	// Simple message object.
16180	//
16181	// MessageBody is a required field
16182	MessageBody *MessageBody `type:"structure" required:"true"`
16183}
16184
16185// String returns the string representation
16186func (s UpdateEndpointsBatchOutput) String() string {
16187	return awsutil.Prettify(s)
16188}
16189
16190// GoString returns the string representation
16191func (s UpdateEndpointsBatchOutput) GoString() string {
16192	return s.String()
16193}
16194
16195// SetMessageBody sets the MessageBody field's value.
16196func (s *UpdateEndpointsBatchOutput) SetMessageBody(v *MessageBody) *UpdateEndpointsBatchOutput {
16197	s.MessageBody = v
16198	return s
16199}
16200
16201type UpdateGcmChannelInput struct {
16202	_ struct{} `type:"structure" payload:"GCMChannelRequest"`
16203
16204	// ApplicationId is a required field
16205	ApplicationId *string `location:"uri" locationName:"application-id" type:"string" required:"true"`
16206
16207	// Google Cloud Messaging credentials
16208	//
16209	// GCMChannelRequest is a required field
16210	GCMChannelRequest *GCMChannelRequest `type:"structure" required:"true"`
16211}
16212
16213// String returns the string representation
16214func (s UpdateGcmChannelInput) String() string {
16215	return awsutil.Prettify(s)
16216}
16217
16218// GoString returns the string representation
16219func (s UpdateGcmChannelInput) GoString() string {
16220	return s.String()
16221}
16222
16223// Validate inspects the fields of the type to determine if they are valid.
16224func (s *UpdateGcmChannelInput) Validate() error {
16225	invalidParams := request.ErrInvalidParams{Context: "UpdateGcmChannelInput"}
16226	if s.ApplicationId == nil {
16227		invalidParams.Add(request.NewErrParamRequired("ApplicationId"))
16228	}
16229	if s.GCMChannelRequest == nil {
16230		invalidParams.Add(request.NewErrParamRequired("GCMChannelRequest"))
16231	}
16232
16233	if invalidParams.Len() > 0 {
16234		return invalidParams
16235	}
16236	return nil
16237}
16238
16239// SetApplicationId sets the ApplicationId field's value.
16240func (s *UpdateGcmChannelInput) SetApplicationId(v string) *UpdateGcmChannelInput {
16241	s.ApplicationId = &v
16242	return s
16243}
16244
16245// SetGCMChannelRequest sets the GCMChannelRequest field's value.
16246func (s *UpdateGcmChannelInput) SetGCMChannelRequest(v *GCMChannelRequest) *UpdateGcmChannelInput {
16247	s.GCMChannelRequest = v
16248	return s
16249}
16250
16251type UpdateGcmChannelOutput struct {
16252	_ struct{} `type:"structure" payload:"GCMChannelResponse"`
16253
16254	// Google Cloud Messaging channel definition
16255	//
16256	// GCMChannelResponse is a required field
16257	GCMChannelResponse *GCMChannelResponse `type:"structure" required:"true"`
16258}
16259
16260// String returns the string representation
16261func (s UpdateGcmChannelOutput) String() string {
16262	return awsutil.Prettify(s)
16263}
16264
16265// GoString returns the string representation
16266func (s UpdateGcmChannelOutput) GoString() string {
16267	return s.String()
16268}
16269
16270// SetGCMChannelResponse sets the GCMChannelResponse field's value.
16271func (s *UpdateGcmChannelOutput) SetGCMChannelResponse(v *GCMChannelResponse) *UpdateGcmChannelOutput {
16272	s.GCMChannelResponse = v
16273	return s
16274}
16275
16276type UpdateSegmentInput struct {
16277	_ struct{} `type:"structure" payload:"WriteSegmentRequest"`
16278
16279	// ApplicationId is a required field
16280	ApplicationId *string `location:"uri" locationName:"application-id" type:"string" required:"true"`
16281
16282	// SegmentId is a required field
16283	SegmentId *string `location:"uri" locationName:"segment-id" type:"string" required:"true"`
16284
16285	// Segment definition.
16286	//
16287	// WriteSegmentRequest is a required field
16288	WriteSegmentRequest *WriteSegmentRequest `type:"structure" required:"true"`
16289}
16290
16291// String returns the string representation
16292func (s UpdateSegmentInput) String() string {
16293	return awsutil.Prettify(s)
16294}
16295
16296// GoString returns the string representation
16297func (s UpdateSegmentInput) GoString() string {
16298	return s.String()
16299}
16300
16301// Validate inspects the fields of the type to determine if they are valid.
16302func (s *UpdateSegmentInput) Validate() error {
16303	invalidParams := request.ErrInvalidParams{Context: "UpdateSegmentInput"}
16304	if s.ApplicationId == nil {
16305		invalidParams.Add(request.NewErrParamRequired("ApplicationId"))
16306	}
16307	if s.SegmentId == nil {
16308		invalidParams.Add(request.NewErrParamRequired("SegmentId"))
16309	}
16310	if s.WriteSegmentRequest == nil {
16311		invalidParams.Add(request.NewErrParamRequired("WriteSegmentRequest"))
16312	}
16313
16314	if invalidParams.Len() > 0 {
16315		return invalidParams
16316	}
16317	return nil
16318}
16319
16320// SetApplicationId sets the ApplicationId field's value.
16321func (s *UpdateSegmentInput) SetApplicationId(v string) *UpdateSegmentInput {
16322	s.ApplicationId = &v
16323	return s
16324}
16325
16326// SetSegmentId sets the SegmentId field's value.
16327func (s *UpdateSegmentInput) SetSegmentId(v string) *UpdateSegmentInput {
16328	s.SegmentId = &v
16329	return s
16330}
16331
16332// SetWriteSegmentRequest sets the WriteSegmentRequest field's value.
16333func (s *UpdateSegmentInput) SetWriteSegmentRequest(v *WriteSegmentRequest) *UpdateSegmentInput {
16334	s.WriteSegmentRequest = v
16335	return s
16336}
16337
16338type UpdateSegmentOutput struct {
16339	_ struct{} `type:"structure" payload:"SegmentResponse"`
16340
16341	// Segment definition.
16342	//
16343	// SegmentResponse is a required field
16344	SegmentResponse *SegmentResponse `type:"structure" required:"true"`
16345}
16346
16347// String returns the string representation
16348func (s UpdateSegmentOutput) String() string {
16349	return awsutil.Prettify(s)
16350}
16351
16352// GoString returns the string representation
16353func (s UpdateSegmentOutput) GoString() string {
16354	return s.String()
16355}
16356
16357// SetSegmentResponse sets the SegmentResponse field's value.
16358func (s *UpdateSegmentOutput) SetSegmentResponse(v *SegmentResponse) *UpdateSegmentOutput {
16359	s.SegmentResponse = v
16360	return s
16361}
16362
16363type UpdateSmsChannelInput struct {
16364	_ struct{} `type:"structure" payload:"SMSChannelRequest"`
16365
16366	// ApplicationId is a required field
16367	ApplicationId *string `location:"uri" locationName:"application-id" type:"string" required:"true"`
16368
16369	// SMS Channel Request
16370	//
16371	// SMSChannelRequest is a required field
16372	SMSChannelRequest *SMSChannelRequest `type:"structure" required:"true"`
16373}
16374
16375// String returns the string representation
16376func (s UpdateSmsChannelInput) String() string {
16377	return awsutil.Prettify(s)
16378}
16379
16380// GoString returns the string representation
16381func (s UpdateSmsChannelInput) GoString() string {
16382	return s.String()
16383}
16384
16385// Validate inspects the fields of the type to determine if they are valid.
16386func (s *UpdateSmsChannelInput) Validate() error {
16387	invalidParams := request.ErrInvalidParams{Context: "UpdateSmsChannelInput"}
16388	if s.ApplicationId == nil {
16389		invalidParams.Add(request.NewErrParamRequired("ApplicationId"))
16390	}
16391	if s.SMSChannelRequest == nil {
16392		invalidParams.Add(request.NewErrParamRequired("SMSChannelRequest"))
16393	}
16394
16395	if invalidParams.Len() > 0 {
16396		return invalidParams
16397	}
16398	return nil
16399}
16400
16401// SetApplicationId sets the ApplicationId field's value.
16402func (s *UpdateSmsChannelInput) SetApplicationId(v string) *UpdateSmsChannelInput {
16403	s.ApplicationId = &v
16404	return s
16405}
16406
16407// SetSMSChannelRequest sets the SMSChannelRequest field's value.
16408func (s *UpdateSmsChannelInput) SetSMSChannelRequest(v *SMSChannelRequest) *UpdateSmsChannelInput {
16409	s.SMSChannelRequest = v
16410	return s
16411}
16412
16413type UpdateSmsChannelOutput struct {
16414	_ struct{} `type:"structure" payload:"SMSChannelResponse"`
16415
16416	// SMS Channel Response.
16417	//
16418	// SMSChannelResponse is a required field
16419	SMSChannelResponse *SMSChannelResponse `type:"structure" required:"true"`
16420}
16421
16422// String returns the string representation
16423func (s UpdateSmsChannelOutput) String() string {
16424	return awsutil.Prettify(s)
16425}
16426
16427// GoString returns the string representation
16428func (s UpdateSmsChannelOutput) GoString() string {
16429	return s.String()
16430}
16431
16432// SetSMSChannelResponse sets the SMSChannelResponse field's value.
16433func (s *UpdateSmsChannelOutput) SetSMSChannelResponse(v *SMSChannelResponse) *UpdateSmsChannelOutput {
16434	s.SMSChannelResponse = v
16435	return s
16436}
16437
16438// Creating application setting request
16439type WriteApplicationSettingsRequest struct {
16440	_ struct{} `type:"structure"`
16441
16442	// Default campaign hook information.
16443	CampaignHook *CampaignHook `type:"structure"`
16444
16445	// The default campaign limits for the app. These limits apply to each campaign
16446	// for the app, unless the campaign overrides the default with limits of its
16447	// own.
16448	Limits *CampaignLimits `type:"structure"`
16449
16450	// The default quiet time for the app. Each campaign for this app sends no messages
16451	// during this time unless the campaign overrides the default with a quiet time
16452	// of its own.
16453	QuietTime *QuietTime `type:"structure"`
16454}
16455
16456// String returns the string representation
16457func (s WriteApplicationSettingsRequest) String() string {
16458	return awsutil.Prettify(s)
16459}
16460
16461// GoString returns the string representation
16462func (s WriteApplicationSettingsRequest) GoString() string {
16463	return s.String()
16464}
16465
16466// SetCampaignHook sets the CampaignHook field's value.
16467func (s *WriteApplicationSettingsRequest) SetCampaignHook(v *CampaignHook) *WriteApplicationSettingsRequest {
16468	s.CampaignHook = v
16469	return s
16470}
16471
16472// SetLimits sets the Limits field's value.
16473func (s *WriteApplicationSettingsRequest) SetLimits(v *CampaignLimits) *WriteApplicationSettingsRequest {
16474	s.Limits = v
16475	return s
16476}
16477
16478// SetQuietTime sets the QuietTime field's value.
16479func (s *WriteApplicationSettingsRequest) SetQuietTime(v *QuietTime) *WriteApplicationSettingsRequest {
16480	s.QuietTime = v
16481	return s
16482}
16483
16484// Used to create a campaign.
16485type WriteCampaignRequest struct {
16486	_ struct{} `type:"structure"`
16487
16488	// Treatments that are defined in addition to the default treatment.
16489	AdditionalTreatments []*WriteTreatmentResource `type:"list"`
16490
16491	// A description of the campaign.
16492	Description *string `type:"string"`
16493
16494	// The allocated percentage of end users who will not receive messages from
16495	// this campaign.
16496	HoldoutPercent *int64 `type:"integer"`
16497
16498	// Campaign hook information.
16499	Hook *CampaignHook `type:"structure"`
16500
16501	// Indicates whether the campaign is paused. A paused campaign does not send
16502	// messages unless you resume it by setting IsPaused to false.
16503	IsPaused *bool `type:"boolean"`
16504
16505	// The campaign limits settings.
16506	Limits *CampaignLimits `type:"structure"`
16507
16508	// The message configuration settings.
16509	MessageConfiguration *MessageConfiguration `type:"structure"`
16510
16511	// The custom name of the campaign.
16512	Name *string `type:"string"`
16513
16514	// The campaign schedule.
16515	Schedule *Schedule `type:"structure"`
16516
16517	// The ID of the segment to which the campaign sends messages.
16518	SegmentId *string `type:"string"`
16519
16520	// The version of the segment to which the campaign sends messages.
16521	SegmentVersion *int64 `type:"integer"`
16522
16523	// A custom description for the treatment.
16524	TreatmentDescription *string `type:"string"`
16525
16526	// The custom name of a variation of the campaign used for A/B testing.
16527	TreatmentName *string `type:"string"`
16528}
16529
16530// String returns the string representation
16531func (s WriteCampaignRequest) String() string {
16532	return awsutil.Prettify(s)
16533}
16534
16535// GoString returns the string representation
16536func (s WriteCampaignRequest) GoString() string {
16537	return s.String()
16538}
16539
16540// SetAdditionalTreatments sets the AdditionalTreatments field's value.
16541func (s *WriteCampaignRequest) SetAdditionalTreatments(v []*WriteTreatmentResource) *WriteCampaignRequest {
16542	s.AdditionalTreatments = v
16543	return s
16544}
16545
16546// SetDescription sets the Description field's value.
16547func (s *WriteCampaignRequest) SetDescription(v string) *WriteCampaignRequest {
16548	s.Description = &v
16549	return s
16550}
16551
16552// SetHoldoutPercent sets the HoldoutPercent field's value.
16553func (s *WriteCampaignRequest) SetHoldoutPercent(v int64) *WriteCampaignRequest {
16554	s.HoldoutPercent = &v
16555	return s
16556}
16557
16558// SetHook sets the Hook field's value.
16559func (s *WriteCampaignRequest) SetHook(v *CampaignHook) *WriteCampaignRequest {
16560	s.Hook = v
16561	return s
16562}
16563
16564// SetIsPaused sets the IsPaused field's value.
16565func (s *WriteCampaignRequest) SetIsPaused(v bool) *WriteCampaignRequest {
16566	s.IsPaused = &v
16567	return s
16568}
16569
16570// SetLimits sets the Limits field's value.
16571func (s *WriteCampaignRequest) SetLimits(v *CampaignLimits) *WriteCampaignRequest {
16572	s.Limits = v
16573	return s
16574}
16575
16576// SetMessageConfiguration sets the MessageConfiguration field's value.
16577func (s *WriteCampaignRequest) SetMessageConfiguration(v *MessageConfiguration) *WriteCampaignRequest {
16578	s.MessageConfiguration = v
16579	return s
16580}
16581
16582// SetName sets the Name field's value.
16583func (s *WriteCampaignRequest) SetName(v string) *WriteCampaignRequest {
16584	s.Name = &v
16585	return s
16586}
16587
16588// SetSchedule sets the Schedule field's value.
16589func (s *WriteCampaignRequest) SetSchedule(v *Schedule) *WriteCampaignRequest {
16590	s.Schedule = v
16591	return s
16592}
16593
16594// SetSegmentId sets the SegmentId field's value.
16595func (s *WriteCampaignRequest) SetSegmentId(v string) *WriteCampaignRequest {
16596	s.SegmentId = &v
16597	return s
16598}
16599
16600// SetSegmentVersion sets the SegmentVersion field's value.
16601func (s *WriteCampaignRequest) SetSegmentVersion(v int64) *WriteCampaignRequest {
16602	s.SegmentVersion = &v
16603	return s
16604}
16605
16606// SetTreatmentDescription sets the TreatmentDescription field's value.
16607func (s *WriteCampaignRequest) SetTreatmentDescription(v string) *WriteCampaignRequest {
16608	s.TreatmentDescription = &v
16609	return s
16610}
16611
16612// SetTreatmentName sets the TreatmentName field's value.
16613func (s *WriteCampaignRequest) SetTreatmentName(v string) *WriteCampaignRequest {
16614	s.TreatmentName = &v
16615	return s
16616}
16617
16618// Request to save an EventStream.
16619type WriteEventStream struct {
16620	_ struct{} `type:"structure"`
16621
16622	// The Amazon Resource Name (ARN) of the Amazon Kinesis stream or Firehose delivery
16623	// stream to which you want to publish events. Firehose ARN: arn:aws:firehose:REGION:ACCOUNT_ID:deliverystream/STREAM_NAME
16624	// Kinesis ARN: arn:aws:kinesis:REGION:ACCOUNT_ID:stream/STREAM_NAME
16625	DestinationStreamArn *string `type:"string"`
16626
16627	// The IAM role that authorizes Amazon Pinpoint to publish events to the stream
16628	// in your account.
16629	RoleArn *string `type:"string"`
16630}
16631
16632// String returns the string representation
16633func (s WriteEventStream) String() string {
16634	return awsutil.Prettify(s)
16635}
16636
16637// GoString returns the string representation
16638func (s WriteEventStream) GoString() string {
16639	return s.String()
16640}
16641
16642// SetDestinationStreamArn sets the DestinationStreamArn field's value.
16643func (s *WriteEventStream) SetDestinationStreamArn(v string) *WriteEventStream {
16644	s.DestinationStreamArn = &v
16645	return s
16646}
16647
16648// SetRoleArn sets the RoleArn field's value.
16649func (s *WriteEventStream) SetRoleArn(v string) *WriteEventStream {
16650	s.RoleArn = &v
16651	return s
16652}
16653
16654// Segment definition.
16655type WriteSegmentRequest struct {
16656	_ struct{} `type:"structure"`
16657
16658	// The segment dimensions attributes.
16659	Dimensions *SegmentDimensions `type:"structure"`
16660
16661	// The name of segment
16662	Name *string `type:"string"`
16663}
16664
16665// String returns the string representation
16666func (s WriteSegmentRequest) String() string {
16667	return awsutil.Prettify(s)
16668}
16669
16670// GoString returns the string representation
16671func (s WriteSegmentRequest) GoString() string {
16672	return s.String()
16673}
16674
16675// SetDimensions sets the Dimensions field's value.
16676func (s *WriteSegmentRequest) SetDimensions(v *SegmentDimensions) *WriteSegmentRequest {
16677	s.Dimensions = v
16678	return s
16679}
16680
16681// SetName sets the Name field's value.
16682func (s *WriteSegmentRequest) SetName(v string) *WriteSegmentRequest {
16683	s.Name = &v
16684	return s
16685}
16686
16687// Used to create a campaign treatment.
16688type WriteTreatmentResource struct {
16689	_ struct{} `type:"structure"`
16690
16691	// The message configuration settings.
16692	MessageConfiguration *MessageConfiguration `type:"structure"`
16693
16694	// The campaign schedule.
16695	Schedule *Schedule `type:"structure"`
16696
16697	// The allocated percentage of users for this treatment.
16698	SizePercent *int64 `type:"integer"`
16699
16700	// A custom description for the treatment.
16701	TreatmentDescription *string `type:"string"`
16702
16703	// The custom name of a variation of the campaign used for A/B testing.
16704	TreatmentName *string `type:"string"`
16705}
16706
16707// String returns the string representation
16708func (s WriteTreatmentResource) String() string {
16709	return awsutil.Prettify(s)
16710}
16711
16712// GoString returns the string representation
16713func (s WriteTreatmentResource) GoString() string {
16714	return s.String()
16715}
16716
16717// SetMessageConfiguration sets the MessageConfiguration field's value.
16718func (s *WriteTreatmentResource) SetMessageConfiguration(v *MessageConfiguration) *WriteTreatmentResource {
16719	s.MessageConfiguration = v
16720	return s
16721}
16722
16723// SetSchedule sets the Schedule field's value.
16724func (s *WriteTreatmentResource) SetSchedule(v *Schedule) *WriteTreatmentResource {
16725	s.Schedule = v
16726	return s
16727}
16728
16729// SetSizePercent sets the SizePercent field's value.
16730func (s *WriteTreatmentResource) SetSizePercent(v int64) *WriteTreatmentResource {
16731	s.SizePercent = &v
16732	return s
16733}
16734
16735// SetTreatmentDescription sets the TreatmentDescription field's value.
16736func (s *WriteTreatmentResource) SetTreatmentDescription(v string) *WriteTreatmentResource {
16737	s.TreatmentDescription = &v
16738	return s
16739}
16740
16741// SetTreatmentName sets the TreatmentName field's value.
16742func (s *WriteTreatmentResource) SetTreatmentName(v string) *WriteTreatmentResource {
16743	s.TreatmentName = &v
16744	return s
16745}
16746
16747const (
16748	// ActionOpenApp is a Action enum value
16749	ActionOpenApp = "OPEN_APP"
16750
16751	// ActionDeepLink is a Action enum value
16752	ActionDeepLink = "DEEP_LINK"
16753
16754	// ActionUrl is a Action enum value
16755	ActionUrl = "URL"
16756)
16757
16758const (
16759	// AttributeTypeInclusive is a AttributeType enum value
16760	AttributeTypeInclusive = "INCLUSIVE"
16761
16762	// AttributeTypeExclusive is a AttributeType enum value
16763	AttributeTypeExclusive = "EXCLUSIVE"
16764)
16765
16766const (
16767	// CampaignStatusScheduled is a CampaignStatus enum value
16768	CampaignStatusScheduled = "SCHEDULED"
16769
16770	// CampaignStatusExecuting is a CampaignStatus enum value
16771	CampaignStatusExecuting = "EXECUTING"
16772
16773	// CampaignStatusPendingNextRun is a CampaignStatus enum value
16774	CampaignStatusPendingNextRun = "PENDING_NEXT_RUN"
16775
16776	// CampaignStatusCompleted is a CampaignStatus enum value
16777	CampaignStatusCompleted = "COMPLETED"
16778
16779	// CampaignStatusPaused is a CampaignStatus enum value
16780	CampaignStatusPaused = "PAUSED"
16781)
16782
16783const (
16784	// ChannelTypeGcm is a ChannelType enum value
16785	ChannelTypeGcm = "GCM"
16786
16787	// ChannelTypeApns is a ChannelType enum value
16788	ChannelTypeApns = "APNS"
16789
16790	// ChannelTypeApnsSandbox is a ChannelType enum value
16791	ChannelTypeApnsSandbox = "APNS_SANDBOX"
16792
16793	// ChannelTypeApnsVoip is a ChannelType enum value
16794	ChannelTypeApnsVoip = "APNS_VOIP"
16795
16796	// ChannelTypeApnsVoipSandbox is a ChannelType enum value
16797	ChannelTypeApnsVoipSandbox = "APNS_VOIP_SANDBOX"
16798
16799	// ChannelTypeAdm is a ChannelType enum value
16800	ChannelTypeAdm = "ADM"
16801
16802	// ChannelTypeSms is a ChannelType enum value
16803	ChannelTypeSms = "SMS"
16804
16805	// ChannelTypeEmail is a ChannelType enum value
16806	ChannelTypeEmail = "EMAIL"
16807
16808	// ChannelTypeBaidu is a ChannelType enum value
16809	ChannelTypeBaidu = "BAIDU"
16810
16811	// ChannelTypeCustom is a ChannelType enum value
16812	ChannelTypeCustom = "CUSTOM"
16813)
16814
16815const (
16816	// DeliveryStatusSuccessful is a DeliveryStatus enum value
16817	DeliveryStatusSuccessful = "SUCCESSFUL"
16818
16819	// DeliveryStatusThrottled is a DeliveryStatus enum value
16820	DeliveryStatusThrottled = "THROTTLED"
16821
16822	// DeliveryStatusTemporaryFailure is a DeliveryStatus enum value
16823	DeliveryStatusTemporaryFailure = "TEMPORARY_FAILURE"
16824
16825	// DeliveryStatusPermanentFailure is a DeliveryStatus enum value
16826	DeliveryStatusPermanentFailure = "PERMANENT_FAILURE"
16827
16828	// DeliveryStatusUnknownFailure is a DeliveryStatus enum value
16829	DeliveryStatusUnknownFailure = "UNKNOWN_FAILURE"
16830
16831	// DeliveryStatusOptOut is a DeliveryStatus enum value
16832	DeliveryStatusOptOut = "OPT_OUT"
16833
16834	// DeliveryStatusDuplicate is a DeliveryStatus enum value
16835	DeliveryStatusDuplicate = "DUPLICATE"
16836)
16837
16838const (
16839	// DimensionTypeInclusive is a DimensionType enum value
16840	DimensionTypeInclusive = "INCLUSIVE"
16841
16842	// DimensionTypeExclusive is a DimensionType enum value
16843	DimensionTypeExclusive = "EXCLUSIVE"
16844)
16845
16846const (
16847	// DurationHr24 is a Duration enum value
16848	DurationHr24 = "HR_24"
16849
16850	// DurationDay7 is a Duration enum value
16851	DurationDay7 = "DAY_7"
16852
16853	// DurationDay14 is a Duration enum value
16854	DurationDay14 = "DAY_14"
16855
16856	// DurationDay30 is a Duration enum value
16857	DurationDay30 = "DAY_30"
16858)
16859
16860const (
16861	// FormatCsv is a Format enum value
16862	FormatCsv = "CSV"
16863
16864	// FormatJson is a Format enum value
16865	FormatJson = "JSON"
16866)
16867
16868const (
16869	// FrequencyOnce is a Frequency enum value
16870	FrequencyOnce = "ONCE"
16871
16872	// FrequencyHourly is a Frequency enum value
16873	FrequencyHourly = "HOURLY"
16874
16875	// FrequencyDaily is a Frequency enum value
16876	FrequencyDaily = "DAILY"
16877
16878	// FrequencyWeekly is a Frequency enum value
16879	FrequencyWeekly = "WEEKLY"
16880
16881	// FrequencyMonthly is a Frequency enum value
16882	FrequencyMonthly = "MONTHLY"
16883)
16884
16885const (
16886	// JobStatusCreated is a JobStatus enum value
16887	JobStatusCreated = "CREATED"
16888
16889	// JobStatusInitializing is a JobStatus enum value
16890	JobStatusInitializing = "INITIALIZING"
16891
16892	// JobStatusProcessing is a JobStatus enum value
16893	JobStatusProcessing = "PROCESSING"
16894
16895	// JobStatusCompleting is a JobStatus enum value
16896	JobStatusCompleting = "COMPLETING"
16897
16898	// JobStatusCompleted is a JobStatus enum value
16899	JobStatusCompleted = "COMPLETED"
16900
16901	// JobStatusFailing is a JobStatus enum value
16902	JobStatusFailing = "FAILING"
16903
16904	// JobStatusFailed is a JobStatus enum value
16905	JobStatusFailed = "FAILED"
16906)
16907
16908const (
16909	// MessageTypeTransactional is a MessageType enum value
16910	MessageTypeTransactional = "TRANSACTIONAL"
16911
16912	// MessageTypePromotional is a MessageType enum value
16913	MessageTypePromotional = "PROMOTIONAL"
16914)
16915
16916const (
16917	// ModeDelivery is a Mode enum value
16918	ModeDelivery = "DELIVERY"
16919
16920	// ModeFilter is a Mode enum value
16921	ModeFilter = "FILTER"
16922)
16923
16924const (
16925	// RecencyTypeActive is a RecencyType enum value
16926	RecencyTypeActive = "ACTIVE"
16927
16928	// RecencyTypeInactive is a RecencyType enum value
16929	RecencyTypeInactive = "INACTIVE"
16930)
16931
16932const (
16933	// SegmentTypeDimensional is a SegmentType enum value
16934	SegmentTypeDimensional = "DIMENSIONAL"
16935
16936	// SegmentTypeImport is a SegmentType enum value
16937	SegmentTypeImport = "IMPORT"
16938)
16939