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//   Simple message object.
67//
68//   * ErrCodeInternalServerErrorException "InternalServerErrorException"
69//   Simple message object.
70//
71//   * ErrCodeForbiddenException "ForbiddenException"
72//   Simple message object.
73//
74//   * ErrCodeNotFoundException "NotFoundException"
75//   Simple message object.
76//
77//   * ErrCodeMethodNotAllowedException "MethodNotAllowedException"
78//   Simple message object.
79//
80//   * ErrCodeTooManyRequestsException "TooManyRequestsException"
81//   Simple message object.
82//
83// See also, https://docs.aws.amazon.com/goto/WebAPI/pinpoint-2016-12-01/CreateApp
84func (c *Pinpoint) CreateApp(input *CreateAppInput) (*CreateAppOutput, error) {
85	req, out := c.CreateAppRequest(input)
86	return out, req.Send()
87}
88
89// CreateAppWithContext is the same as CreateApp with the addition of
90// the ability to pass a context and additional request options.
91//
92// See CreateApp for details on how to use this API operation.
93//
94// The context must be non-nil and will be used for request cancellation. If
95// the context is nil a panic will occur. In the future the SDK may create
96// sub-contexts for http.Requests. See https://golang.org/pkg/context/
97// for more information on using Contexts.
98func (c *Pinpoint) CreateAppWithContext(ctx aws.Context, input *CreateAppInput, opts ...request.Option) (*CreateAppOutput, error) {
99	req, out := c.CreateAppRequest(input)
100	req.SetContext(ctx)
101	req.ApplyOptions(opts...)
102	return out, req.Send()
103}
104
105const opCreateCampaign = "CreateCampaign"
106
107// CreateCampaignRequest generates a "aws/request.Request" representing the
108// client's request for the CreateCampaign operation. The "output" return
109// value will be populated with the request's response once the request completes
110// successfuly.
111//
112// Use "Send" method on the returned Request to send the API call to the service.
113// the "output" return value is not valid until after Send returns without error.
114//
115// See CreateCampaign for more information on using the CreateCampaign
116// API call, and error handling.
117//
118// This method is useful when you want to inject custom logic or configuration
119// into the SDK's request lifecycle. Such as custom headers, or retry logic.
120//
121//
122//    // Example sending a request using the CreateCampaignRequest method.
123//    req, resp := client.CreateCampaignRequest(params)
124//
125//    err := req.Send()
126//    if err == nil { // resp is now filled
127//        fmt.Println(resp)
128//    }
129//
130// See also, https://docs.aws.amazon.com/goto/WebAPI/pinpoint-2016-12-01/CreateCampaign
131func (c *Pinpoint) CreateCampaignRequest(input *CreateCampaignInput) (req *request.Request, output *CreateCampaignOutput) {
132	op := &request.Operation{
133		Name:       opCreateCampaign,
134		HTTPMethod: "POST",
135		HTTPPath:   "/v1/apps/{application-id}/campaigns",
136	}
137
138	if input == nil {
139		input = &CreateCampaignInput{}
140	}
141
142	output = &CreateCampaignOutput{}
143	req = c.newRequest(op, input, output)
144	return
145}
146
147// CreateCampaign API operation for Amazon Pinpoint.
148//
149// Creates or updates a campaign.
150//
151// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
152// with awserr.Error's Code and Message methods to get detailed information about
153// the error.
154//
155// See the AWS API reference guide for Amazon Pinpoint's
156// API operation CreateCampaign for usage and error information.
157//
158// Returned Error Codes:
159//   * ErrCodeBadRequestException "BadRequestException"
160//   Simple message object.
161//
162//   * ErrCodeInternalServerErrorException "InternalServerErrorException"
163//   Simple message object.
164//
165//   * ErrCodeForbiddenException "ForbiddenException"
166//   Simple message object.
167//
168//   * ErrCodeNotFoundException "NotFoundException"
169//   Simple message object.
170//
171//   * ErrCodeMethodNotAllowedException "MethodNotAllowedException"
172//   Simple message object.
173//
174//   * ErrCodeTooManyRequestsException "TooManyRequestsException"
175//   Simple message object.
176//
177// See also, https://docs.aws.amazon.com/goto/WebAPI/pinpoint-2016-12-01/CreateCampaign
178func (c *Pinpoint) CreateCampaign(input *CreateCampaignInput) (*CreateCampaignOutput, error) {
179	req, out := c.CreateCampaignRequest(input)
180	return out, req.Send()
181}
182
183// CreateCampaignWithContext is the same as CreateCampaign with the addition of
184// the ability to pass a context and additional request options.
185//
186// See CreateCampaign for details on how to use this API operation.
187//
188// The context must be non-nil and will be used for request cancellation. If
189// the context is nil a panic will occur. In the future the SDK may create
190// sub-contexts for http.Requests. See https://golang.org/pkg/context/
191// for more information on using Contexts.
192func (c *Pinpoint) CreateCampaignWithContext(ctx aws.Context, input *CreateCampaignInput, opts ...request.Option) (*CreateCampaignOutput, error) {
193	req, out := c.CreateCampaignRequest(input)
194	req.SetContext(ctx)
195	req.ApplyOptions(opts...)
196	return out, req.Send()
197}
198
199const opCreateExportJob = "CreateExportJob"
200
201// CreateExportJobRequest generates a "aws/request.Request" representing the
202// client's request for the CreateExportJob operation. The "output" return
203// value will be populated with the request's response once the request completes
204// successfuly.
205//
206// Use "Send" method on the returned Request to send the API call to the service.
207// the "output" return value is not valid until after Send returns without error.
208//
209// See CreateExportJob for more information on using the CreateExportJob
210// API call, and error handling.
211//
212// This method is useful when you want to inject custom logic or configuration
213// into the SDK's request lifecycle. Such as custom headers, or retry logic.
214//
215//
216//    // Example sending a request using the CreateExportJobRequest method.
217//    req, resp := client.CreateExportJobRequest(params)
218//
219//    err := req.Send()
220//    if err == nil { // resp is now filled
221//        fmt.Println(resp)
222//    }
223//
224// See also, https://docs.aws.amazon.com/goto/WebAPI/pinpoint-2016-12-01/CreateExportJob
225func (c *Pinpoint) CreateExportJobRequest(input *CreateExportJobInput) (req *request.Request, output *CreateExportJobOutput) {
226	op := &request.Operation{
227		Name:       opCreateExportJob,
228		HTTPMethod: "POST",
229		HTTPPath:   "/v1/apps/{application-id}/jobs/export",
230	}
231
232	if input == nil {
233		input = &CreateExportJobInput{}
234	}
235
236	output = &CreateExportJobOutput{}
237	req = c.newRequest(op, input, output)
238	return
239}
240
241// CreateExportJob API operation for Amazon Pinpoint.
242//
243// Creates an export job.
244//
245// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
246// with awserr.Error's Code and Message methods to get detailed information about
247// the error.
248//
249// See the AWS API reference guide for Amazon Pinpoint's
250// API operation CreateExportJob for usage and error information.
251//
252// Returned Error Codes:
253//   * ErrCodeBadRequestException "BadRequestException"
254//   Simple message object.
255//
256//   * ErrCodeInternalServerErrorException "InternalServerErrorException"
257//   Simple message object.
258//
259//   * ErrCodeForbiddenException "ForbiddenException"
260//   Simple message object.
261//
262//   * ErrCodeNotFoundException "NotFoundException"
263//   Simple message object.
264//
265//   * ErrCodeMethodNotAllowedException "MethodNotAllowedException"
266//   Simple message object.
267//
268//   * ErrCodeTooManyRequestsException "TooManyRequestsException"
269//   Simple message object.
270//
271// See also, https://docs.aws.amazon.com/goto/WebAPI/pinpoint-2016-12-01/CreateExportJob
272func (c *Pinpoint) CreateExportJob(input *CreateExportJobInput) (*CreateExportJobOutput, error) {
273	req, out := c.CreateExportJobRequest(input)
274	return out, req.Send()
275}
276
277// CreateExportJobWithContext is the same as CreateExportJob with the addition of
278// the ability to pass a context and additional request options.
279//
280// See CreateExportJob for details on how to use this API operation.
281//
282// The context must be non-nil and will be used for request cancellation. If
283// the context is nil a panic will occur. In the future the SDK may create
284// sub-contexts for http.Requests. See https://golang.org/pkg/context/
285// for more information on using Contexts.
286func (c *Pinpoint) CreateExportJobWithContext(ctx aws.Context, input *CreateExportJobInput, opts ...request.Option) (*CreateExportJobOutput, error) {
287	req, out := c.CreateExportJobRequest(input)
288	req.SetContext(ctx)
289	req.ApplyOptions(opts...)
290	return out, req.Send()
291}
292
293const opCreateImportJob = "CreateImportJob"
294
295// CreateImportJobRequest generates a "aws/request.Request" representing the
296// client's request for the CreateImportJob operation. The "output" return
297// value will be populated with the request's response once the request completes
298// successfuly.
299//
300// Use "Send" method on the returned Request to send the API call to the service.
301// the "output" return value is not valid until after Send returns without error.
302//
303// See CreateImportJob for more information on using the CreateImportJob
304// API call, and error handling.
305//
306// This method is useful when you want to inject custom logic or configuration
307// into the SDK's request lifecycle. Such as custom headers, or retry logic.
308//
309//
310//    // Example sending a request using the CreateImportJobRequest method.
311//    req, resp := client.CreateImportJobRequest(params)
312//
313//    err := req.Send()
314//    if err == nil { // resp is now filled
315//        fmt.Println(resp)
316//    }
317//
318// See also, https://docs.aws.amazon.com/goto/WebAPI/pinpoint-2016-12-01/CreateImportJob
319func (c *Pinpoint) CreateImportJobRequest(input *CreateImportJobInput) (req *request.Request, output *CreateImportJobOutput) {
320	op := &request.Operation{
321		Name:       opCreateImportJob,
322		HTTPMethod: "POST",
323		HTTPPath:   "/v1/apps/{application-id}/jobs/import",
324	}
325
326	if input == nil {
327		input = &CreateImportJobInput{}
328	}
329
330	output = &CreateImportJobOutput{}
331	req = c.newRequest(op, input, output)
332	return
333}
334
335// CreateImportJob API operation for Amazon Pinpoint.
336//
337// Creates or updates an import job.
338//
339// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
340// with awserr.Error's Code and Message methods to get detailed information about
341// the error.
342//
343// See the AWS API reference guide for Amazon Pinpoint's
344// API operation CreateImportJob for usage and error information.
345//
346// Returned Error Codes:
347//   * ErrCodeBadRequestException "BadRequestException"
348//   Simple message object.
349//
350//   * ErrCodeInternalServerErrorException "InternalServerErrorException"
351//   Simple message object.
352//
353//   * ErrCodeForbiddenException "ForbiddenException"
354//   Simple message object.
355//
356//   * ErrCodeNotFoundException "NotFoundException"
357//   Simple message object.
358//
359//   * ErrCodeMethodNotAllowedException "MethodNotAllowedException"
360//   Simple message object.
361//
362//   * ErrCodeTooManyRequestsException "TooManyRequestsException"
363//   Simple message object.
364//
365// See also, https://docs.aws.amazon.com/goto/WebAPI/pinpoint-2016-12-01/CreateImportJob
366func (c *Pinpoint) CreateImportJob(input *CreateImportJobInput) (*CreateImportJobOutput, error) {
367	req, out := c.CreateImportJobRequest(input)
368	return out, req.Send()
369}
370
371// CreateImportJobWithContext is the same as CreateImportJob with the addition of
372// the ability to pass a context and additional request options.
373//
374// See CreateImportJob for details on how to use this API operation.
375//
376// The context must be non-nil and will be used for request cancellation. If
377// the context is nil a panic will occur. In the future the SDK may create
378// sub-contexts for http.Requests. See https://golang.org/pkg/context/
379// for more information on using Contexts.
380func (c *Pinpoint) CreateImportJobWithContext(ctx aws.Context, input *CreateImportJobInput, opts ...request.Option) (*CreateImportJobOutput, error) {
381	req, out := c.CreateImportJobRequest(input)
382	req.SetContext(ctx)
383	req.ApplyOptions(opts...)
384	return out, req.Send()
385}
386
387const opCreateSegment = "CreateSegment"
388
389// CreateSegmentRequest generates a "aws/request.Request" representing the
390// client's request for the CreateSegment operation. The "output" return
391// value will be populated with the request's response once the request completes
392// successfuly.
393//
394// Use "Send" method on the returned Request to send the API call to the service.
395// the "output" return value is not valid until after Send returns without error.
396//
397// See CreateSegment for more information on using the CreateSegment
398// API call, and error handling.
399//
400// This method is useful when you want to inject custom logic or configuration
401// into the SDK's request lifecycle. Such as custom headers, or retry logic.
402//
403//
404//    // Example sending a request using the CreateSegmentRequest method.
405//    req, resp := client.CreateSegmentRequest(params)
406//
407//    err := req.Send()
408//    if err == nil { // resp is now filled
409//        fmt.Println(resp)
410//    }
411//
412// See also, https://docs.aws.amazon.com/goto/WebAPI/pinpoint-2016-12-01/CreateSegment
413func (c *Pinpoint) CreateSegmentRequest(input *CreateSegmentInput) (req *request.Request, output *CreateSegmentOutput) {
414	op := &request.Operation{
415		Name:       opCreateSegment,
416		HTTPMethod: "POST",
417		HTTPPath:   "/v1/apps/{application-id}/segments",
418	}
419
420	if input == nil {
421		input = &CreateSegmentInput{}
422	}
423
424	output = &CreateSegmentOutput{}
425	req = c.newRequest(op, input, output)
426	return
427}
428
429// CreateSegment API operation for Amazon Pinpoint.
430//
431// Used to create or update a segment.
432//
433// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
434// with awserr.Error's Code and Message methods to get detailed information about
435// the error.
436//
437// See the AWS API reference guide for Amazon Pinpoint's
438// API operation CreateSegment for usage and error information.
439//
440// Returned Error Codes:
441//   * ErrCodeBadRequestException "BadRequestException"
442//   Simple message object.
443//
444//   * ErrCodeInternalServerErrorException "InternalServerErrorException"
445//   Simple message object.
446//
447//   * ErrCodeForbiddenException "ForbiddenException"
448//   Simple message object.
449//
450//   * ErrCodeNotFoundException "NotFoundException"
451//   Simple message object.
452//
453//   * ErrCodeMethodNotAllowedException "MethodNotAllowedException"
454//   Simple message object.
455//
456//   * ErrCodeTooManyRequestsException "TooManyRequestsException"
457//   Simple message object.
458//
459// See also, https://docs.aws.amazon.com/goto/WebAPI/pinpoint-2016-12-01/CreateSegment
460func (c *Pinpoint) CreateSegment(input *CreateSegmentInput) (*CreateSegmentOutput, error) {
461	req, out := c.CreateSegmentRequest(input)
462	return out, req.Send()
463}
464
465// CreateSegmentWithContext is the same as CreateSegment with the addition of
466// the ability to pass a context and additional request options.
467//
468// See CreateSegment for details on how to use this API operation.
469//
470// The context must be non-nil and will be used for request cancellation. If
471// the context is nil a panic will occur. In the future the SDK may create
472// sub-contexts for http.Requests. See https://golang.org/pkg/context/
473// for more information on using Contexts.
474func (c *Pinpoint) CreateSegmentWithContext(ctx aws.Context, input *CreateSegmentInput, opts ...request.Option) (*CreateSegmentOutput, error) {
475	req, out := c.CreateSegmentRequest(input)
476	req.SetContext(ctx)
477	req.ApplyOptions(opts...)
478	return out, req.Send()
479}
480
481const opDeleteAdmChannel = "DeleteAdmChannel"
482
483// DeleteAdmChannelRequest generates a "aws/request.Request" representing the
484// client's request for the DeleteAdmChannel operation. The "output" return
485// value will be populated with the request's response once the request completes
486// successfuly.
487//
488// Use "Send" method on the returned Request to send the API call to the service.
489// the "output" return value is not valid until after Send returns without error.
490//
491// See DeleteAdmChannel for more information on using the DeleteAdmChannel
492// API call, and error handling.
493//
494// This method is useful when you want to inject custom logic or configuration
495// into the SDK's request lifecycle. Such as custom headers, or retry logic.
496//
497//
498//    // Example sending a request using the DeleteAdmChannelRequest method.
499//    req, resp := client.DeleteAdmChannelRequest(params)
500//
501//    err := req.Send()
502//    if err == nil { // resp is now filled
503//        fmt.Println(resp)
504//    }
505//
506// See also, https://docs.aws.amazon.com/goto/WebAPI/pinpoint-2016-12-01/DeleteAdmChannel
507func (c *Pinpoint) DeleteAdmChannelRequest(input *DeleteAdmChannelInput) (req *request.Request, output *DeleteAdmChannelOutput) {
508	op := &request.Operation{
509		Name:       opDeleteAdmChannel,
510		HTTPMethod: "DELETE",
511		HTTPPath:   "/v1/apps/{application-id}/channels/adm",
512	}
513
514	if input == nil {
515		input = &DeleteAdmChannelInput{}
516	}
517
518	output = &DeleteAdmChannelOutput{}
519	req = c.newRequest(op, input, output)
520	return
521}
522
523// DeleteAdmChannel API operation for Amazon Pinpoint.
524//
525// Delete an ADM channel.
526//
527// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
528// with awserr.Error's Code and Message methods to get detailed information about
529// the error.
530//
531// See the AWS API reference guide for Amazon Pinpoint's
532// API operation DeleteAdmChannel for usage and error information.
533//
534// Returned Error Codes:
535//   * ErrCodeBadRequestException "BadRequestException"
536//   Simple message object.
537//
538//   * ErrCodeInternalServerErrorException "InternalServerErrorException"
539//   Simple message object.
540//
541//   * ErrCodeForbiddenException "ForbiddenException"
542//   Simple message object.
543//
544//   * ErrCodeNotFoundException "NotFoundException"
545//   Simple message object.
546//
547//   * ErrCodeMethodNotAllowedException "MethodNotAllowedException"
548//   Simple message object.
549//
550//   * ErrCodeTooManyRequestsException "TooManyRequestsException"
551//   Simple message object.
552//
553// See also, https://docs.aws.amazon.com/goto/WebAPI/pinpoint-2016-12-01/DeleteAdmChannel
554func (c *Pinpoint) DeleteAdmChannel(input *DeleteAdmChannelInput) (*DeleteAdmChannelOutput, error) {
555	req, out := c.DeleteAdmChannelRequest(input)
556	return out, req.Send()
557}
558
559// DeleteAdmChannelWithContext is the same as DeleteAdmChannel with the addition of
560// the ability to pass a context and additional request options.
561//
562// See DeleteAdmChannel for details on how to use this API operation.
563//
564// The context must be non-nil and will be used for request cancellation. If
565// the context is nil a panic will occur. In the future the SDK may create
566// sub-contexts for http.Requests. See https://golang.org/pkg/context/
567// for more information on using Contexts.
568func (c *Pinpoint) DeleteAdmChannelWithContext(ctx aws.Context, input *DeleteAdmChannelInput, opts ...request.Option) (*DeleteAdmChannelOutput, error) {
569	req, out := c.DeleteAdmChannelRequest(input)
570	req.SetContext(ctx)
571	req.ApplyOptions(opts...)
572	return out, req.Send()
573}
574
575const opDeleteApnsChannel = "DeleteApnsChannel"
576
577// DeleteApnsChannelRequest generates a "aws/request.Request" representing the
578// client's request for the DeleteApnsChannel operation. The "output" return
579// value will be populated with the request's response once the request completes
580// successfuly.
581//
582// Use "Send" method on the returned Request to send the API call to the service.
583// the "output" return value is not valid until after Send returns without error.
584//
585// See DeleteApnsChannel for more information on using the DeleteApnsChannel
586// API call, and error handling.
587//
588// This method is useful when you want to inject custom logic or configuration
589// into the SDK's request lifecycle. Such as custom headers, or retry logic.
590//
591//
592//    // Example sending a request using the DeleteApnsChannelRequest method.
593//    req, resp := client.DeleteApnsChannelRequest(params)
594//
595//    err := req.Send()
596//    if err == nil { // resp is now filled
597//        fmt.Println(resp)
598//    }
599//
600// See also, https://docs.aws.amazon.com/goto/WebAPI/pinpoint-2016-12-01/DeleteApnsChannel
601func (c *Pinpoint) DeleteApnsChannelRequest(input *DeleteApnsChannelInput) (req *request.Request, output *DeleteApnsChannelOutput) {
602	op := &request.Operation{
603		Name:       opDeleteApnsChannel,
604		HTTPMethod: "DELETE",
605		HTTPPath:   "/v1/apps/{application-id}/channels/apns",
606	}
607
608	if input == nil {
609		input = &DeleteApnsChannelInput{}
610	}
611
612	output = &DeleteApnsChannelOutput{}
613	req = c.newRequest(op, input, output)
614	return
615}
616
617// DeleteApnsChannel API operation for Amazon Pinpoint.
618//
619// Deletes the APNs channel for an app.
620//
621// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
622// with awserr.Error's Code and Message methods to get detailed information about
623// the error.
624//
625// See the AWS API reference guide for Amazon Pinpoint's
626// API operation DeleteApnsChannel for usage and error information.
627//
628// Returned Error Codes:
629//   * ErrCodeBadRequestException "BadRequestException"
630//   Simple message object.
631//
632//   * ErrCodeInternalServerErrorException "InternalServerErrorException"
633//   Simple message object.
634//
635//   * ErrCodeForbiddenException "ForbiddenException"
636//   Simple message object.
637//
638//   * ErrCodeNotFoundException "NotFoundException"
639//   Simple message object.
640//
641//   * ErrCodeMethodNotAllowedException "MethodNotAllowedException"
642//   Simple message object.
643//
644//   * ErrCodeTooManyRequestsException "TooManyRequestsException"
645//   Simple message object.
646//
647// See also, https://docs.aws.amazon.com/goto/WebAPI/pinpoint-2016-12-01/DeleteApnsChannel
648func (c *Pinpoint) DeleteApnsChannel(input *DeleteApnsChannelInput) (*DeleteApnsChannelOutput, error) {
649	req, out := c.DeleteApnsChannelRequest(input)
650	return out, req.Send()
651}
652
653// DeleteApnsChannelWithContext is the same as DeleteApnsChannel with the addition of
654// the ability to pass a context and additional request options.
655//
656// See DeleteApnsChannel for details on how to use this API operation.
657//
658// The context must be non-nil and will be used for request cancellation. If
659// the context is nil a panic will occur. In the future the SDK may create
660// sub-contexts for http.Requests. See https://golang.org/pkg/context/
661// for more information on using Contexts.
662func (c *Pinpoint) DeleteApnsChannelWithContext(ctx aws.Context, input *DeleteApnsChannelInput, opts ...request.Option) (*DeleteApnsChannelOutput, error) {
663	req, out := c.DeleteApnsChannelRequest(input)
664	req.SetContext(ctx)
665	req.ApplyOptions(opts...)
666	return out, req.Send()
667}
668
669const opDeleteApnsSandboxChannel = "DeleteApnsSandboxChannel"
670
671// DeleteApnsSandboxChannelRequest generates a "aws/request.Request" representing the
672// client's request for the DeleteApnsSandboxChannel operation. The "output" return
673// value will be populated with the request's response once the request completes
674// successfuly.
675//
676// Use "Send" method on the returned Request to send the API call to the service.
677// the "output" return value is not valid until after Send returns without error.
678//
679// See DeleteApnsSandboxChannel for more information on using the DeleteApnsSandboxChannel
680// API call, and error handling.
681//
682// This method is useful when you want to inject custom logic or configuration
683// into the SDK's request lifecycle. Such as custom headers, or retry logic.
684//
685//
686//    // Example sending a request using the DeleteApnsSandboxChannelRequest method.
687//    req, resp := client.DeleteApnsSandboxChannelRequest(params)
688//
689//    err := req.Send()
690//    if err == nil { // resp is now filled
691//        fmt.Println(resp)
692//    }
693//
694// See also, https://docs.aws.amazon.com/goto/WebAPI/pinpoint-2016-12-01/DeleteApnsSandboxChannel
695func (c *Pinpoint) DeleteApnsSandboxChannelRequest(input *DeleteApnsSandboxChannelInput) (req *request.Request, output *DeleteApnsSandboxChannelOutput) {
696	op := &request.Operation{
697		Name:       opDeleteApnsSandboxChannel,
698		HTTPMethod: "DELETE",
699		HTTPPath:   "/v1/apps/{application-id}/channels/apns_sandbox",
700	}
701
702	if input == nil {
703		input = &DeleteApnsSandboxChannelInput{}
704	}
705
706	output = &DeleteApnsSandboxChannelOutput{}
707	req = c.newRequest(op, input, output)
708	return
709}
710
711// DeleteApnsSandboxChannel API operation for Amazon Pinpoint.
712//
713// Delete an APNS sandbox channel.
714//
715// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
716// with awserr.Error's Code and Message methods to get detailed information about
717// the error.
718//
719// See the AWS API reference guide for Amazon Pinpoint's
720// API operation DeleteApnsSandboxChannel for usage and error information.
721//
722// Returned Error Codes:
723//   * ErrCodeBadRequestException "BadRequestException"
724//   Simple message object.
725//
726//   * ErrCodeInternalServerErrorException "InternalServerErrorException"
727//   Simple message object.
728//
729//   * ErrCodeForbiddenException "ForbiddenException"
730//   Simple message object.
731//
732//   * ErrCodeNotFoundException "NotFoundException"
733//   Simple message object.
734//
735//   * ErrCodeMethodNotAllowedException "MethodNotAllowedException"
736//   Simple message object.
737//
738//   * ErrCodeTooManyRequestsException "TooManyRequestsException"
739//   Simple message object.
740//
741// See also, https://docs.aws.amazon.com/goto/WebAPI/pinpoint-2016-12-01/DeleteApnsSandboxChannel
742func (c *Pinpoint) DeleteApnsSandboxChannel(input *DeleteApnsSandboxChannelInput) (*DeleteApnsSandboxChannelOutput, error) {
743	req, out := c.DeleteApnsSandboxChannelRequest(input)
744	return out, req.Send()
745}
746
747// DeleteApnsSandboxChannelWithContext is the same as DeleteApnsSandboxChannel with the addition of
748// the ability to pass a context and additional request options.
749//
750// See DeleteApnsSandboxChannel for details on how to use this API operation.
751//
752// The context must be non-nil and will be used for request cancellation. If
753// the context is nil a panic will occur. In the future the SDK may create
754// sub-contexts for http.Requests. See https://golang.org/pkg/context/
755// for more information on using Contexts.
756func (c *Pinpoint) DeleteApnsSandboxChannelWithContext(ctx aws.Context, input *DeleteApnsSandboxChannelInput, opts ...request.Option) (*DeleteApnsSandboxChannelOutput, error) {
757	req, out := c.DeleteApnsSandboxChannelRequest(input)
758	req.SetContext(ctx)
759	req.ApplyOptions(opts...)
760	return out, req.Send()
761}
762
763const opDeleteApnsVoipChannel = "DeleteApnsVoipChannel"
764
765// DeleteApnsVoipChannelRequest generates a "aws/request.Request" representing the
766// client's request for the DeleteApnsVoipChannel operation. The "output" return
767// value will be populated with the request's response once the request completes
768// successfuly.
769//
770// Use "Send" method on the returned Request to send the API call to the service.
771// the "output" return value is not valid until after Send returns without error.
772//
773// See DeleteApnsVoipChannel for more information on using the DeleteApnsVoipChannel
774// API call, and error handling.
775//
776// This method is useful when you want to inject custom logic or configuration
777// into the SDK's request lifecycle. Such as custom headers, or retry logic.
778//
779//
780//    // Example sending a request using the DeleteApnsVoipChannelRequest method.
781//    req, resp := client.DeleteApnsVoipChannelRequest(params)
782//
783//    err := req.Send()
784//    if err == nil { // resp is now filled
785//        fmt.Println(resp)
786//    }
787//
788// See also, https://docs.aws.amazon.com/goto/WebAPI/pinpoint-2016-12-01/DeleteApnsVoipChannel
789func (c *Pinpoint) DeleteApnsVoipChannelRequest(input *DeleteApnsVoipChannelInput) (req *request.Request, output *DeleteApnsVoipChannelOutput) {
790	op := &request.Operation{
791		Name:       opDeleteApnsVoipChannel,
792		HTTPMethod: "DELETE",
793		HTTPPath:   "/v1/apps/{application-id}/channels/apns_voip",
794	}
795
796	if input == nil {
797		input = &DeleteApnsVoipChannelInput{}
798	}
799
800	output = &DeleteApnsVoipChannelOutput{}
801	req = c.newRequest(op, input, output)
802	return
803}
804
805// DeleteApnsVoipChannel API operation for Amazon Pinpoint.
806//
807// Delete an APNS VoIP channel
808//
809// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
810// with awserr.Error's Code and Message methods to get detailed information about
811// the error.
812//
813// See the AWS API reference guide for Amazon Pinpoint's
814// API operation DeleteApnsVoipChannel for usage and error information.
815//
816// Returned Error Codes:
817//   * ErrCodeBadRequestException "BadRequestException"
818//   Simple message object.
819//
820//   * ErrCodeInternalServerErrorException "InternalServerErrorException"
821//   Simple message object.
822//
823//   * ErrCodeForbiddenException "ForbiddenException"
824//   Simple message object.
825//
826//   * ErrCodeNotFoundException "NotFoundException"
827//   Simple message object.
828//
829//   * ErrCodeMethodNotAllowedException "MethodNotAllowedException"
830//   Simple message object.
831//
832//   * ErrCodeTooManyRequestsException "TooManyRequestsException"
833//   Simple message object.
834//
835// See also, https://docs.aws.amazon.com/goto/WebAPI/pinpoint-2016-12-01/DeleteApnsVoipChannel
836func (c *Pinpoint) DeleteApnsVoipChannel(input *DeleteApnsVoipChannelInput) (*DeleteApnsVoipChannelOutput, error) {
837	req, out := c.DeleteApnsVoipChannelRequest(input)
838	return out, req.Send()
839}
840
841// DeleteApnsVoipChannelWithContext is the same as DeleteApnsVoipChannel with the addition of
842// the ability to pass a context and additional request options.
843//
844// See DeleteApnsVoipChannel for details on how to use this API operation.
845//
846// The context must be non-nil and will be used for request cancellation. If
847// the context is nil a panic will occur. In the future the SDK may create
848// sub-contexts for http.Requests. See https://golang.org/pkg/context/
849// for more information on using Contexts.
850func (c *Pinpoint) DeleteApnsVoipChannelWithContext(ctx aws.Context, input *DeleteApnsVoipChannelInput, opts ...request.Option) (*DeleteApnsVoipChannelOutput, error) {
851	req, out := c.DeleteApnsVoipChannelRequest(input)
852	req.SetContext(ctx)
853	req.ApplyOptions(opts...)
854	return out, req.Send()
855}
856
857const opDeleteApnsVoipSandboxChannel = "DeleteApnsVoipSandboxChannel"
858
859// DeleteApnsVoipSandboxChannelRequest generates a "aws/request.Request" representing the
860// client's request for the DeleteApnsVoipSandboxChannel operation. The "output" return
861// value will be populated with the request's response once the request completes
862// successfuly.
863//
864// Use "Send" method on the returned Request to send the API call to the service.
865// the "output" return value is not valid until after Send returns without error.
866//
867// See DeleteApnsVoipSandboxChannel for more information on using the DeleteApnsVoipSandboxChannel
868// API call, and error handling.
869//
870// This method is useful when you want to inject custom logic or configuration
871// into the SDK's request lifecycle. Such as custom headers, or retry logic.
872//
873//
874//    // Example sending a request using the DeleteApnsVoipSandboxChannelRequest method.
875//    req, resp := client.DeleteApnsVoipSandboxChannelRequest(params)
876//
877//    err := req.Send()
878//    if err == nil { // resp is now filled
879//        fmt.Println(resp)
880//    }
881//
882// See also, https://docs.aws.amazon.com/goto/WebAPI/pinpoint-2016-12-01/DeleteApnsVoipSandboxChannel
883func (c *Pinpoint) DeleteApnsVoipSandboxChannelRequest(input *DeleteApnsVoipSandboxChannelInput) (req *request.Request, output *DeleteApnsVoipSandboxChannelOutput) {
884	op := &request.Operation{
885		Name:       opDeleteApnsVoipSandboxChannel,
886		HTTPMethod: "DELETE",
887		HTTPPath:   "/v1/apps/{application-id}/channels/apns_voip_sandbox",
888	}
889
890	if input == nil {
891		input = &DeleteApnsVoipSandboxChannelInput{}
892	}
893
894	output = &DeleteApnsVoipSandboxChannelOutput{}
895	req = c.newRequest(op, input, output)
896	return
897}
898
899// DeleteApnsVoipSandboxChannel API operation for Amazon Pinpoint.
900//
901// Delete an APNS VoIP sandbox channel
902//
903// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
904// with awserr.Error's Code and Message methods to get detailed information about
905// the error.
906//
907// See the AWS API reference guide for Amazon Pinpoint's
908// API operation DeleteApnsVoipSandboxChannel for usage and error information.
909//
910// Returned Error Codes:
911//   * ErrCodeBadRequestException "BadRequestException"
912//   Simple message object.
913//
914//   * ErrCodeInternalServerErrorException "InternalServerErrorException"
915//   Simple message object.
916//
917//   * ErrCodeForbiddenException "ForbiddenException"
918//   Simple message object.
919//
920//   * ErrCodeNotFoundException "NotFoundException"
921//   Simple message object.
922//
923//   * ErrCodeMethodNotAllowedException "MethodNotAllowedException"
924//   Simple message object.
925//
926//   * ErrCodeTooManyRequestsException "TooManyRequestsException"
927//   Simple message object.
928//
929// See also, https://docs.aws.amazon.com/goto/WebAPI/pinpoint-2016-12-01/DeleteApnsVoipSandboxChannel
930func (c *Pinpoint) DeleteApnsVoipSandboxChannel(input *DeleteApnsVoipSandboxChannelInput) (*DeleteApnsVoipSandboxChannelOutput, error) {
931	req, out := c.DeleteApnsVoipSandboxChannelRequest(input)
932	return out, req.Send()
933}
934
935// DeleteApnsVoipSandboxChannelWithContext is the same as DeleteApnsVoipSandboxChannel with the addition of
936// the ability to pass a context and additional request options.
937//
938// See DeleteApnsVoipSandboxChannel for details on how to use this API operation.
939//
940// The context must be non-nil and will be used for request cancellation. If
941// the context is nil a panic will occur. In the future the SDK may create
942// sub-contexts for http.Requests. See https://golang.org/pkg/context/
943// for more information on using Contexts.
944func (c *Pinpoint) DeleteApnsVoipSandboxChannelWithContext(ctx aws.Context, input *DeleteApnsVoipSandboxChannelInput, opts ...request.Option) (*DeleteApnsVoipSandboxChannelOutput, error) {
945	req, out := c.DeleteApnsVoipSandboxChannelRequest(input)
946	req.SetContext(ctx)
947	req.ApplyOptions(opts...)
948	return out, req.Send()
949}
950
951const opDeleteApp = "DeleteApp"
952
953// DeleteAppRequest generates a "aws/request.Request" representing the
954// client's request for the DeleteApp operation. The "output" return
955// value will be populated with the request's response once the request completes
956// successfuly.
957//
958// Use "Send" method on the returned Request to send the API call to the service.
959// the "output" return value is not valid until after Send returns without error.
960//
961// See DeleteApp for more information on using the DeleteApp
962// API call, and error handling.
963//
964// This method is useful when you want to inject custom logic or configuration
965// into the SDK's request lifecycle. Such as custom headers, or retry logic.
966//
967//
968//    // Example sending a request using the DeleteAppRequest method.
969//    req, resp := client.DeleteAppRequest(params)
970//
971//    err := req.Send()
972//    if err == nil { // resp is now filled
973//        fmt.Println(resp)
974//    }
975//
976// See also, https://docs.aws.amazon.com/goto/WebAPI/pinpoint-2016-12-01/DeleteApp
977func (c *Pinpoint) DeleteAppRequest(input *DeleteAppInput) (req *request.Request, output *DeleteAppOutput) {
978	op := &request.Operation{
979		Name:       opDeleteApp,
980		HTTPMethod: "DELETE",
981		HTTPPath:   "/v1/apps/{application-id}",
982	}
983
984	if input == nil {
985		input = &DeleteAppInput{}
986	}
987
988	output = &DeleteAppOutput{}
989	req = c.newRequest(op, input, output)
990	return
991}
992
993// DeleteApp API operation for Amazon Pinpoint.
994//
995// Deletes an app.
996//
997// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
998// with awserr.Error's Code and Message methods to get detailed information about
999// the error.
1000//
1001// See the AWS API reference guide for Amazon Pinpoint's
1002// API operation DeleteApp for usage and error information.
1003//
1004// Returned Error Codes:
1005//   * ErrCodeBadRequestException "BadRequestException"
1006//   Simple message object.
1007//
1008//   * ErrCodeInternalServerErrorException "InternalServerErrorException"
1009//   Simple message object.
1010//
1011//   * ErrCodeForbiddenException "ForbiddenException"
1012//   Simple message object.
1013//
1014//   * ErrCodeNotFoundException "NotFoundException"
1015//   Simple message object.
1016//
1017//   * ErrCodeMethodNotAllowedException "MethodNotAllowedException"
1018//   Simple message object.
1019//
1020//   * ErrCodeTooManyRequestsException "TooManyRequestsException"
1021//   Simple message object.
1022//
1023// See also, https://docs.aws.amazon.com/goto/WebAPI/pinpoint-2016-12-01/DeleteApp
1024func (c *Pinpoint) DeleteApp(input *DeleteAppInput) (*DeleteAppOutput, error) {
1025	req, out := c.DeleteAppRequest(input)
1026	return out, req.Send()
1027}
1028
1029// DeleteAppWithContext is the same as DeleteApp with the addition of
1030// the ability to pass a context and additional request options.
1031//
1032// See DeleteApp for details on how to use this API operation.
1033//
1034// The context must be non-nil and will be used for request cancellation. If
1035// the context is nil a panic will occur. In the future the SDK may create
1036// sub-contexts for http.Requests. See https://golang.org/pkg/context/
1037// for more information on using Contexts.
1038func (c *Pinpoint) DeleteAppWithContext(ctx aws.Context, input *DeleteAppInput, opts ...request.Option) (*DeleteAppOutput, error) {
1039	req, out := c.DeleteAppRequest(input)
1040	req.SetContext(ctx)
1041	req.ApplyOptions(opts...)
1042	return out, req.Send()
1043}
1044
1045const opDeleteBaiduChannel = "DeleteBaiduChannel"
1046
1047// DeleteBaiduChannelRequest generates a "aws/request.Request" representing the
1048// client's request for the DeleteBaiduChannel operation. The "output" return
1049// value will be populated with the request's response once the request completes
1050// successfuly.
1051//
1052// Use "Send" method on the returned Request to send the API call to the service.
1053// the "output" return value is not valid until after Send returns without error.
1054//
1055// See DeleteBaiduChannel for more information on using the DeleteBaiduChannel
1056// API call, and error handling.
1057//
1058// This method is useful when you want to inject custom logic or configuration
1059// into the SDK's request lifecycle. Such as custom headers, or retry logic.
1060//
1061//
1062//    // Example sending a request using the DeleteBaiduChannelRequest method.
1063//    req, resp := client.DeleteBaiduChannelRequest(params)
1064//
1065//    err := req.Send()
1066//    if err == nil { // resp is now filled
1067//        fmt.Println(resp)
1068//    }
1069//
1070// See also, https://docs.aws.amazon.com/goto/WebAPI/pinpoint-2016-12-01/DeleteBaiduChannel
1071func (c *Pinpoint) DeleteBaiduChannelRequest(input *DeleteBaiduChannelInput) (req *request.Request, output *DeleteBaiduChannelOutput) {
1072	op := &request.Operation{
1073		Name:       opDeleteBaiduChannel,
1074		HTTPMethod: "DELETE",
1075		HTTPPath:   "/v1/apps/{application-id}/channels/baidu",
1076	}
1077
1078	if input == nil {
1079		input = &DeleteBaiduChannelInput{}
1080	}
1081
1082	output = &DeleteBaiduChannelOutput{}
1083	req = c.newRequest(op, input, output)
1084	return
1085}
1086
1087// DeleteBaiduChannel API operation for Amazon Pinpoint.
1088//
1089// Delete a BAIDU GCM channel
1090//
1091// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
1092// with awserr.Error's Code and Message methods to get detailed information about
1093// the error.
1094//
1095// See the AWS API reference guide for Amazon Pinpoint's
1096// API operation DeleteBaiduChannel for usage and error information.
1097//
1098// Returned Error Codes:
1099//   * ErrCodeBadRequestException "BadRequestException"
1100//   Simple message object.
1101//
1102//   * ErrCodeInternalServerErrorException "InternalServerErrorException"
1103//   Simple message object.
1104//
1105//   * ErrCodeForbiddenException "ForbiddenException"
1106//   Simple message object.
1107//
1108//   * ErrCodeNotFoundException "NotFoundException"
1109//   Simple message object.
1110//
1111//   * ErrCodeMethodNotAllowedException "MethodNotAllowedException"
1112//   Simple message object.
1113//
1114//   * ErrCodeTooManyRequestsException "TooManyRequestsException"
1115//   Simple message object.
1116//
1117// See also, https://docs.aws.amazon.com/goto/WebAPI/pinpoint-2016-12-01/DeleteBaiduChannel
1118func (c *Pinpoint) DeleteBaiduChannel(input *DeleteBaiduChannelInput) (*DeleteBaiduChannelOutput, error) {
1119	req, out := c.DeleteBaiduChannelRequest(input)
1120	return out, req.Send()
1121}
1122
1123// DeleteBaiduChannelWithContext is the same as DeleteBaiduChannel with the addition of
1124// the ability to pass a context and additional request options.
1125//
1126// See DeleteBaiduChannel for details on how to use this API operation.
1127//
1128// The context must be non-nil and will be used for request cancellation. If
1129// the context is nil a panic will occur. In the future the SDK may create
1130// sub-contexts for http.Requests. See https://golang.org/pkg/context/
1131// for more information on using Contexts.
1132func (c *Pinpoint) DeleteBaiduChannelWithContext(ctx aws.Context, input *DeleteBaiduChannelInput, opts ...request.Option) (*DeleteBaiduChannelOutput, error) {
1133	req, out := c.DeleteBaiduChannelRequest(input)
1134	req.SetContext(ctx)
1135	req.ApplyOptions(opts...)
1136	return out, req.Send()
1137}
1138
1139const opDeleteCampaign = "DeleteCampaign"
1140
1141// DeleteCampaignRequest generates a "aws/request.Request" representing the
1142// client's request for the DeleteCampaign operation. The "output" return
1143// value will be populated with the request's response once the request completes
1144// successfuly.
1145//
1146// Use "Send" method on the returned Request to send the API call to the service.
1147// the "output" return value is not valid until after Send returns without error.
1148//
1149// See DeleteCampaign for more information on using the DeleteCampaign
1150// API call, and error handling.
1151//
1152// This method is useful when you want to inject custom logic or configuration
1153// into the SDK's request lifecycle. Such as custom headers, or retry logic.
1154//
1155//
1156//    // Example sending a request using the DeleteCampaignRequest method.
1157//    req, resp := client.DeleteCampaignRequest(params)
1158//
1159//    err := req.Send()
1160//    if err == nil { // resp is now filled
1161//        fmt.Println(resp)
1162//    }
1163//
1164// See also, https://docs.aws.amazon.com/goto/WebAPI/pinpoint-2016-12-01/DeleteCampaign
1165func (c *Pinpoint) DeleteCampaignRequest(input *DeleteCampaignInput) (req *request.Request, output *DeleteCampaignOutput) {
1166	op := &request.Operation{
1167		Name:       opDeleteCampaign,
1168		HTTPMethod: "DELETE",
1169		HTTPPath:   "/v1/apps/{application-id}/campaigns/{campaign-id}",
1170	}
1171
1172	if input == nil {
1173		input = &DeleteCampaignInput{}
1174	}
1175
1176	output = &DeleteCampaignOutput{}
1177	req = c.newRequest(op, input, output)
1178	return
1179}
1180
1181// DeleteCampaign API operation for Amazon Pinpoint.
1182//
1183// Deletes a campaign.
1184//
1185// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
1186// with awserr.Error's Code and Message methods to get detailed information about
1187// the error.
1188//
1189// See the AWS API reference guide for Amazon Pinpoint's
1190// API operation DeleteCampaign for usage and error information.
1191//
1192// Returned Error Codes:
1193//   * ErrCodeBadRequestException "BadRequestException"
1194//   Simple message object.
1195//
1196//   * ErrCodeInternalServerErrorException "InternalServerErrorException"
1197//   Simple message object.
1198//
1199//   * ErrCodeForbiddenException "ForbiddenException"
1200//   Simple message object.
1201//
1202//   * ErrCodeNotFoundException "NotFoundException"
1203//   Simple message object.
1204//
1205//   * ErrCodeMethodNotAllowedException "MethodNotAllowedException"
1206//   Simple message object.
1207//
1208//   * ErrCodeTooManyRequestsException "TooManyRequestsException"
1209//   Simple message object.
1210//
1211// See also, https://docs.aws.amazon.com/goto/WebAPI/pinpoint-2016-12-01/DeleteCampaign
1212func (c *Pinpoint) DeleteCampaign(input *DeleteCampaignInput) (*DeleteCampaignOutput, error) {
1213	req, out := c.DeleteCampaignRequest(input)
1214	return out, req.Send()
1215}
1216
1217// DeleteCampaignWithContext is the same as DeleteCampaign with the addition of
1218// the ability to pass a context and additional request options.
1219//
1220// See DeleteCampaign for details on how to use this API operation.
1221//
1222// The context must be non-nil and will be used for request cancellation. If
1223// the context is nil a panic will occur. In the future the SDK may create
1224// sub-contexts for http.Requests. See https://golang.org/pkg/context/
1225// for more information on using Contexts.
1226func (c *Pinpoint) DeleteCampaignWithContext(ctx aws.Context, input *DeleteCampaignInput, opts ...request.Option) (*DeleteCampaignOutput, error) {
1227	req, out := c.DeleteCampaignRequest(input)
1228	req.SetContext(ctx)
1229	req.ApplyOptions(opts...)
1230	return out, req.Send()
1231}
1232
1233const opDeleteEmailChannel = "DeleteEmailChannel"
1234
1235// DeleteEmailChannelRequest generates a "aws/request.Request" representing the
1236// client's request for the DeleteEmailChannel operation. The "output" return
1237// value will be populated with the request's response once the request completes
1238// successfuly.
1239//
1240// Use "Send" method on the returned Request to send the API call to the service.
1241// the "output" return value is not valid until after Send returns without error.
1242//
1243// See DeleteEmailChannel for more information on using the DeleteEmailChannel
1244// API call, and error handling.
1245//
1246// This method is useful when you want to inject custom logic or configuration
1247// into the SDK's request lifecycle. Such as custom headers, or retry logic.
1248//
1249//
1250//    // Example sending a request using the DeleteEmailChannelRequest method.
1251//    req, resp := client.DeleteEmailChannelRequest(params)
1252//
1253//    err := req.Send()
1254//    if err == nil { // resp is now filled
1255//        fmt.Println(resp)
1256//    }
1257//
1258// See also, https://docs.aws.amazon.com/goto/WebAPI/pinpoint-2016-12-01/DeleteEmailChannel
1259func (c *Pinpoint) DeleteEmailChannelRequest(input *DeleteEmailChannelInput) (req *request.Request, output *DeleteEmailChannelOutput) {
1260	op := &request.Operation{
1261		Name:       opDeleteEmailChannel,
1262		HTTPMethod: "DELETE",
1263		HTTPPath:   "/v1/apps/{application-id}/channels/email",
1264	}
1265
1266	if input == nil {
1267		input = &DeleteEmailChannelInput{}
1268	}
1269
1270	output = &DeleteEmailChannelOutput{}
1271	req = c.newRequest(op, input, output)
1272	return
1273}
1274
1275// DeleteEmailChannel API operation for Amazon Pinpoint.
1276//
1277// Delete an email channel.
1278//
1279// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
1280// with awserr.Error's Code and Message methods to get detailed information about
1281// the error.
1282//
1283// See the AWS API reference guide for Amazon Pinpoint's
1284// API operation DeleteEmailChannel for usage and error information.
1285//
1286// Returned Error Codes:
1287//   * ErrCodeBadRequestException "BadRequestException"
1288//   Simple message object.
1289//
1290//   * ErrCodeInternalServerErrorException "InternalServerErrorException"
1291//   Simple message object.
1292//
1293//   * ErrCodeForbiddenException "ForbiddenException"
1294//   Simple message object.
1295//
1296//   * ErrCodeNotFoundException "NotFoundException"
1297//   Simple message object.
1298//
1299//   * ErrCodeMethodNotAllowedException "MethodNotAllowedException"
1300//   Simple message object.
1301//
1302//   * ErrCodeTooManyRequestsException "TooManyRequestsException"
1303//   Simple message object.
1304//
1305// See also, https://docs.aws.amazon.com/goto/WebAPI/pinpoint-2016-12-01/DeleteEmailChannel
1306func (c *Pinpoint) DeleteEmailChannel(input *DeleteEmailChannelInput) (*DeleteEmailChannelOutput, error) {
1307	req, out := c.DeleteEmailChannelRequest(input)
1308	return out, req.Send()
1309}
1310
1311// DeleteEmailChannelWithContext is the same as DeleteEmailChannel with the addition of
1312// the ability to pass a context and additional request options.
1313//
1314// See DeleteEmailChannel for details on how to use this API operation.
1315//
1316// The context must be non-nil and will be used for request cancellation. If
1317// the context is nil a panic will occur. In the future the SDK may create
1318// sub-contexts for http.Requests. See https://golang.org/pkg/context/
1319// for more information on using Contexts.
1320func (c *Pinpoint) DeleteEmailChannelWithContext(ctx aws.Context, input *DeleteEmailChannelInput, opts ...request.Option) (*DeleteEmailChannelOutput, error) {
1321	req, out := c.DeleteEmailChannelRequest(input)
1322	req.SetContext(ctx)
1323	req.ApplyOptions(opts...)
1324	return out, req.Send()
1325}
1326
1327const opDeleteEndpoint = "DeleteEndpoint"
1328
1329// DeleteEndpointRequest generates a "aws/request.Request" representing the
1330// client's request for the DeleteEndpoint operation. The "output" return
1331// value will be populated with the request's response once the request completes
1332// successfuly.
1333//
1334// Use "Send" method on the returned Request to send the API call to the service.
1335// the "output" return value is not valid until after Send returns without error.
1336//
1337// See DeleteEndpoint for more information on using the DeleteEndpoint
1338// API call, and error handling.
1339//
1340// This method is useful when you want to inject custom logic or configuration
1341// into the SDK's request lifecycle. Such as custom headers, or retry logic.
1342//
1343//
1344//    // Example sending a request using the DeleteEndpointRequest method.
1345//    req, resp := client.DeleteEndpointRequest(params)
1346//
1347//    err := req.Send()
1348//    if err == nil { // resp is now filled
1349//        fmt.Println(resp)
1350//    }
1351//
1352// See also, https://docs.aws.amazon.com/goto/WebAPI/pinpoint-2016-12-01/DeleteEndpoint
1353func (c *Pinpoint) DeleteEndpointRequest(input *DeleteEndpointInput) (req *request.Request, output *DeleteEndpointOutput) {
1354	op := &request.Operation{
1355		Name:       opDeleteEndpoint,
1356		HTTPMethod: "DELETE",
1357		HTTPPath:   "/v1/apps/{application-id}/endpoints/{endpoint-id}",
1358	}
1359
1360	if input == nil {
1361		input = &DeleteEndpointInput{}
1362	}
1363
1364	output = &DeleteEndpointOutput{}
1365	req = c.newRequest(op, input, output)
1366	return
1367}
1368
1369// DeleteEndpoint API operation for Amazon Pinpoint.
1370//
1371// Deletes an endpoint.
1372//
1373// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
1374// with awserr.Error's Code and Message methods to get detailed information about
1375// the error.
1376//
1377// See the AWS API reference guide for Amazon Pinpoint's
1378// API operation DeleteEndpoint for usage and error information.
1379//
1380// Returned Error Codes:
1381//   * ErrCodeBadRequestException "BadRequestException"
1382//   Simple message object.
1383//
1384//   * ErrCodeInternalServerErrorException "InternalServerErrorException"
1385//   Simple message object.
1386//
1387//   * ErrCodeForbiddenException "ForbiddenException"
1388//   Simple message object.
1389//
1390//   * ErrCodeNotFoundException "NotFoundException"
1391//   Simple message object.
1392//
1393//   * ErrCodeMethodNotAllowedException "MethodNotAllowedException"
1394//   Simple message object.
1395//
1396//   * ErrCodeTooManyRequestsException "TooManyRequestsException"
1397//   Simple message object.
1398//
1399// See also, https://docs.aws.amazon.com/goto/WebAPI/pinpoint-2016-12-01/DeleteEndpoint
1400func (c *Pinpoint) DeleteEndpoint(input *DeleteEndpointInput) (*DeleteEndpointOutput, error) {
1401	req, out := c.DeleteEndpointRequest(input)
1402	return out, req.Send()
1403}
1404
1405// DeleteEndpointWithContext is the same as DeleteEndpoint with the addition of
1406// the ability to pass a context and additional request options.
1407//
1408// See DeleteEndpoint for details on how to use this API operation.
1409//
1410// The context must be non-nil and will be used for request cancellation. If
1411// the context is nil a panic will occur. In the future the SDK may create
1412// sub-contexts for http.Requests. See https://golang.org/pkg/context/
1413// for more information on using Contexts.
1414func (c *Pinpoint) DeleteEndpointWithContext(ctx aws.Context, input *DeleteEndpointInput, opts ...request.Option) (*DeleteEndpointOutput, error) {
1415	req, out := c.DeleteEndpointRequest(input)
1416	req.SetContext(ctx)
1417	req.ApplyOptions(opts...)
1418	return out, req.Send()
1419}
1420
1421const opDeleteEventStream = "DeleteEventStream"
1422
1423// DeleteEventStreamRequest generates a "aws/request.Request" representing the
1424// client's request for the DeleteEventStream operation. The "output" return
1425// value will be populated with the request's response once the request completes
1426// successfuly.
1427//
1428// Use "Send" method on the returned Request to send the API call to the service.
1429// the "output" return value is not valid until after Send returns without error.
1430//
1431// See DeleteEventStream for more information on using the DeleteEventStream
1432// API call, and error handling.
1433//
1434// This method is useful when you want to inject custom logic or configuration
1435// into the SDK's request lifecycle. Such as custom headers, or retry logic.
1436//
1437//
1438//    // Example sending a request using the DeleteEventStreamRequest method.
1439//    req, resp := client.DeleteEventStreamRequest(params)
1440//
1441//    err := req.Send()
1442//    if err == nil { // resp is now filled
1443//        fmt.Println(resp)
1444//    }
1445//
1446// See also, https://docs.aws.amazon.com/goto/WebAPI/pinpoint-2016-12-01/DeleteEventStream
1447func (c *Pinpoint) DeleteEventStreamRequest(input *DeleteEventStreamInput) (req *request.Request, output *DeleteEventStreamOutput) {
1448	op := &request.Operation{
1449		Name:       opDeleteEventStream,
1450		HTTPMethod: "DELETE",
1451		HTTPPath:   "/v1/apps/{application-id}/eventstream",
1452	}
1453
1454	if input == nil {
1455		input = &DeleteEventStreamInput{}
1456	}
1457
1458	output = &DeleteEventStreamOutput{}
1459	req = c.newRequest(op, input, output)
1460	return
1461}
1462
1463// DeleteEventStream API operation for Amazon Pinpoint.
1464//
1465// Deletes the event stream for an app.
1466//
1467// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
1468// with awserr.Error's Code and Message methods to get detailed information about
1469// the error.
1470//
1471// See the AWS API reference guide for Amazon Pinpoint's
1472// API operation DeleteEventStream for usage and error information.
1473//
1474// Returned Error Codes:
1475//   * ErrCodeBadRequestException "BadRequestException"
1476//   Simple message object.
1477//
1478//   * ErrCodeInternalServerErrorException "InternalServerErrorException"
1479//   Simple message object.
1480//
1481//   * ErrCodeForbiddenException "ForbiddenException"
1482//   Simple message object.
1483//
1484//   * ErrCodeNotFoundException "NotFoundException"
1485//   Simple message object.
1486//
1487//   * ErrCodeMethodNotAllowedException "MethodNotAllowedException"
1488//   Simple message object.
1489//
1490//   * ErrCodeTooManyRequestsException "TooManyRequestsException"
1491//   Simple message object.
1492//
1493// See also, https://docs.aws.amazon.com/goto/WebAPI/pinpoint-2016-12-01/DeleteEventStream
1494func (c *Pinpoint) DeleteEventStream(input *DeleteEventStreamInput) (*DeleteEventStreamOutput, error) {
1495	req, out := c.DeleteEventStreamRequest(input)
1496	return out, req.Send()
1497}
1498
1499// DeleteEventStreamWithContext is the same as DeleteEventStream with the addition of
1500// the ability to pass a context and additional request options.
1501//
1502// See DeleteEventStream for details on how to use this API operation.
1503//
1504// The context must be non-nil and will be used for request cancellation. If
1505// the context is nil a panic will occur. In the future the SDK may create
1506// sub-contexts for http.Requests. See https://golang.org/pkg/context/
1507// for more information on using Contexts.
1508func (c *Pinpoint) DeleteEventStreamWithContext(ctx aws.Context, input *DeleteEventStreamInput, opts ...request.Option) (*DeleteEventStreamOutput, error) {
1509	req, out := c.DeleteEventStreamRequest(input)
1510	req.SetContext(ctx)
1511	req.ApplyOptions(opts...)
1512	return out, req.Send()
1513}
1514
1515const opDeleteGcmChannel = "DeleteGcmChannel"
1516
1517// DeleteGcmChannelRequest generates a "aws/request.Request" representing the
1518// client's request for the DeleteGcmChannel operation. The "output" return
1519// value will be populated with the request's response once the request completes
1520// successfuly.
1521//
1522// Use "Send" method on the returned Request to send the API call to the service.
1523// the "output" return value is not valid until after Send returns without error.
1524//
1525// See DeleteGcmChannel for more information on using the DeleteGcmChannel
1526// API call, and error handling.
1527//
1528// This method is useful when you want to inject custom logic or configuration
1529// into the SDK's request lifecycle. Such as custom headers, or retry logic.
1530//
1531//
1532//    // Example sending a request using the DeleteGcmChannelRequest method.
1533//    req, resp := client.DeleteGcmChannelRequest(params)
1534//
1535//    err := req.Send()
1536//    if err == nil { // resp is now filled
1537//        fmt.Println(resp)
1538//    }
1539//
1540// See also, https://docs.aws.amazon.com/goto/WebAPI/pinpoint-2016-12-01/DeleteGcmChannel
1541func (c *Pinpoint) DeleteGcmChannelRequest(input *DeleteGcmChannelInput) (req *request.Request, output *DeleteGcmChannelOutput) {
1542	op := &request.Operation{
1543		Name:       opDeleteGcmChannel,
1544		HTTPMethod: "DELETE",
1545		HTTPPath:   "/v1/apps/{application-id}/channels/gcm",
1546	}
1547
1548	if input == nil {
1549		input = &DeleteGcmChannelInput{}
1550	}
1551
1552	output = &DeleteGcmChannelOutput{}
1553	req = c.newRequest(op, input, output)
1554	return
1555}
1556
1557// DeleteGcmChannel API operation for Amazon Pinpoint.
1558//
1559// Deletes the GCM channel for an app.
1560//
1561// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
1562// with awserr.Error's Code and Message methods to get detailed information about
1563// the error.
1564//
1565// See the AWS API reference guide for Amazon Pinpoint's
1566// API operation DeleteGcmChannel for usage and error information.
1567//
1568// Returned Error Codes:
1569//   * ErrCodeBadRequestException "BadRequestException"
1570//   Simple message object.
1571//
1572//   * ErrCodeInternalServerErrorException "InternalServerErrorException"
1573//   Simple message object.
1574//
1575//   * ErrCodeForbiddenException "ForbiddenException"
1576//   Simple message object.
1577//
1578//   * ErrCodeNotFoundException "NotFoundException"
1579//   Simple message object.
1580//
1581//   * ErrCodeMethodNotAllowedException "MethodNotAllowedException"
1582//   Simple message object.
1583//
1584//   * ErrCodeTooManyRequestsException "TooManyRequestsException"
1585//   Simple message object.
1586//
1587// See also, https://docs.aws.amazon.com/goto/WebAPI/pinpoint-2016-12-01/DeleteGcmChannel
1588func (c *Pinpoint) DeleteGcmChannel(input *DeleteGcmChannelInput) (*DeleteGcmChannelOutput, error) {
1589	req, out := c.DeleteGcmChannelRequest(input)
1590	return out, req.Send()
1591}
1592
1593// DeleteGcmChannelWithContext is the same as DeleteGcmChannel with the addition of
1594// the ability to pass a context and additional request options.
1595//
1596// See DeleteGcmChannel for details on how to use this API operation.
1597//
1598// The context must be non-nil and will be used for request cancellation. If
1599// the context is nil a panic will occur. In the future the SDK may create
1600// sub-contexts for http.Requests. See https://golang.org/pkg/context/
1601// for more information on using Contexts.
1602func (c *Pinpoint) DeleteGcmChannelWithContext(ctx aws.Context, input *DeleteGcmChannelInput, opts ...request.Option) (*DeleteGcmChannelOutput, error) {
1603	req, out := c.DeleteGcmChannelRequest(input)
1604	req.SetContext(ctx)
1605	req.ApplyOptions(opts...)
1606	return out, req.Send()
1607}
1608
1609const opDeleteSegment = "DeleteSegment"
1610
1611// DeleteSegmentRequest generates a "aws/request.Request" representing the
1612// client's request for the DeleteSegment operation. The "output" return
1613// value will be populated with the request's response once the request completes
1614// successfuly.
1615//
1616// Use "Send" method on the returned Request to send the API call to the service.
1617// the "output" return value is not valid until after Send returns without error.
1618//
1619// See DeleteSegment for more information on using the DeleteSegment
1620// API call, and error handling.
1621//
1622// This method is useful when you want to inject custom logic or configuration
1623// into the SDK's request lifecycle. Such as custom headers, or retry logic.
1624//
1625//
1626//    // Example sending a request using the DeleteSegmentRequest method.
1627//    req, resp := client.DeleteSegmentRequest(params)
1628//
1629//    err := req.Send()
1630//    if err == nil { // resp is now filled
1631//        fmt.Println(resp)
1632//    }
1633//
1634// See also, https://docs.aws.amazon.com/goto/WebAPI/pinpoint-2016-12-01/DeleteSegment
1635func (c *Pinpoint) DeleteSegmentRequest(input *DeleteSegmentInput) (req *request.Request, output *DeleteSegmentOutput) {
1636	op := &request.Operation{
1637		Name:       opDeleteSegment,
1638		HTTPMethod: "DELETE",
1639		HTTPPath:   "/v1/apps/{application-id}/segments/{segment-id}",
1640	}
1641
1642	if input == nil {
1643		input = &DeleteSegmentInput{}
1644	}
1645
1646	output = &DeleteSegmentOutput{}
1647	req = c.newRequest(op, input, output)
1648	return
1649}
1650
1651// DeleteSegment API operation for Amazon Pinpoint.
1652//
1653// Deletes a segment.
1654//
1655// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
1656// with awserr.Error's Code and Message methods to get detailed information about
1657// the error.
1658//
1659// See the AWS API reference guide for Amazon Pinpoint's
1660// API operation DeleteSegment for usage and error information.
1661//
1662// Returned Error Codes:
1663//   * ErrCodeBadRequestException "BadRequestException"
1664//   Simple message object.
1665//
1666//   * ErrCodeInternalServerErrorException "InternalServerErrorException"
1667//   Simple message object.
1668//
1669//   * ErrCodeForbiddenException "ForbiddenException"
1670//   Simple message object.
1671//
1672//   * ErrCodeNotFoundException "NotFoundException"
1673//   Simple message object.
1674//
1675//   * ErrCodeMethodNotAllowedException "MethodNotAllowedException"
1676//   Simple message object.
1677//
1678//   * ErrCodeTooManyRequestsException "TooManyRequestsException"
1679//   Simple message object.
1680//
1681// See also, https://docs.aws.amazon.com/goto/WebAPI/pinpoint-2016-12-01/DeleteSegment
1682func (c *Pinpoint) DeleteSegment(input *DeleteSegmentInput) (*DeleteSegmentOutput, error) {
1683	req, out := c.DeleteSegmentRequest(input)
1684	return out, req.Send()
1685}
1686
1687// DeleteSegmentWithContext is the same as DeleteSegment with the addition of
1688// the ability to pass a context and additional request options.
1689//
1690// See DeleteSegment for details on how to use this API operation.
1691//
1692// The context must be non-nil and will be used for request cancellation. If
1693// the context is nil a panic will occur. In the future the SDK may create
1694// sub-contexts for http.Requests. See https://golang.org/pkg/context/
1695// for more information on using Contexts.
1696func (c *Pinpoint) DeleteSegmentWithContext(ctx aws.Context, input *DeleteSegmentInput, opts ...request.Option) (*DeleteSegmentOutput, error) {
1697	req, out := c.DeleteSegmentRequest(input)
1698	req.SetContext(ctx)
1699	req.ApplyOptions(opts...)
1700	return out, req.Send()
1701}
1702
1703const opDeleteSmsChannel = "DeleteSmsChannel"
1704
1705// DeleteSmsChannelRequest generates a "aws/request.Request" representing the
1706// client's request for the DeleteSmsChannel operation. The "output" return
1707// value will be populated with the request's response once the request completes
1708// successfuly.
1709//
1710// Use "Send" method on the returned Request to send the API call to the service.
1711// the "output" return value is not valid until after Send returns without error.
1712//
1713// See DeleteSmsChannel for more information on using the DeleteSmsChannel
1714// API call, and error handling.
1715//
1716// This method is useful when you want to inject custom logic or configuration
1717// into the SDK's request lifecycle. Such as custom headers, or retry logic.
1718//
1719//
1720//    // Example sending a request using the DeleteSmsChannelRequest method.
1721//    req, resp := client.DeleteSmsChannelRequest(params)
1722//
1723//    err := req.Send()
1724//    if err == nil { // resp is now filled
1725//        fmt.Println(resp)
1726//    }
1727//
1728// See also, https://docs.aws.amazon.com/goto/WebAPI/pinpoint-2016-12-01/DeleteSmsChannel
1729func (c *Pinpoint) DeleteSmsChannelRequest(input *DeleteSmsChannelInput) (req *request.Request, output *DeleteSmsChannelOutput) {
1730	op := &request.Operation{
1731		Name:       opDeleteSmsChannel,
1732		HTTPMethod: "DELETE",
1733		HTTPPath:   "/v1/apps/{application-id}/channels/sms",
1734	}
1735
1736	if input == nil {
1737		input = &DeleteSmsChannelInput{}
1738	}
1739
1740	output = &DeleteSmsChannelOutput{}
1741	req = c.newRequest(op, input, output)
1742	return
1743}
1744
1745// DeleteSmsChannel API operation for Amazon Pinpoint.
1746//
1747// Delete an SMS channel.
1748//
1749// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
1750// with awserr.Error's Code and Message methods to get detailed information about
1751// the error.
1752//
1753// See the AWS API reference guide for Amazon Pinpoint's
1754// API operation DeleteSmsChannel for usage and error information.
1755//
1756// Returned Error Codes:
1757//   * ErrCodeBadRequestException "BadRequestException"
1758//   Simple message object.
1759//
1760//   * ErrCodeInternalServerErrorException "InternalServerErrorException"
1761//   Simple message object.
1762//
1763//   * ErrCodeForbiddenException "ForbiddenException"
1764//   Simple message object.
1765//
1766//   * ErrCodeNotFoundException "NotFoundException"
1767//   Simple message object.
1768//
1769//   * ErrCodeMethodNotAllowedException "MethodNotAllowedException"
1770//   Simple message object.
1771//
1772//   * ErrCodeTooManyRequestsException "TooManyRequestsException"
1773//   Simple message object.
1774//
1775// See also, https://docs.aws.amazon.com/goto/WebAPI/pinpoint-2016-12-01/DeleteSmsChannel
1776func (c *Pinpoint) DeleteSmsChannel(input *DeleteSmsChannelInput) (*DeleteSmsChannelOutput, error) {
1777	req, out := c.DeleteSmsChannelRequest(input)
1778	return out, req.Send()
1779}
1780
1781// DeleteSmsChannelWithContext is the same as DeleteSmsChannel with the addition of
1782// the ability to pass a context and additional request options.
1783//
1784// See DeleteSmsChannel for details on how to use this API operation.
1785//
1786// The context must be non-nil and will be used for request cancellation. If
1787// the context is nil a panic will occur. In the future the SDK may create
1788// sub-contexts for http.Requests. See https://golang.org/pkg/context/
1789// for more information on using Contexts.
1790func (c *Pinpoint) DeleteSmsChannelWithContext(ctx aws.Context, input *DeleteSmsChannelInput, opts ...request.Option) (*DeleteSmsChannelOutput, error) {
1791	req, out := c.DeleteSmsChannelRequest(input)
1792	req.SetContext(ctx)
1793	req.ApplyOptions(opts...)
1794	return out, req.Send()
1795}
1796
1797const opDeleteUserEndpoints = "DeleteUserEndpoints"
1798
1799// DeleteUserEndpointsRequest generates a "aws/request.Request" representing the
1800// client's request for the DeleteUserEndpoints operation. The "output" return
1801// value will be populated with the request's response once the request completes
1802// successfuly.
1803//
1804// Use "Send" method on the returned Request to send the API call to the service.
1805// the "output" return value is not valid until after Send returns without error.
1806//
1807// See DeleteUserEndpoints for more information on using the DeleteUserEndpoints
1808// API call, and error handling.
1809//
1810// This method is useful when you want to inject custom logic or configuration
1811// into the SDK's request lifecycle. Such as custom headers, or retry logic.
1812//
1813//
1814//    // Example sending a request using the DeleteUserEndpointsRequest method.
1815//    req, resp := client.DeleteUserEndpointsRequest(params)
1816//
1817//    err := req.Send()
1818//    if err == nil { // resp is now filled
1819//        fmt.Println(resp)
1820//    }
1821//
1822// See also, https://docs.aws.amazon.com/goto/WebAPI/pinpoint-2016-12-01/DeleteUserEndpoints
1823func (c *Pinpoint) DeleteUserEndpointsRequest(input *DeleteUserEndpointsInput) (req *request.Request, output *DeleteUserEndpointsOutput) {
1824	op := &request.Operation{
1825		Name:       opDeleteUserEndpoints,
1826		HTTPMethod: "DELETE",
1827		HTTPPath:   "/v1/apps/{application-id}/users/{user-id}",
1828	}
1829
1830	if input == nil {
1831		input = &DeleteUserEndpointsInput{}
1832	}
1833
1834	output = &DeleteUserEndpointsOutput{}
1835	req = c.newRequest(op, input, output)
1836	return
1837}
1838
1839// DeleteUserEndpoints API operation for Amazon Pinpoint.
1840//
1841// Deletes endpoints that are associated with a User ID.
1842//
1843// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
1844// with awserr.Error's Code and Message methods to get detailed information about
1845// the error.
1846//
1847// See the AWS API reference guide for Amazon Pinpoint's
1848// API operation DeleteUserEndpoints for usage and error information.
1849//
1850// Returned Error Codes:
1851//   * ErrCodeBadRequestException "BadRequestException"
1852//   Simple message object.
1853//
1854//   * ErrCodeInternalServerErrorException "InternalServerErrorException"
1855//   Simple message object.
1856//
1857//   * ErrCodeForbiddenException "ForbiddenException"
1858//   Simple message object.
1859//
1860//   * ErrCodeNotFoundException "NotFoundException"
1861//   Simple message object.
1862//
1863//   * ErrCodeMethodNotAllowedException "MethodNotAllowedException"
1864//   Simple message object.
1865//
1866//   * ErrCodeTooManyRequestsException "TooManyRequestsException"
1867//   Simple message object.
1868//
1869// See also, https://docs.aws.amazon.com/goto/WebAPI/pinpoint-2016-12-01/DeleteUserEndpoints
1870func (c *Pinpoint) DeleteUserEndpoints(input *DeleteUserEndpointsInput) (*DeleteUserEndpointsOutput, error) {
1871	req, out := c.DeleteUserEndpointsRequest(input)
1872	return out, req.Send()
1873}
1874
1875// DeleteUserEndpointsWithContext is the same as DeleteUserEndpoints with the addition of
1876// the ability to pass a context and additional request options.
1877//
1878// See DeleteUserEndpoints for details on how to use this API operation.
1879//
1880// The context must be non-nil and will be used for request cancellation. If
1881// the context is nil a panic will occur. In the future the SDK may create
1882// sub-contexts for http.Requests. See https://golang.org/pkg/context/
1883// for more information on using Contexts.
1884func (c *Pinpoint) DeleteUserEndpointsWithContext(ctx aws.Context, input *DeleteUserEndpointsInput, opts ...request.Option) (*DeleteUserEndpointsOutput, error) {
1885	req, out := c.DeleteUserEndpointsRequest(input)
1886	req.SetContext(ctx)
1887	req.ApplyOptions(opts...)
1888	return out, req.Send()
1889}
1890
1891const opGetAdmChannel = "GetAdmChannel"
1892
1893// GetAdmChannelRequest generates a "aws/request.Request" representing the
1894// client's request for the GetAdmChannel operation. The "output" return
1895// value will be populated with the request's response once the request completes
1896// successfuly.
1897//
1898// Use "Send" method on the returned Request to send the API call to the service.
1899// the "output" return value is not valid until after Send returns without error.
1900//
1901// See GetAdmChannel for more information on using the GetAdmChannel
1902// API call, and error handling.
1903//
1904// This method is useful when you want to inject custom logic or configuration
1905// into the SDK's request lifecycle. Such as custom headers, or retry logic.
1906//
1907//
1908//    // Example sending a request using the GetAdmChannelRequest method.
1909//    req, resp := client.GetAdmChannelRequest(params)
1910//
1911//    err := req.Send()
1912//    if err == nil { // resp is now filled
1913//        fmt.Println(resp)
1914//    }
1915//
1916// See also, https://docs.aws.amazon.com/goto/WebAPI/pinpoint-2016-12-01/GetAdmChannel
1917func (c *Pinpoint) GetAdmChannelRequest(input *GetAdmChannelInput) (req *request.Request, output *GetAdmChannelOutput) {
1918	op := &request.Operation{
1919		Name:       opGetAdmChannel,
1920		HTTPMethod: "GET",
1921		HTTPPath:   "/v1/apps/{application-id}/channels/adm",
1922	}
1923
1924	if input == nil {
1925		input = &GetAdmChannelInput{}
1926	}
1927
1928	output = &GetAdmChannelOutput{}
1929	req = c.newRequest(op, input, output)
1930	return
1931}
1932
1933// GetAdmChannel API operation for Amazon Pinpoint.
1934//
1935// Get an ADM channel.
1936//
1937// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
1938// with awserr.Error's Code and Message methods to get detailed information about
1939// the error.
1940//
1941// See the AWS API reference guide for Amazon Pinpoint's
1942// API operation GetAdmChannel for usage and error information.
1943//
1944// Returned Error Codes:
1945//   * ErrCodeBadRequestException "BadRequestException"
1946//   Simple message object.
1947//
1948//   * ErrCodeInternalServerErrorException "InternalServerErrorException"
1949//   Simple message object.
1950//
1951//   * ErrCodeForbiddenException "ForbiddenException"
1952//   Simple message object.
1953//
1954//   * ErrCodeNotFoundException "NotFoundException"
1955//   Simple message object.
1956//
1957//   * ErrCodeMethodNotAllowedException "MethodNotAllowedException"
1958//   Simple message object.
1959//
1960//   * ErrCodeTooManyRequestsException "TooManyRequestsException"
1961//   Simple message object.
1962//
1963// See also, https://docs.aws.amazon.com/goto/WebAPI/pinpoint-2016-12-01/GetAdmChannel
1964func (c *Pinpoint) GetAdmChannel(input *GetAdmChannelInput) (*GetAdmChannelOutput, error) {
1965	req, out := c.GetAdmChannelRequest(input)
1966	return out, req.Send()
1967}
1968
1969// GetAdmChannelWithContext is the same as GetAdmChannel with the addition of
1970// the ability to pass a context and additional request options.
1971//
1972// See GetAdmChannel for details on how to use this API operation.
1973//
1974// The context must be non-nil and will be used for request cancellation. If
1975// the context is nil a panic will occur. In the future the SDK may create
1976// sub-contexts for http.Requests. See https://golang.org/pkg/context/
1977// for more information on using Contexts.
1978func (c *Pinpoint) GetAdmChannelWithContext(ctx aws.Context, input *GetAdmChannelInput, opts ...request.Option) (*GetAdmChannelOutput, error) {
1979	req, out := c.GetAdmChannelRequest(input)
1980	req.SetContext(ctx)
1981	req.ApplyOptions(opts...)
1982	return out, req.Send()
1983}
1984
1985const opGetApnsChannel = "GetApnsChannel"
1986
1987// GetApnsChannelRequest generates a "aws/request.Request" representing the
1988// client's request for the GetApnsChannel operation. The "output" return
1989// value will be populated with the request's response once the request completes
1990// successfuly.
1991//
1992// Use "Send" method on the returned Request to send the API call to the service.
1993// the "output" return value is not valid until after Send returns without error.
1994//
1995// See GetApnsChannel for more information on using the GetApnsChannel
1996// API call, and error handling.
1997//
1998// This method is useful when you want to inject custom logic or configuration
1999// into the SDK's request lifecycle. Such as custom headers, or retry logic.
2000//
2001//
2002//    // Example sending a request using the GetApnsChannelRequest method.
2003//    req, resp := client.GetApnsChannelRequest(params)
2004//
2005//    err := req.Send()
2006//    if err == nil { // resp is now filled
2007//        fmt.Println(resp)
2008//    }
2009//
2010// See also, https://docs.aws.amazon.com/goto/WebAPI/pinpoint-2016-12-01/GetApnsChannel
2011func (c *Pinpoint) GetApnsChannelRequest(input *GetApnsChannelInput) (req *request.Request, output *GetApnsChannelOutput) {
2012	op := &request.Operation{
2013		Name:       opGetApnsChannel,
2014		HTTPMethod: "GET",
2015		HTTPPath:   "/v1/apps/{application-id}/channels/apns",
2016	}
2017
2018	if input == nil {
2019		input = &GetApnsChannelInput{}
2020	}
2021
2022	output = &GetApnsChannelOutput{}
2023	req = c.newRequest(op, input, output)
2024	return
2025}
2026
2027// GetApnsChannel API operation for Amazon Pinpoint.
2028//
2029// Returns information about the APNs channel for an app.
2030//
2031// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
2032// with awserr.Error's Code and Message methods to get detailed information about
2033// the error.
2034//
2035// See the AWS API reference guide for Amazon Pinpoint's
2036// API operation GetApnsChannel for usage and error information.
2037//
2038// Returned Error Codes:
2039//   * ErrCodeBadRequestException "BadRequestException"
2040//   Simple message object.
2041//
2042//   * ErrCodeInternalServerErrorException "InternalServerErrorException"
2043//   Simple message object.
2044//
2045//   * ErrCodeForbiddenException "ForbiddenException"
2046//   Simple message object.
2047//
2048//   * ErrCodeNotFoundException "NotFoundException"
2049//   Simple message object.
2050//
2051//   * ErrCodeMethodNotAllowedException "MethodNotAllowedException"
2052//   Simple message object.
2053//
2054//   * ErrCodeTooManyRequestsException "TooManyRequestsException"
2055//   Simple message object.
2056//
2057// See also, https://docs.aws.amazon.com/goto/WebAPI/pinpoint-2016-12-01/GetApnsChannel
2058func (c *Pinpoint) GetApnsChannel(input *GetApnsChannelInput) (*GetApnsChannelOutput, error) {
2059	req, out := c.GetApnsChannelRequest(input)
2060	return out, req.Send()
2061}
2062
2063// GetApnsChannelWithContext is the same as GetApnsChannel with the addition of
2064// the ability to pass a context and additional request options.
2065//
2066// See GetApnsChannel for details on how to use this API operation.
2067//
2068// The context must be non-nil and will be used for request cancellation. If
2069// the context is nil a panic will occur. In the future the SDK may create
2070// sub-contexts for http.Requests. See https://golang.org/pkg/context/
2071// for more information on using Contexts.
2072func (c *Pinpoint) GetApnsChannelWithContext(ctx aws.Context, input *GetApnsChannelInput, opts ...request.Option) (*GetApnsChannelOutput, error) {
2073	req, out := c.GetApnsChannelRequest(input)
2074	req.SetContext(ctx)
2075	req.ApplyOptions(opts...)
2076	return out, req.Send()
2077}
2078
2079const opGetApnsSandboxChannel = "GetApnsSandboxChannel"
2080
2081// GetApnsSandboxChannelRequest generates a "aws/request.Request" representing the
2082// client's request for the GetApnsSandboxChannel operation. The "output" return
2083// value will be populated with the request's response once the request completes
2084// successfuly.
2085//
2086// Use "Send" method on the returned Request to send the API call to the service.
2087// the "output" return value is not valid until after Send returns without error.
2088//
2089// See GetApnsSandboxChannel for more information on using the GetApnsSandboxChannel
2090// API call, and error handling.
2091//
2092// This method is useful when you want to inject custom logic or configuration
2093// into the SDK's request lifecycle. Such as custom headers, or retry logic.
2094//
2095//
2096//    // Example sending a request using the GetApnsSandboxChannelRequest method.
2097//    req, resp := client.GetApnsSandboxChannelRequest(params)
2098//
2099//    err := req.Send()
2100//    if err == nil { // resp is now filled
2101//        fmt.Println(resp)
2102//    }
2103//
2104// See also, https://docs.aws.amazon.com/goto/WebAPI/pinpoint-2016-12-01/GetApnsSandboxChannel
2105func (c *Pinpoint) GetApnsSandboxChannelRequest(input *GetApnsSandboxChannelInput) (req *request.Request, output *GetApnsSandboxChannelOutput) {
2106	op := &request.Operation{
2107		Name:       opGetApnsSandboxChannel,
2108		HTTPMethod: "GET",
2109		HTTPPath:   "/v1/apps/{application-id}/channels/apns_sandbox",
2110	}
2111
2112	if input == nil {
2113		input = &GetApnsSandboxChannelInput{}
2114	}
2115
2116	output = &GetApnsSandboxChannelOutput{}
2117	req = c.newRequest(op, input, output)
2118	return
2119}
2120
2121// GetApnsSandboxChannel API operation for Amazon Pinpoint.
2122//
2123// Get an APNS sandbox channel.
2124//
2125// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
2126// with awserr.Error's Code and Message methods to get detailed information about
2127// the error.
2128//
2129// See the AWS API reference guide for Amazon Pinpoint's
2130// API operation GetApnsSandboxChannel for usage and error information.
2131//
2132// Returned Error Codes:
2133//   * ErrCodeBadRequestException "BadRequestException"
2134//   Simple message object.
2135//
2136//   * ErrCodeInternalServerErrorException "InternalServerErrorException"
2137//   Simple message object.
2138//
2139//   * ErrCodeForbiddenException "ForbiddenException"
2140//   Simple message object.
2141//
2142//   * ErrCodeNotFoundException "NotFoundException"
2143//   Simple message object.
2144//
2145//   * ErrCodeMethodNotAllowedException "MethodNotAllowedException"
2146//   Simple message object.
2147//
2148//   * ErrCodeTooManyRequestsException "TooManyRequestsException"
2149//   Simple message object.
2150//
2151// See also, https://docs.aws.amazon.com/goto/WebAPI/pinpoint-2016-12-01/GetApnsSandboxChannel
2152func (c *Pinpoint) GetApnsSandboxChannel(input *GetApnsSandboxChannelInput) (*GetApnsSandboxChannelOutput, error) {
2153	req, out := c.GetApnsSandboxChannelRequest(input)
2154	return out, req.Send()
2155}
2156
2157// GetApnsSandboxChannelWithContext is the same as GetApnsSandboxChannel with the addition of
2158// the ability to pass a context and additional request options.
2159//
2160// See GetApnsSandboxChannel for details on how to use this API operation.
2161//
2162// The context must be non-nil and will be used for request cancellation. If
2163// the context is nil a panic will occur. In the future the SDK may create
2164// sub-contexts for http.Requests. See https://golang.org/pkg/context/
2165// for more information on using Contexts.
2166func (c *Pinpoint) GetApnsSandboxChannelWithContext(ctx aws.Context, input *GetApnsSandboxChannelInput, opts ...request.Option) (*GetApnsSandboxChannelOutput, error) {
2167	req, out := c.GetApnsSandboxChannelRequest(input)
2168	req.SetContext(ctx)
2169	req.ApplyOptions(opts...)
2170	return out, req.Send()
2171}
2172
2173const opGetApnsVoipChannel = "GetApnsVoipChannel"
2174
2175// GetApnsVoipChannelRequest generates a "aws/request.Request" representing the
2176// client's request for the GetApnsVoipChannel operation. The "output" return
2177// value will be populated with the request's response once the request completes
2178// successfuly.
2179//
2180// Use "Send" method on the returned Request to send the API call to the service.
2181// the "output" return value is not valid until after Send returns without error.
2182//
2183// See GetApnsVoipChannel for more information on using the GetApnsVoipChannel
2184// API call, and error handling.
2185//
2186// This method is useful when you want to inject custom logic or configuration
2187// into the SDK's request lifecycle. Such as custom headers, or retry logic.
2188//
2189//
2190//    // Example sending a request using the GetApnsVoipChannelRequest method.
2191//    req, resp := client.GetApnsVoipChannelRequest(params)
2192//
2193//    err := req.Send()
2194//    if err == nil { // resp is now filled
2195//        fmt.Println(resp)
2196//    }
2197//
2198// See also, https://docs.aws.amazon.com/goto/WebAPI/pinpoint-2016-12-01/GetApnsVoipChannel
2199func (c *Pinpoint) GetApnsVoipChannelRequest(input *GetApnsVoipChannelInput) (req *request.Request, output *GetApnsVoipChannelOutput) {
2200	op := &request.Operation{
2201		Name:       opGetApnsVoipChannel,
2202		HTTPMethod: "GET",
2203		HTTPPath:   "/v1/apps/{application-id}/channels/apns_voip",
2204	}
2205
2206	if input == nil {
2207		input = &GetApnsVoipChannelInput{}
2208	}
2209
2210	output = &GetApnsVoipChannelOutput{}
2211	req = c.newRequest(op, input, output)
2212	return
2213}
2214
2215// GetApnsVoipChannel API operation for Amazon Pinpoint.
2216//
2217// Get an APNS VoIP channel
2218//
2219// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
2220// with awserr.Error's Code and Message methods to get detailed information about
2221// the error.
2222//
2223// See the AWS API reference guide for Amazon Pinpoint's
2224// API operation GetApnsVoipChannel for usage and error information.
2225//
2226// Returned Error Codes:
2227//   * ErrCodeBadRequestException "BadRequestException"
2228//   Simple message object.
2229//
2230//   * ErrCodeInternalServerErrorException "InternalServerErrorException"
2231//   Simple message object.
2232//
2233//   * ErrCodeForbiddenException "ForbiddenException"
2234//   Simple message object.
2235//
2236//   * ErrCodeNotFoundException "NotFoundException"
2237//   Simple message object.
2238//
2239//   * ErrCodeMethodNotAllowedException "MethodNotAllowedException"
2240//   Simple message object.
2241//
2242//   * ErrCodeTooManyRequestsException "TooManyRequestsException"
2243//   Simple message object.
2244//
2245// See also, https://docs.aws.amazon.com/goto/WebAPI/pinpoint-2016-12-01/GetApnsVoipChannel
2246func (c *Pinpoint) GetApnsVoipChannel(input *GetApnsVoipChannelInput) (*GetApnsVoipChannelOutput, error) {
2247	req, out := c.GetApnsVoipChannelRequest(input)
2248	return out, req.Send()
2249}
2250
2251// GetApnsVoipChannelWithContext is the same as GetApnsVoipChannel with the addition of
2252// the ability to pass a context and additional request options.
2253//
2254// See GetApnsVoipChannel for details on how to use this API operation.
2255//
2256// The context must be non-nil and will be used for request cancellation. If
2257// the context is nil a panic will occur. In the future the SDK may create
2258// sub-contexts for http.Requests. See https://golang.org/pkg/context/
2259// for more information on using Contexts.
2260func (c *Pinpoint) GetApnsVoipChannelWithContext(ctx aws.Context, input *GetApnsVoipChannelInput, opts ...request.Option) (*GetApnsVoipChannelOutput, error) {
2261	req, out := c.GetApnsVoipChannelRequest(input)
2262	req.SetContext(ctx)
2263	req.ApplyOptions(opts...)
2264	return out, req.Send()
2265}
2266
2267const opGetApnsVoipSandboxChannel = "GetApnsVoipSandboxChannel"
2268
2269// GetApnsVoipSandboxChannelRequest generates a "aws/request.Request" representing the
2270// client's request for the GetApnsVoipSandboxChannel operation. The "output" return
2271// value will be populated with the request's response once the request completes
2272// successfuly.
2273//
2274// Use "Send" method on the returned Request to send the API call to the service.
2275// the "output" return value is not valid until after Send returns without error.
2276//
2277// See GetApnsVoipSandboxChannel for more information on using the GetApnsVoipSandboxChannel
2278// API call, and error handling.
2279//
2280// This method is useful when you want to inject custom logic or configuration
2281// into the SDK's request lifecycle. Such as custom headers, or retry logic.
2282//
2283//
2284//    // Example sending a request using the GetApnsVoipSandboxChannelRequest method.
2285//    req, resp := client.GetApnsVoipSandboxChannelRequest(params)
2286//
2287//    err := req.Send()
2288//    if err == nil { // resp is now filled
2289//        fmt.Println(resp)
2290//    }
2291//
2292// See also, https://docs.aws.amazon.com/goto/WebAPI/pinpoint-2016-12-01/GetApnsVoipSandboxChannel
2293func (c *Pinpoint) GetApnsVoipSandboxChannelRequest(input *GetApnsVoipSandboxChannelInput) (req *request.Request, output *GetApnsVoipSandboxChannelOutput) {
2294	op := &request.Operation{
2295		Name:       opGetApnsVoipSandboxChannel,
2296		HTTPMethod: "GET",
2297		HTTPPath:   "/v1/apps/{application-id}/channels/apns_voip_sandbox",
2298	}
2299
2300	if input == nil {
2301		input = &GetApnsVoipSandboxChannelInput{}
2302	}
2303
2304	output = &GetApnsVoipSandboxChannelOutput{}
2305	req = c.newRequest(op, input, output)
2306	return
2307}
2308
2309// GetApnsVoipSandboxChannel API operation for Amazon Pinpoint.
2310//
2311// Get an APNS VoIPSandbox channel
2312//
2313// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
2314// with awserr.Error's Code and Message methods to get detailed information about
2315// the error.
2316//
2317// See the AWS API reference guide for Amazon Pinpoint's
2318// API operation GetApnsVoipSandboxChannel for usage and error information.
2319//
2320// Returned Error Codes:
2321//   * ErrCodeBadRequestException "BadRequestException"
2322//   Simple message object.
2323//
2324//   * ErrCodeInternalServerErrorException "InternalServerErrorException"
2325//   Simple message object.
2326//
2327//   * ErrCodeForbiddenException "ForbiddenException"
2328//   Simple message object.
2329//
2330//   * ErrCodeNotFoundException "NotFoundException"
2331//   Simple message object.
2332//
2333//   * ErrCodeMethodNotAllowedException "MethodNotAllowedException"
2334//   Simple message object.
2335//
2336//   * ErrCodeTooManyRequestsException "TooManyRequestsException"
2337//   Simple message object.
2338//
2339// See also, https://docs.aws.amazon.com/goto/WebAPI/pinpoint-2016-12-01/GetApnsVoipSandboxChannel
2340func (c *Pinpoint) GetApnsVoipSandboxChannel(input *GetApnsVoipSandboxChannelInput) (*GetApnsVoipSandboxChannelOutput, error) {
2341	req, out := c.GetApnsVoipSandboxChannelRequest(input)
2342	return out, req.Send()
2343}
2344
2345// GetApnsVoipSandboxChannelWithContext is the same as GetApnsVoipSandboxChannel with the addition of
2346// the ability to pass a context and additional request options.
2347//
2348// See GetApnsVoipSandboxChannel for details on how to use this API operation.
2349//
2350// The context must be non-nil and will be used for request cancellation. If
2351// the context is nil a panic will occur. In the future the SDK may create
2352// sub-contexts for http.Requests. See https://golang.org/pkg/context/
2353// for more information on using Contexts.
2354func (c *Pinpoint) GetApnsVoipSandboxChannelWithContext(ctx aws.Context, input *GetApnsVoipSandboxChannelInput, opts ...request.Option) (*GetApnsVoipSandboxChannelOutput, error) {
2355	req, out := c.GetApnsVoipSandboxChannelRequest(input)
2356	req.SetContext(ctx)
2357	req.ApplyOptions(opts...)
2358	return out, req.Send()
2359}
2360
2361const opGetApp = "GetApp"
2362
2363// GetAppRequest generates a "aws/request.Request" representing the
2364// client's request for the GetApp operation. The "output" return
2365// value will be populated with the request's response once the request completes
2366// successfuly.
2367//
2368// Use "Send" method on the returned Request to send the API call to the service.
2369// the "output" return value is not valid until after Send returns without error.
2370//
2371// See GetApp for more information on using the GetApp
2372// API call, and error handling.
2373//
2374// This method is useful when you want to inject custom logic or configuration
2375// into the SDK's request lifecycle. Such as custom headers, or retry logic.
2376//
2377//
2378//    // Example sending a request using the GetAppRequest method.
2379//    req, resp := client.GetAppRequest(params)
2380//
2381//    err := req.Send()
2382//    if err == nil { // resp is now filled
2383//        fmt.Println(resp)
2384//    }
2385//
2386// See also, https://docs.aws.amazon.com/goto/WebAPI/pinpoint-2016-12-01/GetApp
2387func (c *Pinpoint) GetAppRequest(input *GetAppInput) (req *request.Request, output *GetAppOutput) {
2388	op := &request.Operation{
2389		Name:       opGetApp,
2390		HTTPMethod: "GET",
2391		HTTPPath:   "/v1/apps/{application-id}",
2392	}
2393
2394	if input == nil {
2395		input = &GetAppInput{}
2396	}
2397
2398	output = &GetAppOutput{}
2399	req = c.newRequest(op, input, output)
2400	return
2401}
2402
2403// GetApp API operation for Amazon Pinpoint.
2404//
2405// Returns information about an app.
2406//
2407// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
2408// with awserr.Error's Code and Message methods to get detailed information about
2409// the error.
2410//
2411// See the AWS API reference guide for Amazon Pinpoint's
2412// API operation GetApp for usage and error information.
2413//
2414// Returned Error Codes:
2415//   * ErrCodeBadRequestException "BadRequestException"
2416//   Simple message object.
2417//
2418//   * ErrCodeInternalServerErrorException "InternalServerErrorException"
2419//   Simple message object.
2420//
2421//   * ErrCodeForbiddenException "ForbiddenException"
2422//   Simple message object.
2423//
2424//   * ErrCodeNotFoundException "NotFoundException"
2425//   Simple message object.
2426//
2427//   * ErrCodeMethodNotAllowedException "MethodNotAllowedException"
2428//   Simple message object.
2429//
2430//   * ErrCodeTooManyRequestsException "TooManyRequestsException"
2431//   Simple message object.
2432//
2433// See also, https://docs.aws.amazon.com/goto/WebAPI/pinpoint-2016-12-01/GetApp
2434func (c *Pinpoint) GetApp(input *GetAppInput) (*GetAppOutput, error) {
2435	req, out := c.GetAppRequest(input)
2436	return out, req.Send()
2437}
2438
2439// GetAppWithContext is the same as GetApp with the addition of
2440// the ability to pass a context and additional request options.
2441//
2442// See GetApp for details on how to use this API operation.
2443//
2444// The context must be non-nil and will be used for request cancellation. If
2445// the context is nil a panic will occur. In the future the SDK may create
2446// sub-contexts for http.Requests. See https://golang.org/pkg/context/
2447// for more information on using Contexts.
2448func (c *Pinpoint) GetAppWithContext(ctx aws.Context, input *GetAppInput, opts ...request.Option) (*GetAppOutput, error) {
2449	req, out := c.GetAppRequest(input)
2450	req.SetContext(ctx)
2451	req.ApplyOptions(opts...)
2452	return out, req.Send()
2453}
2454
2455const opGetApplicationSettings = "GetApplicationSettings"
2456
2457// GetApplicationSettingsRequest generates a "aws/request.Request" representing the
2458// client's request for the GetApplicationSettings operation. The "output" return
2459// value will be populated with the request's response once the request completes
2460// successfuly.
2461//
2462// Use "Send" method on the returned Request to send the API call to the service.
2463// the "output" return value is not valid until after Send returns without error.
2464//
2465// See GetApplicationSettings for more information on using the GetApplicationSettings
2466// API call, and error handling.
2467//
2468// This method is useful when you want to inject custom logic or configuration
2469// into the SDK's request lifecycle. Such as custom headers, or retry logic.
2470//
2471//
2472//    // Example sending a request using the GetApplicationSettingsRequest method.
2473//    req, resp := client.GetApplicationSettingsRequest(params)
2474//
2475//    err := req.Send()
2476//    if err == nil { // resp is now filled
2477//        fmt.Println(resp)
2478//    }
2479//
2480// See also, https://docs.aws.amazon.com/goto/WebAPI/pinpoint-2016-12-01/GetApplicationSettings
2481func (c *Pinpoint) GetApplicationSettingsRequest(input *GetApplicationSettingsInput) (req *request.Request, output *GetApplicationSettingsOutput) {
2482	op := &request.Operation{
2483		Name:       opGetApplicationSettings,
2484		HTTPMethod: "GET",
2485		HTTPPath:   "/v1/apps/{application-id}/settings",
2486	}
2487
2488	if input == nil {
2489		input = &GetApplicationSettingsInput{}
2490	}
2491
2492	output = &GetApplicationSettingsOutput{}
2493	req = c.newRequest(op, input, output)
2494	return
2495}
2496
2497// GetApplicationSettings API operation for Amazon Pinpoint.
2498//
2499// Used to request the settings for an app.
2500//
2501// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
2502// with awserr.Error's Code and Message methods to get detailed information about
2503// the error.
2504//
2505// See the AWS API reference guide for Amazon Pinpoint's
2506// API operation GetApplicationSettings for usage and error information.
2507//
2508// Returned Error Codes:
2509//   * ErrCodeBadRequestException "BadRequestException"
2510//   Simple message object.
2511//
2512//   * ErrCodeInternalServerErrorException "InternalServerErrorException"
2513//   Simple message object.
2514//
2515//   * ErrCodeForbiddenException "ForbiddenException"
2516//   Simple message object.
2517//
2518//   * ErrCodeNotFoundException "NotFoundException"
2519//   Simple message object.
2520//
2521//   * ErrCodeMethodNotAllowedException "MethodNotAllowedException"
2522//   Simple message object.
2523//
2524//   * ErrCodeTooManyRequestsException "TooManyRequestsException"
2525//   Simple message object.
2526//
2527// See also, https://docs.aws.amazon.com/goto/WebAPI/pinpoint-2016-12-01/GetApplicationSettings
2528func (c *Pinpoint) GetApplicationSettings(input *GetApplicationSettingsInput) (*GetApplicationSettingsOutput, error) {
2529	req, out := c.GetApplicationSettingsRequest(input)
2530	return out, req.Send()
2531}
2532
2533// GetApplicationSettingsWithContext is the same as GetApplicationSettings with the addition of
2534// the ability to pass a context and additional request options.
2535//
2536// See GetApplicationSettings for details on how to use this API operation.
2537//
2538// The context must be non-nil and will be used for request cancellation. If
2539// the context is nil a panic will occur. In the future the SDK may create
2540// sub-contexts for http.Requests. See https://golang.org/pkg/context/
2541// for more information on using Contexts.
2542func (c *Pinpoint) GetApplicationSettingsWithContext(ctx aws.Context, input *GetApplicationSettingsInput, opts ...request.Option) (*GetApplicationSettingsOutput, error) {
2543	req, out := c.GetApplicationSettingsRequest(input)
2544	req.SetContext(ctx)
2545	req.ApplyOptions(opts...)
2546	return out, req.Send()
2547}
2548
2549const opGetApps = "GetApps"
2550
2551// GetAppsRequest generates a "aws/request.Request" representing the
2552// client's request for the GetApps operation. The "output" return
2553// value will be populated with the request's response once the request completes
2554// successfuly.
2555//
2556// Use "Send" method on the returned Request to send the API call to the service.
2557// the "output" return value is not valid until after Send returns without error.
2558//
2559// See GetApps for more information on using the GetApps
2560// API call, and error handling.
2561//
2562// This method is useful when you want to inject custom logic or configuration
2563// into the SDK's request lifecycle. Such as custom headers, or retry logic.
2564//
2565//
2566//    // Example sending a request using the GetAppsRequest method.
2567//    req, resp := client.GetAppsRequest(params)
2568//
2569//    err := req.Send()
2570//    if err == nil { // resp is now filled
2571//        fmt.Println(resp)
2572//    }
2573//
2574// See also, https://docs.aws.amazon.com/goto/WebAPI/pinpoint-2016-12-01/GetApps
2575func (c *Pinpoint) GetAppsRequest(input *GetAppsInput) (req *request.Request, output *GetAppsOutput) {
2576	op := &request.Operation{
2577		Name:       opGetApps,
2578		HTTPMethod: "GET",
2579		HTTPPath:   "/v1/apps",
2580	}
2581
2582	if input == nil {
2583		input = &GetAppsInput{}
2584	}
2585
2586	output = &GetAppsOutput{}
2587	req = c.newRequest(op, input, output)
2588	return
2589}
2590
2591// GetApps API operation for Amazon Pinpoint.
2592//
2593// Returns information about your apps.
2594//
2595// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
2596// with awserr.Error's Code and Message methods to get detailed information about
2597// the error.
2598//
2599// See the AWS API reference guide for Amazon Pinpoint's
2600// API operation GetApps for usage and error information.
2601//
2602// Returned Error Codes:
2603//   * ErrCodeBadRequestException "BadRequestException"
2604//   Simple message object.
2605//
2606//   * ErrCodeInternalServerErrorException "InternalServerErrorException"
2607//   Simple message object.
2608//
2609//   * ErrCodeForbiddenException "ForbiddenException"
2610//   Simple message object.
2611//
2612//   * ErrCodeNotFoundException "NotFoundException"
2613//   Simple message object.
2614//
2615//   * ErrCodeMethodNotAllowedException "MethodNotAllowedException"
2616//   Simple message object.
2617//
2618//   * ErrCodeTooManyRequestsException "TooManyRequestsException"
2619//   Simple message object.
2620//
2621// See also, https://docs.aws.amazon.com/goto/WebAPI/pinpoint-2016-12-01/GetApps
2622func (c *Pinpoint) GetApps(input *GetAppsInput) (*GetAppsOutput, error) {
2623	req, out := c.GetAppsRequest(input)
2624	return out, req.Send()
2625}
2626
2627// GetAppsWithContext is the same as GetApps with the addition of
2628// the ability to pass a context and additional request options.
2629//
2630// See GetApps for details on how to use this API operation.
2631//
2632// The context must be non-nil and will be used for request cancellation. If
2633// the context is nil a panic will occur. In the future the SDK may create
2634// sub-contexts for http.Requests. See https://golang.org/pkg/context/
2635// for more information on using Contexts.
2636func (c *Pinpoint) GetAppsWithContext(ctx aws.Context, input *GetAppsInput, opts ...request.Option) (*GetAppsOutput, error) {
2637	req, out := c.GetAppsRequest(input)
2638	req.SetContext(ctx)
2639	req.ApplyOptions(opts...)
2640	return out, req.Send()
2641}
2642
2643const opGetBaiduChannel = "GetBaiduChannel"
2644
2645// GetBaiduChannelRequest generates a "aws/request.Request" representing the
2646// client's request for the GetBaiduChannel operation. The "output" return
2647// value will be populated with the request's response once the request completes
2648// successfuly.
2649//
2650// Use "Send" method on the returned Request to send the API call to the service.
2651// the "output" return value is not valid until after Send returns without error.
2652//
2653// See GetBaiduChannel for more information on using the GetBaiduChannel
2654// API call, and error handling.
2655//
2656// This method is useful when you want to inject custom logic or configuration
2657// into the SDK's request lifecycle. Such as custom headers, or retry logic.
2658//
2659//
2660//    // Example sending a request using the GetBaiduChannelRequest method.
2661//    req, resp := client.GetBaiduChannelRequest(params)
2662//
2663//    err := req.Send()
2664//    if err == nil { // resp is now filled
2665//        fmt.Println(resp)
2666//    }
2667//
2668// See also, https://docs.aws.amazon.com/goto/WebAPI/pinpoint-2016-12-01/GetBaiduChannel
2669func (c *Pinpoint) GetBaiduChannelRequest(input *GetBaiduChannelInput) (req *request.Request, output *GetBaiduChannelOutput) {
2670	op := &request.Operation{
2671		Name:       opGetBaiduChannel,
2672		HTTPMethod: "GET",
2673		HTTPPath:   "/v1/apps/{application-id}/channels/baidu",
2674	}
2675
2676	if input == nil {
2677		input = &GetBaiduChannelInput{}
2678	}
2679
2680	output = &GetBaiduChannelOutput{}
2681	req = c.newRequest(op, input, output)
2682	return
2683}
2684
2685// GetBaiduChannel API operation for Amazon Pinpoint.
2686//
2687// Get a BAIDU GCM channel
2688//
2689// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
2690// with awserr.Error's Code and Message methods to get detailed information about
2691// the error.
2692//
2693// See the AWS API reference guide for Amazon Pinpoint's
2694// API operation GetBaiduChannel for usage and error information.
2695//
2696// Returned Error Codes:
2697//   * ErrCodeBadRequestException "BadRequestException"
2698//   Simple message object.
2699//
2700//   * ErrCodeInternalServerErrorException "InternalServerErrorException"
2701//   Simple message object.
2702//
2703//   * ErrCodeForbiddenException "ForbiddenException"
2704//   Simple message object.
2705//
2706//   * ErrCodeNotFoundException "NotFoundException"
2707//   Simple message object.
2708//
2709//   * ErrCodeMethodNotAllowedException "MethodNotAllowedException"
2710//   Simple message object.
2711//
2712//   * ErrCodeTooManyRequestsException "TooManyRequestsException"
2713//   Simple message object.
2714//
2715// See also, https://docs.aws.amazon.com/goto/WebAPI/pinpoint-2016-12-01/GetBaiduChannel
2716func (c *Pinpoint) GetBaiduChannel(input *GetBaiduChannelInput) (*GetBaiduChannelOutput, error) {
2717	req, out := c.GetBaiduChannelRequest(input)
2718	return out, req.Send()
2719}
2720
2721// GetBaiduChannelWithContext is the same as GetBaiduChannel with the addition of
2722// the ability to pass a context and additional request options.
2723//
2724// See GetBaiduChannel for details on how to use this API operation.
2725//
2726// The context must be non-nil and will be used for request cancellation. If
2727// the context is nil a panic will occur. In the future the SDK may create
2728// sub-contexts for http.Requests. See https://golang.org/pkg/context/
2729// for more information on using Contexts.
2730func (c *Pinpoint) GetBaiduChannelWithContext(ctx aws.Context, input *GetBaiduChannelInput, opts ...request.Option) (*GetBaiduChannelOutput, error) {
2731	req, out := c.GetBaiduChannelRequest(input)
2732	req.SetContext(ctx)
2733	req.ApplyOptions(opts...)
2734	return out, req.Send()
2735}
2736
2737const opGetCampaign = "GetCampaign"
2738
2739// GetCampaignRequest generates a "aws/request.Request" representing the
2740// client's request for the GetCampaign operation. The "output" return
2741// value will be populated with the request's response once the request completes
2742// successfuly.
2743//
2744// Use "Send" method on the returned Request to send the API call to the service.
2745// the "output" return value is not valid until after Send returns without error.
2746//
2747// See GetCampaign for more information on using the GetCampaign
2748// API call, and error handling.
2749//
2750// This method is useful when you want to inject custom logic or configuration
2751// into the SDK's request lifecycle. Such as custom headers, or retry logic.
2752//
2753//
2754//    // Example sending a request using the GetCampaignRequest method.
2755//    req, resp := client.GetCampaignRequest(params)
2756//
2757//    err := req.Send()
2758//    if err == nil { // resp is now filled
2759//        fmt.Println(resp)
2760//    }
2761//
2762// See also, https://docs.aws.amazon.com/goto/WebAPI/pinpoint-2016-12-01/GetCampaign
2763func (c *Pinpoint) GetCampaignRequest(input *GetCampaignInput) (req *request.Request, output *GetCampaignOutput) {
2764	op := &request.Operation{
2765		Name:       opGetCampaign,
2766		HTTPMethod: "GET",
2767		HTTPPath:   "/v1/apps/{application-id}/campaigns/{campaign-id}",
2768	}
2769
2770	if input == nil {
2771		input = &GetCampaignInput{}
2772	}
2773
2774	output = &GetCampaignOutput{}
2775	req = c.newRequest(op, input, output)
2776	return
2777}
2778
2779// GetCampaign API operation for Amazon Pinpoint.
2780//
2781// Returns information about a campaign.
2782//
2783// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
2784// with awserr.Error's Code and Message methods to get detailed information about
2785// the error.
2786//
2787// See the AWS API reference guide for Amazon Pinpoint's
2788// API operation GetCampaign for usage and error information.
2789//
2790// Returned Error Codes:
2791//   * ErrCodeBadRequestException "BadRequestException"
2792//   Simple message object.
2793//
2794//   * ErrCodeInternalServerErrorException "InternalServerErrorException"
2795//   Simple message object.
2796//
2797//   * ErrCodeForbiddenException "ForbiddenException"
2798//   Simple message object.
2799//
2800//   * ErrCodeNotFoundException "NotFoundException"
2801//   Simple message object.
2802//
2803//   * ErrCodeMethodNotAllowedException "MethodNotAllowedException"
2804//   Simple message object.
2805//
2806//   * ErrCodeTooManyRequestsException "TooManyRequestsException"
2807//   Simple message object.
2808//
2809// See also, https://docs.aws.amazon.com/goto/WebAPI/pinpoint-2016-12-01/GetCampaign
2810func (c *Pinpoint) GetCampaign(input *GetCampaignInput) (*GetCampaignOutput, error) {
2811	req, out := c.GetCampaignRequest(input)
2812	return out, req.Send()
2813}
2814
2815// GetCampaignWithContext is the same as GetCampaign with the addition of
2816// the ability to pass a context and additional request options.
2817//
2818// See GetCampaign for details on how to use this API operation.
2819//
2820// The context must be non-nil and will be used for request cancellation. If
2821// the context is nil a panic will occur. In the future the SDK may create
2822// sub-contexts for http.Requests. See https://golang.org/pkg/context/
2823// for more information on using Contexts.
2824func (c *Pinpoint) GetCampaignWithContext(ctx aws.Context, input *GetCampaignInput, opts ...request.Option) (*GetCampaignOutput, error) {
2825	req, out := c.GetCampaignRequest(input)
2826	req.SetContext(ctx)
2827	req.ApplyOptions(opts...)
2828	return out, req.Send()
2829}
2830
2831const opGetCampaignActivities = "GetCampaignActivities"
2832
2833// GetCampaignActivitiesRequest generates a "aws/request.Request" representing the
2834// client's request for the GetCampaignActivities operation. The "output" return
2835// value will be populated with the request's response once the request completes
2836// successfuly.
2837//
2838// Use "Send" method on the returned Request to send the API call to the service.
2839// the "output" return value is not valid until after Send returns without error.
2840//
2841// See GetCampaignActivities for more information on using the GetCampaignActivities
2842// API call, and error handling.
2843//
2844// This method is useful when you want to inject custom logic or configuration
2845// into the SDK's request lifecycle. Such as custom headers, or retry logic.
2846//
2847//
2848//    // Example sending a request using the GetCampaignActivitiesRequest method.
2849//    req, resp := client.GetCampaignActivitiesRequest(params)
2850//
2851//    err := req.Send()
2852//    if err == nil { // resp is now filled
2853//        fmt.Println(resp)
2854//    }
2855//
2856// See also, https://docs.aws.amazon.com/goto/WebAPI/pinpoint-2016-12-01/GetCampaignActivities
2857func (c *Pinpoint) GetCampaignActivitiesRequest(input *GetCampaignActivitiesInput) (req *request.Request, output *GetCampaignActivitiesOutput) {
2858	op := &request.Operation{
2859		Name:       opGetCampaignActivities,
2860		HTTPMethod: "GET",
2861		HTTPPath:   "/v1/apps/{application-id}/campaigns/{campaign-id}/activities",
2862	}
2863
2864	if input == nil {
2865		input = &GetCampaignActivitiesInput{}
2866	}
2867
2868	output = &GetCampaignActivitiesOutput{}
2869	req = c.newRequest(op, input, output)
2870	return
2871}
2872
2873// GetCampaignActivities API operation for Amazon Pinpoint.
2874//
2875// Returns information about the activity performed by a campaign.
2876//
2877// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
2878// with awserr.Error's Code and Message methods to get detailed information about
2879// the error.
2880//
2881// See the AWS API reference guide for Amazon Pinpoint's
2882// API operation GetCampaignActivities for usage and error information.
2883//
2884// Returned Error Codes:
2885//   * ErrCodeBadRequestException "BadRequestException"
2886//   Simple message object.
2887//
2888//   * ErrCodeInternalServerErrorException "InternalServerErrorException"
2889//   Simple message object.
2890//
2891//   * ErrCodeForbiddenException "ForbiddenException"
2892//   Simple message object.
2893//
2894//   * ErrCodeNotFoundException "NotFoundException"
2895//   Simple message object.
2896//
2897//   * ErrCodeMethodNotAllowedException "MethodNotAllowedException"
2898//   Simple message object.
2899//
2900//   * ErrCodeTooManyRequestsException "TooManyRequestsException"
2901//   Simple message object.
2902//
2903// See also, https://docs.aws.amazon.com/goto/WebAPI/pinpoint-2016-12-01/GetCampaignActivities
2904func (c *Pinpoint) GetCampaignActivities(input *GetCampaignActivitiesInput) (*GetCampaignActivitiesOutput, error) {
2905	req, out := c.GetCampaignActivitiesRequest(input)
2906	return out, req.Send()
2907}
2908
2909// GetCampaignActivitiesWithContext is the same as GetCampaignActivities with the addition of
2910// the ability to pass a context and additional request options.
2911//
2912// See GetCampaignActivities for details on how to use this API operation.
2913//
2914// The context must be non-nil and will be used for request cancellation. If
2915// the context is nil a panic will occur. In the future the SDK may create
2916// sub-contexts for http.Requests. See https://golang.org/pkg/context/
2917// for more information on using Contexts.
2918func (c *Pinpoint) GetCampaignActivitiesWithContext(ctx aws.Context, input *GetCampaignActivitiesInput, opts ...request.Option) (*GetCampaignActivitiesOutput, error) {
2919	req, out := c.GetCampaignActivitiesRequest(input)
2920	req.SetContext(ctx)
2921	req.ApplyOptions(opts...)
2922	return out, req.Send()
2923}
2924
2925const opGetCampaignVersion = "GetCampaignVersion"
2926
2927// GetCampaignVersionRequest generates a "aws/request.Request" representing the
2928// client's request for the GetCampaignVersion operation. The "output" return
2929// value will be populated with the request's response once the request completes
2930// successfuly.
2931//
2932// Use "Send" method on the returned Request to send the API call to the service.
2933// the "output" return value is not valid until after Send returns without error.
2934//
2935// See GetCampaignVersion for more information on using the GetCampaignVersion
2936// API call, and error handling.
2937//
2938// This method is useful when you want to inject custom logic or configuration
2939// into the SDK's request lifecycle. Such as custom headers, or retry logic.
2940//
2941//
2942//    // Example sending a request using the GetCampaignVersionRequest method.
2943//    req, resp := client.GetCampaignVersionRequest(params)
2944//
2945//    err := req.Send()
2946//    if err == nil { // resp is now filled
2947//        fmt.Println(resp)
2948//    }
2949//
2950// See also, https://docs.aws.amazon.com/goto/WebAPI/pinpoint-2016-12-01/GetCampaignVersion
2951func (c *Pinpoint) GetCampaignVersionRequest(input *GetCampaignVersionInput) (req *request.Request, output *GetCampaignVersionOutput) {
2952	op := &request.Operation{
2953		Name:       opGetCampaignVersion,
2954		HTTPMethod: "GET",
2955		HTTPPath:   "/v1/apps/{application-id}/campaigns/{campaign-id}/versions/{version}",
2956	}
2957
2958	if input == nil {
2959		input = &GetCampaignVersionInput{}
2960	}
2961
2962	output = &GetCampaignVersionOutput{}
2963	req = c.newRequest(op, input, output)
2964	return
2965}
2966
2967// GetCampaignVersion API operation for Amazon Pinpoint.
2968//
2969// Returns information about a specific version of a campaign.
2970//
2971// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
2972// with awserr.Error's Code and Message methods to get detailed information about
2973// the error.
2974//
2975// See the AWS API reference guide for Amazon Pinpoint's
2976// API operation GetCampaignVersion for usage and error information.
2977//
2978// Returned Error Codes:
2979//   * ErrCodeBadRequestException "BadRequestException"
2980//   Simple message object.
2981//
2982//   * ErrCodeInternalServerErrorException "InternalServerErrorException"
2983//   Simple message object.
2984//
2985//   * ErrCodeForbiddenException "ForbiddenException"
2986//   Simple message object.
2987//
2988//   * ErrCodeNotFoundException "NotFoundException"
2989//   Simple message object.
2990//
2991//   * ErrCodeMethodNotAllowedException "MethodNotAllowedException"
2992//   Simple message object.
2993//
2994//   * ErrCodeTooManyRequestsException "TooManyRequestsException"
2995//   Simple message object.
2996//
2997// See also, https://docs.aws.amazon.com/goto/WebAPI/pinpoint-2016-12-01/GetCampaignVersion
2998func (c *Pinpoint) GetCampaignVersion(input *GetCampaignVersionInput) (*GetCampaignVersionOutput, error) {
2999	req, out := c.GetCampaignVersionRequest(input)
3000	return out, req.Send()
3001}
3002
3003// GetCampaignVersionWithContext is the same as GetCampaignVersion with the addition of
3004// the ability to pass a context and additional request options.
3005//
3006// See GetCampaignVersion for details on how to use this API operation.
3007//
3008// The context must be non-nil and will be used for request cancellation. If
3009// the context is nil a panic will occur. In the future the SDK may create
3010// sub-contexts for http.Requests. See https://golang.org/pkg/context/
3011// for more information on using Contexts.
3012func (c *Pinpoint) GetCampaignVersionWithContext(ctx aws.Context, input *GetCampaignVersionInput, opts ...request.Option) (*GetCampaignVersionOutput, error) {
3013	req, out := c.GetCampaignVersionRequest(input)
3014	req.SetContext(ctx)
3015	req.ApplyOptions(opts...)
3016	return out, req.Send()
3017}
3018
3019const opGetCampaignVersions = "GetCampaignVersions"
3020
3021// GetCampaignVersionsRequest generates a "aws/request.Request" representing the
3022// client's request for the GetCampaignVersions operation. The "output" return
3023// value will be populated with the request's response once the request completes
3024// successfuly.
3025//
3026// Use "Send" method on the returned Request to send the API call to the service.
3027// the "output" return value is not valid until after Send returns without error.
3028//
3029// See GetCampaignVersions for more information on using the GetCampaignVersions
3030// API call, and error handling.
3031//
3032// This method is useful when you want to inject custom logic or configuration
3033// into the SDK's request lifecycle. Such as custom headers, or retry logic.
3034//
3035//
3036//    // Example sending a request using the GetCampaignVersionsRequest method.
3037//    req, resp := client.GetCampaignVersionsRequest(params)
3038//
3039//    err := req.Send()
3040//    if err == nil { // resp is now filled
3041//        fmt.Println(resp)
3042//    }
3043//
3044// See also, https://docs.aws.amazon.com/goto/WebAPI/pinpoint-2016-12-01/GetCampaignVersions
3045func (c *Pinpoint) GetCampaignVersionsRequest(input *GetCampaignVersionsInput) (req *request.Request, output *GetCampaignVersionsOutput) {
3046	op := &request.Operation{
3047		Name:       opGetCampaignVersions,
3048		HTTPMethod: "GET",
3049		HTTPPath:   "/v1/apps/{application-id}/campaigns/{campaign-id}/versions",
3050	}
3051
3052	if input == nil {
3053		input = &GetCampaignVersionsInput{}
3054	}
3055
3056	output = &GetCampaignVersionsOutput{}
3057	req = c.newRequest(op, input, output)
3058	return
3059}
3060
3061// GetCampaignVersions API operation for Amazon Pinpoint.
3062//
3063// Returns information about your campaign versions.
3064//
3065// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
3066// with awserr.Error's Code and Message methods to get detailed information about
3067// the error.
3068//
3069// See the AWS API reference guide for Amazon Pinpoint's
3070// API operation GetCampaignVersions for usage and error information.
3071//
3072// Returned Error Codes:
3073//   * ErrCodeBadRequestException "BadRequestException"
3074//   Simple message object.
3075//
3076//   * ErrCodeInternalServerErrorException "InternalServerErrorException"
3077//   Simple message object.
3078//
3079//   * ErrCodeForbiddenException "ForbiddenException"
3080//   Simple message object.
3081//
3082//   * ErrCodeNotFoundException "NotFoundException"
3083//   Simple message object.
3084//
3085//   * ErrCodeMethodNotAllowedException "MethodNotAllowedException"
3086//   Simple message object.
3087//
3088//   * ErrCodeTooManyRequestsException "TooManyRequestsException"
3089//   Simple message object.
3090//
3091// See also, https://docs.aws.amazon.com/goto/WebAPI/pinpoint-2016-12-01/GetCampaignVersions
3092func (c *Pinpoint) GetCampaignVersions(input *GetCampaignVersionsInput) (*GetCampaignVersionsOutput, error) {
3093	req, out := c.GetCampaignVersionsRequest(input)
3094	return out, req.Send()
3095}
3096
3097// GetCampaignVersionsWithContext is the same as GetCampaignVersions with the addition of
3098// the ability to pass a context and additional request options.
3099//
3100// See GetCampaignVersions for details on how to use this API operation.
3101//
3102// The context must be non-nil and will be used for request cancellation. If
3103// the context is nil a panic will occur. In the future the SDK may create
3104// sub-contexts for http.Requests. See https://golang.org/pkg/context/
3105// for more information on using Contexts.
3106func (c *Pinpoint) GetCampaignVersionsWithContext(ctx aws.Context, input *GetCampaignVersionsInput, opts ...request.Option) (*GetCampaignVersionsOutput, error) {
3107	req, out := c.GetCampaignVersionsRequest(input)
3108	req.SetContext(ctx)
3109	req.ApplyOptions(opts...)
3110	return out, req.Send()
3111}
3112
3113const opGetCampaigns = "GetCampaigns"
3114
3115// GetCampaignsRequest generates a "aws/request.Request" representing the
3116// client's request for the GetCampaigns operation. The "output" return
3117// value will be populated with the request's response once the request completes
3118// successfuly.
3119//
3120// Use "Send" method on the returned Request to send the API call to the service.
3121// the "output" return value is not valid until after Send returns without error.
3122//
3123// See GetCampaigns for more information on using the GetCampaigns
3124// API call, and error handling.
3125//
3126// This method is useful when you want to inject custom logic or configuration
3127// into the SDK's request lifecycle. Such as custom headers, or retry logic.
3128//
3129//
3130//    // Example sending a request using the GetCampaignsRequest method.
3131//    req, resp := client.GetCampaignsRequest(params)
3132//
3133//    err := req.Send()
3134//    if err == nil { // resp is now filled
3135//        fmt.Println(resp)
3136//    }
3137//
3138// See also, https://docs.aws.amazon.com/goto/WebAPI/pinpoint-2016-12-01/GetCampaigns
3139func (c *Pinpoint) GetCampaignsRequest(input *GetCampaignsInput) (req *request.Request, output *GetCampaignsOutput) {
3140	op := &request.Operation{
3141		Name:       opGetCampaigns,
3142		HTTPMethod: "GET",
3143		HTTPPath:   "/v1/apps/{application-id}/campaigns",
3144	}
3145
3146	if input == nil {
3147		input = &GetCampaignsInput{}
3148	}
3149
3150	output = &GetCampaignsOutput{}
3151	req = c.newRequest(op, input, output)
3152	return
3153}
3154
3155// GetCampaigns API operation for Amazon Pinpoint.
3156//
3157// Returns information about your campaigns.
3158//
3159// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
3160// with awserr.Error's Code and Message methods to get detailed information about
3161// the error.
3162//
3163// See the AWS API reference guide for Amazon Pinpoint's
3164// API operation GetCampaigns for usage and error information.
3165//
3166// Returned Error Codes:
3167//   * ErrCodeBadRequestException "BadRequestException"
3168//   Simple message object.
3169//
3170//   * ErrCodeInternalServerErrorException "InternalServerErrorException"
3171//   Simple message object.
3172//
3173//   * ErrCodeForbiddenException "ForbiddenException"
3174//   Simple message object.
3175//
3176//   * ErrCodeNotFoundException "NotFoundException"
3177//   Simple message object.
3178//
3179//   * ErrCodeMethodNotAllowedException "MethodNotAllowedException"
3180//   Simple message object.
3181//
3182//   * ErrCodeTooManyRequestsException "TooManyRequestsException"
3183//   Simple message object.
3184//
3185// See also, https://docs.aws.amazon.com/goto/WebAPI/pinpoint-2016-12-01/GetCampaigns
3186func (c *Pinpoint) GetCampaigns(input *GetCampaignsInput) (*GetCampaignsOutput, error) {
3187	req, out := c.GetCampaignsRequest(input)
3188	return out, req.Send()
3189}
3190
3191// GetCampaignsWithContext is the same as GetCampaigns with the addition of
3192// the ability to pass a context and additional request options.
3193//
3194// See GetCampaigns for details on how to use this API operation.
3195//
3196// The context must be non-nil and will be used for request cancellation. If
3197// the context is nil a panic will occur. In the future the SDK may create
3198// sub-contexts for http.Requests. See https://golang.org/pkg/context/
3199// for more information on using Contexts.
3200func (c *Pinpoint) GetCampaignsWithContext(ctx aws.Context, input *GetCampaignsInput, opts ...request.Option) (*GetCampaignsOutput, error) {
3201	req, out := c.GetCampaignsRequest(input)
3202	req.SetContext(ctx)
3203	req.ApplyOptions(opts...)
3204	return out, req.Send()
3205}
3206
3207const opGetChannels = "GetChannels"
3208
3209// GetChannelsRequest generates a "aws/request.Request" representing the
3210// client's request for the GetChannels operation. The "output" return
3211// value will be populated with the request's response once the request completes
3212// successfuly.
3213//
3214// Use "Send" method on the returned Request to send the API call to the service.
3215// the "output" return value is not valid until after Send returns without error.
3216//
3217// See GetChannels for more information on using the GetChannels
3218// API call, and error handling.
3219//
3220// This method is useful when you want to inject custom logic or configuration
3221// into the SDK's request lifecycle. Such as custom headers, or retry logic.
3222//
3223//
3224//    // Example sending a request using the GetChannelsRequest method.
3225//    req, resp := client.GetChannelsRequest(params)
3226//
3227//    err := req.Send()
3228//    if err == nil { // resp is now filled
3229//        fmt.Println(resp)
3230//    }
3231//
3232// See also, https://docs.aws.amazon.com/goto/WebAPI/pinpoint-2016-12-01/GetChannels
3233func (c *Pinpoint) GetChannelsRequest(input *GetChannelsInput) (req *request.Request, output *GetChannelsOutput) {
3234	op := &request.Operation{
3235		Name:       opGetChannels,
3236		HTTPMethod: "GET",
3237		HTTPPath:   "/v1/apps/{application-id}/channels",
3238	}
3239
3240	if input == nil {
3241		input = &GetChannelsInput{}
3242	}
3243
3244	output = &GetChannelsOutput{}
3245	req = c.newRequest(op, input, output)
3246	return
3247}
3248
3249// GetChannels API operation for Amazon Pinpoint.
3250//
3251// Get all channels.
3252//
3253// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
3254// with awserr.Error's Code and Message methods to get detailed information about
3255// the error.
3256//
3257// See the AWS API reference guide for Amazon Pinpoint's
3258// API operation GetChannels for usage and error information.
3259//
3260// Returned Error Codes:
3261//   * ErrCodeBadRequestException "BadRequestException"
3262//   Simple message object.
3263//
3264//   * ErrCodeInternalServerErrorException "InternalServerErrorException"
3265//   Simple message object.
3266//
3267//   * ErrCodeForbiddenException "ForbiddenException"
3268//   Simple message object.
3269//
3270//   * ErrCodeNotFoundException "NotFoundException"
3271//   Simple message object.
3272//
3273//   * ErrCodeMethodNotAllowedException "MethodNotAllowedException"
3274//   Simple message object.
3275//
3276//   * ErrCodeTooManyRequestsException "TooManyRequestsException"
3277//   Simple message object.
3278//
3279// See also, https://docs.aws.amazon.com/goto/WebAPI/pinpoint-2016-12-01/GetChannels
3280func (c *Pinpoint) GetChannels(input *GetChannelsInput) (*GetChannelsOutput, error) {
3281	req, out := c.GetChannelsRequest(input)
3282	return out, req.Send()
3283}
3284
3285// GetChannelsWithContext is the same as GetChannels with the addition of
3286// the ability to pass a context and additional request options.
3287//
3288// See GetChannels for details on how to use this API operation.
3289//
3290// The context must be non-nil and will be used for request cancellation. If
3291// the context is nil a panic will occur. In the future the SDK may create
3292// sub-contexts for http.Requests. See https://golang.org/pkg/context/
3293// for more information on using Contexts.
3294func (c *Pinpoint) GetChannelsWithContext(ctx aws.Context, input *GetChannelsInput, opts ...request.Option) (*GetChannelsOutput, error) {
3295	req, out := c.GetChannelsRequest(input)
3296	req.SetContext(ctx)
3297	req.ApplyOptions(opts...)
3298	return out, req.Send()
3299}
3300
3301const opGetEmailChannel = "GetEmailChannel"
3302
3303// GetEmailChannelRequest generates a "aws/request.Request" representing the
3304// client's request for the GetEmailChannel operation. The "output" return
3305// value will be populated with the request's response once the request completes
3306// successfuly.
3307//
3308// Use "Send" method on the returned Request to send the API call to the service.
3309// the "output" return value is not valid until after Send returns without error.
3310//
3311// See GetEmailChannel for more information on using the GetEmailChannel
3312// API call, and error handling.
3313//
3314// This method is useful when you want to inject custom logic or configuration
3315// into the SDK's request lifecycle. Such as custom headers, or retry logic.
3316//
3317//
3318//    // Example sending a request using the GetEmailChannelRequest method.
3319//    req, resp := client.GetEmailChannelRequest(params)
3320//
3321//    err := req.Send()
3322//    if err == nil { // resp is now filled
3323//        fmt.Println(resp)
3324//    }
3325//
3326// See also, https://docs.aws.amazon.com/goto/WebAPI/pinpoint-2016-12-01/GetEmailChannel
3327func (c *Pinpoint) GetEmailChannelRequest(input *GetEmailChannelInput) (req *request.Request, output *GetEmailChannelOutput) {
3328	op := &request.Operation{
3329		Name:       opGetEmailChannel,
3330		HTTPMethod: "GET",
3331		HTTPPath:   "/v1/apps/{application-id}/channels/email",
3332	}
3333
3334	if input == nil {
3335		input = &GetEmailChannelInput{}
3336	}
3337
3338	output = &GetEmailChannelOutput{}
3339	req = c.newRequest(op, input, output)
3340	return
3341}
3342
3343// GetEmailChannel API operation for Amazon Pinpoint.
3344//
3345// Get an email channel.
3346//
3347// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
3348// with awserr.Error's Code and Message methods to get detailed information about
3349// the error.
3350//
3351// See the AWS API reference guide for Amazon Pinpoint's
3352// API operation GetEmailChannel for usage and error information.
3353//
3354// Returned Error Codes:
3355//   * ErrCodeBadRequestException "BadRequestException"
3356//   Simple message object.
3357//
3358//   * ErrCodeInternalServerErrorException "InternalServerErrorException"
3359//   Simple message object.
3360//
3361//   * ErrCodeForbiddenException "ForbiddenException"
3362//   Simple message object.
3363//
3364//   * ErrCodeNotFoundException "NotFoundException"
3365//   Simple message object.
3366//
3367//   * ErrCodeMethodNotAllowedException "MethodNotAllowedException"
3368//   Simple message object.
3369//
3370//   * ErrCodeTooManyRequestsException "TooManyRequestsException"
3371//   Simple message object.
3372//
3373// See also, https://docs.aws.amazon.com/goto/WebAPI/pinpoint-2016-12-01/GetEmailChannel
3374func (c *Pinpoint) GetEmailChannel(input *GetEmailChannelInput) (*GetEmailChannelOutput, error) {
3375	req, out := c.GetEmailChannelRequest(input)
3376	return out, req.Send()
3377}
3378
3379// GetEmailChannelWithContext is the same as GetEmailChannel with the addition of
3380// the ability to pass a context and additional request options.
3381//
3382// See GetEmailChannel for details on how to use this API operation.
3383//
3384// The context must be non-nil and will be used for request cancellation. If
3385// the context is nil a panic will occur. In the future the SDK may create
3386// sub-contexts for http.Requests. See https://golang.org/pkg/context/
3387// for more information on using Contexts.
3388func (c *Pinpoint) GetEmailChannelWithContext(ctx aws.Context, input *GetEmailChannelInput, opts ...request.Option) (*GetEmailChannelOutput, error) {
3389	req, out := c.GetEmailChannelRequest(input)
3390	req.SetContext(ctx)
3391	req.ApplyOptions(opts...)
3392	return out, req.Send()
3393}
3394
3395const opGetEndpoint = "GetEndpoint"
3396
3397// GetEndpointRequest generates a "aws/request.Request" representing the
3398// client's request for the GetEndpoint operation. The "output" return
3399// value will be populated with the request's response once the request completes
3400// successfuly.
3401//
3402// Use "Send" method on the returned Request to send the API call to the service.
3403// the "output" return value is not valid until after Send returns without error.
3404//
3405// See GetEndpoint for more information on using the GetEndpoint
3406// API call, and error handling.
3407//
3408// This method is useful when you want to inject custom logic or configuration
3409// into the SDK's request lifecycle. Such as custom headers, or retry logic.
3410//
3411//
3412//    // Example sending a request using the GetEndpointRequest method.
3413//    req, resp := client.GetEndpointRequest(params)
3414//
3415//    err := req.Send()
3416//    if err == nil { // resp is now filled
3417//        fmt.Println(resp)
3418//    }
3419//
3420// See also, https://docs.aws.amazon.com/goto/WebAPI/pinpoint-2016-12-01/GetEndpoint
3421func (c *Pinpoint) GetEndpointRequest(input *GetEndpointInput) (req *request.Request, output *GetEndpointOutput) {
3422	op := &request.Operation{
3423		Name:       opGetEndpoint,
3424		HTTPMethod: "GET",
3425		HTTPPath:   "/v1/apps/{application-id}/endpoints/{endpoint-id}",
3426	}
3427
3428	if input == nil {
3429		input = &GetEndpointInput{}
3430	}
3431
3432	output = &GetEndpointOutput{}
3433	req = c.newRequest(op, input, output)
3434	return
3435}
3436
3437// GetEndpoint API operation for Amazon Pinpoint.
3438//
3439// Returns information about an endpoint.
3440//
3441// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
3442// with awserr.Error's Code and Message methods to get detailed information about
3443// the error.
3444//
3445// See the AWS API reference guide for Amazon Pinpoint's
3446// API operation GetEndpoint for usage and error information.
3447//
3448// Returned Error Codes:
3449//   * ErrCodeBadRequestException "BadRequestException"
3450//   Simple message object.
3451//
3452//   * ErrCodeInternalServerErrorException "InternalServerErrorException"
3453//   Simple message object.
3454//
3455//   * ErrCodeForbiddenException "ForbiddenException"
3456//   Simple message object.
3457//
3458//   * ErrCodeNotFoundException "NotFoundException"
3459//   Simple message object.
3460//
3461//   * ErrCodeMethodNotAllowedException "MethodNotAllowedException"
3462//   Simple message object.
3463//
3464//   * ErrCodeTooManyRequestsException "TooManyRequestsException"
3465//   Simple message object.
3466//
3467// See also, https://docs.aws.amazon.com/goto/WebAPI/pinpoint-2016-12-01/GetEndpoint
3468func (c *Pinpoint) GetEndpoint(input *GetEndpointInput) (*GetEndpointOutput, error) {
3469	req, out := c.GetEndpointRequest(input)
3470	return out, req.Send()
3471}
3472
3473// GetEndpointWithContext is the same as GetEndpoint with the addition of
3474// the ability to pass a context and additional request options.
3475//
3476// See GetEndpoint for details on how to use this API operation.
3477//
3478// The context must be non-nil and will be used for request cancellation. If
3479// the context is nil a panic will occur. In the future the SDK may create
3480// sub-contexts for http.Requests. See https://golang.org/pkg/context/
3481// for more information on using Contexts.
3482func (c *Pinpoint) GetEndpointWithContext(ctx aws.Context, input *GetEndpointInput, opts ...request.Option) (*GetEndpointOutput, error) {
3483	req, out := c.GetEndpointRequest(input)
3484	req.SetContext(ctx)
3485	req.ApplyOptions(opts...)
3486	return out, req.Send()
3487}
3488
3489const opGetEventStream = "GetEventStream"
3490
3491// GetEventStreamRequest generates a "aws/request.Request" representing the
3492// client's request for the GetEventStream operation. The "output" return
3493// value will be populated with the request's response once the request completes
3494// successfuly.
3495//
3496// Use "Send" method on the returned Request to send the API call to the service.
3497// the "output" return value is not valid until after Send returns without error.
3498//
3499// See GetEventStream for more information on using the GetEventStream
3500// API call, and error handling.
3501//
3502// This method is useful when you want to inject custom logic or configuration
3503// into the SDK's request lifecycle. Such as custom headers, or retry logic.
3504//
3505//
3506//    // Example sending a request using the GetEventStreamRequest method.
3507//    req, resp := client.GetEventStreamRequest(params)
3508//
3509//    err := req.Send()
3510//    if err == nil { // resp is now filled
3511//        fmt.Println(resp)
3512//    }
3513//
3514// See also, https://docs.aws.amazon.com/goto/WebAPI/pinpoint-2016-12-01/GetEventStream
3515func (c *Pinpoint) GetEventStreamRequest(input *GetEventStreamInput) (req *request.Request, output *GetEventStreamOutput) {
3516	op := &request.Operation{
3517		Name:       opGetEventStream,
3518		HTTPMethod: "GET",
3519		HTTPPath:   "/v1/apps/{application-id}/eventstream",
3520	}
3521
3522	if input == nil {
3523		input = &GetEventStreamInput{}
3524	}
3525
3526	output = &GetEventStreamOutput{}
3527	req = c.newRequest(op, input, output)
3528	return
3529}
3530
3531// GetEventStream API operation for Amazon Pinpoint.
3532//
3533// Returns the event stream for an app.
3534//
3535// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
3536// with awserr.Error's Code and Message methods to get detailed information about
3537// the error.
3538//
3539// See the AWS API reference guide for Amazon Pinpoint's
3540// API operation GetEventStream for usage and error information.
3541//
3542// Returned Error Codes:
3543//   * ErrCodeBadRequestException "BadRequestException"
3544//   Simple message object.
3545//
3546//   * ErrCodeInternalServerErrorException "InternalServerErrorException"
3547//   Simple message object.
3548//
3549//   * ErrCodeForbiddenException "ForbiddenException"
3550//   Simple message object.
3551//
3552//   * ErrCodeNotFoundException "NotFoundException"
3553//   Simple message object.
3554//
3555//   * ErrCodeMethodNotAllowedException "MethodNotAllowedException"
3556//   Simple message object.
3557//
3558//   * ErrCodeTooManyRequestsException "TooManyRequestsException"
3559//   Simple message object.
3560//
3561// See also, https://docs.aws.amazon.com/goto/WebAPI/pinpoint-2016-12-01/GetEventStream
3562func (c *Pinpoint) GetEventStream(input *GetEventStreamInput) (*GetEventStreamOutput, error) {
3563	req, out := c.GetEventStreamRequest(input)
3564	return out, req.Send()
3565}
3566
3567// GetEventStreamWithContext is the same as GetEventStream with the addition of
3568// the ability to pass a context and additional request options.
3569//
3570// See GetEventStream for details on how to use this API operation.
3571//
3572// The context must be non-nil and will be used for request cancellation. If
3573// the context is nil a panic will occur. In the future the SDK may create
3574// sub-contexts for http.Requests. See https://golang.org/pkg/context/
3575// for more information on using Contexts.
3576func (c *Pinpoint) GetEventStreamWithContext(ctx aws.Context, input *GetEventStreamInput, opts ...request.Option) (*GetEventStreamOutput, error) {
3577	req, out := c.GetEventStreamRequest(input)
3578	req.SetContext(ctx)
3579	req.ApplyOptions(opts...)
3580	return out, req.Send()
3581}
3582
3583const opGetExportJob = "GetExportJob"
3584
3585// GetExportJobRequest generates a "aws/request.Request" representing the
3586// client's request for the GetExportJob operation. The "output" return
3587// value will be populated with the request's response once the request completes
3588// successfuly.
3589//
3590// Use "Send" method on the returned Request to send the API call to the service.
3591// the "output" return value is not valid until after Send returns without error.
3592//
3593// See GetExportJob for more information on using the GetExportJob
3594// API call, and error handling.
3595//
3596// This method is useful when you want to inject custom logic or configuration
3597// into the SDK's request lifecycle. Such as custom headers, or retry logic.
3598//
3599//
3600//    // Example sending a request using the GetExportJobRequest method.
3601//    req, resp := client.GetExportJobRequest(params)
3602//
3603//    err := req.Send()
3604//    if err == nil { // resp is now filled
3605//        fmt.Println(resp)
3606//    }
3607//
3608// See also, https://docs.aws.amazon.com/goto/WebAPI/pinpoint-2016-12-01/GetExportJob
3609func (c *Pinpoint) GetExportJobRequest(input *GetExportJobInput) (req *request.Request, output *GetExportJobOutput) {
3610	op := &request.Operation{
3611		Name:       opGetExportJob,
3612		HTTPMethod: "GET",
3613		HTTPPath:   "/v1/apps/{application-id}/jobs/export/{job-id}",
3614	}
3615
3616	if input == nil {
3617		input = &GetExportJobInput{}
3618	}
3619
3620	output = &GetExportJobOutput{}
3621	req = c.newRequest(op, input, output)
3622	return
3623}
3624
3625// GetExportJob API operation for Amazon Pinpoint.
3626//
3627// Returns information about an export job.
3628//
3629// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
3630// with awserr.Error's Code and Message methods to get detailed information about
3631// the error.
3632//
3633// See the AWS API reference guide for Amazon Pinpoint's
3634// API operation GetExportJob for usage and error information.
3635//
3636// Returned Error Codes:
3637//   * ErrCodeBadRequestException "BadRequestException"
3638//   Simple message object.
3639//
3640//   * ErrCodeInternalServerErrorException "InternalServerErrorException"
3641//   Simple message object.
3642//
3643//   * ErrCodeForbiddenException "ForbiddenException"
3644//   Simple message object.
3645//
3646//   * ErrCodeNotFoundException "NotFoundException"
3647//   Simple message object.
3648//
3649//   * ErrCodeMethodNotAllowedException "MethodNotAllowedException"
3650//   Simple message object.
3651//
3652//   * ErrCodeTooManyRequestsException "TooManyRequestsException"
3653//   Simple message object.
3654//
3655// See also, https://docs.aws.amazon.com/goto/WebAPI/pinpoint-2016-12-01/GetExportJob
3656func (c *Pinpoint) GetExportJob(input *GetExportJobInput) (*GetExportJobOutput, error) {
3657	req, out := c.GetExportJobRequest(input)
3658	return out, req.Send()
3659}
3660
3661// GetExportJobWithContext is the same as GetExportJob with the addition of
3662// the ability to pass a context and additional request options.
3663//
3664// See GetExportJob for details on how to use this API operation.
3665//
3666// The context must be non-nil and will be used for request cancellation. If
3667// the context is nil a panic will occur. In the future the SDK may create
3668// sub-contexts for http.Requests. See https://golang.org/pkg/context/
3669// for more information on using Contexts.
3670func (c *Pinpoint) GetExportJobWithContext(ctx aws.Context, input *GetExportJobInput, opts ...request.Option) (*GetExportJobOutput, error) {
3671	req, out := c.GetExportJobRequest(input)
3672	req.SetContext(ctx)
3673	req.ApplyOptions(opts...)
3674	return out, req.Send()
3675}
3676
3677const opGetExportJobs = "GetExportJobs"
3678
3679// GetExportJobsRequest generates a "aws/request.Request" representing the
3680// client's request for the GetExportJobs operation. The "output" return
3681// value will be populated with the request's response once the request completes
3682// successfuly.
3683//
3684// Use "Send" method on the returned Request to send the API call to the service.
3685// the "output" return value is not valid until after Send returns without error.
3686//
3687// See GetExportJobs for more information on using the GetExportJobs
3688// API call, and error handling.
3689//
3690// This method is useful when you want to inject custom logic or configuration
3691// into the SDK's request lifecycle. Such as custom headers, or retry logic.
3692//
3693//
3694//    // Example sending a request using the GetExportJobsRequest method.
3695//    req, resp := client.GetExportJobsRequest(params)
3696//
3697//    err := req.Send()
3698//    if err == nil { // resp is now filled
3699//        fmt.Println(resp)
3700//    }
3701//
3702// See also, https://docs.aws.amazon.com/goto/WebAPI/pinpoint-2016-12-01/GetExportJobs
3703func (c *Pinpoint) GetExportJobsRequest(input *GetExportJobsInput) (req *request.Request, output *GetExportJobsOutput) {
3704	op := &request.Operation{
3705		Name:       opGetExportJobs,
3706		HTTPMethod: "GET",
3707		HTTPPath:   "/v1/apps/{application-id}/jobs/export",
3708	}
3709
3710	if input == nil {
3711		input = &GetExportJobsInput{}
3712	}
3713
3714	output = &GetExportJobsOutput{}
3715	req = c.newRequest(op, input, output)
3716	return
3717}
3718
3719// GetExportJobs API operation for Amazon Pinpoint.
3720//
3721// Returns information about your export jobs.
3722//
3723// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
3724// with awserr.Error's Code and Message methods to get detailed information about
3725// the error.
3726//
3727// See the AWS API reference guide for Amazon Pinpoint's
3728// API operation GetExportJobs for usage and error information.
3729//
3730// Returned Error Codes:
3731//   * ErrCodeBadRequestException "BadRequestException"
3732//   Simple message object.
3733//
3734//   * ErrCodeInternalServerErrorException "InternalServerErrorException"
3735//   Simple message object.
3736//
3737//   * ErrCodeForbiddenException "ForbiddenException"
3738//   Simple message object.
3739//
3740//   * ErrCodeNotFoundException "NotFoundException"
3741//   Simple message object.
3742//
3743//   * ErrCodeMethodNotAllowedException "MethodNotAllowedException"
3744//   Simple message object.
3745//
3746//   * ErrCodeTooManyRequestsException "TooManyRequestsException"
3747//   Simple message object.
3748//
3749// See also, https://docs.aws.amazon.com/goto/WebAPI/pinpoint-2016-12-01/GetExportJobs
3750func (c *Pinpoint) GetExportJobs(input *GetExportJobsInput) (*GetExportJobsOutput, error) {
3751	req, out := c.GetExportJobsRequest(input)
3752	return out, req.Send()
3753}
3754
3755// GetExportJobsWithContext is the same as GetExportJobs with the addition of
3756// the ability to pass a context and additional request options.
3757//
3758// See GetExportJobs for details on how to use this API operation.
3759//
3760// The context must be non-nil and will be used for request cancellation. If
3761// the context is nil a panic will occur. In the future the SDK may create
3762// sub-contexts for http.Requests. See https://golang.org/pkg/context/
3763// for more information on using Contexts.
3764func (c *Pinpoint) GetExportJobsWithContext(ctx aws.Context, input *GetExportJobsInput, opts ...request.Option) (*GetExportJobsOutput, error) {
3765	req, out := c.GetExportJobsRequest(input)
3766	req.SetContext(ctx)
3767	req.ApplyOptions(opts...)
3768	return out, req.Send()
3769}
3770
3771const opGetGcmChannel = "GetGcmChannel"
3772
3773// GetGcmChannelRequest generates a "aws/request.Request" representing the
3774// client's request for the GetGcmChannel operation. The "output" return
3775// value will be populated with the request's response once the request completes
3776// successfuly.
3777//
3778// Use "Send" method on the returned Request to send the API call to the service.
3779// the "output" return value is not valid until after Send returns without error.
3780//
3781// See GetGcmChannel for more information on using the GetGcmChannel
3782// API call, and error handling.
3783//
3784// This method is useful when you want to inject custom logic or configuration
3785// into the SDK's request lifecycle. Such as custom headers, or retry logic.
3786//
3787//
3788//    // Example sending a request using the GetGcmChannelRequest method.
3789//    req, resp := client.GetGcmChannelRequest(params)
3790//
3791//    err := req.Send()
3792//    if err == nil { // resp is now filled
3793//        fmt.Println(resp)
3794//    }
3795//
3796// See also, https://docs.aws.amazon.com/goto/WebAPI/pinpoint-2016-12-01/GetGcmChannel
3797func (c *Pinpoint) GetGcmChannelRequest(input *GetGcmChannelInput) (req *request.Request, output *GetGcmChannelOutput) {
3798	op := &request.Operation{
3799		Name:       opGetGcmChannel,
3800		HTTPMethod: "GET",
3801		HTTPPath:   "/v1/apps/{application-id}/channels/gcm",
3802	}
3803
3804	if input == nil {
3805		input = &GetGcmChannelInput{}
3806	}
3807
3808	output = &GetGcmChannelOutput{}
3809	req = c.newRequest(op, input, output)
3810	return
3811}
3812
3813// GetGcmChannel API operation for Amazon Pinpoint.
3814//
3815// Returns information about the GCM channel for an app.
3816//
3817// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
3818// with awserr.Error's Code and Message methods to get detailed information about
3819// the error.
3820//
3821// See the AWS API reference guide for Amazon Pinpoint's
3822// API operation GetGcmChannel for usage and error information.
3823//
3824// Returned Error Codes:
3825//   * ErrCodeBadRequestException "BadRequestException"
3826//   Simple message object.
3827//
3828//   * ErrCodeInternalServerErrorException "InternalServerErrorException"
3829//   Simple message object.
3830//
3831//   * ErrCodeForbiddenException "ForbiddenException"
3832//   Simple message object.
3833//
3834//   * ErrCodeNotFoundException "NotFoundException"
3835//   Simple message object.
3836//
3837//   * ErrCodeMethodNotAllowedException "MethodNotAllowedException"
3838//   Simple message object.
3839//
3840//   * ErrCodeTooManyRequestsException "TooManyRequestsException"
3841//   Simple message object.
3842//
3843// See also, https://docs.aws.amazon.com/goto/WebAPI/pinpoint-2016-12-01/GetGcmChannel
3844func (c *Pinpoint) GetGcmChannel(input *GetGcmChannelInput) (*GetGcmChannelOutput, error) {
3845	req, out := c.GetGcmChannelRequest(input)
3846	return out, req.Send()
3847}
3848
3849// GetGcmChannelWithContext is the same as GetGcmChannel with the addition of
3850// the ability to pass a context and additional request options.
3851//
3852// See GetGcmChannel for details on how to use this API operation.
3853//
3854// The context must be non-nil and will be used for request cancellation. If
3855// the context is nil a panic will occur. In the future the SDK may create
3856// sub-contexts for http.Requests. See https://golang.org/pkg/context/
3857// for more information on using Contexts.
3858func (c *Pinpoint) GetGcmChannelWithContext(ctx aws.Context, input *GetGcmChannelInput, opts ...request.Option) (*GetGcmChannelOutput, error) {
3859	req, out := c.GetGcmChannelRequest(input)
3860	req.SetContext(ctx)
3861	req.ApplyOptions(opts...)
3862	return out, req.Send()
3863}
3864
3865const opGetImportJob = "GetImportJob"
3866
3867// GetImportJobRequest generates a "aws/request.Request" representing the
3868// client's request for the GetImportJob operation. The "output" return
3869// value will be populated with the request's response once the request completes
3870// successfuly.
3871//
3872// Use "Send" method on the returned Request to send the API call to the service.
3873// the "output" return value is not valid until after Send returns without error.
3874//
3875// See GetImportJob for more information on using the GetImportJob
3876// API call, and error handling.
3877//
3878// This method is useful when you want to inject custom logic or configuration
3879// into the SDK's request lifecycle. Such as custom headers, or retry logic.
3880//
3881//
3882//    // Example sending a request using the GetImportJobRequest method.
3883//    req, resp := client.GetImportJobRequest(params)
3884//
3885//    err := req.Send()
3886//    if err == nil { // resp is now filled
3887//        fmt.Println(resp)
3888//    }
3889//
3890// See also, https://docs.aws.amazon.com/goto/WebAPI/pinpoint-2016-12-01/GetImportJob
3891func (c *Pinpoint) GetImportJobRequest(input *GetImportJobInput) (req *request.Request, output *GetImportJobOutput) {
3892	op := &request.Operation{
3893		Name:       opGetImportJob,
3894		HTTPMethod: "GET",
3895		HTTPPath:   "/v1/apps/{application-id}/jobs/import/{job-id}",
3896	}
3897
3898	if input == nil {
3899		input = &GetImportJobInput{}
3900	}
3901
3902	output = &GetImportJobOutput{}
3903	req = c.newRequest(op, input, output)
3904	return
3905}
3906
3907// GetImportJob API operation for Amazon Pinpoint.
3908//
3909// Returns information about an import job.
3910//
3911// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
3912// with awserr.Error's Code and Message methods to get detailed information about
3913// the error.
3914//
3915// See the AWS API reference guide for Amazon Pinpoint's
3916// API operation GetImportJob for usage and error information.
3917//
3918// Returned Error Codes:
3919//   * ErrCodeBadRequestException "BadRequestException"
3920//   Simple message object.
3921//
3922//   * ErrCodeInternalServerErrorException "InternalServerErrorException"
3923//   Simple message object.
3924//
3925//   * ErrCodeForbiddenException "ForbiddenException"
3926//   Simple message object.
3927//
3928//   * ErrCodeNotFoundException "NotFoundException"
3929//   Simple message object.
3930//
3931//   * ErrCodeMethodNotAllowedException "MethodNotAllowedException"
3932//   Simple message object.
3933//
3934//   * ErrCodeTooManyRequestsException "TooManyRequestsException"
3935//   Simple message object.
3936//
3937// See also, https://docs.aws.amazon.com/goto/WebAPI/pinpoint-2016-12-01/GetImportJob
3938func (c *Pinpoint) GetImportJob(input *GetImportJobInput) (*GetImportJobOutput, error) {
3939	req, out := c.GetImportJobRequest(input)
3940	return out, req.Send()
3941}
3942
3943// GetImportJobWithContext is the same as GetImportJob with the addition of
3944// the ability to pass a context and additional request options.
3945//
3946// See GetImportJob for details on how to use this API operation.
3947//
3948// The context must be non-nil and will be used for request cancellation. If
3949// the context is nil a panic will occur. In the future the SDK may create
3950// sub-contexts for http.Requests. See https://golang.org/pkg/context/
3951// for more information on using Contexts.
3952func (c *Pinpoint) GetImportJobWithContext(ctx aws.Context, input *GetImportJobInput, opts ...request.Option) (*GetImportJobOutput, error) {
3953	req, out := c.GetImportJobRequest(input)
3954	req.SetContext(ctx)
3955	req.ApplyOptions(opts...)
3956	return out, req.Send()
3957}
3958
3959const opGetImportJobs = "GetImportJobs"
3960
3961// GetImportJobsRequest generates a "aws/request.Request" representing the
3962// client's request for the GetImportJobs operation. The "output" return
3963// value will be populated with the request's response once the request completes
3964// successfuly.
3965//
3966// Use "Send" method on the returned Request to send the API call to the service.
3967// the "output" return value is not valid until after Send returns without error.
3968//
3969// See GetImportJobs for more information on using the GetImportJobs
3970// API call, and error handling.
3971//
3972// This method is useful when you want to inject custom logic or configuration
3973// into the SDK's request lifecycle. Such as custom headers, or retry logic.
3974//
3975//
3976//    // Example sending a request using the GetImportJobsRequest method.
3977//    req, resp := client.GetImportJobsRequest(params)
3978//
3979//    err := req.Send()
3980//    if err == nil { // resp is now filled
3981//        fmt.Println(resp)
3982//    }
3983//
3984// See also, https://docs.aws.amazon.com/goto/WebAPI/pinpoint-2016-12-01/GetImportJobs
3985func (c *Pinpoint) GetImportJobsRequest(input *GetImportJobsInput) (req *request.Request, output *GetImportJobsOutput) {
3986	op := &request.Operation{
3987		Name:       opGetImportJobs,
3988		HTTPMethod: "GET",
3989		HTTPPath:   "/v1/apps/{application-id}/jobs/import",
3990	}
3991
3992	if input == nil {
3993		input = &GetImportJobsInput{}
3994	}
3995
3996	output = &GetImportJobsOutput{}
3997	req = c.newRequest(op, input, output)
3998	return
3999}
4000
4001// GetImportJobs API operation for Amazon Pinpoint.
4002//
4003// Returns information about your import jobs.
4004//
4005// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
4006// with awserr.Error's Code and Message methods to get detailed information about
4007// the error.
4008//
4009// See the AWS API reference guide for Amazon Pinpoint's
4010// API operation GetImportJobs for usage and error information.
4011//
4012// Returned Error Codes:
4013//   * ErrCodeBadRequestException "BadRequestException"
4014//   Simple message object.
4015//
4016//   * ErrCodeInternalServerErrorException "InternalServerErrorException"
4017//   Simple message object.
4018//
4019//   * ErrCodeForbiddenException "ForbiddenException"
4020//   Simple message object.
4021//
4022//   * ErrCodeNotFoundException "NotFoundException"
4023//   Simple message object.
4024//
4025//   * ErrCodeMethodNotAllowedException "MethodNotAllowedException"
4026//   Simple message object.
4027//
4028//   * ErrCodeTooManyRequestsException "TooManyRequestsException"
4029//   Simple message object.
4030//
4031// See also, https://docs.aws.amazon.com/goto/WebAPI/pinpoint-2016-12-01/GetImportJobs
4032func (c *Pinpoint) GetImportJobs(input *GetImportJobsInput) (*GetImportJobsOutput, error) {
4033	req, out := c.GetImportJobsRequest(input)
4034	return out, req.Send()
4035}
4036
4037// GetImportJobsWithContext is the same as GetImportJobs with the addition of
4038// the ability to pass a context and additional request options.
4039//
4040// See GetImportJobs for details on how to use this API operation.
4041//
4042// The context must be non-nil and will be used for request cancellation. If
4043// the context is nil a panic will occur. In the future the SDK may create
4044// sub-contexts for http.Requests. See https://golang.org/pkg/context/
4045// for more information on using Contexts.
4046func (c *Pinpoint) GetImportJobsWithContext(ctx aws.Context, input *GetImportJobsInput, opts ...request.Option) (*GetImportJobsOutput, error) {
4047	req, out := c.GetImportJobsRequest(input)
4048	req.SetContext(ctx)
4049	req.ApplyOptions(opts...)
4050	return out, req.Send()
4051}
4052
4053const opGetSegment = "GetSegment"
4054
4055// GetSegmentRequest generates a "aws/request.Request" representing the
4056// client's request for the GetSegment operation. The "output" return
4057// value will be populated with the request's response once the request completes
4058// successfuly.
4059//
4060// Use "Send" method on the returned Request to send the API call to the service.
4061// the "output" return value is not valid until after Send returns without error.
4062//
4063// See GetSegment for more information on using the GetSegment
4064// API call, and error handling.
4065//
4066// This method is useful when you want to inject custom logic or configuration
4067// into the SDK's request lifecycle. Such as custom headers, or retry logic.
4068//
4069//
4070//    // Example sending a request using the GetSegmentRequest method.
4071//    req, resp := client.GetSegmentRequest(params)
4072//
4073//    err := req.Send()
4074//    if err == nil { // resp is now filled
4075//        fmt.Println(resp)
4076//    }
4077//
4078// See also, https://docs.aws.amazon.com/goto/WebAPI/pinpoint-2016-12-01/GetSegment
4079func (c *Pinpoint) GetSegmentRequest(input *GetSegmentInput) (req *request.Request, output *GetSegmentOutput) {
4080	op := &request.Operation{
4081		Name:       opGetSegment,
4082		HTTPMethod: "GET",
4083		HTTPPath:   "/v1/apps/{application-id}/segments/{segment-id}",
4084	}
4085
4086	if input == nil {
4087		input = &GetSegmentInput{}
4088	}
4089
4090	output = &GetSegmentOutput{}
4091	req = c.newRequest(op, input, output)
4092	return
4093}
4094
4095// GetSegment API operation for Amazon Pinpoint.
4096//
4097// Returns information about a segment.
4098//
4099// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
4100// with awserr.Error's Code and Message methods to get detailed information about
4101// the error.
4102//
4103// See the AWS API reference guide for Amazon Pinpoint's
4104// API operation GetSegment for usage and error information.
4105//
4106// Returned Error Codes:
4107//   * ErrCodeBadRequestException "BadRequestException"
4108//   Simple message object.
4109//
4110//   * ErrCodeInternalServerErrorException "InternalServerErrorException"
4111//   Simple message object.
4112//
4113//   * ErrCodeForbiddenException "ForbiddenException"
4114//   Simple message object.
4115//
4116//   * ErrCodeNotFoundException "NotFoundException"
4117//   Simple message object.
4118//
4119//   * ErrCodeMethodNotAllowedException "MethodNotAllowedException"
4120//   Simple message object.
4121//
4122//   * ErrCodeTooManyRequestsException "TooManyRequestsException"
4123//   Simple message object.
4124//
4125// See also, https://docs.aws.amazon.com/goto/WebAPI/pinpoint-2016-12-01/GetSegment
4126func (c *Pinpoint) GetSegment(input *GetSegmentInput) (*GetSegmentOutput, error) {
4127	req, out := c.GetSegmentRequest(input)
4128	return out, req.Send()
4129}
4130
4131// GetSegmentWithContext is the same as GetSegment with the addition of
4132// the ability to pass a context and additional request options.
4133//
4134// See GetSegment 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) GetSegmentWithContext(ctx aws.Context, input *GetSegmentInput, opts ...request.Option) (*GetSegmentOutput, error) {
4141	req, out := c.GetSegmentRequest(input)
4142	req.SetContext(ctx)
4143	req.ApplyOptions(opts...)
4144	return out, req.Send()
4145}
4146
4147const opGetSegmentExportJobs = "GetSegmentExportJobs"
4148
4149// GetSegmentExportJobsRequest generates a "aws/request.Request" representing the
4150// client's request for the GetSegmentExportJobs 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 GetSegmentExportJobs for more information on using the GetSegmentExportJobs
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 GetSegmentExportJobsRequest method.
4165//    req, resp := client.GetSegmentExportJobsRequest(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/GetSegmentExportJobs
4173func (c *Pinpoint) GetSegmentExportJobsRequest(input *GetSegmentExportJobsInput) (req *request.Request, output *GetSegmentExportJobsOutput) {
4174	op := &request.Operation{
4175		Name:       opGetSegmentExportJobs,
4176		HTTPMethod: "GET",
4177		HTTPPath:   "/v1/apps/{application-id}/segments/{segment-id}/jobs/export",
4178	}
4179
4180	if input == nil {
4181		input = &GetSegmentExportJobsInput{}
4182	}
4183
4184	output = &GetSegmentExportJobsOutput{}
4185	req = c.newRequest(op, input, output)
4186	return
4187}
4188
4189// GetSegmentExportJobs API operation for Amazon Pinpoint.
4190//
4191// Returns a list of export jobs for a specific segment.
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 GetSegmentExportJobs for usage and error information.
4199//
4200// Returned Error Codes:
4201//   * ErrCodeBadRequestException "BadRequestException"
4202//   Simple message object.
4203//
4204//   * ErrCodeInternalServerErrorException "InternalServerErrorException"
4205//   Simple message object.
4206//
4207//   * ErrCodeForbiddenException "ForbiddenException"
4208//   Simple message object.
4209//
4210//   * ErrCodeNotFoundException "NotFoundException"
4211//   Simple message object.
4212//
4213//   * ErrCodeMethodNotAllowedException "MethodNotAllowedException"
4214//   Simple message object.
4215//
4216//   * ErrCodeTooManyRequestsException "TooManyRequestsException"
4217//   Simple message object.
4218//
4219// See also, https://docs.aws.amazon.com/goto/WebAPI/pinpoint-2016-12-01/GetSegmentExportJobs
4220func (c *Pinpoint) GetSegmentExportJobs(input *GetSegmentExportJobsInput) (*GetSegmentExportJobsOutput, error) {
4221	req, out := c.GetSegmentExportJobsRequest(input)
4222	return out, req.Send()
4223}
4224
4225// GetSegmentExportJobsWithContext is the same as GetSegmentExportJobs with the addition of
4226// the ability to pass a context and additional request options.
4227//
4228// See GetSegmentExportJobs for details on how to use this API operation.
4229//
4230// The context must be non-nil and will be used for request cancellation. If
4231// the context is nil a panic will occur. In the future the SDK may create
4232// sub-contexts for http.Requests. See https://golang.org/pkg/context/
4233// for more information on using Contexts.
4234func (c *Pinpoint) GetSegmentExportJobsWithContext(ctx aws.Context, input *GetSegmentExportJobsInput, opts ...request.Option) (*GetSegmentExportJobsOutput, error) {
4235	req, out := c.GetSegmentExportJobsRequest(input)
4236	req.SetContext(ctx)
4237	req.ApplyOptions(opts...)
4238	return out, req.Send()
4239}
4240
4241const opGetSegmentImportJobs = "GetSegmentImportJobs"
4242
4243// GetSegmentImportJobsRequest generates a "aws/request.Request" representing the
4244// client's request for the GetSegmentImportJobs operation. The "output" return
4245// value will be populated with the request's response once the request completes
4246// successfuly.
4247//
4248// Use "Send" method on the returned Request to send the API call to the service.
4249// the "output" return value is not valid until after Send returns without error.
4250//
4251// See GetSegmentImportJobs for more information on using the GetSegmentImportJobs
4252// API call, and error handling.
4253//
4254// This method is useful when you want to inject custom logic or configuration
4255// into the SDK's request lifecycle. Such as custom headers, or retry logic.
4256//
4257//
4258//    // Example sending a request using the GetSegmentImportJobsRequest method.
4259//    req, resp := client.GetSegmentImportJobsRequest(params)
4260//
4261//    err := req.Send()
4262//    if err == nil { // resp is now filled
4263//        fmt.Println(resp)
4264//    }
4265//
4266// See also, https://docs.aws.amazon.com/goto/WebAPI/pinpoint-2016-12-01/GetSegmentImportJobs
4267func (c *Pinpoint) GetSegmentImportJobsRequest(input *GetSegmentImportJobsInput) (req *request.Request, output *GetSegmentImportJobsOutput) {
4268	op := &request.Operation{
4269		Name:       opGetSegmentImportJobs,
4270		HTTPMethod: "GET",
4271		HTTPPath:   "/v1/apps/{application-id}/segments/{segment-id}/jobs/import",
4272	}
4273
4274	if input == nil {
4275		input = &GetSegmentImportJobsInput{}
4276	}
4277
4278	output = &GetSegmentImportJobsOutput{}
4279	req = c.newRequest(op, input, output)
4280	return
4281}
4282
4283// GetSegmentImportJobs API operation for Amazon Pinpoint.
4284//
4285// Returns a list of import jobs for a specific segment.
4286//
4287// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
4288// with awserr.Error's Code and Message methods to get detailed information about
4289// the error.
4290//
4291// See the AWS API reference guide for Amazon Pinpoint's
4292// API operation GetSegmentImportJobs for usage and error information.
4293//
4294// Returned Error Codes:
4295//   * ErrCodeBadRequestException "BadRequestException"
4296//   Simple message object.
4297//
4298//   * ErrCodeInternalServerErrorException "InternalServerErrorException"
4299//   Simple message object.
4300//
4301//   * ErrCodeForbiddenException "ForbiddenException"
4302//   Simple message object.
4303//
4304//   * ErrCodeNotFoundException "NotFoundException"
4305//   Simple message object.
4306//
4307//   * ErrCodeMethodNotAllowedException "MethodNotAllowedException"
4308//   Simple message object.
4309//
4310//   * ErrCodeTooManyRequestsException "TooManyRequestsException"
4311//   Simple message object.
4312//
4313// See also, https://docs.aws.amazon.com/goto/WebAPI/pinpoint-2016-12-01/GetSegmentImportJobs
4314func (c *Pinpoint) GetSegmentImportJobs(input *GetSegmentImportJobsInput) (*GetSegmentImportJobsOutput, error) {
4315	req, out := c.GetSegmentImportJobsRequest(input)
4316	return out, req.Send()
4317}
4318
4319// GetSegmentImportJobsWithContext is the same as GetSegmentImportJobs with the addition of
4320// the ability to pass a context and additional request options.
4321//
4322// See GetSegmentImportJobs for details on how to use this API operation.
4323//
4324// The context must be non-nil and will be used for request cancellation. If
4325// the context is nil a panic will occur. In the future the SDK may create
4326// sub-contexts for http.Requests. See https://golang.org/pkg/context/
4327// for more information on using Contexts.
4328func (c *Pinpoint) GetSegmentImportJobsWithContext(ctx aws.Context, input *GetSegmentImportJobsInput, opts ...request.Option) (*GetSegmentImportJobsOutput, error) {
4329	req, out := c.GetSegmentImportJobsRequest(input)
4330	req.SetContext(ctx)
4331	req.ApplyOptions(opts...)
4332	return out, req.Send()
4333}
4334
4335const opGetSegmentVersion = "GetSegmentVersion"
4336
4337// GetSegmentVersionRequest generates a "aws/request.Request" representing the
4338// client's request for the GetSegmentVersion operation. The "output" return
4339// value will be populated with the request's response once the request completes
4340// successfuly.
4341//
4342// Use "Send" method on the returned Request to send the API call to the service.
4343// the "output" return value is not valid until after Send returns without error.
4344//
4345// See GetSegmentVersion for more information on using the GetSegmentVersion
4346// API call, and error handling.
4347//
4348// This method is useful when you want to inject custom logic or configuration
4349// into the SDK's request lifecycle. Such as custom headers, or retry logic.
4350//
4351//
4352//    // Example sending a request using the GetSegmentVersionRequest method.
4353//    req, resp := client.GetSegmentVersionRequest(params)
4354//
4355//    err := req.Send()
4356//    if err == nil { // resp is now filled
4357//        fmt.Println(resp)
4358//    }
4359//
4360// See also, https://docs.aws.amazon.com/goto/WebAPI/pinpoint-2016-12-01/GetSegmentVersion
4361func (c *Pinpoint) GetSegmentVersionRequest(input *GetSegmentVersionInput) (req *request.Request, output *GetSegmentVersionOutput) {
4362	op := &request.Operation{
4363		Name:       opGetSegmentVersion,
4364		HTTPMethod: "GET",
4365		HTTPPath:   "/v1/apps/{application-id}/segments/{segment-id}/versions/{version}",
4366	}
4367
4368	if input == nil {
4369		input = &GetSegmentVersionInput{}
4370	}
4371
4372	output = &GetSegmentVersionOutput{}
4373	req = c.newRequest(op, input, output)
4374	return
4375}
4376
4377// GetSegmentVersion API operation for Amazon Pinpoint.
4378//
4379// Returns information about a segment version.
4380//
4381// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
4382// with awserr.Error's Code and Message methods to get detailed information about
4383// the error.
4384//
4385// See the AWS API reference guide for Amazon Pinpoint's
4386// API operation GetSegmentVersion for usage and error information.
4387//
4388// Returned Error Codes:
4389//   * ErrCodeBadRequestException "BadRequestException"
4390//   Simple message object.
4391//
4392//   * ErrCodeInternalServerErrorException "InternalServerErrorException"
4393//   Simple message object.
4394//
4395//   * ErrCodeForbiddenException "ForbiddenException"
4396//   Simple message object.
4397//
4398//   * ErrCodeNotFoundException "NotFoundException"
4399//   Simple message object.
4400//
4401//   * ErrCodeMethodNotAllowedException "MethodNotAllowedException"
4402//   Simple message object.
4403//
4404//   * ErrCodeTooManyRequestsException "TooManyRequestsException"
4405//   Simple message object.
4406//
4407// See also, https://docs.aws.amazon.com/goto/WebAPI/pinpoint-2016-12-01/GetSegmentVersion
4408func (c *Pinpoint) GetSegmentVersion(input *GetSegmentVersionInput) (*GetSegmentVersionOutput, error) {
4409	req, out := c.GetSegmentVersionRequest(input)
4410	return out, req.Send()
4411}
4412
4413// GetSegmentVersionWithContext is the same as GetSegmentVersion with the addition of
4414// the ability to pass a context and additional request options.
4415//
4416// See GetSegmentVersion for details on how to use this API operation.
4417//
4418// The context must be non-nil and will be used for request cancellation. If
4419// the context is nil a panic will occur. In the future the SDK may create
4420// sub-contexts for http.Requests. See https://golang.org/pkg/context/
4421// for more information on using Contexts.
4422func (c *Pinpoint) GetSegmentVersionWithContext(ctx aws.Context, input *GetSegmentVersionInput, opts ...request.Option) (*GetSegmentVersionOutput, error) {
4423	req, out := c.GetSegmentVersionRequest(input)
4424	req.SetContext(ctx)
4425	req.ApplyOptions(opts...)
4426	return out, req.Send()
4427}
4428
4429const opGetSegmentVersions = "GetSegmentVersions"
4430
4431// GetSegmentVersionsRequest generates a "aws/request.Request" representing the
4432// client's request for the GetSegmentVersions operation. The "output" return
4433// value will be populated with the request's response once the request completes
4434// successfuly.
4435//
4436// Use "Send" method on the returned Request to send the API call to the service.
4437// the "output" return value is not valid until after Send returns without error.
4438//
4439// See GetSegmentVersions for more information on using the GetSegmentVersions
4440// API call, and error handling.
4441//
4442// This method is useful when you want to inject custom logic or configuration
4443// into the SDK's request lifecycle. Such as custom headers, or retry logic.
4444//
4445//
4446//    // Example sending a request using the GetSegmentVersionsRequest method.
4447//    req, resp := client.GetSegmentVersionsRequest(params)
4448//
4449//    err := req.Send()
4450//    if err == nil { // resp is now filled
4451//        fmt.Println(resp)
4452//    }
4453//
4454// See also, https://docs.aws.amazon.com/goto/WebAPI/pinpoint-2016-12-01/GetSegmentVersions
4455func (c *Pinpoint) GetSegmentVersionsRequest(input *GetSegmentVersionsInput) (req *request.Request, output *GetSegmentVersionsOutput) {
4456	op := &request.Operation{
4457		Name:       opGetSegmentVersions,
4458		HTTPMethod: "GET",
4459		HTTPPath:   "/v1/apps/{application-id}/segments/{segment-id}/versions",
4460	}
4461
4462	if input == nil {
4463		input = &GetSegmentVersionsInput{}
4464	}
4465
4466	output = &GetSegmentVersionsOutput{}
4467	req = c.newRequest(op, input, output)
4468	return
4469}
4470
4471// GetSegmentVersions API operation for Amazon Pinpoint.
4472//
4473// Returns information about your segment versions.
4474//
4475// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
4476// with awserr.Error's Code and Message methods to get detailed information about
4477// the error.
4478//
4479// See the AWS API reference guide for Amazon Pinpoint's
4480// API operation GetSegmentVersions for usage and error information.
4481//
4482// Returned Error Codes:
4483//   * ErrCodeBadRequestException "BadRequestException"
4484//   Simple message object.
4485//
4486//   * ErrCodeInternalServerErrorException "InternalServerErrorException"
4487//   Simple message object.
4488//
4489//   * ErrCodeForbiddenException "ForbiddenException"
4490//   Simple message object.
4491//
4492//   * ErrCodeNotFoundException "NotFoundException"
4493//   Simple message object.
4494//
4495//   * ErrCodeMethodNotAllowedException "MethodNotAllowedException"
4496//   Simple message object.
4497//
4498//   * ErrCodeTooManyRequestsException "TooManyRequestsException"
4499//   Simple message object.
4500//
4501// See also, https://docs.aws.amazon.com/goto/WebAPI/pinpoint-2016-12-01/GetSegmentVersions
4502func (c *Pinpoint) GetSegmentVersions(input *GetSegmentVersionsInput) (*GetSegmentVersionsOutput, error) {
4503	req, out := c.GetSegmentVersionsRequest(input)
4504	return out, req.Send()
4505}
4506
4507// GetSegmentVersionsWithContext is the same as GetSegmentVersions with the addition of
4508// the ability to pass a context and additional request options.
4509//
4510// See GetSegmentVersions for details on how to use this API operation.
4511//
4512// The context must be non-nil and will be used for request cancellation. If
4513// the context is nil a panic will occur. In the future the SDK may create
4514// sub-contexts for http.Requests. See https://golang.org/pkg/context/
4515// for more information on using Contexts.
4516func (c *Pinpoint) GetSegmentVersionsWithContext(ctx aws.Context, input *GetSegmentVersionsInput, opts ...request.Option) (*GetSegmentVersionsOutput, error) {
4517	req, out := c.GetSegmentVersionsRequest(input)
4518	req.SetContext(ctx)
4519	req.ApplyOptions(opts...)
4520	return out, req.Send()
4521}
4522
4523const opGetSegments = "GetSegments"
4524
4525// GetSegmentsRequest generates a "aws/request.Request" representing the
4526// client's request for the GetSegments operation. The "output" return
4527// value will be populated with the request's response once the request completes
4528// successfuly.
4529//
4530// Use "Send" method on the returned Request to send the API call to the service.
4531// the "output" return value is not valid until after Send returns without error.
4532//
4533// See GetSegments for more information on using the GetSegments
4534// API call, and error handling.
4535//
4536// This method is useful when you want to inject custom logic or configuration
4537// into the SDK's request lifecycle. Such as custom headers, or retry logic.
4538//
4539//
4540//    // Example sending a request using the GetSegmentsRequest method.
4541//    req, resp := client.GetSegmentsRequest(params)
4542//
4543//    err := req.Send()
4544//    if err == nil { // resp is now filled
4545//        fmt.Println(resp)
4546//    }
4547//
4548// See also, https://docs.aws.amazon.com/goto/WebAPI/pinpoint-2016-12-01/GetSegments
4549func (c *Pinpoint) GetSegmentsRequest(input *GetSegmentsInput) (req *request.Request, output *GetSegmentsOutput) {
4550	op := &request.Operation{
4551		Name:       opGetSegments,
4552		HTTPMethod: "GET",
4553		HTTPPath:   "/v1/apps/{application-id}/segments",
4554	}
4555
4556	if input == nil {
4557		input = &GetSegmentsInput{}
4558	}
4559
4560	output = &GetSegmentsOutput{}
4561	req = c.newRequest(op, input, output)
4562	return
4563}
4564
4565// GetSegments API operation for Amazon Pinpoint.
4566//
4567// Used to get information about your segments.
4568//
4569// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
4570// with awserr.Error's Code and Message methods to get detailed information about
4571// the error.
4572//
4573// See the AWS API reference guide for Amazon Pinpoint's
4574// API operation GetSegments for usage and error information.
4575//
4576// Returned Error Codes:
4577//   * ErrCodeBadRequestException "BadRequestException"
4578//   Simple message object.
4579//
4580//   * ErrCodeInternalServerErrorException "InternalServerErrorException"
4581//   Simple message object.
4582//
4583//   * ErrCodeForbiddenException "ForbiddenException"
4584//   Simple message object.
4585//
4586//   * ErrCodeNotFoundException "NotFoundException"
4587//   Simple message object.
4588//
4589//   * ErrCodeMethodNotAllowedException "MethodNotAllowedException"
4590//   Simple message object.
4591//
4592//   * ErrCodeTooManyRequestsException "TooManyRequestsException"
4593//   Simple message object.
4594//
4595// See also, https://docs.aws.amazon.com/goto/WebAPI/pinpoint-2016-12-01/GetSegments
4596func (c *Pinpoint) GetSegments(input *GetSegmentsInput) (*GetSegmentsOutput, error) {
4597	req, out := c.GetSegmentsRequest(input)
4598	return out, req.Send()
4599}
4600
4601// GetSegmentsWithContext is the same as GetSegments with the addition of
4602// the ability to pass a context and additional request options.
4603//
4604// See GetSegments for details on how to use this API operation.
4605//
4606// The context must be non-nil and will be used for request cancellation. If
4607// the context is nil a panic will occur. In the future the SDK may create
4608// sub-contexts for http.Requests. See https://golang.org/pkg/context/
4609// for more information on using Contexts.
4610func (c *Pinpoint) GetSegmentsWithContext(ctx aws.Context, input *GetSegmentsInput, opts ...request.Option) (*GetSegmentsOutput, error) {
4611	req, out := c.GetSegmentsRequest(input)
4612	req.SetContext(ctx)
4613	req.ApplyOptions(opts...)
4614	return out, req.Send()
4615}
4616
4617const opGetSmsChannel = "GetSmsChannel"
4618
4619// GetSmsChannelRequest generates a "aws/request.Request" representing the
4620// client's request for the GetSmsChannel operation. The "output" return
4621// value will be populated with the request's response once the request completes
4622// successfuly.
4623//
4624// Use "Send" method on the returned Request to send the API call to the service.
4625// the "output" return value is not valid until after Send returns without error.
4626//
4627// See GetSmsChannel for more information on using the GetSmsChannel
4628// API call, and error handling.
4629//
4630// This method is useful when you want to inject custom logic or configuration
4631// into the SDK's request lifecycle. Such as custom headers, or retry logic.
4632//
4633//
4634//    // Example sending a request using the GetSmsChannelRequest method.
4635//    req, resp := client.GetSmsChannelRequest(params)
4636//
4637//    err := req.Send()
4638//    if err == nil { // resp is now filled
4639//        fmt.Println(resp)
4640//    }
4641//
4642// See also, https://docs.aws.amazon.com/goto/WebAPI/pinpoint-2016-12-01/GetSmsChannel
4643func (c *Pinpoint) GetSmsChannelRequest(input *GetSmsChannelInput) (req *request.Request, output *GetSmsChannelOutput) {
4644	op := &request.Operation{
4645		Name:       opGetSmsChannel,
4646		HTTPMethod: "GET",
4647		HTTPPath:   "/v1/apps/{application-id}/channels/sms",
4648	}
4649
4650	if input == nil {
4651		input = &GetSmsChannelInput{}
4652	}
4653
4654	output = &GetSmsChannelOutput{}
4655	req = c.newRequest(op, input, output)
4656	return
4657}
4658
4659// GetSmsChannel API operation for Amazon Pinpoint.
4660//
4661// Get an SMS channel.
4662//
4663// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
4664// with awserr.Error's Code and Message methods to get detailed information about
4665// the error.
4666//
4667// See the AWS API reference guide for Amazon Pinpoint's
4668// API operation GetSmsChannel for usage and error information.
4669//
4670// Returned Error Codes:
4671//   * ErrCodeBadRequestException "BadRequestException"
4672//   Simple message object.
4673//
4674//   * ErrCodeInternalServerErrorException "InternalServerErrorException"
4675//   Simple message object.
4676//
4677//   * ErrCodeForbiddenException "ForbiddenException"
4678//   Simple message object.
4679//
4680//   * ErrCodeNotFoundException "NotFoundException"
4681//   Simple message object.
4682//
4683//   * ErrCodeMethodNotAllowedException "MethodNotAllowedException"
4684//   Simple message object.
4685//
4686//   * ErrCodeTooManyRequestsException "TooManyRequestsException"
4687//   Simple message object.
4688//
4689// See also, https://docs.aws.amazon.com/goto/WebAPI/pinpoint-2016-12-01/GetSmsChannel
4690func (c *Pinpoint) GetSmsChannel(input *GetSmsChannelInput) (*GetSmsChannelOutput, error) {
4691	req, out := c.GetSmsChannelRequest(input)
4692	return out, req.Send()
4693}
4694
4695// GetSmsChannelWithContext is the same as GetSmsChannel with the addition of
4696// the ability to pass a context and additional request options.
4697//
4698// See GetSmsChannel for details on how to use this API operation.
4699//
4700// The context must be non-nil and will be used for request cancellation. If
4701// the context is nil a panic will occur. In the future the SDK may create
4702// sub-contexts for http.Requests. See https://golang.org/pkg/context/
4703// for more information on using Contexts.
4704func (c *Pinpoint) GetSmsChannelWithContext(ctx aws.Context, input *GetSmsChannelInput, opts ...request.Option) (*GetSmsChannelOutput, error) {
4705	req, out := c.GetSmsChannelRequest(input)
4706	req.SetContext(ctx)
4707	req.ApplyOptions(opts...)
4708	return out, req.Send()
4709}
4710
4711const opGetUserEndpoints = "GetUserEndpoints"
4712
4713// GetUserEndpointsRequest generates a "aws/request.Request" representing the
4714// client's request for the GetUserEndpoints operation. The "output" return
4715// value will be populated with the request's response once the request completes
4716// successfuly.
4717//
4718// Use "Send" method on the returned Request to send the API call to the service.
4719// the "output" return value is not valid until after Send returns without error.
4720//
4721// See GetUserEndpoints for more information on using the GetUserEndpoints
4722// API call, and error handling.
4723//
4724// This method is useful when you want to inject custom logic or configuration
4725// into the SDK's request lifecycle. Such as custom headers, or retry logic.
4726//
4727//
4728//    // Example sending a request using the GetUserEndpointsRequest method.
4729//    req, resp := client.GetUserEndpointsRequest(params)
4730//
4731//    err := req.Send()
4732//    if err == nil { // resp is now filled
4733//        fmt.Println(resp)
4734//    }
4735//
4736// See also, https://docs.aws.amazon.com/goto/WebAPI/pinpoint-2016-12-01/GetUserEndpoints
4737func (c *Pinpoint) GetUserEndpointsRequest(input *GetUserEndpointsInput) (req *request.Request, output *GetUserEndpointsOutput) {
4738	op := &request.Operation{
4739		Name:       opGetUserEndpoints,
4740		HTTPMethod: "GET",
4741		HTTPPath:   "/v1/apps/{application-id}/users/{user-id}",
4742	}
4743
4744	if input == nil {
4745		input = &GetUserEndpointsInput{}
4746	}
4747
4748	output = &GetUserEndpointsOutput{}
4749	req = c.newRequest(op, input, output)
4750	return
4751}
4752
4753// GetUserEndpoints API operation for Amazon Pinpoint.
4754//
4755// Returns information about the endpoints that are associated with a User ID.
4756//
4757// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
4758// with awserr.Error's Code and Message methods to get detailed information about
4759// the error.
4760//
4761// See the AWS API reference guide for Amazon Pinpoint's
4762// API operation GetUserEndpoints for usage and error information.
4763//
4764// Returned Error Codes:
4765//   * ErrCodeBadRequestException "BadRequestException"
4766//   Simple message object.
4767//
4768//   * ErrCodeInternalServerErrorException "InternalServerErrorException"
4769//   Simple message object.
4770//
4771//   * ErrCodeForbiddenException "ForbiddenException"
4772//   Simple message object.
4773//
4774//   * ErrCodeNotFoundException "NotFoundException"
4775//   Simple message object.
4776//
4777//   * ErrCodeMethodNotAllowedException "MethodNotAllowedException"
4778//   Simple message object.
4779//
4780//   * ErrCodeTooManyRequestsException "TooManyRequestsException"
4781//   Simple message object.
4782//
4783// See also, https://docs.aws.amazon.com/goto/WebAPI/pinpoint-2016-12-01/GetUserEndpoints
4784func (c *Pinpoint) GetUserEndpoints(input *GetUserEndpointsInput) (*GetUserEndpointsOutput, error) {
4785	req, out := c.GetUserEndpointsRequest(input)
4786	return out, req.Send()
4787}
4788
4789// GetUserEndpointsWithContext is the same as GetUserEndpoints with the addition of
4790// the ability to pass a context and additional request options.
4791//
4792// See GetUserEndpoints for details on how to use this API operation.
4793//
4794// The context must be non-nil and will be used for request cancellation. If
4795// the context is nil a panic will occur. In the future the SDK may create
4796// sub-contexts for http.Requests. See https://golang.org/pkg/context/
4797// for more information on using Contexts.
4798func (c *Pinpoint) GetUserEndpointsWithContext(ctx aws.Context, input *GetUserEndpointsInput, opts ...request.Option) (*GetUserEndpointsOutput, error) {
4799	req, out := c.GetUserEndpointsRequest(input)
4800	req.SetContext(ctx)
4801	req.ApplyOptions(opts...)
4802	return out, req.Send()
4803}
4804
4805const opPhoneNumberValidate = "PhoneNumberValidate"
4806
4807// PhoneNumberValidateRequest generates a "aws/request.Request" representing the
4808// client's request for the PhoneNumberValidate operation. The "output" return
4809// value will be populated with the request's response once the request completes
4810// successfuly.
4811//
4812// Use "Send" method on the returned Request to send the API call to the service.
4813// the "output" return value is not valid until after Send returns without error.
4814//
4815// See PhoneNumberValidate for more information on using the PhoneNumberValidate
4816// API call, and error handling.
4817//
4818// This method is useful when you want to inject custom logic or configuration
4819// into the SDK's request lifecycle. Such as custom headers, or retry logic.
4820//
4821//
4822//    // Example sending a request using the PhoneNumberValidateRequest method.
4823//    req, resp := client.PhoneNumberValidateRequest(params)
4824//
4825//    err := req.Send()
4826//    if err == nil { // resp is now filled
4827//        fmt.Println(resp)
4828//    }
4829//
4830// See also, https://docs.aws.amazon.com/goto/WebAPI/pinpoint-2016-12-01/PhoneNumberValidate
4831func (c *Pinpoint) PhoneNumberValidateRequest(input *PhoneNumberValidateInput) (req *request.Request, output *PhoneNumberValidateOutput) {
4832	op := &request.Operation{
4833		Name:       opPhoneNumberValidate,
4834		HTTPMethod: "POST",
4835		HTTPPath:   "/v1/phone/number/validate",
4836	}
4837
4838	if input == nil {
4839		input = &PhoneNumberValidateInput{}
4840	}
4841
4842	output = &PhoneNumberValidateOutput{}
4843	req = c.newRequest(op, input, output)
4844	return
4845}
4846
4847// PhoneNumberValidate API operation for Amazon Pinpoint.
4848//
4849// Returns information about the specified phone number.
4850//
4851// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
4852// with awserr.Error's Code and Message methods to get detailed information about
4853// the error.
4854//
4855// See the AWS API reference guide for Amazon Pinpoint's
4856// API operation PhoneNumberValidate for usage and error information.
4857//
4858// Returned Error Codes:
4859//   * ErrCodeBadRequestException "BadRequestException"
4860//   Simple message object.
4861//
4862//   * ErrCodeInternalServerErrorException "InternalServerErrorException"
4863//   Simple message object.
4864//
4865//   * ErrCodeForbiddenException "ForbiddenException"
4866//   Simple message object.
4867//
4868//   * ErrCodeNotFoundException "NotFoundException"
4869//   Simple message object.
4870//
4871//   * ErrCodeMethodNotAllowedException "MethodNotAllowedException"
4872//   Simple message object.
4873//
4874//   * ErrCodeTooManyRequestsException "TooManyRequestsException"
4875//   Simple message object.
4876//
4877// See also, https://docs.aws.amazon.com/goto/WebAPI/pinpoint-2016-12-01/PhoneNumberValidate
4878func (c *Pinpoint) PhoneNumberValidate(input *PhoneNumberValidateInput) (*PhoneNumberValidateOutput, error) {
4879	req, out := c.PhoneNumberValidateRequest(input)
4880	return out, req.Send()
4881}
4882
4883// PhoneNumberValidateWithContext is the same as PhoneNumberValidate with the addition of
4884// the ability to pass a context and additional request options.
4885//
4886// See PhoneNumberValidate for details on how to use this API operation.
4887//
4888// The context must be non-nil and will be used for request cancellation. If
4889// the context is nil a panic will occur. In the future the SDK may create
4890// sub-contexts for http.Requests. See https://golang.org/pkg/context/
4891// for more information on using Contexts.
4892func (c *Pinpoint) PhoneNumberValidateWithContext(ctx aws.Context, input *PhoneNumberValidateInput, opts ...request.Option) (*PhoneNumberValidateOutput, error) {
4893	req, out := c.PhoneNumberValidateRequest(input)
4894	req.SetContext(ctx)
4895	req.ApplyOptions(opts...)
4896	return out, req.Send()
4897}
4898
4899const opPutEventStream = "PutEventStream"
4900
4901// PutEventStreamRequest generates a "aws/request.Request" representing the
4902// client's request for the PutEventStream operation. The "output" return
4903// value will be populated with the request's response once the request completes
4904// successfuly.
4905//
4906// Use "Send" method on the returned Request to send the API call to the service.
4907// the "output" return value is not valid until after Send returns without error.
4908//
4909// See PutEventStream for more information on using the PutEventStream
4910// API call, and error handling.
4911//
4912// This method is useful when you want to inject custom logic or configuration
4913// into the SDK's request lifecycle. Such as custom headers, or retry logic.
4914//
4915//
4916//    // Example sending a request using the PutEventStreamRequest method.
4917//    req, resp := client.PutEventStreamRequest(params)
4918//
4919//    err := req.Send()
4920//    if err == nil { // resp is now filled
4921//        fmt.Println(resp)
4922//    }
4923//
4924// See also, https://docs.aws.amazon.com/goto/WebAPI/pinpoint-2016-12-01/PutEventStream
4925func (c *Pinpoint) PutEventStreamRequest(input *PutEventStreamInput) (req *request.Request, output *PutEventStreamOutput) {
4926	op := &request.Operation{
4927		Name:       opPutEventStream,
4928		HTTPMethod: "POST",
4929		HTTPPath:   "/v1/apps/{application-id}/eventstream",
4930	}
4931
4932	if input == nil {
4933		input = &PutEventStreamInput{}
4934	}
4935
4936	output = &PutEventStreamOutput{}
4937	req = c.newRequest(op, input, output)
4938	return
4939}
4940
4941// PutEventStream API operation for Amazon Pinpoint.
4942//
4943// Use to create or update the event stream for an app.
4944//
4945// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
4946// with awserr.Error's Code and Message methods to get detailed information about
4947// the error.
4948//
4949// See the AWS API reference guide for Amazon Pinpoint's
4950// API operation PutEventStream for usage and error information.
4951//
4952// Returned Error Codes:
4953//   * ErrCodeBadRequestException "BadRequestException"
4954//   Simple message object.
4955//
4956//   * ErrCodeInternalServerErrorException "InternalServerErrorException"
4957//   Simple message object.
4958//
4959//   * ErrCodeForbiddenException "ForbiddenException"
4960//   Simple message object.
4961//
4962//   * ErrCodeNotFoundException "NotFoundException"
4963//   Simple message object.
4964//
4965//   * ErrCodeMethodNotAllowedException "MethodNotAllowedException"
4966//   Simple message object.
4967//
4968//   * ErrCodeTooManyRequestsException "TooManyRequestsException"
4969//   Simple message object.
4970//
4971// See also, https://docs.aws.amazon.com/goto/WebAPI/pinpoint-2016-12-01/PutEventStream
4972func (c *Pinpoint) PutEventStream(input *PutEventStreamInput) (*PutEventStreamOutput, error) {
4973	req, out := c.PutEventStreamRequest(input)
4974	return out, req.Send()
4975}
4976
4977// PutEventStreamWithContext is the same as PutEventStream with the addition of
4978// the ability to pass a context and additional request options.
4979//
4980// See PutEventStream for details on how to use this API operation.
4981//
4982// The context must be non-nil and will be used for request cancellation. If
4983// the context is nil a panic will occur. In the future the SDK may create
4984// sub-contexts for http.Requests. See https://golang.org/pkg/context/
4985// for more information on using Contexts.
4986func (c *Pinpoint) PutEventStreamWithContext(ctx aws.Context, input *PutEventStreamInput, opts ...request.Option) (*PutEventStreamOutput, error) {
4987	req, out := c.PutEventStreamRequest(input)
4988	req.SetContext(ctx)
4989	req.ApplyOptions(opts...)
4990	return out, req.Send()
4991}
4992
4993const opPutEvents = "PutEvents"
4994
4995// PutEventsRequest generates a "aws/request.Request" representing the
4996// client's request for the PutEvents operation. The "output" return
4997// value will be populated with the request's response once the request completes
4998// successfuly.
4999//
5000// Use "Send" method on the returned Request to send the API call to the service.
5001// the "output" return value is not valid until after Send returns without error.
5002//
5003// See PutEvents for more information on using the PutEvents
5004// API call, and error handling.
5005//
5006// This method is useful when you want to inject custom logic or configuration
5007// into the SDK's request lifecycle. Such as custom headers, or retry logic.
5008//
5009//
5010//    // Example sending a request using the PutEventsRequest method.
5011//    req, resp := client.PutEventsRequest(params)
5012//
5013//    err := req.Send()
5014//    if err == nil { // resp is now filled
5015//        fmt.Println(resp)
5016//    }
5017//
5018// See also, https://docs.aws.amazon.com/goto/WebAPI/pinpoint-2016-12-01/PutEvents
5019func (c *Pinpoint) PutEventsRequest(input *PutEventsInput) (req *request.Request, output *PutEventsOutput) {
5020	op := &request.Operation{
5021		Name:       opPutEvents,
5022		HTTPMethod: "POST",
5023		HTTPPath:   "/v1/apps/{application-id}/events",
5024	}
5025
5026	if input == nil {
5027		input = &PutEventsInput{}
5028	}
5029
5030	output = &PutEventsOutput{}
5031	req = c.newRequest(op, input, output)
5032	return
5033}
5034
5035// PutEvents API operation for Amazon Pinpoint.
5036//
5037// Use to record events for endpoints. This method creates events and creates
5038// or updates the endpoints that those events are associated with.
5039//
5040// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
5041// with awserr.Error's Code and Message methods to get detailed information about
5042// the error.
5043//
5044// See the AWS API reference guide for Amazon Pinpoint's
5045// API operation PutEvents for usage and error information.
5046//
5047// Returned Error Codes:
5048//   * ErrCodeBadRequestException "BadRequestException"
5049//   Simple message object.
5050//
5051//   * ErrCodeInternalServerErrorException "InternalServerErrorException"
5052//   Simple message object.
5053//
5054//   * ErrCodeForbiddenException "ForbiddenException"
5055//   Simple message object.
5056//
5057//   * ErrCodeNotFoundException "NotFoundException"
5058//   Simple message object.
5059//
5060//   * ErrCodeMethodNotAllowedException "MethodNotAllowedException"
5061//   Simple message object.
5062//
5063//   * ErrCodeTooManyRequestsException "TooManyRequestsException"
5064//   Simple message object.
5065//
5066// See also, https://docs.aws.amazon.com/goto/WebAPI/pinpoint-2016-12-01/PutEvents
5067func (c *Pinpoint) PutEvents(input *PutEventsInput) (*PutEventsOutput, error) {
5068	req, out := c.PutEventsRequest(input)
5069	return out, req.Send()
5070}
5071
5072// PutEventsWithContext is the same as PutEvents with the addition of
5073// the ability to pass a context and additional request options.
5074//
5075// See PutEvents for details on how to use this API operation.
5076//
5077// The context must be non-nil and will be used for request cancellation. If
5078// the context is nil a panic will occur. In the future the SDK may create
5079// sub-contexts for http.Requests. See https://golang.org/pkg/context/
5080// for more information on using Contexts.
5081func (c *Pinpoint) PutEventsWithContext(ctx aws.Context, input *PutEventsInput, opts ...request.Option) (*PutEventsOutput, error) {
5082	req, out := c.PutEventsRequest(input)
5083	req.SetContext(ctx)
5084	req.ApplyOptions(opts...)
5085	return out, req.Send()
5086}
5087
5088const opRemoveAttributes = "RemoveAttributes"
5089
5090// RemoveAttributesRequest generates a "aws/request.Request" representing the
5091// client's request for the RemoveAttributes operation. The "output" return
5092// value will be populated with the request's response once the request completes
5093// successfuly.
5094//
5095// Use "Send" method on the returned Request to send the API call to the service.
5096// the "output" return value is not valid until after Send returns without error.
5097//
5098// See RemoveAttributes for more information on using the RemoveAttributes
5099// API call, and error handling.
5100//
5101// This method is useful when you want to inject custom logic or configuration
5102// into the SDK's request lifecycle. Such as custom headers, or retry logic.
5103//
5104//
5105//    // Example sending a request using the RemoveAttributesRequest method.
5106//    req, resp := client.RemoveAttributesRequest(params)
5107//
5108//    err := req.Send()
5109//    if err == nil { // resp is now filled
5110//        fmt.Println(resp)
5111//    }
5112//
5113// See also, https://docs.aws.amazon.com/goto/WebAPI/pinpoint-2016-12-01/RemoveAttributes
5114func (c *Pinpoint) RemoveAttributesRequest(input *RemoveAttributesInput) (req *request.Request, output *RemoveAttributesOutput) {
5115	op := &request.Operation{
5116		Name:       opRemoveAttributes,
5117		HTTPMethod: "PUT",
5118		HTTPPath:   "/v1/apps/{application-id}/attributes/{attribute-type}",
5119	}
5120
5121	if input == nil {
5122		input = &RemoveAttributesInput{}
5123	}
5124
5125	output = &RemoveAttributesOutput{}
5126	req = c.newRequest(op, input, output)
5127	return
5128}
5129
5130// RemoveAttributes API operation for Amazon Pinpoint.
5131//
5132// Used to remove the attributes for an app
5133//
5134// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
5135// with awserr.Error's Code and Message methods to get detailed information about
5136// the error.
5137//
5138// See the AWS API reference guide for Amazon Pinpoint's
5139// API operation RemoveAttributes for usage and error information.
5140//
5141// Returned Error Codes:
5142//   * ErrCodeBadRequestException "BadRequestException"
5143//   Simple message object.
5144//
5145//   * ErrCodeInternalServerErrorException "InternalServerErrorException"
5146//   Simple message object.
5147//
5148//   * ErrCodeForbiddenException "ForbiddenException"
5149//   Simple message object.
5150//
5151//   * ErrCodeNotFoundException "NotFoundException"
5152//   Simple message object.
5153//
5154//   * ErrCodeMethodNotAllowedException "MethodNotAllowedException"
5155//   Simple message object.
5156//
5157//   * ErrCodeTooManyRequestsException "TooManyRequestsException"
5158//   Simple message object.
5159//
5160// See also, https://docs.aws.amazon.com/goto/WebAPI/pinpoint-2016-12-01/RemoveAttributes
5161func (c *Pinpoint) RemoveAttributes(input *RemoveAttributesInput) (*RemoveAttributesOutput, error) {
5162	req, out := c.RemoveAttributesRequest(input)
5163	return out, req.Send()
5164}
5165
5166// RemoveAttributesWithContext is the same as RemoveAttributes with the addition of
5167// the ability to pass a context and additional request options.
5168//
5169// See RemoveAttributes for details on how to use this API operation.
5170//
5171// The context must be non-nil and will be used for request cancellation. If
5172// the context is nil a panic will occur. In the future the SDK may create
5173// sub-contexts for http.Requests. See https://golang.org/pkg/context/
5174// for more information on using Contexts.
5175func (c *Pinpoint) RemoveAttributesWithContext(ctx aws.Context, input *RemoveAttributesInput, opts ...request.Option) (*RemoveAttributesOutput, error) {
5176	req, out := c.RemoveAttributesRequest(input)
5177	req.SetContext(ctx)
5178	req.ApplyOptions(opts...)
5179	return out, req.Send()
5180}
5181
5182const opSendMessages = "SendMessages"
5183
5184// SendMessagesRequest generates a "aws/request.Request" representing the
5185// client's request for the SendMessages operation. The "output" return
5186// value will be populated with the request's response once the request completes
5187// successfuly.
5188//
5189// Use "Send" method on the returned Request to send the API call to the service.
5190// the "output" return value is not valid until after Send returns without error.
5191//
5192// See SendMessages for more information on using the SendMessages
5193// API call, and error handling.
5194//
5195// This method is useful when you want to inject custom logic or configuration
5196// into the SDK's request lifecycle. Such as custom headers, or retry logic.
5197//
5198//
5199//    // Example sending a request using the SendMessagesRequest method.
5200//    req, resp := client.SendMessagesRequest(params)
5201//
5202//    err := req.Send()
5203//    if err == nil { // resp is now filled
5204//        fmt.Println(resp)
5205//    }
5206//
5207// See also, https://docs.aws.amazon.com/goto/WebAPI/pinpoint-2016-12-01/SendMessages
5208func (c *Pinpoint) SendMessagesRequest(input *SendMessagesInput) (req *request.Request, output *SendMessagesOutput) {
5209	op := &request.Operation{
5210		Name:       opSendMessages,
5211		HTTPMethod: "POST",
5212		HTTPPath:   "/v1/apps/{application-id}/messages",
5213	}
5214
5215	if input == nil {
5216		input = &SendMessagesInput{}
5217	}
5218
5219	output = &SendMessagesOutput{}
5220	req = c.newRequest(op, input, output)
5221	return
5222}
5223
5224// SendMessages API operation for Amazon Pinpoint.
5225//
5226// Used to send a direct message.
5227//
5228// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
5229// with awserr.Error's Code and Message methods to get detailed information about
5230// the error.
5231//
5232// See the AWS API reference guide for Amazon Pinpoint's
5233// API operation SendMessages for usage and error information.
5234//
5235// Returned Error Codes:
5236//   * ErrCodeBadRequestException "BadRequestException"
5237//   Simple message object.
5238//
5239//   * ErrCodeInternalServerErrorException "InternalServerErrorException"
5240//   Simple message object.
5241//
5242//   * ErrCodeForbiddenException "ForbiddenException"
5243//   Simple message object.
5244//
5245//   * ErrCodeNotFoundException "NotFoundException"
5246//   Simple message object.
5247//
5248//   * ErrCodeMethodNotAllowedException "MethodNotAllowedException"
5249//   Simple message object.
5250//
5251//   * ErrCodeTooManyRequestsException "TooManyRequestsException"
5252//   Simple message object.
5253//
5254// See also, https://docs.aws.amazon.com/goto/WebAPI/pinpoint-2016-12-01/SendMessages
5255func (c *Pinpoint) SendMessages(input *SendMessagesInput) (*SendMessagesOutput, error) {
5256	req, out := c.SendMessagesRequest(input)
5257	return out, req.Send()
5258}
5259
5260// SendMessagesWithContext is the same as SendMessages with the addition of
5261// the ability to pass a context and additional request options.
5262//
5263// See SendMessages for details on how to use this API operation.
5264//
5265// The context must be non-nil and will be used for request cancellation. If
5266// the context is nil a panic will occur. In the future the SDK may create
5267// sub-contexts for http.Requests. See https://golang.org/pkg/context/
5268// for more information on using Contexts.
5269func (c *Pinpoint) SendMessagesWithContext(ctx aws.Context, input *SendMessagesInput, opts ...request.Option) (*SendMessagesOutput, error) {
5270	req, out := c.SendMessagesRequest(input)
5271	req.SetContext(ctx)
5272	req.ApplyOptions(opts...)
5273	return out, req.Send()
5274}
5275
5276const opSendUsersMessages = "SendUsersMessages"
5277
5278// SendUsersMessagesRequest generates a "aws/request.Request" representing the
5279// client's request for the SendUsersMessages operation. The "output" return
5280// value will be populated with the request's response once the request completes
5281// successfuly.
5282//
5283// Use "Send" method on the returned Request to send the API call to the service.
5284// the "output" return value is not valid until after Send returns without error.
5285//
5286// See SendUsersMessages for more information on using the SendUsersMessages
5287// API call, and error handling.
5288//
5289// This method is useful when you want to inject custom logic or configuration
5290// into the SDK's request lifecycle. Such as custom headers, or retry logic.
5291//
5292//
5293//    // Example sending a request using the SendUsersMessagesRequest method.
5294//    req, resp := client.SendUsersMessagesRequest(params)
5295//
5296//    err := req.Send()
5297//    if err == nil { // resp is now filled
5298//        fmt.Println(resp)
5299//    }
5300//
5301// See also, https://docs.aws.amazon.com/goto/WebAPI/pinpoint-2016-12-01/SendUsersMessages
5302func (c *Pinpoint) SendUsersMessagesRequest(input *SendUsersMessagesInput) (req *request.Request, output *SendUsersMessagesOutput) {
5303	op := &request.Operation{
5304		Name:       opSendUsersMessages,
5305		HTTPMethod: "POST",
5306		HTTPPath:   "/v1/apps/{application-id}/users-messages",
5307	}
5308
5309	if input == nil {
5310		input = &SendUsersMessagesInput{}
5311	}
5312
5313	output = &SendUsersMessagesOutput{}
5314	req = c.newRequest(op, input, output)
5315	return
5316}
5317
5318// SendUsersMessages API operation for Amazon Pinpoint.
5319//
5320// Used to send a message to a list of users.
5321//
5322// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
5323// with awserr.Error's Code and Message methods to get detailed information about
5324// the error.
5325//
5326// See the AWS API reference guide for Amazon Pinpoint's
5327// API operation SendUsersMessages for usage and error information.
5328//
5329// Returned Error Codes:
5330//   * ErrCodeBadRequestException "BadRequestException"
5331//   Simple message object.
5332//
5333//   * ErrCodeInternalServerErrorException "InternalServerErrorException"
5334//   Simple message object.
5335//
5336//   * ErrCodeForbiddenException "ForbiddenException"
5337//   Simple message object.
5338//
5339//   * ErrCodeNotFoundException "NotFoundException"
5340//   Simple message object.
5341//
5342//   * ErrCodeMethodNotAllowedException "MethodNotAllowedException"
5343//   Simple message object.
5344//
5345//   * ErrCodeTooManyRequestsException "TooManyRequestsException"
5346//   Simple message object.
5347//
5348// See also, https://docs.aws.amazon.com/goto/WebAPI/pinpoint-2016-12-01/SendUsersMessages
5349func (c *Pinpoint) SendUsersMessages(input *SendUsersMessagesInput) (*SendUsersMessagesOutput, error) {
5350	req, out := c.SendUsersMessagesRequest(input)
5351	return out, req.Send()
5352}
5353
5354// SendUsersMessagesWithContext is the same as SendUsersMessages with the addition of
5355// the ability to pass a context and additional request options.
5356//
5357// See SendUsersMessages for details on how to use this API operation.
5358//
5359// The context must be non-nil and will be used for request cancellation. If
5360// the context is nil a panic will occur. In the future the SDK may create
5361// sub-contexts for http.Requests. See https://golang.org/pkg/context/
5362// for more information on using Contexts.
5363func (c *Pinpoint) SendUsersMessagesWithContext(ctx aws.Context, input *SendUsersMessagesInput, opts ...request.Option) (*SendUsersMessagesOutput, error) {
5364	req, out := c.SendUsersMessagesRequest(input)
5365	req.SetContext(ctx)
5366	req.ApplyOptions(opts...)
5367	return out, req.Send()
5368}
5369
5370const opUpdateAdmChannel = "UpdateAdmChannel"
5371
5372// UpdateAdmChannelRequest generates a "aws/request.Request" representing the
5373// client's request for the UpdateAdmChannel operation. The "output" return
5374// value will be populated with the request's response once the request completes
5375// successfuly.
5376//
5377// Use "Send" method on the returned Request to send the API call to the service.
5378// the "output" return value is not valid until after Send returns without error.
5379//
5380// See UpdateAdmChannel for more information on using the UpdateAdmChannel
5381// API call, and error handling.
5382//
5383// This method is useful when you want to inject custom logic or configuration
5384// into the SDK's request lifecycle. Such as custom headers, or retry logic.
5385//
5386//
5387//    // Example sending a request using the UpdateAdmChannelRequest method.
5388//    req, resp := client.UpdateAdmChannelRequest(params)
5389//
5390//    err := req.Send()
5391//    if err == nil { // resp is now filled
5392//        fmt.Println(resp)
5393//    }
5394//
5395// See also, https://docs.aws.amazon.com/goto/WebAPI/pinpoint-2016-12-01/UpdateAdmChannel
5396func (c *Pinpoint) UpdateAdmChannelRequest(input *UpdateAdmChannelInput) (req *request.Request, output *UpdateAdmChannelOutput) {
5397	op := &request.Operation{
5398		Name:       opUpdateAdmChannel,
5399		HTTPMethod: "PUT",
5400		HTTPPath:   "/v1/apps/{application-id}/channels/adm",
5401	}
5402
5403	if input == nil {
5404		input = &UpdateAdmChannelInput{}
5405	}
5406
5407	output = &UpdateAdmChannelOutput{}
5408	req = c.newRequest(op, input, output)
5409	return
5410}
5411
5412// UpdateAdmChannel API operation for Amazon Pinpoint.
5413//
5414// Update an ADM channel.
5415//
5416// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
5417// with awserr.Error's Code and Message methods to get detailed information about
5418// the error.
5419//
5420// See the AWS API reference guide for Amazon Pinpoint's
5421// API operation UpdateAdmChannel for usage and error information.
5422//
5423// Returned Error Codes:
5424//   * ErrCodeBadRequestException "BadRequestException"
5425//   Simple message object.
5426//
5427//   * ErrCodeInternalServerErrorException "InternalServerErrorException"
5428//   Simple message object.
5429//
5430//   * ErrCodeForbiddenException "ForbiddenException"
5431//   Simple message object.
5432//
5433//   * ErrCodeNotFoundException "NotFoundException"
5434//   Simple message object.
5435//
5436//   * ErrCodeMethodNotAllowedException "MethodNotAllowedException"
5437//   Simple message object.
5438//
5439//   * ErrCodeTooManyRequestsException "TooManyRequestsException"
5440//   Simple message object.
5441//
5442// See also, https://docs.aws.amazon.com/goto/WebAPI/pinpoint-2016-12-01/UpdateAdmChannel
5443func (c *Pinpoint) UpdateAdmChannel(input *UpdateAdmChannelInput) (*UpdateAdmChannelOutput, error) {
5444	req, out := c.UpdateAdmChannelRequest(input)
5445	return out, req.Send()
5446}
5447
5448// UpdateAdmChannelWithContext is the same as UpdateAdmChannel with the addition of
5449// the ability to pass a context and additional request options.
5450//
5451// See UpdateAdmChannel for details on how to use this API operation.
5452//
5453// The context must be non-nil and will be used for request cancellation. If
5454// the context is nil a panic will occur. In the future the SDK may create
5455// sub-contexts for http.Requests. See https://golang.org/pkg/context/
5456// for more information on using Contexts.
5457func (c *Pinpoint) UpdateAdmChannelWithContext(ctx aws.Context, input *UpdateAdmChannelInput, opts ...request.Option) (*UpdateAdmChannelOutput, error) {
5458	req, out := c.UpdateAdmChannelRequest(input)
5459	req.SetContext(ctx)
5460	req.ApplyOptions(opts...)
5461	return out, req.Send()
5462}
5463
5464const opUpdateApnsChannel = "UpdateApnsChannel"
5465
5466// UpdateApnsChannelRequest generates a "aws/request.Request" representing the
5467// client's request for the UpdateApnsChannel operation. The "output" return
5468// value will be populated with the request's response once the request completes
5469// successfuly.
5470//
5471// Use "Send" method on the returned Request to send the API call to the service.
5472// the "output" return value is not valid until after Send returns without error.
5473//
5474// See UpdateApnsChannel for more information on using the UpdateApnsChannel
5475// API call, and error handling.
5476//
5477// This method is useful when you want to inject custom logic or configuration
5478// into the SDK's request lifecycle. Such as custom headers, or retry logic.
5479//
5480//
5481//    // Example sending a request using the UpdateApnsChannelRequest method.
5482//    req, resp := client.UpdateApnsChannelRequest(params)
5483//
5484//    err := req.Send()
5485//    if err == nil { // resp is now filled
5486//        fmt.Println(resp)
5487//    }
5488//
5489// See also, https://docs.aws.amazon.com/goto/WebAPI/pinpoint-2016-12-01/UpdateApnsChannel
5490func (c *Pinpoint) UpdateApnsChannelRequest(input *UpdateApnsChannelInput) (req *request.Request, output *UpdateApnsChannelOutput) {
5491	op := &request.Operation{
5492		Name:       opUpdateApnsChannel,
5493		HTTPMethod: "PUT",
5494		HTTPPath:   "/v1/apps/{application-id}/channels/apns",
5495	}
5496
5497	if input == nil {
5498		input = &UpdateApnsChannelInput{}
5499	}
5500
5501	output = &UpdateApnsChannelOutput{}
5502	req = c.newRequest(op, input, output)
5503	return
5504}
5505
5506// UpdateApnsChannel API operation for Amazon Pinpoint.
5507//
5508// Use to update the APNs channel for an app.
5509//
5510// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
5511// with awserr.Error's Code and Message methods to get detailed information about
5512// the error.
5513//
5514// See the AWS API reference guide for Amazon Pinpoint's
5515// API operation UpdateApnsChannel for usage and error information.
5516//
5517// Returned Error Codes:
5518//   * ErrCodeBadRequestException "BadRequestException"
5519//   Simple message object.
5520//
5521//   * ErrCodeInternalServerErrorException "InternalServerErrorException"
5522//   Simple message object.
5523//
5524//   * ErrCodeForbiddenException "ForbiddenException"
5525//   Simple message object.
5526//
5527//   * ErrCodeNotFoundException "NotFoundException"
5528//   Simple message object.
5529//
5530//   * ErrCodeMethodNotAllowedException "MethodNotAllowedException"
5531//   Simple message object.
5532//
5533//   * ErrCodeTooManyRequestsException "TooManyRequestsException"
5534//   Simple message object.
5535//
5536// See also, https://docs.aws.amazon.com/goto/WebAPI/pinpoint-2016-12-01/UpdateApnsChannel
5537func (c *Pinpoint) UpdateApnsChannel(input *UpdateApnsChannelInput) (*UpdateApnsChannelOutput, error) {
5538	req, out := c.UpdateApnsChannelRequest(input)
5539	return out, req.Send()
5540}
5541
5542// UpdateApnsChannelWithContext is the same as UpdateApnsChannel with the addition of
5543// the ability to pass a context and additional request options.
5544//
5545// See UpdateApnsChannel for details on how to use this API operation.
5546//
5547// The context must be non-nil and will be used for request cancellation. If
5548// the context is nil a panic will occur. In the future the SDK may create
5549// sub-contexts for http.Requests. See https://golang.org/pkg/context/
5550// for more information on using Contexts.
5551func (c *Pinpoint) UpdateApnsChannelWithContext(ctx aws.Context, input *UpdateApnsChannelInput, opts ...request.Option) (*UpdateApnsChannelOutput, error) {
5552	req, out := c.UpdateApnsChannelRequest(input)
5553	req.SetContext(ctx)
5554	req.ApplyOptions(opts...)
5555	return out, req.Send()
5556}
5557
5558const opUpdateApnsSandboxChannel = "UpdateApnsSandboxChannel"
5559
5560// UpdateApnsSandboxChannelRequest generates a "aws/request.Request" representing the
5561// client's request for the UpdateApnsSandboxChannel operation. The "output" return
5562// value will be populated with the request's response once the request completes
5563// successfuly.
5564//
5565// Use "Send" method on the returned Request to send the API call to the service.
5566// the "output" return value is not valid until after Send returns without error.
5567//
5568// See UpdateApnsSandboxChannel for more information on using the UpdateApnsSandboxChannel
5569// API call, and error handling.
5570//
5571// This method is useful when you want to inject custom logic or configuration
5572// into the SDK's request lifecycle. Such as custom headers, or retry logic.
5573//
5574//
5575//    // Example sending a request using the UpdateApnsSandboxChannelRequest method.
5576//    req, resp := client.UpdateApnsSandboxChannelRequest(params)
5577//
5578//    err := req.Send()
5579//    if err == nil { // resp is now filled
5580//        fmt.Println(resp)
5581//    }
5582//
5583// See also, https://docs.aws.amazon.com/goto/WebAPI/pinpoint-2016-12-01/UpdateApnsSandboxChannel
5584func (c *Pinpoint) UpdateApnsSandboxChannelRequest(input *UpdateApnsSandboxChannelInput) (req *request.Request, output *UpdateApnsSandboxChannelOutput) {
5585	op := &request.Operation{
5586		Name:       opUpdateApnsSandboxChannel,
5587		HTTPMethod: "PUT",
5588		HTTPPath:   "/v1/apps/{application-id}/channels/apns_sandbox",
5589	}
5590
5591	if input == nil {
5592		input = &UpdateApnsSandboxChannelInput{}
5593	}
5594
5595	output = &UpdateApnsSandboxChannelOutput{}
5596	req = c.newRequest(op, input, output)
5597	return
5598}
5599
5600// UpdateApnsSandboxChannel API operation for Amazon Pinpoint.
5601//
5602// Update an APNS sandbox channel.
5603//
5604// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
5605// with awserr.Error's Code and Message methods to get detailed information about
5606// the error.
5607//
5608// See the AWS API reference guide for Amazon Pinpoint's
5609// API operation UpdateApnsSandboxChannel for usage and error information.
5610//
5611// Returned Error Codes:
5612//   * ErrCodeBadRequestException "BadRequestException"
5613//   Simple message object.
5614//
5615//   * ErrCodeInternalServerErrorException "InternalServerErrorException"
5616//   Simple message object.
5617//
5618//   * ErrCodeForbiddenException "ForbiddenException"
5619//   Simple message object.
5620//
5621//   * ErrCodeNotFoundException "NotFoundException"
5622//   Simple message object.
5623//
5624//   * ErrCodeMethodNotAllowedException "MethodNotAllowedException"
5625//   Simple message object.
5626//
5627//   * ErrCodeTooManyRequestsException "TooManyRequestsException"
5628//   Simple message object.
5629//
5630// See also, https://docs.aws.amazon.com/goto/WebAPI/pinpoint-2016-12-01/UpdateApnsSandboxChannel
5631func (c *Pinpoint) UpdateApnsSandboxChannel(input *UpdateApnsSandboxChannelInput) (*UpdateApnsSandboxChannelOutput, error) {
5632	req, out := c.UpdateApnsSandboxChannelRequest(input)
5633	return out, req.Send()
5634}
5635
5636// UpdateApnsSandboxChannelWithContext is the same as UpdateApnsSandboxChannel with the addition of
5637// the ability to pass a context and additional request options.
5638//
5639// See UpdateApnsSandboxChannel for details on how to use this API operation.
5640//
5641// The context must be non-nil and will be used for request cancellation. If
5642// the context is nil a panic will occur. In the future the SDK may create
5643// sub-contexts for http.Requests. See https://golang.org/pkg/context/
5644// for more information on using Contexts.
5645func (c *Pinpoint) UpdateApnsSandboxChannelWithContext(ctx aws.Context, input *UpdateApnsSandboxChannelInput, opts ...request.Option) (*UpdateApnsSandboxChannelOutput, error) {
5646	req, out := c.UpdateApnsSandboxChannelRequest(input)
5647	req.SetContext(ctx)
5648	req.ApplyOptions(opts...)
5649	return out, req.Send()
5650}
5651
5652const opUpdateApnsVoipChannel = "UpdateApnsVoipChannel"
5653
5654// UpdateApnsVoipChannelRequest generates a "aws/request.Request" representing the
5655// client's request for the UpdateApnsVoipChannel operation. The "output" return
5656// value will be populated with the request's response once the request completes
5657// successfuly.
5658//
5659// Use "Send" method on the returned Request to send the API call to the service.
5660// the "output" return value is not valid until after Send returns without error.
5661//
5662// See UpdateApnsVoipChannel for more information on using the UpdateApnsVoipChannel
5663// API call, and error handling.
5664//
5665// This method is useful when you want to inject custom logic or configuration
5666// into the SDK's request lifecycle. Such as custom headers, or retry logic.
5667//
5668//
5669//    // Example sending a request using the UpdateApnsVoipChannelRequest method.
5670//    req, resp := client.UpdateApnsVoipChannelRequest(params)
5671//
5672//    err := req.Send()
5673//    if err == nil { // resp is now filled
5674//        fmt.Println(resp)
5675//    }
5676//
5677// See also, https://docs.aws.amazon.com/goto/WebAPI/pinpoint-2016-12-01/UpdateApnsVoipChannel
5678func (c *Pinpoint) UpdateApnsVoipChannelRequest(input *UpdateApnsVoipChannelInput) (req *request.Request, output *UpdateApnsVoipChannelOutput) {
5679	op := &request.Operation{
5680		Name:       opUpdateApnsVoipChannel,
5681		HTTPMethod: "PUT",
5682		HTTPPath:   "/v1/apps/{application-id}/channels/apns_voip",
5683	}
5684
5685	if input == nil {
5686		input = &UpdateApnsVoipChannelInput{}
5687	}
5688
5689	output = &UpdateApnsVoipChannelOutput{}
5690	req = c.newRequest(op, input, output)
5691	return
5692}
5693
5694// UpdateApnsVoipChannel API operation for Amazon Pinpoint.
5695//
5696// Update an APNS VoIP channel
5697//
5698// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
5699// with awserr.Error's Code and Message methods to get detailed information about
5700// the error.
5701//
5702// See the AWS API reference guide for Amazon Pinpoint's
5703// API operation UpdateApnsVoipChannel for usage and error information.
5704//
5705// Returned Error Codes:
5706//   * ErrCodeBadRequestException "BadRequestException"
5707//   Simple message object.
5708//
5709//   * ErrCodeInternalServerErrorException "InternalServerErrorException"
5710//   Simple message object.
5711//
5712//   * ErrCodeForbiddenException "ForbiddenException"
5713//   Simple message object.
5714//
5715//   * ErrCodeNotFoundException "NotFoundException"
5716//   Simple message object.
5717//
5718//   * ErrCodeMethodNotAllowedException "MethodNotAllowedException"
5719//   Simple message object.
5720//
5721//   * ErrCodeTooManyRequestsException "TooManyRequestsException"
5722//   Simple message object.
5723//
5724// See also, https://docs.aws.amazon.com/goto/WebAPI/pinpoint-2016-12-01/UpdateApnsVoipChannel
5725func (c *Pinpoint) UpdateApnsVoipChannel(input *UpdateApnsVoipChannelInput) (*UpdateApnsVoipChannelOutput, error) {
5726	req, out := c.UpdateApnsVoipChannelRequest(input)
5727	return out, req.Send()
5728}
5729
5730// UpdateApnsVoipChannelWithContext is the same as UpdateApnsVoipChannel with the addition of
5731// the ability to pass a context and additional request options.
5732//
5733// See UpdateApnsVoipChannel for details on how to use this API operation.
5734//
5735// The context must be non-nil and will be used for request cancellation. If
5736// the context is nil a panic will occur. In the future the SDK may create
5737// sub-contexts for http.Requests. See https://golang.org/pkg/context/
5738// for more information on using Contexts.
5739func (c *Pinpoint) UpdateApnsVoipChannelWithContext(ctx aws.Context, input *UpdateApnsVoipChannelInput, opts ...request.Option) (*UpdateApnsVoipChannelOutput, error) {
5740	req, out := c.UpdateApnsVoipChannelRequest(input)
5741	req.SetContext(ctx)
5742	req.ApplyOptions(opts...)
5743	return out, req.Send()
5744}
5745
5746const opUpdateApnsVoipSandboxChannel = "UpdateApnsVoipSandboxChannel"
5747
5748// UpdateApnsVoipSandboxChannelRequest generates a "aws/request.Request" representing the
5749// client's request for the UpdateApnsVoipSandboxChannel operation. The "output" return
5750// value will be populated with the request's response once the request completes
5751// successfuly.
5752//
5753// Use "Send" method on the returned Request to send the API call to the service.
5754// the "output" return value is not valid until after Send returns without error.
5755//
5756// See UpdateApnsVoipSandboxChannel for more information on using the UpdateApnsVoipSandboxChannel
5757// API call, and error handling.
5758//
5759// This method is useful when you want to inject custom logic or configuration
5760// into the SDK's request lifecycle. Such as custom headers, or retry logic.
5761//
5762//
5763//    // Example sending a request using the UpdateApnsVoipSandboxChannelRequest method.
5764//    req, resp := client.UpdateApnsVoipSandboxChannelRequest(params)
5765//
5766//    err := req.Send()
5767//    if err == nil { // resp is now filled
5768//        fmt.Println(resp)
5769//    }
5770//
5771// See also, https://docs.aws.amazon.com/goto/WebAPI/pinpoint-2016-12-01/UpdateApnsVoipSandboxChannel
5772func (c *Pinpoint) UpdateApnsVoipSandboxChannelRequest(input *UpdateApnsVoipSandboxChannelInput) (req *request.Request, output *UpdateApnsVoipSandboxChannelOutput) {
5773	op := &request.Operation{
5774		Name:       opUpdateApnsVoipSandboxChannel,
5775		HTTPMethod: "PUT",
5776		HTTPPath:   "/v1/apps/{application-id}/channels/apns_voip_sandbox",
5777	}
5778
5779	if input == nil {
5780		input = &UpdateApnsVoipSandboxChannelInput{}
5781	}
5782
5783	output = &UpdateApnsVoipSandboxChannelOutput{}
5784	req = c.newRequest(op, input, output)
5785	return
5786}
5787
5788// UpdateApnsVoipSandboxChannel API operation for Amazon Pinpoint.
5789//
5790// Update an APNS VoIP sandbox channel
5791//
5792// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
5793// with awserr.Error's Code and Message methods to get detailed information about
5794// the error.
5795//
5796// See the AWS API reference guide for Amazon Pinpoint's
5797// API operation UpdateApnsVoipSandboxChannel for usage and error information.
5798//
5799// Returned Error Codes:
5800//   * ErrCodeBadRequestException "BadRequestException"
5801//   Simple message object.
5802//
5803//   * ErrCodeInternalServerErrorException "InternalServerErrorException"
5804//   Simple message object.
5805//
5806//   * ErrCodeForbiddenException "ForbiddenException"
5807//   Simple message object.
5808//
5809//   * ErrCodeNotFoundException "NotFoundException"
5810//   Simple message object.
5811//
5812//   * ErrCodeMethodNotAllowedException "MethodNotAllowedException"
5813//   Simple message object.
5814//
5815//   * ErrCodeTooManyRequestsException "TooManyRequestsException"
5816//   Simple message object.
5817//
5818// See also, https://docs.aws.amazon.com/goto/WebAPI/pinpoint-2016-12-01/UpdateApnsVoipSandboxChannel
5819func (c *Pinpoint) UpdateApnsVoipSandboxChannel(input *UpdateApnsVoipSandboxChannelInput) (*UpdateApnsVoipSandboxChannelOutput, error) {
5820	req, out := c.UpdateApnsVoipSandboxChannelRequest(input)
5821	return out, req.Send()
5822}
5823
5824// UpdateApnsVoipSandboxChannelWithContext is the same as UpdateApnsVoipSandboxChannel with the addition of
5825// the ability to pass a context and additional request options.
5826//
5827// See UpdateApnsVoipSandboxChannel for details on how to use this API operation.
5828//
5829// The context must be non-nil and will be used for request cancellation. If
5830// the context is nil a panic will occur. In the future the SDK may create
5831// sub-contexts for http.Requests. See https://golang.org/pkg/context/
5832// for more information on using Contexts.
5833func (c *Pinpoint) UpdateApnsVoipSandboxChannelWithContext(ctx aws.Context, input *UpdateApnsVoipSandboxChannelInput, opts ...request.Option) (*UpdateApnsVoipSandboxChannelOutput, error) {
5834	req, out := c.UpdateApnsVoipSandboxChannelRequest(input)
5835	req.SetContext(ctx)
5836	req.ApplyOptions(opts...)
5837	return out, req.Send()
5838}
5839
5840const opUpdateApplicationSettings = "UpdateApplicationSettings"
5841
5842// UpdateApplicationSettingsRequest generates a "aws/request.Request" representing the
5843// client's request for the UpdateApplicationSettings operation. The "output" return
5844// value will be populated with the request's response once the request completes
5845// successfuly.
5846//
5847// Use "Send" method on the returned Request to send the API call to the service.
5848// the "output" return value is not valid until after Send returns without error.
5849//
5850// See UpdateApplicationSettings for more information on using the UpdateApplicationSettings
5851// API call, and error handling.
5852//
5853// This method is useful when you want to inject custom logic or configuration
5854// into the SDK's request lifecycle. Such as custom headers, or retry logic.
5855//
5856//
5857//    // Example sending a request using the UpdateApplicationSettingsRequest method.
5858//    req, resp := client.UpdateApplicationSettingsRequest(params)
5859//
5860//    err := req.Send()
5861//    if err == nil { // resp is now filled
5862//        fmt.Println(resp)
5863//    }
5864//
5865// See also, https://docs.aws.amazon.com/goto/WebAPI/pinpoint-2016-12-01/UpdateApplicationSettings
5866func (c *Pinpoint) UpdateApplicationSettingsRequest(input *UpdateApplicationSettingsInput) (req *request.Request, output *UpdateApplicationSettingsOutput) {
5867	op := &request.Operation{
5868		Name:       opUpdateApplicationSettings,
5869		HTTPMethod: "PUT",
5870		HTTPPath:   "/v1/apps/{application-id}/settings",
5871	}
5872
5873	if input == nil {
5874		input = &UpdateApplicationSettingsInput{}
5875	}
5876
5877	output = &UpdateApplicationSettingsOutput{}
5878	req = c.newRequest(op, input, output)
5879	return
5880}
5881
5882// UpdateApplicationSettings API operation for Amazon Pinpoint.
5883//
5884// Used to update the settings for an app.
5885//
5886// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
5887// with awserr.Error's Code and Message methods to get detailed information about
5888// the error.
5889//
5890// See the AWS API reference guide for Amazon Pinpoint's
5891// API operation UpdateApplicationSettings for usage and error information.
5892//
5893// Returned Error Codes:
5894//   * ErrCodeBadRequestException "BadRequestException"
5895//   Simple message object.
5896//
5897//   * ErrCodeInternalServerErrorException "InternalServerErrorException"
5898//   Simple message object.
5899//
5900//   * ErrCodeForbiddenException "ForbiddenException"
5901//   Simple message object.
5902//
5903//   * ErrCodeNotFoundException "NotFoundException"
5904//   Simple message object.
5905//
5906//   * ErrCodeMethodNotAllowedException "MethodNotAllowedException"
5907//   Simple message object.
5908//
5909//   * ErrCodeTooManyRequestsException "TooManyRequestsException"
5910//   Simple message object.
5911//
5912// See also, https://docs.aws.amazon.com/goto/WebAPI/pinpoint-2016-12-01/UpdateApplicationSettings
5913func (c *Pinpoint) UpdateApplicationSettings(input *UpdateApplicationSettingsInput) (*UpdateApplicationSettingsOutput, error) {
5914	req, out := c.UpdateApplicationSettingsRequest(input)
5915	return out, req.Send()
5916}
5917
5918// UpdateApplicationSettingsWithContext is the same as UpdateApplicationSettings with the addition of
5919// the ability to pass a context and additional request options.
5920//
5921// See UpdateApplicationSettings for details on how to use this API operation.
5922//
5923// The context must be non-nil and will be used for request cancellation. If
5924// the context is nil a panic will occur. In the future the SDK may create
5925// sub-contexts for http.Requests. See https://golang.org/pkg/context/
5926// for more information on using Contexts.
5927func (c *Pinpoint) UpdateApplicationSettingsWithContext(ctx aws.Context, input *UpdateApplicationSettingsInput, opts ...request.Option) (*UpdateApplicationSettingsOutput, error) {
5928	req, out := c.UpdateApplicationSettingsRequest(input)
5929	req.SetContext(ctx)
5930	req.ApplyOptions(opts...)
5931	return out, req.Send()
5932}
5933
5934const opUpdateBaiduChannel = "UpdateBaiduChannel"
5935
5936// UpdateBaiduChannelRequest generates a "aws/request.Request" representing the
5937// client's request for the UpdateBaiduChannel operation. The "output" return
5938// value will be populated with the request's response once the request completes
5939// successfuly.
5940//
5941// Use "Send" method on the returned Request to send the API call to the service.
5942// the "output" return value is not valid until after Send returns without error.
5943//
5944// See UpdateBaiduChannel for more information on using the UpdateBaiduChannel
5945// API call, and error handling.
5946//
5947// This method is useful when you want to inject custom logic or configuration
5948// into the SDK's request lifecycle. Such as custom headers, or retry logic.
5949//
5950//
5951//    // Example sending a request using the UpdateBaiduChannelRequest method.
5952//    req, resp := client.UpdateBaiduChannelRequest(params)
5953//
5954//    err := req.Send()
5955//    if err == nil { // resp is now filled
5956//        fmt.Println(resp)
5957//    }
5958//
5959// See also, https://docs.aws.amazon.com/goto/WebAPI/pinpoint-2016-12-01/UpdateBaiduChannel
5960func (c *Pinpoint) UpdateBaiduChannelRequest(input *UpdateBaiduChannelInput) (req *request.Request, output *UpdateBaiduChannelOutput) {
5961	op := &request.Operation{
5962		Name:       opUpdateBaiduChannel,
5963		HTTPMethod: "PUT",
5964		HTTPPath:   "/v1/apps/{application-id}/channels/baidu",
5965	}
5966
5967	if input == nil {
5968		input = &UpdateBaiduChannelInput{}
5969	}
5970
5971	output = &UpdateBaiduChannelOutput{}
5972	req = c.newRequest(op, input, output)
5973	return
5974}
5975
5976// UpdateBaiduChannel API operation for Amazon Pinpoint.
5977//
5978// Update a BAIDU GCM channel
5979//
5980// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
5981// with awserr.Error's Code and Message methods to get detailed information about
5982// the error.
5983//
5984// See the AWS API reference guide for Amazon Pinpoint's
5985// API operation UpdateBaiduChannel for usage and error information.
5986//
5987// Returned Error Codes:
5988//   * ErrCodeBadRequestException "BadRequestException"
5989//   Simple message object.
5990//
5991//   * ErrCodeInternalServerErrorException "InternalServerErrorException"
5992//   Simple message object.
5993//
5994//   * ErrCodeForbiddenException "ForbiddenException"
5995//   Simple message object.
5996//
5997//   * ErrCodeNotFoundException "NotFoundException"
5998//   Simple message object.
5999//
6000//   * ErrCodeMethodNotAllowedException "MethodNotAllowedException"
6001//   Simple message object.
6002//
6003//   * ErrCodeTooManyRequestsException "TooManyRequestsException"
6004//   Simple message object.
6005//
6006// See also, https://docs.aws.amazon.com/goto/WebAPI/pinpoint-2016-12-01/UpdateBaiduChannel
6007func (c *Pinpoint) UpdateBaiduChannel(input *UpdateBaiduChannelInput) (*UpdateBaiduChannelOutput, error) {
6008	req, out := c.UpdateBaiduChannelRequest(input)
6009	return out, req.Send()
6010}
6011
6012// UpdateBaiduChannelWithContext is the same as UpdateBaiduChannel with the addition of
6013// the ability to pass a context and additional request options.
6014//
6015// See UpdateBaiduChannel for details on how to use this API operation.
6016//
6017// The context must be non-nil and will be used for request cancellation. If
6018// the context is nil a panic will occur. In the future the SDK may create
6019// sub-contexts for http.Requests. See https://golang.org/pkg/context/
6020// for more information on using Contexts.
6021func (c *Pinpoint) UpdateBaiduChannelWithContext(ctx aws.Context, input *UpdateBaiduChannelInput, opts ...request.Option) (*UpdateBaiduChannelOutput, error) {
6022	req, out := c.UpdateBaiduChannelRequest(input)
6023	req.SetContext(ctx)
6024	req.ApplyOptions(opts...)
6025	return out, req.Send()
6026}
6027
6028const opUpdateCampaign = "UpdateCampaign"
6029
6030// UpdateCampaignRequest generates a "aws/request.Request" representing the
6031// client's request for the UpdateCampaign operation. The "output" return
6032// value will be populated with the request's response once the request completes
6033// successfuly.
6034//
6035// Use "Send" method on the returned Request to send the API call to the service.
6036// the "output" return value is not valid until after Send returns without error.
6037//
6038// See UpdateCampaign for more information on using the UpdateCampaign
6039// API call, and error handling.
6040//
6041// This method is useful when you want to inject custom logic or configuration
6042// into the SDK's request lifecycle. Such as custom headers, or retry logic.
6043//
6044//
6045//    // Example sending a request using the UpdateCampaignRequest method.
6046//    req, resp := client.UpdateCampaignRequest(params)
6047//
6048//    err := req.Send()
6049//    if err == nil { // resp is now filled
6050//        fmt.Println(resp)
6051//    }
6052//
6053// See also, https://docs.aws.amazon.com/goto/WebAPI/pinpoint-2016-12-01/UpdateCampaign
6054func (c *Pinpoint) UpdateCampaignRequest(input *UpdateCampaignInput) (req *request.Request, output *UpdateCampaignOutput) {
6055	op := &request.Operation{
6056		Name:       opUpdateCampaign,
6057		HTTPMethod: "PUT",
6058		HTTPPath:   "/v1/apps/{application-id}/campaigns/{campaign-id}",
6059	}
6060
6061	if input == nil {
6062		input = &UpdateCampaignInput{}
6063	}
6064
6065	output = &UpdateCampaignOutput{}
6066	req = c.newRequest(op, input, output)
6067	return
6068}
6069
6070// UpdateCampaign API operation for Amazon Pinpoint.
6071//
6072// Use to update a campaign.
6073//
6074// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
6075// with awserr.Error's Code and Message methods to get detailed information about
6076// the error.
6077//
6078// See the AWS API reference guide for Amazon Pinpoint's
6079// API operation UpdateCampaign for usage and error information.
6080//
6081// Returned Error Codes:
6082//   * ErrCodeBadRequestException "BadRequestException"
6083//   Simple message object.
6084//
6085//   * ErrCodeInternalServerErrorException "InternalServerErrorException"
6086//   Simple message object.
6087//
6088//   * ErrCodeForbiddenException "ForbiddenException"
6089//   Simple message object.
6090//
6091//   * ErrCodeNotFoundException "NotFoundException"
6092//   Simple message object.
6093//
6094//   * ErrCodeMethodNotAllowedException "MethodNotAllowedException"
6095//   Simple message object.
6096//
6097//   * ErrCodeTooManyRequestsException "TooManyRequestsException"
6098//   Simple message object.
6099//
6100// See also, https://docs.aws.amazon.com/goto/WebAPI/pinpoint-2016-12-01/UpdateCampaign
6101func (c *Pinpoint) UpdateCampaign(input *UpdateCampaignInput) (*UpdateCampaignOutput, error) {
6102	req, out := c.UpdateCampaignRequest(input)
6103	return out, req.Send()
6104}
6105
6106// UpdateCampaignWithContext is the same as UpdateCampaign with the addition of
6107// the ability to pass a context and additional request options.
6108//
6109// See UpdateCampaign for details on how to use this API operation.
6110//
6111// The context must be non-nil and will be used for request cancellation. If
6112// the context is nil a panic will occur. In the future the SDK may create
6113// sub-contexts for http.Requests. See https://golang.org/pkg/context/
6114// for more information on using Contexts.
6115func (c *Pinpoint) UpdateCampaignWithContext(ctx aws.Context, input *UpdateCampaignInput, opts ...request.Option) (*UpdateCampaignOutput, error) {
6116	req, out := c.UpdateCampaignRequest(input)
6117	req.SetContext(ctx)
6118	req.ApplyOptions(opts...)
6119	return out, req.Send()
6120}
6121
6122const opUpdateEmailChannel = "UpdateEmailChannel"
6123
6124// UpdateEmailChannelRequest generates a "aws/request.Request" representing the
6125// client's request for the UpdateEmailChannel operation. The "output" return
6126// value will be populated with the request's response once the request completes
6127// successfuly.
6128//
6129// Use "Send" method on the returned Request to send the API call to the service.
6130// the "output" return value is not valid until after Send returns without error.
6131//
6132// See UpdateEmailChannel for more information on using the UpdateEmailChannel
6133// API call, and error handling.
6134//
6135// This method is useful when you want to inject custom logic or configuration
6136// into the SDK's request lifecycle. Such as custom headers, or retry logic.
6137//
6138//
6139//    // Example sending a request using the UpdateEmailChannelRequest method.
6140//    req, resp := client.UpdateEmailChannelRequest(params)
6141//
6142//    err := req.Send()
6143//    if err == nil { // resp is now filled
6144//        fmt.Println(resp)
6145//    }
6146//
6147// See also, https://docs.aws.amazon.com/goto/WebAPI/pinpoint-2016-12-01/UpdateEmailChannel
6148func (c *Pinpoint) UpdateEmailChannelRequest(input *UpdateEmailChannelInput) (req *request.Request, output *UpdateEmailChannelOutput) {
6149	op := &request.Operation{
6150		Name:       opUpdateEmailChannel,
6151		HTTPMethod: "PUT",
6152		HTTPPath:   "/v1/apps/{application-id}/channels/email",
6153	}
6154
6155	if input == nil {
6156		input = &UpdateEmailChannelInput{}
6157	}
6158
6159	output = &UpdateEmailChannelOutput{}
6160	req = c.newRequest(op, input, output)
6161	return
6162}
6163
6164// UpdateEmailChannel API operation for Amazon Pinpoint.
6165//
6166// Update an email channel.
6167//
6168// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
6169// with awserr.Error's Code and Message methods to get detailed information about
6170// the error.
6171//
6172// See the AWS API reference guide for Amazon Pinpoint's
6173// API operation UpdateEmailChannel for usage and error information.
6174//
6175// Returned Error Codes:
6176//   * ErrCodeBadRequestException "BadRequestException"
6177//   Simple message object.
6178//
6179//   * ErrCodeInternalServerErrorException "InternalServerErrorException"
6180//   Simple message object.
6181//
6182//   * ErrCodeForbiddenException "ForbiddenException"
6183//   Simple message object.
6184//
6185//   * ErrCodeNotFoundException "NotFoundException"
6186//   Simple message object.
6187//
6188//   * ErrCodeMethodNotAllowedException "MethodNotAllowedException"
6189//   Simple message object.
6190//
6191//   * ErrCodeTooManyRequestsException "TooManyRequestsException"
6192//   Simple message object.
6193//
6194// See also, https://docs.aws.amazon.com/goto/WebAPI/pinpoint-2016-12-01/UpdateEmailChannel
6195func (c *Pinpoint) UpdateEmailChannel(input *UpdateEmailChannelInput) (*UpdateEmailChannelOutput, error) {
6196	req, out := c.UpdateEmailChannelRequest(input)
6197	return out, req.Send()
6198}
6199
6200// UpdateEmailChannelWithContext is the same as UpdateEmailChannel with the addition of
6201// the ability to pass a context and additional request options.
6202//
6203// See UpdateEmailChannel for details on how to use this API operation.
6204//
6205// The context must be non-nil and will be used for request cancellation. If
6206// the context is nil a panic will occur. In the future the SDK may create
6207// sub-contexts for http.Requests. See https://golang.org/pkg/context/
6208// for more information on using Contexts.
6209func (c *Pinpoint) UpdateEmailChannelWithContext(ctx aws.Context, input *UpdateEmailChannelInput, opts ...request.Option) (*UpdateEmailChannelOutput, error) {
6210	req, out := c.UpdateEmailChannelRequest(input)
6211	req.SetContext(ctx)
6212	req.ApplyOptions(opts...)
6213	return out, req.Send()
6214}
6215
6216const opUpdateEndpoint = "UpdateEndpoint"
6217
6218// UpdateEndpointRequest generates a "aws/request.Request" representing the
6219// client's request for the UpdateEndpoint operation. The "output" return
6220// value will be populated with the request's response once the request completes
6221// successfuly.
6222//
6223// Use "Send" method on the returned Request to send the API call to the service.
6224// the "output" return value is not valid until after Send returns without error.
6225//
6226// See UpdateEndpoint for more information on using the UpdateEndpoint
6227// API call, and error handling.
6228//
6229// This method is useful when you want to inject custom logic or configuration
6230// into the SDK's request lifecycle. Such as custom headers, or retry logic.
6231//
6232//
6233//    // Example sending a request using the UpdateEndpointRequest method.
6234//    req, resp := client.UpdateEndpointRequest(params)
6235//
6236//    err := req.Send()
6237//    if err == nil { // resp is now filled
6238//        fmt.Println(resp)
6239//    }
6240//
6241// See also, https://docs.aws.amazon.com/goto/WebAPI/pinpoint-2016-12-01/UpdateEndpoint
6242func (c *Pinpoint) UpdateEndpointRequest(input *UpdateEndpointInput) (req *request.Request, output *UpdateEndpointOutput) {
6243	op := &request.Operation{
6244		Name:       opUpdateEndpoint,
6245		HTTPMethod: "PUT",
6246		HTTPPath:   "/v1/apps/{application-id}/endpoints/{endpoint-id}",
6247	}
6248
6249	if input == nil {
6250		input = &UpdateEndpointInput{}
6251	}
6252
6253	output = &UpdateEndpointOutput{}
6254	req = c.newRequest(op, input, output)
6255	return
6256}
6257
6258// UpdateEndpoint API operation for Amazon Pinpoint.
6259//
6260// Creates or updates an endpoint.
6261//
6262// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
6263// with awserr.Error's Code and Message methods to get detailed information about
6264// the error.
6265//
6266// See the AWS API reference guide for Amazon Pinpoint's
6267// API operation UpdateEndpoint for usage and error information.
6268//
6269// Returned Error Codes:
6270//   * ErrCodeBadRequestException "BadRequestException"
6271//   Simple message object.
6272//
6273//   * ErrCodeInternalServerErrorException "InternalServerErrorException"
6274//   Simple message object.
6275//
6276//   * ErrCodeForbiddenException "ForbiddenException"
6277//   Simple message object.
6278//
6279//   * ErrCodeNotFoundException "NotFoundException"
6280//   Simple message object.
6281//
6282//   * ErrCodeMethodNotAllowedException "MethodNotAllowedException"
6283//   Simple message object.
6284//
6285//   * ErrCodeTooManyRequestsException "TooManyRequestsException"
6286//   Simple message object.
6287//
6288// See also, https://docs.aws.amazon.com/goto/WebAPI/pinpoint-2016-12-01/UpdateEndpoint
6289func (c *Pinpoint) UpdateEndpoint(input *UpdateEndpointInput) (*UpdateEndpointOutput, error) {
6290	req, out := c.UpdateEndpointRequest(input)
6291	return out, req.Send()
6292}
6293
6294// UpdateEndpointWithContext is the same as UpdateEndpoint with the addition of
6295// the ability to pass a context and additional request options.
6296//
6297// See UpdateEndpoint for details on how to use this API operation.
6298//
6299// The context must be non-nil and will be used for request cancellation. If
6300// the context is nil a panic will occur. In the future the SDK may create
6301// sub-contexts for http.Requests. See https://golang.org/pkg/context/
6302// for more information on using Contexts.
6303func (c *Pinpoint) UpdateEndpointWithContext(ctx aws.Context, input *UpdateEndpointInput, opts ...request.Option) (*UpdateEndpointOutput, error) {
6304	req, out := c.UpdateEndpointRequest(input)
6305	req.SetContext(ctx)
6306	req.ApplyOptions(opts...)
6307	return out, req.Send()
6308}
6309
6310const opUpdateEndpointsBatch = "UpdateEndpointsBatch"
6311
6312// UpdateEndpointsBatchRequest generates a "aws/request.Request" representing the
6313// client's request for the UpdateEndpointsBatch operation. The "output" return
6314// value will be populated with the request's response once the request completes
6315// successfuly.
6316//
6317// Use "Send" method on the returned Request to send the API call to the service.
6318// the "output" return value is not valid until after Send returns without error.
6319//
6320// See UpdateEndpointsBatch for more information on using the UpdateEndpointsBatch
6321// API call, and error handling.
6322//
6323// This method is useful when you want to inject custom logic or configuration
6324// into the SDK's request lifecycle. Such as custom headers, or retry logic.
6325//
6326//
6327//    // Example sending a request using the UpdateEndpointsBatchRequest method.
6328//    req, resp := client.UpdateEndpointsBatchRequest(params)
6329//
6330//    err := req.Send()
6331//    if err == nil { // resp is now filled
6332//        fmt.Println(resp)
6333//    }
6334//
6335// See also, https://docs.aws.amazon.com/goto/WebAPI/pinpoint-2016-12-01/UpdateEndpointsBatch
6336func (c *Pinpoint) UpdateEndpointsBatchRequest(input *UpdateEndpointsBatchInput) (req *request.Request, output *UpdateEndpointsBatchOutput) {
6337	op := &request.Operation{
6338		Name:       opUpdateEndpointsBatch,
6339		HTTPMethod: "PUT",
6340		HTTPPath:   "/v1/apps/{application-id}/endpoints",
6341	}
6342
6343	if input == nil {
6344		input = &UpdateEndpointsBatchInput{}
6345	}
6346
6347	output = &UpdateEndpointsBatchOutput{}
6348	req = c.newRequest(op, input, output)
6349	return
6350}
6351
6352// UpdateEndpointsBatch API operation for Amazon Pinpoint.
6353//
6354// Use to update a batch of endpoints.
6355//
6356// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
6357// with awserr.Error's Code and Message methods to get detailed information about
6358// the error.
6359//
6360// See the AWS API reference guide for Amazon Pinpoint's
6361// API operation UpdateEndpointsBatch for usage and error information.
6362//
6363// Returned Error Codes:
6364//   * ErrCodeBadRequestException "BadRequestException"
6365//   Simple message object.
6366//
6367//   * ErrCodeInternalServerErrorException "InternalServerErrorException"
6368//   Simple message object.
6369//
6370//   * ErrCodeForbiddenException "ForbiddenException"
6371//   Simple message object.
6372//
6373//   * ErrCodeNotFoundException "NotFoundException"
6374//   Simple message object.
6375//
6376//   * ErrCodeMethodNotAllowedException "MethodNotAllowedException"
6377//   Simple message object.
6378//
6379//   * ErrCodeTooManyRequestsException "TooManyRequestsException"
6380//   Simple message object.
6381//
6382// See also, https://docs.aws.amazon.com/goto/WebAPI/pinpoint-2016-12-01/UpdateEndpointsBatch
6383func (c *Pinpoint) UpdateEndpointsBatch(input *UpdateEndpointsBatchInput) (*UpdateEndpointsBatchOutput, error) {
6384	req, out := c.UpdateEndpointsBatchRequest(input)
6385	return out, req.Send()
6386}
6387
6388// UpdateEndpointsBatchWithContext is the same as UpdateEndpointsBatch with the addition of
6389// the ability to pass a context and additional request options.
6390//
6391// See UpdateEndpointsBatch for details on how to use this API operation.
6392//
6393// The context must be non-nil and will be used for request cancellation. If
6394// the context is nil a panic will occur. In the future the SDK may create
6395// sub-contexts for http.Requests. See https://golang.org/pkg/context/
6396// for more information on using Contexts.
6397func (c *Pinpoint) UpdateEndpointsBatchWithContext(ctx aws.Context, input *UpdateEndpointsBatchInput, opts ...request.Option) (*UpdateEndpointsBatchOutput, error) {
6398	req, out := c.UpdateEndpointsBatchRequest(input)
6399	req.SetContext(ctx)
6400	req.ApplyOptions(opts...)
6401	return out, req.Send()
6402}
6403
6404const opUpdateGcmChannel = "UpdateGcmChannel"
6405
6406// UpdateGcmChannelRequest generates a "aws/request.Request" representing the
6407// client's request for the UpdateGcmChannel operation. The "output" return
6408// value will be populated with the request's response once the request completes
6409// successfuly.
6410//
6411// Use "Send" method on the returned Request to send the API call to the service.
6412// the "output" return value is not valid until after Send returns without error.
6413//
6414// See UpdateGcmChannel for more information on using the UpdateGcmChannel
6415// API call, and error handling.
6416//
6417// This method is useful when you want to inject custom logic or configuration
6418// into the SDK's request lifecycle. Such as custom headers, or retry logic.
6419//
6420//
6421//    // Example sending a request using the UpdateGcmChannelRequest method.
6422//    req, resp := client.UpdateGcmChannelRequest(params)
6423//
6424//    err := req.Send()
6425//    if err == nil { // resp is now filled
6426//        fmt.Println(resp)
6427//    }
6428//
6429// See also, https://docs.aws.amazon.com/goto/WebAPI/pinpoint-2016-12-01/UpdateGcmChannel
6430func (c *Pinpoint) UpdateGcmChannelRequest(input *UpdateGcmChannelInput) (req *request.Request, output *UpdateGcmChannelOutput) {
6431	op := &request.Operation{
6432		Name:       opUpdateGcmChannel,
6433		HTTPMethod: "PUT",
6434		HTTPPath:   "/v1/apps/{application-id}/channels/gcm",
6435	}
6436
6437	if input == nil {
6438		input = &UpdateGcmChannelInput{}
6439	}
6440
6441	output = &UpdateGcmChannelOutput{}
6442	req = c.newRequest(op, input, output)
6443	return
6444}
6445
6446// UpdateGcmChannel API operation for Amazon Pinpoint.
6447//
6448// Use to update the GCM channel for an app.
6449//
6450// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
6451// with awserr.Error's Code and Message methods to get detailed information about
6452// the error.
6453//
6454// See the AWS API reference guide for Amazon Pinpoint's
6455// API operation UpdateGcmChannel for usage and error information.
6456//
6457// Returned Error Codes:
6458//   * ErrCodeBadRequestException "BadRequestException"
6459//   Simple message object.
6460//
6461//   * ErrCodeInternalServerErrorException "InternalServerErrorException"
6462//   Simple message object.
6463//
6464//   * ErrCodeForbiddenException "ForbiddenException"
6465//   Simple message object.
6466//
6467//   * ErrCodeNotFoundException "NotFoundException"
6468//   Simple message object.
6469//
6470//   * ErrCodeMethodNotAllowedException "MethodNotAllowedException"
6471//   Simple message object.
6472//
6473//   * ErrCodeTooManyRequestsException "TooManyRequestsException"
6474//   Simple message object.
6475//
6476// See also, https://docs.aws.amazon.com/goto/WebAPI/pinpoint-2016-12-01/UpdateGcmChannel
6477func (c *Pinpoint) UpdateGcmChannel(input *UpdateGcmChannelInput) (*UpdateGcmChannelOutput, error) {
6478	req, out := c.UpdateGcmChannelRequest(input)
6479	return out, req.Send()
6480}
6481
6482// UpdateGcmChannelWithContext is the same as UpdateGcmChannel with the addition of
6483// the ability to pass a context and additional request options.
6484//
6485// See UpdateGcmChannel for details on how to use this API operation.
6486//
6487// The context must be non-nil and will be used for request cancellation. If
6488// the context is nil a panic will occur. In the future the SDK may create
6489// sub-contexts for http.Requests. See https://golang.org/pkg/context/
6490// for more information on using Contexts.
6491func (c *Pinpoint) UpdateGcmChannelWithContext(ctx aws.Context, input *UpdateGcmChannelInput, opts ...request.Option) (*UpdateGcmChannelOutput, error) {
6492	req, out := c.UpdateGcmChannelRequest(input)
6493	req.SetContext(ctx)
6494	req.ApplyOptions(opts...)
6495	return out, req.Send()
6496}
6497
6498const opUpdateSegment = "UpdateSegment"
6499
6500// UpdateSegmentRequest generates a "aws/request.Request" representing the
6501// client's request for the UpdateSegment operation. The "output" return
6502// value will be populated with the request's response once the request completes
6503// successfuly.
6504//
6505// Use "Send" method on the returned Request to send the API call to the service.
6506// the "output" return value is not valid until after Send returns without error.
6507//
6508// See UpdateSegment for more information on using the UpdateSegment
6509// API call, and error handling.
6510//
6511// This method is useful when you want to inject custom logic or configuration
6512// into the SDK's request lifecycle. Such as custom headers, or retry logic.
6513//
6514//
6515//    // Example sending a request using the UpdateSegmentRequest method.
6516//    req, resp := client.UpdateSegmentRequest(params)
6517//
6518//    err := req.Send()
6519//    if err == nil { // resp is now filled
6520//        fmt.Println(resp)
6521//    }
6522//
6523// See also, https://docs.aws.amazon.com/goto/WebAPI/pinpoint-2016-12-01/UpdateSegment
6524func (c *Pinpoint) UpdateSegmentRequest(input *UpdateSegmentInput) (req *request.Request, output *UpdateSegmentOutput) {
6525	op := &request.Operation{
6526		Name:       opUpdateSegment,
6527		HTTPMethod: "PUT",
6528		HTTPPath:   "/v1/apps/{application-id}/segments/{segment-id}",
6529	}
6530
6531	if input == nil {
6532		input = &UpdateSegmentInput{}
6533	}
6534
6535	output = &UpdateSegmentOutput{}
6536	req = c.newRequest(op, input, output)
6537	return
6538}
6539
6540// UpdateSegment API operation for Amazon Pinpoint.
6541//
6542// Used to update a segment.
6543//
6544// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
6545// with awserr.Error's Code and Message methods to get detailed information about
6546// the error.
6547//
6548// See the AWS API reference guide for Amazon Pinpoint's
6549// API operation UpdateSegment for usage and error information.
6550//
6551// Returned Error Codes:
6552//   * ErrCodeBadRequestException "BadRequestException"
6553//   Simple message object.
6554//
6555//   * ErrCodeInternalServerErrorException "InternalServerErrorException"
6556//   Simple message object.
6557//
6558//   * ErrCodeForbiddenException "ForbiddenException"
6559//   Simple message object.
6560//
6561//   * ErrCodeNotFoundException "NotFoundException"
6562//   Simple message object.
6563//
6564//   * ErrCodeMethodNotAllowedException "MethodNotAllowedException"
6565//   Simple message object.
6566//
6567//   * ErrCodeTooManyRequestsException "TooManyRequestsException"
6568//   Simple message object.
6569//
6570// See also, https://docs.aws.amazon.com/goto/WebAPI/pinpoint-2016-12-01/UpdateSegment
6571func (c *Pinpoint) UpdateSegment(input *UpdateSegmentInput) (*UpdateSegmentOutput, error) {
6572	req, out := c.UpdateSegmentRequest(input)
6573	return out, req.Send()
6574}
6575
6576// UpdateSegmentWithContext is the same as UpdateSegment with the addition of
6577// the ability to pass a context and additional request options.
6578//
6579// See UpdateSegment for details on how to use this API operation.
6580//
6581// The context must be non-nil and will be used for request cancellation. If
6582// the context is nil a panic will occur. In the future the SDK may create
6583// sub-contexts for http.Requests. See https://golang.org/pkg/context/
6584// for more information on using Contexts.
6585func (c *Pinpoint) UpdateSegmentWithContext(ctx aws.Context, input *UpdateSegmentInput, opts ...request.Option) (*UpdateSegmentOutput, error) {
6586	req, out := c.UpdateSegmentRequest(input)
6587	req.SetContext(ctx)
6588	req.ApplyOptions(opts...)
6589	return out, req.Send()
6590}
6591
6592const opUpdateSmsChannel = "UpdateSmsChannel"
6593
6594// UpdateSmsChannelRequest generates a "aws/request.Request" representing the
6595// client's request for the UpdateSmsChannel operation. The "output" return
6596// value will be populated with the request's response once the request completes
6597// successfuly.
6598//
6599// Use "Send" method on the returned Request to send the API call to the service.
6600// the "output" return value is not valid until after Send returns without error.
6601//
6602// See UpdateSmsChannel for more information on using the UpdateSmsChannel
6603// API call, and error handling.
6604//
6605// This method is useful when you want to inject custom logic or configuration
6606// into the SDK's request lifecycle. Such as custom headers, or retry logic.
6607//
6608//
6609//    // Example sending a request using the UpdateSmsChannelRequest method.
6610//    req, resp := client.UpdateSmsChannelRequest(params)
6611//
6612//    err := req.Send()
6613//    if err == nil { // resp is now filled
6614//        fmt.Println(resp)
6615//    }
6616//
6617// See also, https://docs.aws.amazon.com/goto/WebAPI/pinpoint-2016-12-01/UpdateSmsChannel
6618func (c *Pinpoint) UpdateSmsChannelRequest(input *UpdateSmsChannelInput) (req *request.Request, output *UpdateSmsChannelOutput) {
6619	op := &request.Operation{
6620		Name:       opUpdateSmsChannel,
6621		HTTPMethod: "PUT",
6622		HTTPPath:   "/v1/apps/{application-id}/channels/sms",
6623	}
6624
6625	if input == nil {
6626		input = &UpdateSmsChannelInput{}
6627	}
6628
6629	output = &UpdateSmsChannelOutput{}
6630	req = c.newRequest(op, input, output)
6631	return
6632}
6633
6634// UpdateSmsChannel API operation for Amazon Pinpoint.
6635//
6636// Update an SMS channel.
6637//
6638// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
6639// with awserr.Error's Code and Message methods to get detailed information about
6640// the error.
6641//
6642// See the AWS API reference guide for Amazon Pinpoint's
6643// API operation UpdateSmsChannel for usage and error information.
6644//
6645// Returned Error Codes:
6646//   * ErrCodeBadRequestException "BadRequestException"
6647//   Simple message object.
6648//
6649//   * ErrCodeInternalServerErrorException "InternalServerErrorException"
6650//   Simple message object.
6651//
6652//   * ErrCodeForbiddenException "ForbiddenException"
6653//   Simple message object.
6654//
6655//   * ErrCodeNotFoundException "NotFoundException"
6656//   Simple message object.
6657//
6658//   * ErrCodeMethodNotAllowedException "MethodNotAllowedException"
6659//   Simple message object.
6660//
6661//   * ErrCodeTooManyRequestsException "TooManyRequestsException"
6662//   Simple message object.
6663//
6664// See also, https://docs.aws.amazon.com/goto/WebAPI/pinpoint-2016-12-01/UpdateSmsChannel
6665func (c *Pinpoint) UpdateSmsChannel(input *UpdateSmsChannelInput) (*UpdateSmsChannelOutput, error) {
6666	req, out := c.UpdateSmsChannelRequest(input)
6667	return out, req.Send()
6668}
6669
6670// UpdateSmsChannelWithContext is the same as UpdateSmsChannel with the addition of
6671// the ability to pass a context and additional request options.
6672//
6673// See UpdateSmsChannel for details on how to use this API operation.
6674//
6675// The context must be non-nil and will be used for request cancellation. If
6676// the context is nil a panic will occur. In the future the SDK may create
6677// sub-contexts for http.Requests. See https://golang.org/pkg/context/
6678// for more information on using Contexts.
6679func (c *Pinpoint) UpdateSmsChannelWithContext(ctx aws.Context, input *UpdateSmsChannelInput, opts ...request.Option) (*UpdateSmsChannelOutput, error) {
6680	req, out := c.UpdateSmsChannelRequest(input)
6681	req.SetContext(ctx)
6682	req.ApplyOptions(opts...)
6683	return out, req.Send()
6684}
6685
6686// Amazon Device Messaging channel definition.
6687type ADMChannelRequest struct {
6688	_ struct{} `type:"structure"`
6689
6690	// The Client ID that you obtained from the Amazon App Distribution Portal.
6691	ClientId *string `type:"string"`
6692
6693	// The Client Secret that you obtained from the Amazon App Distribution Portal.
6694	ClientSecret *string `type:"string"`
6695
6696	// Indicates whether or not the channel is enabled for sending messages.
6697	Enabled *bool `type:"boolean"`
6698}
6699
6700// String returns the string representation
6701func (s ADMChannelRequest) String() string {
6702	return awsutil.Prettify(s)
6703}
6704
6705// GoString returns the string representation
6706func (s ADMChannelRequest) GoString() string {
6707	return s.String()
6708}
6709
6710// SetClientId sets the ClientId field's value.
6711func (s *ADMChannelRequest) SetClientId(v string) *ADMChannelRequest {
6712	s.ClientId = &v
6713	return s
6714}
6715
6716// SetClientSecret sets the ClientSecret field's value.
6717func (s *ADMChannelRequest) SetClientSecret(v string) *ADMChannelRequest {
6718	s.ClientSecret = &v
6719	return s
6720}
6721
6722// SetEnabled sets the Enabled field's value.
6723func (s *ADMChannelRequest) SetEnabled(v bool) *ADMChannelRequest {
6724	s.Enabled = &v
6725	return s
6726}
6727
6728// Amazon Device Messaging channel definition.
6729type ADMChannelResponse struct {
6730	_ struct{} `type:"structure"`
6731
6732	// The ID of the application to which the channel applies.
6733	ApplicationId *string `type:"string"`
6734
6735	// The date and time when this channel was created.
6736	CreationDate *string `type:"string"`
6737
6738	// Indicates whether or not the channel is enabled for sending messages.
6739	Enabled *bool `type:"boolean"`
6740
6741	// Not used. Retained for backwards compatibility.
6742	HasCredential *bool `type:"boolean"`
6743
6744	// (Deprecated) An identifier for the channel. Retained for backwards compatibility.
6745	Id *string `type:"string"`
6746
6747	// Indicates whether or not the channel is archived.
6748	IsArchived *bool `type:"boolean"`
6749
6750	// The user who last updated this channel.
6751	LastModifiedBy *string `type:"string"`
6752
6753	// The date and time when this channel was last modified.
6754	LastModifiedDate *string `type:"string"`
6755
6756	// The platform type. For this channel, the value is always "ADM."
6757	Platform *string `type:"string"`
6758
6759	// The channel version.
6760	Version *int64 `type:"integer"`
6761}
6762
6763// String returns the string representation
6764func (s ADMChannelResponse) String() string {
6765	return awsutil.Prettify(s)
6766}
6767
6768// GoString returns the string representation
6769func (s ADMChannelResponse) GoString() string {
6770	return s.String()
6771}
6772
6773// SetApplicationId sets the ApplicationId field's value.
6774func (s *ADMChannelResponse) SetApplicationId(v string) *ADMChannelResponse {
6775	s.ApplicationId = &v
6776	return s
6777}
6778
6779// SetCreationDate sets the CreationDate field's value.
6780func (s *ADMChannelResponse) SetCreationDate(v string) *ADMChannelResponse {
6781	s.CreationDate = &v
6782	return s
6783}
6784
6785// SetEnabled sets the Enabled field's value.
6786func (s *ADMChannelResponse) SetEnabled(v bool) *ADMChannelResponse {
6787	s.Enabled = &v
6788	return s
6789}
6790
6791// SetHasCredential sets the HasCredential field's value.
6792func (s *ADMChannelResponse) SetHasCredential(v bool) *ADMChannelResponse {
6793	s.HasCredential = &v
6794	return s
6795}
6796
6797// SetId sets the Id field's value.
6798func (s *ADMChannelResponse) SetId(v string) *ADMChannelResponse {
6799	s.Id = &v
6800	return s
6801}
6802
6803// SetIsArchived sets the IsArchived field's value.
6804func (s *ADMChannelResponse) SetIsArchived(v bool) *ADMChannelResponse {
6805	s.IsArchived = &v
6806	return s
6807}
6808
6809// SetLastModifiedBy sets the LastModifiedBy field's value.
6810func (s *ADMChannelResponse) SetLastModifiedBy(v string) *ADMChannelResponse {
6811	s.LastModifiedBy = &v
6812	return s
6813}
6814
6815// SetLastModifiedDate sets the LastModifiedDate field's value.
6816func (s *ADMChannelResponse) SetLastModifiedDate(v string) *ADMChannelResponse {
6817	s.LastModifiedDate = &v
6818	return s
6819}
6820
6821// SetPlatform sets the Platform field's value.
6822func (s *ADMChannelResponse) SetPlatform(v string) *ADMChannelResponse {
6823	s.Platform = &v
6824	return s
6825}
6826
6827// SetVersion sets the Version field's value.
6828func (s *ADMChannelResponse) SetVersion(v int64) *ADMChannelResponse {
6829	s.Version = &v
6830	return s
6831}
6832
6833// ADM Message.
6834type ADMMessage struct {
6835	_ struct{} `type:"structure"`
6836
6837	// The action that occurs if the user taps a push notification delivered by
6838	// the campaign: OPEN_APP - Your app launches, or it becomes the foreground
6839	// app if it has been sent to the background. This is the default action. DEEP_LINK
6840	// - Uses deep linking features in iOS and Android to open your app and display
6841	// a designated user interface within the app. URL - The default mobile browser
6842	// on the user's device launches and opens a web page at the URL you specify.
6843	// Possible values include: OPEN_APP | DEEP_LINK | URL
6844	Action *string `type:"string" enum:"Action"`
6845
6846	// The message body of the notification.
6847	Body *string `type:"string"`
6848
6849	// Optional. Arbitrary string used to indicate multiple messages are logically
6850	// the same and that ADM is allowed to drop previously enqueued messages in
6851	// favor of this one.
6852	ConsolidationKey *string `type:"string"`
6853
6854	// The data payload used for a silent push. This payload is added to the notifications'
6855	// data.pinpoint.jsonBody' object
6856	Data map[string]*string `type:"map"`
6857
6858	// Optional. Number of seconds ADM should retain the message if the device is
6859	// offline
6860	ExpiresAfter *string `type:"string"`
6861
6862	// The icon image name of the asset saved in your application.
6863	IconReference *string `type:"string"`
6864
6865	// The URL that points to an image used as the large icon to the notification
6866	// content view.
6867	ImageIconUrl *string `type:"string"`
6868
6869	// The URL that points to an image used in the push notification.
6870	ImageUrl *string `type:"string"`
6871
6872	// Optional. Base-64-encoded MD5 checksum of the data parameter. Used to verify
6873	// data integrity
6874	MD5 *string `type:"string"`
6875
6876	// The Raw JSON formatted string to be used as the payload. This value overrides
6877	// the message.
6878	RawContent *string `type:"string"`
6879
6880	// Indicates if the message should display on the users device. Silent pushes
6881	// can be used for Remote Configuration and Phone Home use cases.
6882	SilentPush *bool `type:"boolean"`
6883
6884	// The URL that points to an image used as the small icon for the notification
6885	// which will be used to represent the notification in the status bar and content
6886	// view
6887	SmallImageIconUrl *string `type:"string"`
6888
6889	// Indicates a sound to play when the device receives the notification. Supports
6890	// default, or the filename of a sound resource bundled in the app. Android
6891	// sound files must reside in /res/raw/
6892	Sound *string `type:"string"`
6893
6894	// Default message substitutions. Can be overridden by individual address substitutions.
6895	Substitutions map[string][]*string `type:"map"`
6896
6897	// The message title that displays above the message on the user's device.
6898	Title *string `type:"string"`
6899
6900	// The URL to open in the user's mobile browser. Used if the value for Action
6901	// is URL.
6902	Url *string `type:"string"`
6903}
6904
6905// String returns the string representation
6906func (s ADMMessage) String() string {
6907	return awsutil.Prettify(s)
6908}
6909
6910// GoString returns the string representation
6911func (s ADMMessage) GoString() string {
6912	return s.String()
6913}
6914
6915// SetAction sets the Action field's value.
6916func (s *ADMMessage) SetAction(v string) *ADMMessage {
6917	s.Action = &v
6918	return s
6919}
6920
6921// SetBody sets the Body field's value.
6922func (s *ADMMessage) SetBody(v string) *ADMMessage {
6923	s.Body = &v
6924	return s
6925}
6926
6927// SetConsolidationKey sets the ConsolidationKey field's value.
6928func (s *ADMMessage) SetConsolidationKey(v string) *ADMMessage {
6929	s.ConsolidationKey = &v
6930	return s
6931}
6932
6933// SetData sets the Data field's value.
6934func (s *ADMMessage) SetData(v map[string]*string) *ADMMessage {
6935	s.Data = v
6936	return s
6937}
6938
6939// SetExpiresAfter sets the ExpiresAfter field's value.
6940func (s *ADMMessage) SetExpiresAfter(v string) *ADMMessage {
6941	s.ExpiresAfter = &v
6942	return s
6943}
6944
6945// SetIconReference sets the IconReference field's value.
6946func (s *ADMMessage) SetIconReference(v string) *ADMMessage {
6947	s.IconReference = &v
6948	return s
6949}
6950
6951// SetImageIconUrl sets the ImageIconUrl field's value.
6952func (s *ADMMessage) SetImageIconUrl(v string) *ADMMessage {
6953	s.ImageIconUrl = &v
6954	return s
6955}
6956
6957// SetImageUrl sets the ImageUrl field's value.
6958func (s *ADMMessage) SetImageUrl(v string) *ADMMessage {
6959	s.ImageUrl = &v
6960	return s
6961}
6962
6963// SetMD5 sets the MD5 field's value.
6964func (s *ADMMessage) SetMD5(v string) *ADMMessage {
6965	s.MD5 = &v
6966	return s
6967}
6968
6969// SetRawContent sets the RawContent field's value.
6970func (s *ADMMessage) SetRawContent(v string) *ADMMessage {
6971	s.RawContent = &v
6972	return s
6973}
6974
6975// SetSilentPush sets the SilentPush field's value.
6976func (s *ADMMessage) SetSilentPush(v bool) *ADMMessage {
6977	s.SilentPush = &v
6978	return s
6979}
6980
6981// SetSmallImageIconUrl sets the SmallImageIconUrl field's value.
6982func (s *ADMMessage) SetSmallImageIconUrl(v string) *ADMMessage {
6983	s.SmallImageIconUrl = &v
6984	return s
6985}
6986
6987// SetSound sets the Sound field's value.
6988func (s *ADMMessage) SetSound(v string) *ADMMessage {
6989	s.Sound = &v
6990	return s
6991}
6992
6993// SetSubstitutions sets the Substitutions field's value.
6994func (s *ADMMessage) SetSubstitutions(v map[string][]*string) *ADMMessage {
6995	s.Substitutions = v
6996	return s
6997}
6998
6999// SetTitle sets the Title field's value.
7000func (s *ADMMessage) SetTitle(v string) *ADMMessage {
7001	s.Title = &v
7002	return s
7003}
7004
7005// SetUrl sets the Url field's value.
7006func (s *ADMMessage) SetUrl(v string) *ADMMessage {
7007	s.Url = &v
7008	return s
7009}
7010
7011// Apple Push Notification Service channel definition.
7012type APNSChannelRequest struct {
7013	_ struct{} `type:"structure"`
7014
7015	// The bundle id used for APNs Tokens.
7016	BundleId *string `type:"string"`
7017
7018	// The distribution certificate from Apple.
7019	Certificate *string `type:"string"`
7020
7021	// The default authentication method used for APNs.
7022	DefaultAuthenticationMethod *string `type:"string"`
7023
7024	// If the channel is enabled for sending messages.
7025	Enabled *bool `type:"boolean"`
7026
7027	// The certificate private key.
7028	PrivateKey *string `type:"string"`
7029
7030	// The team id used for APNs Tokens.
7031	TeamId *string `type:"string"`
7032
7033	// The token key used for APNs Tokens.
7034	TokenKey *string `type:"string"`
7035
7036	// The token key used for APNs Tokens.
7037	TokenKeyId *string `type:"string"`
7038}
7039
7040// String returns the string representation
7041func (s APNSChannelRequest) String() string {
7042	return awsutil.Prettify(s)
7043}
7044
7045// GoString returns the string representation
7046func (s APNSChannelRequest) GoString() string {
7047	return s.String()
7048}
7049
7050// SetBundleId sets the BundleId field's value.
7051func (s *APNSChannelRequest) SetBundleId(v string) *APNSChannelRequest {
7052	s.BundleId = &v
7053	return s
7054}
7055
7056// SetCertificate sets the Certificate field's value.
7057func (s *APNSChannelRequest) SetCertificate(v string) *APNSChannelRequest {
7058	s.Certificate = &v
7059	return s
7060}
7061
7062// SetDefaultAuthenticationMethod sets the DefaultAuthenticationMethod field's value.
7063func (s *APNSChannelRequest) SetDefaultAuthenticationMethod(v string) *APNSChannelRequest {
7064	s.DefaultAuthenticationMethod = &v
7065	return s
7066}
7067
7068// SetEnabled sets the Enabled field's value.
7069func (s *APNSChannelRequest) SetEnabled(v bool) *APNSChannelRequest {
7070	s.Enabled = &v
7071	return s
7072}
7073
7074// SetPrivateKey sets the PrivateKey field's value.
7075func (s *APNSChannelRequest) SetPrivateKey(v string) *APNSChannelRequest {
7076	s.PrivateKey = &v
7077	return s
7078}
7079
7080// SetTeamId sets the TeamId field's value.
7081func (s *APNSChannelRequest) SetTeamId(v string) *APNSChannelRequest {
7082	s.TeamId = &v
7083	return s
7084}
7085
7086// SetTokenKey sets the TokenKey field's value.
7087func (s *APNSChannelRequest) SetTokenKey(v string) *APNSChannelRequest {
7088	s.TokenKey = &v
7089	return s
7090}
7091
7092// SetTokenKeyId sets the TokenKeyId field's value.
7093func (s *APNSChannelRequest) SetTokenKeyId(v string) *APNSChannelRequest {
7094	s.TokenKeyId = &v
7095	return s
7096}
7097
7098// Apple Distribution Push Notification Service channel definition.
7099type APNSChannelResponse struct {
7100	_ struct{} `type:"structure"`
7101
7102	// The ID of the application that the channel applies to.
7103	ApplicationId *string `type:"string"`
7104
7105	// The date and time when this channel was created.
7106	CreationDate *string `type:"string"`
7107
7108	// The default authentication method used for APNs.
7109	DefaultAuthenticationMethod *string `type:"string"`
7110
7111	// If the channel is enabled for sending messages.
7112	Enabled *bool `type:"boolean"`
7113
7114	// Not used. Retained for backwards compatibility.
7115	HasCredential *bool `type:"boolean"`
7116
7117	// Indicates whether the channel is configured with a key for APNs token authentication.
7118	// Provide a token key by setting the TokenKey attribute.
7119	HasTokenKey *bool `type:"boolean"`
7120
7121	// (Deprecated) An identifier for the channel. Retained for backwards compatibility.
7122	Id *string `type:"string"`
7123
7124	// Indicates whether or not the channel is archived.
7125	IsArchived *bool `type:"boolean"`
7126
7127	// The user who last updated this channel.
7128	LastModifiedBy *string `type:"string"`
7129
7130	// The date and time when this channel was last modified.
7131	LastModifiedDate *string `type:"string"`
7132
7133	// The platform type. For this channel, the value is always "ADM."
7134	Platform *string `type:"string"`
7135
7136	// The channel version.
7137	Version *int64 `type:"integer"`
7138}
7139
7140// String returns the string representation
7141func (s APNSChannelResponse) String() string {
7142	return awsutil.Prettify(s)
7143}
7144
7145// GoString returns the string representation
7146func (s APNSChannelResponse) GoString() string {
7147	return s.String()
7148}
7149
7150// SetApplicationId sets the ApplicationId field's value.
7151func (s *APNSChannelResponse) SetApplicationId(v string) *APNSChannelResponse {
7152	s.ApplicationId = &v
7153	return s
7154}
7155
7156// SetCreationDate sets the CreationDate field's value.
7157func (s *APNSChannelResponse) SetCreationDate(v string) *APNSChannelResponse {
7158	s.CreationDate = &v
7159	return s
7160}
7161
7162// SetDefaultAuthenticationMethod sets the DefaultAuthenticationMethod field's value.
7163func (s *APNSChannelResponse) SetDefaultAuthenticationMethod(v string) *APNSChannelResponse {
7164	s.DefaultAuthenticationMethod = &v
7165	return s
7166}
7167
7168// SetEnabled sets the Enabled field's value.
7169func (s *APNSChannelResponse) SetEnabled(v bool) *APNSChannelResponse {
7170	s.Enabled = &v
7171	return s
7172}
7173
7174// SetHasCredential sets the HasCredential field's value.
7175func (s *APNSChannelResponse) SetHasCredential(v bool) *APNSChannelResponse {
7176	s.HasCredential = &v
7177	return s
7178}
7179
7180// SetHasTokenKey sets the HasTokenKey field's value.
7181func (s *APNSChannelResponse) SetHasTokenKey(v bool) *APNSChannelResponse {
7182	s.HasTokenKey = &v
7183	return s
7184}
7185
7186// SetId sets the Id field's value.
7187func (s *APNSChannelResponse) SetId(v string) *APNSChannelResponse {
7188	s.Id = &v
7189	return s
7190}
7191
7192// SetIsArchived sets the IsArchived field's value.
7193func (s *APNSChannelResponse) SetIsArchived(v bool) *APNSChannelResponse {
7194	s.IsArchived = &v
7195	return s
7196}
7197
7198// SetLastModifiedBy sets the LastModifiedBy field's value.
7199func (s *APNSChannelResponse) SetLastModifiedBy(v string) *APNSChannelResponse {
7200	s.LastModifiedBy = &v
7201	return s
7202}
7203
7204// SetLastModifiedDate sets the LastModifiedDate field's value.
7205func (s *APNSChannelResponse) SetLastModifiedDate(v string) *APNSChannelResponse {
7206	s.LastModifiedDate = &v
7207	return s
7208}
7209
7210// SetPlatform sets the Platform field's value.
7211func (s *APNSChannelResponse) SetPlatform(v string) *APNSChannelResponse {
7212	s.Platform = &v
7213	return s
7214}
7215
7216// SetVersion sets the Version field's value.
7217func (s *APNSChannelResponse) SetVersion(v int64) *APNSChannelResponse {
7218	s.Version = &v
7219	return s
7220}
7221
7222// APNS Message.
7223type APNSMessage struct {
7224	_ struct{} `type:"structure"`
7225
7226	// The action that occurs if the user taps a push notification delivered by
7227	// the campaign: OPEN_APP - Your app launches, or it becomes the foreground
7228	// app if it has been sent to the background. This is the default action. DEEP_LINK
7229	// - Uses deep linking features in iOS and Android to open your app and display
7230	// a designated user interface within the app. URL - The default mobile browser
7231	// on the user's device launches and opens a web page at the URL you specify.
7232	// Possible values include: OPEN_APP | DEEP_LINK | URL
7233	Action *string `type:"string" enum:"Action"`
7234
7235	// Include this key when you want the system to modify the badge of your app
7236	// icon. If this key is not included in the dictionary, the badge is not changed.
7237	// To remove the badge, set the value of this key to 0.
7238	Badge *int64 `type:"integer"`
7239
7240	// The message body of the notification.
7241	Body *string `type:"string"`
7242
7243	// Provide this key with a string value that represents the notification's type.
7244	// This value corresponds to the value in the identifier property of one of
7245	// your app's registered categories.
7246	Category *string `type:"string"`
7247
7248	// An ID that, if assigned to multiple messages, causes APNs to coalesce the
7249	// messages into a single push notification instead of delivering each message
7250	// individually. The value must not exceed 64 bytes. Amazon Pinpoint uses this
7251	// value to set the apns-collapse-id request header when it sends the message
7252	// to APNs.
7253	CollapseId *string `type:"string"`
7254
7255	// The data payload used for a silent push. This payload is added to the notifications'
7256	// data.pinpoint.jsonBody' object
7257	Data map[string]*string `type:"map"`
7258
7259	// The URL that points to a video used in the push notification.
7260	MediaUrl *string `type:"string"`
7261
7262	// The preferred authentication method, either "CERTIFICATE" or "TOKEN"
7263	PreferredAuthenticationMethod *string `type:"string"`
7264
7265	// The message priority. Amazon Pinpoint uses this value to set the apns-priority
7266	// request header when it sends the message to APNs. Accepts the following values:"5"
7267	// - Low priority. Messages might be delayed, delivered in groups, and throttled."10"
7268	// - High priority. Messages are sent immediately. High priority messages must
7269	// cause an alert, sound, or badge on the receiving device.The default value
7270	// is "10".The equivalent values for FCM or GCM messages are "normal" and "high".
7271	// Amazon Pinpoint accepts these values for APNs messages and converts them.For
7272	// more information about the apns-priority parameter, see Communicating with
7273	// APNs in the APNs Local and Remote Notification Programming Guide.
7274	Priority *string `type:"string"`
7275
7276	// The Raw JSON formatted string to be used as the payload. This value overrides
7277	// the message.
7278	RawContent *string `type:"string"`
7279
7280	// Indicates if the message should display on the users device. Silent pushes
7281	// can be used for Remote Configuration and Phone Home use cases.
7282	SilentPush *bool `type:"boolean"`
7283
7284	// Include this key when you want the system to play a sound. The value of this
7285	// key is the name of a sound file in your app's main bundle or in the Library/Sounds
7286	// folder of your app's data container. If the sound file cannot be found, or
7287	// if you specify defaultfor the value, the system plays the default alert sound.
7288	Sound *string `type:"string"`
7289
7290	// Default message substitutions. Can be overridden by individual address substitutions.
7291	Substitutions map[string][]*string `type:"map"`
7292
7293	// Provide this key with a string value that represents the app-specific identifier
7294	// for grouping notifications. If you provide a Notification Content app extension,
7295	// you can use this value to group your notifications together.
7296	ThreadId *string `type:"string"`
7297
7298	// The length of time (in seconds) that APNs stores and attempts to deliver
7299	// the message. If the value is 0, APNs does not store the message or attempt
7300	// to deliver it more than once. Amazon Pinpoint uses this value to set the
7301	// apns-expiration request header when it sends the message to APNs.
7302	TimeToLive *int64 `type:"integer"`
7303
7304	// The message title that displays above the message on the user's device.
7305	Title *string `type:"string"`
7306
7307	// The URL to open in the user's mobile browser. Used if the value for Action
7308	// is URL.
7309	Url *string `type:"string"`
7310}
7311
7312// String returns the string representation
7313func (s APNSMessage) String() string {
7314	return awsutil.Prettify(s)
7315}
7316
7317// GoString returns the string representation
7318func (s APNSMessage) GoString() string {
7319	return s.String()
7320}
7321
7322// SetAction sets the Action field's value.
7323func (s *APNSMessage) SetAction(v string) *APNSMessage {
7324	s.Action = &v
7325	return s
7326}
7327
7328// SetBadge sets the Badge field's value.
7329func (s *APNSMessage) SetBadge(v int64) *APNSMessage {
7330	s.Badge = &v
7331	return s
7332}
7333
7334// SetBody sets the Body field's value.
7335func (s *APNSMessage) SetBody(v string) *APNSMessage {
7336	s.Body = &v
7337	return s
7338}
7339
7340// SetCategory sets the Category field's value.
7341func (s *APNSMessage) SetCategory(v string) *APNSMessage {
7342	s.Category = &v
7343	return s
7344}
7345
7346// SetCollapseId sets the CollapseId field's value.
7347func (s *APNSMessage) SetCollapseId(v string) *APNSMessage {
7348	s.CollapseId = &v
7349	return s
7350}
7351
7352// SetData sets the Data field's value.
7353func (s *APNSMessage) SetData(v map[string]*string) *APNSMessage {
7354	s.Data = v
7355	return s
7356}
7357
7358// SetMediaUrl sets the MediaUrl field's value.
7359func (s *APNSMessage) SetMediaUrl(v string) *APNSMessage {
7360	s.MediaUrl = &v
7361	return s
7362}
7363
7364// SetPreferredAuthenticationMethod sets the PreferredAuthenticationMethod field's value.
7365func (s *APNSMessage) SetPreferredAuthenticationMethod(v string) *APNSMessage {
7366	s.PreferredAuthenticationMethod = &v
7367	return s
7368}
7369
7370// SetPriority sets the Priority field's value.
7371func (s *APNSMessage) SetPriority(v string) *APNSMessage {
7372	s.Priority = &v
7373	return s
7374}
7375
7376// SetRawContent sets the RawContent field's value.
7377func (s *APNSMessage) SetRawContent(v string) *APNSMessage {
7378	s.RawContent = &v
7379	return s
7380}
7381
7382// SetSilentPush sets the SilentPush field's value.
7383func (s *APNSMessage) SetSilentPush(v bool) *APNSMessage {
7384	s.SilentPush = &v
7385	return s
7386}
7387
7388// SetSound sets the Sound field's value.
7389func (s *APNSMessage) SetSound(v string) *APNSMessage {
7390	s.Sound = &v
7391	return s
7392}
7393
7394// SetSubstitutions sets the Substitutions field's value.
7395func (s *APNSMessage) SetSubstitutions(v map[string][]*string) *APNSMessage {
7396	s.Substitutions = v
7397	return s
7398}
7399
7400// SetThreadId sets the ThreadId field's value.
7401func (s *APNSMessage) SetThreadId(v string) *APNSMessage {
7402	s.ThreadId = &v
7403	return s
7404}
7405
7406// SetTimeToLive sets the TimeToLive field's value.
7407func (s *APNSMessage) SetTimeToLive(v int64) *APNSMessage {
7408	s.TimeToLive = &v
7409	return s
7410}
7411
7412// SetTitle sets the Title field's value.
7413func (s *APNSMessage) SetTitle(v string) *APNSMessage {
7414	s.Title = &v
7415	return s
7416}
7417
7418// SetUrl sets the Url field's value.
7419func (s *APNSMessage) SetUrl(v string) *APNSMessage {
7420	s.Url = &v
7421	return s
7422}
7423
7424// Apple Development Push Notification Service channel definition.
7425type APNSSandboxChannelRequest struct {
7426	_ struct{} `type:"structure"`
7427
7428	// The bundle id used for APNs Tokens.
7429	BundleId *string `type:"string"`
7430
7431	// The distribution certificate from Apple.
7432	Certificate *string `type:"string"`
7433
7434	// The default authentication method used for APNs.
7435	DefaultAuthenticationMethod *string `type:"string"`
7436
7437	// If the channel is enabled for sending messages.
7438	Enabled *bool `type:"boolean"`
7439
7440	// The certificate private key.
7441	PrivateKey *string `type:"string"`
7442
7443	// The team id used for APNs Tokens.
7444	TeamId *string `type:"string"`
7445
7446	// The token key used for APNs Tokens.
7447	TokenKey *string `type:"string"`
7448
7449	// The token key used for APNs Tokens.
7450	TokenKeyId *string `type:"string"`
7451}
7452
7453// String returns the string representation
7454func (s APNSSandboxChannelRequest) String() string {
7455	return awsutil.Prettify(s)
7456}
7457
7458// GoString returns the string representation
7459func (s APNSSandboxChannelRequest) GoString() string {
7460	return s.String()
7461}
7462
7463// SetBundleId sets the BundleId field's value.
7464func (s *APNSSandboxChannelRequest) SetBundleId(v string) *APNSSandboxChannelRequest {
7465	s.BundleId = &v
7466	return s
7467}
7468
7469// SetCertificate sets the Certificate field's value.
7470func (s *APNSSandboxChannelRequest) SetCertificate(v string) *APNSSandboxChannelRequest {
7471	s.Certificate = &v
7472	return s
7473}
7474
7475// SetDefaultAuthenticationMethod sets the DefaultAuthenticationMethod field's value.
7476func (s *APNSSandboxChannelRequest) SetDefaultAuthenticationMethod(v string) *APNSSandboxChannelRequest {
7477	s.DefaultAuthenticationMethod = &v
7478	return s
7479}
7480
7481// SetEnabled sets the Enabled field's value.
7482func (s *APNSSandboxChannelRequest) SetEnabled(v bool) *APNSSandboxChannelRequest {
7483	s.Enabled = &v
7484	return s
7485}
7486
7487// SetPrivateKey sets the PrivateKey field's value.
7488func (s *APNSSandboxChannelRequest) SetPrivateKey(v string) *APNSSandboxChannelRequest {
7489	s.PrivateKey = &v
7490	return s
7491}
7492
7493// SetTeamId sets the TeamId field's value.
7494func (s *APNSSandboxChannelRequest) SetTeamId(v string) *APNSSandboxChannelRequest {
7495	s.TeamId = &v
7496	return s
7497}
7498
7499// SetTokenKey sets the TokenKey field's value.
7500func (s *APNSSandboxChannelRequest) SetTokenKey(v string) *APNSSandboxChannelRequest {
7501	s.TokenKey = &v
7502	return s
7503}
7504
7505// SetTokenKeyId sets the TokenKeyId field's value.
7506func (s *APNSSandboxChannelRequest) SetTokenKeyId(v string) *APNSSandboxChannelRequest {
7507	s.TokenKeyId = &v
7508	return s
7509}
7510
7511// Apple Development Push Notification Service channel definition.
7512type APNSSandboxChannelResponse struct {
7513	_ struct{} `type:"structure"`
7514
7515	// The ID of the application to which the channel applies.
7516	ApplicationId *string `type:"string"`
7517
7518	// When was this segment created
7519	CreationDate *string `type:"string"`
7520
7521	// The default authentication method used for APNs.
7522	DefaultAuthenticationMethod *string `type:"string"`
7523
7524	// If the channel is enabled for sending messages.
7525	Enabled *bool `type:"boolean"`
7526
7527	// Not used. Retained for backwards compatibility.
7528	HasCredential *bool `type:"boolean"`
7529
7530	// Indicates whether the channel is configured with a key for APNs token authentication.
7531	// Provide a token key by setting the TokenKey attribute.
7532	HasTokenKey *bool `type:"boolean"`
7533
7534	// Channel ID. Not used, only for backwards compatibility.
7535	Id *string `type:"string"`
7536
7537	// Is this channel archived
7538	IsArchived *bool `type:"boolean"`
7539
7540	// Who last updated this entry
7541	LastModifiedBy *string `type:"string"`
7542
7543	// Last date this was updated
7544	LastModifiedDate *string `type:"string"`
7545
7546	// The platform type. Will be APNS_SANDBOX.
7547	Platform *string `type:"string"`
7548
7549	// Version of channel
7550	Version *int64 `type:"integer"`
7551}
7552
7553// String returns the string representation
7554func (s APNSSandboxChannelResponse) String() string {
7555	return awsutil.Prettify(s)
7556}
7557
7558// GoString returns the string representation
7559func (s APNSSandboxChannelResponse) GoString() string {
7560	return s.String()
7561}
7562
7563// SetApplicationId sets the ApplicationId field's value.
7564func (s *APNSSandboxChannelResponse) SetApplicationId(v string) *APNSSandboxChannelResponse {
7565	s.ApplicationId = &v
7566	return s
7567}
7568
7569// SetCreationDate sets the CreationDate field's value.
7570func (s *APNSSandboxChannelResponse) SetCreationDate(v string) *APNSSandboxChannelResponse {
7571	s.CreationDate = &v
7572	return s
7573}
7574
7575// SetDefaultAuthenticationMethod sets the DefaultAuthenticationMethod field's value.
7576func (s *APNSSandboxChannelResponse) SetDefaultAuthenticationMethod(v string) *APNSSandboxChannelResponse {
7577	s.DefaultAuthenticationMethod = &v
7578	return s
7579}
7580
7581// SetEnabled sets the Enabled field's value.
7582func (s *APNSSandboxChannelResponse) SetEnabled(v bool) *APNSSandboxChannelResponse {
7583	s.Enabled = &v
7584	return s
7585}
7586
7587// SetHasCredential sets the HasCredential field's value.
7588func (s *APNSSandboxChannelResponse) SetHasCredential(v bool) *APNSSandboxChannelResponse {
7589	s.HasCredential = &v
7590	return s
7591}
7592
7593// SetHasTokenKey sets the HasTokenKey field's value.
7594func (s *APNSSandboxChannelResponse) SetHasTokenKey(v bool) *APNSSandboxChannelResponse {
7595	s.HasTokenKey = &v
7596	return s
7597}
7598
7599// SetId sets the Id field's value.
7600func (s *APNSSandboxChannelResponse) SetId(v string) *APNSSandboxChannelResponse {
7601	s.Id = &v
7602	return s
7603}
7604
7605// SetIsArchived sets the IsArchived field's value.
7606func (s *APNSSandboxChannelResponse) SetIsArchived(v bool) *APNSSandboxChannelResponse {
7607	s.IsArchived = &v
7608	return s
7609}
7610
7611// SetLastModifiedBy sets the LastModifiedBy field's value.
7612func (s *APNSSandboxChannelResponse) SetLastModifiedBy(v string) *APNSSandboxChannelResponse {
7613	s.LastModifiedBy = &v
7614	return s
7615}
7616
7617// SetLastModifiedDate sets the LastModifiedDate field's value.
7618func (s *APNSSandboxChannelResponse) SetLastModifiedDate(v string) *APNSSandboxChannelResponse {
7619	s.LastModifiedDate = &v
7620	return s
7621}
7622
7623// SetPlatform sets the Platform field's value.
7624func (s *APNSSandboxChannelResponse) SetPlatform(v string) *APNSSandboxChannelResponse {
7625	s.Platform = &v
7626	return s
7627}
7628
7629// SetVersion sets the Version field's value.
7630func (s *APNSSandboxChannelResponse) SetVersion(v int64) *APNSSandboxChannelResponse {
7631	s.Version = &v
7632	return s
7633}
7634
7635// Apple VoIP Push Notification Service channel definition.
7636type APNSVoipChannelRequest struct {
7637	_ struct{} `type:"structure"`
7638
7639	// The bundle id used for APNs Tokens.
7640	BundleId *string `type:"string"`
7641
7642	// The distribution certificate from Apple.
7643	Certificate *string `type:"string"`
7644
7645	// The default authentication method used for APNs.
7646	DefaultAuthenticationMethod *string `type:"string"`
7647
7648	// If the channel is enabled for sending messages.
7649	Enabled *bool `type:"boolean"`
7650
7651	// The certificate private key.
7652	PrivateKey *string `type:"string"`
7653
7654	// The team id used for APNs Tokens.
7655	TeamId *string `type:"string"`
7656
7657	// The token key used for APNs Tokens.
7658	TokenKey *string `type:"string"`
7659
7660	// The token key used for APNs Tokens.
7661	TokenKeyId *string `type:"string"`
7662}
7663
7664// String returns the string representation
7665func (s APNSVoipChannelRequest) String() string {
7666	return awsutil.Prettify(s)
7667}
7668
7669// GoString returns the string representation
7670func (s APNSVoipChannelRequest) GoString() string {
7671	return s.String()
7672}
7673
7674// SetBundleId sets the BundleId field's value.
7675func (s *APNSVoipChannelRequest) SetBundleId(v string) *APNSVoipChannelRequest {
7676	s.BundleId = &v
7677	return s
7678}
7679
7680// SetCertificate sets the Certificate field's value.
7681func (s *APNSVoipChannelRequest) SetCertificate(v string) *APNSVoipChannelRequest {
7682	s.Certificate = &v
7683	return s
7684}
7685
7686// SetDefaultAuthenticationMethod sets the DefaultAuthenticationMethod field's value.
7687func (s *APNSVoipChannelRequest) SetDefaultAuthenticationMethod(v string) *APNSVoipChannelRequest {
7688	s.DefaultAuthenticationMethod = &v
7689	return s
7690}
7691
7692// SetEnabled sets the Enabled field's value.
7693func (s *APNSVoipChannelRequest) SetEnabled(v bool) *APNSVoipChannelRequest {
7694	s.Enabled = &v
7695	return s
7696}
7697
7698// SetPrivateKey sets the PrivateKey field's value.
7699func (s *APNSVoipChannelRequest) SetPrivateKey(v string) *APNSVoipChannelRequest {
7700	s.PrivateKey = &v
7701	return s
7702}
7703
7704// SetTeamId sets the TeamId field's value.
7705func (s *APNSVoipChannelRequest) SetTeamId(v string) *APNSVoipChannelRequest {
7706	s.TeamId = &v
7707	return s
7708}
7709
7710// SetTokenKey sets the TokenKey field's value.
7711func (s *APNSVoipChannelRequest) SetTokenKey(v string) *APNSVoipChannelRequest {
7712	s.TokenKey = &v
7713	return s
7714}
7715
7716// SetTokenKeyId sets the TokenKeyId field's value.
7717func (s *APNSVoipChannelRequest) SetTokenKeyId(v string) *APNSVoipChannelRequest {
7718	s.TokenKeyId = &v
7719	return s
7720}
7721
7722// Apple VoIP Push Notification Service channel definition.
7723type APNSVoipChannelResponse struct {
7724	_ struct{} `type:"structure"`
7725
7726	// Application id
7727	ApplicationId *string `type:"string"`
7728
7729	// When was this segment created
7730	CreationDate *string `type:"string"`
7731
7732	// The default authentication method used for APNs.
7733	DefaultAuthenticationMethod *string `type:"string"`
7734
7735	// If the channel is enabled for sending messages.
7736	Enabled *bool `type:"boolean"`
7737
7738	// Not used. Retained for backwards compatibility.
7739	HasCredential *bool `type:"boolean"`
7740
7741	// If the channel is registered with a token key for authentication.
7742	HasTokenKey *bool `type:"boolean"`
7743
7744	// Channel ID. Not used, only for backwards compatibility.
7745	Id *string `type:"string"`
7746
7747	// Is this channel archived
7748	IsArchived *bool `type:"boolean"`
7749
7750	// Who made the last change
7751	LastModifiedBy *string `type:"string"`
7752
7753	// Last date this was updated
7754	LastModifiedDate *string `type:"string"`
7755
7756	// The platform type. Will be APNS.
7757	Platform *string `type:"string"`
7758
7759	// Version of channel
7760	Version *int64 `type:"integer"`
7761}
7762
7763// String returns the string representation
7764func (s APNSVoipChannelResponse) String() string {
7765	return awsutil.Prettify(s)
7766}
7767
7768// GoString returns the string representation
7769func (s APNSVoipChannelResponse) GoString() string {
7770	return s.String()
7771}
7772
7773// SetApplicationId sets the ApplicationId field's value.
7774func (s *APNSVoipChannelResponse) SetApplicationId(v string) *APNSVoipChannelResponse {
7775	s.ApplicationId = &v
7776	return s
7777}
7778
7779// SetCreationDate sets the CreationDate field's value.
7780func (s *APNSVoipChannelResponse) SetCreationDate(v string) *APNSVoipChannelResponse {
7781	s.CreationDate = &v
7782	return s
7783}
7784
7785// SetDefaultAuthenticationMethod sets the DefaultAuthenticationMethod field's value.
7786func (s *APNSVoipChannelResponse) SetDefaultAuthenticationMethod(v string) *APNSVoipChannelResponse {
7787	s.DefaultAuthenticationMethod = &v
7788	return s
7789}
7790
7791// SetEnabled sets the Enabled field's value.
7792func (s *APNSVoipChannelResponse) SetEnabled(v bool) *APNSVoipChannelResponse {
7793	s.Enabled = &v
7794	return s
7795}
7796
7797// SetHasCredential sets the HasCredential field's value.
7798func (s *APNSVoipChannelResponse) SetHasCredential(v bool) *APNSVoipChannelResponse {
7799	s.HasCredential = &v
7800	return s
7801}
7802
7803// SetHasTokenKey sets the HasTokenKey field's value.
7804func (s *APNSVoipChannelResponse) SetHasTokenKey(v bool) *APNSVoipChannelResponse {
7805	s.HasTokenKey = &v
7806	return s
7807}
7808
7809// SetId sets the Id field's value.
7810func (s *APNSVoipChannelResponse) SetId(v string) *APNSVoipChannelResponse {
7811	s.Id = &v
7812	return s
7813}
7814
7815// SetIsArchived sets the IsArchived field's value.
7816func (s *APNSVoipChannelResponse) SetIsArchived(v bool) *APNSVoipChannelResponse {
7817	s.IsArchived = &v
7818	return s
7819}
7820
7821// SetLastModifiedBy sets the LastModifiedBy field's value.
7822func (s *APNSVoipChannelResponse) SetLastModifiedBy(v string) *APNSVoipChannelResponse {
7823	s.LastModifiedBy = &v
7824	return s
7825}
7826
7827// SetLastModifiedDate sets the LastModifiedDate field's value.
7828func (s *APNSVoipChannelResponse) SetLastModifiedDate(v string) *APNSVoipChannelResponse {
7829	s.LastModifiedDate = &v
7830	return s
7831}
7832
7833// SetPlatform sets the Platform field's value.
7834func (s *APNSVoipChannelResponse) SetPlatform(v string) *APNSVoipChannelResponse {
7835	s.Platform = &v
7836	return s
7837}
7838
7839// SetVersion sets the Version field's value.
7840func (s *APNSVoipChannelResponse) SetVersion(v int64) *APNSVoipChannelResponse {
7841	s.Version = &v
7842	return s
7843}
7844
7845// Apple VoIP Developer Push Notification Service channel definition.
7846type APNSVoipSandboxChannelRequest struct {
7847	_ struct{} `type:"structure"`
7848
7849	// The bundle id used for APNs Tokens.
7850	BundleId *string `type:"string"`
7851
7852	// The distribution certificate from Apple.
7853	Certificate *string `type:"string"`
7854
7855	// The default authentication method used for APNs.
7856	DefaultAuthenticationMethod *string `type:"string"`
7857
7858	// If the channel is enabled for sending messages.
7859	Enabled *bool `type:"boolean"`
7860
7861	// The certificate private key.
7862	PrivateKey *string `type:"string"`
7863
7864	// The team id used for APNs Tokens.
7865	TeamId *string `type:"string"`
7866
7867	// The token key used for APNs Tokens.
7868	TokenKey *string `type:"string"`
7869
7870	// The token key used for APNs Tokens.
7871	TokenKeyId *string `type:"string"`
7872}
7873
7874// String returns the string representation
7875func (s APNSVoipSandboxChannelRequest) String() string {
7876	return awsutil.Prettify(s)
7877}
7878
7879// GoString returns the string representation
7880func (s APNSVoipSandboxChannelRequest) GoString() string {
7881	return s.String()
7882}
7883
7884// SetBundleId sets the BundleId field's value.
7885func (s *APNSVoipSandboxChannelRequest) SetBundleId(v string) *APNSVoipSandboxChannelRequest {
7886	s.BundleId = &v
7887	return s
7888}
7889
7890// SetCertificate sets the Certificate field's value.
7891func (s *APNSVoipSandboxChannelRequest) SetCertificate(v string) *APNSVoipSandboxChannelRequest {
7892	s.Certificate = &v
7893	return s
7894}
7895
7896// SetDefaultAuthenticationMethod sets the DefaultAuthenticationMethod field's value.
7897func (s *APNSVoipSandboxChannelRequest) SetDefaultAuthenticationMethod(v string) *APNSVoipSandboxChannelRequest {
7898	s.DefaultAuthenticationMethod = &v
7899	return s
7900}
7901
7902// SetEnabled sets the Enabled field's value.
7903func (s *APNSVoipSandboxChannelRequest) SetEnabled(v bool) *APNSVoipSandboxChannelRequest {
7904	s.Enabled = &v
7905	return s
7906}
7907
7908// SetPrivateKey sets the PrivateKey field's value.
7909func (s *APNSVoipSandboxChannelRequest) SetPrivateKey(v string) *APNSVoipSandboxChannelRequest {
7910	s.PrivateKey = &v
7911	return s
7912}
7913
7914// SetTeamId sets the TeamId field's value.
7915func (s *APNSVoipSandboxChannelRequest) SetTeamId(v string) *APNSVoipSandboxChannelRequest {
7916	s.TeamId = &v
7917	return s
7918}
7919
7920// SetTokenKey sets the TokenKey field's value.
7921func (s *APNSVoipSandboxChannelRequest) SetTokenKey(v string) *APNSVoipSandboxChannelRequest {
7922	s.TokenKey = &v
7923	return s
7924}
7925
7926// SetTokenKeyId sets the TokenKeyId field's value.
7927func (s *APNSVoipSandboxChannelRequest) SetTokenKeyId(v string) *APNSVoipSandboxChannelRequest {
7928	s.TokenKeyId = &v
7929	return s
7930}
7931
7932// Apple VoIP Developer Push Notification Service channel definition.
7933type APNSVoipSandboxChannelResponse struct {
7934	_ struct{} `type:"structure"`
7935
7936	// Application id
7937	ApplicationId *string `type:"string"`
7938
7939	// When was this segment created
7940	CreationDate *string `type:"string"`
7941
7942	// The default authentication method used for APNs.
7943	DefaultAuthenticationMethod *string `type:"string"`
7944
7945	// If the channel is enabled for sending messages.
7946	Enabled *bool `type:"boolean"`
7947
7948	// Not used. Retained for backwards compatibility.
7949	HasCredential *bool `type:"boolean"`
7950
7951	// If the channel is registered with a token key for authentication.
7952	HasTokenKey *bool `type:"boolean"`
7953
7954	// Channel ID. Not used, only for backwards compatibility.
7955	Id *string `type:"string"`
7956
7957	// Is this channel archived
7958	IsArchived *bool `type:"boolean"`
7959
7960	// Who made the last change
7961	LastModifiedBy *string `type:"string"`
7962
7963	// Last date this was updated
7964	LastModifiedDate *string `type:"string"`
7965
7966	// The platform type. Will be APNS.
7967	Platform *string `type:"string"`
7968
7969	// Version of channel
7970	Version *int64 `type:"integer"`
7971}
7972
7973// String returns the string representation
7974func (s APNSVoipSandboxChannelResponse) String() string {
7975	return awsutil.Prettify(s)
7976}
7977
7978// GoString returns the string representation
7979func (s APNSVoipSandboxChannelResponse) GoString() string {
7980	return s.String()
7981}
7982
7983// SetApplicationId sets the ApplicationId field's value.
7984func (s *APNSVoipSandboxChannelResponse) SetApplicationId(v string) *APNSVoipSandboxChannelResponse {
7985	s.ApplicationId = &v
7986	return s
7987}
7988
7989// SetCreationDate sets the CreationDate field's value.
7990func (s *APNSVoipSandboxChannelResponse) SetCreationDate(v string) *APNSVoipSandboxChannelResponse {
7991	s.CreationDate = &v
7992	return s
7993}
7994
7995// SetDefaultAuthenticationMethod sets the DefaultAuthenticationMethod field's value.
7996func (s *APNSVoipSandboxChannelResponse) SetDefaultAuthenticationMethod(v string) *APNSVoipSandboxChannelResponse {
7997	s.DefaultAuthenticationMethod = &v
7998	return s
7999}
8000
8001// SetEnabled sets the Enabled field's value.
8002func (s *APNSVoipSandboxChannelResponse) SetEnabled(v bool) *APNSVoipSandboxChannelResponse {
8003	s.Enabled = &v
8004	return s
8005}
8006
8007// SetHasCredential sets the HasCredential field's value.
8008func (s *APNSVoipSandboxChannelResponse) SetHasCredential(v bool) *APNSVoipSandboxChannelResponse {
8009	s.HasCredential = &v
8010	return s
8011}
8012
8013// SetHasTokenKey sets the HasTokenKey field's value.
8014func (s *APNSVoipSandboxChannelResponse) SetHasTokenKey(v bool) *APNSVoipSandboxChannelResponse {
8015	s.HasTokenKey = &v
8016	return s
8017}
8018
8019// SetId sets the Id field's value.
8020func (s *APNSVoipSandboxChannelResponse) SetId(v string) *APNSVoipSandboxChannelResponse {
8021	s.Id = &v
8022	return s
8023}
8024
8025// SetIsArchived sets the IsArchived field's value.
8026func (s *APNSVoipSandboxChannelResponse) SetIsArchived(v bool) *APNSVoipSandboxChannelResponse {
8027	s.IsArchived = &v
8028	return s
8029}
8030
8031// SetLastModifiedBy sets the LastModifiedBy field's value.
8032func (s *APNSVoipSandboxChannelResponse) SetLastModifiedBy(v string) *APNSVoipSandboxChannelResponse {
8033	s.LastModifiedBy = &v
8034	return s
8035}
8036
8037// SetLastModifiedDate sets the LastModifiedDate field's value.
8038func (s *APNSVoipSandboxChannelResponse) SetLastModifiedDate(v string) *APNSVoipSandboxChannelResponse {
8039	s.LastModifiedDate = &v
8040	return s
8041}
8042
8043// SetPlatform sets the Platform field's value.
8044func (s *APNSVoipSandboxChannelResponse) SetPlatform(v string) *APNSVoipSandboxChannelResponse {
8045	s.Platform = &v
8046	return s
8047}
8048
8049// SetVersion sets the Version field's value.
8050func (s *APNSVoipSandboxChannelResponse) SetVersion(v int64) *APNSVoipSandboxChannelResponse {
8051	s.Version = &v
8052	return s
8053}
8054
8055// Activities for campaign.
8056type ActivitiesResponse struct {
8057	_ struct{} `type:"structure"`
8058
8059	// List of campaign activities
8060	Item []*ActivityResponse `type:"list"`
8061
8062	// The string that you use in a subsequent request to get the next page of results
8063	// in a paginated response.
8064	NextToken *string `type:"string"`
8065}
8066
8067// String returns the string representation
8068func (s ActivitiesResponse) String() string {
8069	return awsutil.Prettify(s)
8070}
8071
8072// GoString returns the string representation
8073func (s ActivitiesResponse) GoString() string {
8074	return s.String()
8075}
8076
8077// SetItem sets the Item field's value.
8078func (s *ActivitiesResponse) SetItem(v []*ActivityResponse) *ActivitiesResponse {
8079	s.Item = v
8080	return s
8081}
8082
8083// SetNextToken sets the NextToken field's value.
8084func (s *ActivitiesResponse) SetNextToken(v string) *ActivitiesResponse {
8085	s.NextToken = &v
8086	return s
8087}
8088
8089// Activity definition
8090type ActivityResponse struct {
8091	_ struct{} `type:"structure"`
8092
8093	// The ID of the application to which the campaign applies.
8094	ApplicationId *string `type:"string"`
8095
8096	// The ID of the campaign to which the activity applies.
8097	CampaignId *string `type:"string"`
8098
8099	// The actual time the activity was marked CANCELLED or COMPLETED. Provided
8100	// in ISO 8601 format.
8101	End *string `type:"string"`
8102
8103	// The unique activity ID.
8104	Id *string `type:"string"`
8105
8106	// Indicates whether the activity succeeded.Valid values: SUCCESS, FAIL
8107	Result *string `type:"string"`
8108
8109	// The scheduled start time for the activity in ISO 8601 format.
8110	ScheduledStart *string `type:"string"`
8111
8112	// The actual start time of the activity in ISO 8601 format.
8113	Start *string `type:"string"`
8114
8115	// The state of the activity.Valid values: PENDING, INITIALIZING, RUNNING, PAUSED,
8116	// CANCELLED, COMPLETED
8117	State *string `type:"string"`
8118
8119	// The total number of endpoints to which the campaign successfully delivered
8120	// messages.
8121	SuccessfulEndpointCount *int64 `type:"integer"`
8122
8123	// The total number of timezones completed.
8124	TimezonesCompletedCount *int64 `type:"integer"`
8125
8126	// The total number of unique timezones present in the segment.
8127	TimezonesTotalCount *int64 `type:"integer"`
8128
8129	// The total number of endpoints to which the campaign attempts to deliver messages.
8130	TotalEndpointCount *int64 `type:"integer"`
8131
8132	// The ID of a variation of the campaign used for A/B testing.
8133	TreatmentId *string `type:"string"`
8134}
8135
8136// String returns the string representation
8137func (s ActivityResponse) String() string {
8138	return awsutil.Prettify(s)
8139}
8140
8141// GoString returns the string representation
8142func (s ActivityResponse) GoString() string {
8143	return s.String()
8144}
8145
8146// SetApplicationId sets the ApplicationId field's value.
8147func (s *ActivityResponse) SetApplicationId(v string) *ActivityResponse {
8148	s.ApplicationId = &v
8149	return s
8150}
8151
8152// SetCampaignId sets the CampaignId field's value.
8153func (s *ActivityResponse) SetCampaignId(v string) *ActivityResponse {
8154	s.CampaignId = &v
8155	return s
8156}
8157
8158// SetEnd sets the End field's value.
8159func (s *ActivityResponse) SetEnd(v string) *ActivityResponse {
8160	s.End = &v
8161	return s
8162}
8163
8164// SetId sets the Id field's value.
8165func (s *ActivityResponse) SetId(v string) *ActivityResponse {
8166	s.Id = &v
8167	return s
8168}
8169
8170// SetResult sets the Result field's value.
8171func (s *ActivityResponse) SetResult(v string) *ActivityResponse {
8172	s.Result = &v
8173	return s
8174}
8175
8176// SetScheduledStart sets the ScheduledStart field's value.
8177func (s *ActivityResponse) SetScheduledStart(v string) *ActivityResponse {
8178	s.ScheduledStart = &v
8179	return s
8180}
8181
8182// SetStart sets the Start field's value.
8183func (s *ActivityResponse) SetStart(v string) *ActivityResponse {
8184	s.Start = &v
8185	return s
8186}
8187
8188// SetState sets the State field's value.
8189func (s *ActivityResponse) SetState(v string) *ActivityResponse {
8190	s.State = &v
8191	return s
8192}
8193
8194// SetSuccessfulEndpointCount sets the SuccessfulEndpointCount field's value.
8195func (s *ActivityResponse) SetSuccessfulEndpointCount(v int64) *ActivityResponse {
8196	s.SuccessfulEndpointCount = &v
8197	return s
8198}
8199
8200// SetTimezonesCompletedCount sets the TimezonesCompletedCount field's value.
8201func (s *ActivityResponse) SetTimezonesCompletedCount(v int64) *ActivityResponse {
8202	s.TimezonesCompletedCount = &v
8203	return s
8204}
8205
8206// SetTimezonesTotalCount sets the TimezonesTotalCount field's value.
8207func (s *ActivityResponse) SetTimezonesTotalCount(v int64) *ActivityResponse {
8208	s.TimezonesTotalCount = &v
8209	return s
8210}
8211
8212// SetTotalEndpointCount sets the TotalEndpointCount field's value.
8213func (s *ActivityResponse) SetTotalEndpointCount(v int64) *ActivityResponse {
8214	s.TotalEndpointCount = &v
8215	return s
8216}
8217
8218// SetTreatmentId sets the TreatmentId field's value.
8219func (s *ActivityResponse) SetTreatmentId(v string) *ActivityResponse {
8220	s.TreatmentId = &v
8221	return s
8222}
8223
8224// Address configuration.
8225type AddressConfiguration struct {
8226	_ struct{} `type:"structure"`
8227
8228	// Body override. If specified will override default body.
8229	BodyOverride *string `type:"string"`
8230
8231	// The channel type.Valid values: GCM | APNS | APNS_SANDBOX | APNS_VOIP | APNS_VOIP_SANDBOX
8232	// | ADM | SMS | EMAIL | BAIDU
8233	ChannelType *string `type:"string" enum:"ChannelType"`
8234
8235	// A map of custom attributes to attributes to be attached to the message for
8236	// this address. This payload is added to the push notification's 'data.pinpoint'
8237	// object or added to the email/sms delivery receipt event attributes.
8238	Context map[string]*string `type:"map"`
8239
8240	// The Raw JSON formatted string to be used as the payload. This value overrides
8241	// the message.
8242	RawContent *string `type:"string"`
8243
8244	// A map of substitution values for the message to be merged with the DefaultMessage's
8245	// substitutions. Substitutions on this map take precedence over the all other
8246	// substitutions.
8247	Substitutions map[string][]*string `type:"map"`
8248
8249	// Title override. If specified will override default title if applicable.
8250	TitleOverride *string `type:"string"`
8251}
8252
8253// String returns the string representation
8254func (s AddressConfiguration) String() string {
8255	return awsutil.Prettify(s)
8256}
8257
8258// GoString returns the string representation
8259func (s AddressConfiguration) GoString() string {
8260	return s.String()
8261}
8262
8263// SetBodyOverride sets the BodyOverride field's value.
8264func (s *AddressConfiguration) SetBodyOverride(v string) *AddressConfiguration {
8265	s.BodyOverride = &v
8266	return s
8267}
8268
8269// SetChannelType sets the ChannelType field's value.
8270func (s *AddressConfiguration) SetChannelType(v string) *AddressConfiguration {
8271	s.ChannelType = &v
8272	return s
8273}
8274
8275// SetContext sets the Context field's value.
8276func (s *AddressConfiguration) SetContext(v map[string]*string) *AddressConfiguration {
8277	s.Context = v
8278	return s
8279}
8280
8281// SetRawContent sets the RawContent field's value.
8282func (s *AddressConfiguration) SetRawContent(v string) *AddressConfiguration {
8283	s.RawContent = &v
8284	return s
8285}
8286
8287// SetSubstitutions sets the Substitutions field's value.
8288func (s *AddressConfiguration) SetSubstitutions(v map[string][]*string) *AddressConfiguration {
8289	s.Substitutions = v
8290	return s
8291}
8292
8293// SetTitleOverride sets the TitleOverride field's value.
8294func (s *AddressConfiguration) SetTitleOverride(v string) *AddressConfiguration {
8295	s.TitleOverride = &v
8296	return s
8297}
8298
8299// Application Response.
8300type ApplicationResponse struct {
8301	_ struct{} `type:"structure"`
8302
8303	// The unique application ID.
8304	Id *string `type:"string"`
8305
8306	// The display name of the application.
8307	Name *string `type:"string"`
8308}
8309
8310// String returns the string representation
8311func (s ApplicationResponse) String() string {
8312	return awsutil.Prettify(s)
8313}
8314
8315// GoString returns the string representation
8316func (s ApplicationResponse) GoString() string {
8317	return s.String()
8318}
8319
8320// SetId sets the Id field's value.
8321func (s *ApplicationResponse) SetId(v string) *ApplicationResponse {
8322	s.Id = &v
8323	return s
8324}
8325
8326// SetName sets the Name field's value.
8327func (s *ApplicationResponse) SetName(v string) *ApplicationResponse {
8328	s.Name = &v
8329	return s
8330}
8331
8332// Application settings.
8333type ApplicationSettingsResource struct {
8334	_ struct{} `type:"structure"`
8335
8336	// The unique ID for the application.
8337	ApplicationId *string `type:"string"`
8338
8339	// Default campaign hook.
8340	CampaignHook *CampaignHook `type:"structure"`
8341
8342	// The date that the settings were last updated in ISO 8601 format.
8343	LastModifiedDate *string `type:"string"`
8344
8345	// The default campaign limits for the app. These limits apply to each campaign
8346	// for the app, unless the campaign overrides the default with limits of its
8347	// own.
8348	Limits *CampaignLimits `type:"structure"`
8349
8350	// The default quiet time for the app. Each campaign for this app sends no messages
8351	// during this time unless the campaign overrides the default with a quiet time
8352	// of its own.
8353	QuietTime *QuietTime `type:"structure"`
8354}
8355
8356// String returns the string representation
8357func (s ApplicationSettingsResource) String() string {
8358	return awsutil.Prettify(s)
8359}
8360
8361// GoString returns the string representation
8362func (s ApplicationSettingsResource) GoString() string {
8363	return s.String()
8364}
8365
8366// SetApplicationId sets the ApplicationId field's value.
8367func (s *ApplicationSettingsResource) SetApplicationId(v string) *ApplicationSettingsResource {
8368	s.ApplicationId = &v
8369	return s
8370}
8371
8372// SetCampaignHook sets the CampaignHook field's value.
8373func (s *ApplicationSettingsResource) SetCampaignHook(v *CampaignHook) *ApplicationSettingsResource {
8374	s.CampaignHook = v
8375	return s
8376}
8377
8378// SetLastModifiedDate sets the LastModifiedDate field's value.
8379func (s *ApplicationSettingsResource) SetLastModifiedDate(v string) *ApplicationSettingsResource {
8380	s.LastModifiedDate = &v
8381	return s
8382}
8383
8384// SetLimits sets the Limits field's value.
8385func (s *ApplicationSettingsResource) SetLimits(v *CampaignLimits) *ApplicationSettingsResource {
8386	s.Limits = v
8387	return s
8388}
8389
8390// SetQuietTime sets the QuietTime field's value.
8391func (s *ApplicationSettingsResource) SetQuietTime(v *QuietTime) *ApplicationSettingsResource {
8392	s.QuietTime = v
8393	return s
8394}
8395
8396// Get Applications Result.
8397type ApplicationsResponse struct {
8398	_ struct{} `type:"structure"`
8399
8400	// List of applications returned in this page.
8401	Item []*ApplicationResponse `type:"list"`
8402
8403	// The string that you use in a subsequent request to get the next page of results
8404	// in a paginated response.
8405	NextToken *string `type:"string"`
8406}
8407
8408// String returns the string representation
8409func (s ApplicationsResponse) String() string {
8410	return awsutil.Prettify(s)
8411}
8412
8413// GoString returns the string representation
8414func (s ApplicationsResponse) GoString() string {
8415	return s.String()
8416}
8417
8418// SetItem sets the Item field's value.
8419func (s *ApplicationsResponse) SetItem(v []*ApplicationResponse) *ApplicationsResponse {
8420	s.Item = v
8421	return s
8422}
8423
8424// SetNextToken sets the NextToken field's value.
8425func (s *ApplicationsResponse) SetNextToken(v string) *ApplicationsResponse {
8426	s.NextToken = &v
8427	return s
8428}
8429
8430// Custom attibute dimension
8431type AttributeDimension struct {
8432	_ struct{} `type:"structure"`
8433
8434	// The type of dimension:INCLUSIVE - Endpoints that match the criteria are included
8435	// in the segment.EXCLUSIVE - Endpoints that match the criteria are excluded
8436	// from the segment.
8437	AttributeType *string `type:"string" enum:"AttributeType"`
8438
8439	// The criteria values for the segment dimension. Endpoints with matching attribute
8440	// values are included or excluded from the segment, depending on the setting
8441	// for Type.
8442	Values []*string `type:"list"`
8443}
8444
8445// String returns the string representation
8446func (s AttributeDimension) String() string {
8447	return awsutil.Prettify(s)
8448}
8449
8450// GoString returns the string representation
8451func (s AttributeDimension) GoString() string {
8452	return s.String()
8453}
8454
8455// SetAttributeType sets the AttributeType field's value.
8456func (s *AttributeDimension) SetAttributeType(v string) *AttributeDimension {
8457	s.AttributeType = &v
8458	return s
8459}
8460
8461// SetValues sets the Values field's value.
8462func (s *AttributeDimension) SetValues(v []*string) *AttributeDimension {
8463	s.Values = v
8464	return s
8465}
8466
8467// Attributes.
8468type AttributesResource struct {
8469	_ struct{} `type:"structure"`
8470
8471	// The unique ID for the application.
8472	ApplicationId *string `type:"string"`
8473
8474	// The attribute type for the application.
8475	AttributeType *string `type:"string"`
8476
8477	// The attributes for the application.
8478	Attributes []*string `type:"list"`
8479}
8480
8481// String returns the string representation
8482func (s AttributesResource) String() string {
8483	return awsutil.Prettify(s)
8484}
8485
8486// GoString returns the string representation
8487func (s AttributesResource) GoString() string {
8488	return s.String()
8489}
8490
8491// SetApplicationId sets the ApplicationId field's value.
8492func (s *AttributesResource) SetApplicationId(v string) *AttributesResource {
8493	s.ApplicationId = &v
8494	return s
8495}
8496
8497// SetAttributeType sets the AttributeType field's value.
8498func (s *AttributesResource) SetAttributeType(v string) *AttributesResource {
8499	s.AttributeType = &v
8500	return s
8501}
8502
8503// SetAttributes sets the Attributes field's value.
8504func (s *AttributesResource) SetAttributes(v []*string) *AttributesResource {
8505	s.Attributes = v
8506	return s
8507}
8508
8509// Baidu Cloud Push credentials
8510type BaiduChannelRequest struct {
8511	_ struct{} `type:"structure"`
8512
8513	// Platform credential API key from Baidu.
8514	ApiKey *string `type:"string"`
8515
8516	// If the channel is enabled for sending messages.
8517	Enabled *bool `type:"boolean"`
8518
8519	// Platform credential Secret key from Baidu.
8520	SecretKey *string `type:"string"`
8521}
8522
8523// String returns the string representation
8524func (s BaiduChannelRequest) String() string {
8525	return awsutil.Prettify(s)
8526}
8527
8528// GoString returns the string representation
8529func (s BaiduChannelRequest) GoString() string {
8530	return s.String()
8531}
8532
8533// SetApiKey sets the ApiKey field's value.
8534func (s *BaiduChannelRequest) SetApiKey(v string) *BaiduChannelRequest {
8535	s.ApiKey = &v
8536	return s
8537}
8538
8539// SetEnabled sets the Enabled field's value.
8540func (s *BaiduChannelRequest) SetEnabled(v bool) *BaiduChannelRequest {
8541	s.Enabled = &v
8542	return s
8543}
8544
8545// SetSecretKey sets the SecretKey field's value.
8546func (s *BaiduChannelRequest) SetSecretKey(v string) *BaiduChannelRequest {
8547	s.SecretKey = &v
8548	return s
8549}
8550
8551// Baidu Cloud Messaging channel definition
8552type BaiduChannelResponse struct {
8553	_ struct{} `type:"structure"`
8554
8555	// Application id
8556	ApplicationId *string `type:"string"`
8557
8558	// When was this segment created
8559	CreationDate *string `type:"string"`
8560
8561	// The Baidu API key from Baidu.
8562	Credential *string `type:"string"`
8563
8564	// If the channel is enabled for sending messages.
8565	Enabled *bool `type:"boolean"`
8566
8567	// Not used. Retained for backwards compatibility.
8568	HasCredential *bool `type:"boolean"`
8569
8570	// Channel ID. Not used, only for backwards compatibility.
8571	Id *string `type:"string"`
8572
8573	// Is this channel archived
8574	IsArchived *bool `type:"boolean"`
8575
8576	// Who made the last change
8577	LastModifiedBy *string `type:"string"`
8578
8579	// Last date this was updated
8580	LastModifiedDate *string `type:"string"`
8581
8582	// The platform type. Will be BAIDU
8583	Platform *string `type:"string"`
8584
8585	// Version of channel
8586	Version *int64 `type:"integer"`
8587}
8588
8589// String returns the string representation
8590func (s BaiduChannelResponse) String() string {
8591	return awsutil.Prettify(s)
8592}
8593
8594// GoString returns the string representation
8595func (s BaiduChannelResponse) GoString() string {
8596	return s.String()
8597}
8598
8599// SetApplicationId sets the ApplicationId field's value.
8600func (s *BaiduChannelResponse) SetApplicationId(v string) *BaiduChannelResponse {
8601	s.ApplicationId = &v
8602	return s
8603}
8604
8605// SetCreationDate sets the CreationDate field's value.
8606func (s *BaiduChannelResponse) SetCreationDate(v string) *BaiduChannelResponse {
8607	s.CreationDate = &v
8608	return s
8609}
8610
8611// SetCredential sets the Credential field's value.
8612func (s *BaiduChannelResponse) SetCredential(v string) *BaiduChannelResponse {
8613	s.Credential = &v
8614	return s
8615}
8616
8617// SetEnabled sets the Enabled field's value.
8618func (s *BaiduChannelResponse) SetEnabled(v bool) *BaiduChannelResponse {
8619	s.Enabled = &v
8620	return s
8621}
8622
8623// SetHasCredential sets the HasCredential field's value.
8624func (s *BaiduChannelResponse) SetHasCredential(v bool) *BaiduChannelResponse {
8625	s.HasCredential = &v
8626	return s
8627}
8628
8629// SetId sets the Id field's value.
8630func (s *BaiduChannelResponse) SetId(v string) *BaiduChannelResponse {
8631	s.Id = &v
8632	return s
8633}
8634
8635// SetIsArchived sets the IsArchived field's value.
8636func (s *BaiduChannelResponse) SetIsArchived(v bool) *BaiduChannelResponse {
8637	s.IsArchived = &v
8638	return s
8639}
8640
8641// SetLastModifiedBy sets the LastModifiedBy field's value.
8642func (s *BaiduChannelResponse) SetLastModifiedBy(v string) *BaiduChannelResponse {
8643	s.LastModifiedBy = &v
8644	return s
8645}
8646
8647// SetLastModifiedDate sets the LastModifiedDate field's value.
8648func (s *BaiduChannelResponse) SetLastModifiedDate(v string) *BaiduChannelResponse {
8649	s.LastModifiedDate = &v
8650	return s
8651}
8652
8653// SetPlatform sets the Platform field's value.
8654func (s *BaiduChannelResponse) SetPlatform(v string) *BaiduChannelResponse {
8655	s.Platform = &v
8656	return s
8657}
8658
8659// SetVersion sets the Version field's value.
8660func (s *BaiduChannelResponse) SetVersion(v int64) *BaiduChannelResponse {
8661	s.Version = &v
8662	return s
8663}
8664
8665// Baidu Message.
8666type BaiduMessage struct {
8667	_ struct{} `type:"structure"`
8668
8669	// The action that occurs if the user taps a push notification delivered by
8670	// the campaign: OPEN_APP - Your app launches, or it becomes the foreground
8671	// app if it has been sent to the background. This is the default action. DEEP_LINK
8672	// - Uses deep linking features in iOS and Android to open your app and display
8673	// a designated user interface within the app. URL - The default mobile browser
8674	// on the user's device launches and opens a web page at the URL you specify.
8675	// Possible values include: OPEN_APP | DEEP_LINK | URL
8676	Action *string `type:"string" enum:"Action"`
8677
8678	// The message body of the notification.
8679	Body *string `type:"string"`
8680
8681	// The data payload used for a silent push. This payload is added to the notifications'
8682	// data.pinpoint.jsonBody' object
8683	Data map[string]*string `type:"map"`
8684
8685	// The icon image name of the asset saved in your application.
8686	IconReference *string `type:"string"`
8687
8688	// The URL that points to an image used as the large icon to the notification
8689	// content view.
8690	ImageIconUrl *string `type:"string"`
8691
8692	// The URL that points to an image used in the push notification.
8693	ImageUrl *string `type:"string"`
8694
8695	// The Raw JSON formatted string to be used as the payload. This value overrides
8696	// the message.
8697	RawContent *string `type:"string"`
8698
8699	// Indicates if the message should display on the users device. Silent pushes
8700	// can be used for Remote Configuration and Phone Home use cases.
8701	SilentPush *bool `type:"boolean"`
8702
8703	// The URL that points to an image used as the small icon for the notification
8704	// which will be used to represent the notification in the status bar and content
8705	// view
8706	SmallImageIconUrl *string `type:"string"`
8707
8708	// Indicates a sound to play when the device receives the notification. Supports
8709	// default, or the filename of a sound resource bundled in the app. Android
8710	// sound files must reside in /res/raw/
8711	Sound *string `type:"string"`
8712
8713	// Default message substitutions. Can be overridden by individual address substitutions.
8714	Substitutions map[string][]*string `type:"map"`
8715
8716	// This parameter specifies how long (in seconds) the message should be kept
8717	// in Baidu storage if the device is offline. The and the default value and
8718	// the maximum time to live supported is 7 days (604800 seconds)
8719	TimeToLive *int64 `type:"integer"`
8720
8721	// The message title that displays above the message on the user's device.
8722	Title *string `type:"string"`
8723
8724	// The URL to open in the user's mobile browser. Used if the value for Action
8725	// is URL.
8726	Url *string `type:"string"`
8727}
8728
8729// String returns the string representation
8730func (s BaiduMessage) String() string {
8731	return awsutil.Prettify(s)
8732}
8733
8734// GoString returns the string representation
8735func (s BaiduMessage) GoString() string {
8736	return s.String()
8737}
8738
8739// SetAction sets the Action field's value.
8740func (s *BaiduMessage) SetAction(v string) *BaiduMessage {
8741	s.Action = &v
8742	return s
8743}
8744
8745// SetBody sets the Body field's value.
8746func (s *BaiduMessage) SetBody(v string) *BaiduMessage {
8747	s.Body = &v
8748	return s
8749}
8750
8751// SetData sets the Data field's value.
8752func (s *BaiduMessage) SetData(v map[string]*string) *BaiduMessage {
8753	s.Data = v
8754	return s
8755}
8756
8757// SetIconReference sets the IconReference field's value.
8758func (s *BaiduMessage) SetIconReference(v string) *BaiduMessage {
8759	s.IconReference = &v
8760	return s
8761}
8762
8763// SetImageIconUrl sets the ImageIconUrl field's value.
8764func (s *BaiduMessage) SetImageIconUrl(v string) *BaiduMessage {
8765	s.ImageIconUrl = &v
8766	return s
8767}
8768
8769// SetImageUrl sets the ImageUrl field's value.
8770func (s *BaiduMessage) SetImageUrl(v string) *BaiduMessage {
8771	s.ImageUrl = &v
8772	return s
8773}
8774
8775// SetRawContent sets the RawContent field's value.
8776func (s *BaiduMessage) SetRawContent(v string) *BaiduMessage {
8777	s.RawContent = &v
8778	return s
8779}
8780
8781// SetSilentPush sets the SilentPush field's value.
8782func (s *BaiduMessage) SetSilentPush(v bool) *BaiduMessage {
8783	s.SilentPush = &v
8784	return s
8785}
8786
8787// SetSmallImageIconUrl sets the SmallImageIconUrl field's value.
8788func (s *BaiduMessage) SetSmallImageIconUrl(v string) *BaiduMessage {
8789	s.SmallImageIconUrl = &v
8790	return s
8791}
8792
8793// SetSound sets the Sound field's value.
8794func (s *BaiduMessage) SetSound(v string) *BaiduMessage {
8795	s.Sound = &v
8796	return s
8797}
8798
8799// SetSubstitutions sets the Substitutions field's value.
8800func (s *BaiduMessage) SetSubstitutions(v map[string][]*string) *BaiduMessage {
8801	s.Substitutions = v
8802	return s
8803}
8804
8805// SetTimeToLive sets the TimeToLive field's value.
8806func (s *BaiduMessage) SetTimeToLive(v int64) *BaiduMessage {
8807	s.TimeToLive = &v
8808	return s
8809}
8810
8811// SetTitle sets the Title field's value.
8812func (s *BaiduMessage) SetTitle(v string) *BaiduMessage {
8813	s.Title = &v
8814	return s
8815}
8816
8817// SetUrl sets the Url field's value.
8818func (s *BaiduMessage) SetUrl(v string) *BaiduMessage {
8819	s.Url = &v
8820	return s
8821}
8822
8823// The email message configuration.
8824type CampaignEmailMessage struct {
8825	_ struct{} `type:"structure"`
8826
8827	// The email text body.
8828	Body *string `type:"string"`
8829
8830	// The email address used to send the email from. Defaults to use FromAddress
8831	// specified in the Email Channel.
8832	FromAddress *string `type:"string"`
8833
8834	// The email html body.
8835	HtmlBody *string `type:"string"`
8836
8837	// The email title (Or subject).
8838	Title *string `type:"string"`
8839}
8840
8841// String returns the string representation
8842func (s CampaignEmailMessage) String() string {
8843	return awsutil.Prettify(s)
8844}
8845
8846// GoString returns the string representation
8847func (s CampaignEmailMessage) GoString() string {
8848	return s.String()
8849}
8850
8851// SetBody sets the Body field's value.
8852func (s *CampaignEmailMessage) SetBody(v string) *CampaignEmailMessage {
8853	s.Body = &v
8854	return s
8855}
8856
8857// SetFromAddress sets the FromAddress field's value.
8858func (s *CampaignEmailMessage) SetFromAddress(v string) *CampaignEmailMessage {
8859	s.FromAddress = &v
8860	return s
8861}
8862
8863// SetHtmlBody sets the HtmlBody field's value.
8864func (s *CampaignEmailMessage) SetHtmlBody(v string) *CampaignEmailMessage {
8865	s.HtmlBody = &v
8866	return s
8867}
8868
8869// SetTitle sets the Title field's value.
8870func (s *CampaignEmailMessage) SetTitle(v string) *CampaignEmailMessage {
8871	s.Title = &v
8872	return s
8873}
8874
8875// Campaign hook information.
8876type CampaignHook struct {
8877	_ struct{} `type:"structure"`
8878
8879	// Lambda function name or arn to be called for delivery
8880	LambdaFunctionName *string `type:"string"`
8881
8882	// What mode Lambda should be invoked in.
8883	Mode *string `type:"string" enum:"Mode"`
8884
8885	// Web URL to call for hook. If the URL has authentication specified it will
8886	// be added as authentication to the request
8887	WebUrl *string `type:"string"`
8888}
8889
8890// String returns the string representation
8891func (s CampaignHook) String() string {
8892	return awsutil.Prettify(s)
8893}
8894
8895// GoString returns the string representation
8896func (s CampaignHook) GoString() string {
8897	return s.String()
8898}
8899
8900// SetLambdaFunctionName sets the LambdaFunctionName field's value.
8901func (s *CampaignHook) SetLambdaFunctionName(v string) *CampaignHook {
8902	s.LambdaFunctionName = &v
8903	return s
8904}
8905
8906// SetMode sets the Mode field's value.
8907func (s *CampaignHook) SetMode(v string) *CampaignHook {
8908	s.Mode = &v
8909	return s
8910}
8911
8912// SetWebUrl sets the WebUrl field's value.
8913func (s *CampaignHook) SetWebUrl(v string) *CampaignHook {
8914	s.WebUrl = &v
8915	return s
8916}
8917
8918// Campaign Limits are used to limit the number of messages that can be sent
8919// to a user.
8920type CampaignLimits struct {
8921	_ struct{} `type:"structure"`
8922
8923	// The maximum number of messages that the campaign can send daily.
8924	Daily *int64 `type:"integer"`
8925
8926	// The length of time (in seconds) that the campaign can run before it ends
8927	// and message deliveries stop. This duration begins at the scheduled start
8928	// time for the campaign. The minimum value is 60.
8929	MaximumDuration *int64 `type:"integer"`
8930
8931	// The number of messages that the campaign can send per second. The minimum
8932	// value is 50, and the maximum is 20000.
8933	MessagesPerSecond *int64 `type:"integer"`
8934
8935	// The maximum total number of messages that the campaign can send.
8936	Total *int64 `type:"integer"`
8937}
8938
8939// String returns the string representation
8940func (s CampaignLimits) String() string {
8941	return awsutil.Prettify(s)
8942}
8943
8944// GoString returns the string representation
8945func (s CampaignLimits) GoString() string {
8946	return s.String()
8947}
8948
8949// SetDaily sets the Daily field's value.
8950func (s *CampaignLimits) SetDaily(v int64) *CampaignLimits {
8951	s.Daily = &v
8952	return s
8953}
8954
8955// SetMaximumDuration sets the MaximumDuration field's value.
8956func (s *CampaignLimits) SetMaximumDuration(v int64) *CampaignLimits {
8957	s.MaximumDuration = &v
8958	return s
8959}
8960
8961// SetMessagesPerSecond sets the MessagesPerSecond field's value.
8962func (s *CampaignLimits) SetMessagesPerSecond(v int64) *CampaignLimits {
8963	s.MessagesPerSecond = &v
8964	return s
8965}
8966
8967// SetTotal sets the Total field's value.
8968func (s *CampaignLimits) SetTotal(v int64) *CampaignLimits {
8969	s.Total = &v
8970	return s
8971}
8972
8973// Campaign definition
8974type CampaignResponse struct {
8975	_ struct{} `type:"structure"`
8976
8977	// Treatments that are defined in addition to the default treatment.
8978	AdditionalTreatments []*TreatmentResource `type:"list"`
8979
8980	// The ID of the application to which the campaign applies.
8981	ApplicationId *string `type:"string"`
8982
8983	// The date the campaign was created in ISO 8601 format.
8984	CreationDate *string `type:"string"`
8985
8986	// The status of the campaign's default treatment. Only present for A/B test
8987	// campaigns.
8988	DefaultState *CampaignState `type:"structure"`
8989
8990	// A description of the campaign.
8991	Description *string `type:"string"`
8992
8993	// The allocated percentage of end users who will not receive messages from
8994	// this campaign.
8995	HoldoutPercent *int64 `type:"integer"`
8996
8997	// Campaign hook information.
8998	Hook *CampaignHook `type:"structure"`
8999
9000	// The unique campaign ID.
9001	Id *string `type:"string"`
9002
9003	// Indicates whether the campaign is paused. A paused campaign does not send
9004	// messages unless you resume it by setting IsPaused to false.
9005	IsPaused *bool `type:"boolean"`
9006
9007	// The date the campaign was last updated in ISO 8601 format.
9008	LastModifiedDate *string `type:"string"`
9009
9010	// The campaign limits settings.
9011	Limits *CampaignLimits `type:"structure"`
9012
9013	// The message configuration settings.
9014	MessageConfiguration *MessageConfiguration `type:"structure"`
9015
9016	// The custom name of the campaign.
9017	Name *string `type:"string"`
9018
9019	// The campaign schedule.
9020	Schedule *Schedule `type:"structure"`
9021
9022	// The ID of the segment to which the campaign sends messages.
9023	SegmentId *string `type:"string"`
9024
9025	// The version of the segment to which the campaign sends messages.
9026	SegmentVersion *int64 `type:"integer"`
9027
9028	// The campaign status.An A/B test campaign will have a status of COMPLETED
9029	// only when all treatments have a status of COMPLETED.
9030	State *CampaignState `type:"structure"`
9031
9032	// A custom description for the treatment.
9033	TreatmentDescription *string `type:"string"`
9034
9035	// The custom name of a variation of the campaign used for A/B testing.
9036	TreatmentName *string `type:"string"`
9037
9038	// The campaign version number.
9039	Version *int64 `type:"integer"`
9040}
9041
9042// String returns the string representation
9043func (s CampaignResponse) String() string {
9044	return awsutil.Prettify(s)
9045}
9046
9047// GoString returns the string representation
9048func (s CampaignResponse) GoString() string {
9049	return s.String()
9050}
9051
9052// SetAdditionalTreatments sets the AdditionalTreatments field's value.
9053func (s *CampaignResponse) SetAdditionalTreatments(v []*TreatmentResource) *CampaignResponse {
9054	s.AdditionalTreatments = v
9055	return s
9056}
9057
9058// SetApplicationId sets the ApplicationId field's value.
9059func (s *CampaignResponse) SetApplicationId(v string) *CampaignResponse {
9060	s.ApplicationId = &v
9061	return s
9062}
9063
9064// SetCreationDate sets the CreationDate field's value.
9065func (s *CampaignResponse) SetCreationDate(v string) *CampaignResponse {
9066	s.CreationDate = &v
9067	return s
9068}
9069
9070// SetDefaultState sets the DefaultState field's value.
9071func (s *CampaignResponse) SetDefaultState(v *CampaignState) *CampaignResponse {
9072	s.DefaultState = v
9073	return s
9074}
9075
9076// SetDescription sets the Description field's value.
9077func (s *CampaignResponse) SetDescription(v string) *CampaignResponse {
9078	s.Description = &v
9079	return s
9080}
9081
9082// SetHoldoutPercent sets the HoldoutPercent field's value.
9083func (s *CampaignResponse) SetHoldoutPercent(v int64) *CampaignResponse {
9084	s.HoldoutPercent = &v
9085	return s
9086}
9087
9088// SetHook sets the Hook field's value.
9089func (s *CampaignResponse) SetHook(v *CampaignHook) *CampaignResponse {
9090	s.Hook = v
9091	return s
9092}
9093
9094// SetId sets the Id field's value.
9095func (s *CampaignResponse) SetId(v string) *CampaignResponse {
9096	s.Id = &v
9097	return s
9098}
9099
9100// SetIsPaused sets the IsPaused field's value.
9101func (s *CampaignResponse) SetIsPaused(v bool) *CampaignResponse {
9102	s.IsPaused = &v
9103	return s
9104}
9105
9106// SetLastModifiedDate sets the LastModifiedDate field's value.
9107func (s *CampaignResponse) SetLastModifiedDate(v string) *CampaignResponse {
9108	s.LastModifiedDate = &v
9109	return s
9110}
9111
9112// SetLimits sets the Limits field's value.
9113func (s *CampaignResponse) SetLimits(v *CampaignLimits) *CampaignResponse {
9114	s.Limits = v
9115	return s
9116}
9117
9118// SetMessageConfiguration sets the MessageConfiguration field's value.
9119func (s *CampaignResponse) SetMessageConfiguration(v *MessageConfiguration) *CampaignResponse {
9120	s.MessageConfiguration = v
9121	return s
9122}
9123
9124// SetName sets the Name field's value.
9125func (s *CampaignResponse) SetName(v string) *CampaignResponse {
9126	s.Name = &v
9127	return s
9128}
9129
9130// SetSchedule sets the Schedule field's value.
9131func (s *CampaignResponse) SetSchedule(v *Schedule) *CampaignResponse {
9132	s.Schedule = v
9133	return s
9134}
9135
9136// SetSegmentId sets the SegmentId field's value.
9137func (s *CampaignResponse) SetSegmentId(v string) *CampaignResponse {
9138	s.SegmentId = &v
9139	return s
9140}
9141
9142// SetSegmentVersion sets the SegmentVersion field's value.
9143func (s *CampaignResponse) SetSegmentVersion(v int64) *CampaignResponse {
9144	s.SegmentVersion = &v
9145	return s
9146}
9147
9148// SetState sets the State field's value.
9149func (s *CampaignResponse) SetState(v *CampaignState) *CampaignResponse {
9150	s.State = v
9151	return s
9152}
9153
9154// SetTreatmentDescription sets the TreatmentDescription field's value.
9155func (s *CampaignResponse) SetTreatmentDescription(v string) *CampaignResponse {
9156	s.TreatmentDescription = &v
9157	return s
9158}
9159
9160// SetTreatmentName sets the TreatmentName field's value.
9161func (s *CampaignResponse) SetTreatmentName(v string) *CampaignResponse {
9162	s.TreatmentName = &v
9163	return s
9164}
9165
9166// SetVersion sets the Version field's value.
9167func (s *CampaignResponse) SetVersion(v int64) *CampaignResponse {
9168	s.Version = &v
9169	return s
9170}
9171
9172// SMS message configuration.
9173type CampaignSmsMessage struct {
9174	_ struct{} `type:"structure"`
9175
9176	// The SMS text body.
9177	Body *string `type:"string"`
9178
9179	// Is this is a transactional SMS message, otherwise a promotional message.
9180	MessageType *string `type:"string" enum:"MessageType"`
9181
9182	// Sender ID of sent message.
9183	SenderId *string `type:"string"`
9184}
9185
9186// String returns the string representation
9187func (s CampaignSmsMessage) String() string {
9188	return awsutil.Prettify(s)
9189}
9190
9191// GoString returns the string representation
9192func (s CampaignSmsMessage) GoString() string {
9193	return s.String()
9194}
9195
9196// SetBody sets the Body field's value.
9197func (s *CampaignSmsMessage) SetBody(v string) *CampaignSmsMessage {
9198	s.Body = &v
9199	return s
9200}
9201
9202// SetMessageType sets the MessageType field's value.
9203func (s *CampaignSmsMessage) SetMessageType(v string) *CampaignSmsMessage {
9204	s.MessageType = &v
9205	return s
9206}
9207
9208// SetSenderId sets the SenderId field's value.
9209func (s *CampaignSmsMessage) SetSenderId(v string) *CampaignSmsMessage {
9210	s.SenderId = &v
9211	return s
9212}
9213
9214// State of the Campaign
9215type CampaignState struct {
9216	_ struct{} `type:"structure"`
9217
9218	// The status of the campaign, or the status of a treatment that belongs to
9219	// an A/B test campaign.Valid values: SCHEDULED, EXECUTING, PENDING_NEXT_RUN,
9220	// COMPLETED, PAUSED
9221	CampaignStatus *string `type:"string" enum:"CampaignStatus"`
9222}
9223
9224// String returns the string representation
9225func (s CampaignState) String() string {
9226	return awsutil.Prettify(s)
9227}
9228
9229// GoString returns the string representation
9230func (s CampaignState) GoString() string {
9231	return s.String()
9232}
9233
9234// SetCampaignStatus sets the CampaignStatus field's value.
9235func (s *CampaignState) SetCampaignStatus(v string) *CampaignState {
9236	s.CampaignStatus = &v
9237	return s
9238}
9239
9240// List of available campaigns.
9241type CampaignsResponse struct {
9242	_ struct{} `type:"structure"`
9243
9244	// A list of campaigns.
9245	Item []*CampaignResponse `type:"list"`
9246
9247	// The string that you use in a subsequent request to get the next page of results
9248	// in a paginated response.
9249	NextToken *string `type:"string"`
9250}
9251
9252// String returns the string representation
9253func (s CampaignsResponse) String() string {
9254	return awsutil.Prettify(s)
9255}
9256
9257// GoString returns the string representation
9258func (s CampaignsResponse) GoString() string {
9259	return s.String()
9260}
9261
9262// SetItem sets the Item field's value.
9263func (s *CampaignsResponse) SetItem(v []*CampaignResponse) *CampaignsResponse {
9264	s.Item = v
9265	return s
9266}
9267
9268// SetNextToken sets the NextToken field's value.
9269func (s *CampaignsResponse) SetNextToken(v string) *CampaignsResponse {
9270	s.NextToken = &v
9271	return s
9272}
9273
9274// Base definition for channel response.
9275type ChannelResponse struct {
9276	_ struct{} `type:"structure"`
9277
9278	// Application id
9279	ApplicationId *string `type:"string"`
9280
9281	// When was this segment created
9282	CreationDate *string `type:"string"`
9283
9284	// If the channel is enabled for sending messages.
9285	Enabled *bool `type:"boolean"`
9286
9287	// Not used. Retained for backwards compatibility.
9288	HasCredential *bool `type:"boolean"`
9289
9290	// Channel ID. Not used, only for backwards compatibility.
9291	Id *string `type:"string"`
9292
9293	// Is this channel archived
9294	IsArchived *bool `type:"boolean"`
9295
9296	// Who made the last change
9297	LastModifiedBy *string `type:"string"`
9298
9299	// Last date this was updated
9300	LastModifiedDate *string `type:"string"`
9301
9302	// Version of channel
9303	Version *int64 `type:"integer"`
9304}
9305
9306// String returns the string representation
9307func (s ChannelResponse) String() string {
9308	return awsutil.Prettify(s)
9309}
9310
9311// GoString returns the string representation
9312func (s ChannelResponse) GoString() string {
9313	return s.String()
9314}
9315
9316// SetApplicationId sets the ApplicationId field's value.
9317func (s *ChannelResponse) SetApplicationId(v string) *ChannelResponse {
9318	s.ApplicationId = &v
9319	return s
9320}
9321
9322// SetCreationDate sets the CreationDate field's value.
9323func (s *ChannelResponse) SetCreationDate(v string) *ChannelResponse {
9324	s.CreationDate = &v
9325	return s
9326}
9327
9328// SetEnabled sets the Enabled field's value.
9329func (s *ChannelResponse) SetEnabled(v bool) *ChannelResponse {
9330	s.Enabled = &v
9331	return s
9332}
9333
9334// SetHasCredential sets the HasCredential field's value.
9335func (s *ChannelResponse) SetHasCredential(v bool) *ChannelResponse {
9336	s.HasCredential = &v
9337	return s
9338}
9339
9340// SetId sets the Id field's value.
9341func (s *ChannelResponse) SetId(v string) *ChannelResponse {
9342	s.Id = &v
9343	return s
9344}
9345
9346// SetIsArchived sets the IsArchived field's value.
9347func (s *ChannelResponse) SetIsArchived(v bool) *ChannelResponse {
9348	s.IsArchived = &v
9349	return s
9350}
9351
9352// SetLastModifiedBy sets the LastModifiedBy field's value.
9353func (s *ChannelResponse) SetLastModifiedBy(v string) *ChannelResponse {
9354	s.LastModifiedBy = &v
9355	return s
9356}
9357
9358// SetLastModifiedDate sets the LastModifiedDate field's value.
9359func (s *ChannelResponse) SetLastModifiedDate(v string) *ChannelResponse {
9360	s.LastModifiedDate = &v
9361	return s
9362}
9363
9364// SetVersion sets the Version field's value.
9365func (s *ChannelResponse) SetVersion(v int64) *ChannelResponse {
9366	s.Version = &v
9367	return s
9368}
9369
9370// Get channels definition
9371type ChannelsResponse struct {
9372	_ struct{} `type:"structure"`
9373
9374	// A map of channels, with the ChannelType as the key and the Channel as the
9375	// value.
9376	Channels map[string]*ChannelResponse `type:"map"`
9377}
9378
9379// String returns the string representation
9380func (s ChannelsResponse) String() string {
9381	return awsutil.Prettify(s)
9382}
9383
9384// GoString returns the string representation
9385func (s ChannelsResponse) GoString() string {
9386	return s.String()
9387}
9388
9389// SetChannels sets the Channels field's value.
9390func (s *ChannelsResponse) SetChannels(v map[string]*ChannelResponse) *ChannelsResponse {
9391	s.Channels = v
9392	return s
9393}
9394
9395type CreateAppInput struct {
9396	_ struct{} `type:"structure" payload:"CreateApplicationRequest"`
9397
9398	// Application Request.
9399	//
9400	// CreateApplicationRequest is a required field
9401	CreateApplicationRequest *CreateApplicationRequest `type:"structure" required:"true"`
9402}
9403
9404// String returns the string representation
9405func (s CreateAppInput) String() string {
9406	return awsutil.Prettify(s)
9407}
9408
9409// GoString returns the string representation
9410func (s CreateAppInput) GoString() string {
9411	return s.String()
9412}
9413
9414// Validate inspects the fields of the type to determine if they are valid.
9415func (s *CreateAppInput) Validate() error {
9416	invalidParams := request.ErrInvalidParams{Context: "CreateAppInput"}
9417	if s.CreateApplicationRequest == nil {
9418		invalidParams.Add(request.NewErrParamRequired("CreateApplicationRequest"))
9419	}
9420
9421	if invalidParams.Len() > 0 {
9422		return invalidParams
9423	}
9424	return nil
9425}
9426
9427// SetCreateApplicationRequest sets the CreateApplicationRequest field's value.
9428func (s *CreateAppInput) SetCreateApplicationRequest(v *CreateApplicationRequest) *CreateAppInput {
9429	s.CreateApplicationRequest = v
9430	return s
9431}
9432
9433type CreateAppOutput struct {
9434	_ struct{} `type:"structure" payload:"ApplicationResponse"`
9435
9436	// Application Response.
9437	//
9438	// ApplicationResponse is a required field
9439	ApplicationResponse *ApplicationResponse `type:"structure" required:"true"`
9440}
9441
9442// String returns the string representation
9443func (s CreateAppOutput) String() string {
9444	return awsutil.Prettify(s)
9445}
9446
9447// GoString returns the string representation
9448func (s CreateAppOutput) GoString() string {
9449	return s.String()
9450}
9451
9452// SetApplicationResponse sets the ApplicationResponse field's value.
9453func (s *CreateAppOutput) SetApplicationResponse(v *ApplicationResponse) *CreateAppOutput {
9454	s.ApplicationResponse = v
9455	return s
9456}
9457
9458// Application Request.
9459type CreateApplicationRequest struct {
9460	_ struct{} `type:"structure"`
9461
9462	// The display name of the application. Used in the Amazon Pinpoint console.
9463	Name *string `type:"string"`
9464}
9465
9466// String returns the string representation
9467func (s CreateApplicationRequest) String() string {
9468	return awsutil.Prettify(s)
9469}
9470
9471// GoString returns the string representation
9472func (s CreateApplicationRequest) GoString() string {
9473	return s.String()
9474}
9475
9476// SetName sets the Name field's value.
9477func (s *CreateApplicationRequest) SetName(v string) *CreateApplicationRequest {
9478	s.Name = &v
9479	return s
9480}
9481
9482type CreateCampaignInput struct {
9483	_ struct{} `type:"structure" payload:"WriteCampaignRequest"`
9484
9485	// ApplicationId is a required field
9486	ApplicationId *string `location:"uri" locationName:"application-id" type:"string" required:"true"`
9487
9488	// Used to create a campaign.
9489	//
9490	// WriteCampaignRequest is a required field
9491	WriteCampaignRequest *WriteCampaignRequest `type:"structure" required:"true"`
9492}
9493
9494// String returns the string representation
9495func (s CreateCampaignInput) String() string {
9496	return awsutil.Prettify(s)
9497}
9498
9499// GoString returns the string representation
9500func (s CreateCampaignInput) GoString() string {
9501	return s.String()
9502}
9503
9504// Validate inspects the fields of the type to determine if they are valid.
9505func (s *CreateCampaignInput) Validate() error {
9506	invalidParams := request.ErrInvalidParams{Context: "CreateCampaignInput"}
9507	if s.ApplicationId == nil {
9508		invalidParams.Add(request.NewErrParamRequired("ApplicationId"))
9509	}
9510	if s.WriteCampaignRequest == nil {
9511		invalidParams.Add(request.NewErrParamRequired("WriteCampaignRequest"))
9512	}
9513
9514	if invalidParams.Len() > 0 {
9515		return invalidParams
9516	}
9517	return nil
9518}
9519
9520// SetApplicationId sets the ApplicationId field's value.
9521func (s *CreateCampaignInput) SetApplicationId(v string) *CreateCampaignInput {
9522	s.ApplicationId = &v
9523	return s
9524}
9525
9526// SetWriteCampaignRequest sets the WriteCampaignRequest field's value.
9527func (s *CreateCampaignInput) SetWriteCampaignRequest(v *WriteCampaignRequest) *CreateCampaignInput {
9528	s.WriteCampaignRequest = v
9529	return s
9530}
9531
9532type CreateCampaignOutput struct {
9533	_ struct{} `type:"structure" payload:"CampaignResponse"`
9534
9535	// Campaign definition
9536	//
9537	// CampaignResponse is a required field
9538	CampaignResponse *CampaignResponse `type:"structure" required:"true"`
9539}
9540
9541// String returns the string representation
9542func (s CreateCampaignOutput) String() string {
9543	return awsutil.Prettify(s)
9544}
9545
9546// GoString returns the string representation
9547func (s CreateCampaignOutput) GoString() string {
9548	return s.String()
9549}
9550
9551// SetCampaignResponse sets the CampaignResponse field's value.
9552func (s *CreateCampaignOutput) SetCampaignResponse(v *CampaignResponse) *CreateCampaignOutput {
9553	s.CampaignResponse = v
9554	return s
9555}
9556
9557type CreateExportJobInput struct {
9558	_ struct{} `type:"structure" payload:"ExportJobRequest"`
9559
9560	// ApplicationId is a required field
9561	ApplicationId *string `location:"uri" locationName:"application-id" type:"string" required:"true"`
9562
9563	// Export job request.
9564	//
9565	// ExportJobRequest is a required field
9566	ExportJobRequest *ExportJobRequest `type:"structure" required:"true"`
9567}
9568
9569// String returns the string representation
9570func (s CreateExportJobInput) String() string {
9571	return awsutil.Prettify(s)
9572}
9573
9574// GoString returns the string representation
9575func (s CreateExportJobInput) GoString() string {
9576	return s.String()
9577}
9578
9579// Validate inspects the fields of the type to determine if they are valid.
9580func (s *CreateExportJobInput) Validate() error {
9581	invalidParams := request.ErrInvalidParams{Context: "CreateExportJobInput"}
9582	if s.ApplicationId == nil {
9583		invalidParams.Add(request.NewErrParamRequired("ApplicationId"))
9584	}
9585	if s.ExportJobRequest == nil {
9586		invalidParams.Add(request.NewErrParamRequired("ExportJobRequest"))
9587	}
9588
9589	if invalidParams.Len() > 0 {
9590		return invalidParams
9591	}
9592	return nil
9593}
9594
9595// SetApplicationId sets the ApplicationId field's value.
9596func (s *CreateExportJobInput) SetApplicationId(v string) *CreateExportJobInput {
9597	s.ApplicationId = &v
9598	return s
9599}
9600
9601// SetExportJobRequest sets the ExportJobRequest field's value.
9602func (s *CreateExportJobInput) SetExportJobRequest(v *ExportJobRequest) *CreateExportJobInput {
9603	s.ExportJobRequest = v
9604	return s
9605}
9606
9607type CreateExportJobOutput struct {
9608	_ struct{} `type:"structure" payload:"ExportJobResponse"`
9609
9610	// Export job response.
9611	//
9612	// ExportJobResponse is a required field
9613	ExportJobResponse *ExportJobResponse `type:"structure" required:"true"`
9614}
9615
9616// String returns the string representation
9617func (s CreateExportJobOutput) String() string {
9618	return awsutil.Prettify(s)
9619}
9620
9621// GoString returns the string representation
9622func (s CreateExportJobOutput) GoString() string {
9623	return s.String()
9624}
9625
9626// SetExportJobResponse sets the ExportJobResponse field's value.
9627func (s *CreateExportJobOutput) SetExportJobResponse(v *ExportJobResponse) *CreateExportJobOutput {
9628	s.ExportJobResponse = v
9629	return s
9630}
9631
9632type CreateImportJobInput struct {
9633	_ struct{} `type:"structure" payload:"ImportJobRequest"`
9634
9635	// ApplicationId is a required field
9636	ApplicationId *string `location:"uri" locationName:"application-id" type:"string" required:"true"`
9637
9638	// Import job request.
9639	//
9640	// ImportJobRequest is a required field
9641	ImportJobRequest *ImportJobRequest `type:"structure" required:"true"`
9642}
9643
9644// String returns the string representation
9645func (s CreateImportJobInput) String() string {
9646	return awsutil.Prettify(s)
9647}
9648
9649// GoString returns the string representation
9650func (s CreateImportJobInput) GoString() string {
9651	return s.String()
9652}
9653
9654// Validate inspects the fields of the type to determine if they are valid.
9655func (s *CreateImportJobInput) Validate() error {
9656	invalidParams := request.ErrInvalidParams{Context: "CreateImportJobInput"}
9657	if s.ApplicationId == nil {
9658		invalidParams.Add(request.NewErrParamRequired("ApplicationId"))
9659	}
9660	if s.ImportJobRequest == nil {
9661		invalidParams.Add(request.NewErrParamRequired("ImportJobRequest"))
9662	}
9663
9664	if invalidParams.Len() > 0 {
9665		return invalidParams
9666	}
9667	return nil
9668}
9669
9670// SetApplicationId sets the ApplicationId field's value.
9671func (s *CreateImportJobInput) SetApplicationId(v string) *CreateImportJobInput {
9672	s.ApplicationId = &v
9673	return s
9674}
9675
9676// SetImportJobRequest sets the ImportJobRequest field's value.
9677func (s *CreateImportJobInput) SetImportJobRequest(v *ImportJobRequest) *CreateImportJobInput {
9678	s.ImportJobRequest = v
9679	return s
9680}
9681
9682type CreateImportJobOutput struct {
9683	_ struct{} `type:"structure" payload:"ImportJobResponse"`
9684
9685	// Import job response.
9686	//
9687	// ImportJobResponse is a required field
9688	ImportJobResponse *ImportJobResponse `type:"structure" required:"true"`
9689}
9690
9691// String returns the string representation
9692func (s CreateImportJobOutput) String() string {
9693	return awsutil.Prettify(s)
9694}
9695
9696// GoString returns the string representation
9697func (s CreateImportJobOutput) GoString() string {
9698	return s.String()
9699}
9700
9701// SetImportJobResponse sets the ImportJobResponse field's value.
9702func (s *CreateImportJobOutput) SetImportJobResponse(v *ImportJobResponse) *CreateImportJobOutput {
9703	s.ImportJobResponse = v
9704	return s
9705}
9706
9707type CreateSegmentInput struct {
9708	_ struct{} `type:"structure" payload:"WriteSegmentRequest"`
9709
9710	// ApplicationId is a required field
9711	ApplicationId *string `location:"uri" locationName:"application-id" type:"string" required:"true"`
9712
9713	// Segment definition.
9714	//
9715	// WriteSegmentRequest is a required field
9716	WriteSegmentRequest *WriteSegmentRequest `type:"structure" required:"true"`
9717}
9718
9719// String returns the string representation
9720func (s CreateSegmentInput) String() string {
9721	return awsutil.Prettify(s)
9722}
9723
9724// GoString returns the string representation
9725func (s CreateSegmentInput) GoString() string {
9726	return s.String()
9727}
9728
9729// Validate inspects the fields of the type to determine if they are valid.
9730func (s *CreateSegmentInput) Validate() error {
9731	invalidParams := request.ErrInvalidParams{Context: "CreateSegmentInput"}
9732	if s.ApplicationId == nil {
9733		invalidParams.Add(request.NewErrParamRequired("ApplicationId"))
9734	}
9735	if s.WriteSegmentRequest == nil {
9736		invalidParams.Add(request.NewErrParamRequired("WriteSegmentRequest"))
9737	}
9738
9739	if invalidParams.Len() > 0 {
9740		return invalidParams
9741	}
9742	return nil
9743}
9744
9745// SetApplicationId sets the ApplicationId field's value.
9746func (s *CreateSegmentInput) SetApplicationId(v string) *CreateSegmentInput {
9747	s.ApplicationId = &v
9748	return s
9749}
9750
9751// SetWriteSegmentRequest sets the WriteSegmentRequest field's value.
9752func (s *CreateSegmentInput) SetWriteSegmentRequest(v *WriteSegmentRequest) *CreateSegmentInput {
9753	s.WriteSegmentRequest = v
9754	return s
9755}
9756
9757type CreateSegmentOutput struct {
9758	_ struct{} `type:"structure" payload:"SegmentResponse"`
9759
9760	// Segment definition.
9761	//
9762	// SegmentResponse is a required field
9763	SegmentResponse *SegmentResponse `type:"structure" required:"true"`
9764}
9765
9766// String returns the string representation
9767func (s CreateSegmentOutput) String() string {
9768	return awsutil.Prettify(s)
9769}
9770
9771// GoString returns the string representation
9772func (s CreateSegmentOutput) GoString() string {
9773	return s.String()
9774}
9775
9776// SetSegmentResponse sets the SegmentResponse field's value.
9777func (s *CreateSegmentOutput) SetSegmentResponse(v *SegmentResponse) *CreateSegmentOutput {
9778	s.SegmentResponse = v
9779	return s
9780}
9781
9782// The default message to use across all channels.
9783type DefaultMessage struct {
9784	_ struct{} `type:"structure"`
9785
9786	// The message body of the notification, the email body or the text message.
9787	Body *string `type:"string"`
9788
9789	// Default message substitutions. Can be overridden by individual address substitutions.
9790	Substitutions map[string][]*string `type:"map"`
9791}
9792
9793// String returns the string representation
9794func (s DefaultMessage) String() string {
9795	return awsutil.Prettify(s)
9796}
9797
9798// GoString returns the string representation
9799func (s DefaultMessage) GoString() string {
9800	return s.String()
9801}
9802
9803// SetBody sets the Body field's value.
9804func (s *DefaultMessage) SetBody(v string) *DefaultMessage {
9805	s.Body = &v
9806	return s
9807}
9808
9809// SetSubstitutions sets the Substitutions field's value.
9810func (s *DefaultMessage) SetSubstitutions(v map[string][]*string) *DefaultMessage {
9811	s.Substitutions = v
9812	return s
9813}
9814
9815// Default Push Notification Message.
9816type DefaultPushNotificationMessage struct {
9817	_ struct{} `type:"structure"`
9818
9819	// The action that occurs if the user taps a push notification delivered by
9820	// the campaign: OPEN_APP - Your app launches, or it becomes the foreground
9821	// app if it has been sent to the background. This is the default action. DEEP_LINK
9822	// - Uses deep linking features in iOS and Android to open your app and display
9823	// a designated user interface within the app. URL - The default mobile browser
9824	// on the user's device launches and opens a web page at the URL you specify.
9825	// Possible values include: OPEN_APP | DEEP_LINK | URL
9826	Action *string `type:"string" enum:"Action"`
9827
9828	// The message body of the notification.
9829	Body *string `type:"string"`
9830
9831	// The data payload used for a silent push. This payload is added to the notifications'
9832	// data.pinpoint.jsonBody' object
9833	Data map[string]*string `type:"map"`
9834
9835	// Indicates if the message should display on the users device. Silent pushes
9836	// can be used for Remote Configuration and Phone Home use cases.
9837	SilentPush *bool `type:"boolean"`
9838
9839	// Default message substitutions. Can be overridden by individual address substitutions.
9840	Substitutions map[string][]*string `type:"map"`
9841
9842	// The message title that displays above the message on the user's device.
9843	Title *string `type:"string"`
9844
9845	// The URL to open in the user's mobile browser. Used if the value for Action
9846	// is URL.
9847	Url *string `type:"string"`
9848}
9849
9850// String returns the string representation
9851func (s DefaultPushNotificationMessage) String() string {
9852	return awsutil.Prettify(s)
9853}
9854
9855// GoString returns the string representation
9856func (s DefaultPushNotificationMessage) GoString() string {
9857	return s.String()
9858}
9859
9860// SetAction sets the Action field's value.
9861func (s *DefaultPushNotificationMessage) SetAction(v string) *DefaultPushNotificationMessage {
9862	s.Action = &v
9863	return s
9864}
9865
9866// SetBody sets the Body field's value.
9867func (s *DefaultPushNotificationMessage) SetBody(v string) *DefaultPushNotificationMessage {
9868	s.Body = &v
9869	return s
9870}
9871
9872// SetData sets the Data field's value.
9873func (s *DefaultPushNotificationMessage) SetData(v map[string]*string) *DefaultPushNotificationMessage {
9874	s.Data = v
9875	return s
9876}
9877
9878// SetSilentPush sets the SilentPush field's value.
9879func (s *DefaultPushNotificationMessage) SetSilentPush(v bool) *DefaultPushNotificationMessage {
9880	s.SilentPush = &v
9881	return s
9882}
9883
9884// SetSubstitutions sets the Substitutions field's value.
9885func (s *DefaultPushNotificationMessage) SetSubstitutions(v map[string][]*string) *DefaultPushNotificationMessage {
9886	s.Substitutions = v
9887	return s
9888}
9889
9890// SetTitle sets the Title field's value.
9891func (s *DefaultPushNotificationMessage) SetTitle(v string) *DefaultPushNotificationMessage {
9892	s.Title = &v
9893	return s
9894}
9895
9896// SetUrl sets the Url field's value.
9897func (s *DefaultPushNotificationMessage) SetUrl(v string) *DefaultPushNotificationMessage {
9898	s.Url = &v
9899	return s
9900}
9901
9902type DeleteAdmChannelInput struct {
9903	_ struct{} `type:"structure"`
9904
9905	// ApplicationId is a required field
9906	ApplicationId *string `location:"uri" locationName:"application-id" type:"string" required:"true"`
9907}
9908
9909// String returns the string representation
9910func (s DeleteAdmChannelInput) String() string {
9911	return awsutil.Prettify(s)
9912}
9913
9914// GoString returns the string representation
9915func (s DeleteAdmChannelInput) GoString() string {
9916	return s.String()
9917}
9918
9919// Validate inspects the fields of the type to determine if they are valid.
9920func (s *DeleteAdmChannelInput) Validate() error {
9921	invalidParams := request.ErrInvalidParams{Context: "DeleteAdmChannelInput"}
9922	if s.ApplicationId == nil {
9923		invalidParams.Add(request.NewErrParamRequired("ApplicationId"))
9924	}
9925
9926	if invalidParams.Len() > 0 {
9927		return invalidParams
9928	}
9929	return nil
9930}
9931
9932// SetApplicationId sets the ApplicationId field's value.
9933func (s *DeleteAdmChannelInput) SetApplicationId(v string) *DeleteAdmChannelInput {
9934	s.ApplicationId = &v
9935	return s
9936}
9937
9938type DeleteAdmChannelOutput struct {
9939	_ struct{} `type:"structure" payload:"ADMChannelResponse"`
9940
9941	// Amazon Device Messaging channel definition.
9942	//
9943	// ADMChannelResponse is a required field
9944	ADMChannelResponse *ADMChannelResponse `type:"structure" required:"true"`
9945}
9946
9947// String returns the string representation
9948func (s DeleteAdmChannelOutput) String() string {
9949	return awsutil.Prettify(s)
9950}
9951
9952// GoString returns the string representation
9953func (s DeleteAdmChannelOutput) GoString() string {
9954	return s.String()
9955}
9956
9957// SetADMChannelResponse sets the ADMChannelResponse field's value.
9958func (s *DeleteAdmChannelOutput) SetADMChannelResponse(v *ADMChannelResponse) *DeleteAdmChannelOutput {
9959	s.ADMChannelResponse = v
9960	return s
9961}
9962
9963type DeleteApnsChannelInput struct {
9964	_ struct{} `type:"structure"`
9965
9966	// ApplicationId is a required field
9967	ApplicationId *string `location:"uri" locationName:"application-id" type:"string" required:"true"`
9968}
9969
9970// String returns the string representation
9971func (s DeleteApnsChannelInput) String() string {
9972	return awsutil.Prettify(s)
9973}
9974
9975// GoString returns the string representation
9976func (s DeleteApnsChannelInput) GoString() string {
9977	return s.String()
9978}
9979
9980// Validate inspects the fields of the type to determine if they are valid.
9981func (s *DeleteApnsChannelInput) Validate() error {
9982	invalidParams := request.ErrInvalidParams{Context: "DeleteApnsChannelInput"}
9983	if s.ApplicationId == nil {
9984		invalidParams.Add(request.NewErrParamRequired("ApplicationId"))
9985	}
9986
9987	if invalidParams.Len() > 0 {
9988		return invalidParams
9989	}
9990	return nil
9991}
9992
9993// SetApplicationId sets the ApplicationId field's value.
9994func (s *DeleteApnsChannelInput) SetApplicationId(v string) *DeleteApnsChannelInput {
9995	s.ApplicationId = &v
9996	return s
9997}
9998
9999type DeleteApnsChannelOutput struct {
10000	_ struct{} `type:"structure" payload:"APNSChannelResponse"`
10001
10002	// Apple Distribution Push Notification Service channel definition.
10003	//
10004	// APNSChannelResponse is a required field
10005	APNSChannelResponse *APNSChannelResponse `type:"structure" required:"true"`
10006}
10007
10008// String returns the string representation
10009func (s DeleteApnsChannelOutput) String() string {
10010	return awsutil.Prettify(s)
10011}
10012
10013// GoString returns the string representation
10014func (s DeleteApnsChannelOutput) GoString() string {
10015	return s.String()
10016}
10017
10018// SetAPNSChannelResponse sets the APNSChannelResponse field's value.
10019func (s *DeleteApnsChannelOutput) SetAPNSChannelResponse(v *APNSChannelResponse) *DeleteApnsChannelOutput {
10020	s.APNSChannelResponse = v
10021	return s
10022}
10023
10024type DeleteApnsSandboxChannelInput struct {
10025	_ struct{} `type:"structure"`
10026
10027	// ApplicationId is a required field
10028	ApplicationId *string `location:"uri" locationName:"application-id" type:"string" required:"true"`
10029}
10030
10031// String returns the string representation
10032func (s DeleteApnsSandboxChannelInput) String() string {
10033	return awsutil.Prettify(s)
10034}
10035
10036// GoString returns the string representation
10037func (s DeleteApnsSandboxChannelInput) GoString() string {
10038	return s.String()
10039}
10040
10041// Validate inspects the fields of the type to determine if they are valid.
10042func (s *DeleteApnsSandboxChannelInput) Validate() error {
10043	invalidParams := request.ErrInvalidParams{Context: "DeleteApnsSandboxChannelInput"}
10044	if s.ApplicationId == nil {
10045		invalidParams.Add(request.NewErrParamRequired("ApplicationId"))
10046	}
10047
10048	if invalidParams.Len() > 0 {
10049		return invalidParams
10050	}
10051	return nil
10052}
10053
10054// SetApplicationId sets the ApplicationId field's value.
10055func (s *DeleteApnsSandboxChannelInput) SetApplicationId(v string) *DeleteApnsSandboxChannelInput {
10056	s.ApplicationId = &v
10057	return s
10058}
10059
10060type DeleteApnsSandboxChannelOutput struct {
10061	_ struct{} `type:"structure" payload:"APNSSandboxChannelResponse"`
10062
10063	// Apple Development Push Notification Service channel definition.
10064	//
10065	// APNSSandboxChannelResponse is a required field
10066	APNSSandboxChannelResponse *APNSSandboxChannelResponse `type:"structure" required:"true"`
10067}
10068
10069// String returns the string representation
10070func (s DeleteApnsSandboxChannelOutput) String() string {
10071	return awsutil.Prettify(s)
10072}
10073
10074// GoString returns the string representation
10075func (s DeleteApnsSandboxChannelOutput) GoString() string {
10076	return s.String()
10077}
10078
10079// SetAPNSSandboxChannelResponse sets the APNSSandboxChannelResponse field's value.
10080func (s *DeleteApnsSandboxChannelOutput) SetAPNSSandboxChannelResponse(v *APNSSandboxChannelResponse) *DeleteApnsSandboxChannelOutput {
10081	s.APNSSandboxChannelResponse = v
10082	return s
10083}
10084
10085type DeleteApnsVoipChannelInput struct {
10086	_ struct{} `type:"structure"`
10087
10088	// ApplicationId is a required field
10089	ApplicationId *string `location:"uri" locationName:"application-id" type:"string" required:"true"`
10090}
10091
10092// String returns the string representation
10093func (s DeleteApnsVoipChannelInput) String() string {
10094	return awsutil.Prettify(s)
10095}
10096
10097// GoString returns the string representation
10098func (s DeleteApnsVoipChannelInput) GoString() string {
10099	return s.String()
10100}
10101
10102// Validate inspects the fields of the type to determine if they are valid.
10103func (s *DeleteApnsVoipChannelInput) Validate() error {
10104	invalidParams := request.ErrInvalidParams{Context: "DeleteApnsVoipChannelInput"}
10105	if s.ApplicationId == nil {
10106		invalidParams.Add(request.NewErrParamRequired("ApplicationId"))
10107	}
10108
10109	if invalidParams.Len() > 0 {
10110		return invalidParams
10111	}
10112	return nil
10113}
10114
10115// SetApplicationId sets the ApplicationId field's value.
10116func (s *DeleteApnsVoipChannelInput) SetApplicationId(v string) *DeleteApnsVoipChannelInput {
10117	s.ApplicationId = &v
10118	return s
10119}
10120
10121type DeleteApnsVoipChannelOutput struct {
10122	_ struct{} `type:"structure" payload:"APNSVoipChannelResponse"`
10123
10124	// Apple VoIP Push Notification Service channel definition.
10125	//
10126	// APNSVoipChannelResponse is a required field
10127	APNSVoipChannelResponse *APNSVoipChannelResponse `type:"structure" required:"true"`
10128}
10129
10130// String returns the string representation
10131func (s DeleteApnsVoipChannelOutput) String() string {
10132	return awsutil.Prettify(s)
10133}
10134
10135// GoString returns the string representation
10136func (s DeleteApnsVoipChannelOutput) GoString() string {
10137	return s.String()
10138}
10139
10140// SetAPNSVoipChannelResponse sets the APNSVoipChannelResponse field's value.
10141func (s *DeleteApnsVoipChannelOutput) SetAPNSVoipChannelResponse(v *APNSVoipChannelResponse) *DeleteApnsVoipChannelOutput {
10142	s.APNSVoipChannelResponse = v
10143	return s
10144}
10145
10146type DeleteApnsVoipSandboxChannelInput struct {
10147	_ struct{} `type:"structure"`
10148
10149	// ApplicationId is a required field
10150	ApplicationId *string `location:"uri" locationName:"application-id" type:"string" required:"true"`
10151}
10152
10153// String returns the string representation
10154func (s DeleteApnsVoipSandboxChannelInput) String() string {
10155	return awsutil.Prettify(s)
10156}
10157
10158// GoString returns the string representation
10159func (s DeleteApnsVoipSandboxChannelInput) GoString() string {
10160	return s.String()
10161}
10162
10163// Validate inspects the fields of the type to determine if they are valid.
10164func (s *DeleteApnsVoipSandboxChannelInput) Validate() error {
10165	invalidParams := request.ErrInvalidParams{Context: "DeleteApnsVoipSandboxChannelInput"}
10166	if s.ApplicationId == nil {
10167		invalidParams.Add(request.NewErrParamRequired("ApplicationId"))
10168	}
10169
10170	if invalidParams.Len() > 0 {
10171		return invalidParams
10172	}
10173	return nil
10174}
10175
10176// SetApplicationId sets the ApplicationId field's value.
10177func (s *DeleteApnsVoipSandboxChannelInput) SetApplicationId(v string) *DeleteApnsVoipSandboxChannelInput {
10178	s.ApplicationId = &v
10179	return s
10180}
10181
10182type DeleteApnsVoipSandboxChannelOutput struct {
10183	_ struct{} `type:"structure" payload:"APNSVoipSandboxChannelResponse"`
10184
10185	// Apple VoIP Developer Push Notification Service channel definition.
10186	//
10187	// APNSVoipSandboxChannelResponse is a required field
10188	APNSVoipSandboxChannelResponse *APNSVoipSandboxChannelResponse `type:"structure" required:"true"`
10189}
10190
10191// String returns the string representation
10192func (s DeleteApnsVoipSandboxChannelOutput) String() string {
10193	return awsutil.Prettify(s)
10194}
10195
10196// GoString returns the string representation
10197func (s DeleteApnsVoipSandboxChannelOutput) GoString() string {
10198	return s.String()
10199}
10200
10201// SetAPNSVoipSandboxChannelResponse sets the APNSVoipSandboxChannelResponse field's value.
10202func (s *DeleteApnsVoipSandboxChannelOutput) SetAPNSVoipSandboxChannelResponse(v *APNSVoipSandboxChannelResponse) *DeleteApnsVoipSandboxChannelOutput {
10203	s.APNSVoipSandboxChannelResponse = v
10204	return s
10205}
10206
10207type DeleteAppInput struct {
10208	_ struct{} `type:"structure"`
10209
10210	// ApplicationId is a required field
10211	ApplicationId *string `location:"uri" locationName:"application-id" type:"string" required:"true"`
10212}
10213
10214// String returns the string representation
10215func (s DeleteAppInput) String() string {
10216	return awsutil.Prettify(s)
10217}
10218
10219// GoString returns the string representation
10220func (s DeleteAppInput) GoString() string {
10221	return s.String()
10222}
10223
10224// Validate inspects the fields of the type to determine if they are valid.
10225func (s *DeleteAppInput) Validate() error {
10226	invalidParams := request.ErrInvalidParams{Context: "DeleteAppInput"}
10227	if s.ApplicationId == nil {
10228		invalidParams.Add(request.NewErrParamRequired("ApplicationId"))
10229	}
10230
10231	if invalidParams.Len() > 0 {
10232		return invalidParams
10233	}
10234	return nil
10235}
10236
10237// SetApplicationId sets the ApplicationId field's value.
10238func (s *DeleteAppInput) SetApplicationId(v string) *DeleteAppInput {
10239	s.ApplicationId = &v
10240	return s
10241}
10242
10243type DeleteAppOutput struct {
10244	_ struct{} `type:"structure" payload:"ApplicationResponse"`
10245
10246	// Application Response.
10247	//
10248	// ApplicationResponse is a required field
10249	ApplicationResponse *ApplicationResponse `type:"structure" required:"true"`
10250}
10251
10252// String returns the string representation
10253func (s DeleteAppOutput) String() string {
10254	return awsutil.Prettify(s)
10255}
10256
10257// GoString returns the string representation
10258func (s DeleteAppOutput) GoString() string {
10259	return s.String()
10260}
10261
10262// SetApplicationResponse sets the ApplicationResponse field's value.
10263func (s *DeleteAppOutput) SetApplicationResponse(v *ApplicationResponse) *DeleteAppOutput {
10264	s.ApplicationResponse = v
10265	return s
10266}
10267
10268type DeleteBaiduChannelInput struct {
10269	_ struct{} `type:"structure"`
10270
10271	// ApplicationId is a required field
10272	ApplicationId *string `location:"uri" locationName:"application-id" type:"string" required:"true"`
10273}
10274
10275// String returns the string representation
10276func (s DeleteBaiduChannelInput) String() string {
10277	return awsutil.Prettify(s)
10278}
10279
10280// GoString returns the string representation
10281func (s DeleteBaiduChannelInput) GoString() string {
10282	return s.String()
10283}
10284
10285// Validate inspects the fields of the type to determine if they are valid.
10286func (s *DeleteBaiduChannelInput) Validate() error {
10287	invalidParams := request.ErrInvalidParams{Context: "DeleteBaiduChannelInput"}
10288	if s.ApplicationId == nil {
10289		invalidParams.Add(request.NewErrParamRequired("ApplicationId"))
10290	}
10291
10292	if invalidParams.Len() > 0 {
10293		return invalidParams
10294	}
10295	return nil
10296}
10297
10298// SetApplicationId sets the ApplicationId field's value.
10299func (s *DeleteBaiduChannelInput) SetApplicationId(v string) *DeleteBaiduChannelInput {
10300	s.ApplicationId = &v
10301	return s
10302}
10303
10304type DeleteBaiduChannelOutput struct {
10305	_ struct{} `type:"structure" payload:"BaiduChannelResponse"`
10306
10307	// Baidu Cloud Messaging channel definition
10308	//
10309	// BaiduChannelResponse is a required field
10310	BaiduChannelResponse *BaiduChannelResponse `type:"structure" required:"true"`
10311}
10312
10313// String returns the string representation
10314func (s DeleteBaiduChannelOutput) String() string {
10315	return awsutil.Prettify(s)
10316}
10317
10318// GoString returns the string representation
10319func (s DeleteBaiduChannelOutput) GoString() string {
10320	return s.String()
10321}
10322
10323// SetBaiduChannelResponse sets the BaiduChannelResponse field's value.
10324func (s *DeleteBaiduChannelOutput) SetBaiduChannelResponse(v *BaiduChannelResponse) *DeleteBaiduChannelOutput {
10325	s.BaiduChannelResponse = v
10326	return s
10327}
10328
10329type DeleteCampaignInput struct {
10330	_ struct{} `type:"structure"`
10331
10332	// ApplicationId is a required field
10333	ApplicationId *string `location:"uri" locationName:"application-id" type:"string" required:"true"`
10334
10335	// CampaignId is a required field
10336	CampaignId *string `location:"uri" locationName:"campaign-id" type:"string" required:"true"`
10337}
10338
10339// String returns the string representation
10340func (s DeleteCampaignInput) String() string {
10341	return awsutil.Prettify(s)
10342}
10343
10344// GoString returns the string representation
10345func (s DeleteCampaignInput) GoString() string {
10346	return s.String()
10347}
10348
10349// Validate inspects the fields of the type to determine if they are valid.
10350func (s *DeleteCampaignInput) Validate() error {
10351	invalidParams := request.ErrInvalidParams{Context: "DeleteCampaignInput"}
10352	if s.ApplicationId == nil {
10353		invalidParams.Add(request.NewErrParamRequired("ApplicationId"))
10354	}
10355	if s.CampaignId == nil {
10356		invalidParams.Add(request.NewErrParamRequired("CampaignId"))
10357	}
10358
10359	if invalidParams.Len() > 0 {
10360		return invalidParams
10361	}
10362	return nil
10363}
10364
10365// SetApplicationId sets the ApplicationId field's value.
10366func (s *DeleteCampaignInput) SetApplicationId(v string) *DeleteCampaignInput {
10367	s.ApplicationId = &v
10368	return s
10369}
10370
10371// SetCampaignId sets the CampaignId field's value.
10372func (s *DeleteCampaignInput) SetCampaignId(v string) *DeleteCampaignInput {
10373	s.CampaignId = &v
10374	return s
10375}
10376
10377type DeleteCampaignOutput struct {
10378	_ struct{} `type:"structure" payload:"CampaignResponse"`
10379
10380	// Campaign definition
10381	//
10382	// CampaignResponse is a required field
10383	CampaignResponse *CampaignResponse `type:"structure" required:"true"`
10384}
10385
10386// String returns the string representation
10387func (s DeleteCampaignOutput) String() string {
10388	return awsutil.Prettify(s)
10389}
10390
10391// GoString returns the string representation
10392func (s DeleteCampaignOutput) GoString() string {
10393	return s.String()
10394}
10395
10396// SetCampaignResponse sets the CampaignResponse field's value.
10397func (s *DeleteCampaignOutput) SetCampaignResponse(v *CampaignResponse) *DeleteCampaignOutput {
10398	s.CampaignResponse = v
10399	return s
10400}
10401
10402type DeleteEmailChannelInput struct {
10403	_ struct{} `type:"structure"`
10404
10405	// ApplicationId is a required field
10406	ApplicationId *string `location:"uri" locationName:"application-id" type:"string" required:"true"`
10407}
10408
10409// String returns the string representation
10410func (s DeleteEmailChannelInput) String() string {
10411	return awsutil.Prettify(s)
10412}
10413
10414// GoString returns the string representation
10415func (s DeleteEmailChannelInput) GoString() string {
10416	return s.String()
10417}
10418
10419// Validate inspects the fields of the type to determine if they are valid.
10420func (s *DeleteEmailChannelInput) Validate() error {
10421	invalidParams := request.ErrInvalidParams{Context: "DeleteEmailChannelInput"}
10422	if s.ApplicationId == nil {
10423		invalidParams.Add(request.NewErrParamRequired("ApplicationId"))
10424	}
10425
10426	if invalidParams.Len() > 0 {
10427		return invalidParams
10428	}
10429	return nil
10430}
10431
10432// SetApplicationId sets the ApplicationId field's value.
10433func (s *DeleteEmailChannelInput) SetApplicationId(v string) *DeleteEmailChannelInput {
10434	s.ApplicationId = &v
10435	return s
10436}
10437
10438type DeleteEmailChannelOutput struct {
10439	_ struct{} `type:"structure" payload:"EmailChannelResponse"`
10440
10441	// Email Channel Response.
10442	//
10443	// EmailChannelResponse is a required field
10444	EmailChannelResponse *EmailChannelResponse `type:"structure" required:"true"`
10445}
10446
10447// String returns the string representation
10448func (s DeleteEmailChannelOutput) String() string {
10449	return awsutil.Prettify(s)
10450}
10451
10452// GoString returns the string representation
10453func (s DeleteEmailChannelOutput) GoString() string {
10454	return s.String()
10455}
10456
10457// SetEmailChannelResponse sets the EmailChannelResponse field's value.
10458func (s *DeleteEmailChannelOutput) SetEmailChannelResponse(v *EmailChannelResponse) *DeleteEmailChannelOutput {
10459	s.EmailChannelResponse = v
10460	return s
10461}
10462
10463type DeleteEndpointInput struct {
10464	_ struct{} `type:"structure"`
10465
10466	// ApplicationId is a required field
10467	ApplicationId *string `location:"uri" locationName:"application-id" type:"string" required:"true"`
10468
10469	// EndpointId is a required field
10470	EndpointId *string `location:"uri" locationName:"endpoint-id" type:"string" required:"true"`
10471}
10472
10473// String returns the string representation
10474func (s DeleteEndpointInput) String() string {
10475	return awsutil.Prettify(s)
10476}
10477
10478// GoString returns the string representation
10479func (s DeleteEndpointInput) GoString() string {
10480	return s.String()
10481}
10482
10483// Validate inspects the fields of the type to determine if they are valid.
10484func (s *DeleteEndpointInput) Validate() error {
10485	invalidParams := request.ErrInvalidParams{Context: "DeleteEndpointInput"}
10486	if s.ApplicationId == nil {
10487		invalidParams.Add(request.NewErrParamRequired("ApplicationId"))
10488	}
10489	if s.EndpointId == nil {
10490		invalidParams.Add(request.NewErrParamRequired("EndpointId"))
10491	}
10492
10493	if invalidParams.Len() > 0 {
10494		return invalidParams
10495	}
10496	return nil
10497}
10498
10499// SetApplicationId sets the ApplicationId field's value.
10500func (s *DeleteEndpointInput) SetApplicationId(v string) *DeleteEndpointInput {
10501	s.ApplicationId = &v
10502	return s
10503}
10504
10505// SetEndpointId sets the EndpointId field's value.
10506func (s *DeleteEndpointInput) SetEndpointId(v string) *DeleteEndpointInput {
10507	s.EndpointId = &v
10508	return s
10509}
10510
10511type DeleteEndpointOutput struct {
10512	_ struct{} `type:"structure" payload:"EndpointResponse"`
10513
10514	// Endpoint response
10515	//
10516	// EndpointResponse is a required field
10517	EndpointResponse *EndpointResponse `type:"structure" required:"true"`
10518}
10519
10520// String returns the string representation
10521func (s DeleteEndpointOutput) String() string {
10522	return awsutil.Prettify(s)
10523}
10524
10525// GoString returns the string representation
10526func (s DeleteEndpointOutput) GoString() string {
10527	return s.String()
10528}
10529
10530// SetEndpointResponse sets the EndpointResponse field's value.
10531func (s *DeleteEndpointOutput) SetEndpointResponse(v *EndpointResponse) *DeleteEndpointOutput {
10532	s.EndpointResponse = v
10533	return s
10534}
10535
10536type DeleteEventStreamInput struct {
10537	_ struct{} `type:"structure"`
10538
10539	// ApplicationId is a required field
10540	ApplicationId *string `location:"uri" locationName:"application-id" type:"string" required:"true"`
10541}
10542
10543// String returns the string representation
10544func (s DeleteEventStreamInput) String() string {
10545	return awsutil.Prettify(s)
10546}
10547
10548// GoString returns the string representation
10549func (s DeleteEventStreamInput) GoString() string {
10550	return s.String()
10551}
10552
10553// Validate inspects the fields of the type to determine if they are valid.
10554func (s *DeleteEventStreamInput) Validate() error {
10555	invalidParams := request.ErrInvalidParams{Context: "DeleteEventStreamInput"}
10556	if s.ApplicationId == nil {
10557		invalidParams.Add(request.NewErrParamRequired("ApplicationId"))
10558	}
10559
10560	if invalidParams.Len() > 0 {
10561		return invalidParams
10562	}
10563	return nil
10564}
10565
10566// SetApplicationId sets the ApplicationId field's value.
10567func (s *DeleteEventStreamInput) SetApplicationId(v string) *DeleteEventStreamInput {
10568	s.ApplicationId = &v
10569	return s
10570}
10571
10572type DeleteEventStreamOutput struct {
10573	_ struct{} `type:"structure" payload:"EventStream"`
10574
10575	// Model for an event publishing subscription export.
10576	//
10577	// EventStream is a required field
10578	EventStream *EventStream `type:"structure" required:"true"`
10579}
10580
10581// String returns the string representation
10582func (s DeleteEventStreamOutput) String() string {
10583	return awsutil.Prettify(s)
10584}
10585
10586// GoString returns the string representation
10587func (s DeleteEventStreamOutput) GoString() string {
10588	return s.String()
10589}
10590
10591// SetEventStream sets the EventStream field's value.
10592func (s *DeleteEventStreamOutput) SetEventStream(v *EventStream) *DeleteEventStreamOutput {
10593	s.EventStream = v
10594	return s
10595}
10596
10597type DeleteGcmChannelInput struct {
10598	_ struct{} `type:"structure"`
10599
10600	// ApplicationId is a required field
10601	ApplicationId *string `location:"uri" locationName:"application-id" type:"string" required:"true"`
10602}
10603
10604// String returns the string representation
10605func (s DeleteGcmChannelInput) String() string {
10606	return awsutil.Prettify(s)
10607}
10608
10609// GoString returns the string representation
10610func (s DeleteGcmChannelInput) GoString() string {
10611	return s.String()
10612}
10613
10614// Validate inspects the fields of the type to determine if they are valid.
10615func (s *DeleteGcmChannelInput) Validate() error {
10616	invalidParams := request.ErrInvalidParams{Context: "DeleteGcmChannelInput"}
10617	if s.ApplicationId == nil {
10618		invalidParams.Add(request.NewErrParamRequired("ApplicationId"))
10619	}
10620
10621	if invalidParams.Len() > 0 {
10622		return invalidParams
10623	}
10624	return nil
10625}
10626
10627// SetApplicationId sets the ApplicationId field's value.
10628func (s *DeleteGcmChannelInput) SetApplicationId(v string) *DeleteGcmChannelInput {
10629	s.ApplicationId = &v
10630	return s
10631}
10632
10633type DeleteGcmChannelOutput struct {
10634	_ struct{} `type:"structure" payload:"GCMChannelResponse"`
10635
10636	// Google Cloud Messaging channel definition
10637	//
10638	// GCMChannelResponse is a required field
10639	GCMChannelResponse *GCMChannelResponse `type:"structure" required:"true"`
10640}
10641
10642// String returns the string representation
10643func (s DeleteGcmChannelOutput) String() string {
10644	return awsutil.Prettify(s)
10645}
10646
10647// GoString returns the string representation
10648func (s DeleteGcmChannelOutput) GoString() string {
10649	return s.String()
10650}
10651
10652// SetGCMChannelResponse sets the GCMChannelResponse field's value.
10653func (s *DeleteGcmChannelOutput) SetGCMChannelResponse(v *GCMChannelResponse) *DeleteGcmChannelOutput {
10654	s.GCMChannelResponse = v
10655	return s
10656}
10657
10658type DeleteSegmentInput struct {
10659	_ struct{} `type:"structure"`
10660
10661	// ApplicationId is a required field
10662	ApplicationId *string `location:"uri" locationName:"application-id" type:"string" required:"true"`
10663
10664	// SegmentId is a required field
10665	SegmentId *string `location:"uri" locationName:"segment-id" type:"string" required:"true"`
10666}
10667
10668// String returns the string representation
10669func (s DeleteSegmentInput) String() string {
10670	return awsutil.Prettify(s)
10671}
10672
10673// GoString returns the string representation
10674func (s DeleteSegmentInput) GoString() string {
10675	return s.String()
10676}
10677
10678// Validate inspects the fields of the type to determine if they are valid.
10679func (s *DeleteSegmentInput) Validate() error {
10680	invalidParams := request.ErrInvalidParams{Context: "DeleteSegmentInput"}
10681	if s.ApplicationId == nil {
10682		invalidParams.Add(request.NewErrParamRequired("ApplicationId"))
10683	}
10684	if s.SegmentId == nil {
10685		invalidParams.Add(request.NewErrParamRequired("SegmentId"))
10686	}
10687
10688	if invalidParams.Len() > 0 {
10689		return invalidParams
10690	}
10691	return nil
10692}
10693
10694// SetApplicationId sets the ApplicationId field's value.
10695func (s *DeleteSegmentInput) SetApplicationId(v string) *DeleteSegmentInput {
10696	s.ApplicationId = &v
10697	return s
10698}
10699
10700// SetSegmentId sets the SegmentId field's value.
10701func (s *DeleteSegmentInput) SetSegmentId(v string) *DeleteSegmentInput {
10702	s.SegmentId = &v
10703	return s
10704}
10705
10706type DeleteSegmentOutput struct {
10707	_ struct{} `type:"structure" payload:"SegmentResponse"`
10708
10709	// Segment definition.
10710	//
10711	// SegmentResponse is a required field
10712	SegmentResponse *SegmentResponse `type:"structure" required:"true"`
10713}
10714
10715// String returns the string representation
10716func (s DeleteSegmentOutput) String() string {
10717	return awsutil.Prettify(s)
10718}
10719
10720// GoString returns the string representation
10721func (s DeleteSegmentOutput) GoString() string {
10722	return s.String()
10723}
10724
10725// SetSegmentResponse sets the SegmentResponse field's value.
10726func (s *DeleteSegmentOutput) SetSegmentResponse(v *SegmentResponse) *DeleteSegmentOutput {
10727	s.SegmentResponse = v
10728	return s
10729}
10730
10731type DeleteSmsChannelInput struct {
10732	_ struct{} `type:"structure"`
10733
10734	// ApplicationId is a required field
10735	ApplicationId *string `location:"uri" locationName:"application-id" type:"string" required:"true"`
10736}
10737
10738// String returns the string representation
10739func (s DeleteSmsChannelInput) String() string {
10740	return awsutil.Prettify(s)
10741}
10742
10743// GoString returns the string representation
10744func (s DeleteSmsChannelInput) GoString() string {
10745	return s.String()
10746}
10747
10748// Validate inspects the fields of the type to determine if they are valid.
10749func (s *DeleteSmsChannelInput) Validate() error {
10750	invalidParams := request.ErrInvalidParams{Context: "DeleteSmsChannelInput"}
10751	if s.ApplicationId == nil {
10752		invalidParams.Add(request.NewErrParamRequired("ApplicationId"))
10753	}
10754
10755	if invalidParams.Len() > 0 {
10756		return invalidParams
10757	}
10758	return nil
10759}
10760
10761// SetApplicationId sets the ApplicationId field's value.
10762func (s *DeleteSmsChannelInput) SetApplicationId(v string) *DeleteSmsChannelInput {
10763	s.ApplicationId = &v
10764	return s
10765}
10766
10767type DeleteSmsChannelOutput struct {
10768	_ struct{} `type:"structure" payload:"SMSChannelResponse"`
10769
10770	// SMS Channel Response.
10771	//
10772	// SMSChannelResponse is a required field
10773	SMSChannelResponse *SMSChannelResponse `type:"structure" required:"true"`
10774}
10775
10776// String returns the string representation
10777func (s DeleteSmsChannelOutput) String() string {
10778	return awsutil.Prettify(s)
10779}
10780
10781// GoString returns the string representation
10782func (s DeleteSmsChannelOutput) GoString() string {
10783	return s.String()
10784}
10785
10786// SetSMSChannelResponse sets the SMSChannelResponse field's value.
10787func (s *DeleteSmsChannelOutput) SetSMSChannelResponse(v *SMSChannelResponse) *DeleteSmsChannelOutput {
10788	s.SMSChannelResponse = v
10789	return s
10790}
10791
10792type DeleteUserEndpointsInput struct {
10793	_ struct{} `type:"structure"`
10794
10795	// ApplicationId is a required field
10796	ApplicationId *string `location:"uri" locationName:"application-id" type:"string" required:"true"`
10797
10798	// UserId is a required field
10799	UserId *string `location:"uri" locationName:"user-id" type:"string" required:"true"`
10800}
10801
10802// String returns the string representation
10803func (s DeleteUserEndpointsInput) String() string {
10804	return awsutil.Prettify(s)
10805}
10806
10807// GoString returns the string representation
10808func (s DeleteUserEndpointsInput) GoString() string {
10809	return s.String()
10810}
10811
10812// Validate inspects the fields of the type to determine if they are valid.
10813func (s *DeleteUserEndpointsInput) Validate() error {
10814	invalidParams := request.ErrInvalidParams{Context: "DeleteUserEndpointsInput"}
10815	if s.ApplicationId == nil {
10816		invalidParams.Add(request.NewErrParamRequired("ApplicationId"))
10817	}
10818	if s.UserId == nil {
10819		invalidParams.Add(request.NewErrParamRequired("UserId"))
10820	}
10821
10822	if invalidParams.Len() > 0 {
10823		return invalidParams
10824	}
10825	return nil
10826}
10827
10828// SetApplicationId sets the ApplicationId field's value.
10829func (s *DeleteUserEndpointsInput) SetApplicationId(v string) *DeleteUserEndpointsInput {
10830	s.ApplicationId = &v
10831	return s
10832}
10833
10834// SetUserId sets the UserId field's value.
10835func (s *DeleteUserEndpointsInput) SetUserId(v string) *DeleteUserEndpointsInput {
10836	s.UserId = &v
10837	return s
10838}
10839
10840type DeleteUserEndpointsOutput struct {
10841	_ struct{} `type:"structure" payload:"EndpointsResponse"`
10842
10843	// List of endpoints
10844	//
10845	// EndpointsResponse is a required field
10846	EndpointsResponse *EndpointsResponse `type:"structure" required:"true"`
10847}
10848
10849// String returns the string representation
10850func (s DeleteUserEndpointsOutput) String() string {
10851	return awsutil.Prettify(s)
10852}
10853
10854// GoString returns the string representation
10855func (s DeleteUserEndpointsOutput) GoString() string {
10856	return s.String()
10857}
10858
10859// SetEndpointsResponse sets the EndpointsResponse field's value.
10860func (s *DeleteUserEndpointsOutput) SetEndpointsResponse(v *EndpointsResponse) *DeleteUserEndpointsOutput {
10861	s.EndpointsResponse = v
10862	return s
10863}
10864
10865// Message definitions for the default message and any messages that are tailored
10866// for specific channels.
10867type DirectMessageConfiguration struct {
10868	_ struct{} `type:"structure"`
10869
10870	// The message to ADM channels. Overrides the default push notification message.
10871	ADMMessage *ADMMessage `type:"structure"`
10872
10873	// The message to APNS channels. Overrides the default push notification message.
10874	APNSMessage *APNSMessage `type:"structure"`
10875
10876	// The message to Baidu GCM channels. Overrides the default push notification
10877	// message.
10878	BaiduMessage *BaiduMessage `type:"structure"`
10879
10880	// The default message for all channels.
10881	DefaultMessage *DefaultMessage `type:"structure"`
10882
10883	// The default push notification message for all push channels.
10884	DefaultPushNotificationMessage *DefaultPushNotificationMessage `type:"structure"`
10885
10886	// The message to GCM channels. Overrides the default push notification message.
10887	GCMMessage *GCMMessage `type:"structure"`
10888
10889	// The message to SMS channels. Overrides the default message.
10890	SMSMessage *SMSMessage `type:"structure"`
10891}
10892
10893// String returns the string representation
10894func (s DirectMessageConfiguration) String() string {
10895	return awsutil.Prettify(s)
10896}
10897
10898// GoString returns the string representation
10899func (s DirectMessageConfiguration) GoString() string {
10900	return s.String()
10901}
10902
10903// SetADMMessage sets the ADMMessage field's value.
10904func (s *DirectMessageConfiguration) SetADMMessage(v *ADMMessage) *DirectMessageConfiguration {
10905	s.ADMMessage = v
10906	return s
10907}
10908
10909// SetAPNSMessage sets the APNSMessage field's value.
10910func (s *DirectMessageConfiguration) SetAPNSMessage(v *APNSMessage) *DirectMessageConfiguration {
10911	s.APNSMessage = v
10912	return s
10913}
10914
10915// SetBaiduMessage sets the BaiduMessage field's value.
10916func (s *DirectMessageConfiguration) SetBaiduMessage(v *BaiduMessage) *DirectMessageConfiguration {
10917	s.BaiduMessage = v
10918	return s
10919}
10920
10921// SetDefaultMessage sets the DefaultMessage field's value.
10922func (s *DirectMessageConfiguration) SetDefaultMessage(v *DefaultMessage) *DirectMessageConfiguration {
10923	s.DefaultMessage = v
10924	return s
10925}
10926
10927// SetDefaultPushNotificationMessage sets the DefaultPushNotificationMessage field's value.
10928func (s *DirectMessageConfiguration) SetDefaultPushNotificationMessage(v *DefaultPushNotificationMessage) *DirectMessageConfiguration {
10929	s.DefaultPushNotificationMessage = v
10930	return s
10931}
10932
10933// SetGCMMessage sets the GCMMessage field's value.
10934func (s *DirectMessageConfiguration) SetGCMMessage(v *GCMMessage) *DirectMessageConfiguration {
10935	s.GCMMessage = v
10936	return s
10937}
10938
10939// SetSMSMessage sets the SMSMessage field's value.
10940func (s *DirectMessageConfiguration) SetSMSMessage(v *SMSMessage) *DirectMessageConfiguration {
10941	s.SMSMessage = v
10942	return s
10943}
10944
10945// Email Channel Request
10946type EmailChannelRequest struct {
10947	_ struct{} `type:"structure"`
10948
10949	// If the channel is enabled for sending messages.
10950	Enabled *bool `type:"boolean"`
10951
10952	// The email address used to send emails from.
10953	FromAddress *string `type:"string"`
10954
10955	// The ARN of an identity verified with SES.
10956	Identity *string `type:"string"`
10957
10958	// The ARN of an IAM Role used to submit events to Mobile Analytics' event ingestion
10959	// service
10960	RoleArn *string `type:"string"`
10961}
10962
10963// String returns the string representation
10964func (s EmailChannelRequest) String() string {
10965	return awsutil.Prettify(s)
10966}
10967
10968// GoString returns the string representation
10969func (s EmailChannelRequest) GoString() string {
10970	return s.String()
10971}
10972
10973// SetEnabled sets the Enabled field's value.
10974func (s *EmailChannelRequest) SetEnabled(v bool) *EmailChannelRequest {
10975	s.Enabled = &v
10976	return s
10977}
10978
10979// SetFromAddress sets the FromAddress field's value.
10980func (s *EmailChannelRequest) SetFromAddress(v string) *EmailChannelRequest {
10981	s.FromAddress = &v
10982	return s
10983}
10984
10985// SetIdentity sets the Identity field's value.
10986func (s *EmailChannelRequest) SetIdentity(v string) *EmailChannelRequest {
10987	s.Identity = &v
10988	return s
10989}
10990
10991// SetRoleArn sets the RoleArn field's value.
10992func (s *EmailChannelRequest) SetRoleArn(v string) *EmailChannelRequest {
10993	s.RoleArn = &v
10994	return s
10995}
10996
10997// Email Channel Response.
10998type EmailChannelResponse struct {
10999	_ struct{} `type:"structure"`
11000
11001	// The unique ID of the application to which the email channel belongs.
11002	ApplicationId *string `type:"string"`
11003
11004	// The date that the settings were last updated in ISO 8601 format.
11005	CreationDate *string `type:"string"`
11006
11007	// If the channel is enabled for sending messages.
11008	Enabled *bool `type:"boolean"`
11009
11010	// The email address used to send emails from.
11011	FromAddress *string `type:"string"`
11012
11013	// Not used. Retained for backwards compatibility.
11014	HasCredential *bool `type:"boolean"`
11015
11016	// Channel ID. Not used, only for backwards compatibility.
11017	Id *string `type:"string"`
11018
11019	// The ARN of an identity verified with SES.
11020	Identity *string `type:"string"`
11021
11022	// Is this channel archived
11023	IsArchived *bool `type:"boolean"`
11024
11025	// Who last updated this entry
11026	LastModifiedBy *string `type:"string"`
11027
11028	// Last date this was updated
11029	LastModifiedDate *string `type:"string"`
11030
11031	// Messages per second that can be sent
11032	MessagesPerSecond *int64 `type:"integer"`
11033
11034	// Platform type. Will be "EMAIL"
11035	Platform *string `type:"string"`
11036
11037	// The ARN of an IAM Role used to submit events to Mobile Analytics' event ingestion
11038	// service
11039	RoleArn *string `type:"string"`
11040
11041	// Version of channel
11042	Version *int64 `type:"integer"`
11043}
11044
11045// String returns the string representation
11046func (s EmailChannelResponse) String() string {
11047	return awsutil.Prettify(s)
11048}
11049
11050// GoString returns the string representation
11051func (s EmailChannelResponse) GoString() string {
11052	return s.String()
11053}
11054
11055// SetApplicationId sets the ApplicationId field's value.
11056func (s *EmailChannelResponse) SetApplicationId(v string) *EmailChannelResponse {
11057	s.ApplicationId = &v
11058	return s
11059}
11060
11061// SetCreationDate sets the CreationDate field's value.
11062func (s *EmailChannelResponse) SetCreationDate(v string) *EmailChannelResponse {
11063	s.CreationDate = &v
11064	return s
11065}
11066
11067// SetEnabled sets the Enabled field's value.
11068func (s *EmailChannelResponse) SetEnabled(v bool) *EmailChannelResponse {
11069	s.Enabled = &v
11070	return s
11071}
11072
11073// SetFromAddress sets the FromAddress field's value.
11074func (s *EmailChannelResponse) SetFromAddress(v string) *EmailChannelResponse {
11075	s.FromAddress = &v
11076	return s
11077}
11078
11079// SetHasCredential sets the HasCredential field's value.
11080func (s *EmailChannelResponse) SetHasCredential(v bool) *EmailChannelResponse {
11081	s.HasCredential = &v
11082	return s
11083}
11084
11085// SetId sets the Id field's value.
11086func (s *EmailChannelResponse) SetId(v string) *EmailChannelResponse {
11087	s.Id = &v
11088	return s
11089}
11090
11091// SetIdentity sets the Identity field's value.
11092func (s *EmailChannelResponse) SetIdentity(v string) *EmailChannelResponse {
11093	s.Identity = &v
11094	return s
11095}
11096
11097// SetIsArchived sets the IsArchived field's value.
11098func (s *EmailChannelResponse) SetIsArchived(v bool) *EmailChannelResponse {
11099	s.IsArchived = &v
11100	return s
11101}
11102
11103// SetLastModifiedBy sets the LastModifiedBy field's value.
11104func (s *EmailChannelResponse) SetLastModifiedBy(v string) *EmailChannelResponse {
11105	s.LastModifiedBy = &v
11106	return s
11107}
11108
11109// SetLastModifiedDate sets the LastModifiedDate field's value.
11110func (s *EmailChannelResponse) SetLastModifiedDate(v string) *EmailChannelResponse {
11111	s.LastModifiedDate = &v
11112	return s
11113}
11114
11115// SetMessagesPerSecond sets the MessagesPerSecond field's value.
11116func (s *EmailChannelResponse) SetMessagesPerSecond(v int64) *EmailChannelResponse {
11117	s.MessagesPerSecond = &v
11118	return s
11119}
11120
11121// SetPlatform sets the Platform field's value.
11122func (s *EmailChannelResponse) SetPlatform(v string) *EmailChannelResponse {
11123	s.Platform = &v
11124	return s
11125}
11126
11127// SetRoleArn sets the RoleArn field's value.
11128func (s *EmailChannelResponse) SetRoleArn(v string) *EmailChannelResponse {
11129	s.RoleArn = &v
11130	return s
11131}
11132
11133// SetVersion sets the Version field's value.
11134func (s *EmailChannelResponse) SetVersion(v int64) *EmailChannelResponse {
11135	s.Version = &v
11136	return s
11137}
11138
11139// Endpoint update request
11140type EndpointBatchItem struct {
11141	_ struct{} `type:"structure"`
11142
11143	// The destination for messages that you send to this endpoint. The address
11144	// varies by channel. For mobile push channels, use the token provided by the
11145	// push notification service, such as the APNs device token or the FCM registration
11146	// token. For the SMS channel, use a phone number in E.164 format, such as +12065550100.
11147	// For the email channel, use an email address.
11148	Address *string `type:"string"`
11149
11150	// Custom attributes that describe the endpoint by associating a name with an
11151	// array of values. For example, an attribute named "interests" might have the
11152	// values ["science", "politics", "travel"]. You can use these attributes as
11153	// selection criteria when you create a segment of users to engage with a messaging
11154	// campaign.The following characters are not recommended in attribute names:
11155	// # : ? \ /. The Amazon Pinpoint console does not display attributes that include
11156	// these characters in the name. This limitation does not apply to attribute
11157	// values.
11158	Attributes map[string][]*string `type:"map"`
11159
11160	// The channel type.Valid values: GCM | APNS | APNS_SANDBOX | APNS_VOIP | APNS_VOIP_SANDBOX
11161	// | ADM | SMS | EMAIL | BAIDU
11162	ChannelType *string `type:"string" enum:"ChannelType"`
11163
11164	// The endpoint demographic attributes.
11165	Demographic *EndpointDemographic `type:"structure"`
11166
11167	// The last time the endpoint was updated. Provided in ISO 8601 format.
11168	EffectiveDate *string `type:"string"`
11169
11170	// Unused.
11171	EndpointStatus *string `type:"string"`
11172
11173	// The unique Id for the Endpoint in the batch.
11174	Id *string `type:"string"`
11175
11176	// The endpoint location attributes.
11177	Location *EndpointLocation `type:"structure"`
11178
11179	// Custom metrics that your app reports to Amazon Pinpoint.
11180	Metrics map[string]*float64 `type:"map"`
11181
11182	// Indicates whether a user has opted out of receiving messages with one of
11183	// the following values:ALL - User has opted out of all messages.NONE - Users
11184	// has not opted out and receives all messages.
11185	OptOut *string `type:"string"`
11186
11187	// The unique ID for the most recent request to update the endpoint.
11188	RequestId *string `type:"string"`
11189
11190	// Custom user-specific attributes that your app reports to Amazon Pinpoint.
11191	User *EndpointUser `type:"structure"`
11192}
11193
11194// String returns the string representation
11195func (s EndpointBatchItem) String() string {
11196	return awsutil.Prettify(s)
11197}
11198
11199// GoString returns the string representation
11200func (s EndpointBatchItem) GoString() string {
11201	return s.String()
11202}
11203
11204// SetAddress sets the Address field's value.
11205func (s *EndpointBatchItem) SetAddress(v string) *EndpointBatchItem {
11206	s.Address = &v
11207	return s
11208}
11209
11210// SetAttributes sets the Attributes field's value.
11211func (s *EndpointBatchItem) SetAttributes(v map[string][]*string) *EndpointBatchItem {
11212	s.Attributes = v
11213	return s
11214}
11215
11216// SetChannelType sets the ChannelType field's value.
11217func (s *EndpointBatchItem) SetChannelType(v string) *EndpointBatchItem {
11218	s.ChannelType = &v
11219	return s
11220}
11221
11222// SetDemographic sets the Demographic field's value.
11223func (s *EndpointBatchItem) SetDemographic(v *EndpointDemographic) *EndpointBatchItem {
11224	s.Demographic = v
11225	return s
11226}
11227
11228// SetEffectiveDate sets the EffectiveDate field's value.
11229func (s *EndpointBatchItem) SetEffectiveDate(v string) *EndpointBatchItem {
11230	s.EffectiveDate = &v
11231	return s
11232}
11233
11234// SetEndpointStatus sets the EndpointStatus field's value.
11235func (s *EndpointBatchItem) SetEndpointStatus(v string) *EndpointBatchItem {
11236	s.EndpointStatus = &v
11237	return s
11238}
11239
11240// SetId sets the Id field's value.
11241func (s *EndpointBatchItem) SetId(v string) *EndpointBatchItem {
11242	s.Id = &v
11243	return s
11244}
11245
11246// SetLocation sets the Location field's value.
11247func (s *EndpointBatchItem) SetLocation(v *EndpointLocation) *EndpointBatchItem {
11248	s.Location = v
11249	return s
11250}
11251
11252// SetMetrics sets the Metrics field's value.
11253func (s *EndpointBatchItem) SetMetrics(v map[string]*float64) *EndpointBatchItem {
11254	s.Metrics = v
11255	return s
11256}
11257
11258// SetOptOut sets the OptOut field's value.
11259func (s *EndpointBatchItem) SetOptOut(v string) *EndpointBatchItem {
11260	s.OptOut = &v
11261	return s
11262}
11263
11264// SetRequestId sets the RequestId field's value.
11265func (s *EndpointBatchItem) SetRequestId(v string) *EndpointBatchItem {
11266	s.RequestId = &v
11267	return s
11268}
11269
11270// SetUser sets the User field's value.
11271func (s *EndpointBatchItem) SetUser(v *EndpointUser) *EndpointBatchItem {
11272	s.User = v
11273	return s
11274}
11275
11276// Endpoint batch update request.
11277type EndpointBatchRequest struct {
11278	_ struct{} `type:"structure"`
11279
11280	// List of items to update. Maximum 100 items
11281	Item []*EndpointBatchItem `type:"list"`
11282}
11283
11284// String returns the string representation
11285func (s EndpointBatchRequest) String() string {
11286	return awsutil.Prettify(s)
11287}
11288
11289// GoString returns the string representation
11290func (s EndpointBatchRequest) GoString() string {
11291	return s.String()
11292}
11293
11294// SetItem sets the Item field's value.
11295func (s *EndpointBatchRequest) SetItem(v []*EndpointBatchItem) *EndpointBatchRequest {
11296	s.Item = v
11297	return s
11298}
11299
11300// Demographic information about the endpoint.
11301type EndpointDemographic struct {
11302	_ struct{} `type:"structure"`
11303
11304	// The version of the application associated with the endpoint.
11305	AppVersion *string `type:"string"`
11306
11307	// The endpoint locale in the following format: The ISO 639-1 alpha-2 code,
11308	// followed by an underscore, followed by an ISO 3166-1 alpha-2 value.
11309	Locale *string `type:"string"`
11310
11311	// The manufacturer of the endpoint device, such as Apple or Samsung.
11312	Make *string `type:"string"`
11313
11314	// The model name or number of the endpoint device, such as iPhone.
11315	Model *string `type:"string"`
11316
11317	// The model version of the endpoint device.
11318	ModelVersion *string `type:"string"`
11319
11320	// The platform of the endpoint device, such as iOS or Android.
11321	Platform *string `type:"string"`
11322
11323	// The platform version of the endpoint device.
11324	PlatformVersion *string `type:"string"`
11325
11326	// The timezone of the endpoint. Specified as a tz database value, such as Americas/Los_Angeles.
11327	Timezone *string `type:"string"`
11328}
11329
11330// String returns the string representation
11331func (s EndpointDemographic) String() string {
11332	return awsutil.Prettify(s)
11333}
11334
11335// GoString returns the string representation
11336func (s EndpointDemographic) GoString() string {
11337	return s.String()
11338}
11339
11340// SetAppVersion sets the AppVersion field's value.
11341func (s *EndpointDemographic) SetAppVersion(v string) *EndpointDemographic {
11342	s.AppVersion = &v
11343	return s
11344}
11345
11346// SetLocale sets the Locale field's value.
11347func (s *EndpointDemographic) SetLocale(v string) *EndpointDemographic {
11348	s.Locale = &v
11349	return s
11350}
11351
11352// SetMake sets the Make field's value.
11353func (s *EndpointDemographic) SetMake(v string) *EndpointDemographic {
11354	s.Make = &v
11355	return s
11356}
11357
11358// SetModel sets the Model field's value.
11359func (s *EndpointDemographic) SetModel(v string) *EndpointDemographic {
11360	s.Model = &v
11361	return s
11362}
11363
11364// SetModelVersion sets the ModelVersion field's value.
11365func (s *EndpointDemographic) SetModelVersion(v string) *EndpointDemographic {
11366	s.ModelVersion = &v
11367	return s
11368}
11369
11370// SetPlatform sets the Platform field's value.
11371func (s *EndpointDemographic) SetPlatform(v string) *EndpointDemographic {
11372	s.Platform = &v
11373	return s
11374}
11375
11376// SetPlatformVersion sets the PlatformVersion field's value.
11377func (s *EndpointDemographic) SetPlatformVersion(v string) *EndpointDemographic {
11378	s.PlatformVersion = &v
11379	return s
11380}
11381
11382// SetTimezone sets the Timezone field's value.
11383func (s *EndpointDemographic) SetTimezone(v string) *EndpointDemographic {
11384	s.Timezone = &v
11385	return s
11386}
11387
11388// The responses that are returned after you create or update an endpoint and
11389// record an event.
11390type EndpointItemResponse struct {
11391	_ struct{} `type:"structure"`
11392
11393	// A custom message associated with the registration of an endpoint when issuing
11394	// a response.
11395	Message *string `type:"string"`
11396
11397	// The status code to respond with for a particular endpoint id after endpoint
11398	// registration
11399	StatusCode *int64 `type:"integer"`
11400}
11401
11402// String returns the string representation
11403func (s EndpointItemResponse) String() string {
11404	return awsutil.Prettify(s)
11405}
11406
11407// GoString returns the string representation
11408func (s EndpointItemResponse) GoString() string {
11409	return s.String()
11410}
11411
11412// SetMessage sets the Message field's value.
11413func (s *EndpointItemResponse) SetMessage(v string) *EndpointItemResponse {
11414	s.Message = &v
11415	return s
11416}
11417
11418// SetStatusCode sets the StatusCode field's value.
11419func (s *EndpointItemResponse) SetStatusCode(v int64) *EndpointItemResponse {
11420	s.StatusCode = &v
11421	return s
11422}
11423
11424// Location data for the endpoint.
11425type EndpointLocation struct {
11426	_ struct{} `type:"structure"`
11427
11428	// The city where the endpoint is located.
11429	City *string `type:"string"`
11430
11431	// The two-letter code for the country or region of the endpoint. Specified
11432	// as an ISO 3166-1 Alpha-2 code, such as "US" for the United States.
11433	Country *string `type:"string"`
11434
11435	// The latitude of the endpoint location, rounded to one decimal place.
11436	Latitude *float64 `type:"double"`
11437
11438	// The longitude of the endpoint location, rounded to one decimal place.
11439	Longitude *float64 `type:"double"`
11440
11441	// The postal code or zip code of the endpoint.
11442	PostalCode *string `type:"string"`
11443
11444	// The region of the endpoint location. For example, in the United States, this
11445	// corresponds to a state.
11446	Region *string `type:"string"`
11447}
11448
11449// String returns the string representation
11450func (s EndpointLocation) String() string {
11451	return awsutil.Prettify(s)
11452}
11453
11454// GoString returns the string representation
11455func (s EndpointLocation) GoString() string {
11456	return s.String()
11457}
11458
11459// SetCity sets the City field's value.
11460func (s *EndpointLocation) SetCity(v string) *EndpointLocation {
11461	s.City = &v
11462	return s
11463}
11464
11465// SetCountry sets the Country field's value.
11466func (s *EndpointLocation) SetCountry(v string) *EndpointLocation {
11467	s.Country = &v
11468	return s
11469}
11470
11471// SetLatitude sets the Latitude field's value.
11472func (s *EndpointLocation) SetLatitude(v float64) *EndpointLocation {
11473	s.Latitude = &v
11474	return s
11475}
11476
11477// SetLongitude sets the Longitude field's value.
11478func (s *EndpointLocation) SetLongitude(v float64) *EndpointLocation {
11479	s.Longitude = &v
11480	return s
11481}
11482
11483// SetPostalCode sets the PostalCode field's value.
11484func (s *EndpointLocation) SetPostalCode(v string) *EndpointLocation {
11485	s.PostalCode = &v
11486	return s
11487}
11488
11489// SetRegion sets the Region field's value.
11490func (s *EndpointLocation) SetRegion(v string) *EndpointLocation {
11491	s.Region = &v
11492	return s
11493}
11494
11495// The result from sending a message to an endpoint.
11496type EndpointMessageResult struct {
11497	_ struct{} `type:"structure"`
11498
11499	// Address that endpoint message was delivered to.
11500	Address *string `type:"string"`
11501
11502	// The delivery status of the message. Possible values:SUCCESS - The message
11503	// was successfully delivered to the endpoint.TRANSIENT_FAILURE - A temporary
11504	// error occurred. Amazon Pinpoint will attempt to deliver the message again
11505	// later.FAILURE_PERMANENT - An error occurred when delivering the message to
11506	// the endpoint. Amazon Pinpoint won't attempt to send the message again.TIMEOUT
11507	// - The message couldn't be sent within the timeout period.QUIET_TIME - The
11508	// local time for the endpoint was within the Quiet Hours for the campaign.DAILY_CAP
11509	// - The endpoint has received the maximum number of messages it can receive
11510	// within a 24-hour period.HOLDOUT - The endpoint was in a hold out treatment
11511	// for the campaign.THROTTLED - Amazon Pinpoint throttled sending to this endpoint.EXPIRED
11512	// - The endpoint address is expired.CAMPAIGN_CAP - The endpoint received the
11513	// maximum number of messages allowed by the campaign.SERVICE_FAILURE - A service-level
11514	// failure prevented Amazon Pinpoint from delivering the message.UNKNOWN - An
11515	// unknown error occurred.
11516	DeliveryStatus *string `type:"string" enum:"DeliveryStatus"`
11517
11518	// Unique message identifier associated with the message that was sent.
11519	MessageId *string `type:"string"`
11520
11521	// Downstream service status code.
11522	StatusCode *int64 `type:"integer"`
11523
11524	// Status message for message delivery.
11525	StatusMessage *string `type:"string"`
11526
11527	// If token was updated as part of delivery. (This is GCM Specific)
11528	UpdatedToken *string `type:"string"`
11529}
11530
11531// String returns the string representation
11532func (s EndpointMessageResult) String() string {
11533	return awsutil.Prettify(s)
11534}
11535
11536// GoString returns the string representation
11537func (s EndpointMessageResult) GoString() string {
11538	return s.String()
11539}
11540
11541// SetAddress sets the Address field's value.
11542func (s *EndpointMessageResult) SetAddress(v string) *EndpointMessageResult {
11543	s.Address = &v
11544	return s
11545}
11546
11547// SetDeliveryStatus sets the DeliveryStatus field's value.
11548func (s *EndpointMessageResult) SetDeliveryStatus(v string) *EndpointMessageResult {
11549	s.DeliveryStatus = &v
11550	return s
11551}
11552
11553// SetMessageId sets the MessageId field's value.
11554func (s *EndpointMessageResult) SetMessageId(v string) *EndpointMessageResult {
11555	s.MessageId = &v
11556	return s
11557}
11558
11559// SetStatusCode sets the StatusCode field's value.
11560func (s *EndpointMessageResult) SetStatusCode(v int64) *EndpointMessageResult {
11561	s.StatusCode = &v
11562	return s
11563}
11564
11565// SetStatusMessage sets the StatusMessage field's value.
11566func (s *EndpointMessageResult) SetStatusMessage(v string) *EndpointMessageResult {
11567	s.StatusMessage = &v
11568	return s
11569}
11570
11571// SetUpdatedToken sets the UpdatedToken field's value.
11572func (s *EndpointMessageResult) SetUpdatedToken(v string) *EndpointMessageResult {
11573	s.UpdatedToken = &v
11574	return s
11575}
11576
11577// Endpoint update request
11578type EndpointRequest struct {
11579	_ struct{} `type:"structure"`
11580
11581	// The destination for messages that you send to this endpoint. The address
11582	// varies by channel. For mobile push channels, use the token provided by the
11583	// push notification service, such as the APNs device token or the FCM registration
11584	// token. For the SMS channel, use a phone number in E.164 format, such as +12065550100.
11585	// For the email channel, use an email address.
11586	Address *string `type:"string"`
11587
11588	// Custom attributes that describe the endpoint by associating a name with an
11589	// array of values. For example, an attribute named "interests" might have the
11590	// values ["science", "politics", "travel"]. You can use these attributes as
11591	// selection criteria when you create a segment of users to engage with a messaging
11592	// campaign.The following characters are not recommended in attribute names:
11593	// # : ? \ /. The Amazon Pinpoint console does not display attributes that include
11594	// these characters in the name. This limitation does not apply to attribute
11595	// values.
11596	Attributes map[string][]*string `type:"map"`
11597
11598	// The channel type.Valid values: GCM | APNS | APNS_SANDBOX | APNS_VOIP | APNS_VOIP_SANDBOX
11599	// | ADM | SMS | EMAIL | BAIDU
11600	ChannelType *string `type:"string" enum:"ChannelType"`
11601
11602	// Demographic attributes for the endpoint.
11603	Demographic *EndpointDemographic `type:"structure"`
11604
11605	// The date and time when the endpoint was updated, shown in ISO 8601 format.
11606	EffectiveDate *string `type:"string"`
11607
11608	// Unused.
11609	EndpointStatus *string `type:"string"`
11610
11611	// The endpoint location attributes.
11612	Location *EndpointLocation `type:"structure"`
11613
11614	// Custom metrics that your app reports to Amazon Pinpoint.
11615	Metrics map[string]*float64 `type:"map"`
11616
11617	// Indicates whether a user has opted out of receiving messages with one of
11618	// the following values:ALL - User has opted out of all messages.NONE - Users
11619	// has not opted out and receives all messages.
11620	OptOut *string `type:"string"`
11621
11622	// The unique ID for the most recent request to update the endpoint.
11623	RequestId *string `type:"string"`
11624
11625	// Custom user-specific attributes that your app reports to Amazon Pinpoint.
11626	User *EndpointUser `type:"structure"`
11627}
11628
11629// String returns the string representation
11630func (s EndpointRequest) String() string {
11631	return awsutil.Prettify(s)
11632}
11633
11634// GoString returns the string representation
11635func (s EndpointRequest) GoString() string {
11636	return s.String()
11637}
11638
11639// SetAddress sets the Address field's value.
11640func (s *EndpointRequest) SetAddress(v string) *EndpointRequest {
11641	s.Address = &v
11642	return s
11643}
11644
11645// SetAttributes sets the Attributes field's value.
11646func (s *EndpointRequest) SetAttributes(v map[string][]*string) *EndpointRequest {
11647	s.Attributes = v
11648	return s
11649}
11650
11651// SetChannelType sets the ChannelType field's value.
11652func (s *EndpointRequest) SetChannelType(v string) *EndpointRequest {
11653	s.ChannelType = &v
11654	return s
11655}
11656
11657// SetDemographic sets the Demographic field's value.
11658func (s *EndpointRequest) SetDemographic(v *EndpointDemographic) *EndpointRequest {
11659	s.Demographic = v
11660	return s
11661}
11662
11663// SetEffectiveDate sets the EffectiveDate field's value.
11664func (s *EndpointRequest) SetEffectiveDate(v string) *EndpointRequest {
11665	s.EffectiveDate = &v
11666	return s
11667}
11668
11669// SetEndpointStatus sets the EndpointStatus field's value.
11670func (s *EndpointRequest) SetEndpointStatus(v string) *EndpointRequest {
11671	s.EndpointStatus = &v
11672	return s
11673}
11674
11675// SetLocation sets the Location field's value.
11676func (s *EndpointRequest) SetLocation(v *EndpointLocation) *EndpointRequest {
11677	s.Location = v
11678	return s
11679}
11680
11681// SetMetrics sets the Metrics field's value.
11682func (s *EndpointRequest) SetMetrics(v map[string]*float64) *EndpointRequest {
11683	s.Metrics = v
11684	return s
11685}
11686
11687// SetOptOut sets the OptOut field's value.
11688func (s *EndpointRequest) SetOptOut(v string) *EndpointRequest {
11689	s.OptOut = &v
11690	return s
11691}
11692
11693// SetRequestId sets the RequestId field's value.
11694func (s *EndpointRequest) SetRequestId(v string) *EndpointRequest {
11695	s.RequestId = &v
11696	return s
11697}
11698
11699// SetUser sets the User field's value.
11700func (s *EndpointRequest) SetUser(v *EndpointUser) *EndpointRequest {
11701	s.User = v
11702	return s
11703}
11704
11705// Endpoint response
11706type EndpointResponse struct {
11707	_ struct{} `type:"structure"`
11708
11709	// The address of the endpoint as provided by your push provider. For example,
11710	// the DeviceToken or RegistrationId.
11711	Address *string `type:"string"`
11712
11713	// The ID of the application that is associated with the endpoint.
11714	ApplicationId *string `type:"string"`
11715
11716	// Custom attributes that describe the endpoint by associating a name with an
11717	// array of values. For example, an attribute named "interests" might have the
11718	// following values: ["science", "politics", "travel"]. You can use these attributes
11719	// as selection criteria when you create segments.The Amazon Pinpoint console
11720	// can't display attribute names that include the following characters: hash/pound
11721	// sign (#), colon (:), question mark (?), backslash (\), and forward slash
11722	// (/). For this reason, you should avoid using these characters in the names
11723	// of custom attributes.
11724	Attributes map[string][]*string `type:"map"`
11725
11726	// The channel type.Valid values: GCM | APNS | APNS_SANDBOX | APNS_VOIP | APNS_VOIP_SANDBOX
11727	// | ADM | SMS | EMAIL | BAIDU
11728	ChannelType *string `type:"string" enum:"ChannelType"`
11729
11730	// A number from 0-99 that represents the cohort the endpoint is assigned to.
11731	// Endpoints are grouped into cohorts randomly, and each cohort contains approximately
11732	// 1 percent of the endpoints for an app. Amazon Pinpoint assigns cohorts to
11733	// the holdout or treatment allocations for a campaign.
11734	CohortId *string `type:"string"`
11735
11736	// The date and time when the endpoint was created, shown in ISO 8601 format.
11737	CreationDate *string `type:"string"`
11738
11739	// The endpoint demographic attributes.
11740	Demographic *EndpointDemographic `type:"structure"`
11741
11742	// The date and time when the endpoint was last updated, shown in ISO 8601 format.
11743	EffectiveDate *string `type:"string"`
11744
11745	// Unused.
11746	EndpointStatus *string `type:"string"`
11747
11748	// The unique ID that you assigned to the endpoint. The ID should be a globally
11749	// unique identifier (GUID) to ensure that it doesn't conflict with other endpoint
11750	// IDs associated with the application.
11751	Id *string `type:"string"`
11752
11753	// The endpoint location attributes.
11754	Location *EndpointLocation `type:"structure"`
11755
11756	// Custom metrics that your app reports to Amazon Pinpoint.
11757	Metrics map[string]*float64 `type:"map"`
11758
11759	// Indicates whether a user has opted out of receiving messages with one of
11760	// the following values:ALL - User has opted out of all messages.NONE - Users
11761	// has not opted out and receives all messages.
11762	OptOut *string `type:"string"`
11763
11764	// The unique ID for the most recent request to update the endpoint.
11765	RequestId *string `type:"string"`
11766
11767	// Custom user-specific attributes that your app reports to Amazon Pinpoint.
11768	User *EndpointUser `type:"structure"`
11769}
11770
11771// String returns the string representation
11772func (s EndpointResponse) String() string {
11773	return awsutil.Prettify(s)
11774}
11775
11776// GoString returns the string representation
11777func (s EndpointResponse) GoString() string {
11778	return s.String()
11779}
11780
11781// SetAddress sets the Address field's value.
11782func (s *EndpointResponse) SetAddress(v string) *EndpointResponse {
11783	s.Address = &v
11784	return s
11785}
11786
11787// SetApplicationId sets the ApplicationId field's value.
11788func (s *EndpointResponse) SetApplicationId(v string) *EndpointResponse {
11789	s.ApplicationId = &v
11790	return s
11791}
11792
11793// SetAttributes sets the Attributes field's value.
11794func (s *EndpointResponse) SetAttributes(v map[string][]*string) *EndpointResponse {
11795	s.Attributes = v
11796	return s
11797}
11798
11799// SetChannelType sets the ChannelType field's value.
11800func (s *EndpointResponse) SetChannelType(v string) *EndpointResponse {
11801	s.ChannelType = &v
11802	return s
11803}
11804
11805// SetCohortId sets the CohortId field's value.
11806func (s *EndpointResponse) SetCohortId(v string) *EndpointResponse {
11807	s.CohortId = &v
11808	return s
11809}
11810
11811// SetCreationDate sets the CreationDate field's value.
11812func (s *EndpointResponse) SetCreationDate(v string) *EndpointResponse {
11813	s.CreationDate = &v
11814	return s
11815}
11816
11817// SetDemographic sets the Demographic field's value.
11818func (s *EndpointResponse) SetDemographic(v *EndpointDemographic) *EndpointResponse {
11819	s.Demographic = v
11820	return s
11821}
11822
11823// SetEffectiveDate sets the EffectiveDate field's value.
11824func (s *EndpointResponse) SetEffectiveDate(v string) *EndpointResponse {
11825	s.EffectiveDate = &v
11826	return s
11827}
11828
11829// SetEndpointStatus sets the EndpointStatus field's value.
11830func (s *EndpointResponse) SetEndpointStatus(v string) *EndpointResponse {
11831	s.EndpointStatus = &v
11832	return s
11833}
11834
11835// SetId sets the Id field's value.
11836func (s *EndpointResponse) SetId(v string) *EndpointResponse {
11837	s.Id = &v
11838	return s
11839}
11840
11841// SetLocation sets the Location field's value.
11842func (s *EndpointResponse) SetLocation(v *EndpointLocation) *EndpointResponse {
11843	s.Location = v
11844	return s
11845}
11846
11847// SetMetrics sets the Metrics field's value.
11848func (s *EndpointResponse) SetMetrics(v map[string]*float64) *EndpointResponse {
11849	s.Metrics = v
11850	return s
11851}
11852
11853// SetOptOut sets the OptOut field's value.
11854func (s *EndpointResponse) SetOptOut(v string) *EndpointResponse {
11855	s.OptOut = &v
11856	return s
11857}
11858
11859// SetRequestId sets the RequestId field's value.
11860func (s *EndpointResponse) SetRequestId(v string) *EndpointResponse {
11861	s.RequestId = &v
11862	return s
11863}
11864
11865// SetUser sets the User field's value.
11866func (s *EndpointResponse) SetUser(v *EndpointUser) *EndpointResponse {
11867	s.User = v
11868	return s
11869}
11870
11871// Endpoint send configuration.
11872type EndpointSendConfiguration struct {
11873	_ struct{} `type:"structure"`
11874
11875	// Body override. If specified will override default body.
11876	BodyOverride *string `type:"string"`
11877
11878	// A map of custom attributes to attributes to be attached to the message for
11879	// this address. This payload is added to the push notification's 'data.pinpoint'
11880	// object or added to the email/sms delivery receipt event attributes.
11881	Context map[string]*string `type:"map"`
11882
11883	// The Raw JSON formatted string to be used as the payload. This value overrides
11884	// the message.
11885	RawContent *string `type:"string"`
11886
11887	// A map of substitution values for the message to be merged with the DefaultMessage's
11888	// substitutions. Substitutions on this map take precedence over the all other
11889	// substitutions.
11890	Substitutions map[string][]*string `type:"map"`
11891
11892	// Title override. If specified will override default title if applicable.
11893	TitleOverride *string `type:"string"`
11894}
11895
11896// String returns the string representation
11897func (s EndpointSendConfiguration) String() string {
11898	return awsutil.Prettify(s)
11899}
11900
11901// GoString returns the string representation
11902func (s EndpointSendConfiguration) GoString() string {
11903	return s.String()
11904}
11905
11906// SetBodyOverride sets the BodyOverride field's value.
11907func (s *EndpointSendConfiguration) SetBodyOverride(v string) *EndpointSendConfiguration {
11908	s.BodyOverride = &v
11909	return s
11910}
11911
11912// SetContext sets the Context field's value.
11913func (s *EndpointSendConfiguration) SetContext(v map[string]*string) *EndpointSendConfiguration {
11914	s.Context = v
11915	return s
11916}
11917
11918// SetRawContent sets the RawContent field's value.
11919func (s *EndpointSendConfiguration) SetRawContent(v string) *EndpointSendConfiguration {
11920	s.RawContent = &v
11921	return s
11922}
11923
11924// SetSubstitutions sets the Substitutions field's value.
11925func (s *EndpointSendConfiguration) SetSubstitutions(v map[string][]*string) *EndpointSendConfiguration {
11926	s.Substitutions = v
11927	return s
11928}
11929
11930// SetTitleOverride sets the TitleOverride field's value.
11931func (s *EndpointSendConfiguration) SetTitleOverride(v string) *EndpointSendConfiguration {
11932	s.TitleOverride = &v
11933	return s
11934}
11935
11936// Endpoint user specific custom userAttributes
11937type EndpointUser struct {
11938	_ struct{} `type:"structure"`
11939
11940	// Custom attributes that describe the user by associating a name with an array
11941	// of values. For example, an attribute named "interests" might have the following
11942	// values: ["science", "politics", "travel"]. You can use these attributes as
11943	// selection criteria when you create segments.The Amazon Pinpoint console can't
11944	// display attribute names that include the following characters: hash/pound
11945	// sign (#), colon (:), question mark (?), backslash (\), and forward slash
11946	// (/). For this reason, you should avoid using these characters in the names
11947	// of custom attributes.
11948	UserAttributes map[string][]*string `type:"map"`
11949
11950	// The unique ID of the user.
11951	UserId *string `type:"string"`
11952}
11953
11954// String returns the string representation
11955func (s EndpointUser) String() string {
11956	return awsutil.Prettify(s)
11957}
11958
11959// GoString returns the string representation
11960func (s EndpointUser) GoString() string {
11961	return s.String()
11962}
11963
11964// SetUserAttributes sets the UserAttributes field's value.
11965func (s *EndpointUser) SetUserAttributes(v map[string][]*string) *EndpointUser {
11966	s.UserAttributes = v
11967	return s
11968}
11969
11970// SetUserId sets the UserId field's value.
11971func (s *EndpointUser) SetUserId(v string) *EndpointUser {
11972	s.UserId = &v
11973	return s
11974}
11975
11976// List of endpoints
11977type EndpointsResponse struct {
11978	_ struct{} `type:"structure"`
11979
11980	// The list of endpoints.
11981	Item []*EndpointResponse `type:"list"`
11982}
11983
11984// String returns the string representation
11985func (s EndpointsResponse) String() string {
11986	return awsutil.Prettify(s)
11987}
11988
11989// GoString returns the string representation
11990func (s EndpointsResponse) GoString() string {
11991	return s.String()
11992}
11993
11994// SetItem sets the Item field's value.
11995func (s *EndpointsResponse) SetItem(v []*EndpointResponse) *EndpointsResponse {
11996	s.Item = v
11997	return s
11998}
11999
12000// Model for creating or updating events.
12001type Event struct {
12002	_ struct{} `type:"structure"`
12003
12004	// Custom attributes that are associated with the event you're adding or updating.
12005	Attributes map[string]*string `type:"map"`
12006
12007	// The version of the SDK that's running on the client device.
12008	ClientSdkVersion *string `type:"string"`
12009
12010	// The name of the custom event that you're recording.
12011	EventType *string `type:"string"`
12012
12013	// Event metrics
12014	Metrics map[string]*float64 `type:"map"`
12015
12016	// The session
12017	Session *Session `type:"structure"`
12018
12019	// The date and time when the event occurred, in ISO 8601 format.
12020	Timestamp *string `type:"string"`
12021}
12022
12023// String returns the string representation
12024func (s Event) String() string {
12025	return awsutil.Prettify(s)
12026}
12027
12028// GoString returns the string representation
12029func (s Event) GoString() string {
12030	return s.String()
12031}
12032
12033// SetAttributes sets the Attributes field's value.
12034func (s *Event) SetAttributes(v map[string]*string) *Event {
12035	s.Attributes = v
12036	return s
12037}
12038
12039// SetClientSdkVersion sets the ClientSdkVersion field's value.
12040func (s *Event) SetClientSdkVersion(v string) *Event {
12041	s.ClientSdkVersion = &v
12042	return s
12043}
12044
12045// SetEventType sets the EventType field's value.
12046func (s *Event) SetEventType(v string) *Event {
12047	s.EventType = &v
12048	return s
12049}
12050
12051// SetMetrics sets the Metrics field's value.
12052func (s *Event) SetMetrics(v map[string]*float64) *Event {
12053	s.Metrics = v
12054	return s
12055}
12056
12057// SetSession sets the Session field's value.
12058func (s *Event) SetSession(v *Session) *Event {
12059	s.Session = v
12060	return s
12061}
12062
12063// SetTimestamp sets the Timestamp field's value.
12064func (s *Event) SetTimestamp(v string) *Event {
12065	s.Timestamp = &v
12066	return s
12067}
12068
12069// The responses that are returned after you record an event.
12070type EventItemResponse struct {
12071	_ struct{} `type:"structure"`
12072
12073	// A custom message that is associated with the processing of an event.
12074	Message *string `type:"string"`
12075
12076	// The status code to respond with for a particular event id
12077	StatusCode *int64 `type:"integer"`
12078}
12079
12080// String returns the string representation
12081func (s EventItemResponse) String() string {
12082	return awsutil.Prettify(s)
12083}
12084
12085// GoString returns the string representation
12086func (s EventItemResponse) GoString() string {
12087	return s.String()
12088}
12089
12090// SetMessage sets the Message field's value.
12091func (s *EventItemResponse) SetMessage(v string) *EventItemResponse {
12092	s.Message = &v
12093	return s
12094}
12095
12096// SetStatusCode sets the StatusCode field's value.
12097func (s *EventItemResponse) SetStatusCode(v int64) *EventItemResponse {
12098	s.StatusCode = &v
12099	return s
12100}
12101
12102// Model for an event publishing subscription export.
12103type EventStream struct {
12104	_ struct{} `type:"structure"`
12105
12106	// The ID of the application from which events should be published.
12107	ApplicationId *string `type:"string"`
12108
12109	// The Amazon Resource Name (ARN) of the Amazon Kinesis stream or Firehose delivery
12110	// stream to which you want to publish events. Firehose ARN: arn:aws:firehose:REGION:ACCOUNT_ID:deliverystream/STREAM_NAME
12111	// Kinesis ARN: arn:aws:kinesis:REGION:ACCOUNT_ID:stream/STREAM_NAME
12112	DestinationStreamArn *string `type:"string"`
12113
12114	// (Deprecated) Your AWS account ID, which you assigned to the ExternalID key
12115	// in an IAM trust policy. Used by Amazon Pinpoint to assume an IAM role. This
12116	// requirement is removed, and external IDs are not recommended for IAM roles
12117	// assumed by Amazon Pinpoint.
12118	ExternalId *string `type:"string"`
12119
12120	// The date the event stream was last updated in ISO 8601 format.
12121	LastModifiedDate *string `type:"string"`
12122
12123	// The IAM user who last modified the event stream.
12124	LastUpdatedBy *string `type:"string"`
12125
12126	// The IAM role that authorizes Amazon Pinpoint to publish events to the stream
12127	// in your account.
12128	RoleArn *string `type:"string"`
12129}
12130
12131// String returns the string representation
12132func (s EventStream) String() string {
12133	return awsutil.Prettify(s)
12134}
12135
12136// GoString returns the string representation
12137func (s EventStream) GoString() string {
12138	return s.String()
12139}
12140
12141// SetApplicationId sets the ApplicationId field's value.
12142func (s *EventStream) SetApplicationId(v string) *EventStream {
12143	s.ApplicationId = &v
12144	return s
12145}
12146
12147// SetDestinationStreamArn sets the DestinationStreamArn field's value.
12148func (s *EventStream) SetDestinationStreamArn(v string) *EventStream {
12149	s.DestinationStreamArn = &v
12150	return s
12151}
12152
12153// SetExternalId sets the ExternalId field's value.
12154func (s *EventStream) SetExternalId(v string) *EventStream {
12155	s.ExternalId = &v
12156	return s
12157}
12158
12159// SetLastModifiedDate sets the LastModifiedDate field's value.
12160func (s *EventStream) SetLastModifiedDate(v string) *EventStream {
12161	s.LastModifiedDate = &v
12162	return s
12163}
12164
12165// SetLastUpdatedBy sets the LastUpdatedBy field's value.
12166func (s *EventStream) SetLastUpdatedBy(v string) *EventStream {
12167	s.LastUpdatedBy = &v
12168	return s
12169}
12170
12171// SetRoleArn sets the RoleArn field's value.
12172func (s *EventStream) SetRoleArn(v string) *EventStream {
12173	s.RoleArn = &v
12174	return s
12175}
12176
12177// Events batch definition
12178type EventsBatch struct {
12179	_ struct{} `type:"structure"`
12180
12181	// Endpoint information
12182	Endpoint *PublicEndpoint `type:"structure"`
12183
12184	// Events
12185	Events map[string]*Event `type:"map"`
12186}
12187
12188// String returns the string representation
12189func (s EventsBatch) String() string {
12190	return awsutil.Prettify(s)
12191}
12192
12193// GoString returns the string representation
12194func (s EventsBatch) GoString() string {
12195	return s.String()
12196}
12197
12198// SetEndpoint sets the Endpoint field's value.
12199func (s *EventsBatch) SetEndpoint(v *PublicEndpoint) *EventsBatch {
12200	s.Endpoint = v
12201	return s
12202}
12203
12204// SetEvents sets the Events field's value.
12205func (s *EventsBatch) SetEvents(v map[string]*Event) *EventsBatch {
12206	s.Events = v
12207	return s
12208}
12209
12210// Put Events request
12211type EventsRequest struct {
12212	_ struct{} `type:"structure"`
12213
12214	// Batch of events with endpoint id as the key and an object of EventsBatch
12215	// as value. The EventsBatch object has the PublicEndpoint and a map of event
12216	// Id's to events
12217	BatchItem map[string]*EventsBatch `type:"map"`
12218}
12219
12220// String returns the string representation
12221func (s EventsRequest) String() string {
12222	return awsutil.Prettify(s)
12223}
12224
12225// GoString returns the string representation
12226func (s EventsRequest) GoString() string {
12227	return s.String()
12228}
12229
12230// SetBatchItem sets the BatchItem field's value.
12231func (s *EventsRequest) SetBatchItem(v map[string]*EventsBatch) *EventsRequest {
12232	s.BatchItem = v
12233	return s
12234}
12235
12236// The results from processing a put events request
12237type EventsResponse struct {
12238	_ struct{} `type:"structure"`
12239
12240	// A map containing a multi part response for each endpoint, with the endpoint
12241	// id as the key and item response as the value
12242	Results map[string]*ItemResponse `type:"map"`
12243}
12244
12245// String returns the string representation
12246func (s EventsResponse) String() string {
12247	return awsutil.Prettify(s)
12248}
12249
12250// GoString returns the string representation
12251func (s EventsResponse) GoString() string {
12252	return s.String()
12253}
12254
12255// SetResults sets the Results field's value.
12256func (s *EventsResponse) SetResults(v map[string]*ItemResponse) *EventsResponse {
12257	s.Results = v
12258	return s
12259}
12260
12261// Export job request.
12262type ExportJobRequest struct {
12263	_ struct{} `type:"structure"`
12264
12265	// The Amazon Resource Name (ARN) of an IAM role that grants Amazon Pinpoint
12266	// access to the Amazon S3 location that endpoints will be exported to.
12267	RoleArn *string `type:"string"`
12268
12269	// A URL that points to the location within an Amazon S3 bucket that will receive
12270	// the export. The location is typically a folder with multiple files.The URL
12271	// should follow this format: s3://bucket-name/folder-name/Amazon Pinpoint will
12272	// export endpoints to this location.
12273	S3UrlPrefix *string `type:"string"`
12274
12275	// The ID of the segment to export endpoints from. If not present, Amazon Pinpoint
12276	// exports all of the endpoints that belong to the application.
12277	SegmentId *string `type:"string"`
12278
12279	// The version of the segment to export if specified.
12280	SegmentVersion *int64 `type:"integer"`
12281}
12282
12283// String returns the string representation
12284func (s ExportJobRequest) String() string {
12285	return awsutil.Prettify(s)
12286}
12287
12288// GoString returns the string representation
12289func (s ExportJobRequest) GoString() string {
12290	return s.String()
12291}
12292
12293// SetRoleArn sets the RoleArn field's value.
12294func (s *ExportJobRequest) SetRoleArn(v string) *ExportJobRequest {
12295	s.RoleArn = &v
12296	return s
12297}
12298
12299// SetS3UrlPrefix sets the S3UrlPrefix field's value.
12300func (s *ExportJobRequest) SetS3UrlPrefix(v string) *ExportJobRequest {
12301	s.S3UrlPrefix = &v
12302	return s
12303}
12304
12305// SetSegmentId sets the SegmentId field's value.
12306func (s *ExportJobRequest) SetSegmentId(v string) *ExportJobRequest {
12307	s.SegmentId = &v
12308	return s
12309}
12310
12311// SetSegmentVersion sets the SegmentVersion field's value.
12312func (s *ExportJobRequest) SetSegmentVersion(v int64) *ExportJobRequest {
12313	s.SegmentVersion = &v
12314	return s
12315}
12316
12317// Export job resource.
12318type ExportJobResource struct {
12319	_ struct{} `type:"structure"`
12320
12321	// The Amazon Resource Name (ARN) of an IAM role that grants Amazon Pinpoint
12322	// access to the Amazon S3 location that endpoints will be exported to.
12323	RoleArn *string `type:"string"`
12324
12325	// A URL that points to the location within an Amazon S3 bucket that will receive
12326	// the export. The location is typically a folder with multiple files.The URL
12327	// should follow this format: s3://bucket-name/folder-name/Amazon Pinpoint will
12328	// export endpoints to this location.
12329	S3UrlPrefix *string `type:"string"`
12330
12331	// The ID of the segment to export endpoints from. If not present, Amazon Pinpoint
12332	// exports all of the endpoints that belong to the application.
12333	SegmentId *string `type:"string"`
12334
12335	// The version of the segment to export if specified.
12336	SegmentVersion *int64 `type:"integer"`
12337}
12338
12339// String returns the string representation
12340func (s ExportJobResource) String() string {
12341	return awsutil.Prettify(s)
12342}
12343
12344// GoString returns the string representation
12345func (s ExportJobResource) GoString() string {
12346	return s.String()
12347}
12348
12349// SetRoleArn sets the RoleArn field's value.
12350func (s *ExportJobResource) SetRoleArn(v string) *ExportJobResource {
12351	s.RoleArn = &v
12352	return s
12353}
12354
12355// SetS3UrlPrefix sets the S3UrlPrefix field's value.
12356func (s *ExportJobResource) SetS3UrlPrefix(v string) *ExportJobResource {
12357	s.S3UrlPrefix = &v
12358	return s
12359}
12360
12361// SetSegmentId sets the SegmentId field's value.
12362func (s *ExportJobResource) SetSegmentId(v string) *ExportJobResource {
12363	s.SegmentId = &v
12364	return s
12365}
12366
12367// SetSegmentVersion sets the SegmentVersion field's value.
12368func (s *ExportJobResource) SetSegmentVersion(v int64) *ExportJobResource {
12369	s.SegmentVersion = &v
12370	return s
12371}
12372
12373// Export job response.
12374type ExportJobResponse struct {
12375	_ struct{} `type:"structure"`
12376
12377	// The unique ID of the application associated with the export job.
12378	ApplicationId *string `type:"string"`
12379
12380	// The number of pieces that have successfully completed as of the time of the
12381	// request.
12382	CompletedPieces *int64 `type:"integer"`
12383
12384	// The date the job completed in ISO 8601 format.
12385	CompletionDate *string `type:"string"`
12386
12387	// The date the job was created in ISO 8601 format.
12388	CreationDate *string `type:"string"`
12389
12390	// The export job settings.
12391	Definition *ExportJobResource `type:"structure"`
12392
12393	// The number of pieces that failed to be processed as of the time of the request.
12394	FailedPieces *int64 `type:"integer"`
12395
12396	// Provides up to 100 of the first failed entries for the job, if any exist.
12397	Failures []*string `type:"list"`
12398
12399	// The unique ID of the job.
12400	Id *string `type:"string"`
12401
12402	// The status of the job.Valid values: CREATED, INITIALIZING, PROCESSING, COMPLETING,
12403	// COMPLETED, FAILING, FAILEDThe job status is FAILED if one or more pieces
12404	// failed.
12405	JobStatus *string `type:"string" enum:"JobStatus"`
12406
12407	// The number of endpoints that were not processed; for example, because of
12408	// syntax errors.
12409	TotalFailures *int64 `type:"integer"`
12410
12411	// The total number of pieces that must be processed to finish the job. Each
12412	// piece is an approximately equal portion of the endpoints.
12413	TotalPieces *int64 `type:"integer"`
12414
12415	// The number of endpoints that were processed by the job.
12416	TotalProcessed *int64 `type:"integer"`
12417
12418	// The job type. Will be 'EXPORT'.
12419	Type *string `type:"string"`
12420}
12421
12422// String returns the string representation
12423func (s ExportJobResponse) String() string {
12424	return awsutil.Prettify(s)
12425}
12426
12427// GoString returns the string representation
12428func (s ExportJobResponse) GoString() string {
12429	return s.String()
12430}
12431
12432// SetApplicationId sets the ApplicationId field's value.
12433func (s *ExportJobResponse) SetApplicationId(v string) *ExportJobResponse {
12434	s.ApplicationId = &v
12435	return s
12436}
12437
12438// SetCompletedPieces sets the CompletedPieces field's value.
12439func (s *ExportJobResponse) SetCompletedPieces(v int64) *ExportJobResponse {
12440	s.CompletedPieces = &v
12441	return s
12442}
12443
12444// SetCompletionDate sets the CompletionDate field's value.
12445func (s *ExportJobResponse) SetCompletionDate(v string) *ExportJobResponse {
12446	s.CompletionDate = &v
12447	return s
12448}
12449
12450// SetCreationDate sets the CreationDate field's value.
12451func (s *ExportJobResponse) SetCreationDate(v string) *ExportJobResponse {
12452	s.CreationDate = &v
12453	return s
12454}
12455
12456// SetDefinition sets the Definition field's value.
12457func (s *ExportJobResponse) SetDefinition(v *ExportJobResource) *ExportJobResponse {
12458	s.Definition = v
12459	return s
12460}
12461
12462// SetFailedPieces sets the FailedPieces field's value.
12463func (s *ExportJobResponse) SetFailedPieces(v int64) *ExportJobResponse {
12464	s.FailedPieces = &v
12465	return s
12466}
12467
12468// SetFailures sets the Failures field's value.
12469func (s *ExportJobResponse) SetFailures(v []*string) *ExportJobResponse {
12470	s.Failures = v
12471	return s
12472}
12473
12474// SetId sets the Id field's value.
12475func (s *ExportJobResponse) SetId(v string) *ExportJobResponse {
12476	s.Id = &v
12477	return s
12478}
12479
12480// SetJobStatus sets the JobStatus field's value.
12481func (s *ExportJobResponse) SetJobStatus(v string) *ExportJobResponse {
12482	s.JobStatus = &v
12483	return s
12484}
12485
12486// SetTotalFailures sets the TotalFailures field's value.
12487func (s *ExportJobResponse) SetTotalFailures(v int64) *ExportJobResponse {
12488	s.TotalFailures = &v
12489	return s
12490}
12491
12492// SetTotalPieces sets the TotalPieces field's value.
12493func (s *ExportJobResponse) SetTotalPieces(v int64) *ExportJobResponse {
12494	s.TotalPieces = &v
12495	return s
12496}
12497
12498// SetTotalProcessed sets the TotalProcessed field's value.
12499func (s *ExportJobResponse) SetTotalProcessed(v int64) *ExportJobResponse {
12500	s.TotalProcessed = &v
12501	return s
12502}
12503
12504// SetType sets the Type field's value.
12505func (s *ExportJobResponse) SetType(v string) *ExportJobResponse {
12506	s.Type = &v
12507	return s
12508}
12509
12510// Export job list.
12511type ExportJobsResponse struct {
12512	_ struct{} `type:"structure"`
12513
12514	// A list of export jobs for the application.
12515	Item []*ExportJobResponse `type:"list"`
12516
12517	// The string that you use in a subsequent request to get the next page of results
12518	// in a paginated response.
12519	NextToken *string `type:"string"`
12520}
12521
12522// String returns the string representation
12523func (s ExportJobsResponse) String() string {
12524	return awsutil.Prettify(s)
12525}
12526
12527// GoString returns the string representation
12528func (s ExportJobsResponse) GoString() string {
12529	return s.String()
12530}
12531
12532// SetItem sets the Item field's value.
12533func (s *ExportJobsResponse) SetItem(v []*ExportJobResponse) *ExportJobsResponse {
12534	s.Item = v
12535	return s
12536}
12537
12538// SetNextToken sets the NextToken field's value.
12539func (s *ExportJobsResponse) SetNextToken(v string) *ExportJobsResponse {
12540	s.NextToken = &v
12541	return s
12542}
12543
12544// Google Cloud Messaging credentials
12545type GCMChannelRequest struct {
12546	_ struct{} `type:"structure"`
12547
12548	// Platform credential API key from Google.
12549	ApiKey *string `type:"string"`
12550
12551	// If the channel is enabled for sending messages.
12552	Enabled *bool `type:"boolean"`
12553}
12554
12555// String returns the string representation
12556func (s GCMChannelRequest) String() string {
12557	return awsutil.Prettify(s)
12558}
12559
12560// GoString returns the string representation
12561func (s GCMChannelRequest) GoString() string {
12562	return s.String()
12563}
12564
12565// SetApiKey sets the ApiKey field's value.
12566func (s *GCMChannelRequest) SetApiKey(v string) *GCMChannelRequest {
12567	s.ApiKey = &v
12568	return s
12569}
12570
12571// SetEnabled sets the Enabled field's value.
12572func (s *GCMChannelRequest) SetEnabled(v bool) *GCMChannelRequest {
12573	s.Enabled = &v
12574	return s
12575}
12576
12577// Google Cloud Messaging channel definition
12578type GCMChannelResponse struct {
12579	_ struct{} `type:"structure"`
12580
12581	// The ID of the application to which the channel applies.
12582	ApplicationId *string `type:"string"`
12583
12584	// When was this segment created
12585	CreationDate *string `type:"string"`
12586
12587	// The GCM API key from Google.
12588	Credential *string `type:"string"`
12589
12590	// If the channel is enabled for sending messages.
12591	Enabled *bool `type:"boolean"`
12592
12593	// Not used. Retained for backwards compatibility.
12594	HasCredential *bool `type:"boolean"`
12595
12596	// Channel ID. Not used. Present only for backwards compatibility.
12597	Id *string `type:"string"`
12598
12599	// Is this channel archived
12600	IsArchived *bool `type:"boolean"`
12601
12602	// Who last updated this entry
12603	LastModifiedBy *string `type:"string"`
12604
12605	// Last date this was updated
12606	LastModifiedDate *string `type:"string"`
12607
12608	// The platform type. Will be GCM
12609	Platform *string `type:"string"`
12610
12611	// Version of channel
12612	Version *int64 `type:"integer"`
12613}
12614
12615// String returns the string representation
12616func (s GCMChannelResponse) String() string {
12617	return awsutil.Prettify(s)
12618}
12619
12620// GoString returns the string representation
12621func (s GCMChannelResponse) GoString() string {
12622	return s.String()
12623}
12624
12625// SetApplicationId sets the ApplicationId field's value.
12626func (s *GCMChannelResponse) SetApplicationId(v string) *GCMChannelResponse {
12627	s.ApplicationId = &v
12628	return s
12629}
12630
12631// SetCreationDate sets the CreationDate field's value.
12632func (s *GCMChannelResponse) SetCreationDate(v string) *GCMChannelResponse {
12633	s.CreationDate = &v
12634	return s
12635}
12636
12637// SetCredential sets the Credential field's value.
12638func (s *GCMChannelResponse) SetCredential(v string) *GCMChannelResponse {
12639	s.Credential = &v
12640	return s
12641}
12642
12643// SetEnabled sets the Enabled field's value.
12644func (s *GCMChannelResponse) SetEnabled(v bool) *GCMChannelResponse {
12645	s.Enabled = &v
12646	return s
12647}
12648
12649// SetHasCredential sets the HasCredential field's value.
12650func (s *GCMChannelResponse) SetHasCredential(v bool) *GCMChannelResponse {
12651	s.HasCredential = &v
12652	return s
12653}
12654
12655// SetId sets the Id field's value.
12656func (s *GCMChannelResponse) SetId(v string) *GCMChannelResponse {
12657	s.Id = &v
12658	return s
12659}
12660
12661// SetIsArchived sets the IsArchived field's value.
12662func (s *GCMChannelResponse) SetIsArchived(v bool) *GCMChannelResponse {
12663	s.IsArchived = &v
12664	return s
12665}
12666
12667// SetLastModifiedBy sets the LastModifiedBy field's value.
12668func (s *GCMChannelResponse) SetLastModifiedBy(v string) *GCMChannelResponse {
12669	s.LastModifiedBy = &v
12670	return s
12671}
12672
12673// SetLastModifiedDate sets the LastModifiedDate field's value.
12674func (s *GCMChannelResponse) SetLastModifiedDate(v string) *GCMChannelResponse {
12675	s.LastModifiedDate = &v
12676	return s
12677}
12678
12679// SetPlatform sets the Platform field's value.
12680func (s *GCMChannelResponse) SetPlatform(v string) *GCMChannelResponse {
12681	s.Platform = &v
12682	return s
12683}
12684
12685// SetVersion sets the Version field's value.
12686func (s *GCMChannelResponse) SetVersion(v int64) *GCMChannelResponse {
12687	s.Version = &v
12688	return s
12689}
12690
12691// GCM Message.
12692type GCMMessage struct {
12693	_ struct{} `type:"structure"`
12694
12695	// The action that occurs if the user taps a push notification delivered by
12696	// the campaign: OPEN_APP - Your app launches, or it becomes the foreground
12697	// app if it has been sent to the background. This is the default action. DEEP_LINK
12698	// - Uses deep linking features in iOS and Android to open your app and display
12699	// a designated user interface within the app. URL - The default mobile browser
12700	// on the user's device launches and opens a web page at the URL you specify.
12701	// Possible values include: OPEN_APP | DEEP_LINK | URL
12702	Action *string `type:"string" enum:"Action"`
12703
12704	// The message body of the notification.
12705	Body *string `type:"string"`
12706
12707	// This parameter identifies a group of messages (e.g., with collapse_key: "Updates
12708	// Available") that can be collapsed, so that only the last message gets sent
12709	// when delivery can be resumed. This is intended to avoid sending too many
12710	// of the same messages when the device comes back online or becomes active.
12711	CollapseKey *string `type:"string"`
12712
12713	// The data payload used for a silent push. This payload is added to the notifications'
12714	// data.pinpoint.jsonBody' object
12715	Data map[string]*string `type:"map"`
12716
12717	// The icon image name of the asset saved in your application.
12718	IconReference *string `type:"string"`
12719
12720	// The URL that points to an image used as the large icon to the notification
12721	// content view.
12722	ImageIconUrl *string `type:"string"`
12723
12724	// The URL that points to an image used in the push notification.
12725	ImageUrl *string `type:"string"`
12726
12727	// The message priority. Amazon Pinpoint uses this value to set the FCM or GCM
12728	// priority parameter when it sends the message. Accepts the following values:"Normal"
12729	// - Messages might be delayed. Delivery is optimized for battery usage on the
12730	// receiving device. Use normal priority unless immediate delivery is required."High"
12731	// - Messages are sent immediately and might wake a sleeping device.The equivalent
12732	// values for APNs messages are "5" and "10". Amazon Pinpoint accepts these
12733	// values here and converts them.For more information, see About FCM Messages
12734	// in the Firebase documentation.
12735	Priority *string `type:"string"`
12736
12737	// The Raw JSON formatted string to be used as the payload. This value overrides
12738	// the message.
12739	RawContent *string `type:"string"`
12740
12741	// This parameter specifies the package name of the application where the registration
12742	// tokens must match in order to receive the message.
12743	RestrictedPackageName *string `type:"string"`
12744
12745	// Indicates if the message should display on the users device. Silent pushes
12746	// can be used for Remote Configuration and Phone Home use cases.
12747	SilentPush *bool `type:"boolean"`
12748
12749	// The URL that points to an image used as the small icon for the notification
12750	// which will be used to represent the notification in the status bar and content
12751	// view
12752	SmallImageIconUrl *string `type:"string"`
12753
12754	// Indicates a sound to play when the device receives the notification. Supports
12755	// default, or the filename of a sound resource bundled in the app. Android
12756	// sound files must reside in /res/raw/
12757	Sound *string `type:"string"`
12758
12759	// Default message substitutions. Can be overridden by individual address substitutions.
12760	Substitutions map[string][]*string `type:"map"`
12761
12762	// The length of time (in seconds) that FCM or GCM stores and attempts to deliver
12763	// the message. If unspecified, the value defaults to the maximum, which is
12764	// 2,419,200 seconds (28 days). Amazon Pinpoint uses this value to set the FCM
12765	// or GCM time_to_live parameter.
12766	TimeToLive *int64 `type:"integer"`
12767
12768	// The message title that displays above the message on the user's device.
12769	Title *string `type:"string"`
12770
12771	// The URL to open in the user's mobile browser. Used if the value for Action
12772	// is URL.
12773	Url *string `type:"string"`
12774}
12775
12776// String returns the string representation
12777func (s GCMMessage) String() string {
12778	return awsutil.Prettify(s)
12779}
12780
12781// GoString returns the string representation
12782func (s GCMMessage) GoString() string {
12783	return s.String()
12784}
12785
12786// SetAction sets the Action field's value.
12787func (s *GCMMessage) SetAction(v string) *GCMMessage {
12788	s.Action = &v
12789	return s
12790}
12791
12792// SetBody sets the Body field's value.
12793func (s *GCMMessage) SetBody(v string) *GCMMessage {
12794	s.Body = &v
12795	return s
12796}
12797
12798// SetCollapseKey sets the CollapseKey field's value.
12799func (s *GCMMessage) SetCollapseKey(v string) *GCMMessage {
12800	s.CollapseKey = &v
12801	return s
12802}
12803
12804// SetData sets the Data field's value.
12805func (s *GCMMessage) SetData(v map[string]*string) *GCMMessage {
12806	s.Data = v
12807	return s
12808}
12809
12810// SetIconReference sets the IconReference field's value.
12811func (s *GCMMessage) SetIconReference(v string) *GCMMessage {
12812	s.IconReference = &v
12813	return s
12814}
12815
12816// SetImageIconUrl sets the ImageIconUrl field's value.
12817func (s *GCMMessage) SetImageIconUrl(v string) *GCMMessage {
12818	s.ImageIconUrl = &v
12819	return s
12820}
12821
12822// SetImageUrl sets the ImageUrl field's value.
12823func (s *GCMMessage) SetImageUrl(v string) *GCMMessage {
12824	s.ImageUrl = &v
12825	return s
12826}
12827
12828// SetPriority sets the Priority field's value.
12829func (s *GCMMessage) SetPriority(v string) *GCMMessage {
12830	s.Priority = &v
12831	return s
12832}
12833
12834// SetRawContent sets the RawContent field's value.
12835func (s *GCMMessage) SetRawContent(v string) *GCMMessage {
12836	s.RawContent = &v
12837	return s
12838}
12839
12840// SetRestrictedPackageName sets the RestrictedPackageName field's value.
12841func (s *GCMMessage) SetRestrictedPackageName(v string) *GCMMessage {
12842	s.RestrictedPackageName = &v
12843	return s
12844}
12845
12846// SetSilentPush sets the SilentPush field's value.
12847func (s *GCMMessage) SetSilentPush(v bool) *GCMMessage {
12848	s.SilentPush = &v
12849	return s
12850}
12851
12852// SetSmallImageIconUrl sets the SmallImageIconUrl field's value.
12853func (s *GCMMessage) SetSmallImageIconUrl(v string) *GCMMessage {
12854	s.SmallImageIconUrl = &v
12855	return s
12856}
12857
12858// SetSound sets the Sound field's value.
12859func (s *GCMMessage) SetSound(v string) *GCMMessage {
12860	s.Sound = &v
12861	return s
12862}
12863
12864// SetSubstitutions sets the Substitutions field's value.
12865func (s *GCMMessage) SetSubstitutions(v map[string][]*string) *GCMMessage {
12866	s.Substitutions = v
12867	return s
12868}
12869
12870// SetTimeToLive sets the TimeToLive field's value.
12871func (s *GCMMessage) SetTimeToLive(v int64) *GCMMessage {
12872	s.TimeToLive = &v
12873	return s
12874}
12875
12876// SetTitle sets the Title field's value.
12877func (s *GCMMessage) SetTitle(v string) *GCMMessage {
12878	s.Title = &v
12879	return s
12880}
12881
12882// SetUrl sets the Url field's value.
12883func (s *GCMMessage) SetUrl(v string) *GCMMessage {
12884	s.Url = &v
12885	return s
12886}
12887
12888// GPS coordinates
12889type GPSCoordinates struct {
12890	_ struct{} `type:"structure"`
12891
12892	// Latitude
12893	Latitude *float64 `type:"double"`
12894
12895	// Longitude
12896	Longitude *float64 `type:"double"`
12897}
12898
12899// String returns the string representation
12900func (s GPSCoordinates) String() string {
12901	return awsutil.Prettify(s)
12902}
12903
12904// GoString returns the string representation
12905func (s GPSCoordinates) GoString() string {
12906	return s.String()
12907}
12908
12909// SetLatitude sets the Latitude field's value.
12910func (s *GPSCoordinates) SetLatitude(v float64) *GPSCoordinates {
12911	s.Latitude = &v
12912	return s
12913}
12914
12915// SetLongitude sets the Longitude field's value.
12916func (s *GPSCoordinates) SetLongitude(v float64) *GPSCoordinates {
12917	s.Longitude = &v
12918	return s
12919}
12920
12921// GPS point location dimension
12922type GPSPointDimension struct {
12923	_ struct{} `type:"structure"`
12924
12925	// Coordinate to measure distance from.
12926	Coordinates *GPSCoordinates `type:"structure"`
12927
12928	// Range in kilometers from the coordinate.
12929	RangeInKilometers *float64 `type:"double"`
12930}
12931
12932// String returns the string representation
12933func (s GPSPointDimension) String() string {
12934	return awsutil.Prettify(s)
12935}
12936
12937// GoString returns the string representation
12938func (s GPSPointDimension) GoString() string {
12939	return s.String()
12940}
12941
12942// SetCoordinates sets the Coordinates field's value.
12943func (s *GPSPointDimension) SetCoordinates(v *GPSCoordinates) *GPSPointDimension {
12944	s.Coordinates = v
12945	return s
12946}
12947
12948// SetRangeInKilometers sets the RangeInKilometers field's value.
12949func (s *GPSPointDimension) SetRangeInKilometers(v float64) *GPSPointDimension {
12950	s.RangeInKilometers = &v
12951	return s
12952}
12953
12954type GetAdmChannelInput struct {
12955	_ struct{} `type:"structure"`
12956
12957	// ApplicationId is a required field
12958	ApplicationId *string `location:"uri" locationName:"application-id" type:"string" required:"true"`
12959}
12960
12961// String returns the string representation
12962func (s GetAdmChannelInput) String() string {
12963	return awsutil.Prettify(s)
12964}
12965
12966// GoString returns the string representation
12967func (s GetAdmChannelInput) GoString() string {
12968	return s.String()
12969}
12970
12971// Validate inspects the fields of the type to determine if they are valid.
12972func (s *GetAdmChannelInput) Validate() error {
12973	invalidParams := request.ErrInvalidParams{Context: "GetAdmChannelInput"}
12974	if s.ApplicationId == nil {
12975		invalidParams.Add(request.NewErrParamRequired("ApplicationId"))
12976	}
12977
12978	if invalidParams.Len() > 0 {
12979		return invalidParams
12980	}
12981	return nil
12982}
12983
12984// SetApplicationId sets the ApplicationId field's value.
12985func (s *GetAdmChannelInput) SetApplicationId(v string) *GetAdmChannelInput {
12986	s.ApplicationId = &v
12987	return s
12988}
12989
12990type GetAdmChannelOutput struct {
12991	_ struct{} `type:"structure" payload:"ADMChannelResponse"`
12992
12993	// Amazon Device Messaging channel definition.
12994	//
12995	// ADMChannelResponse is a required field
12996	ADMChannelResponse *ADMChannelResponse `type:"structure" required:"true"`
12997}
12998
12999// String returns the string representation
13000func (s GetAdmChannelOutput) String() string {
13001	return awsutil.Prettify(s)
13002}
13003
13004// GoString returns the string representation
13005func (s GetAdmChannelOutput) GoString() string {
13006	return s.String()
13007}
13008
13009// SetADMChannelResponse sets the ADMChannelResponse field's value.
13010func (s *GetAdmChannelOutput) SetADMChannelResponse(v *ADMChannelResponse) *GetAdmChannelOutput {
13011	s.ADMChannelResponse = v
13012	return s
13013}
13014
13015type GetApnsChannelInput struct {
13016	_ struct{} `type:"structure"`
13017
13018	// ApplicationId is a required field
13019	ApplicationId *string `location:"uri" locationName:"application-id" type:"string" required:"true"`
13020}
13021
13022// String returns the string representation
13023func (s GetApnsChannelInput) String() string {
13024	return awsutil.Prettify(s)
13025}
13026
13027// GoString returns the string representation
13028func (s GetApnsChannelInput) GoString() string {
13029	return s.String()
13030}
13031
13032// Validate inspects the fields of the type to determine if they are valid.
13033func (s *GetApnsChannelInput) Validate() error {
13034	invalidParams := request.ErrInvalidParams{Context: "GetApnsChannelInput"}
13035	if s.ApplicationId == nil {
13036		invalidParams.Add(request.NewErrParamRequired("ApplicationId"))
13037	}
13038
13039	if invalidParams.Len() > 0 {
13040		return invalidParams
13041	}
13042	return nil
13043}
13044
13045// SetApplicationId sets the ApplicationId field's value.
13046func (s *GetApnsChannelInput) SetApplicationId(v string) *GetApnsChannelInput {
13047	s.ApplicationId = &v
13048	return s
13049}
13050
13051type GetApnsChannelOutput struct {
13052	_ struct{} `type:"structure" payload:"APNSChannelResponse"`
13053
13054	// Apple Distribution Push Notification Service channel definition.
13055	//
13056	// APNSChannelResponse is a required field
13057	APNSChannelResponse *APNSChannelResponse `type:"structure" required:"true"`
13058}
13059
13060// String returns the string representation
13061func (s GetApnsChannelOutput) String() string {
13062	return awsutil.Prettify(s)
13063}
13064
13065// GoString returns the string representation
13066func (s GetApnsChannelOutput) GoString() string {
13067	return s.String()
13068}
13069
13070// SetAPNSChannelResponse sets the APNSChannelResponse field's value.
13071func (s *GetApnsChannelOutput) SetAPNSChannelResponse(v *APNSChannelResponse) *GetApnsChannelOutput {
13072	s.APNSChannelResponse = v
13073	return s
13074}
13075
13076type GetApnsSandboxChannelInput struct {
13077	_ struct{} `type:"structure"`
13078
13079	// ApplicationId is a required field
13080	ApplicationId *string `location:"uri" locationName:"application-id" type:"string" required:"true"`
13081}
13082
13083// String returns the string representation
13084func (s GetApnsSandboxChannelInput) String() string {
13085	return awsutil.Prettify(s)
13086}
13087
13088// GoString returns the string representation
13089func (s GetApnsSandboxChannelInput) GoString() string {
13090	return s.String()
13091}
13092
13093// Validate inspects the fields of the type to determine if they are valid.
13094func (s *GetApnsSandboxChannelInput) Validate() error {
13095	invalidParams := request.ErrInvalidParams{Context: "GetApnsSandboxChannelInput"}
13096	if s.ApplicationId == nil {
13097		invalidParams.Add(request.NewErrParamRequired("ApplicationId"))
13098	}
13099
13100	if invalidParams.Len() > 0 {
13101		return invalidParams
13102	}
13103	return nil
13104}
13105
13106// SetApplicationId sets the ApplicationId field's value.
13107func (s *GetApnsSandboxChannelInput) SetApplicationId(v string) *GetApnsSandboxChannelInput {
13108	s.ApplicationId = &v
13109	return s
13110}
13111
13112type GetApnsSandboxChannelOutput struct {
13113	_ struct{} `type:"structure" payload:"APNSSandboxChannelResponse"`
13114
13115	// Apple Development Push Notification Service channel definition.
13116	//
13117	// APNSSandboxChannelResponse is a required field
13118	APNSSandboxChannelResponse *APNSSandboxChannelResponse `type:"structure" required:"true"`
13119}
13120
13121// String returns the string representation
13122func (s GetApnsSandboxChannelOutput) String() string {
13123	return awsutil.Prettify(s)
13124}
13125
13126// GoString returns the string representation
13127func (s GetApnsSandboxChannelOutput) GoString() string {
13128	return s.String()
13129}
13130
13131// SetAPNSSandboxChannelResponse sets the APNSSandboxChannelResponse field's value.
13132func (s *GetApnsSandboxChannelOutput) SetAPNSSandboxChannelResponse(v *APNSSandboxChannelResponse) *GetApnsSandboxChannelOutput {
13133	s.APNSSandboxChannelResponse = v
13134	return s
13135}
13136
13137type GetApnsVoipChannelInput struct {
13138	_ struct{} `type:"structure"`
13139
13140	// ApplicationId is a required field
13141	ApplicationId *string `location:"uri" locationName:"application-id" type:"string" required:"true"`
13142}
13143
13144// String returns the string representation
13145func (s GetApnsVoipChannelInput) String() string {
13146	return awsutil.Prettify(s)
13147}
13148
13149// GoString returns the string representation
13150func (s GetApnsVoipChannelInput) GoString() string {
13151	return s.String()
13152}
13153
13154// Validate inspects the fields of the type to determine if they are valid.
13155func (s *GetApnsVoipChannelInput) Validate() error {
13156	invalidParams := request.ErrInvalidParams{Context: "GetApnsVoipChannelInput"}
13157	if s.ApplicationId == nil {
13158		invalidParams.Add(request.NewErrParamRequired("ApplicationId"))
13159	}
13160
13161	if invalidParams.Len() > 0 {
13162		return invalidParams
13163	}
13164	return nil
13165}
13166
13167// SetApplicationId sets the ApplicationId field's value.
13168func (s *GetApnsVoipChannelInput) SetApplicationId(v string) *GetApnsVoipChannelInput {
13169	s.ApplicationId = &v
13170	return s
13171}
13172
13173type GetApnsVoipChannelOutput struct {
13174	_ struct{} `type:"structure" payload:"APNSVoipChannelResponse"`
13175
13176	// Apple VoIP Push Notification Service channel definition.
13177	//
13178	// APNSVoipChannelResponse is a required field
13179	APNSVoipChannelResponse *APNSVoipChannelResponse `type:"structure" required:"true"`
13180}
13181
13182// String returns the string representation
13183func (s GetApnsVoipChannelOutput) String() string {
13184	return awsutil.Prettify(s)
13185}
13186
13187// GoString returns the string representation
13188func (s GetApnsVoipChannelOutput) GoString() string {
13189	return s.String()
13190}
13191
13192// SetAPNSVoipChannelResponse sets the APNSVoipChannelResponse field's value.
13193func (s *GetApnsVoipChannelOutput) SetAPNSVoipChannelResponse(v *APNSVoipChannelResponse) *GetApnsVoipChannelOutput {
13194	s.APNSVoipChannelResponse = v
13195	return s
13196}
13197
13198type GetApnsVoipSandboxChannelInput struct {
13199	_ struct{} `type:"structure"`
13200
13201	// ApplicationId is a required field
13202	ApplicationId *string `location:"uri" locationName:"application-id" type:"string" required:"true"`
13203}
13204
13205// String returns the string representation
13206func (s GetApnsVoipSandboxChannelInput) String() string {
13207	return awsutil.Prettify(s)
13208}
13209
13210// GoString returns the string representation
13211func (s GetApnsVoipSandboxChannelInput) GoString() string {
13212	return s.String()
13213}
13214
13215// Validate inspects the fields of the type to determine if they are valid.
13216func (s *GetApnsVoipSandboxChannelInput) Validate() error {
13217	invalidParams := request.ErrInvalidParams{Context: "GetApnsVoipSandboxChannelInput"}
13218	if s.ApplicationId == nil {
13219		invalidParams.Add(request.NewErrParamRequired("ApplicationId"))
13220	}
13221
13222	if invalidParams.Len() > 0 {
13223		return invalidParams
13224	}
13225	return nil
13226}
13227
13228// SetApplicationId sets the ApplicationId field's value.
13229func (s *GetApnsVoipSandboxChannelInput) SetApplicationId(v string) *GetApnsVoipSandboxChannelInput {
13230	s.ApplicationId = &v
13231	return s
13232}
13233
13234type GetApnsVoipSandboxChannelOutput struct {
13235	_ struct{} `type:"structure" payload:"APNSVoipSandboxChannelResponse"`
13236
13237	// Apple VoIP Developer Push Notification Service channel definition.
13238	//
13239	// APNSVoipSandboxChannelResponse is a required field
13240	APNSVoipSandboxChannelResponse *APNSVoipSandboxChannelResponse `type:"structure" required:"true"`
13241}
13242
13243// String returns the string representation
13244func (s GetApnsVoipSandboxChannelOutput) String() string {
13245	return awsutil.Prettify(s)
13246}
13247
13248// GoString returns the string representation
13249func (s GetApnsVoipSandboxChannelOutput) GoString() string {
13250	return s.String()
13251}
13252
13253// SetAPNSVoipSandboxChannelResponse sets the APNSVoipSandboxChannelResponse field's value.
13254func (s *GetApnsVoipSandboxChannelOutput) SetAPNSVoipSandboxChannelResponse(v *APNSVoipSandboxChannelResponse) *GetApnsVoipSandboxChannelOutput {
13255	s.APNSVoipSandboxChannelResponse = v
13256	return s
13257}
13258
13259type GetAppInput struct {
13260	_ struct{} `type:"structure"`
13261
13262	// ApplicationId is a required field
13263	ApplicationId *string `location:"uri" locationName:"application-id" type:"string" required:"true"`
13264}
13265
13266// String returns the string representation
13267func (s GetAppInput) String() string {
13268	return awsutil.Prettify(s)
13269}
13270
13271// GoString returns the string representation
13272func (s GetAppInput) GoString() string {
13273	return s.String()
13274}
13275
13276// Validate inspects the fields of the type to determine if they are valid.
13277func (s *GetAppInput) Validate() error {
13278	invalidParams := request.ErrInvalidParams{Context: "GetAppInput"}
13279	if s.ApplicationId == nil {
13280		invalidParams.Add(request.NewErrParamRequired("ApplicationId"))
13281	}
13282
13283	if invalidParams.Len() > 0 {
13284		return invalidParams
13285	}
13286	return nil
13287}
13288
13289// SetApplicationId sets the ApplicationId field's value.
13290func (s *GetAppInput) SetApplicationId(v string) *GetAppInput {
13291	s.ApplicationId = &v
13292	return s
13293}
13294
13295type GetAppOutput struct {
13296	_ struct{} `type:"structure" payload:"ApplicationResponse"`
13297
13298	// Application Response.
13299	//
13300	// ApplicationResponse is a required field
13301	ApplicationResponse *ApplicationResponse `type:"structure" required:"true"`
13302}
13303
13304// String returns the string representation
13305func (s GetAppOutput) String() string {
13306	return awsutil.Prettify(s)
13307}
13308
13309// GoString returns the string representation
13310func (s GetAppOutput) GoString() string {
13311	return s.String()
13312}
13313
13314// SetApplicationResponse sets the ApplicationResponse field's value.
13315func (s *GetAppOutput) SetApplicationResponse(v *ApplicationResponse) *GetAppOutput {
13316	s.ApplicationResponse = v
13317	return s
13318}
13319
13320type GetApplicationSettingsInput struct {
13321	_ struct{} `type:"structure"`
13322
13323	// ApplicationId is a required field
13324	ApplicationId *string `location:"uri" locationName:"application-id" type:"string" required:"true"`
13325}
13326
13327// String returns the string representation
13328func (s GetApplicationSettingsInput) String() string {
13329	return awsutil.Prettify(s)
13330}
13331
13332// GoString returns the string representation
13333func (s GetApplicationSettingsInput) GoString() string {
13334	return s.String()
13335}
13336
13337// Validate inspects the fields of the type to determine if they are valid.
13338func (s *GetApplicationSettingsInput) Validate() error {
13339	invalidParams := request.ErrInvalidParams{Context: "GetApplicationSettingsInput"}
13340	if s.ApplicationId == nil {
13341		invalidParams.Add(request.NewErrParamRequired("ApplicationId"))
13342	}
13343
13344	if invalidParams.Len() > 0 {
13345		return invalidParams
13346	}
13347	return nil
13348}
13349
13350// SetApplicationId sets the ApplicationId field's value.
13351func (s *GetApplicationSettingsInput) SetApplicationId(v string) *GetApplicationSettingsInput {
13352	s.ApplicationId = &v
13353	return s
13354}
13355
13356type GetApplicationSettingsOutput struct {
13357	_ struct{} `type:"structure" payload:"ApplicationSettingsResource"`
13358
13359	// Application settings.
13360	//
13361	// ApplicationSettingsResource is a required field
13362	ApplicationSettingsResource *ApplicationSettingsResource `type:"structure" required:"true"`
13363}
13364
13365// String returns the string representation
13366func (s GetApplicationSettingsOutput) String() string {
13367	return awsutil.Prettify(s)
13368}
13369
13370// GoString returns the string representation
13371func (s GetApplicationSettingsOutput) GoString() string {
13372	return s.String()
13373}
13374
13375// SetApplicationSettingsResource sets the ApplicationSettingsResource field's value.
13376func (s *GetApplicationSettingsOutput) SetApplicationSettingsResource(v *ApplicationSettingsResource) *GetApplicationSettingsOutput {
13377	s.ApplicationSettingsResource = v
13378	return s
13379}
13380
13381type GetAppsInput struct {
13382	_ struct{} `type:"structure"`
13383
13384	PageSize *string `location:"querystring" locationName:"page-size" type:"string"`
13385
13386	Token *string `location:"querystring" locationName:"token" type:"string"`
13387}
13388
13389// String returns the string representation
13390func (s GetAppsInput) String() string {
13391	return awsutil.Prettify(s)
13392}
13393
13394// GoString returns the string representation
13395func (s GetAppsInput) GoString() string {
13396	return s.String()
13397}
13398
13399// SetPageSize sets the PageSize field's value.
13400func (s *GetAppsInput) SetPageSize(v string) *GetAppsInput {
13401	s.PageSize = &v
13402	return s
13403}
13404
13405// SetToken sets the Token field's value.
13406func (s *GetAppsInput) SetToken(v string) *GetAppsInput {
13407	s.Token = &v
13408	return s
13409}
13410
13411type GetAppsOutput struct {
13412	_ struct{} `type:"structure" payload:"ApplicationsResponse"`
13413
13414	// Get Applications Result.
13415	//
13416	// ApplicationsResponse is a required field
13417	ApplicationsResponse *ApplicationsResponse `type:"structure" required:"true"`
13418}
13419
13420// String returns the string representation
13421func (s GetAppsOutput) String() string {
13422	return awsutil.Prettify(s)
13423}
13424
13425// GoString returns the string representation
13426func (s GetAppsOutput) GoString() string {
13427	return s.String()
13428}
13429
13430// SetApplicationsResponse sets the ApplicationsResponse field's value.
13431func (s *GetAppsOutput) SetApplicationsResponse(v *ApplicationsResponse) *GetAppsOutput {
13432	s.ApplicationsResponse = v
13433	return s
13434}
13435
13436type GetBaiduChannelInput struct {
13437	_ struct{} `type:"structure"`
13438
13439	// ApplicationId is a required field
13440	ApplicationId *string `location:"uri" locationName:"application-id" type:"string" required:"true"`
13441}
13442
13443// String returns the string representation
13444func (s GetBaiduChannelInput) String() string {
13445	return awsutil.Prettify(s)
13446}
13447
13448// GoString returns the string representation
13449func (s GetBaiduChannelInput) GoString() string {
13450	return s.String()
13451}
13452
13453// Validate inspects the fields of the type to determine if they are valid.
13454func (s *GetBaiduChannelInput) Validate() error {
13455	invalidParams := request.ErrInvalidParams{Context: "GetBaiduChannelInput"}
13456	if s.ApplicationId == nil {
13457		invalidParams.Add(request.NewErrParamRequired("ApplicationId"))
13458	}
13459
13460	if invalidParams.Len() > 0 {
13461		return invalidParams
13462	}
13463	return nil
13464}
13465
13466// SetApplicationId sets the ApplicationId field's value.
13467func (s *GetBaiduChannelInput) SetApplicationId(v string) *GetBaiduChannelInput {
13468	s.ApplicationId = &v
13469	return s
13470}
13471
13472type GetBaiduChannelOutput struct {
13473	_ struct{} `type:"structure" payload:"BaiduChannelResponse"`
13474
13475	// Baidu Cloud Messaging channel definition
13476	//
13477	// BaiduChannelResponse is a required field
13478	BaiduChannelResponse *BaiduChannelResponse `type:"structure" required:"true"`
13479}
13480
13481// String returns the string representation
13482func (s GetBaiduChannelOutput) String() string {
13483	return awsutil.Prettify(s)
13484}
13485
13486// GoString returns the string representation
13487func (s GetBaiduChannelOutput) GoString() string {
13488	return s.String()
13489}
13490
13491// SetBaiduChannelResponse sets the BaiduChannelResponse field's value.
13492func (s *GetBaiduChannelOutput) SetBaiduChannelResponse(v *BaiduChannelResponse) *GetBaiduChannelOutput {
13493	s.BaiduChannelResponse = v
13494	return s
13495}
13496
13497type GetCampaignActivitiesInput struct {
13498	_ struct{} `type:"structure"`
13499
13500	// ApplicationId is a required field
13501	ApplicationId *string `location:"uri" locationName:"application-id" type:"string" required:"true"`
13502
13503	// CampaignId is a required field
13504	CampaignId *string `location:"uri" locationName:"campaign-id" type:"string" required:"true"`
13505
13506	PageSize *string `location:"querystring" locationName:"page-size" type:"string"`
13507
13508	Token *string `location:"querystring" locationName:"token" type:"string"`
13509}
13510
13511// String returns the string representation
13512func (s GetCampaignActivitiesInput) String() string {
13513	return awsutil.Prettify(s)
13514}
13515
13516// GoString returns the string representation
13517func (s GetCampaignActivitiesInput) GoString() string {
13518	return s.String()
13519}
13520
13521// Validate inspects the fields of the type to determine if they are valid.
13522func (s *GetCampaignActivitiesInput) Validate() error {
13523	invalidParams := request.ErrInvalidParams{Context: "GetCampaignActivitiesInput"}
13524	if s.ApplicationId == nil {
13525		invalidParams.Add(request.NewErrParamRequired("ApplicationId"))
13526	}
13527	if s.CampaignId == nil {
13528		invalidParams.Add(request.NewErrParamRequired("CampaignId"))
13529	}
13530
13531	if invalidParams.Len() > 0 {
13532		return invalidParams
13533	}
13534	return nil
13535}
13536
13537// SetApplicationId sets the ApplicationId field's value.
13538func (s *GetCampaignActivitiesInput) SetApplicationId(v string) *GetCampaignActivitiesInput {
13539	s.ApplicationId = &v
13540	return s
13541}
13542
13543// SetCampaignId sets the CampaignId field's value.
13544func (s *GetCampaignActivitiesInput) SetCampaignId(v string) *GetCampaignActivitiesInput {
13545	s.CampaignId = &v
13546	return s
13547}
13548
13549// SetPageSize sets the PageSize field's value.
13550func (s *GetCampaignActivitiesInput) SetPageSize(v string) *GetCampaignActivitiesInput {
13551	s.PageSize = &v
13552	return s
13553}
13554
13555// SetToken sets the Token field's value.
13556func (s *GetCampaignActivitiesInput) SetToken(v string) *GetCampaignActivitiesInput {
13557	s.Token = &v
13558	return s
13559}
13560
13561type GetCampaignActivitiesOutput struct {
13562	_ struct{} `type:"structure" payload:"ActivitiesResponse"`
13563
13564	// Activities for campaign.
13565	//
13566	// ActivitiesResponse is a required field
13567	ActivitiesResponse *ActivitiesResponse `type:"structure" required:"true"`
13568}
13569
13570// String returns the string representation
13571func (s GetCampaignActivitiesOutput) String() string {
13572	return awsutil.Prettify(s)
13573}
13574
13575// GoString returns the string representation
13576func (s GetCampaignActivitiesOutput) GoString() string {
13577	return s.String()
13578}
13579
13580// SetActivitiesResponse sets the ActivitiesResponse field's value.
13581func (s *GetCampaignActivitiesOutput) SetActivitiesResponse(v *ActivitiesResponse) *GetCampaignActivitiesOutput {
13582	s.ActivitiesResponse = v
13583	return s
13584}
13585
13586type GetCampaignInput struct {
13587	_ struct{} `type:"structure"`
13588
13589	// ApplicationId is a required field
13590	ApplicationId *string `location:"uri" locationName:"application-id" type:"string" required:"true"`
13591
13592	// CampaignId is a required field
13593	CampaignId *string `location:"uri" locationName:"campaign-id" type:"string" required:"true"`
13594}
13595
13596// String returns the string representation
13597func (s GetCampaignInput) String() string {
13598	return awsutil.Prettify(s)
13599}
13600
13601// GoString returns the string representation
13602func (s GetCampaignInput) GoString() string {
13603	return s.String()
13604}
13605
13606// Validate inspects the fields of the type to determine if they are valid.
13607func (s *GetCampaignInput) Validate() error {
13608	invalidParams := request.ErrInvalidParams{Context: "GetCampaignInput"}
13609	if s.ApplicationId == nil {
13610		invalidParams.Add(request.NewErrParamRequired("ApplicationId"))
13611	}
13612	if s.CampaignId == nil {
13613		invalidParams.Add(request.NewErrParamRequired("CampaignId"))
13614	}
13615
13616	if invalidParams.Len() > 0 {
13617		return invalidParams
13618	}
13619	return nil
13620}
13621
13622// SetApplicationId sets the ApplicationId field's value.
13623func (s *GetCampaignInput) SetApplicationId(v string) *GetCampaignInput {
13624	s.ApplicationId = &v
13625	return s
13626}
13627
13628// SetCampaignId sets the CampaignId field's value.
13629func (s *GetCampaignInput) SetCampaignId(v string) *GetCampaignInput {
13630	s.CampaignId = &v
13631	return s
13632}
13633
13634type GetCampaignOutput struct {
13635	_ struct{} `type:"structure" payload:"CampaignResponse"`
13636
13637	// Campaign definition
13638	//
13639	// CampaignResponse is a required field
13640	CampaignResponse *CampaignResponse `type:"structure" required:"true"`
13641}
13642
13643// String returns the string representation
13644func (s GetCampaignOutput) String() string {
13645	return awsutil.Prettify(s)
13646}
13647
13648// GoString returns the string representation
13649func (s GetCampaignOutput) GoString() string {
13650	return s.String()
13651}
13652
13653// SetCampaignResponse sets the CampaignResponse field's value.
13654func (s *GetCampaignOutput) SetCampaignResponse(v *CampaignResponse) *GetCampaignOutput {
13655	s.CampaignResponse = v
13656	return s
13657}
13658
13659type GetCampaignVersionInput struct {
13660	_ struct{} `type:"structure"`
13661
13662	// ApplicationId is a required field
13663	ApplicationId *string `location:"uri" locationName:"application-id" type:"string" required:"true"`
13664
13665	// CampaignId is a required field
13666	CampaignId *string `location:"uri" locationName:"campaign-id" type:"string" required:"true"`
13667
13668	// Version is a required field
13669	Version *string `location:"uri" locationName:"version" type:"string" required:"true"`
13670}
13671
13672// String returns the string representation
13673func (s GetCampaignVersionInput) String() string {
13674	return awsutil.Prettify(s)
13675}
13676
13677// GoString returns the string representation
13678func (s GetCampaignVersionInput) GoString() string {
13679	return s.String()
13680}
13681
13682// Validate inspects the fields of the type to determine if they are valid.
13683func (s *GetCampaignVersionInput) Validate() error {
13684	invalidParams := request.ErrInvalidParams{Context: "GetCampaignVersionInput"}
13685	if s.ApplicationId == nil {
13686		invalidParams.Add(request.NewErrParamRequired("ApplicationId"))
13687	}
13688	if s.CampaignId == nil {
13689		invalidParams.Add(request.NewErrParamRequired("CampaignId"))
13690	}
13691	if s.Version == nil {
13692		invalidParams.Add(request.NewErrParamRequired("Version"))
13693	}
13694
13695	if invalidParams.Len() > 0 {
13696		return invalidParams
13697	}
13698	return nil
13699}
13700
13701// SetApplicationId sets the ApplicationId field's value.
13702func (s *GetCampaignVersionInput) SetApplicationId(v string) *GetCampaignVersionInput {
13703	s.ApplicationId = &v
13704	return s
13705}
13706
13707// SetCampaignId sets the CampaignId field's value.
13708func (s *GetCampaignVersionInput) SetCampaignId(v string) *GetCampaignVersionInput {
13709	s.CampaignId = &v
13710	return s
13711}
13712
13713// SetVersion sets the Version field's value.
13714func (s *GetCampaignVersionInput) SetVersion(v string) *GetCampaignVersionInput {
13715	s.Version = &v
13716	return s
13717}
13718
13719type GetCampaignVersionOutput struct {
13720	_ struct{} `type:"structure" payload:"CampaignResponse"`
13721
13722	// Campaign definition
13723	//
13724	// CampaignResponse is a required field
13725	CampaignResponse *CampaignResponse `type:"structure" required:"true"`
13726}
13727
13728// String returns the string representation
13729func (s GetCampaignVersionOutput) String() string {
13730	return awsutil.Prettify(s)
13731}
13732
13733// GoString returns the string representation
13734func (s GetCampaignVersionOutput) GoString() string {
13735	return s.String()
13736}
13737
13738// SetCampaignResponse sets the CampaignResponse field's value.
13739func (s *GetCampaignVersionOutput) SetCampaignResponse(v *CampaignResponse) *GetCampaignVersionOutput {
13740	s.CampaignResponse = v
13741	return s
13742}
13743
13744type GetCampaignVersionsInput struct {
13745	_ struct{} `type:"structure"`
13746
13747	// ApplicationId is a required field
13748	ApplicationId *string `location:"uri" locationName:"application-id" type:"string" required:"true"`
13749
13750	// CampaignId is a required field
13751	CampaignId *string `location:"uri" locationName:"campaign-id" type:"string" required:"true"`
13752
13753	PageSize *string `location:"querystring" locationName:"page-size" type:"string"`
13754
13755	Token *string `location:"querystring" locationName:"token" type:"string"`
13756}
13757
13758// String returns the string representation
13759func (s GetCampaignVersionsInput) String() string {
13760	return awsutil.Prettify(s)
13761}
13762
13763// GoString returns the string representation
13764func (s GetCampaignVersionsInput) GoString() string {
13765	return s.String()
13766}
13767
13768// Validate inspects the fields of the type to determine if they are valid.
13769func (s *GetCampaignVersionsInput) Validate() error {
13770	invalidParams := request.ErrInvalidParams{Context: "GetCampaignVersionsInput"}
13771	if s.ApplicationId == nil {
13772		invalidParams.Add(request.NewErrParamRequired("ApplicationId"))
13773	}
13774	if s.CampaignId == nil {
13775		invalidParams.Add(request.NewErrParamRequired("CampaignId"))
13776	}
13777
13778	if invalidParams.Len() > 0 {
13779		return invalidParams
13780	}
13781	return nil
13782}
13783
13784// SetApplicationId sets the ApplicationId field's value.
13785func (s *GetCampaignVersionsInput) SetApplicationId(v string) *GetCampaignVersionsInput {
13786	s.ApplicationId = &v
13787	return s
13788}
13789
13790// SetCampaignId sets the CampaignId field's value.
13791func (s *GetCampaignVersionsInput) SetCampaignId(v string) *GetCampaignVersionsInput {
13792	s.CampaignId = &v
13793	return s
13794}
13795
13796// SetPageSize sets the PageSize field's value.
13797func (s *GetCampaignVersionsInput) SetPageSize(v string) *GetCampaignVersionsInput {
13798	s.PageSize = &v
13799	return s
13800}
13801
13802// SetToken sets the Token field's value.
13803func (s *GetCampaignVersionsInput) SetToken(v string) *GetCampaignVersionsInput {
13804	s.Token = &v
13805	return s
13806}
13807
13808type GetCampaignVersionsOutput struct {
13809	_ struct{} `type:"structure" payload:"CampaignsResponse"`
13810
13811	// List of available campaigns.
13812	//
13813	// CampaignsResponse is a required field
13814	CampaignsResponse *CampaignsResponse `type:"structure" required:"true"`
13815}
13816
13817// String returns the string representation
13818func (s GetCampaignVersionsOutput) String() string {
13819	return awsutil.Prettify(s)
13820}
13821
13822// GoString returns the string representation
13823func (s GetCampaignVersionsOutput) GoString() string {
13824	return s.String()
13825}
13826
13827// SetCampaignsResponse sets the CampaignsResponse field's value.
13828func (s *GetCampaignVersionsOutput) SetCampaignsResponse(v *CampaignsResponse) *GetCampaignVersionsOutput {
13829	s.CampaignsResponse = v
13830	return s
13831}
13832
13833type GetCampaignsInput struct {
13834	_ struct{} `type:"structure"`
13835
13836	// ApplicationId is a required field
13837	ApplicationId *string `location:"uri" locationName:"application-id" type:"string" required:"true"`
13838
13839	PageSize *string `location:"querystring" locationName:"page-size" type:"string"`
13840
13841	Token *string `location:"querystring" locationName:"token" type:"string"`
13842}
13843
13844// String returns the string representation
13845func (s GetCampaignsInput) String() string {
13846	return awsutil.Prettify(s)
13847}
13848
13849// GoString returns the string representation
13850func (s GetCampaignsInput) GoString() string {
13851	return s.String()
13852}
13853
13854// Validate inspects the fields of the type to determine if they are valid.
13855func (s *GetCampaignsInput) Validate() error {
13856	invalidParams := request.ErrInvalidParams{Context: "GetCampaignsInput"}
13857	if s.ApplicationId == nil {
13858		invalidParams.Add(request.NewErrParamRequired("ApplicationId"))
13859	}
13860
13861	if invalidParams.Len() > 0 {
13862		return invalidParams
13863	}
13864	return nil
13865}
13866
13867// SetApplicationId sets the ApplicationId field's value.
13868func (s *GetCampaignsInput) SetApplicationId(v string) *GetCampaignsInput {
13869	s.ApplicationId = &v
13870	return s
13871}
13872
13873// SetPageSize sets the PageSize field's value.
13874func (s *GetCampaignsInput) SetPageSize(v string) *GetCampaignsInput {
13875	s.PageSize = &v
13876	return s
13877}
13878
13879// SetToken sets the Token field's value.
13880func (s *GetCampaignsInput) SetToken(v string) *GetCampaignsInput {
13881	s.Token = &v
13882	return s
13883}
13884
13885type GetCampaignsOutput struct {
13886	_ struct{} `type:"structure" payload:"CampaignsResponse"`
13887
13888	// List of available campaigns.
13889	//
13890	// CampaignsResponse is a required field
13891	CampaignsResponse *CampaignsResponse `type:"structure" required:"true"`
13892}
13893
13894// String returns the string representation
13895func (s GetCampaignsOutput) String() string {
13896	return awsutil.Prettify(s)
13897}
13898
13899// GoString returns the string representation
13900func (s GetCampaignsOutput) GoString() string {
13901	return s.String()
13902}
13903
13904// SetCampaignsResponse sets the CampaignsResponse field's value.
13905func (s *GetCampaignsOutput) SetCampaignsResponse(v *CampaignsResponse) *GetCampaignsOutput {
13906	s.CampaignsResponse = v
13907	return s
13908}
13909
13910type GetChannelsInput struct {
13911	_ struct{} `type:"structure"`
13912
13913	// ApplicationId is a required field
13914	ApplicationId *string `location:"uri" locationName:"application-id" type:"string" required:"true"`
13915}
13916
13917// String returns the string representation
13918func (s GetChannelsInput) String() string {
13919	return awsutil.Prettify(s)
13920}
13921
13922// GoString returns the string representation
13923func (s GetChannelsInput) GoString() string {
13924	return s.String()
13925}
13926
13927// Validate inspects the fields of the type to determine if they are valid.
13928func (s *GetChannelsInput) Validate() error {
13929	invalidParams := request.ErrInvalidParams{Context: "GetChannelsInput"}
13930	if s.ApplicationId == nil {
13931		invalidParams.Add(request.NewErrParamRequired("ApplicationId"))
13932	}
13933
13934	if invalidParams.Len() > 0 {
13935		return invalidParams
13936	}
13937	return nil
13938}
13939
13940// SetApplicationId sets the ApplicationId field's value.
13941func (s *GetChannelsInput) SetApplicationId(v string) *GetChannelsInput {
13942	s.ApplicationId = &v
13943	return s
13944}
13945
13946type GetChannelsOutput struct {
13947	_ struct{} `type:"structure" payload:"ChannelsResponse"`
13948
13949	// Get channels definition
13950	//
13951	// ChannelsResponse is a required field
13952	ChannelsResponse *ChannelsResponse `type:"structure" required:"true"`
13953}
13954
13955// String returns the string representation
13956func (s GetChannelsOutput) String() string {
13957	return awsutil.Prettify(s)
13958}
13959
13960// GoString returns the string representation
13961func (s GetChannelsOutput) GoString() string {
13962	return s.String()
13963}
13964
13965// SetChannelsResponse sets the ChannelsResponse field's value.
13966func (s *GetChannelsOutput) SetChannelsResponse(v *ChannelsResponse) *GetChannelsOutput {
13967	s.ChannelsResponse = v
13968	return s
13969}
13970
13971type GetEmailChannelInput struct {
13972	_ struct{} `type:"structure"`
13973
13974	// ApplicationId is a required field
13975	ApplicationId *string `location:"uri" locationName:"application-id" type:"string" required:"true"`
13976}
13977
13978// String returns the string representation
13979func (s GetEmailChannelInput) String() string {
13980	return awsutil.Prettify(s)
13981}
13982
13983// GoString returns the string representation
13984func (s GetEmailChannelInput) GoString() string {
13985	return s.String()
13986}
13987
13988// Validate inspects the fields of the type to determine if they are valid.
13989func (s *GetEmailChannelInput) Validate() error {
13990	invalidParams := request.ErrInvalidParams{Context: "GetEmailChannelInput"}
13991	if s.ApplicationId == nil {
13992		invalidParams.Add(request.NewErrParamRequired("ApplicationId"))
13993	}
13994
13995	if invalidParams.Len() > 0 {
13996		return invalidParams
13997	}
13998	return nil
13999}
14000
14001// SetApplicationId sets the ApplicationId field's value.
14002func (s *GetEmailChannelInput) SetApplicationId(v string) *GetEmailChannelInput {
14003	s.ApplicationId = &v
14004	return s
14005}
14006
14007type GetEmailChannelOutput struct {
14008	_ struct{} `type:"structure" payload:"EmailChannelResponse"`
14009
14010	// Email Channel Response.
14011	//
14012	// EmailChannelResponse is a required field
14013	EmailChannelResponse *EmailChannelResponse `type:"structure" required:"true"`
14014}
14015
14016// String returns the string representation
14017func (s GetEmailChannelOutput) String() string {
14018	return awsutil.Prettify(s)
14019}
14020
14021// GoString returns the string representation
14022func (s GetEmailChannelOutput) GoString() string {
14023	return s.String()
14024}
14025
14026// SetEmailChannelResponse sets the EmailChannelResponse field's value.
14027func (s *GetEmailChannelOutput) SetEmailChannelResponse(v *EmailChannelResponse) *GetEmailChannelOutput {
14028	s.EmailChannelResponse = v
14029	return s
14030}
14031
14032type GetEndpointInput struct {
14033	_ struct{} `type:"structure"`
14034
14035	// ApplicationId is a required field
14036	ApplicationId *string `location:"uri" locationName:"application-id" type:"string" required:"true"`
14037
14038	// EndpointId is a required field
14039	EndpointId *string `location:"uri" locationName:"endpoint-id" type:"string" required:"true"`
14040}
14041
14042// String returns the string representation
14043func (s GetEndpointInput) String() string {
14044	return awsutil.Prettify(s)
14045}
14046
14047// GoString returns the string representation
14048func (s GetEndpointInput) GoString() string {
14049	return s.String()
14050}
14051
14052// Validate inspects the fields of the type to determine if they are valid.
14053func (s *GetEndpointInput) Validate() error {
14054	invalidParams := request.ErrInvalidParams{Context: "GetEndpointInput"}
14055	if s.ApplicationId == nil {
14056		invalidParams.Add(request.NewErrParamRequired("ApplicationId"))
14057	}
14058	if s.EndpointId == nil {
14059		invalidParams.Add(request.NewErrParamRequired("EndpointId"))
14060	}
14061
14062	if invalidParams.Len() > 0 {
14063		return invalidParams
14064	}
14065	return nil
14066}
14067
14068// SetApplicationId sets the ApplicationId field's value.
14069func (s *GetEndpointInput) SetApplicationId(v string) *GetEndpointInput {
14070	s.ApplicationId = &v
14071	return s
14072}
14073
14074// SetEndpointId sets the EndpointId field's value.
14075func (s *GetEndpointInput) SetEndpointId(v string) *GetEndpointInput {
14076	s.EndpointId = &v
14077	return s
14078}
14079
14080type GetEndpointOutput struct {
14081	_ struct{} `type:"structure" payload:"EndpointResponse"`
14082
14083	// Endpoint response
14084	//
14085	// EndpointResponse is a required field
14086	EndpointResponse *EndpointResponse `type:"structure" required:"true"`
14087}
14088
14089// String returns the string representation
14090func (s GetEndpointOutput) String() string {
14091	return awsutil.Prettify(s)
14092}
14093
14094// GoString returns the string representation
14095func (s GetEndpointOutput) GoString() string {
14096	return s.String()
14097}
14098
14099// SetEndpointResponse sets the EndpointResponse field's value.
14100func (s *GetEndpointOutput) SetEndpointResponse(v *EndpointResponse) *GetEndpointOutput {
14101	s.EndpointResponse = v
14102	return s
14103}
14104
14105type GetEventStreamInput struct {
14106	_ struct{} `type:"structure"`
14107
14108	// ApplicationId is a required field
14109	ApplicationId *string `location:"uri" locationName:"application-id" type:"string" required:"true"`
14110}
14111
14112// String returns the string representation
14113func (s GetEventStreamInput) String() string {
14114	return awsutil.Prettify(s)
14115}
14116
14117// GoString returns the string representation
14118func (s GetEventStreamInput) GoString() string {
14119	return s.String()
14120}
14121
14122// Validate inspects the fields of the type to determine if they are valid.
14123func (s *GetEventStreamInput) Validate() error {
14124	invalidParams := request.ErrInvalidParams{Context: "GetEventStreamInput"}
14125	if s.ApplicationId == nil {
14126		invalidParams.Add(request.NewErrParamRequired("ApplicationId"))
14127	}
14128
14129	if invalidParams.Len() > 0 {
14130		return invalidParams
14131	}
14132	return nil
14133}
14134
14135// SetApplicationId sets the ApplicationId field's value.
14136func (s *GetEventStreamInput) SetApplicationId(v string) *GetEventStreamInput {
14137	s.ApplicationId = &v
14138	return s
14139}
14140
14141type GetEventStreamOutput struct {
14142	_ struct{} `type:"structure" payload:"EventStream"`
14143
14144	// Model for an event publishing subscription export.
14145	//
14146	// EventStream is a required field
14147	EventStream *EventStream `type:"structure" required:"true"`
14148}
14149
14150// String returns the string representation
14151func (s GetEventStreamOutput) String() string {
14152	return awsutil.Prettify(s)
14153}
14154
14155// GoString returns the string representation
14156func (s GetEventStreamOutput) GoString() string {
14157	return s.String()
14158}
14159
14160// SetEventStream sets the EventStream field's value.
14161func (s *GetEventStreamOutput) SetEventStream(v *EventStream) *GetEventStreamOutput {
14162	s.EventStream = v
14163	return s
14164}
14165
14166type GetExportJobInput struct {
14167	_ struct{} `type:"structure"`
14168
14169	// ApplicationId is a required field
14170	ApplicationId *string `location:"uri" locationName:"application-id" type:"string" required:"true"`
14171
14172	// JobId is a required field
14173	JobId *string `location:"uri" locationName:"job-id" type:"string" required:"true"`
14174}
14175
14176// String returns the string representation
14177func (s GetExportJobInput) String() string {
14178	return awsutil.Prettify(s)
14179}
14180
14181// GoString returns the string representation
14182func (s GetExportJobInput) GoString() string {
14183	return s.String()
14184}
14185
14186// Validate inspects the fields of the type to determine if they are valid.
14187func (s *GetExportJobInput) Validate() error {
14188	invalidParams := request.ErrInvalidParams{Context: "GetExportJobInput"}
14189	if s.ApplicationId == nil {
14190		invalidParams.Add(request.NewErrParamRequired("ApplicationId"))
14191	}
14192	if s.JobId == nil {
14193		invalidParams.Add(request.NewErrParamRequired("JobId"))
14194	}
14195
14196	if invalidParams.Len() > 0 {
14197		return invalidParams
14198	}
14199	return nil
14200}
14201
14202// SetApplicationId sets the ApplicationId field's value.
14203func (s *GetExportJobInput) SetApplicationId(v string) *GetExportJobInput {
14204	s.ApplicationId = &v
14205	return s
14206}
14207
14208// SetJobId sets the JobId field's value.
14209func (s *GetExportJobInput) SetJobId(v string) *GetExportJobInput {
14210	s.JobId = &v
14211	return s
14212}
14213
14214type GetExportJobOutput struct {
14215	_ struct{} `type:"structure" payload:"ExportJobResponse"`
14216
14217	// Export job response.
14218	//
14219	// ExportJobResponse is a required field
14220	ExportJobResponse *ExportJobResponse `type:"structure" required:"true"`
14221}
14222
14223// String returns the string representation
14224func (s GetExportJobOutput) String() string {
14225	return awsutil.Prettify(s)
14226}
14227
14228// GoString returns the string representation
14229func (s GetExportJobOutput) GoString() string {
14230	return s.String()
14231}
14232
14233// SetExportJobResponse sets the ExportJobResponse field's value.
14234func (s *GetExportJobOutput) SetExportJobResponse(v *ExportJobResponse) *GetExportJobOutput {
14235	s.ExportJobResponse = v
14236	return s
14237}
14238
14239type GetExportJobsInput struct {
14240	_ struct{} `type:"structure"`
14241
14242	// ApplicationId is a required field
14243	ApplicationId *string `location:"uri" locationName:"application-id" type:"string" required:"true"`
14244
14245	PageSize *string `location:"querystring" locationName:"page-size" type:"string"`
14246
14247	Token *string `location:"querystring" locationName:"token" type:"string"`
14248}
14249
14250// String returns the string representation
14251func (s GetExportJobsInput) String() string {
14252	return awsutil.Prettify(s)
14253}
14254
14255// GoString returns the string representation
14256func (s GetExportJobsInput) GoString() string {
14257	return s.String()
14258}
14259
14260// Validate inspects the fields of the type to determine if they are valid.
14261func (s *GetExportJobsInput) Validate() error {
14262	invalidParams := request.ErrInvalidParams{Context: "GetExportJobsInput"}
14263	if s.ApplicationId == nil {
14264		invalidParams.Add(request.NewErrParamRequired("ApplicationId"))
14265	}
14266
14267	if invalidParams.Len() > 0 {
14268		return invalidParams
14269	}
14270	return nil
14271}
14272
14273// SetApplicationId sets the ApplicationId field's value.
14274func (s *GetExportJobsInput) SetApplicationId(v string) *GetExportJobsInput {
14275	s.ApplicationId = &v
14276	return s
14277}
14278
14279// SetPageSize sets the PageSize field's value.
14280func (s *GetExportJobsInput) SetPageSize(v string) *GetExportJobsInput {
14281	s.PageSize = &v
14282	return s
14283}
14284
14285// SetToken sets the Token field's value.
14286func (s *GetExportJobsInput) SetToken(v string) *GetExportJobsInput {
14287	s.Token = &v
14288	return s
14289}
14290
14291type GetExportJobsOutput struct {
14292	_ struct{} `type:"structure" payload:"ExportJobsResponse"`
14293
14294	// Export job list.
14295	//
14296	// ExportJobsResponse is a required field
14297	ExportJobsResponse *ExportJobsResponse `type:"structure" required:"true"`
14298}
14299
14300// String returns the string representation
14301func (s GetExportJobsOutput) String() string {
14302	return awsutil.Prettify(s)
14303}
14304
14305// GoString returns the string representation
14306func (s GetExportJobsOutput) GoString() string {
14307	return s.String()
14308}
14309
14310// SetExportJobsResponse sets the ExportJobsResponse field's value.
14311func (s *GetExportJobsOutput) SetExportJobsResponse(v *ExportJobsResponse) *GetExportJobsOutput {
14312	s.ExportJobsResponse = v
14313	return s
14314}
14315
14316type GetGcmChannelInput struct {
14317	_ struct{} `type:"structure"`
14318
14319	// ApplicationId is a required field
14320	ApplicationId *string `location:"uri" locationName:"application-id" type:"string" required:"true"`
14321}
14322
14323// String returns the string representation
14324func (s GetGcmChannelInput) String() string {
14325	return awsutil.Prettify(s)
14326}
14327
14328// GoString returns the string representation
14329func (s GetGcmChannelInput) GoString() string {
14330	return s.String()
14331}
14332
14333// Validate inspects the fields of the type to determine if they are valid.
14334func (s *GetGcmChannelInput) Validate() error {
14335	invalidParams := request.ErrInvalidParams{Context: "GetGcmChannelInput"}
14336	if s.ApplicationId == nil {
14337		invalidParams.Add(request.NewErrParamRequired("ApplicationId"))
14338	}
14339
14340	if invalidParams.Len() > 0 {
14341		return invalidParams
14342	}
14343	return nil
14344}
14345
14346// SetApplicationId sets the ApplicationId field's value.
14347func (s *GetGcmChannelInput) SetApplicationId(v string) *GetGcmChannelInput {
14348	s.ApplicationId = &v
14349	return s
14350}
14351
14352type GetGcmChannelOutput struct {
14353	_ struct{} `type:"structure" payload:"GCMChannelResponse"`
14354
14355	// Google Cloud Messaging channel definition
14356	//
14357	// GCMChannelResponse is a required field
14358	GCMChannelResponse *GCMChannelResponse `type:"structure" required:"true"`
14359}
14360
14361// String returns the string representation
14362func (s GetGcmChannelOutput) String() string {
14363	return awsutil.Prettify(s)
14364}
14365
14366// GoString returns the string representation
14367func (s GetGcmChannelOutput) GoString() string {
14368	return s.String()
14369}
14370
14371// SetGCMChannelResponse sets the GCMChannelResponse field's value.
14372func (s *GetGcmChannelOutput) SetGCMChannelResponse(v *GCMChannelResponse) *GetGcmChannelOutput {
14373	s.GCMChannelResponse = v
14374	return s
14375}
14376
14377type GetImportJobInput struct {
14378	_ struct{} `type:"structure"`
14379
14380	// ApplicationId is a required field
14381	ApplicationId *string `location:"uri" locationName:"application-id" type:"string" required:"true"`
14382
14383	// JobId is a required field
14384	JobId *string `location:"uri" locationName:"job-id" type:"string" required:"true"`
14385}
14386
14387// String returns the string representation
14388func (s GetImportJobInput) String() string {
14389	return awsutil.Prettify(s)
14390}
14391
14392// GoString returns the string representation
14393func (s GetImportJobInput) GoString() string {
14394	return s.String()
14395}
14396
14397// Validate inspects the fields of the type to determine if they are valid.
14398func (s *GetImportJobInput) Validate() error {
14399	invalidParams := request.ErrInvalidParams{Context: "GetImportJobInput"}
14400	if s.ApplicationId == nil {
14401		invalidParams.Add(request.NewErrParamRequired("ApplicationId"))
14402	}
14403	if s.JobId == nil {
14404		invalidParams.Add(request.NewErrParamRequired("JobId"))
14405	}
14406
14407	if invalidParams.Len() > 0 {
14408		return invalidParams
14409	}
14410	return nil
14411}
14412
14413// SetApplicationId sets the ApplicationId field's value.
14414func (s *GetImportJobInput) SetApplicationId(v string) *GetImportJobInput {
14415	s.ApplicationId = &v
14416	return s
14417}
14418
14419// SetJobId sets the JobId field's value.
14420func (s *GetImportJobInput) SetJobId(v string) *GetImportJobInput {
14421	s.JobId = &v
14422	return s
14423}
14424
14425type GetImportJobOutput struct {
14426	_ struct{} `type:"structure" payload:"ImportJobResponse"`
14427
14428	// Import job response.
14429	//
14430	// ImportJobResponse is a required field
14431	ImportJobResponse *ImportJobResponse `type:"structure" required:"true"`
14432}
14433
14434// String returns the string representation
14435func (s GetImportJobOutput) String() string {
14436	return awsutil.Prettify(s)
14437}
14438
14439// GoString returns the string representation
14440func (s GetImportJobOutput) GoString() string {
14441	return s.String()
14442}
14443
14444// SetImportJobResponse sets the ImportJobResponse field's value.
14445func (s *GetImportJobOutput) SetImportJobResponse(v *ImportJobResponse) *GetImportJobOutput {
14446	s.ImportJobResponse = v
14447	return s
14448}
14449
14450type GetImportJobsInput struct {
14451	_ struct{} `type:"structure"`
14452
14453	// ApplicationId is a required field
14454	ApplicationId *string `location:"uri" locationName:"application-id" type:"string" required:"true"`
14455
14456	PageSize *string `location:"querystring" locationName:"page-size" type:"string"`
14457
14458	Token *string `location:"querystring" locationName:"token" type:"string"`
14459}
14460
14461// String returns the string representation
14462func (s GetImportJobsInput) String() string {
14463	return awsutil.Prettify(s)
14464}
14465
14466// GoString returns the string representation
14467func (s GetImportJobsInput) GoString() string {
14468	return s.String()
14469}
14470
14471// Validate inspects the fields of the type to determine if they are valid.
14472func (s *GetImportJobsInput) Validate() error {
14473	invalidParams := request.ErrInvalidParams{Context: "GetImportJobsInput"}
14474	if s.ApplicationId == nil {
14475		invalidParams.Add(request.NewErrParamRequired("ApplicationId"))
14476	}
14477
14478	if invalidParams.Len() > 0 {
14479		return invalidParams
14480	}
14481	return nil
14482}
14483
14484// SetApplicationId sets the ApplicationId field's value.
14485func (s *GetImportJobsInput) SetApplicationId(v string) *GetImportJobsInput {
14486	s.ApplicationId = &v
14487	return s
14488}
14489
14490// SetPageSize sets the PageSize field's value.
14491func (s *GetImportJobsInput) SetPageSize(v string) *GetImportJobsInput {
14492	s.PageSize = &v
14493	return s
14494}
14495
14496// SetToken sets the Token field's value.
14497func (s *GetImportJobsInput) SetToken(v string) *GetImportJobsInput {
14498	s.Token = &v
14499	return s
14500}
14501
14502type GetImportJobsOutput struct {
14503	_ struct{} `type:"structure" payload:"ImportJobsResponse"`
14504
14505	// Import job list.
14506	//
14507	// ImportJobsResponse is a required field
14508	ImportJobsResponse *ImportJobsResponse `type:"structure" required:"true"`
14509}
14510
14511// String returns the string representation
14512func (s GetImportJobsOutput) String() string {
14513	return awsutil.Prettify(s)
14514}
14515
14516// GoString returns the string representation
14517func (s GetImportJobsOutput) GoString() string {
14518	return s.String()
14519}
14520
14521// SetImportJobsResponse sets the ImportJobsResponse field's value.
14522func (s *GetImportJobsOutput) SetImportJobsResponse(v *ImportJobsResponse) *GetImportJobsOutput {
14523	s.ImportJobsResponse = v
14524	return s
14525}
14526
14527type GetSegmentExportJobsInput struct {
14528	_ struct{} `type:"structure"`
14529
14530	// ApplicationId is a required field
14531	ApplicationId *string `location:"uri" locationName:"application-id" type:"string" required:"true"`
14532
14533	PageSize *string `location:"querystring" locationName:"page-size" type:"string"`
14534
14535	// SegmentId is a required field
14536	SegmentId *string `location:"uri" locationName:"segment-id" type:"string" required:"true"`
14537
14538	Token *string `location:"querystring" locationName:"token" type:"string"`
14539}
14540
14541// String returns the string representation
14542func (s GetSegmentExportJobsInput) String() string {
14543	return awsutil.Prettify(s)
14544}
14545
14546// GoString returns the string representation
14547func (s GetSegmentExportJobsInput) GoString() string {
14548	return s.String()
14549}
14550
14551// Validate inspects the fields of the type to determine if they are valid.
14552func (s *GetSegmentExportJobsInput) Validate() error {
14553	invalidParams := request.ErrInvalidParams{Context: "GetSegmentExportJobsInput"}
14554	if s.ApplicationId == nil {
14555		invalidParams.Add(request.NewErrParamRequired("ApplicationId"))
14556	}
14557	if s.SegmentId == nil {
14558		invalidParams.Add(request.NewErrParamRequired("SegmentId"))
14559	}
14560
14561	if invalidParams.Len() > 0 {
14562		return invalidParams
14563	}
14564	return nil
14565}
14566
14567// SetApplicationId sets the ApplicationId field's value.
14568func (s *GetSegmentExportJobsInput) SetApplicationId(v string) *GetSegmentExportJobsInput {
14569	s.ApplicationId = &v
14570	return s
14571}
14572
14573// SetPageSize sets the PageSize field's value.
14574func (s *GetSegmentExportJobsInput) SetPageSize(v string) *GetSegmentExportJobsInput {
14575	s.PageSize = &v
14576	return s
14577}
14578
14579// SetSegmentId sets the SegmentId field's value.
14580func (s *GetSegmentExportJobsInput) SetSegmentId(v string) *GetSegmentExportJobsInput {
14581	s.SegmentId = &v
14582	return s
14583}
14584
14585// SetToken sets the Token field's value.
14586func (s *GetSegmentExportJobsInput) SetToken(v string) *GetSegmentExportJobsInput {
14587	s.Token = &v
14588	return s
14589}
14590
14591type GetSegmentExportJobsOutput struct {
14592	_ struct{} `type:"structure" payload:"ExportJobsResponse"`
14593
14594	// Export job list.
14595	//
14596	// ExportJobsResponse is a required field
14597	ExportJobsResponse *ExportJobsResponse `type:"structure" required:"true"`
14598}
14599
14600// String returns the string representation
14601func (s GetSegmentExportJobsOutput) String() string {
14602	return awsutil.Prettify(s)
14603}
14604
14605// GoString returns the string representation
14606func (s GetSegmentExportJobsOutput) GoString() string {
14607	return s.String()
14608}
14609
14610// SetExportJobsResponse sets the ExportJobsResponse field's value.
14611func (s *GetSegmentExportJobsOutput) SetExportJobsResponse(v *ExportJobsResponse) *GetSegmentExportJobsOutput {
14612	s.ExportJobsResponse = v
14613	return s
14614}
14615
14616type GetSegmentImportJobsInput struct {
14617	_ struct{} `type:"structure"`
14618
14619	// ApplicationId is a required field
14620	ApplicationId *string `location:"uri" locationName:"application-id" type:"string" required:"true"`
14621
14622	PageSize *string `location:"querystring" locationName:"page-size" type:"string"`
14623
14624	// SegmentId is a required field
14625	SegmentId *string `location:"uri" locationName:"segment-id" type:"string" required:"true"`
14626
14627	Token *string `location:"querystring" locationName:"token" type:"string"`
14628}
14629
14630// String returns the string representation
14631func (s GetSegmentImportJobsInput) String() string {
14632	return awsutil.Prettify(s)
14633}
14634
14635// GoString returns the string representation
14636func (s GetSegmentImportJobsInput) GoString() string {
14637	return s.String()
14638}
14639
14640// Validate inspects the fields of the type to determine if they are valid.
14641func (s *GetSegmentImportJobsInput) Validate() error {
14642	invalidParams := request.ErrInvalidParams{Context: "GetSegmentImportJobsInput"}
14643	if s.ApplicationId == nil {
14644		invalidParams.Add(request.NewErrParamRequired("ApplicationId"))
14645	}
14646	if s.SegmentId == nil {
14647		invalidParams.Add(request.NewErrParamRequired("SegmentId"))
14648	}
14649
14650	if invalidParams.Len() > 0 {
14651		return invalidParams
14652	}
14653	return nil
14654}
14655
14656// SetApplicationId sets the ApplicationId field's value.
14657func (s *GetSegmentImportJobsInput) SetApplicationId(v string) *GetSegmentImportJobsInput {
14658	s.ApplicationId = &v
14659	return s
14660}
14661
14662// SetPageSize sets the PageSize field's value.
14663func (s *GetSegmentImportJobsInput) SetPageSize(v string) *GetSegmentImportJobsInput {
14664	s.PageSize = &v
14665	return s
14666}
14667
14668// SetSegmentId sets the SegmentId field's value.
14669func (s *GetSegmentImportJobsInput) SetSegmentId(v string) *GetSegmentImportJobsInput {
14670	s.SegmentId = &v
14671	return s
14672}
14673
14674// SetToken sets the Token field's value.
14675func (s *GetSegmentImportJobsInput) SetToken(v string) *GetSegmentImportJobsInput {
14676	s.Token = &v
14677	return s
14678}
14679
14680type GetSegmentImportJobsOutput struct {
14681	_ struct{} `type:"structure" payload:"ImportJobsResponse"`
14682
14683	// Import job list.
14684	//
14685	// ImportJobsResponse is a required field
14686	ImportJobsResponse *ImportJobsResponse `type:"structure" required:"true"`
14687}
14688
14689// String returns the string representation
14690func (s GetSegmentImportJobsOutput) String() string {
14691	return awsutil.Prettify(s)
14692}
14693
14694// GoString returns the string representation
14695func (s GetSegmentImportJobsOutput) GoString() string {
14696	return s.String()
14697}
14698
14699// SetImportJobsResponse sets the ImportJobsResponse field's value.
14700func (s *GetSegmentImportJobsOutput) SetImportJobsResponse(v *ImportJobsResponse) *GetSegmentImportJobsOutput {
14701	s.ImportJobsResponse = v
14702	return s
14703}
14704
14705type GetSegmentInput struct {
14706	_ struct{} `type:"structure"`
14707
14708	// ApplicationId is a required field
14709	ApplicationId *string `location:"uri" locationName:"application-id" type:"string" required:"true"`
14710
14711	// SegmentId is a required field
14712	SegmentId *string `location:"uri" locationName:"segment-id" type:"string" required:"true"`
14713}
14714
14715// String returns the string representation
14716func (s GetSegmentInput) String() string {
14717	return awsutil.Prettify(s)
14718}
14719
14720// GoString returns the string representation
14721func (s GetSegmentInput) GoString() string {
14722	return s.String()
14723}
14724
14725// Validate inspects the fields of the type to determine if they are valid.
14726func (s *GetSegmentInput) Validate() error {
14727	invalidParams := request.ErrInvalidParams{Context: "GetSegmentInput"}
14728	if s.ApplicationId == nil {
14729		invalidParams.Add(request.NewErrParamRequired("ApplicationId"))
14730	}
14731	if s.SegmentId == nil {
14732		invalidParams.Add(request.NewErrParamRequired("SegmentId"))
14733	}
14734
14735	if invalidParams.Len() > 0 {
14736		return invalidParams
14737	}
14738	return nil
14739}
14740
14741// SetApplicationId sets the ApplicationId field's value.
14742func (s *GetSegmentInput) SetApplicationId(v string) *GetSegmentInput {
14743	s.ApplicationId = &v
14744	return s
14745}
14746
14747// SetSegmentId sets the SegmentId field's value.
14748func (s *GetSegmentInput) SetSegmentId(v string) *GetSegmentInput {
14749	s.SegmentId = &v
14750	return s
14751}
14752
14753type GetSegmentOutput struct {
14754	_ struct{} `type:"structure" payload:"SegmentResponse"`
14755
14756	// Segment definition.
14757	//
14758	// SegmentResponse is a required field
14759	SegmentResponse *SegmentResponse `type:"structure" required:"true"`
14760}
14761
14762// String returns the string representation
14763func (s GetSegmentOutput) String() string {
14764	return awsutil.Prettify(s)
14765}
14766
14767// GoString returns the string representation
14768func (s GetSegmentOutput) GoString() string {
14769	return s.String()
14770}
14771
14772// SetSegmentResponse sets the SegmentResponse field's value.
14773func (s *GetSegmentOutput) SetSegmentResponse(v *SegmentResponse) *GetSegmentOutput {
14774	s.SegmentResponse = v
14775	return s
14776}
14777
14778type GetSegmentVersionInput struct {
14779	_ struct{} `type:"structure"`
14780
14781	// ApplicationId is a required field
14782	ApplicationId *string `location:"uri" locationName:"application-id" type:"string" required:"true"`
14783
14784	// SegmentId is a required field
14785	SegmentId *string `location:"uri" locationName:"segment-id" type:"string" required:"true"`
14786
14787	// Version is a required field
14788	Version *string `location:"uri" locationName:"version" type:"string" required:"true"`
14789}
14790
14791// String returns the string representation
14792func (s GetSegmentVersionInput) String() string {
14793	return awsutil.Prettify(s)
14794}
14795
14796// GoString returns the string representation
14797func (s GetSegmentVersionInput) GoString() string {
14798	return s.String()
14799}
14800
14801// Validate inspects the fields of the type to determine if they are valid.
14802func (s *GetSegmentVersionInput) Validate() error {
14803	invalidParams := request.ErrInvalidParams{Context: "GetSegmentVersionInput"}
14804	if s.ApplicationId == nil {
14805		invalidParams.Add(request.NewErrParamRequired("ApplicationId"))
14806	}
14807	if s.SegmentId == nil {
14808		invalidParams.Add(request.NewErrParamRequired("SegmentId"))
14809	}
14810	if s.Version == nil {
14811		invalidParams.Add(request.NewErrParamRequired("Version"))
14812	}
14813
14814	if invalidParams.Len() > 0 {
14815		return invalidParams
14816	}
14817	return nil
14818}
14819
14820// SetApplicationId sets the ApplicationId field's value.
14821func (s *GetSegmentVersionInput) SetApplicationId(v string) *GetSegmentVersionInput {
14822	s.ApplicationId = &v
14823	return s
14824}
14825
14826// SetSegmentId sets the SegmentId field's value.
14827func (s *GetSegmentVersionInput) SetSegmentId(v string) *GetSegmentVersionInput {
14828	s.SegmentId = &v
14829	return s
14830}
14831
14832// SetVersion sets the Version field's value.
14833func (s *GetSegmentVersionInput) SetVersion(v string) *GetSegmentVersionInput {
14834	s.Version = &v
14835	return s
14836}
14837
14838type GetSegmentVersionOutput struct {
14839	_ struct{} `type:"structure" payload:"SegmentResponse"`
14840
14841	// Segment definition.
14842	//
14843	// SegmentResponse is a required field
14844	SegmentResponse *SegmentResponse `type:"structure" required:"true"`
14845}
14846
14847// String returns the string representation
14848func (s GetSegmentVersionOutput) String() string {
14849	return awsutil.Prettify(s)
14850}
14851
14852// GoString returns the string representation
14853func (s GetSegmentVersionOutput) GoString() string {
14854	return s.String()
14855}
14856
14857// SetSegmentResponse sets the SegmentResponse field's value.
14858func (s *GetSegmentVersionOutput) SetSegmentResponse(v *SegmentResponse) *GetSegmentVersionOutput {
14859	s.SegmentResponse = v
14860	return s
14861}
14862
14863type GetSegmentVersionsInput struct {
14864	_ struct{} `type:"structure"`
14865
14866	// ApplicationId is a required field
14867	ApplicationId *string `location:"uri" locationName:"application-id" type:"string" required:"true"`
14868
14869	PageSize *string `location:"querystring" locationName:"page-size" type:"string"`
14870
14871	// SegmentId is a required field
14872	SegmentId *string `location:"uri" locationName:"segment-id" type:"string" required:"true"`
14873
14874	Token *string `location:"querystring" locationName:"token" type:"string"`
14875}
14876
14877// String returns the string representation
14878func (s GetSegmentVersionsInput) String() string {
14879	return awsutil.Prettify(s)
14880}
14881
14882// GoString returns the string representation
14883func (s GetSegmentVersionsInput) GoString() string {
14884	return s.String()
14885}
14886
14887// Validate inspects the fields of the type to determine if they are valid.
14888func (s *GetSegmentVersionsInput) Validate() error {
14889	invalidParams := request.ErrInvalidParams{Context: "GetSegmentVersionsInput"}
14890	if s.ApplicationId == nil {
14891		invalidParams.Add(request.NewErrParamRequired("ApplicationId"))
14892	}
14893	if s.SegmentId == nil {
14894		invalidParams.Add(request.NewErrParamRequired("SegmentId"))
14895	}
14896
14897	if invalidParams.Len() > 0 {
14898		return invalidParams
14899	}
14900	return nil
14901}
14902
14903// SetApplicationId sets the ApplicationId field's value.
14904func (s *GetSegmentVersionsInput) SetApplicationId(v string) *GetSegmentVersionsInput {
14905	s.ApplicationId = &v
14906	return s
14907}
14908
14909// SetPageSize sets the PageSize field's value.
14910func (s *GetSegmentVersionsInput) SetPageSize(v string) *GetSegmentVersionsInput {
14911	s.PageSize = &v
14912	return s
14913}
14914
14915// SetSegmentId sets the SegmentId field's value.
14916func (s *GetSegmentVersionsInput) SetSegmentId(v string) *GetSegmentVersionsInput {
14917	s.SegmentId = &v
14918	return s
14919}
14920
14921// SetToken sets the Token field's value.
14922func (s *GetSegmentVersionsInput) SetToken(v string) *GetSegmentVersionsInput {
14923	s.Token = &v
14924	return s
14925}
14926
14927type GetSegmentVersionsOutput struct {
14928	_ struct{} `type:"structure" payload:"SegmentsResponse"`
14929
14930	// Segments in your account.
14931	//
14932	// SegmentsResponse is a required field
14933	SegmentsResponse *SegmentsResponse `type:"structure" required:"true"`
14934}
14935
14936// String returns the string representation
14937func (s GetSegmentVersionsOutput) String() string {
14938	return awsutil.Prettify(s)
14939}
14940
14941// GoString returns the string representation
14942func (s GetSegmentVersionsOutput) GoString() string {
14943	return s.String()
14944}
14945
14946// SetSegmentsResponse sets the SegmentsResponse field's value.
14947func (s *GetSegmentVersionsOutput) SetSegmentsResponse(v *SegmentsResponse) *GetSegmentVersionsOutput {
14948	s.SegmentsResponse = v
14949	return s
14950}
14951
14952type GetSegmentsInput struct {
14953	_ struct{} `type:"structure"`
14954
14955	// ApplicationId is a required field
14956	ApplicationId *string `location:"uri" locationName:"application-id" type:"string" required:"true"`
14957
14958	PageSize *string `location:"querystring" locationName:"page-size" type:"string"`
14959
14960	Token *string `location:"querystring" locationName:"token" type:"string"`
14961}
14962
14963// String returns the string representation
14964func (s GetSegmentsInput) String() string {
14965	return awsutil.Prettify(s)
14966}
14967
14968// GoString returns the string representation
14969func (s GetSegmentsInput) GoString() string {
14970	return s.String()
14971}
14972
14973// Validate inspects the fields of the type to determine if they are valid.
14974func (s *GetSegmentsInput) Validate() error {
14975	invalidParams := request.ErrInvalidParams{Context: "GetSegmentsInput"}
14976	if s.ApplicationId == nil {
14977		invalidParams.Add(request.NewErrParamRequired("ApplicationId"))
14978	}
14979
14980	if invalidParams.Len() > 0 {
14981		return invalidParams
14982	}
14983	return nil
14984}
14985
14986// SetApplicationId sets the ApplicationId field's value.
14987func (s *GetSegmentsInput) SetApplicationId(v string) *GetSegmentsInput {
14988	s.ApplicationId = &v
14989	return s
14990}
14991
14992// SetPageSize sets the PageSize field's value.
14993func (s *GetSegmentsInput) SetPageSize(v string) *GetSegmentsInput {
14994	s.PageSize = &v
14995	return s
14996}
14997
14998// SetToken sets the Token field's value.
14999func (s *GetSegmentsInput) SetToken(v string) *GetSegmentsInput {
15000	s.Token = &v
15001	return s
15002}
15003
15004type GetSegmentsOutput struct {
15005	_ struct{} `type:"structure" payload:"SegmentsResponse"`
15006
15007	// Segments in your account.
15008	//
15009	// SegmentsResponse is a required field
15010	SegmentsResponse *SegmentsResponse `type:"structure" required:"true"`
15011}
15012
15013// String returns the string representation
15014func (s GetSegmentsOutput) String() string {
15015	return awsutil.Prettify(s)
15016}
15017
15018// GoString returns the string representation
15019func (s GetSegmentsOutput) GoString() string {
15020	return s.String()
15021}
15022
15023// SetSegmentsResponse sets the SegmentsResponse field's value.
15024func (s *GetSegmentsOutput) SetSegmentsResponse(v *SegmentsResponse) *GetSegmentsOutput {
15025	s.SegmentsResponse = v
15026	return s
15027}
15028
15029type GetSmsChannelInput struct {
15030	_ struct{} `type:"structure"`
15031
15032	// ApplicationId is a required field
15033	ApplicationId *string `location:"uri" locationName:"application-id" type:"string" required:"true"`
15034}
15035
15036// String returns the string representation
15037func (s GetSmsChannelInput) String() string {
15038	return awsutil.Prettify(s)
15039}
15040
15041// GoString returns the string representation
15042func (s GetSmsChannelInput) GoString() string {
15043	return s.String()
15044}
15045
15046// Validate inspects the fields of the type to determine if they are valid.
15047func (s *GetSmsChannelInput) Validate() error {
15048	invalidParams := request.ErrInvalidParams{Context: "GetSmsChannelInput"}
15049	if s.ApplicationId == nil {
15050		invalidParams.Add(request.NewErrParamRequired("ApplicationId"))
15051	}
15052
15053	if invalidParams.Len() > 0 {
15054		return invalidParams
15055	}
15056	return nil
15057}
15058
15059// SetApplicationId sets the ApplicationId field's value.
15060func (s *GetSmsChannelInput) SetApplicationId(v string) *GetSmsChannelInput {
15061	s.ApplicationId = &v
15062	return s
15063}
15064
15065type GetSmsChannelOutput struct {
15066	_ struct{} `type:"structure" payload:"SMSChannelResponse"`
15067
15068	// SMS Channel Response.
15069	//
15070	// SMSChannelResponse is a required field
15071	SMSChannelResponse *SMSChannelResponse `type:"structure" required:"true"`
15072}
15073
15074// String returns the string representation
15075func (s GetSmsChannelOutput) String() string {
15076	return awsutil.Prettify(s)
15077}
15078
15079// GoString returns the string representation
15080func (s GetSmsChannelOutput) GoString() string {
15081	return s.String()
15082}
15083
15084// SetSMSChannelResponse sets the SMSChannelResponse field's value.
15085func (s *GetSmsChannelOutput) SetSMSChannelResponse(v *SMSChannelResponse) *GetSmsChannelOutput {
15086	s.SMSChannelResponse = v
15087	return s
15088}
15089
15090type GetUserEndpointsInput struct {
15091	_ struct{} `type:"structure"`
15092
15093	// ApplicationId is a required field
15094	ApplicationId *string `location:"uri" locationName:"application-id" type:"string" required:"true"`
15095
15096	// UserId is a required field
15097	UserId *string `location:"uri" locationName:"user-id" type:"string" required:"true"`
15098}
15099
15100// String returns the string representation
15101func (s GetUserEndpointsInput) String() string {
15102	return awsutil.Prettify(s)
15103}
15104
15105// GoString returns the string representation
15106func (s GetUserEndpointsInput) GoString() string {
15107	return s.String()
15108}
15109
15110// Validate inspects the fields of the type to determine if they are valid.
15111func (s *GetUserEndpointsInput) Validate() error {
15112	invalidParams := request.ErrInvalidParams{Context: "GetUserEndpointsInput"}
15113	if s.ApplicationId == nil {
15114		invalidParams.Add(request.NewErrParamRequired("ApplicationId"))
15115	}
15116	if s.UserId == nil {
15117		invalidParams.Add(request.NewErrParamRequired("UserId"))
15118	}
15119
15120	if invalidParams.Len() > 0 {
15121		return invalidParams
15122	}
15123	return nil
15124}
15125
15126// SetApplicationId sets the ApplicationId field's value.
15127func (s *GetUserEndpointsInput) SetApplicationId(v string) *GetUserEndpointsInput {
15128	s.ApplicationId = &v
15129	return s
15130}
15131
15132// SetUserId sets the UserId field's value.
15133func (s *GetUserEndpointsInput) SetUserId(v string) *GetUserEndpointsInput {
15134	s.UserId = &v
15135	return s
15136}
15137
15138type GetUserEndpointsOutput struct {
15139	_ struct{} `type:"structure" payload:"EndpointsResponse"`
15140
15141	// List of endpoints
15142	//
15143	// EndpointsResponse is a required field
15144	EndpointsResponse *EndpointsResponse `type:"structure" required:"true"`
15145}
15146
15147// String returns the string representation
15148func (s GetUserEndpointsOutput) String() string {
15149	return awsutil.Prettify(s)
15150}
15151
15152// GoString returns the string representation
15153func (s GetUserEndpointsOutput) GoString() string {
15154	return s.String()
15155}
15156
15157// SetEndpointsResponse sets the EndpointsResponse field's value.
15158func (s *GetUserEndpointsOutput) SetEndpointsResponse(v *EndpointsResponse) *GetUserEndpointsOutput {
15159	s.EndpointsResponse = v
15160	return s
15161}
15162
15163// Import job request.
15164type ImportJobRequest struct {
15165	_ struct{} `type:"structure"`
15166
15167	// Sets whether the endpoints create a segment when they are imported.
15168	DefineSegment *bool `type:"boolean"`
15169
15170	// (Deprecated) Your AWS account ID, which you assigned to the ExternalID key
15171	// in an IAM trust policy. Used by Amazon Pinpoint to assume an IAM role. This
15172	// requirement is removed, and external IDs are not recommended for IAM roles
15173	// assumed by Amazon Pinpoint.
15174	ExternalId *string `type:"string"`
15175
15176	// The format of the files that contain the endpoint definitions.Valid values:
15177	// CSV, JSON
15178	Format *string `type:"string" enum:"Format"`
15179
15180	// Sets whether the endpoints are registered with Amazon Pinpoint when they
15181	// are imported.
15182	RegisterEndpoints *bool `type:"boolean"`
15183
15184	// The Amazon Resource Name (ARN) of an IAM role that grants Amazon Pinpoint
15185	// access to the Amazon S3 location that contains the endpoints to import.
15186	RoleArn *string `type:"string"`
15187
15188	// The URL of the S3 bucket that contains the segment information to import.
15189	// The location can be a folder or a single file. The URL should use the following
15190	// format: s3://bucket-name/folder-name/file-nameAmazon Pinpoint imports endpoints
15191	// from this location and any subfolders it contains.
15192	S3Url *string `type:"string"`
15193
15194	// The ID of the segment to update if the import job is meant to update an existing
15195	// segment.
15196	SegmentId *string `type:"string"`
15197
15198	// A custom name for the segment created by the import job. Use if DefineSegment
15199	// is true.
15200	SegmentName *string `type:"string"`
15201}
15202
15203// String returns the string representation
15204func (s ImportJobRequest) String() string {
15205	return awsutil.Prettify(s)
15206}
15207
15208// GoString returns the string representation
15209func (s ImportJobRequest) GoString() string {
15210	return s.String()
15211}
15212
15213// SetDefineSegment sets the DefineSegment field's value.
15214func (s *ImportJobRequest) SetDefineSegment(v bool) *ImportJobRequest {
15215	s.DefineSegment = &v
15216	return s
15217}
15218
15219// SetExternalId sets the ExternalId field's value.
15220func (s *ImportJobRequest) SetExternalId(v string) *ImportJobRequest {
15221	s.ExternalId = &v
15222	return s
15223}
15224
15225// SetFormat sets the Format field's value.
15226func (s *ImportJobRequest) SetFormat(v string) *ImportJobRequest {
15227	s.Format = &v
15228	return s
15229}
15230
15231// SetRegisterEndpoints sets the RegisterEndpoints field's value.
15232func (s *ImportJobRequest) SetRegisterEndpoints(v bool) *ImportJobRequest {
15233	s.RegisterEndpoints = &v
15234	return s
15235}
15236
15237// SetRoleArn sets the RoleArn field's value.
15238func (s *ImportJobRequest) SetRoleArn(v string) *ImportJobRequest {
15239	s.RoleArn = &v
15240	return s
15241}
15242
15243// SetS3Url sets the S3Url field's value.
15244func (s *ImportJobRequest) SetS3Url(v string) *ImportJobRequest {
15245	s.S3Url = &v
15246	return s
15247}
15248
15249// SetSegmentId sets the SegmentId field's value.
15250func (s *ImportJobRequest) SetSegmentId(v string) *ImportJobRequest {
15251	s.SegmentId = &v
15252	return s
15253}
15254
15255// SetSegmentName sets the SegmentName field's value.
15256func (s *ImportJobRequest) SetSegmentName(v string) *ImportJobRequest {
15257	s.SegmentName = &v
15258	return s
15259}
15260
15261// Import job resource
15262type ImportJobResource struct {
15263	_ struct{} `type:"structure"`
15264
15265	// Sets whether the endpoints create a segment when they are imported.
15266	DefineSegment *bool `type:"boolean"`
15267
15268	// (Deprecated) Your AWS account ID, which you assigned to the ExternalID key
15269	// in an IAM trust policy. Used by Amazon Pinpoint to assume an IAM role. This
15270	// requirement is removed, and external IDs are not recommended for IAM roles
15271	// assumed by Amazon Pinpoint.
15272	ExternalId *string `type:"string"`
15273
15274	// The format of the files that contain the endpoint definitions.Valid values:
15275	// CSV, JSON
15276	Format *string `type:"string" enum:"Format"`
15277
15278	// Sets whether the endpoints are registered with Amazon Pinpoint when they
15279	// are imported.
15280	RegisterEndpoints *bool `type:"boolean"`
15281
15282	// The Amazon Resource Name (ARN) of an IAM role that grants Amazon Pinpoint
15283	// access to the Amazon S3 location that contains the endpoints to import.
15284	RoleArn *string `type:"string"`
15285
15286	// The URL of the S3 bucket that contains the segment information to import.
15287	// The location can be a folder or a single file. The URL should use the following
15288	// format: s3://bucket-name/folder-name/file-nameAmazon Pinpoint imports endpoints
15289	// from this location and any subfolders it contains.
15290	S3Url *string `type:"string"`
15291
15292	// The ID of the segment to update if the import job is meant to update an existing
15293	// segment.
15294	SegmentId *string `type:"string"`
15295
15296	// A custom name for the segment created by the import job. Use if DefineSegment
15297	// is true.
15298	SegmentName *string `type:"string"`
15299}
15300
15301// String returns the string representation
15302func (s ImportJobResource) String() string {
15303	return awsutil.Prettify(s)
15304}
15305
15306// GoString returns the string representation
15307func (s ImportJobResource) GoString() string {
15308	return s.String()
15309}
15310
15311// SetDefineSegment sets the DefineSegment field's value.
15312func (s *ImportJobResource) SetDefineSegment(v bool) *ImportJobResource {
15313	s.DefineSegment = &v
15314	return s
15315}
15316
15317// SetExternalId sets the ExternalId field's value.
15318func (s *ImportJobResource) SetExternalId(v string) *ImportJobResource {
15319	s.ExternalId = &v
15320	return s
15321}
15322
15323// SetFormat sets the Format field's value.
15324func (s *ImportJobResource) SetFormat(v string) *ImportJobResource {
15325	s.Format = &v
15326	return s
15327}
15328
15329// SetRegisterEndpoints sets the RegisterEndpoints field's value.
15330func (s *ImportJobResource) SetRegisterEndpoints(v bool) *ImportJobResource {
15331	s.RegisterEndpoints = &v
15332	return s
15333}
15334
15335// SetRoleArn sets the RoleArn field's value.
15336func (s *ImportJobResource) SetRoleArn(v string) *ImportJobResource {
15337	s.RoleArn = &v
15338	return s
15339}
15340
15341// SetS3Url sets the S3Url field's value.
15342func (s *ImportJobResource) SetS3Url(v string) *ImportJobResource {
15343	s.S3Url = &v
15344	return s
15345}
15346
15347// SetSegmentId sets the SegmentId field's value.
15348func (s *ImportJobResource) SetSegmentId(v string) *ImportJobResource {
15349	s.SegmentId = &v
15350	return s
15351}
15352
15353// SetSegmentName sets the SegmentName field's value.
15354func (s *ImportJobResource) SetSegmentName(v string) *ImportJobResource {
15355	s.SegmentName = &v
15356	return s
15357}
15358
15359// Import job response.
15360type ImportJobResponse struct {
15361	_ struct{} `type:"structure"`
15362
15363	// The unique ID of the application to which the import job applies.
15364	ApplicationId *string `type:"string"`
15365
15366	// The number of pieces that have successfully imported as of the time of the
15367	// request.
15368	CompletedPieces *int64 `type:"integer"`
15369
15370	// The date the import job completed in ISO 8601 format.
15371	CompletionDate *string `type:"string"`
15372
15373	// The date the import job was created in ISO 8601 format.
15374	CreationDate *string `type:"string"`
15375
15376	// The import job settings.
15377	Definition *ImportJobResource `type:"structure"`
15378
15379	// The number of pieces that have failed to import as of the time of the request.
15380	FailedPieces *int64 `type:"integer"`
15381
15382	// Provides up to 100 of the first failed entries for the job, if any exist.
15383	Failures []*string `type:"list"`
15384
15385	// The unique ID of the import job.
15386	Id *string `type:"string"`
15387
15388	// The status of the import job.Valid values: CREATED, INITIALIZING, PROCESSING,
15389	// COMPLETING, COMPLETED, FAILING, FAILEDThe job status is FAILED if one or
15390	// more pieces failed to import.
15391	JobStatus *string `type:"string" enum:"JobStatus"`
15392
15393	// The number of endpoints that failed to import; for example, because of syntax
15394	// errors.
15395	TotalFailures *int64 `type:"integer"`
15396
15397	// The total number of pieces that must be imported to finish the job. Each
15398	// piece is an approximately equal portion of the endpoints to import.
15399	TotalPieces *int64 `type:"integer"`
15400
15401	// The number of endpoints that were processed by the import job.
15402	TotalProcessed *int64 `type:"integer"`
15403
15404	// The job type. Will be Import.
15405	Type *string `type:"string"`
15406}
15407
15408// String returns the string representation
15409func (s ImportJobResponse) String() string {
15410	return awsutil.Prettify(s)
15411}
15412
15413// GoString returns the string representation
15414func (s ImportJobResponse) GoString() string {
15415	return s.String()
15416}
15417
15418// SetApplicationId sets the ApplicationId field's value.
15419func (s *ImportJobResponse) SetApplicationId(v string) *ImportJobResponse {
15420	s.ApplicationId = &v
15421	return s
15422}
15423
15424// SetCompletedPieces sets the CompletedPieces field's value.
15425func (s *ImportJobResponse) SetCompletedPieces(v int64) *ImportJobResponse {
15426	s.CompletedPieces = &v
15427	return s
15428}
15429
15430// SetCompletionDate sets the CompletionDate field's value.
15431func (s *ImportJobResponse) SetCompletionDate(v string) *ImportJobResponse {
15432	s.CompletionDate = &v
15433	return s
15434}
15435
15436// SetCreationDate sets the CreationDate field's value.
15437func (s *ImportJobResponse) SetCreationDate(v string) *ImportJobResponse {
15438	s.CreationDate = &v
15439	return s
15440}
15441
15442// SetDefinition sets the Definition field's value.
15443func (s *ImportJobResponse) SetDefinition(v *ImportJobResource) *ImportJobResponse {
15444	s.Definition = v
15445	return s
15446}
15447
15448// SetFailedPieces sets the FailedPieces field's value.
15449func (s *ImportJobResponse) SetFailedPieces(v int64) *ImportJobResponse {
15450	s.FailedPieces = &v
15451	return s
15452}
15453
15454// SetFailures sets the Failures field's value.
15455func (s *ImportJobResponse) SetFailures(v []*string) *ImportJobResponse {
15456	s.Failures = v
15457	return s
15458}
15459
15460// SetId sets the Id field's value.
15461func (s *ImportJobResponse) SetId(v string) *ImportJobResponse {
15462	s.Id = &v
15463	return s
15464}
15465
15466// SetJobStatus sets the JobStatus field's value.
15467func (s *ImportJobResponse) SetJobStatus(v string) *ImportJobResponse {
15468	s.JobStatus = &v
15469	return s
15470}
15471
15472// SetTotalFailures sets the TotalFailures field's value.
15473func (s *ImportJobResponse) SetTotalFailures(v int64) *ImportJobResponse {
15474	s.TotalFailures = &v
15475	return s
15476}
15477
15478// SetTotalPieces sets the TotalPieces field's value.
15479func (s *ImportJobResponse) SetTotalPieces(v int64) *ImportJobResponse {
15480	s.TotalPieces = &v
15481	return s
15482}
15483
15484// SetTotalProcessed sets the TotalProcessed field's value.
15485func (s *ImportJobResponse) SetTotalProcessed(v int64) *ImportJobResponse {
15486	s.TotalProcessed = &v
15487	return s
15488}
15489
15490// SetType sets the Type field's value.
15491func (s *ImportJobResponse) SetType(v string) *ImportJobResponse {
15492	s.Type = &v
15493	return s
15494}
15495
15496// Import job list.
15497type ImportJobsResponse struct {
15498	_ struct{} `type:"structure"`
15499
15500	// A list of import jobs for the application.
15501	Item []*ImportJobResponse `type:"list"`
15502
15503	// The string that you use in a subsequent request to get the next page of results
15504	// in a paginated response.
15505	NextToken *string `type:"string"`
15506}
15507
15508// String returns the string representation
15509func (s ImportJobsResponse) String() string {
15510	return awsutil.Prettify(s)
15511}
15512
15513// GoString returns the string representation
15514func (s ImportJobsResponse) GoString() string {
15515	return s.String()
15516}
15517
15518// SetItem sets the Item field's value.
15519func (s *ImportJobsResponse) SetItem(v []*ImportJobResponse) *ImportJobsResponse {
15520	s.Item = v
15521	return s
15522}
15523
15524// SetNextToken sets the NextToken field's value.
15525func (s *ImportJobsResponse) SetNextToken(v string) *ImportJobsResponse {
15526	s.NextToken = &v
15527	return s
15528}
15529
15530// The endpoint and events combined response definition
15531type ItemResponse struct {
15532	_ struct{} `type:"structure"`
15533
15534	// Endpoint item response after endpoint registration
15535	EndpointItemResponse *EndpointItemResponse `type:"structure"`
15536
15537	// Events item response is a multipart response object per event Id, with eventId
15538	// as the key and EventItemResponse object as the value
15539	EventsItemResponse map[string]*EventItemResponse `type:"map"`
15540}
15541
15542// String returns the string representation
15543func (s ItemResponse) String() string {
15544	return awsutil.Prettify(s)
15545}
15546
15547// GoString returns the string representation
15548func (s ItemResponse) GoString() string {
15549	return s.String()
15550}
15551
15552// SetEndpointItemResponse sets the EndpointItemResponse field's value.
15553func (s *ItemResponse) SetEndpointItemResponse(v *EndpointItemResponse) *ItemResponse {
15554	s.EndpointItemResponse = v
15555	return s
15556}
15557
15558// SetEventsItemResponse sets the EventsItemResponse field's value.
15559func (s *ItemResponse) SetEventsItemResponse(v map[string]*EventItemResponse) *ItemResponse {
15560	s.EventsItemResponse = v
15561	return s
15562}
15563
15564// Message to send
15565type Message struct {
15566	_ struct{} `type:"structure"`
15567
15568	// The action that occurs if the user taps a push notification delivered by
15569	// the campaign:OPEN_APP - Your app launches, or it becomes the foreground app
15570	// if it has been sent to the background. This is the default action.DEEP_LINK
15571	// - Uses deep linking features in iOS and Android to open your app and display
15572	// a designated user interface within the app.URL - The default mobile browser
15573	// on the user's device launches and opens a web page at the URL you specify.
15574	Action *string `type:"string" enum:"Action"`
15575
15576	// The message body. Can include up to 140 characters.
15577	Body *string `type:"string"`
15578
15579	// The URL that points to the icon image for the push notification icon, for
15580	// example, the app icon.
15581	ImageIconUrl *string `type:"string"`
15582
15583	// The URL that points to the small icon image for the push notification icon,
15584	// for example, the app icon.
15585	ImageSmallIconUrl *string `type:"string"`
15586
15587	// The URL that points to an image used in the push notification.
15588	ImageUrl *string `type:"string"`
15589
15590	// The JSON payload used for a silent push.
15591	JsonBody *string `type:"string"`
15592
15593	// The URL that points to the media resource, for example a .mp4 or .gif file.
15594	MediaUrl *string `type:"string"`
15595
15596	// The Raw JSON formatted string to be used as the payload. This value overrides
15597	// the message.
15598	RawContent *string `type:"string"`
15599
15600	// Indicates if the message should display on the users device.Silent pushes
15601	// can be used for Remote Configuration and Phone Home use cases.
15602	SilentPush *bool `type:"boolean"`
15603
15604	// This parameter specifies how long (in seconds) the message should be kept
15605	// if the service is unable to deliver the notification the first time. If the
15606	// value is 0, it treats the notification as if it expires immediately and does
15607	// not store the notification or attempt to redeliver it. This value is converted
15608	// to the expiration field when sent to the service. It only applies to APNs
15609	// and GCM
15610	TimeToLive *int64 `type:"integer"`
15611
15612	// The message title that displays above the message on the user's device.
15613	Title *string `type:"string"`
15614
15615	// The URL to open in the user's mobile browser. Used if the value for Action
15616	// is URL.
15617	Url *string `type:"string"`
15618}
15619
15620// String returns the string representation
15621func (s Message) String() string {
15622	return awsutil.Prettify(s)
15623}
15624
15625// GoString returns the string representation
15626func (s Message) GoString() string {
15627	return s.String()
15628}
15629
15630// SetAction sets the Action field's value.
15631func (s *Message) SetAction(v string) *Message {
15632	s.Action = &v
15633	return s
15634}
15635
15636// SetBody sets the Body field's value.
15637func (s *Message) SetBody(v string) *Message {
15638	s.Body = &v
15639	return s
15640}
15641
15642// SetImageIconUrl sets the ImageIconUrl field's value.
15643func (s *Message) SetImageIconUrl(v string) *Message {
15644	s.ImageIconUrl = &v
15645	return s
15646}
15647
15648// SetImageSmallIconUrl sets the ImageSmallIconUrl field's value.
15649func (s *Message) SetImageSmallIconUrl(v string) *Message {
15650	s.ImageSmallIconUrl = &v
15651	return s
15652}
15653
15654// SetImageUrl sets the ImageUrl field's value.
15655func (s *Message) SetImageUrl(v string) *Message {
15656	s.ImageUrl = &v
15657	return s
15658}
15659
15660// SetJsonBody sets the JsonBody field's value.
15661func (s *Message) SetJsonBody(v string) *Message {
15662	s.JsonBody = &v
15663	return s
15664}
15665
15666// SetMediaUrl sets the MediaUrl field's value.
15667func (s *Message) SetMediaUrl(v string) *Message {
15668	s.MediaUrl = &v
15669	return s
15670}
15671
15672// SetRawContent sets the RawContent field's value.
15673func (s *Message) SetRawContent(v string) *Message {
15674	s.RawContent = &v
15675	return s
15676}
15677
15678// SetSilentPush sets the SilentPush field's value.
15679func (s *Message) SetSilentPush(v bool) *Message {
15680	s.SilentPush = &v
15681	return s
15682}
15683
15684// SetTimeToLive sets the TimeToLive field's value.
15685func (s *Message) SetTimeToLive(v int64) *Message {
15686	s.TimeToLive = &v
15687	return s
15688}
15689
15690// SetTitle sets the Title field's value.
15691func (s *Message) SetTitle(v string) *Message {
15692	s.Title = &v
15693	return s
15694}
15695
15696// SetUrl sets the Url field's value.
15697func (s *Message) SetUrl(v string) *Message {
15698	s.Url = &v
15699	return s
15700}
15701
15702// Simple message object.
15703type MessageBody struct {
15704	_ struct{} `type:"structure"`
15705
15706	// The error message that's returned from the API.
15707	Message *string `type:"string"`
15708
15709	// The unique message body ID.
15710	RequestID *string `type:"string"`
15711}
15712
15713// String returns the string representation
15714func (s MessageBody) String() string {
15715	return awsutil.Prettify(s)
15716}
15717
15718// GoString returns the string representation
15719func (s MessageBody) GoString() string {
15720	return s.String()
15721}
15722
15723// SetMessage sets the Message field's value.
15724func (s *MessageBody) SetMessage(v string) *MessageBody {
15725	s.Message = &v
15726	return s
15727}
15728
15729// SetRequestID sets the RequestID field's value.
15730func (s *MessageBody) SetRequestID(v string) *MessageBody {
15731	s.RequestID = &v
15732	return s
15733}
15734
15735// Message configuration for a campaign.
15736type MessageConfiguration struct {
15737	_ struct{} `type:"structure"`
15738
15739	// The message that the campaign delivers to ADM channels. Overrides the default
15740	// message.
15741	ADMMessage *Message `type:"structure"`
15742
15743	// The message that the campaign delivers to APNS channels. Overrides the default
15744	// message.
15745	APNSMessage *Message `type:"structure"`
15746
15747	// The message that the campaign delivers to Baidu channels. Overrides the default
15748	// message.
15749	BaiduMessage *Message `type:"structure"`
15750
15751	// The default message for all channels.
15752	DefaultMessage *Message `type:"structure"`
15753
15754	// The email message configuration.
15755	EmailMessage *CampaignEmailMessage `type:"structure"`
15756
15757	// The message that the campaign delivers to GCM channels. Overrides the default
15758	// message.
15759	GCMMessage *Message `type:"structure"`
15760
15761	// The SMS message configuration.
15762	SMSMessage *CampaignSmsMessage `type:"structure"`
15763}
15764
15765// String returns the string representation
15766func (s MessageConfiguration) String() string {
15767	return awsutil.Prettify(s)
15768}
15769
15770// GoString returns the string representation
15771func (s MessageConfiguration) GoString() string {
15772	return s.String()
15773}
15774
15775// SetADMMessage sets the ADMMessage field's value.
15776func (s *MessageConfiguration) SetADMMessage(v *Message) *MessageConfiguration {
15777	s.ADMMessage = v
15778	return s
15779}
15780
15781// SetAPNSMessage sets the APNSMessage field's value.
15782func (s *MessageConfiguration) SetAPNSMessage(v *Message) *MessageConfiguration {
15783	s.APNSMessage = v
15784	return s
15785}
15786
15787// SetBaiduMessage sets the BaiduMessage field's value.
15788func (s *MessageConfiguration) SetBaiduMessage(v *Message) *MessageConfiguration {
15789	s.BaiduMessage = v
15790	return s
15791}
15792
15793// SetDefaultMessage sets the DefaultMessage field's value.
15794func (s *MessageConfiguration) SetDefaultMessage(v *Message) *MessageConfiguration {
15795	s.DefaultMessage = v
15796	return s
15797}
15798
15799// SetEmailMessage sets the EmailMessage field's value.
15800func (s *MessageConfiguration) SetEmailMessage(v *CampaignEmailMessage) *MessageConfiguration {
15801	s.EmailMessage = v
15802	return s
15803}
15804
15805// SetGCMMessage sets the GCMMessage field's value.
15806func (s *MessageConfiguration) SetGCMMessage(v *Message) *MessageConfiguration {
15807	s.GCMMessage = v
15808	return s
15809}
15810
15811// SetSMSMessage sets the SMSMessage field's value.
15812func (s *MessageConfiguration) SetSMSMessage(v *CampaignSmsMessage) *MessageConfiguration {
15813	s.SMSMessage = v
15814	return s
15815}
15816
15817// Send message request.
15818type MessageRequest struct {
15819	_ struct{} `type:"structure"`
15820
15821	// A map of key-value pairs, where each key is an address and each value is
15822	// an AddressConfiguration object. An address can be a push notification token,
15823	// a phone number, or an email address.
15824	Addresses map[string]*AddressConfiguration `type:"map"`
15825
15826	// A map of custom attributes to attributes to be attached to the message. This
15827	// payload is added to the push notification's 'data.pinpoint' object or added
15828	// to the email/sms delivery receipt event attributes.
15829	Context map[string]*string `type:"map"`
15830
15831	// A map of key-value pairs, where each key is an endpoint ID and each value
15832	// is an EndpointSendConfiguration object. Within an EndpointSendConfiguration
15833	// object, you can tailor the message for an endpoint by specifying message
15834	// overrides or substitutions.
15835	Endpoints map[string]*EndpointSendConfiguration `type:"map"`
15836
15837	// Message configuration.
15838	MessageConfiguration *DirectMessageConfiguration `type:"structure"`
15839
15840	// A unique ID that you can use to trace a message. This ID is visible to recipients.
15841	TraceId *string `type:"string"`
15842}
15843
15844// String returns the string representation
15845func (s MessageRequest) String() string {
15846	return awsutil.Prettify(s)
15847}
15848
15849// GoString returns the string representation
15850func (s MessageRequest) GoString() string {
15851	return s.String()
15852}
15853
15854// SetAddresses sets the Addresses field's value.
15855func (s *MessageRequest) SetAddresses(v map[string]*AddressConfiguration) *MessageRequest {
15856	s.Addresses = v
15857	return s
15858}
15859
15860// SetContext sets the Context field's value.
15861func (s *MessageRequest) SetContext(v map[string]*string) *MessageRequest {
15862	s.Context = v
15863	return s
15864}
15865
15866// SetEndpoints sets the Endpoints field's value.
15867func (s *MessageRequest) SetEndpoints(v map[string]*EndpointSendConfiguration) *MessageRequest {
15868	s.Endpoints = v
15869	return s
15870}
15871
15872// SetMessageConfiguration sets the MessageConfiguration field's value.
15873func (s *MessageRequest) SetMessageConfiguration(v *DirectMessageConfiguration) *MessageRequest {
15874	s.MessageConfiguration = v
15875	return s
15876}
15877
15878// SetTraceId sets the TraceId field's value.
15879func (s *MessageRequest) SetTraceId(v string) *MessageRequest {
15880	s.TraceId = &v
15881	return s
15882}
15883
15884// Send message response.
15885type MessageResponse struct {
15886	_ struct{} `type:"structure"`
15887
15888	// Application id of the message.
15889	ApplicationId *string `type:"string"`
15890
15891	// A map containing a multi part response for each address, with the endpointId
15892	// as the key and the result as the value.
15893	EndpointResult map[string]*EndpointMessageResult `type:"map"`
15894
15895	// Original request Id for which this message was delivered.
15896	RequestId *string `type:"string"`
15897
15898	// A map containing a multi part response for each address, with the address
15899	// as the key(Email address, phone number or push token) and the result as the
15900	// value.
15901	Result map[string]*MessageResult `type:"map"`
15902}
15903
15904// String returns the string representation
15905func (s MessageResponse) String() string {
15906	return awsutil.Prettify(s)
15907}
15908
15909// GoString returns the string representation
15910func (s MessageResponse) GoString() string {
15911	return s.String()
15912}
15913
15914// SetApplicationId sets the ApplicationId field's value.
15915func (s *MessageResponse) SetApplicationId(v string) *MessageResponse {
15916	s.ApplicationId = &v
15917	return s
15918}
15919
15920// SetEndpointResult sets the EndpointResult field's value.
15921func (s *MessageResponse) SetEndpointResult(v map[string]*EndpointMessageResult) *MessageResponse {
15922	s.EndpointResult = v
15923	return s
15924}
15925
15926// SetRequestId sets the RequestId field's value.
15927func (s *MessageResponse) SetRequestId(v string) *MessageResponse {
15928	s.RequestId = &v
15929	return s
15930}
15931
15932// SetResult sets the Result field's value.
15933func (s *MessageResponse) SetResult(v map[string]*MessageResult) *MessageResponse {
15934	s.Result = v
15935	return s
15936}
15937
15938// The result from sending a message to an address.
15939type MessageResult struct {
15940	_ struct{} `type:"structure"`
15941
15942	// The delivery status of the message. Possible values:SUCCESS - The message
15943	// was successfully delivered to the endpoint.TRANSIENT_FAILURE - A temporary
15944	// error occurred. Amazon Pinpoint will attempt to deliver the message again
15945	// later.FAILURE_PERMANENT - An error occurred when delivering the message to
15946	// the endpoint. Amazon Pinpoint won't attempt to send the message again.TIMEOUT
15947	// - The message couldn't be sent within the timeout period.QUIET_TIME - The
15948	// local time for the endpoint was within the Quiet Hours for the campaign.DAILY_CAP
15949	// - The endpoint has received the maximum number of messages it can receive
15950	// within a 24-hour period.HOLDOUT - The endpoint was in a hold out treatment
15951	// for the campaign.THROTTLED - Amazon Pinpoint throttled sending to this endpoint.EXPIRED
15952	// - The endpoint address is expired.CAMPAIGN_CAP - The endpoint received the
15953	// maximum number of messages allowed by the campaign.SERVICE_FAILURE - A service-level
15954	// failure prevented Amazon Pinpoint from delivering the message.UNKNOWN - An
15955	// unknown error occurred.
15956	DeliveryStatus *string `type:"string" enum:"DeliveryStatus"`
15957
15958	// Unique message identifier associated with the message that was sent.
15959	MessageId *string `type:"string"`
15960
15961	// Downstream service status code.
15962	StatusCode *int64 `type:"integer"`
15963
15964	// Status message for message delivery.
15965	StatusMessage *string `type:"string"`
15966
15967	// If token was updated as part of delivery. (This is GCM Specific)
15968	UpdatedToken *string `type:"string"`
15969}
15970
15971// String returns the string representation
15972func (s MessageResult) String() string {
15973	return awsutil.Prettify(s)
15974}
15975
15976// GoString returns the string representation
15977func (s MessageResult) GoString() string {
15978	return s.String()
15979}
15980
15981// SetDeliveryStatus sets the DeliveryStatus field's value.
15982func (s *MessageResult) SetDeliveryStatus(v string) *MessageResult {
15983	s.DeliveryStatus = &v
15984	return s
15985}
15986
15987// SetMessageId sets the MessageId field's value.
15988func (s *MessageResult) SetMessageId(v string) *MessageResult {
15989	s.MessageId = &v
15990	return s
15991}
15992
15993// SetStatusCode sets the StatusCode field's value.
15994func (s *MessageResult) SetStatusCode(v int64) *MessageResult {
15995	s.StatusCode = &v
15996	return s
15997}
15998
15999// SetStatusMessage sets the StatusMessage field's value.
16000func (s *MessageResult) SetStatusMessage(v string) *MessageResult {
16001	s.StatusMessage = &v
16002	return s
16003}
16004
16005// SetUpdatedToken sets the UpdatedToken field's value.
16006func (s *MessageResult) SetUpdatedToken(v string) *MessageResult {
16007	s.UpdatedToken = &v
16008	return s
16009}
16010
16011// Custom metric dimension
16012type MetricDimension struct {
16013	_ struct{} `type:"structure"`
16014
16015	// GREATER_THAN | LESS_THAN | GREATER_THAN_OR_EQUAL | LESS_THAN_OR_EQUAL | EQUAL
16016	ComparisonOperator *string `type:"string"`
16017
16018	// Value to be compared.
16019	Value *float64 `type:"double"`
16020}
16021
16022// String returns the string representation
16023func (s MetricDimension) String() string {
16024	return awsutil.Prettify(s)
16025}
16026
16027// GoString returns the string representation
16028func (s MetricDimension) GoString() string {
16029	return s.String()
16030}
16031
16032// SetComparisonOperator sets the ComparisonOperator field's value.
16033func (s *MetricDimension) SetComparisonOperator(v string) *MetricDimension {
16034	s.ComparisonOperator = &v
16035	return s
16036}
16037
16038// SetValue sets the Value field's value.
16039func (s *MetricDimension) SetValue(v float64) *MetricDimension {
16040	s.Value = &v
16041	return s
16042}
16043
16044// Phone Number Information request.
16045type NumberValidateRequest struct {
16046	_ struct{} `type:"structure"`
16047
16048	// (Optional) The two-character ISO country code for the country or region where
16049	// the phone number was originally registered.
16050	IsoCountryCode *string `type:"string"`
16051
16052	// The phone number to get information about. The phone number that you provide
16053	// should include a country code. If the number doesn't include a valid country
16054	// code, the operation might result in an error.
16055	PhoneNumber *string `type:"string"`
16056}
16057
16058// String returns the string representation
16059func (s NumberValidateRequest) String() string {
16060	return awsutil.Prettify(s)
16061}
16062
16063// GoString returns the string representation
16064func (s NumberValidateRequest) GoString() string {
16065	return s.String()
16066}
16067
16068// SetIsoCountryCode sets the IsoCountryCode field's value.
16069func (s *NumberValidateRequest) SetIsoCountryCode(v string) *NumberValidateRequest {
16070	s.IsoCountryCode = &v
16071	return s
16072}
16073
16074// SetPhoneNumber sets the PhoneNumber field's value.
16075func (s *NumberValidateRequest) SetPhoneNumber(v string) *NumberValidateRequest {
16076	s.PhoneNumber = &v
16077	return s
16078}
16079
16080// Phone Number Information response.
16081type NumberValidateResponse struct {
16082	_ struct{} `type:"structure"`
16083
16084	// The carrier or servive provider that the phone number is currently registered
16085	// with.
16086	Carrier *string `type:"string"`
16087
16088	// The city where the phone number was originally registered.
16089	City *string `type:"string"`
16090
16091	// The cleansed phone number, shown in E.164 format.
16092	CleansedPhoneNumberE164 *string `type:"string"`
16093
16094	// The cleansed phone number, shown in the local phone number format.
16095	CleansedPhoneNumberNational *string `type:"string"`
16096
16097	// The country or region where the phone number was originally registered.
16098	Country *string `type:"string"`
16099
16100	// The two-character ISO code for the country or region where the phone number
16101	// was originally registered.
16102	CountryCodeIso2 *string `type:"string"`
16103
16104	// The numeric code for the country or region where the phone number was originally
16105	// registered.
16106	CountryCodeNumeric *string `type:"string"`
16107
16108	// The county where the phone number was originally registered.
16109	County *string `type:"string"`
16110
16111	// The two-character ISO code for the country or region that you included in
16112	// the request body.
16113	OriginalCountryCodeIso2 *string `type:"string"`
16114
16115	// The phone number that you included in the request body.
16116	OriginalPhoneNumber *string `type:"string"`
16117
16118	// A description of the phone type. Possible values are MOBILE, LANDLINE, VOIP,
16119	// INVALID, PREPAID, and OTHER.
16120	PhoneType *string `type:"string"`
16121
16122	// The phone type, represented by an integer. Possible values include 0 (MOBILE),
16123	// 1 (LANDLINE), 2 (VOIP), 3 (INVALID), 4 (OTHER), and 5 (PREPAID).
16124	PhoneTypeCode *int64 `type:"integer"`
16125
16126	// The time zone for the location where the phone number was originally registered.
16127	Timezone *string `type:"string"`
16128
16129	// The postal code for the location where the phone number was originally registered.
16130	ZipCode *string `type:"string"`
16131}
16132
16133// String returns the string representation
16134func (s NumberValidateResponse) String() string {
16135	return awsutil.Prettify(s)
16136}
16137
16138// GoString returns the string representation
16139func (s NumberValidateResponse) GoString() string {
16140	return s.String()
16141}
16142
16143// SetCarrier sets the Carrier field's value.
16144func (s *NumberValidateResponse) SetCarrier(v string) *NumberValidateResponse {
16145	s.Carrier = &v
16146	return s
16147}
16148
16149// SetCity sets the City field's value.
16150func (s *NumberValidateResponse) SetCity(v string) *NumberValidateResponse {
16151	s.City = &v
16152	return s
16153}
16154
16155// SetCleansedPhoneNumberE164 sets the CleansedPhoneNumberE164 field's value.
16156func (s *NumberValidateResponse) SetCleansedPhoneNumberE164(v string) *NumberValidateResponse {
16157	s.CleansedPhoneNumberE164 = &v
16158	return s
16159}
16160
16161// SetCleansedPhoneNumberNational sets the CleansedPhoneNumberNational field's value.
16162func (s *NumberValidateResponse) SetCleansedPhoneNumberNational(v string) *NumberValidateResponse {
16163	s.CleansedPhoneNumberNational = &v
16164	return s
16165}
16166
16167// SetCountry sets the Country field's value.
16168func (s *NumberValidateResponse) SetCountry(v string) *NumberValidateResponse {
16169	s.Country = &v
16170	return s
16171}
16172
16173// SetCountryCodeIso2 sets the CountryCodeIso2 field's value.
16174func (s *NumberValidateResponse) SetCountryCodeIso2(v string) *NumberValidateResponse {
16175	s.CountryCodeIso2 = &v
16176	return s
16177}
16178
16179// SetCountryCodeNumeric sets the CountryCodeNumeric field's value.
16180func (s *NumberValidateResponse) SetCountryCodeNumeric(v string) *NumberValidateResponse {
16181	s.CountryCodeNumeric = &v
16182	return s
16183}
16184
16185// SetCounty sets the County field's value.
16186func (s *NumberValidateResponse) SetCounty(v string) *NumberValidateResponse {
16187	s.County = &v
16188	return s
16189}
16190
16191// SetOriginalCountryCodeIso2 sets the OriginalCountryCodeIso2 field's value.
16192func (s *NumberValidateResponse) SetOriginalCountryCodeIso2(v string) *NumberValidateResponse {
16193	s.OriginalCountryCodeIso2 = &v
16194	return s
16195}
16196
16197// SetOriginalPhoneNumber sets the OriginalPhoneNumber field's value.
16198func (s *NumberValidateResponse) SetOriginalPhoneNumber(v string) *NumberValidateResponse {
16199	s.OriginalPhoneNumber = &v
16200	return s
16201}
16202
16203// SetPhoneType sets the PhoneType field's value.
16204func (s *NumberValidateResponse) SetPhoneType(v string) *NumberValidateResponse {
16205	s.PhoneType = &v
16206	return s
16207}
16208
16209// SetPhoneTypeCode sets the PhoneTypeCode field's value.
16210func (s *NumberValidateResponse) SetPhoneTypeCode(v int64) *NumberValidateResponse {
16211	s.PhoneTypeCode = &v
16212	return s
16213}
16214
16215// SetTimezone sets the Timezone field's value.
16216func (s *NumberValidateResponse) SetTimezone(v string) *NumberValidateResponse {
16217	s.Timezone = &v
16218	return s
16219}
16220
16221// SetZipCode sets the ZipCode field's value.
16222func (s *NumberValidateResponse) SetZipCode(v string) *NumberValidateResponse {
16223	s.ZipCode = &v
16224	return s
16225}
16226
16227type PhoneNumberValidateInput struct {
16228	_ struct{} `type:"structure" payload:"NumberValidateRequest"`
16229
16230	// Phone Number Information request.
16231	//
16232	// NumberValidateRequest is a required field
16233	NumberValidateRequest *NumberValidateRequest `type:"structure" required:"true"`
16234}
16235
16236// String returns the string representation
16237func (s PhoneNumberValidateInput) String() string {
16238	return awsutil.Prettify(s)
16239}
16240
16241// GoString returns the string representation
16242func (s PhoneNumberValidateInput) GoString() string {
16243	return s.String()
16244}
16245
16246// Validate inspects the fields of the type to determine if they are valid.
16247func (s *PhoneNumberValidateInput) Validate() error {
16248	invalidParams := request.ErrInvalidParams{Context: "PhoneNumberValidateInput"}
16249	if s.NumberValidateRequest == nil {
16250		invalidParams.Add(request.NewErrParamRequired("NumberValidateRequest"))
16251	}
16252
16253	if invalidParams.Len() > 0 {
16254		return invalidParams
16255	}
16256	return nil
16257}
16258
16259// SetNumberValidateRequest sets the NumberValidateRequest field's value.
16260func (s *PhoneNumberValidateInput) SetNumberValidateRequest(v *NumberValidateRequest) *PhoneNumberValidateInput {
16261	s.NumberValidateRequest = v
16262	return s
16263}
16264
16265type PhoneNumberValidateOutput struct {
16266	_ struct{} `type:"structure" payload:"NumberValidateResponse"`
16267
16268	// Phone Number Information response.
16269	//
16270	// NumberValidateResponse is a required field
16271	NumberValidateResponse *NumberValidateResponse `type:"structure" required:"true"`
16272}
16273
16274// String returns the string representation
16275func (s PhoneNumberValidateOutput) String() string {
16276	return awsutil.Prettify(s)
16277}
16278
16279// GoString returns the string representation
16280func (s PhoneNumberValidateOutput) GoString() string {
16281	return s.String()
16282}
16283
16284// SetNumberValidateResponse sets the NumberValidateResponse field's value.
16285func (s *PhoneNumberValidateOutput) SetNumberValidateResponse(v *NumberValidateResponse) *PhoneNumberValidateOutput {
16286	s.NumberValidateResponse = v
16287	return s
16288}
16289
16290// Public endpoint attributes.
16291type PublicEndpoint struct {
16292	_ struct{} `type:"structure"`
16293
16294	// The unique identifier for the recipient. For example, an address could be
16295	// a device token or an endpoint ID.
16296	Address *string `type:"string"`
16297
16298	// Custom attributes that your app reports to Amazon Pinpoint. You can use these
16299	// attributes as selection criteria when you create a segment.
16300	Attributes map[string][]*string `type:"map"`
16301
16302	// The channel type.Valid values: APNS, GCM
16303	ChannelType *string `type:"string" enum:"ChannelType"`
16304
16305	// The endpoint demographic attributes.
16306	Demographic *EndpointDemographic `type:"structure"`
16307
16308	// The date and time when the endpoint was last updated.
16309	EffectiveDate *string `type:"string"`
16310
16311	// The status of the endpoint. If the update fails, the value is INACTIVE. If
16312	// the endpoint is updated successfully, the value is ACTIVE.
16313	EndpointStatus *string `type:"string"`
16314
16315	// The endpoint location attributes.
16316	Location *EndpointLocation `type:"structure"`
16317
16318	// Custom metrics that your app reports to Amazon Pinpoint.
16319	Metrics map[string]*float64 `type:"map"`
16320
16321	// Indicates whether a user has opted out of receiving messages with one of
16322	// the following values:ALL - User has opted out of all messages.NONE - Users
16323	// has not opted out and receives all messages.
16324	OptOut *string `type:"string"`
16325
16326	// A unique identifier that is generated each time the endpoint is updated.
16327	RequestId *string `type:"string"`
16328
16329	// Custom user-specific attributes that your app reports to Amazon Pinpoint.
16330	User *EndpointUser `type:"structure"`
16331}
16332
16333// String returns the string representation
16334func (s PublicEndpoint) String() string {
16335	return awsutil.Prettify(s)
16336}
16337
16338// GoString returns the string representation
16339func (s PublicEndpoint) GoString() string {
16340	return s.String()
16341}
16342
16343// SetAddress sets the Address field's value.
16344func (s *PublicEndpoint) SetAddress(v string) *PublicEndpoint {
16345	s.Address = &v
16346	return s
16347}
16348
16349// SetAttributes sets the Attributes field's value.
16350func (s *PublicEndpoint) SetAttributes(v map[string][]*string) *PublicEndpoint {
16351	s.Attributes = v
16352	return s
16353}
16354
16355// SetChannelType sets the ChannelType field's value.
16356func (s *PublicEndpoint) SetChannelType(v string) *PublicEndpoint {
16357	s.ChannelType = &v
16358	return s
16359}
16360
16361// SetDemographic sets the Demographic field's value.
16362func (s *PublicEndpoint) SetDemographic(v *EndpointDemographic) *PublicEndpoint {
16363	s.Demographic = v
16364	return s
16365}
16366
16367// SetEffectiveDate sets the EffectiveDate field's value.
16368func (s *PublicEndpoint) SetEffectiveDate(v string) *PublicEndpoint {
16369	s.EffectiveDate = &v
16370	return s
16371}
16372
16373// SetEndpointStatus sets the EndpointStatus field's value.
16374func (s *PublicEndpoint) SetEndpointStatus(v string) *PublicEndpoint {
16375	s.EndpointStatus = &v
16376	return s
16377}
16378
16379// SetLocation sets the Location field's value.
16380func (s *PublicEndpoint) SetLocation(v *EndpointLocation) *PublicEndpoint {
16381	s.Location = v
16382	return s
16383}
16384
16385// SetMetrics sets the Metrics field's value.
16386func (s *PublicEndpoint) SetMetrics(v map[string]*float64) *PublicEndpoint {
16387	s.Metrics = v
16388	return s
16389}
16390
16391// SetOptOut sets the OptOut field's value.
16392func (s *PublicEndpoint) SetOptOut(v string) *PublicEndpoint {
16393	s.OptOut = &v
16394	return s
16395}
16396
16397// SetRequestId sets the RequestId field's value.
16398func (s *PublicEndpoint) SetRequestId(v string) *PublicEndpoint {
16399	s.RequestId = &v
16400	return s
16401}
16402
16403// SetUser sets the User field's value.
16404func (s *PublicEndpoint) SetUser(v *EndpointUser) *PublicEndpoint {
16405	s.User = v
16406	return s
16407}
16408
16409type PutEventStreamInput struct {
16410	_ struct{} `type:"structure" payload:"WriteEventStream"`
16411
16412	// ApplicationId is a required field
16413	ApplicationId *string `location:"uri" locationName:"application-id" type:"string" required:"true"`
16414
16415	// Request to save an EventStream.
16416	//
16417	// WriteEventStream is a required field
16418	WriteEventStream *WriteEventStream `type:"structure" required:"true"`
16419}
16420
16421// String returns the string representation
16422func (s PutEventStreamInput) String() string {
16423	return awsutil.Prettify(s)
16424}
16425
16426// GoString returns the string representation
16427func (s PutEventStreamInput) GoString() string {
16428	return s.String()
16429}
16430
16431// Validate inspects the fields of the type to determine if they are valid.
16432func (s *PutEventStreamInput) Validate() error {
16433	invalidParams := request.ErrInvalidParams{Context: "PutEventStreamInput"}
16434	if s.ApplicationId == nil {
16435		invalidParams.Add(request.NewErrParamRequired("ApplicationId"))
16436	}
16437	if s.WriteEventStream == nil {
16438		invalidParams.Add(request.NewErrParamRequired("WriteEventStream"))
16439	}
16440
16441	if invalidParams.Len() > 0 {
16442		return invalidParams
16443	}
16444	return nil
16445}
16446
16447// SetApplicationId sets the ApplicationId field's value.
16448func (s *PutEventStreamInput) SetApplicationId(v string) *PutEventStreamInput {
16449	s.ApplicationId = &v
16450	return s
16451}
16452
16453// SetWriteEventStream sets the WriteEventStream field's value.
16454func (s *PutEventStreamInput) SetWriteEventStream(v *WriteEventStream) *PutEventStreamInput {
16455	s.WriteEventStream = v
16456	return s
16457}
16458
16459type PutEventStreamOutput struct {
16460	_ struct{} `type:"structure" payload:"EventStream"`
16461
16462	// Model for an event publishing subscription export.
16463	//
16464	// EventStream is a required field
16465	EventStream *EventStream `type:"structure" required:"true"`
16466}
16467
16468// String returns the string representation
16469func (s PutEventStreamOutput) String() string {
16470	return awsutil.Prettify(s)
16471}
16472
16473// GoString returns the string representation
16474func (s PutEventStreamOutput) GoString() string {
16475	return s.String()
16476}
16477
16478// SetEventStream sets the EventStream field's value.
16479func (s *PutEventStreamOutput) SetEventStream(v *EventStream) *PutEventStreamOutput {
16480	s.EventStream = v
16481	return s
16482}
16483
16484type PutEventsInput struct {
16485	_ struct{} `type:"structure" payload:"EventsRequest"`
16486
16487	// ApplicationId is a required field
16488	ApplicationId *string `location:"uri" locationName:"application-id" type:"string" required:"true"`
16489
16490	// Put Events request
16491	//
16492	// EventsRequest is a required field
16493	EventsRequest *EventsRequest `type:"structure" required:"true"`
16494}
16495
16496// String returns the string representation
16497func (s PutEventsInput) String() string {
16498	return awsutil.Prettify(s)
16499}
16500
16501// GoString returns the string representation
16502func (s PutEventsInput) GoString() string {
16503	return s.String()
16504}
16505
16506// Validate inspects the fields of the type to determine if they are valid.
16507func (s *PutEventsInput) Validate() error {
16508	invalidParams := request.ErrInvalidParams{Context: "PutEventsInput"}
16509	if s.ApplicationId == nil {
16510		invalidParams.Add(request.NewErrParamRequired("ApplicationId"))
16511	}
16512	if s.EventsRequest == nil {
16513		invalidParams.Add(request.NewErrParamRequired("EventsRequest"))
16514	}
16515
16516	if invalidParams.Len() > 0 {
16517		return invalidParams
16518	}
16519	return nil
16520}
16521
16522// SetApplicationId sets the ApplicationId field's value.
16523func (s *PutEventsInput) SetApplicationId(v string) *PutEventsInput {
16524	s.ApplicationId = &v
16525	return s
16526}
16527
16528// SetEventsRequest sets the EventsRequest field's value.
16529func (s *PutEventsInput) SetEventsRequest(v *EventsRequest) *PutEventsInput {
16530	s.EventsRequest = v
16531	return s
16532}
16533
16534type PutEventsOutput struct {
16535	_ struct{} `type:"structure" payload:"EventsResponse"`
16536
16537	// The results from processing a put events request
16538	//
16539	// EventsResponse is a required field
16540	EventsResponse *EventsResponse `type:"structure" required:"true"`
16541}
16542
16543// String returns the string representation
16544func (s PutEventsOutput) String() string {
16545	return awsutil.Prettify(s)
16546}
16547
16548// GoString returns the string representation
16549func (s PutEventsOutput) GoString() string {
16550	return s.String()
16551}
16552
16553// SetEventsResponse sets the EventsResponse field's value.
16554func (s *PutEventsOutput) SetEventsResponse(v *EventsResponse) *PutEventsOutput {
16555	s.EventsResponse = v
16556	return s
16557}
16558
16559// Quiet Time
16560type QuietTime struct {
16561	_ struct{} `type:"structure"`
16562
16563	// The default end time for quiet time in ISO 8601 format.
16564	End *string `type:"string"`
16565
16566	// The default start time for quiet time in ISO 8601 format.
16567	Start *string `type:"string"`
16568}
16569
16570// String returns the string representation
16571func (s QuietTime) String() string {
16572	return awsutil.Prettify(s)
16573}
16574
16575// GoString returns the string representation
16576func (s QuietTime) GoString() string {
16577	return s.String()
16578}
16579
16580// SetEnd sets the End field's value.
16581func (s *QuietTime) SetEnd(v string) *QuietTime {
16582	s.End = &v
16583	return s
16584}
16585
16586// SetStart sets the Start field's value.
16587func (s *QuietTime) SetStart(v string) *QuietTime {
16588	s.Start = &v
16589	return s
16590}
16591
16592// Define how a segment based on recency of use.
16593type RecencyDimension struct {
16594	_ struct{} `type:"structure"`
16595
16596	// The length of time during which users have been active or inactive with your
16597	// app.Valid values: HR_24, DAY_7, DAY_14, DAY_30
16598	Duration *string `type:"string" enum:"Duration"`
16599
16600	// The recency dimension type:ACTIVE - Users who have used your app within the
16601	// specified duration are included in the segment.INACTIVE - Users who have
16602	// not used your app within the specified duration are included in the segment.
16603	RecencyType *string `type:"string" enum:"RecencyType"`
16604}
16605
16606// String returns the string representation
16607func (s RecencyDimension) String() string {
16608	return awsutil.Prettify(s)
16609}
16610
16611// GoString returns the string representation
16612func (s RecencyDimension) GoString() string {
16613	return s.String()
16614}
16615
16616// SetDuration sets the Duration field's value.
16617func (s *RecencyDimension) SetDuration(v string) *RecencyDimension {
16618	s.Duration = &v
16619	return s
16620}
16621
16622// SetRecencyType sets the RecencyType field's value.
16623func (s *RecencyDimension) SetRecencyType(v string) *RecencyDimension {
16624	s.RecencyType = &v
16625	return s
16626}
16627
16628type RemoveAttributesInput struct {
16629	_ struct{} `type:"structure" payload:"UpdateAttributesRequest"`
16630
16631	// ApplicationId is a required field
16632	ApplicationId *string `location:"uri" locationName:"application-id" type:"string" required:"true"`
16633
16634	// AttributeType is a required field
16635	AttributeType *string `location:"uri" locationName:"attribute-type" type:"string" required:"true"`
16636
16637	// Update attributes request
16638	//
16639	// UpdateAttributesRequest is a required field
16640	UpdateAttributesRequest *UpdateAttributesRequest `type:"structure" required:"true"`
16641}
16642
16643// String returns the string representation
16644func (s RemoveAttributesInput) String() string {
16645	return awsutil.Prettify(s)
16646}
16647
16648// GoString returns the string representation
16649func (s RemoveAttributesInput) GoString() string {
16650	return s.String()
16651}
16652
16653// Validate inspects the fields of the type to determine if they are valid.
16654func (s *RemoveAttributesInput) Validate() error {
16655	invalidParams := request.ErrInvalidParams{Context: "RemoveAttributesInput"}
16656	if s.ApplicationId == nil {
16657		invalidParams.Add(request.NewErrParamRequired("ApplicationId"))
16658	}
16659	if s.AttributeType == nil {
16660		invalidParams.Add(request.NewErrParamRequired("AttributeType"))
16661	}
16662	if s.UpdateAttributesRequest == nil {
16663		invalidParams.Add(request.NewErrParamRequired("UpdateAttributesRequest"))
16664	}
16665
16666	if invalidParams.Len() > 0 {
16667		return invalidParams
16668	}
16669	return nil
16670}
16671
16672// SetApplicationId sets the ApplicationId field's value.
16673func (s *RemoveAttributesInput) SetApplicationId(v string) *RemoveAttributesInput {
16674	s.ApplicationId = &v
16675	return s
16676}
16677
16678// SetAttributeType sets the AttributeType field's value.
16679func (s *RemoveAttributesInput) SetAttributeType(v string) *RemoveAttributesInput {
16680	s.AttributeType = &v
16681	return s
16682}
16683
16684// SetUpdateAttributesRequest sets the UpdateAttributesRequest field's value.
16685func (s *RemoveAttributesInput) SetUpdateAttributesRequest(v *UpdateAttributesRequest) *RemoveAttributesInput {
16686	s.UpdateAttributesRequest = v
16687	return s
16688}
16689
16690type RemoveAttributesOutput struct {
16691	_ struct{} `type:"structure" payload:"AttributesResource"`
16692
16693	// Attributes.
16694	//
16695	// AttributesResource is a required field
16696	AttributesResource *AttributesResource `type:"structure" required:"true"`
16697}
16698
16699// String returns the string representation
16700func (s RemoveAttributesOutput) String() string {
16701	return awsutil.Prettify(s)
16702}
16703
16704// GoString returns the string representation
16705func (s RemoveAttributesOutput) GoString() string {
16706	return s.String()
16707}
16708
16709// SetAttributesResource sets the AttributesResource field's value.
16710func (s *RemoveAttributesOutput) SetAttributesResource(v *AttributesResource) *RemoveAttributesOutput {
16711	s.AttributesResource = v
16712	return s
16713}
16714
16715// SMS Channel Request
16716type SMSChannelRequest struct {
16717	_ struct{} `type:"structure"`
16718
16719	// If the channel is enabled for sending messages.
16720	Enabled *bool `type:"boolean"`
16721
16722	// Sender identifier of your messages.
16723	SenderId *string `type:"string"`
16724
16725	// ShortCode registered with phone provider.
16726	ShortCode *string `type:"string"`
16727}
16728
16729// String returns the string representation
16730func (s SMSChannelRequest) String() string {
16731	return awsutil.Prettify(s)
16732}
16733
16734// GoString returns the string representation
16735func (s SMSChannelRequest) GoString() string {
16736	return s.String()
16737}
16738
16739// SetEnabled sets the Enabled field's value.
16740func (s *SMSChannelRequest) SetEnabled(v bool) *SMSChannelRequest {
16741	s.Enabled = &v
16742	return s
16743}
16744
16745// SetSenderId sets the SenderId field's value.
16746func (s *SMSChannelRequest) SetSenderId(v string) *SMSChannelRequest {
16747	s.SenderId = &v
16748	return s
16749}
16750
16751// SetShortCode sets the ShortCode field's value.
16752func (s *SMSChannelRequest) SetShortCode(v string) *SMSChannelRequest {
16753	s.ShortCode = &v
16754	return s
16755}
16756
16757// SMS Channel Response.
16758type SMSChannelResponse struct {
16759	_ struct{} `type:"structure"`
16760
16761	// The unique ID of the application to which the SMS channel belongs.
16762	ApplicationId *string `type:"string"`
16763
16764	// The date that the settings were last updated in ISO 8601 format.
16765	CreationDate *string `type:"string"`
16766
16767	// If the channel is enabled for sending messages.
16768	Enabled *bool `type:"boolean"`
16769
16770	// Not used. Retained for backwards compatibility.
16771	HasCredential *bool `type:"boolean"`
16772
16773	// Channel ID. Not used, only for backwards compatibility.
16774	Id *string `type:"string"`
16775
16776	// Is this channel archived
16777	IsArchived *bool `type:"boolean"`
16778
16779	// Who last updated this entry
16780	LastModifiedBy *string `type:"string"`
16781
16782	// Last date this was updated
16783	LastModifiedDate *string `type:"string"`
16784
16785	// Platform type. Will be "SMS"
16786	Platform *string `type:"string"`
16787
16788	// Promotional messages per second that can be sent
16789	PromotionalMessagesPerSecond *int64 `type:"integer"`
16790
16791	// Sender identifier of your messages.
16792	SenderId *string `type:"string"`
16793
16794	// The short code registered with the phone provider.
16795	ShortCode *string `type:"string"`
16796
16797	// Transactional messages per second that can be sent
16798	TransactionalMessagesPerSecond *int64 `type:"integer"`
16799
16800	// Version of channel
16801	Version *int64 `type:"integer"`
16802}
16803
16804// String returns the string representation
16805func (s SMSChannelResponse) String() string {
16806	return awsutil.Prettify(s)
16807}
16808
16809// GoString returns the string representation
16810func (s SMSChannelResponse) GoString() string {
16811	return s.String()
16812}
16813
16814// SetApplicationId sets the ApplicationId field's value.
16815func (s *SMSChannelResponse) SetApplicationId(v string) *SMSChannelResponse {
16816	s.ApplicationId = &v
16817	return s
16818}
16819
16820// SetCreationDate sets the CreationDate field's value.
16821func (s *SMSChannelResponse) SetCreationDate(v string) *SMSChannelResponse {
16822	s.CreationDate = &v
16823	return s
16824}
16825
16826// SetEnabled sets the Enabled field's value.
16827func (s *SMSChannelResponse) SetEnabled(v bool) *SMSChannelResponse {
16828	s.Enabled = &v
16829	return s
16830}
16831
16832// SetHasCredential sets the HasCredential field's value.
16833func (s *SMSChannelResponse) SetHasCredential(v bool) *SMSChannelResponse {
16834	s.HasCredential = &v
16835	return s
16836}
16837
16838// SetId sets the Id field's value.
16839func (s *SMSChannelResponse) SetId(v string) *SMSChannelResponse {
16840	s.Id = &v
16841	return s
16842}
16843
16844// SetIsArchived sets the IsArchived field's value.
16845func (s *SMSChannelResponse) SetIsArchived(v bool) *SMSChannelResponse {
16846	s.IsArchived = &v
16847	return s
16848}
16849
16850// SetLastModifiedBy sets the LastModifiedBy field's value.
16851func (s *SMSChannelResponse) SetLastModifiedBy(v string) *SMSChannelResponse {
16852	s.LastModifiedBy = &v
16853	return s
16854}
16855
16856// SetLastModifiedDate sets the LastModifiedDate field's value.
16857func (s *SMSChannelResponse) SetLastModifiedDate(v string) *SMSChannelResponse {
16858	s.LastModifiedDate = &v
16859	return s
16860}
16861
16862// SetPlatform sets the Platform field's value.
16863func (s *SMSChannelResponse) SetPlatform(v string) *SMSChannelResponse {
16864	s.Platform = &v
16865	return s
16866}
16867
16868// SetPromotionalMessagesPerSecond sets the PromotionalMessagesPerSecond field's value.
16869func (s *SMSChannelResponse) SetPromotionalMessagesPerSecond(v int64) *SMSChannelResponse {
16870	s.PromotionalMessagesPerSecond = &v
16871	return s
16872}
16873
16874// SetSenderId sets the SenderId field's value.
16875func (s *SMSChannelResponse) SetSenderId(v string) *SMSChannelResponse {
16876	s.SenderId = &v
16877	return s
16878}
16879
16880// SetShortCode sets the ShortCode field's value.
16881func (s *SMSChannelResponse) SetShortCode(v string) *SMSChannelResponse {
16882	s.ShortCode = &v
16883	return s
16884}
16885
16886// SetTransactionalMessagesPerSecond sets the TransactionalMessagesPerSecond field's value.
16887func (s *SMSChannelResponse) SetTransactionalMessagesPerSecond(v int64) *SMSChannelResponse {
16888	s.TransactionalMessagesPerSecond = &v
16889	return s
16890}
16891
16892// SetVersion sets the Version field's value.
16893func (s *SMSChannelResponse) SetVersion(v int64) *SMSChannelResponse {
16894	s.Version = &v
16895	return s
16896}
16897
16898// SMS Message.
16899type SMSMessage struct {
16900	_ struct{} `type:"structure"`
16901
16902	// The body of the SMS message.
16903	Body *string `type:"string"`
16904
16905	// The SMS program name that you provided to AWS Support when you requested
16906	// your dedicated number.
16907	Keyword *string `type:"string"`
16908
16909	// Is this a transaction priority message or lower priority.
16910	MessageType *string `type:"string" enum:"MessageType"`
16911
16912	// The phone number that the SMS message originates from. Specify one of the
16913	// dedicated long codes or short codes that you requested from AWS Support and
16914	// that is assigned to your account. If this attribute is not specified, Amazon
16915	// Pinpoint randomly assigns a long code.
16916	OriginationNumber *string `type:"string"`
16917
16918	// The sender ID that is shown as the message sender on the recipient's device.
16919	// Support for sender IDs varies by country or region.
16920	SenderId *string `type:"string"`
16921
16922	// Default message substitutions. Can be overridden by individual address substitutions.
16923	Substitutions map[string][]*string `type:"map"`
16924}
16925
16926// String returns the string representation
16927func (s SMSMessage) String() string {
16928	return awsutil.Prettify(s)
16929}
16930
16931// GoString returns the string representation
16932func (s SMSMessage) GoString() string {
16933	return s.String()
16934}
16935
16936// SetBody sets the Body field's value.
16937func (s *SMSMessage) SetBody(v string) *SMSMessage {
16938	s.Body = &v
16939	return s
16940}
16941
16942// SetKeyword sets the Keyword field's value.
16943func (s *SMSMessage) SetKeyword(v string) *SMSMessage {
16944	s.Keyword = &v
16945	return s
16946}
16947
16948// SetMessageType sets the MessageType field's value.
16949func (s *SMSMessage) SetMessageType(v string) *SMSMessage {
16950	s.MessageType = &v
16951	return s
16952}
16953
16954// SetOriginationNumber sets the OriginationNumber field's value.
16955func (s *SMSMessage) SetOriginationNumber(v string) *SMSMessage {
16956	s.OriginationNumber = &v
16957	return s
16958}
16959
16960// SetSenderId sets the SenderId field's value.
16961func (s *SMSMessage) SetSenderId(v string) *SMSMessage {
16962	s.SenderId = &v
16963	return s
16964}
16965
16966// SetSubstitutions sets the Substitutions field's value.
16967func (s *SMSMessage) SetSubstitutions(v map[string][]*string) *SMSMessage {
16968	s.Substitutions = v
16969	return s
16970}
16971
16972// Shcedule that defines when a campaign is run.
16973type Schedule struct {
16974	_ struct{} `type:"structure"`
16975
16976	// The scheduled time that the campaign ends in ISO 8601 format.
16977	EndTime *string `type:"string"`
16978
16979	// How often the campaign delivers messages.Valid values: ONCE, HOURLY, DAILY,
16980	// WEEKLY, MONTHLY
16981	Frequency *string `type:"string" enum:"Frequency"`
16982
16983	// Indicates whether the campaign schedule takes effect according to each user's
16984	// local time.
16985	IsLocalTime *bool `type:"boolean"`
16986
16987	// The time during which the campaign sends no messages.
16988	QuietTime *QuietTime `type:"structure"`
16989
16990	// The scheduled time that the campaign begins in ISO 8601 format.
16991	StartTime *string `type:"string"`
16992
16993	// The starting UTC offset for the schedule if the value for isLocalTime is
16994	// 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
16995	Timezone *string `type:"string"`
16996}
16997
16998// String returns the string representation
16999func (s Schedule) String() string {
17000	return awsutil.Prettify(s)
17001}
17002
17003// GoString returns the string representation
17004func (s Schedule) GoString() string {
17005	return s.String()
17006}
17007
17008// SetEndTime sets the EndTime field's value.
17009func (s *Schedule) SetEndTime(v string) *Schedule {
17010	s.EndTime = &v
17011	return s
17012}
17013
17014// SetFrequency sets the Frequency field's value.
17015func (s *Schedule) SetFrequency(v string) *Schedule {
17016	s.Frequency = &v
17017	return s
17018}
17019
17020// SetIsLocalTime sets the IsLocalTime field's value.
17021func (s *Schedule) SetIsLocalTime(v bool) *Schedule {
17022	s.IsLocalTime = &v
17023	return s
17024}
17025
17026// SetQuietTime sets the QuietTime field's value.
17027func (s *Schedule) SetQuietTime(v *QuietTime) *Schedule {
17028	s.QuietTime = v
17029	return s
17030}
17031
17032// SetStartTime sets the StartTime field's value.
17033func (s *Schedule) SetStartTime(v string) *Schedule {
17034	s.StartTime = &v
17035	return s
17036}
17037
17038// SetTimezone sets the Timezone field's value.
17039func (s *Schedule) SetTimezone(v string) *Schedule {
17040	s.Timezone = &v
17041	return s
17042}
17043
17044// Segment behavior dimensions
17045type SegmentBehaviors struct {
17046	_ struct{} `type:"structure"`
17047
17048	// The recency of use.
17049	Recency *RecencyDimension `type:"structure"`
17050}
17051
17052// String returns the string representation
17053func (s SegmentBehaviors) String() string {
17054	return awsutil.Prettify(s)
17055}
17056
17057// GoString returns the string representation
17058func (s SegmentBehaviors) GoString() string {
17059	return s.String()
17060}
17061
17062// SetRecency sets the Recency field's value.
17063func (s *SegmentBehaviors) SetRecency(v *RecencyDimension) *SegmentBehaviors {
17064	s.Recency = v
17065	return s
17066}
17067
17068// Segment demographic dimensions
17069type SegmentDemographics struct {
17070	_ struct{} `type:"structure"`
17071
17072	// The app version criteria for the segment.
17073	AppVersion *SetDimension `type:"structure"`
17074
17075	// The channel criteria for the segment.
17076	Channel *SetDimension `type:"structure"`
17077
17078	// The device type criteria for the segment.
17079	DeviceType *SetDimension `type:"structure"`
17080
17081	// The device make criteria for the segment.
17082	Make *SetDimension `type:"structure"`
17083
17084	// The device model criteria for the segment.
17085	Model *SetDimension `type:"structure"`
17086
17087	// The device platform criteria for the segment.
17088	Platform *SetDimension `type:"structure"`
17089}
17090
17091// String returns the string representation
17092func (s SegmentDemographics) String() string {
17093	return awsutil.Prettify(s)
17094}
17095
17096// GoString returns the string representation
17097func (s SegmentDemographics) GoString() string {
17098	return s.String()
17099}
17100
17101// SetAppVersion sets the AppVersion field's value.
17102func (s *SegmentDemographics) SetAppVersion(v *SetDimension) *SegmentDemographics {
17103	s.AppVersion = v
17104	return s
17105}
17106
17107// SetChannel sets the Channel field's value.
17108func (s *SegmentDemographics) SetChannel(v *SetDimension) *SegmentDemographics {
17109	s.Channel = v
17110	return s
17111}
17112
17113// SetDeviceType sets the DeviceType field's value.
17114func (s *SegmentDemographics) SetDeviceType(v *SetDimension) *SegmentDemographics {
17115	s.DeviceType = v
17116	return s
17117}
17118
17119// SetMake sets the Make field's value.
17120func (s *SegmentDemographics) SetMake(v *SetDimension) *SegmentDemographics {
17121	s.Make = v
17122	return s
17123}
17124
17125// SetModel sets the Model field's value.
17126func (s *SegmentDemographics) SetModel(v *SetDimension) *SegmentDemographics {
17127	s.Model = v
17128	return s
17129}
17130
17131// SetPlatform sets the Platform field's value.
17132func (s *SegmentDemographics) SetPlatform(v *SetDimension) *SegmentDemographics {
17133	s.Platform = v
17134	return s
17135}
17136
17137// Segment dimensions
17138type SegmentDimensions struct {
17139	_ struct{} `type:"structure"`
17140
17141	// Custom segment attributes.
17142	Attributes map[string]*AttributeDimension `type:"map"`
17143
17144	// The segment behaviors attributes.
17145	Behavior *SegmentBehaviors `type:"structure"`
17146
17147	// The segment demographics attributes.
17148	Demographic *SegmentDemographics `type:"structure"`
17149
17150	// The segment location attributes.
17151	Location *SegmentLocation `type:"structure"`
17152
17153	// Custom segment metrics.
17154	Metrics map[string]*MetricDimension `type:"map"`
17155
17156	// Custom segment user attributes.
17157	UserAttributes map[string]*AttributeDimension `type:"map"`
17158}
17159
17160// String returns the string representation
17161func (s SegmentDimensions) String() string {
17162	return awsutil.Prettify(s)
17163}
17164
17165// GoString returns the string representation
17166func (s SegmentDimensions) GoString() string {
17167	return s.String()
17168}
17169
17170// SetAttributes sets the Attributes field's value.
17171func (s *SegmentDimensions) SetAttributes(v map[string]*AttributeDimension) *SegmentDimensions {
17172	s.Attributes = v
17173	return s
17174}
17175
17176// SetBehavior sets the Behavior field's value.
17177func (s *SegmentDimensions) SetBehavior(v *SegmentBehaviors) *SegmentDimensions {
17178	s.Behavior = v
17179	return s
17180}
17181
17182// SetDemographic sets the Demographic field's value.
17183func (s *SegmentDimensions) SetDemographic(v *SegmentDemographics) *SegmentDimensions {
17184	s.Demographic = v
17185	return s
17186}
17187
17188// SetLocation sets the Location field's value.
17189func (s *SegmentDimensions) SetLocation(v *SegmentLocation) *SegmentDimensions {
17190	s.Location = v
17191	return s
17192}
17193
17194// SetMetrics sets the Metrics field's value.
17195func (s *SegmentDimensions) SetMetrics(v map[string]*MetricDimension) *SegmentDimensions {
17196	s.Metrics = v
17197	return s
17198}
17199
17200// SetUserAttributes sets the UserAttributes field's value.
17201func (s *SegmentDimensions) SetUserAttributes(v map[string]*AttributeDimension) *SegmentDimensions {
17202	s.UserAttributes = v
17203	return s
17204}
17205
17206// Segment group definition.
17207type SegmentGroup struct {
17208	_ struct{} `type:"structure"`
17209
17210	// List of dimensions to include or exclude.
17211	Dimensions []*SegmentDimensions `type:"list"`
17212
17213	// The base segment that you build your segment on. The source segment defines
17214	// the starting "universe" of endpoints. When you add dimensions to the segment,
17215	// it filters the source segment based on the dimensions that you specify. You
17216	// can specify more than one dimensional segment. You can only specify one imported
17217	// segment.
17218	SourceSegments []*SegmentReference `type:"list"`
17219
17220	// Specify how to handle multiple source segments. For example, if you specify
17221	// three source segments, should the resulting segment be based on any or all
17222	// of the segments? Acceptable values: ANY or ALL.
17223	SourceType *string `type:"string" enum:"SourceType"`
17224
17225	// Specify how to handle multiple segment dimensions. For example, if you specify
17226	// three dimensions, should the resulting segment include endpoints that are
17227	// matched by all, any, or none of the dimensions? Acceptable values: ALL, ANY,
17228	// or NONE.
17229	Type *string `type:"string" enum:"Type"`
17230}
17231
17232// String returns the string representation
17233func (s SegmentGroup) String() string {
17234	return awsutil.Prettify(s)
17235}
17236
17237// GoString returns the string representation
17238func (s SegmentGroup) GoString() string {
17239	return s.String()
17240}
17241
17242// SetDimensions sets the Dimensions field's value.
17243func (s *SegmentGroup) SetDimensions(v []*SegmentDimensions) *SegmentGroup {
17244	s.Dimensions = v
17245	return s
17246}
17247
17248// SetSourceSegments sets the SourceSegments field's value.
17249func (s *SegmentGroup) SetSourceSegments(v []*SegmentReference) *SegmentGroup {
17250	s.SourceSegments = v
17251	return s
17252}
17253
17254// SetSourceType sets the SourceType field's value.
17255func (s *SegmentGroup) SetSourceType(v string) *SegmentGroup {
17256	s.SourceType = &v
17257	return s
17258}
17259
17260// SetType sets the Type field's value.
17261func (s *SegmentGroup) SetType(v string) *SegmentGroup {
17262	s.Type = &v
17263	return s
17264}
17265
17266// Segment group definition.
17267type SegmentGroupList struct {
17268	_ struct{} `type:"structure"`
17269
17270	// A set of segment criteria to evaluate.
17271	Groups []*SegmentGroup `type:"list"`
17272
17273	// Specify how to handle multiple segment groups. For example, if the segment
17274	// includes three segment groups, should the resulting segment include endpoints
17275	// that are matched by all, any, or none of the segment groups you created.
17276	// Acceptable values: ALL, ANY, or NONE.
17277	Include *string `type:"string" enum:"Include"`
17278}
17279
17280// String returns the string representation
17281func (s SegmentGroupList) String() string {
17282	return awsutil.Prettify(s)
17283}
17284
17285// GoString returns the string representation
17286func (s SegmentGroupList) GoString() string {
17287	return s.String()
17288}
17289
17290// SetGroups sets the Groups field's value.
17291func (s *SegmentGroupList) SetGroups(v []*SegmentGroup) *SegmentGroupList {
17292	s.Groups = v
17293	return s
17294}
17295
17296// SetInclude sets the Include field's value.
17297func (s *SegmentGroupList) SetInclude(v string) *SegmentGroupList {
17298	s.Include = &v
17299	return s
17300}
17301
17302// Segment import definition.
17303type SegmentImportResource struct {
17304	_ struct{} `type:"structure"`
17305
17306	// The number of channel types in the imported segment.
17307	ChannelCounts map[string]*int64 `type:"map"`
17308
17309	// (Deprecated) Your AWS account ID, which you assigned to the ExternalID key
17310	// in an IAM trust policy. Used by Amazon Pinpoint to assume an IAM role. This
17311	// requirement is removed, and external IDs are not recommended for IAM roles
17312	// assumed by Amazon Pinpoint.
17313	ExternalId *string `type:"string"`
17314
17315	// The format of the endpoint files that were imported to create this segment.Valid
17316	// values: CSV, JSON
17317	Format *string `type:"string" enum:"Format"`
17318
17319	// The Amazon Resource Name (ARN) of an IAM role that grants Amazon Pinpoint
17320	// access to the endpoints in Amazon S3.
17321	RoleArn *string `type:"string"`
17322
17323	// The URL of the S3 bucket that the segment was imported from.
17324	S3Url *string `type:"string"`
17325
17326	// The number of endpoints that were successfully imported to create this segment.
17327	Size *int64 `type:"integer"`
17328}
17329
17330// String returns the string representation
17331func (s SegmentImportResource) String() string {
17332	return awsutil.Prettify(s)
17333}
17334
17335// GoString returns the string representation
17336func (s SegmentImportResource) GoString() string {
17337	return s.String()
17338}
17339
17340// SetChannelCounts sets the ChannelCounts field's value.
17341func (s *SegmentImportResource) SetChannelCounts(v map[string]*int64) *SegmentImportResource {
17342	s.ChannelCounts = v
17343	return s
17344}
17345
17346// SetExternalId sets the ExternalId field's value.
17347func (s *SegmentImportResource) SetExternalId(v string) *SegmentImportResource {
17348	s.ExternalId = &v
17349	return s
17350}
17351
17352// SetFormat sets the Format field's value.
17353func (s *SegmentImportResource) SetFormat(v string) *SegmentImportResource {
17354	s.Format = &v
17355	return s
17356}
17357
17358// SetRoleArn sets the RoleArn field's value.
17359func (s *SegmentImportResource) SetRoleArn(v string) *SegmentImportResource {
17360	s.RoleArn = &v
17361	return s
17362}
17363
17364// SetS3Url sets the S3Url field's value.
17365func (s *SegmentImportResource) SetS3Url(v string) *SegmentImportResource {
17366	s.S3Url = &v
17367	return s
17368}
17369
17370// SetSize sets the Size field's value.
17371func (s *SegmentImportResource) SetSize(v int64) *SegmentImportResource {
17372	s.Size = &v
17373	return s
17374}
17375
17376// Segment location dimensions
17377type SegmentLocation struct {
17378	_ struct{} `type:"structure"`
17379
17380	// The country filter according to ISO 3166-1 Alpha-2 codes.
17381	Country *SetDimension `type:"structure"`
17382
17383	// The GPS Point dimension.
17384	GPSPoint *GPSPointDimension `type:"structure"`
17385}
17386
17387// String returns the string representation
17388func (s SegmentLocation) String() string {
17389	return awsutil.Prettify(s)
17390}
17391
17392// GoString returns the string representation
17393func (s SegmentLocation) GoString() string {
17394	return s.String()
17395}
17396
17397// SetCountry sets the Country field's value.
17398func (s *SegmentLocation) SetCountry(v *SetDimension) *SegmentLocation {
17399	s.Country = v
17400	return s
17401}
17402
17403// SetGPSPoint sets the GPSPoint field's value.
17404func (s *SegmentLocation) SetGPSPoint(v *GPSPointDimension) *SegmentLocation {
17405	s.GPSPoint = v
17406	return s
17407}
17408
17409// Segment reference.
17410type SegmentReference struct {
17411	_ struct{} `type:"structure"`
17412
17413	// A unique identifier for the segment.
17414	Id *string `type:"string"`
17415
17416	// If specified contains a specific version of the segment included.
17417	Version *int64 `type:"integer"`
17418}
17419
17420// String returns the string representation
17421func (s SegmentReference) String() string {
17422	return awsutil.Prettify(s)
17423}
17424
17425// GoString returns the string representation
17426func (s SegmentReference) GoString() string {
17427	return s.String()
17428}
17429
17430// SetId sets the Id field's value.
17431func (s *SegmentReference) SetId(v string) *SegmentReference {
17432	s.Id = &v
17433	return s
17434}
17435
17436// SetVersion sets the Version field's value.
17437func (s *SegmentReference) SetVersion(v int64) *SegmentReference {
17438	s.Version = &v
17439	return s
17440}
17441
17442// Segment definition.
17443type SegmentResponse struct {
17444	_ struct{} `type:"structure"`
17445
17446	// The ID of the application that the segment applies to.
17447	ApplicationId *string `type:"string"`
17448
17449	// The date and time when the segment was created.
17450	CreationDate *string `type:"string"`
17451
17452	// The segment dimensions attributes.
17453	Dimensions *SegmentDimensions `type:"structure"`
17454
17455	// The unique segment ID.
17456	Id *string `type:"string"`
17457
17458	// The import job settings.
17459	ImportDefinition *SegmentImportResource `type:"structure"`
17460
17461	// The date and time when the segment was last modified.
17462	LastModifiedDate *string `type:"string"`
17463
17464	// The name of the segment.
17465	Name *string `type:"string"`
17466
17467	// A segment group, which consists of zero or more source segments, plus dimensions
17468	// that are applied to those source segments.
17469	SegmentGroups *SegmentGroupList `type:"structure"`
17470
17471	// The segment type:DIMENSIONAL - A dynamic segment built from selection criteria
17472	// based on endpoint data reported by your app. You create this type of segment
17473	// by using the segment builder in the Amazon Pinpoint console or by making
17474	// a POST request to the segments resource.IMPORT - A static segment built from
17475	// an imported set of endpoint definitions. You create this type of segment
17476	// by importing a segment in the Amazon Pinpoint console or by making a POST
17477	// request to the jobs/import resource.
17478	SegmentType *string `type:"string" enum:"SegmentType"`
17479
17480	// The segment version number.
17481	Version *int64 `type:"integer"`
17482}
17483
17484// String returns the string representation
17485func (s SegmentResponse) String() string {
17486	return awsutil.Prettify(s)
17487}
17488
17489// GoString returns the string representation
17490func (s SegmentResponse) GoString() string {
17491	return s.String()
17492}
17493
17494// SetApplicationId sets the ApplicationId field's value.
17495func (s *SegmentResponse) SetApplicationId(v string) *SegmentResponse {
17496	s.ApplicationId = &v
17497	return s
17498}
17499
17500// SetCreationDate sets the CreationDate field's value.
17501func (s *SegmentResponse) SetCreationDate(v string) *SegmentResponse {
17502	s.CreationDate = &v
17503	return s
17504}
17505
17506// SetDimensions sets the Dimensions field's value.
17507func (s *SegmentResponse) SetDimensions(v *SegmentDimensions) *SegmentResponse {
17508	s.Dimensions = v
17509	return s
17510}
17511
17512// SetId sets the Id field's value.
17513func (s *SegmentResponse) SetId(v string) *SegmentResponse {
17514	s.Id = &v
17515	return s
17516}
17517
17518// SetImportDefinition sets the ImportDefinition field's value.
17519func (s *SegmentResponse) SetImportDefinition(v *SegmentImportResource) *SegmentResponse {
17520	s.ImportDefinition = v
17521	return s
17522}
17523
17524// SetLastModifiedDate sets the LastModifiedDate field's value.
17525func (s *SegmentResponse) SetLastModifiedDate(v string) *SegmentResponse {
17526	s.LastModifiedDate = &v
17527	return s
17528}
17529
17530// SetName sets the Name field's value.
17531func (s *SegmentResponse) SetName(v string) *SegmentResponse {
17532	s.Name = &v
17533	return s
17534}
17535
17536// SetSegmentGroups sets the SegmentGroups field's value.
17537func (s *SegmentResponse) SetSegmentGroups(v *SegmentGroupList) *SegmentResponse {
17538	s.SegmentGroups = v
17539	return s
17540}
17541
17542// SetSegmentType sets the SegmentType field's value.
17543func (s *SegmentResponse) SetSegmentType(v string) *SegmentResponse {
17544	s.SegmentType = &v
17545	return s
17546}
17547
17548// SetVersion sets the Version field's value.
17549func (s *SegmentResponse) SetVersion(v int64) *SegmentResponse {
17550	s.Version = &v
17551	return s
17552}
17553
17554// Segments in your account.
17555type SegmentsResponse struct {
17556	_ struct{} `type:"structure"`
17557
17558	// The list of segments.
17559	Item []*SegmentResponse `type:"list"`
17560
17561	// An identifier used to retrieve the next page of results. The token is null
17562	// if no additional pages exist.
17563	NextToken *string `type:"string"`
17564}
17565
17566// String returns the string representation
17567func (s SegmentsResponse) String() string {
17568	return awsutil.Prettify(s)
17569}
17570
17571// GoString returns the string representation
17572func (s SegmentsResponse) GoString() string {
17573	return s.String()
17574}
17575
17576// SetItem sets the Item field's value.
17577func (s *SegmentsResponse) SetItem(v []*SegmentResponse) *SegmentsResponse {
17578	s.Item = v
17579	return s
17580}
17581
17582// SetNextToken sets the NextToken field's value.
17583func (s *SegmentsResponse) SetNextToken(v string) *SegmentsResponse {
17584	s.NextToken = &v
17585	return s
17586}
17587
17588type SendMessagesInput struct {
17589	_ struct{} `type:"structure" payload:"MessageRequest"`
17590
17591	// ApplicationId is a required field
17592	ApplicationId *string `location:"uri" locationName:"application-id" type:"string" required:"true"`
17593
17594	// Send message request.
17595	//
17596	// MessageRequest is a required field
17597	MessageRequest *MessageRequest `type:"structure" required:"true"`
17598}
17599
17600// String returns the string representation
17601func (s SendMessagesInput) String() string {
17602	return awsutil.Prettify(s)
17603}
17604
17605// GoString returns the string representation
17606func (s SendMessagesInput) GoString() string {
17607	return s.String()
17608}
17609
17610// Validate inspects the fields of the type to determine if they are valid.
17611func (s *SendMessagesInput) Validate() error {
17612	invalidParams := request.ErrInvalidParams{Context: "SendMessagesInput"}
17613	if s.ApplicationId == nil {
17614		invalidParams.Add(request.NewErrParamRequired("ApplicationId"))
17615	}
17616	if s.MessageRequest == nil {
17617		invalidParams.Add(request.NewErrParamRequired("MessageRequest"))
17618	}
17619
17620	if invalidParams.Len() > 0 {
17621		return invalidParams
17622	}
17623	return nil
17624}
17625
17626// SetApplicationId sets the ApplicationId field's value.
17627func (s *SendMessagesInput) SetApplicationId(v string) *SendMessagesInput {
17628	s.ApplicationId = &v
17629	return s
17630}
17631
17632// SetMessageRequest sets the MessageRequest field's value.
17633func (s *SendMessagesInput) SetMessageRequest(v *MessageRequest) *SendMessagesInput {
17634	s.MessageRequest = v
17635	return s
17636}
17637
17638type SendMessagesOutput struct {
17639	_ struct{} `type:"structure" payload:"MessageResponse"`
17640
17641	// Send message response.
17642	//
17643	// MessageResponse is a required field
17644	MessageResponse *MessageResponse `type:"structure" required:"true"`
17645}
17646
17647// String returns the string representation
17648func (s SendMessagesOutput) String() string {
17649	return awsutil.Prettify(s)
17650}
17651
17652// GoString returns the string representation
17653func (s SendMessagesOutput) GoString() string {
17654	return s.String()
17655}
17656
17657// SetMessageResponse sets the MessageResponse field's value.
17658func (s *SendMessagesOutput) SetMessageResponse(v *MessageResponse) *SendMessagesOutput {
17659	s.MessageResponse = v
17660	return s
17661}
17662
17663// Send message request.
17664type SendUsersMessageRequest struct {
17665	_ struct{} `type:"structure"`
17666
17667	// A map of custom attribute-value pairs. Amazon Pinpoint adds these attributes
17668	// to the data.pinpoint object in the body of the push notification payload.
17669	// Amazon Pinpoint also provides these attributes in the events that it generates
17670	// for users-messages deliveries.
17671	Context map[string]*string `type:"map"`
17672
17673	// Message definitions for the default message and any messages that are tailored
17674	// for specific channels.
17675	MessageConfiguration *DirectMessageConfiguration `type:"structure"`
17676
17677	// A unique ID that you can use to trace a message. This ID is visible to recipients.
17678	TraceId *string `type:"string"`
17679
17680	// A map that associates user IDs with EndpointSendConfiguration objects. Within
17681	// an EndpointSendConfiguration object, you can tailor the message for a user
17682	// by specifying message overrides or substitutions.
17683	Users map[string]*EndpointSendConfiguration `type:"map"`
17684}
17685
17686// String returns the string representation
17687func (s SendUsersMessageRequest) String() string {
17688	return awsutil.Prettify(s)
17689}
17690
17691// GoString returns the string representation
17692func (s SendUsersMessageRequest) GoString() string {
17693	return s.String()
17694}
17695
17696// SetContext sets the Context field's value.
17697func (s *SendUsersMessageRequest) SetContext(v map[string]*string) *SendUsersMessageRequest {
17698	s.Context = v
17699	return s
17700}
17701
17702// SetMessageConfiguration sets the MessageConfiguration field's value.
17703func (s *SendUsersMessageRequest) SetMessageConfiguration(v *DirectMessageConfiguration) *SendUsersMessageRequest {
17704	s.MessageConfiguration = v
17705	return s
17706}
17707
17708// SetTraceId sets the TraceId field's value.
17709func (s *SendUsersMessageRequest) SetTraceId(v string) *SendUsersMessageRequest {
17710	s.TraceId = &v
17711	return s
17712}
17713
17714// SetUsers sets the Users field's value.
17715func (s *SendUsersMessageRequest) SetUsers(v map[string]*EndpointSendConfiguration) *SendUsersMessageRequest {
17716	s.Users = v
17717	return s
17718}
17719
17720// User send message response.
17721type SendUsersMessageResponse struct {
17722	_ struct{} `type:"structure"`
17723
17724	// The unique ID of the Amazon Pinpoint project used to send the message.
17725	ApplicationId *string `type:"string"`
17726
17727	// The unique ID assigned to the users-messages request.
17728	RequestId *string `type:"string"`
17729
17730	// An object that shows the endpoints that were messaged for each user. The
17731	// object provides a list of user IDs. For each user ID, it provides the endpoint
17732	// IDs that were messaged. For each endpoint ID, it provides an EndpointMessageResult
17733	// object.
17734	Result map[string]map[string]*EndpointMessageResult `type:"map"`
17735}
17736
17737// String returns the string representation
17738func (s SendUsersMessageResponse) String() string {
17739	return awsutil.Prettify(s)
17740}
17741
17742// GoString returns the string representation
17743func (s SendUsersMessageResponse) GoString() string {
17744	return s.String()
17745}
17746
17747// SetApplicationId sets the ApplicationId field's value.
17748func (s *SendUsersMessageResponse) SetApplicationId(v string) *SendUsersMessageResponse {
17749	s.ApplicationId = &v
17750	return s
17751}
17752
17753// SetRequestId sets the RequestId field's value.
17754func (s *SendUsersMessageResponse) SetRequestId(v string) *SendUsersMessageResponse {
17755	s.RequestId = &v
17756	return s
17757}
17758
17759// SetResult sets the Result field's value.
17760func (s *SendUsersMessageResponse) SetResult(v map[string]map[string]*EndpointMessageResult) *SendUsersMessageResponse {
17761	s.Result = v
17762	return s
17763}
17764
17765type SendUsersMessagesInput struct {
17766	_ struct{} `type:"structure" payload:"SendUsersMessageRequest"`
17767
17768	// ApplicationId is a required field
17769	ApplicationId *string `location:"uri" locationName:"application-id" type:"string" required:"true"`
17770
17771	// Send message request.
17772	//
17773	// SendUsersMessageRequest is a required field
17774	SendUsersMessageRequest *SendUsersMessageRequest `type:"structure" required:"true"`
17775}
17776
17777// String returns the string representation
17778func (s SendUsersMessagesInput) String() string {
17779	return awsutil.Prettify(s)
17780}
17781
17782// GoString returns the string representation
17783func (s SendUsersMessagesInput) GoString() string {
17784	return s.String()
17785}
17786
17787// Validate inspects the fields of the type to determine if they are valid.
17788func (s *SendUsersMessagesInput) Validate() error {
17789	invalidParams := request.ErrInvalidParams{Context: "SendUsersMessagesInput"}
17790	if s.ApplicationId == nil {
17791		invalidParams.Add(request.NewErrParamRequired("ApplicationId"))
17792	}
17793	if s.SendUsersMessageRequest == nil {
17794		invalidParams.Add(request.NewErrParamRequired("SendUsersMessageRequest"))
17795	}
17796
17797	if invalidParams.Len() > 0 {
17798		return invalidParams
17799	}
17800	return nil
17801}
17802
17803// SetApplicationId sets the ApplicationId field's value.
17804func (s *SendUsersMessagesInput) SetApplicationId(v string) *SendUsersMessagesInput {
17805	s.ApplicationId = &v
17806	return s
17807}
17808
17809// SetSendUsersMessageRequest sets the SendUsersMessageRequest field's value.
17810func (s *SendUsersMessagesInput) SetSendUsersMessageRequest(v *SendUsersMessageRequest) *SendUsersMessagesInput {
17811	s.SendUsersMessageRequest = v
17812	return s
17813}
17814
17815type SendUsersMessagesOutput struct {
17816	_ struct{} `type:"structure" payload:"SendUsersMessageResponse"`
17817
17818	// User send message response.
17819	//
17820	// SendUsersMessageResponse is a required field
17821	SendUsersMessageResponse *SendUsersMessageResponse `type:"structure" required:"true"`
17822}
17823
17824// String returns the string representation
17825func (s SendUsersMessagesOutput) String() string {
17826	return awsutil.Prettify(s)
17827}
17828
17829// GoString returns the string representation
17830func (s SendUsersMessagesOutput) GoString() string {
17831	return s.String()
17832}
17833
17834// SetSendUsersMessageResponse sets the SendUsersMessageResponse field's value.
17835func (s *SendUsersMessagesOutput) SetSendUsersMessageResponse(v *SendUsersMessageResponse) *SendUsersMessagesOutput {
17836	s.SendUsersMessageResponse = v
17837	return s
17838}
17839
17840// Information about a session.
17841type Session struct {
17842	_ struct{} `type:"structure"`
17843
17844	// Session duration in millis
17845	Duration *int64 `type:"integer"`
17846
17847	// A unique identifier for the session.
17848	Id *string `type:"string"`
17849
17850	// The date and time when the session began.
17851	StartTimestamp *string `type:"string"`
17852
17853	// The date and time when the session ended.
17854	StopTimestamp *string `type:"string"`
17855}
17856
17857// String returns the string representation
17858func (s Session) String() string {
17859	return awsutil.Prettify(s)
17860}
17861
17862// GoString returns the string representation
17863func (s Session) GoString() string {
17864	return s.String()
17865}
17866
17867// SetDuration sets the Duration field's value.
17868func (s *Session) SetDuration(v int64) *Session {
17869	s.Duration = &v
17870	return s
17871}
17872
17873// SetId sets the Id field's value.
17874func (s *Session) SetId(v string) *Session {
17875	s.Id = &v
17876	return s
17877}
17878
17879// SetStartTimestamp sets the StartTimestamp field's value.
17880func (s *Session) SetStartTimestamp(v string) *Session {
17881	s.StartTimestamp = &v
17882	return s
17883}
17884
17885// SetStopTimestamp sets the StopTimestamp field's value.
17886func (s *Session) SetStopTimestamp(v string) *Session {
17887	s.StopTimestamp = &v
17888	return s
17889}
17890
17891// Dimension specification of a segment.
17892type SetDimension struct {
17893	_ struct{} `type:"structure"`
17894
17895	// The type of dimension:INCLUSIVE - Endpoints that match the criteria are included
17896	// in the segment.EXCLUSIVE - Endpoints that match the criteria are excluded
17897	// from the segment.
17898	DimensionType *string `type:"string" enum:"DimensionType"`
17899
17900	// The criteria values for the segment dimension. Endpoints with matching attribute
17901	// values are included or excluded from the segment, depending on the setting
17902	// for Type.
17903	Values []*string `type:"list"`
17904}
17905
17906// String returns the string representation
17907func (s SetDimension) String() string {
17908	return awsutil.Prettify(s)
17909}
17910
17911// GoString returns the string representation
17912func (s SetDimension) GoString() string {
17913	return s.String()
17914}
17915
17916// SetDimensionType sets the DimensionType field's value.
17917func (s *SetDimension) SetDimensionType(v string) *SetDimension {
17918	s.DimensionType = &v
17919	return s
17920}
17921
17922// SetValues sets the Values field's value.
17923func (s *SetDimension) SetValues(v []*string) *SetDimension {
17924	s.Values = v
17925	return s
17926}
17927
17928// Treatment resource
17929type TreatmentResource struct {
17930	_ struct{} `type:"structure"`
17931
17932	// The unique treatment ID.
17933	Id *string `type:"string"`
17934
17935	// The message configuration settings.
17936	MessageConfiguration *MessageConfiguration `type:"structure"`
17937
17938	// The campaign schedule.
17939	Schedule *Schedule `type:"structure"`
17940
17941	// The allocated percentage of users for this treatment.
17942	SizePercent *int64 `type:"integer"`
17943
17944	// The treatment status.
17945	State *CampaignState `type:"structure"`
17946
17947	// A custom description for the treatment.
17948	TreatmentDescription *string `type:"string"`
17949
17950	// The custom name of a variation of the campaign used for A/B testing.
17951	TreatmentName *string `type:"string"`
17952}
17953
17954// String returns the string representation
17955func (s TreatmentResource) String() string {
17956	return awsutil.Prettify(s)
17957}
17958
17959// GoString returns the string representation
17960func (s TreatmentResource) GoString() string {
17961	return s.String()
17962}
17963
17964// SetId sets the Id field's value.
17965func (s *TreatmentResource) SetId(v string) *TreatmentResource {
17966	s.Id = &v
17967	return s
17968}
17969
17970// SetMessageConfiguration sets the MessageConfiguration field's value.
17971func (s *TreatmentResource) SetMessageConfiguration(v *MessageConfiguration) *TreatmentResource {
17972	s.MessageConfiguration = v
17973	return s
17974}
17975
17976// SetSchedule sets the Schedule field's value.
17977func (s *TreatmentResource) SetSchedule(v *Schedule) *TreatmentResource {
17978	s.Schedule = v
17979	return s
17980}
17981
17982// SetSizePercent sets the SizePercent field's value.
17983func (s *TreatmentResource) SetSizePercent(v int64) *TreatmentResource {
17984	s.SizePercent = &v
17985	return s
17986}
17987
17988// SetState sets the State field's value.
17989func (s *TreatmentResource) SetState(v *CampaignState) *TreatmentResource {
17990	s.State = v
17991	return s
17992}
17993
17994// SetTreatmentDescription sets the TreatmentDescription field's value.
17995func (s *TreatmentResource) SetTreatmentDescription(v string) *TreatmentResource {
17996	s.TreatmentDescription = &v
17997	return s
17998}
17999
18000// SetTreatmentName sets the TreatmentName field's value.
18001func (s *TreatmentResource) SetTreatmentName(v string) *TreatmentResource {
18002	s.TreatmentName = &v
18003	return s
18004}
18005
18006type UpdateAdmChannelInput struct {
18007	_ struct{} `type:"structure" payload:"ADMChannelRequest"`
18008
18009	// Amazon Device Messaging channel definition.
18010	//
18011	// ADMChannelRequest is a required field
18012	ADMChannelRequest *ADMChannelRequest `type:"structure" required:"true"`
18013
18014	// ApplicationId is a required field
18015	ApplicationId *string `location:"uri" locationName:"application-id" type:"string" required:"true"`
18016}
18017
18018// String returns the string representation
18019func (s UpdateAdmChannelInput) String() string {
18020	return awsutil.Prettify(s)
18021}
18022
18023// GoString returns the string representation
18024func (s UpdateAdmChannelInput) GoString() string {
18025	return s.String()
18026}
18027
18028// Validate inspects the fields of the type to determine if they are valid.
18029func (s *UpdateAdmChannelInput) Validate() error {
18030	invalidParams := request.ErrInvalidParams{Context: "UpdateAdmChannelInput"}
18031	if s.ADMChannelRequest == nil {
18032		invalidParams.Add(request.NewErrParamRequired("ADMChannelRequest"))
18033	}
18034	if s.ApplicationId == nil {
18035		invalidParams.Add(request.NewErrParamRequired("ApplicationId"))
18036	}
18037
18038	if invalidParams.Len() > 0 {
18039		return invalidParams
18040	}
18041	return nil
18042}
18043
18044// SetADMChannelRequest sets the ADMChannelRequest field's value.
18045func (s *UpdateAdmChannelInput) SetADMChannelRequest(v *ADMChannelRequest) *UpdateAdmChannelInput {
18046	s.ADMChannelRequest = v
18047	return s
18048}
18049
18050// SetApplicationId sets the ApplicationId field's value.
18051func (s *UpdateAdmChannelInput) SetApplicationId(v string) *UpdateAdmChannelInput {
18052	s.ApplicationId = &v
18053	return s
18054}
18055
18056type UpdateAdmChannelOutput struct {
18057	_ struct{} `type:"structure" payload:"ADMChannelResponse"`
18058
18059	// Amazon Device Messaging channel definition.
18060	//
18061	// ADMChannelResponse is a required field
18062	ADMChannelResponse *ADMChannelResponse `type:"structure" required:"true"`
18063}
18064
18065// String returns the string representation
18066func (s UpdateAdmChannelOutput) String() string {
18067	return awsutil.Prettify(s)
18068}
18069
18070// GoString returns the string representation
18071func (s UpdateAdmChannelOutput) GoString() string {
18072	return s.String()
18073}
18074
18075// SetADMChannelResponse sets the ADMChannelResponse field's value.
18076func (s *UpdateAdmChannelOutput) SetADMChannelResponse(v *ADMChannelResponse) *UpdateAdmChannelOutput {
18077	s.ADMChannelResponse = v
18078	return s
18079}
18080
18081type UpdateApnsChannelInput struct {
18082	_ struct{} `type:"structure" payload:"APNSChannelRequest"`
18083
18084	// Apple Push Notification Service channel definition.
18085	//
18086	// APNSChannelRequest is a required field
18087	APNSChannelRequest *APNSChannelRequest `type:"structure" required:"true"`
18088
18089	// ApplicationId is a required field
18090	ApplicationId *string `location:"uri" locationName:"application-id" type:"string" required:"true"`
18091}
18092
18093// String returns the string representation
18094func (s UpdateApnsChannelInput) String() string {
18095	return awsutil.Prettify(s)
18096}
18097
18098// GoString returns the string representation
18099func (s UpdateApnsChannelInput) GoString() string {
18100	return s.String()
18101}
18102
18103// Validate inspects the fields of the type to determine if they are valid.
18104func (s *UpdateApnsChannelInput) Validate() error {
18105	invalidParams := request.ErrInvalidParams{Context: "UpdateApnsChannelInput"}
18106	if s.APNSChannelRequest == nil {
18107		invalidParams.Add(request.NewErrParamRequired("APNSChannelRequest"))
18108	}
18109	if s.ApplicationId == nil {
18110		invalidParams.Add(request.NewErrParamRequired("ApplicationId"))
18111	}
18112
18113	if invalidParams.Len() > 0 {
18114		return invalidParams
18115	}
18116	return nil
18117}
18118
18119// SetAPNSChannelRequest sets the APNSChannelRequest field's value.
18120func (s *UpdateApnsChannelInput) SetAPNSChannelRequest(v *APNSChannelRequest) *UpdateApnsChannelInput {
18121	s.APNSChannelRequest = v
18122	return s
18123}
18124
18125// SetApplicationId sets the ApplicationId field's value.
18126func (s *UpdateApnsChannelInput) SetApplicationId(v string) *UpdateApnsChannelInput {
18127	s.ApplicationId = &v
18128	return s
18129}
18130
18131type UpdateApnsChannelOutput struct {
18132	_ struct{} `type:"structure" payload:"APNSChannelResponse"`
18133
18134	// Apple Distribution Push Notification Service channel definition.
18135	//
18136	// APNSChannelResponse is a required field
18137	APNSChannelResponse *APNSChannelResponse `type:"structure" required:"true"`
18138}
18139
18140// String returns the string representation
18141func (s UpdateApnsChannelOutput) String() string {
18142	return awsutil.Prettify(s)
18143}
18144
18145// GoString returns the string representation
18146func (s UpdateApnsChannelOutput) GoString() string {
18147	return s.String()
18148}
18149
18150// SetAPNSChannelResponse sets the APNSChannelResponse field's value.
18151func (s *UpdateApnsChannelOutput) SetAPNSChannelResponse(v *APNSChannelResponse) *UpdateApnsChannelOutput {
18152	s.APNSChannelResponse = v
18153	return s
18154}
18155
18156type UpdateApnsSandboxChannelInput struct {
18157	_ struct{} `type:"structure" payload:"APNSSandboxChannelRequest"`
18158
18159	// Apple Development Push Notification Service channel definition.
18160	//
18161	// APNSSandboxChannelRequest is a required field
18162	APNSSandboxChannelRequest *APNSSandboxChannelRequest `type:"structure" required:"true"`
18163
18164	// ApplicationId is a required field
18165	ApplicationId *string `location:"uri" locationName:"application-id" type:"string" required:"true"`
18166}
18167
18168// String returns the string representation
18169func (s UpdateApnsSandboxChannelInput) String() string {
18170	return awsutil.Prettify(s)
18171}
18172
18173// GoString returns the string representation
18174func (s UpdateApnsSandboxChannelInput) GoString() string {
18175	return s.String()
18176}
18177
18178// Validate inspects the fields of the type to determine if they are valid.
18179func (s *UpdateApnsSandboxChannelInput) Validate() error {
18180	invalidParams := request.ErrInvalidParams{Context: "UpdateApnsSandboxChannelInput"}
18181	if s.APNSSandboxChannelRequest == nil {
18182		invalidParams.Add(request.NewErrParamRequired("APNSSandboxChannelRequest"))
18183	}
18184	if s.ApplicationId == nil {
18185		invalidParams.Add(request.NewErrParamRequired("ApplicationId"))
18186	}
18187
18188	if invalidParams.Len() > 0 {
18189		return invalidParams
18190	}
18191	return nil
18192}
18193
18194// SetAPNSSandboxChannelRequest sets the APNSSandboxChannelRequest field's value.
18195func (s *UpdateApnsSandboxChannelInput) SetAPNSSandboxChannelRequest(v *APNSSandboxChannelRequest) *UpdateApnsSandboxChannelInput {
18196	s.APNSSandboxChannelRequest = v
18197	return s
18198}
18199
18200// SetApplicationId sets the ApplicationId field's value.
18201func (s *UpdateApnsSandboxChannelInput) SetApplicationId(v string) *UpdateApnsSandboxChannelInput {
18202	s.ApplicationId = &v
18203	return s
18204}
18205
18206type UpdateApnsSandboxChannelOutput struct {
18207	_ struct{} `type:"structure" payload:"APNSSandboxChannelResponse"`
18208
18209	// Apple Development Push Notification Service channel definition.
18210	//
18211	// APNSSandboxChannelResponse is a required field
18212	APNSSandboxChannelResponse *APNSSandboxChannelResponse `type:"structure" required:"true"`
18213}
18214
18215// String returns the string representation
18216func (s UpdateApnsSandboxChannelOutput) String() string {
18217	return awsutil.Prettify(s)
18218}
18219
18220// GoString returns the string representation
18221func (s UpdateApnsSandboxChannelOutput) GoString() string {
18222	return s.String()
18223}
18224
18225// SetAPNSSandboxChannelResponse sets the APNSSandboxChannelResponse field's value.
18226func (s *UpdateApnsSandboxChannelOutput) SetAPNSSandboxChannelResponse(v *APNSSandboxChannelResponse) *UpdateApnsSandboxChannelOutput {
18227	s.APNSSandboxChannelResponse = v
18228	return s
18229}
18230
18231type UpdateApnsVoipChannelInput struct {
18232	_ struct{} `type:"structure" payload:"APNSVoipChannelRequest"`
18233
18234	// Apple VoIP Push Notification Service channel definition.
18235	//
18236	// APNSVoipChannelRequest is a required field
18237	APNSVoipChannelRequest *APNSVoipChannelRequest `type:"structure" required:"true"`
18238
18239	// ApplicationId is a required field
18240	ApplicationId *string `location:"uri" locationName:"application-id" type:"string" required:"true"`
18241}
18242
18243// String returns the string representation
18244func (s UpdateApnsVoipChannelInput) String() string {
18245	return awsutil.Prettify(s)
18246}
18247
18248// GoString returns the string representation
18249func (s UpdateApnsVoipChannelInput) GoString() string {
18250	return s.String()
18251}
18252
18253// Validate inspects the fields of the type to determine if they are valid.
18254func (s *UpdateApnsVoipChannelInput) Validate() error {
18255	invalidParams := request.ErrInvalidParams{Context: "UpdateApnsVoipChannelInput"}
18256	if s.APNSVoipChannelRequest == nil {
18257		invalidParams.Add(request.NewErrParamRequired("APNSVoipChannelRequest"))
18258	}
18259	if s.ApplicationId == nil {
18260		invalidParams.Add(request.NewErrParamRequired("ApplicationId"))
18261	}
18262
18263	if invalidParams.Len() > 0 {
18264		return invalidParams
18265	}
18266	return nil
18267}
18268
18269// SetAPNSVoipChannelRequest sets the APNSVoipChannelRequest field's value.
18270func (s *UpdateApnsVoipChannelInput) SetAPNSVoipChannelRequest(v *APNSVoipChannelRequest) *UpdateApnsVoipChannelInput {
18271	s.APNSVoipChannelRequest = v
18272	return s
18273}
18274
18275// SetApplicationId sets the ApplicationId field's value.
18276func (s *UpdateApnsVoipChannelInput) SetApplicationId(v string) *UpdateApnsVoipChannelInput {
18277	s.ApplicationId = &v
18278	return s
18279}
18280
18281type UpdateApnsVoipChannelOutput struct {
18282	_ struct{} `type:"structure" payload:"APNSVoipChannelResponse"`
18283
18284	// Apple VoIP Push Notification Service channel definition.
18285	//
18286	// APNSVoipChannelResponse is a required field
18287	APNSVoipChannelResponse *APNSVoipChannelResponse `type:"structure" required:"true"`
18288}
18289
18290// String returns the string representation
18291func (s UpdateApnsVoipChannelOutput) String() string {
18292	return awsutil.Prettify(s)
18293}
18294
18295// GoString returns the string representation
18296func (s UpdateApnsVoipChannelOutput) GoString() string {
18297	return s.String()
18298}
18299
18300// SetAPNSVoipChannelResponse sets the APNSVoipChannelResponse field's value.
18301func (s *UpdateApnsVoipChannelOutput) SetAPNSVoipChannelResponse(v *APNSVoipChannelResponse) *UpdateApnsVoipChannelOutput {
18302	s.APNSVoipChannelResponse = v
18303	return s
18304}
18305
18306type UpdateApnsVoipSandboxChannelInput struct {
18307	_ struct{} `type:"structure" payload:"APNSVoipSandboxChannelRequest"`
18308
18309	// Apple VoIP Developer Push Notification Service channel definition.
18310	//
18311	// APNSVoipSandboxChannelRequest is a required field
18312	APNSVoipSandboxChannelRequest *APNSVoipSandboxChannelRequest `type:"structure" required:"true"`
18313
18314	// ApplicationId is a required field
18315	ApplicationId *string `location:"uri" locationName:"application-id" type:"string" required:"true"`
18316}
18317
18318// String returns the string representation
18319func (s UpdateApnsVoipSandboxChannelInput) String() string {
18320	return awsutil.Prettify(s)
18321}
18322
18323// GoString returns the string representation
18324func (s UpdateApnsVoipSandboxChannelInput) GoString() string {
18325	return s.String()
18326}
18327
18328// Validate inspects the fields of the type to determine if they are valid.
18329func (s *UpdateApnsVoipSandboxChannelInput) Validate() error {
18330	invalidParams := request.ErrInvalidParams{Context: "UpdateApnsVoipSandboxChannelInput"}
18331	if s.APNSVoipSandboxChannelRequest == nil {
18332		invalidParams.Add(request.NewErrParamRequired("APNSVoipSandboxChannelRequest"))
18333	}
18334	if s.ApplicationId == nil {
18335		invalidParams.Add(request.NewErrParamRequired("ApplicationId"))
18336	}
18337
18338	if invalidParams.Len() > 0 {
18339		return invalidParams
18340	}
18341	return nil
18342}
18343
18344// SetAPNSVoipSandboxChannelRequest sets the APNSVoipSandboxChannelRequest field's value.
18345func (s *UpdateApnsVoipSandboxChannelInput) SetAPNSVoipSandboxChannelRequest(v *APNSVoipSandboxChannelRequest) *UpdateApnsVoipSandboxChannelInput {
18346	s.APNSVoipSandboxChannelRequest = v
18347	return s
18348}
18349
18350// SetApplicationId sets the ApplicationId field's value.
18351func (s *UpdateApnsVoipSandboxChannelInput) SetApplicationId(v string) *UpdateApnsVoipSandboxChannelInput {
18352	s.ApplicationId = &v
18353	return s
18354}
18355
18356type UpdateApnsVoipSandboxChannelOutput struct {
18357	_ struct{} `type:"structure" payload:"APNSVoipSandboxChannelResponse"`
18358
18359	// Apple VoIP Developer Push Notification Service channel definition.
18360	//
18361	// APNSVoipSandboxChannelResponse is a required field
18362	APNSVoipSandboxChannelResponse *APNSVoipSandboxChannelResponse `type:"structure" required:"true"`
18363}
18364
18365// String returns the string representation
18366func (s UpdateApnsVoipSandboxChannelOutput) String() string {
18367	return awsutil.Prettify(s)
18368}
18369
18370// GoString returns the string representation
18371func (s UpdateApnsVoipSandboxChannelOutput) GoString() string {
18372	return s.String()
18373}
18374
18375// SetAPNSVoipSandboxChannelResponse sets the APNSVoipSandboxChannelResponse field's value.
18376func (s *UpdateApnsVoipSandboxChannelOutput) SetAPNSVoipSandboxChannelResponse(v *APNSVoipSandboxChannelResponse) *UpdateApnsVoipSandboxChannelOutput {
18377	s.APNSVoipSandboxChannelResponse = v
18378	return s
18379}
18380
18381type UpdateApplicationSettingsInput struct {
18382	_ struct{} `type:"structure" payload:"WriteApplicationSettingsRequest"`
18383
18384	// ApplicationId is a required field
18385	ApplicationId *string `location:"uri" locationName:"application-id" type:"string" required:"true"`
18386
18387	// Creating application setting request
18388	//
18389	// WriteApplicationSettingsRequest is a required field
18390	WriteApplicationSettingsRequest *WriteApplicationSettingsRequest `type:"structure" required:"true"`
18391}
18392
18393// String returns the string representation
18394func (s UpdateApplicationSettingsInput) String() string {
18395	return awsutil.Prettify(s)
18396}
18397
18398// GoString returns the string representation
18399func (s UpdateApplicationSettingsInput) GoString() string {
18400	return s.String()
18401}
18402
18403// Validate inspects the fields of the type to determine if they are valid.
18404func (s *UpdateApplicationSettingsInput) Validate() error {
18405	invalidParams := request.ErrInvalidParams{Context: "UpdateApplicationSettingsInput"}
18406	if s.ApplicationId == nil {
18407		invalidParams.Add(request.NewErrParamRequired("ApplicationId"))
18408	}
18409	if s.WriteApplicationSettingsRequest == nil {
18410		invalidParams.Add(request.NewErrParamRequired("WriteApplicationSettingsRequest"))
18411	}
18412
18413	if invalidParams.Len() > 0 {
18414		return invalidParams
18415	}
18416	return nil
18417}
18418
18419// SetApplicationId sets the ApplicationId field's value.
18420func (s *UpdateApplicationSettingsInput) SetApplicationId(v string) *UpdateApplicationSettingsInput {
18421	s.ApplicationId = &v
18422	return s
18423}
18424
18425// SetWriteApplicationSettingsRequest sets the WriteApplicationSettingsRequest field's value.
18426func (s *UpdateApplicationSettingsInput) SetWriteApplicationSettingsRequest(v *WriteApplicationSettingsRequest) *UpdateApplicationSettingsInput {
18427	s.WriteApplicationSettingsRequest = v
18428	return s
18429}
18430
18431type UpdateApplicationSettingsOutput struct {
18432	_ struct{} `type:"structure" payload:"ApplicationSettingsResource"`
18433
18434	// Application settings.
18435	//
18436	// ApplicationSettingsResource is a required field
18437	ApplicationSettingsResource *ApplicationSettingsResource `type:"structure" required:"true"`
18438}
18439
18440// String returns the string representation
18441func (s UpdateApplicationSettingsOutput) String() string {
18442	return awsutil.Prettify(s)
18443}
18444
18445// GoString returns the string representation
18446func (s UpdateApplicationSettingsOutput) GoString() string {
18447	return s.String()
18448}
18449
18450// SetApplicationSettingsResource sets the ApplicationSettingsResource field's value.
18451func (s *UpdateApplicationSettingsOutput) SetApplicationSettingsResource(v *ApplicationSettingsResource) *UpdateApplicationSettingsOutput {
18452	s.ApplicationSettingsResource = v
18453	return s
18454}
18455
18456// Update attributes request
18457type UpdateAttributesRequest struct {
18458	_ struct{} `type:"structure"`
18459
18460	// The GLOB wildcard for removing the attributes in the application
18461	Blacklist []*string `type:"list"`
18462}
18463
18464// String returns the string representation
18465func (s UpdateAttributesRequest) String() string {
18466	return awsutil.Prettify(s)
18467}
18468
18469// GoString returns the string representation
18470func (s UpdateAttributesRequest) GoString() string {
18471	return s.String()
18472}
18473
18474// SetBlacklist sets the Blacklist field's value.
18475func (s *UpdateAttributesRequest) SetBlacklist(v []*string) *UpdateAttributesRequest {
18476	s.Blacklist = v
18477	return s
18478}
18479
18480type UpdateBaiduChannelInput struct {
18481	_ struct{} `type:"structure" payload:"BaiduChannelRequest"`
18482
18483	// ApplicationId is a required field
18484	ApplicationId *string `location:"uri" locationName:"application-id" type:"string" required:"true"`
18485
18486	// Baidu Cloud Push credentials
18487	//
18488	// BaiduChannelRequest is a required field
18489	BaiduChannelRequest *BaiduChannelRequest `type:"structure" required:"true"`
18490}
18491
18492// String returns the string representation
18493func (s UpdateBaiduChannelInput) String() string {
18494	return awsutil.Prettify(s)
18495}
18496
18497// GoString returns the string representation
18498func (s UpdateBaiduChannelInput) GoString() string {
18499	return s.String()
18500}
18501
18502// Validate inspects the fields of the type to determine if they are valid.
18503func (s *UpdateBaiduChannelInput) Validate() error {
18504	invalidParams := request.ErrInvalidParams{Context: "UpdateBaiduChannelInput"}
18505	if s.ApplicationId == nil {
18506		invalidParams.Add(request.NewErrParamRequired("ApplicationId"))
18507	}
18508	if s.BaiduChannelRequest == nil {
18509		invalidParams.Add(request.NewErrParamRequired("BaiduChannelRequest"))
18510	}
18511
18512	if invalidParams.Len() > 0 {
18513		return invalidParams
18514	}
18515	return nil
18516}
18517
18518// SetApplicationId sets the ApplicationId field's value.
18519func (s *UpdateBaiduChannelInput) SetApplicationId(v string) *UpdateBaiduChannelInput {
18520	s.ApplicationId = &v
18521	return s
18522}
18523
18524// SetBaiduChannelRequest sets the BaiduChannelRequest field's value.
18525func (s *UpdateBaiduChannelInput) SetBaiduChannelRequest(v *BaiduChannelRequest) *UpdateBaiduChannelInput {
18526	s.BaiduChannelRequest = v
18527	return s
18528}
18529
18530type UpdateBaiduChannelOutput struct {
18531	_ struct{} `type:"structure" payload:"BaiduChannelResponse"`
18532
18533	// Baidu Cloud Messaging channel definition
18534	//
18535	// BaiduChannelResponse is a required field
18536	BaiduChannelResponse *BaiduChannelResponse `type:"structure" required:"true"`
18537}
18538
18539// String returns the string representation
18540func (s UpdateBaiduChannelOutput) String() string {
18541	return awsutil.Prettify(s)
18542}
18543
18544// GoString returns the string representation
18545func (s UpdateBaiduChannelOutput) GoString() string {
18546	return s.String()
18547}
18548
18549// SetBaiduChannelResponse sets the BaiduChannelResponse field's value.
18550func (s *UpdateBaiduChannelOutput) SetBaiduChannelResponse(v *BaiduChannelResponse) *UpdateBaiduChannelOutput {
18551	s.BaiduChannelResponse = v
18552	return s
18553}
18554
18555type UpdateCampaignInput struct {
18556	_ struct{} `type:"structure" payload:"WriteCampaignRequest"`
18557
18558	// ApplicationId is a required field
18559	ApplicationId *string `location:"uri" locationName:"application-id" type:"string" required:"true"`
18560
18561	// CampaignId is a required field
18562	CampaignId *string `location:"uri" locationName:"campaign-id" type:"string" required:"true"`
18563
18564	// Used to create a campaign.
18565	//
18566	// WriteCampaignRequest is a required field
18567	WriteCampaignRequest *WriteCampaignRequest `type:"structure" required:"true"`
18568}
18569
18570// String returns the string representation
18571func (s UpdateCampaignInput) String() string {
18572	return awsutil.Prettify(s)
18573}
18574
18575// GoString returns the string representation
18576func (s UpdateCampaignInput) GoString() string {
18577	return s.String()
18578}
18579
18580// Validate inspects the fields of the type to determine if they are valid.
18581func (s *UpdateCampaignInput) Validate() error {
18582	invalidParams := request.ErrInvalidParams{Context: "UpdateCampaignInput"}
18583	if s.ApplicationId == nil {
18584		invalidParams.Add(request.NewErrParamRequired("ApplicationId"))
18585	}
18586	if s.CampaignId == nil {
18587		invalidParams.Add(request.NewErrParamRequired("CampaignId"))
18588	}
18589	if s.WriteCampaignRequest == nil {
18590		invalidParams.Add(request.NewErrParamRequired("WriteCampaignRequest"))
18591	}
18592
18593	if invalidParams.Len() > 0 {
18594		return invalidParams
18595	}
18596	return nil
18597}
18598
18599// SetApplicationId sets the ApplicationId field's value.
18600func (s *UpdateCampaignInput) SetApplicationId(v string) *UpdateCampaignInput {
18601	s.ApplicationId = &v
18602	return s
18603}
18604
18605// SetCampaignId sets the CampaignId field's value.
18606func (s *UpdateCampaignInput) SetCampaignId(v string) *UpdateCampaignInput {
18607	s.CampaignId = &v
18608	return s
18609}
18610
18611// SetWriteCampaignRequest sets the WriteCampaignRequest field's value.
18612func (s *UpdateCampaignInput) SetWriteCampaignRequest(v *WriteCampaignRequest) *UpdateCampaignInput {
18613	s.WriteCampaignRequest = v
18614	return s
18615}
18616
18617type UpdateCampaignOutput struct {
18618	_ struct{} `type:"structure" payload:"CampaignResponse"`
18619
18620	// Campaign definition
18621	//
18622	// CampaignResponse is a required field
18623	CampaignResponse *CampaignResponse `type:"structure" required:"true"`
18624}
18625
18626// String returns the string representation
18627func (s UpdateCampaignOutput) String() string {
18628	return awsutil.Prettify(s)
18629}
18630
18631// GoString returns the string representation
18632func (s UpdateCampaignOutput) GoString() string {
18633	return s.String()
18634}
18635
18636// SetCampaignResponse sets the CampaignResponse field's value.
18637func (s *UpdateCampaignOutput) SetCampaignResponse(v *CampaignResponse) *UpdateCampaignOutput {
18638	s.CampaignResponse = v
18639	return s
18640}
18641
18642type UpdateEmailChannelInput struct {
18643	_ struct{} `type:"structure" payload:"EmailChannelRequest"`
18644
18645	// ApplicationId is a required field
18646	ApplicationId *string `location:"uri" locationName:"application-id" type:"string" required:"true"`
18647
18648	// Email Channel Request
18649	//
18650	// EmailChannelRequest is a required field
18651	EmailChannelRequest *EmailChannelRequest `type:"structure" required:"true"`
18652}
18653
18654// String returns the string representation
18655func (s UpdateEmailChannelInput) String() string {
18656	return awsutil.Prettify(s)
18657}
18658
18659// GoString returns the string representation
18660func (s UpdateEmailChannelInput) GoString() string {
18661	return s.String()
18662}
18663
18664// Validate inspects the fields of the type to determine if they are valid.
18665func (s *UpdateEmailChannelInput) Validate() error {
18666	invalidParams := request.ErrInvalidParams{Context: "UpdateEmailChannelInput"}
18667	if s.ApplicationId == nil {
18668		invalidParams.Add(request.NewErrParamRequired("ApplicationId"))
18669	}
18670	if s.EmailChannelRequest == nil {
18671		invalidParams.Add(request.NewErrParamRequired("EmailChannelRequest"))
18672	}
18673
18674	if invalidParams.Len() > 0 {
18675		return invalidParams
18676	}
18677	return nil
18678}
18679
18680// SetApplicationId sets the ApplicationId field's value.
18681func (s *UpdateEmailChannelInput) SetApplicationId(v string) *UpdateEmailChannelInput {
18682	s.ApplicationId = &v
18683	return s
18684}
18685
18686// SetEmailChannelRequest sets the EmailChannelRequest field's value.
18687func (s *UpdateEmailChannelInput) SetEmailChannelRequest(v *EmailChannelRequest) *UpdateEmailChannelInput {
18688	s.EmailChannelRequest = v
18689	return s
18690}
18691
18692type UpdateEmailChannelOutput struct {
18693	_ struct{} `type:"structure" payload:"EmailChannelResponse"`
18694
18695	// Email Channel Response.
18696	//
18697	// EmailChannelResponse is a required field
18698	EmailChannelResponse *EmailChannelResponse `type:"structure" required:"true"`
18699}
18700
18701// String returns the string representation
18702func (s UpdateEmailChannelOutput) String() string {
18703	return awsutil.Prettify(s)
18704}
18705
18706// GoString returns the string representation
18707func (s UpdateEmailChannelOutput) GoString() string {
18708	return s.String()
18709}
18710
18711// SetEmailChannelResponse sets the EmailChannelResponse field's value.
18712func (s *UpdateEmailChannelOutput) SetEmailChannelResponse(v *EmailChannelResponse) *UpdateEmailChannelOutput {
18713	s.EmailChannelResponse = v
18714	return s
18715}
18716
18717type UpdateEndpointInput struct {
18718	_ struct{} `type:"structure" payload:"EndpointRequest"`
18719
18720	// ApplicationId is a required field
18721	ApplicationId *string `location:"uri" locationName:"application-id" type:"string" required:"true"`
18722
18723	// EndpointId is a required field
18724	EndpointId *string `location:"uri" locationName:"endpoint-id" type:"string" required:"true"`
18725
18726	// Endpoint update request
18727	//
18728	// EndpointRequest is a required field
18729	EndpointRequest *EndpointRequest `type:"structure" required:"true"`
18730}
18731
18732// String returns the string representation
18733func (s UpdateEndpointInput) String() string {
18734	return awsutil.Prettify(s)
18735}
18736
18737// GoString returns the string representation
18738func (s UpdateEndpointInput) GoString() string {
18739	return s.String()
18740}
18741
18742// Validate inspects the fields of the type to determine if they are valid.
18743func (s *UpdateEndpointInput) Validate() error {
18744	invalidParams := request.ErrInvalidParams{Context: "UpdateEndpointInput"}
18745	if s.ApplicationId == nil {
18746		invalidParams.Add(request.NewErrParamRequired("ApplicationId"))
18747	}
18748	if s.EndpointId == nil {
18749		invalidParams.Add(request.NewErrParamRequired("EndpointId"))
18750	}
18751	if s.EndpointRequest == nil {
18752		invalidParams.Add(request.NewErrParamRequired("EndpointRequest"))
18753	}
18754
18755	if invalidParams.Len() > 0 {
18756		return invalidParams
18757	}
18758	return nil
18759}
18760
18761// SetApplicationId sets the ApplicationId field's value.
18762func (s *UpdateEndpointInput) SetApplicationId(v string) *UpdateEndpointInput {
18763	s.ApplicationId = &v
18764	return s
18765}
18766
18767// SetEndpointId sets the EndpointId field's value.
18768func (s *UpdateEndpointInput) SetEndpointId(v string) *UpdateEndpointInput {
18769	s.EndpointId = &v
18770	return s
18771}
18772
18773// SetEndpointRequest sets the EndpointRequest field's value.
18774func (s *UpdateEndpointInput) SetEndpointRequest(v *EndpointRequest) *UpdateEndpointInput {
18775	s.EndpointRequest = v
18776	return s
18777}
18778
18779type UpdateEndpointOutput struct {
18780	_ struct{} `type:"structure" payload:"MessageBody"`
18781
18782	// Simple message object.
18783	//
18784	// MessageBody is a required field
18785	MessageBody *MessageBody `type:"structure" required:"true"`
18786}
18787
18788// String returns the string representation
18789func (s UpdateEndpointOutput) String() string {
18790	return awsutil.Prettify(s)
18791}
18792
18793// GoString returns the string representation
18794func (s UpdateEndpointOutput) GoString() string {
18795	return s.String()
18796}
18797
18798// SetMessageBody sets the MessageBody field's value.
18799func (s *UpdateEndpointOutput) SetMessageBody(v *MessageBody) *UpdateEndpointOutput {
18800	s.MessageBody = v
18801	return s
18802}
18803
18804type UpdateEndpointsBatchInput struct {
18805	_ struct{} `type:"structure" payload:"EndpointBatchRequest"`
18806
18807	// ApplicationId is a required field
18808	ApplicationId *string `location:"uri" locationName:"application-id" type:"string" required:"true"`
18809
18810	// Endpoint batch update request.
18811	//
18812	// EndpointBatchRequest is a required field
18813	EndpointBatchRequest *EndpointBatchRequest `type:"structure" required:"true"`
18814}
18815
18816// String returns the string representation
18817func (s UpdateEndpointsBatchInput) String() string {
18818	return awsutil.Prettify(s)
18819}
18820
18821// GoString returns the string representation
18822func (s UpdateEndpointsBatchInput) GoString() string {
18823	return s.String()
18824}
18825
18826// Validate inspects the fields of the type to determine if they are valid.
18827func (s *UpdateEndpointsBatchInput) Validate() error {
18828	invalidParams := request.ErrInvalidParams{Context: "UpdateEndpointsBatchInput"}
18829	if s.ApplicationId == nil {
18830		invalidParams.Add(request.NewErrParamRequired("ApplicationId"))
18831	}
18832	if s.EndpointBatchRequest == nil {
18833		invalidParams.Add(request.NewErrParamRequired("EndpointBatchRequest"))
18834	}
18835
18836	if invalidParams.Len() > 0 {
18837		return invalidParams
18838	}
18839	return nil
18840}
18841
18842// SetApplicationId sets the ApplicationId field's value.
18843func (s *UpdateEndpointsBatchInput) SetApplicationId(v string) *UpdateEndpointsBatchInput {
18844	s.ApplicationId = &v
18845	return s
18846}
18847
18848// SetEndpointBatchRequest sets the EndpointBatchRequest field's value.
18849func (s *UpdateEndpointsBatchInput) SetEndpointBatchRequest(v *EndpointBatchRequest) *UpdateEndpointsBatchInput {
18850	s.EndpointBatchRequest = v
18851	return s
18852}
18853
18854type UpdateEndpointsBatchOutput struct {
18855	_ struct{} `type:"structure" payload:"MessageBody"`
18856
18857	// Simple message object.
18858	//
18859	// MessageBody is a required field
18860	MessageBody *MessageBody `type:"structure" required:"true"`
18861}
18862
18863// String returns the string representation
18864func (s UpdateEndpointsBatchOutput) String() string {
18865	return awsutil.Prettify(s)
18866}
18867
18868// GoString returns the string representation
18869func (s UpdateEndpointsBatchOutput) GoString() string {
18870	return s.String()
18871}
18872
18873// SetMessageBody sets the MessageBody field's value.
18874func (s *UpdateEndpointsBatchOutput) SetMessageBody(v *MessageBody) *UpdateEndpointsBatchOutput {
18875	s.MessageBody = v
18876	return s
18877}
18878
18879type UpdateGcmChannelInput struct {
18880	_ struct{} `type:"structure" payload:"GCMChannelRequest"`
18881
18882	// ApplicationId is a required field
18883	ApplicationId *string `location:"uri" locationName:"application-id" type:"string" required:"true"`
18884
18885	// Google Cloud Messaging credentials
18886	//
18887	// GCMChannelRequest is a required field
18888	GCMChannelRequest *GCMChannelRequest `type:"structure" required:"true"`
18889}
18890
18891// String returns the string representation
18892func (s UpdateGcmChannelInput) String() string {
18893	return awsutil.Prettify(s)
18894}
18895
18896// GoString returns the string representation
18897func (s UpdateGcmChannelInput) GoString() string {
18898	return s.String()
18899}
18900
18901// Validate inspects the fields of the type to determine if they are valid.
18902func (s *UpdateGcmChannelInput) Validate() error {
18903	invalidParams := request.ErrInvalidParams{Context: "UpdateGcmChannelInput"}
18904	if s.ApplicationId == nil {
18905		invalidParams.Add(request.NewErrParamRequired("ApplicationId"))
18906	}
18907	if s.GCMChannelRequest == nil {
18908		invalidParams.Add(request.NewErrParamRequired("GCMChannelRequest"))
18909	}
18910
18911	if invalidParams.Len() > 0 {
18912		return invalidParams
18913	}
18914	return nil
18915}
18916
18917// SetApplicationId sets the ApplicationId field's value.
18918func (s *UpdateGcmChannelInput) SetApplicationId(v string) *UpdateGcmChannelInput {
18919	s.ApplicationId = &v
18920	return s
18921}
18922
18923// SetGCMChannelRequest sets the GCMChannelRequest field's value.
18924func (s *UpdateGcmChannelInput) SetGCMChannelRequest(v *GCMChannelRequest) *UpdateGcmChannelInput {
18925	s.GCMChannelRequest = v
18926	return s
18927}
18928
18929type UpdateGcmChannelOutput struct {
18930	_ struct{} `type:"structure" payload:"GCMChannelResponse"`
18931
18932	// Google Cloud Messaging channel definition
18933	//
18934	// GCMChannelResponse is a required field
18935	GCMChannelResponse *GCMChannelResponse `type:"structure" required:"true"`
18936}
18937
18938// String returns the string representation
18939func (s UpdateGcmChannelOutput) String() string {
18940	return awsutil.Prettify(s)
18941}
18942
18943// GoString returns the string representation
18944func (s UpdateGcmChannelOutput) GoString() string {
18945	return s.String()
18946}
18947
18948// SetGCMChannelResponse sets the GCMChannelResponse field's value.
18949func (s *UpdateGcmChannelOutput) SetGCMChannelResponse(v *GCMChannelResponse) *UpdateGcmChannelOutput {
18950	s.GCMChannelResponse = v
18951	return s
18952}
18953
18954type UpdateSegmentInput struct {
18955	_ struct{} `type:"structure" payload:"WriteSegmentRequest"`
18956
18957	// ApplicationId is a required field
18958	ApplicationId *string `location:"uri" locationName:"application-id" type:"string" required:"true"`
18959
18960	// SegmentId is a required field
18961	SegmentId *string `location:"uri" locationName:"segment-id" type:"string" required:"true"`
18962
18963	// Segment definition.
18964	//
18965	// WriteSegmentRequest is a required field
18966	WriteSegmentRequest *WriteSegmentRequest `type:"structure" required:"true"`
18967}
18968
18969// String returns the string representation
18970func (s UpdateSegmentInput) String() string {
18971	return awsutil.Prettify(s)
18972}
18973
18974// GoString returns the string representation
18975func (s UpdateSegmentInput) GoString() string {
18976	return s.String()
18977}
18978
18979// Validate inspects the fields of the type to determine if they are valid.
18980func (s *UpdateSegmentInput) Validate() error {
18981	invalidParams := request.ErrInvalidParams{Context: "UpdateSegmentInput"}
18982	if s.ApplicationId == nil {
18983		invalidParams.Add(request.NewErrParamRequired("ApplicationId"))
18984	}
18985	if s.SegmentId == nil {
18986		invalidParams.Add(request.NewErrParamRequired("SegmentId"))
18987	}
18988	if s.WriteSegmentRequest == nil {
18989		invalidParams.Add(request.NewErrParamRequired("WriteSegmentRequest"))
18990	}
18991
18992	if invalidParams.Len() > 0 {
18993		return invalidParams
18994	}
18995	return nil
18996}
18997
18998// SetApplicationId sets the ApplicationId field's value.
18999func (s *UpdateSegmentInput) SetApplicationId(v string) *UpdateSegmentInput {
19000	s.ApplicationId = &v
19001	return s
19002}
19003
19004// SetSegmentId sets the SegmentId field's value.
19005func (s *UpdateSegmentInput) SetSegmentId(v string) *UpdateSegmentInput {
19006	s.SegmentId = &v
19007	return s
19008}
19009
19010// SetWriteSegmentRequest sets the WriteSegmentRequest field's value.
19011func (s *UpdateSegmentInput) SetWriteSegmentRequest(v *WriteSegmentRequest) *UpdateSegmentInput {
19012	s.WriteSegmentRequest = v
19013	return s
19014}
19015
19016type UpdateSegmentOutput struct {
19017	_ struct{} `type:"structure" payload:"SegmentResponse"`
19018
19019	// Segment definition.
19020	//
19021	// SegmentResponse is a required field
19022	SegmentResponse *SegmentResponse `type:"structure" required:"true"`
19023}
19024
19025// String returns the string representation
19026func (s UpdateSegmentOutput) String() string {
19027	return awsutil.Prettify(s)
19028}
19029
19030// GoString returns the string representation
19031func (s UpdateSegmentOutput) GoString() string {
19032	return s.String()
19033}
19034
19035// SetSegmentResponse sets the SegmentResponse field's value.
19036func (s *UpdateSegmentOutput) SetSegmentResponse(v *SegmentResponse) *UpdateSegmentOutput {
19037	s.SegmentResponse = v
19038	return s
19039}
19040
19041type UpdateSmsChannelInput struct {
19042	_ struct{} `type:"structure" payload:"SMSChannelRequest"`
19043
19044	// ApplicationId is a required field
19045	ApplicationId *string `location:"uri" locationName:"application-id" type:"string" required:"true"`
19046
19047	// SMS Channel Request
19048	//
19049	// SMSChannelRequest is a required field
19050	SMSChannelRequest *SMSChannelRequest `type:"structure" required:"true"`
19051}
19052
19053// String returns the string representation
19054func (s UpdateSmsChannelInput) String() string {
19055	return awsutil.Prettify(s)
19056}
19057
19058// GoString returns the string representation
19059func (s UpdateSmsChannelInput) GoString() string {
19060	return s.String()
19061}
19062
19063// Validate inspects the fields of the type to determine if they are valid.
19064func (s *UpdateSmsChannelInput) Validate() error {
19065	invalidParams := request.ErrInvalidParams{Context: "UpdateSmsChannelInput"}
19066	if s.ApplicationId == nil {
19067		invalidParams.Add(request.NewErrParamRequired("ApplicationId"))
19068	}
19069	if s.SMSChannelRequest == nil {
19070		invalidParams.Add(request.NewErrParamRequired("SMSChannelRequest"))
19071	}
19072
19073	if invalidParams.Len() > 0 {
19074		return invalidParams
19075	}
19076	return nil
19077}
19078
19079// SetApplicationId sets the ApplicationId field's value.
19080func (s *UpdateSmsChannelInput) SetApplicationId(v string) *UpdateSmsChannelInput {
19081	s.ApplicationId = &v
19082	return s
19083}
19084
19085// SetSMSChannelRequest sets the SMSChannelRequest field's value.
19086func (s *UpdateSmsChannelInput) SetSMSChannelRequest(v *SMSChannelRequest) *UpdateSmsChannelInput {
19087	s.SMSChannelRequest = v
19088	return s
19089}
19090
19091type UpdateSmsChannelOutput struct {
19092	_ struct{} `type:"structure" payload:"SMSChannelResponse"`
19093
19094	// SMS Channel Response.
19095	//
19096	// SMSChannelResponse is a required field
19097	SMSChannelResponse *SMSChannelResponse `type:"structure" required:"true"`
19098}
19099
19100// String returns the string representation
19101func (s UpdateSmsChannelOutput) String() string {
19102	return awsutil.Prettify(s)
19103}
19104
19105// GoString returns the string representation
19106func (s UpdateSmsChannelOutput) GoString() string {
19107	return s.String()
19108}
19109
19110// SetSMSChannelResponse sets the SMSChannelResponse field's value.
19111func (s *UpdateSmsChannelOutput) SetSMSChannelResponse(v *SMSChannelResponse) *UpdateSmsChannelOutput {
19112	s.SMSChannelResponse = v
19113	return s
19114}
19115
19116// Creating application setting request
19117type WriteApplicationSettingsRequest struct {
19118	_ struct{} `type:"structure"`
19119
19120	// Default campaign hook information.
19121	CampaignHook *CampaignHook `type:"structure"`
19122
19123	// The CloudWatchMetrics settings for the app.
19124	CloudWatchMetricsEnabled *bool `type:"boolean"`
19125
19126	// The default campaign limits for the app. These limits apply to each campaign
19127	// for the app, unless the campaign overrides the default with limits of its
19128	// own.
19129	Limits *CampaignLimits `type:"structure"`
19130
19131	// The default quiet time for the app. Each campaign for this app sends no messages
19132	// during this time unless the campaign overrides the default with a quiet time
19133	// of its own.
19134	QuietTime *QuietTime `type:"structure"`
19135}
19136
19137// String returns the string representation
19138func (s WriteApplicationSettingsRequest) String() string {
19139	return awsutil.Prettify(s)
19140}
19141
19142// GoString returns the string representation
19143func (s WriteApplicationSettingsRequest) GoString() string {
19144	return s.String()
19145}
19146
19147// SetCampaignHook sets the CampaignHook field's value.
19148func (s *WriteApplicationSettingsRequest) SetCampaignHook(v *CampaignHook) *WriteApplicationSettingsRequest {
19149	s.CampaignHook = v
19150	return s
19151}
19152
19153// SetCloudWatchMetricsEnabled sets the CloudWatchMetricsEnabled field's value.
19154func (s *WriteApplicationSettingsRequest) SetCloudWatchMetricsEnabled(v bool) *WriteApplicationSettingsRequest {
19155	s.CloudWatchMetricsEnabled = &v
19156	return s
19157}
19158
19159// SetLimits sets the Limits field's value.
19160func (s *WriteApplicationSettingsRequest) SetLimits(v *CampaignLimits) *WriteApplicationSettingsRequest {
19161	s.Limits = v
19162	return s
19163}
19164
19165// SetQuietTime sets the QuietTime field's value.
19166func (s *WriteApplicationSettingsRequest) SetQuietTime(v *QuietTime) *WriteApplicationSettingsRequest {
19167	s.QuietTime = v
19168	return s
19169}
19170
19171// Used to create a campaign.
19172type WriteCampaignRequest struct {
19173	_ struct{} `type:"structure"`
19174
19175	// Treatments that are defined in addition to the default treatment.
19176	AdditionalTreatments []*WriteTreatmentResource `type:"list"`
19177
19178	// A description of the campaign.
19179	Description *string `type:"string"`
19180
19181	// The allocated percentage of end users who will not receive messages from
19182	// this campaign.
19183	HoldoutPercent *int64 `type:"integer"`
19184
19185	// Campaign hook information.
19186	Hook *CampaignHook `type:"structure"`
19187
19188	// Indicates whether the campaign is paused. A paused campaign does not send
19189	// messages unless you resume it by setting IsPaused to false.
19190	IsPaused *bool `type:"boolean"`
19191
19192	// The campaign limits settings.
19193	Limits *CampaignLimits `type:"structure"`
19194
19195	// The message configuration settings.
19196	MessageConfiguration *MessageConfiguration `type:"structure"`
19197
19198	// The custom name of the campaign.
19199	Name *string `type:"string"`
19200
19201	// The campaign schedule.
19202	Schedule *Schedule `type:"structure"`
19203
19204	// The ID of the segment to which the campaign sends messages.
19205	SegmentId *string `type:"string"`
19206
19207	// The version of the segment to which the campaign sends messages.
19208	SegmentVersion *int64 `type:"integer"`
19209
19210	// A custom description for the treatment.
19211	TreatmentDescription *string `type:"string"`
19212
19213	// The custom name of a variation of the campaign used for A/B testing.
19214	TreatmentName *string `type:"string"`
19215}
19216
19217// String returns the string representation
19218func (s WriteCampaignRequest) String() string {
19219	return awsutil.Prettify(s)
19220}
19221
19222// GoString returns the string representation
19223func (s WriteCampaignRequest) GoString() string {
19224	return s.String()
19225}
19226
19227// SetAdditionalTreatments sets the AdditionalTreatments field's value.
19228func (s *WriteCampaignRequest) SetAdditionalTreatments(v []*WriteTreatmentResource) *WriteCampaignRequest {
19229	s.AdditionalTreatments = v
19230	return s
19231}
19232
19233// SetDescription sets the Description field's value.
19234func (s *WriteCampaignRequest) SetDescription(v string) *WriteCampaignRequest {
19235	s.Description = &v
19236	return s
19237}
19238
19239// SetHoldoutPercent sets the HoldoutPercent field's value.
19240func (s *WriteCampaignRequest) SetHoldoutPercent(v int64) *WriteCampaignRequest {
19241	s.HoldoutPercent = &v
19242	return s
19243}
19244
19245// SetHook sets the Hook field's value.
19246func (s *WriteCampaignRequest) SetHook(v *CampaignHook) *WriteCampaignRequest {
19247	s.Hook = v
19248	return s
19249}
19250
19251// SetIsPaused sets the IsPaused field's value.
19252func (s *WriteCampaignRequest) SetIsPaused(v bool) *WriteCampaignRequest {
19253	s.IsPaused = &v
19254	return s
19255}
19256
19257// SetLimits sets the Limits field's value.
19258func (s *WriteCampaignRequest) SetLimits(v *CampaignLimits) *WriteCampaignRequest {
19259	s.Limits = v
19260	return s
19261}
19262
19263// SetMessageConfiguration sets the MessageConfiguration field's value.
19264func (s *WriteCampaignRequest) SetMessageConfiguration(v *MessageConfiguration) *WriteCampaignRequest {
19265	s.MessageConfiguration = v
19266	return s
19267}
19268
19269// SetName sets the Name field's value.
19270func (s *WriteCampaignRequest) SetName(v string) *WriteCampaignRequest {
19271	s.Name = &v
19272	return s
19273}
19274
19275// SetSchedule sets the Schedule field's value.
19276func (s *WriteCampaignRequest) SetSchedule(v *Schedule) *WriteCampaignRequest {
19277	s.Schedule = v
19278	return s
19279}
19280
19281// SetSegmentId sets the SegmentId field's value.
19282func (s *WriteCampaignRequest) SetSegmentId(v string) *WriteCampaignRequest {
19283	s.SegmentId = &v
19284	return s
19285}
19286
19287// SetSegmentVersion sets the SegmentVersion field's value.
19288func (s *WriteCampaignRequest) SetSegmentVersion(v int64) *WriteCampaignRequest {
19289	s.SegmentVersion = &v
19290	return s
19291}
19292
19293// SetTreatmentDescription sets the TreatmentDescription field's value.
19294func (s *WriteCampaignRequest) SetTreatmentDescription(v string) *WriteCampaignRequest {
19295	s.TreatmentDescription = &v
19296	return s
19297}
19298
19299// SetTreatmentName sets the TreatmentName field's value.
19300func (s *WriteCampaignRequest) SetTreatmentName(v string) *WriteCampaignRequest {
19301	s.TreatmentName = &v
19302	return s
19303}
19304
19305// Request to save an EventStream.
19306type WriteEventStream struct {
19307	_ struct{} `type:"structure"`
19308
19309	// The Amazon Resource Name (ARN) of the Amazon Kinesis stream or Firehose delivery
19310	// stream to which you want to publish events. Firehose ARN: arn:aws:firehose:REGION:ACCOUNT_ID:deliverystream/STREAM_NAME
19311	// Kinesis ARN: arn:aws:kinesis:REGION:ACCOUNT_ID:stream/STREAM_NAME
19312	DestinationStreamArn *string `type:"string"`
19313
19314	// The IAM role that authorizes Amazon Pinpoint to publish events to the stream
19315	// in your account.
19316	RoleArn *string `type:"string"`
19317}
19318
19319// String returns the string representation
19320func (s WriteEventStream) String() string {
19321	return awsutil.Prettify(s)
19322}
19323
19324// GoString returns the string representation
19325func (s WriteEventStream) GoString() string {
19326	return s.String()
19327}
19328
19329// SetDestinationStreamArn sets the DestinationStreamArn field's value.
19330func (s *WriteEventStream) SetDestinationStreamArn(v string) *WriteEventStream {
19331	s.DestinationStreamArn = &v
19332	return s
19333}
19334
19335// SetRoleArn sets the RoleArn field's value.
19336func (s *WriteEventStream) SetRoleArn(v string) *WriteEventStream {
19337	s.RoleArn = &v
19338	return s
19339}
19340
19341// Segment definition.
19342type WriteSegmentRequest struct {
19343	_ struct{} `type:"structure"`
19344
19345	// The segment dimensions attributes.
19346	Dimensions *SegmentDimensions `type:"structure"`
19347
19348	// The name of segment
19349	Name *string `type:"string"`
19350
19351	// A segment group, which consists of zero or more source segments, plus dimensions
19352	// that are applied to those source segments. Your request can only include
19353	// one segment group. Your request can include either a SegmentGroups object
19354	// or a Dimensions object, but not both.
19355	SegmentGroups *SegmentGroupList `type:"structure"`
19356}
19357
19358// String returns the string representation
19359func (s WriteSegmentRequest) String() string {
19360	return awsutil.Prettify(s)
19361}
19362
19363// GoString returns the string representation
19364func (s WriteSegmentRequest) GoString() string {
19365	return s.String()
19366}
19367
19368// SetDimensions sets the Dimensions field's value.
19369func (s *WriteSegmentRequest) SetDimensions(v *SegmentDimensions) *WriteSegmentRequest {
19370	s.Dimensions = v
19371	return s
19372}
19373
19374// SetName sets the Name field's value.
19375func (s *WriteSegmentRequest) SetName(v string) *WriteSegmentRequest {
19376	s.Name = &v
19377	return s
19378}
19379
19380// SetSegmentGroups sets the SegmentGroups field's value.
19381func (s *WriteSegmentRequest) SetSegmentGroups(v *SegmentGroupList) *WriteSegmentRequest {
19382	s.SegmentGroups = v
19383	return s
19384}
19385
19386// Used to create a campaign treatment.
19387type WriteTreatmentResource struct {
19388	_ struct{} `type:"structure"`
19389
19390	// The message configuration settings.
19391	MessageConfiguration *MessageConfiguration `type:"structure"`
19392
19393	// The campaign schedule.
19394	Schedule *Schedule `type:"structure"`
19395
19396	// The allocated percentage of users for this treatment.
19397	SizePercent *int64 `type:"integer"`
19398
19399	// A custom description for the treatment.
19400	TreatmentDescription *string `type:"string"`
19401
19402	// The custom name of a variation of the campaign used for A/B testing.
19403	TreatmentName *string `type:"string"`
19404}
19405
19406// String returns the string representation
19407func (s WriteTreatmentResource) String() string {
19408	return awsutil.Prettify(s)
19409}
19410
19411// GoString returns the string representation
19412func (s WriteTreatmentResource) GoString() string {
19413	return s.String()
19414}
19415
19416// SetMessageConfiguration sets the MessageConfiguration field's value.
19417func (s *WriteTreatmentResource) SetMessageConfiguration(v *MessageConfiguration) *WriteTreatmentResource {
19418	s.MessageConfiguration = v
19419	return s
19420}
19421
19422// SetSchedule sets the Schedule field's value.
19423func (s *WriteTreatmentResource) SetSchedule(v *Schedule) *WriteTreatmentResource {
19424	s.Schedule = v
19425	return s
19426}
19427
19428// SetSizePercent sets the SizePercent field's value.
19429func (s *WriteTreatmentResource) SetSizePercent(v int64) *WriteTreatmentResource {
19430	s.SizePercent = &v
19431	return s
19432}
19433
19434// SetTreatmentDescription sets the TreatmentDescription field's value.
19435func (s *WriteTreatmentResource) SetTreatmentDescription(v string) *WriteTreatmentResource {
19436	s.TreatmentDescription = &v
19437	return s
19438}
19439
19440// SetTreatmentName sets the TreatmentName field's value.
19441func (s *WriteTreatmentResource) SetTreatmentName(v string) *WriteTreatmentResource {
19442	s.TreatmentName = &v
19443	return s
19444}
19445
19446const (
19447	// ActionOpenApp is a Action enum value
19448	ActionOpenApp = "OPEN_APP"
19449
19450	// ActionDeepLink is a Action enum value
19451	ActionDeepLink = "DEEP_LINK"
19452
19453	// ActionUrl is a Action enum value
19454	ActionUrl = "URL"
19455)
19456
19457const (
19458	// AttributeTypeInclusive is a AttributeType enum value
19459	AttributeTypeInclusive = "INCLUSIVE"
19460
19461	// AttributeTypeExclusive is a AttributeType enum value
19462	AttributeTypeExclusive = "EXCLUSIVE"
19463)
19464
19465const (
19466	// CampaignStatusScheduled is a CampaignStatus enum value
19467	CampaignStatusScheduled = "SCHEDULED"
19468
19469	// CampaignStatusExecuting is a CampaignStatus enum value
19470	CampaignStatusExecuting = "EXECUTING"
19471
19472	// CampaignStatusPendingNextRun is a CampaignStatus enum value
19473	CampaignStatusPendingNextRun = "PENDING_NEXT_RUN"
19474
19475	// CampaignStatusCompleted is a CampaignStatus enum value
19476	CampaignStatusCompleted = "COMPLETED"
19477
19478	// CampaignStatusPaused is a CampaignStatus enum value
19479	CampaignStatusPaused = "PAUSED"
19480
19481	// CampaignStatusDeleted is a CampaignStatus enum value
19482	CampaignStatusDeleted = "DELETED"
19483)
19484
19485const (
19486	// ChannelTypeGcm is a ChannelType enum value
19487	ChannelTypeGcm = "GCM"
19488
19489	// ChannelTypeApns is a ChannelType enum value
19490	ChannelTypeApns = "APNS"
19491
19492	// ChannelTypeApnsSandbox is a ChannelType enum value
19493	ChannelTypeApnsSandbox = "APNS_SANDBOX"
19494
19495	// ChannelTypeApnsVoip is a ChannelType enum value
19496	ChannelTypeApnsVoip = "APNS_VOIP"
19497
19498	// ChannelTypeApnsVoipSandbox is a ChannelType enum value
19499	ChannelTypeApnsVoipSandbox = "APNS_VOIP_SANDBOX"
19500
19501	// ChannelTypeAdm is a ChannelType enum value
19502	ChannelTypeAdm = "ADM"
19503
19504	// ChannelTypeSms is a ChannelType enum value
19505	ChannelTypeSms = "SMS"
19506
19507	// ChannelTypeEmail is a ChannelType enum value
19508	ChannelTypeEmail = "EMAIL"
19509
19510	// ChannelTypeBaidu is a ChannelType enum value
19511	ChannelTypeBaidu = "BAIDU"
19512
19513	// ChannelTypeCustom is a ChannelType enum value
19514	ChannelTypeCustom = "CUSTOM"
19515)
19516
19517const (
19518	// DeliveryStatusSuccessful is a DeliveryStatus enum value
19519	DeliveryStatusSuccessful = "SUCCESSFUL"
19520
19521	// DeliveryStatusThrottled is a DeliveryStatus enum value
19522	DeliveryStatusThrottled = "THROTTLED"
19523
19524	// DeliveryStatusTemporaryFailure is a DeliveryStatus enum value
19525	DeliveryStatusTemporaryFailure = "TEMPORARY_FAILURE"
19526
19527	// DeliveryStatusPermanentFailure is a DeliveryStatus enum value
19528	DeliveryStatusPermanentFailure = "PERMANENT_FAILURE"
19529
19530	// DeliveryStatusUnknownFailure is a DeliveryStatus enum value
19531	DeliveryStatusUnknownFailure = "UNKNOWN_FAILURE"
19532
19533	// DeliveryStatusOptOut is a DeliveryStatus enum value
19534	DeliveryStatusOptOut = "OPT_OUT"
19535
19536	// DeliveryStatusDuplicate is a DeliveryStatus enum value
19537	DeliveryStatusDuplicate = "DUPLICATE"
19538)
19539
19540const (
19541	// DimensionTypeInclusive is a DimensionType enum value
19542	DimensionTypeInclusive = "INCLUSIVE"
19543
19544	// DimensionTypeExclusive is a DimensionType enum value
19545	DimensionTypeExclusive = "EXCLUSIVE"
19546)
19547
19548const (
19549	// DurationHr24 is a Duration enum value
19550	DurationHr24 = "HR_24"
19551
19552	// DurationDay7 is a Duration enum value
19553	DurationDay7 = "DAY_7"
19554
19555	// DurationDay14 is a Duration enum value
19556	DurationDay14 = "DAY_14"
19557
19558	// DurationDay30 is a Duration enum value
19559	DurationDay30 = "DAY_30"
19560)
19561
19562const (
19563	// FormatCsv is a Format enum value
19564	FormatCsv = "CSV"
19565
19566	// FormatJson is a Format enum value
19567	FormatJson = "JSON"
19568)
19569
19570const (
19571	// FrequencyOnce is a Frequency enum value
19572	FrequencyOnce = "ONCE"
19573
19574	// FrequencyHourly is a Frequency enum value
19575	FrequencyHourly = "HOURLY"
19576
19577	// FrequencyDaily is a Frequency enum value
19578	FrequencyDaily = "DAILY"
19579
19580	// FrequencyWeekly is a Frequency enum value
19581	FrequencyWeekly = "WEEKLY"
19582
19583	// FrequencyMonthly is a Frequency enum value
19584	FrequencyMonthly = "MONTHLY"
19585)
19586
19587const (
19588	// IncludeAll is a Include enum value
19589	IncludeAll = "ALL"
19590
19591	// IncludeAny is a Include enum value
19592	IncludeAny = "ANY"
19593
19594	// IncludeNone is a Include enum value
19595	IncludeNone = "NONE"
19596)
19597
19598const (
19599	// JobStatusCreated is a JobStatus enum value
19600	JobStatusCreated = "CREATED"
19601
19602	// JobStatusInitializing is a JobStatus enum value
19603	JobStatusInitializing = "INITIALIZING"
19604
19605	// JobStatusProcessing is a JobStatus enum value
19606	JobStatusProcessing = "PROCESSING"
19607
19608	// JobStatusCompleting is a JobStatus enum value
19609	JobStatusCompleting = "COMPLETING"
19610
19611	// JobStatusCompleted is a JobStatus enum value
19612	JobStatusCompleted = "COMPLETED"
19613
19614	// JobStatusFailing is a JobStatus enum value
19615	JobStatusFailing = "FAILING"
19616
19617	// JobStatusFailed is a JobStatus enum value
19618	JobStatusFailed = "FAILED"
19619)
19620
19621const (
19622	// MessageTypeTransactional is a MessageType enum value
19623	MessageTypeTransactional = "TRANSACTIONAL"
19624
19625	// MessageTypePromotional is a MessageType enum value
19626	MessageTypePromotional = "PROMOTIONAL"
19627)
19628
19629const (
19630	// ModeDelivery is a Mode enum value
19631	ModeDelivery = "DELIVERY"
19632
19633	// ModeFilter is a Mode enum value
19634	ModeFilter = "FILTER"
19635)
19636
19637const (
19638	// RecencyTypeActive is a RecencyType enum value
19639	RecencyTypeActive = "ACTIVE"
19640
19641	// RecencyTypeInactive is a RecencyType enum value
19642	RecencyTypeInactive = "INACTIVE"
19643)
19644
19645const (
19646	// SegmentTypeDimensional is a SegmentType enum value
19647	SegmentTypeDimensional = "DIMENSIONAL"
19648
19649	// SegmentTypeImport is a SegmentType enum value
19650	SegmentTypeImport = "IMPORT"
19651)
19652
19653const (
19654	// SourceTypeAll is a SourceType enum value
19655	SourceTypeAll = "ALL"
19656
19657	// SourceTypeAny is a SourceType enum value
19658	SourceTypeAny = "ANY"
19659
19660	// SourceTypeNone is a SourceType enum value
19661	SourceTypeNone = "NONE"
19662)
19663
19664const (
19665	// TypeAll is a Type enum value
19666	TypeAll = "ALL"
19667
19668	// TypeAny is a Type enum value
19669	TypeAny = "ANY"
19670
19671	// TypeNone is a Type enum value
19672	TypeNone = "NONE"
19673)
19674